bways-grid 0.0.5 → 0.0.6

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.
@@ -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 G=[],N=[];addEventListener("message",r=>{let{action:a,rows:n,sortModel:o,filterModel:i,conditionFilters:e,groupModel:t,aggregations:d,groupStateMap:l}=r.data;if(a==="INIT"){G=(n||[]).map(u=>({...u,type:"leaf",level:0})),postMessage({action:"INIT_DONE"});return}if(a==="FLATTEN_ONLY"){let s=m(N,l||{},r.data.groupIncludeFooter);postMessage({flatList:s});return}if(a==="EXECUTE"){let s=G;if(i&&Object.keys(i).length>0){let c={};for(let p of Object.keys(i))c[p]=new Set(i[p]);s=s.filter(p=>{for(let y of Object.keys(c)){let F=c[y],k=p.data?p.data[y]:null;if(!F.has(k))return!1}return!0})}e&&Object.keys(e).length>0&&(s=O(s,e));let u=s,f=d||{};if(t&&t.length>0?u=E(s,t,f):s.forEach(c=>c.level=0),o&&o.length>0&&L(u,o),N=u,t&&t.length>0&&r.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:v(s,f)};N.push(p)}let g=m(N,l||{},r.data.groupIncludeFooter),h=U(N);postMessage({flatList:g,resultTree:h})}});function U(r){return r.map(a=>{if(a.type==="leaf")return{id:a.id,type:"leaf",level:a.level};if(a.type==="group"){let n=a;return{...n,children:n.children?U(n.children):void 0}}return a})}function m(r,a,n=!1){let o=[],i=[];for(let e=r.length-1;e>=0;e--)i.push(r[e]);for(;i.length>0;){let e=i.pop();if(e.type==="group"){let t=e;if(o.push({id:t.id,type:"group",level:t.level,groupField:t.groupField,groupKey:t.groupKey,data:t.data,childCount:t.children?t.children.length:0}),!!a[t.id]&&(n&&i.push({id:\`\${t.id}-footer\`,type:"group-footer",level:t.level,groupField:t.groupField,groupKey:t.groupKey,data:{...t.data}}),t.children))for(let l=t.children.length-1;l>=0;l--)i.push(t.children[l])}else e.type==="group-footer"?o.push({id:e.id,type:"group-footer",level:e.level,groupField:e.groupField,groupKey:e.groupKey,data:e.data}):o.push({id:e.id,type:"leaf",level:e.level})}return o}function E(r,a,n){return T(r,a,0,n,"root")}function T(r,a,n,o,i){let e=a[n],t=n===a.length-1,d=new Map;for(let s of r){let u=s.data?s.data[e]:null;d.has(u)||d.set(u,[]),d.get(u).push(s)}let l=[];for(let[s,u]of d.entries()){let f=\`\${i}-\${e}-\${s}\`,g={id:f,type:"group",level:n,groupField:e,groupKey:s,data:{[e]:s},children:[]},h=v(u,o);Object.assign(g.data,h),t?(u.forEach(c=>c.level=n+1),g.children=u):g.children=T(u,a,n+1,o,f),l.push(g)}return l}function v(r,a){let n={};for(let o of Object.keys(a)){let i=a[o],e=0;if(i==="count")e=r.length;else{let t=!0,d=0,l=0;for(let s of r){let u=s.data?s.data[o]:0,f=0;typeof u=="number"?f=u:typeof u=="string"&&(f=Number(u.replace(/[^0-9.-]+/g,""))),isNaN(f)&&(f=0),i==="sum"?e+=f:i==="min"?t?e=f:e=Math.min(e,f):i==="max"?t?e=f:e=Math.max(e,f):i==="avg"&&(d+=f,l++),t=!1}i==="avg"&&(e=l>0?d/l:0)}n[o]=e}return n}function L(r,a){r.sort((n,o)=>{for(let i of a){let{field:e,direction:t}=i,d=n.data?n.data[e]:null,l=o.data?o.data[e]:null;if(d===l)continue;let s=d>l?1:-1;return t==="asc"?s:-s}return 0});for(let n of r)n.type==="group"&&n.children&&L(n.children,a)}function O(r,a){let n=Object.keys(a);return n.length===0?r:r.filter(o=>{for(let i of n){let e=a[i];if(!e||!e.condition1)continue;let t=o.data?o.data[i]:null,d=b(t,e.condition1);if(e.condition2&&e.condition2.type){let l=b(t,e.condition2);if(!(e.operator==="OR"?d||l:d&&l))return!1}else if(!d)return!1}return!0})}function b(r,a){let{type:n,value:o,valueTo:i}=a;if(n==="blank")return r==null||r==="";if(n==="notBlank")return r!=null&&r!=="";if(o==null||o==="")return!0;let e=String(r??"").toLowerCase(),t=String(o).toLowerCase();switch(n){case"contains":return e.includes(t);case"notContains":return!e.includes(t);case"equals":return!isNaN(Number(r))&&!isNaN(Number(o))?Number(r)===Number(o):e===t;case"notEqual":return!isNaN(Number(r))&&!isNaN(Number(o))?Number(r)!==Number(o):e!==t;case"startsWith":return e.startsWith(t);case"endsWith":return e.endsWith(t);case"greaterThan":return Number(r)>Number(o);case"greaterThanOrEqual":return Number(r)>=Number(o);case"lessThan":return Number(r)<Number(o);case"lessThanOrEqual":return Number(r)<=Number(o);case"inRange":if(i==null||i==="")return!0;let d=Number(r);return d>=Number(o)&&d<=Number(i);default:return!0}}})();
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 formattedFooterValue() {
302
+ get formattedValue() {
297
303
  const v = this.value;
298
304
  if (v == null)
299
305
  return '';
300
- if (typeof v === 'number' && isFinite(v)) {
301
- return v.toLocaleString();
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
- return num.toLocaleString();
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]="isFirstColumn && row.level ? row.level * 20 : 0">
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="isFirstColumn && isGroup"
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?.data, row: row, column: column }"></ng-container>
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]="value">
338
- <ng-container *ngIf="isFirstColumn && isGroup">
339
- <b>{{ value }}</b>
340
- <span class="ug-group-count" *ngIf="row?.type === 'group'">({{ $any(row).childCount || 0 }})</span>
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="isFirstColumn">
372
+ <b *ngIf="isAutoGroupColumn">
344
373
  {{ $any(row).groupField === 'Grand Total' ? 'Grand Total' : 'Total' }}
345
374
  </b>
346
- <span *ngIf="!isFirstColumn">{{ formattedFooterValue }}</span>
375
+ <span *ngIf="!isAutoGroupColumn">{{ formattedValue }}</span>
347
376
  </ng-container>
348
- <ng-container *ngIf="!(isFirstColumn && isGroup) && !isGroupFooter">
349
- {{ value }}
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]="isFirstColumn && row.level ? row.level * 20 : 0">
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="isFirstColumn && isGroup"
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?.data, row: row, column: column }"></ng-container>
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]="value">
378
- <ng-container *ngIf="isFirstColumn && isGroup">
379
- <b>{{ value }}</b>
380
- <span class="ug-group-count" *ngIf="row?.type === 'group'">({{ $any(row).childCount || 0 }})</span>
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="isFirstColumn">
412
+ <b *ngIf="isAutoGroupColumn">
384
413
  {{ $any(row).groupField === 'Grand Total' ? 'Grand Total' : 'Total' }}
385
414
  </b>
386
- <span *ngIf="!isFirstColumn">{{ formattedFooterValue }}</span>
415
+ <span *ngIf="!isAutoGroupColumn">{{ formattedValue }}</span>
387
416
  </ng-container>
388
- <ng-container *ngIf="!(isFirstColumn && isGroup) && !isGroupFooter">
389
- {{ value }}
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
- exportCsvClicked = new EventEmitter();
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 (survives tab switches)
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 (survives tab switches)
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", exportCsvClicked: "exportCsvClicked" }, usesOnChanges: true, ngImport: i0, template: `
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 (Mock) -->
1346
+ <!-- Pivot Mode Toggle -->
1274
1347
  <div class="ug-ctp-pivot-mode">
1275
1348
  <label class="ug-switch">
1276
- <input type="checkbox" [(ngModel)]="pivotMode" />
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 (Mock) -->
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;">&times;</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)="exportCsvClicked.emit()">
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 CSV
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 (Mock) -->
1478
+ <!-- Pivot Mode Toggle -->
1383
1479
  <div class="ug-ctp-pivot-mode">
1384
1480
  <label class="ug-switch">
1385
- <input type="checkbox" [(ngModel)]="pivotMode" />
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 (Mock) -->
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;">&times;</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)="exportCsvClicked.emit()">
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 CSV
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
- }], exportCsvClicked: [{
1621
+ }], pivotModeChanged: [{
1622
+ type: Output
1623
+ }], pivotModelChanged: [{
1624
+ type: Output
1625
+ }], exportExcelClicked: [{
1499
1626
  type: Output
1500
1627
  }] } });
1501
1628
 
@@ -1525,6 +1652,7 @@ 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();
@@ -1543,6 +1671,17 @@ class FilterToolPanelComponent {
1543
1671
  if (changes['activeFilters']) {
1544
1672
  this.syncActiveFilters();
1545
1673
  }
1674
+ if (changes['conditionFilters']) {
1675
+ this.syncConditionFilters();
1676
+ }
1677
+ if (changes['rowData'] && !changes['rowData'].firstChange) {
1678
+ this._loadedFields.clear();
1679
+ this.sections.forEach(s => {
1680
+ if (s.expanded) {
1681
+ this.ensureSectionLoaded(s);
1682
+ }
1683
+ });
1684
+ }
1546
1685
  }
1547
1686
  buildSections() {
1548
1687
  const oldStateMap = new Map();
@@ -1569,6 +1708,7 @@ class FilterToolPanelComponent {
1569
1708
  filterOptions: filterOptions,
1570
1709
  cond1Type: old ? old.cond1Type : (isNumeric ? 'equals' : 'contains'),
1571
1710
  cond1Value: old ? old.cond1Value : '',
1711
+ cond1ValueTo: old ? old.cond1ValueTo : '',
1572
1712
  condOperator: old ? old.condOperator : 'AND',
1573
1713
  cond2Type: old ? old.cond2Type : (isNumeric ? 'equals' : 'contains'),
1574
1714
  cond2Value: old ? old.cond2Value : '',
@@ -1650,10 +1790,38 @@ class FilterToolPanelComponent {
1650
1790
  }
1651
1791
  this.cdr.markForCheck();
1652
1792
  }
1793
+ syncConditionFilters() {
1794
+ for (const section of this.sections) {
1795
+ const filter = this.conditionFilters.get(section.column.field);
1796
+ if (filter) {
1797
+ section.cond1Type = filter.condition1.type;
1798
+ section.cond1Value = filter.condition1.value || '';
1799
+ section.cond1ValueTo = filter.condition1.valueTo || '';
1800
+ section.condOperator = filter.operator;
1801
+ if (filter.condition2) {
1802
+ section.cond2Type = filter.condition2.type;
1803
+ section.cond2Value = filter.condition2.value || '';
1804
+ section.cond2ValueTo = filter.condition2.valueTo || '';
1805
+ }
1806
+ else {
1807
+ section.cond2Value = '';
1808
+ section.cond2ValueTo = '';
1809
+ }
1810
+ section.hasConditionFilter = true;
1811
+ }
1812
+ else {
1813
+ section.hasConditionFilter = false;
1814
+ // Don't necessarily reset values to avoid flickering if user is typing
1815
+ }
1816
+ }
1817
+ this.cdr.markForCheck();
1818
+ }
1653
1819
  // --- Condition Filter Logic ---
1654
1820
  onConditionChanged(section) {
1655
- const hasCond1 = section.cond1Value.trim() !== '' || section.cond1Type === 'blank' || section.cond1Type === 'notBlank';
1656
- const hasCond2 = section.cond2Value.trim() !== '' || section.cond2Type === 'blank' || section.cond2Type === 'notBlank';
1821
+ const hasCond1 = section.cond1Type === 'blank' || section.cond1Type === 'notBlank' ||
1822
+ (section.cond1Value.trim() !== '' && (section.cond1Type !== 'inRange' || section.cond1ValueTo.trim() !== ''));
1823
+ const hasCond2 = section.cond2Type === 'blank' || section.cond2Type === 'notBlank' ||
1824
+ (section.cond2Value.trim() !== '' && (section.cond2Type !== 'inRange' || section.cond2ValueTo.trim() !== ''));
1657
1825
  if (!hasCond1 && !hasCond2) {
1658
1826
  section.hasConditionFilter = false;
1659
1827
  this.conditionFilterChanged.emit({ field: section.column.field, filter: null });
@@ -1661,7 +1829,7 @@ class FilterToolPanelComponent {
1661
1829
  }
1662
1830
  section.hasConditionFilter = true;
1663
1831
  const filter = {
1664
- condition1: { type: section.cond1Type, value: section.cond1Value },
1832
+ condition1: { type: section.cond1Type, value: section.cond1Value, valueTo: section.cond1ValueTo },
1665
1833
  operator: section.condOperator,
1666
1834
  condition2: hasCond2 ? { type: section.cond2Type, value: section.cond2Value, valueTo: section.cond2ValueTo } : undefined
1667
1835
  };
@@ -1746,6 +1914,7 @@ class FilterToolPanelComponent {
1746
1914
  section.cond1Value = '';
1747
1915
  section.cond2Value = '';
1748
1916
  section.cond2ValueTo = '';
1917
+ section.cond1ValueTo = '';
1749
1918
  section.hasConditionFilter = false;
1750
1919
  }
1751
1920
  this.clearAllFilters.emit();
@@ -1754,7 +1923,7 @@ class FilterToolPanelComponent {
1754
1923
  return section.column.field;
1755
1924
  }
1756
1925
  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: `
1926
+ 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" }, usesOnChanges: true, ngImport: i0, template: `
1758
1927
  <div class="ug-ftp-wrapper">
1759
1928
  <!-- Global Toolbar -->
1760
1929
  <div class="ug-ftp-toolbar">
@@ -1799,6 +1968,14 @@ class FilterToolPanelComponent {
1799
1968
  placeholder="Filter value..."
1800
1969
  [(ngModel)]="section.cond1Value"
1801
1970
  (ngModelChange)="onConditionChanged(section)" />
1971
+
1972
+ <!-- In Range second value for Condition 1 -->
1973
+ <input *ngIf="section.cond1Type === 'inRange'"
1974
+ class="ug-ftp-cond-input"
1975
+ type="text"
1976
+ placeholder="To value..."
1977
+ [(ngModel)]="section.cond1ValueTo"
1978
+ (ngModelChange)="onConditionChanged(section)" />
1802
1979
 
1803
1980
  <!-- AND / OR Toggle -->
1804
1981
  <div class="ug-ftp-operator-row">
@@ -1907,6 +2084,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
1907
2084
  placeholder="Filter value..."
1908
2085
  [(ngModel)]="section.cond1Value"
1909
2086
  (ngModelChange)="onConditionChanged(section)" />
2087
+
2088
+ <!-- In Range second value for Condition 1 -->
2089
+ <input *ngIf="section.cond1Type === 'inRange'"
2090
+ class="ug-ftp-cond-input"
2091
+ type="text"
2092
+ placeholder="To value..."
2093
+ [(ngModel)]="section.cond1ValueTo"
2094
+ (ngModelChange)="onConditionChanged(section)" />
1910
2095
 
1911
2096
  <!-- AND / OR Toggle -->
1912
2097
  <div class="ug-ftp-operator-row">
@@ -1973,6 +2158,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
1973
2158
  type: Input
1974
2159
  }], activeFilters: [{
1975
2160
  type: Input
2161
+ }], conditionFilters: [{
2162
+ type: Input
1976
2163
  }], filterApplied: [{
1977
2164
  type: Output
1978
2165
  }], conditionFilterChanged: [{
@@ -1985,12 +2172,17 @@ class SideBarComponent {
1985
2172
  columns = [];
1986
2173
  rowData = [];
1987
2174
  activeFilters = new Map();
2175
+ conditionFilters = new Map();
1988
2176
  groupModel = [];
1989
2177
  valuesModel = [];
2178
+ pivotMode = false;
2179
+ pivotColumns = [];
1990
2180
  columnsUpdated = new EventEmitter();
1991
2181
  groupModelUpdated = new EventEmitter();
1992
2182
  valuesModelUpdated = new EventEmitter();
1993
- exportCsvClicked = new EventEmitter();
2183
+ pivotModeUpdated = new EventEmitter();
2184
+ pivotModelUpdated = new EventEmitter();
2185
+ exportExcelClicked = new EventEmitter();
1994
2186
  filterApplied = new EventEmitter();
1995
2187
  conditionFilterChanged = new EventEmitter();
1996
2188
  clearAllFilters = new EventEmitter();
@@ -2012,8 +2204,8 @@ class SideBarComponent {
2012
2204
  onGroupModelChanged(model) {
2013
2205
  this.groupModelUpdated.emit(model);
2014
2206
  }
2015
- onExportCsvClicked() {
2016
- this.exportCsvClicked.emit();
2207
+ onExportExcelClicked() {
2208
+ this.exportExcelClicked.emit();
2017
2209
  }
2018
2210
  onFilterApplied(event) {
2019
2211
  this.filterApplied.emit(event);
@@ -2027,8 +2219,14 @@ class SideBarComponent {
2027
2219
  onValuesModelChanged(model) {
2028
2220
  this.valuesModelUpdated.emit(model);
2029
2221
  }
2222
+ onPivotModeChanged(enabled) {
2223
+ this.pivotModeUpdated.emit(enabled);
2224
+ }
2225
+ onPivotModelChanged(model) {
2226
+ this.pivotModelUpdated.emit(model);
2227
+ }
2030
2228
  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", exportCsvClicked: "exportCsvClicked", filterApplied: "filterApplied", conditionFilterChanged: "conditionFilterChanged", clearAllFilters: "clearAllFilters" }, ngImport: i0, template: `
2229
+ 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" }, ngImport: i0, template: `
2032
2230
  <div class="ug-side-bar-wrapper">
2033
2231
  <!-- Content Area -->
2034
2232
  <div class="ug-side-bar-content" *ngIf="activeTab">
@@ -2045,10 +2243,14 @@ class SideBarComponent {
2045
2243
  [columns]="columns"
2046
2244
  [groupModel]="groupModel"
2047
2245
  [valuesModel]="valuesModel"
2246
+ [pivotMode]="pivotMode"
2247
+ [pivotColumns]="pivotColumns"
2048
2248
  (columnsUpdated)="onColumnsChanged($event)"
2049
2249
  (groupModelChanged)="onGroupModelChanged($event)"
2050
2250
  (valuesModelChanged)="onValuesModelChanged($event)"
2051
- (exportCsvClicked)="onExportCsvClicked()">
2251
+ (pivotModeChanged)="onPivotModeChanged($event)"
2252
+ (pivotModelChanged)="onPivotModelChanged($event)"
2253
+ (exportExcelClicked)="onExportExcelClicked()">
2052
2254
  </ug-column-tool-panel>
2053
2255
 
2054
2256
  <ug-filter-tool-panel
@@ -2056,6 +2258,7 @@ class SideBarComponent {
2056
2258
  [columns]="columns"
2057
2259
  [rowData]="rowData"
2058
2260
  [activeFilters]="activeFilters"
2261
+ [conditionFilters]="conditionFilters"
2059
2262
  (filterApplied)="onFilterApplied($event)"
2060
2263
  (conditionFilterChanged)="onConditionFilterChanged($event)"
2061
2264
  (clearAllFilters)="onClearAllFilters()">
@@ -2080,7 +2283,7 @@ class SideBarComponent {
2080
2283
  </div>
2081
2284
  </div>
2082
2285
  </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", "exportCsvClicked"] }, { kind: "component", type: FilterToolPanelComponent, selector: "ug-filter-tool-panel", inputs: ["columns", "rowData", "activeFilters"], outputs: ["filterApplied", "conditionFilterChanged", "clearAllFilters"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2286
+ `, 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"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2084
2287
  }
2085
2288
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SideBarComponent, decorators: [{
2086
2289
  type: Component,
@@ -2101,10 +2304,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
2101
2304
  [columns]="columns"
2102
2305
  [groupModel]="groupModel"
2103
2306
  [valuesModel]="valuesModel"
2307
+ [pivotMode]="pivotMode"
2308
+ [pivotColumns]="pivotColumns"
2104
2309
  (columnsUpdated)="onColumnsChanged($event)"
2105
2310
  (groupModelChanged)="onGroupModelChanged($event)"
2106
2311
  (valuesModelChanged)="onValuesModelChanged($event)"
2107
- (exportCsvClicked)="onExportCsvClicked()">
2312
+ (pivotModeChanged)="onPivotModeChanged($event)"
2313
+ (pivotModelChanged)="onPivotModelChanged($event)"
2314
+ (exportExcelClicked)="onExportExcelClicked()">
2108
2315
  </ug-column-tool-panel>
2109
2316
 
2110
2317
  <ug-filter-tool-panel
@@ -2112,6 +2319,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
2112
2319
  [columns]="columns"
2113
2320
  [rowData]="rowData"
2114
2321
  [activeFilters]="activeFilters"
2322
+ [conditionFilters]="conditionFilters"
2115
2323
  (filterApplied)="onFilterApplied($event)"
2116
2324
  (conditionFilterChanged)="onConditionFilterChanged($event)"
2117
2325
  (clearAllFilters)="onClearAllFilters()">
@@ -2143,17 +2351,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
2143
2351
  type: Input
2144
2352
  }], activeFilters: [{
2145
2353
  type: Input
2354
+ }], conditionFilters: [{
2355
+ type: Input
2146
2356
  }], groupModel: [{
2147
2357
  type: Input
2148
2358
  }], valuesModel: [{
2149
2359
  type: Input
2360
+ }], pivotMode: [{
2361
+ type: Input
2362
+ }], pivotColumns: [{
2363
+ type: Input
2150
2364
  }], columnsUpdated: [{
2151
2365
  type: Output
2152
2366
  }], groupModelUpdated: [{
2153
2367
  type: Output
2154
2368
  }], valuesModelUpdated: [{
2155
2369
  type: Output
2156
- }], exportCsvClicked: [{
2370
+ }], pivotModeUpdated: [{
2371
+ type: Output
2372
+ }], pivotModelUpdated: [{
2373
+ type: Output
2374
+ }], exportExcelClicked: [{
2157
2375
  type: Output
2158
2376
  }], filterApplied: [{
2159
2377
  type: Output
@@ -2206,48 +2424,145 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
2206
2424
  }] });
2207
2425
 
2208
2426
  // AUTO-GENERATED FILE. DO NOT EDIT.
2209
- // Built from src/lib/workers/export.worker.ts
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
- \`)}let r="",d=0,f=(t,n)=>{let C=t.data?t.data:t,y=e.map((p,h)=>{let i=C[p.field];return h===0&&n>0&&(i=" ".repeat(n)+(i||"")),h===0&&t.type==="group"&&t.children&&(i=(i||"")+\` (\${t.children.length})\`),m(i,s)}).join(s);if(r+=y+\`
2212
- \`,d++,d>0&&d%E===0&&(o.push(r),r=""),t.type==="group"&&t.children&&t.children.length>0)for(let p of t.children)f(p,n+1)};for(let t=0;t<l.length;t++){let n=l[t].level||0;f(l[t],n)}r&&o.push(r),postMessage({action:"COMPLETE",payload:{parts:o,type:"text/csv;charset=utf-8"}})}catch(s){postMessage({action:"ERROR",error:s.message||"CSV Export Failed"})}});function m(a,c){if(a==null)return"";let e=String(a);return e.includes(c)||e.includes(\`
2213
- \`)||e.includes('"')?\`"\${e.replace(/"/g,'""')}"\`:e}})();
2427
+ // Built from src/lib/workers/excel.worker.ts
2428
+ 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
2429
+ \`)+\`\\r
2430
+ \`}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)==\`
2431
+ \`&&(w="=0D"+w.slice(1)),w=w.replace(/\\r(?!\\n)/mg,"=0D").replace(/\\n\\n/mg,\`
2432
+ =0A\`).replace(/([^\\r\\n])\\n/mg,"\$1=0A");for(var p=[],m=w.split(\`\\r
2433
+ \`),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
2434
+ \`)}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
2435
+ \`))}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
2436
+ \`),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
2437
+ \`),k.join(\`\\r
2438
+ \`)}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
2439
+ \`;var Ns={"&quot;":'"',"&apos;":"'","&gt;":">","&lt;":"<","&amp;":"&"},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,"&#10;")}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,\`
2440
+ \`).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(/&quot;/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">
2441
+ \`),t.push(\` <manifest:file-entry manifest:full-path="/" manifest:version="1.2" manifest:media-type="application/vnd.oasis.opendocument.spreadsheet"/>
2442
+ \`);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]+\`"/>
2443
+ \`);return t.push("</manifest:manifest>"),t.join("")}function X0(e,t,r){return[' <rdf:Description rdf:about="'+e+\`">
2444
+ \`,' <rdf:type rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/'+(r||"odf")+"#"+t+\`"/>
2445
+ \`,\` </rdf:Description>
2446
+ \`].join("")}function Tf(e,t){return[' <rdf:Description rdf:about="'+e+\`">
2447
+ \`,' <ns0:hasPart xmlns:ns0="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#" rdf:resource="'+t+\`"/>
2448
+ \`,\` </rdf:Description>
2449
+ \`].join("")}function Sf(e){var t=[Oe];t.push(\`<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
2450
+ \`);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
2451
+ \`;_.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(\`
2452
+ \`),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+=\`
2453
+ \`+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
2454
+ \`,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,\`
2455
+ \`)}function t(v){return v.replace(/\\\\/g,"\\\\b").replace(/:/g,"\\\\c").replace(/\\n/g,"\\\\n")}function r(v,h){for(var d=v.split(\`
2456
+ \`),_=-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(\`
2457
+ \`),s=["--SocialCalcSpreadsheetControlSave","Content-type: text/plain; charset=UTF-8"].join(\`
2458
+ \`)+\`
2459
+ \`,f=["# SocialCalc Spreadsheet Control Save","part:sheet"].join(\`
2460
+ \`),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(\`
2461
+ \`)}function l(v){return[i,s,f,s,c(v),o].join(\`
2462
+ \`)}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,\`
2463
+ \`);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(\`
2464
+ \`)}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">
2465
+ <metadataTypes count="1">
2466
+ <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"/>
2467
+ </metadataTypes>
2468
+ <futureMetadata name="XLDAPR" count="1">
2469
+ <bk>
2470
+ <extLst>
2471
+ <ext uri="{bdbb8cdc-fa1e-496e-a857-3c3f30c029c3}">
2472
+ <xda:dynamicArrayProperties fDynamic="1" fCollapsed="0"/>
2473
+ </ext>
2474
+ </extLst>
2475
+ </bk>
2476
+ </futureMetadata>
2477
+ <cellMetadata count="1">
2478
+ <bk>
2479
+ <rc t="1" v="0"/>
2480
+ </bk>
2481
+ </cellMetadata>
2482
+ </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:
2483
+ \`+i[0]+\`
2484
+ \`,f=1;f<i.length;++f)s+=\`Reply:
2485
+ \`+i[f]+\`
2486
+ \`;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 />
2487
+ \`,r=\` <table:covered-table-cell/>
2488
+ \`,a=function(i,s,f){var o=[];o.push(' <table:table table:name="'+me(s.SheetNames[f])+\`" table:style-name="ta1">
2489
+ \`);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>
2490
+ \`);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>
2491
+ \`);for(;c<=v.e.r;++c){for(u=g[c]?' table:style-name="ro'+g[c].ods+'"':"",o.push(" <table:table-row"+u+\`>
2492
+ \`),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,"&amp;")})}o.push(" "+j("table:table-cell",j("text:p",A,{}),C)+\`
2493
+ \`)}o.push(\` </table:table-row>
2494
+ \`)}return o.push(\` </table:table>
2495
+ \`),o.join("")},n=function(i,s){i.push(\` <office:automatic-styles>
2496
+ \`),i.push(\` <number:date-style style:name="N37" number:automatic-order="true">
2497
+ \`),i.push(\` <number:month number:style="long"/>
2498
+ \`),i.push(\` <number:text>/</number:text>
2499
+ \`),i.push(\` <number:day number:style="long"/>
2500
+ \`),i.push(\` <number:text>/</number:text>
2501
+ \`),i.push(\` <number:year/>
2502
+ \`),i.push(\` </number:date-style>
2503
+ \`);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">
2504
+ \`),i.push(' <style:table-column-properties fo:break-before="auto" style:column-width="'+h+\`"/>
2505
+ \`),i.push(\` </style:style>
2506
+ \`),++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">
2507
+ \`),i.push(' <style:table-row-properties fo:break-before="auto" style:row-height="'+v+\`"/>
2508
+ \`),i.push(\` </style:style>
2509
+ \`),++o}}}),i.push(\` <style:style style:name="ta1" style:family="table" style:master-page-name="mp1">
2510
+ \`),i.push(\` <style:table-properties table:display="true" style:writing-mode="lr-tb"/>
2511
+ \`),i.push(\` </style:style>
2512
+ \`),i.push(\` <style:style style:name="ce1" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N37"/>
2513
+ \`),i.push(\` </office:automatic-styles>
2514
+ \`)};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+\`>
2515
+ \`),o.push(Vn().replace(/office:document-meta/g,"office:meta"))):o.push("<office:document-content"+c+\`>
2516
+ \`),n(o,s),o.push(\` <office:body>
2517
+ \`),o.push(\` <office:spreadsheet>
2518
+ \`);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>
2519
+ \`),o.push(\` </office:body>
2520
+ \`),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)&&lt(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:\`
2521
+ \`,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=\`
2522
+ \`;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"})}}});})();
2523
+ /*! Bundled license information:
2524
+
2525
+ xlsx/xlsx.mjs:
2526
+ (*! xlsx.js (C) 2013-present SheetJS -- http://sheetjs.com *)
2527
+
2528
+ xlsx/xlsx.mjs:
2529
+ (*! sheetjs (C) 2013-present SheetJS -- http://sheetjs.com *)
2530
+ */
2214
2531
  `;
2215
2532
 
2216
- class CsvExportService {
2217
- isBrowser;
2218
- constructor(platformId) {
2219
- this.isBrowser = isPlatformBrowser(platformId);
2220
- }
2221
- exportDataAsCsv(options, columns, data, config) {
2533
+ class ExcelExportService {
2534
+ exportDataAsExcel(options, columns, data) {
2222
2535
  return new Promise((resolve, reject) => {
2223
- if (!this.isBrowser) {
2224
- console.warn('CSV Export is only supported in browser environments');
2225
- return resolve();
2536
+ if (typeof Worker === 'undefined') {
2537
+ console.warn('Excel Export is only supported in browser environments with web workers');
2538
+ return reject(new Error('Web Workers not supported'));
2226
2539
  }
2227
- // Initialize Worker from inline JavaScript string blob
2228
- const blob = new Blob([EXPORT_WORKER_CODE], { type: 'application/javascript' });
2540
+ // Create worker from blob
2541
+ const blob = new Blob([EXCEL_WORKER_CODE], { type: 'application/javascript' });
2229
2542
  const workerUrl = URL.createObjectURL(blob);
2230
2543
  const worker = new Worker(workerUrl);
2231
- worker.onmessage = ({ data: workerData }) => {
2232
- const { action, payload, error } = workerData;
2233
- if (action === 'COMPLETE') {
2234
- this.downloadBlob(payload, options.fileName || 'export.csv');
2544
+ worker.onmessage = ({ data: response }) => {
2545
+ if (response.action === 'COMPLETE') {
2546
+ const { buffer, type } = response.payload;
2547
+ // Provide the exact MIME type to trigger correct local OS association
2548
+ const exportBlob = new Blob([buffer], { type });
2549
+ this.downloadBlob(exportBlob, options.fileName || 'export.xlsx');
2235
2550
  worker.terminate();
2236
2551
  URL.revokeObjectURL(workerUrl);
2237
2552
  resolve();
2238
2553
  }
2239
- else if (action === 'ERROR') {
2554
+ else if (response.action === 'ERROR') {
2240
2555
  worker.terminate();
2241
2556
  URL.revokeObjectURL(workerUrl);
2242
- reject(new Error(error));
2557
+ reject(new Error(response.error));
2243
2558
  }
2244
2559
  };
2245
- worker.onerror = (err) => {
2560
+ worker.onerror = (error) => {
2246
2561
  worker.terminate();
2247
2562
  URL.revokeObjectURL(workerUrl);
2248
- reject(err);
2563
+ reject(error);
2249
2564
  };
2250
- // Post the data to process
2565
+ // Start processing
2251
2566
  worker.postMessage({
2252
2567
  action: 'START_EXPORT',
2253
2568
  columns,
@@ -2256,43 +2571,33 @@ class CsvExportService {
2256
2571
  });
2257
2572
  });
2258
2573
  }
2259
- downloadBlob(blobParams, fileName) {
2260
- if (!fileName.toLowerCase().endsWith('.csv')) {
2261
- fileName += '.csv';
2262
- }
2263
- // Add UTF-8 BOM so Excel opens CSV files with correct characters natively
2264
- const BOM = '\uFEFF';
2265
- const blob = new Blob([BOM, ...blobParams.parts], { type: blobParams.type });
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
2574
+ downloadBlob(blob, filename) {
2575
+ const link = document.createElement('a');
2576
+ link.href = URL.createObjectURL(blob);
2577
+ link.download = filename;
2578
+ link.style.display = 'none';
2579
+ document.body.appendChild(link);
2580
+ link.click();
2273
2581
  setTimeout(() => {
2274
- document.body.removeChild(a);
2275
- URL.revokeObjectURL(url);
2582
+ document.body.removeChild(link);
2583
+ URL.revokeObjectURL(link.href);
2276
2584
  }, 100);
2277
2585
  }
2278
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CsvExportService, deps: [{ token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable });
2279
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CsvExportService, providedIn: 'root' });
2586
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ExcelExportService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2587
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ExcelExportService, providedIn: 'root' });
2280
2588
  }
2281
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CsvExportService, decorators: [{
2589
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ExcelExportService, decorators: [{
2282
2590
  type: Injectable,
2283
2591
  args: [{
2284
2592
  providedIn: 'root'
2285
2593
  }]
2286
- }], ctorParameters: () => [{ type: Object, decorators: [{
2287
- type: Inject,
2288
- args: [PLATFORM_ID]
2289
- }] }] });
2594
+ }] });
2290
2595
 
2291
2596
  class UltraGridComponent {
2292
2597
  cdr;
2293
2598
  ngZone;
2294
2599
  flattener;
2295
- csvExportService;
2600
+ excelExportService;
2296
2601
  _workerInitialized = false;
2297
2602
  columns = [];
2298
2603
  rowData = [];
@@ -2310,7 +2615,11 @@ class UltraGridComponent {
2310
2615
  sortModel = [];
2311
2616
  groupModel = [];
2312
2617
  valuesModel = [];
2618
+ pivotColumns = [];
2313
2619
  groupStateMap = new Map();
2620
+ _dynamicPivotColumns = []; // Dynamic pillars for pivot mode
2621
+ _userColumns = []; // Backup of original columns
2622
+ _isRebuildingColumns = false;
2314
2623
  _internalDataSource;
2315
2624
  _localTreeData = [];
2316
2625
  _unpaginatedLocalData = [];
@@ -2341,11 +2650,11 @@ class UltraGridComponent {
2341
2650
  hasHeaderCheckboxSelection = false;
2342
2651
  get rowHeight() { return this.config.rowHeight || 40; }
2343
2652
  get showPagination() { return this.pagination || !!this.serverDataSource; }
2344
- constructor(platformId, cdr, ngZone, flattener, csvExportService) {
2653
+ constructor(platformId, cdr, ngZone, flattener, excelExportService) {
2345
2654
  this.cdr = cdr;
2346
2655
  this.ngZone = ngZone;
2347
2656
  this.flattener = flattener;
2348
- this.csvExportService = csvExportService;
2657
+ this.excelExportService = excelExportService;
2349
2658
  this.isBrowser = isPlatformBrowser(platformId);
2350
2659
  this.initSortingWorker();
2351
2660
  }
@@ -2424,6 +2733,10 @@ class UltraGridComponent {
2424
2733
  if (data.resultTree) {
2425
2734
  this._unflattenedTreeData = data.resultTree;
2426
2735
  }
2736
+ // If pivot mode returned new dynamic columns, update the grid structure
2737
+ if (data.pivotColumns) {
2738
+ this.handlePivotColumns(data.pivotColumns);
2739
+ }
2427
2740
  // Always hydrate the structural tree so group node checkmarks strictly persist across flatten events
2428
2741
  const hydrateTree = (nodes) => {
2429
2742
  let allSelected = true;
@@ -2435,6 +2748,21 @@ class UltraGridComponent {
2435
2748
  const cached = this._mappedRowData[node.id];
2436
2749
  if (cached) {
2437
2750
  node.data = cached.data;
2751
+ // Re-inject pivot fields lost during worker serialization
2752
+ if (this.config.pivotMode && data.pivotColumns && this.pivotColumns.length > 0 && typeof node.data === 'object' && node.data !== null) {
2753
+ const primaryPivot = this.pivotColumns[0];
2754
+ const rowPivotVal = String(node.data[primaryPivot]);
2755
+ const cols = data.pivotColumns;
2756
+ for (let j = 0; j < cols.length; j++) {
2757
+ const pCol = cols[j];
2758
+ if (String(pCol.pivotValue) === rowPivotVal) {
2759
+ node.data[pCol.field] = node.data[pCol.originalField];
2760
+ }
2761
+ else {
2762
+ node.data[pCol.field] = null;
2763
+ }
2764
+ }
2765
+ }
2438
2766
  node.selected = cached.selected;
2439
2767
  if (!cached.selected)
2440
2768
  allSelected = false;
@@ -2483,7 +2811,49 @@ class UltraGridComponent {
2483
2811
  }
2484
2812
  }
2485
2813
  updateVisibleColumns() {
2486
- const temp = this.columns.filter(c => !c.hide);
2814
+ // Source selection:
2815
+ // 1. If we have dynamic pivot results, use those as the base.
2816
+ // 2. Otherwise, use the standard columns input.
2817
+ let baseColumns = (this.config.pivotMode && this.pivotColumns.length > 0 && this._dynamicPivotColumns.length > 0)
2818
+ ? [...this._dynamicPivotColumns]
2819
+ : [...this.columns];
2820
+ // If grouping is active, we MUST HAVE an Auto Group Column at index 0
2821
+ if (this.groupModel.length > 0) {
2822
+ // Find or Create Auto Column
2823
+ let autoCol = baseColumns.find(c => c.field === 'ag-Grid-AutoColumn');
2824
+ // Dynamically set header name based on active group
2825
+ let groupHeaderName = 'Group';
2826
+ if (this.groupModel.length === 1) {
2827
+ const sourceCol = this.columns.find(c => c.field === this.groupModel[0]);
2828
+ if (sourceCol) {
2829
+ groupHeaderName = sourceCol.headerName || sourceCol.field;
2830
+ }
2831
+ }
2832
+ else if (this.groupModel.length > 1) {
2833
+ groupHeaderName = 'Groups';
2834
+ }
2835
+ if (!autoCol) {
2836
+ autoCol = {
2837
+ field: 'ag-Grid-AutoColumn',
2838
+ headerName: groupHeaderName,
2839
+ width: 250,
2840
+ pinned: 'left',
2841
+ checkboxSelection: this.hasCheckboxSelection,
2842
+ headerCheckboxSelection: this.hasHeaderCheckboxSelection
2843
+ };
2844
+ baseColumns.unshift(autoCol);
2845
+ }
2846
+ else {
2847
+ autoCol.headerName = groupHeaderName; // Ensure Name Updates dynamically
2848
+ // Ensure it's at the front and pinned
2849
+ const idx = baseColumns.indexOf(autoCol);
2850
+ baseColumns.splice(idx, 1);
2851
+ baseColumns.unshift(autoCol);
2852
+ autoCol.pinned = 'left';
2853
+ }
2854
+ }
2855
+ // Hide columns that are currently inside the group model so we don't display dual columns
2856
+ const temp = baseColumns.filter(c => !c.hide && (c.field === 'ag-Grid-AutoColumn' || !this.groupModel.includes(c.field)));
2487
2857
  const left = temp.filter(c => c.pinned === 'left');
2488
2858
  const right = temp.filter(c => c.pinned === 'right');
2489
2859
  const center = temp.filter(c => !c.pinned);
@@ -2498,13 +2868,29 @@ class UltraGridComponent {
2498
2868
  currRight += (c.width || 200);
2499
2869
  });
2500
2870
  this.visibleColumns = [...left, ...center, ...right];
2501
- // Ensure checkbox selection strictly stays on the first visible column, regardless of Drag&Drop swaps
2871
+ // Ensure checkbox selection and header checkbox selection strictly stay on the first visible column
2872
+ // (which should be the Auto Group Column if grouping is active)
2502
2873
  if (this.visibleColumns.length > 0) {
2503
2874
  this.visibleColumns.forEach((c, index) => {
2504
- c.checkboxSelection = index === 0 ? this.hasCheckboxSelection : false;
2505
- c.headerCheckboxSelection = index === 0 ? this.hasHeaderCheckboxSelection : false;
2875
+ if (c.field === 'ag-Grid-AutoColumn') {
2876
+ c.checkboxSelection = this.hasCheckboxSelection;
2877
+ c.headerCheckboxSelection = this.hasHeaderCheckboxSelection;
2878
+ }
2879
+ else {
2880
+ // If it's not the auto-column, and we ARE grouping, it shouldn't have checkboxes
2881
+ if (this.groupModel.length > 0) {
2882
+ c.checkboxSelection = false;
2883
+ c.headerCheckboxSelection = false;
2884
+ }
2885
+ else {
2886
+ // Normal mode: first column gets it
2887
+ c.checkboxSelection = index === 0 ? this.hasCheckboxSelection : false;
2888
+ c.headerCheckboxSelection = index === 0 ? this.hasHeaderCheckboxSelection : false;
2889
+ }
2890
+ }
2506
2891
  });
2507
2892
  }
2893
+ this.cdr.markForCheck();
2508
2894
  }
2509
2895
  wrapServerDataSource(source) {
2510
2896
  return {
@@ -2571,7 +2957,9 @@ class UltraGridComponent {
2571
2957
  groupModel: this.groupModel,
2572
2958
  groupStateMap: stateMapObj,
2573
2959
  aggregations: aggregations,
2574
- groupIncludeFooter: !!this.config.groupIncludeFooter
2960
+ groupIncludeFooter: !!this.config.groupIncludeFooter,
2961
+ pivotMode: !!this.config.pivotMode,
2962
+ pivotColumns: this.pivotColumns
2575
2963
  });
2576
2964
  return;
2577
2965
  }
@@ -2602,7 +2990,16 @@ class UltraGridComponent {
2602
2990
  this.cdr.markForCheck();
2603
2991
  }
2604
2992
  isNumericColumn(field) {
2605
- // Check up to the first 5 rows to determine if the column contains numeric data
2993
+ // First, check if the field name or its corresponding column header suggests it's a date/time
2994
+ const lowerField = field.toLowerCase();
2995
+ const col = this.columns.find(c => c.field === field);
2996
+ const lowerHeader = col?.headerName?.toLowerCase() || '';
2997
+ // If field or header name contains date/time keywords, do not treat as numeric
2998
+ if (lowerField.includes('date') || lowerField.includes('time') || lowerField.includes('ata') ||
2999
+ lowerHeader.includes('date') || lowerHeader.includes('time') || lowerHeader.includes('ata')) {
3000
+ return false;
3001
+ }
3002
+ // Check up to the first 20 rows to determine if the column contains numeric data
2606
3003
  const rowsToCheck = Math.min(20, this._unpaginatedLocalData.length);
2607
3004
  if (rowsToCheck === 0)
2608
3005
  return false;
@@ -2610,12 +3007,17 @@ class UltraGridComponent {
2610
3007
  for (let i = 0; i < Math.min(rowsToCheck, this._unpaginatedLocalData.length); i++) {
2611
3008
  const val = this._unpaginatedLocalData[i]?.data?.[field];
2612
3009
  if (val !== undefined && val !== null && val !== '') {
2613
- const strVal = String(val);
3010
+ const strVal = String(val).trim();
2614
3011
  // Reject if it contains alphabetic letters (e.g. "User 1" or "101 USD")
2615
3012
  if (/[a-zA-Z]/.test(strVal))
2616
3013
  return false;
2617
- // Remove currency symbols, commas, and spaces, then check if it's a valid number
2618
- const parsed = Number(strVal.replace(/[^0-9.-]+/g, ''));
3014
+ // Robust numeric parsing: handle accounting format () and various minus signs
3015
+ let isNegative = strVal.startsWith('(') && strVal.endsWith(')');
3016
+ let cleanStr = strVal.replace(/[\u2212\u2013\u2014]/g, '-');
3017
+ if (cleanStr.includes('-'))
3018
+ isNegative = true;
3019
+ cleanStr = cleanStr.replace(/[^0-9.]/g, '');
3020
+ const parsed = cleanStr ? Number(cleanStr) : NaN;
2619
3021
  if (!isNaN(parsed)) {
2620
3022
  hasNumeric = true;
2621
3023
  }
@@ -2686,33 +3088,27 @@ class UltraGridComponent {
2686
3088
  });
2687
3089
  }
2688
3090
  /**
2689
- * Triggers a Web-Worker powered CSV export of the grid data.
2690
- * @param options Configures whether to export all records or just visible records, as well as CSV formatting.
3091
+ * Triggers a Web-Worker powered Excel export of the grid data.
2691
3092
  */
2692
- async exportCsv(options = {}) {
2693
- const mode = options.mode || 'all';
2694
- const sourceColumns = options.columnKeys
2695
- ? this.columns.filter(c => options.columnKeys.includes(c.field))
2696
- : this.visibleColumns;
3093
+ async exportExcel(options = {}) {
3094
+ const sourceColumns = this.visibleColumns;
2697
3095
  let exportData = [];
2698
- if (mode === 'all') {
2699
- exportData = this.rowData;
2700
- if (this.serverDataSource) {
2701
- console.warn('UltraGrid: "all" export mode is not fully supported with ServerDataSource since all rows are not loaded locally.');
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
- }
3096
+ // When grouped, _unpaginatedLocalData only has expanded visible nodes.
3097
+ // We use the full nested _unflattenedTreeData so the export worker can extract all nested rows recursively.
3098
+ exportData = this._unflattenedTreeData && this._unflattenedTreeData.length > 0
3099
+ ? this._unflattenedTreeData
3100
+ : this._unpaginatedLocalData;
2711
3101
  try {
2712
- await this.csvExportService.exportDataAsCsv(options, sourceColumns, exportData, this.config);
3102
+ // Merge options from gridConfig if available
3103
+ const finalOptions = { ...options };
3104
+ if (this.config.excelExportOptions?.customHeaders) {
3105
+ finalOptions.customHeaders = this.config.excelExportOptions.customHeaders;
3106
+ }
3107
+ console.log('Final Export Options:', finalOptions);
3108
+ await this.excelExportService.exportDataAsExcel(finalOptions, sourceColumns, exportData);
2713
3109
  }
2714
3110
  catch (error) {
2715
- console.error('UltraGrid CSV Export Failed:', error);
3111
+ console.error('UltraGrid Excel Export Failed:', error);
2716
3112
  }
2717
3113
  }
2718
3114
  onPageChanged(page) {
@@ -2775,11 +3171,7 @@ class UltraGridComponent {
2775
3171
  }
2776
3172
  onSideBarGroupModelUpdated(model) {
2777
3173
  this.groupModel = model;
2778
- this.applyLocalData();
2779
- this.cdr.markForCheck();
2780
- }
2781
- onValuesModelUpdated(model) {
2782
- this.valuesModel = model;
3174
+ this.updateVisibleColumns();
2783
3175
  this.applyLocalData();
2784
3176
  this.cdr.markForCheck();
2785
3177
  }
@@ -2960,6 +3352,7 @@ class UltraGridComponent {
2960
3352
  // Add to grouping
2961
3353
  this.groupModel = [...this.groupModel, event.field];
2962
3354
  }
3355
+ this.updateVisibleColumns();
2963
3356
  this.applyLocalData();
2964
3357
  this.cdr.markForCheck();
2965
3358
  }
@@ -3035,8 +3428,49 @@ class UltraGridComponent {
3035
3428
  this.applyLocalData();
3036
3429
  this.cdr.markForCheck();
3037
3430
  }
3038
- 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: CsvExportService }], target: i0.ɵɵFactoryTarget.Component });
3039
- 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" }, outputs: { rowClicked: "rowClicked", sortChanged: "sortChanged" }, usesOnChanges: true, ngImport: i0, template: `
3431
+ handlePivotColumns(dynamicPivotCols) {
3432
+ if (!this.config.pivotMode) {
3433
+ this._dynamicPivotColumns = [];
3434
+ return;
3435
+ }
3436
+ // Transform worker dynamic cols into UltraGridColumn definitions
3437
+ const newPivotCols = dynamicPivotCols.map(dc => ({
3438
+ field: dc.field,
3439
+ headerName: dc.headerName,
3440
+ width: 150,
3441
+ sortable: true,
3442
+ aggFunc: dc.aggFunc,
3443
+ headerClass: 'ug-pivot-header'
3444
+ }));
3445
+ this._dynamicPivotColumns = newPivotCols;
3446
+ this.updateVisibleColumns();
3447
+ }
3448
+ onValuesModelUpdated(model) {
3449
+ this.valuesModel = model;
3450
+ if (model.length === 0) {
3451
+ this._dynamicPivotColumns = [];
3452
+ this.updateVisibleColumns();
3453
+ }
3454
+ this.applyLocalData();
3455
+ }
3456
+ onSideBarPivotModelUpdated(model) {
3457
+ this.pivotColumns = model;
3458
+ if (model.length === 0) {
3459
+ this._dynamicPivotColumns = [];
3460
+ this.updateVisibleColumns();
3461
+ }
3462
+ this.applyLocalData();
3463
+ }
3464
+ onSideBarPivotModeUpdated(enabled) {
3465
+ this.config = { ...this.config, pivotMode: enabled };
3466
+ if (!enabled) {
3467
+ this._dynamicPivotColumns = [];
3468
+ this.updateVisibleColumns();
3469
+ }
3470
+ this.applyLocalData();
3471
+ }
3472
+ 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 });
3473
+ 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
3474
  <div class="ug-wrapper" [ngClass]="config.theme || 'ag-theme-alpine'">
3041
3475
 
3042
3476
  <div class="ug-main">
@@ -3105,12 +3539,17 @@ class UltraGridComponent {
3105
3539
  [columns]="columns"
3106
3540
  [rowData]="rowData"
3107
3541
  [activeFilters]="activeFilters"
3542
+ [conditionFilters]="conditionFilters"
3108
3543
  [groupModel]="groupModel"
3109
3544
  [valuesModel]="valuesModel"
3545
+ [pivotMode]="!!config.pivotMode"
3546
+ [pivotColumns]="pivotColumns"
3110
3547
  (columnsUpdated)="onSideBarColumnsUpdated($event)"
3111
3548
  (groupModelUpdated)="onSideBarGroupModelUpdated($event)"
3112
3549
  (valuesModelUpdated)="onValuesModelUpdated($event)"
3113
- (exportCsvClicked)="exportCsv({ mode: 'visible' })"
3550
+ (pivotModeUpdated)="onSideBarPivotModeUpdated($event)"
3551
+ (pivotModelUpdated)="onSideBarPivotModelUpdated($event)"
3552
+ (exportExcelClicked)="exportExcel({ includeHeaders: true })"
3114
3553
  (filterApplied)="onFilterApplied($event)"
3115
3554
  (conditionFilterChanged)="onConditionFilterChanged($event)"
3116
3555
  (clearAllFilters)="onClearAllFilters()">
@@ -3149,7 +3588,7 @@ class UltraGridComponent {
3149
3588
  </div>
3150
3589
 
3151
3590
  </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", "exportCsvClicked", "filterApplied", "conditionFilterChanged", "clearAllFilters"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
3591
+ `, 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"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
3153
3592
  }
3154
3593
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: UltraGridComponent, decorators: [{
3155
3594
  type: Component,
@@ -3232,12 +3671,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
3232
3671
  [columns]="columns"
3233
3672
  [rowData]="rowData"
3234
3673
  [activeFilters]="activeFilters"
3674
+ [conditionFilters]="conditionFilters"
3235
3675
  [groupModel]="groupModel"
3236
3676
  [valuesModel]="valuesModel"
3677
+ [pivotMode]="!!config.pivotMode"
3678
+ [pivotColumns]="pivotColumns"
3237
3679
  (columnsUpdated)="onSideBarColumnsUpdated($event)"
3238
3680
  (groupModelUpdated)="onSideBarGroupModelUpdated($event)"
3239
3681
  (valuesModelUpdated)="onValuesModelUpdated($event)"
3240
- (exportCsvClicked)="exportCsv({ mode: 'visible' })"
3682
+ (pivotModeUpdated)="onSideBarPivotModeUpdated($event)"
3683
+ (pivotModelUpdated)="onSideBarPivotModelUpdated($event)"
3684
+ (exportExcelClicked)="exportExcel({ includeHeaders: true })"
3241
3685
  (filterApplied)="onFilterApplied($event)"
3242
3686
  (conditionFilterChanged)="onConditionFilterChanged($event)"
3243
3687
  (clearAllFilters)="onClearAllFilters()">
@@ -3280,7 +3724,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
3280
3724
  }], ctorParameters: () => [{ type: Object, decorators: [{
3281
3725
  type: Inject,
3282
3726
  args: [PLATFORM_ID]
3283
- }] }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: GridFlattenerService }, { type: CsvExportService }], propDecorators: { columns: [{
3727
+ }] }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: GridFlattenerService }, { type: ExcelExportService }], propDecorators: { columns: [{
3284
3728
  type: Input
3285
3729
  }], rowData: [{
3286
3730
  type: Input
@@ -3296,6 +3740,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
3296
3740
  type: Output
3297
3741
  }], sortChanged: [{
3298
3742
  type: Output
3743
+ }], groupModel: [{
3744
+ type: Input
3745
+ }], valuesModel: [{
3746
+ type: Input
3747
+ }], pivotColumns: [{
3748
+ type: Input
3299
3749
  }] } });
3300
3750
 
3301
3751
  const COMPONENTS = [