bways-grid 0.0.5 → 0.0.7
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/fesm2022/bways-grid.mjs +740 -165
- package/fesm2022/bways-grid.mjs.map +1 -1
- package/lib/components/cell/cell.component.d.ts +2 -1
- package/lib/components/column-tool-panel/column-tool-panel.component.d.ts +12 -3
- package/lib/components/filter-tool-panel/filter-tool-panel.component.d.ts +7 -1
- package/lib/components/side-bar/side-bar.component.d.ts +13 -3
- package/lib/components/ultra-grid/ultra-grid.component.d.ts +17 -9
- package/lib/models/column.model.d.ts +2 -0
- package/lib/models/grid-config.model.d.ts +5 -0
- package/lib/services/excel-export.service.d.ts +9 -0
- package/lib/workers/excel.worker.d.ts +5 -0
- package/lib/workers/generated/excel.worker.code.d.ts +1 -0
- package/lib/workers/generated/sorting.worker.code.d.ts +1 -1
- package/package.json +1 -1
- package/src/lib/workers/excel.worker.ts +103 -0
- package/src/lib/workers/generated/excel.worker.code.ts +106 -0
- package/src/lib/workers/generated/sorting.worker.code.ts +1 -1
- package/src/lib/workers/sorting.worker.ts +132 -29
- package/lib/models/csv-export.model.d.ts +0 -12
- package/lib/services/csv-export.service.d.ts +0 -11
- package/lib/workers/generated/export.worker.code.d.ts +0 -1
package/fesm2022/bways-grid.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { EventEmitter, HostListener, Output, Input, Directive, ViewEncapsulation, ChangeDetectionStrategy, Component, HostBinding, Injectable, PLATFORM_ID, Inject, NgModule } from '@angular/core';
|
|
2
|
+
import { EventEmitter, HostListener, Output, Input, Directive, ViewEncapsulation, ChangeDetectionStrategy, Component, HostBinding, inject, ChangeDetectorRef, Injectable, PLATFORM_ID, Inject, NgModule } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/common';
|
|
4
4
|
import { CommonModule, isPlatformBrowser } from '@angular/common';
|
|
5
5
|
import * as i3$1 from '@angular/cdk/scrolling';
|
|
@@ -14,7 +14,7 @@ import { FormsModule } from '@angular/forms';
|
|
|
14
14
|
|
|
15
15
|
// AUTO-GENERATED FILE. DO NOT EDIT.
|
|
16
16
|
// Built from src/lib/workers/sorting.worker.ts
|
|
17
|
-
const SORTING_WORKER_CODE = `"use strict";(()=>{var
|
|
17
|
+
const SORTING_WORKER_CODE = `"use strict";(()=>{var b=[],h=[];addEventListener("message",e=>{let{action:a,rows:o,sortModel:r,filterModel:i,conditionFilters:t,groupModel:n,aggregations:u,groupStateMap:d}=e.data;if(a==="INIT"){b=(o||[]).map(l=>({...l,type:"leaf",level:0})),postMessage({action:"INIT_DONE"});return}if(a==="FLATTEN_ONLY"){let s=U(h,d||{},e.data.groupIncludeFooter);postMessage({flatList:s});return}if(a==="EXECUTE"){let s=b,{pivotMode:l,pivotColumns:c}=e.data;if(i&&Object.keys(i).length>0){let g={};for(let p of Object.keys(i))g[p]=new Set(i[p]);s=s.filter(p=>{for(let G of Object.keys(g)){let O=g[G],S=p.data?p.data[G]:null;if(!O.has(S))return!1}return!0})}t&&Object.keys(t).length>0&&(s=\$(s,t));let f={...u||{}},y=[];if(l&&c&&c.length>0&&Object.keys(f).length>0){let{virtualAggrs:g,dynamicColumns:p}=K(s,c,f);f=g,y=p}let N=s;if(n&&n.length>0?N=M(s,n,f):s.forEach(g=>g.level=0),r&&r.length>0&&E(N,r),h=N,n&&n.length>0&&e.data.groupIncludeFooter&&Object.keys(f).length>0){let p={id:"grand-total-footer",type:"group-footer",level:0,groupField:"Grand Total",groupKey:"Grand Total",data:k(s,f)};h.push(p)}let m=U(h,d||{},e.data.groupIncludeFooter),F=L(h);postMessage({flatList:m,resultTree:F,pivotColumns:y})}});function L(e){return e.map(a=>{if(a.type==="leaf")return{id:a.id,type:"leaf",level:a.level};if(a.type==="group"){let o=a;return{...o,children:o.children?L(o.children):void 0}}return a})}function U(e,a,o=!1){let r=[],i=[];for(let t=e.length-1;t>=0;t--)i.push(e[t]);for(;i.length>0;){let t=i.pop();if(t.type==="group"){let n=t;if(r.push({id:n.id,type:"group",level:n.level,groupField:n.groupField,groupKey:n.groupKey,data:n.data,childCount:n.children?n.children.length:0}),!!a[n.id]&&(o&&i.push({id:\`\${n.id}-footer\`,type:"group-footer",level:n.level,groupField:n.groupField,groupKey:n.groupKey,data:{...n.data}}),n.children))for(let d=n.children.length-1;d>=0;d--)i.push(n.children[d])}else t.type==="group-footer"?r.push({id:t.id,type:"group-footer",level:t.level,groupField:t.groupField,groupKey:t.groupKey,data:t.data}):r.push({id:t.id,type:"leaf",level:t.level})}return r}function C(e){let a=[],o=[...e];for(;o.length>0;){let r=o.pop();if(I(r))a.push(r);else if(j(r)&&r.children)for(let i=r.children.length-1;i>=0;i--)o.push(r.children[i])}return a}function I(e){return e.type==="leaf"}function j(e){return e.type==="group"}function A(e){if(typeof e=="number")return e;if(typeof e!="string")return e==null?0:Number(e);let a=e.trim();if(!a)return 0;let o=a.startsWith("(")&&a.endsWith(")"),r=a.replace(/[\\u2212\\u2013\\u2014]/g,"-");r.includes("-")&&(o=!0),r=r.replace(/[^0-9.]/g,"");let i=r?Number(r):0;return isNaN(i)?0:o?-i:i}function M(e,a,o){return T(e,a,0,o,"root")}function T(e,a,o,r,i){let t=a[o],n=o===a.length-1,u=new Map;for(let s of e){let l=s.data?s.data[t]:null;u.has(l)||u.set(l,[]),u.get(l).push(s)}let d=[];for(let[s,l]of u.entries()){let c=\`\${i}-\${t}-\${s}\`,f={id:c,type:"group",level:o,groupField:t,groupKey:s,data:{[t]:s},children:[]},y=C(l),N=k(y,r);Object.assign(f.data,N),n?(l.forEach(m=>m.level=o+1),f.children=l):f.children=T(l,a,o+1,r,c),d.push(f)}return d}function k(e,a){let o={};for(let r of Object.keys(a)){let i=a[r],t=0;if(i==="count")t=e.length;else{let n=!0,u=0,d=0;for(let s of e){let l=s.data?s.data[r]:null,c=A(l);i==="sum"?t=Number(t)+c:i==="min"?n?t=c:t=Math.min(t,c):i==="max"?n?t=c:t=Math.max(t,c):i==="avg"&&(u=Number(u)+c,d++),n=!1}i==="avg"&&(t=d>0?u/d:0)}o[r]=t}return o}function E(e,a){e.sort((o,r)=>{for(let i of a){let{field:t,direction:n}=i,u=o.data?o.data[t]:null,d=r.data?r.data[t]:null;if(u===d)continue;let s=u>d?1:-1;return n==="asc"?s:-s}return 0});for(let o of e)o.type==="group"&&o.children&&E(o.children,a)}function \$(e,a){let o=Object.keys(a);return o.length===0?e:e.filter(r=>{for(let i of o){let t=a[i];if(!t||!t.condition1)continue;let n=r.data?r.data[i]:null,u=v(n,t.condition1);if(t.condition2&&t.condition2.type){let d=v(n,t.condition2);if(!(t.operator==="OR"?u||d:u&&d))return!1}else if(!u)return!1}return!0})}function v(e,a){let{type:o,value:r,valueTo:i}=a;if(o==="blank")return e==null||e==="";if(o==="notBlank")return e!=null&&e!=="";if(r==null||r==="")return!0;let t=String(e??"").toLowerCase(),n=String(r).toLowerCase();switch(o){case"contains":return t.includes(n);case"notContains":return!t.includes(n);case"equals":return!isNaN(Number(e))&&!isNaN(Number(r))?Number(e)===Number(r):t===n;case"notEqual":return!isNaN(Number(e))&&!isNaN(Number(r))?Number(e)!==Number(r):t!==n;case"startsWith":return t.startsWith(n);case"endsWith":return t.endsWith(n);case"greaterThan":return Number(e)>Number(r);case"greaterThanOrEqual":return Number(e)>=Number(r);case"lessThan":return Number(e)<Number(r);case"lessThanOrEqual":return Number(e)<=Number(r);case"inRange":if(i==null||i==="")return!0;let u=Number(e);return u>=Number(r)&&u<=Number(i);default:return!0}}function K(e,a,o){let r={};a.forEach(d=>r[d]=new Set),e.forEach(d=>{a.forEach(s=>{let l=d.data[s];l!=null&&r[s].add(l)})});let i={},t=[],n=a[0];return Array.from(r[n]).sort().forEach(d=>{Object.keys(o).forEach(s=>{let l=o[s],c=\`pivot_\${n}_\${d}_\${s}\`;i[c]=l,t.push({field:c,headerName:\`\${d} (\${s})\`,pivotValue:d,originalField:s,isPivotColumn:!0}),e.forEach(f=>{String(f.data[n])===String(d)?f.data[c]=f.data[s]:f.data[c]=null})})}),{virtualAggrs:i,dynamicColumns:t}}})();
|
|
18
18
|
`;
|
|
19
19
|
|
|
20
20
|
class InfiniteScrollDataSource extends DataSource {
|
|
@@ -184,11 +184,11 @@ class HeaderComponent {
|
|
|
184
184
|
</div>
|
|
185
185
|
</div>
|
|
186
186
|
|
|
187
|
-
<div class="ug-header-filter-icon" (click)="onFilterClick(col, $event)">
|
|
187
|
+
<div class="ug-header-filter-icon" *ngIf="col.field !== 'ag-Grid-AutoColumn'" (click)="onFilterClick(col, $event)">
|
|
188
188
|
<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"></polygon></svg>
|
|
189
189
|
</div>
|
|
190
190
|
|
|
191
|
-
<div class="ug-header-menu-icon" (click)="onMenuClick(col, $event)">
|
|
191
|
+
<div class="ug-header-menu-icon" *ngIf="col.field !== 'ag-Grid-AutoColumn'" (click)="onMenuClick(col, $event)">
|
|
192
192
|
<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="1"></circle><circle cx="12" cy="5" r="1"></circle><circle cx="12" cy="19" r="1"></circle></svg>
|
|
193
193
|
</div>
|
|
194
194
|
|
|
@@ -236,11 +236,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
236
236
|
</div>
|
|
237
237
|
</div>
|
|
238
238
|
|
|
239
|
-
<div class="ug-header-filter-icon" (click)="onFilterClick(col, $event)">
|
|
239
|
+
<div class="ug-header-filter-icon" *ngIf="col.field !== 'ag-Grid-AutoColumn'" (click)="onFilterClick(col, $event)">
|
|
240
240
|
<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"></polygon></svg>
|
|
241
241
|
</div>
|
|
242
242
|
|
|
243
|
-
<div class="ug-header-menu-icon" (click)="onMenuClick(col, $event)">
|
|
243
|
+
<div class="ug-header-menu-icon" *ngIf="col.field !== 'ag-Grid-AutoColumn'" (click)="onMenuClick(col, $event)">
|
|
244
244
|
<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="1"></circle><circle cx="12" cy="5" r="1"></circle><circle cx="12" cy="19" r="1"></circle></svg>
|
|
245
245
|
</div>
|
|
246
246
|
|
|
@@ -290,20 +290,49 @@ class CellComponent {
|
|
|
290
290
|
get isGroupFooter() {
|
|
291
291
|
return !!this.row && this.row.type === 'group-footer';
|
|
292
292
|
}
|
|
293
|
+
get isAutoGroupColumn() {
|
|
294
|
+
return this.column.field === 'ag-Grid-AutoColumn';
|
|
295
|
+
}
|
|
293
296
|
get value() {
|
|
297
|
+
if (this.isAutoGroupColumn && (this.isGroup || this.isGroupFooter)) {
|
|
298
|
+
return this.row.groupKey;
|
|
299
|
+
}
|
|
294
300
|
return this.row && this.row.data ? this.row.data[this.column.field] : null;
|
|
295
301
|
}
|
|
296
|
-
get
|
|
302
|
+
get formattedValue() {
|
|
297
303
|
const v = this.value;
|
|
298
304
|
if (v == null)
|
|
299
305
|
return '';
|
|
300
|
-
|
|
301
|
-
|
|
306
|
+
// For Group Header or Group Footer in the Auto Column, we show the key directly (State Name, etc.)
|
|
307
|
+
if (this.isAutoGroupColumn && (this.isGroup || this.isGroupFooter)) {
|
|
308
|
+
return v;
|
|
309
|
+
}
|
|
310
|
+
// Try parsing as number for formatting (thousands separators, limited decimals)
|
|
311
|
+
const isNumPrimitive = typeof v === 'number' && isFinite(v);
|
|
312
|
+
// If field or header name suggests it's a date/time, skip numeric formatting
|
|
313
|
+
const lowerField = this.column.field.toLowerCase();
|
|
314
|
+
const lowerHeader = this.column.headerName?.toLowerCase() || '';
|
|
315
|
+
if (lowerField.includes('date') || lowerField.includes('time') || lowerField.includes('ata') ||
|
|
316
|
+
lowerHeader.includes('date') || lowerHeader.includes('time') || lowerHeader.includes('ata')) {
|
|
317
|
+
return v;
|
|
318
|
+
}
|
|
319
|
+
// Robust parsing for string-numbers
|
|
320
|
+
let num = NaN;
|
|
321
|
+
if (isNumPrimitive) {
|
|
322
|
+
num = v;
|
|
323
|
+
}
|
|
324
|
+
else {
|
|
325
|
+
// Only try to parse if it's not a boolean and looks potentially numeric
|
|
326
|
+
if (typeof v === 'string' && (v.includes('.') || v.match(/[0-9]/))) {
|
|
327
|
+
num = Number(v.replace(/[^0-9.-]/g, ''));
|
|
328
|
+
}
|
|
302
329
|
}
|
|
303
|
-
// Try parsing string numbers
|
|
304
|
-
const num = Number(v);
|
|
305
330
|
if (!isNaN(num) && isFinite(num)) {
|
|
306
|
-
|
|
331
|
+
// Use en-US for standard thousands separators
|
|
332
|
+
return num.toLocaleString('en-US', {
|
|
333
|
+
minimumFractionDigits: 0,
|
|
334
|
+
maximumFractionDigits: 2
|
|
335
|
+
});
|
|
307
336
|
}
|
|
308
337
|
return v;
|
|
309
338
|
}
|
|
@@ -316,12 +345,12 @@ class CellComponent {
|
|
|
316
345
|
}
|
|
317
346
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CellComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
318
347
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: CellComponent, isStandalone: true, selector: "ug-cell", inputs: { column: "column", row: "row", isSelected: "isSelected", isFirstColumn: "isFirstColumn", groupExpanded: "groupExpanded" }, outputs: { groupToggleClicked: "groupToggleClicked" }, ngImport: i0, template: `
|
|
319
|
-
<div class="ug-cell-wrapper" [style.padding-left.px]="
|
|
348
|
+
<div class="ug-cell-wrapper" [style.padding-left.px]="isAutoGroupColumn && row.level ? row.level * 20 : 0">
|
|
320
349
|
|
|
321
350
|
<!-- Group Expand/Collapse Caret -->
|
|
322
351
|
<div
|
|
323
352
|
class="ug-group-caret"
|
|
324
|
-
*ngIf="
|
|
353
|
+
*ngIf="isAutoGroupColumn && isGroup"
|
|
325
354
|
(click)="onGroupToggleClick($event)">
|
|
326
355
|
<svg *ngIf="groupExpanded" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="6 9 12 15 18 9"></polyline></svg>
|
|
327
356
|
<svg *ngIf="!groupExpanded" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="9 18 15 12 9 6"></polyline></svg>
|
|
@@ -331,22 +360,22 @@ class CellComponent {
|
|
|
331
360
|
<input type="checkbox" [checked]="isSelected" />
|
|
332
361
|
</div>
|
|
333
362
|
<ng-container *ngIf="column.cellTemplate; else defaultCell">
|
|
334
|
-
<ng-container *ngTemplateOutlet="column.cellTemplate; context: { $implicit: row
|
|
363
|
+
<ng-container *ngTemplateOutlet="column.cellTemplate; context: { $implicit: row.data, row: row, column: column }"></ng-container>
|
|
335
364
|
</ng-container>
|
|
336
365
|
<ng-template #defaultCell>
|
|
337
|
-
<div class="ug-cell-content" [title]="
|
|
338
|
-
<ng-container *ngIf="
|
|
339
|
-
<b>{{
|
|
340
|
-
<span class="ug-group-count" *ngIf="row
|
|
366
|
+
<div class="ug-cell-content" [title]="formattedValue">
|
|
367
|
+
<ng-container *ngIf="isAutoGroupColumn && isGroup">
|
|
368
|
+
<b>{{ formattedValue }}</b>
|
|
369
|
+
<span class="ug-group-count" *ngIf="row.type === 'group'">({{ $any(row).childCount || 0 }})</span>
|
|
341
370
|
</ng-container>
|
|
342
371
|
<ng-container *ngIf="isGroupFooter">
|
|
343
|
-
<b *ngIf="
|
|
372
|
+
<b *ngIf="isAutoGroupColumn">
|
|
344
373
|
{{ $any(row).groupField === 'Grand Total' ? 'Grand Total' : 'Total' }}
|
|
345
374
|
</b>
|
|
346
|
-
<span *ngIf="!
|
|
375
|
+
<span *ngIf="!isAutoGroupColumn">{{ formattedValue }}</span>
|
|
347
376
|
</ng-container>
|
|
348
|
-
<ng-container *ngIf="!(
|
|
349
|
-
{{
|
|
377
|
+
<ng-container *ngIf="!(isAutoGroupColumn && (isGroup || isGroupFooter)) && !isGroupFooter">
|
|
378
|
+
{{ formattedValue }}
|
|
350
379
|
</ng-container>
|
|
351
380
|
</div>
|
|
352
381
|
</ng-template>
|
|
@@ -356,12 +385,12 @@ class CellComponent {
|
|
|
356
385
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CellComponent, decorators: [{
|
|
357
386
|
type: Component,
|
|
358
387
|
args: [{ selector: 'ug-cell', standalone: true, imports: [CommonModule], template: `
|
|
359
|
-
<div class="ug-cell-wrapper" [style.padding-left.px]="
|
|
388
|
+
<div class="ug-cell-wrapper" [style.padding-left.px]="isAutoGroupColumn && row.level ? row.level * 20 : 0">
|
|
360
389
|
|
|
361
390
|
<!-- Group Expand/Collapse Caret -->
|
|
362
391
|
<div
|
|
363
392
|
class="ug-group-caret"
|
|
364
|
-
*ngIf="
|
|
393
|
+
*ngIf="isAutoGroupColumn && isGroup"
|
|
365
394
|
(click)="onGroupToggleClick($event)">
|
|
366
395
|
<svg *ngIf="groupExpanded" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="6 9 12 15 18 9"></polyline></svg>
|
|
367
396
|
<svg *ngIf="!groupExpanded" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="9 18 15 12 9 6"></polyline></svg>
|
|
@@ -371,22 +400,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
371
400
|
<input type="checkbox" [checked]="isSelected" />
|
|
372
401
|
</div>
|
|
373
402
|
<ng-container *ngIf="column.cellTemplate; else defaultCell">
|
|
374
|
-
<ng-container *ngTemplateOutlet="column.cellTemplate; context: { $implicit: row
|
|
403
|
+
<ng-container *ngTemplateOutlet="column.cellTemplate; context: { $implicit: row.data, row: row, column: column }"></ng-container>
|
|
375
404
|
</ng-container>
|
|
376
405
|
<ng-template #defaultCell>
|
|
377
|
-
<div class="ug-cell-content" [title]="
|
|
378
|
-
<ng-container *ngIf="
|
|
379
|
-
<b>{{
|
|
380
|
-
<span class="ug-group-count" *ngIf="row
|
|
406
|
+
<div class="ug-cell-content" [title]="formattedValue">
|
|
407
|
+
<ng-container *ngIf="isAutoGroupColumn && isGroup">
|
|
408
|
+
<b>{{ formattedValue }}</b>
|
|
409
|
+
<span class="ug-group-count" *ngIf="row.type === 'group'">({{ $any(row).childCount || 0 }})</span>
|
|
381
410
|
</ng-container>
|
|
382
411
|
<ng-container *ngIf="isGroupFooter">
|
|
383
|
-
<b *ngIf="
|
|
412
|
+
<b *ngIf="isAutoGroupColumn">
|
|
384
413
|
{{ $any(row).groupField === 'Grand Total' ? 'Grand Total' : 'Total' }}
|
|
385
414
|
</b>
|
|
386
|
-
<span *ngIf="!
|
|
415
|
+
<span *ngIf="!isAutoGroupColumn">{{ formattedValue }}</span>
|
|
387
416
|
</ng-container>
|
|
388
|
-
<ng-container *ngIf="!(
|
|
389
|
-
{{
|
|
417
|
+
<ng-container *ngIf="!(isAutoGroupColumn && (isGroup || isGroupFooter)) && !isGroupFooter">
|
|
418
|
+
{{ formattedValue }}
|
|
390
419
|
</ng-container>
|
|
391
420
|
</div>
|
|
392
421
|
</ng-template>
|
|
@@ -1136,28 +1165,48 @@ class ColumnToolPanelComponent {
|
|
|
1136
1165
|
columns = [];
|
|
1137
1166
|
groupModel = [];
|
|
1138
1167
|
valuesModel = [];
|
|
1168
|
+
pivotMode = false;
|
|
1169
|
+
pivotColumns = [];
|
|
1139
1170
|
columnsUpdated = new EventEmitter();
|
|
1140
1171
|
groupModelChanged = new EventEmitter();
|
|
1141
1172
|
valuesModelChanged = new EventEmitter();
|
|
1142
|
-
|
|
1173
|
+
pivotModeChanged = new EventEmitter();
|
|
1174
|
+
pivotModelChanged = new EventEmitter();
|
|
1175
|
+
exportExcelClicked = new EventEmitter();
|
|
1143
1176
|
displayColumns = [];
|
|
1144
1177
|
groupColumns = [];
|
|
1145
1178
|
valueColumns = [];
|
|
1179
|
+
pivotColumnsInternal = [];
|
|
1146
1180
|
searchQuery = '';
|
|
1147
|
-
pivotMode = false;
|
|
1148
1181
|
openDropdownField = null;
|
|
1149
1182
|
ngOnChanges(changes) {
|
|
1150
1183
|
if (changes['columns']) {
|
|
1151
1184
|
this.applySearch();
|
|
1152
1185
|
}
|
|
1153
|
-
// Reconstruct groupColumns from persisted groupModel
|
|
1186
|
+
// Reconstruct groupColumns from persisted groupModel
|
|
1154
1187
|
if (changes['columns'] || changes['groupModel']) {
|
|
1155
1188
|
this.rebuildGroupColumns();
|
|
1156
1189
|
}
|
|
1157
|
-
// Reconstruct valueColumns from persisted valuesModel
|
|
1190
|
+
// Reconstruct valueColumns from persisted valuesModel
|
|
1158
1191
|
if (changes['columns'] || changes['valuesModel']) {
|
|
1159
1192
|
this.rebuildValueColumns();
|
|
1160
1193
|
}
|
|
1194
|
+
// Reconstruct pivotColumns from persisted pivotModel
|
|
1195
|
+
if (changes['columns'] || changes['pivotColumns']) {
|
|
1196
|
+
this.rebuildPivotColumns();
|
|
1197
|
+
}
|
|
1198
|
+
}
|
|
1199
|
+
onPivotModeToggle(enabled) {
|
|
1200
|
+
this.pivotModeChanged.emit(enabled);
|
|
1201
|
+
}
|
|
1202
|
+
rebuildPivotColumns() {
|
|
1203
|
+
if (this.pivotColumns.length === 0) {
|
|
1204
|
+
this.pivotColumnsInternal = [];
|
|
1205
|
+
return;
|
|
1206
|
+
}
|
|
1207
|
+
this.pivotColumnsInternal = this.pivotColumns
|
|
1208
|
+
.map(field => this.columns.find(c => c.field === field))
|
|
1209
|
+
.filter((c) => !!c);
|
|
1161
1210
|
}
|
|
1162
1211
|
rebuildGroupColumns() {
|
|
1163
1212
|
if (this.groupModel.length === 0) {
|
|
@@ -1264,16 +1313,40 @@ class ColumnToolPanelComponent {
|
|
|
1264
1313
|
this.openDropdownField = null;
|
|
1265
1314
|
this.emitValuesChange();
|
|
1266
1315
|
}
|
|
1316
|
+
onPivotDrop(event) {
|
|
1317
|
+
if (event.previousContainer === event.container) {
|
|
1318
|
+
const newPiv = [...this.pivotColumnsInternal];
|
|
1319
|
+
moveItemInArray(newPiv, event.previousIndex, event.currentIndex);
|
|
1320
|
+
this.pivotColumnsInternal = newPiv;
|
|
1321
|
+
}
|
|
1322
|
+
else {
|
|
1323
|
+
const col = event.previousContainer.data[event.previousIndex];
|
|
1324
|
+
// Prevent duplicate
|
|
1325
|
+
if (this.pivotColumnsInternal.find(c => c.field === col.field))
|
|
1326
|
+
return;
|
|
1327
|
+
const newPiv = [...this.pivotColumnsInternal];
|
|
1328
|
+
newPiv.splice(event.currentIndex, 0, col);
|
|
1329
|
+
this.pivotColumnsInternal = newPiv;
|
|
1330
|
+
}
|
|
1331
|
+
this.emitPivotChange();
|
|
1332
|
+
}
|
|
1333
|
+
removePivot(col) {
|
|
1334
|
+
this.pivotColumnsInternal = this.pivotColumnsInternal.filter(c => c !== col);
|
|
1335
|
+
this.emitPivotChange();
|
|
1336
|
+
}
|
|
1337
|
+
emitPivotChange() {
|
|
1338
|
+
this.pivotModelChanged.emit(this.pivotColumnsInternal.map(c => c.field));
|
|
1339
|
+
}
|
|
1267
1340
|
emitValuesChange() {
|
|
1268
1341
|
this.valuesModelChanged.emit([...this.valueColumns]);
|
|
1269
1342
|
}
|
|
1270
1343
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ColumnToolPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1271
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: ColumnToolPanelComponent, isStandalone: true, selector: "ug-column-tool-panel", inputs: { columns: "columns", groupModel: "groupModel", valuesModel: "valuesModel" }, outputs: { columnsUpdated: "columnsUpdated", groupModelChanged: "groupModelChanged", valuesModelChanged: "valuesModelChanged",
|
|
1344
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: ColumnToolPanelComponent, isStandalone: true, selector: "ug-column-tool-panel", inputs: { columns: "columns", groupModel: "groupModel", valuesModel: "valuesModel", pivotMode: "pivotMode", pivotColumns: "pivotColumns" }, outputs: { columnsUpdated: "columnsUpdated", groupModelChanged: "groupModelChanged", valuesModelChanged: "valuesModelChanged", pivotModeChanged: "pivotModeChanged", pivotModelChanged: "pivotModelChanged", exportExcelClicked: "exportExcelClicked" }, usesOnChanges: true, ngImport: i0, template: `
|
|
1272
1345
|
<div class="ug-ctp-wrapper" cdkDropListGroup>
|
|
1273
|
-
<!-- Pivot Mode Toggle
|
|
1346
|
+
<!-- Pivot Mode Toggle -->
|
|
1274
1347
|
<div class="ug-ctp-pivot-mode">
|
|
1275
1348
|
<label class="ug-switch">
|
|
1276
|
-
<input type="checkbox" [
|
|
1349
|
+
<input type="checkbox" [ngModel]="pivotMode" (ngModelChange)="onPivotModeToggle($event)" />
|
|
1277
1350
|
<span class="ug-slider round"></span>
|
|
1278
1351
|
</label>
|
|
1279
1352
|
<span>Pivot Mode</span>
|
|
@@ -1291,7 +1364,7 @@ class ColumnToolPanelComponent {
|
|
|
1291
1364
|
id="colList"
|
|
1292
1365
|
cdkDropList
|
|
1293
1366
|
[cdkDropListData]="displayColumns"
|
|
1294
|
-
[cdkDropListConnectedTo]="['groupList', 'valueList']"
|
|
1367
|
+
[cdkDropListConnectedTo]="['groupList', 'valueList', 'pivotList']"
|
|
1295
1368
|
(cdkDropListDropped)="onDrop($event)">
|
|
1296
1369
|
<div
|
|
1297
1370
|
class="ug-ctp-item"
|
|
@@ -1305,7 +1378,7 @@ class ColumnToolPanelComponent {
|
|
|
1305
1378
|
</div>
|
|
1306
1379
|
</div>
|
|
1307
1380
|
|
|
1308
|
-
<!-- Row Groups
|
|
1381
|
+
<!-- Row Groups -->
|
|
1309
1382
|
<div class="ug-ctp-group">
|
|
1310
1383
|
<div class="ug-ctp-group-header">
|
|
1311
1384
|
<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><line x1="8" y1="6" x2="21" y2="6"></line><line x1="8" y1="12" x2="21" y2="12"></line><line x1="8" y1="18" x2="21" y2="18"></line><line x1="3" y1="6" x2="3.01" y2="6"></line><line x1="3" y1="12" x2="3.01" y2="12"></line><line x1="3" y1="18" x2="3.01" y2="18"></line></svg>
|
|
@@ -1316,7 +1389,7 @@ class ColumnToolPanelComponent {
|
|
|
1316
1389
|
id="groupList"
|
|
1317
1390
|
cdkDropList
|
|
1318
1391
|
[cdkDropListData]="groupColumns"
|
|
1319
|
-
[cdkDropListConnectedTo]="['colList']"
|
|
1392
|
+
[cdkDropListConnectedTo]="['colList', 'pivotList', 'valueList']"
|
|
1320
1393
|
(cdkDropListDropped)="onGroupDrop($event)"
|
|
1321
1394
|
[class.empty]="groupColumns.length === 0">
|
|
1322
1395
|
<div *ngIf="groupColumns.length === 0">Drag here to set row groups</div>
|
|
@@ -1328,6 +1401,29 @@ class ColumnToolPanelComponent {
|
|
|
1328
1401
|
</div>
|
|
1329
1402
|
</div>
|
|
1330
1403
|
|
|
1404
|
+
<!-- Pivot Columns -->
|
|
1405
|
+
<div class="ug-ctp-group" *ngIf="pivotMode">
|
|
1406
|
+
<div class="ug-ctp-group-header">
|
|
1407
|
+
<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12V7H5a2 2 0 0 1 0-4h14v4"/><path d="M3 5v14a2 2 0 0 0 2 2h16v-5"/><path d="M18 12H3"/></svg>
|
|
1408
|
+
<span>Pivot Columns</span>
|
|
1409
|
+
</div>
|
|
1410
|
+
<div
|
|
1411
|
+
class="ug-ctp-dropzone"
|
|
1412
|
+
id="pivotList"
|
|
1413
|
+
cdkDropList
|
|
1414
|
+
[cdkDropListData]="pivotColumnsInternal"
|
|
1415
|
+
[cdkDropListConnectedTo]="['colList', 'groupList', 'valueList']"
|
|
1416
|
+
(cdkDropListDropped)="onPivotDrop($event)"
|
|
1417
|
+
[class.empty]="pivotColumnsInternal.length === 0">
|
|
1418
|
+
<div *ngIf="pivotColumnsInternal.length === 0">Drag here to pivot</div>
|
|
1419
|
+
<div class="ug-ctp-item" *ngFor="let col of pivotColumnsInternal" cdkDrag [cdkDragData]="col">
|
|
1420
|
+
<svg class="ug-drag-handle" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" cdkDragHandle><circle cx="9" cy="12" r="1"/><circle cx="9" cy="5" r="1"/><circle cx="9" cy="19" r="1"/><circle cx="15" cy="12" r="1"/><circle cx="15" cy="5" r="1"/><circle cx="15" cy="19" r="1"/></svg>
|
|
1421
|
+
<span class="ug-ctp-item-name">{{ col.headerName || col.field }}</span>
|
|
1422
|
+
<span class="ug-ctp-remove" (click)="removePivot(col)" style="margin-left:auto;cursor:pointer;">×</span>
|
|
1423
|
+
</div>
|
|
1424
|
+
</div>
|
|
1425
|
+
</div>
|
|
1426
|
+
|
|
1331
1427
|
<!-- Values -->
|
|
1332
1428
|
<div class="ug-ctp-group">
|
|
1333
1429
|
<div class="ug-ctp-group-header">
|
|
@@ -1339,7 +1435,7 @@ class ColumnToolPanelComponent {
|
|
|
1339
1435
|
id="valueList"
|
|
1340
1436
|
cdkDropList
|
|
1341
1437
|
[cdkDropListData]="valueColumns"
|
|
1342
|
-
[cdkDropListConnectedTo]="['colList']"
|
|
1438
|
+
[cdkDropListConnectedTo]="['colList', 'groupList', 'pivotList']"
|
|
1343
1439
|
(cdkDropListDropped)="onValueDrop($event)"
|
|
1344
1440
|
[class.empty]="valueColumns.length === 0">
|
|
1345
1441
|
<div *ngIf="valueColumns.length === 0">Drag here to aggregate</div>
|
|
@@ -1367,9 +1463,9 @@ class ColumnToolPanelComponent {
|
|
|
1367
1463
|
<div class="ug-ctp-group" style="padding: 15px; text-align: center; border-top: 1px solid #e2e8f0; margin-top: auto;">
|
|
1368
1464
|
<button
|
|
1369
1465
|
style="padding: 10px 16px; width: 100%; background: #2196f3; color: white; border: none; border-radius: 4px; font-weight: 500; cursor: pointer; display: flex; justify-content: center; align-items: center; gap: 8px;"
|
|
1370
|
-
(click)="
|
|
1466
|
+
(click)="exportExcelClicked.emit()">
|
|
1371
1467
|
<svg fill="currentColor" width="16" height="16" viewBox="0 0 24 24"><path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"/></svg>
|
|
1372
|
-
Export
|
|
1468
|
+
Export Excel
|
|
1373
1469
|
</button>
|
|
1374
1470
|
</div>
|
|
1375
1471
|
</div>
|
|
@@ -1379,10 +1475,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
1379
1475
|
type: Component,
|
|
1380
1476
|
args: [{ selector: 'ug-column-tool-panel', standalone: true, imports: [CommonModule, FormsModule, DragDropModule], template: `
|
|
1381
1477
|
<div class="ug-ctp-wrapper" cdkDropListGroup>
|
|
1382
|
-
<!-- Pivot Mode Toggle
|
|
1478
|
+
<!-- Pivot Mode Toggle -->
|
|
1383
1479
|
<div class="ug-ctp-pivot-mode">
|
|
1384
1480
|
<label class="ug-switch">
|
|
1385
|
-
<input type="checkbox" [
|
|
1481
|
+
<input type="checkbox" [ngModel]="pivotMode" (ngModelChange)="onPivotModeToggle($event)" />
|
|
1386
1482
|
<span class="ug-slider round"></span>
|
|
1387
1483
|
</label>
|
|
1388
1484
|
<span>Pivot Mode</span>
|
|
@@ -1400,7 +1496,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
1400
1496
|
id="colList"
|
|
1401
1497
|
cdkDropList
|
|
1402
1498
|
[cdkDropListData]="displayColumns"
|
|
1403
|
-
[cdkDropListConnectedTo]="['groupList', 'valueList']"
|
|
1499
|
+
[cdkDropListConnectedTo]="['groupList', 'valueList', 'pivotList']"
|
|
1404
1500
|
(cdkDropListDropped)="onDrop($event)">
|
|
1405
1501
|
<div
|
|
1406
1502
|
class="ug-ctp-item"
|
|
@@ -1414,7 +1510,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
1414
1510
|
</div>
|
|
1415
1511
|
</div>
|
|
1416
1512
|
|
|
1417
|
-
<!-- Row Groups
|
|
1513
|
+
<!-- Row Groups -->
|
|
1418
1514
|
<div class="ug-ctp-group">
|
|
1419
1515
|
<div class="ug-ctp-group-header">
|
|
1420
1516
|
<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><line x1="8" y1="6" x2="21" y2="6"></line><line x1="8" y1="12" x2="21" y2="12"></line><line x1="8" y1="18" x2="21" y2="18"></line><line x1="3" y1="6" x2="3.01" y2="6"></line><line x1="3" y1="12" x2="3.01" y2="12"></line><line x1="3" y1="18" x2="3.01" y2="18"></line></svg>
|
|
@@ -1425,7 +1521,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
1425
1521
|
id="groupList"
|
|
1426
1522
|
cdkDropList
|
|
1427
1523
|
[cdkDropListData]="groupColumns"
|
|
1428
|
-
[cdkDropListConnectedTo]="['colList']"
|
|
1524
|
+
[cdkDropListConnectedTo]="['colList', 'pivotList', 'valueList']"
|
|
1429
1525
|
(cdkDropListDropped)="onGroupDrop($event)"
|
|
1430
1526
|
[class.empty]="groupColumns.length === 0">
|
|
1431
1527
|
<div *ngIf="groupColumns.length === 0">Drag here to set row groups</div>
|
|
@@ -1437,6 +1533,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
1437
1533
|
</div>
|
|
1438
1534
|
</div>
|
|
1439
1535
|
|
|
1536
|
+
<!-- Pivot Columns -->
|
|
1537
|
+
<div class="ug-ctp-group" *ngIf="pivotMode">
|
|
1538
|
+
<div class="ug-ctp-group-header">
|
|
1539
|
+
<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12V7H5a2 2 0 0 1 0-4h14v4"/><path d="M3 5v14a2 2 0 0 0 2 2h16v-5"/><path d="M18 12H3"/></svg>
|
|
1540
|
+
<span>Pivot Columns</span>
|
|
1541
|
+
</div>
|
|
1542
|
+
<div
|
|
1543
|
+
class="ug-ctp-dropzone"
|
|
1544
|
+
id="pivotList"
|
|
1545
|
+
cdkDropList
|
|
1546
|
+
[cdkDropListData]="pivotColumnsInternal"
|
|
1547
|
+
[cdkDropListConnectedTo]="['colList', 'groupList', 'valueList']"
|
|
1548
|
+
(cdkDropListDropped)="onPivotDrop($event)"
|
|
1549
|
+
[class.empty]="pivotColumnsInternal.length === 0">
|
|
1550
|
+
<div *ngIf="pivotColumnsInternal.length === 0">Drag here to pivot</div>
|
|
1551
|
+
<div class="ug-ctp-item" *ngFor="let col of pivotColumnsInternal" cdkDrag [cdkDragData]="col">
|
|
1552
|
+
<svg class="ug-drag-handle" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" cdkDragHandle><circle cx="9" cy="12" r="1"/><circle cx="9" cy="5" r="1"/><circle cx="9" cy="19" r="1"/><circle cx="15" cy="12" r="1"/><circle cx="15" cy="5" r="1"/><circle cx="15" cy="19" r="1"/></svg>
|
|
1553
|
+
<span class="ug-ctp-item-name">{{ col.headerName || col.field }}</span>
|
|
1554
|
+
<span class="ug-ctp-remove" (click)="removePivot(col)" style="margin-left:auto;cursor:pointer;">×</span>
|
|
1555
|
+
</div>
|
|
1556
|
+
</div>
|
|
1557
|
+
</div>
|
|
1558
|
+
|
|
1440
1559
|
<!-- Values -->
|
|
1441
1560
|
<div class="ug-ctp-group">
|
|
1442
1561
|
<div class="ug-ctp-group-header">
|
|
@@ -1448,7 +1567,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
1448
1567
|
id="valueList"
|
|
1449
1568
|
cdkDropList
|
|
1450
1569
|
[cdkDropListData]="valueColumns"
|
|
1451
|
-
[cdkDropListConnectedTo]="['colList']"
|
|
1570
|
+
[cdkDropListConnectedTo]="['colList', 'groupList', 'pivotList']"
|
|
1452
1571
|
(cdkDropListDropped)="onValueDrop($event)"
|
|
1453
1572
|
[class.empty]="valueColumns.length === 0">
|
|
1454
1573
|
<div *ngIf="valueColumns.length === 0">Drag here to aggregate</div>
|
|
@@ -1476,9 +1595,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
1476
1595
|
<div class="ug-ctp-group" style="padding: 15px; text-align: center; border-top: 1px solid #e2e8f0; margin-top: auto;">
|
|
1477
1596
|
<button
|
|
1478
1597
|
style="padding: 10px 16px; width: 100%; background: #2196f3; color: white; border: none; border-radius: 4px; font-weight: 500; cursor: pointer; display: flex; justify-content: center; align-items: center; gap: 8px;"
|
|
1479
|
-
(click)="
|
|
1598
|
+
(click)="exportExcelClicked.emit()">
|
|
1480
1599
|
<svg fill="currentColor" width="16" height="16" viewBox="0 0 24 24"><path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"/></svg>
|
|
1481
|
-
Export
|
|
1600
|
+
Export Excel
|
|
1482
1601
|
</button>
|
|
1483
1602
|
</div>
|
|
1484
1603
|
</div>
|
|
@@ -1489,13 +1608,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
1489
1608
|
type: Input
|
|
1490
1609
|
}], valuesModel: [{
|
|
1491
1610
|
type: Input
|
|
1611
|
+
}], pivotMode: [{
|
|
1612
|
+
type: Input
|
|
1613
|
+
}], pivotColumns: [{
|
|
1614
|
+
type: Input
|
|
1492
1615
|
}], columnsUpdated: [{
|
|
1493
1616
|
type: Output
|
|
1494
1617
|
}], groupModelChanged: [{
|
|
1495
1618
|
type: Output
|
|
1496
1619
|
}], valuesModelChanged: [{
|
|
1497
1620
|
type: Output
|
|
1498
|
-
}],
|
|
1621
|
+
}], pivotModeChanged: [{
|
|
1622
|
+
type: Output
|
|
1623
|
+
}], pivotModelChanged: [{
|
|
1624
|
+
type: Output
|
|
1625
|
+
}], exportExcelClicked: [{
|
|
1499
1626
|
type: Output
|
|
1500
1627
|
}] } });
|
|
1501
1628
|
|
|
@@ -1525,9 +1652,12 @@ class FilterToolPanelComponent {
|
|
|
1525
1652
|
columns = [];
|
|
1526
1653
|
rowData = [];
|
|
1527
1654
|
activeFilters = new Map();
|
|
1655
|
+
conditionFilters = new Map();
|
|
1528
1656
|
filterApplied = new EventEmitter();
|
|
1529
1657
|
conditionFilterChanged = new EventEmitter();
|
|
1530
1658
|
clearAllFilters = new EventEmitter();
|
|
1659
|
+
saveFiltersRequested = new EventEmitter();
|
|
1660
|
+
filtersImported = new EventEmitter();
|
|
1531
1661
|
sections = [];
|
|
1532
1662
|
_loadedFields = new Set();
|
|
1533
1663
|
constructor(cdr) {
|
|
@@ -1543,6 +1673,17 @@ class FilterToolPanelComponent {
|
|
|
1543
1673
|
if (changes['activeFilters']) {
|
|
1544
1674
|
this.syncActiveFilters();
|
|
1545
1675
|
}
|
|
1676
|
+
if (changes['conditionFilters']) {
|
|
1677
|
+
this.syncConditionFilters();
|
|
1678
|
+
}
|
|
1679
|
+
if (changes['rowData'] && !changes['rowData'].firstChange) {
|
|
1680
|
+
this._loadedFields.clear();
|
|
1681
|
+
this.sections.forEach(s => {
|
|
1682
|
+
if (s.expanded) {
|
|
1683
|
+
this.ensureSectionLoaded(s);
|
|
1684
|
+
}
|
|
1685
|
+
});
|
|
1686
|
+
}
|
|
1546
1687
|
}
|
|
1547
1688
|
buildSections() {
|
|
1548
1689
|
const oldStateMap = new Map();
|
|
@@ -1569,6 +1710,7 @@ class FilterToolPanelComponent {
|
|
|
1569
1710
|
filterOptions: filterOptions,
|
|
1570
1711
|
cond1Type: old ? old.cond1Type : (isNumeric ? 'equals' : 'contains'),
|
|
1571
1712
|
cond1Value: old ? old.cond1Value : '',
|
|
1713
|
+
cond1ValueTo: old ? old.cond1ValueTo : '',
|
|
1572
1714
|
condOperator: old ? old.condOperator : 'AND',
|
|
1573
1715
|
cond2Type: old ? old.cond2Type : (isNumeric ? 'equals' : 'contains'),
|
|
1574
1716
|
cond2Value: old ? old.cond2Value : '',
|
|
@@ -1650,10 +1792,38 @@ class FilterToolPanelComponent {
|
|
|
1650
1792
|
}
|
|
1651
1793
|
this.cdr.markForCheck();
|
|
1652
1794
|
}
|
|
1795
|
+
syncConditionFilters() {
|
|
1796
|
+
for (const section of this.sections) {
|
|
1797
|
+
const filter = this.conditionFilters.get(section.column.field);
|
|
1798
|
+
if (filter) {
|
|
1799
|
+
section.cond1Type = filter.condition1.type;
|
|
1800
|
+
section.cond1Value = filter.condition1.value || '';
|
|
1801
|
+
section.cond1ValueTo = filter.condition1.valueTo || '';
|
|
1802
|
+
section.condOperator = filter.operator;
|
|
1803
|
+
if (filter.condition2) {
|
|
1804
|
+
section.cond2Type = filter.condition2.type;
|
|
1805
|
+
section.cond2Value = filter.condition2.value || '';
|
|
1806
|
+
section.cond2ValueTo = filter.condition2.valueTo || '';
|
|
1807
|
+
}
|
|
1808
|
+
else {
|
|
1809
|
+
section.cond2Value = '';
|
|
1810
|
+
section.cond2ValueTo = '';
|
|
1811
|
+
}
|
|
1812
|
+
section.hasConditionFilter = true;
|
|
1813
|
+
}
|
|
1814
|
+
else {
|
|
1815
|
+
section.hasConditionFilter = false;
|
|
1816
|
+
// Don't necessarily reset values to avoid flickering if user is typing
|
|
1817
|
+
}
|
|
1818
|
+
}
|
|
1819
|
+
this.cdr.markForCheck();
|
|
1820
|
+
}
|
|
1653
1821
|
// --- Condition Filter Logic ---
|
|
1654
1822
|
onConditionChanged(section) {
|
|
1655
|
-
const hasCond1 = section.
|
|
1656
|
-
|
|
1823
|
+
const hasCond1 = section.cond1Type === 'blank' || section.cond1Type === 'notBlank' ||
|
|
1824
|
+
(section.cond1Value.trim() !== '' && (section.cond1Type !== 'inRange' || section.cond1ValueTo.trim() !== ''));
|
|
1825
|
+
const hasCond2 = section.cond2Type === 'blank' || section.cond2Type === 'notBlank' ||
|
|
1826
|
+
(section.cond2Value.trim() !== '' && (section.cond2Type !== 'inRange' || section.cond2ValueTo.trim() !== ''));
|
|
1657
1827
|
if (!hasCond1 && !hasCond2) {
|
|
1658
1828
|
section.hasConditionFilter = false;
|
|
1659
1829
|
this.conditionFilterChanged.emit({ field: section.column.field, filter: null });
|
|
@@ -1661,7 +1831,7 @@ class FilterToolPanelComponent {
|
|
|
1661
1831
|
}
|
|
1662
1832
|
section.hasConditionFilter = true;
|
|
1663
1833
|
const filter = {
|
|
1664
|
-
condition1: { type: section.cond1Type, value: section.cond1Value },
|
|
1834
|
+
condition1: { type: section.cond1Type, value: section.cond1Value, valueTo: section.cond1ValueTo },
|
|
1665
1835
|
operator: section.condOperator,
|
|
1666
1836
|
condition2: hasCond2 ? { type: section.cond2Type, value: section.cond2Value, valueTo: section.cond2ValueTo } : undefined
|
|
1667
1837
|
};
|
|
@@ -1746,6 +1916,7 @@ class FilterToolPanelComponent {
|
|
|
1746
1916
|
section.cond1Value = '';
|
|
1747
1917
|
section.cond2Value = '';
|
|
1748
1918
|
section.cond2ValueTo = '';
|
|
1919
|
+
section.cond1ValueTo = '';
|
|
1749
1920
|
section.hasConditionFilter = false;
|
|
1750
1921
|
}
|
|
1751
1922
|
this.clearAllFilters.emit();
|
|
@@ -1753,8 +1924,27 @@ class FilterToolPanelComponent {
|
|
|
1753
1924
|
trackByField(index, section) {
|
|
1754
1925
|
return section.column.field;
|
|
1755
1926
|
}
|
|
1927
|
+
onFileSelected(event) {
|
|
1928
|
+
const file = event.target.files?.[0];
|
|
1929
|
+
if (!file)
|
|
1930
|
+
return;
|
|
1931
|
+
const reader = new FileReader();
|
|
1932
|
+
reader.onload = (e) => {
|
|
1933
|
+
try {
|
|
1934
|
+
const json = JSON.parse(e.target?.result);
|
|
1935
|
+
this.filtersImported.emit(json);
|
|
1936
|
+
// Reset input so importing same file again triggers change
|
|
1937
|
+
event.target.value = '';
|
|
1938
|
+
}
|
|
1939
|
+
catch (err) {
|
|
1940
|
+
console.error('Failed to parse filter JSON:', err);
|
|
1941
|
+
alert('Invalid filter file format.');
|
|
1942
|
+
}
|
|
1943
|
+
};
|
|
1944
|
+
reader.readAsText(file);
|
|
1945
|
+
}
|
|
1756
1946
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: FilterToolPanelComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
1757
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: FilterToolPanelComponent, isStandalone: true, selector: "ug-filter-tool-panel", inputs: { columns: "columns", rowData: "rowData", activeFilters: "activeFilters" }, outputs: { filterApplied: "filterApplied", conditionFilterChanged: "conditionFilterChanged", clearAllFilters: "clearAllFilters" }, usesOnChanges: true, ngImport: i0, template: `
|
|
1947
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: FilterToolPanelComponent, isStandalone: true, selector: "ug-filter-tool-panel", inputs: { columns: "columns", rowData: "rowData", activeFilters: "activeFilters", conditionFilters: "conditionFilters" }, outputs: { filterApplied: "filterApplied", conditionFilterChanged: "conditionFilterChanged", clearAllFilters: "clearAllFilters", saveFiltersRequested: "saveFiltersRequested", filtersImported: "filtersImported" }, usesOnChanges: true, ngImport: i0, template: `
|
|
1758
1948
|
<div class="ug-ftp-wrapper">
|
|
1759
1949
|
<!-- Global Toolbar -->
|
|
1760
1950
|
<div class="ug-ftp-toolbar">
|
|
@@ -1770,6 +1960,18 @@ class FilterToolPanelComponent {
|
|
|
1770
1960
|
<svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>
|
|
1771
1961
|
Clear All
|
|
1772
1962
|
</button>
|
|
1963
|
+
|
|
1964
|
+
<div style="flex: 1"></div>
|
|
1965
|
+
|
|
1966
|
+
<button class="ug-ftp-btn" (click)="saveFiltersRequested.emit()" title="Save Filters to JSON">
|
|
1967
|
+
<svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"></path><polyline points="17 21 17 13 7 13 7 21"></polyline><polyline points="7 3 7 8 15 8"></polyline></svg>
|
|
1968
|
+
Save
|
|
1969
|
+
</button>
|
|
1970
|
+
<button class="ug-ftp-btn" (click)="fileInput.click()" title="Import Filters from JSON">
|
|
1971
|
+
<svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><polyline points="17 8 12 3 7 8"></polyline><line x1="12" y1="3" x2="12" y2="15"></line></svg>
|
|
1972
|
+
Import
|
|
1973
|
+
</button>
|
|
1974
|
+
<input #fileInput type="file" accept=".json" style="display: none" (change)="onFileSelected($event)">
|
|
1773
1975
|
</div>
|
|
1774
1976
|
|
|
1775
1977
|
<!-- Column Filter Sections -->
|
|
@@ -1799,6 +2001,14 @@ class FilterToolPanelComponent {
|
|
|
1799
2001
|
placeholder="Filter value..."
|
|
1800
2002
|
[(ngModel)]="section.cond1Value"
|
|
1801
2003
|
(ngModelChange)="onConditionChanged(section)" />
|
|
2004
|
+
|
|
2005
|
+
<!-- In Range second value for Condition 1 -->
|
|
2006
|
+
<input *ngIf="section.cond1Type === 'inRange'"
|
|
2007
|
+
class="ug-ftp-cond-input"
|
|
2008
|
+
type="text"
|
|
2009
|
+
placeholder="To value..."
|
|
2010
|
+
[(ngModel)]="section.cond1ValueTo"
|
|
2011
|
+
(ngModelChange)="onConditionChanged(section)" />
|
|
1802
2012
|
|
|
1803
2013
|
<!-- AND / OR Toggle -->
|
|
1804
2014
|
<div class="ug-ftp-operator-row">
|
|
@@ -1878,6 +2088,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
1878
2088
|
<svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>
|
|
1879
2089
|
Clear All
|
|
1880
2090
|
</button>
|
|
2091
|
+
|
|
2092
|
+
<div style="flex: 1"></div>
|
|
2093
|
+
|
|
2094
|
+
<button class="ug-ftp-btn" (click)="saveFiltersRequested.emit()" title="Save Filters to JSON">
|
|
2095
|
+
<svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"></path><polyline points="17 21 17 13 7 13 7 21"></polyline><polyline points="7 3 7 8 15 8"></polyline></svg>
|
|
2096
|
+
Save
|
|
2097
|
+
</button>
|
|
2098
|
+
<button class="ug-ftp-btn" (click)="fileInput.click()" title="Import Filters from JSON">
|
|
2099
|
+
<svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><polyline points="17 8 12 3 7 8"></polyline><line x1="12" y1="3" x2="12" y2="15"></line></svg>
|
|
2100
|
+
Import
|
|
2101
|
+
</button>
|
|
2102
|
+
<input #fileInput type="file" accept=".json" style="display: none" (change)="onFileSelected($event)">
|
|
1881
2103
|
</div>
|
|
1882
2104
|
|
|
1883
2105
|
<!-- Column Filter Sections -->
|
|
@@ -1907,6 +2129,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
1907
2129
|
placeholder="Filter value..."
|
|
1908
2130
|
[(ngModel)]="section.cond1Value"
|
|
1909
2131
|
(ngModelChange)="onConditionChanged(section)" />
|
|
2132
|
+
|
|
2133
|
+
<!-- In Range second value for Condition 1 -->
|
|
2134
|
+
<input *ngIf="section.cond1Type === 'inRange'"
|
|
2135
|
+
class="ug-ftp-cond-input"
|
|
2136
|
+
type="text"
|
|
2137
|
+
placeholder="To value..."
|
|
2138
|
+
[(ngModel)]="section.cond1ValueTo"
|
|
2139
|
+
(ngModelChange)="onConditionChanged(section)" />
|
|
1910
2140
|
|
|
1911
2141
|
<!-- AND / OR Toggle -->
|
|
1912
2142
|
<div class="ug-ftp-operator-row">
|
|
@@ -1973,38 +2203,55 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
1973
2203
|
type: Input
|
|
1974
2204
|
}], activeFilters: [{
|
|
1975
2205
|
type: Input
|
|
2206
|
+
}], conditionFilters: [{
|
|
2207
|
+
type: Input
|
|
1976
2208
|
}], filterApplied: [{
|
|
1977
2209
|
type: Output
|
|
1978
2210
|
}], conditionFilterChanged: [{
|
|
1979
2211
|
type: Output
|
|
1980
2212
|
}], clearAllFilters: [{
|
|
1981
2213
|
type: Output
|
|
2214
|
+
}], saveFiltersRequested: [{
|
|
2215
|
+
type: Output
|
|
2216
|
+
}], filtersImported: [{
|
|
2217
|
+
type: Output
|
|
1982
2218
|
}] } });
|
|
1983
2219
|
|
|
1984
2220
|
class SideBarComponent {
|
|
1985
2221
|
columns = [];
|
|
1986
2222
|
rowData = [];
|
|
1987
2223
|
activeFilters = new Map();
|
|
2224
|
+
conditionFilters = new Map();
|
|
1988
2225
|
groupModel = [];
|
|
1989
2226
|
valuesModel = [];
|
|
2227
|
+
pivotMode = false;
|
|
2228
|
+
pivotColumns = [];
|
|
1990
2229
|
columnsUpdated = new EventEmitter();
|
|
1991
2230
|
groupModelUpdated = new EventEmitter();
|
|
1992
2231
|
valuesModelUpdated = new EventEmitter();
|
|
1993
|
-
|
|
2232
|
+
pivotModeUpdated = new EventEmitter();
|
|
2233
|
+
pivotModelUpdated = new EventEmitter();
|
|
2234
|
+
exportExcelClicked = new EventEmitter();
|
|
1994
2235
|
filterApplied = new EventEmitter();
|
|
1995
2236
|
conditionFilterChanged = new EventEmitter();
|
|
1996
2237
|
clearAllFilters = new EventEmitter();
|
|
2238
|
+
saveFiltersRequested = new EventEmitter();
|
|
2239
|
+
filtersImported = new EventEmitter();
|
|
1997
2240
|
activeTab = 'columns'; // Open by default for demo parity
|
|
2241
|
+
cdr = inject(ChangeDetectorRef);
|
|
1998
2242
|
toggleTab(tab) {
|
|
2243
|
+
console.log('Sidebar toggleTab requested:', tab, 'Current:', this.activeTab);
|
|
1999
2244
|
if (this.activeTab === tab) {
|
|
2000
2245
|
this.activeTab = null;
|
|
2001
2246
|
}
|
|
2002
2247
|
else {
|
|
2003
2248
|
this.activeTab = tab;
|
|
2004
2249
|
}
|
|
2250
|
+
this.cdr.markForCheck();
|
|
2005
2251
|
}
|
|
2006
2252
|
closePanel() {
|
|
2007
2253
|
this.activeTab = null;
|
|
2254
|
+
this.cdr.markForCheck();
|
|
2008
2255
|
}
|
|
2009
2256
|
onColumnsChanged(updatedCols) {
|
|
2010
2257
|
this.columnsUpdated.emit(updatedCols);
|
|
@@ -2012,8 +2259,8 @@ class SideBarComponent {
|
|
|
2012
2259
|
onGroupModelChanged(model) {
|
|
2013
2260
|
this.groupModelUpdated.emit(model);
|
|
2014
2261
|
}
|
|
2015
|
-
|
|
2016
|
-
this.
|
|
2262
|
+
onExportExcelClicked() {
|
|
2263
|
+
this.exportExcelClicked.emit();
|
|
2017
2264
|
}
|
|
2018
2265
|
onFilterApplied(event) {
|
|
2019
2266
|
this.filterApplied.emit(event);
|
|
@@ -2027,8 +2274,14 @@ class SideBarComponent {
|
|
|
2027
2274
|
onValuesModelChanged(model) {
|
|
2028
2275
|
this.valuesModelUpdated.emit(model);
|
|
2029
2276
|
}
|
|
2277
|
+
onPivotModeChanged(enabled) {
|
|
2278
|
+
this.pivotModeUpdated.emit(enabled);
|
|
2279
|
+
}
|
|
2280
|
+
onPivotModelChanged(model) {
|
|
2281
|
+
this.pivotModelUpdated.emit(model);
|
|
2282
|
+
}
|
|
2030
2283
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SideBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2031
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: SideBarComponent, isStandalone: true, selector: "ug-side-bar", inputs: { columns: "columns", rowData: "rowData", activeFilters: "activeFilters", groupModel: "groupModel", valuesModel: "valuesModel" }, outputs: { columnsUpdated: "columnsUpdated", groupModelUpdated: "groupModelUpdated", valuesModelUpdated: "valuesModelUpdated",
|
|
2284
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: SideBarComponent, isStandalone: true, selector: "ug-side-bar", inputs: { columns: "columns", rowData: "rowData", activeFilters: "activeFilters", conditionFilters: "conditionFilters", groupModel: "groupModel", valuesModel: "valuesModel", pivotMode: "pivotMode", pivotColumns: "pivotColumns" }, outputs: { columnsUpdated: "columnsUpdated", groupModelUpdated: "groupModelUpdated", valuesModelUpdated: "valuesModelUpdated", pivotModeUpdated: "pivotModeUpdated", pivotModelUpdated: "pivotModelUpdated", exportExcelClicked: "exportExcelClicked", filterApplied: "filterApplied", conditionFilterChanged: "conditionFilterChanged", clearAllFilters: "clearAllFilters", saveFiltersRequested: "saveFiltersRequested", filtersImported: "filtersImported" }, ngImport: i0, template: `
|
|
2032
2285
|
<div class="ug-side-bar-wrapper">
|
|
2033
2286
|
<!-- Content Area -->
|
|
2034
2287
|
<div class="ug-side-bar-content" *ngIf="activeTab">
|
|
@@ -2045,10 +2298,14 @@ class SideBarComponent {
|
|
|
2045
2298
|
[columns]="columns"
|
|
2046
2299
|
[groupModel]="groupModel"
|
|
2047
2300
|
[valuesModel]="valuesModel"
|
|
2301
|
+
[pivotMode]="pivotMode"
|
|
2302
|
+
[pivotColumns]="pivotColumns"
|
|
2048
2303
|
(columnsUpdated)="onColumnsChanged($event)"
|
|
2049
2304
|
(groupModelChanged)="onGroupModelChanged($event)"
|
|
2050
2305
|
(valuesModelChanged)="onValuesModelChanged($event)"
|
|
2051
|
-
(
|
|
2306
|
+
(pivotModeChanged)="onPivotModeChanged($event)"
|
|
2307
|
+
(pivotModelChanged)="onPivotModelChanged($event)"
|
|
2308
|
+
(exportExcelClicked)="onExportExcelClicked()">
|
|
2052
2309
|
</ug-column-tool-panel>
|
|
2053
2310
|
|
|
2054
2311
|
<ug-filter-tool-panel
|
|
@@ -2056,9 +2313,12 @@ class SideBarComponent {
|
|
|
2056
2313
|
[columns]="columns"
|
|
2057
2314
|
[rowData]="rowData"
|
|
2058
2315
|
[activeFilters]="activeFilters"
|
|
2316
|
+
[conditionFilters]="conditionFilters"
|
|
2059
2317
|
(filterApplied)="onFilterApplied($event)"
|
|
2060
2318
|
(conditionFilterChanged)="onConditionFilterChanged($event)"
|
|
2061
|
-
(clearAllFilters)="onClearAllFilters()"
|
|
2319
|
+
(clearAllFilters)="onClearAllFilters()"
|
|
2320
|
+
(saveFiltersRequested)="saveFiltersRequested.emit()"
|
|
2321
|
+
(filtersImported)="filtersImported.emit($event)">
|
|
2062
2322
|
</ug-filter-tool-panel>
|
|
2063
2323
|
</div>
|
|
2064
2324
|
</div>
|
|
@@ -2080,7 +2340,7 @@ class SideBarComponent {
|
|
|
2080
2340
|
</div>
|
|
2081
2341
|
</div>
|
|
2082
2342
|
</div>
|
|
2083
|
-
`, isInline: true, styles: [".ug-side-bar-wrapper{display:flex;flex-direction:row;height:100%;background-color:var(--ug-bg-color);border-left:1px solid var(--ug-border-color);font-family:var(--ug-font-family, sans-serif);font-size:var(--ug-font-size, 13px);color:var(--ug-header-color)}.ug-side-bar-content{display:flex;flex-direction:column;width:250px;height:100%;border-right:1px solid var(--ug-border-color)}.ug-side-bar-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--ug-border-color);background-color:var(--ug-header-bg)}.ug-side-bar-title{font-family:var(--ug-font-family, sans-serif);font-size:var(--ug-font-size, 13px);font-weight:var(--ug-header-font-weight, 500);color:var(--ug-header-color)}.ug-side-bar-close{cursor:pointer;color:var(--ug-icon-color);display:flex;align-items:center;justify-content:center}.ug-side-bar-close:hover{color:var(--ug-primary-color)}.ug-side-bar-body{flex:1;overflow-y:auto;overflow-x:hidden;background-color:var(--ug-bg-color)}.ug-side-bar-toolbar{display:flex;flex-direction:column;width:40px;height:100%;background-color:var(--ug-header-bg);padding-top:8px;gap:8px;align-items:center}.ug-side-bar-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 4px;cursor:pointer;color:var(--ug-icon-color);border-left:2px solid transparent;width:100%;box-sizing:border-box}.ug-side-bar-tab span{writing-mode:vertical-rl;transform:rotate(180deg);margin-top:12px;font-family:var(--ug-font-family, sans-serif);font-weight:var(--ug-header-font-weight, 500);font-size:var(--ug-font-size, 13px);letter-spacing:.5px}.ug-side-bar-tab:hover{color:var(--ug-primary-color);background-color:var(--ug-row-hover-bg)}.ug-side-bar-tab.active{color:var(--ug-primary-color);background-color:var(--ug-bg-color);border-left:2px solid var(--ug-primary-color)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ColumnToolPanelComponent, selector: "ug-column-tool-panel", inputs: ["columns", "groupModel", "valuesModel"], outputs: ["columnsUpdated", "groupModelChanged", "valuesModelChanged", "
|
|
2343
|
+
`, isInline: true, styles: [".ug-side-bar-wrapper{display:flex;flex-direction:row;height:100%;background-color:var(--ug-bg-color);border-left:1px solid var(--ug-border-color);font-family:var(--ug-font-family, sans-serif);font-size:var(--ug-font-size, 13px);color:var(--ug-header-color)}.ug-side-bar-content{display:flex;flex-direction:column;width:250px;height:100%;border-right:1px solid var(--ug-border-color)}.ug-side-bar-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--ug-border-color);background-color:var(--ug-header-bg)}.ug-side-bar-title{font-family:var(--ug-font-family, sans-serif);font-size:var(--ug-font-size, 13px);font-weight:var(--ug-header-font-weight, 500);color:var(--ug-header-color)}.ug-side-bar-close{cursor:pointer;color:var(--ug-icon-color);display:flex;align-items:center;justify-content:center}.ug-side-bar-close:hover{color:var(--ug-primary-color)}.ug-side-bar-body{flex:1;overflow-y:auto;overflow-x:hidden;background-color:var(--ug-bg-color)}.ug-side-bar-toolbar{display:flex;flex-direction:column;width:40px;height:100%;background-color:var(--ug-header-bg);padding-top:8px;gap:8px;align-items:center}.ug-side-bar-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 4px;cursor:pointer;color:var(--ug-icon-color);border-left:2px solid transparent;width:100%;box-sizing:border-box}.ug-side-bar-tab span{writing-mode:vertical-rl;transform:rotate(180deg);margin-top:12px;font-family:var(--ug-font-family, sans-serif);font-weight:var(--ug-header-font-weight, 500);font-size:var(--ug-font-size, 13px);letter-spacing:.5px}.ug-side-bar-tab:hover{color:var(--ug-primary-color);background-color:var(--ug-row-hover-bg)}.ug-side-bar-tab.active{color:var(--ug-primary-color);background-color:var(--ug-bg-color);border-left:2px solid var(--ug-primary-color)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ColumnToolPanelComponent, selector: "ug-column-tool-panel", inputs: ["columns", "groupModel", "valuesModel", "pivotMode", "pivotColumns"], outputs: ["columnsUpdated", "groupModelChanged", "valuesModelChanged", "pivotModeChanged", "pivotModelChanged", "exportExcelClicked"] }, { kind: "component", type: FilterToolPanelComponent, selector: "ug-filter-tool-panel", inputs: ["columns", "rowData", "activeFilters", "conditionFilters"], outputs: ["filterApplied", "conditionFilterChanged", "clearAllFilters", "saveFiltersRequested", "filtersImported"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
2084
2344
|
}
|
|
2085
2345
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SideBarComponent, decorators: [{
|
|
2086
2346
|
type: Component,
|
|
@@ -2101,10 +2361,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
2101
2361
|
[columns]="columns"
|
|
2102
2362
|
[groupModel]="groupModel"
|
|
2103
2363
|
[valuesModel]="valuesModel"
|
|
2364
|
+
[pivotMode]="pivotMode"
|
|
2365
|
+
[pivotColumns]="pivotColumns"
|
|
2104
2366
|
(columnsUpdated)="onColumnsChanged($event)"
|
|
2105
2367
|
(groupModelChanged)="onGroupModelChanged($event)"
|
|
2106
2368
|
(valuesModelChanged)="onValuesModelChanged($event)"
|
|
2107
|
-
(
|
|
2369
|
+
(pivotModeChanged)="onPivotModeChanged($event)"
|
|
2370
|
+
(pivotModelChanged)="onPivotModelChanged($event)"
|
|
2371
|
+
(exportExcelClicked)="onExportExcelClicked()">
|
|
2108
2372
|
</ug-column-tool-panel>
|
|
2109
2373
|
|
|
2110
2374
|
<ug-filter-tool-panel
|
|
@@ -2112,9 +2376,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
2112
2376
|
[columns]="columns"
|
|
2113
2377
|
[rowData]="rowData"
|
|
2114
2378
|
[activeFilters]="activeFilters"
|
|
2379
|
+
[conditionFilters]="conditionFilters"
|
|
2115
2380
|
(filterApplied)="onFilterApplied($event)"
|
|
2116
2381
|
(conditionFilterChanged)="onConditionFilterChanged($event)"
|
|
2117
|
-
(clearAllFilters)="onClearAllFilters()"
|
|
2382
|
+
(clearAllFilters)="onClearAllFilters()"
|
|
2383
|
+
(saveFiltersRequested)="saveFiltersRequested.emit()"
|
|
2384
|
+
(filtersImported)="filtersImported.emit($event)">
|
|
2118
2385
|
</ug-filter-tool-panel>
|
|
2119
2386
|
</div>
|
|
2120
2387
|
</div>
|
|
@@ -2143,17 +2410,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
2143
2410
|
type: Input
|
|
2144
2411
|
}], activeFilters: [{
|
|
2145
2412
|
type: Input
|
|
2413
|
+
}], conditionFilters: [{
|
|
2414
|
+
type: Input
|
|
2146
2415
|
}], groupModel: [{
|
|
2147
2416
|
type: Input
|
|
2148
2417
|
}], valuesModel: [{
|
|
2149
2418
|
type: Input
|
|
2419
|
+
}], pivotMode: [{
|
|
2420
|
+
type: Input
|
|
2421
|
+
}], pivotColumns: [{
|
|
2422
|
+
type: Input
|
|
2150
2423
|
}], columnsUpdated: [{
|
|
2151
2424
|
type: Output
|
|
2152
2425
|
}], groupModelUpdated: [{
|
|
2153
2426
|
type: Output
|
|
2154
2427
|
}], valuesModelUpdated: [{
|
|
2155
2428
|
type: Output
|
|
2156
|
-
}],
|
|
2429
|
+
}], pivotModeUpdated: [{
|
|
2430
|
+
type: Output
|
|
2431
|
+
}], pivotModelUpdated: [{
|
|
2432
|
+
type: Output
|
|
2433
|
+
}], exportExcelClicked: [{
|
|
2157
2434
|
type: Output
|
|
2158
2435
|
}], filterApplied: [{
|
|
2159
2436
|
type: Output
|
|
@@ -2161,6 +2438,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
2161
2438
|
type: Output
|
|
2162
2439
|
}], clearAllFilters: [{
|
|
2163
2440
|
type: Output
|
|
2441
|
+
}], saveFiltersRequested: [{
|
|
2442
|
+
type: Output
|
|
2443
|
+
}], filtersImported: [{
|
|
2444
|
+
type: Output
|
|
2164
2445
|
}] } });
|
|
2165
2446
|
|
|
2166
2447
|
class GridFlattenerService {
|
|
@@ -2206,48 +2487,145 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
2206
2487
|
}] });
|
|
2207
2488
|
|
|
2208
2489
|
// AUTO-GENERATED FILE. DO NOT EDIT.
|
|
2209
|
-
// Built from src/lib/workers/
|
|
2210
|
-
const EXPORT_WORKER_CODE = `"use strict";(()=>{var E=1e4;addEventListener("message",({data:a})=>{let{action:c,columns:e,data:l,options:u}=a;if(c==="START_EXPORT")try{let s=u.separator||",",g=u.includeHeaders!==!1,o=[];if(g){let t=e.map(n=>m(n.headerName||n.field,s)).join(s);o.push(t+\`
|
|
2211
|
-
\`)
|
|
2212
|
-
|
|
2213
|
-
|
|
2490
|
+
// Built from src/lib/workers/excel.worker.ts
|
|
2491
|
+
const EXCEL_WORKER_CODE = `"use strict";(()=>{var Ct={};Ct.version="0.18.5";var Gr=1200,ut=1252,Yi=[874,932,936,949,950,1250,1251,1252,1253,1254,1255,1256,1257,1258,1e4],Ji={0:1252,1:65001,2:65001,77:1e4,128:932,129:949,130:1361,134:936,136:950,161:1253,162:1254,163:1258,177:1255,178:1256,186:1257,204:1251,222:874,238:1250,255:1252,69:6969},sn=function(e){Yi.indexOf(e)!=-1&&(ut=Ji[0]=e)};function qi(){sn(1252)}var Dt=function(e){Gr=e,sn(e)};function Zi(){Dt(1200),qi()}function Qi(e){for(var t=[],r=0;r<e.length>>1;++r)t[r]=String.fromCharCode(e.charCodeAt(2*r+1)+(e.charCodeAt(2*r)<<8));return t.join("")}var Vt=function(t){return String.fromCharCode(t)},_0=function(t){return String.fromCharCode(t)},ke;var Er=null,wt=!0,br="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function Ot(e){for(var t="",r=0,a=0,n=0,i=0,s=0,f=0,o=0,c=0;c<e.length;)r=e.charCodeAt(c++),i=r>>2,a=e.charCodeAt(c++),s=(r&3)<<4|a>>4,n=e.charCodeAt(c++),f=(a&15)<<2|n>>6,o=n&63,isNaN(a)?f=o=64:isNaN(n)&&(o=64),t+=br.charAt(i)+br.charAt(s)+br.charAt(f)+br.charAt(o);return t}function Or(e){var t="",r=0,a=0,n=0,i=0,s=0,f=0,o=0;e=e.replace(/[^\\w\\+\\/\\=]/g,"");for(var c=0;c<e.length;)i=br.indexOf(e.charAt(c++)),s=br.indexOf(e.charAt(c++)),r=i<<2|s>>4,t+=String.fromCharCode(r),f=br.indexOf(e.charAt(c++)),a=(s&15)<<4|f>>2,f!==64&&(t+=String.fromCharCode(a)),o=br.indexOf(e.charAt(c++)),n=(f&3)<<6|o,o!==64&&(t+=String.fromCharCode(n));return t}var xe=(function(){return typeof Buffer<"u"&&typeof process<"u"&&typeof process.versions<"u"&&!!process.versions.node})(),Rr=(function(){if(typeof Buffer<"u"){var e=!Buffer.from;if(!e)try{Buffer.from("foo","utf8")}catch{e=!0}return e?function(t,r){return r?new Buffer(t,r):new Buffer(t)}:Buffer.from.bind(Buffer)}return function(){}})();function \$r(e){return xe?Buffer.alloc?Buffer.alloc(e):new Buffer(e):typeof Uint8Array<"u"?new Uint8Array(e):new Array(e)}function w0(e){return xe?Buffer.allocUnsafe?Buffer.allocUnsafe(e):new Buffer(e):typeof Uint8Array<"u"?new Uint8Array(e):new Array(e)}var pr=function(t){return xe?Rr(t,"binary"):t.split("").map(function(r){return r.charCodeAt(0)&255})};function la(e){if(typeof ArrayBuffer>"u")return pr(e);for(var t=new ArrayBuffer(e.length),r=new Uint8Array(t),a=0;a!=e.length;++a)r[a]=e.charCodeAt(a)&255;return t}function Pt(e){if(Array.isArray(e))return e.map(function(a){return String.fromCharCode(a)}).join("");for(var t=[],r=0;r<e.length;++r)t[r]=String.fromCharCode(e[r]);return t.join("")}function es(e){if(typeof Uint8Array>"u")throw new Error("Unsupported");return new Uint8Array(e)}var Ve=xe?function(e){return Buffer.concat(e.map(function(t){return Buffer.isBuffer(t)?t:Rr(t)}))}:function(e){if(typeof Uint8Array<"u"){var t=0,r=0;for(t=0;t<e.length;++t)r+=e[t].length;var a=new Uint8Array(r),n=0;for(t=0,r=0;t<e.length;r+=n,++t)if(n=e[t].length,e[t]instanceof Uint8Array)a.set(e[t],r);else{if(typeof e[t]=="string")throw"wtf";a.set(new Uint8Array(e[t]),r)}return a}return[].concat.apply([],e.map(function(i){return Array.isArray(i)?i:[].slice.call(i)}))};function rs(e){for(var t=[],r=0,a=e.length+250,n=\$r(e.length+255),i=0;i<e.length;++i){var s=e.charCodeAt(i);if(s<128)n[r++]=s;else if(s<2048)n[r++]=192|s>>6&31,n[r++]=128|s&63;else if(s>=55296&&s<57344){s=(s&1023)+64;var f=e.charCodeAt(++i)&1023;n[r++]=240|s>>8&7,n[r++]=128|s>>2&63,n[r++]=128|f>>6&15|(s&3)<<4,n[r++]=128|f&63}else n[r++]=224|s>>12&15,n[r++]=128|s>>6&63,n[r++]=128|s&63;r>a&&(t.push(n.slice(0,r)),r=0,n=\$r(65535),a=65530)}return t.push(n.slice(0,r)),Ve(t)}var st=/\\u0000/g,Xt=/[\\u0001-\\u0006]/g;function ft(e){for(var t="",r=e.length-1;r>=0;)t+=e.charAt(r--);return t}function mr(e,t){var r=""+e;return r.length>=t?r:Fe("0",t-r.length)+r}function Ba(e,t){var r=""+e;return r.length>=t?r:Fe(" ",t-r.length)+r}function qt(e,t){var r=""+e;return r.length>=t?r:r+Fe(" ",t-r.length)}function ts(e,t){var r=""+Math.round(e);return r.length>=t?r:Fe("0",t-r.length)+r}function as(e,t){var r=""+e;return r.length>=t?r:Fe("0",t-r.length)+r}var k0=Math.pow(2,32);function rt(e,t){if(e>k0||e<-k0)return ts(e,t);var r=Math.round(e);return as(r,t)}function Zt(e,t){return t=t||0,e.length>=7+t&&(e.charCodeAt(t)|32)===103&&(e.charCodeAt(t+1)|32)===101&&(e.charCodeAt(t+2)|32)===110&&(e.charCodeAt(t+3)|32)===101&&(e.charCodeAt(t+4)|32)===114&&(e.charCodeAt(t+5)|32)===97&&(e.charCodeAt(t+6)|32)===108}var E0=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]],Fa=[["J","Jan","January"],["F","Feb","February"],["M","Mar","March"],["A","Apr","April"],["M","May","May"],["J","Jun","June"],["J","Jul","July"],["A","Aug","August"],["S","Sep","September"],["O","Oct","October"],["N","Nov","November"],["D","Dec","December"]];function ns(e){return e||(e={}),e[0]="General",e[1]="0",e[2]="0.00",e[3]="#,##0",e[4]="#,##0.00",e[9]="0%",e[10]="0.00%",e[11]="0.00E+00",e[12]="# ?/?",e[13]="# ??/??",e[14]="m/d/yy",e[15]="d-mmm-yy",e[16]="d-mmm",e[17]="mmm-yy",e[18]="h:mm AM/PM",e[19]="h:mm:ss AM/PM",e[20]="h:mm",e[21]="h:mm:ss",e[22]="m/d/yy h:mm",e[37]="#,##0 ;(#,##0)",e[38]="#,##0 ;[Red](#,##0)",e[39]="#,##0.00;(#,##0.00)",e[40]="#,##0.00;[Red](#,##0.00)",e[45]="mm:ss",e[46]="[h]:mm:ss",e[47]="mmss.0",e[48]="##0.0E+0",e[49]="@",e[56]='"\\u4E0A\\u5348/\\u4E0B\\u5348 "hh"\\u6642"mm"\\u5206"ss"\\u79D2 "',e}var ye={0:"General",1:"0",2:"0.00",3:"#,##0",4:"#,##0.00",9:"0%",10:"0.00%",11:"0.00E+00",12:"# ?/?",13:"# ??/??",14:"m/d/yy",15:"d-mmm-yy",16:"d-mmm",17:"mmm-yy",18:"h:mm AM/PM",19:"h:mm:ss AM/PM",20:"h:mm",21:"h:mm:ss",22:"m/d/yy h:mm",37:"#,##0 ;(#,##0)",38:"#,##0 ;[Red](#,##0)",39:"#,##0.00;(#,##0.00)",40:"#,##0.00;[Red](#,##0.00)",45:"mm:ss",46:"[h]:mm:ss",47:"mmss.0",48:"##0.0E+0",49:"@",56:'"\\u4E0A\\u5348/\\u4E0B\\u5348 "hh"\\u6642"mm"\\u5206"ss"\\u79D2 "'},T0={5:37,6:38,7:39,8:40,23:0,24:0,25:0,26:0,27:14,28:14,29:14,30:14,31:14,50:14,51:14,52:14,53:14,54:14,55:14,56:14,57:14,58:14,59:1,60:2,61:3,62:4,67:9,68:10,69:12,70:13,71:14,72:14,73:15,74:16,75:17,76:20,77:21,78:22,79:45,80:46,81:47,82:0},is={5:'"\$"#,##0_);\\\\("\$"#,##0\\\\)',63:'"\$"#,##0_);\\\\("\$"#,##0\\\\)',6:'"\$"#,##0_);[Red]\\\\("\$"#,##0\\\\)',64:'"\$"#,##0_);[Red]\\\\("\$"#,##0\\\\)',7:'"\$"#,##0.00_);\\\\("\$"#,##0.00\\\\)',65:'"\$"#,##0.00_);\\\\("\$"#,##0.00\\\\)',8:'"\$"#,##0.00_);[Red]\\\\("\$"#,##0.00\\\\)',66:'"\$"#,##0.00_);[Red]\\\\("\$"#,##0.00\\\\)',41:'_(* #,##0_);_(* \\\\(#,##0\\\\);_(* "-"_);_(@_)',42:'_("\$"* #,##0_);_("\$"* \\\\(#,##0\\\\);_("\$"* "-"_);_(@_)',43:'_(* #,##0.00_);_(* \\\\(#,##0.00\\\\);_(* "-"??_);_(@_)',44:'_("\$"* #,##0.00_);_("\$"* \\\\(#,##0.00\\\\);_("\$"* "-"??_);_(@_)'};function Qt(e,t,r){for(var a=e<0?-1:1,n=e*a,i=0,s=1,f=0,o=1,c=0,l=0,v=Math.floor(n);c<t&&(v=Math.floor(n),f=v*s+i,l=v*c+o,!(n-v<5e-8));)n=1/(n-v),i=s,s=f,o=c,c=l;if(l>t&&(c>t?(l=o,f=i):(l=c,f=s)),!r)return[0,a*f,l];var h=Math.floor(a*f/l);return[h,a*f-h*l,l]}function Gt(e,t,r){if(e>2958465||e<0)return null;var a=e|0,n=Math.floor(86400*(e-a)),i=0,s=[],f={D:a,T:n,u:86400*(e-a)-n,y:0,m:0,d:0,H:0,M:0,S:0,q:0};if(Math.abs(f.u)<1e-6&&(f.u=0),t&&t.date1904&&(a+=1462),f.u>.9999&&(f.u=0,++n==86400&&(f.T=n=0,++a,++f.D)),a===60)s=r?[1317,10,29]:[1900,2,29],i=3;else if(a===0)s=r?[1317,8,29]:[1900,1,0],i=6;else{a>60&&--a;var o=new Date(1900,0,1);o.setDate(o.getDate()+a-1),s=[o.getFullYear(),o.getMonth()+1,o.getDate()],i=o.getDay(),a<60&&(i=(i+6)%7),r&&(i=hs(o,s))}return f.y=s[0],f.m=s[1],f.d=s[2],f.S=n%60,n=Math.floor(n/60),f.M=n%60,n=Math.floor(n/60),f.H=n,f.q=i,f}var fn=new Date(1899,11,31,0,0,0),ss=fn.getTime(),fs=new Date(1900,2,1,0,0,0);function cn(e,t){var r=e.getTime();return t?r-=1461*24*60*60*1e3:e>=fs&&(r+=1440*60*1e3),(r-(ss+(e.getTimezoneOffset()-fn.getTimezoneOffset())*6e4))/(1440*60*1e3)}function Ma(e){return e.indexOf(".")==-1?e:e.replace(/(?:\\.0*|(\\.\\d*[1-9])0+)\$/,"\$1")}function cs(e){return e.indexOf("E")==-1?e:e.replace(/(?:\\.0*|(\\.\\d*[1-9])0+)[Ee]/,"\$1E").replace(/(E[+-])(\\d)\$/,"\$10\$2")}function os(e){var t=e<0?12:11,r=Ma(e.toFixed(12));return r.length<=t||(r=e.toPrecision(10),r.length<=t)?r:e.toExponential(5)}function ls(e){var t=Ma(e.toFixed(11));return t.length>(e<0?12:11)||t==="0"||t==="-0"?e.toPrecision(6):t}function us(e){var t=Math.floor(Math.log(Math.abs(e))*Math.LOG10E),r;return t>=-4&&t<=-1?r=e.toPrecision(10+t):Math.abs(t)<=9?r=os(e):t===10?r=e.toFixed(10).substr(0,12):r=ls(e),Ma(cs(r.toUpperCase()))}function Na(e,t){switch(typeof e){case"string":return e;case"boolean":return e?"TRUE":"FALSE";case"number":return(e|0)===e?e.toString(10):us(e);case"undefined":return"";case"object":if(e==null)return"";if(e instanceof Date)return Lr(14,cn(e,t&&t.date1904),t)}throw new Error("unsupported value in General format: "+e)}function hs(e,t){t[0]-=581;var r=e.getDay();return e<60&&(r=(r+6)%7),r}function xs(e,t,r,a){var n="",i=0,s=0,f=r.y,o,c=0;switch(e){case 98:f=r.y+543;case 121:switch(t.length){case 1:case 2:o=f%100,c=2;break;default:o=f%1e4,c=4;break}break;case 109:switch(t.length){case 1:case 2:o=r.m,c=t.length;break;case 3:return Fa[r.m-1][1];case 5:return Fa[r.m-1][0];default:return Fa[r.m-1][2]}break;case 100:switch(t.length){case 1:case 2:o=r.d,c=t.length;break;case 3:return E0[r.q][0];default:return E0[r.q][1]}break;case 104:switch(t.length){case 1:case 2:o=1+(r.H+11)%12,c=t.length;break;default:throw"bad hour format: "+t}break;case 72:switch(t.length){case 1:case 2:o=r.H,c=t.length;break;default:throw"bad hour format: "+t}break;case 77:switch(t.length){case 1:case 2:o=r.M,c=t.length;break;default:throw"bad minute format: "+t}break;case 115:if(t!="s"&&t!="ss"&&t!=".0"&&t!=".00"&&t!=".000")throw"bad second format: "+t;return r.u===0&&(t=="s"||t=="ss")?mr(r.S,t.length):(a>=2?s=a===3?1e3:100:s=a===1?10:1,i=Math.round(s*(r.S+r.u)),i>=60*s&&(i=0),t==="s"?i===0?"0":""+i/s:(n=mr(i,2+a),t==="ss"?n.substr(0,2):"."+n.substr(2,t.length-1)));case 90:switch(t){case"[h]":case"[hh]":o=r.D*24+r.H;break;case"[m]":case"[mm]":o=(r.D*24+r.H)*60+r.M;break;case"[s]":case"[ss]":o=((r.D*24+r.H)*60+r.M)*60+Math.round(r.S+r.u);break;default:throw"bad abstime format: "+t}c=t.length===3?1:2;break;case 101:o=f,c=1;break}var l=c>0?mr(o,c):"";return l}function Pr(e){var t=3;if(e.length<=t)return e;for(var r=e.length%t,a=e.substr(0,r);r!=e.length;r+=t)a+=(a.length>0?",":"")+e.substr(r,t);return a}var on=/%/g;function ds(e,t,r){var a=t.replace(on,""),n=t.length-a.length;return Ar(e,a,r*Math.pow(10,2*n))+Fe("%",n)}function vs(e,t,r){for(var a=t.length-1;t.charCodeAt(a-1)===44;)--a;return Ar(e,t.substr(0,a),r/Math.pow(10,3*(t.length-a)))}function ln(e,t){var r,a=e.indexOf("E")-e.indexOf(".")-1;if(e.match(/^#+0.0E\\+0\$/)){if(t==0)return"0.0E+0";if(t<0)return"-"+ln(e,-t);var n=e.indexOf(".");n===-1&&(n=e.indexOf("E"));var i=Math.floor(Math.log(t)*Math.LOG10E)%n;if(i<0&&(i+=n),r=(t/Math.pow(10,i)).toPrecision(a+1+(n+i)%n),r.indexOf("e")===-1){var s=Math.floor(Math.log(t)*Math.LOG10E);for(r.indexOf(".")===-1?r=r.charAt(0)+"."+r.substr(1)+"E+"+(s-r.length+i):r+="E+"+(s-i);r.substr(0,2)==="0.";)r=r.charAt(0)+r.substr(2,n)+"."+r.substr(2+n),r=r.replace(/^0+([1-9])/,"\$1").replace(/^0+\\./,"0.");r=r.replace(/\\+-/,"-")}r=r.replace(/^([+-]?)(\\d*)\\.(\\d*)[Ee]/,function(f,o,c,l){return o+c+l.substr(0,(n+i)%n)+"."+l.substr(i)+"E"})}else r=t.toExponential(a);return e.match(/E\\+00\$/)&&r.match(/e[+-]\\d\$/)&&(r=r.substr(0,r.length-1)+"0"+r.charAt(r.length-1)),e.match(/E\\-/)&&r.match(/e\\+/)&&(r=r.replace(/e\\+/,"e")),r.replace("e","E")}var un=/# (\\?+)( ?)\\/( ?)(\\d+)/;function ps(e,t,r){var a=parseInt(e[4],10),n=Math.round(t*a),i=Math.floor(n/a),s=n-i*a,f=a;return r+(i===0?"":""+i)+" "+(s===0?Fe(" ",e[1].length+1+e[4].length):Ba(s,e[1].length)+e[2]+"/"+e[3]+mr(f,e[4].length))}function ms(e,t,r){return r+(t===0?"":""+t)+Fe(" ",e[1].length+2+e[4].length)}var hn=/^#*0*\\.([0#]+)/,xn=/\\).*[0#]/,dn=/\\(###\\) ###\\\\?-####/;function Ye(e){for(var t="",r,a=0;a!=e.length;++a)switch(r=e.charCodeAt(a)){case 35:break;case 63:t+=" ";break;case 48:t+="0";break;default:t+=String.fromCharCode(r)}return t}function S0(e,t){var r=Math.pow(10,t);return""+Math.round(e*r)/r}function F0(e,t){var r=e-Math.floor(e),a=Math.pow(10,t);return t<(""+Math.round(r*a)).length?0:Math.round(r*a)}function gs(e,t){return t<(""+Math.round((e-Math.floor(e))*Math.pow(10,t))).length?1:0}function _s(e){return e<2147483647&&e>-2147483648?""+(e>=0?e|0:e-1|0):""+Math.floor(e)}function lr(e,t,r){if(e.charCodeAt(0)===40&&!t.match(xn)){var a=t.replace(/\\( */,"").replace(/ \\)/,"").replace(/\\)/,"");return r>=0?lr("n",a,r):"("+lr("n",a,-r)+")"}if(t.charCodeAt(t.length-1)===44)return vs(e,t,r);if(t.indexOf("%")!==-1)return ds(e,t,r);if(t.indexOf("E")!==-1)return ln(t,r);if(t.charCodeAt(0)===36)return"\$"+lr(e,t.substr(t.charAt(1)==" "?2:1),r);var n,i,s,f,o=Math.abs(r),c=r<0?"-":"";if(t.match(/^00+\$/))return c+rt(o,t.length);if(t.match(/^[#?]+\$/))return n=rt(r,0),n==="0"&&(n=""),n.length>t.length?n:Ye(t.substr(0,t.length-n.length))+n;if(i=t.match(un))return ps(i,o,c);if(t.match(/^#+0+\$/))return c+rt(o,t.length-t.indexOf("0"));if(i=t.match(hn))return n=S0(r,i[1].length).replace(/^([^\\.]+)\$/,"\$1."+Ye(i[1])).replace(/\\.\$/,"."+Ye(i[1])).replace(/\\.(\\d*)\$/,function(_,u){return"."+u+Fe("0",Ye(i[1]).length-u.length)}),t.indexOf("0.")!==-1?n:n.replace(/^0\\./,".");if(t=t.replace(/^#+([0.])/,"\$1"),i=t.match(/^(0*)\\.(#*)\$/))return c+S0(o,i[2].length).replace(/\\.(\\d*[1-9])0*\$/,".\$1").replace(/^(-?\\d*)\$/,"\$1.").replace(/^0\\./,i[1].length?"0.":".");if(i=t.match(/^#{1,3},##0(\\.?)\$/))return c+Pr(rt(o,0));if(i=t.match(/^#,##0\\.([#0]*0)\$/))return r<0?"-"+lr(e,t,-r):Pr(""+(Math.floor(r)+gs(r,i[1].length)))+"."+mr(F0(r,i[1].length),i[1].length);if(i=t.match(/^#,#*,#0/))return lr(e,t.replace(/^#,#*,/,""),r);if(i=t.match(/^([0#]+)(\\\\?-([0#]+))+\$/))return n=ft(lr(e,t.replace(/[\\\\-]/g,""),r)),s=0,ft(ft(t.replace(/\\\\/g,"")).replace(/[0#]/g,function(_){return s<n.length?n.charAt(s++):_==="0"?"0":""}));if(t.match(dn))return n=lr(e,"##########",r),"("+n.substr(0,3)+") "+n.substr(3,3)+"-"+n.substr(6);var l="";if(i=t.match(/^([#0?]+)( ?)\\/( ?)([#0?]+)/))return s=Math.min(i[4].length,7),f=Qt(o,Math.pow(10,s)-1,!1),n=""+c,l=Ar("n",i[1],f[1]),l.charAt(l.length-1)==" "&&(l=l.substr(0,l.length-1)+"0"),n+=l+i[2]+"/"+i[3],l=qt(f[2],s),l.length<i[4].length&&(l=Ye(i[4].substr(i[4].length-l.length))+l),n+=l,n;if(i=t.match(/^# ([#0?]+)( ?)\\/( ?)([#0?]+)/))return s=Math.min(Math.max(i[1].length,i[4].length),7),f=Qt(o,Math.pow(10,s)-1,!0),c+(f[0]||(f[1]?"":"0"))+" "+(f[1]?Ba(f[1],s)+i[2]+"/"+i[3]+qt(f[2],s):Fe(" ",2*s+1+i[2].length+i[3].length));if(i=t.match(/^[#0?]+\$/))return n=rt(r,0),t.length<=n.length?n:Ye(t.substr(0,t.length-n.length))+n;if(i=t.match(/^([#0?]+)\\.([#0]+)\$/)){n=""+r.toFixed(Math.min(i[2].length,10)).replace(/([^0])0+\$/,"\$1"),s=n.indexOf(".");var v=t.indexOf(".")-s,h=t.length-n.length-v;return Ye(t.substr(0,v)+n+t.substr(t.length-h))}if(i=t.match(/^00,000\\.([#0]*0)\$/))return s=F0(r,i[1].length),r<0?"-"+lr(e,t,-r):Pr(_s(r)).replace(/^\\d,\\d{3}\$/,"0\$&").replace(/^\\d*\$/,function(_){return"00,"+(_.length<3?mr(0,3-_.length):"")+_})+"."+mr(s,i[1].length);switch(t){case"###,##0.00":return lr(e,"#,##0.00",r);case"###,###":case"##,###":case"#,###":var d=Pr(rt(o,0));return d!=="0"?c+d:"";case"###,###.00":return lr(e,"###,##0.00",r).replace(/^0\\./,".");case"#,###.00":return lr(e,"#,##0.00",r).replace(/^0\\./,".");default:}throw new Error("unsupported format |"+t+"|")}function ws(e,t,r){for(var a=t.length-1;t.charCodeAt(a-1)===44;)--a;return Ar(e,t.substr(0,a),r/Math.pow(10,3*(t.length-a)))}function ks(e,t,r){var a=t.replace(on,""),n=t.length-a.length;return Ar(e,a,r*Math.pow(10,2*n))+Fe("%",n)}function vn(e,t){var r,a=e.indexOf("E")-e.indexOf(".")-1;if(e.match(/^#+0.0E\\+0\$/)){if(t==0)return"0.0E+0";if(t<0)return"-"+vn(e,-t);var n=e.indexOf(".");n===-1&&(n=e.indexOf("E"));var i=Math.floor(Math.log(t)*Math.LOG10E)%n;if(i<0&&(i+=n),r=(t/Math.pow(10,i)).toPrecision(a+1+(n+i)%n),!r.match(/[Ee]/)){var s=Math.floor(Math.log(t)*Math.LOG10E);r.indexOf(".")===-1?r=r.charAt(0)+"."+r.substr(1)+"E+"+(s-r.length+i):r+="E+"+(s-i),r=r.replace(/\\+-/,"-")}r=r.replace(/^([+-]?)(\\d*)\\.(\\d*)[Ee]/,function(f,o,c,l){return o+c+l.substr(0,(n+i)%n)+"."+l.substr(i)+"E"})}else r=t.toExponential(a);return e.match(/E\\+00\$/)&&r.match(/e[+-]\\d\$/)&&(r=r.substr(0,r.length-1)+"0"+r.charAt(r.length-1)),e.match(/E\\-/)&&r.match(/e\\+/)&&(r=r.replace(/e\\+/,"e")),r.replace("e","E")}function wr(e,t,r){if(e.charCodeAt(0)===40&&!t.match(xn)){var a=t.replace(/\\( */,"").replace(/ \\)/,"").replace(/\\)/,"");return r>=0?wr("n",a,r):"("+wr("n",a,-r)+")"}if(t.charCodeAt(t.length-1)===44)return ws(e,t,r);if(t.indexOf("%")!==-1)return ks(e,t,r);if(t.indexOf("E")!==-1)return vn(t,r);if(t.charCodeAt(0)===36)return"\$"+wr(e,t.substr(t.charAt(1)==" "?2:1),r);var n,i,s,f,o=Math.abs(r),c=r<0?"-":"";if(t.match(/^00+\$/))return c+mr(o,t.length);if(t.match(/^[#?]+\$/))return n=""+r,r===0&&(n=""),n.length>t.length?n:Ye(t.substr(0,t.length-n.length))+n;if(i=t.match(un))return ms(i,o,c);if(t.match(/^#+0+\$/))return c+mr(o,t.length-t.indexOf("0"));if(i=t.match(hn))return n=(""+r).replace(/^([^\\.]+)\$/,"\$1."+Ye(i[1])).replace(/\\.\$/,"."+Ye(i[1])),n=n.replace(/\\.(\\d*)\$/,function(_,u){return"."+u+Fe("0",Ye(i[1]).length-u.length)}),t.indexOf("0.")!==-1?n:n.replace(/^0\\./,".");if(t=t.replace(/^#+([0.])/,"\$1"),i=t.match(/^(0*)\\.(#*)\$/))return c+(""+o).replace(/\\.(\\d*[1-9])0*\$/,".\$1").replace(/^(-?\\d*)\$/,"\$1.").replace(/^0\\./,i[1].length?"0.":".");if(i=t.match(/^#{1,3},##0(\\.?)\$/))return c+Pr(""+o);if(i=t.match(/^#,##0\\.([#0]*0)\$/))return r<0?"-"+wr(e,t,-r):Pr(""+r)+"."+Fe("0",i[1].length);if(i=t.match(/^#,#*,#0/))return wr(e,t.replace(/^#,#*,/,""),r);if(i=t.match(/^([0#]+)(\\\\?-([0#]+))+\$/))return n=ft(wr(e,t.replace(/[\\\\-]/g,""),r)),s=0,ft(ft(t.replace(/\\\\/g,"")).replace(/[0#]/g,function(_){return s<n.length?n.charAt(s++):_==="0"?"0":""}));if(t.match(dn))return n=wr(e,"##########",r),"("+n.substr(0,3)+") "+n.substr(3,3)+"-"+n.substr(6);var l="";if(i=t.match(/^([#0?]+)( ?)\\/( ?)([#0?]+)/))return s=Math.min(i[4].length,7),f=Qt(o,Math.pow(10,s)-1,!1),n=""+c,l=Ar("n",i[1],f[1]),l.charAt(l.length-1)==" "&&(l=l.substr(0,l.length-1)+"0"),n+=l+i[2]+"/"+i[3],l=qt(f[2],s),l.length<i[4].length&&(l=Ye(i[4].substr(i[4].length-l.length))+l),n+=l,n;if(i=t.match(/^# ([#0?]+)( ?)\\/( ?)([#0?]+)/))return s=Math.min(Math.max(i[1].length,i[4].length),7),f=Qt(o,Math.pow(10,s)-1,!0),c+(f[0]||(f[1]?"":"0"))+" "+(f[1]?Ba(f[1],s)+i[2]+"/"+i[3]+qt(f[2],s):Fe(" ",2*s+1+i[2].length+i[3].length));if(i=t.match(/^[#0?]+\$/))return n=""+r,t.length<=n.length?n:Ye(t.substr(0,t.length-n.length))+n;if(i=t.match(/^([#0]+)\\.([#0]+)\$/)){n=""+r.toFixed(Math.min(i[2].length,10)).replace(/([^0])0+\$/,"\$1"),s=n.indexOf(".");var v=t.indexOf(".")-s,h=t.length-n.length-v;return Ye(t.substr(0,v)+n+t.substr(t.length-h))}if(i=t.match(/^00,000\\.([#0]*0)\$/))return r<0?"-"+wr(e,t,-r):Pr(""+r).replace(/^\\d,\\d{3}\$/,"0\$&").replace(/^\\d*\$/,function(_){return"00,"+(_.length<3?mr(0,3-_.length):"")+_})+"."+mr(0,i[1].length);switch(t){case"###,###":case"##,###":case"#,###":var d=Pr(""+o);return d!=="0"?c+d:"";default:if(t.match(/\\.[0#?]*\$/))return wr(e,t.slice(0,t.lastIndexOf(".")),r)+Ye(t.slice(t.lastIndexOf(".")))}throw new Error("unsupported format |"+t+"|")}function Ar(e,t,r){return(r|0)===r?wr(e,t,r):lr(e,t,r)}function Es(e){for(var t=[],r=!1,a=0,n=0;a<e.length;++a)switch(e.charCodeAt(a)){case 34:r=!r;break;case 95:case 42:case 92:++a;break;case 59:t[t.length]=e.substr(n,a-n),n=a+1}if(t[t.length]=e.substr(n),r===!0)throw new Error("Format |"+e+"| unterminated string ");return t}var pn=/\\[[HhMmSs\\u0E0A\\u0E19\\u0E17]*\\]/;function mn(e){for(var t=0,r="",a="";t<e.length;)switch(r=e.charAt(t)){case"G":Zt(e,t)&&(t+=6),t++;break;case'"':for(;e.charCodeAt(++t)!==34&&t<e.length;);++t;break;case"\\\\":t+=2;break;case"_":t+=2;break;case"@":++t;break;case"B":case"b":if(e.charAt(t+1)==="1"||e.charAt(t+1)==="2")return!0;case"M":case"D":case"Y":case"H":case"S":case"E":case"m":case"d":case"y":case"h":case"s":case"e":case"g":return!0;case"A":case"a":case"\\u4E0A":if(e.substr(t,3).toUpperCase()==="A/P"||e.substr(t,5).toUpperCase()==="AM/PM"||e.substr(t,5).toUpperCase()==="\\u4E0A\\u5348/\\u4E0B\\u5348")return!0;++t;break;case"[":for(a=r;e.charAt(t++)!=="]"&&t<e.length;)a+=e.charAt(t);if(a.match(pn))return!0;break;case".":case"0":case"#":for(;t<e.length&&("0#?.,E+-%".indexOf(r=e.charAt(++t))>-1||r=="\\\\"&&e.charAt(t+1)=="-"&&"0#".indexOf(e.charAt(t+2))>-1););break;case"?":for(;e.charAt(++t)===r;);break;case"*":++t,(e.charAt(t)==" "||e.charAt(t)=="*")&&++t;break;case"(":case")":++t;break;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":for(;t<e.length&&"0123456789".indexOf(e.charAt(++t))>-1;);break;case" ":++t;break;default:++t;break}return!1}function Ts(e,t,r,a){for(var n=[],i="",s=0,f="",o="t",c,l,v,h="H";s<e.length;)switch(f=e.charAt(s)){case"G":if(!Zt(e,s))throw new Error("unrecognized character "+f+" in "+e);n[n.length]={t:"G",v:"General"},s+=7;break;case'"':for(i="";(v=e.charCodeAt(++s))!==34&&s<e.length;)i+=String.fromCharCode(v);n[n.length]={t:"t",v:i},++s;break;case"\\\\":var d=e.charAt(++s),_=d==="("||d===")"?d:"t";n[n.length]={t:_,v:d},++s;break;case"_":n[n.length]={t:"t",v:" "},s+=2;break;case"@":n[n.length]={t:"T",v:t},++s;break;case"B":case"b":if(e.charAt(s+1)==="1"||e.charAt(s+1)==="2"){if(c==null&&(c=Gt(t,r,e.charAt(s+1)==="2"),c==null))return"";n[n.length]={t:"X",v:e.substr(s,2)},o=f,s+=2;break}case"M":case"D":case"Y":case"H":case"S":case"E":f=f.toLowerCase();case"m":case"d":case"y":case"h":case"s":case"e":case"g":if(t<0||c==null&&(c=Gt(t,r),c==null))return"";for(i=f;++s<e.length&&e.charAt(s).toLowerCase()===f;)i+=f;f==="m"&&o.toLowerCase()==="h"&&(f="M"),f==="h"&&(f=h),n[n.length]={t:f,v:i},o=f;break;case"A":case"a":case"\\u4E0A":var u={t:f,v:f};if(c==null&&(c=Gt(t,r)),e.substr(s,3).toUpperCase()==="A/P"?(c!=null&&(u.v=c.H>=12?"P":"A"),u.t="T",h="h",s+=3):e.substr(s,5).toUpperCase()==="AM/PM"?(c!=null&&(u.v=c.H>=12?"PM":"AM"),u.t="T",s+=5,h="h"):e.substr(s,5).toUpperCase()==="\\u4E0A\\u5348/\\u4E0B\\u5348"?(c!=null&&(u.v=c.H>=12?"\\u4E0B\\u5348":"\\u4E0A\\u5348"),u.t="T",s+=5,h="h"):(u.t="t",++s),c==null&&u.t==="T")return"";n[n.length]=u,o=f;break;case"[":for(i=f;e.charAt(s++)!=="]"&&s<e.length;)i+=e.charAt(s);if(i.slice(-1)!=="]")throw'unterminated "[" block: |'+i+"|";if(i.match(pn)){if(c==null&&(c=Gt(t,r),c==null))return"";n[n.length]={t:"Z",v:i.toLowerCase()},o=i.charAt(1)}else i.indexOf("\$")>-1&&(i=(i.match(/\\\$([^-\\[\\]]*)/)||[])[1]||"\$",mn(e)||(n[n.length]={t:"t",v:i}));break;case".":if(c!=null){for(i=f;++s<e.length&&(f=e.charAt(s))==="0";)i+=f;n[n.length]={t:"s",v:i};break}case"0":case"#":for(i=f;++s<e.length&&"0#?.,E+-%".indexOf(f=e.charAt(s))>-1;)i+=f;n[n.length]={t:"n",v:i};break;case"?":for(i=f;e.charAt(++s)===f;)i+=f;n[n.length]={t:f,v:i},o=f;break;case"*":++s,(e.charAt(s)==" "||e.charAt(s)=="*")&&++s;break;case"(":case")":n[n.length]={t:a===1?"t":f,v:f},++s;break;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":for(i=f;s<e.length&&"0123456789".indexOf(e.charAt(++s))>-1;)i+=e.charAt(s);n[n.length]={t:"D",v:i};break;case" ":n[n.length]={t:f,v:f},++s;break;case"\$":n[n.length]={t:"t",v:"\$"},++s;break;default:if(",\$-+/():!^&'~{}<>=\\u20ACacfijklopqrtuvwxzP".indexOf(f)===-1)throw new Error("unrecognized character "+f+" in "+e);n[n.length]={t:"t",v:f},++s;break}var g=0,y=0,C;for(s=n.length-1,o="t";s>=0;--s)switch(n[s].t){case"h":case"H":n[s].t=h,o="h",g<1&&(g=1);break;case"s":(C=n[s].v.match(/\\.0+\$/))&&(y=Math.max(y,C[0].length-1)),g<3&&(g=3);case"d":case"y":case"M":case"e":o=n[s].t;break;case"m":o==="s"&&(n[s].t="M",g<2&&(g=2));break;case"X":break;case"Z":g<1&&n[s].v.match(/[Hh]/)&&(g=1),g<2&&n[s].v.match(/[Mm]/)&&(g=2),g<3&&n[s].v.match(/[Ss]/)&&(g=3)}switch(g){case 0:break;case 1:c.u>=.5&&(c.u=0,++c.S),c.S>=60&&(c.S=0,++c.M),c.M>=60&&(c.M=0,++c.H);break;case 2:c.u>=.5&&(c.u=0,++c.S),c.S>=60&&(c.S=0,++c.M);break}var D="",B;for(s=0;s<n.length;++s)switch(n[s].t){case"t":case"T":case" ":case"D":break;case"X":n[s].v="",n[s].t=";";break;case"d":case"m":case"y":case"h":case"H":case"M":case"s":case"e":case"b":case"Z":n[s].v=xs(n[s].t.charCodeAt(0),n[s].v,c,y),n[s].t="t";break;case"n":case"?":for(B=s+1;n[B]!=null&&((f=n[B].t)==="?"||f==="D"||(f===" "||f==="t")&&n[B+1]!=null&&(n[B+1].t==="?"||n[B+1].t==="t"&&n[B+1].v==="/")||n[s].t==="("&&(f===" "||f==="n"||f===")")||f==="t"&&(n[B].v==="/"||n[B].v===" "&&n[B+1]!=null&&n[B+1].t=="?"));)n[s].v+=n[B].v,n[B]={v:"",t:";"},++B;D+=n[s].v,s=B-1;break;case"G":n[s].t="t",n[s].v=Na(t,r);break}var G="",te,A;if(D.length>0){D.charCodeAt(0)==40?(te=t<0&&D.charCodeAt(0)===45?-t:t,A=Ar("n",D,te)):(te=t<0&&a>1?-t:t,A=Ar("n",D,te),te<0&&n[0]&&n[0].t=="t"&&(A=A.substr(1),n[0].v="-"+n[0].v)),B=A.length-1;var W=n.length;for(s=0;s<n.length;++s)if(n[s]!=null&&n[s].t!="t"&&n[s].v.indexOf(".")>-1){W=s;break}var L=n.length;if(W===n.length&&A.indexOf("E")===-1){for(s=n.length-1;s>=0;--s)n[s]==null||"n?".indexOf(n[s].t)===-1||(B>=n[s].v.length-1?(B-=n[s].v.length,n[s].v=A.substr(B+1,n[s].v.length)):B<0?n[s].v="":(n[s].v=A.substr(0,B+1),B=-1),n[s].t="t",L=s);B>=0&&L<n.length&&(n[L].v=A.substr(0,B+1)+n[L].v)}else if(W!==n.length&&A.indexOf("E")===-1){for(B=A.indexOf(".")-1,s=W;s>=0;--s)if(!(n[s]==null||"n?".indexOf(n[s].t)===-1)){for(l=n[s].v.indexOf(".")>-1&&s===W?n[s].v.indexOf(".")-1:n[s].v.length-1,G=n[s].v.substr(l+1);l>=0;--l)B>=0&&(n[s].v.charAt(l)==="0"||n[s].v.charAt(l)==="#")&&(G=A.charAt(B--)+G);n[s].v=G,n[s].t="t",L=s}for(B>=0&&L<n.length&&(n[L].v=A.substr(0,B+1)+n[L].v),B=A.indexOf(".")+1,s=W;s<n.length;++s)if(!(n[s]==null||"n?(".indexOf(n[s].t)===-1&&s!==W)){for(l=n[s].v.indexOf(".")>-1&&s===W?n[s].v.indexOf(".")+1:0,G=n[s].v.substr(0,l);l<n[s].v.length;++l)B<A.length&&(G+=A.charAt(B++));n[s].v=G,n[s].t="t",L=s}}}for(s=0;s<n.length;++s)n[s]!=null&&"n?".indexOf(n[s].t)>-1&&(te=a>1&&t<0&&s>0&&n[s-1].v==="-"?-t:t,n[s].v=Ar(n[s].t,n[s].v,te),n[s].t="t");var U="";for(s=0;s!==n.length;++s)n[s]!=null&&(U+=n[s].v);return U}var y0=/\\[(=|>[=]?|<[>=]?)(-?\\d+(?:\\.\\d*)?)\\]/;function A0(e,t){if(t==null)return!1;var r=parseFloat(t[2]);switch(t[1]){case"=":if(e==r)return!0;break;case">":if(e>r)return!0;break;case"<":if(e<r)return!0;break;case"<>":if(e!=r)return!0;break;case">=":if(e>=r)return!0;break;case"<=":if(e<=r)return!0;break}return!1}function Ss(e,t){var r=Es(e),a=r.length,n=r[a-1].indexOf("@");if(a<4&&n>-1&&--a,r.length>4)throw new Error("cannot find right format for |"+r.join("|")+"|");if(typeof t!="number")return[4,r.length===4||n>-1?r[r.length-1]:"@"];switch(r.length){case 1:r=n>-1?["General","General","General",r[0]]:[r[0],r[0],r[0],"@"];break;case 2:r=n>-1?[r[0],r[0],r[0],r[1]]:[r[0],r[1],r[0],"@"];break;case 3:r=n>-1?[r[0],r[1],r[0],r[2]]:[r[0],r[1],r[2],"@"];break;case 4:break}var i=t>0?r[0]:t<0?r[1]:r[2];if(r[0].indexOf("[")===-1&&r[1].indexOf("[")===-1)return[a,i];if(r[0].match(/\\[[=<>]/)!=null||r[1].match(/\\[[=<>]/)!=null){var s=r[0].match(y0),f=r[1].match(y0);return A0(t,s)?[a,r[0]]:A0(t,f)?[a,r[1]]:[a,r[s!=null&&f!=null?2:1]]}return[a,i]}function Lr(e,t,r){r==null&&(r={});var a="";switch(typeof e){case"string":e=="m/d/yy"&&r.dateNF?a=r.dateNF:a=e;break;case"number":e==14&&r.dateNF?a=r.dateNF:a=(r.table!=null?r.table:ye)[e],a==null&&(a=r.table&&r.table[T0[e]]||ye[T0[e]]),a==null&&(a=is[e]||"General");break}if(Zt(a,0))return Na(t,r);t instanceof Date&&(t=cn(t,r.date1904));var n=Ss(a,t);if(Zt(n[1]))return Na(t,r);if(t===!0)t="TRUE";else if(t===!1)t="FALSE";else if(t===""||t==null)return"";return Ts(n[1],t,r,n[0])}function gn(e,t){if(typeof t!="number"){t=+t||-1;for(var r=0;r<392;++r){if(ye[r]==null){t<0&&(t=r);continue}if(ye[r]==e){t=r;break}}t<0&&(t=391)}return ye[t]=e,t}function ua(e){for(var t=0;t!=392;++t)e[t]!==void 0&&gn(e[t],t)}function ha(){ye=ns()}var _n=/[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g;function Fs(e){var t=typeof e=="number"?ye[e]:e;return t=t.replace(_n,"(\\\\d+)"),new RegExp("^"+t+"\$")}function ys(e,t,r){var a=-1,n=-1,i=-1,s=-1,f=-1,o=-1;(t.match(_n)||[]).forEach(function(v,h){var d=parseInt(r[h+1],10);switch(v.toLowerCase().charAt(0)){case"y":a=d;break;case"d":i=d;break;case"h":s=d;break;case"s":o=d;break;case"m":s>=0?f=d:n=d;break}}),o>=0&&f==-1&&n>=0&&(f=n,n=-1);var c=(""+(a>=0?a:new Date().getFullYear())).slice(-4)+"-"+("00"+(n>=1?n:1)).slice(-2)+"-"+("00"+(i>=1?i:1)).slice(-2);c.length==7&&(c="0"+c),c.length==8&&(c="20"+c);var l=("00"+(s>=0?s:0)).slice(-2)+":"+("00"+(f>=0?f:0)).slice(-2)+":"+("00"+(o>=0?o:0)).slice(-2);return s==-1&&f==-1&&o==-1?c:a==-1&&n==-1&&i==-1?l:c+"T"+l}var As=(function(){var e={};e.version="1.2.0";function t(){for(var A=0,W=new Array(256),L=0;L!=256;++L)A=L,A=A&1?-306674912^A>>>1:A>>>1,A=A&1?-306674912^A>>>1:A>>>1,A=A&1?-306674912^A>>>1:A>>>1,A=A&1?-306674912^A>>>1:A>>>1,A=A&1?-306674912^A>>>1:A>>>1,A=A&1?-306674912^A>>>1:A>>>1,A=A&1?-306674912^A>>>1:A>>>1,A=A&1?-306674912^A>>>1:A>>>1,W[L]=A;return typeof Int32Array<"u"?new Int32Array(W):W}var r=t();function a(A){var W=0,L=0,U=0,X=typeof Int32Array<"u"?new Int32Array(4096):new Array(4096);for(U=0;U!=256;++U)X[U]=A[U];for(U=0;U!=256;++U)for(L=A[U],W=256+U;W<4096;W+=256)L=X[W]=L>>>8^A[L&255];var z=[];for(U=1;U!=16;++U)z[U-1]=typeof Int32Array<"u"?X.subarray(U*256,U*256+256):X.slice(U*256,U*256+256);return z}var n=a(r),i=n[0],s=n[1],f=n[2],o=n[3],c=n[4],l=n[5],v=n[6],h=n[7],d=n[8],_=n[9],u=n[10],g=n[11],y=n[12],C=n[13],D=n[14];function B(A,W){for(var L=W^-1,U=0,X=A.length;U<X;)L=L>>>8^r[(L^A.charCodeAt(U++))&255];return~L}function G(A,W){for(var L=W^-1,U=A.length-15,X=0;X<U;)L=D[A[X++]^L&255]^C[A[X++]^L>>8&255]^y[A[X++]^L>>16&255]^g[A[X++]^L>>>24]^u[A[X++]]^_[A[X++]]^d[A[X++]]^h[A[X++]]^v[A[X++]]^l[A[X++]]^c[A[X++]]^o[A[X++]]^f[A[X++]]^s[A[X++]]^i[A[X++]]^r[A[X++]];for(U+=15;X<U;)L=L>>>8^r[(L^A[X++])&255];return~L}function te(A,W){for(var L=W^-1,U=0,X=A.length,z=0,ie=0;U<X;)z=A.charCodeAt(U++),z<128?L=L>>>8^r[(L^z)&255]:z<2048?(L=L>>>8^r[(L^(192|z>>6&31))&255],L=L>>>8^r[(L^(128|z&63))&255]):z>=55296&&z<57344?(z=(z&1023)+64,ie=A.charCodeAt(U++)&1023,L=L>>>8^r[(L^(240|z>>8&7))&255],L=L>>>8^r[(L^(128|z>>2&63))&255],L=L>>>8^r[(L^(128|ie>>6&15|(z&3)<<4))&255],L=L>>>8^r[(L^(128|ie&63))&255]):(L=L>>>8^r[(L^(224|z>>12&15))&255],L=L>>>8^r[(L^(128|z>>6&63))&255],L=L>>>8^r[(L^(128|z&63))&255]);return~L}return e.table=r,e.bstr=B,e.buf=G,e.str=te,e})(),we=(function(){var t={};t.version="1.2.1";function r(x,w){for(var p=x.split("/"),m=w.split("/"),k=0,E=0,O=Math.min(p.length,m.length);k<O;++k){if(E=p[k].length-m[k].length)return E;if(p[k]!=m[k])return p[k]<m[k]?-1:1}return p.length-m.length}function a(x){if(x.charAt(x.length-1)=="/")return x.slice(0,-1).indexOf("/")===-1?x:a(x.slice(0,-1));var w=x.lastIndexOf("/");return w===-1?x:x.slice(0,w+1)}function n(x){if(x.charAt(x.length-1)=="/")return n(x.slice(0,-1));var w=x.lastIndexOf("/");return w===-1?x:x.slice(w+1)}function i(x,w){typeof w=="string"&&(w=new Date(w));var p=w.getHours();p=p<<6|w.getMinutes(),p=p<<5|w.getSeconds()>>>1,x.write_shift(2,p);var m=w.getFullYear()-1980;m=m<<4|w.getMonth()+1,m=m<<5|w.getDate(),x.write_shift(2,m)}function s(x){var w=x.read_shift(2)&65535,p=x.read_shift(2)&65535,m=new Date,k=p&31;p>>>=5;var E=p&15;p>>>=4,m.setMilliseconds(0),m.setFullYear(p+1980),m.setMonth(E-1),m.setDate(k);var O=w&31;w>>>=5;var P=w&63;return w>>>=6,m.setHours(w),m.setMinutes(P),m.setSeconds(O<<1),m}function f(x){sr(x,0);for(var w={},p=0;x.l<=x.length-4;){var m=x.read_shift(2),k=x.read_shift(2),E=x.l+k,O={};m===21589&&(p=x.read_shift(1),p&1&&(O.mtime=x.read_shift(4)),k>5&&(p&2&&(O.atime=x.read_shift(4)),p&4&&(O.ctime=x.read_shift(4))),O.mtime&&(O.mt=new Date(O.mtime*1e3))),x.l=E,w[m]=O}return w}var o;function c(){return o||(o={})}function l(x,w){if(x[0]==80&&x[1]==75)return g0(x,w);if((x[0]|32)==109&&(x[1]|32)==105)return Xi(x,w);if(x.length<512)throw new Error("CFB file size "+x.length+" < 512");var p=3,m=512,k=0,E=0,O=0,P=0,R=0,I=[],N=x.slice(0,512);sr(N,0);var K=v(N);switch(p=K[0],p){case 3:m=512;break;case 4:m=4096;break;case 0:if(K[1]==0)return g0(x,w);default:throw new Error("Major Version: Expected 3 or 4 saw "+p)}m!==512&&(N=x.slice(0,m),sr(N,28));var J=x.slice(0,m);h(N,p);var re=N.read_shift(4,"i");if(p===3&&re!==0)throw new Error("# Directory Sectors: Expected 0 saw "+re);N.l+=4,O=N.read_shift(4,"i"),N.l+=4,N.chk("00100000","Mini Stream Cutoff Size: "),P=N.read_shift(4,"i"),k=N.read_shift(4,"i"),R=N.read_shift(4,"i"),E=N.read_shift(4,"i");for(var q=-1,Q=0;Q<109&&(q=N.read_shift(4,"i"),!(q<0));++Q)I[Q]=q;var ce=d(x,m);g(R,E,ce,m,I);var Ee=C(ce,O,I,m);Ee[O].name="!Directory",k>0&&P!==ie&&(Ee[P].name="!MiniFAT"),Ee[I[0]].name="!FAT",Ee.fat_addrs=I,Ee.ssz=m;var er={},Ae=[],nr=[],gt=[];D(O,Ee,ce,Ae,k,er,nr,P),_(nr,gt,Ae),Ae.shift();var _t={FileIndex:nr,FullPaths:gt};return w&&w.raw&&(_t.raw={header:J,sectors:ce}),_t}function v(x){if(x[x.l]==80&&x[x.l+1]==75)return[0,0];x.chk(de,"Header Signature: "),x.l+=16;var w=x.read_shift(2,"u");return[x.read_shift(2,"u"),w]}function h(x,w){var p=9;switch(x.l+=2,p=x.read_shift(2)){case 9:if(w!=3)throw new Error("Sector Shift: Expected 9 saw "+p);break;case 12:if(w!=4)throw new Error("Sector Shift: Expected 12 saw "+p);break;default:throw new Error("Sector Shift: Expected 9 or 12 saw "+p)}x.chk("0600","Mini Sector Shift: "),x.chk("000000000000","Reserved: ")}function d(x,w){for(var p=Math.ceil(x.length/w)-1,m=[],k=1;k<p;++k)m[k-1]=x.slice(k*w,(k+1)*w);return m[p-1]=x.slice(p*w),m}function _(x,w,p){for(var m=0,k=0,E=0,O=0,P=0,R=p.length,I=[],N=[];m<R;++m)I[m]=N[m]=m,w[m]=p[m];for(;P<N.length;++P)m=N[P],k=x[m].L,E=x[m].R,O=x[m].C,I[m]===m&&(k!==-1&&I[k]!==k&&(I[m]=I[k]),E!==-1&&I[E]!==E&&(I[m]=I[E])),O!==-1&&(I[O]=m),k!==-1&&m!=I[m]&&(I[k]=I[m],N.lastIndexOf(k)<P&&N.push(k)),E!==-1&&m!=I[m]&&(I[E]=I[m],N.lastIndexOf(E)<P&&N.push(E));for(m=1;m<R;++m)I[m]===m&&(E!==-1&&I[E]!==E?I[m]=I[E]:k!==-1&&I[k]!==k&&(I[m]=I[k]));for(m=1;m<R;++m)if(x[m].type!==0){if(P=m,P!=I[P])do P=I[P],w[m]=w[P]+"/"+w[m];while(P!==0&&I[P]!==-1&&P!=I[P]);I[m]=-1}for(w[0]+="/",m=1;m<R;++m)x[m].type!==2&&(w[m]+="/")}function u(x,w,p){for(var m=x.start,k=x.size,E=[],O=m;p&&k>0&&O>=0;)E.push(w.slice(O*z,O*z+z)),k-=z,O=Xr(p,O*4);return E.length===0?b(0):Ve(E).slice(0,x.size)}function g(x,w,p,m,k){var E=ie;if(x===ie){if(w!==0)throw new Error("DIFAT chain shorter than expected")}else if(x!==-1){var O=p[x],P=(m>>>2)-1;if(!O)return;for(var R=0;R<P&&(E=Xr(O,R*4))!==ie;++R)k.push(E);g(Xr(O,m-4),w-1,p,m,k)}}function y(x,w,p,m,k){var E=[],O=[];k||(k=[]);var P=m-1,R=0,I=0;for(R=w;R>=0;){k[R]=!0,E[E.length]=R,O.push(x[R]);var N=p[Math.floor(R*4/m)];if(I=R*4&P,m<4+I)throw new Error("FAT boundary crossed: "+R+" 4 "+m);if(!x[N])break;R=Xr(x[N],I)}return{nodes:E,data:P0([O])}}function C(x,w,p,m){var k=x.length,E=[],O=[],P=[],R=[],I=m-1,N=0,K=0,J=0,re=0;for(N=0;N<k;++N)if(P=[],J=N+w,J>=k&&(J-=k),!O[J]){R=[];var q=[];for(K=J;K>=0;){q[K]=!0,O[K]=!0,P[P.length]=K,R.push(x[K]);var Q=p[Math.floor(K*4/m)];if(re=K*4&I,m<4+re)throw new Error("FAT boundary crossed: "+K+" 4 "+m);if(!x[Q]||(K=Xr(x[Q],re),q[K]))break}E[J]={nodes:P,data:P0([R])}}return E}function D(x,w,p,m,k,E,O,P){for(var R=0,I=m.length?2:0,N=w[x].data,K=0,J=0,re;K<N.length;K+=128){var q=N.slice(K,K+128);sr(q,64),J=q.read_shift(2),re=va(q,0,J-I),m.push(re);var Q={name:re,type:q.read_shift(1),color:q.read_shift(1),L:q.read_shift(4,"i"),R:q.read_shift(4,"i"),C:q.read_shift(4,"i"),clsid:q.read_shift(16),state:q.read_shift(4,"i"),start:0,size:0},ce=q.read_shift(2)+q.read_shift(2)+q.read_shift(2)+q.read_shift(2);ce!==0&&(Q.ct=B(q,q.l-8));var Ee=q.read_shift(2)+q.read_shift(2)+q.read_shift(2)+q.read_shift(2);Ee!==0&&(Q.mt=B(q,q.l-8)),Q.start=q.read_shift(4,"i"),Q.size=q.read_shift(4,"i"),Q.size<0&&Q.start<0&&(Q.size=Q.type=0,Q.start=ie,Q.name=""),Q.type===5?(R=Q.start,k>0&&R!==ie&&(w[R].name="!StreamData")):Q.size>=4096?(Q.storage="fat",w[Q.start]===void 0&&(w[Q.start]=y(p,Q.start,w.fat_addrs,w.ssz)),w[Q.start].name=Q.name,Q.content=w[Q.start].data.slice(0,Q.size)):(Q.storage="minifat",Q.size<0?Q.size=0:R!==ie&&Q.start!==ie&&w[R]&&(Q.content=u(Q,w[R].data,(w[P]||{}).data))),Q.content&&sr(Q.content,0),E[re]=Q,O.push(Q)}}function B(x,w){return new Date((be(x,w+4)/1e7*Math.pow(2,32)+be(x,w)/1e7-11644473600)*1e3)}function G(x,w){return c(),l(o.readFileSync(x),w)}function te(x,w){var p=w&&w.type;switch(p||xe&&Buffer.isBuffer(x)&&(p="buffer"),p||"base64"){case"file":return G(x,w);case"base64":return l(pr(Or(x)),w);case"binary":return l(pr(x),w)}return l(x,w)}function A(x,w){var p=w||{},m=p.root||"Root Entry";if(x.FullPaths||(x.FullPaths=[]),x.FileIndex||(x.FileIndex=[]),x.FullPaths.length!==x.FileIndex.length)throw new Error("inconsistent CFB structure");x.FullPaths.length===0&&(x.FullPaths[0]=m+"/",x.FileIndex[0]={name:m,type:5}),p.CLSID&&(x.FileIndex[0].clsid=p.CLSID),W(x)}function W(x){var w="Sh33tJ5";if(!we.find(x,"/"+w)){var p=b(4);p[0]=55,p[1]=p[3]=50,p[2]=54,x.FileIndex.push({name:w,type:2,content:p,size:4,L:69,R:69,C:69}),x.FullPaths.push(x.FullPaths[0]+w),L(x)}}function L(x,w){A(x);for(var p=!1,m=!1,k=x.FullPaths.length-1;k>=0;--k){var E=x.FileIndex[k];switch(E.type){case 0:m?p=!0:(x.FileIndex.pop(),x.FullPaths.pop());break;case 1:case 2:case 5:m=!0,isNaN(E.R*E.L*E.C)&&(p=!0),E.R>-1&&E.L>-1&&E.R==E.L&&(p=!0);break;default:p=!0;break}}if(!(!p&&!w)){var O=new Date(1987,1,19),P=0,R=Object.create?Object.create(null):{},I=[];for(k=0;k<x.FullPaths.length;++k)R[x.FullPaths[k]]=!0,x.FileIndex[k].type!==0&&I.push([x.FullPaths[k],x.FileIndex[k]]);for(k=0;k<I.length;++k){var N=a(I[k][0]);m=R[N],m||(I.push([N,{name:n(N).replace("/",""),type:1,clsid:Re,ct:O,mt:O,content:null}]),R[N]=!0)}for(I.sort(function(re,q){return r(re[0],q[0])}),x.FullPaths=[],x.FileIndex=[],k=0;k<I.length;++k)x.FullPaths[k]=I[k][0],x.FileIndex[k]=I[k][1];for(k=0;k<I.length;++k){var K=x.FileIndex[k],J=x.FullPaths[k];if(K.name=n(J).replace("/",""),K.L=K.R=K.C=-(K.color=1),K.size=K.content?K.content.length:0,K.start=0,K.clsid=K.clsid||Re,k===0)K.C=I.length>1?1:-1,K.size=0,K.type=5;else if(J.slice(-1)=="/"){for(P=k+1;P<I.length&&a(x.FullPaths[P])!=J;++P);for(K.C=P>=I.length?-1:P,P=k+1;P<I.length&&a(x.FullPaths[P])!=a(J);++P);K.R=P>=I.length?-1:P,K.type=1}else a(x.FullPaths[k+1]||"")==a(J)&&(K.R=k+1),K.type=2}}}function U(x,w){var p=w||{};if(p.fileType=="mad")return Gi(x,p);if(L(x),p.fileType==="zip")return Bi(x,p);var m=(function(re){for(var q=0,Q=0,ce=0;ce<re.FileIndex.length;++ce){var Ee=re.FileIndex[ce];if(Ee.content){var er=Ee.content.length;er>0&&(er<4096?q+=er+63>>6:Q+=er+511>>9)}}for(var Ae=re.FullPaths.length+3>>2,nr=q+7>>3,gt=q+127>>7,_t=nr+Q+Ae+gt,Vr=_t+127>>7,Sa=Vr<=109?0:Math.ceil((Vr-109)/127);_t+Vr+Sa+127>>7>Vr;)Sa=++Vr<=109?0:Math.ceil((Vr-109)/127);var Fr=[1,Sa,Vr,gt,Ae,Q,q,0];return re.FileIndex[0].size=q<<6,Fr[7]=(re.FileIndex[0].start=Fr[0]+Fr[1]+Fr[2]+Fr[3]+Fr[4]+Fr[5])+(Fr[6]+7>>3),Fr})(x),k=b(m[7]<<9),E=0,O=0;{for(E=0;E<8;++E)k.write_shift(1,se[E]);for(E=0;E<8;++E)k.write_shift(2,0);for(k.write_shift(2,62),k.write_shift(2,3),k.write_shift(2,65534),k.write_shift(2,9),k.write_shift(2,6),E=0;E<3;++E)k.write_shift(2,0);for(k.write_shift(4,0),k.write_shift(4,m[2]),k.write_shift(4,m[0]+m[1]+m[2]+m[3]-1),k.write_shift(4,0),k.write_shift(4,4096),k.write_shift(4,m[3]?m[0]+m[1]+m[2]-1:ie),k.write_shift(4,m[3]),k.write_shift(-4,m[1]?m[0]-1:ie),k.write_shift(4,m[1]),E=0;E<109;++E)k.write_shift(-4,E<m[2]?m[1]+E:-1)}if(m[1])for(O=0;O<m[1];++O){for(;E<236+O*127;++E)k.write_shift(-4,E<m[2]?m[1]+E:-1);k.write_shift(-4,O===m[1]-1?ie:O+1)}var P=function(re){for(O+=re;E<O-1;++E)k.write_shift(-4,E+1);re&&(++E,k.write_shift(-4,ie))};for(O=E=0,O+=m[1];E<O;++E)k.write_shift(-4,Ne.DIFSECT);for(O+=m[2];E<O;++E)k.write_shift(-4,Ne.FATSECT);P(m[3]),P(m[4]);for(var R=0,I=0,N=x.FileIndex[0];R<x.FileIndex.length;++R)N=x.FileIndex[R],N.content&&(I=N.content.length,!(I<4096)&&(N.start=O,P(I+511>>9)));for(P(m[6]+7>>3);k.l&511;)k.write_shift(-4,Ne.ENDOFCHAIN);for(O=E=0,R=0;R<x.FileIndex.length;++R)N=x.FileIndex[R],N.content&&(I=N.content.length,!(!I||I>=4096)&&(N.start=O,P(I+63>>6)));for(;k.l&511;)k.write_shift(-4,Ne.ENDOFCHAIN);for(E=0;E<m[4]<<2;++E){var K=x.FullPaths[E];if(!K||K.length===0){for(R=0;R<17;++R)k.write_shift(4,0);for(R=0;R<3;++R)k.write_shift(4,-1);for(R=0;R<12;++R)k.write_shift(4,0);continue}N=x.FileIndex[E],E===0&&(N.start=N.size?N.start-1:ie);var J=E===0&&p.root||N.name;if(I=2*(J.length+1),k.write_shift(64,J,"utf16le"),k.write_shift(2,I),k.write_shift(1,N.type),k.write_shift(1,N.color),k.write_shift(-4,N.L),k.write_shift(-4,N.R),k.write_shift(-4,N.C),N.clsid)k.write_shift(16,N.clsid,"hex");else for(R=0;R<4;++R)k.write_shift(4,0);k.write_shift(4,N.state||0),k.write_shift(4,0),k.write_shift(4,0),k.write_shift(4,0),k.write_shift(4,0),k.write_shift(4,N.start),k.write_shift(4,N.size),k.write_shift(4,0)}for(E=1;E<x.FileIndex.length;++E)if(N=x.FileIndex[E],N.size>=4096)if(k.l=N.start+1<<9,xe&&Buffer.isBuffer(N.content))N.content.copy(k,k.l,0,N.size),k.l+=N.size+511&-512;else{for(R=0;R<N.size;++R)k.write_shift(1,N.content[R]);for(;R&511;++R)k.write_shift(1,0)}for(E=1;E<x.FileIndex.length;++E)if(N=x.FileIndex[E],N.size>0&&N.size<4096)if(xe&&Buffer.isBuffer(N.content))N.content.copy(k,k.l,0,N.size),k.l+=N.size+63&-64;else{for(R=0;R<N.size;++R)k.write_shift(1,N.content[R]);for(;R&63;++R)k.write_shift(1,0)}if(xe)k.l=k.length;else for(;k.l<k.length;)k.write_shift(1,0);return k}function X(x,w){var p=x.FullPaths.map(function(R){return R.toUpperCase()}),m=p.map(function(R){var I=R.split("/");return I[I.length-(R.slice(-1)=="/"?2:1)]}),k=!1;w.charCodeAt(0)===47?(k=!0,w=p[0].slice(0,-1)+w):k=w.indexOf("/")!==-1;var E=w.toUpperCase(),O=k===!0?p.indexOf(E):m.indexOf(E);if(O!==-1)return x.FileIndex[O];var P=!E.match(Xt);for(E=E.replace(st,""),P&&(E=E.replace(Xt,"!")),O=0;O<p.length;++O)if((P?p[O].replace(Xt,"!"):p[O]).replace(st,"")==E||(P?m[O].replace(Xt,"!"):m[O]).replace(st,"")==E)return x.FileIndex[O];return null}var z=64,ie=-2,de="d0cf11e0a1b11ae1",se=[208,207,17,224,161,177,26,225],Re="00000000000000000000000000000000",Ne={MAXREGSECT:-6,DIFSECT:-4,FATSECT:-3,ENDOFCHAIN:ie,FREESECT:-1,HEADER_SIGNATURE:de,HEADER_MINOR_VERSION:"3e00",MAXREGSID:-6,NOSTREAM:-1,HEADER_CLSID:Re,EntryTypes:["unknown","storage","stream","lockbytes","property","root"]};function Ze(x,w,p){c();var m=U(x,p);o.writeFileSync(w,m)}function je(x){for(var w=new Array(x.length),p=0;p<x.length;++p)w[p]=String.fromCharCode(x[p]);return w.join("")}function Me(x,w){var p=U(x,w);switch(w&&w.type||"buffer"){case"file":return c(),o.writeFileSync(w.filename,p),p;case"binary":return typeof p=="string"?p:je(p);case"base64":return Ot(typeof p=="string"?p:je(p));case"buffer":if(xe)return Buffer.isBuffer(p)?p:Rr(p);case"array":return typeof p=="string"?pr(p):p}return p}var Qe;function T(x){try{var w=x.InflateRaw,p=new w;if(p._processChunk(new Uint8Array([3,0]),p._finishFlushFlag),p.bytesRead)Qe=x;else throw new Error("zlib does not expose bytesRead")}catch(m){console.error("cannot use native zlib: "+(m.message||m))}}function M(x,w){if(!Qe)return p0(x,w);var p=Qe.InflateRaw,m=new p,k=m._processChunk(x.slice(x.l),m._finishFlushFlag);return x.l+=m.bytesRead,k}function F(x){return Qe?Qe.deflateRawSync(x):l0(x)}var S=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],V=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258],ne=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577];function fe(x){var w=(x<<1|x<<11)&139536|(x<<5|x<<15)&558144;return(w>>16|w>>8|w)&255}for(var ee=typeof Uint8Array<"u",Z=ee?new Uint8Array(256):[],_e=0;_e<256;++_e)Z[_e]=fe(_e);function le(x,w){var p=Z[x&255];return w<=8?p>>>8-w:(p=p<<8|Z[x>>8&255],w<=16?p>>>16-w:(p=p<<8|Z[x>>16&255],p>>>24-w))}function Ue(x,w){var p=w&7,m=w>>>3;return(x[m]|(p<=6?0:x[m+1]<<8))>>>p&3}function ue(x,w){var p=w&7,m=w>>>3;return(x[m]|(p<=5?0:x[m+1]<<8))>>>p&7}function xr(x,w){var p=w&7,m=w>>>3;return(x[m]|(p<=4?0:x[m+1]<<8))>>>p&15}function Se(x,w){var p=w&7,m=w>>>3;return(x[m]|(p<=3?0:x[m+1]<<8))>>>p&31}function ae(x,w){var p=w&7,m=w>>>3;return(x[m]|(p<=1?0:x[m+1]<<8))>>>p&127}function or(x,w,p){var m=w&7,k=w>>>3,E=(1<<p)-1,O=x[k]>>>m;return p<8-m||(O|=x[k+1]<<8-m,p<16-m)||(O|=x[k+2]<<16-m,p<24-m)||(O|=x[k+3]<<24-m),O&E}function Sr(x,w,p){var m=w&7,k=w>>>3;return m<=5?x[k]|=(p&7)<<m:(x[k]|=p<<m&255,x[k+1]=(p&7)>>8-m),w+3}function Wr(x,w,p){var m=w&7,k=w>>>3;return p=(p&1)<<m,x[k]|=p,w+1}function et(x,w,p){var m=w&7,k=w>>>3;return p<<=m,x[k]|=p&255,p>>>=8,x[k+1]=p,w+8}function o0(x,w,p){var m=w&7,k=w>>>3;return p<<=m,x[k]|=p&255,p>>>=8,x[k+1]=p&255,x[k+2]=p>>>8,w+16}function wa(x,w){var p=x.length,m=2*p>w?2*p:w+5,k=0;if(p>=w)return x;if(xe){var E=w0(m);if(x.copy)x.copy(E);else for(;k<x.length;++k)E[k]=x[k];return E}else if(ee){var O=new Uint8Array(m);if(O.set)O.set(x);else for(;k<p;++k)O[k]=x[k];return O}return x.length=m,x}function _r(x){for(var w=new Array(x),p=0;p<x;++p)w[p]=0;return w}function Wt(x,w,p){var m=1,k=0,E=0,O=0,P=0,R=x.length,I=ee?new Uint16Array(32):_r(32);for(E=0;E<32;++E)I[E]=0;for(E=R;E<p;++E)x[E]=0;R=x.length;var N=ee?new Uint16Array(R):_r(R);for(E=0;E<R;++E)I[k=x[E]]++,m<k&&(m=k),N[E]=0;for(I[0]=0,E=1;E<=m;++E)I[E+16]=P=P+I[E-1]<<1;for(E=0;E<R;++E)P=x[E],P!=0&&(N[E]=I[P+16]++);var K=0;for(E=0;E<R;++E)if(K=x[E],K!=0)for(P=le(N[E],m)>>m-K,O=(1<<m+4-K)-1;O>=0;--O)w[P|O<<K]=K&15|E<<4;return m}var ka=ee?new Uint16Array(512):_r(512),Ea=ee?new Uint16Array(32):_r(32);if(!ee){for(var Hr=0;Hr<512;++Hr)ka[Hr]=0;for(Hr=0;Hr<32;++Hr)Ea[Hr]=0}(function(){for(var x=[],w=0;w<32;w++)x.push(5);Wt(x,Ea,32);var p=[];for(w=0;w<=143;w++)p.push(8);for(;w<=255;w++)p.push(9);for(;w<=279;w++)p.push(7);for(;w<=287;w++)p.push(8);Wt(p,ka,288)})();var Ni=(function(){for(var w=ee?new Uint8Array(32768):[],p=0,m=0;p<ne.length-1;++p)for(;m<ne[p+1];++m)w[m]=p;for(;m<32768;++m)w[m]=29;var k=ee?new Uint8Array(259):[];for(p=0,m=0;p<V.length-1;++p)for(;m<V[p+1];++m)k[m]=p;function E(P,R){for(var I=0;I<P.length;){var N=Math.min(65535,P.length-I),K=I+N==P.length;for(R.write_shift(1,+K),R.write_shift(2,N),R.write_shift(2,~N&65535);N-- >0;)R[R.l++]=P[I++]}return R.l}function O(P,R){for(var I=0,N=0,K=ee?new Uint16Array(32768):[];N<P.length;){var J=Math.min(65535,P.length-N);if(J<10){for(I=Sr(R,I,+(N+J==P.length)),I&7&&(I+=8-(I&7)),R.l=I/8|0,R.write_shift(2,J),R.write_shift(2,~J&65535);J-- >0;)R[R.l++]=P[N++];I=R.l*8;continue}I=Sr(R,I,+(N+J==P.length)+2);for(var re=0;J-- >0;){var q=P[N];re=(re<<5^q)&32767;var Q=-1,ce=0;if((Q=K[re])&&(Q|=N&-32768,Q>N&&(Q-=32768),Q<N))for(;P[Q+ce]==P[N+ce]&&ce<250;)++ce;if(ce>2){q=k[ce],q<=22?I=et(R,I,Z[q+1]>>1)-1:(et(R,I,3),I+=5,et(R,I,Z[q-23]>>5),I+=3);var Ee=q<8?0:q-4>>2;Ee>0&&(o0(R,I,ce-V[q]),I+=Ee),q=w[N-Q],I=et(R,I,Z[q]>>3),I-=3;var er=q<4?0:q-2>>1;er>0&&(o0(R,I,N-Q-ne[q]),I+=er);for(var Ae=0;Ae<ce;++Ae)K[re]=N&32767,re=(re<<5^P[N])&32767,++N;J-=ce-1}else q<=143?q=q+48:I=Wr(R,I,1),I=et(R,I,Z[q]),K[re]=N&32767,++N}I=et(R,I,0)-1}return R.l=(I+7)/8|0,R.l}return function(R,I){return R.length<8?E(R,I):O(R,I)}})();function l0(x){var w=b(50+Math.floor(x.length*1.1)),p=Ni(x,w);return w.slice(0,p)}var u0=ee?new Uint16Array(32768):_r(32768),h0=ee?new Uint16Array(32768):_r(32768),x0=ee?new Uint16Array(128):_r(128),d0=1,v0=1;function bi(x,w){var p=Se(x,w)+257;w+=5;var m=Se(x,w)+1;w+=5;var k=xr(x,w)+4;w+=4;for(var E=0,O=ee?new Uint8Array(19):_r(19),P=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],R=1,I=ee?new Uint8Array(8):_r(8),N=ee?new Uint8Array(8):_r(8),K=O.length,J=0;J<k;++J)O[S[J]]=E=ue(x,w),R<E&&(R=E),I[E]++,w+=3;var re=0;for(I[0]=0,J=1;J<=R;++J)N[J]=re=re+I[J-1]<<1;for(J=0;J<K;++J)(re=O[J])!=0&&(P[J]=N[re]++);var q=0;for(J=0;J<K;++J)if(q=O[J],q!=0){re=Z[P[J]]>>8-q;for(var Q=(1<<7-q)-1;Q>=0;--Q)x0[re|Q<<q]=q&7|J<<3}var ce=[];for(R=1;ce.length<p+m;)switch(re=x0[ae(x,w)],w+=re&7,re>>>=3){case 16:for(E=3+Ue(x,w),w+=2,re=ce[ce.length-1];E-- >0;)ce.push(re);break;case 17:for(E=3+ue(x,w),w+=3;E-- >0;)ce.push(0);break;case 18:for(E=11+ae(x,w),w+=7;E-- >0;)ce.push(0);break;default:ce.push(re),R<re&&(R=re);break}var Ee=ce.slice(0,p),er=ce.slice(p);for(J=p;J<286;++J)Ee[J]=0;for(J=m;J<30;++J)er[J]=0;return d0=Wt(Ee,u0,286),v0=Wt(er,h0,30),w}function Pi(x,w){if(x[0]==3&&!(x[1]&3))return[\$r(w),2];for(var p=0,m=0,k=w0(w||1<<18),E=0,O=k.length>>>0,P=0,R=0;(m&1)==0;){if(m=ue(x,p),p+=3,m>>>1)m>>1==1?(P=9,R=5):(p=bi(x,p),P=d0,R=v0);else{p&7&&(p+=8-(p&7));var I=x[p>>>3]|x[(p>>>3)+1]<<8;if(p+=32,I>0)for(!w&&O<E+I&&(k=wa(k,E+I),O=k.length);I-- >0;)k[E++]=x[p>>>3],p+=8;continue}for(;;){!w&&O<E+32767&&(k=wa(k,E+32767),O=k.length);var N=or(x,p,P),K=m>>>1==1?ka[N]:u0[N];if(p+=K&15,K>>>=4,(K>>>8&255)===0)k[E++]=K;else{if(K==256)break;K-=257;var J=K<8?0:K-4>>2;J>5&&(J=0);var re=E+V[K];J>0&&(re+=or(x,p,J),p+=J),N=or(x,p,R),K=m>>>1==1?Ea[N]:h0[N],p+=K&15,K>>>=4;var q=K<4?0:K-2>>1,Q=ne[K];for(q>0&&(Q+=or(x,p,q),p+=q),!w&&O<re&&(k=wa(k,re+100),O=k.length);E<re;)k[E]=k[E-Q],++E}}}return w?[k,p+7>>>3]:[k.slice(0,E),p+7>>>3]}function p0(x,w){var p=x.slice(x.l||0),m=Pi(p,w);return x.l+=m[1],m[0]}function m0(x,w){if(x)typeof console<"u"&&console.error(w);else throw new Error(w)}function g0(x,w){var p=x;sr(p,0);var m=[],k=[],E={FileIndex:m,FullPaths:k};A(E,{root:w.root});for(var O=p.length-4;(p[O]!=80||p[O+1]!=75||p[O+2]!=5||p[O+3]!=6)&&O>=0;)--O;p.l=O+4,p.l+=4;var P=p.read_shift(2);p.l+=6;var R=p.read_shift(4);for(p.l=R,O=0;O<P;++O){p.l+=20;var I=p.read_shift(4),N=p.read_shift(4),K=p.read_shift(2),J=p.read_shift(2),re=p.read_shift(2);p.l+=8;var q=p.read_shift(4),Q=f(p.slice(p.l+K,p.l+K+J));p.l+=K+J+re;var ce=p.l;p.l=q+4,Li(p,I,N,E,Q),p.l=ce}return E}function Li(x,w,p,m,k){x.l+=2;var E=x.read_shift(2),O=x.read_shift(2),P=s(x);if(E&8257)throw new Error("Unsupported ZIP encryption");for(var R=x.read_shift(4),I=x.read_shift(4),N=x.read_shift(4),K=x.read_shift(2),J=x.read_shift(2),re="",q=0;q<K;++q)re+=String.fromCharCode(x[x.l++]);if(J){var Q=f(x.slice(x.l,x.l+J));(Q[21589]||{}).mt&&(P=Q[21589].mt),((k||{})[21589]||{}).mt&&(P=k[21589].mt)}x.l+=J;var ce=x.slice(x.l,x.l+I);switch(O){case 8:ce=M(x,N);break;case 0:break;default:throw new Error("Unsupported ZIP Compression method "+O)}var Ee=!1;E&8&&(R=x.read_shift(4),R==134695760&&(R=x.read_shift(4),Ee=!0),I=x.read_shift(4),N=x.read_shift(4)),I!=w&&m0(Ee,"Bad compressed size: "+w+" != "+I),N!=p&&m0(Ee,"Bad uncompressed size: "+p+" != "+N),Ta(m,re,ce,{unsafe:!0,mt:P})}function Bi(x,w){var p=w||{},m=[],k=[],E=b(1),O=p.compression?8:0,P=0,R=!1;R&&(P|=8);var I=0,N=0,K=0,J=0,re=x.FullPaths[0],q=re,Q=x.FileIndex[0],ce=[],Ee=0;for(I=1;I<x.FullPaths.length;++I)if(q=x.FullPaths[I].slice(re.length),Q=x.FileIndex[I],!(!Q.size||!Q.content||q=="Sh33tJ5")){var er=K,Ae=b(q.length);for(N=0;N<q.length;++N)Ae.write_shift(1,q.charCodeAt(N)&127);Ae=Ae.slice(0,Ae.l),ce[J]=As.buf(Q.content,0);var nr=Q.content;O==8&&(nr=F(nr)),E=b(30),E.write_shift(4,67324752),E.write_shift(2,20),E.write_shift(2,P),E.write_shift(2,O),Q.mt?i(E,Q.mt):E.write_shift(4,0),E.write_shift(-4,P&8?0:ce[J]),E.write_shift(4,P&8?0:nr.length),E.write_shift(4,P&8?0:Q.content.length),E.write_shift(2,Ae.length),E.write_shift(2,0),K+=E.length,m.push(E),K+=Ae.length,m.push(Ae),K+=nr.length,m.push(nr),P&8&&(E=b(12),E.write_shift(-4,ce[J]),E.write_shift(4,nr.length),E.write_shift(4,Q.content.length),K+=E.l,m.push(E)),E=b(46),E.write_shift(4,33639248),E.write_shift(2,0),E.write_shift(2,20),E.write_shift(2,P),E.write_shift(2,O),E.write_shift(4,0),E.write_shift(-4,ce[J]),E.write_shift(4,nr.length),E.write_shift(4,Q.content.length),E.write_shift(2,Ae.length),E.write_shift(2,0),E.write_shift(2,0),E.write_shift(2,0),E.write_shift(2,0),E.write_shift(4,0),E.write_shift(4,er),Ee+=E.l,k.push(E),Ee+=Ae.length,k.push(Ae),++J}return E=b(22),E.write_shift(4,101010256),E.write_shift(2,0),E.write_shift(2,0),E.write_shift(2,J),E.write_shift(2,J),E.write_shift(4,Ee),E.write_shift(4,K),E.write_shift(2,0),Ve([Ve(m),Ve(k),E])}var Ht={htm:"text/html",xml:"text/xml",gif:"image/gif",jpg:"image/jpeg",png:"image/png",mso:"application/x-mso",thmx:"application/vnd.ms-officetheme",sh33tj5:"application/octet-stream"};function Mi(x,w){if(x.ctype)return x.ctype;var p=x.name||"",m=p.match(/\\.([^\\.]+)\$/);return m&&Ht[m[1]]||w&&(m=(p=w).match(/[\\.\\\\]([^\\.\\\\])+\$/),m&&Ht[m[1]])?Ht[m[1]]:"application/octet-stream"}function Ui(x){for(var w=Ot(x),p=[],m=0;m<w.length;m+=76)p.push(w.slice(m,m+76));return p.join(\`\\r
|
|
2492
|
+
\`)+\`\\r
|
|
2493
|
+
\`}function Wi(x){var w=x.replace(/[\\x00-\\x08\\x0B\\x0C\\x0E-\\x1F\\x7E-\\xFF=]/g,function(I){var N=I.charCodeAt(0).toString(16).toUpperCase();return"="+(N.length==1?"0"+N:N)});w=w.replace(/ \$/mg,"=20").replace(/\\t\$/mg,"=09"),w.charAt(0)==\`
|
|
2494
|
+
\`&&(w="=0D"+w.slice(1)),w=w.replace(/\\r(?!\\n)/mg,"=0D").replace(/\\n\\n/mg,\`
|
|
2495
|
+
=0A\`).replace(/([^\\r\\n])\\n/mg,"\$1=0A");for(var p=[],m=w.split(\`\\r
|
|
2496
|
+
\`),k=0;k<m.length;++k){var E=m[k];if(E.length==0){p.push("");continue}for(var O=0;O<E.length;){var P=76,R=E.slice(O,O+P);R.charAt(P-1)=="="?P--:R.charAt(P-2)=="="?P-=2:R.charAt(P-3)=="="&&(P-=3),R=E.slice(O,O+P),O+=P,O<E.length&&(R+="="),p.push(R)}}return p.join(\`\\r
|
|
2497
|
+
\`)}function Hi(x){for(var w=[],p=0;p<x.length;++p){for(var m=x[p];p<=x.length&&m.charAt(m.length-1)=="=";)m=m.slice(0,m.length-1)+x[++p];w.push(m)}for(var k=0;k<w.length;++k)w[k]=w[k].replace(/[=][0-9A-Fa-f]{2}/g,function(E){return String.fromCharCode(parseInt(E.slice(1),16))});return pr(w.join(\`\\r
|
|
2498
|
+
\`))}function Vi(x,w,p){for(var m="",k="",E="",O,P=0;P<10;++P){var R=w[P];if(!R||R.match(/^\\s*\$/))break;var I=R.match(/^(.*?):\\s*([^\\s].*)\$/);if(I)switch(I[1].toLowerCase()){case"content-location":m=I[2].trim();break;case"content-type":E=I[2].trim();break;case"content-transfer-encoding":k=I[2].trim();break}}switch(++P,k.toLowerCase()){case"base64":O=pr(Or(w.slice(P).join("")));break;case"quoted-printable":O=Hi(w.slice(P));break;default:throw new Error("Unsupported Content-Transfer-Encoding "+k)}var N=Ta(x,m.slice(p.length),O,{unsafe:!0});E&&(N.ctype=E)}function Xi(x,w){if(je(x.slice(0,13)).toLowerCase()!="mime-version:")throw new Error("Unsupported MAD header");var p=w&&w.root||"",m=(xe&&Buffer.isBuffer(x)?x.toString("binary"):je(x)).split(\`\\r
|
|
2499
|
+
\`),k=0,E="";for(k=0;k<m.length;++k)if(E=m[k],!!/^Content-Location:/i.test(E)&&(E=E.slice(E.indexOf("file")),p||(p=E.slice(0,E.lastIndexOf("/")+1)),E.slice(0,p.length)!=p))for(;p.length>0&&(p=p.slice(0,p.length-1),p=p.slice(0,p.lastIndexOf("/")+1),E.slice(0,p.length)!=p););var O=(m[1]||"").match(/boundary="(.*?)"/);if(!O)throw new Error("MAD cannot find boundary");var P="--"+(O[1]||""),R=[],I=[],N={FileIndex:R,FullPaths:I};A(N);var K,J=0;for(k=0;k<m.length;++k){var re=m[k];re!==P&&re!==P+"--"||(J++&&Vi(N,m.slice(K,k),p),K=k)}return N}function Gi(x,w){var p=w||{},m=p.boundary||"SheetJS";m="------="+m;for(var k=["MIME-Version: 1.0",'Content-Type: multipart/related; boundary="'+m.slice(2)+'"',"","",""],E=x.FullPaths[0],O=E,P=x.FileIndex[0],R=1;R<x.FullPaths.length;++R)if(O=x.FullPaths[R].slice(E.length),P=x.FileIndex[R],!(!P.size||!P.content||O=="Sh33tJ5")){O=O.replace(/[\\x00-\\x08\\x0B\\x0C\\x0E-\\x1F\\x7E-\\xFF]/g,function(ce){return"_x"+ce.charCodeAt(0).toString(16)+"_"}).replace(/[\\u0080-\\uFFFF]/g,function(ce){return"_u"+ce.charCodeAt(0).toString(16)+"_"});for(var I=P.content,N=xe&&Buffer.isBuffer(I)?I.toString("binary"):je(I),K=0,J=Math.min(1024,N.length),re=0,q=0;q<=J;++q)(re=N.charCodeAt(q))>=32&&re<128&&++K;var Q=K>=J*4/5;k.push(m),k.push("Content-Location: "+(p.root||"file:///C:/SheetJS/")+O),k.push("Content-Transfer-Encoding: "+(Q?"quoted-printable":"base64")),k.push("Content-Type: "+Mi(P,O)),k.push(""),k.push(Q?Wi(N):Ui(N))}return k.push(m+\`--\\r
|
|
2500
|
+
\`),k.join(\`\\r
|
|
2501
|
+
\`)}function zi(x){var w={};return A(w,x),w}function Ta(x,w,p,m){var k=m&&m.unsafe;k||A(x);var E=!k&&we.find(x,w);if(!E){var O=x.FullPaths[0];w.slice(0,O.length)==O?O=w:(O.slice(-1)!="/"&&(O+="/"),O=(O+w).replace("//","/")),E={name:n(w),type:2},x.FileIndex.push(E),x.FullPaths.push(O),k||we.utils.cfb_gc(x)}return E.content=p,E.size=p?p.length:0,m&&(m.CLSID&&(E.clsid=m.CLSID),m.mt&&(E.mt=m.mt),m.ct&&(E.ct=m.ct)),E}function \$i(x,w){A(x);var p=we.find(x,w);if(p){for(var m=0;m<x.FileIndex.length;++m)if(x.FileIndex[m]==p)return x.FileIndex.splice(m,1),x.FullPaths.splice(m,1),!0}return!1}function Ki(x,w,p){A(x);var m=we.find(x,w);if(m){for(var k=0;k<x.FileIndex.length;++k)if(x.FileIndex[k]==m)return x.FileIndex[k].name=n(p),x.FullPaths[k]=p,!0}return!1}function ji(x){L(x,!0)}return t.find=X,t.read=te,t.parse=l,t.write=Me,t.writeFile=Ze,t.utils={cfb_new:zi,cfb_add:Ta,cfb_del:\$i,cfb_mov:Ki,cfb_gc:ji,ReadShift:St,CheckField:Rn,prep_blob:sr,bconcat:Ve,use_zlib:T,_deflateRaw:l0,_inflateRaw:p0,consts:Ne},t})(),zt;function Cs(e){return typeof e=="string"?la(e):Array.isArray(e)?es(e):e}function Lt(e,t,r){if(typeof zt<"u"&&zt.writeFileSync)return r?zt.writeFileSync(e,t,r):zt.writeFileSync(e,t);if(typeof Deno<"u"){if(r&&typeof t=="string")switch(r){case"utf8":t=new TextEncoder(r).encode(t);break;case"binary":t=la(t);break;default:throw new Error("Unsupported encoding "+r)}return Deno.writeFileSync(e,t)}var a=r=="utf8"?yr(t):t;if(typeof IE_SaveFile<"u")return IE_SaveFile(a,e);if(typeof Blob<"u"){var n=new Blob([Cs(a)],{type:"application/octet-stream"});if(typeof navigator<"u"&&navigator.msSaveBlob)return navigator.msSaveBlob(n,e);if(typeof saveAs<"u")return saveAs(n,e);if(typeof URL<"u"&&typeof document<"u"&&document.createElement&&URL.createObjectURL){var i=URL.createObjectURL(n);if(typeof chrome=="object"&&typeof(chrome.downloads||{}).download=="function")return URL.revokeObjectURL&&typeof setTimeout<"u"&&setTimeout(function(){URL.revokeObjectURL(i)},6e4),chrome.downloads.download({url:i,filename:e,saveAs:!0});var s=document.createElement("a");if(s.download!=null)return s.download=e,s.href=i,document.body.appendChild(s),s.click(),document.body.removeChild(s),URL.revokeObjectURL&&typeof setTimeout<"u"&&setTimeout(function(){URL.revokeObjectURL(i)},6e4),i}}if(typeof \$<"u"&&typeof File<"u"&&typeof Folder<"u")try{var f=File(e);return f.open("w"),f.encoding="binary",Array.isArray(t)&&(t=Pt(t)),f.write(t),f.close(),t}catch(o){if(!o.message||!o.message.match(/onstruct/))throw o}throw new Error("cannot save file "+e)}function ze(e){for(var t=Object.keys(e),r=[],a=0;a<t.length;++a)Object.prototype.hasOwnProperty.call(e,t[a])&&r.push(t[a]);return r}function C0(e,t){for(var r=[],a=ze(e),n=0;n!==a.length;++n)r[e[a[n]][t]]==null&&(r[e[a[n]][t]]=a[n]);return r}function Ua(e){for(var t=[],r=ze(e),a=0;a!==r.length;++a)t[e[r[a]]]=r[a];return t}function xa(e){for(var t=[],r=ze(e),a=0;a!==r.length;++a)t[e[r[a]]]=parseInt(r[a],10);return t}function Ds(e){for(var t=[],r=ze(e),a=0;a!==r.length;++a)t[e[r[a]]]==null&&(t[e[r[a]]]=[]),t[e[r[a]]].push(r[a]);return t}var ea=new Date(1899,11,30,0,0,0);function tr(e,t){var r=e.getTime();t&&(r-=1462*24*60*60*1e3);var a=ea.getTime()+(e.getTimezoneOffset()-ea.getTimezoneOffset())*6e4;return(r-a)/(1440*60*1e3)}var wn=new Date,Os=ea.getTime()+(wn.getTimezoneOffset()-ea.getTimezoneOffset())*6e4,D0=wn.getTimezoneOffset();function kn(e){var t=new Date;return t.setTime(e*24*60*60*1e3+Os),t.getTimezoneOffset()!==D0&&t.setTime(t.getTime()+(t.getTimezoneOffset()-D0)*6e4),t}var O0=new Date("2017-02-19T19:06:09.000Z"),En=isNaN(O0.getFullYear())?new Date("2/19/17"):O0,Is=En.getFullYear()==2017;function qe(e,t){var r=new Date(e);if(Is)return t>0?r.setTime(r.getTime()+r.getTimezoneOffset()*60*1e3):t<0&&r.setTime(r.getTime()-r.getTimezoneOffset()*60*1e3),r;if(e instanceof Date)return e;if(En.getFullYear()==1917&&!isNaN(r.getFullYear())){var a=r.getFullYear();return e.indexOf(""+a)>-1||r.setFullYear(r.getFullYear()+100),r}var n=e.match(/\\d+/g)||["2017","2","19","0","0","0"],i=new Date(+n[0],+n[1]-1,+n[2],+n[3]||0,+n[4]||0,+n[5]||0);return e.indexOf("Z")>-1&&(i=new Date(i.getTime()-i.getTimezoneOffset()*60*1e3)),i}function da(e,t){if(xe&&Buffer.isBuffer(e)){if(t){if(e[0]==255&&e[1]==254)return yr(e.slice(2).toString("utf16le"));if(e[1]==254&&e[2]==255)return yr(Qi(e.slice(2).toString("binary")))}return e.toString("binary")}if(typeof TextDecoder<"u")try{if(t){if(e[0]==255&&e[1]==254)return yr(new TextDecoder("utf-16le").decode(e.slice(2)));if(e[0]==254&&e[1]==255)return yr(new TextDecoder("utf-16be").decode(e.slice(2)))}var r={"\\u20AC":"\\x80","\\u201A":"\\x82",\\u0192:"\\x83","\\u201E":"\\x84","\\u2026":"\\x85","\\u2020":"\\x86","\\u2021":"\\x87","\\u02C6":"\\x88","\\u2030":"\\x89",\\u0160:"\\x8A","\\u2039":"\\x8B",\\u0152:"\\x8C",\\u017D:"\\x8E","\\u2018":"\\x91","\\u2019":"\\x92","\\u201C":"\\x93","\\u201D":"\\x94","\\u2022":"\\x95","\\u2013":"\\x96","\\u2014":"\\x97","\\u02DC":"\\x98","\\u2122":"\\x99",\\u0161:"\\x9A","\\u203A":"\\x9B",\\u0153:"\\x9C",\\u017E:"\\x9E",\\u0178:"\\x9F"};return Array.isArray(e)&&(e=new Uint8Array(e)),new TextDecoder("latin1").decode(e).replace(/[€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ]/g,function(i){return r[i]||i})}catch{}for(var a=[],n=0;n!=e.length;++n)a.push(String.fromCharCode(e[n]));return a.join("")}function ar(e){if(typeof JSON<"u"&&!Array.isArray(e))return JSON.parse(JSON.stringify(e));if(typeof e!="object"||e==null)return e;if(e instanceof Date)return new Date(e.getTime());var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=ar(e[r]));return t}function Fe(e,t){for(var r="";r.length<t;)r+=e;return r}function Cr(e){var t=Number(e);if(!isNaN(t))return isFinite(t)?t:NaN;if(!/\\d/.test(e))return t;var r=1,a=e.replace(/([\\d]),([\\d])/g,"\$1\$2").replace(/[\$]/g,"").replace(/[%]/g,function(){return r*=100,""});return!isNaN(t=Number(a))||(a=a.replace(/[(](.*)[)]/,function(n,i){return r=-r,i}),!isNaN(t=Number(a)))?t/r:t}var Rs=["january","february","march","april","may","june","july","august","september","october","november","december"];function It(e){var t=new Date(e),r=new Date(NaN),a=t.getYear(),n=t.getMonth(),i=t.getDate();if(isNaN(i))return r;var s=e.toLowerCase();if(s.match(/jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec/)){if(s=s.replace(/[^a-z]/g,"").replace(/([^a-z]|^)[ap]m?([^a-z]|\$)/,""),s.length>3&&Rs.indexOf(s)==-1)return r}else if(s.match(/[a-z]/))return r;return a<0||a>8099?r:(n>0||i>1)&&a!=101?t:e.match(/[^-0-9:,\\/\\\\]/)?r:t}function oe(e,t,r){if(e.FullPaths){if(typeof r=="string"){var a;return xe?a=Rr(r):a=rs(r),we.utils.cfb_add(e,t,a)}we.utils.cfb_add(e,t,r)}else e.file(t,r)}function Wa(){return we.utils.cfb_new()}var Oe=\`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\\r
|
|
2502
|
+
\`;var Ns={""":'"',"'":"'",">":">","<":"<","&":"&"},Ha=Ua(Ns);var Va=/[&<>'"]/g,bs=/[\\u0000-\\u0008\\u000b-\\u001f]/g;function me(e){var t=e+"";return t.replace(Va,function(r){return Ha[r]}).replace(bs,function(r){return"_x"+("000"+r.charCodeAt(0).toString(16)).slice(-4)+"_"})}function I0(e){return me(e).replace(/ /g,"_x0020_")}var Tn=/[\\u0000-\\u001f]/g;function Ps(e){var t=e+"";return t.replace(Va,function(r){return Ha[r]}).replace(/\\n/g,"<br/>").replace(Tn,function(r){return"&#x"+("000"+r.charCodeAt(0).toString(16)).slice(-4)+";"})}function Ls(e){var t=e+"";return t.replace(Va,function(r){return Ha[r]}).replace(Tn,function(r){return"&#x"+r.charCodeAt(0).toString(16).toUpperCase()+";"})}function Bs(e){return e.replace(/(\\r\\n|[\\r\\n])/g," ")}function Ms(e){switch(e){case 1:case!0:case"1":case"true":case"TRUE":return!0;default:return!1}}function ya(e){for(var t="",r=0,a=0,n=0,i=0,s=0,f=0;r<e.length;){if(a=e.charCodeAt(r++),a<128){t+=String.fromCharCode(a);continue}if(n=e.charCodeAt(r++),a>191&&a<224){s=(a&31)<<6,s|=n&63,t+=String.fromCharCode(s);continue}if(i=e.charCodeAt(r++),a<240){t+=String.fromCharCode((a&15)<<12|(n&63)<<6|i&63);continue}s=e.charCodeAt(r++),f=((a&7)<<18|(n&63)<<12|(i&63)<<6|s&63)-65536,t+=String.fromCharCode(55296+(f>>>10&1023)),t+=String.fromCharCode(56320+(f&1023))}return t}function R0(e){var t=\$r(2*e.length),r,a,n=1,i=0,s=0,f;for(a=0;a<e.length;a+=n)n=1,(f=e.charCodeAt(a))<128?r=f:f<224?(r=(f&31)*64+(e.charCodeAt(a+1)&63),n=2):f<240?(r=(f&15)*4096+(e.charCodeAt(a+1)&63)*64+(e.charCodeAt(a+2)&63),n=3):(n=4,r=(f&7)*262144+(e.charCodeAt(a+1)&63)*4096+(e.charCodeAt(a+2)&63)*64+(e.charCodeAt(a+3)&63),r-=65536,s=55296+(r>>>10&1023),r=56320+(r&1023)),s!==0&&(t[i++]=s&255,t[i++]=s>>>8,s=0),t[i++]=r%256,t[i++]=r>>>8;return t.slice(0,i).toString("ucs2")}function N0(e){return Rr(e,"binary").toString("utf8")}var \$t="foo bar baz\\xE2\\x98\\x83\\xF0\\x9F\\x8D\\xA3",Tt=xe&&(N0(\$t)==ya(\$t)&&N0||R0(\$t)==ya(\$t)&&R0)||ya,yr=xe?function(e){return Rr(e,"utf8").toString("binary")}:function(e){for(var t=[],r=0,a=0,n=0;r<e.length;)switch(a=e.charCodeAt(r++),!0){case a<128:t.push(String.fromCharCode(a));break;case a<2048:t.push(String.fromCharCode(192+(a>>6))),t.push(String.fromCharCode(128+(a&63)));break;case(a>=55296&&a<57344):a-=55296,n=e.charCodeAt(r++)-56320+(a<<10),t.push(String.fromCharCode(240+(n>>18&7))),t.push(String.fromCharCode(144+(n>>12&63))),t.push(String.fromCharCode(128+(n>>6&63))),t.push(String.fromCharCode(128+(n&63)));break;default:t.push(String.fromCharCode(224+(a>>12))),t.push(String.fromCharCode(128+(a>>6&63))),t.push(String.fromCharCode(128+(a&63)))}return t.join("")};var Us=(function(){var e=[["nbsp"," "],["middot","\\xB7"],["quot",'"'],["apos","'"],["gt",">"],["lt","<"],["amp","&"]].map(function(t){return[new RegExp("&"+t[0]+";","ig"),t[1]]});return function(r){for(var a=r.replace(/^[\\t\\n\\r ]+/,"").replace(/[\\t\\n\\r ]+\$/,"").replace(/>\\s+/g,">").replace(/\\s+</g,"<").replace(/[\\t\\n\\r ]+/g," ").replace(/<\\s*[bB][rR]\\s*\\/?>/g,\`
|
|
2503
|
+
\`).replace(/<[^>]*>/g,""),n=0;n<e.length;++n)a=a.replace(e[n][0],e[n][1]);return a}})();var Sn=/(^\\s|\\s\$|\\n)/;function Xe(e,t){return"<"+e+(t.match(Sn)?' xml:space="preserve"':"")+">"+t+"</"+e+">"}function Rt(e){return ze(e).map(function(t){return" "+t+'="'+e[t]+'"'}).join("")}function j(e,t,r){return"<"+e+(r!=null?Rt(r):"")+(t!=null?(t.match(Sn)?' xml:space="preserve"':"")+">"+t+"</"+e:"/")+">"}function ba(e,t){try{return e.toISOString().replace(/\\.\\d*/,"")}catch(r){if(t)throw r}return""}function Ws(e,t){switch(typeof e){case"string":var r=j("vt:lpwstr",me(e));return t&&(r=r.replace(/"/g,"_x0022_")),r;case"number":return j((e|0)==e?"vt:i4":"vt:r8",me(String(e)));case"boolean":return j("vt:bool",e?"true":"false")}if(e instanceof Date)return j("vt:filetime",ba(e));throw new Error("Unable to serialize "+e)}var Pe={CORE_PROPS:"http://schemas.openxmlformats.org/package/2006/metadata/core-properties",CUST_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/custom-properties",EXT_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/extended-properties",CT:"http://schemas.openxmlformats.org/package/2006/content-types",RELS:"http://schemas.openxmlformats.org/package/2006/relationships",TCMNT:"http://schemas.microsoft.com/office/spreadsheetml/2018/threadedcomments",dc:"http://purl.org/dc/elements/1.1/",dcterms:"http://purl.org/dc/terms/",dcmitype:"http://purl.org/dc/dcmitype/",mx:"http://schemas.microsoft.com/office/mac/excel/2008/main",r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships",sjs:"http://schemas.openxmlformats.org/package/2006/sheetjs/core-properties",vt:"http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes",xsi:"http://www.w3.org/2001/XMLSchema-instance",xsd:"http://www.w3.org/2001/XMLSchema"},xt=["http://schemas.openxmlformats.org/spreadsheetml/2006/main","http://purl.oclc.org/ooxml/spreadsheetml/main","http://schemas.microsoft.com/office/excel/2006/main","http://schemas.microsoft.com/office/excel/2006/2"],fr={o:"urn:schemas-microsoft-com:office:office",x:"urn:schemas-microsoft-com:office:excel",ss:"urn:schemas-microsoft-com:office:spreadsheet",dt:"uuid:C2F41010-65B3-11d1-A29F-00AA00C14882",mv:"http://macVmlSchemaUri",v:"urn:schemas-microsoft-com:vml",html:"http://www.w3.org/TR/REC-html40"};function Hs(e,t){for(var r=1-2*(e[t+7]>>>7),a=((e[t+7]&127)<<4)+(e[t+6]>>>4&15),n=e[t+6]&15,i=5;i>=0;--i)n=n*256+e[t+i];return a==2047?n==0?r*(1/0):NaN:(a==0?a=-1022:(a-=1023,n+=Math.pow(2,52)),r*Math.pow(2,a-52)*n)}function Vs(e,t,r){var a=(t<0||1/t==-1/0?1:0)<<7,n=0,i=0,s=a?-t:t;isFinite(s)?s==0?n=i=0:(n=Math.floor(Math.log(s)/Math.LN2),i=s*Math.pow(2,52-n),n<=-1023&&(!isFinite(i)||i<Math.pow(2,52))?n=-1022:(i-=Math.pow(2,52),n+=1023)):(n=2047,i=isNaN(t)?26985:0);for(var f=0;f<=5;++f,i/=256)e[r+f]=i&255;e[r+6]=(n&15)<<4|i&15,e[r+7]=n>>4|a}var b0=function(e){for(var t=[],r=10240,a=0;a<e[0].length;++a)if(e[0][a])for(var n=0,i=e[0][a].length;n<i;n+=r)t.push.apply(t,e[0][a].slice(n,n+r));return t},P0=xe?function(e){return e[0].length>0&&Buffer.isBuffer(e[0][0])?Buffer.concat(e[0].map(function(t){return Buffer.isBuffer(t)?t:Rr(t)})):b0(e)}:b0,L0=function(e,t,r){for(var a=[],n=t;n<r;n+=2)a.push(String.fromCharCode(Et(e,n)));return a.join("").replace(st,"")},va=xe?function(e,t,r){return Buffer.isBuffer(e)?e.toString("utf16le",t,r).replace(st,""):L0(e,t,r)}:L0,B0=function(e,t,r){for(var a=[],n=t;n<t+r;++n)a.push(("0"+e[n].toString(16)).slice(-2));return a.join("")},Fn=xe?function(e,t,r){return Buffer.isBuffer(e)?e.toString("hex",t,t+r):B0(e,t,r)}:B0,M0=function(e,t,r){for(var a=[],n=t;n<r;n++)a.push(String.fromCharCode(nt(e,n)));return a.join("")},dt=xe?function(t,r,a){return Buffer.isBuffer(t)?t.toString("utf8",r,a):M0(t,r,a)}:M0,yn=function(e,t){var r=be(e,t);return r>0?dt(e,t+4,t+4+r-1):""},Xa=yn,An=function(e,t){var r=be(e,t);return r>0?dt(e,t+4,t+4+r-1):""},Ga=An,Cn=function(e,t){var r=2*be(e,t);return r>0?dt(e,t+4,t+4+r-1):""},za=Cn,Dn=function(t,r){var a=be(t,r);return a>0?va(t,r+4,r+4+a):""},\$a=Dn,On=function(e,t){var r=be(e,t);return r>0?dt(e,t+4,t+4+r):""},Ka=On,In=function(e,t){return Hs(e,t)},ra=In,ja=function(t){return Array.isArray(t)||typeof Uint8Array<"u"&&t instanceof Uint8Array};xe&&(Xa=function(t,r){if(!Buffer.isBuffer(t))return yn(t,r);var a=t.readUInt32LE(r);return a>0?t.toString("utf8",r+4,r+4+a-1):""},Ga=function(t,r){if(!Buffer.isBuffer(t))return An(t,r);var a=t.readUInt32LE(r);return a>0?t.toString("utf8",r+4,r+4+a-1):""},za=function(t,r){if(!Buffer.isBuffer(t))return Cn(t,r);var a=2*t.readUInt32LE(r);return t.toString("utf16le",r+4,r+4+a-1)},\$a=function(t,r){if(!Buffer.isBuffer(t))return Dn(t,r);var a=t.readUInt32LE(r);return t.toString("utf16le",r+4,r+4+a)},Ka=function(t,r){if(!Buffer.isBuffer(t))return On(t,r);var a=t.readUInt32LE(r);return t.toString("utf8",r+4,r+4+a)},ra=function(t,r){return Buffer.isBuffer(t)?t.readDoubleLE(r):In(t,r)},ja=function(t){return Buffer.isBuffer(t)||Array.isArray(t)||typeof Uint8Array<"u"&&t instanceof Uint8Array});function Xs(){va=function(e,t,r){return ke.utils.decode(1200,e.slice(t,r)).replace(st,"")},dt=function(e,t,r){return ke.utils.decode(65001,e.slice(t,r))},Xa=function(e,t){var r=be(e,t);return r>0?ke.utils.decode(ut,e.slice(t+4,t+4+r-1)):""},Ga=function(e,t){var r=be(e,t);return r>0?ke.utils.decode(Gr,e.slice(t+4,t+4+r-1)):""},za=function(e,t){var r=2*be(e,t);return r>0?ke.utils.decode(1200,e.slice(t+4,t+4+r-1)):""},\$a=function(e,t){var r=be(e,t);return r>0?ke.utils.decode(1200,e.slice(t+4,t+4+r)):""},Ka=function(e,t){var r=be(e,t);return r>0?ke.utils.decode(65001,e.slice(t+4,t+4+r)):""}}typeof ke<"u"&&Xs();var nt=function(e,t){return e[t]},Et=function(e,t){return e[t+1]*256+e[t]},Gs=function(e,t){var r=e[t+1]*256+e[t];return r<32768?r:(65535-r+1)*-1},be=function(e,t){return e[t+3]*(1<<24)+(e[t+2]<<16)+(e[t+1]<<8)+e[t]},Xr=function(e,t){return e[t+3]<<24|e[t+2]<<16|e[t+1]<<8|e[t]},zs=function(e,t){return e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3]};function St(e,t){var r="",a,n,i=[],s,f,o,c;switch(t){case"dbcs":if(c=this.l,xe&&Buffer.isBuffer(this))r=this.slice(this.l,this.l+2*e).toString("utf16le");else for(o=0;o<e;++o)r+=String.fromCharCode(Et(this,c)),c+=2;e*=2;break;case"utf8":r=dt(this,this.l,this.l+e);break;case"utf16le":e*=2,r=va(this,this.l,this.l+e);break;case"wstr":if(typeof ke<"u")r=ke.utils.decode(Gr,this.slice(this.l,this.l+2*e));else return St.call(this,e,"dbcs");e=2*e;break;case"lpstr-ansi":r=Xa(this,this.l),e=4+be(this,this.l);break;case"lpstr-cp":r=Ga(this,this.l),e=4+be(this,this.l);break;case"lpwstr":r=za(this,this.l),e=4+2*be(this,this.l);break;case"lpp4":e=4+be(this,this.l),r=\$a(this,this.l),e&2&&(e+=2);break;case"8lpp4":e=4+be(this,this.l),r=Ka(this,this.l),e&3&&(e+=4-(e&3));break;case"cstr":for(e=0,r="";(s=nt(this,this.l+e++))!==0;)i.push(Vt(s));r=i.join("");break;case"_wstr":for(e=0,r="";(s=Et(this,this.l+e))!==0;)i.push(Vt(s)),e+=2;e+=2,r=i.join("");break;case"dbcs-cont":for(r="",c=this.l,o=0;o<e;++o){if(this.lens&&this.lens.indexOf(c)!==-1)return s=nt(this,c),this.l=c+1,f=St.call(this,e-o,s?"dbcs-cont":"sbcs-cont"),i.join("")+f;i.push(Vt(Et(this,c))),c+=2}r=i.join(""),e*=2;break;case"cpstr":if(typeof ke<"u"){r=ke.utils.decode(Gr,this.slice(this.l,this.l+e));break}case"sbcs-cont":for(r="",c=this.l,o=0;o!=e;++o){if(this.lens&&this.lens.indexOf(c)!==-1)return s=nt(this,c),this.l=c+1,f=St.call(this,e-o,s?"dbcs-cont":"sbcs-cont"),i.join("")+f;i.push(Vt(nt(this,c))),c+=1}r=i.join("");break;default:switch(e){case 1:return a=nt(this,this.l),this.l++,a;case 2:return a=(t==="i"?Gs:Et)(this,this.l),this.l+=2,a;case 4:case-4:return t==="i"||(this[this.l+3]&128)===0?(a=(e>0?Xr:zs)(this,this.l),this.l+=4,a):(n=be(this,this.l),this.l+=4,n);case 8:case-8:if(t==="f")return e==8?n=ra(this,this.l):n=ra([this[this.l+7],this[this.l+6],this[this.l+5],this[this.l+4],this[this.l+3],this[this.l+2],this[this.l+1],this[this.l+0]],0),this.l+=8,n;e=8;case 16:r=Fn(this,this.l,e);break}}return this.l+=e,r}var \$s=function(e,t,r){e[r]=t&255,e[r+1]=t>>>8&255,e[r+2]=t>>>16&255,e[r+3]=t>>>24&255},Ks=function(e,t,r){e[r]=t&255,e[r+1]=t>>8&255,e[r+2]=t>>16&255,e[r+3]=t>>24&255},js=function(e,t,r){e[r]=t&255,e[r+1]=t>>>8&255};function Ys(e,t,r){var a=0,n=0;if(r==="dbcs"){for(n=0;n!=t.length;++n)js(this,t.charCodeAt(n),this.l+2*n);a=2*t.length}else if(r==="sbcs"){if(typeof ke<"u"&&ut==874)for(n=0;n!=t.length;++n){var i=ke.utils.encode(ut,t.charAt(n));this[this.l+n]=i[0]}else for(t=t.replace(/[^\\x00-\\x7F]/g,"_"),n=0;n!=t.length;++n)this[this.l+n]=t.charCodeAt(n)&255;a=t.length}else if(r==="hex"){for(;n<e;++n)this[this.l++]=parseInt(t.slice(2*n,2*n+2),16)||0;return this}else if(r==="utf16le"){var s=Math.min(this.l+e,this.length);for(n=0;n<Math.min(t.length,e);++n){var f=t.charCodeAt(n);this[this.l++]=f&255,this[this.l++]=f>>8}for(;this.l<s;)this[this.l++]=0;return this}else switch(e){case 1:a=1,this[this.l]=t&255;break;case 2:a=2,this[this.l]=t&255,t>>>=8,this[this.l+1]=t&255;break;case 3:a=3,this[this.l]=t&255,t>>>=8,this[this.l+1]=t&255,t>>>=8,this[this.l+2]=t&255;break;case 4:a=4,\$s(this,t,this.l);break;case 8:if(a=8,r==="f"){Vs(this,t,this.l);break}case 16:break;case-4:a=4,Ks(this,t,this.l);break}return this.l+=a,this}function Rn(e,t){var r=Fn(this,this.l,e.length>>1);if(r!==e)throw new Error(t+"Expected "+e+" saw "+r);this.l+=e.length>>1}function sr(e,t){e.l=t,e.read_shift=St,e.chk=Rn,e.write_shift=Ys}function Tr(e,t){e.l+=t}function b(e){var t=\$r(e);return sr(t,0),t}function rr(){var e=[],t=xe?256:2048,r=function(c){var l=b(c);return sr(l,0),l},a=r(t),n=function(){a&&(a.length>a.l&&(a=a.slice(0,a.l),a.l=a.length),a.length>0&&e.push(a),a=null)},i=function(c){return a&&c<a.length-a.l?a:(n(),a=r(Math.max(c+1,t)))},s=function(){return n(),Ve(e)},f=function(c){n(),a=c,a.l==null&&(a.l=a.length),i(t)};return{next:i,push:f,end:s,_bufs:e}}function H(e,t,r,a){var n=+t,i;if(!isNaN(n)){a||(a=Gh[n].p||(r||[]).length||0),i=1+(n>=128?1:0)+1,a>=128&&++i,a>=16384&&++i,a>=2097152&&++i;var s=e.next(i);n<=127?s.write_shift(1,n):(s.write_shift(1,(n&127)+128),s.write_shift(1,n>>7));for(var f=0;f!=4;++f)if(a>=128)s.write_shift(1,(a&127)+128),a>>=7;else{s.write_shift(1,a);break}a>0&&ja(r)&&e.push(r)}}function Ft(e,t,r){var a=ar(e);if(t.s?(a.cRel&&(a.c+=t.s.c),a.rRel&&(a.r+=t.s.r)):(a.cRel&&(a.c+=t.c),a.rRel&&(a.r+=t.r)),!r||r.biff<12){for(;a.c>=256;)a.c-=256;for(;a.r>=65536;)a.r-=65536}return a}function U0(e,t,r){var a=ar(e);return a.s=Ft(a.s,t.s,r),a.e=Ft(a.e,t.s,r),a}function yt(e,t){if(e.cRel&&e.c<0)for(e=ar(e);e.c<0;)e.c+=t>8?16384:256;if(e.rRel&&e.r<0)for(e=ar(e);e.r<0;)e.r+=t>8?1048576:t>5?65536:16384;var r=ge(e);return!e.cRel&&e.cRel!=null&&(r=Zs(r)),!e.rRel&&e.rRel!=null&&(r=Js(r)),r}function Aa(e,t){return e.s.r==0&&!e.s.rRel&&e.e.r==(t.biff>=12?1048575:t.biff>=8?65536:16384)&&!e.e.rRel?(e.s.cRel?"":"\$")+\$e(e.s.c)+":"+(e.e.cRel?"":"\$")+\$e(e.e.c):e.s.c==0&&!e.s.cRel&&e.e.c==(t.biff>=12?16383:255)&&!e.e.cRel?(e.s.rRel?"":"\$")+Ge(e.s.r)+":"+(e.e.rRel?"":"\$")+Ge(e.e.r):yt(e.s,t.biff)+":"+yt(e.e,t.biff)}function Ya(e){return parseInt(qs(e),10)-1}function Ge(e){return""+(e+1)}function Js(e){return e.replace(/([A-Z]|^)(\\d+)\$/,"\$1\$\$\$2")}function qs(e){return e.replace(/\\\$(\\d+)\$/,"\$1")}function Ja(e){for(var t=Qs(e),r=0,a=0;a!==t.length;++a)r=26*r+t.charCodeAt(a)-64;return r-1}function \$e(e){if(e<0)throw new Error("invalid column "+e);var t="";for(++e;e;e=Math.floor((e-1)/26))t=String.fromCharCode((e-1)%26+65)+t;return t}function Zs(e){return e.replace(/^([A-Z])/,"\$\$\$1")}function Qs(e){return e.replace(/^\\\$([A-Z])/,"\$1")}function ef(e){return e.replace(/(\\\$?[A-Z]*)(\\\$?\\d*)/,"\$1,\$2").split(",")}function Le(e){for(var t=0,r=0,a=0;a<e.length;++a){var n=e.charCodeAt(a);n>=48&&n<=57?t=10*t+(n-48):n>=65&&n<=90&&(r=26*r+(n-64))}return{c:r-1,r:t-1}}function ge(e){for(var t=e.c+1,r="";t;t=(t-1)/26|0)r=String.fromCharCode((t-1)%26+65)+r;return r+(e.r+1)}function cr(e){var t=e.indexOf(":");return t==-1?{s:Le(e),e:Le(e)}:{s:Le(e.slice(0,t)),e:Le(e.slice(t+1))}}function De(e,t){return typeof t>"u"||typeof t=="number"?De(e.s,e.e):(typeof e!="string"&&(e=ge(e)),typeof t!="string"&&(t=ge(t)),e==t?e:e+":"+t)}function Te(e){var t={s:{c:0,r:0},e:{c:0,r:0}},r=0,a=0,n=0,i=e.length;for(r=0;a<i&&!((n=e.charCodeAt(a)-64)<1||n>26);++a)r=26*r+n;for(t.s.c=--r,r=0;a<i&&!((n=e.charCodeAt(a)-48)<0||n>9);++a)r=10*r+n;if(t.s.r=--r,a===i||n!=10)return t.e.c=t.s.c,t.e.r=t.s.r,t;for(++a,r=0;a!=i&&!((n=e.charCodeAt(a)-64)<1||n>26);++a)r=26*r+n;for(t.e.c=--r,r=0;a!=i&&!((n=e.charCodeAt(a)-48)<0||n>9);++a)r=10*r+n;return t.e.r=--r,t}function W0(e,t){var r=e.t=="d"&&t instanceof Date;if(e.z!=null)try{return e.w=Lr(e.z,r?tr(t):t)}catch{}try{return e.w=Lr((e.XF||{}).numFmtId||(r?14:0),r?tr(t):t)}catch{return""+t}}function Ir(e,t,r){return e==null||e.t==null||e.t=="z"?"":e.w!==void 0?e.w:(e.t=="d"&&!e.z&&r&&r.dateNF&&(e.z=r.dateNF),e.t=="e"?Bt[e.v]||e.v:t==null?W0(e,e.v):W0(e,t))}function Yr(e,t){var r=t&&t.sheet?t.sheet:"Sheet1",a={};return a[r]=e,{SheetNames:[r],Sheets:a}}function Nn(e,t,r){var a=r||{},n=e?Array.isArray(e):a.dense;Er!=null&&n==null&&(n=Er);var i=e||(n?[]:{}),s=0,f=0;if(i&&a.origin!=null){if(typeof a.origin=="number")s=a.origin;else{var o=typeof a.origin=="string"?Le(a.origin):a.origin;s=o.r,f=o.c}i["!ref"]||(i["!ref"]="A1:A1")}var c={s:{c:1e7,r:1e7},e:{c:0,r:0}};if(i["!ref"]){var l=Te(i["!ref"]);c.s.c=l.s.c,c.s.r=l.s.r,c.e.c=Math.max(c.e.c,l.e.c),c.e.r=Math.max(c.e.r,l.e.r),s==-1&&(c.e.r=s=l.e.r+1)}for(var v=0;v!=t.length;++v)if(t[v]){if(!Array.isArray(t[v]))throw new Error("aoa_to_sheet expects an array of arrays");for(var h=0;h!=t[v].length;++h)if(!(typeof t[v][h]>"u")){var d={v:t[v][h]},_=s+v,u=f+h;if(c.s.r>_&&(c.s.r=_),c.s.c>u&&(c.s.c=u),c.e.r<_&&(c.e.r=_),c.e.c<u&&(c.e.c=u),t[v][h]&&typeof t[v][h]=="object"&&!Array.isArray(t[v][h])&&!(t[v][h]instanceof Date))d=t[v][h];else if(Array.isArray(d.v)&&(d.f=t[v][h][1],d.v=d.v[0]),d.v===null)if(d.f)d.t="n";else if(a.nullError)d.t="e",d.v=0;else if(a.sheetStubs)d.t="z";else continue;else typeof d.v=="number"?d.t="n":typeof d.v=="boolean"?d.t="b":d.v instanceof Date?(d.z=a.dateNF||ye[14],a.cellDates?(d.t="d",d.w=Lr(d.z,tr(d.v))):(d.t="n",d.v=tr(d.v),d.w=Lr(d.z,d.v))):d.t="s";if(n)i[_]||(i[_]=[]),i[_][u]&&i[_][u].z&&(d.z=i[_][u].z),i[_][u]=d;else{var g=ge({c:u,r:_});i[g]&&i[g].z&&(d.z=i[g].z),i[g]=d}}}return c.s.c<1e7&&(i["!ref"]=De(c)),i}function vt(e,t){return Nn(null,e,t)}function rf(e){return e.read_shift(4,"i")}function gr(e,t){return t||(t=b(4)),t.write_shift(4,e),t}function Ke(e){var t=e.read_shift(4);return t===0?"":e.read_shift(t,"dbcs")}function Be(e,t){var r=!1;return t==null&&(r=!0,t=b(4+2*e.length)),t.write_shift(4,e.length),e.length>0&&t.write_shift(0,e,"dbcs"),r?t.slice(0,t.l):t}function tf(e){return{ich:e.read_shift(2),ifnt:e.read_shift(2)}}function af(e,t){return t||(t=b(4)),t.write_shift(2,e.ich||0),t.write_shift(2,e.ifnt||0),t}function qa(e,t){var r=e.l,a=e.read_shift(1),n=Ke(e),i=[],s={t:n,h:n};if((a&1)!==0){for(var f=e.read_shift(4),o=0;o!=f;++o)i.push(tf(e));s.r=i}else s.r=[{ich:0,ifnt:0}];return e.l=r+t,s}function nf(e,t){var r=!1;return t==null&&(r=!0,t=b(15+4*e.t.length)),t.write_shift(1,0),Be(e.t,t),r?t.slice(0,t.l):t}var sf=qa;function ff(e,t){var r=!1;return t==null&&(r=!0,t=b(23+4*e.t.length)),t.write_shift(1,1),Be(e.t,t),t.write_shift(4,1),af({ich:0,ifnt:0},t),r?t.slice(0,t.l):t}function hr(e){var t=e.read_shift(4),r=e.read_shift(2);return r+=e.read_shift(1)<<16,e.l++,{c:t,iStyleRef:r}}function Jr(e,t){return t==null&&(t=b(8)),t.write_shift(-4,e.c),t.write_shift(3,e.iStyleRef||e.s),t.write_shift(1,0),t}function qr(e){var t=e.read_shift(2);return t+=e.read_shift(1)<<16,e.l++,{c:-1,iStyleRef:t}}function Zr(e,t){return t==null&&(t=b(4)),t.write_shift(3,e.iStyleRef||e.s),t.write_shift(1,0),t}var cf=Ke,bn=Be;function Za(e){var t=e.read_shift(4);return t===0||t===4294967295?"":e.read_shift(t,"dbcs")}function ta(e,t){var r=!1;return t==null&&(r=!0,t=b(127)),t.write_shift(4,e.length>0?e.length:4294967295),e.length>0&&t.write_shift(0,e,"dbcs"),r?t.slice(0,t.l):t}var of=Ke,Pa=Za,Qa=ta;function Pn(e){var t=e.slice(e.l,e.l+4),r=t[0]&1,a=t[0]&2;e.l+=4;var n=a===0?ra([0,0,0,0,t[0]&252,t[1],t[2],t[3]],0):Xr(t,0)>>2;return r?n/100:n}function Ln(e,t){t==null&&(t=b(4));var r=0,a=0,n=e*100;if(e==(e|0)&&e>=-(1<<29)&&e<1<<29?a=1:n==(n|0)&&n>=-(1<<29)&&n<1<<29&&(a=1,r=1),a)t.write_shift(-4,((r?n:e)<<2)+(r+2));else throw new Error("unsupported RkNumber "+e)}function Bn(e){var t={s:{},e:{}};return t.s.r=e.read_shift(4),t.e.r=e.read_shift(4),t.s.c=e.read_shift(4),t.e.c=e.read_shift(4),t}function lf(e,t){return t||(t=b(16)),t.write_shift(4,e.s.r),t.write_shift(4,e.e.r),t.write_shift(4,e.s.c),t.write_shift(4,e.e.c),t}var Qr=Bn,pt=lf;function mt(e){if(e.length-e.l<8)throw"XLS Xnum Buffer underflow";return e.read_shift(8,"f")}function Kr(e,t){return(t||b(8)).write_shift(8,e,"f")}function uf(e){var t={},r=e.read_shift(1),a=r>>>1,n=e.read_shift(1),i=e.read_shift(2,"i"),s=e.read_shift(1),f=e.read_shift(1),o=e.read_shift(1);switch(e.l++,a){case 0:t.auto=1;break;case 1:t.index=n;var c=wf[n];c&&(t.rgb=q0(c));break;case 2:t.rgb=q0([s,f,o]);break;case 3:t.theme=n;break}return i!=0&&(t.tint=i>0?i/32767:i/32768),t}function aa(e,t){if(t||(t=b(8)),!e||e.auto)return t.write_shift(4,0),t.write_shift(4,0),t;e.index!=null?(t.write_shift(1,2),t.write_shift(1,e.index)):e.theme!=null?(t.write_shift(1,6),t.write_shift(1,e.theme)):(t.write_shift(1,5),t.write_shift(1,0));var r=e.tint||0;if(r>0?r*=32767:r<0&&(r*=32768),t.write_shift(2,r),!e.rgb||e.theme!=null)t.write_shift(2,0),t.write_shift(1,0),t.write_shift(1,0);else{var a=e.rgb||"FFFFFF";typeof a=="number"&&(a=("000000"+a.toString(16)).slice(-6)),t.write_shift(1,parseInt(a.slice(0,2),16)),t.write_shift(1,parseInt(a.slice(2,4),16)),t.write_shift(1,parseInt(a.slice(4,6),16)),t.write_shift(1,255)}return t}function hf(e){var t=e.read_shift(1);e.l++;var r={fBold:t&1,fItalic:t&2,fUnderline:t&4,fStrikeout:t&8,fOutline:t&16,fShadow:t&32,fCondense:t&64,fExtend:t&128};return r}function xf(e,t){t||(t=b(2));var r=(e.italic?2:0)|(e.strike?8:0)|(e.outline?16:0)|(e.shadow?32:0)|(e.condense?64:0)|(e.extend?128:0);return t.write_shift(1,r),t.write_shift(1,0),t}var Mn=2,ir=3,Kt=11;var na=19;var jt=64,df=65,vf=71;var pf=4108,mf=4126,He=80;var H0={1:{n:"CodePage",t:Mn},2:{n:"Category",t:He},3:{n:"PresentationFormat",t:He},4:{n:"ByteCount",t:ir},5:{n:"LineCount",t:ir},6:{n:"ParagraphCount",t:ir},7:{n:"SlideCount",t:ir},8:{n:"NoteCount",t:ir},9:{n:"HiddenCount",t:ir},10:{n:"MultimediaClipCount",t:ir},11:{n:"ScaleCrop",t:Kt},12:{n:"HeadingPairs",t:pf},13:{n:"TitlesOfParts",t:mf},14:{n:"Manager",t:He},15:{n:"Company",t:He},16:{n:"LinksUpToDate",t:Kt},17:{n:"CharacterCount",t:ir},19:{n:"SharedDoc",t:Kt},22:{n:"HyperlinksChanged",t:Kt},23:{n:"AppVersion",t:ir,p:"version"},24:{n:"DigSig",t:df},26:{n:"ContentType",t:He},27:{n:"ContentStatus",t:He},28:{n:"Language",t:He},29:{n:"Version",t:He},255:{},2147483648:{n:"Locale",t:na},2147483651:{n:"Behavior",t:na},1919054434:{}},V0={1:{n:"CodePage",t:Mn},2:{n:"Title",t:He},3:{n:"Subject",t:He},4:{n:"Author",t:He},5:{n:"Keywords",t:He},6:{n:"Comments",t:He},7:{n:"Template",t:He},8:{n:"LastAuthor",t:He},9:{n:"RevNumber",t:He},10:{n:"EditTime",t:jt},11:{n:"LastPrinted",t:jt},12:{n:"CreatedDate",t:jt},13:{n:"ModifiedDate",t:jt},14:{n:"PageCount",t:ir},15:{n:"WordCount",t:ir},16:{n:"CharCount",t:ir},17:{n:"Thumbnail",t:vf},18:{n:"Application",t:He},19:{n:"DocSecurity",t:ir},255:{},2147483648:{n:"Locale",t:na},2147483651:{n:"Behavior",t:na},1919054434:{}};function gf(e){return e.map(function(t){return[t>>16&255,t>>8&255,t&255]})}var _f=gf([0,16777215,16711680,65280,255,16776960,16711935,65535,0,16777215,16711680,65280,255,16776960,16711935,65535,8388608,32768,128,8421376,8388736,32896,12632256,8421504,10066431,10040166,16777164,13434879,6684774,16744576,26316,13421823,128,16711935,16776960,65535,8388736,8388608,32896,255,52479,13434879,13434828,16777113,10079487,16751052,13408767,16764057,3368703,3394764,10079232,16763904,16750848,16737792,6710937,9868950,13158,3381606,13056,3355392,10040064,10040166,3355545,3355443,16777215,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),wf=ar(_f),Bt={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"};var kf={"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":"workbooks","application/vnd.ms-excel.sheet.macroEnabled.main+xml":"workbooks","application/vnd.ms-excel.sheet.binary.macroEnabled.main":"workbooks","application/vnd.ms-excel.addin.macroEnabled.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":"sheets","application/vnd.ms-excel.worksheet":"sheets","application/vnd.ms-excel.binIndexWs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":"charts","application/vnd.ms-excel.chartsheet":"charts","application/vnd.ms-excel.macrosheet+xml":"macros","application/vnd.ms-excel.macrosheet":"macros","application/vnd.ms-excel.intlmacrosheet":"TODO","application/vnd.ms-excel.binIndexMs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":"dialogs","application/vnd.ms-excel.dialogsheet":"dialogs","application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml":"strs","application/vnd.ms-excel.sharedStrings":"strs","application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":"styles","application/vnd.ms-excel.styles":"styles","application/vnd.openxmlformats-package.core-properties+xml":"coreprops","application/vnd.openxmlformats-officedocument.custom-properties+xml":"custprops","application/vnd.openxmlformats-officedocument.extended-properties+xml":"extprops","application/vnd.openxmlformats-officedocument.customXmlProperties+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.customProperty":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":"comments","application/vnd.ms-excel.comments":"comments","application/vnd.ms-excel.threadedcomments+xml":"threadedcomments","application/vnd.ms-excel.person+xml":"people","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml":"metadata","application/vnd.ms-excel.sheetMetadata":"metadata","application/vnd.ms-excel.pivotTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.chart+xml":"TODO","application/vnd.ms-office.chartcolorstyle+xml":"TODO","application/vnd.ms-office.chartstyle+xml":"TODO","application/vnd.ms-office.chartex+xml":"TODO","application/vnd.ms-excel.calcChain":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings":"TODO","application/vnd.ms-office.activeX":"TODO","application/vnd.ms-office.activeX+xml":"TODO","application/vnd.ms-excel.attachedToolbars":"TODO","application/vnd.ms-excel.connections":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":"TODO","application/vnd.ms-excel.externalLink":"links","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml":"links","application/vnd.ms-excel.pivotCacheDefinition":"TODO","application/vnd.ms-excel.pivotCacheRecords":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml":"TODO","application/vnd.ms-excel.queryTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml":"TODO","application/vnd.ms-excel.userNames":"TODO","application/vnd.ms-excel.revisionHeaders":"TODO","application/vnd.ms-excel.revisionLog":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml":"TODO","application/vnd.ms-excel.tableSingleCells":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml":"TODO","application/vnd.ms-excel.slicer":"TODO","application/vnd.ms-excel.slicerCache":"TODO","application/vnd.ms-excel.slicer+xml":"TODO","application/vnd.ms-excel.slicerCache+xml":"TODO","application/vnd.ms-excel.wsSortMap":"TODO","application/vnd.ms-excel.table":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":"TODO","application/vnd.openxmlformats-officedocument.theme+xml":"themes","application/vnd.openxmlformats-officedocument.themeOverride+xml":"TODO","application/vnd.ms-excel.Timeline+xml":"TODO","application/vnd.ms-excel.TimelineCache+xml":"TODO","application/vnd.ms-office.vbaProject":"vba","application/vnd.ms-office.vbaProjectSignature":"TODO","application/vnd.ms-office.volatileDependencies":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml":"TODO","application/vnd.ms-excel.controlproperties+xml":"TODO","application/vnd.openxmlformats-officedocument.model+data":"TODO","application/vnd.ms-excel.Survey+xml":"TODO","application/vnd.openxmlformats-officedocument.drawing+xml":"drawings","application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml":"TODO","application/vnd.openxmlformats-officedocument.vmlDrawing":"TODO","application/vnd.openxmlformats-package.relationships+xml":"rels","application/vnd.openxmlformats-officedocument.oleObject":"TODO","image/png":"TODO",sheet:"js"},Yt={workbooks:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml",xlsm:"application/vnd.ms-excel.sheet.macroEnabled.main+xml",xlsb:"application/vnd.ms-excel.sheet.binary.macroEnabled.main",xlam:"application/vnd.ms-excel.addin.macroEnabled.main+xml",xltx:"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml"},strs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml",xlsb:"application/vnd.ms-excel.sharedStrings"},comments:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml",xlsb:"application/vnd.ms-excel.comments"},sheets:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",xlsb:"application/vnd.ms-excel.worksheet"},charts:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml",xlsb:"application/vnd.ms-excel.chartsheet"},dialogs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml",xlsb:"application/vnd.ms-excel.dialogsheet"},macros:{xlsx:"application/vnd.ms-excel.macrosheet+xml",xlsb:"application/vnd.ms-excel.macrosheet"},metadata:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml",xlsb:"application/vnd.ms-excel.sheetMetadata"},styles:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml",xlsb:"application/vnd.ms-excel.styles"}};function Un(){return{workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""}}function Wn(e,t){var r=Ds(kf),a=[],n;a[a.length]=Oe,a[a.length]=j("Types",null,{xmlns:Pe.CT,"xmlns:xsd":Pe.xsd,"xmlns:xsi":Pe.xsi}),a=a.concat([["xml","application/xml"],["bin","application/vnd.ms-excel.sheet.binary.macroEnabled.main"],["vml","application/vnd.openxmlformats-officedocument.vmlDrawing"],["data","application/vnd.openxmlformats-officedocument.model+data"],["bmp","image/bmp"],["png","image/png"],["gif","image/gif"],["emf","image/x-emf"],["wmf","image/x-wmf"],["jpg","image/jpeg"],["jpeg","image/jpeg"],["tif","image/tiff"],["tiff","image/tiff"],["pdf","application/pdf"],["rels","application/vnd.openxmlformats-package.relationships+xml"]].map(function(o){return j("Default",null,{Extension:o[0],ContentType:o[1]})}));var i=function(o){e[o]&&e[o].length>0&&(n=e[o][0],a[a.length]=j("Override",null,{PartName:(n[0]=="/"?"":"/")+n,ContentType:Yt[o][t.bookType]||Yt[o].xlsx}))},s=function(o){(e[o]||[]).forEach(function(c){a[a.length]=j("Override",null,{PartName:(c[0]=="/"?"":"/")+c,ContentType:Yt[o][t.bookType]||Yt[o].xlsx})})},f=function(o){(e[o]||[]).forEach(function(c){a[a.length]=j("Override",null,{PartName:(c[0]=="/"?"":"/")+c,ContentType:r[o][0]})})};return i("workbooks"),s("sheets"),s("charts"),f("themes"),["strs","styles"].forEach(i),["coreprops","extprops","custprops"].forEach(f),f("vba"),f("comments"),f("threadedcomments"),f("drawings"),s("metadata"),f("people"),a.length>2&&(a[a.length]="</Types>",a[1]=a[1].replace("/>",">")),a.join("")}var he={WB:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",SHEET:"http://sheetjs.openxmlformats.org/officeDocument/2006/relationships/officeDocument",HLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink",VML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing",XPATH:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLinkPath",XMISS:"http://schemas.microsoft.com/office/2006/relationships/xlExternalLinkPath/xlPathMissing",XLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLink",CXML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXml",CXMLP:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXmlProps",CMNT:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments",CORE_PROPS:"http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties",EXT_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties",CUST_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties",SST:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",STY:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",THEME:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",CHART:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart",CHARTEX:"http://schemas.microsoft.com/office/2014/relationships/chartEx",CS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chartsheet",WS:["http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet","http://purl.oclc.org/ooxml/officeDocument/relationships/worksheet"],DS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/dialogsheet",MS:"http://schemas.microsoft.com/office/2006/relationships/xlMacrosheet",IMG:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",DRAW:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing",XLMETA:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sheetMetadata",TCMNT:"http://schemas.microsoft.com/office/2017/10/relationships/threadedComment",PEOPLE:"http://schemas.microsoft.com/office/2017/10/relationships/person",VBA:"http://schemas.microsoft.com/office/2006/relationships/vbaProject"};function Hn(e){var t=e.lastIndexOf("/");return e.slice(0,t+1)+"_rels/"+e.slice(t+1)+".rels"}function ct(e){var t=[Oe,j("Relationships",null,{xmlns:Pe.RELS})];return ze(e["!id"]).forEach(function(r){t[t.length]=j("Relationship",null,e["!id"][r])}),t.length>2&&(t[t.length]="</Relationships>",t[1]=t[1].replace("/>",">")),t.join("")}function pe(e,t,r,a,n,i){if(n||(n={}),e["!id"]||(e["!id"]={}),e["!idx"]||(e["!idx"]=1),t<0)for(t=e["!idx"];e["!id"]["rId"+t];++t);if(e["!idx"]=t+1,n.Id="rId"+t,n.Type=a,n.Target=r,i?n.TargetMode=i:[he.HLINK,he.XPATH,he.XMISS].indexOf(n.Type)>-1&&(n.TargetMode="External"),e["!id"][n.Id])throw new Error("Cannot rewrite rId "+t);return e["!id"][n.Id]=n,e[("/"+n.Target).replace("//","/")]=n,t}function Ef(e){var t=[Oe];t.push(\`<manifest:manifest xmlns:manifest="urn:oasis:names:tc:opendocument:xmlns:manifest:1.0" manifest:version="1.2">
|
|
2504
|
+
\`),t.push(\` <manifest:file-entry manifest:full-path="/" manifest:version="1.2" manifest:media-type="application/vnd.oasis.opendocument.spreadsheet"/>
|
|
2505
|
+
\`);for(var r=0;r<e.length;++r)t.push(' <manifest:file-entry manifest:full-path="'+e[r][0]+'" manifest:media-type="'+e[r][1]+\`"/>
|
|
2506
|
+
\`);return t.push("</manifest:manifest>"),t.join("")}function X0(e,t,r){return[' <rdf:Description rdf:about="'+e+\`">
|
|
2507
|
+
\`,' <rdf:type rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/'+(r||"odf")+"#"+t+\`"/>
|
|
2508
|
+
\`,\` </rdf:Description>
|
|
2509
|
+
\`].join("")}function Tf(e,t){return[' <rdf:Description rdf:about="'+e+\`">
|
|
2510
|
+
\`,' <ns0:hasPart xmlns:ns0="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#" rdf:resource="'+t+\`"/>
|
|
2511
|
+
\`,\` </rdf:Description>
|
|
2512
|
+
\`].join("")}function Sf(e){var t=[Oe];t.push(\`<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
|
2513
|
+
\`);for(var r=0;r!=e.length;++r)t.push(X0(e[r][0],e[r][1])),t.push(Tf("",e[r][0]));return t.push(X0("","Document","pkg")),t.push("</rdf:RDF>"),t.join("")}function Vn(){return'<office:document-meta xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:xlink="http://www.w3.org/1999/xlink" office:version="1.2"><office:meta><meta:generator>SheetJS '+Ct.version+"</meta:generator></office:meta></office:document-meta>"}var zr=[["cp:category","Category"],["cp:contentStatus","ContentStatus"],["cp:keywords","Keywords"],["cp:lastModifiedBy","LastAuthor"],["cp:lastPrinted","LastPrinted"],["cp:revision","RevNumber"],["cp:version","Version"],["dc:creator","Author"],["dc:description","Comments"],["dc:identifier","Identifier"],["dc:language","Language"],["dc:subject","Subject"],["dc:title","Title"],["dcterms:created","CreatedDate","date"],["dcterms:modified","ModifiedDate","date"]];function Ca(e,t,r,a,n){n[e]!=null||t==null||t===""||(n[e]=t,t=me(t),a[a.length]=r?j(e,t,r):Xe(e,t))}function Xn(e,t){var r=t||{},a=[Oe,j("cp:coreProperties",null,{"xmlns:cp":Pe.CORE_PROPS,"xmlns:dc":Pe.dc,"xmlns:dcterms":Pe.dcterms,"xmlns:dcmitype":Pe.dcmitype,"xmlns:xsi":Pe.xsi})],n={};if(!e&&!r.Props)return a.join("");e&&(e.CreatedDate!=null&&Ca("dcterms:created",typeof e.CreatedDate=="string"?e.CreatedDate:ba(e.CreatedDate,r.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n),e.ModifiedDate!=null&&Ca("dcterms:modified",typeof e.ModifiedDate=="string"?e.ModifiedDate:ba(e.ModifiedDate,r.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n));for(var i=0;i!=zr.length;++i){var s=zr[i],f=r.Props&&r.Props[s[1]]!=null?r.Props[s[1]]:e?e[s[1]]:null;f===!0?f="1":f===!1?f="0":typeof f=="number"&&(f=String(f)),f!=null&&Ca(s[0],f,null,a,n)}return a.length>2&&(a[a.length]="</cp:coreProperties>",a[1]=a[1].replace("/>",">")),a.join("")}var ot=[["Application","Application","string"],["AppVersion","AppVersion","string"],["Company","Company","string"],["DocSecurity","DocSecurity","string"],["Manager","Manager","string"],["HyperlinksChanged","HyperlinksChanged","bool"],["SharedDoc","SharedDoc","bool"],["LinksUpToDate","LinksUpToDate","bool"],["ScaleCrop","ScaleCrop","bool"],["HeadingPairs","HeadingPairs","raw"],["TitlesOfParts","TitlesOfParts","raw"]],Gn=["Worksheets","SheetNames","NamedRanges","DefinedNames","Chartsheets","ChartNames"];function zn(e){var t=[],r=j;return e||(e={}),e.Application="SheetJS",t[t.length]=Oe,t[t.length]=j("Properties",null,{xmlns:Pe.EXT_PROPS,"xmlns:vt":Pe.vt}),ot.forEach(function(a){if(e[a[1]]!==void 0){var n;switch(a[2]){case"string":n=me(String(e[a[1]]));break;case"bool":n=e[a[1]]?"true":"false";break}n!==void 0&&(t[t.length]=r(a[0],n))}}),t[t.length]=r("HeadingPairs",r("vt:vector",r("vt:variant","<vt:lpstr>Worksheets</vt:lpstr>")+r("vt:variant",r("vt:i4",String(e.Worksheets))),{size:2,baseType:"variant"})),t[t.length]=r("TitlesOfParts",r("vt:vector",e.SheetNames.map(function(a){return"<vt:lpstr>"+me(a)+"</vt:lpstr>"}).join(""),{size:e.Worksheets,baseType:"lpstr"})),t.length>2&&(t[t.length]="</Properties>",t[1]=t[1].replace("/>",">")),t.join("")}function \$n(e){var t=[Oe,j("Properties",null,{xmlns:Pe.CUST_PROPS,"xmlns:vt":Pe.vt})];if(!e)return t.join("");var r=1;return ze(e).forEach(function(n){++r,t[t.length]=j("property",Ws(e[n],!0),{fmtid:"{D5CDD505-2E9C-101B-9397-08002B2CF9AE}",pid:r,name:me(n)})}),t.length>2&&(t[t.length]="</Properties>",t[1]=t[1].replace("/>",">")),t.join("")}var G0={Title:"Title",Subject:"Subject",Author:"Author",Keywords:"Keywords",Comments:"Description",LastAuthor:"LastAuthor",RevNumber:"Revision",Application:"AppName",LastPrinted:"LastPrinted",CreatedDate:"Created",ModifiedDate:"LastSaved",Category:"Category",Manager:"Manager",Company:"Company",AppVersion:"Version",ContentStatus:"ContentStatus",Identifier:"Identifier",Language:"Language"};function Ff(e,t){var r=[];return ze(G0).map(function(a){for(var n=0;n<zr.length;++n)if(zr[n][1]==a)return zr[n];for(n=0;n<ot.length;++n)if(ot[n][1]==a)return ot[n];throw a}).forEach(function(a){if(e[a[1]]!=null){var n=t&&t.Props&&t.Props[a[1]]!=null?t.Props[a[1]]:e[a[1]];a[2]==="date"&&(n=new Date(n).toISOString().replace(/\\.\\d*Z/,"Z")),typeof n=="number"?n=String(n):n===!0||n===!1?n=n?"1":"0":n instanceof Date&&(n=new Date(n).toISOString().replace(/\\.\\d*Z/,"")),r.push(Xe(G0[a[1]]||a[1],n))}}),j("DocumentProperties",r.join(""),{xmlns:fr.o})}function yf(e,t){var r=["Worksheets","SheetNames"],a="CustomDocumentProperties",n=[];return e&&ze(e).forEach(function(i){if(Object.prototype.hasOwnProperty.call(e,i)){for(var s=0;s<zr.length;++s)if(i==zr[s][1])return;for(s=0;s<ot.length;++s)if(i==ot[s][1])return;for(s=0;s<r.length;++s)if(i==r[s])return;var f=e[i],o="string";typeof f=="number"?(o="float",f=String(f)):f===!0||f===!1?(o="boolean",f=f?"1":"0"):f=String(f),n.push(j(I0(i),f,{"dt:dt":o}))}}),t&&ze(t).forEach(function(i){if(Object.prototype.hasOwnProperty.call(t,i)&&!(e&&Object.prototype.hasOwnProperty.call(e,i))){var s=t[i],f="string";typeof s=="number"?(f="float",s=String(s)):s===!0||s===!1?(f="boolean",s=s?"1":"0"):s instanceof Date?(f="dateTime.tz",s=s.toISOString()):s=String(s),n.push(j(I0(i),s,{"dt:dt":f}))}}),"<"+a+' xmlns="'+fr.o+'">'+n.join("")+"</"+a+">"}function Af(e){var t=typeof e=="string"?new Date(Date.parse(e)):e,r=t.getTime()/1e3+11644473600,a=r%Math.pow(2,32),n=(r-a)/Math.pow(2,32);a*=1e7,n*=1e7;var i=a/Math.pow(2,32)|0;i>0&&(a=a%Math.pow(2,32),n+=i);var s=b(8);return s.write_shift(4,a),s.write_shift(4,n),s}function z0(e,t){var r=b(4),a=b(4);switch(r.write_shift(4,e==80?31:e),e){case 3:a.write_shift(-4,t);break;case 5:a=b(8),a.write_shift(8,t,"f");break;case 11:a.write_shift(4,t?1:0);break;case 64:a=Af(t);break;case 31:case 80:for(a=b(4+2*(t.length+1)+(t.length%2?0:2)),a.write_shift(4,t.length+1),a.write_shift(0,t,"dbcs");a.l!=a.length;)a.write_shift(1,0);break;default:throw new Error("TypedPropertyValue unrecognized type "+e+" "+t)}return Ve([r,a])}var Kn=["CodePage","Thumbnail","_PID_LINKBASE","_PID_HLINKS","SystemIdentifier","FMTID"];function Cf(e){switch(typeof e){case"boolean":return 11;case"number":return(e|0)==e?3:5;case"string":return 31;case"object":if(e instanceof Date)return 64;break}return-1}function \$0(e,t,r){var a=b(8),n=[],i=[],s=8,f=0,o=b(8),c=b(8);if(o.write_shift(4,2),o.write_shift(4,1200),c.write_shift(4,1),i.push(o),n.push(c),s+=8+o.length,!t){c=b(8),c.write_shift(4,0),n.unshift(c);var l=[b(4)];for(l[0].write_shift(4,e.length),f=0;f<e.length;++f){var v=e[f][0];for(o=b(8+2*(v.length+1)+(v.length%2?0:2)),o.write_shift(4,f+2),o.write_shift(4,v.length+1),o.write_shift(0,v,"dbcs");o.l!=o.length;)o.write_shift(1,0);l.push(o)}o=Ve(l),i.unshift(o),s+=8+o.length}for(f=0;f<e.length;++f)if(!(t&&!t[e[f][0]])&&!(Kn.indexOf(e[f][0])>-1||Gn.indexOf(e[f][0])>-1)&&e[f][1]!=null){var h=e[f][1],d=0;if(t){d=+t[e[f][0]];var _=r[d];if(_.p=="version"&&typeof h=="string"){var u=h.split(".");h=(+u[0]<<16)+(+u[1]||0)}o=z0(_.t,h)}else{var g=Cf(h);g==-1&&(g=31,h=String(h)),o=z0(g,h)}i.push(o),c=b(8),c.write_shift(4,t?d:2+f),n.push(c),s+=8+o.length}var y=8*(i.length+1);for(f=0;f<i.length;++f)n[f].write_shift(4,y),y+=i[f].length;return a.write_shift(4,s),a.write_shift(4,i.length),Ve([a].concat(n).concat(i))}function K0(e,t,r,a,n,i){var s=b(n?68:48),f=[s];s.write_shift(2,65534),s.write_shift(2,0),s.write_shift(4,842412599),s.write_shift(16,we.utils.consts.HEADER_CLSID,"hex"),s.write_shift(4,n?2:1),s.write_shift(16,t,"hex"),s.write_shift(4,n?68:48);var o=\$0(e,r,a);if(f.push(o),n){var c=\$0(n,null,null);s.write_shift(16,i,"hex"),s.write_shift(4,68+o.length),f.push(c)}return Ve(f)}function Df(e,t){t||(t=b(e));for(var r=0;r<e;++r)t.write_shift(1,0);return t}function Of(e,t){return e.read_shift(t)===1}function Je(e,t){return t||(t=b(2)),t.write_shift(2,+!!e),t}function jn(e){return e.read_shift(2,"u")}function ur(e,t){return t||(t=b(2)),t.write_shift(2,e),t}function Yn(e,t,r){return r||(r=b(2)),r.write_shift(1,t=="e"?+e:+!!e),r.write_shift(1,t=="e"?1:0),r}function Jn(e,t,r){var a=e.read_shift(r&&r.biff>=12?2:1),n="sbcs-cont",i=Gr;if(r&&r.biff>=8&&(Gr=1200),!r||r.biff==8){var s=e.read_shift(1);s&&(n="dbcs-cont")}else r.biff==12&&(n="wstr");r.biff>=2&&r.biff<=5&&(n="cpstr");var f=a?e.read_shift(a,n):"";return Gr=i,f}function If(e){var t=e.t||"",r=1,a=b(3+(r>1?2:0));a.write_shift(2,t.length),a.write_shift(1,(r>1?8:0)|1),r>1&&a.write_shift(2,r);var n=b(2*t.length);n.write_shift(2*t.length,t,"utf16le");var i=[a,n];return Ve(i)}function Rf(e,t,r){var a;if(r){if(r.biff>=2&&r.biff<=5)return e.read_shift(t,"cpstr");if(r.biff>=12)return e.read_shift(t,"dbcs-cont")}var n=e.read_shift(1);return n===0?a=e.read_shift(t,"sbcs-cont"):a=e.read_shift(t,"dbcs-cont"),a}function Nf(e,t,r){var a=e.read_shift(r&&r.biff==2?1:2);return a===0?(e.l++,""):Rf(e,a,r)}function bf(e,t,r){if(r.biff>5)return Nf(e,t,r);var a=e.read_shift(1);return a===0?(e.l++,""):e.read_shift(a,r.biff<=4||!e.lens?"cpstr":"sbcs-cont")}function qn(e,t,r){return r||(r=b(3+2*e.length)),r.write_shift(2,e.length),r.write_shift(1,1),r.write_shift(31,e,"utf16le"),r}function j0(e,t){t||(t=b(6+e.length*2)),t.write_shift(4,1+e.length);for(var r=0;r<e.length;++r)t.write_shift(2,e.charCodeAt(r));return t.write_shift(2,0),t}function Pf(e){var t=b(512),r=0,a=e.Target;a.slice(0,7)=="file://"&&(a=a.slice(7));var n=a.indexOf("#"),i=n>-1?31:23;switch(a.charAt(0)){case"#":i=28;break;case".":i&=-3;break}t.write_shift(4,2),t.write_shift(4,i);var s=[8,6815827,6619237,4849780,83];for(r=0;r<s.length;++r)t.write_shift(4,s[r]);if(i==28)a=a.slice(1),j0(a,t);else if(i&2){for(s="e0 c9 ea 79 f9 ba ce 11 8c 82 00 aa 00 4b a9 0b".split(" "),r=0;r<s.length;++r)t.write_shift(1,parseInt(s[r],16));var f=n>-1?a.slice(0,n):a;for(t.write_shift(4,2*(f.length+1)),r=0;r<f.length;++r)t.write_shift(2,f.charCodeAt(r));t.write_shift(2,0),i&8&&j0(n>-1?a.slice(n+1):"",t)}else{for(s="03 03 00 00 00 00 00 00 c0 00 00 00 00 00 00 46".split(" "),r=0;r<s.length;++r)t.write_shift(1,parseInt(s[r],16));for(var o=0;a.slice(o*3,o*3+3)=="../"||a.slice(o*3,o*3+3)=="..\\\\";)++o;for(t.write_shift(2,o),t.write_shift(4,a.length-3*o+1),r=0;r<a.length-3*o;++r)t.write_shift(1,a.charCodeAt(r+3*o)&255);for(t.write_shift(1,0),t.write_shift(2,65535),t.write_shift(2,57005),r=0;r<6;++r)t.write_shift(4,0)}return t.slice(0,t.l)}function jr(e,t,r,a){return a||(a=b(6)),a.write_shift(2,e),a.write_shift(2,t),a.write_shift(2,r||0),a}function Lf(e,t,r){var a=r.biff>8?4:2,n=e.read_shift(a),i=e.read_shift(a,"i"),s=e.read_shift(a,"i");return[n,i,s]}function Bf(e){var t=e.read_shift(2),r=e.read_shift(2),a=e.read_shift(2),n=e.read_shift(2);return{s:{c:a,r:t},e:{c:n,r}}}function Zn(e,t){return t||(t=b(8)),t.write_shift(2,e.s.r),t.write_shift(2,e.e.r),t.write_shift(2,e.s.c),t.write_shift(2,e.e.c),t}function e0(e,t,r){var a=1536,n=16;switch(r.bookType){case"biff8":break;case"biff5":a=1280,n=8;break;case"biff4":a=4,n=6;break;case"biff3":a=3,n=6;break;case"biff2":a=2,n=4;break;case"xla":break;default:throw new Error("unsupported BIFF version")}var i=b(n);return i.write_shift(2,a),i.write_shift(2,t),n>4&&i.write_shift(2,29282),n>6&&i.write_shift(2,1997),n>8&&(i.write_shift(2,49161),i.write_shift(2,1),i.write_shift(2,1798),i.write_shift(2,0)),i}function Mf(e,t){var r=!t||t.biff==8,a=b(r?112:54);for(a.write_shift(t.biff==8?2:1,7),r&&a.write_shift(1,0),a.write_shift(4,859007059),a.write_shift(4,5458548|(r?0:536870912));a.l<a.length;)a.write_shift(1,r?0:32);return a}function Uf(e,t){var r=!t||t.biff>=8?2:1,a=b(8+r*e.name.length);a.write_shift(4,e.pos),a.write_shift(1,e.hs||0),a.write_shift(1,e.dt),a.write_shift(1,e.name.length),t.biff>=8&&a.write_shift(1,1),a.write_shift(r*e.name.length,e.name,t.biff<8?"sbcs":"utf16le");var n=a.slice(0,a.l);return n.l=a.l,n}function Wf(e,t){var r=b(8);r.write_shift(4,e.Count),r.write_shift(4,e.Unique);for(var a=[],n=0;n<e.length;++n)a[n]=If(e[n],t);var i=Ve([r].concat(a));return i.parts=[r.length].concat(a.map(function(s){return s.length})),i}function Hf(){var e=b(18);return e.write_shift(2,0),e.write_shift(2,0),e.write_shift(2,29280),e.write_shift(2,17600),e.write_shift(2,56),e.write_shift(2,0),e.write_shift(2,0),e.write_shift(2,1),e.write_shift(2,500),e}function Vf(e){var t=b(18),r=1718;return e&&e.RTL&&(r|=64),t.write_shift(2,r),t.write_shift(4,0),t.write_shift(4,64),t.write_shift(4,0),t.write_shift(4,0),t}function Xf(e,t){var r=e.name||"Arial",a=t&&t.biff==5,n=a?15+r.length:16+2*r.length,i=b(n);return i.write_shift(2,(e.sz||12)*20),i.write_shift(4,0),i.write_shift(2,400),i.write_shift(4,0),i.write_shift(2,0),i.write_shift(1,r.length),a||i.write_shift(1,1),i.write_shift((a?1:2)*r.length,r,a?"sbcs":"utf16le"),i}function Gf(e,t,r,a){var n=b(10);return jr(e,t,a,n),n.write_shift(4,r),n}function zf(e,t,r,a,n){var i=!n||n.biff==8,s=b(8+ +i+(1+i)*r.length);return jr(e,t,a,s),s.write_shift(2,r.length),i&&s.write_shift(1,1),s.write_shift((1+i)*r.length,r,i?"utf16le":"sbcs"),s}function \$f(e,t,r,a){var n=r&&r.biff==5;a||(a=b(n?3+t.length:5+2*t.length)),a.write_shift(2,e),a.write_shift(n?1:2,t.length),n||a.write_shift(1,1),a.write_shift((n?1:2)*t.length,t,n?"sbcs":"utf16le");var i=a.length>a.l?a.slice(0,a.l):a;return i.l==null&&(i.l=i.length),i}function Kf(e,t){var r=t.biff==8||!t.biff?4:2,a=b(2*r+6);return a.write_shift(r,e.s.r),a.write_shift(r,e.e.r+1),a.write_shift(2,e.s.c),a.write_shift(2,e.e.c+1),a.write_shift(2,0),a}function Y0(e,t,r,a){var n=r&&r.biff==5;a||(a=b(n?16:20)),a.write_shift(2,0),e.style?(a.write_shift(2,e.numFmtId||0),a.write_shift(2,65524)):(a.write_shift(2,e.numFmtId||0),a.write_shift(2,t<<4));var i=0;return e.numFmtId>0&&n&&(i|=1024),a.write_shift(4,i),a.write_shift(4,0),n||a.write_shift(4,0),a.write_shift(2,0),a}function jf(e){var t=b(8);return t.write_shift(4,0),t.write_shift(2,e[0]?e[0]+1:0),t.write_shift(2,e[1]?e[1]+1:0),t}function Yf(e,t,r,a,n,i){var s=b(8);return jr(e,t,a,s),Yn(r,i,s),s}function Jf(e,t,r,a){var n=b(14);return jr(e,t,a,n),Kr(r,n),n}function qf(e,t,r){if(r.biff<8)return Zf(e,t,r);for(var a=[],n=e.l+t,i=e.read_shift(r.biff>8?4:2);i--!==0;)a.push(Lf(e,r.biff>8?12:6,r));if(e.l!=n)throw new Error("Bad ExternSheet: "+e.l+" != "+n);return a}function Zf(e,t,r){e[e.l+1]==3&&e[e.l]++;var a=Jn(e,t,r);return a.charCodeAt(0)==3?a.slice(1):a}function Qf(e){var t=b(2+e.length*8);t.write_shift(2,e.length);for(var r=0;r<e.length;++r)Zn(e[r],t);return t}function ec(e){var t=b(24),r=Le(e[0]);t.write_shift(2,r.r),t.write_shift(2,r.r),t.write_shift(2,r.c),t.write_shift(2,r.c);for(var a="d0 c9 ea 79 f9 ba ce 11 8c 82 00 aa 00 4b a9 0b".split(" "),n=0;n<16;++n)t.write_shift(1,parseInt(a[n],16));return Ve([t,Pf(e[1])])}function rc(e){var t=e[1].Tooltip,r=b(10+2*(t.length+1));r.write_shift(2,2048);var a=Le(e[0]);r.write_shift(2,a.r),r.write_shift(2,a.r),r.write_shift(2,a.c),r.write_shift(2,a.c);for(var n=0;n<t.length;++n)r.write_shift(2,t.charCodeAt(n));return r.write_shift(2,0),r}function tc(e){return e||(e=b(4)),e.write_shift(2,1),e.write_shift(2,1),e}function ac(e,t,r){if(!r.cellStyles)return Tr(e,t);var a=r&&r.biff>=12?4:2,n=e.read_shift(a),i=e.read_shift(a),s=e.read_shift(a),f=e.read_shift(a),o=e.read_shift(2);a==2&&(e.l+=2);var c={s:n,e:i,w:s,ixfe:f,flags:o};return(r.biff>=5||!r.biff)&&(c.level=o>>8&7),c}function nc(e,t){var r=b(12);r.write_shift(2,t),r.write_shift(2,t),r.write_shift(2,e.width*256),r.write_shift(2,0);var a=0;return e.hidden&&(a|=1),r.write_shift(1,a),a=e.level||0,r.write_shift(1,a),r.write_shift(2,0),r}function ic(e){for(var t=b(2*e),r=0;r<e;++r)t.write_shift(2,r+1);return t}function sc(e,t,r){var a=b(15);return Ut(a,e,t),a.write_shift(8,r,"f"),a}function fc(e,t,r){var a=b(9);return Ut(a,e,t),a.write_shift(2,r),a}var cc=(function(){var e={1:437,2:850,3:1252,4:1e4,100:852,101:866,102:865,103:861,104:895,105:620,106:737,107:857,120:950,121:949,122:936,123:932,124:874,125:1255,126:1256,150:10007,151:10029,152:10006,200:1250,201:1251,202:1254,203:1253,0:20127,8:865,9:437,10:850,11:437,13:437,14:850,15:437,16:850,17:437,18:850,19:932,20:850,21:437,22:850,23:865,24:437,25:437,26:850,27:437,28:863,29:850,31:852,34:852,35:852,36:860,37:850,38:866,55:850,64:852,77:936,78:949,79:950,80:874,87:1252,88:1252,89:1252,108:863,134:737,135:852,136:857,204:1257,255:16969},t=Ua({1:437,2:850,3:1252,4:1e4,100:852,101:866,102:865,103:861,104:895,105:620,106:737,107:857,120:950,121:949,122:936,123:932,124:874,125:1255,126:1256,150:10007,151:10029,152:10006,200:1250,201:1251,202:1254,203:1253,0:20127});function r(f,o){var c=[],l=\$r(1);switch(o.type){case"base64":l=pr(Or(f));break;case"binary":l=pr(f);break;case"buffer":case"array":l=f;break}sr(l,0);var v=l.read_shift(1),h=!!(v&136),d=!1,_=!1;switch(v){case 2:break;case 3:break;case 48:d=!0,h=!0;break;case 49:d=!0,h=!0;break;case 131:break;case 139:break;case 140:_=!0;break;case 245:break;default:throw new Error("DBF Unsupported Version: "+v.toString(16))}var u=0,g=521;v==2&&(u=l.read_shift(2)),l.l+=3,v!=2&&(u=l.read_shift(4)),u>1048576&&(u=1e6),v!=2&&(g=l.read_shift(2));var y=l.read_shift(2),C=o.codepage||1252;v!=2&&(l.l+=16,l.read_shift(1),l[l.l]!==0&&(C=e[l[l.l]]),l.l+=1,l.l+=2),_&&(l.l+=36);for(var D=[],B={},G=Math.min(l.length,v==2?521:g-10-(d?264:0)),te=_?32:11;l.l<G&&l[l.l]!=13;)switch(B={},B.name=ke.utils.decode(C,l.slice(l.l,l.l+te)).replace(/[\\u0000\\r\\n].*\$/g,""),l.l+=te,B.type=String.fromCharCode(l.read_shift(1)),v!=2&&!_&&(B.offset=l.read_shift(4)),B.len=l.read_shift(1),v==2&&(B.offset=l.read_shift(2)),B.dec=l.read_shift(1),B.name.length&&D.push(B),v!=2&&(l.l+=_?13:14),B.type){case"B":(!d||B.len!=8)&&o.WTF&&console.log("Skipping "+B.name+":"+B.type);break;case"G":case"P":o.WTF&&console.log("Skipping "+B.name+":"+B.type);break;case"+":case"0":case"@":case"C":case"D":case"F":case"I":case"L":case"M":case"N":case"O":case"T":case"Y":break;default:throw new Error("Unknown Field Type: "+B.type)}if(l[l.l]!==13&&(l.l=g-1),l.read_shift(1)!==13)throw new Error("DBF Terminator not found "+l.l+" "+l[l.l]);l.l=g;var A=0,W=0;for(c[0]=[],W=0;W!=D.length;++W)c[0][W]=D[W].name;for(;u-- >0;){if(l[l.l]===42){l.l+=y;continue}for(++l.l,c[++A]=[],W=0,W=0;W!=D.length;++W){var L=l.slice(l.l,l.l+D[W].len);l.l+=D[W].len,sr(L,0);var U=ke.utils.decode(C,L);switch(D[W].type){case"C":U.trim().length&&(c[A][W]=U.replace(/\\s+\$/,""));break;case"D":U.length===8?c[A][W]=new Date(+U.slice(0,4),+U.slice(4,6)-1,+U.slice(6,8)):c[A][W]=U;break;case"F":c[A][W]=parseFloat(U.trim());break;case"+":case"I":c[A][W]=_?L.read_shift(-4,"i")^2147483648:L.read_shift(4,"i");break;case"L":switch(U.trim().toUpperCase()){case"Y":case"T":c[A][W]=!0;break;case"N":case"F":c[A][W]=!1;break;case"":case"?":break;default:throw new Error("DBF Unrecognized L:|"+U+"|")}break;case"M":if(!h)throw new Error("DBF Unexpected MEMO for type "+v.toString(16));c[A][W]="##MEMO##"+(_?parseInt(U.trim(),10):L.read_shift(4));break;case"N":U=U.replace(/\\u0000/g,"").trim(),U&&U!="."&&(c[A][W]=+U||0);break;case"@":c[A][W]=new Date(L.read_shift(-8,"f")-621356832e5);break;case"T":c[A][W]=new Date((L.read_shift(4)-2440588)*864e5+L.read_shift(4));break;case"Y":c[A][W]=L.read_shift(4,"i")/1e4+L.read_shift(4,"i")/1e4*Math.pow(2,32);break;case"O":c[A][W]=-L.read_shift(-8,"f");break;case"B":if(d&&D[W].len==8){c[A][W]=L.read_shift(8,"f");break}case"G":case"P":L.l+=D[W].len;break;case"0":if(D[W].name==="_NullFlags")break;default:throw new Error("DBF Unsupported data type "+D[W].type)}}}if(v!=2&&l.l<l.length&&l[l.l++]!=26)throw new Error("DBF EOF Marker missing "+(l.l-1)+" of "+l.length+" "+l[l.l-1].toString(16));return o&&o.sheetRows&&(c=c.slice(0,o.sheetRows)),o.DBF=D,c}function a(f,o){var c=o||{};c.dateNF||(c.dateNF="yyyymmdd");var l=vt(r(f,c),c);return l["!cols"]=c.DBF.map(function(v){return{wch:v.len,DBF:v}}),delete c.DBF,l}function n(f,o){try{return Yr(a(f,o),o)}catch(c){if(o&&o.WTF)throw c}return{SheetNames:[],Sheets:{}}}var i={B:8,C:250,L:1,D:8,"?":0,"":0};function s(f,o){var c=o||{};if(+c.codepage>=0&&Dt(+c.codepage),c.type=="string")throw new Error("Cannot write DBF to JS string");var l=rr(),v=oa(f,{header:1,raw:!0,cellDates:!0}),h=v[0],d=v.slice(1),_=f["!cols"]||[],u=0,g=0,y=0,C=1;for(u=0;u<h.length;++u){if(((_[u]||{}).DBF||{}).name){h[u]=_[u].DBF.name,++y;continue}if(h[u]!=null){if(++y,typeof h[u]=="number"&&(h[u]=h[u].toString(10)),typeof h[u]!="string")throw new Error("DBF Invalid column name "+h[u]+" |"+typeof h[u]+"|");if(h.indexOf(h[u])!==u){for(g=0;g<1024;++g)if(h.indexOf(h[u]+"_"+g)==-1){h[u]+="_"+g;break}}}}var D=Te(f["!ref"]),B=[],G=[],te=[];for(u=0;u<=D.e.c-D.s.c;++u){var A="",W="",L=0,U=[];for(g=0;g<d.length;++g)d[g][u]!=null&&U.push(d[g][u]);if(U.length==0||h[u]==null){B[u]="?";continue}for(g=0;g<U.length;++g){switch(typeof U[g]){case"number":W="B";break;case"string":W="C";break;case"boolean":W="L";break;case"object":W=U[g]instanceof Date?"D":"C";break;default:W="C"}L=Math.max(L,String(U[g]).length),A=A&&A!=W?"C":W}L>250&&(L=250),W=((_[u]||{}).DBF||{}).type,W=="C"&&_[u].DBF.len>L&&(L=_[u].DBF.len),A=="B"&&W=="N"&&(A="N",te[u]=_[u].DBF.dec,L=_[u].DBF.len),G[u]=A=="C"||W=="N"?L:i[A]||0,C+=G[u],B[u]=A}var X=l.next(32);for(X.write_shift(4,318902576),X.write_shift(4,d.length),X.write_shift(2,296+32*y),X.write_shift(2,C),u=0;u<4;++u)X.write_shift(4,0);for(X.write_shift(4,0|(+t[ut]||3)<<8),u=0,g=0;u<h.length;++u)if(h[u]!=null){var z=l.next(32),ie=(h[u].slice(-10)+"\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0").slice(0,11);z.write_shift(1,ie,"sbcs"),z.write_shift(1,B[u]=="?"?"C":B[u],"sbcs"),z.write_shift(4,g),z.write_shift(1,G[u]||i[B[u]]||0),z.write_shift(1,te[u]||0),z.write_shift(1,2),z.write_shift(4,0),z.write_shift(1,0),z.write_shift(4,0),z.write_shift(4,0),g+=G[u]||i[B[u]]||0}var de=l.next(264);for(de.write_shift(4,13),u=0;u<65;++u)de.write_shift(4,0);for(u=0;u<d.length;++u){var se=l.next(C);for(se.write_shift(1,0),g=0;g<h.length;++g)if(h[g]!=null)switch(B[g]){case"L":se.write_shift(1,d[u][g]==null?63:d[u][g]?84:70);break;case"B":se.write_shift(8,d[u][g]||0,"f");break;case"N":var Re="0";for(typeof d[u][g]=="number"&&(Re=d[u][g].toFixed(te[g]||0)),y=0;y<G[g]-Re.length;++y)se.write_shift(1,32);se.write_shift(1,Re,"sbcs");break;case"D":d[u][g]?(se.write_shift(4,("0000"+d[u][g].getFullYear()).slice(-4),"sbcs"),se.write_shift(2,("00"+(d[u][g].getMonth()+1)).slice(-2),"sbcs"),se.write_shift(2,("00"+d[u][g].getDate()).slice(-2),"sbcs")):se.write_shift(8,"00000000","sbcs");break;case"C":var Ne=String(d[u][g]!=null?d[u][g]:"").slice(0,G[g]);for(se.write_shift(1,Ne,"sbcs"),y=0;y<G[g]-Ne.length;++y)se.write_shift(1,32);break}}return l.next(1).write_shift(1,26),l.end()}return{to_workbook:n,to_sheet:a,from_sheet:s}})(),oc=(function(){var e={AA:"\\xC0",BA:"\\xC1",CA:"\\xC2",DA:195,HA:"\\xC4",JA:197,AE:"\\xC8",BE:"\\xC9",CE:"\\xCA",HE:"\\xCB",AI:"\\xCC",BI:"\\xCD",CI:"\\xCE",HI:"\\xCF",AO:"\\xD2",BO:"\\xD3",CO:"\\xD4",DO:213,HO:"\\xD6",AU:"\\xD9",BU:"\\xDA",CU:"\\xDB",HU:"\\xDC",Aa:"\\xE0",Ba:"\\xE1",Ca:"\\xE2",Da:227,Ha:"\\xE4",Ja:229,Ae:"\\xE8",Be:"\\xE9",Ce:"\\xEA",He:"\\xEB",Ai:"\\xEC",Bi:"\\xED",Ci:"\\xEE",Hi:"\\xEF",Ao:"\\xF2",Bo:"\\xF3",Co:"\\xF4",Do:245,Ho:"\\xF6",Au:"\\xF9",Bu:"\\xFA",Cu:"\\xFB",Hu:"\\xFC",KC:"\\xC7",Kc:"\\xE7",q:"\\xE6",z:"\\u0153",a:"\\xC6",j:"\\u0152",DN:209,Dn:241,Hy:255,S:169,c:170,R:174,"B ":180,0:176,1:177,2:178,3:179,5:181,6:182,7:183,Q:185,k:186,b:208,i:216,l:222,s:240,y:248,"!":161,'"':162,"#":163,"(":164,"%":165,"'":167,"H ":168,"+":171,";":187,"<":188,"=":189,">":190,"?":191,"{":223},t=new RegExp("\\x1BN("+ze(e).join("|").replace(/\\|\\|\\|/,"|\\\\||").replace(/([?()+])/g,"\\\\\$1")+"|\\\\|)","gm"),r=function(h,d){var _=e[d];return typeof _=="number"?_0(_):_},a=function(h,d,_){var u=d.charCodeAt(0)-32<<4|_.charCodeAt(0)-48;return u==59?h:_0(u)};e["|"]=254;function n(h,d){switch(d.type){case"base64":return i(Or(h),d);case"binary":return i(h,d);case"buffer":return i(xe&&Buffer.isBuffer(h)?h.toString("binary"):Pt(h),d);case"array":return i(da(h),d)}throw new Error("Unrecognized type "+d.type)}function i(h,d){var _=h.split(/[\\n\\r]+/),u=-1,g=-1,y=0,C=0,D=[],B=[],G=null,te={},A=[],W=[],L=[],U=0,X;for(+d.codepage>=0&&Dt(+d.codepage);y!==_.length;++y){U=0;var z=_[y].trim().replace(/\\x1B([\\x20-\\x2F])([\\x30-\\x3F])/g,a).replace(t,r),ie=z.replace(/;;/g,"\\0").split(";").map(function(S){return S.replace(/\\u0000/g,";")}),de=ie[0],se;if(z.length>0)switch(de){case"ID":break;case"E":break;case"B":break;case"O":break;case"W":break;case"P":ie[1].charAt(0)=="P"&&B.push(z.slice(3).replace(/;;/g,";"));break;case"C":var Re=!1,Ne=!1,Ze=!1,je=!1,Me=-1,Qe=-1;for(C=1;C<ie.length;++C)switch(ie[C].charAt(0)){case"A":break;case"X":g=parseInt(ie[C].slice(1))-1,Ne=!0;break;case"Y":for(u=parseInt(ie[C].slice(1))-1,Ne||(g=0),X=D.length;X<=u;++X)D[X]=[];break;case"K":se=ie[C].slice(1),se.charAt(0)==='"'?se=se.slice(1,se.length-1):se==="TRUE"?se=!0:se==="FALSE"?se=!1:isNaN(Cr(se))?isNaN(It(se).getDate())||(se=qe(se)):(se=Cr(se),G!==null&&mn(G)&&(se=kn(se))),typeof ke<"u"&&typeof se=="string"&&(d||{}).type!="string"&&(d||{}).codepage&&(se=ke.utils.decode(d.codepage,se)),Re=!0;break;case"E":je=!0;var T=fo(ie[C].slice(1),{r:u,c:g});D[u][g]=[D[u][g],T];break;case"S":Ze=!0,D[u][g]=[D[u][g],"S5S"];break;case"G":break;case"R":Me=parseInt(ie[C].slice(1))-1;break;case"C":Qe=parseInt(ie[C].slice(1))-1;break;default:if(d&&d.WTF)throw new Error("SYLK bad record "+z)}if(Re&&(D[u][g]&&D[u][g].length==2?D[u][g][0]=se:D[u][g]=se,G=null),Ze){if(je)throw new Error("SYLK shared formula cannot have own formula");var M=Me>-1&&D[Me][Qe];if(!M||!M[1])throw new Error("SYLK shared formula cannot find base");D[u][g][1]=co(M[1],{r:u-Me,c:g-Qe})}break;case"F":var F=0;for(C=1;C<ie.length;++C)switch(ie[C].charAt(0)){case"X":g=parseInt(ie[C].slice(1))-1,++F;break;case"Y":for(u=parseInt(ie[C].slice(1))-1,X=D.length;X<=u;++X)D[X]=[];break;case"M":U=parseInt(ie[C].slice(1))/20;break;case"F":break;case"G":break;case"P":G=B[parseInt(ie[C].slice(1))];break;case"S":break;case"D":break;case"N":break;case"W":for(L=ie[C].slice(1).split(" "),X=parseInt(L[0],10);X<=parseInt(L[1],10);++X)U=parseInt(L[2],10),W[X-1]=U===0?{hidden:!0}:{wch:U},r0(W[X-1]);break;case"C":g=parseInt(ie[C].slice(1))-1,W[g]||(W[g]={});break;case"R":u=parseInt(ie[C].slice(1))-1,A[u]||(A[u]={}),U>0?(A[u].hpt=U,A[u].hpx=ai(U)):U===0&&(A[u].hidden=!0);break;default:if(d&&d.WTF)throw new Error("SYLK bad record "+z)}F<1&&(G=null);break;default:if(d&&d.WTF)throw new Error("SYLK bad record "+z)}}return A.length>0&&(te["!rows"]=A),W.length>0&&(te["!cols"]=W),d&&d.sheetRows&&(D=D.slice(0,d.sheetRows)),[D,te]}function s(h,d){var _=n(h,d),u=_[0],g=_[1],y=vt(u,d);return ze(g).forEach(function(C){y[C]=g[C]}),y}function f(h,d){return Yr(s(h,d),d)}function o(h,d,_,u){var g="C;Y"+(_+1)+";X"+(u+1)+";K";switch(h.t){case"n":g+=h.v||0,h.f&&!h.F&&(g+=";E"+a0(h.f,{r:_,c:u}));break;case"b":g+=h.v?"TRUE":"FALSE";break;case"e":g+=h.w||h.v;break;case"d":g+='"'+(h.w||h.v)+'"';break;case"s":g+='"'+h.v.replace(/"/g,"").replace(/;/g,";;")+'"';break}return g}function c(h,d){d.forEach(function(_,u){var g="F;W"+(u+1)+" "+(u+1)+" ";_.hidden?g+="0":(typeof _.width=="number"&&!_.wpx&&(_.wpx=ia(_.width)),typeof _.wpx=="number"&&!_.wch&&(_.wch=sa(_.wpx)),typeof _.wch=="number"&&(g+=Math.round(_.wch))),g.charAt(g.length-1)!=" "&&h.push(g)})}function l(h,d){d.forEach(function(_,u){var g="F;";_.hidden?g+="M0;":_.hpt?g+="M"+20*_.hpt+";":_.hpx&&(g+="M"+20*fa(_.hpx)+";"),g.length>2&&h.push(g+"R"+(u+1))})}function v(h,d){var _=["ID;PWXL;N;E"],u=[],g=Te(h["!ref"]),y,C=Array.isArray(h),D=\`\\r
|
|
2514
|
+
\`;_.push("P;PGeneral"),_.push("F;P0;DG0G8;M255"),h["!cols"]&&c(_,h["!cols"]),h["!rows"]&&l(_,h["!rows"]),_.push("B;Y"+(g.e.r-g.s.r+1)+";X"+(g.e.c-g.s.c+1)+";D"+[g.s.c,g.s.r,g.e.c,g.e.r].join(" "));for(var B=g.s.r;B<=g.e.r;++B)for(var G=g.s.c;G<=g.e.c;++G){var te=ge({r:B,c:G});y=C?(h[B]||[])[G]:h[te],!(!y||y.v==null&&(!y.f||y.F))&&u.push(o(y,h,B,G,d))}return _.join(D)+D+u.join(D)+D+"E"+D}return{to_workbook:f,to_sheet:s,from_sheet:v}})(),lc=(function(){function e(i,s){switch(s.type){case"base64":return t(Or(i),s);case"binary":return t(i,s);case"buffer":return t(xe&&Buffer.isBuffer(i)?i.toString("binary"):Pt(i),s);case"array":return t(da(i),s)}throw new Error("Unrecognized type "+s.type)}function t(i,s){for(var f=i.split(\`
|
|
2515
|
+
\`),o=-1,c=-1,l=0,v=[];l!==f.length;++l){if(f[l].trim()==="BOT"){v[++o]=[],c=0;continue}if(!(o<0)){var h=f[l].trim().split(","),d=h[0],_=h[1];++l;for(var u=f[l]||"";(u.match(/["]/g)||[]).length&1&&l<f.length-1;)u+=\`
|
|
2516
|
+
\`+f[++l];switch(u=u.trim(),+d){case-1:if(u==="BOT"){v[++o]=[],c=0;continue}else if(u!=="EOD")throw new Error("Unrecognized DIF special command "+u);break;case 0:u==="TRUE"?v[o][c]=!0:u==="FALSE"?v[o][c]=!1:isNaN(Cr(_))?isNaN(It(_).getDate())?v[o][c]=_:v[o][c]=qe(_):v[o][c]=Cr(_),++c;break;case 1:u=u.slice(1,u.length-1),u=u.replace(/""/g,'"'),wt&&u&&u.match(/^=".*"\$/)&&(u=u.slice(2,-1)),v[o][c++]=u!==""?u:null;break}if(u==="EOD")break}}return s&&s.sheetRows&&(v=v.slice(0,s.sheetRows)),v}function r(i,s){return vt(e(i,s),s)}function a(i,s){return Yr(r(i,s),s)}var n=(function(){var i=function(o,c,l,v,h){o.push(c),o.push(l+","+v),o.push('"'+h.replace(/"/g,'""')+'"')},s=function(o,c,l,v){o.push(c+","+l),o.push(c==1?'"'+v.replace(/"/g,'""')+'"':v)};return function(o){var c=[],l=Te(o["!ref"]),v,h=Array.isArray(o);i(c,"TABLE",0,1,"sheetjs"),i(c,"VECTORS",0,l.e.r-l.s.r+1,""),i(c,"TUPLES",0,l.e.c-l.s.c+1,""),i(c,"DATA",0,0,"");for(var d=l.s.r;d<=l.e.r;++d){s(c,-1,0,"BOT");for(var _=l.s.c;_<=l.e.c;++_){var u=ge({r:d,c:_});if(v=h?(o[d]||[])[_]:o[u],!v){s(c,1,0,"");continue}switch(v.t){case"n":var g=wt?v.w:v.v;!g&&v.v!=null&&(g=v.v),g==null?wt&&v.f&&!v.F?s(c,1,0,"="+v.f):s(c,1,0,""):s(c,0,g,"V");break;case"b":s(c,0,v.v?1:0,v.v?"TRUE":"FALSE");break;case"s":s(c,1,0,!wt||isNaN(v.v)?v.v:'="'+v.v+'"');break;case"d":v.w||(v.w=Lr(v.z||ye[14],tr(qe(v.v)))),wt?s(c,0,v.w,"V"):s(c,1,0,v.w);break;default:s(c,1,0,"")}}}s(c,-1,0,"EOD");var y=\`\\r
|
|
2517
|
+
\`,C=c.join(y);return C}})();return{to_workbook:a,to_sheet:r,from_sheet:n}})(),Qn=(function(){function e(v){return v.replace(/\\\\b/g,"\\\\").replace(/\\\\c/g,":").replace(/\\\\n/g,\`
|
|
2518
|
+
\`)}function t(v){return v.replace(/\\\\/g,"\\\\b").replace(/:/g,"\\\\c").replace(/\\n/g,"\\\\n")}function r(v,h){for(var d=v.split(\`
|
|
2519
|
+
\`),_=-1,u=-1,g=0,y=[];g!==d.length;++g){var C=d[g].trim().split(":");if(C[0]==="cell"){var D=Le(C[1]);if(y.length<=D.r)for(_=y.length;_<=D.r;++_)y[_]||(y[_]=[]);switch(_=D.r,u=D.c,C[2]){case"t":y[_][u]=e(C[3]);break;case"v":y[_][u]=+C[3];break;case"vtf":var B=C[C.length-1];case"vtc":C[3]==="nl"?y[_][u]=!!+C[4]:y[_][u]=+C[4],C[2]=="vtf"&&(y[_][u]=[y[_][u],B])}}}return h&&h.sheetRows&&(y=y.slice(0,h.sheetRows)),y}function a(v,h){return vt(r(v,h),h)}function n(v,h){return Yr(a(v,h),h)}var i=["socialcalc:version:1.5","MIME-Version: 1.0","Content-Type: multipart/mixed; boundary=SocialCalcSpreadsheetControlSave"].join(\`
|
|
2520
|
+
\`),s=["--SocialCalcSpreadsheetControlSave","Content-type: text/plain; charset=UTF-8"].join(\`
|
|
2521
|
+
\`)+\`
|
|
2522
|
+
\`,f=["# SocialCalc Spreadsheet Control Save","part:sheet"].join(\`
|
|
2523
|
+
\`),o="--SocialCalcSpreadsheetControlSave--";function c(v){if(!v||!v["!ref"])return"";for(var h=[],d=[],_,u="",g=cr(v["!ref"]),y=Array.isArray(v),C=g.s.r;C<=g.e.r;++C)for(var D=g.s.c;D<=g.e.c;++D)if(u=ge({r:C,c:D}),_=y?(v[C]||[])[D]:v[u],!(!_||_.v==null||_.t==="z")){switch(d=["cell",u,"t"],_.t){case"s":case"str":d.push(t(_.v));break;case"n":_.f?(d[2]="vtf",d[3]="n",d[4]=_.v,d[5]=t(_.f)):(d[2]="v",d[3]=_.v);break;case"b":d[2]="vt"+(_.f?"f":"c"),d[3]="nl",d[4]=_.v?"1":"0",d[5]=t(_.f||(_.v?"TRUE":"FALSE"));break;case"d":var B=tr(qe(_.v));d[2]="vtc",d[3]="nd",d[4]=""+B,d[5]=_.w||Lr(_.z||ye[14],B);break;case"e":continue}h.push(d.join(":"))}return h.push("sheet:c:"+(g.e.c-g.s.c+1)+":r:"+(g.e.r-g.s.r+1)+":tvf:1"),h.push("valueformat:1:text-wiki"),h.join(\`
|
|
2524
|
+
\`)}function l(v){return[i,s,f,s,c(v),o].join(\`
|
|
2525
|
+
\`)}return{to_workbook:n,to_sheet:a,from_sheet:l}})(),uc=(function(){function e(l,v,h,d,_){_.raw?v[h][d]=l:l===""||(l==="TRUE"?v[h][d]=!0:l==="FALSE"?v[h][d]=!1:isNaN(Cr(l))?isNaN(It(l).getDate())?v[h][d]=l:v[h][d]=qe(l):v[h][d]=Cr(l))}function t(l,v){var h=v||{},d=[];if(!l||l.length===0)return d;for(var _=l.split(/[\\r\\n]/),u=_.length-1;u>=0&&_[u].length===0;)--u;for(var g=10,y=0,C=0;C<=u;++C)y=_[C].indexOf(" "),y==-1?y=_[C].length:y++,g=Math.max(g,y);for(C=0;C<=u;++C){d[C]=[];var D=0;for(e(_[C].slice(0,g).trim(),d,C,D,h),D=1;D<=(_[C].length-g)/10+1;++D)e(_[C].slice(g+(D-1)*10,g+D*10).trim(),d,C,D,h)}return h.sheetRows&&(d=d.slice(0,h.sheetRows)),d}var r={44:",",9:" ",59:";",124:"|"},a={44:3,9:2,59:1,124:0};function n(l){for(var v={},h=!1,d=0,_=0;d<l.length;++d)(_=l.charCodeAt(d))==34?h=!h:!h&&_ in r&&(v[_]=(v[_]||0)+1);_=[];for(d in v)Object.prototype.hasOwnProperty.call(v,d)&&_.push([v[d],d]);if(!_.length){v=a;for(d in v)Object.prototype.hasOwnProperty.call(v,d)&&_.push([v[d],d])}return _.sort(function(u,g){return u[0]-g[0]||a[u[1]]-a[g[1]]}),r[_.pop()[1]]||44}function i(l,v){var h=v||{},d="";Er!=null&&h.dense==null&&(h.dense=Er);var _=h.dense?[]:{},u={s:{c:0,r:0},e:{c:0,r:0}};l.slice(0,4)=="sep="?l.charCodeAt(5)==13&&l.charCodeAt(6)==10?(d=l.charAt(4),l=l.slice(7)):l.charCodeAt(5)==13||l.charCodeAt(5)==10?(d=l.charAt(4),l=l.slice(6)):d=n(l.slice(0,1024)):h&&h.FS?d=h.FS:d=n(l.slice(0,1024));var g=0,y=0,C=0,D=0,B=0,G=d.charCodeAt(0),te=!1,A=0,W=l.charCodeAt(0);l=l.replace(/\\r\\n/mg,\`
|
|
2526
|
+
\`);var L=h.dateNF!=null?Fs(h.dateNF):null;function U(){var X=l.slice(D,B),z={};if(X.charAt(0)=='"'&&X.charAt(X.length-1)=='"'&&(X=X.slice(1,-1).replace(/""/g,'"')),X.length===0)z.t="z";else if(h.raw)z.t="s",z.v=X;else if(X.trim().length===0)z.t="s",z.v=X;else if(X.charCodeAt(0)==61)X.charCodeAt(1)==34&&X.charCodeAt(X.length-1)==34?(z.t="s",z.v=X.slice(2,-1).replace(/""/g,'"')):oo(X)?(z.t="n",z.f=X.slice(1)):(z.t="s",z.v=X);else if(X=="TRUE")z.t="b",z.v=!0;else if(X=="FALSE")z.t="b",z.v=!1;else if(!isNaN(C=Cr(X)))z.t="n",h.cellText!==!1&&(z.w=X),z.v=C;else if(!isNaN(It(X).getDate())||L&&X.match(L)){z.z=h.dateNF||ye[14];var ie=0;L&&X.match(L)&&(X=ys(X,h.dateNF,X.match(L)||[]),ie=1),h.cellDates?(z.t="d",z.v=qe(X,ie)):(z.t="n",z.v=tr(qe(X,ie))),h.cellText!==!1&&(z.w=Lr(z.z,z.v instanceof Date?tr(z.v):z.v)),h.cellNF||delete z.z}else z.t="s",z.v=X;if(z.t=="z"||(h.dense?(_[g]||(_[g]=[]),_[g][y]=z):_[ge({c:y,r:g})]=z),D=B+1,W=l.charCodeAt(D),u.e.c<y&&(u.e.c=y),u.e.r<g&&(u.e.r=g),A==G)++y;else if(y=0,++g,h.sheetRows&&h.sheetRows<=g)return!0}e:for(;B<l.length;++B)switch(A=l.charCodeAt(B)){case 34:W===34&&(te=!te);break;case G:case 10:case 13:if(!te&&U())break e;break;default:break}return B-D>0&&U(),_["!ref"]=De(u),_}function s(l,v){return!(v&&v.PRN)||v.FS||l.slice(0,4)=="sep="||l.indexOf(" ")>=0||l.indexOf(",")>=0||l.indexOf(";")>=0?i(l,v):vt(t(l,v),v)}function f(l,v){var h="",d=v.type=="string"?[0,0,0,0]:S1(l,v);switch(v.type){case"base64":h=Or(l);break;case"binary":h=l;break;case"buffer":v.codepage==65001?h=l.toString("utf8"):v.codepage&&typeof ke<"u"?h=ke.utils.decode(v.codepage,l):h=xe&&Buffer.isBuffer(l)?l.toString("binary"):Pt(l);break;case"array":h=da(l);break;case"string":h=l;break;default:throw new Error("Unrecognized type "+v.type)}return d[0]==239&&d[1]==187&&d[2]==191?h=Tt(h.slice(3)):v.type!="string"&&v.type!="buffer"&&v.codepage==65001?h=Tt(h):v.type=="binary"&&typeof ke<"u"&&v.codepage&&(h=ke.utils.decode(v.codepage,ke.utils.encode(28591,h))),h.slice(0,19)=="socialcalc:version:"?Qn.to_sheet(v.type=="string"?h:Tt(h),v):s(h,v)}function o(l,v){return Yr(f(l,v),v)}function c(l){for(var v=[],h=Te(l["!ref"]),d,_=Array.isArray(l),u=h.s.r;u<=h.e.r;++u){for(var g=[],y=h.s.c;y<=h.e.c;++y){var C=ge({r:u,c:y});if(d=_?(l[u]||[])[y]:l[C],!d||d.v==null){g.push(" ");continue}for(var D=(d.w||(Ir(d),d.w)||"").slice(0,10);D.length<10;)D+=" ";g.push(D+(y===0?" ":""))}v.push(g.join(""))}return v.join(\`
|
|
2527
|
+
\`)}return{to_workbook:o,to_sheet:f,from_sheet:c}})();var J0=(function(){function e(T,M,F){if(T){sr(T,T.l||0);for(var S=F.Enum||Me;T.l<T.length;){var V=T.read_shift(2),ne=S[V]||S[65535],fe=T.read_shift(2),ee=T.l+fe,Z=ne.f&&ne.f(T,fe,F);if(T.l=ee,M(Z,ne,V))return}}}function t(T,M){switch(M.type){case"base64":return r(pr(Or(T)),M);case"binary":return r(pr(T),M);case"buffer":case"array":return r(T,M)}throw"Unsupported type "+M.type}function r(T,M){if(!T)return T;var F=M||{};Er!=null&&F.dense==null&&(F.dense=Er);var S=F.dense?[]:{},V="Sheet1",ne="",fe=0,ee={},Z=[],_e=[],le={s:{r:0,c:0},e:{r:0,c:0}},Ue=F.sheetRows||0;if(T[2]==0&&(T[3]==8||T[3]==9)&&T.length>=16&&T[14]==5&&T[15]===108)throw new Error("Unsupported Works 3 for Mac file");if(T[2]==2)F.Enum=Me,e(T,function(ae,or,Sr){switch(Sr){case 0:F.vers=ae,ae>=4096&&(F.qpro=!0);break;case 6:le=ae;break;case 204:ae&&(ne=ae);break;case 222:ne=ae;break;case 15:case 51:F.qpro||(ae[1].v=ae[1].v.slice(1));case 13:case 14:case 16:Sr==14&&(ae[2]&112)==112&&(ae[2]&15)>1&&(ae[2]&15)<15&&(ae[1].z=F.dateNF||ye[14],F.cellDates&&(ae[1].t="d",ae[1].v=kn(ae[1].v))),F.qpro&&ae[3]>fe&&(S["!ref"]=De(le),ee[V]=S,Z.push(V),S=F.dense?[]:{},le={s:{r:0,c:0},e:{r:0,c:0}},fe=ae[3],V=ne||"Sheet"+(fe+1),ne="");var Wr=F.dense?(S[ae[0].r]||[])[ae[0].c]:S[ge(ae[0])];if(Wr){Wr.t=ae[1].t,Wr.v=ae[1].v,ae[1].z!=null&&(Wr.z=ae[1].z),ae[1].f!=null&&(Wr.f=ae[1].f);break}F.dense?(S[ae[0].r]||(S[ae[0].r]=[]),S[ae[0].r][ae[0].c]=ae[1]):S[ge(ae[0])]=ae[1];break;default:}},F);else if(T[2]==26||T[2]==14)F.Enum=Qe,T[2]==14&&(F.qpro=!0,T.l=0),e(T,function(ae,or,Sr){switch(Sr){case 204:V=ae;break;case 22:ae[1].v=ae[1].v.slice(1);case 23:case 24:case 25:case 37:case 39:case 40:if(ae[3]>fe&&(S["!ref"]=De(le),ee[V]=S,Z.push(V),S=F.dense?[]:{},le={s:{r:0,c:0},e:{r:0,c:0}},fe=ae[3],V="Sheet"+(fe+1)),Ue>0&&ae[0].r>=Ue)break;F.dense?(S[ae[0].r]||(S[ae[0].r]=[]),S[ae[0].r][ae[0].c]=ae[1]):S[ge(ae[0])]=ae[1],le.e.c<ae[0].c&&(le.e.c=ae[0].c),le.e.r<ae[0].r&&(le.e.r=ae[0].r);break;case 27:ae[14e3]&&(_e[ae[14e3][0]]=ae[14e3][1]);break;case 1537:_e[ae[0]]=ae[1],ae[0]==fe&&(V=ae[1]);break;default:break}},F);else throw new Error("Unrecognized LOTUS BOF "+T[2]);if(S["!ref"]=De(le),ee[ne||V]=S,Z.push(ne||V),!_e.length)return{SheetNames:Z,Sheets:ee};for(var ue={},xr=[],Se=0;Se<_e.length;++Se)ee[Z[Se]]?(xr.push(_e[Se]||Z[Se]),ue[_e[Se]]=ee[_e[Se]]||ee[Z[Se]]):(xr.push(_e[Se]),ue[_e[Se]]={"!ref":"A1"});return{SheetNames:xr,Sheets:ue}}function a(T,M){var F=M||{};if(+F.codepage>=0&&Dt(+F.codepage),F.type=="string")throw new Error("Cannot write WK1 to JS string");var S=rr(),V=Te(T["!ref"]),ne=Array.isArray(T),fe=[];Y(S,0,i(1030)),Y(S,6,o(V));for(var ee=Math.min(V.e.r,8191),Z=V.s.r;Z<=ee;++Z)for(var _e=Ge(Z),le=V.s.c;le<=V.e.c;++le){Z===V.s.r&&(fe[le]=\$e(le));var Ue=fe[le]+_e,ue=ne?(T[Z]||[])[le]:T[Ue];if(!(!ue||ue.t=="z"))if(ue.t=="n")(ue.v|0)==ue.v&&ue.v>=-32768&&ue.v<=32767?Y(S,13,d(Z,le,ue.v)):Y(S,14,u(Z,le,ue.v));else{var xr=Ir(ue);Y(S,15,v(Z,le,xr.slice(0,239)))}}return Y(S,1),S.end()}function n(T,M){var F=M||{};if(+F.codepage>=0&&Dt(+F.codepage),F.type=="string")throw new Error("Cannot write WK3 to JS string");var S=rr();Y(S,0,s(T));for(var V=0,ne=0;V<T.SheetNames.length;++V)(T.Sheets[T.SheetNames[V]]||{})["!ref"]&&Y(S,27,je(T.SheetNames[V],ne++));var fe=0;for(V=0;V<T.SheetNames.length;++V){var ee=T.Sheets[T.SheetNames[V]];if(!(!ee||!ee["!ref"])){for(var Z=Te(ee["!ref"]),_e=Array.isArray(ee),le=[],Ue=Math.min(Z.e.r,8191),ue=Z.s.r;ue<=Ue;++ue)for(var xr=Ge(ue),Se=Z.s.c;Se<=Z.e.c;++Se){ue===Z.s.r&&(le[Se]=\$e(Se));var ae=le[Se]+xr,or=_e?(ee[ue]||[])[Se]:ee[ae];if(!(!or||or.t=="z"))if(or.t=="n")Y(S,23,U(ue,Se,fe,or.v));else{var Sr=Ir(or);Y(S,22,A(ue,Se,fe,Sr.slice(0,239)))}}++fe}}return Y(S,1),S.end()}function i(T){var M=b(2);return M.write_shift(2,T),M}function s(T){var M=b(26);M.write_shift(2,4096),M.write_shift(2,4),M.write_shift(4,0);for(var F=0,S=0,V=0,ne=0;ne<T.SheetNames.length;++ne){var fe=T.SheetNames[ne],ee=T.Sheets[fe];if(!(!ee||!ee["!ref"])){++V;var Z=cr(ee["!ref"]);F<Z.e.r&&(F=Z.e.r),S<Z.e.c&&(S=Z.e.c)}}return F>8191&&(F=8191),M.write_shift(2,F),M.write_shift(1,V),M.write_shift(1,S),M.write_shift(2,0),M.write_shift(2,0),M.write_shift(1,1),M.write_shift(1,2),M.write_shift(4,0),M.write_shift(4,0),M}function f(T,M,F){var S={s:{c:0,r:0},e:{c:0,r:0}};return M==8&&F.qpro?(S.s.c=T.read_shift(1),T.l++,S.s.r=T.read_shift(2),S.e.c=T.read_shift(1),T.l++,S.e.r=T.read_shift(2),S):(S.s.c=T.read_shift(2),S.s.r=T.read_shift(2),M==12&&F.qpro&&(T.l+=2),S.e.c=T.read_shift(2),S.e.r=T.read_shift(2),M==12&&F.qpro&&(T.l+=2),S.s.c==65535&&(S.s.c=S.e.c=S.s.r=S.e.r=0),S)}function o(T){var M=b(8);return M.write_shift(2,T.s.c),M.write_shift(2,T.s.r),M.write_shift(2,T.e.c),M.write_shift(2,T.e.r),M}function c(T,M,F){var S=[{c:0,r:0},{t:"n",v:0},0,0];return F.qpro&&F.vers!=20768?(S[0].c=T.read_shift(1),S[3]=T.read_shift(1),S[0].r=T.read_shift(2),T.l+=2):(S[2]=T.read_shift(1),S[0].c=T.read_shift(2),S[0].r=T.read_shift(2)),S}function l(T,M,F){var S=T.l+M,V=c(T,M,F);if(V[1].t="s",F.vers==20768){T.l++;var ne=T.read_shift(1);return V[1].v=T.read_shift(ne,"utf8"),V}return F.qpro&&T.l++,V[1].v=T.read_shift(S-T.l,"cstr"),V}function v(T,M,F){var S=b(7+F.length);S.write_shift(1,255),S.write_shift(2,M),S.write_shift(2,T),S.write_shift(1,39);for(var V=0;V<S.length;++V){var ne=F.charCodeAt(V);S.write_shift(1,ne>=128?95:ne)}return S.write_shift(1,0),S}function h(T,M,F){var S=c(T,M,F);return S[1].v=T.read_shift(2,"i"),S}function d(T,M,F){var S=b(7);return S.write_shift(1,255),S.write_shift(2,M),S.write_shift(2,T),S.write_shift(2,F,"i"),S}function _(T,M,F){var S=c(T,M,F);return S[1].v=T.read_shift(8,"f"),S}function u(T,M,F){var S=b(13);return S.write_shift(1,255),S.write_shift(2,M),S.write_shift(2,T),S.write_shift(8,F,"f"),S}function g(T,M,F){var S=T.l+M,V=c(T,M,F);if(V[1].v=T.read_shift(8,"f"),F.qpro)T.l=S;else{var ne=T.read_shift(2);B(T.slice(T.l,T.l+ne),V),T.l+=ne}return V}function y(T,M,F){var S=M&32768;return M&=-32769,M=(S?T:0)+(M>=8192?M-16384:M),(S?"":"\$")+(F?\$e(M):Ge(M))}var C={51:["FALSE",0],52:["TRUE",0],70:["LEN",1],80:["SUM",69],81:["AVERAGEA",69],82:["COUNTA",69],83:["MINA",69],84:["MAXA",69],111:["T",1]},D=["","","","","","","","","","+","-","*","/","^","=","<>","<=",">=","<",">","","","","","&","","","","","","",""];function B(T,M){sr(T,0);for(var F=[],S=0,V="",ne="",fe="",ee="";T.l<T.length;){var Z=T[T.l++];switch(Z){case 0:F.push(T.read_shift(8,"f"));break;case 1:ne=y(M[0].c,T.read_shift(2),!0),V=y(M[0].r,T.read_shift(2),!1),F.push(ne+V);break;case 2:{var _e=y(M[0].c,T.read_shift(2),!0),le=y(M[0].r,T.read_shift(2),!1);ne=y(M[0].c,T.read_shift(2),!0),V=y(M[0].r,T.read_shift(2),!1),F.push(_e+le+":"+ne+V)}break;case 3:if(T.l<T.length){console.error("WK1 premature formula end");return}break;case 4:F.push("("+F.pop()+")");break;case 5:F.push(T.read_shift(2));break;case 6:{for(var Ue="";Z=T[T.l++];)Ue+=String.fromCharCode(Z);F.push('"'+Ue.replace(/"/g,'""')+'"')}break;case 8:F.push("-"+F.pop());break;case 23:F.push("+"+F.pop());break;case 22:F.push("NOT("+F.pop()+")");break;case 20:case 21:ee=F.pop(),fe=F.pop(),F.push(["AND","OR"][Z-20]+"("+fe+","+ee+")");break;default:if(Z<32&&D[Z])ee=F.pop(),fe=F.pop(),F.push(fe+D[Z]+ee);else if(C[Z]){if(S=C[Z][1],S==69&&(S=T[T.l++]),S>F.length){console.error("WK1 bad formula parse 0x"+Z.toString(16)+":|"+F.join("|")+"|");return}var ue=F.slice(-S);F.length-=S,F.push(C[Z][0]+"("+ue.join(",")+")")}else return Z<=7?console.error("WK1 invalid opcode "+Z.toString(16)):Z<=24?console.error("WK1 unsupported op "+Z.toString(16)):Z<=30?console.error("WK1 invalid opcode "+Z.toString(16)):Z<=115?console.error("WK1 unsupported function opcode "+Z.toString(16)):console.error("WK1 unrecognized opcode "+Z.toString(16))}}F.length==1?M[1].f=""+F[0]:console.error("WK1 bad formula parse |"+F.join("|")+"|")}function G(T){var M=[{c:0,r:0},{t:"n",v:0},0];return M[0].r=T.read_shift(2),M[3]=T[T.l++],M[0].c=T[T.l++],M}function te(T,M){var F=G(T,M);return F[1].t="s",F[1].v=T.read_shift(M-4,"cstr"),F}function A(T,M,F,S){var V=b(6+S.length);V.write_shift(2,T),V.write_shift(1,F),V.write_shift(1,M),V.write_shift(1,39);for(var ne=0;ne<S.length;++ne){var fe=S.charCodeAt(ne);V.write_shift(1,fe>=128?95:fe)}return V.write_shift(1,0),V}function W(T,M){var F=G(T,M);F[1].v=T.read_shift(2);var S=F[1].v>>1;if(F[1].v&1)switch(S&7){case 0:S=(S>>3)*5e3;break;case 1:S=(S>>3)*500;break;case 2:S=(S>>3)/20;break;case 3:S=(S>>3)/200;break;case 4:S=(S>>3)/2e3;break;case 5:S=(S>>3)/2e4;break;case 6:S=(S>>3)/16;break;case 7:S=(S>>3)/64;break}return F[1].v=S,F}function L(T,M){var F=G(T,M),S=T.read_shift(4),V=T.read_shift(4),ne=T.read_shift(2);if(ne==65535)return S===0&&V===3221225472?(F[1].t="e",F[1].v=15):S===0&&V===3489660928?(F[1].t="e",F[1].v=42):F[1].v=0,F;var fe=ne&32768;return ne=(ne&32767)-16446,F[1].v=(1-fe*2)*(V*Math.pow(2,ne+32)+S*Math.pow(2,ne)),F}function U(T,M,F,S){var V=b(14);if(V.write_shift(2,T),V.write_shift(1,F),V.write_shift(1,M),S==0)return V.write_shift(4,0),V.write_shift(4,0),V.write_shift(2,65535),V;var ne=0,fe=0,ee=0,Z=0;return S<0&&(ne=1,S=-S),fe=Math.log2(S)|0,S/=Math.pow(2,fe-31),Z=S>>>0,(Z&2147483648)==0&&(S/=2,++fe,Z=S>>>0),S-=Z,Z|=2147483648,Z>>>=0,S*=Math.pow(2,32),ee=S>>>0,V.write_shift(4,ee),V.write_shift(4,Z),fe+=16383+(ne?32768:0),V.write_shift(2,fe),V}function X(T,M){var F=L(T,14);return T.l+=M-14,F}function z(T,M){var F=G(T,M),S=T.read_shift(4);return F[1].v=S>>6,F}function ie(T,M){var F=G(T,M),S=T.read_shift(8,"f");return F[1].v=S,F}function de(T,M){var F=ie(T,14);return T.l+=M-10,F}function se(T,M){return T[T.l+M-1]==0?T.read_shift(M,"cstr"):""}function Re(T,M){var F=T[T.l++];F>M-1&&(F=M-1);for(var S="";S.length<F;)S+=String.fromCharCode(T[T.l++]);return S}function Ne(T,M,F){if(!(!F.qpro||M<21)){var S=T.read_shift(1);T.l+=17,T.l+=1,T.l+=2;var V=T.read_shift(M-21,"cstr");return[S,V]}}function Ze(T,M){for(var F={},S=T.l+M;T.l<S;){var V=T.read_shift(2);if(V==14e3){for(F[V]=[0,""],F[V][0]=T.read_shift(2);T[T.l];)F[V][1]+=String.fromCharCode(T[T.l]),T.l++;T.l++}}return F}function je(T,M){var F=b(5+T.length);F.write_shift(2,14e3),F.write_shift(2,M);for(var S=0;S<T.length;++S){var V=T.charCodeAt(S);F[F.l++]=V>127?95:V}return F[F.l++]=0,F}var Me={0:{n:"BOF",f:jn},1:{n:"EOF"},2:{n:"CALCMODE"},3:{n:"CALCORDER"},4:{n:"SPLIT"},5:{n:"SYNC"},6:{n:"RANGE",f},7:{n:"WINDOW1"},8:{n:"COLW1"},9:{n:"WINTWO"},10:{n:"COLW2"},11:{n:"NAME"},12:{n:"BLANK"},13:{n:"INTEGER",f:h},14:{n:"NUMBER",f:_},15:{n:"LABEL",f:l},16:{n:"FORMULA",f:g},24:{n:"TABLE"},25:{n:"ORANGE"},26:{n:"PRANGE"},27:{n:"SRANGE"},28:{n:"FRANGE"},29:{n:"KRANGE1"},32:{n:"HRANGE"},35:{n:"KRANGE2"},36:{n:"PROTEC"},37:{n:"FOOTER"},38:{n:"HEADER"},39:{n:"SETUP"},40:{n:"MARGINS"},41:{n:"LABELFMT"},42:{n:"TITLES"},43:{n:"SHEETJS"},45:{n:"GRAPH"},46:{n:"NGRAPH"},47:{n:"CALCCOUNT"},48:{n:"UNFORMATTED"},49:{n:"CURSORW12"},50:{n:"WINDOW"},51:{n:"STRING",f:l},55:{n:"PASSWORD"},56:{n:"LOCKED"},60:{n:"QUERY"},61:{n:"QUERYNAME"},62:{n:"PRINT"},63:{n:"PRINTNAME"},64:{n:"GRAPH2"},65:{n:"GRAPHNAME"},66:{n:"ZOOM"},67:{n:"SYMSPLIT"},68:{n:"NSROWS"},69:{n:"NSCOLS"},70:{n:"RULER"},71:{n:"NNAME"},72:{n:"ACOMM"},73:{n:"AMACRO"},74:{n:"PARSE"},102:{n:"PRANGES??"},103:{n:"RRANGES??"},104:{n:"FNAME??"},105:{n:"MRANGES??"},204:{n:"SHEETNAMECS",f:se},222:{n:"SHEETNAMELP",f:Re},65535:{n:""}},Qe={0:{n:"BOF"},1:{n:"EOF"},2:{n:"PASSWORD"},3:{n:"CALCSET"},4:{n:"WINDOWSET"},5:{n:"SHEETCELLPTR"},6:{n:"SHEETLAYOUT"},7:{n:"COLUMNWIDTH"},8:{n:"HIDDENCOLUMN"},9:{n:"USERRANGE"},10:{n:"SYSTEMRANGE"},11:{n:"ZEROFORCE"},12:{n:"SORTKEYDIR"},13:{n:"FILESEAL"},14:{n:"DATAFILLNUMS"},15:{n:"PRINTMAIN"},16:{n:"PRINTSTRING"},17:{n:"GRAPHMAIN"},18:{n:"GRAPHSTRING"},19:{n:"??"},20:{n:"ERRCELL"},21:{n:"NACELL"},22:{n:"LABEL16",f:te},23:{n:"NUMBER17",f:L},24:{n:"NUMBER18",f:W},25:{n:"FORMULA19",f:X},26:{n:"FORMULA1A"},27:{n:"XFORMAT",f:Ze},28:{n:"DTLABELMISC"},29:{n:"DTLABELCELL"},30:{n:"GRAPHWINDOW"},31:{n:"CPA"},32:{n:"LPLAUTO"},33:{n:"QUERY"},34:{n:"HIDDENSHEET"},35:{n:"??"},37:{n:"NUMBER25",f:z},38:{n:"??"},39:{n:"NUMBER27",f:ie},40:{n:"FORMULA28",f:de},142:{n:"??"},147:{n:"??"},150:{n:"??"},151:{n:"??"},152:{n:"??"},153:{n:"??"},154:{n:"??"},155:{n:"??"},156:{n:"??"},163:{n:"??"},174:{n:"??"},175:{n:"??"},176:{n:"??"},177:{n:"??"},184:{n:"??"},185:{n:"??"},186:{n:"??"},187:{n:"??"},188:{n:"??"},195:{n:"??"},201:{n:"??"},204:{n:"SHEETNAMECS",f:se},205:{n:"??"},206:{n:"??"},207:{n:"??"},208:{n:"??"},256:{n:"??"},259:{n:"??"},260:{n:"??"},261:{n:"??"},262:{n:"??"},263:{n:"??"},265:{n:"??"},266:{n:"??"},267:{n:"??"},268:{n:"??"},270:{n:"??"},271:{n:"??"},384:{n:"??"},389:{n:"??"},390:{n:"??"},393:{n:"??"},396:{n:"??"},512:{n:"??"},514:{n:"??"},513:{n:"??"},516:{n:"??"},517:{n:"??"},640:{n:"??"},641:{n:"??"},642:{n:"??"},643:{n:"??"},644:{n:"??"},645:{n:"??"},646:{n:"??"},647:{n:"??"},648:{n:"??"},658:{n:"??"},659:{n:"??"},660:{n:"??"},661:{n:"??"},662:{n:"??"},665:{n:"??"},666:{n:"??"},768:{n:"??"},772:{n:"??"},1537:{n:"SHEETINFOQP",f:Ne},1600:{n:"??"},1602:{n:"??"},1793:{n:"??"},1794:{n:"??"},1795:{n:"??"},1796:{n:"??"},1920:{n:"??"},2048:{n:"??"},2049:{n:"??"},2052:{n:"??"},2688:{n:"??"},10998:{n:"??"},12849:{n:"??"},28233:{n:"??"},28484:{n:"??"},65535:{n:""}};return{sheet_to_wk1:a,book_to_wk3:n,to_workbook:t}})();var hc=/^\\s|\\s\$|[\\t\\n\\r]/;function ei(e,t){if(!t.bookSST)return"";var r=[Oe];r[r.length]=j("sst",null,{xmlns:xt[0],count:e.Count,uniqueCount:e.Unique});for(var a=0;a!=e.length;++a)if(e[a]!=null){var n=e[a],i="<si>";n.r?i+=n.r:(i+="<t",n.t||(n.t=""),n.t.match(hc)&&(i+=' xml:space="preserve"'),i+=">"+me(n.t)+"</t>"),i+="</si>",r[r.length]=i}return r.length>2&&(r[r.length]="</sst>",r[1]=r[1].replace("/>",">")),r.join("")}function xc(e){return[e.read_shift(4),e.read_shift(4)]}function dc(e,t){return t||(t=b(8)),t.write_shift(4,e.Count),t.write_shift(4,e.Unique),t}var vc=nf;function pc(e){var t=rr();H(t,159,dc(e));for(var r=0;r<e.length;++r)H(t,19,vc(e[r]));return H(t,160),t.end()}function mc(e){if(typeof ke<"u")return ke.utils.encode(ut,e);for(var t=[],r=e.split(""),a=0;a<r.length;++a)t[a]=r[a].charCodeAt(0);return t}function ri(e){var t=0,r,a=mc(e),n=a.length+1,i,s,f,o,c;for(r=\$r(n),r[0]=a.length,i=1;i!=n;++i)r[i]=a[i-1];for(i=n-1;i>=0;--i)s=r[i],f=(t&16384)===0?0:1,o=t<<1&32767,c=f|o,t=c^s;return t^52811}var gc=(function(){function e(n,i){switch(i.type){case"base64":return t(Or(n),i);case"binary":return t(n,i);case"buffer":return t(xe&&Buffer.isBuffer(n)?n.toString("binary"):Pt(n),i);case"array":return t(da(n),i)}throw new Error("Unrecognized type "+i.type)}function t(n,i){var s=i||{},f=s.dense?[]:{},o=n.match(/\\\\trowd.*?\\\\row\\b/g);if(!o.length)throw new Error("RTF missing table");var c={s:{c:0,r:0},e:{c:0,r:o.length-1}};return o.forEach(function(l,v){Array.isArray(f)&&(f[v]=[]);for(var h=/\\\\\\w+\\b/g,d=0,_,u=-1;_=h.exec(l);){switch(_[0]){case"\\\\cell":var g=l.slice(d,h.lastIndex-_[0].length);if(g[0]==" "&&(g=g.slice(1)),++u,g.length){var y={v:g,t:"s"};Array.isArray(f)?f[v][u]=y:f[ge({r:v,c:u})]=y}break}d=h.lastIndex}u>c.e.c&&(c.e.c=u)}),f["!ref"]=De(c),f}function r(n,i){return Yr(e(n,i),i)}function a(n){for(var i=["{\\\\rtf1\\\\ansi"],s=Te(n["!ref"]),f,o=Array.isArray(n),c=s.s.r;c<=s.e.r;++c){i.push("\\\\trowd\\\\trautofit1");for(var l=s.s.c;l<=s.e.c;++l)i.push("\\\\cellx"+(l+1));for(i.push("\\\\pard\\\\intbl"),l=s.s.c;l<=s.e.c;++l){var v=ge({r:c,c:l});f=o?(n[c]||[])[l]:n[v],!(!f||f.v==null&&(!f.f||f.F))&&(i.push(" "+(f.w||(Ir(f),f.w))),i.push("\\\\cell"))}i.push("\\\\pard\\\\intbl\\\\row")}return i.join("")+"}"}return{to_workbook:r,to_sheet:e,from_sheet:a}})();function q0(e){for(var t=0,r=1;t!=3;++t)r=r*256+(e[t]>255?255:e[t]<0?0:e[t]);return r.toString(16).toUpperCase().slice(1)}var _c=6;var Dr=_c;function ia(e){return Math.floor((e+Math.round(128/Dr)/256)*Dr)}function sa(e){return Math.floor((e-5)/Dr*100+.5)/100}function La(e){return Math.round((e*Dr+5)/Dr*256)/256}function r0(e){e.width?(e.wpx=ia(e.width),e.wch=sa(e.wpx),e.MDW=Dr):e.wpx?(e.wch=sa(e.wpx),e.width=La(e.wch),e.MDW=Dr):typeof e.wch=="number"&&(e.width=La(e.wch),e.wpx=ia(e.width),e.MDW=Dr),e.customWidth&&delete e.customWidth}var wc=96,ti=wc;function fa(e){return e*96/ti}function ai(e){return e*ti/96}function kc(e){var t=["<numFmts>"];return[[5,8],[23,26],[41,44],[50,392]].forEach(function(r){for(var a=r[0];a<=r[1];++a)e[a]!=null&&(t[t.length]=j("numFmt",null,{numFmtId:a,formatCode:me(e[a])}))}),t.length===1?"":(t[t.length]="</numFmts>",t[0]=j("numFmts",null,{count:t.length-2}).replace("/>",">"),t.join(""))}function Ec(e){var t=[];return t[t.length]=j("cellXfs",null),e.forEach(function(r){t[t.length]=j("xf",null,r)}),t[t.length]="</cellXfs>",t.length===2?"":(t[0]=j("cellXfs",null,{count:t.length-2}).replace("/>",">"),t.join(""))}function ni(e,t){var r=[Oe,j("styleSheet",null,{xmlns:xt[0],"xmlns:vt":Pe.vt})],a;return e.SSF&&(a=kc(e.SSF))!=null&&(r[r.length]=a),r[r.length]='<fonts count="1"><font><sz val="12"/><color theme="1"/><name val="Calibri"/><family val="2"/><scheme val="minor"/></font></fonts>',r[r.length]='<fills count="2"><fill><patternFill patternType="none"/></fill><fill><patternFill patternType="gray125"/></fill></fills>',r[r.length]='<borders count="1"><border><left/><right/><top/><bottom/><diagonal/></border></borders>',r[r.length]='<cellStyleXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0"/></cellStyleXfs>',(a=Ec(t.cellXfs))&&(r[r.length]=a),r[r.length]='<cellStyles count="1"><cellStyle name="Normal" xfId="0" builtinId="0"/></cellStyles>',r[r.length]='<dxfs count="0"/>',r[r.length]='<tableStyles count="0" defaultTableStyle="TableStyleMedium9" defaultPivotStyle="PivotStyleMedium4"/>',r.length>2&&(r[r.length]="</styleSheet>",r[1]=r[1].replace("/>",">")),r.join("")}function Tc(e,t){var r=e.read_shift(2),a=Ke(e,t-2);return[r,a]}function Sc(e,t,r){r||(r=b(6+4*t.length)),r.write_shift(2,e),Be(t,r);var a=r.length>r.l?r.slice(0,r.l):r;return r.l==null&&(r.l=r.length),a}function Fc(e,t,r){var a={};a.sz=e.read_shift(2)/20;var n=hf(e,2,r);n.fItalic&&(a.italic=1),n.fCondense&&(a.condense=1),n.fExtend&&(a.extend=1),n.fShadow&&(a.shadow=1),n.fOutline&&(a.outline=1),n.fStrikeout&&(a.strike=1);var i=e.read_shift(2);switch(i===700&&(a.bold=1),e.read_shift(2)){case 1:a.vertAlign="superscript";break;case 2:a.vertAlign="subscript";break}var s=e.read_shift(1);s!=0&&(a.underline=s);var f=e.read_shift(1);f>0&&(a.family=f);var o=e.read_shift(1);switch(o>0&&(a.charset=o),e.l++,a.color=uf(e,8),e.read_shift(1)){case 1:a.scheme="major";break;case 2:a.scheme="minor";break}return a.name=Ke(e,t-21),a}function yc(e,t){t||(t=b(153)),t.write_shift(2,e.sz*20),xf(e,t),t.write_shift(2,e.bold?700:400);var r=0;e.vertAlign=="superscript"?r=1:e.vertAlign=="subscript"&&(r=2),t.write_shift(2,r),t.write_shift(1,e.underline||0),t.write_shift(1,e.family||0),t.write_shift(1,e.charset||0),t.write_shift(1,0),aa(e.color,t);var a=0;return e.scheme=="major"&&(a=1),e.scheme=="minor"&&(a=2),t.write_shift(1,a),Be(e.name,t),t.length>t.l?t.slice(0,t.l):t}var Ac=["none","solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"],Da,Cc=Tr;function Z0(e,t){t||(t=b(84)),Da||(Da=Ua(Ac));var r=Da[e.patternType];r==null&&(r=40),t.write_shift(4,r);var a=0;if(r!=40)for(aa({auto:1},t),aa({auto:1},t);a<12;++a)t.write_shift(4,0);else{for(;a<4;++a)t.write_shift(4,0);for(;a<12;++a)t.write_shift(4,0)}return t.length>t.l?t.slice(0,t.l):t}function Dc(e,t){var r=e.l+t,a=e.read_shift(2),n=e.read_shift(2);return e.l=r,{ixfe:a,numFmtId:n}}function ii(e,t,r){r||(r=b(16)),r.write_shift(2,t||0),r.write_shift(2,e.numFmtId||0),r.write_shift(2,0),r.write_shift(2,0),r.write_shift(2,0),r.write_shift(1,0),r.write_shift(1,0);var a=0;return r.write_shift(1,a),r.write_shift(1,0),r.write_shift(1,0),r.write_shift(1,0),r}function kt(e,t){return t||(t=b(10)),t.write_shift(1,0),t.write_shift(1,0),t.write_shift(4,0),t.write_shift(4,0),t}var Oc=Tr;function Ic(e,t){return t||(t=b(51)),t.write_shift(1,0),kt(null,t),kt(null,t),kt(null,t),kt(null,t),kt(null,t),t.length>t.l?t.slice(0,t.l):t}function Rc(e,t){return t||(t=b(52)),t.write_shift(4,e.xfId),t.write_shift(2,1),t.write_shift(1,+e.builtinId),t.write_shift(1,0),ta(e.name||"",t),t.length>t.l?t.slice(0,t.l):t}function Nc(e,t,r){var a=b(2052);return a.write_shift(4,e),ta(t,a),ta(r,a),a.length>a.l?a.slice(0,a.l):a}function bc(e,t){if(t){var r=0;[[5,8],[23,26],[41,44],[50,392]].forEach(function(a){for(var n=a[0];n<=a[1];++n)t[n]!=null&&++r}),r!=0&&(H(e,615,gr(r)),[[5,8],[23,26],[41,44],[50,392]].forEach(function(a){for(var n=a[0];n<=a[1];++n)t[n]!=null&&H(e,44,Sc(n,t[n]))}),H(e,616))}}function Pc(e){var t=1;t!=0&&(H(e,611,gr(t)),H(e,43,yc({sz:12,color:{theme:1},name:"Calibri",family:2,scheme:"minor"})),H(e,612))}function Lc(e){var t=2;t!=0&&(H(e,603,gr(t)),H(e,45,Z0({patternType:"none"})),H(e,45,Z0({patternType:"gray125"})),H(e,604))}function Bc(e){var t=1;t!=0&&(H(e,613,gr(t)),H(e,46,Ic({})),H(e,614))}function Mc(e){var t=1;H(e,626,gr(t)),H(e,47,ii({numFmtId:0,fontId:0,fillId:0,borderId:0},65535)),H(e,627)}function Uc(e,t){H(e,617,gr(t.length)),t.forEach(function(r){H(e,47,ii(r,0))}),H(e,618)}function Wc(e){var t=1;H(e,619,gr(t)),H(e,48,Rc({xfId:0,builtinId:0,name:"Normal"})),H(e,620)}function Hc(e){var t=0;H(e,505,gr(t)),H(e,506)}function Vc(e){var t=0;H(e,508,Nc(t,"TableStyleMedium9","PivotStyleMedium4")),H(e,509)}function Xc(e,t){var r=rr();return H(r,278),bc(r,e.SSF),Pc(r,e),Lc(r,e),Bc(r,e),Mc(r,e),Uc(r,t.cellXfs),Wc(r,e),Hc(r,e),Vc(r,e),H(r,279),r.end()}function si(e,t){if(t&&t.themeXLSX)return t.themeXLSX;if(e&&typeof e.raw=="string")return e.raw;var r=[Oe];return r[r.length]='<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme">',r[r.length]="<a:themeElements>",r[r.length]='<a:clrScheme name="Office">',r[r.length]='<a:dk1><a:sysClr val="windowText" lastClr="000000"/></a:dk1>',r[r.length]='<a:lt1><a:sysClr val="window" lastClr="FFFFFF"/></a:lt1>',r[r.length]='<a:dk2><a:srgbClr val="1F497D"/></a:dk2>',r[r.length]='<a:lt2><a:srgbClr val="EEECE1"/></a:lt2>',r[r.length]='<a:accent1><a:srgbClr val="4F81BD"/></a:accent1>',r[r.length]='<a:accent2><a:srgbClr val="C0504D"/></a:accent2>',r[r.length]='<a:accent3><a:srgbClr val="9BBB59"/></a:accent3>',r[r.length]='<a:accent4><a:srgbClr val="8064A2"/></a:accent4>',r[r.length]='<a:accent5><a:srgbClr val="4BACC6"/></a:accent5>',r[r.length]='<a:accent6><a:srgbClr val="F79646"/></a:accent6>',r[r.length]='<a:hlink><a:srgbClr val="0000FF"/></a:hlink>',r[r.length]='<a:folHlink><a:srgbClr val="800080"/></a:folHlink>',r[r.length]="</a:clrScheme>",r[r.length]='<a:fontScheme name="Office">',r[r.length]="<a:majorFont>",r[r.length]='<a:latin typeface="Cambria"/>',r[r.length]='<a:ea typeface=""/>',r[r.length]='<a:cs typeface=""/>',r[r.length]='<a:font script="Jpan" typeface="\\uFF2D\\uFF33 \\uFF30\\u30B4\\u30B7\\u30C3\\u30AF"/>',r[r.length]='<a:font script="Hang" typeface="\\uB9D1\\uC740 \\uACE0\\uB515"/>',r[r.length]='<a:font script="Hans" typeface="\\u5B8B\\u4F53"/>',r[r.length]='<a:font script="Hant" typeface="\\u65B0\\u7D30\\u660E\\u9AD4"/>',r[r.length]='<a:font script="Arab" typeface="Times New Roman"/>',r[r.length]='<a:font script="Hebr" typeface="Times New Roman"/>',r[r.length]='<a:font script="Thai" typeface="Tahoma"/>',r[r.length]='<a:font script="Ethi" typeface="Nyala"/>',r[r.length]='<a:font script="Beng" typeface="Vrinda"/>',r[r.length]='<a:font script="Gujr" typeface="Shruti"/>',r[r.length]='<a:font script="Khmr" typeface="MoolBoran"/>',r[r.length]='<a:font script="Knda" typeface="Tunga"/>',r[r.length]='<a:font script="Guru" typeface="Raavi"/>',r[r.length]='<a:font script="Cans" typeface="Euphemia"/>',r[r.length]='<a:font script="Cher" typeface="Plantagenet Cherokee"/>',r[r.length]='<a:font script="Yiii" typeface="Microsoft Yi Baiti"/>',r[r.length]='<a:font script="Tibt" typeface="Microsoft Himalaya"/>',r[r.length]='<a:font script="Thaa" typeface="MV Boli"/>',r[r.length]='<a:font script="Deva" typeface="Mangal"/>',r[r.length]='<a:font script="Telu" typeface="Gautami"/>',r[r.length]='<a:font script="Taml" typeface="Latha"/>',r[r.length]='<a:font script="Syrc" typeface="Estrangelo Edessa"/>',r[r.length]='<a:font script="Orya" typeface="Kalinga"/>',r[r.length]='<a:font script="Mlym" typeface="Kartika"/>',r[r.length]='<a:font script="Laoo" typeface="DokChampa"/>',r[r.length]='<a:font script="Sinh" typeface="Iskoola Pota"/>',r[r.length]='<a:font script="Mong" typeface="Mongolian Baiti"/>',r[r.length]='<a:font script="Viet" typeface="Times New Roman"/>',r[r.length]='<a:font script="Uigh" typeface="Microsoft Uighur"/>',r[r.length]='<a:font script="Geor" typeface="Sylfaen"/>',r[r.length]="</a:majorFont>",r[r.length]="<a:minorFont>",r[r.length]='<a:latin typeface="Calibri"/>',r[r.length]='<a:ea typeface=""/>',r[r.length]='<a:cs typeface=""/>',r[r.length]='<a:font script="Jpan" typeface="\\uFF2D\\uFF33 \\uFF30\\u30B4\\u30B7\\u30C3\\u30AF"/>',r[r.length]='<a:font script="Hang" typeface="\\uB9D1\\uC740 \\uACE0\\uB515"/>',r[r.length]='<a:font script="Hans" typeface="\\u5B8B\\u4F53"/>',r[r.length]='<a:font script="Hant" typeface="\\u65B0\\u7D30\\u660E\\u9AD4"/>',r[r.length]='<a:font script="Arab" typeface="Arial"/>',r[r.length]='<a:font script="Hebr" typeface="Arial"/>',r[r.length]='<a:font script="Thai" typeface="Tahoma"/>',r[r.length]='<a:font script="Ethi" typeface="Nyala"/>',r[r.length]='<a:font script="Beng" typeface="Vrinda"/>',r[r.length]='<a:font script="Gujr" typeface="Shruti"/>',r[r.length]='<a:font script="Khmr" typeface="DaunPenh"/>',r[r.length]='<a:font script="Knda" typeface="Tunga"/>',r[r.length]='<a:font script="Guru" typeface="Raavi"/>',r[r.length]='<a:font script="Cans" typeface="Euphemia"/>',r[r.length]='<a:font script="Cher" typeface="Plantagenet Cherokee"/>',r[r.length]='<a:font script="Yiii" typeface="Microsoft Yi Baiti"/>',r[r.length]='<a:font script="Tibt" typeface="Microsoft Himalaya"/>',r[r.length]='<a:font script="Thaa" typeface="MV Boli"/>',r[r.length]='<a:font script="Deva" typeface="Mangal"/>',r[r.length]='<a:font script="Telu" typeface="Gautami"/>',r[r.length]='<a:font script="Taml" typeface="Latha"/>',r[r.length]='<a:font script="Syrc" typeface="Estrangelo Edessa"/>',r[r.length]='<a:font script="Orya" typeface="Kalinga"/>',r[r.length]='<a:font script="Mlym" typeface="Kartika"/>',r[r.length]='<a:font script="Laoo" typeface="DokChampa"/>',r[r.length]='<a:font script="Sinh" typeface="Iskoola Pota"/>',r[r.length]='<a:font script="Mong" typeface="Mongolian Baiti"/>',r[r.length]='<a:font script="Viet" typeface="Arial"/>',r[r.length]='<a:font script="Uigh" typeface="Microsoft Uighur"/>',r[r.length]='<a:font script="Geor" typeface="Sylfaen"/>',r[r.length]="</a:minorFont>",r[r.length]="</a:fontScheme>",r[r.length]='<a:fmtScheme name="Office">',r[r.length]="<a:fillStyleLst>",r[r.length]='<a:solidFill><a:schemeClr val="phClr"/></a:solidFill>',r[r.length]='<a:gradFill rotWithShape="1">',r[r.length]="<a:gsLst>",r[r.length]='<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="50000"/><a:satMod val="300000"/></a:schemeClr></a:gs>',r[r.length]='<a:gs pos="35000"><a:schemeClr val="phClr"><a:tint val="37000"/><a:satMod val="300000"/></a:schemeClr></a:gs>',r[r.length]='<a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="15000"/><a:satMod val="350000"/></a:schemeClr></a:gs>',r[r.length]="</a:gsLst>",r[r.length]='<a:lin ang="16200000" scaled="1"/>',r[r.length]="</a:gradFill>",r[r.length]='<a:gradFill rotWithShape="1">',r[r.length]="<a:gsLst>",r[r.length]='<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="100000"/><a:shade val="100000"/><a:satMod val="130000"/></a:schemeClr></a:gs>',r[r.length]='<a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="50000"/><a:shade val="100000"/><a:satMod val="350000"/></a:schemeClr></a:gs>',r[r.length]="</a:gsLst>",r[r.length]='<a:lin ang="16200000" scaled="0"/>',r[r.length]="</a:gradFill>",r[r.length]="</a:fillStyleLst>",r[r.length]="<a:lnStyleLst>",r[r.length]='<a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"><a:shade val="95000"/><a:satMod val="105000"/></a:schemeClr></a:solidFill><a:prstDash val="solid"/></a:ln>',r[r.length]='<a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln>',r[r.length]='<a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln>',r[r.length]="</a:lnStyleLst>",r[r.length]="<a:effectStyleLst>",r[r.length]="<a:effectStyle>",r[r.length]="<a:effectLst>",r[r.length]='<a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="38000"/></a:srgbClr></a:outerShdw>',r[r.length]="</a:effectLst>",r[r.length]="</a:effectStyle>",r[r.length]="<a:effectStyle>",r[r.length]="<a:effectLst>",r[r.length]='<a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw>',r[r.length]="</a:effectLst>",r[r.length]="</a:effectStyle>",r[r.length]="<a:effectStyle>",r[r.length]="<a:effectLst>",r[r.length]='<a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw>',r[r.length]="</a:effectLst>",r[r.length]='<a:scene3d><a:camera prst="orthographicFront"><a:rot lat="0" lon="0" rev="0"/></a:camera><a:lightRig rig="threePt" dir="t"><a:rot lat="0" lon="0" rev="1200000"/></a:lightRig></a:scene3d>',r[r.length]='<a:sp3d><a:bevelT w="63500" h="25400"/></a:sp3d>',r[r.length]="</a:effectStyle>",r[r.length]="</a:effectStyleLst>",r[r.length]="<a:bgFillStyleLst>",r[r.length]='<a:solidFill><a:schemeClr val="phClr"/></a:solidFill>',r[r.length]='<a:gradFill rotWithShape="1">',r[r.length]="<a:gsLst>",r[r.length]='<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="40000"/><a:satMod val="350000"/></a:schemeClr></a:gs>',r[r.length]='<a:gs pos="40000"><a:schemeClr val="phClr"><a:tint val="45000"/><a:shade val="99000"/><a:satMod val="350000"/></a:schemeClr></a:gs>',r[r.length]='<a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="20000"/><a:satMod val="255000"/></a:schemeClr></a:gs>',r[r.length]="</a:gsLst>",r[r.length]='<a:path path="circle"><a:fillToRect l="50000" t="-80000" r="50000" b="180000"/></a:path>',r[r.length]="</a:gradFill>",r[r.length]='<a:gradFill rotWithShape="1">',r[r.length]="<a:gsLst>",r[r.length]='<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="80000"/><a:satMod val="300000"/></a:schemeClr></a:gs>',r[r.length]='<a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="30000"/><a:satMod val="200000"/></a:schemeClr></a:gs>',r[r.length]="</a:gsLst>",r[r.length]='<a:path path="circle"><a:fillToRect l="50000" t="50000" r="50000" b="50000"/></a:path>',r[r.length]="</a:gradFill>",r[r.length]="</a:bgFillStyleLst>",r[r.length]="</a:fmtScheme>",r[r.length]="</a:themeElements>",r[r.length]="<a:objectDefaults>",r[r.length]="<a:spDef>",r[r.length]='<a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="1"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="3"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="2"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="lt1"/></a:fontRef></a:style>',r[r.length]="</a:spDef>",r[r.length]="<a:lnDef>",r[r.length]='<a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="2"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="0"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="1"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="tx1"/></a:fontRef></a:style>',r[r.length]="</a:lnDef>",r[r.length]="</a:objectDefaults>",r[r.length]="<a:extraClrSchemeLst/>",r[r.length]="</a:theme>",r.join("")}function Gc(e,t){return{flags:e.read_shift(4),version:e.read_shift(4),name:Ke(e,t-8)}}function zc(e){var t=b(12+2*e.name.length);return t.write_shift(4,e.flags),t.write_shift(4,e.version),Be(e.name,t),t.slice(0,t.l)}function \$c(e){for(var t=[],r=e.read_shift(4);r-- >0;)t.push([e.read_shift(4),e.read_shift(4)]);return t}function Kc(e){var t=b(4+8*e.length);t.write_shift(4,e.length);for(var r=0;r<e.length;++r)t.write_shift(4,e[r][0]),t.write_shift(4,e[r][1]);return t}function jc(e,t){var r=b(8+2*t.length);return r.write_shift(4,e),Be(t,r),r.slice(0,r.l)}function Yc(e){return e.l+=4,e.read_shift(4)!=0}function Jc(e,t){var r=b(8);return r.write_shift(4,e),r.write_shift(4,t?1:0),r}function qc(){var e=rr();return H(e,332),H(e,334,gr(1)),H(e,335,zc({name:"XLDAPR",version:12e4,flags:3496657072})),H(e,336),H(e,339,jc(1,"XLDAPR")),H(e,52),H(e,35,gr(514)),H(e,4096,gr(0)),H(e,4097,ur(1)),H(e,36),H(e,53),H(e,340),H(e,337,Jc(1,!0)),H(e,51,Kc([[1,0]])),H(e,338),H(e,333),e.end()}function fi(){var e=[Oe];return e.push(\`<metadata xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:xlrd="http://schemas.microsoft.com/office/spreadsheetml/2017/richdata" xmlns:xda="http://schemas.microsoft.com/office/spreadsheetml/2017/dynamicarray">
|
|
2528
|
+
<metadataTypes count="1">
|
|
2529
|
+
<metadataType name="XLDAPR" minSupportedVersion="120000" copy="1" pasteAll="1" pasteValues="1" merge="1" splitFirst="1" rowColShift="1" clearFormats="1" clearComments="1" assign="1" coerce="1" cellMeta="1"/>
|
|
2530
|
+
</metadataTypes>
|
|
2531
|
+
<futureMetadata name="XLDAPR" count="1">
|
|
2532
|
+
<bk>
|
|
2533
|
+
<extLst>
|
|
2534
|
+
<ext uri="{bdbb8cdc-fa1e-496e-a857-3c3f30c029c3}">
|
|
2535
|
+
<xda:dynamicArrayProperties fDynamic="1" fCollapsed="0"/>
|
|
2536
|
+
</ext>
|
|
2537
|
+
</extLst>
|
|
2538
|
+
</bk>
|
|
2539
|
+
</futureMetadata>
|
|
2540
|
+
<cellMetadata count="1">
|
|
2541
|
+
<bk>
|
|
2542
|
+
<rc t="1" v="0"/>
|
|
2543
|
+
</bk>
|
|
2544
|
+
</cellMetadata>
|
|
2545
|
+
</metadata>\`),e.join("")}function Zc(e){var t={};t.i=e.read_shift(4);var r={};r.r=e.read_shift(4),r.c=e.read_shift(4),t.r=ge(r);var a=e.read_shift(1);return a&2&&(t.l="1"),a&8&&(t.a="1"),t}var it=1024;function ci(e,t){for(var r=[21600,21600],a=["m0,0l0",r[1],r[0],r[1],r[0],"0xe"].join(","),n=[j("xml",null,{"xmlns:v":fr.v,"xmlns:o":fr.o,"xmlns:x":fr.x,"xmlns:mv":fr.mv}).replace(/\\/>/,">"),j("o:shapelayout",j("o:idmap",null,{"v:ext":"edit",data:e}),{"v:ext":"edit"}),j("v:shapetype",[j("v:stroke",null,{joinstyle:"miter"}),j("v:path",null,{gradientshapeok:"t","o:connecttype":"rect"})].join(""),{id:"_x0000_t202","o:spt":202,coordsize:r.join(","),path:a})];it<e*1e3;)it+=1e3;return t.forEach(function(i){var s=Le(i[0]),f={color2:"#BEFF82",type:"gradient"};f.type=="gradient"&&(f.angle="-180");var o=f.type=="gradient"?j("o:fill",null,{type:"gradientUnscaled","v:ext":"view"}):null,c=j("v:fill",o,f),l={on:"t",obscured:"t"};++it,n=n.concat(["<v:shape"+Rt({id:"_x0000_s"+it,type:"#_x0000_t202",style:"position:absolute; margin-left:80pt;margin-top:5pt;width:104pt;height:64pt;z-index:10"+(i[1].hidden?";visibility:hidden":""),fillcolor:"#ECFAD4",strokecolor:"#edeaa1"})+">",c,j("v:shadow",null,l),j("v:path",null,{"o:connecttype":"none"}),'<v:textbox><div style="text-align:left"></div></v:textbox>','<x:ClientData ObjectType="Note">',"<x:MoveWithCells/>","<x:SizeWithCells/>",Xe("x:Anchor",[s.c+1,0,s.r+1,0,s.c+3,20,s.r+5,20].join(",")),Xe("x:AutoFill","False"),Xe("x:Row",String(s.r)),Xe("x:Column",String(s.c)),i[1].hidden?"":"<x:Visible/>","</x:ClientData>","</v:shape>"])}),n.push("</xml>"),n.join("")}function oi(e){var t=[Oe,j("comments",null,{xmlns:xt[0]})],r=[];return t.push("<authors>"),e.forEach(function(a){a[1].forEach(function(n){var i=me(n.a);r.indexOf(i)==-1&&(r.push(i),t.push("<author>"+i+"</author>")),n.T&&n.ID&&r.indexOf("tc="+n.ID)==-1&&(r.push("tc="+n.ID),t.push("<author>tc="+n.ID+"</author>"))})}),r.length==0&&(r.push("SheetJ5"),t.push("<author>SheetJ5</author>")),t.push("</authors>"),t.push("<commentList>"),e.forEach(function(a){var n=0,i=[];if(a[1][0]&&a[1][0].T&&a[1][0].ID?n=r.indexOf("tc="+a[1][0].ID):a[1].forEach(function(o){o.a&&(n=r.indexOf(me(o.a))),i.push(o.t||"")}),t.push('<comment ref="'+a[0]+'" authorId="'+n+'"><text>'),i.length<=1)t.push(Xe("t",me(i[0]||"")));else{for(var s=\`Comment:
|
|
2546
|
+
\`+i[0]+\`
|
|
2547
|
+
\`,f=1;f<i.length;++f)s+=\`Reply:
|
|
2548
|
+
\`+i[f]+\`
|
|
2549
|
+
\`;t.push(Xe("t",me(s)))}t.push("</text></comment>")}),t.push("</commentList>"),t.length>2&&(t[t.length]="</comments>",t[1]=t[1].replace("/>",">")),t.join("")}function Qc(e,t,r){var a=[Oe,j("ThreadedComments",null,{xmlns:Pe.TCMNT}).replace(/[\\/]>/,">")];return e.forEach(function(n){var i="";(n[1]||[]).forEach(function(s,f){if(!s.T){delete s.ID;return}s.a&&t.indexOf(s.a)==-1&&t.push(s.a);var o={ref:n[0],id:"{54EE7951-7262-4200-6969-"+("000000000000"+r.tcid++).slice(-12)+"}"};f==0?i=o.id:o.parentId=i,s.ID=o.id,s.a&&(o.personId="{54EE7950-7262-4200-6969-"+("000000000000"+t.indexOf(s.a)).slice(-12)+"}"),a.push(j("threadedComment",Xe("text",s.t||""),o))})}),a.push("</ThreadedComments>"),a.join("")}function eo(e){var t=[Oe,j("personList",null,{xmlns:Pe.TCMNT,"xmlns:x":xt[0]}).replace(/[\\/]>/,">")];return e.forEach(function(r,a){t.push(j("person",null,{displayName:r,id:"{54EE7950-7262-4200-6969-"+("000000000000"+a).slice(-12)+"}",userId:r,providerId:"None"}))}),t.push("</personList>"),t.join("")}function ro(e){var t={};t.iauthor=e.read_shift(4);var r=Qr(e,16);return t.rfx=r.s,t.ref=ge(r.s),e.l+=16,t}function to(e,t){return t==null&&(t=b(36)),t.write_shift(4,e[1].iauthor),pt(e[0],t),t.write_shift(4,0),t.write_shift(4,0),t.write_shift(4,0),t.write_shift(4,0),t}var ao=Ke;function no(e){return Be(e.slice(0,54))}function io(e){var t=rr(),r=[];return H(t,628),H(t,630),e.forEach(function(a){a[1].forEach(function(n){r.indexOf(n.a)>-1||(r.push(n.a.slice(0,54)),H(t,632,no(n.a)))})}),H(t,631),H(t,633),e.forEach(function(a){a[1].forEach(function(n){n.iauthor=r.indexOf(n.a);var i={s:Le(a[0]),e:Le(a[0])};H(t,635,to([i,n])),n.t&&n.t.length>0&&H(t,637,ff(n)),H(t,636),delete n.iauthor})}),H(t,634),H(t,629),t.end()}function so(e,t){t.FullPaths.forEach(function(r,a){if(a!=0){var n=r.replace(/[^\\/]*[\\/]/,"/_VBA_PROJECT_CUR/");n.slice(-1)!=="/"&&we.utils.cfb_add(e,n,t.FileIndex[a].content)}})}var li=["xlsb","xlsm","xlam","biff8","xla"];var fo=(function(){var e=/(^|[^A-Za-z_])R(\\[?-?\\d+\\]|[1-9]\\d*|)C(\\[?-?\\d+\\]|[1-9]\\d*|)(?![A-Za-z0-9_])/g,t={r:0,c:0};function r(a,n,i,s){var f=!1,o=!1;i.length==0?o=!0:i.charAt(0)=="["&&(o=!0,i=i.slice(1,-1)),s.length==0?f=!0:s.charAt(0)=="["&&(f=!0,s=s.slice(1,-1));var c=i.length>0?parseInt(i,10)|0:0,l=s.length>0?parseInt(s,10)|0:0;return f?l+=t.c:--l,o?c+=t.r:--c,n+(f?"":"\$")+\$e(l)+(o?"":"\$")+Ge(c)}return function(n,i){return t=i,n.replace(e,r)}})(),t0=/(^|[^._A-Z0-9])([\$]?)([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])([\$]?)(10[0-3]\\d{4}|104[0-7]\\d{3}|1048[0-4]\\d{2}|10485[0-6]\\d|104857[0-6]|[1-9]\\d{0,5})(?![_.\\(A-Za-z0-9])/g,a0=(function(){return function(t,r){return t.replace(t0,function(a,n,i,s,f,o){var c=Ja(s)-(i?0:r.c),l=Ya(o)-(f?0:r.r),v=l==0?"":f?l+1:"["+l+"]",h=c==0?"":i?c+1:"["+c+"]";return n+"R"+v+"C"+h})}})();function co(e,t){return e.replace(t0,function(r,a,n,i,s,f){return a+(n=="\$"?n+i:\$e(Ja(i)+t.c))+(s=="\$"?s+f:Ge(Ya(f)+t.r))})}function oo(e){return e.length!=1}function Ce(e){e.l+=1}function Br(e,t){var r=e.read_shift(t==1?1:2);return[r&16383,r>>14&1,r>>15&1]}function ui(e,t,r){var a=2;if(r){if(r.biff>=2&&r.biff<=5)return hi(e,t,r);r.biff==12&&(a=4)}var n=e.read_shift(a),i=e.read_shift(a),s=Br(e,2),f=Br(e,2);return{s:{r:n,c:s[0],cRel:s[1],rRel:s[2]},e:{r:i,c:f[0],cRel:f[1],rRel:f[2]}}}function hi(e){var t=Br(e,2),r=Br(e,2),a=e.read_shift(1),n=e.read_shift(1);return{s:{r:t[0],c:a,cRel:t[1],rRel:t[2]},e:{r:r[0],c:n,cRel:r[1],rRel:r[2]}}}function lo(e,t,r){if(r.biff<8)return hi(e,t,r);var a=e.read_shift(r.biff==12?4:2),n=e.read_shift(r.biff==12?4:2),i=Br(e,2),s=Br(e,2);return{s:{r:a,c:i[0],cRel:i[1],rRel:i[2]},e:{r:n,c:s[0],cRel:s[1],rRel:s[2]}}}function xi(e,t,r){if(r&&r.biff>=2&&r.biff<=5)return uo(e,t,r);var a=e.read_shift(r&&r.biff==12?4:2),n=Br(e,2);return{r:a,c:n[0],cRel:n[1],rRel:n[2]}}function uo(e){var t=Br(e,2),r=e.read_shift(1);return{r:t[0],c:r,cRel:t[1],rRel:t[2]}}function ho(e){var t=e.read_shift(2),r=e.read_shift(2);return{r:t,c:r&255,fQuoted:!!(r&16384),cRel:r>>15,rRel:r>>15}}function xo(e,t,r){var a=r&&r.biff?r.biff:8;if(a>=2&&a<=5)return vo(e,t,r);var n=e.read_shift(a>=12?4:2),i=e.read_shift(2),s=(i&16384)>>14,f=(i&32768)>>15;if(i&=16383,f==1)for(;n>524287;)n-=1048576;if(s==1)for(;i>8191;)i=i-16384;return{r:n,c:i,cRel:s,rRel:f}}function vo(e){var t=e.read_shift(2),r=e.read_shift(1),a=(t&32768)>>15,n=(t&16384)>>14;return t&=16383,a==1&&t>=8192&&(t=t-16384),n==1&&r>=128&&(r=r-256),{r:t,c:r,cRel:n,rRel:a}}function po(e,t,r){var a=(e[e.l++]&96)>>5,n=ui(e,r.biff>=2&&r.biff<=5?6:8,r);return[a,n]}function mo(e,t,r){var a=(e[e.l++]&96)>>5,n=e.read_shift(2,"i"),i=8;if(r)switch(r.biff){case 5:e.l+=12,i=6;break;case 12:i=12;break}var s=ui(e,i,r);return[a,n,s]}function go(e,t,r){var a=(e[e.l++]&96)>>5;return e.l+=r&&r.biff>8?12:r.biff<8?6:8,[a]}function _o(e,t,r){var a=(e[e.l++]&96)>>5,n=e.read_shift(2),i=8;if(r)switch(r.biff){case 5:e.l+=12,i=6;break;case 12:i=12;break}return e.l+=i,[a,n]}function wo(e,t,r){var a=(e[e.l++]&96)>>5,n=lo(e,t-1,r);return[a,n]}function ko(e,t,r){var a=(e[e.l++]&96)>>5;return e.l+=r.biff==2?6:r.biff==12?14:7,[a]}function Q0(e){var t=e[e.l+1]&1,r=1;return e.l+=4,[t,r]}function Eo(e,t,r){e.l+=2;for(var a=e.read_shift(r&&r.biff==2?1:2),n=[],i=0;i<=a;++i)n.push(e.read_shift(r&&r.biff==2?1:2));return n}function To(e,t,r){var a=e[e.l+1]&255?1:0;return e.l+=2,[a,e.read_shift(r&&r.biff==2?1:2)]}function So(e,t,r){var a=e[e.l+1]&255?1:0;return e.l+=2,[a,e.read_shift(r&&r.biff==2?1:2)]}function Fo(e){var t=e[e.l+1]&255?1:0;return e.l+=2,[t,e.read_shift(2)]}function yo(e,t,r){var a=e[e.l+1]&255?1:0;return e.l+=r&&r.biff==2?3:4,[a]}function di(e){var t=e.read_shift(1),r=e.read_shift(1);return[t,r]}function Ao(e){return e.read_shift(2),di(e,2)}function Co(e){return e.read_shift(2),di(e,2)}function Do(e,t,r){var a=(e[e.l]&96)>>5;e.l+=1;var n=xi(e,0,r);return[a,n]}function Oo(e,t,r){var a=(e[e.l]&96)>>5;e.l+=1;var n=xo(e,0,r);return[a,n]}function Io(e,t,r){var a=(e[e.l]&96)>>5;e.l+=1;var n=e.read_shift(2);r&&r.biff==5&&(e.l+=12);var i=xi(e,0,r);return[a,n,i]}function Ro(e,t,r){var a=(e[e.l]&96)>>5;e.l+=1;var n=e.read_shift(r&&r.biff<=3?1:2);return[Rl[n],mi[n],a]}function No(e,t,r){var a=e[e.l++],n=e.read_shift(1),i=r&&r.biff<=3?[a==88?-1:0,e.read_shift(1)]:bo(e);return[n,(i[0]===0?mi:Il)[i[1]]]}function bo(e){return[e[e.l+1]>>7,e.read_shift(2)&32767]}function Po(e,t,r){e.l+=r&&r.biff==2?3:4}function Lo(e,t,r){if(e.l++,r&&r.biff==12)return[e.read_shift(4,"i"),0];var a=e.read_shift(2),n=e.read_shift(r&&r.biff==2?1:2);return[a,n]}function Bo(e){return e.l++,Bt[e.read_shift(1)]}function Mo(e){return e.l++,e.read_shift(2)}function Uo(e){return e.l++,e.read_shift(1)!==0}function Wo(e){return e.l++,mt(e,8)}function Ho(e,t,r){return e.l++,Jn(e,t-1,r)}function Vo(e,t){var r=[e.read_shift(1)];if(t==12)switch(r[0]){case 2:r[0]=4;break;case 4:r[0]=16;break;case 0:r[0]=1;break;case 1:r[0]=2;break}switch(r[0]){case 4:r[1]=Of(e,1)?"TRUE":"FALSE",t!=12&&(e.l+=7);break;case 37:case 16:r[1]=Bt[e[e.l]],e.l+=t==12?4:8;break;case 0:e.l+=8;break;case 1:r[1]=mt(e,8);break;case 2:r[1]=bf(e,0,{biff:t>0&&t<8?2:t});break;default:throw new Error("Bad SerAr: "+r[0])}return r}function Xo(e,t,r){for(var a=e.read_shift(r.biff==12?4:2),n=[],i=0;i!=a;++i)n.push((r.biff==12?Qr:Bf)(e,8));return n}function Go(e,t,r){var a=0,n=0;r.biff==12?(a=e.read_shift(4),n=e.read_shift(4)):(n=1+e.read_shift(1),a=1+e.read_shift(2)),r.biff>=2&&r.biff<8&&(--a,--n==0&&(n=256));for(var i=0,s=[];i!=a&&(s[i]=[]);++i)for(var f=0;f!=n;++f)s[i][f]=Vo(e,r.biff);return s}function zo(e,t,r){var a=e.read_shift(1)>>>5&3,n=!r||r.biff>=8?4:2,i=e.read_shift(n);switch(r.biff){case 2:e.l+=5;break;case 3:case 4:e.l+=8;break;case 5:e.l+=12;break}return[a,0,i]}function \$o(e,t,r){if(r.biff==5)return Ko(e,t,r);var a=e.read_shift(1)>>>5&3,n=e.read_shift(2),i=e.read_shift(4);return[a,n,i]}function Ko(e){var t=e.read_shift(1)>>>5&3,r=e.read_shift(2,"i");e.l+=8;var a=e.read_shift(2);return e.l+=12,[t,r,a]}function jo(e,t,r){var a=e.read_shift(1)>>>5&3;e.l+=r&&r.biff==2?3:4;var n=e.read_shift(r&&r.biff==2?1:2);return[a,n]}function Yo(e,t,r){var a=e.read_shift(1)>>>5&3,n=e.read_shift(r&&r.biff==2?1:2);return[a,n]}function Jo(e,t,r){var a=e.read_shift(1)>>>5&3;return e.l+=4,r.biff<8&&e.l--,r.biff==12&&(e.l+=2),[a]}function qo(e,t,r){var a=(e[e.l++]&96)>>5,n=e.read_shift(2),i=4;if(r)switch(r.biff){case 5:i=15;break;case 12:i=6;break}return e.l+=i,[a,n]}var Zo=Tr,Qo=Tr,el=Tr;function Mt(e,t,r){return e.l+=2,[ho(e,4,r)]}function n0(e){return e.l+=6,[]}var rl=Mt,tl=n0,al=n0,nl=Mt;function vi(e){return e.l+=2,[jn(e),e.read_shift(2)&1]}var il=Mt,sl=vi,fl=n0,cl=Mt,ol=Mt,ll=["Data","All","Headers","??","?Data2","??","?DataHeaders","??","Totals","??","??","??","?DataTotals","??","??","??","?Current"];function ul(e){e.l+=2;var t=e.read_shift(2),r=e.read_shift(2),a=e.read_shift(4),n=e.read_shift(2),i=e.read_shift(2),s=ll[r>>2&31];return{ixti:t,coltype:r&3,rt:s,idx:a,c:n,C:i}}function hl(e){return e.l+=2,[e.read_shift(4)]}function xl(e,t,r){return e.l+=5,e.l+=2,e.l+=r.biff==2?1:4,["PTGSHEET"]}function dl(e,t,r){return e.l+=r.biff==2?4:5,["PTGENDSHEET"]}function vl(e){var t=e.read_shift(1)>>>5&3,r=e.read_shift(2);return[t,r]}function pl(e){var t=e.read_shift(1)>>>5&3,r=e.read_shift(2);return[t,r]}function ml(e){return e.l+=4,[0,0]}var en={1:{n:"PtgExp",f:Lo},2:{n:"PtgTbl",f:el},3:{n:"PtgAdd",f:Ce},4:{n:"PtgSub",f:Ce},5:{n:"PtgMul",f:Ce},6:{n:"PtgDiv",f:Ce},7:{n:"PtgPower",f:Ce},8:{n:"PtgConcat",f:Ce},9:{n:"PtgLt",f:Ce},10:{n:"PtgLe",f:Ce},11:{n:"PtgEq",f:Ce},12:{n:"PtgGe",f:Ce},13:{n:"PtgGt",f:Ce},14:{n:"PtgNe",f:Ce},15:{n:"PtgIsect",f:Ce},16:{n:"PtgUnion",f:Ce},17:{n:"PtgRange",f:Ce},18:{n:"PtgUplus",f:Ce},19:{n:"PtgUminus",f:Ce},20:{n:"PtgPercent",f:Ce},21:{n:"PtgParen",f:Ce},22:{n:"PtgMissArg",f:Ce},23:{n:"PtgStr",f:Ho},26:{n:"PtgSheet",f:xl},27:{n:"PtgEndSheet",f:dl},28:{n:"PtgErr",f:Bo},29:{n:"PtgBool",f:Uo},30:{n:"PtgInt",f:Mo},31:{n:"PtgNum",f:Wo},32:{n:"PtgArray",f:ko},33:{n:"PtgFunc",f:Ro},34:{n:"PtgFuncVar",f:No},35:{n:"PtgName",f:zo},36:{n:"PtgRef",f:Do},37:{n:"PtgArea",f:po},38:{n:"PtgMemArea",f:jo},39:{n:"PtgMemErr",f:Zo},40:{n:"PtgMemNoMem",f:Qo},41:{n:"PtgMemFunc",f:Yo},42:{n:"PtgRefErr",f:Jo},43:{n:"PtgAreaErr",f:go},44:{n:"PtgRefN",f:Oo},45:{n:"PtgAreaN",f:wo},46:{n:"PtgMemAreaN",f:vl},47:{n:"PtgMemNoMemN",f:pl},57:{n:"PtgNameX",f:\$o},58:{n:"PtgRef3d",f:Io},59:{n:"PtgArea3d",f:mo},60:{n:"PtgRefErr3d",f:qo},61:{n:"PtgAreaErr3d",f:_o},255:{}},gl={64:32,96:32,65:33,97:33,66:34,98:34,67:35,99:35,68:36,100:36,69:37,101:37,70:38,102:38,71:39,103:39,72:40,104:40,73:41,105:41,74:42,106:42,75:43,107:43,76:44,108:44,77:45,109:45,78:46,110:46,79:47,111:47,88:34,120:34,89:57,121:57,90:58,122:58,91:59,123:59,92:60,124:60,93:61,125:61},_l={1:{n:"PtgElfLel",f:vi},2:{n:"PtgElfRw",f:cl},3:{n:"PtgElfCol",f:rl},6:{n:"PtgElfRwV",f:ol},7:{n:"PtgElfColV",f:nl},10:{n:"PtgElfRadical",f:il},11:{n:"PtgElfRadicalS",f:fl},13:{n:"PtgElfColS",f:tl},15:{n:"PtgElfColSV",f:al},16:{n:"PtgElfRadicalLel",f:sl},25:{n:"PtgList",f:ul},29:{n:"PtgSxName",f:hl},255:{}},wl={0:{n:"PtgAttrNoop",f:ml},1:{n:"PtgAttrSemi",f:yo},2:{n:"PtgAttrIf",f:So},4:{n:"PtgAttrChoose",f:Eo},8:{n:"PtgAttrGoto",f:To},16:{n:"PtgAttrSum",f:Po},32:{n:"PtgAttrBaxcel",f:Q0},33:{n:"PtgAttrBaxcel",f:Q0},64:{n:"PtgAttrSpace",f:Ao},65:{n:"PtgAttrSpaceSemi",f:Co},128:{n:"PtgAttrIfError",f:Fo},255:{}};function kl(e,t,r,a){if(a.biff<8)return Tr(e,t);for(var n=e.l+t,i=[],s=0;s!==r.length;++s)switch(r[s][0]){case"PtgArray":r[s][1]=Go(e,0,a),i.push(r[s][1]);break;case"PtgMemArea":r[s][2]=Xo(e,r[s][1],a),i.push(r[s][2]);break;case"PtgExp":a&&a.biff==12&&(r[s][1][1]=e.read_shift(4),i.push(r[s][1]));break;case"PtgList":case"PtgElfRadicalS":case"PtgElfColS":case"PtgElfColSV":throw"Unsupported "+r[s][0];default:break}return t=n-e.l,t!==0&&i.push(Tr(e,t)),i}function El(e,t,r){for(var a=e.l+t,n,i,s=[];a!=e.l;)t=a-e.l,i=e[e.l],n=en[i]||en[gl[i]],(i===24||i===25)&&(n=(i===24?_l:wl)[e[e.l+1]]),!n||!n.f?Tr(e,t):s.push([n.n,n.f(e,t,r)]);return s}function Tl(e){for(var t=[],r=0;r<e.length;++r){for(var a=e[r],n=[],i=0;i<a.length;++i){var s=a[i];s?s[0]===2?n.push('"'+s[1].replace(/"/g,'""')+'"'):n.push(s[1]):n.push("")}t.push(n.join(","))}return t.join(";")}var Sl={PtgAdd:"+",PtgConcat:"&",PtgDiv:"/",PtgEq:"=",PtgGe:">=",PtgGt:">",PtgLe:"<=",PtgLt:"<",PtgMul:"*",PtgNe:"<>",PtgPower:"^",PtgSub:"-"};function Fl(e,t){if(!e&&!(t&&t.biff<=5&&t.biff>=2))throw new Error("empty sheet name");return/[^\\w\\u4E00-\\u9FFF\\u3040-\\u30FF]/.test(e)?"'"+e+"'":e}function pi(e,t,r){if(!e)return"SH33TJSERR0";if(r.biff>8&&(!e.XTI||!e.XTI[t]))return e.SheetNames[t];if(!e.XTI)return"SH33TJSERR6";var a=e.XTI[t];if(r.biff<8)return t>1e4&&(t-=65536),t<0&&(t=-t),t==0?"":e.XTI[t-1];if(!a)return"SH33TJSERR1";var n="";if(r.biff>8)switch(e[a[0]][0]){case 357:return n=a[1]==-1?"#REF":e.SheetNames[a[1]],a[1]==a[2]?n:n+":"+e.SheetNames[a[2]];case 358:return r.SID!=null?e.SheetNames[r.SID]:"SH33TJSSAME"+e[a[0]][0];default:return"SH33TJSSRC"+e[a[0]][0]}switch(e[a[0]][0][0]){case 1025:return n=a[1]==-1?"#REF":e.SheetNames[a[1]]||"SH33TJSERR3",a[1]==a[2]?n:n+":"+e.SheetNames[a[2]];case 14849:return e[a[0]].slice(1).map(function(i){return i.Name}).join(";;");default:return e[a[0]][0][3]?(n=a[1]==-1?"#REF":e[a[0]][0][3][a[1]]||"SH33TJSERR4",a[1]==a[2]?n:n+":"+e[a[0]][0][3][a[2]]):"SH33TJSERR2"}}function rn(e,t,r){var a=pi(e,t,r);return a=="#REF"?a:Fl(a,r)}function ht(e,t,r,a,n){var i=n&&n.biff||8,s={s:{c:0,r:0},e:{c:0,r:0}},f=[],o,c,l,v=0,h=0,d,_="";if(!e[0]||!e[0][0])return"";for(var u=-1,g="",y=0,C=e[0].length;y<C;++y){var D=e[0][y];switch(D[0]){case"PtgUminus":f.push("-"+f.pop());break;case"PtgUplus":f.push("+"+f.pop());break;case"PtgPercent":f.push(f.pop()+"%");break;case"PtgAdd":case"PtgConcat":case"PtgDiv":case"PtgEq":case"PtgGe":case"PtgGt":case"PtgLe":case"PtgLt":case"PtgMul":case"PtgNe":case"PtgPower":case"PtgSub":if(o=f.pop(),c=f.pop(),u>=0){switch(e[0][u][1][0]){case 0:g=Fe(" ",e[0][u][1][1]);break;case 1:g=Fe("\\r",e[0][u][1][1]);break;default:if(g="",n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][u][1][0])}c=c+g,u=-1}f.push(c+Sl[D[0]]+o);break;case"PtgIsect":o=f.pop(),c=f.pop(),f.push(c+" "+o);break;case"PtgUnion":o=f.pop(),c=f.pop(),f.push(c+","+o);break;case"PtgRange":o=f.pop(),c=f.pop(),f.push(c+":"+o);break;case"PtgAttrChoose":break;case"PtgAttrGoto":break;case"PtgAttrIf":break;case"PtgAttrIfError":break;case"PtgRef":l=Ft(D[1][1],s,n),f.push(yt(l,i));break;case"PtgRefN":l=r?Ft(D[1][1],r,n):D[1][1],f.push(yt(l,i));break;case"PtgRef3d":v=D[1][1],l=Ft(D[1][2],s,n),_=rn(a,v,n);var B=_;f.push(_+"!"+yt(l,i));break;case"PtgFunc":case"PtgFuncVar":var G=D[1][0],te=D[1][1];G||(G=0),G&=127;var A=G==0?[]:f.slice(-G);f.length-=G,te==="User"&&(te=A.shift()),f.push(te+"("+A.join(",")+")");break;case"PtgBool":f.push(D[1]?"TRUE":"FALSE");break;case"PtgInt":f.push(D[1]);break;case"PtgNum":f.push(String(D[1]));break;case"PtgStr":f.push('"'+D[1].replace(/"/g,'""')+'"');break;case"PtgErr":f.push(D[1]);break;case"PtgAreaN":d=U0(D[1][1],r?{s:r}:s,n),f.push(Aa(d,n));break;case"PtgArea":d=U0(D[1][1],s,n),f.push(Aa(d,n));break;case"PtgArea3d":v=D[1][1],d=D[1][2],_=rn(a,v,n),f.push(_+"!"+Aa(d,n));break;case"PtgAttrSum":f.push("SUM("+f.pop()+")");break;case"PtgAttrBaxcel":case"PtgAttrSemi":break;case"PtgName":h=D[1][2];var W=(a.names||[])[h-1]||(a[0]||[])[h],L=W?W.Name:"SH33TJSNAME"+String(h);L&&L.slice(0,6)=="_xlfn."&&!n.xlfn&&(L=L.slice(6)),f.push(L);break;case"PtgNameX":var U=D[1][1];h=D[1][2];var X;if(n.biff<=5)U<0&&(U=-U),a[U]&&(X=a[U][h]);else{var z="";if(((a[U]||[])[0]||[])[0]==14849||(((a[U]||[])[0]||[])[0]==1025?a[U][h]&&a[U][h].itab>0&&(z=a.SheetNames[a[U][h].itab-1]+"!"):z=a.SheetNames[h-1]+"!"),a[U]&&a[U][h])z+=a[U][h].Name;else if(a[0]&&a[0][h])z+=a[0][h].Name;else{var ie=(pi(a,U,n)||"").split(";;");ie[h-1]?z=ie[h-1]:z+="SH33TJSERRX"}f.push(z);break}X||(X={Name:"SH33TJSERRY"}),f.push(X.Name);break;case"PtgParen":var de="(",se=")";if(u>=0){switch(g="",e[0][u][1][0]){case 2:de=Fe(" ",e[0][u][1][1])+de;break;case 3:de=Fe("\\r",e[0][u][1][1])+de;break;case 4:se=Fe(" ",e[0][u][1][1])+se;break;case 5:se=Fe("\\r",e[0][u][1][1])+se;break;default:if(n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][u][1][0])}u=-1}f.push(de+f.pop()+se);break;case"PtgRefErr":f.push("#REF!");break;case"PtgRefErr3d":f.push("#REF!");break;case"PtgExp":l={c:D[1][1],r:D[1][0]};var Re={c:r.c,r:r.r};if(a.sharedf[ge(l)]){var Ne=a.sharedf[ge(l)];f.push(ht(Ne,s,Re,a,n))}else{var Ze=!1;for(o=0;o!=a.arrayf.length;++o)if(c=a.arrayf[o],!(l.c<c[0].s.c||l.c>c[0].e.c)&&!(l.r<c[0].s.r||l.r>c[0].e.r)){f.push(ht(c[1],s,Re,a,n)),Ze=!0;break}Ze||f.push(D[1])}break;case"PtgArray":f.push("{"+Tl(D[1])+"}");break;case"PtgMemArea":break;case"PtgAttrSpace":case"PtgAttrSpaceSemi":u=y;break;case"PtgTbl":break;case"PtgMemErr":break;case"PtgMissArg":f.push("");break;case"PtgAreaErr":f.push("#REF!");break;case"PtgAreaErr3d":f.push("#REF!");break;case"PtgList":f.push("Table"+D[1].idx+"[#"+D[1].rt+"]");break;case"PtgMemAreaN":case"PtgMemNoMemN":case"PtgAttrNoop":case"PtgSheet":case"PtgEndSheet":break;case"PtgMemFunc":break;case"PtgMemNoMem":break;case"PtgElfCol":case"PtgElfColS":case"PtgElfColSV":case"PtgElfColV":case"PtgElfLel":case"PtgElfRadical":case"PtgElfRadicalLel":case"PtgElfRadicalS":case"PtgElfRw":case"PtgElfRwV":throw new Error("Unsupported ELFs");case"PtgSxName":throw new Error("Unrecognized Formula Token: "+String(D));default:throw new Error("Unrecognized Formula Token: "+String(D))}var je=["PtgAttrSpace","PtgAttrSpaceSemi","PtgAttrGoto"];if(n.biff!=3&&u>=0&&je.indexOf(e[0][y][0])==-1){D=e[0][u];var Me=!0;switch(D[1][0]){case 4:Me=!1;case 0:g=Fe(" ",D[1][1]);break;case 5:Me=!1;case 1:g=Fe("\\r",D[1][1]);break;default:if(g="",n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+D[1][0])}f.push((Me?g:"")+f.pop()+(Me?"":g)),u=-1}}if(f.length>1&&n.WTF)throw new Error("bad formula stack");return f[0]}function yl(e){if(e==null){var t=b(8);return t.write_shift(1,3),t.write_shift(1,0),t.write_shift(2,0),t.write_shift(2,0),t.write_shift(2,65535),t}else if(typeof e=="number")return Kr(e);return Kr(0)}function Al(e,t,r,a,n){var i=jr(t,r,n),s=yl(e.v),f=b(6),o=33;f.write_shift(2,o),f.write_shift(4,0);for(var c=b(e.bf.length),l=0;l<e.bf.length;++l)c[l]=e.bf[l];var v=Ve([i,s,f,c]);return v}function pa(e,t,r){var a=e.read_shift(4),n=El(e,a,r),i=e.read_shift(4),s=i>0?kl(e,i,n,r):null;return[n,s]}var Cl=pa,ma=pa,Dl=pa,Ol=pa,Il={0:"BEEP",1:"OPEN",2:"OPEN.LINKS",3:"CLOSE.ALL",4:"SAVE",5:"SAVE.AS",6:"FILE.DELETE",7:"PAGE.SETUP",8:"PRINT",9:"PRINTER.SETUP",10:"QUIT",11:"NEW.WINDOW",12:"ARRANGE.ALL",13:"WINDOW.SIZE",14:"WINDOW.MOVE",15:"FULL",16:"CLOSE",17:"RUN",22:"SET.PRINT.AREA",23:"SET.PRINT.TITLES",24:"SET.PAGE.BREAK",25:"REMOVE.PAGE.BREAK",26:"FONT",27:"DISPLAY",28:"PROTECT.DOCUMENT",29:"PRECISION",30:"A1.R1C1",31:"CALCULATE.NOW",32:"CALCULATION",34:"DATA.FIND",35:"EXTRACT",36:"DATA.DELETE",37:"SET.DATABASE",38:"SET.CRITERIA",39:"SORT",40:"DATA.SERIES",41:"TABLE",42:"FORMAT.NUMBER",43:"ALIGNMENT",44:"STYLE",45:"BORDER",46:"CELL.PROTECTION",47:"COLUMN.WIDTH",48:"UNDO",49:"CUT",50:"COPY",51:"PASTE",52:"CLEAR",53:"PASTE.SPECIAL",54:"EDIT.DELETE",55:"INSERT",56:"FILL.RIGHT",57:"FILL.DOWN",61:"DEFINE.NAME",62:"CREATE.NAMES",63:"FORMULA.GOTO",64:"FORMULA.FIND",65:"SELECT.LAST.CELL",66:"SHOW.ACTIVE.CELL",67:"GALLERY.AREA",68:"GALLERY.BAR",69:"GALLERY.COLUMN",70:"GALLERY.LINE",71:"GALLERY.PIE",72:"GALLERY.SCATTER",73:"COMBINATION",74:"PREFERRED",75:"ADD.OVERLAY",76:"GRIDLINES",77:"SET.PREFERRED",78:"AXES",79:"LEGEND",80:"ATTACH.TEXT",81:"ADD.ARROW",82:"SELECT.CHART",83:"SELECT.PLOT.AREA",84:"PATTERNS",85:"MAIN.CHART",86:"OVERLAY",87:"SCALE",88:"FORMAT.LEGEND",89:"FORMAT.TEXT",90:"EDIT.REPEAT",91:"PARSE",92:"JUSTIFY",93:"HIDE",94:"UNHIDE",95:"WORKSPACE",96:"FORMULA",97:"FORMULA.FILL",98:"FORMULA.ARRAY",99:"DATA.FIND.NEXT",100:"DATA.FIND.PREV",101:"FORMULA.FIND.NEXT",102:"FORMULA.FIND.PREV",103:"ACTIVATE",104:"ACTIVATE.NEXT",105:"ACTIVATE.PREV",106:"UNLOCKED.NEXT",107:"UNLOCKED.PREV",108:"COPY.PICTURE",109:"SELECT",110:"DELETE.NAME",111:"DELETE.FORMAT",112:"VLINE",113:"HLINE",114:"VPAGE",115:"HPAGE",116:"VSCROLL",117:"HSCROLL",118:"ALERT",119:"NEW",120:"CANCEL.COPY",121:"SHOW.CLIPBOARD",122:"MESSAGE",124:"PASTE.LINK",125:"APP.ACTIVATE",126:"DELETE.ARROW",127:"ROW.HEIGHT",128:"FORMAT.MOVE",129:"FORMAT.SIZE",130:"FORMULA.REPLACE",131:"SEND.KEYS",132:"SELECT.SPECIAL",133:"APPLY.NAMES",134:"REPLACE.FONT",135:"FREEZE.PANES",136:"SHOW.INFO",137:"SPLIT",138:"ON.WINDOW",139:"ON.DATA",140:"DISABLE.INPUT",142:"OUTLINE",143:"LIST.NAMES",144:"FILE.CLOSE",145:"SAVE.WORKBOOK",146:"DATA.FORM",147:"COPY.CHART",148:"ON.TIME",149:"WAIT",150:"FORMAT.FONT",151:"FILL.UP",152:"FILL.LEFT",153:"DELETE.OVERLAY",155:"SHORT.MENUS",159:"SET.UPDATE.STATUS",161:"COLOR.PALETTE",162:"DELETE.STYLE",163:"WINDOW.RESTORE",164:"WINDOW.MAXIMIZE",166:"CHANGE.LINK",167:"CALCULATE.DOCUMENT",168:"ON.KEY",169:"APP.RESTORE",170:"APP.MOVE",171:"APP.SIZE",172:"APP.MINIMIZE",173:"APP.MAXIMIZE",174:"BRING.TO.FRONT",175:"SEND.TO.BACK",185:"MAIN.CHART.TYPE",186:"OVERLAY.CHART.TYPE",187:"SELECT.END",188:"OPEN.MAIL",189:"SEND.MAIL",190:"STANDARD.FONT",191:"CONSOLIDATE",192:"SORT.SPECIAL",193:"GALLERY.3D.AREA",194:"GALLERY.3D.COLUMN",195:"GALLERY.3D.LINE",196:"GALLERY.3D.PIE",197:"VIEW.3D",198:"GOAL.SEEK",199:"WORKGROUP",200:"FILL.GROUP",201:"UPDATE.LINK",202:"PROMOTE",203:"DEMOTE",204:"SHOW.DETAIL",206:"UNGROUP",207:"OBJECT.PROPERTIES",208:"SAVE.NEW.OBJECT",209:"SHARE",210:"SHARE.NAME",211:"DUPLICATE",212:"APPLY.STYLE",213:"ASSIGN.TO.OBJECT",214:"OBJECT.PROTECTION",215:"HIDE.OBJECT",216:"SET.EXTRACT",217:"CREATE.PUBLISHER",218:"SUBSCRIBE.TO",219:"ATTRIBUTES",220:"SHOW.TOOLBAR",222:"PRINT.PREVIEW",223:"EDIT.COLOR",224:"SHOW.LEVELS",225:"FORMAT.MAIN",226:"FORMAT.OVERLAY",227:"ON.RECALC",228:"EDIT.SERIES",229:"DEFINE.STYLE",240:"LINE.PRINT",243:"ENTER.DATA",249:"GALLERY.RADAR",250:"MERGE.STYLES",251:"EDITION.OPTIONS",252:"PASTE.PICTURE",253:"PASTE.PICTURE.LINK",254:"SPELLING",256:"ZOOM",259:"INSERT.OBJECT",260:"WINDOW.MINIMIZE",265:"SOUND.NOTE",266:"SOUND.PLAY",267:"FORMAT.SHAPE",268:"EXTEND.POLYGON",269:"FORMAT.AUTO",272:"GALLERY.3D.BAR",273:"GALLERY.3D.SURFACE",274:"FILL.AUTO",276:"CUSTOMIZE.TOOLBAR",277:"ADD.TOOL",278:"EDIT.OBJECT",279:"ON.DOUBLECLICK",280:"ON.ENTRY",281:"WORKBOOK.ADD",282:"WORKBOOK.MOVE",283:"WORKBOOK.COPY",284:"WORKBOOK.OPTIONS",285:"SAVE.WORKSPACE",288:"CHART.WIZARD",289:"DELETE.TOOL",290:"MOVE.TOOL",291:"WORKBOOK.SELECT",292:"WORKBOOK.ACTIVATE",293:"ASSIGN.TO.TOOL",295:"COPY.TOOL",296:"RESET.TOOL",297:"CONSTRAIN.NUMERIC",298:"PASTE.TOOL",302:"WORKBOOK.NEW",305:"SCENARIO.CELLS",306:"SCENARIO.DELETE",307:"SCENARIO.ADD",308:"SCENARIO.EDIT",309:"SCENARIO.SHOW",310:"SCENARIO.SHOW.NEXT",311:"SCENARIO.SUMMARY",312:"PIVOT.TABLE.WIZARD",313:"PIVOT.FIELD.PROPERTIES",314:"PIVOT.FIELD",315:"PIVOT.ITEM",316:"PIVOT.ADD.FIELDS",318:"OPTIONS.CALCULATION",319:"OPTIONS.EDIT",320:"OPTIONS.VIEW",321:"ADDIN.MANAGER",322:"MENU.EDITOR",323:"ATTACH.TOOLBARS",324:"VBAActivate",325:"OPTIONS.CHART",328:"VBA.INSERT.FILE",330:"VBA.PROCEDURE.DEFINITION",336:"ROUTING.SLIP",338:"ROUTE.DOCUMENT",339:"MAIL.LOGON",342:"INSERT.PICTURE",343:"EDIT.TOOL",344:"GALLERY.DOUGHNUT",350:"CHART.TREND",352:"PIVOT.ITEM.PROPERTIES",354:"WORKBOOK.INSERT",355:"OPTIONS.TRANSITION",356:"OPTIONS.GENERAL",370:"FILTER.ADVANCED",373:"MAIL.ADD.MAILER",374:"MAIL.DELETE.MAILER",375:"MAIL.REPLY",376:"MAIL.REPLY.ALL",377:"MAIL.FORWARD",378:"MAIL.NEXT.LETTER",379:"DATA.LABEL",380:"INSERT.TITLE",381:"FONT.PROPERTIES",382:"MACRO.OPTIONS",383:"WORKBOOK.HIDE",384:"WORKBOOK.UNHIDE",385:"WORKBOOK.DELETE",386:"WORKBOOK.NAME",388:"GALLERY.CUSTOM",390:"ADD.CHART.AUTOFORMAT",391:"DELETE.CHART.AUTOFORMAT",392:"CHART.ADD.DATA",393:"AUTO.OUTLINE",394:"TAB.ORDER",395:"SHOW.DIALOG",396:"SELECT.ALL",397:"UNGROUP.SHEETS",398:"SUBTOTAL.CREATE",399:"SUBTOTAL.REMOVE",400:"RENAME.OBJECT",412:"WORKBOOK.SCROLL",413:"WORKBOOK.NEXT",414:"WORKBOOK.PREV",415:"WORKBOOK.TAB.SPLIT",416:"FULL.SCREEN",417:"WORKBOOK.PROTECT",420:"SCROLLBAR.PROPERTIES",421:"PIVOT.SHOW.PAGES",422:"TEXT.TO.COLUMNS",423:"FORMAT.CHARTTYPE",424:"LINK.FORMAT",425:"TRACER.DISPLAY",430:"TRACER.NAVIGATE",431:"TRACER.CLEAR",432:"TRACER.ERROR",433:"PIVOT.FIELD.GROUP",434:"PIVOT.FIELD.UNGROUP",435:"CHECKBOX.PROPERTIES",436:"LABEL.PROPERTIES",437:"LISTBOX.PROPERTIES",438:"EDITBOX.PROPERTIES",439:"PIVOT.REFRESH",440:"LINK.COMBO",441:"OPEN.TEXT",442:"HIDE.DIALOG",443:"SET.DIALOG.FOCUS",444:"ENABLE.OBJECT",445:"PUSHBUTTON.PROPERTIES",446:"SET.DIALOG.DEFAULT",447:"FILTER",448:"FILTER.SHOW.ALL",449:"CLEAR.OUTLINE",450:"FUNCTION.WIZARD",451:"ADD.LIST.ITEM",452:"SET.LIST.ITEM",453:"REMOVE.LIST.ITEM",454:"SELECT.LIST.ITEM",455:"SET.CONTROL.VALUE",456:"SAVE.COPY.AS",458:"OPTIONS.LISTS.ADD",459:"OPTIONS.LISTS.DELETE",460:"SERIES.AXES",461:"SERIES.X",462:"SERIES.Y",463:"ERRORBAR.X",464:"ERRORBAR.Y",465:"FORMAT.CHART",466:"SERIES.ORDER",467:"MAIL.LOGOFF",468:"CLEAR.ROUTING.SLIP",469:"APP.ACTIVATE.MICROSOFT",470:"MAIL.EDIT.MAILER",471:"ON.SHEET",472:"STANDARD.WIDTH",473:"SCENARIO.MERGE",474:"SUMMARY.INFO",475:"FIND.FILE",476:"ACTIVE.CELL.FONT",477:"ENABLE.TIPWIZARD",478:"VBA.MAKE.ADDIN",480:"INSERTDATATABLE",481:"WORKGROUP.OPTIONS",482:"MAIL.SEND.MAILER",485:"AUTOCORRECT",489:"POST.DOCUMENT",491:"PICKLIST",493:"VIEW.SHOW",494:"VIEW.DEFINE",495:"VIEW.DELETE",509:"SHEET.BACKGROUND",510:"INSERT.MAP.OBJECT",511:"OPTIONS.MENONO",517:"MSOCHECKS",518:"NORMAL",519:"LAYOUT",520:"RM.PRINT.AREA",521:"CLEAR.PRINT.AREA",522:"ADD.PRINT.AREA",523:"MOVE.BRK",545:"HIDECURR.NOTE",546:"HIDEALL.NOTES",547:"DELETE.NOTE",548:"TRAVERSE.NOTES",549:"ACTIVATE.NOTES",620:"PROTECT.REVISIONS",621:"UNPROTECT.REVISIONS",647:"OPTIONS.ME",653:"WEB.PUBLISH",667:"NEWWEBQUERY",673:"PIVOT.TABLE.CHART",753:"OPTIONS.SAVE",755:"OPTIONS.SPELL",808:"HIDEALL.INKANNOTS"},mi={0:"COUNT",1:"IF",2:"ISNA",3:"ISERROR",4:"SUM",5:"AVERAGE",6:"MIN",7:"MAX",8:"ROW",9:"COLUMN",10:"NA",11:"NPV",12:"STDEV",13:"DOLLAR",14:"FIXED",15:"SIN",16:"COS",17:"TAN",18:"ATAN",19:"PI",20:"SQRT",21:"EXP",22:"LN",23:"LOG10",24:"ABS",25:"INT",26:"SIGN",27:"ROUND",28:"LOOKUP",29:"INDEX",30:"REPT",31:"MID",32:"LEN",33:"VALUE",34:"TRUE",35:"FALSE",36:"AND",37:"OR",38:"NOT",39:"MOD",40:"DCOUNT",41:"DSUM",42:"DAVERAGE",43:"DMIN",44:"DMAX",45:"DSTDEV",46:"VAR",47:"DVAR",48:"TEXT",49:"LINEST",50:"TREND",51:"LOGEST",52:"GROWTH",53:"GOTO",54:"HALT",55:"RETURN",56:"PV",57:"FV",58:"NPER",59:"PMT",60:"RATE",61:"MIRR",62:"IRR",63:"RAND",64:"MATCH",65:"DATE",66:"TIME",67:"DAY",68:"MONTH",69:"YEAR",70:"WEEKDAY",71:"HOUR",72:"MINUTE",73:"SECOND",74:"NOW",75:"AREAS",76:"ROWS",77:"COLUMNS",78:"OFFSET",79:"ABSREF",80:"RELREF",81:"ARGUMENT",82:"SEARCH",83:"TRANSPOSE",84:"ERROR",85:"STEP",86:"TYPE",87:"ECHO",88:"SET.NAME",89:"CALLER",90:"DEREF",91:"WINDOWS",92:"SERIES",93:"DOCUMENTS",94:"ACTIVE.CELL",95:"SELECTION",96:"RESULT",97:"ATAN2",98:"ASIN",99:"ACOS",100:"CHOOSE",101:"HLOOKUP",102:"VLOOKUP",103:"LINKS",104:"INPUT",105:"ISREF",106:"GET.FORMULA",107:"GET.NAME",108:"SET.VALUE",109:"LOG",110:"EXEC",111:"CHAR",112:"LOWER",113:"UPPER",114:"PROPER",115:"LEFT",116:"RIGHT",117:"EXACT",118:"TRIM",119:"REPLACE",120:"SUBSTITUTE",121:"CODE",122:"NAMES",123:"DIRECTORY",124:"FIND",125:"CELL",126:"ISERR",127:"ISTEXT",128:"ISNUMBER",129:"ISBLANK",130:"T",131:"N",132:"FOPEN",133:"FCLOSE",134:"FSIZE",135:"FREADLN",136:"FREAD",137:"FWRITELN",138:"FWRITE",139:"FPOS",140:"DATEVALUE",141:"TIMEVALUE",142:"SLN",143:"SYD",144:"DDB",145:"GET.DEF",146:"REFTEXT",147:"TEXTREF",148:"INDIRECT",149:"REGISTER",150:"CALL",151:"ADD.BAR",152:"ADD.MENU",153:"ADD.COMMAND",154:"ENABLE.COMMAND",155:"CHECK.COMMAND",156:"RENAME.COMMAND",157:"SHOW.BAR",158:"DELETE.MENU",159:"DELETE.COMMAND",160:"GET.CHART.ITEM",161:"DIALOG.BOX",162:"CLEAN",163:"MDETERM",164:"MINVERSE",165:"MMULT",166:"FILES",167:"IPMT",168:"PPMT",169:"COUNTA",170:"CANCEL.KEY",171:"FOR",172:"WHILE",173:"BREAK",174:"NEXT",175:"INITIATE",176:"REQUEST",177:"POKE",178:"EXECUTE",179:"TERMINATE",180:"RESTART",181:"HELP",182:"GET.BAR",183:"PRODUCT",184:"FACT",185:"GET.CELL",186:"GET.WORKSPACE",187:"GET.WINDOW",188:"GET.DOCUMENT",189:"DPRODUCT",190:"ISNONTEXT",191:"GET.NOTE",192:"NOTE",193:"STDEVP",194:"VARP",195:"DSTDEVP",196:"DVARP",197:"TRUNC",198:"ISLOGICAL",199:"DCOUNTA",200:"DELETE.BAR",201:"UNREGISTER",204:"USDOLLAR",205:"FINDB",206:"SEARCHB",207:"REPLACEB",208:"LEFTB",209:"RIGHTB",210:"MIDB",211:"LENB",212:"ROUNDUP",213:"ROUNDDOWN",214:"ASC",215:"DBCS",216:"RANK",219:"ADDRESS",220:"DAYS360",221:"TODAY",222:"VDB",223:"ELSE",224:"ELSE.IF",225:"END.IF",226:"FOR.CELL",227:"MEDIAN",228:"SUMPRODUCT",229:"SINH",230:"COSH",231:"TANH",232:"ASINH",233:"ACOSH",234:"ATANH",235:"DGET",236:"CREATE.OBJECT",237:"VOLATILE",238:"LAST.ERROR",239:"CUSTOM.UNDO",240:"CUSTOM.REPEAT",241:"FORMULA.CONVERT",242:"GET.LINK.INFO",243:"TEXT.BOX",244:"INFO",245:"GROUP",246:"GET.OBJECT",247:"DB",248:"PAUSE",251:"RESUME",252:"FREQUENCY",253:"ADD.TOOLBAR",254:"DELETE.TOOLBAR",255:"User",256:"RESET.TOOLBAR",257:"EVALUATE",258:"GET.TOOLBAR",259:"GET.TOOL",260:"SPELLING.CHECK",261:"ERROR.TYPE",262:"APP.TITLE",263:"WINDOW.TITLE",264:"SAVE.TOOLBAR",265:"ENABLE.TOOL",266:"PRESS.TOOL",267:"REGISTER.ID",268:"GET.WORKBOOK",269:"AVEDEV",270:"BETADIST",271:"GAMMALN",272:"BETAINV",273:"BINOMDIST",274:"CHIDIST",275:"CHIINV",276:"COMBIN",277:"CONFIDENCE",278:"CRITBINOM",279:"EVEN",280:"EXPONDIST",281:"FDIST",282:"FINV",283:"FISHER",284:"FISHERINV",285:"FLOOR",286:"GAMMADIST",287:"GAMMAINV",288:"CEILING",289:"HYPGEOMDIST",290:"LOGNORMDIST",291:"LOGINV",292:"NEGBINOMDIST",293:"NORMDIST",294:"NORMSDIST",295:"NORMINV",296:"NORMSINV",297:"STANDARDIZE",298:"ODD",299:"PERMUT",300:"POISSON",301:"TDIST",302:"WEIBULL",303:"SUMXMY2",304:"SUMX2MY2",305:"SUMX2PY2",306:"CHITEST",307:"CORREL",308:"COVAR",309:"FORECAST",310:"FTEST",311:"INTERCEPT",312:"PEARSON",313:"RSQ",314:"STEYX",315:"SLOPE",316:"TTEST",317:"PROB",318:"DEVSQ",319:"GEOMEAN",320:"HARMEAN",321:"SUMSQ",322:"KURT",323:"SKEW",324:"ZTEST",325:"LARGE",326:"SMALL",327:"QUARTILE",328:"PERCENTILE",329:"PERCENTRANK",330:"MODE",331:"TRIMMEAN",332:"TINV",334:"MOVIE.COMMAND",335:"GET.MOVIE",336:"CONCATENATE",337:"POWER",338:"PIVOT.ADD.DATA",339:"GET.PIVOT.TABLE",340:"GET.PIVOT.FIELD",341:"GET.PIVOT.ITEM",342:"RADIANS",343:"DEGREES",344:"SUBTOTAL",345:"SUMIF",346:"COUNTIF",347:"COUNTBLANK",348:"SCENARIO.GET",349:"OPTIONS.LISTS.GET",350:"ISPMT",351:"DATEDIF",352:"DATESTRING",353:"NUMBERSTRING",354:"ROMAN",355:"OPEN.DIALOG",356:"SAVE.DIALOG",357:"VIEW.GET",358:"GETPIVOTDATA",359:"HYPERLINK",360:"PHONETIC",361:"AVERAGEA",362:"MAXA",363:"MINA",364:"STDEVPA",365:"VARPA",366:"STDEVA",367:"VARA",368:"BAHTTEXT",369:"THAIDAYOFWEEK",370:"THAIDIGIT",371:"THAIMONTHOFYEAR",372:"THAINUMSOUND",373:"THAINUMSTRING",374:"THAISTRINGLENGTH",375:"ISTHAIDIGIT",376:"ROUNDBAHTDOWN",377:"ROUNDBAHTUP",378:"THAIYEAR",379:"RTD",380:"CUBEVALUE",381:"CUBEMEMBER",382:"CUBEMEMBERPROPERTY",383:"CUBERANKEDMEMBER",384:"HEX2BIN",385:"HEX2DEC",386:"HEX2OCT",387:"DEC2BIN",388:"DEC2HEX",389:"DEC2OCT",390:"OCT2BIN",391:"OCT2HEX",392:"OCT2DEC",393:"BIN2DEC",394:"BIN2OCT",395:"BIN2HEX",396:"IMSUB",397:"IMDIV",398:"IMPOWER",399:"IMABS",400:"IMSQRT",401:"IMLN",402:"IMLOG2",403:"IMLOG10",404:"IMSIN",405:"IMCOS",406:"IMEXP",407:"IMARGUMENT",408:"IMCONJUGATE",409:"IMAGINARY",410:"IMREAL",411:"COMPLEX",412:"IMSUM",413:"IMPRODUCT",414:"SERIESSUM",415:"FACTDOUBLE",416:"SQRTPI",417:"QUOTIENT",418:"DELTA",419:"GESTEP",420:"ISEVEN",421:"ISODD",422:"MROUND",423:"ERF",424:"ERFC",425:"BESSELJ",426:"BESSELK",427:"BESSELY",428:"BESSELI",429:"XIRR",430:"XNPV",431:"PRICEMAT",432:"YIELDMAT",433:"INTRATE",434:"RECEIVED",435:"DISC",436:"PRICEDISC",437:"YIELDDISC",438:"TBILLEQ",439:"TBILLPRICE",440:"TBILLYIELD",441:"PRICE",442:"YIELD",443:"DOLLARDE",444:"DOLLARFR",445:"NOMINAL",446:"EFFECT",447:"CUMPRINC",448:"CUMIPMT",449:"EDATE",450:"EOMONTH",451:"YEARFRAC",452:"COUPDAYBS",453:"COUPDAYS",454:"COUPDAYSNC",455:"COUPNCD",456:"COUPNUM",457:"COUPPCD",458:"DURATION",459:"MDURATION",460:"ODDLPRICE",461:"ODDLYIELD",462:"ODDFPRICE",463:"ODDFYIELD",464:"RANDBETWEEN",465:"WEEKNUM",466:"AMORDEGRC",467:"AMORLINC",468:"CONVERT",724:"SHEETJS",469:"ACCRINT",470:"ACCRINTM",471:"WORKDAY",472:"NETWORKDAYS",473:"GCD",474:"MULTINOMIAL",475:"LCM",476:"FVSCHEDULE",477:"CUBEKPIMEMBER",478:"CUBESET",479:"CUBESETCOUNT",480:"IFERROR",481:"COUNTIFS",482:"SUMIFS",483:"AVERAGEIF",484:"AVERAGEIFS"},Rl={2:1,3:1,10:0,15:1,16:1,17:1,18:1,19:0,20:1,21:1,22:1,23:1,24:1,25:1,26:1,27:2,30:2,31:3,32:1,33:1,34:0,35:0,38:1,39:2,40:3,41:3,42:3,43:3,44:3,45:3,47:3,48:2,53:1,61:3,63:0,65:3,66:3,67:1,68:1,69:1,70:1,71:1,72:1,73:1,74:0,75:1,76:1,77:1,79:2,80:2,83:1,85:0,86:1,89:0,90:1,94:0,95:0,97:2,98:1,99:1,101:3,102:3,105:1,106:1,108:2,111:1,112:1,113:1,114:1,117:2,118:1,119:4,121:1,126:1,127:1,128:1,129:1,130:1,131:1,133:1,134:1,135:1,136:2,137:2,138:2,140:1,141:1,142:3,143:4,144:4,161:1,162:1,163:1,164:1,165:2,172:1,175:2,176:2,177:3,178:2,179:1,184:1,186:1,189:3,190:1,195:3,196:3,197:1,198:1,199:3,201:1,207:4,210:3,211:1,212:2,213:2,214:1,215:1,225:0,229:1,230:1,231:1,232:1,233:1,234:1,235:3,244:1,247:4,252:2,257:1,261:1,271:1,273:4,274:2,275:2,276:2,277:3,278:3,279:1,280:3,281:3,282:3,283:1,284:1,285:2,286:4,287:3,288:2,289:4,290:3,291:3,292:3,293:4,294:1,295:3,296:1,297:3,298:1,299:2,300:3,301:3,302:4,303:2,304:2,305:2,306:2,307:2,308:2,309:3,310:2,311:2,312:2,313:2,314:2,315:2,316:4,325:2,326:2,327:2,328:2,331:2,332:2,337:2,342:1,343:1,346:2,347:1,350:4,351:3,352:1,353:2,360:1,368:1,369:1,370:1,371:1,372:1,373:1,374:1,375:1,376:1,377:1,378:1,382:3,385:1,392:1,393:1,396:2,397:2,398:2,399:1,400:1,401:1,402:1,403:1,404:1,405:1,406:1,407:1,408:1,409:1,410:1,414:4,415:1,416:1,417:2,420:1,421:1,422:2,424:1,425:2,426:2,427:2,428:2,430:3,438:3,439:3,440:3,443:2,444:2,445:2,446:2,447:6,448:6,449:2,450:2,464:2,468:3,476:2,479:1,480:2,65535:0};function Nl(e){var t="of:="+e.replace(t0,"\$1[.\$2\$3\$4\$5]").replace(/\\]:\\[/g,":");return t.replace(/;/g,"|").replace(/,/g,";")}function bl(e){return e.replace(/\\./,"!")}var At=typeof Map<"u";function i0(e,t,r){var a=0,n=e.length;if(r){if(At?r.has(t):Object.prototype.hasOwnProperty.call(r,t)){for(var i=At?r.get(t):r[t];a<i.length;++a)if(e[i[a]].t===t)return e.Count++,i[a]}}else for(;a<n;++a)if(e[a].t===t)return e.Count++,a;return e[n]={t},e.Count++,e.Unique++,r&&(At?(r.has(t)||r.set(t,[]),r.get(t).push(n)):(Object.prototype.hasOwnProperty.call(r,t)||(r[t]=[]),r[t].push(n))),n}function ga(e,t){var r={min:e+1,max:e+1},a=-1;return t.MDW&&(Dr=t.MDW),t.width!=null?r.customWidth=1:t.wpx!=null?a=sa(t.wpx):t.wch!=null&&(a=t.wch),a>-1?(r.width=La(a),r.customWidth=1):t.width!=null&&(r.width=t.width),t.hidden&&(r.hidden=!0),t.level!=null&&(r.outlineLevel=r.level=t.level),r}function gi(e,t){if(e){var r=[.7,.7,.75,.75,.3,.3];t=="xlml"&&(r=[1,1,1,1,.5,.5]),e.left==null&&(e.left=r[0]),e.right==null&&(e.right=r[1]),e.top==null&&(e.top=r[2]),e.bottom==null&&(e.bottom=r[3]),e.header==null&&(e.header=r[4]),e.footer==null&&(e.footer=r[5])}}function Ur(e,t,r){var a=r.revssf[t.z!=null?t.z:"General"],n=60,i=e.length;if(a==null&&r.ssf){for(;n<392;++n)if(r.ssf[n]==null){gn(t.z,n),r.ssf[n]=t.z,r.revssf[t.z]=a=n;break}}for(n=0;n!=i;++n)if(e[n].numFmtId===a)return n;return e[i]={numFmtId:a,fontId:0,fillId:0,borderId:0,xfId:0,applyNumberFormat:1},i}function Pl(e,t,r){if(e&&e["!ref"]){var a=Te(e["!ref"]);if(a.e.c<a.s.c||a.e.r<a.s.r)throw new Error("Bad range ("+r+"): "+e["!ref"])}}function Ll(e){if(e.length===0)return"";for(var t='<mergeCells count="'+e.length+'">',r=0;r!=e.length;++r)t+='<mergeCell ref="'+De(e[r])+'"/>';return t+"</mergeCells>"}function Bl(e,t,r,a,n){var i=!1,s={},f=null;if(a.bookType!=="xlsx"&&t.vbaraw){var o=t.SheetNames[r];try{t.Workbook&&(o=t.Workbook.Sheets[r].CodeName||o)}catch{}i=!0,s.codeName=yr(me(o))}if(e&&e["!outline"]){var c={summaryBelow:1,summaryRight:1};e["!outline"].above&&(c.summaryBelow=0),e["!outline"].left&&(c.summaryRight=0),f=(f||"")+j("outlinePr",null,c)}!i&&!f||(n[n.length]=j("sheetPr",f,s))}var Ml=["objects","scenarios","selectLockedCells","selectUnlockedCells"],Ul=["formatColumns","formatRows","formatCells","insertColumns","insertRows","insertHyperlinks","deleteColumns","deleteRows","sort","autoFilter","pivotTables"];function Wl(e){var t={sheet:1};return Ml.forEach(function(r){e[r]!=null&&e[r]&&(t[r]="1")}),Ul.forEach(function(r){e[r]!=null&&!e[r]&&(t[r]="0")}),e.password&&(t.password=ri(e.password).toString(16).toUpperCase()),j("sheetProtection",null,t)}function Hl(e){return gi(e),j("pageMargins",null,e)}function Vl(e,t){for(var r=["<cols>"],a,n=0;n!=t.length;++n)(a=t[n])&&(r[r.length]=j("col",null,ga(n,a)));return r[r.length]="</cols>",r.join("")}function Xl(e,t,r,a){var n=typeof e.ref=="string"?e.ref:De(e.ref);r.Workbook||(r.Workbook={Sheets:[]}),r.Workbook.Names||(r.Workbook.Names=[]);var i=r.Workbook.Names,s=cr(n);s.s.r==s.e.r&&(s.e.r=cr(t["!ref"]).e.r,n=De(s));for(var f=0;f<i.length;++f){var o=i[f];if(o.Name=="_xlnm._FilterDatabase"&&o.Sheet==a){o.Ref="'"+r.SheetNames[a]+"'!"+n;break}}return f==i.length&&i.push({Name:"_xlnm._FilterDatabase",Sheet:a,Ref:"'"+r.SheetNames[a]+"'!"+n}),j("autoFilter",null,{ref:n})}function Gl(e,t,r,a){var n={workbookViewId:"0"};return(((a||{}).Workbook||{}).Views||[])[0]&&(n.rightToLeft=a.Workbook.Views[0].RTL?"1":"0"),j("sheetViews",j("sheetView",null,n),{})}function zl(e,t,r,a){if(e.c&&r["!comments"].push([t,e.c]),e.v===void 0&&typeof e.f!="string"||e.t==="z"&&!e.f)return"";var n="",i=e.t,s=e.v;if(e.t!=="z")switch(e.t){case"b":n=e.v?"1":"0";break;case"n":n=""+e.v;break;case"e":n=Bt[e.v];break;case"d":a&&a.cellDates?n=qe(e.v,-1).toISOString():(e=ar(e),e.t="n",n=""+(e.v=tr(qe(e.v)))),typeof e.z>"u"&&(e.z=ye[14]);break;default:n=e.v;break}var f=Xe("v",me(n)),o={r:t},c=Ur(a.cellXfs,e,a);switch(c!==0&&(o.s=c),e.t){case"n":break;case"d":o.t="d";break;case"b":o.t="b";break;case"e":o.t="e";break;case"z":break;default:if(e.v==null){delete e.t;break}if(e.v.length>32767)throw new Error("Text length must not exceed 32767 characters");if(a&&a.bookSST){f=Xe("v",""+i0(a.Strings,e.v,a.revStrings)),o.t="s";break}o.t="str";break}if(e.t!=i&&(e.t=i,e.v=s),typeof e.f=="string"&&e.f){var l=e.F&&e.F.slice(0,t.length)==t?{t:"array",ref:e.F}:null;f=j("f",me(e.f),l)+(e.v!=null?f:"")}return e.l&&r["!links"].push([t,e.l]),e.D&&(o.cm=1),j("c",f,o)}function \$l(e,t,r,a){var n=[],i=[],s=Te(e["!ref"]),f="",o,c="",l=[],v=0,h=0,d=e["!rows"],_=Array.isArray(e),u={r:c},g,y=-1;for(h=s.s.c;h<=s.e.c;++h)l[h]=\$e(h);for(v=s.s.r;v<=s.e.r;++v){for(i=[],c=Ge(v),h=s.s.c;h<=s.e.c;++h){o=l[h]+c;var C=_?(e[v]||[])[h]:e[o];C!==void 0&&(f=zl(C,o,e,t,r,a))!=null&&i.push(f)}(i.length>0||d&&d[v])&&(u={r:c},d&&d[v]&&(g=d[v],g.hidden&&(u.hidden=1),y=-1,g.hpx?y=fa(g.hpx):g.hpt&&(y=g.hpt),y>-1&&(u.ht=y,u.customHeight=1),g.level&&(u.outlineLevel=g.level)),n[n.length]=j("row",i.join(""),u))}if(d)for(;v<d.length;++v)d&&d[v]&&(u={r:v+1},g=d[v],g.hidden&&(u.hidden=1),y=-1,g.hpx?y=fa(g.hpx):g.hpt&&(y=g.hpt),y>-1&&(u.ht=y,u.customHeight=1),g.level&&(u.outlineLevel=g.level),n[n.length]=j("row","",u));return n.join("")}function _i(e,t,r,a){var n=[Oe,j("worksheet",null,{xmlns:xt[0],"xmlns:r":Pe.r})],i=r.SheetNames[e],s=0,f="",o=r.Sheets[i];o==null&&(o={});var c=o["!ref"]||"A1",l=Te(c);if(l.e.c>16383||l.e.r>1048575){if(t.WTF)throw new Error("Range "+c+" exceeds format limit A1:XFD1048576");l.e.c=Math.min(l.e.c,16383),l.e.r=Math.min(l.e.c,1048575),c=De(l)}a||(a={}),o["!comments"]=[];var v=[];Bl(o,r,e,t,n),n[n.length]=j("dimension",null,{ref:c}),n[n.length]=Gl(o,t,e,r),t.sheetFormat&&(n[n.length]=j("sheetFormatPr",null,{defaultRowHeight:t.sheetFormat.defaultRowHeight||"16",baseColWidth:t.sheetFormat.baseColWidth||"10",outlineLevelRow:t.sheetFormat.outlineLevelRow||"7"})),o["!cols"]!=null&&o["!cols"].length>0&&(n[n.length]=Vl(o,o["!cols"])),n[s=n.length]="<sheetData/>",o["!links"]=[],o["!ref"]!=null&&(f=\$l(o,t,e,r,a),f.length>0&&(n[n.length]=f)),n.length>s+1&&(n[n.length]="</sheetData>",n[s]=n[s].replace("/>",">")),o["!protect"]&&(n[n.length]=Wl(o["!protect"])),o["!autofilter"]!=null&&(n[n.length]=Xl(o["!autofilter"],o,r,e)),o["!merges"]!=null&&o["!merges"].length>0&&(n[n.length]=Ll(o["!merges"]));var h=-1,d,_=-1;return o["!links"].length>0&&(n[n.length]="<hyperlinks>",o["!links"].forEach(function(u){u[1].Target&&(d={ref:u[0]},u[1].Target.charAt(0)!="#"&&(_=pe(a,-1,me(u[1].Target).replace(/#.*\$/,""),he.HLINK),d["r:id"]="rId"+_),(h=u[1].Target.indexOf("#"))>-1&&(d.location=me(u[1].Target.slice(h+1))),u[1].Tooltip&&(d.tooltip=me(u[1].Tooltip)),n[n.length]=j("hyperlink",null,d))}),n[n.length]="</hyperlinks>"),delete o["!links"],o["!margins"]!=null&&(n[n.length]=Hl(o["!margins"])),(!t||t.ignoreEC||t.ignoreEC==null)&&(n[n.length]=Xe("ignoredErrors",j("ignoredError",null,{numberStoredAsText:1,sqref:c}))),v.length>0&&(_=pe(a,-1,"../drawings/drawing"+(e+1)+".xml",he.DRAW),n[n.length]=j("drawing",null,{"r:id":"rId"+_}),o["!drawing"]=v),o["!comments"].length>0&&(_=pe(a,-1,"../drawings/vmlDrawing"+(e+1)+".vml",he.VML),n[n.length]=j("legacyDrawing",null,{"r:id":"rId"+_}),o["!legacy"]=_),n.length>1&&(n[n.length]="</worksheet>",n[1]=n[1].replace("/>",">")),n.join("")}function Kl(e,t){var r={},a=e.l+t;r.r=e.read_shift(4),e.l+=4;var n=e.read_shift(2);e.l+=1;var i=e.read_shift(1);return e.l=a,i&7&&(r.level=i&7),i&16&&(r.hidden=!0),i&32&&(r.hpt=n/20),r}function jl(e,t,r){var a=b(145),n=(r["!rows"]||[])[e]||{};a.write_shift(4,e),a.write_shift(4,0);var i=320;n.hpx?i=fa(n.hpx)*20:n.hpt&&(i=n.hpt*20),a.write_shift(2,i),a.write_shift(1,0);var s=0;n.level&&(s|=n.level),n.hidden&&(s|=16),(n.hpx||n.hpt)&&(s|=32),a.write_shift(1,s),a.write_shift(1,0);var f=0,o=a.l;a.l+=4;for(var c={r:e,c:0},l=0;l<16;++l)if(!(t.s.c>l+1<<10||t.e.c<l<<10)){for(var v=-1,h=-1,d=l<<10;d<l+1<<10;++d){c.c=d;var _=Array.isArray(r)?(r[c.r]||[])[c.c]:r[ge(c)];_&&(v<0&&(v=d),h=d)}v<0||(++f,a.write_shift(4,v),a.write_shift(4,h))}var u=a.l;return a.l=o,a.write_shift(4,f),a.l=u,a.length>a.l?a.slice(0,a.l):a}function Yl(e,t,r,a){var n=jl(a,r,t);(n.length>17||(t["!rows"]||[])[a])&&H(e,0,n)}var Jl=Qr,ql=pt;function Zl(){}function Ql(e,t){var r={},a=e[e.l];return++e.l,r.above=!(a&64),r.left=!(a&128),e.l+=18,r.name=cf(e,t-19),r}function eu(e,t,r){r==null&&(r=b(84+4*e.length));var a=192;t&&(t.above&&(a&=-65),t.left&&(a&=-129)),r.write_shift(1,a);for(var n=1;n<3;++n)r.write_shift(1,0);return aa({auto:1},r),r.write_shift(-4,-1),r.write_shift(-4,-1),bn(e,r),r.slice(0,r.l)}function ru(e){var t=hr(e);return[t]}function tu(e,t,r){return r==null&&(r=b(8)),Jr(t,r)}function au(e){var t=qr(e);return[t]}function nu(e,t,r){return r==null&&(r=b(4)),Zr(t,r)}function iu(e){var t=hr(e),r=e.read_shift(1);return[t,r,"b"]}function su(e,t,r){return r==null&&(r=b(9)),Jr(t,r),r.write_shift(1,e.v?1:0),r}function fu(e){var t=qr(e),r=e.read_shift(1);return[t,r,"b"]}function cu(e,t,r){return r==null&&(r=b(5)),Zr(t,r),r.write_shift(1,e.v?1:0),r}function ou(e){var t=hr(e),r=e.read_shift(1);return[t,r,"e"]}function lu(e,t,r){return r==null&&(r=b(9)),Jr(t,r),r.write_shift(1,e.v),r}function uu(e){var t=qr(e),r=e.read_shift(1);return[t,r,"e"]}function hu(e,t,r){return r==null&&(r=b(8)),Zr(t,r),r.write_shift(1,e.v),r.write_shift(2,0),r.write_shift(1,0),r}function xu(e){var t=hr(e),r=e.read_shift(4);return[t,r,"s"]}function du(e,t,r){return r==null&&(r=b(12)),Jr(t,r),r.write_shift(4,t.v),r}function vu(e){var t=qr(e),r=e.read_shift(4);return[t,r,"s"]}function pu(e,t,r){return r==null&&(r=b(8)),Zr(t,r),r.write_shift(4,t.v),r}function mu(e){var t=hr(e),r=mt(e);return[t,r,"n"]}function gu(e,t,r){return r==null&&(r=b(16)),Jr(t,r),Kr(e.v,r),r}function _u(e){var t=qr(e),r=mt(e);return[t,r,"n"]}function wu(e,t,r){return r==null&&(r=b(12)),Zr(t,r),Kr(e.v,r),r}function ku(e){var t=hr(e),r=Pn(e);return[t,r,"n"]}function Eu(e,t,r){return r==null&&(r=b(12)),Jr(t,r),Ln(e.v,r),r}function Tu(e){var t=qr(e),r=Pn(e);return[t,r,"n"]}function Su(e,t,r){return r==null&&(r=b(8)),Zr(t,r),Ln(e.v,r),r}function Fu(e){var t=hr(e),r=qa(e);return[t,r,"is"]}function yu(e){var t=hr(e),r=Ke(e);return[t,r,"str"]}function Au(e,t,r){return r==null&&(r=b(12+4*e.v.length)),Jr(t,r),Be(e.v,r),r.length>r.l?r.slice(0,r.l):r}function Cu(e){var t=qr(e),r=Ke(e);return[t,r,"str"]}function Du(e,t,r){return r==null&&(r=b(8+4*e.v.length)),Zr(t,r),Be(e.v,r),r.length>r.l?r.slice(0,r.l):r}function Ou(e,t,r){var a=e.l+t,n=hr(e);n.r=r["!row"];var i=e.read_shift(1),s=[n,i,"b"];if(r.cellFormula){e.l+=2;var f=ma(e,a-e.l,r);s[3]=ht(f,null,n,r.supbooks,r)}else e.l=a;return s}function Iu(e,t,r){var a=e.l+t,n=hr(e);n.r=r["!row"];var i=e.read_shift(1),s=[n,i,"e"];if(r.cellFormula){e.l+=2;var f=ma(e,a-e.l,r);s[3]=ht(f,null,n,r.supbooks,r)}else e.l=a;return s}function Ru(e,t,r){var a=e.l+t,n=hr(e);n.r=r["!row"];var i=mt(e),s=[n,i,"n"];if(r.cellFormula){e.l+=2;var f=ma(e,a-e.l,r);s[3]=ht(f,null,n,r.supbooks,r)}else e.l=a;return s}function Nu(e,t,r){var a=e.l+t,n=hr(e);n.r=r["!row"];var i=Ke(e),s=[n,i,"str"];if(r.cellFormula){e.l+=2;var f=ma(e,a-e.l,r);s[3]=ht(f,null,n,r.supbooks,r)}else e.l=a;return s}var bu=Qr,Pu=pt;function Lu(e,t){return t==null&&(t=b(4)),t.write_shift(4,e),t}function Bu(e,t){var r=e.l+t,a=Qr(e,16),n=Za(e),i=Ke(e),s=Ke(e),f=Ke(e);e.l=r;var o={rfx:a,relId:n,loc:i,display:f};return s&&(o.Tooltip=s),o}function Mu(e,t){var r=b(50+4*(e[1].Target.length+(e[1].Tooltip||"").length));pt({s:Le(e[0]),e:Le(e[0])},r),Qa("rId"+t,r);var a=e[1].Target.indexOf("#"),n=a==-1?"":e[1].Target.slice(a+1);return Be(n||"",r),Be(e[1].Tooltip||"",r),Be("",r),r.slice(0,r.l)}function Uu(){}function Wu(e,t,r){var a=e.l+t,n=Bn(e,16),i=e.read_shift(1),s=[n];if(s[2]=i,r.cellFormula){var f=Cl(e,a-e.l,r);s[1]=f}else e.l=a;return s}function Hu(e,t,r){var a=e.l+t,n=Qr(e,16),i=[n];if(r.cellFormula){var s=Ol(e,a-e.l,r);i[1]=s,e.l=a}else e.l=a;return i}function Vu(e,t,r){r==null&&(r=b(18));var a=ga(e,t);r.write_shift(-4,e),r.write_shift(-4,e),r.write_shift(4,(a.width||10)*256),r.write_shift(4,0);var n=0;return t.hidden&&(n|=1),typeof a.width=="number"&&(n|=2),t.level&&(n|=t.level<<8),r.write_shift(2,n),r}var wi=["left","right","top","bottom","header","footer"];function Xu(e){var t={};return wi.forEach(function(r){t[r]=mt(e,8)}),t}function Gu(e,t){return t==null&&(t=b(48)),gi(e),wi.forEach(function(r){Kr(e[r],t)}),t}function zu(e){var t=e.read_shift(2);return e.l+=28,{RTL:t&32}}function \$u(e,t,r){r==null&&(r=b(30));var a=924;return(((t||{}).Views||[])[0]||{}).RTL&&(a|=32),r.write_shift(2,a),r.write_shift(4,0),r.write_shift(4,0),r.write_shift(4,0),r.write_shift(1,0),r.write_shift(1,0),r.write_shift(2,0),r.write_shift(2,100),r.write_shift(2,0),r.write_shift(2,0),r.write_shift(2,0),r.write_shift(4,0),r}function Ku(e){var t=b(24);return t.write_shift(4,4),t.write_shift(4,1),pt(e,t),t}function ju(e,t){return t==null&&(t=b(66)),t.write_shift(2,e.password?ri(e.password):0),t.write_shift(4,1),[["objects",!1],["scenarios",!1],["formatCells",!0],["formatColumns",!0],["formatRows",!0],["insertColumns",!0],["insertRows",!0],["insertHyperlinks",!0],["deleteColumns",!0],["deleteRows",!0],["selectLockedCells",!1],["sort",!0],["autoFilter",!0],["pivotTables",!0],["selectUnlockedCells",!1]].forEach(function(r){r[1]?t.write_shift(4,e[r[0]]!=null&&!e[r[0]]?1:0):t.write_shift(4,e[r[0]]!=null&&e[r[0]]?0:1)}),t}function Yu(){}function Ju(){}function qu(e,t,r,a,n,i,s){if(t.v===void 0)return!1;var f="";switch(t.t){case"b":f=t.v?"1":"0";break;case"d":t=ar(t),t.z=t.z||ye[14],t.v=tr(qe(t.v)),t.t="n";break;case"n":case"e":f=""+t.v;break;default:f=t.v;break}var o={r,c:a};switch(o.s=Ur(n.cellXfs,t,n),t.l&&i["!links"].push([ge(o),t.l]),t.c&&i["!comments"].push([ge(o),t.c]),t.t){case"s":case"str":return n.bookSST?(f=i0(n.Strings,t.v,n.revStrings),o.t="s",o.v=f,s?H(e,18,pu(t,o)):H(e,7,du(t,o))):(o.t="str",s?H(e,17,Du(t,o)):H(e,6,Au(t,o))),!0;case"n":return t.v==(t.v|0)&&t.v>-1e3&&t.v<1e3?s?H(e,13,Su(t,o)):H(e,2,Eu(t,o)):s?H(e,16,wu(t,o)):H(e,5,gu(t,o)),!0;case"b":return o.t="b",s?H(e,15,cu(t,o)):H(e,4,su(t,o)),!0;case"e":return o.t="e",s?H(e,14,hu(t,o)):H(e,3,lu(t,o)),!0}return s?H(e,12,nu(t,o)):H(e,1,tu(t,o)),!0}function Zu(e,t,r,a){var n=Te(t["!ref"]||"A1"),i,s="",f=[];H(e,145);var o=Array.isArray(t),c=n.e.r;t["!rows"]&&(c=Math.max(n.e.r,t["!rows"].length-1));for(var l=n.s.r;l<=c;++l){s=Ge(l),Yl(e,t,n,l);var v=!1;if(l<=n.e.r)for(var h=n.s.c;h<=n.e.c;++h){l===n.s.r&&(f[h]=\$e(h)),i=f[h]+s;var d=o?(t[l]||[])[h]:t[i];if(!d){v=!1;continue}v=qu(e,d,l,h,a,t,v)}}H(e,146)}function Qu(e,t){!t||!t["!merges"]||(H(e,177,Lu(t["!merges"].length)),t["!merges"].forEach(function(r){H(e,176,Pu(r))}),H(e,178))}function eh(e,t){!t||!t["!cols"]||(H(e,390),t["!cols"].forEach(function(r,a){r&&H(e,60,Vu(a,r))}),H(e,391))}function rh(e,t){!t||!t["!ref"]||(H(e,648),H(e,649,Ku(Te(t["!ref"]))),H(e,650))}function th(e,t,r){t["!links"].forEach(function(a){if(a[1].Target){var n=pe(r,-1,a[1].Target.replace(/#.*\$/,""),he.HLINK);H(e,494,Mu(a,n))}}),delete t["!links"]}function ah(e,t,r,a){if(t["!comments"].length>0){var n=pe(a,-1,"../drawings/vmlDrawing"+(r+1)+".vml",he.VML);H(e,551,Qa("rId"+n)),t["!legacy"]=n}}function nh(e,t,r,a){if(t["!autofilter"]){var n=t["!autofilter"],i=typeof n.ref=="string"?n.ref:De(n.ref);r.Workbook||(r.Workbook={Sheets:[]}),r.Workbook.Names||(r.Workbook.Names=[]);var s=r.Workbook.Names,f=cr(i);f.s.r==f.e.r&&(f.e.r=cr(t["!ref"]).e.r,i=De(f));for(var o=0;o<s.length;++o){var c=s[o];if(c.Name=="_xlnm._FilterDatabase"&&c.Sheet==a){c.Ref="'"+r.SheetNames[a]+"'!"+i;break}}o==s.length&&s.push({Name:"_xlnm._FilterDatabase",Sheet:a,Ref:"'"+r.SheetNames[a]+"'!"+i}),H(e,161,pt(Te(i))),H(e,162)}}function ih(e,t,r){H(e,133),H(e,137,\$u(t,r)),H(e,138),H(e,134)}function sh(e,t){t["!protect"]&&H(e,535,ju(t["!protect"]))}function fh(e,t,r,a){var n=rr(),i=r.SheetNames[e],s=r.Sheets[i]||{},f=i;try{r&&r.Workbook&&(f=r.Workbook.Sheets[e].CodeName||f)}catch{}var o=Te(s["!ref"]||"A1");if(o.e.c>16383||o.e.r>1048575){if(t.WTF)throw new Error("Range "+(s["!ref"]||"A1")+" exceeds format limit A1:XFD1048576");o.e.c=Math.min(o.e.c,16383),o.e.r=Math.min(o.e.c,1048575)}return s["!links"]=[],s["!comments"]=[],H(n,129),(r.vbaraw||s["!outline"])&&H(n,147,eu(f,s["!outline"])),H(n,148,ql(o)),ih(n,s,r.Workbook),eh(n,s,e,t,r),Zu(n,s,e,t,r),sh(n,s),nh(n,s,r,e),Qu(n,s),th(n,s,a),s["!margins"]&&H(n,476,Gu(s["!margins"])),(!t||t.ignoreEC||t.ignoreEC==null)&&rh(n,s),ah(n,s,e,a),H(n,130),n.end()}function ch(e,t){e.l+=10;var r=Ke(e,t-10);return{name:r}}var oh=[["allowRefreshQuery",!1,"bool"],["autoCompressPictures",!0,"bool"],["backupFile",!1,"bool"],["checkCompatibility",!1,"bool"],["CodeName",""],["date1904",!1,"bool"],["defaultThemeVersion",0,"int"],["filterPrivacy",!1,"bool"],["hidePivotFieldList",!1,"bool"],["promptedSolutions",!1,"bool"],["publishItems",!1,"bool"],["refreshAllConnections",!1,"bool"],["saveExternalLinkValues",!0,"bool"],["showBorderUnselectedTables",!0,"bool"],["showInkAnnotation",!0,"bool"],["showObjects","all"],["showPivotChartFilter",!1,"bool"],["updateLinks","userSet"]];function lh(e){return!e.Workbook||!e.Workbook.WBProps?"false":Ms(e.Workbook.WBProps.date1904)?"true":"false"}var uh="][*?/\\\\".split("");function ki(e,t){if(e.length>31){if(t)return!1;throw new Error("Sheet names cannot exceed 31 chars")}var r=!0;return uh.forEach(function(a){if(e.indexOf(a)!=-1){if(!t)throw new Error("Sheet name cannot contain : \\\\ / ? * [ ]");r=!1}}),r}function hh(e,t,r){e.forEach(function(a,n){ki(a);for(var i=0;i<n;++i)if(a==e[i])throw new Error("Duplicate Sheet Name: "+a);if(r){var s=t&&t[n]&&t[n].CodeName||a;if(s.charCodeAt(0)==95&&s.length>22)throw new Error("Bad Code Name: Worksheet"+s)}})}function xh(e){if(!e||!e.SheetNames||!e.Sheets)throw new Error("Invalid Workbook");if(!e.SheetNames.length)throw new Error("Workbook is empty");var t=e.Workbook&&e.Workbook.Sheets||[];hh(e.SheetNames,t,!!e.vbaraw);for(var r=0;r<e.SheetNames.length;++r)Pl(e.Sheets[e.SheetNames[r]],e.SheetNames[r],r)}function Ei(e){var t=[Oe];t[t.length]=j("workbook",null,{xmlns:xt[0],"xmlns:r":Pe.r});var r=e.Workbook&&(e.Workbook.Names||[]).length>0,a={codeName:"ThisWorkbook"};e.Workbook&&e.Workbook.WBProps&&(oh.forEach(function(f){e.Workbook.WBProps[f[0]]!=null&&e.Workbook.WBProps[f[0]]!=f[1]&&(a[f[0]]=e.Workbook.WBProps[f[0]])}),e.Workbook.WBProps.CodeName&&(a.codeName=e.Workbook.WBProps.CodeName,delete a.CodeName)),t[t.length]=j("workbookPr",null,a);var n=e.Workbook&&e.Workbook.Sheets||[],i=0;if(n&&n[0]&&n[0].Hidden){for(t[t.length]="<bookViews>",i=0;i!=e.SheetNames.length&&!(!n[i]||!n[i].Hidden);++i);i==e.SheetNames.length&&(i=0),t[t.length]='<workbookView firstSheet="'+i+'" activeTab="'+i+'"/>',t[t.length]="</bookViews>"}for(t[t.length]="<sheets>",i=0;i!=e.SheetNames.length;++i){var s={name:me(e.SheetNames[i].slice(0,31))};if(s.sheetId=""+(i+1),s["r:id"]="rId"+(i+1),n[i])switch(n[i].Hidden){case 1:s.state="hidden";break;case 2:s.state="veryHidden";break}t[t.length]=j("sheet",null,s)}return t[t.length]="</sheets>",r&&(t[t.length]="<definedNames>",e.Workbook&&e.Workbook.Names&&e.Workbook.Names.forEach(function(f){var o={name:f.Name};f.Comment&&(o.comment=f.Comment),f.Sheet!=null&&(o.localSheetId=""+f.Sheet),f.Hidden&&(o.hidden="1"),f.Ref&&(t[t.length]=j("definedName",me(f.Ref),o))}),t[t.length]="</definedNames>"),t.length>2&&(t[t.length]="</workbook>",t[1]=t[1].replace("/>",">")),t.join("")}function dh(e,t){var r={};return r.Hidden=e.read_shift(4),r.iTabID=e.read_shift(4),r.strRelID=Pa(e,t-8),r.name=Ke(e),r}function vh(e,t){return t||(t=b(127)),t.write_shift(4,e.Hidden),t.write_shift(4,e.iTabID),Qa(e.strRelID,t),Be(e.name.slice(0,31),t),t.length>t.l?t.slice(0,t.l):t}function ph(e,t){var r={},a=e.read_shift(4);r.defaultThemeVersion=e.read_shift(4);var n=t>8?Ke(e):"";return n.length>0&&(r.CodeName=n),r.autoCompressPictures=!!(a&65536),r.backupFile=!!(a&64),r.checkCompatibility=!!(a&4096),r.date1904=!!(a&1),r.filterPrivacy=!!(a&8),r.hidePivotFieldList=!!(a&1024),r.promptedSolutions=!!(a&16),r.publishItems=!!(a&2048),r.refreshAllConnections=!!(a&262144),r.saveExternalLinkValues=!!(a&128),r.showBorderUnselectedTables=!!(a&4),r.showInkAnnotation=!!(a&32),r.showObjects=["all","placeholders","none"][a>>13&3],r.showPivotChartFilter=!!(a&32768),r.updateLinks=["userSet","never","always"][a>>8&3],r}function mh(e,t){t||(t=b(72));var r=0;return e&&e.filterPrivacy&&(r|=8),t.write_shift(4,r),t.write_shift(4,0),bn(e&&e.CodeName||"ThisWorkbook",t),t.slice(0,t.l)}function gh(e,t,r){var a=e.l+t;e.l+=4,e.l+=1;var n=e.read_shift(4),i=of(e),s=Dl(e,0,r),f=Za(e);e.l=a;var o={Name:i,Ptg:s};return n<268435455&&(o.Sheet=n),f&&(o.Comment=f),o}function _h(e,t){H(e,143);for(var r=0;r!=t.SheetNames.length;++r){var a=t.Workbook&&t.Workbook.Sheets&&t.Workbook.Sheets[r]&&t.Workbook.Sheets[r].Hidden||0,n={Hidden:a,iTabID:r+1,strRelID:"rId"+(r+1),name:t.SheetNames[r]};H(e,156,vh(n))}H(e,144)}function wh(e,t){t||(t=b(127));for(var r=0;r!=4;++r)t.write_shift(4,0);return Be("SheetJS",t),Be(Ct.version,t),Be(Ct.version,t),Be("7262",t),t.length>t.l?t.slice(0,t.l):t}function kh(e,t){t||(t=b(29)),t.write_shift(-4,0),t.write_shift(-4,460),t.write_shift(4,28800),t.write_shift(4,17600),t.write_shift(4,500),t.write_shift(4,e),t.write_shift(4,e);var r=120;return t.write_shift(1,r),t.length>t.l?t.slice(0,t.l):t}function Eh(e,t){if(!(!t.Workbook||!t.Workbook.Sheets)){for(var r=t.Workbook.Sheets,a=0,n=-1,i=-1;a<r.length;++a)!r[a]||!r[a].Hidden&&n==-1?n=a:r[a].Hidden==1&&i==-1&&(i=a);i>n||(H(e,135),H(e,158,kh(n)),H(e,136))}}function Th(e,t){var r=rr();return H(r,131),H(r,128,wh()),H(r,153,mh(e.Workbook&&e.Workbook.WBProps||null)),Eh(r,e,t),_h(r,e,t),H(r,132),r.end()}function Sh(e,t,r){return(t.slice(-4)===".bin"?Th:Ei)(e,r)}function Fh(e,t,r,a,n){return(t.slice(-4)===".bin"?fh:_i)(e,r,a,n)}function yh(e,t,r){return(t.slice(-4)===".bin"?Xc:ni)(e,r)}function Ah(e,t,r){return(t.slice(-4)===".bin"?pc:ei)(e,r)}function Ch(e,t,r){return(t.slice(-4)===".bin"?io:oi)(e,r)}function Dh(e){return(e.slice(-4)===".bin"?qc:fi)()}function Oh(e,t){var r=[];return e.Props&&r.push(Ff(e.Props,t)),e.Custprops&&r.push(yf(e.Props,e.Custprops,t)),r.join("")}function Ih(){return""}function Rh(e,t){var r=['<Style ss:ID="Default" ss:Name="Normal"><NumberFormat/></Style>'];return t.cellXfs.forEach(function(a,n){var i=[];i.push(j("NumberFormat",null,{"ss:Format":me(ye[a.numFmtId])}));var s={"ss:ID":"s"+(21+n)};r.push(j("Style",i.join(""),s))}),j("Styles",r.join(""))}function Ti(e){return j("NamedRange",null,{"ss:Name":e.Name,"ss:RefersTo":"="+a0(e.Ref,{r:0,c:0})})}function Nh(e){if(!((e||{}).Workbook||{}).Names)return"";for(var t=e.Workbook.Names,r=[],a=0;a<t.length;++a){var n=t[a];n.Sheet==null&&(n.Name.match(/^_xlfn\\./)||r.push(Ti(n)))}return j("Names",r.join(""))}function bh(e,t,r,a){if(!e||!((a||{}).Workbook||{}).Names)return"";for(var n=a.Workbook.Names,i=[],s=0;s<n.length;++s){var f=n[s];f.Sheet==r&&(f.Name.match(/^_xlfn\\./)||i.push(Ti(f)))}return i.join("")}function Ph(e,t,r,a){if(!e)return"";var n=[];if(e["!margins"]&&(n.push("<PageSetup>"),e["!margins"].header&&n.push(j("Header",null,{"x:Margin":e["!margins"].header})),e["!margins"].footer&&n.push(j("Footer",null,{"x:Margin":e["!margins"].footer})),n.push(j("PageMargins",null,{"x:Bottom":e["!margins"].bottom||"0.75","x:Left":e["!margins"].left||"0.7","x:Right":e["!margins"].right||"0.7","x:Top":e["!margins"].top||"0.75"})),n.push("</PageSetup>")),a&&a.Workbook&&a.Workbook.Sheets&&a.Workbook.Sheets[r])if(a.Workbook.Sheets[r].Hidden)n.push(j("Visible",a.Workbook.Sheets[r].Hidden==1?"SheetHidden":"SheetVeryHidden",{}));else{for(var i=0;i<r&&!(a.Workbook.Sheets[i]&&!a.Workbook.Sheets[i].Hidden);++i);i==r&&n.push("<Selected/>")}return((((a||{}).Workbook||{}).Views||[])[0]||{}).RTL&&n.push("<DisplayRightToLeft/>"),e["!protect"]&&(n.push(Xe("ProtectContents","True")),e["!protect"].objects&&n.push(Xe("ProtectObjects","True")),e["!protect"].scenarios&&n.push(Xe("ProtectScenarios","True")),e["!protect"].selectLockedCells!=null&&!e["!protect"].selectLockedCells?n.push(Xe("EnableSelection","NoSelection")):e["!protect"].selectUnlockedCells!=null&&!e["!protect"].selectUnlockedCells&&n.push(Xe("EnableSelection","UnlockedCells")),[["formatCells","AllowFormatCells"],["formatColumns","AllowSizeCols"],["formatRows","AllowSizeRows"],["insertColumns","AllowInsertCols"],["insertRows","AllowInsertRows"],["insertHyperlinks","AllowInsertHyperlinks"],["deleteColumns","AllowDeleteCols"],["deleteRows","AllowDeleteRows"],["sort","AllowSort"],["autoFilter","AllowFilter"],["pivotTables","AllowUsePivotTables"]].forEach(function(s){e["!protect"][s[0]]&&n.push("<"+s[1]+"/>")})),n.length==0?"":j("WorksheetOptions",n.join(""),{xmlns:fr.x})}function Lh(e){return e.map(function(t){var r=Bs(t.t||""),a=j("ss:Data",r,{xmlns:"http://www.w3.org/TR/REC-html40"});return j("Comment",a,{"ss:Author":t.a})}).join("")}function Bh(e,t,r,a,n,i,s){if(!e||e.v==null&&e.f==null)return"";var f={};if(e.f&&(f["ss:Formula"]="="+me(a0(e.f,s))),e.F&&e.F.slice(0,t.length)==t){var o=Le(e.F.slice(t.length+1));f["ss:ArrayRange"]="RC:R"+(o.r==s.r?"":"["+(o.r-s.r)+"]")+"C"+(o.c==s.c?"":"["+(o.c-s.c)+"]")}if(e.l&&e.l.Target&&(f["ss:HRef"]=me(e.l.Target),e.l.Tooltip&&(f["x:HRefScreenTip"]=me(e.l.Tooltip))),r["!merges"])for(var c=r["!merges"],l=0;l!=c.length;++l)c[l].s.c!=s.c||c[l].s.r!=s.r||(c[l].e.c>c[l].s.c&&(f["ss:MergeAcross"]=c[l].e.c-c[l].s.c),c[l].e.r>c[l].s.r&&(f["ss:MergeDown"]=c[l].e.r-c[l].s.r));var v="",h="";switch(e.t){case"z":if(!a.sheetStubs)return"";break;case"n":v="Number",h=String(e.v);break;case"b":v="Boolean",h=e.v?"1":"0";break;case"e":v="Error",h=Bt[e.v];break;case"d":v="DateTime",h=new Date(e.v).toISOString(),e.z==null&&(e.z=e.z||ye[14]);break;case"s":v="String",h=Ls(e.v||"");break}var d=Ur(a.cellXfs,e,a);f["ss:StyleID"]="s"+(21+d),f["ss:Index"]=s.c+1;var _=e.v!=null?h:"",u=e.t=="z"?"":'<Data ss:Type="'+v+'">'+_+"</Data>";return(e.c||[]).length>0&&(u+=Lh(e.c)),j("Cell",u,f)}function Mh(e,t){var r='<Row ss:Index="'+(e+1)+'"';return t&&(t.hpt&&!t.hpx&&(t.hpx=ai(t.hpt)),t.hpx&&(r+=' ss:AutoFitHeight="0" ss:Height="'+t.hpx+'"'),t.hidden&&(r+=' ss:Hidden="1"')),r+">"}function Uh(e,t,r,a){if(!e["!ref"])return"";var n=Te(e["!ref"]),i=e["!merges"]||[],s=0,f=[];e["!cols"]&&e["!cols"].forEach(function(g,y){r0(g);var C=!!g.width,D=ga(y,g),B={"ss:Index":y+1};C&&(B["ss:Width"]=ia(D.width)),g.hidden&&(B["ss:Hidden"]="1"),f.push(j("Column",null,B))});for(var o=Array.isArray(e),c=n.s.r;c<=n.e.r;++c){for(var l=[Mh(c,(e["!rows"]||[])[c])],v=n.s.c;v<=n.e.c;++v){var h=!1;for(s=0;s!=i.length;++s)if(!(i[s].s.c>v)&&!(i[s].s.r>c)&&!(i[s].e.c<v)&&!(i[s].e.r<c)){(i[s].s.c!=v||i[s].s.r!=c)&&(h=!0);break}if(!h){var d={r:c,c:v},_=ge(d),u=o?(e[c]||[])[v]:e[_];l.push(Bh(u,_,e,t,r,a,d))}}l.push("</Row>"),l.length>2&&f.push(l.join(""))}return f.join("")}function Wh(e,t,r){var a=[],n=r.SheetNames[e],i=r.Sheets[n],s=i?bh(i,t,e,r):"";return s.length>0&&a.push("<Names>"+s+"</Names>"),s=i?Uh(i,t,e,r):"",s.length>0&&a.push("<Table>"+s+"</Table>"),a.push(Ph(i,t,e,r)),a.join("")}function Hh(e,t){t||(t={}),e.SSF||(e.SSF=ar(ye)),e.SSF&&(ha(),ua(e.SSF),t.revssf=xa(e.SSF),t.revssf[e.SSF[65535]]=0,t.ssf=e.SSF,t.cellXfs=[],Ur(t.cellXfs,{},{revssf:{General:0}}));var r=[];r.push(Oh(e,t)),r.push(Ih(e,t)),r.push(""),r.push("");for(var a=0;a<e.SheetNames.length;++a)r.push(j("Worksheet",Wh(a,t,e),{"ss:Name":me(e.SheetNames[a])}));return r[2]=Rh(e,t),r[3]=Nh(e,t),Oe+j("Workbook",r.join(""),{xmlns:fr.ss,"xmlns:o":fr.o,"xmlns:x":fr.x,"xmlns:ss":fr.ss,"xmlns:dt":fr.dt,"xmlns:html":fr.html})}var Oa={SI:"e0859ff2f94f6810ab9108002b27b3d9",DSI:"02d5cdd59c2e1b10939708002b2cf9ae",UDI:"05d5cdd59c2e1b10939708002b2cf9ae"};function Vh(e,t){var r=[],a=[],n=[],i=0,s,f=C0(H0,"n"),o=C0(V0,"n");if(e.Props)for(s=ze(e.Props),i=0;i<s.length;++i)(Object.prototype.hasOwnProperty.call(f,s[i])?r:Object.prototype.hasOwnProperty.call(o,s[i])?a:n).push([s[i],e.Props[s[i]]]);if(e.Custprops)for(s=ze(e.Custprops),i=0;i<s.length;++i)Object.prototype.hasOwnProperty.call(e.Props||{},s[i])||(Object.prototype.hasOwnProperty.call(f,s[i])?r:Object.prototype.hasOwnProperty.call(o,s[i])?a:n).push([s[i],e.Custprops[s[i]]]);var c=[];for(i=0;i<n.length;++i)Kn.indexOf(n[i][0])>-1||Gn.indexOf(n[i][0])>-1||n[i][1]!=null&&c.push(n[i]);a.length&&we.utils.cfb_add(t,"/SummaryInformation",K0(a,Oa.SI,o,V0)),(r.length||c.length)&&we.utils.cfb_add(t,"/DocumentSummaryInformation",K0(r,Oa.DSI,f,H0,c.length?c:null,Oa.UDI))}function Xh(e,t){var r=t||{},a=we.utils.cfb_new({root:"R"}),n="/Workbook";switch(r.bookType||"xls"){case"xls":r.bookType="biff8";case"xla":r.bookType||(r.bookType="xla");case"biff8":n="/Workbook",r.biff=8;break;case"biff5":n="/Book",r.biff=5;break;default:throw new Error("invalid type "+r.bookType+" for XLS CFB")}return we.utils.cfb_add(a,n,Si(e,r)),r.biff==8&&(e.Props||e.Custprops)&&Vh(e,a),r.biff==8&&e.vbaraw&&so(a,we.read(e.vbaraw,{type:typeof e.vbaraw=="string"?"binary":"buffer"})),a}var Gh={0:{f:Kl},1:{f:ru},2:{f:ku},3:{f:ou},4:{f:iu},5:{f:mu},6:{f:yu},7:{f:xu},8:{f:Nu},9:{f:Ru},10:{f:Ou},11:{f:Iu},12:{f:au},13:{f:Tu},14:{f:uu},15:{f:fu},16:{f:_u},17:{f:Cu},18:{f:vu},19:{f:qa},20:{},21:{},22:{},23:{},24:{},25:{},26:{},27:{},28:{},29:{},30:{},31:{},32:{},33:{},34:{},35:{T:1},36:{T:-1},37:{T:1},38:{T:-1},39:{f:gh},40:{},42:{},43:{f:Fc},44:{f:Tc},45:{f:Cc},46:{f:Oc},47:{f:Dc},48:{},49:{f:rf},50:{},51:{f:\$c},52:{T:1},53:{T:-1},54:{T:1},55:{T:-1},56:{T:1},57:{T:-1},58:{},59:{},60:{f:ac},62:{f:Fu},63:{f:Zc},64:{f:Yu},65:{},66:{},67:{},68:{},69:{},70:{},128:{},129:{T:1},130:{T:-1},131:{T:1,f:Tr,p:0},132:{T:-1},133:{T:1},134:{T:-1},135:{T:1},136:{T:-1},137:{T:1,f:zu},138:{T:-1},139:{T:1},140:{T:-1},141:{T:1},142:{T:-1},143:{T:1},144:{T:-1},145:{T:1},146:{T:-1},147:{f:Ql},148:{f:Jl,p:16},151:{f:Uu},152:{},153:{f:ph},154:{},155:{},156:{f:dh},157:{},158:{},159:{T:1,f:xc},160:{T:-1},161:{T:1,f:Qr},162:{T:-1},163:{T:1},164:{T:-1},165:{T:1},166:{T:-1},167:{},168:{},169:{},170:{},171:{},172:{T:1},173:{T:-1},174:{},175:{},176:{f:bu},177:{T:1},178:{T:-1},179:{T:1},180:{T:-1},181:{T:1},182:{T:-1},183:{T:1},184:{T:-1},185:{T:1},186:{T:-1},187:{T:1},188:{T:-1},189:{T:1},190:{T:-1},191:{T:1},192:{T:-1},193:{T:1},194:{T:-1},195:{T:1},196:{T:-1},197:{T:1},198:{T:-1},199:{T:1},200:{T:-1},201:{T:1},202:{T:-1},203:{T:1},204:{T:-1},205:{T:1},206:{T:-1},207:{T:1},208:{T:-1},209:{T:1},210:{T:-1},211:{T:1},212:{T:-1},213:{T:1},214:{T:-1},215:{T:1},216:{T:-1},217:{T:1},218:{T:-1},219:{T:1},220:{T:-1},221:{T:1},222:{T:-1},223:{T:1},224:{T:-1},225:{T:1},226:{T:-1},227:{T:1},228:{T:-1},229:{T:1},230:{T:-1},231:{T:1},232:{T:-1},233:{T:1},234:{T:-1},235:{T:1},236:{T:-1},237:{T:1},238:{T:-1},239:{T:1},240:{T:-1},241:{T:1},242:{T:-1},243:{T:1},244:{T:-1},245:{T:1},246:{T:-1},247:{T:1},248:{T:-1},249:{T:1},250:{T:-1},251:{T:1},252:{T:-1},253:{T:1},254:{T:-1},255:{T:1},256:{T:-1},257:{T:1},258:{T:-1},259:{T:1},260:{T:-1},261:{T:1},262:{T:-1},263:{T:1},264:{T:-1},265:{T:1},266:{T:-1},267:{T:1},268:{T:-1},269:{T:1},270:{T:-1},271:{T:1},272:{T:-1},273:{T:1},274:{T:-1},275:{T:1},276:{T:-1},277:{},278:{T:1},279:{T:-1},280:{T:1},281:{T:-1},282:{T:1},283:{T:1},284:{T:-1},285:{T:1},286:{T:-1},287:{T:1},288:{T:-1},289:{T:1},290:{T:-1},291:{T:1},292:{T:-1},293:{T:1},294:{T:-1},295:{T:1},296:{T:-1},297:{T:1},298:{T:-1},299:{T:1},300:{T:-1},301:{T:1},302:{T:-1},303:{T:1},304:{T:-1},305:{T:1},306:{T:-1},307:{T:1},308:{T:-1},309:{T:1},310:{T:-1},311:{T:1},312:{T:-1},313:{T:-1},314:{T:1},315:{T:-1},316:{T:1},317:{T:-1},318:{T:1},319:{T:-1},320:{T:1},321:{T:-1},322:{T:1},323:{T:-1},324:{T:1},325:{T:-1},326:{T:1},327:{T:-1},328:{T:1},329:{T:-1},330:{T:1},331:{T:-1},332:{T:1},333:{T:-1},334:{T:1},335:{f:Gc},336:{T:-1},337:{f:Yc,T:1},338:{T:-1},339:{T:1},340:{T:-1},341:{T:1},342:{T:-1},343:{T:1},344:{T:-1},345:{T:1},346:{T:-1},347:{T:1},348:{T:-1},349:{T:1},350:{T:-1},351:{},352:{},353:{T:1},354:{T:-1},355:{f:Pa},357:{},358:{},359:{},360:{T:1},361:{},362:{f:qf},363:{},364:{},366:{},367:{},368:{},369:{},370:{},371:{},372:{T:1},373:{T:-1},374:{T:1},375:{T:-1},376:{T:1},377:{T:-1},378:{T:1},379:{T:-1},380:{T:1},381:{T:-1},382:{T:1},383:{T:-1},384:{T:1},385:{T:-1},386:{T:1},387:{T:-1},388:{T:1},389:{T:-1},390:{T:1},391:{T:-1},392:{T:1},393:{T:-1},394:{T:1},395:{T:-1},396:{},397:{},398:{},399:{},400:{},401:{T:1},403:{},404:{},405:{},406:{},407:{},408:{},409:{},410:{},411:{},412:{},413:{},414:{},415:{},416:{},417:{},418:{},419:{},420:{},421:{},422:{T:1},423:{T:1},424:{T:-1},425:{T:-1},426:{f:Wu},427:{f:Hu},428:{},429:{T:1},430:{T:-1},431:{T:1},432:{T:-1},433:{T:1},434:{T:-1},435:{T:1},436:{T:-1},437:{T:1},438:{T:-1},439:{T:1},440:{T:-1},441:{T:1},442:{T:-1},443:{T:1},444:{T:-1},445:{T:1},446:{T:-1},447:{T:1},448:{T:-1},449:{T:1},450:{T:-1},451:{T:1},452:{T:-1},453:{T:1},454:{T:-1},455:{T:1},456:{T:-1},457:{T:1},458:{T:-1},459:{T:1},460:{T:-1},461:{T:1},462:{T:-1},463:{T:1},464:{T:-1},465:{T:1},466:{T:-1},467:{T:1},468:{T:-1},469:{T:1},470:{T:-1},471:{},472:{},473:{T:1},474:{T:-1},475:{},476:{f:Xu},477:{},478:{},479:{T:1},480:{T:-1},481:{T:1},482:{T:-1},483:{T:1},484:{T:-1},485:{f:Zl},486:{T:1},487:{T:-1},488:{T:1},489:{T:-1},490:{T:1},491:{T:-1},492:{T:1},493:{T:-1},494:{f:Bu},495:{T:1},496:{T:-1},497:{T:1},498:{T:-1},499:{},500:{T:1},501:{T:-1},502:{T:1},503:{T:-1},504:{},505:{T:1},506:{T:-1},507:{},508:{T:1},509:{T:-1},510:{T:1},511:{T:-1},512:{},513:{},514:{T:1},515:{T:-1},516:{T:1},517:{T:-1},518:{T:1},519:{T:-1},520:{T:1},521:{T:-1},522:{},523:{},524:{},525:{},526:{},527:{},528:{T:1},529:{T:-1},530:{T:1},531:{T:-1},532:{T:1},533:{T:-1},534:{},535:{},536:{},537:{},538:{T:1},539:{T:-1},540:{T:1},541:{T:-1},542:{T:1},548:{},549:{},550:{f:Pa},551:{},552:{},553:{},554:{T:1},555:{T:-1},556:{T:1},557:{T:-1},558:{T:1},559:{T:-1},560:{T:1},561:{T:-1},562:{},564:{},565:{T:1},566:{T:-1},569:{T:1},570:{T:-1},572:{},573:{T:1},574:{T:-1},577:{},578:{},579:{},580:{},581:{},582:{},583:{},584:{},585:{},586:{},587:{},588:{T:-1},589:{},590:{T:1},591:{T:-1},592:{T:1},593:{T:-1},594:{T:1},595:{T:-1},596:{},597:{T:1},598:{T:-1},599:{T:1},600:{T:-1},601:{T:1},602:{T:-1},603:{T:1},604:{T:-1},605:{T:1},606:{T:-1},607:{},608:{T:1},609:{T:-1},610:{},611:{T:1},612:{T:-1},613:{T:1},614:{T:-1},615:{T:1},616:{T:-1},617:{T:1},618:{T:-1},619:{T:1},620:{T:-1},625:{},626:{T:1},627:{T:-1},628:{T:1},629:{T:-1},630:{T:1},631:{T:-1},632:{f:ao},633:{T:1},634:{T:-1},635:{T:1,f:ro},636:{T:-1},637:{f:sf},638:{T:1},639:{},640:{T:-1},641:{T:1},642:{T:-1},643:{T:1},644:{},645:{T:-1},646:{T:1},648:{T:1},649:{},650:{T:-1},651:{f:ch},652:{},653:{T:1},654:{T:-1},655:{T:1},656:{T:-1},657:{T:1},658:{T:-1},659:{},660:{T:1},661:{},662:{T:-1},663:{},664:{T:1},665:{},666:{T:-1},667:{},668:{},669:{},671:{T:1},672:{T:-1},673:{T:1},674:{T:-1},675:{},676:{},677:{},678:{},679:{},680:{},681:{},1024:{},1025:{},1026:{T:1},1027:{T:-1},1028:{T:1},1029:{T:-1},1030:{},1031:{T:1},1032:{T:-1},1033:{T:1},1034:{T:-1},1035:{},1036:{},1037:{},1038:{T:1},1039:{T:-1},1040:{},1041:{T:1},1042:{T:-1},1043:{},1044:{},1045:{},1046:{T:1},1047:{T:-1},1048:{T:1},1049:{T:-1},1050:{},1051:{T:1},1052:{T:1},1053:{f:Ju},1054:{T:1},1055:{},1056:{T:1},1057:{T:-1},1058:{T:1},1059:{T:-1},1061:{},1062:{T:1},1063:{T:-1},1064:{T:1},1065:{T:-1},1066:{T:1},1067:{T:-1},1068:{T:1},1069:{T:-1},1070:{T:1},1071:{T:-1},1072:{T:1},1073:{T:-1},1075:{T:1},1076:{T:-1},1077:{T:1},1078:{T:-1},1079:{T:1},1080:{T:-1},1081:{T:1},1082:{T:-1},1083:{T:1},1084:{T:-1},1085:{},1086:{T:1},1087:{T:-1},1088:{T:1},1089:{T:-1},1090:{T:1},1091:{T:-1},1092:{T:1},1093:{T:-1},1094:{T:1},1095:{T:-1},1096:{},1097:{T:1},1098:{},1099:{T:-1},1100:{T:1},1101:{T:-1},1102:{},1103:{},1104:{},1105:{},1111:{},1112:{},1113:{T:1},1114:{T:-1},1115:{T:1},1116:{T:-1},1117:{},1118:{T:1},1119:{T:-1},1120:{T:1},1121:{T:-1},1122:{T:1},1123:{T:-1},1124:{T:1},1125:{T:-1},1126:{},1128:{T:1},1129:{T:-1},1130:{},1131:{T:1},1132:{T:-1},1133:{T:1},1134:{T:-1},1135:{T:1},1136:{T:-1},1137:{T:1},1138:{T:-1},1139:{T:1},1140:{T:-1},1141:{},1142:{T:1},1143:{T:-1},1144:{T:1},1145:{T:-1},1146:{},1147:{T:1},1148:{T:-1},1149:{T:1},1150:{T:-1},1152:{T:1},1153:{T:-1},1154:{T:-1},1155:{T:-1},1156:{T:-1},1157:{T:1},1158:{T:-1},1159:{T:1},1160:{T:-1},1161:{T:1},1162:{T:-1},1163:{T:1},1164:{T:-1},1165:{T:1},1166:{T:-1},1167:{T:1},1168:{T:-1},1169:{T:1},1170:{T:-1},1171:{},1172:{T:1},1173:{T:-1},1177:{},1178:{T:1},1180:{},1181:{},1182:{},2048:{T:1},2049:{T:-1},2050:{},2051:{T:1},2052:{T:-1},2053:{},2054:{},2055:{T:1},2056:{T:-1},2057:{T:1},2058:{T:-1},2060:{},2067:{},2068:{T:1},2069:{T:-1},2070:{},2071:{},2072:{T:1},2073:{T:-1},2075:{},2076:{},2077:{T:1},2078:{T:-1},2079:{},2080:{T:1},2081:{T:-1},2082:{},2083:{T:1},2084:{T:-1},2085:{T:1},2086:{T:-1},2087:{T:1},2088:{T:-1},2089:{T:1},2090:{T:-1},2091:{},2092:{},2093:{T:1},2094:{T:-1},2095:{},2096:{T:1},2097:{T:-1},2098:{T:1},2099:{T:-1},2100:{T:1},2101:{T:-1},2102:{},2103:{T:1},2104:{T:-1},2105:{},2106:{T:1},2107:{T:-1},2108:{},2109:{T:1},2110:{T:-1},2111:{T:1},2112:{T:-1},2113:{T:1},2114:{T:-1},2115:{},2116:{},2117:{},2118:{T:1},2119:{T:-1},2120:{},2121:{T:1},2122:{T:-1},2123:{T:1},2124:{T:-1},2125:{},2126:{T:1},2127:{T:-1},2128:{},2129:{T:1},2130:{T:-1},2131:{T:1},2132:{T:-1},2133:{T:1},2134:{},2135:{},2136:{},2137:{T:1},2138:{T:-1},2139:{T:1},2140:{T:-1},2141:{},3072:{},3073:{},4096:{T:1},4097:{T:-1},5002:{T:1},5003:{T:-1},5081:{T:1},5082:{T:-1},5083:{},5084:{T:1},5085:{T:-1},5086:{T:1},5087:{T:-1},5088:{},5089:{},5090:{},5092:{T:1},5093:{T:-1},5094:{},5095:{T:1},5096:{T:-1},5097:{},5099:{},65535:{n:""}};function Y(e,t,r,a){var n=t;if(!isNaN(n)){var i=a||(r||[]).length||0,s=e.next(4);s.write_shift(2,n),s.write_shift(2,i),i>0&&ja(r)&&e.push(r)}}function zh(e,t,r,a){var n=a||(r||[]).length||0;if(n<=8224)return Y(e,t,r,n);var i=t;if(!isNaN(i)){for(var s=r.parts||[],f=0,o=0,c=0;c+(s[f]||8224)<=8224;)c+=s[f]||8224,f++;var l=e.next(4);for(l.write_shift(2,i),l.write_shift(2,c),e.push(r.slice(o,o+c)),o+=c;o<n;){for(l=e.next(4),l.write_shift(2,60),c=0;c+(s[f]||8224)<=8224;)c+=s[f]||8224,f++;l.write_shift(2,c),e.push(r.slice(o,o+c)),o+=c}}}function Ut(e,t,r){return e||(e=b(7)),e.write_shift(2,t),e.write_shift(2,r),e.write_shift(2,0),e.write_shift(1,0),e}function \$h(e,t,r,a){var n=b(9);return Ut(n,e,t),Yn(r,a||"b",n),n}function Kh(e,t,r){var a=b(8+2*r.length);return Ut(a,e,t),a.write_shift(1,r.length),a.write_shift(r.length,r,"sbcs"),a.l<a.length?a.slice(0,a.l):a}function jh(e,t,r,a){if(t.v!=null)switch(t.t){case"d":case"n":var n=t.t=="d"?tr(qe(t.v)):t.v;n==(n|0)&&n>=0&&n<65536?Y(e,2,fc(r,a,n)):Y(e,3,sc(r,a,n));return;case"b":case"e":Y(e,5,\$h(r,a,t.v,t.t));return;case"s":case"str":Y(e,4,Kh(r,a,(t.v||"").slice(0,255)));return}Y(e,1,Ut(null,r,a))}function Yh(e,t,r,a){var n=Array.isArray(t),i=Te(t["!ref"]||"A1"),s,f="",o=[];if(i.e.c>255||i.e.r>16383){if(a.WTF)throw new Error("Range "+(t["!ref"]||"A1")+" exceeds format limit A1:IV16384");i.e.c=Math.min(i.e.c,255),i.e.r=Math.min(i.e.c,16383),s=De(i)}for(var c=i.s.r;c<=i.e.r;++c){f=Ge(c);for(var l=i.s.c;l<=i.e.c;++l){c===i.s.r&&(o[l]=\$e(l)),s=o[l]+f;var v=n?(t[c]||[])[l]:t[s];v&&jh(e,v,c,l,a)}}}function Jh(e,t){var r=t||{};Er!=null&&r.dense==null&&(r.dense=Er);for(var a=rr(),n=0,i=0;i<e.SheetNames.length;++i)e.SheetNames[i]==r.sheet&&(n=i);if(n==0&&r.sheet&&e.SheetNames[0]!=r.sheet)throw new Error("Sheet not found: "+r.sheet);return Y(a,r.biff==4?1033:r.biff==3?521:9,e0(e,16,r)),Yh(a,e.Sheets[e.SheetNames[n]],n,r,e),Y(a,10),a.end()}function qh(e,t,r){Y(e,49,Xf({sz:12,color:{theme:1},name:"Arial",family:2,scheme:"minor"},r))}function Zh(e,t,r){t&&[[5,8],[23,26],[41,44],[50,392]].forEach(function(a){for(var n=a[0];n<=a[1];++n)t[n]!=null&&Y(e,1054,\$f(n,t[n],r))})}function Qh(e,t){var r=b(19);r.write_shift(4,2151),r.write_shift(4,0),r.write_shift(4,0),r.write_shift(2,3),r.write_shift(1,1),r.write_shift(4,0),Y(e,2151,r),r=b(39),r.write_shift(4,2152),r.write_shift(4,0),r.write_shift(4,0),r.write_shift(2,3),r.write_shift(1,0),r.write_shift(4,0),r.write_shift(2,1),r.write_shift(4,4),r.write_shift(2,0),Zn(Te(t["!ref"]||"A1"),r),r.write_shift(4,4),Y(e,2152,r)}function e1(e,t){for(var r=0;r<16;++r)Y(e,224,Y0({numFmtId:0,style:!0},0,t));t.cellXfs.forEach(function(a){Y(e,224,Y0(a,0,t))})}function r1(e,t){for(var r=0;r<t["!links"].length;++r){var a=t["!links"][r];Y(e,440,ec(a)),a[1].Tooltip&&Y(e,2048,rc(a))}delete t["!links"]}function t1(e,t){if(t){var r=0;t.forEach(function(a,n){++r<=256&&a&&Y(e,125,nc(ga(n,a),n))})}}function a1(e,t,r,a,n){var i=16+Ur(n.cellXfs,t,n);if(t.v==null&&!t.bf){Y(e,513,jr(r,a,i));return}if(t.bf)Y(e,6,Al(t,r,a,n,i));else switch(t.t){case"d":case"n":var s=t.t=="d"?tr(qe(t.v)):t.v;Y(e,515,Jf(r,a,s,i,n));break;case"b":case"e":Y(e,517,Yf(r,a,t.v,i,n,t.t));break;case"s":case"str":if(n.bookSST){var f=i0(n.Strings,t.v,n.revStrings);Y(e,253,Gf(r,a,f,i,n))}else Y(e,516,zf(r,a,(t.v||"").slice(0,255),i,n));break;default:Y(e,513,jr(r,a,i))}}function n1(e,t,r){var a=rr(),n=r.SheetNames[e],i=r.Sheets[n]||{},s=(r||{}).Workbook||{},f=(s.Sheets||[])[e]||{},o=Array.isArray(i),c=t.biff==8,l,v="",h=[],d=Te(i["!ref"]||"A1"),_=c?65536:16384;if(d.e.c>255||d.e.r>=_){if(t.WTF)throw new Error("Range "+(i["!ref"]||"A1")+" exceeds format limit A1:IV16384");d.e.c=Math.min(d.e.c,255),d.e.r=Math.min(d.e.c,_-1)}Y(a,2057,e0(r,16,t)),Y(a,13,ur(1)),Y(a,12,ur(100)),Y(a,15,Je(!0)),Y(a,17,Je(!1)),Y(a,16,Kr(.001)),Y(a,95,Je(!0)),Y(a,42,Je(!1)),Y(a,43,Je(!1)),Y(a,130,ur(1)),Y(a,128,jf([0,0])),Y(a,131,Je(!1)),Y(a,132,Je(!1)),c&&t1(a,i["!cols"]),Y(a,512,Kf(d,t)),c&&(i["!links"]=[]);for(var u=d.s.r;u<=d.e.r;++u){v=Ge(u);for(var g=d.s.c;g<=d.e.c;++g){u===d.s.r&&(h[g]=\$e(g)),l=h[g]+v;var y=o?(i[u]||[])[g]:i[l];y&&(a1(a,y,u,g,t),c&&y.l&&i["!links"].push([l,y.l]))}}var C=f.CodeName||f.name||n;return c&&Y(a,574,Vf((s.Views||[])[0])),c&&(i["!merges"]||[]).length&&Y(a,229,Qf(i["!merges"])),c&&r1(a,i),Y(a,442,qn(C,t)),c&&Qh(a,i),Y(a,10),a.end()}function i1(e,t,r){var a=rr(),n=(e||{}).Workbook||{},i=n.Sheets||[],s=n.WBProps||{},f=r.biff==8,o=r.biff==5;if(Y(a,2057,e0(e,5,r)),r.bookType=="xla"&&Y(a,135),Y(a,225,f?ur(1200):null),Y(a,193,Df(2)),o&&Y(a,191),o&&Y(a,192),Y(a,226),Y(a,92,Mf("SheetJS",r)),Y(a,66,ur(f?1200:1252)),f&&Y(a,353,ur(0)),f&&Y(a,448),Y(a,317,ic(e.SheetNames.length)),f&&e.vbaraw&&Y(a,211),f&&e.vbaraw){var c=s.CodeName||"ThisWorkbook";Y(a,442,qn(c,r))}Y(a,156,ur(17)),Y(a,25,Je(!1)),Y(a,18,Je(!1)),Y(a,19,ur(0)),f&&Y(a,431,Je(!1)),f&&Y(a,444,ur(0)),Y(a,61,Hf(r)),Y(a,64,Je(!1)),Y(a,141,ur(0)),Y(a,34,Je(lh(e)=="true")),Y(a,14,Je(!0)),f&&Y(a,439,Je(!1)),Y(a,218,ur(0)),qh(a,e,r),Zh(a,e.SSF,r),e1(a,r),f&&Y(a,352,Je(!1));var l=a.end(),v=rr();f&&Y(v,140,tc()),f&&r.Strings&&zh(v,252,Wf(r.Strings,r)),Y(v,10);var h=v.end(),d=rr(),_=0,u=0;for(u=0;u<e.SheetNames.length;++u)_+=(f?12:11)+(f?2:1)*e.SheetNames[u].length;var g=l.length+_+h.length;for(u=0;u<e.SheetNames.length;++u){var y=i[u]||{};Y(d,133,Uf({pos:g,hs:y.Hidden||0,dt:0,name:e.SheetNames[u]},r)),g+=t[u].length}var C=d.end();if(_!=C.length)throw new Error("BS8 "+_+" != "+C.length);var D=[];return l.length&&D.push(l),C.length&&D.push(C),h.length&&D.push(h),Ve(D)}function s1(e,t){var r=t||{},a=[];e&&!e.SSF&&(e.SSF=ar(ye)),e&&e.SSF&&(ha(),ua(e.SSF),r.revssf=xa(e.SSF),r.revssf[e.SSF[65535]]=0,r.ssf=e.SSF),r.Strings=[],r.Strings.Count=0,r.Strings.Unique=0,s0(r),r.cellXfs=[],Ur(r.cellXfs,{},{revssf:{General:0}}),e.Props||(e.Props={});for(var n=0;n<e.SheetNames.length;++n)a[a.length]=n1(n,r,e);return a.unshift(i1(e,a,r)),Ve(a)}function Si(e,t){for(var r=0;r<=e.SheetNames.length;++r){var a=e.Sheets[e.SheetNames[r]];if(!(!a||!a["!ref"])){var n=cr(a["!ref"]);n.e.c>255&&typeof console<"u"&&console.error&&console.error("Worksheet '"+e.SheetNames[r]+"' extends beyond column IV (255). Data may be lost.")}}var i=t||{};switch(i.biff||2){case 8:case 5:return s1(e,t);case 4:case 3:case 2:return Jh(e,t)}throw new Error("invalid type "+i.bookType+" for BIFF")}function f1(e,t,r,a){for(var n=e["!merges"]||[],i=[],s=t.s.c;s<=t.e.c;++s){for(var f=0,o=0,c=0;c<n.length;++c)if(!(n[c].s.r>r||n[c].s.c>s)&&!(n[c].e.r<r||n[c].e.c<s)){if(n[c].s.r<r||n[c].s.c<s){f=-1;break}f=n[c].e.r-n[c].s.r+1,o=n[c].e.c-n[c].s.c+1;break}if(!(f<0)){var l=ge({r,c:s}),v=a.dense?(e[r]||[])[s]:e[l],h=v&&v.v!=null&&(v.h||Ps(v.w||(Ir(v),v.w)||""))||"",d={};f>1&&(d.rowspan=f),o>1&&(d.colspan=o),a.editable?h='<span contenteditable="true">'+h+"</span>":v&&(d["data-t"]=v&&v.t||"z",v.v!=null&&(d["data-v"]=v.v),v.z!=null&&(d["data-z"]=v.z),v.l&&(v.l.Target||"#").charAt(0)!="#"&&(h='<a href="'+v.l.Target+'">'+h+"</a>")),d.id=(a.id||"sjs")+"-"+l,i.push(j("td",h,d))}}var _="<tr>";return _+i.join("")+"</tr>"}var c1='<html><head><meta charset="utf-8"/><title>SheetJS Table Export</title></head><body>',o1="</body></html>";function l1(e,t,r){var a=[];return a.join("")+"<table"+(r&&r.id?' id="'+r.id+'"':"")+">"}function Fi(e,t){var r=t||{},a=r.header!=null?r.header:c1,n=r.footer!=null?r.footer:o1,i=[a],s=cr(e["!ref"]);r.dense=Array.isArray(e),i.push(l1(e,s,r));for(var f=s.s.r;f<=s.e.r;++f)i.push(f1(e,s,f,r));return i.push("</table>"+n),i.join("")}function yi(e,t,r){var a=r||{};Er!=null&&(a.dense=Er);var n=0,i=0;if(a.origin!=null)if(typeof a.origin=="number")n=a.origin;else{var s=typeof a.origin=="string"?Le(a.origin):a.origin;n=s.r,i=s.c}var f=t.getElementsByTagName("tr"),o=Math.min(a.sheetRows||1e7,f.length),c={s:{r:0,c:0},e:{r:n,c:i}};if(e["!ref"]){var l=cr(e["!ref"]);c.s.r=Math.min(c.s.r,l.s.r),c.s.c=Math.min(c.s.c,l.s.c),c.e.r=Math.max(c.e.r,l.e.r),c.e.c=Math.max(c.e.c,l.e.c),n==-1&&(c.e.r=n=l.e.r+1)}var v=[],h=0,d=e["!rows"]||(e["!rows"]=[]),_=0,u=0,g=0,y=0,C=0,D=0;for(e["!cols"]||(e["!cols"]=[]);_<f.length&&u<o;++_){var B=f[_];if(tn(B)){if(a.display)continue;d[u]={hidden:!0}}var G=B.children;for(g=y=0;g<G.length;++g){var te=G[g];if(!(a.display&&tn(te))){var A=te.hasAttribute("data-v")?te.getAttribute("data-v"):te.hasAttribute("v")?te.getAttribute("v"):Us(te.innerHTML),W=te.getAttribute("data-z")||te.getAttribute("z");for(h=0;h<v.length;++h){var L=v[h];L.s.c==y+i&&L.s.r<u+n&&u+n<=L.e.r&&(y=L.e.c+1-i,h=-1)}D=+te.getAttribute("colspan")||1,((C=+te.getAttribute("rowspan")||1)>1||D>1)&&v.push({s:{r:u+n,c:y+i},e:{r:u+n+(C||1)-1,c:y+i+(D||1)-1}});var U={t:"s",v:A},X=te.getAttribute("data-t")||te.getAttribute("t")||"";A!=null&&(A.length==0?U.t=X||"z":a.raw||A.trim().length==0||X=="s"||(A==="TRUE"?U={t:"b",v:!0}:A==="FALSE"?U={t:"b",v:!1}:isNaN(Cr(A))?isNaN(It(A).getDate())||(U={t:"d",v:qe(A)},a.cellDates||(U={t:"n",v:tr(U.v)}),U.z=a.dateNF||ye[14]):U={t:"n",v:Cr(A)})),U.z===void 0&&W!=null&&(U.z=W);var z="",ie=te.getElementsByTagName("A");if(ie&&ie.length)for(var de=0;de<ie.length&&!(ie[de].hasAttribute("href")&&(z=ie[de].getAttribute("href"),z.charAt(0)!="#"));++de);z&&z.charAt(0)!="#"&&(U.l={Target:z}),a.dense?(e[u+n]||(e[u+n]=[]),e[u+n][y+i]=U):e[ge({c:y+i,r:u+n})]=U,c.e.c<y+i&&(c.e.c=y+i),y+=D}}++u}return v.length&&(e["!merges"]=(e["!merges"]||[]).concat(v)),c.e.r=Math.max(c.e.r,u-1+n),e["!ref"]=De(c),u>=o&&(e["!fullref"]=De((c.e.r=f.length-_+u-1+n,c))),e}function Ai(e,t){var r=t||{},a=r.dense?[]:{};return yi(a,e,t)}function u1(e,t){return Yr(Ai(e,t),t)}function tn(e){var t="",r=h1(e);return r&&(t=r(e).getPropertyValue("display")),t||(t=e.style&&e.style.display),t==="none"}function h1(e){return e.ownerDocument.defaultView&&typeof e.ownerDocument.defaultView.getComputedStyle=="function"?e.ownerDocument.defaultView.getComputedStyle:typeof getComputedStyle=="function"?getComputedStyle:null}var x1=(function(){var e=["<office:master-styles>",'<style:master-page style:name="mp1" style:page-layout-name="mp1">',"<style:header/>",'<style:header-left style:display="false"/>',"<style:footer/>",'<style:footer-left style:display="false"/>',"</style:master-page>","</office:master-styles>"].join(""),t="<office:document-styles "+Rt({"xmlns:office":"urn:oasis:names:tc:opendocument:xmlns:office:1.0","xmlns:table":"urn:oasis:names:tc:opendocument:xmlns:table:1.0","xmlns:style":"urn:oasis:names:tc:opendocument:xmlns:style:1.0","xmlns:text":"urn:oasis:names:tc:opendocument:xmlns:text:1.0","xmlns:draw":"urn:oasis:names:tc:opendocument:xmlns:drawing:1.0","xmlns:fo":"urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0","xmlns:xlink":"http://www.w3.org/1999/xlink","xmlns:dc":"http://purl.org/dc/elements/1.1/","xmlns:number":"urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0","xmlns:svg":"urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0","xmlns:of":"urn:oasis:names:tc:opendocument:xmlns:of:1.2","office:version":"1.2"})+">"+e+"</office:document-styles>";return function(){return Oe+t}})(),an=(function(){var e=function(i){return me(i).replace(/ +/g,function(s){return'<text:s text:c="'+s.length+'"/>'}).replace(/\\t/g,"<text:tab/>").replace(/\\n/g,"</text:p><text:p>").replace(/^ /,"<text:s/>").replace(/ \$/,"<text:s/>")},t=\` <table:table-cell />
|
|
2550
|
+
\`,r=\` <table:covered-table-cell/>
|
|
2551
|
+
\`,a=function(i,s,f){var o=[];o.push(' <table:table table:name="'+me(s.SheetNames[f])+\`" table:style-name="ta1">
|
|
2552
|
+
\`);var c=0,l=0,v=cr(i["!ref"]||"A1"),h=i["!merges"]||[],d=0,_=Array.isArray(i);if(i["!cols"])for(l=0;l<=v.e.c;++l)o.push(" <table:table-column"+(i["!cols"][l]?' table:style-name="co'+i["!cols"][l].ods+'"':"")+\`></table:table-column>
|
|
2553
|
+
\`);var u="",g=i["!rows"]||[];for(c=0;c<v.s.r;++c)u=g[c]?' table:style-name="ro'+g[c].ods+'"':"",o.push(" <table:table-row"+u+\`></table:table-row>
|
|
2554
|
+
\`);for(;c<=v.e.r;++c){for(u=g[c]?' table:style-name="ro'+g[c].ods+'"':"",o.push(" <table:table-row"+u+\`>
|
|
2555
|
+
\`),l=0;l<v.s.c;++l)o.push(t);for(;l<=v.e.c;++l){var y=!1,C={},D="";for(d=0;d!=h.length;++d)if(!(h[d].s.c>l)&&!(h[d].s.r>c)&&!(h[d].e.c<l)&&!(h[d].e.r<c)){(h[d].s.c!=l||h[d].s.r!=c)&&(y=!0),C["table:number-columns-spanned"]=h[d].e.c-h[d].s.c+1,C["table:number-rows-spanned"]=h[d].e.r-h[d].s.r+1;break}if(y){o.push(r);continue}var B=ge({r:c,c:l}),G=_?(i[c]||[])[l]:i[B];if(G&&G.f&&(C["table:formula"]=me(Nl(G.f)),G.F&&G.F.slice(0,B.length)==B)){var te=cr(G.F);C["table:number-matrix-columns-spanned"]=te.e.c-te.s.c+1,C["table:number-matrix-rows-spanned"]=te.e.r-te.s.r+1}if(!G){o.push(t);continue}switch(G.t){case"b":D=G.v?"TRUE":"FALSE",C["office:value-type"]="boolean",C["office:boolean-value"]=G.v?"true":"false";break;case"n":D=G.w||String(G.v||0),C["office:value-type"]="float",C["office:value"]=G.v||0;break;case"s":case"str":D=G.v==null?"":G.v,C["office:value-type"]="string";break;case"d":D=G.w||qe(G.v).toISOString(),C["office:value-type"]="date",C["office:date-value"]=qe(G.v).toISOString(),C["table:style-name"]="ce1";break;default:o.push(t);continue}var A=e(D);if(G.l&&G.l.Target){var W=G.l.Target;W=W.charAt(0)=="#"?"#"+bl(W.slice(1)):W,W.charAt(0)!="#"&&!W.match(/^\\w+:/)&&(W="../"+W),A=j("text:a",A,{"xlink:href":W.replace(/&/g,"&")})}o.push(" "+j("table:table-cell",j("text:p",A,{}),C)+\`
|
|
2556
|
+
\`)}o.push(\` </table:table-row>
|
|
2557
|
+
\`)}return o.push(\` </table:table>
|
|
2558
|
+
\`),o.join("")},n=function(i,s){i.push(\` <office:automatic-styles>
|
|
2559
|
+
\`),i.push(\` <number:date-style style:name="N37" number:automatic-order="true">
|
|
2560
|
+
\`),i.push(\` <number:month number:style="long"/>
|
|
2561
|
+
\`),i.push(\` <number:text>/</number:text>
|
|
2562
|
+
\`),i.push(\` <number:day number:style="long"/>
|
|
2563
|
+
\`),i.push(\` <number:text>/</number:text>
|
|
2564
|
+
\`),i.push(\` <number:year/>
|
|
2565
|
+
\`),i.push(\` </number:date-style>
|
|
2566
|
+
\`);var f=0;s.SheetNames.map(function(c){return s.Sheets[c]}).forEach(function(c){if(c&&c["!cols"]){for(var l=0;l<c["!cols"].length;++l)if(c["!cols"][l]){var v=c["!cols"][l];if(v.width==null&&v.wpx==null&&v.wch==null)continue;r0(v),v.ods=f;var h=c["!cols"][l].wpx+"px";i.push(' <style:style style:name="co'+f+\`" style:family="table-column">
|
|
2567
|
+
\`),i.push(' <style:table-column-properties fo:break-before="auto" style:column-width="'+h+\`"/>
|
|
2568
|
+
\`),i.push(\` </style:style>
|
|
2569
|
+
\`),++f}}});var o=0;s.SheetNames.map(function(c){return s.Sheets[c]}).forEach(function(c){if(c&&c["!rows"]){for(var l=0;l<c["!rows"].length;++l)if(c["!rows"][l]){c["!rows"][l].ods=o;var v=c["!rows"][l].hpx+"px";i.push(' <style:style style:name="ro'+o+\`" style:family="table-row">
|
|
2570
|
+
\`),i.push(' <style:table-row-properties fo:break-before="auto" style:row-height="'+v+\`"/>
|
|
2571
|
+
\`),i.push(\` </style:style>
|
|
2572
|
+
\`),++o}}}),i.push(\` <style:style style:name="ta1" style:family="table" style:master-page-name="mp1">
|
|
2573
|
+
\`),i.push(\` <style:table-properties table:display="true" style:writing-mode="lr-tb"/>
|
|
2574
|
+
\`),i.push(\` </style:style>
|
|
2575
|
+
\`),i.push(\` <style:style style:name="ce1" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N37"/>
|
|
2576
|
+
\`),i.push(\` </office:automatic-styles>
|
|
2577
|
+
\`)};return function(s,f){var o=[Oe],c=Rt({"xmlns:office":"urn:oasis:names:tc:opendocument:xmlns:office:1.0","xmlns:table":"urn:oasis:names:tc:opendocument:xmlns:table:1.0","xmlns:style":"urn:oasis:names:tc:opendocument:xmlns:style:1.0","xmlns:text":"urn:oasis:names:tc:opendocument:xmlns:text:1.0","xmlns:draw":"urn:oasis:names:tc:opendocument:xmlns:drawing:1.0","xmlns:fo":"urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0","xmlns:xlink":"http://www.w3.org/1999/xlink","xmlns:dc":"http://purl.org/dc/elements/1.1/","xmlns:meta":"urn:oasis:names:tc:opendocument:xmlns:meta:1.0","xmlns:number":"urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0","xmlns:presentation":"urn:oasis:names:tc:opendocument:xmlns:presentation:1.0","xmlns:svg":"urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0","xmlns:chart":"urn:oasis:names:tc:opendocument:xmlns:chart:1.0","xmlns:dr3d":"urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0","xmlns:math":"http://www.w3.org/1998/Math/MathML","xmlns:form":"urn:oasis:names:tc:opendocument:xmlns:form:1.0","xmlns:script":"urn:oasis:names:tc:opendocument:xmlns:script:1.0","xmlns:ooo":"http://openoffice.org/2004/office","xmlns:ooow":"http://openoffice.org/2004/writer","xmlns:oooc":"http://openoffice.org/2004/calc","xmlns:dom":"http://www.w3.org/2001/xml-events","xmlns:xforms":"http://www.w3.org/2002/xforms","xmlns:xsd":"http://www.w3.org/2001/XMLSchema","xmlns:xsi":"http://www.w3.org/2001/XMLSchema-instance","xmlns:sheet":"urn:oasis:names:tc:opendocument:sh33tjs:1.0","xmlns:rpt":"http://openoffice.org/2005/report","xmlns:of":"urn:oasis:names:tc:opendocument:xmlns:of:1.2","xmlns:xhtml":"http://www.w3.org/1999/xhtml","xmlns:grddl":"http://www.w3.org/2003/g/data-view#","xmlns:tableooo":"http://openoffice.org/2009/table","xmlns:drawooo":"http://openoffice.org/2010/draw","xmlns:calcext":"urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0","xmlns:loext":"urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0","xmlns:field":"urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0","xmlns:formx":"urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0","xmlns:css3t":"http://www.w3.org/TR/css3-text/","office:version":"1.2"}),l=Rt({"xmlns:config":"urn:oasis:names:tc:opendocument:xmlns:config:1.0","office:mimetype":"application/vnd.oasis.opendocument.spreadsheet"});f.bookType=="fods"?(o.push("<office:document"+c+l+\`>
|
|
2578
|
+
\`),o.push(Vn().replace(/office:document-meta/g,"office:meta"))):o.push("<office:document-content"+c+\`>
|
|
2579
|
+
\`),n(o,s),o.push(\` <office:body>
|
|
2580
|
+
\`),o.push(\` <office:spreadsheet>
|
|
2581
|
+
\`);for(var v=0;v!=s.SheetNames.length;++v)o.push(a(s.Sheets[s.SheetNames[v]],s,v,f));return o.push(\` </office:spreadsheet>
|
|
2582
|
+
\`),o.push(\` </office:body>
|
|
2583
|
+
\`),f.bookType=="fods"?o.push("</office:document>"):o.push("</office:document-content>"),o.join("")}})();function Ci(e,t){if(t.bookType=="fods")return an(e,t);var r=Wa(),a="",n=[],i=[];return a="mimetype",oe(r,a,"application/vnd.oasis.opendocument.spreadsheet"),a="content.xml",oe(r,a,an(e,t)),n.push([a,"text/xml"]),i.push([a,"ContentFile"]),a="styles.xml",oe(r,a,x1(e,t)),n.push([a,"text/xml"]),i.push([a,"StylesFile"]),a="meta.xml",oe(r,a,Oe+Vn()),n.push([a,"text/xml"]),i.push([a,"MetadataFile"]),a="manifest.rdf",oe(r,a,Sf(i)),n.push([a,"application/rdf+xml"]),a="META-INF/manifest.xml",oe(r,a,Ef(n)),r}function ca(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function d1(e){return typeof TextEncoder<"u"?new TextEncoder().encode(e):pr(yr(e))}function v1(e,t){e:for(var r=0;r<=e.length-t.length;++r){for(var a=0;a<t.length;++a)if(e[r+a]!=t[a])continue e;return!0}return!1}function Mr(e){var t=e.reduce(function(n,i){return n+i.length},0),r=new Uint8Array(t),a=0;return e.forEach(function(n){r.set(n,a),a+=n.length}),r}function p1(e,t,r){var a=Math.floor(r==0?0:Math.LOG10E*Math.log(Math.abs(r)))+6176-20,n=r/Math.pow(10,a-6176);e[t+15]|=a>>7,e[t+14]|=(a&127)<<1;for(var i=0;n>=1;++i,n/=256)e[t+i]=n&255;e[t+15]|=r>=0?0:128}function Nt(e,t){var r=t?t[0]:0,a=e[r]&127;e:if(e[r++]>=128&&(a|=(e[r]&127)<<7,e[r++]<128||(a|=(e[r]&127)<<14,e[r++]<128)||(a|=(e[r]&127)<<21,e[r++]<128)||(a+=(e[r]&127)*Math.pow(2,28),++r,e[r++]<128)||(a+=(e[r]&127)*Math.pow(2,35),++r,e[r++]<128)||(a+=(e[r]&127)*Math.pow(2,42),++r,e[r++]<128)))break e;return t&&(t[0]=r),a}function ve(e){var t=new Uint8Array(7);t[0]=e&127;var r=1;e:if(e>127){if(t[r-1]|=128,t[r]=e>>7&127,++r,e<=16383||(t[r-1]|=128,t[r]=e>>14&127,++r,e<=2097151)||(t[r-1]|=128,t[r]=e>>21&127,++r,e<=268435455)||(t[r-1]|=128,t[r]=e/256>>>21&127,++r,e<=34359738367)||(t[r-1]|=128,t[r]=e/65536>>>21&127,++r,e<=4398046511103))break e;t[r-1]|=128,t[r]=e/16777216>>>21&127,++r}return t.slice(0,r)}function lt(e){var t=0,r=e[t]&127;e:if(e[t++]>=128){if(r|=(e[t]&127)<<7,e[t++]<128||(r|=(e[t]&127)<<14,e[t++]<128)||(r|=(e[t]&127)<<21,e[t++]<128))break e;r|=(e[t]&127)<<28}return r}function Ie(e){for(var t=[],r=[0];r[0]<e.length;){var a=r[0],n=Nt(e,r),i=n&7;n=Math.floor(n/8);var s=0,f;if(n==0)break;switch(i){case 0:{for(var o=r[0];e[r[0]++]>=128;);f=e.slice(o,r[0])}break;case 5:s=4,f=e.slice(r[0],r[0]+s),r[0]+=s;break;case 1:s=8,f=e.slice(r[0],r[0]+s),r[0]+=s;break;case 2:s=Nt(e,r),f=e.slice(r[0],r[0]+s),r[0]+=s;break;default:throw new Error("PB Type ".concat(i," for Field ").concat(n," at offset ").concat(a))}var c={data:f,type:i};t[n]==null?t[n]=[c]:t[n].push(c)}return t}function We(e){var t=[];return e.forEach(function(r,a){r.forEach(function(n){n.data&&(t.push(ve(a*8+n.type)),n.type==2&&t.push(ve(n.data.length)),t.push(n.data))})}),Mr(t)}function dr(e){for(var t,r=[],a=[0];a[0]<e.length;){var n=Nt(e,a),i=Ie(e.slice(a[0],a[0]+n));a[0]+=n;var s={id:lt(i[1][0].data),messages:[]};i[2].forEach(function(f){var o=Ie(f.data),c=lt(o[3][0].data);s.messages.push({meta:o,data:e.slice(a[0],a[0]+c)}),a[0]+=c}),(t=i[3])!=null&&t[0]&&(s.merge=lt(i[3][0].data)>>>0>0),r.push(s)}return r}function tt(e){var t=[];return e.forEach(function(r){var a=[];a[1]=[{data:ve(r.id),type:0}],a[2]=[],r.merge!=null&&(a[3]=[{data:ve(+!!r.merge),type:0}]);var n=[];r.messages.forEach(function(s){n.push(s.data),s.meta[3]=[{type:0,data:ve(s.data.length)}],a[2].push({data:We(s.meta),type:2})});var i=We(a);t.push(ve(i.length)),t.push(i),n.forEach(function(s){return t.push(s)})}),Mr(t)}function m1(e,t){if(e!=0)throw new Error("Unexpected Snappy chunk type ".concat(e));for(var r=[0],a=Nt(t,r),n=[];r[0]<t.length;){var i=t[r[0]]&3;if(i==0){var s=t[r[0]++]>>2;if(s<60)++s;else{var f=s-59;s=t[r[0]],f>1&&(s|=t[r[0]+1]<<8),f>2&&(s|=t[r[0]+2]<<16),f>3&&(s|=t[r[0]+3]<<24),s>>>=0,s++,r[0]+=f}n.push(t.slice(r[0],r[0]+s)),r[0]+=s;continue}else{var o=0,c=0;if(i==1?(c=(t[r[0]]>>2&7)+4,o=(t[r[0]++]&224)<<3,o|=t[r[0]++]):(c=(t[r[0]++]>>2)+1,i==2?(o=t[r[0]]|t[r[0]+1]<<8,r[0]+=2):(o=(t[r[0]]|t[r[0]+1]<<8|t[r[0]+2]<<16|t[r[0]+3]<<24)>>>0,r[0]+=4)),n=[Mr(n)],o==0)throw new Error("Invalid offset 0");if(o>n[0].length)throw new Error("Invalid offset beyond length");if(c>=o)for(n.push(n[0].slice(-o)),c-=o;c>=n[n.length-1].length;)n.push(n[n.length-1]),c-=n[n.length-1].length;n.push(n[0].slice(-o,-o+c))}}var l=Mr(n);if(l.length!=a)throw new Error("Unexpected length: ".concat(l.length," != ").concat(a));return l}function vr(e){for(var t=[],r=0;r<e.length;){var a=e[r++],n=e[r]|e[r+1]<<8|e[r+2]<<16;r+=3,t.push(m1(a,e.slice(r,r+n))),r+=n}if(r!==e.length)throw new Error("data is not a valid framed stream!");return Mr(t)}function at(e){for(var t=[],r=0;r<e.length;){var a=Math.min(e.length-r,268435455),n=new Uint8Array(4);t.push(n);var i=ve(a),s=i.length;t.push(i),a<=60?(s++,t.push(new Uint8Array([a-1<<2]))):a<=256?(s+=2,t.push(new Uint8Array([240,a-1&255]))):a<=65536?(s+=3,t.push(new Uint8Array([244,a-1&255,a-1>>8&255]))):a<=16777216?(s+=4,t.push(new Uint8Array([248,a-1&255,a-1>>8&255,a-1>>16&255]))):a<=4294967296&&(s+=5,t.push(new Uint8Array([252,a-1&255,a-1>>8&255,a-1>>16&255,a-1>>>24&255]))),t.push(e.slice(r,r+a)),s+=a,n[0]=0,n[1]=s&255,n[2]=s>>8&255,n[3]=s>>16&255,r+=a}return Mr(t)}function Ia(e,t){var r=new Uint8Array(32),a=ca(r),n=12,i=0;switch(r[0]=5,e.t){case"n":r[1]=2,p1(r,n,e.v),i|=1,n+=16;break;case"b":r[1]=6,a.setFloat64(n,e.v?1:0,!0),i|=2,n+=8;break;case"s":if(t.indexOf(e.v)==-1)throw new Error("Value ".concat(e.v," missing from SST!"));r[1]=3,a.setUint32(n,t.indexOf(e.v),!0),i|=8,n+=4;break;default:throw"unsupported cell type "+e.t}return a.setUint32(8,i,!0),r.slice(0,n)}function Ra(e,t){var r=new Uint8Array(32),a=ca(r),n=12,i=0;switch(r[0]=3,e.t){case"n":r[2]=2,a.setFloat64(n,e.v,!0),i|=32,n+=8;break;case"b":r[2]=6,a.setFloat64(n,e.v?1:0,!0),i|=32,n+=8;break;case"s":if(t.indexOf(e.v)==-1)throw new Error("Value ".concat(e.v," missing from SST!"));r[2]=3,a.setUint32(n,t.indexOf(e.v),!0),i|=16,n+=4;break;default:throw"unsupported cell type "+e.t}return a.setUint32(4,i,!0),r.slice(0,n)}function Nr(e){var t=Ie(e);return Nt(t[1][0].data)}function g1(e,t,r){var a,n,i,s;if(!((a=e[6])!=null&&a[0])||!((n=e[7])!=null&&n[0]))throw"Mutation only works on post-BNC storages!";var f=((s=(i=e[8])==null?void 0:i[0])==null?void 0:s.data)&<(e[8][0].data)>0||!1;if(f)throw"Math only works with normal offsets";for(var o=0,c=ca(e[7][0].data),l=0,v=[],h=ca(e[4][0].data),d=0,_=[],u=0;u<t.length;++u){if(t[u]==null){c.setUint16(u*2,65535,!0),h.setUint16(u*2,65535);continue}c.setUint16(u*2,l,!0),h.setUint16(u*2,d,!0);var g,y;switch(typeof t[u]){case"string":g=Ia({t:"s",v:t[u]},r),y=Ra({t:"s",v:t[u]},r);break;case"number":g=Ia({t:"n",v:t[u]},r),y=Ra({t:"n",v:t[u]},r);break;case"boolean":g=Ia({t:"b",v:t[u]},r),y=Ra({t:"b",v:t[u]},r);break;default:throw new Error("Unsupported value "+t[u])}v.push(g),l+=g.length,_.push(y),d+=y.length,++o}for(e[2][0].data=ve(o);u<e[7][0].data.length/2;++u)c.setUint16(u*2,65535,!0),h.setUint16(u*2,65535,!0);return e[6][0].data=Mr(v),e[3][0].data=Mr(_),o}function _1(e,t){if(!t||!t.numbers)throw new Error("Must pass a \`numbers\` option -- check the README");var r=e.Sheets[e.SheetNames[0]];e.SheetNames.length>1&&console.error("The Numbers writer currently writes only the first table");var a=cr(r["!ref"]);a.s.r=a.s.c=0;var n=!1;a.e.c>9&&(n=!0,a.e.c=9),a.e.r>49&&(n=!0,a.e.r=49),n&&console.error("The Numbers writer is currently limited to ".concat(De(a)));var i=oa(r,{range:a,header:1}),s=["~Sh33tJ5~"];i.forEach(function(F){return F.forEach(function(S){typeof S=="string"&&s.push(S)})});var f={},o=[],c=we.read(t.numbers,{type:"base64"});c.FileIndex.map(function(F,S){return[F,c.FullPaths[S]]}).forEach(function(F){var S=F[0],V=F[1];if(S.type==2&&S.name.match(/\\.iwa/)){var ne=S.content,fe=vr(ne),ee=dr(fe);ee.forEach(function(Z){o.push(Z.id),f[Z.id]={deps:[],location:V,type:lt(Z.messages[0].meta[1][0].data)}})}}),o.sort(function(F,S){return F-S});var l=o.filter(function(F){return F>1}).map(function(F){return[F,ve(F)]});c.FileIndex.map(function(F,S){return[F,c.FullPaths[S]]}).forEach(function(F){var S=F[0],V=F[1];if(S.name.match(/\\.iwa/)){var ne=dr(vr(S.content));ne.forEach(function(fe){fe.messages.forEach(function(ee){l.forEach(function(Z){fe.messages.some(function(_e){return lt(_e.meta[1][0].data)!=11006&&v1(_e.data,Z[1])})&&f[Z[0]].deps.push(fe.id)})})})}});function v(){for(var F=927262;F<2e6;++F)if(!f[F])return F;throw new Error("Too many messages")}for(var h=we.find(c,f[1].location),d=dr(vr(h.content)),_,u=0;u<d.length;++u){var g=d[u];g.id==1&&(_=g)}var y=Nr(Ie(_.messages[0].data)[1][0].data);for(h=we.find(c,f[y].location),d=dr(vr(h.content)),u=0;u<d.length;++u)g=d[u],g.id==y&&(_=g);for(y=Nr(Ie(_.messages[0].data)[2][0].data),h=we.find(c,f[y].location),d=dr(vr(h.content)),u=0;u<d.length;++u)g=d[u],g.id==y&&(_=g);for(y=Nr(Ie(_.messages[0].data)[2][0].data),h=we.find(c,f[y].location),d=dr(vr(h.content)),u=0;u<d.length;++u)g=d[u],g.id==y&&(_=g);var C=Ie(_.messages[0].data);{C[6][0].data=ve(a.e.r+1),C[7][0].data=ve(a.e.c+1);var D=Nr(C[46][0].data),B=we.find(c,f[D].location),G=dr(vr(B.content));{for(var te=0;te<G.length&&G[te].id!=D;++te);if(G[te].id!=D)throw"Bad ColumnRowUIDMapArchive";var A=Ie(G[te].messages[0].data);A[1]=[],A[2]=[],A[3]=[];for(var W=0;W<=a.e.c;++W){var L=[];L[1]=L[2]=[{type:0,data:ve(W+420690)}],A[1].push({type:2,data:We(L)}),A[2].push({type:0,data:ve(W)}),A[3].push({type:0,data:ve(W)})}A[4]=[],A[5]=[],A[6]=[];for(var U=0;U<=a.e.r;++U)L=[],L[1]=L[2]=[{type:0,data:ve(U+726270)}],A[4].push({type:2,data:We(L)}),A[5].push({type:0,data:ve(U)}),A[6].push({type:0,data:ve(U)});G[te].messages[0].data=We(A)}B.content=at(tt(G)),B.size=B.content.length,delete C[46];var X=Ie(C[4][0].data);{X[7][0].data=ve(a.e.r+1);var z=Ie(X[1][0].data),ie=Nr(z[2][0].data);B=we.find(c,f[ie].location),G=dr(vr(B.content));{if(G[0].id!=ie)throw"Bad HeaderStorageBucket";var de=Ie(G[0].messages[0].data);for(U=0;U<i.length;++U){var se=Ie(de[2][0].data);se[1][0].data=ve(U),se[4][0].data=ve(i[U].length),de[2][U]={type:de[2][0].type,data:We(se)}}G[0].messages[0].data=We(de)}B.content=at(tt(G)),B.size=B.content.length;var Re=Nr(X[2][0].data);B=we.find(c,f[Re].location),G=dr(vr(B.content));{if(G[0].id!=Re)throw"Bad HeaderStorageBucket";for(de=Ie(G[0].messages[0].data),W=0;W<=a.e.c;++W)se=Ie(de[2][0].data),se[1][0].data=ve(W),se[4][0].data=ve(a.e.r+1),de[2][W]={type:de[2][0].type,data:We(se)};G[0].messages[0].data=We(de)}B.content=at(tt(G)),B.size=B.content.length;var Ne=Nr(X[4][0].data);(function(){for(var F=we.find(c,f[Ne].location),S=dr(vr(F.content)),V,ne=0;ne<S.length;++ne){var fe=S[ne];fe.id==Ne&&(V=fe)}var ee=Ie(V.messages[0].data);{ee[3]=[];var Z=[];s.forEach(function(Ue,ue){Z[1]=[{type:0,data:ve(ue)}],Z[2]=[{type:0,data:ve(1)}],Z[3]=[{type:2,data:d1(Ue)}],ee[3].push({type:2,data:We(Z)})})}V.messages[0].data=We(ee);var _e=tt(S),le=at(_e);F.content=le,F.size=F.content.length})();var Ze=Ie(X[3][0].data);{var je=Ze[1][0];delete Ze[2];var Me=Ie(je.data);{var Qe=Nr(Me[2][0].data);(function(){for(var F=we.find(c,f[Qe].location),S=dr(vr(F.content)),V,ne=0;ne<S.length;++ne){var fe=S[ne];fe.id==Qe&&(V=fe)}var ee=Ie(V.messages[0].data);{delete ee[6],delete Ze[7];var Z=new Uint8Array(ee[5][0].data);ee[5]=[];for(var _e=0,le=0;le<=a.e.r;++le){var Ue=Ie(Z);_e+=g1(Ue,i[le],s),Ue[1][0].data=ve(le),ee[5].push({data:We(Ue),type:2})}ee[1]=[{type:0,data:ve(a.e.c+1)}],ee[2]=[{type:0,data:ve(a.e.r+1)}],ee[3]=[{type:0,data:ve(_e)}],ee[4]=[{type:0,data:ve(a.e.r+1)}]}V.messages[0].data=We(ee);var ue=tt(S),xr=at(ue);F.content=xr,F.size=F.content.length})()}je.data=We(Me)}X[3][0].data=We(Ze)}C[4][0].data=We(X)}_.messages[0].data=We(C);var T=tt(d),M=at(T);return h.content=M,h.size=h.content.length,c}function w1(e){return function(r){for(var a=0;a!=e.length;++a){var n=e[a];r[n[0]]===void 0&&(r[n[0]]=n[1]),n[2]==="n"&&(r[n[0]]=Number(r[n[0]]))}}}function s0(e){w1([["cellDates",!1],["bookSST",!1],["bookType","xlsx"],["compression",!1],["WTF",!1]])(e)}function k1(e,t){return t.bookType=="ods"?Ci(e,t):t.bookType=="numbers"?_1(e,t):t.bookType=="xlsb"?E1(e,t):T1(e,t)}function E1(e,t){it=1024,e&&!e.SSF&&(e.SSF=ar(ye)),e&&e.SSF&&(ha(),ua(e.SSF),t.revssf=xa(e.SSF),t.revssf[e.SSF[65535]]=0,t.ssf=e.SSF),t.rels={},t.wbrels={},t.Strings=[],t.Strings.Count=0,t.Strings.Unique=0,At?t.revStrings=new Map:(t.revStrings={},t.revStrings.foo=[],delete t.revStrings.foo);var r=t.bookType=="xlsb"?"bin":"xml",a=li.indexOf(t.bookType)>-1,n=Un();s0(t=t||{});var i=Wa(),s="",f=0;if(t.cellXfs=[],Ur(t.cellXfs,{},{revssf:{General:0}}),e.Props||(e.Props={}),s="docProps/core.xml",oe(i,s,Xn(e.Props,t)),n.coreprops.push(s),pe(t.rels,2,s,he.CORE_PROPS),s="docProps/app.xml",!(e.Props&&e.Props.SheetNames))if(!e.Workbook||!e.Workbook.Sheets)e.Props.SheetNames=e.SheetNames;else{for(var o=[],c=0;c<e.SheetNames.length;++c)(e.Workbook.Sheets[c]||{}).Hidden!=2&&o.push(e.SheetNames[c]);e.Props.SheetNames=o}for(e.Props.Worksheets=e.Props.SheetNames.length,oe(i,s,zn(e.Props,t)),n.extprops.push(s),pe(t.rels,3,s,he.EXT_PROPS),e.Custprops!==e.Props&&ze(e.Custprops||{}).length>0&&(s="docProps/custom.xml",oe(i,s,\$n(e.Custprops,t)),n.custprops.push(s),pe(t.rels,4,s,he.CUST_PROPS)),f=1;f<=e.SheetNames.length;++f){var l={"!id":{}},v=e.Sheets[e.SheetNames[f-1]],h=(v||{})["!type"]||"sheet";if(s="xl/worksheets/sheet"+f+"."+r,oe(i,s,Fh(f-1,s,t,e,l)),n.sheets.push(s),pe(t.wbrels,-1,"worksheets/sheet"+f+"."+r,he.WS[0]),v){var d=v["!comments"],_=!1,u="";d&&d.length>0&&(u="xl/comments"+f+"."+r,oe(i,u,Ch(d,u,t)),n.comments.push(u),pe(l,-1,"../comments"+f+"."+r,he.CMNT),_=!0),v["!legacy"]&&_&&oe(i,"xl/drawings/vmlDrawing"+f+".vml",ci(f,v["!comments"])),delete v["!comments"],delete v["!legacy"]}l["!id"].rId1&&oe(i,Hn(s),ct(l))}return t.Strings!=null&&t.Strings.length>0&&(s="xl/sharedStrings."+r,oe(i,s,Ah(t.Strings,s,t)),n.strs.push(s),pe(t.wbrels,-1,"sharedStrings."+r,he.SST)),s="xl/workbook."+r,oe(i,s,Sh(e,s,t)),n.workbooks.push(s),pe(t.rels,1,s,he.WB),s="xl/theme/theme1.xml",oe(i,s,si(e.Themes,t)),n.themes.push(s),pe(t.wbrels,-1,"theme/theme1.xml",he.THEME),s="xl/styles."+r,oe(i,s,yh(e,s,t)),n.styles.push(s),pe(t.wbrels,-1,"styles."+r,he.STY),e.vbaraw&&a&&(s="xl/vbaProject.bin",oe(i,s,e.vbaraw),n.vba.push(s),pe(t.wbrels,-1,"vbaProject.bin",he.VBA)),s="xl/metadata."+r,oe(i,s,Dh(s)),n.metadata.push(s),pe(t.wbrels,-1,"metadata."+r,he.XLMETA),oe(i,"[Content_Types].xml",Wn(n,t)),oe(i,"_rels/.rels",ct(t.rels)),oe(i,"xl/_rels/workbook."+r+".rels",ct(t.wbrels)),delete t.revssf,delete t.ssf,i}function T1(e,t){it=1024,e&&!e.SSF&&(e.SSF=ar(ye)),e&&e.SSF&&(ha(),ua(e.SSF),t.revssf=xa(e.SSF),t.revssf[e.SSF[65535]]=0,t.ssf=e.SSF),t.rels={},t.wbrels={},t.Strings=[],t.Strings.Count=0,t.Strings.Unique=0,At?t.revStrings=new Map:(t.revStrings={},t.revStrings.foo=[],delete t.revStrings.foo);var r="xml",a=li.indexOf(t.bookType)>-1,n=Un();s0(t=t||{});var i=Wa(),s="",f=0;if(t.cellXfs=[],Ur(t.cellXfs,{},{revssf:{General:0}}),e.Props||(e.Props={}),s="docProps/core.xml",oe(i,s,Xn(e.Props,t)),n.coreprops.push(s),pe(t.rels,2,s,he.CORE_PROPS),s="docProps/app.xml",!(e.Props&&e.Props.SheetNames))if(!e.Workbook||!e.Workbook.Sheets)e.Props.SheetNames=e.SheetNames;else{for(var o=[],c=0;c<e.SheetNames.length;++c)(e.Workbook.Sheets[c]||{}).Hidden!=2&&o.push(e.SheetNames[c]);e.Props.SheetNames=o}e.Props.Worksheets=e.Props.SheetNames.length,oe(i,s,zn(e.Props,t)),n.extprops.push(s),pe(t.rels,3,s,he.EXT_PROPS),e.Custprops!==e.Props&&ze(e.Custprops||{}).length>0&&(s="docProps/custom.xml",oe(i,s,\$n(e.Custprops,t)),n.custprops.push(s),pe(t.rels,4,s,he.CUST_PROPS));var l=["SheetJ5"];for(t.tcid=0,f=1;f<=e.SheetNames.length;++f){var v={"!id":{}},h=e.Sheets[e.SheetNames[f-1]],d=(h||{})["!type"]||"sheet";if(s="xl/worksheets/sheet"+f+"."+r,oe(i,s,_i(f-1,t,e,v)),n.sheets.push(s),pe(t.wbrels,-1,"worksheets/sheet"+f+"."+r,he.WS[0]),h){var _=h["!comments"],u=!1,g="";if(_&&_.length>0){var y=!1;_.forEach(function(C){C[1].forEach(function(D){D.T==!0&&(y=!0)})}),y&&(g="xl/threadedComments/threadedComment"+f+"."+r,oe(i,g,Qc(_,l,t)),n.threadedcomments.push(g),pe(v,-1,"../threadedComments/threadedComment"+f+"."+r,he.TCMNT)),g="xl/comments"+f+"."+r,oe(i,g,oi(_,t)),n.comments.push(g),pe(v,-1,"../comments"+f+"."+r,he.CMNT),u=!0}h["!legacy"]&&u&&oe(i,"xl/drawings/vmlDrawing"+f+".vml",ci(f,h["!comments"])),delete h["!comments"],delete h["!legacy"]}v["!id"].rId1&&oe(i,Hn(s),ct(v))}return t.Strings!=null&&t.Strings.length>0&&(s="xl/sharedStrings."+r,oe(i,s,ei(t.Strings,t)),n.strs.push(s),pe(t.wbrels,-1,"sharedStrings."+r,he.SST)),s="xl/workbook."+r,oe(i,s,Ei(e,t)),n.workbooks.push(s),pe(t.rels,1,s,he.WB),s="xl/theme/theme1.xml",oe(i,s,si(e.Themes,t)),n.themes.push(s),pe(t.wbrels,-1,"theme/theme1.xml",he.THEME),s="xl/styles."+r,oe(i,s,ni(e,t)),n.styles.push(s),pe(t.wbrels,-1,"styles."+r,he.STY),e.vbaraw&&a&&(s="xl/vbaProject.bin",oe(i,s,e.vbaraw),n.vba.push(s),pe(t.wbrels,-1,"vbaProject.bin",he.VBA)),s="xl/metadata."+r,oe(i,s,fi()),n.metadata.push(s),pe(t.wbrels,-1,"metadata."+r,he.XLMETA),l.length>1&&(s="xl/persons/person.xml",oe(i,s,eo(l,t)),n.people.push(s),pe(t.wbrels,-1,"persons/person.xml",he.PEOPLE)),oe(i,"[Content_Types].xml",Wn(n,t)),oe(i,"_rels/.rels",ct(t.rels)),oe(i,"xl/_rels/workbook."+r+".rels",ct(t.wbrels)),delete t.revssf,delete t.ssf,i}function S1(e,t){var r="";switch((t||{}).type||"base64"){case"buffer":return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]];case"base64":r=Or(e.slice(0,12));break;case"binary":r=e;break;case"array":return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]];default:throw new Error("Unrecognized type "+(t&&t.type||"undefined"))}return[r.charCodeAt(0),r.charCodeAt(1),r.charCodeAt(2),r.charCodeAt(3),r.charCodeAt(4),r.charCodeAt(5),r.charCodeAt(6),r.charCodeAt(7)]}function Di(e,t){switch(t.type){case"base64":case"binary":break;case"buffer":case"array":t.type="";break;case"file":return Lt(t.file,we.write(e,{type:xe?"buffer":""}));case"string":throw new Error("'string' output type invalid for '"+t.bookType+"' files");default:throw new Error("Unrecognized type "+t.type)}return we.write(e,t)}function F1(e,t){var r=ar(t||{}),a=k1(e,r);return y1(a,r)}function y1(e,t){var r={},a=xe?"nodebuffer":typeof Uint8Array<"u"?"array":"string";if(t.compression&&(r.compression="DEFLATE"),t.password)r.type=a;else switch(t.type){case"base64":r.type="base64";break;case"binary":r.type="string";break;case"string":throw new Error("'string' output type invalid for '"+t.bookType+"' files");case"buffer":case"file":r.type=a;break;default:throw new Error("Unrecognized type "+t.type)}var n=e.FullPaths?we.write(e,{fileType:"zip",type:{nodebuffer:"buffer",string:"binary"}[r.type]||r.type,compression:!!t.compression}):e.generate(r);if(typeof Deno<"u"&&typeof n=="string"){if(t.type=="binary"||t.type=="base64")return n;n=new Uint8Array(la(n))}return t.password&&typeof encrypt_agile<"u"?Di(encrypt_agile(n,t.password),t):t.type==="file"?Lt(t.file,n):t.type=="string"?Tt(n):n}function A1(e,t){var r=t||{},a=Xh(e,r);return Di(a,r)}function kr(e,t,r){r||(r="");var a=r+e;switch(t.type){case"base64":return Ot(yr(a));case"binary":return yr(a);case"string":return e;case"file":return Lt(t.file,a,"utf8");case"buffer":return xe?Rr(a,"utf8"):typeof TextEncoder<"u"?new TextEncoder().encode(a):kr(a,{type:"binary"}).split("").map(function(n){return n.charCodeAt(0)})}throw new Error("Unrecognized type "+t.type)}function C1(e,t){switch(t.type){case"base64":return Ot(e);case"binary":return e;case"string":return e;case"file":return Lt(t.file,e,"binary");case"buffer":return xe?Rr(e,"binary"):e.split("").map(function(r){return r.charCodeAt(0)})}throw new Error("Unrecognized type "+t.type)}function Jt(e,t){switch(t.type){case"string":case"base64":case"binary":for(var r="",a=0;a<e.length;++a)r+=String.fromCharCode(e[a]);return t.type=="base64"?Ot(r):t.type=="string"?Tt(r):r;case"file":return Lt(t.file,e);case"buffer":return e;default:throw new Error("Unrecognized type "+t.type)}}function f0(e,t){Zi(),xh(e);var r=ar(t||{});if(r.cellStyles&&(r.cellNF=!0,r.sheetStubs=!0),r.type=="array"){r.type="binary";var a=f0(e,r);return r.type="array",la(a)}var n=0;if(r.sheet&&(typeof r.sheet=="number"?n=r.sheet:n=e.SheetNames.indexOf(r.sheet),!e.SheetNames[n]))throw new Error("Sheet not found: "+r.sheet+" : "+typeof r.sheet);switch(r.bookType||"xlsb"){case"xml":case"xlml":return kr(Hh(e,r),r);case"slk":case"sylk":return kr(oc.from_sheet(e.Sheets[e.SheetNames[n]],r),r);case"htm":case"html":return kr(Fi(e.Sheets[e.SheetNames[n]],r),r);case"txt":return C1(Oi(e.Sheets[e.SheetNames[n]],r),r);case"csv":return kr(c0(e.Sheets[e.SheetNames[n]],r),r,"\\uFEFF");case"dif":return kr(lc.from_sheet(e.Sheets[e.SheetNames[n]],r),r);case"dbf":return Jt(cc.from_sheet(e.Sheets[e.SheetNames[n]],r),r);case"prn":return kr(uc.from_sheet(e.Sheets[e.SheetNames[n]],r),r);case"rtf":return kr(gc.from_sheet(e.Sheets[e.SheetNames[n]],r),r);case"eth":return kr(Qn.from_sheet(e.Sheets[e.SheetNames[n]],r),r);case"fods":return kr(Ci(e,r),r);case"wk1":return Jt(J0.sheet_to_wk1(e.Sheets[e.SheetNames[n]],r),r);case"wk3":return Jt(J0.book_to_wk3(e,r),r);case"biff2":r.biff||(r.biff=2);case"biff3":r.biff||(r.biff=3);case"biff4":return r.biff||(r.biff=4),Jt(Si(e,r),r);case"biff5":r.biff||(r.biff=5);case"biff8":case"xla":case"xls":return r.biff||(r.biff=8),A1(e,r);case"xlsx":case"xlsm":case"xlam":case"xlsb":case"numbers":case"ods":return F1(e,r);default:throw new Error("Unrecognized bookType |"+r.bookType+"|")}}function D1(e,t,r,a,n,i,s,f){var o=Ge(r),c=f.defval,l=f.raw||!Object.prototype.hasOwnProperty.call(f,"raw"),v=!0,h=n===1?[]:{};if(n!==1)if(Object.defineProperty)try{Object.defineProperty(h,"__rowNum__",{value:r,enumerable:!1})}catch{h.__rowNum__=r}else h.__rowNum__=r;if(!s||e[r])for(var d=t.s.c;d<=t.e.c;++d){var _=s?e[r][d]:e[a[d]+o];if(_===void 0||_.t===void 0){if(c===void 0)continue;i[d]!=null&&(h[i[d]]=c);continue}var u=_.v;switch(_.t){case"z":if(u==null)break;continue;case"e":u=u==0?null:void 0;break;case"s":case"d":case"b":case"n":break;default:throw new Error("unrecognized type "+_.t)}if(i[d]!=null){if(u==null)if(_.t=="e"&&u===null)h[i[d]]=null;else if(c!==void 0)h[i[d]]=c;else if(l&&u===null)h[i[d]]=null;else continue;else h[i[d]]=l&&(_.t!=="n"||_.t==="n"&&f.rawNumbers!==!1)?u:Ir(_,u,f);u!=null&&(v=!1)}}return{row:h,isempty:v}}function oa(e,t){if(e==null||e["!ref"]==null)return[];var r={t:"n",v:0},a=0,n=1,i=[],s=0,f="",o={s:{r:0,c:0},e:{r:0,c:0}},c=t||{},l=c.range!=null?c.range:e["!ref"];switch(c.header===1?a=1:c.header==="A"?a=2:Array.isArray(c.header)?a=3:c.header==null&&(a=0),typeof l){case"string":o=Te(l);break;case"number":o=Te(e["!ref"]),o.s.r=l;break;default:o=l}a>0&&(n=0);var v=Ge(o.s.r),h=[],d=[],_=0,u=0,g=Array.isArray(e),y=o.s.r,C=0,D={};g&&!e[y]&&(e[y]=[]);var B=c.skipHidden&&e["!cols"]||[],G=c.skipHidden&&e["!rows"]||[];for(C=o.s.c;C<=o.e.c;++C)if(!(B[C]||{}).hidden)switch(h[C]=\$e(C),r=g?e[y][C]:e[h[C]+v],a){case 1:i[C]=C-o.s.c;break;case 2:i[C]=h[C];break;case 3:i[C]=c.header[C-o.s.c];break;default:if(r==null&&(r={w:"__EMPTY",t:"s"}),f=s=Ir(r,null,c),u=D[s]||0,!u)D[s]=1;else{do f=s+"_"+u++;while(D[f]);D[s]=u,D[f]=1}i[C]=f}for(y=o.s.r+n;y<=o.e.r;++y)if(!(G[y]||{}).hidden){var te=D1(e,o,y,h,a,i,g,c);(te.isempty===!1||(a===1?c.blankrows!==!1:c.blankrows))&&(d[_++]=te.row)}return d.length=_,d}var nn=/"/g;function O1(e,t,r,a,n,i,s,f){for(var o=!0,c=[],l="",v=Ge(r),h=t.s.c;h<=t.e.c;++h)if(a[h]){var d=f.dense?(e[r]||[])[h]:e[a[h]+v];if(d==null)l="";else if(d.v!=null){o=!1,l=""+(f.rawNumbers&&d.t=="n"?d.v:Ir(d,null,f));for(var _=0,u=0;_!==l.length;++_)if((u=l.charCodeAt(_))===n||u===i||u===34||f.forceQuotes){l='"'+l.replace(nn,'""')+'"';break}l=="ID"&&(l='"ID"')}else d.f!=null&&!d.F?(o=!1,l="="+d.f,l.indexOf(",")>=0&&(l='"'+l.replace(nn,'""')+'"')):l="";c.push(l)}return f.blankrows===!1&&o?null:c.join(s)}function c0(e,t){var r=[],a=t??{};if(e==null||e["!ref"]==null)return"";var n=Te(e["!ref"]),i=a.FS!==void 0?a.FS:",",s=i.charCodeAt(0),f=a.RS!==void 0?a.RS:\`
|
|
2584
|
+
\`,o=f.charCodeAt(0),c=new RegExp((i=="|"?"\\\\|":i)+"+\$"),l="",v=[];a.dense=Array.isArray(e);for(var h=a.skipHidden&&e["!cols"]||[],d=a.skipHidden&&e["!rows"]||[],_=n.s.c;_<=n.e.c;++_)(h[_]||{}).hidden||(v[_]=\$e(_));for(var u=0,g=n.s.r;g<=n.e.r;++g)(d[g]||{}).hidden||(l=O1(e,n,g,v,s,o,i,a),l!=null&&(a.strip&&(l=l.replace(c,"")),(l||a.blankrows!==!1)&&r.push((u++?f:"")+l)));return delete a.dense,r.join("")}function Oi(e,t){t||(t={}),t.FS=" ",t.RS=\`
|
|
2585
|
+
\`;var r=c0(e,t);if(typeof ke>"u"||t.type=="string")return r;var a=ke.utils.encode(1200,r,"str");return"\\xFF\\xFE"+a}function I1(e){var t="",r,a="";if(e==null||e["!ref"]==null)return[];var n=Te(e["!ref"]),i="",s=[],f,o=[],c=Array.isArray(e);for(f=n.s.c;f<=n.e.c;++f)s[f]=\$e(f);for(var l=n.s.r;l<=n.e.r;++l)for(i=Ge(l),f=n.s.c;f<=n.e.c;++f)if(t=s[f]+i,r=c?(e[l]||[])[f]:e[t],a="",r!==void 0){if(r.F!=null){if(t=r.F,!r.f)continue;a=r.f,t.indexOf(":")==-1&&(t=t+":"+t)}if(r.f!=null)a=r.f;else{if(r.t=="z")continue;if(r.t=="n"&&r.v!=null)a=""+r.v;else if(r.t=="b")a=r.v?"TRUE":"FALSE";else if(r.w!==void 0)a="'"+r.w;else{if(r.v===void 0)continue;r.t=="s"?a="'"+r.v:a=""+r.v}}o[o.length]=t+"="+a}return o}function Ii(e,t,r){var a=r||{},n=+!a.skipHeader,i=e||{},s=0,f=0;if(i&&a.origin!=null)if(typeof a.origin=="number")s=a.origin;else{var o=typeof a.origin=="string"?Le(a.origin):a.origin;s=o.r,f=o.c}var c,l={s:{c:0,r:0},e:{c:f,r:s+t.length-1+n}};if(i["!ref"]){var v=Te(i["!ref"]);l.e.c=Math.max(l.e.c,v.e.c),l.e.r=Math.max(l.e.r,v.e.r),s==-1&&(s=v.e.r+1,l.e.r=s+t.length-1+n)}else s==-1&&(s=0,l.e.r=t.length-1+n);var h=a.header||[],d=0;t.forEach(function(u,g){ze(u).forEach(function(y){(d=h.indexOf(y))==-1&&(h[d=h.length]=y);var C=u[y],D="z",B="",G=ge({c:f+d,r:s+g+n});c=bt(i,G),C&&typeof C=="object"&&!(C instanceof Date)?i[G]=C:(typeof C=="number"?D="n":typeof C=="boolean"?D="b":typeof C=="string"?D="s":C instanceof Date?(D="d",a.cellDates||(D="n",C=tr(C)),B=a.dateNF||ye[14]):C===null&&a.nullError&&(D="e",C=0),c?(c.t=D,c.v=C,delete c.w,delete c.R,B&&(c.z=B)):i[G]=c={t:D,v:C},B&&(c.z=B))})}),l.e.c=Math.max(l.e.c,f+h.length-1);var _=Ge(s);if(n)for(d=0;d<h.length;++d)i[\$e(d+f)+_]={t:"s",v:h[d]};return i["!ref"]=De(l),i}function R1(e,t){return Ii(null,e,t)}function bt(e,t,r){if(typeof t=="string"){if(Array.isArray(e)){var a=Le(t);return e[a.r]||(e[a.r]=[]),e[a.r][a.c]||(e[a.r][a.c]={t:"z"})}return e[t]||(e[t]={t:"z"})}return typeof t!="number"?bt(e,ge(t)):bt(e,ge({r:t,c:r||0}))}function N1(e,t){if(typeof t=="number"){if(t>=0&&e.SheetNames.length>t)return t;throw new Error("Cannot find sheet # "+t)}else if(typeof t=="string"){var r=e.SheetNames.indexOf(t);if(r>-1)return r;throw new Error("Cannot find sheet name |"+t+"|")}else throw new Error("Cannot find sheet |"+t+"|")}function b1(){return{SheetNames:[],Sheets:{}}}function P1(e,t,r,a){var n=1;if(!r)for(;n<=65535&&e.SheetNames.indexOf(r="Sheet"+n)!=-1;++n,r=void 0);if(!r||e.SheetNames.length>=65535)throw new Error("Too many worksheets");if(a&&e.SheetNames.indexOf(r)>=0){var i=r.match(/(^.*?)(\\d+)\$/);n=i&&+i[2]||0;var s=i&&i[1]||r;for(++n;n<=65535&&e.SheetNames.indexOf(r=s+n)!=-1;++n);}if(ki(r),e.SheetNames.indexOf(r)>=0)throw new Error("Worksheet with name |"+r+"| already exists!");return e.SheetNames.push(r),e.Sheets[r]=t,r}function L1(e,t,r){e.Workbook||(e.Workbook={}),e.Workbook.Sheets||(e.Workbook.Sheets=[]);var a=N1(e,t);switch(e.Workbook.Sheets[a]||(e.Workbook.Sheets[a]={}),r){case 0:case 1:case 2:break;default:throw new Error("Bad sheet visibility setting "+r)}e.Workbook.Sheets[a].Hidden=r}function B1(e,t){return e.z=t,e}function Ri(e,t,r){return t?(e.l={Target:t},r&&(e.l.Tooltip=r)):delete e.l,e}function M1(e,t,r){return Ri(e,"#"+t,r)}function U1(e,t,r){e.c||(e.c=[]),e.c.push({t,a:r||"SheetJS"})}function W1(e,t,r,a){for(var n=typeof t!="string"?t:Te(t),i=typeof t=="string"?t:De(t),s=n.s.r;s<=n.e.r;++s)for(var f=n.s.c;f<=n.e.c;++f){var o=bt(e,s,f);o.t="n",o.F=i,delete o.v,s==n.s.r&&f==n.s.c&&(o.f=r,a&&(o.D=!0))}return e}var _a={encode_col:\$e,encode_row:Ge,encode_cell:ge,encode_range:De,decode_col:Ja,decode_row:Ya,split_cell:ef,decode_cell:Le,decode_range:cr,format_cell:Ir,sheet_add_aoa:Nn,sheet_add_json:Ii,sheet_add_dom:yi,aoa_to_sheet:vt,json_to_sheet:R1,table_to_sheet:Ai,table_to_book:u1,sheet_to_csv:c0,sheet_to_txt:Oi,sheet_to_json:oa,sheet_to_html:Fi,sheet_to_formulae:I1,sheet_to_row_object_array:oa,sheet_get_cell:bt,book_new:b1,book_append_sheet:P1,book_set_sheet_visibility:L1,cell_set_number_format:B1,cell_set_hyperlink:Ri,cell_set_internal_link:M1,cell_add_comment:U1,sheet_set_array_formula:W1,consts:{SHEET_VISIBLE:0,SHEET_HIDDEN:1,SHEET_VERY_HIDDEN:2}};var V1=Ct.version;addEventListener("message",({data:e})=>{let{action:t,columns:r,data:a,options:n}=e;if(t==="START_EXPORT"){console.log("Worker START_EXPORT with options:",n);try{let i=n.includeHeaders!==!1,s=[],f=n.customHeaders;if(f&&Array.isArray(f))for(let h=0;h<f.length;h++)s.push(f[h]);if(i){let h=r.map(d=>d.headerName||d.field);s.push(h)}let o=(h,d)=>{if(h.type==="group"){let _=[],g=\`\${" ".repeat(d)}\${h.groupField}: \${h.groupKey}\`;if(r.forEach((y,C)=>{if(C===0)_.push(g);else{let D="";h.data&&h.data[y.field]!==void 0&&h.data[y.field]!==null&&(D=h.data[y.field]),_.push(D)}}),s.push(_),h.children&&h.children.length>0)for(let y of h.children)o(y,d+1)}else if(h.type==="group-footer"){let _=[],u=" ".repeat(d);r.forEach((g,y)=>{y===0?_.push(\`\${u}Total (\${h.groupKey})\`):_.push(h.data&&h.data[g.field]!=null?h.data[g.field]:"")}),s.push(_)}else{let _=r.map(u=>{if(h.data==null)return"";let g=h.data[u.field];return g??""});s.push(_)}};for(let h=0;h<a.length;h++){let d=a[h];o(d,d.level||0)}let c=_a.aoa_to_sheet(s),l=_a.book_new();_a.book_append_sheet(l,c,"Sheet1");let v=f0(l,{bookType:"xlsx",type:"array"});postMessage({action:"COMPLETE",payload:{buffer:v,type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"}})}catch(i){postMessage({action:"ERROR",error:i.message||"Excel Export Failed"})}}});})();
|
|
2586
|
+
/*! Bundled license information:
|
|
2587
|
+
|
|
2588
|
+
xlsx/xlsx.mjs:
|
|
2589
|
+
(*! xlsx.js (C) 2013-present SheetJS -- http://sheetjs.com *)
|
|
2590
|
+
|
|
2591
|
+
xlsx/xlsx.mjs:
|
|
2592
|
+
(*! sheetjs (C) 2013-present SheetJS -- http://sheetjs.com *)
|
|
2593
|
+
*/
|
|
2214
2594
|
`;
|
|
2215
2595
|
|
|
2216
|
-
class
|
|
2217
|
-
|
|
2218
|
-
constructor(platformId) {
|
|
2219
|
-
this.isBrowser = isPlatformBrowser(platformId);
|
|
2220
|
-
}
|
|
2221
|
-
exportDataAsCsv(options, columns, data, config) {
|
|
2596
|
+
class ExcelExportService {
|
|
2597
|
+
exportDataAsExcel(options, columns, data) {
|
|
2222
2598
|
return new Promise((resolve, reject) => {
|
|
2223
|
-
if (
|
|
2224
|
-
console.warn('
|
|
2225
|
-
return
|
|
2599
|
+
if (typeof Worker === 'undefined') {
|
|
2600
|
+
console.warn('Excel Export is only supported in browser environments with web workers');
|
|
2601
|
+
return reject(new Error('Web Workers not supported'));
|
|
2226
2602
|
}
|
|
2227
|
-
//
|
|
2228
|
-
const blob = new Blob([
|
|
2603
|
+
// Create worker from blob
|
|
2604
|
+
const blob = new Blob([EXCEL_WORKER_CODE], { type: 'application/javascript' });
|
|
2229
2605
|
const workerUrl = URL.createObjectURL(blob);
|
|
2230
2606
|
const worker = new Worker(workerUrl);
|
|
2231
|
-
worker.onmessage = ({ data:
|
|
2232
|
-
|
|
2233
|
-
|
|
2234
|
-
|
|
2607
|
+
worker.onmessage = ({ data: response }) => {
|
|
2608
|
+
if (response.action === 'COMPLETE') {
|
|
2609
|
+
const { buffer, type } = response.payload;
|
|
2610
|
+
// Provide the exact MIME type to trigger correct local OS association
|
|
2611
|
+
const exportBlob = new Blob([buffer], { type });
|
|
2612
|
+
this.downloadBlob(exportBlob, options.fileName || 'export.xlsx');
|
|
2235
2613
|
worker.terminate();
|
|
2236
2614
|
URL.revokeObjectURL(workerUrl);
|
|
2237
2615
|
resolve();
|
|
2238
2616
|
}
|
|
2239
|
-
else if (action === 'ERROR') {
|
|
2617
|
+
else if (response.action === 'ERROR') {
|
|
2240
2618
|
worker.terminate();
|
|
2241
2619
|
URL.revokeObjectURL(workerUrl);
|
|
2242
|
-
reject(new Error(error));
|
|
2620
|
+
reject(new Error(response.error));
|
|
2243
2621
|
}
|
|
2244
2622
|
};
|
|
2245
|
-
worker.onerror = (
|
|
2623
|
+
worker.onerror = (error) => {
|
|
2246
2624
|
worker.terminate();
|
|
2247
2625
|
URL.revokeObjectURL(workerUrl);
|
|
2248
|
-
reject(
|
|
2626
|
+
reject(error);
|
|
2249
2627
|
};
|
|
2250
|
-
//
|
|
2628
|
+
// Start processing
|
|
2251
2629
|
worker.postMessage({
|
|
2252
2630
|
action: 'START_EXPORT',
|
|
2253
2631
|
columns,
|
|
@@ -2256,43 +2634,33 @@ class CsvExportService {
|
|
|
2256
2634
|
});
|
|
2257
2635
|
});
|
|
2258
2636
|
}
|
|
2259
|
-
downloadBlob(
|
|
2260
|
-
|
|
2261
|
-
|
|
2262
|
-
|
|
2263
|
-
|
|
2264
|
-
|
|
2265
|
-
|
|
2266
|
-
const url = URL.createObjectURL(blob);
|
|
2267
|
-
const a = document.createElement('a');
|
|
2268
|
-
a.href = url;
|
|
2269
|
-
a.download = fileName;
|
|
2270
|
-
document.body.appendChild(a);
|
|
2271
|
-
a.click();
|
|
2272
|
-
// Clean up
|
|
2637
|
+
downloadBlob(blob, filename) {
|
|
2638
|
+
const link = document.createElement('a');
|
|
2639
|
+
link.href = URL.createObjectURL(blob);
|
|
2640
|
+
link.download = filename;
|
|
2641
|
+
link.style.display = 'none';
|
|
2642
|
+
document.body.appendChild(link);
|
|
2643
|
+
link.click();
|
|
2273
2644
|
setTimeout(() => {
|
|
2274
|
-
document.body.removeChild(
|
|
2275
|
-
URL.revokeObjectURL(
|
|
2645
|
+
document.body.removeChild(link);
|
|
2646
|
+
URL.revokeObjectURL(link.href);
|
|
2276
2647
|
}, 100);
|
|
2277
2648
|
}
|
|
2278
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type:
|
|
2279
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type:
|
|
2649
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ExcelExportService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2650
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ExcelExportService, providedIn: 'root' });
|
|
2280
2651
|
}
|
|
2281
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type:
|
|
2652
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ExcelExportService, decorators: [{
|
|
2282
2653
|
type: Injectable,
|
|
2283
2654
|
args: [{
|
|
2284
2655
|
providedIn: 'root'
|
|
2285
2656
|
}]
|
|
2286
|
-
}]
|
|
2287
|
-
type: Inject,
|
|
2288
|
-
args: [PLATFORM_ID]
|
|
2289
|
-
}] }] });
|
|
2657
|
+
}] });
|
|
2290
2658
|
|
|
2291
2659
|
class UltraGridComponent {
|
|
2292
2660
|
cdr;
|
|
2293
2661
|
ngZone;
|
|
2294
2662
|
flattener;
|
|
2295
|
-
|
|
2663
|
+
excelExportService;
|
|
2296
2664
|
_workerInitialized = false;
|
|
2297
2665
|
columns = [];
|
|
2298
2666
|
rowData = [];
|
|
@@ -2310,7 +2678,11 @@ class UltraGridComponent {
|
|
|
2310
2678
|
sortModel = [];
|
|
2311
2679
|
groupModel = [];
|
|
2312
2680
|
valuesModel = [];
|
|
2681
|
+
pivotColumns = [];
|
|
2313
2682
|
groupStateMap = new Map();
|
|
2683
|
+
_dynamicPivotColumns = []; // Dynamic pillars for pivot mode
|
|
2684
|
+
_userColumns = []; // Backup of original columns
|
|
2685
|
+
_isRebuildingColumns = false;
|
|
2314
2686
|
_internalDataSource;
|
|
2315
2687
|
_localTreeData = [];
|
|
2316
2688
|
_unpaginatedLocalData = [];
|
|
@@ -2341,11 +2713,11 @@ class UltraGridComponent {
|
|
|
2341
2713
|
hasHeaderCheckboxSelection = false;
|
|
2342
2714
|
get rowHeight() { return this.config.rowHeight || 40; }
|
|
2343
2715
|
get showPagination() { return this.pagination || !!this.serverDataSource; }
|
|
2344
|
-
constructor(platformId, cdr, ngZone, flattener,
|
|
2716
|
+
constructor(platformId, cdr, ngZone, flattener, excelExportService) {
|
|
2345
2717
|
this.cdr = cdr;
|
|
2346
2718
|
this.ngZone = ngZone;
|
|
2347
2719
|
this.flattener = flattener;
|
|
2348
|
-
this.
|
|
2720
|
+
this.excelExportService = excelExportService;
|
|
2349
2721
|
this.isBrowser = isPlatformBrowser(platformId);
|
|
2350
2722
|
this.initSortingWorker();
|
|
2351
2723
|
}
|
|
@@ -2424,6 +2796,10 @@ class UltraGridComponent {
|
|
|
2424
2796
|
if (data.resultTree) {
|
|
2425
2797
|
this._unflattenedTreeData = data.resultTree;
|
|
2426
2798
|
}
|
|
2799
|
+
// If pivot mode returned new dynamic columns, update the grid structure
|
|
2800
|
+
if (data.pivotColumns) {
|
|
2801
|
+
this.handlePivotColumns(data.pivotColumns);
|
|
2802
|
+
}
|
|
2427
2803
|
// Always hydrate the structural tree so group node checkmarks strictly persist across flatten events
|
|
2428
2804
|
const hydrateTree = (nodes) => {
|
|
2429
2805
|
let allSelected = true;
|
|
@@ -2435,6 +2811,21 @@ class UltraGridComponent {
|
|
|
2435
2811
|
const cached = this._mappedRowData[node.id];
|
|
2436
2812
|
if (cached) {
|
|
2437
2813
|
node.data = cached.data;
|
|
2814
|
+
// Re-inject pivot fields lost during worker serialization
|
|
2815
|
+
if (this.config.pivotMode && data.pivotColumns && this.pivotColumns.length > 0 && typeof node.data === 'object' && node.data !== null) {
|
|
2816
|
+
const primaryPivot = this.pivotColumns[0];
|
|
2817
|
+
const rowPivotVal = String(node.data[primaryPivot]);
|
|
2818
|
+
const cols = data.pivotColumns;
|
|
2819
|
+
for (let j = 0; j < cols.length; j++) {
|
|
2820
|
+
const pCol = cols[j];
|
|
2821
|
+
if (String(pCol.pivotValue) === rowPivotVal) {
|
|
2822
|
+
node.data[pCol.field] = node.data[pCol.originalField];
|
|
2823
|
+
}
|
|
2824
|
+
else {
|
|
2825
|
+
node.data[pCol.field] = null;
|
|
2826
|
+
}
|
|
2827
|
+
}
|
|
2828
|
+
}
|
|
2438
2829
|
node.selected = cached.selected;
|
|
2439
2830
|
if (!cached.selected)
|
|
2440
2831
|
allSelected = false;
|
|
@@ -2483,7 +2874,49 @@ class UltraGridComponent {
|
|
|
2483
2874
|
}
|
|
2484
2875
|
}
|
|
2485
2876
|
updateVisibleColumns() {
|
|
2486
|
-
|
|
2877
|
+
// Source selection:
|
|
2878
|
+
// 1. If we have dynamic pivot results, use those as the base.
|
|
2879
|
+
// 2. Otherwise, use the standard columns input.
|
|
2880
|
+
let baseColumns = (this.config.pivotMode && this.pivotColumns.length > 0 && this._dynamicPivotColumns.length > 0)
|
|
2881
|
+
? [...this._dynamicPivotColumns]
|
|
2882
|
+
: [...this.columns];
|
|
2883
|
+
// If grouping is active, we MUST HAVE an Auto Group Column at index 0
|
|
2884
|
+
if (this.groupModel.length > 0) {
|
|
2885
|
+
// Find or Create Auto Column
|
|
2886
|
+
let autoCol = baseColumns.find(c => c.field === 'ag-Grid-AutoColumn');
|
|
2887
|
+
// Dynamically set header name based on active group
|
|
2888
|
+
let groupHeaderName = 'Group';
|
|
2889
|
+
if (this.groupModel.length === 1) {
|
|
2890
|
+
const sourceCol = this.columns.find(c => c.field === this.groupModel[0]);
|
|
2891
|
+
if (sourceCol) {
|
|
2892
|
+
groupHeaderName = sourceCol.headerName || sourceCol.field;
|
|
2893
|
+
}
|
|
2894
|
+
}
|
|
2895
|
+
else if (this.groupModel.length > 1) {
|
|
2896
|
+
groupHeaderName = 'Groups';
|
|
2897
|
+
}
|
|
2898
|
+
if (!autoCol) {
|
|
2899
|
+
autoCol = {
|
|
2900
|
+
field: 'ag-Grid-AutoColumn',
|
|
2901
|
+
headerName: groupHeaderName,
|
|
2902
|
+
width: 250,
|
|
2903
|
+
pinned: 'left',
|
|
2904
|
+
checkboxSelection: this.hasCheckboxSelection,
|
|
2905
|
+
headerCheckboxSelection: this.hasHeaderCheckboxSelection
|
|
2906
|
+
};
|
|
2907
|
+
baseColumns.unshift(autoCol);
|
|
2908
|
+
}
|
|
2909
|
+
else {
|
|
2910
|
+
autoCol.headerName = groupHeaderName; // Ensure Name Updates dynamically
|
|
2911
|
+
// Ensure it's at the front and pinned
|
|
2912
|
+
const idx = baseColumns.indexOf(autoCol);
|
|
2913
|
+
baseColumns.splice(idx, 1);
|
|
2914
|
+
baseColumns.unshift(autoCol);
|
|
2915
|
+
autoCol.pinned = 'left';
|
|
2916
|
+
}
|
|
2917
|
+
}
|
|
2918
|
+
// Hide columns that are currently inside the group model so we don't display dual columns
|
|
2919
|
+
const temp = baseColumns.filter(c => !c.hide && (c.field === 'ag-Grid-AutoColumn' || !this.groupModel.includes(c.field)));
|
|
2487
2920
|
const left = temp.filter(c => c.pinned === 'left');
|
|
2488
2921
|
const right = temp.filter(c => c.pinned === 'right');
|
|
2489
2922
|
const center = temp.filter(c => !c.pinned);
|
|
@@ -2498,13 +2931,29 @@ class UltraGridComponent {
|
|
|
2498
2931
|
currRight += (c.width || 200);
|
|
2499
2932
|
});
|
|
2500
2933
|
this.visibleColumns = [...left, ...center, ...right];
|
|
2501
|
-
// Ensure checkbox selection strictly
|
|
2934
|
+
// Ensure checkbox selection and header checkbox selection strictly stay on the first visible column
|
|
2935
|
+
// (which should be the Auto Group Column if grouping is active)
|
|
2502
2936
|
if (this.visibleColumns.length > 0) {
|
|
2503
2937
|
this.visibleColumns.forEach((c, index) => {
|
|
2504
|
-
c.
|
|
2505
|
-
|
|
2938
|
+
if (c.field === 'ag-Grid-AutoColumn') {
|
|
2939
|
+
c.checkboxSelection = this.hasCheckboxSelection;
|
|
2940
|
+
c.headerCheckboxSelection = this.hasHeaderCheckboxSelection;
|
|
2941
|
+
}
|
|
2942
|
+
else {
|
|
2943
|
+
// If it's not the auto-column, and we ARE grouping, it shouldn't have checkboxes
|
|
2944
|
+
if (this.groupModel.length > 0) {
|
|
2945
|
+
c.checkboxSelection = false;
|
|
2946
|
+
c.headerCheckboxSelection = false;
|
|
2947
|
+
}
|
|
2948
|
+
else {
|
|
2949
|
+
// Normal mode: first column gets it
|
|
2950
|
+
c.checkboxSelection = index === 0 ? this.hasCheckboxSelection : false;
|
|
2951
|
+
c.headerCheckboxSelection = index === 0 ? this.hasHeaderCheckboxSelection : false;
|
|
2952
|
+
}
|
|
2953
|
+
}
|
|
2506
2954
|
});
|
|
2507
2955
|
}
|
|
2956
|
+
this.cdr.markForCheck();
|
|
2508
2957
|
}
|
|
2509
2958
|
wrapServerDataSource(source) {
|
|
2510
2959
|
return {
|
|
@@ -2571,7 +3020,9 @@ class UltraGridComponent {
|
|
|
2571
3020
|
groupModel: this.groupModel,
|
|
2572
3021
|
groupStateMap: stateMapObj,
|
|
2573
3022
|
aggregations: aggregations,
|
|
2574
|
-
groupIncludeFooter: !!this.config.groupIncludeFooter
|
|
3023
|
+
groupIncludeFooter: !!this.config.groupIncludeFooter,
|
|
3024
|
+
pivotMode: !!this.config.pivotMode,
|
|
3025
|
+
pivotColumns: this.pivotColumns
|
|
2575
3026
|
});
|
|
2576
3027
|
return;
|
|
2577
3028
|
}
|
|
@@ -2602,7 +3053,16 @@ class UltraGridComponent {
|
|
|
2602
3053
|
this.cdr.markForCheck();
|
|
2603
3054
|
}
|
|
2604
3055
|
isNumericColumn(field) {
|
|
2605
|
-
//
|
|
3056
|
+
// First, check if the field name or its corresponding column header suggests it's a date/time
|
|
3057
|
+
const lowerField = field.toLowerCase();
|
|
3058
|
+
const col = this.columns.find(c => c.field === field);
|
|
3059
|
+
const lowerHeader = col?.headerName?.toLowerCase() || '';
|
|
3060
|
+
// If field or header name contains date/time keywords, do not treat as numeric
|
|
3061
|
+
if (lowerField.includes('date') || lowerField.includes('time') || lowerField.includes('ata') ||
|
|
3062
|
+
lowerHeader.includes('date') || lowerHeader.includes('time') || lowerHeader.includes('ata')) {
|
|
3063
|
+
return false;
|
|
3064
|
+
}
|
|
3065
|
+
// Check up to the first 20 rows to determine if the column contains numeric data
|
|
2606
3066
|
const rowsToCheck = Math.min(20, this._unpaginatedLocalData.length);
|
|
2607
3067
|
if (rowsToCheck === 0)
|
|
2608
3068
|
return false;
|
|
@@ -2610,12 +3070,17 @@ class UltraGridComponent {
|
|
|
2610
3070
|
for (let i = 0; i < Math.min(rowsToCheck, this._unpaginatedLocalData.length); i++) {
|
|
2611
3071
|
const val = this._unpaginatedLocalData[i]?.data?.[field];
|
|
2612
3072
|
if (val !== undefined && val !== null && val !== '') {
|
|
2613
|
-
const strVal = String(val);
|
|
3073
|
+
const strVal = String(val).trim();
|
|
2614
3074
|
// Reject if it contains alphabetic letters (e.g. "User 1" or "101 USD")
|
|
2615
3075
|
if (/[a-zA-Z]/.test(strVal))
|
|
2616
3076
|
return false;
|
|
2617
|
-
//
|
|
2618
|
-
|
|
3077
|
+
// Robust numeric parsing: handle accounting format () and various minus signs
|
|
3078
|
+
let isNegative = strVal.startsWith('(') && strVal.endsWith(')');
|
|
3079
|
+
let cleanStr = strVal.replace(/[\u2212\u2013\u2014]/g, '-');
|
|
3080
|
+
if (cleanStr.includes('-'))
|
|
3081
|
+
isNegative = true;
|
|
3082
|
+
cleanStr = cleanStr.replace(/[^0-9.]/g, '');
|
|
3083
|
+
const parsed = cleanStr ? Number(cleanStr) : NaN;
|
|
2619
3084
|
if (!isNaN(parsed)) {
|
|
2620
3085
|
hasNumeric = true;
|
|
2621
3086
|
}
|
|
@@ -2686,33 +3151,27 @@ class UltraGridComponent {
|
|
|
2686
3151
|
});
|
|
2687
3152
|
}
|
|
2688
3153
|
/**
|
|
2689
|
-
* Triggers a Web-Worker powered
|
|
2690
|
-
* @param options Configures whether to export all records or just visible records, as well as CSV formatting.
|
|
3154
|
+
* Triggers a Web-Worker powered Excel export of the grid data.
|
|
2691
3155
|
*/
|
|
2692
|
-
async
|
|
2693
|
-
const
|
|
2694
|
-
const sourceColumns = options.columnKeys
|
|
2695
|
-
? this.columns.filter(c => options.columnKeys.includes(c.field))
|
|
2696
|
-
: this.visibleColumns;
|
|
3156
|
+
async exportExcel(options = {}) {
|
|
3157
|
+
const sourceColumns = this.visibleColumns;
|
|
2697
3158
|
let exportData = [];
|
|
2698
|
-
|
|
2699
|
-
|
|
2700
|
-
|
|
2701
|
-
|
|
2702
|
-
|
|
2703
|
-
}
|
|
2704
|
-
else {
|
|
2705
|
-
// When grouped, _unpaginatedLocalData only has expanded visible nodes.
|
|
2706
|
-
// We use the full nested _unflattenedTreeData so the export worker can extract all nested rows recursively.
|
|
2707
|
-
exportData = this._unflattenedTreeData && this._unflattenedTreeData.length > 0
|
|
2708
|
-
? this._unflattenedTreeData
|
|
2709
|
-
: this._unpaginatedLocalData;
|
|
2710
|
-
}
|
|
3159
|
+
// When grouped, _unpaginatedLocalData only has expanded visible nodes.
|
|
3160
|
+
// We use the full nested _unflattenedTreeData so the export worker can extract all nested rows recursively.
|
|
3161
|
+
exportData = this._unflattenedTreeData && this._unflattenedTreeData.length > 0
|
|
3162
|
+
? this._unflattenedTreeData
|
|
3163
|
+
: this._unpaginatedLocalData;
|
|
2711
3164
|
try {
|
|
2712
|
-
|
|
3165
|
+
// Merge options from gridConfig if available
|
|
3166
|
+
const finalOptions = { ...options };
|
|
3167
|
+
if (this.config.excelExportOptions?.customHeaders) {
|
|
3168
|
+
finalOptions.customHeaders = this.config.excelExportOptions.customHeaders;
|
|
3169
|
+
}
|
|
3170
|
+
console.log('Final Export Options:', finalOptions);
|
|
3171
|
+
await this.excelExportService.exportDataAsExcel(finalOptions, sourceColumns, exportData);
|
|
2713
3172
|
}
|
|
2714
3173
|
catch (error) {
|
|
2715
|
-
console.error('UltraGrid
|
|
3174
|
+
console.error('UltraGrid Excel Export Failed:', error);
|
|
2716
3175
|
}
|
|
2717
3176
|
}
|
|
2718
3177
|
onPageChanged(page) {
|
|
@@ -2775,11 +3234,7 @@ class UltraGridComponent {
|
|
|
2775
3234
|
}
|
|
2776
3235
|
onSideBarGroupModelUpdated(model) {
|
|
2777
3236
|
this.groupModel = model;
|
|
2778
|
-
this.
|
|
2779
|
-
this.cdr.markForCheck();
|
|
2780
|
-
}
|
|
2781
|
-
onValuesModelUpdated(model) {
|
|
2782
|
-
this.valuesModel = model;
|
|
3237
|
+
this.updateVisibleColumns();
|
|
2783
3238
|
this.applyLocalData();
|
|
2784
3239
|
this.cdr.markForCheck();
|
|
2785
3240
|
}
|
|
@@ -2960,6 +3415,7 @@ class UltraGridComponent {
|
|
|
2960
3415
|
// Add to grouping
|
|
2961
3416
|
this.groupModel = [...this.groupModel, event.field];
|
|
2962
3417
|
}
|
|
3418
|
+
this.updateVisibleColumns();
|
|
2963
3419
|
this.applyLocalData();
|
|
2964
3420
|
this.cdr.markForCheck();
|
|
2965
3421
|
}
|
|
@@ -3035,8 +3491,107 @@ class UltraGridComponent {
|
|
|
3035
3491
|
this.applyLocalData();
|
|
3036
3492
|
this.cdr.markForCheck();
|
|
3037
3493
|
}
|
|
3038
|
-
|
|
3039
|
-
|
|
3494
|
+
handlePivotColumns(dynamicPivotCols) {
|
|
3495
|
+
if (!this.config.pivotMode) {
|
|
3496
|
+
this._dynamicPivotColumns = [];
|
|
3497
|
+
return;
|
|
3498
|
+
}
|
|
3499
|
+
// Transform worker dynamic cols into UltraGridColumn definitions
|
|
3500
|
+
const newPivotCols = dynamicPivotCols.map(dc => ({
|
|
3501
|
+
field: dc.field,
|
|
3502
|
+
headerName: dc.headerName,
|
|
3503
|
+
width: 150,
|
|
3504
|
+
sortable: true,
|
|
3505
|
+
aggFunc: dc.aggFunc,
|
|
3506
|
+
headerClass: 'ug-pivot-header'
|
|
3507
|
+
}));
|
|
3508
|
+
this._dynamicPivotColumns = newPivotCols;
|
|
3509
|
+
this.updateVisibleColumns();
|
|
3510
|
+
}
|
|
3511
|
+
onValuesModelUpdated(model) {
|
|
3512
|
+
this.valuesModel = model;
|
|
3513
|
+
if (model.length === 0) {
|
|
3514
|
+
this._dynamicPivotColumns = [];
|
|
3515
|
+
this.updateVisibleColumns();
|
|
3516
|
+
}
|
|
3517
|
+
this.applyLocalData();
|
|
3518
|
+
}
|
|
3519
|
+
onSideBarPivotModelUpdated(model) {
|
|
3520
|
+
this.pivotColumns = model;
|
|
3521
|
+
if (model.length === 0) {
|
|
3522
|
+
this._dynamicPivotColumns = [];
|
|
3523
|
+
this.updateVisibleColumns();
|
|
3524
|
+
}
|
|
3525
|
+
this.applyLocalData();
|
|
3526
|
+
}
|
|
3527
|
+
onSideBarPivotModeUpdated(enabled) {
|
|
3528
|
+
this.config = { ...this.config, pivotMode: enabled };
|
|
3529
|
+
if (!enabled) {
|
|
3530
|
+
this._dynamicPivotColumns = [];
|
|
3531
|
+
this.updateVisibleColumns();
|
|
3532
|
+
}
|
|
3533
|
+
this.applyLocalData();
|
|
3534
|
+
}
|
|
3535
|
+
// --- Save / Import Filters ---
|
|
3536
|
+
handleSaveFilters() {
|
|
3537
|
+
const state = {
|
|
3538
|
+
activeFilters: {},
|
|
3539
|
+
conditionFilters: {}
|
|
3540
|
+
};
|
|
3541
|
+
// Convert Map<string, Set<any>> to Record<string, any[]>
|
|
3542
|
+
if (this.activeFilters.size > 0) {
|
|
3543
|
+
for (const [field, selectedSet] of this.activeFilters.entries()) {
|
|
3544
|
+
state.activeFilters[field] = Array.from(selectedSet);
|
|
3545
|
+
}
|
|
3546
|
+
}
|
|
3547
|
+
// Convert Map to Object
|
|
3548
|
+
if (this.conditionFilters.size > 0) {
|
|
3549
|
+
state.conditionFilters = Object.fromEntries(this.conditionFilters);
|
|
3550
|
+
}
|
|
3551
|
+
const json = JSON.stringify(state, null, 2);
|
|
3552
|
+
const blob = new Blob([json], { type: 'application/json' });
|
|
3553
|
+
const url = URL.createObjectURL(blob);
|
|
3554
|
+
const link = document.createElement('a');
|
|
3555
|
+
link.href = url;
|
|
3556
|
+
link.download = `grid-filters-${new Date().toISOString().slice(0, 10)}.json`;
|
|
3557
|
+
link.click();
|
|
3558
|
+
URL.revokeObjectURL(url);
|
|
3559
|
+
}
|
|
3560
|
+
handleImportFilters(data) {
|
|
3561
|
+
if (!data)
|
|
3562
|
+
return;
|
|
3563
|
+
console.log('Importing filters:', data);
|
|
3564
|
+
try {
|
|
3565
|
+
// Restore activeFilters (Record -> Map<string, Set>)
|
|
3566
|
+
// Important: We create a NEW Map instance to trigger Output/Input change detection
|
|
3567
|
+
const newActiveFilters = new Map();
|
|
3568
|
+
if (data.activeFilters) {
|
|
3569
|
+
Object.keys(data.activeFilters).forEach(field => {
|
|
3570
|
+
newActiveFilters.set(field, new Set(data.activeFilters[field]));
|
|
3571
|
+
});
|
|
3572
|
+
}
|
|
3573
|
+
this.activeFilters = newActiveFilters;
|
|
3574
|
+
// Restore conditionFilters (Object -> Map)
|
|
3575
|
+
// Important: We create a NEW Map instance to trigger Output/Input change detection
|
|
3576
|
+
if (data.conditionFilters) {
|
|
3577
|
+
this.conditionFilters = new Map(Object.entries(data.conditionFilters));
|
|
3578
|
+
}
|
|
3579
|
+
else {
|
|
3580
|
+
this.conditionFilters = new Map();
|
|
3581
|
+
}
|
|
3582
|
+
// Refresh grid
|
|
3583
|
+
this.currentPage = 1;
|
|
3584
|
+
this.applyLocalData();
|
|
3585
|
+
this.cdr.markForCheck();
|
|
3586
|
+
console.log('Filters imported and applied successfully.');
|
|
3587
|
+
}
|
|
3588
|
+
catch (err) {
|
|
3589
|
+
console.error('Error applying imported filters:', err);
|
|
3590
|
+
alert('Error applying filters. Please ensure the file format is correct.');
|
|
3591
|
+
}
|
|
3592
|
+
}
|
|
3593
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: UltraGridComponent, deps: [{ token: PLATFORM_ID }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: GridFlattenerService }, { token: ExcelExportService }], target: i0.ɵɵFactoryTarget.Component });
|
|
3594
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: UltraGridComponent, isStandalone: true, selector: "bways-grid", inputs: { columns: "columns", rowData: "rowData", serverDataSource: "serverDataSource", config: "config", pagination: "pagination", pageSize: "pageSize", groupModel: "groupModel", valuesModel: "valuesModel", pivotColumns: "pivotColumns" }, outputs: { rowClicked: "rowClicked", sortChanged: "sortChanged" }, usesOnChanges: true, ngImport: i0, template: `
|
|
3040
3595
|
<div class="ug-wrapper" [ngClass]="config.theme || 'ag-theme-alpine'">
|
|
3041
3596
|
|
|
3042
3597
|
<div class="ug-main">
|
|
@@ -3105,15 +3660,22 @@ class UltraGridComponent {
|
|
|
3105
3660
|
[columns]="columns"
|
|
3106
3661
|
[rowData]="rowData"
|
|
3107
3662
|
[activeFilters]="activeFilters"
|
|
3663
|
+
[conditionFilters]="conditionFilters"
|
|
3108
3664
|
[groupModel]="groupModel"
|
|
3109
3665
|
[valuesModel]="valuesModel"
|
|
3666
|
+
[pivotMode]="!!config.pivotMode"
|
|
3667
|
+
[pivotColumns]="pivotColumns"
|
|
3110
3668
|
(columnsUpdated)="onSideBarColumnsUpdated($event)"
|
|
3111
3669
|
(groupModelUpdated)="onSideBarGroupModelUpdated($event)"
|
|
3112
3670
|
(valuesModelUpdated)="onValuesModelUpdated($event)"
|
|
3113
|
-
(
|
|
3671
|
+
(pivotModeUpdated)="onSideBarPivotModeUpdated($event)"
|
|
3672
|
+
(pivotModelUpdated)="onSideBarPivotModelUpdated($event)"
|
|
3673
|
+
(exportExcelClicked)="exportExcel({ includeHeaders: true })"
|
|
3114
3674
|
(filterApplied)="onFilterApplied($event)"
|
|
3115
3675
|
(conditionFilterChanged)="onConditionFilterChanged($event)"
|
|
3116
|
-
(clearAllFilters)="onClearAllFilters()"
|
|
3676
|
+
(clearAllFilters)="onClearAllFilters()"
|
|
3677
|
+
(saveFiltersRequested)="handleSaveFilters()"
|
|
3678
|
+
(filtersImported)="handleImportFilters($event)">
|
|
3117
3679
|
</ug-side-bar>
|
|
3118
3680
|
|
|
3119
3681
|
|
|
@@ -3149,7 +3711,7 @@ class UltraGridComponent {
|
|
|
3149
3711
|
</div>
|
|
3150
3712
|
|
|
3151
3713
|
</div>
|
|
3152
|
-
`, isInline: true, styles: ["bways-grid{display:block;height:100%;width:100%}.ug-wrapper{display:flex;flex-direction:row;height:100%;width:100%;border:1px solid var(--ug-border-color);background-color:var(--ug-bg-color);box-sizing:border-box;font-family:var(--ug-font-family);font-size:var(--ug-font-size);color:var(--ug-header-color);overflow:hidden}.ug-main{display:flex;flex-direction:column;flex:1;min-width:0;overflow:hidden}.ug-body{flex:1;overflow:hidden;position:relative}.ug-viewport{height:100%;width:100%;overflow:auto}.ug-ssr-container{height:100%;width:100%;overflow:hidden}.ug-status-bar{display:flex;align-items:center;padding:0 16px;min-height:48px;border-top:1px solid var(--ug-border-color);font-weight:500;font-size:13px;color:var(--ug-header-color);background-color:var(--ug-footer-bg)}.ug-cc-overlay-container{position:fixed;z-index:1002}.ug-wrapper{--ug-border-color: #dde2eb;--ug-bg-color: #ffffff;--ug-header-bg: #f8f8f8;--ug-header-color: #181d1f;--ug-header-hover-bg: #ececec;--ug-row-bg: #ffffff;--ug-row-hover-bg: #f1f5f9;--ug-row-selected-bg: #dcebf7;--ug-primary-color: #1890ff;--ug-footer-bg: #ffffff;--ug-footer-color: #181d1f;--ug-icon-color: #68686e;--ug-font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen-Sans, Ubuntu, Cantarell, \"Helvetica Neue\", sans-serif;--ug-font-size: 13px;--ug-header-font-weight: 500}.ug-wrapper.ag-theme-alpine-dark{--ug-border-color: #334155;--ug-bg-color: #1e293b;--ug-header-bg: #0f172a;--ug-header-color: #e2e8f0;--ug-header-hover-bg: #1e293b;--ug-row-bg: #1e293b;--ug-row-hover-bg: #334155;--ug-row-selected-bg: #0f172a;--ug-primary-color: #60a5fa;--ug-footer-bg: #0f172a;--ug-footer-color: #94a3b8;--ug-icon-color: #94a3b8}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ScrollingModule }, { kind: "directive", type: i3$1.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i3$1.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i3$1.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "component", type: HeaderComponent, selector: "ug-header", inputs: ["columns", "sortModel", "isAllSelected"], outputs: ["sortChanged", "columnsReordered", "columnResized", "headerCheckboxClicked", "menuClicked", "filterClicked"] }, { kind: "component", type: RowComponent, selector: "ug-row", inputs: ["columns", "row", "rowHeight", "isExpanded", "selectionVersion"], outputs: ["groupToggled"] }, { kind: "component", type: PaginationComponent, selector: "ug-pagination", inputs: ["totalCount", "pageSize", "currentPage"], outputs: ["pageChanged", "pageSizeChanged"] }, { kind: "component", type: HeaderMenuComponent, selector: "ug-header-menu", inputs: ["column", "isOpen", "position", "groupModel"], outputs: ["closeMenu", "sort", "pin", "autosize", "group", "chooseColumns"] }, { kind: "component", type: ChooseColumnsComponent, selector: "ug-choose-columns", inputs: ["columns"], outputs: ["columnsChanged", "closePanel"] }, { kind: "component", type: HeaderFilterComponent, selector: "ug-header-filter", inputs: ["column", "isOpen", "position", "uniqueValues", "activeFilterSet"], outputs: ["closeFilter", "filterApplied"] }, { kind: "component", type: SideBarComponent, selector: "ug-side-bar", inputs: ["columns", "rowData", "activeFilters", "groupModel", "valuesModel"], outputs: ["columnsUpdated", "groupModelUpdated", "valuesModelUpdated", "
|
|
3714
|
+
`, isInline: true, styles: ["bways-grid{display:block;height:100%;width:100%}.ug-wrapper{display:flex;flex-direction:row;height:100%;width:100%;border:1px solid var(--ug-border-color);background-color:var(--ug-bg-color);box-sizing:border-box;font-family:var(--ug-font-family);font-size:var(--ug-font-size);color:var(--ug-header-color);overflow:hidden}.ug-main{display:flex;flex-direction:column;flex:1;min-width:0;overflow:hidden}.ug-body{flex:1;overflow:hidden;position:relative}.ug-viewport{height:100%;width:100%;overflow:auto}.ug-ssr-container{height:100%;width:100%;overflow:hidden}.ug-status-bar{display:flex;align-items:center;padding:0 16px;min-height:48px;border-top:1px solid var(--ug-border-color);font-weight:500;font-size:13px;color:var(--ug-header-color);background-color:var(--ug-footer-bg)}.ug-cc-overlay-container{position:fixed;z-index:1002}.ug-wrapper{--ug-border-color: #dde2eb;--ug-bg-color: #ffffff;--ug-header-bg: #f8f8f8;--ug-header-color: #181d1f;--ug-header-hover-bg: #ececec;--ug-row-bg: #ffffff;--ug-row-hover-bg: #f1f5f9;--ug-row-selected-bg: #dcebf7;--ug-primary-color: #1890ff;--ug-footer-bg: #ffffff;--ug-footer-color: #181d1f;--ug-icon-color: #68686e;--ug-font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen-Sans, Ubuntu, Cantarell, \"Helvetica Neue\", sans-serif;--ug-font-size: 13px;--ug-header-font-weight: 500}.ug-wrapper.ag-theme-alpine-dark{--ug-border-color: #334155;--ug-bg-color: #1e293b;--ug-header-bg: #0f172a;--ug-header-color: #e2e8f0;--ug-header-hover-bg: #1e293b;--ug-row-bg: #1e293b;--ug-row-hover-bg: #334155;--ug-row-selected-bg: #0f172a;--ug-primary-color: #60a5fa;--ug-footer-bg: #0f172a;--ug-footer-color: #94a3b8;--ug-icon-color: #94a3b8}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ScrollingModule }, { kind: "directive", type: i3$1.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i3$1.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i3$1.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "component", type: HeaderComponent, selector: "ug-header", inputs: ["columns", "sortModel", "isAllSelected"], outputs: ["sortChanged", "columnsReordered", "columnResized", "headerCheckboxClicked", "menuClicked", "filterClicked"] }, { kind: "component", type: RowComponent, selector: "ug-row", inputs: ["columns", "row", "rowHeight", "isExpanded", "selectionVersion"], outputs: ["groupToggled"] }, { kind: "component", type: PaginationComponent, selector: "ug-pagination", inputs: ["totalCount", "pageSize", "currentPage"], outputs: ["pageChanged", "pageSizeChanged"] }, { kind: "component", type: HeaderMenuComponent, selector: "ug-header-menu", inputs: ["column", "isOpen", "position", "groupModel"], outputs: ["closeMenu", "sort", "pin", "autosize", "group", "chooseColumns"] }, { kind: "component", type: ChooseColumnsComponent, selector: "ug-choose-columns", inputs: ["columns"], outputs: ["columnsChanged", "closePanel"] }, { kind: "component", type: HeaderFilterComponent, selector: "ug-header-filter", inputs: ["column", "isOpen", "position", "uniqueValues", "activeFilterSet"], outputs: ["closeFilter", "filterApplied"] }, { kind: "component", type: SideBarComponent, selector: "ug-side-bar", inputs: ["columns", "rowData", "activeFilters", "conditionFilters", "groupModel", "valuesModel", "pivotMode", "pivotColumns"], outputs: ["columnsUpdated", "groupModelUpdated", "valuesModelUpdated", "pivotModeUpdated", "pivotModelUpdated", "exportExcelClicked", "filterApplied", "conditionFilterChanged", "clearAllFilters", "saveFiltersRequested", "filtersImported"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
3153
3715
|
}
|
|
3154
3716
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: UltraGridComponent, decorators: [{
|
|
3155
3717
|
type: Component,
|
|
@@ -3232,15 +3794,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
3232
3794
|
[columns]="columns"
|
|
3233
3795
|
[rowData]="rowData"
|
|
3234
3796
|
[activeFilters]="activeFilters"
|
|
3797
|
+
[conditionFilters]="conditionFilters"
|
|
3235
3798
|
[groupModel]="groupModel"
|
|
3236
3799
|
[valuesModel]="valuesModel"
|
|
3800
|
+
[pivotMode]="!!config.pivotMode"
|
|
3801
|
+
[pivotColumns]="pivotColumns"
|
|
3237
3802
|
(columnsUpdated)="onSideBarColumnsUpdated($event)"
|
|
3238
3803
|
(groupModelUpdated)="onSideBarGroupModelUpdated($event)"
|
|
3239
3804
|
(valuesModelUpdated)="onValuesModelUpdated($event)"
|
|
3240
|
-
(
|
|
3805
|
+
(pivotModeUpdated)="onSideBarPivotModeUpdated($event)"
|
|
3806
|
+
(pivotModelUpdated)="onSideBarPivotModelUpdated($event)"
|
|
3807
|
+
(exportExcelClicked)="exportExcel({ includeHeaders: true })"
|
|
3241
3808
|
(filterApplied)="onFilterApplied($event)"
|
|
3242
3809
|
(conditionFilterChanged)="onConditionFilterChanged($event)"
|
|
3243
|
-
(clearAllFilters)="onClearAllFilters()"
|
|
3810
|
+
(clearAllFilters)="onClearAllFilters()"
|
|
3811
|
+
(saveFiltersRequested)="handleSaveFilters()"
|
|
3812
|
+
(filtersImported)="handleImportFilters($event)">
|
|
3244
3813
|
</ug-side-bar>
|
|
3245
3814
|
|
|
3246
3815
|
|
|
@@ -3280,7 +3849,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
3280
3849
|
}], ctorParameters: () => [{ type: Object, decorators: [{
|
|
3281
3850
|
type: Inject,
|
|
3282
3851
|
args: [PLATFORM_ID]
|
|
3283
|
-
}] }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: GridFlattenerService }, { type:
|
|
3852
|
+
}] }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: GridFlattenerService }, { type: ExcelExportService }], propDecorators: { columns: [{
|
|
3284
3853
|
type: Input
|
|
3285
3854
|
}], rowData: [{
|
|
3286
3855
|
type: Input
|
|
@@ -3296,6 +3865,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
3296
3865
|
type: Output
|
|
3297
3866
|
}], sortChanged: [{
|
|
3298
3867
|
type: Output
|
|
3868
|
+
}], groupModel: [{
|
|
3869
|
+
type: Input
|
|
3870
|
+
}], valuesModel: [{
|
|
3871
|
+
type: Input
|
|
3872
|
+
}], pivotColumns: [{
|
|
3873
|
+
type: Input
|
|
3299
3874
|
}] } });
|
|
3300
3875
|
|
|
3301
3876
|
const COMPONENTS = [
|