xiejun
2023-08-23 205056bc17023dd44e6d262cfe78b6e146ee2f20
Merge remote-tracking branch 'origin/master'
已修改8个文件
已添加141个文件
67770 ■■■■■ 文件已修改
Source/UBCS-WEB/public/cdn/avue/2.9.12/avue.min.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/api/code/maxSerialNum.js 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue 429 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/FormTemplate/index.vue 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/code-dialog-page/maxSerialnumDialog.vue 101 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/.gitignore 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/.gitmodules 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/.jscs.json 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/.jshintrc 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/.npmignore 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/.travis.yml 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/CONTRIBUTING.md 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/LICENSE 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/Makefile 116 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/README.md 705 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bin/xlsx.njs 133 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/.npmignore 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/00_header.js 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/01_version.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/02_codepage.js 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/04_base64.js 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/05_buf.js 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/10_ssf.js 765 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/11_ssfutils.js 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/18_cfb.js 383 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/20_jsutils.js 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/21_ziputils.js 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/22_xmlutils.js 171 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/23_binutils.js 167 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/24_hoppers.js 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/25_cellutils.js 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/26_crypto.js 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/28_binstructs.js 160 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/29_xlsenum.js 265 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/30_ctype.js 254 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/31_rels.js 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/33_coreprops.js 79 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/34_extprops.js 76 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/35_custprops.js 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/36_xlsprops.js 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/38_xlstypes.js 440 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/39_xlsbiff.js 917 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/42_sstxml.js 204 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/43_sstbin.js 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/44_offcrypto.js 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/45_styutils.js 85 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/46_stycommon.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/47_styxml.js 400 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/48_stybin.js 133 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/49_theme.js 116 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/50_styxls.js 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/52_ccxml.js 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/53_ccbin.js 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/56_cmntcommon.js 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/57_cmntxml.js 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/58_cmntbin.js 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/61_fcommon.js 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/62_fxls.js 803 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/63_fbin.js 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/64_ftab.js 1090 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/66_wscommon.js 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/67_wsxml.js 433 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/68_wsbin.js 439 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/76_wbcommon.js 100 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/77_wbxml.js 181 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/78_wbbin.js 181 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/79_xmlbin.js 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/80_xlml.js 699 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/81_xls.js 675 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/82_parsetab.js 1230 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/83_parseods.js 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/84_defaults.js 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/85_parsezip.js 142 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/86_writezip.js 90 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/87_read.js 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/88_write.js 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/90_utils.js 207 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/91_xmlbuilder.js 88 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/92_stylebuilder.js 378 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/98_exports.js 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bits/99_footer.js 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/bower.json 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/cell_style_simple.json 1773 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/color.js 86 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/dist/LICENSE 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/dist/cpexcel.js 1324 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/dist/jszip.js 8982 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/dist/ods.js 414 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/dist/xlsx.core.min.js 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/dist/xlsx.core.min.map 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/dist/xlsx.full.min.js 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/dist/xlsx.full.min.map 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/dist/xlsx.js 12577 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/dist/xlsx.min.js 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/dist/xlsx.min.map 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/example-4.js 642 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/example-style.js 642 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/example1.js 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/example3.js 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/jszip.js 8982 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/misc/_bower.json 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/misc/cfb.d.ts 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/misc/node.d.ts 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/misc/spin.sh 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/misc/ssf.json 152 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/misc/strip_sourcemap.sh 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/misc/xl.d.ts 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/misc/xlsx2csv.ts 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/ods.js 414 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/00_header.js 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/10_utils.js 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/20_jsutils.js 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/21_ziputils.js 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/22_xmlutils.js 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/23_xlml.js 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/30_manifest.js 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/40_helpers.js 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/60_content.js 210 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/80_parse.js 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/98_exports.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/99_footer.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/package-lock.json 323 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/package.json 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/shim.js 237 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/test.js 1129 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/testA.lst 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/tests.lst 1064 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/tests/Common.js 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/tests/EncodedSpec.js 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/tests/FormulaSpec.js 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/tests/InterviewSpec.js 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/tests/IssueSpec.js 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/tests/MixedSpec.js 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/tests/NamedRangesSpec.js 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/tests/print-header.js 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/tests/test-acid.js 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/tests/test-csv.js 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/tests/test-freeze.js 105 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/tests/test-min.js 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/tests/test-open.js 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/tests/test-style.js 717 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/tests/write.js 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/xlsx.js 12577 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/xlsxworker.js 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/xlsxworker1.js 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/config/js-xlsx-master/xlsxworker2.js 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/system/menu.vue 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/wel/index.vue 25 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/public/cdn/avue/2.9.12/avue.min.js
@@ -4,6 +4,6 @@
 *  Released under the MIT License.
 *
 */
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("vue"),require("axios")):"function"==typeof define&&define.amd?define("AVUE",["vue","axios"],e):"object"==typeof exports?exports.AVUE=e(require("vue"),require("axios")):t.AVUE=e(t.Vue,t.axios)}(this,(function(__WEBPACK_EXTERNAL_MODULE__8__,__WEBPACK_EXTERNAL_MODULE__20__){return function(t){var e={};function n(i){if(e[i])return e[i].exports;var o=e[i]={i:i,l:!1,exports:{}};return t[i].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(t,e,i){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:i})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)n.d(i,o,function(e){return t[e]}.bind(null,o));return i},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=24)}([function(t,e,n){"use strict";function i(t,e,n,i,o,a,r,s){var l,c="function"==typeof t?t.options:t;if(e&&(c.render=e,c.staticRenderFns=n,c._compiled=!0),i&&(c.functional=!0),a&&(c._scopeId="data-v-"+a),r?(l=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(r)},c._ssrRegister=l):o&&(l=s?function(){o.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:o),l)if(c.functional){c._injectStyles=l;var u=c.render;c.render=function(t,e){return l.call(e),u(t,e)}}else{var d=c.beforeCreate;c.beforeCreate=d?[].concat(d,l):[l]}return{exports:t,options:c}}n.d(e,"a",(function(){return i}))},function(t,e,n){"use strict";var i=function(t,e,n){return e?t+n+e:t},o=function t(e,n){if("string"==typeof n)return i(e,n,"--");if(Array.isArray(n))return n.map((function(n){return t(e,n)}));var o={};return Object.keys(n||{}).forEach((function(t){o[e+"--"+t]=n[t]})),o},a={methods:{b:function(t,e){var n=this.$options.name;return t&&"string"!=typeof t&&(e=t,t=""),t=i(n,t,"__"),e?[t,o(t,e)]:t}}},r=n(3);e.a=function(t){return t.name=r.i+(t.name||""),t.mixins=t.mixins||[],t.mixins.push(a),t}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"n",(function(){return getFixed})),__webpack_require__.d(__webpack_exports__,"m",(function(){return getAsVal})),__webpack_require__.d(__webpack_exports__,"t",(function(){return setAsVal})),__webpack_require__.d(__webpack_exports__,"r",(function(){return loadScript})),__webpack_require__.d(__webpack_exports__,"h",(function(){return downFile})),__webpack_require__.d(__webpack_exports__,"w",(function(){return strCorNum})),__webpack_require__.d(__webpack_exports__,"c",(function(){return createObj})),__webpack_require__.d(__webpack_exports__,"d",(function(){return dataURLtoFile})),__webpack_require__.d(__webpack_exports__,"l",(function(){return findObject})),__webpack_require__.d(__webpack_exports__,"s",(function(){return randomId})),__webpack_require__.d(__webpack_exports__,"q",(function(){return isJson})),__webpack_require__.d(__webpack_exports__,"e",(function(){return deepClone})),__webpack_require__.d(__webpack_exports__,"v",(function(){return sortArrys})),__webpack_require__.d(__webpack_exports__,"u",(function(){return setPx})),__webpack_require__.d(__webpack_exports__,"f",(function(){return detailDataType})),__webpack_require__.d(__webpack_exports__,"g",(function(){return detailDic})),__webpack_require__.d(__webpack_exports__,"k",(function(){return findByValue})),__webpack_require__.d(__webpack_exports__,"i",(function(){return filterParams})),__webpack_require__.d(__webpack_exports__,"o",(function(){return getObjValue})),__webpack_require__.d(__webpack_exports__,"j",(function(){return findArray})),__webpack_require__.d(__webpack_exports__,"p",(function(){return getPasswordChar})),__webpack_require__.d(__webpack_exports__,"a",(function(){return arraySort})),__webpack_require__.d(__webpack_exports__,"b",(function(){return clearVal})),__webpack_require__.d(__webpack_exports__,"x",(function(){return vaildData}));var _validate__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(5),global_variable__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(3);function _typeof(t){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function getFixed(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2;return Number(t.toFixed(e))}function getAsVal(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=deepClone(t);return Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(e)||e.split(".").forEach((function(t){n=Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(n[t])?"":n[t]})),n}function setAsVal(obj){var bind=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",value=arguments.length>2?arguments[2]:void 0,result,type=getObjType(value);return result=Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(value)?"array"===type?"obj.".concat(bind,"=[]"):"object"===type?"obj.".concat(bind,"={}"):["number","boolean"].includes(type)?"obj.".concat(bind,"=undefined"):"obj.".concat(bind,"=''"):"string"==type?"obj.".concat(bind,"='").concat(value,"'"):"obj.".concat(bind,"=").concat(value),eval(result),obj}var loadScript=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"js",e=arguments.length>1?arguments[1]:void 0,n=!1;return new Promise((function(i){var o,a=document.getElementsByTagName("head")[0];(a.children.forEach((function(t){-1!==(t.src||"").indexOf(e)&&(n=!0,i())})),n)||("js"===t?((o=document.createElement("script")).type="text/javascript",o.src=e):"css"===t&&((o=document.createElement("link")).rel="stylesheet",o.type="text/css",o.href=e),a.appendChild(o),o.onload=function(){i()})}))};function downFile(t,e){"object"==_typeof(t)&&t instanceof Blob&&(t=URL.createObjectURL(t));var n,i=document.createElement("a");i.href=t,i.download=e||"",window.MouseEvent?n=new MouseEvent("click"):(n=document.createEvent("MouseEvents")).initMouseEvent("click",!0,!1,window,0,0,0,0,0,!1,!1,!1,!1,0,null),i.dispatchEvent(n)}function strCorNum(t){return t.forEach((function(e,n){t[n]=Number(e)})),t}function extend(){var t,e,n,i,o=arguments[0]||{},a=!1,r=Array.prototype.slice.call(arguments),s=1,l=!1;for("boolean"==typeof o&&(a=o,s++,o=arguments[1]);s<r.length;s++)if(null!=(t=r[s]))for(n in t)i=t[n],e=o[n],a&&("[object Object]"===toString.call(i)||(l="[object Array]"==toString.call(i)))?(e=l?"[object Array]"===toString.call(e)?e:[]:"[object Object]"===toString.call(e)?e:{},o[n]=extend(a,e,i)):void 0!==i&&i!==e&&(o[n]=i);return o}function createObj(t,e){var n=e.split("."),i=n.splice(0,1)[0],o={};if(o[i]={},n.length>=2){var a="";n.forEach((function(t){a="".concat(a).concat("{",'"').concat(t,'":')})),a="".concat(a,'""');for(var r=0;r<n.length;r++)a="".concat(a).concat("}");a=JSON.parse(a),o[i]=a}return t=extend(!0,t,o)}function dataURLtoFile(t,e){for(var n=t.split(","),i=n[0].match(/:(.*?);/)[1],o=atob(n[1]),a=o.length,r=new Uint8Array(a);a--;)r[a]=o.charCodeAt(a);return new File([r],e,{type:i})}function findObject(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"prop",i=-1,o=function(){var e;return t.forEach((function(t){t.column?e="group":t.children&&(e="tree")})),e}();return"group"===o?t.forEach((function(t){var o=findArray(t.column,e,n,!0);-1!==o&&(i=o)})):i="tree"===o?findLabelNode(t,e,{value:n},!0):findArray(t,e,n,!0),i}function randomId(){for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",e=t.length,n="",i=0;i<16;i++)n+=t.charAt(Math.floor(Math.random()*e));return n}var getObjType=function(t){var e=Object.prototype.toString;return t instanceof Element?"element":{"[object Boolean]":"boolean","[object Number]":"number","[object String]":"string","[object Function]":"function","[object Array]":"array","[object Date]":"date","[object RegExp]":"regExp","[object Undefined]":"undefined","[object Null]":"null","[object Object]":"object"}[e.call(t)]},isJson=function(t){return Array.isArray(t)?t[0]instanceof Object:t instanceof Object},deepClone=function t(e){var n,i=getObjType(e);if("array"===i)n=[];else{if("object"!==i)return e;n={}}if("array"===i)for(var o=0,a=e.length;o<a;o++)e[o]=(e[o],e[o]),e[o]&&delete e[o].$parent,n.push(t(e[o]));else if("object"===i)for(var r in e)e&&delete e.$parent,n[r]=t(e[r]);return n},sortArrys=function(t,e){return t.sort((function(t,n){return t[e]>n[e]?-1:t[e]<n[e]?1:0})),t},setPx=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(t)&&(t=e),Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(t)?"":(-1===(t+="").indexOf("%")&&(t+="px"),t)},detailDataType=function(t,e){return Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(t)?t:"number"===e?Number(t):"string"===e?t+"":t},getUrlParams=function(t){var e={url:"",params:{}},n=t.split("?");e.url=n[0];var i=n[1];i&&i.split("&").forEach((function(t){var n=t.split("="),i=n[0],o=n[1];e.params[i]=o}));return e},detailDic=function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=arguments.length>2?arguments[2]:void 0,o=n.value||global_variable__WEBPACK_IMPORTED_MODULE_1__.e.value,a=n.children||global_variable__WEBPACK_IMPORTED_MODULE_1__.e.children;return e.forEach((function(e){e[o]=detailDataType(e[o],i),e[a]&&t(e[a],n,i)})),e},findByValue=function(t,e,n){if(Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(t))return e;var i="",o=e instanceof Array,a=o?e:[e];n=n||global_variable__WEBPACK_IMPORTED_MODULE_1__.e,i=[];for(var r=0;r<a.length;r++)i.push(findLabelNode(t,a[r],n)||a[r]);return o?i.join(global_variable__WEBPACK_IMPORTED_MODULE_1__.f).toString():i.join()},filterParams=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:["","$"],n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],i=n?deepClone(t):t;for(var o in i)e.includes("")&&Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(i[o])&&delete i[o],e.includes("$")&&-1!==o.indexOf("$")&&delete i[o];return i},detailDicGroup=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=deepClone(t),i=e[global_variable__WEBPACK_IMPORTED_MODULE_1__.e.groups]||global_variable__WEBPACK_IMPORTED_MODULE_1__.e.groups;return t.forEach((function(t){t[i]&&(n=n.concat(t[i]))})),n},findLabelNode=function(t,e,n,i){var o;i||(t=detailDicGroup(t,n));return function t(a){for(var r=n.label||global_variable__WEBPACK_IMPORTED_MODULE_1__.e.label,s=n.value||global_variable__WEBPACK_IMPORTED_MODULE_1__.e.value,l=n.children||global_variable__WEBPACK_IMPORTED_MODULE_1__.e.children,c=0;c<a.length;c++){var u=a[c],d=u[l]||[];u[s]===e?o=i?u:u[r]:t(d)}}(t),o},getDeepData=function(t){return(Array.isArray(t)?t:t.data)||[]},getObjValue=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2?arguments[2]:void 0,i=e.split("."),o=t;return""===i[0]&&"object"!==n?getDeepData(t):(""!==i[0]&&i.forEach((function(t){o=o[t]})),o)},findArray=function(t,e,n,i){n=n||global_variable__WEBPACK_IMPORTED_MODULE_1__.e.value;for(var o=0;o<t.length;o++)if(t[o][n]===e)return i?t[o]:o;return-1},getPasswordChar=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",e=arguments.length>1?arguments[1]:void 0,n=t.toString().length;t="";for(var i=0;i<n;i++)t+=e;return t},arraySort=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0;return t.filter((function(t){return!Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(t[e])})).sort((function(t,e){return n(t,e)})).concat(t.filter((function(t){return Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(t[e])})))},clearVal=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return t?(Object.keys(t).forEach((function(n){if(!e.includes(n))if(n.includes("$"))delete t[n];else if(!Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(t[n])){var i=getObjType(t[n]);"array"===i?t[n]=[]:"object"===i?t[n]={}:["number","boolean"].includes(i)?t[n]=void 0:t[n]=""}})),t):{}},vaildData=function(t,e){return"boolean"==typeof t?t:Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(t)?e:t}},function(t,e,n){"use strict";n.d(e,"i",(function(){return i})),n.d(e,"e",(function(){return o})),n.d(e,"d",(function(){return a})),n.d(e,"c",(function(){return r})),n.d(e,"h",(function(){return s})),n.d(e,"a",(function(){return l})),n.d(e,"j",(function(){return c})),n.d(e,"k",(function(){return u})),n.d(e,"b",(function(){return d})),n.d(e,"l",(function(){return p})),n.d(e,"f",(function(){return h})),n.d(e,"g",(function(){return f})),n.d(e,"m",(function(){return m}));var i="avue-",o={rowKey:"id",rowParentKey:"parentId",nodeKey:"id",label:"label",value:"value",desc:"desc",groups:"groups",title:"title",leaf:"leaf",children:"children",hasChildren:"hasChildren",labelText:"名称",disabled:"disabled"},a={name:"name",url:"url",fileName:"file",res:""},r=["dates","date","datetime","datetimerange","daterange","time","timerange","week","month","monthrange","year"],s=["tree","number","icon","color","table","map"],l=["img","array","url"],c=["cascader","tree","select"],u=["slider"],d=l.concat(["upload","dynamic","map","checkbox","cascader","dynamic","timerange","monthrange","daterange","datetimerange","dates"]),p=r.concat(["select","checkbox","radio","cascader","tree","color","icon","table","map"]),h=" | ",f=",",m={img:/\.(gif|jpg|jpeg|png|webp|GIF|JPG|PNG)/,video:/\.(swf|avi|flv|mpg|rm|mov|wav|asf|3gp|mkv|rmvb|ogg|mp4)/}},function(t,e,n){"use strict";var i=n(12);e.a={methods:{t:function(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return i.b.apply(this,e)}}}},function(t,e,n){"use strict";function i(t){if(t instanceof Date||"boolean"==typeof t||"number"==typeof t)return!1;if(!(t instanceof Array)){if(t instanceof Object){for(var e in t)return!1;return!0}return"null"===t||null==t||"undefined"===t||void 0===t||""===t}return 0===t.length}n.d(e,"a",(function(){return i}))},function(t,e,n){"use strict";var i=n(15),o={AliOSS:{title:"阿里云云图片上传,需引入OSS的sdk",github:"https://github.com/ali-sdk/ali-oss/"},Map:{url:"https://webapi.amap.com/maps?v=1.4.11&key=xxxxx&plugin=AMap.PlaceSearch,https://webapi.amap.com/ui/1.0/main.js?v=1.0.11",title:"地图组件,需引入高德SDK"},MapUi:{url:"https://webapi.amap.com/ui/1.0/main.js?v=1.0.11",title:"地图组件,需引入高德UISDK"},Sortable:{url:"https://cdn.staticfile.org/Sortable/1.10.0-rc2/Sortable.min.js",title:"拖拽,需引入sortableJs",github:"https://github.com/SortableJS/Sortable"},Screenshot:{url:"https://cdn.staticfile.org/html2canvas/0.5.0-beta4/html2canvas.min.js",title:"需引入html2canvas依赖包",github:"https://github.com/niklasvh/html2canvas/"},CryptoJS:{url:"https://avuejs.com/cdn/CryptoJS.js",title:"七牛云图片上传,需引入CryptoJS"},hljs:{url:"https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/highlight.min.js",title:"需引入hljs框架包",github:"https://github.com/highlightjs/highlight.js"},"file-saver":{url:"../../src/config/FileSaver.js-master",title:"需引入文件操作包"},xlsx:{url:"https://cdn.staticfile.org/xlsx/0.18.2/xlsx.full.min.js",title:"需引入excel操作包",github:"https://github.com/protobi/js-xlsx"},mock:{url:"https://cdn.staticfile.org/Mock.js/1.0.1-beta3/mock-min.js",title:"需要引入mock模拟数据包",github:"https://github.com/Colingo/mock"}};e.a={logs:function(t){var e=o[t];i.a.capsule(t,e.title,"warning"),i.a.warning("CDN:"+(e.url||"-")),i.a.warning("GITHUB:"+(e.github||"-"))}}},function(t,e,n){"use strict";n.d(e,"a",(function(){return s})),n.d(e,"b",(function(){return c})),n.d(e,"h",(function(){return u})),n.d(e,"g",(function(){return d})),n.d(e,"e",(function(){return p})),n.d(e,"d",(function(){return h})),n.d(e,"f",(function(){return f}));var i=n(5),o=n(3),a=n(2),r=n(12),s=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return t.forEach((function(e){var n=e.cascader;if(!Object(i.a)(n)){var o=e.prop;n.forEach((function(e){var n=Object(a.l)(t,e);-1!==n&&(n.parentProp=o)}))}})),t},l=0,c=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:12,n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];n&&(l=0);var i=24;return(l=l+(t.span||e)+(t.offset||0))===i?l=0:l>i?l=0+(t.span||e)+(t.offset||0):t.row&&l!==i&&(t.count=i-l,l=0),t},u=function(t,e){var n=e.type,r=e.multiple,s=e.dataType,l=e.separator,c=void 0===l?o.g:l,u=e.alone,d=e.emitPath,p=e.range,h=t;return o.j.includes(n)&&1==r||o.b.includes(n)&&!1!==d||o.k.includes(n)&&1==p?(Array.isArray(h)||(h=Object(i.a)(h)?[]:(h+"").split(c)||[]),h.forEach((function(t,e){h[e]=Object(a.f)(t,s)})),o.a.includes(n)&&Object(i.a)(h)&&u&&(h=[""])):h=Object(a.f)(h,s),h},d=function(t){var e=t.type,n=t.searchRange,i=e;if(t.searchType)return t.searchType;if(["radio","checkbox","switch"].includes(e))i="select";else if(o.c.includes(e)){i=n?e.includes("range")?e:e+"range":e.replace("range","")}else["textarea"].includes(e)&&(i="input");return i},p=function(t,e){var n=t||"input";return Object(i.a)(e)?(o.a.includes(t)?n="array":["time","timerange"].includes(t)?n="time":o.c.includes(t)?n="date":["password","textarea","search"].includes(t)?n="input":o.h.includes(t)&&(n="input-"+t),o.i+n):e},h=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e={};return t.forEach((function(t){o.b.includes(t.type)&&!1!==t.emitPath||o.j.includes(t.type)&&t.multiple||"array"===t.dataType?e[t.prop]=[]:o.k.includes(t.type)&&1==t.range?e[t.prop]=[0,0]:["rate","slider","number"].includes(t.type)||"number"===t.dataType?e[t.prop]=void 0:e[t.prop]="",t.bind&&(e=Object(a.c)(e,t.bind)),Object(i.a)(t.value)||(e[t.prop]=t.value)})),{tableForm:e}},f=function(t){var e=t.placeholder,n=t.label;return Object(i.a)(e)?o.l.includes(t.type)?"".concat(Object(r.b)("tip.select")," ").concat(n):"".concat(Object(r.b)("tip.input")," ").concat(n):e}},function(t,e){t.exports=__WEBPACK_EXTERNAL_MODULE__8__},function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n.d(e,"b",(function(){return r})),n.d(e,"c",(function(){return s})),n.d(e,"d",(function(){return l}));var i=n(5),o=n(2),a=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return new Promise((function(n,o){var a=[],r=[],s={};t.forEach((function(t){t.parentProp&&a.push(t)})),e.forEach((function(t,e){a.forEach((function(n){!0!==n.hide&&!1!==n.dicFlag&&r.push(new Promise((function(o){Object(i.a)(t[n.parentProp])?o({prop:n.prop,data:[],index:e}):n.dicUrl&&l({url:"".concat(n.dicUrl.replace("{{key}}",t[n.parentProp])),props:n.props,method:n.dicMethod,formatter:n.dicFormatter,query:n.dicQuery,form:t}).then((function(t){o({prop:n.prop,data:t,index:e})}))})))}))})),Promise.all(r).then((function(t){t.forEach((function(t){Object(i.a)(s[t.index])&&(s[t.index]={}),s[t.index][t.prop]=t.data})),n(s)}))}))},r=function(t){var e=[];return new Promise((function(n,i){var a,r,s,c=function(t){var e=t.column||[],n=[],i={},o=[];return e.forEach((function(t){var e=t.dicData,a=t.dicUrl,r=t.prop,s=t.parentProp;o=o.concat(t.cascader||[]),Array.isArray(e)&&(i[r]=e),!1===t.dicFlag||!0===t.lazy||o.includes(r)||a&&!s&&n.push({url:a,name:r,method:t.dicMethod,formatter:t.dicFormatter,props:t.props,dataType:t.dataType,resKey:(t.props||{}).res,query:t.dicQuery||{}})})),{ajaxdic:n,locationdic:i}}(t);e=c.ajaxdic,(a=e,r={},s=[],new Promise((function(t){a.forEach((function(t){s.push(new Promise((function(e){l(Object.assign(t,{url:"".concat(t.url.replace("{{key}}",""))})).then((function(n){n=Object(o.g)(n,t.props,t.dataType),e(n)})).catch((function(){e([])}))})))})),Promise.all(s).then((function(e){a.forEach((function(t,n){r[t.name]=e[n]})),t(r)}))}))).then((function(t){n(t)})).catch((function(t){i(t)}))}))},s=function(t){var e={},n=t.dicData||{};return t.column.forEach((function(t){t.dicData&&(e[t.prop]=Object(o.g)(t.dicData,t.props,t.dataType))})),Object.assign(n,e)};var l=function(t){var e=t.url,n=t.query,i=t.method,a=t.resKey,r=t.props,s=t.formatter,l=t.value,c=void 0===l?"":l,u=t.column,d=t.form,p=void 0===d?{}:d;u&&(e=u.dicUrl,i=u.dicMethod,n=u.dicQuery||{},s=u.dicFormatter,r=u.props);var h={};return((e=e||"").match(/[^\{\}]+(?=\})/g)||[]).forEach((function(t){var n="{{".concat(t,"}}"),i=p[t];e="key"===t?e.replace(n,c):e.replace(n,i)})),"post"===i&&Object.keys(n).forEach((function(t){var e=n[t];if("string"==typeof e)if(e.match(/\{{|}}/g)){var i=p[e.replace(/\{{|}}/g,"")];h[t]=i}else h[t]=e;else h[t]=e})),r&&(a=(r||{}).res||a),new Promise((function(t){var r=function(e){var n=[];n="function"==typeof s?s(e.data):Object(o.o)(e.data,a),t(n)};"post"===i?window.axios.post(e,h).then((function(t){r(t)})).catch((function(){return[t([])]})):window.axios.get(e,{params:n}).then((function(t){r(t)})).catch((function(){return[t([])]}))}))}},function(t,e,n){t.exports=function(){"use strict";var t=6e4,e=36e5,n="millisecond",i="second",o="minute",a="hour",r="day",s="week",l="month",c="quarter",u="year",d="date",p="Invalid Date",h=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,f=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,m={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},v=function(t,e,n){var i=String(t);return!i||i.length>=e?t:""+Array(e+1-i.length).join(n)+t},b={s:v,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),i=Math.floor(n/60),o=n%60;return(e<=0?"+":"-")+v(i,2,"0")+":"+v(o,2,"0")},m:function t(e,n){if(e.date()<n.date())return-t(n,e);var i=12*(n.year()-e.year())+(n.month()-e.month()),o=e.clone().add(i,l),a=n-o<0,r=e.clone().add(i+(a?-1:1),l);return+(-(i+(n-o)/(a?o-r:r-o))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(t){return{M:l,y:u,w:s,d:r,D:d,h:a,m:o,s:i,ms:n,Q:c}[t]||String(t||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},g="en",y={};y[g]=m;var _=function(t){return t instanceof C},x=function t(e,n,i){var o;if(!e)return g;if("string"==typeof e){var a=e.toLowerCase();y[a]&&(o=a),n&&(y[a]=n,o=a);var r=e.split("-");if(!o&&r.length>1)return t(r[0])}else{var s=e.name;y[s]=e,o=s}return!i&&o&&(g=o),o||!i&&g},w=function(t,e){if(_(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new C(n)},O=b;O.l=x,O.i=_,O.w=function(t,e){return w(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var C=function(){function m(t){this.$L=x(t.locale,null,!0),this.parse(t)}var v=m.prototype;return v.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(O.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var i=e.match(h);if(i){var o=i[2]-1||0,a=(i[7]||"0").substring(0,3);return n?new Date(Date.UTC(i[1],o,i[3]||1,i[4]||0,i[5]||0,i[6]||0,a)):new Date(i[1],o,i[3]||1,i[4]||0,i[5]||0,i[6]||0,a)}}return new Date(e)}(t),this.$x=t.x||{},this.init()},v.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},v.$utils=function(){return O},v.isValid=function(){return!(this.$d.toString()===p)},v.isSame=function(t,e){var n=w(t);return this.startOf(e)<=n&&n<=this.endOf(e)},v.isAfter=function(t,e){return w(t)<this.startOf(e)},v.isBefore=function(t,e){return this.endOf(e)<w(t)},v.$g=function(t,e,n){return O.u(t)?this[e]:this.set(n,t)},v.unix=function(){return Math.floor(this.valueOf()/1e3)},v.valueOf=function(){return this.$d.getTime()},v.startOf=function(t,e){var n=this,c=!!O.u(e)||e,p=O.p(t),h=function(t,e){var i=O.w(n.$u?Date.UTC(n.$y,e,t):new Date(n.$y,e,t),n);return c?i:i.endOf(r)},f=function(t,e){return O.w(n.toDate()[t].apply(n.toDate("s"),(c?[0,0,0,0]:[23,59,59,999]).slice(e)),n)},m=this.$W,v=this.$M,b=this.$D,g="set"+(this.$u?"UTC":"");switch(p){case u:return c?h(1,0):h(31,11);case l:return c?h(1,v):h(0,v+1);case s:var y=this.$locale().weekStart||0,_=(m<y?m+7:m)-y;return h(c?b-_:b+(6-_),v);case r:case d:return f(g+"Hours",0);case a:return f(g+"Minutes",1);case o:return f(g+"Seconds",2);case i:return f(g+"Milliseconds",3);default:return this.clone()}},v.endOf=function(t){return this.startOf(t,!1)},v.$set=function(t,e){var s,c=O.p(t),p="set"+(this.$u?"UTC":""),h=(s={},s[r]=p+"Date",s[d]=p+"Date",s[l]=p+"Month",s[u]=p+"FullYear",s[a]=p+"Hours",s[o]=p+"Minutes",s[i]=p+"Seconds",s[n]=p+"Milliseconds",s)[c],f=c===r?this.$D+(e-this.$W):e;if(c===l||c===u){var m=this.clone().set(d,1);m.$d[h](f),m.init(),this.$d=m.set(d,Math.min(this.$D,m.daysInMonth())).$d}else h&&this.$d[h](f);return this.init(),this},v.set=function(t,e){return this.clone().$set(t,e)},v.get=function(t){return this[O.p(t)]()},v.add=function(n,c){var d,p=this;n=Number(n);var h=O.p(c),f=function(t){var e=w(p);return O.w(e.date(e.date()+Math.round(t*n)),p)};if(h===l)return this.set(l,this.$M+n);if(h===u)return this.set(u,this.$y+n);if(h===r)return f(1);if(h===s)return f(7);var m=(d={},d[o]=t,d[a]=e,d[i]=1e3,d)[h]||1,v=this.$d.getTime()+n*m;return O.w(v,this)},v.subtract=function(t,e){return this.add(-1*t,e)},v.format=function(t){var e=this,n=this.$locale();if(!this.isValid())return n.invalidDate||p;var i=t||"YYYY-MM-DDTHH:mm:ssZ",o=O.z(this),a=this.$H,r=this.$m,s=this.$M,l=n.weekdays,c=n.months,u=function(t,n,o,a){return t&&(t[n]||t(e,i))||o[n].slice(0,a)},d=function(t){return O.s(a%12||12,t,"0")},h=n.meridiem||function(t,e,n){var i=t<12?"AM":"PM";return n?i.toLowerCase():i},m={YY:String(this.$y).slice(-2),YYYY:this.$y,M:s+1,MM:O.s(s+1,2,"0"),MMM:u(n.monthsShort,s,c,3),MMMM:u(c,s),D:this.$D,DD:O.s(this.$D,2,"0"),d:String(this.$W),dd:u(n.weekdaysMin,this.$W,l,2),ddd:u(n.weekdaysShort,this.$W,l,3),dddd:l[this.$W],H:String(a),HH:O.s(a,2,"0"),h:d(1),hh:d(2),a:h(a,r,!0),A:h(a,r,!1),m:String(r),mm:O.s(r,2,"0"),s:String(this.$s),ss:O.s(this.$s,2,"0"),SSS:O.s(this.$ms,3,"0"),Z:o};return i.replace(f,(function(t,e){return e||m[t]||o.replace(":","")}))},v.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},v.diff=function(n,d,p){var h,f=O.p(d),m=w(n),v=(m.utcOffset()-this.utcOffset())*t,b=this-m,g=O.m(this,m);return g=(h={},h[u]=g/12,h[l]=g,h[c]=g/3,h[s]=(b-v)/6048e5,h[r]=(b-v)/864e5,h[a]=b/e,h[o]=b/t,h[i]=b/1e3,h)[f]||b,p?g:O.a(g)},v.daysInMonth=function(){return this.endOf(l).$D},v.$locale=function(){return y[this.$L]},v.locale=function(t,e){if(!t)return this.$L;var n=this.clone(),i=x(t,e,!0);return i&&(n.$L=i),n},v.clone=function(){return O.w(this.$d,this)},v.toDate=function(){return new Date(this.valueOf())},v.toJSON=function(){return this.isValid()?this.toISOString():null},v.toISOString=function(){return this.$d.toISOString()},v.toString=function(){return this.$d.toUTCString()},m}(),k=C.prototype;return w.prototype=k,[["$ms",n],["$s",i],["$m",o],["$H",a],["$W",r],["$M",l],["$y",u],["$D",d]].forEach((function(t){k[t[1]]=function(e){return this.$g(e,t[0],t[1])}})),w.extend=function(t,e){return t.$i||(t(e,C,w),t.$i=!0),w},w.locale=x,w.isDayjs=_,w.unix=function(t){return w(1e3*t)},w.en=y[g],w.Ls=y,w.p={},w}()},function(t,e,n){"use strict";e.a={methods:{getSlotName:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"D",n=arguments.length>2?arguments[2]:void 0,i={F:"Form",H:"Header",E:"Error",L:"Label",S:"Search",T:"Type",D:""},o=t.prop+i[e];return n?n[o]:o},getSlotList:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0;return n=n.map((function(t){return t.prop})),Object.keys(e).filter((function(e){var i=!1;return n.includes(e)||t.forEach((function(t){e.includes(t)&&(i=!0)})),i}))}}}},function(t,e,n){"use strict";n.d(e,"b",(function(){return h}));var i=n(8),o=n.n(i);function a(t){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var r=Object.prototype.hasOwnProperty;function s(t,e){return r.call(t,e)}var l=/(%|)\{([0-9a-zA-Z_]+)\}/g,c=(o.a,function(){for(var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",e=arguments.length,n=new Array(e>1?e-1:0),i=1;i<e;i++)n[i-1]=arguments[i];return 1===n.length&&"object"===a(n[0])&&(n=n[0]),n&&n.hasOwnProperty||(n={}),t.replace(l,(function(e,i,o,a){var r;return"{"===t[a-1]&&"}"===t[a+e.length]?o:null==(r=s(n,o)?n[o]:null)?"":r}))}),u={common:{condition:"条件",display:"显示",hide:"隐藏"},tip:{select:"请选择",input:"请输入"},upload:{upload:"点击上传",tip:"将文件拖到此处,或"},date:{start:"开始日期",end:"结束日期",t:"今日",y:"昨日",n:"近7天",a:"全部"},form:{printBtn:"打 å°",mockBtn:"模 æ‹Ÿ",submitBtn:"提 äº¤",emptyBtn:"清 ç©º"},crud:{filter:{addBtn:"新增条件",clearBtn:"清空数据",resetBtn:"清空条件",cancelBtn:"取 æ¶ˆ",submitBtn:"ç¡® å®š"},column:{name:"列名",hide:"隐藏",fixed:"冻结",filters:"过滤",sortable:"排序",index:"顺序",width:"宽度"},tipStartTitle:"当前表格已选择",tipEndTitle:"项",editTitle:"编 è¾‘",copyTitle:"复 åˆ¶",addTitle:"新 å¢ž",viewTitle:"查 çœ‹",filterTitle:"过滤条件",showTitle:"列显隐",menu:"操作",addBtn:"新 å¢ž",show:"显 ç¤º",hide:"隐 è—",open:"展 å¼€",shrink:"收 ç¼©",printBtn:"打 å°",excelBtn:"导 å‡º",updateBtn:"ä¿® æ”¹",cancelBtn:"取 æ¶ˆ",searchBtn:"搜 ç´¢",emptyBtn:"清 ç©º",menuBtn:"功 èƒ½",saveBtn:"保 å­˜",viewBtn:"查 çœ‹",editBtn:"编 è¾‘",copyBtn:"复 åˆ¶",delBtn:"删 é™¤"}},d=!1,p=function(){var t=Object.getPrototypeOf(this||o.a).$t;if("function"==typeof t&&o.a.locale)return d||(d=!0,o.a.locale(o.a.config.lang,Object.assign(u,o.a.locale(o.a.config.lang)||{},{clone:!0}))),t.apply(this,arguments)},h=function(t,e){var n=p.apply(this,arguments);if(null!=n)return n;for(var i=t.split("."),o=u,a=0,r=i.length;a<r;a++){var s=i[a];if(n=o[s],a===r-1)return c(n,e);if(!n)return"";o=n}return""};e.a={use:function(t){u=t||u},t:h,i18n:function(t){p=t||p}}},function(t,e,n){"use strict";var i=n(9),o=n(3),a=n(11);e.a=function(){return{mixins:[a.a],props:{defaults:{type:Object,default:function(){return{}}},option:{type:Object,required:!0,default:function(){return{}}}},watch:{defaults:{handler:function(t){this.objectOption=t},deep:!0},objectOption:{handler:function(t){this.$emit("update:defaults",t)},deep:!0},propOption:{handler:function(t){var e=this;this.objectOption={},t.forEach((function(t){return e.objectOption[t.prop]=t}))},deep:!0},option:{handler:function(){this.init(!1)},deep:!0}},data:function(){return{DIC:{},cascaderDIC:{},tableOption:{},isMobile:"",objectOption:{}}},created:function(){this.init()},computed:{resultOption:function(){return Object.assign(this.deepClone(this.tableOption),{column:this.propOption})},rowKey:function(){return this.tableOption.rowKey||o.e.rowKey},formRules:function(){var t={};return this.propOption.forEach((function(e){e.rules&&!1!==e.display&&(t[e.prop]=e.rules)})),t},isMediumSize:function(){return this.controlSize},controlSize:function(){return this.tableOption.size||this.$AVUE.size}},methods:{init:function(t){this.tableOption=this.option,this.getIsMobile(),this.handleLocalDic(),!1!==t&&this.handleLoadDic()},dicInit:function(t){"cascader"===t?this.handleLoadCascaderDic():this.handleLoadDic()},getIsMobile:function(){this.isMobile=window.document.body.clientWidth<=768},updateDic:function(t,e){var n=this,o=this.findObject(this.propOption,t);this.validatenull(e)&&this.validatenull(t)?this.handleLoadDic():this.validatenull(e)&&!this.validatenull(o.dicUrl)?Object(i.d)({column:o}).then((function(e){n.$set(n.DIC,t,e)})):this.$set(this.DIC,t,e)},handleSetDic:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Object.keys(n).forEach((function(i){e.$set(t,i,n[i])}))},handleLocalDic:function(){this.handleSetDic(this.DIC,Object(i.c)(this.resultOption))},handleLoadDic:function(){var t=this;Object(i.b)(this.resultOption).then((function(e){return t.handleSetDic(t.DIC,e)}))},handleLoadCascaderDic:function(){var t=this;Object(i.a)(this.propOption,this.data).then((function(e){return t.handleSetDic(t.cascaderDIC,e)}))}}}}},function(t,e,n){"use strict";var i=n(7),o={name:"form-temp",mixins:[n(11).a],props:{value:{},uploadBefore:Function,uploadDelete:Function,uploadAfter:Function,uploadPreview:Function,uploadError:Function,uploadExceed:Function,columnSlot:{type:Array,default:function(){return[]}},tableData:{type:Object,default:function(){return{}}},clearable:{type:Boolean},enter:{type:Boolean,default:!1},type:{type:String},propsHttp:{type:Object,default:function(){return{}}},props:{type:Object},dic:{type:Array},placeholder:{type:String},size:{type:String},disabled:{type:Boolean},readonly:{type:Boolean},column:{type:Object,default:function(){return{}}}},data:function(){return{first:!1,text:void 0}},computed:{params:function(){return this.column.params||{}},event:function(){return this.column.event||{}}},watch:{text:{handler:function(t){this.first||!this.validatenull(t)?(this.first=!0,this.$emit("input",t),this.$emit("change",t)):this.first=!0}},value:{handler:function(t){this.text=t},immediate:!0}},methods:{getComponent:i.e,getPlaceholder:i.f,enterChange:function(){var t=this.column.enter;this.validatenull(t)?this.enter&&this.$emit("enter"):"function"==typeof t&&this.column.enter(this.text,this.column)}}},a=n(0),r=Object(a.a)(o,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n(t.getComponent(t.column.type,t.column.component),t._g(t._b({ref:"temp",tag:"component",attrs:{column:Object.assign(t.column,t.params),dic:t.dic,disabled:t.column.disabled||t.disabled,readonly:t.column.readonly||t.readonly,placeholder:t.getPlaceholder(t.column),props:t.column.props||t.props,propsHttp:t.column.propsHttp||t.propsHttp,size:t.column.size||t.size,"table-data":t.tableData,type:t.type||t.column.type,"column-slot":t.columnSlot},nativeOn:{keyup:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.enterChange.apply(null,arguments)}},scopedSlots:t._u([t._l(t.getSlotName(t.column,"T",t.$scopedSlots)?[t.column]:[],(function(e){return{key:"default",fn:function(n){return[t._t(t.getSlotName(e,"T"),null,null,n)]}}})),t._l(t.columnSlot,(function(e){return{key:e,fn:function(n){return[t._t(e,null,null,n)]}}}))],null,!0),model:{value:t.text,callback:function(e){t.text=e},expression:"text"}},"component",Object.assign(t.column,t.$uploadFun(t.column)),!1),t.event),[t.params.html?n("span",{domProps:{innerHTML:t._s(t.params.html)}}):t._e()])}),[],!1,null,null,null);e.a=r.exports},function(t,e,n){"use strict";function i(t){return function(t){if(Array.isArray(t))return o(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(!t)return;if("string"==typeof t)return o(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return o(t,e)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n<e;n++)i[n]=t[n];return i}var a={};function r(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"default",e="";switch(t){case"default":e="#35495E";break;case"primary":e="#3488ff";break;case"success":e="#43B883";break;case"warning":e="#e6a23c";break;case"danger":e="#f56c6c"}return e}a.capsule=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"primary";console.log("%c ".concat(t," %c ").concat(e," %c"),"background:#35495E; padding: 1px; border-radius: 3px 0 0 3px; color: #fff;","background:".concat(r(n),"; padding: 1px; border-radius: 0 3px 3px 0;  color: #fff;"),"background:transparent")},a.colorful=function(t){var e;(e=console).log.apply(e,["%c".concat(t.map((function(t){return t.text||""})).join("%c"))].concat(i(t.map((function(t){return"color: ".concat(r(t.type),";")})))))},a.default=function(t){a.colorful([{text:t}])},a.primary=function(t){a.colorful([{text:t,type:"primary"}])},a.success=function(t){a.colorful([{text:t,type:"success"}])},a.warning=function(t){a.colorful([{text:t,type:"warning"}])},a.danger=function(t){a.colorful([{text:t,type:"danger"}])},window.$Log=a,e.a=a},function(module,__webpack_exports__,__webpack_require__){"use strict";var core_detail__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(17),core_create__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(1),common_common_init__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(13),common_components_form_index__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(14),global_variable__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(3),core_dataformat__WEBPACK_IMPORTED_MODULE_5__=__webpack_require__(7),core_dic__WEBPACK_IMPORTED_MODULE_6__=__webpack_require__(9),utils_util__WEBPACK_IMPORTED_MODULE_7__=__webpack_require__(2),utils_mock__WEBPACK_IMPORTED_MODULE_8__=__webpack_require__(19),_menu__WEBPACK_IMPORTED_MODULE_9__=__webpack_require__(23);__webpack_exports__.a=Object(core_create__WEBPACK_IMPORTED_MODULE_1__.a)({name:"form",mixins:[Object(common_common_init__WEBPACK_IMPORTED_MODULE_2__.a)()],components:{formTemp:common_components_form_index__WEBPACK_IMPORTED_MODULE_3__.a,formMenu:_menu__WEBPACK_IMPORTED_MODULE_9__.a},data:function(){return{activeName:"",labelWidth:90,allDisabled:!1,optionIndex:[],optionBox:!1,tableOption:{},itemSpanDefault:12,form:{},formList:[],formBind:{},formCreate:!1,formDefault:{},formVal:{}}},provide:function(){return{formSafe:this}},watch:{tabsActive:{handler:function(t){this.activeName=this.tabsActive},immediate:!0},form:{handler:function(t){this.formCreate&&this.setVal()},deep:!0},DIC:{handler:function(){this.forEachLabel()},deep:!0,immediate:!0},allDisabled:{handler:function(t){this.$emit("update:status",t)},deep:!0,immediate:!0},value:{handler:function(t){this.formCreate?this.setForm(t):this.formVal=Object.assign(this.formVal,t||{})},deep:!0,immediate:!0}},computed:{columnSlot:function(){var t=this;return Object.keys(this.$scopedSlots).filter((function(e){return!t.propOption.map((function(t){return t.prop})).includes(e)}))},labelSuffix:function(){return this.parentOption.labelSuffix||":"},isMenu:function(){return 1!=this.columnOption.length},isDetail:function(){return!0===this.detail},isTabs:function(){return!0===this.parentOption.tabs},isAdd:function(){return"add"===this.boxType},isEdit:function(){return"edit"===this.boxType},isView:function(){return"view"===this.boxType},gutter:function(){return this.setPx((this.parentOption.gutter||10)/2)},detail:function(){return this.parentOption.detail},disabled:function(){return this.parentOption.disabled},readonly:function(){return this.parentOption.readonly},tabsType:function(){return this.parentOption.tabsType},columnLen:function(){return this.columnOption.length},dynamicOption:function(){var t=this,e=[];return this.propOption.forEach((function(n){"dynamic"==n.type&&t.vaildDisplay(n)&&e.push(n)})),e},propOption:function(){var t=[];return this.columnOption.forEach((function(e){!1!==e.display&&e.column.forEach((function(e){t.push(e)}))})),t},parentOption:function(){return this.tableOption||{}},columnOption:function(){var t=this,e=this.tableOption.column||[],n=this.deepClone(this.tableOption.group)||[],i=this.tableOption.footer||[];return 0!==e.length&&n.unshift({header:!1,column:e}),0!==i.length&&n.push({header:!1,column:i}),n.forEach((function(e,n){e.column=e.column||[],e.column.forEach((function(e,n){!1===e.display||t.isMobile||(e=Object(core_dataformat__WEBPACK_IMPORTED_MODULE_5__.b)(e,t.itemSpanDefault,0===n))})),e.column=Object(core_dataformat__WEBPACK_IMPORTED_MODULE_5__.a)(e.column),e.column=e.column.sort((function(t,e){return(e.order||0)-(t.order||0)}))})),n},menuPosition:function(){return this.parentOption.menuPosition?this.parentOption.menuPosition:"center"},boxType:function(){return this.parentOption.boxType},isPrint:function(){return this.vaildData(this.parentOption.printBtn,!1)},tabsActive:function(){return this.vaildData(this.tableOption.tabsActive+"","1")},isMock:function(){return this.vaildData(this.parentOption.mockBtn,!1)}},props:{uploadBefore:Function,uploadAfter:Function,uploadDelete:Function,uploadPreview:Function,uploadError:Function,uploadExceed:Function,status:{type:Boolean,default:!1},isCrud:{type:Boolean,default:!1},value:{type:Object,required:!0,default:function(){return{}}}},created:function(){var t=this;this.$nextTick((function(){t.dataFormat(),t.setVal(),t.$nextTick((function(){return t.clearValidate()})),t.formCreate=!0,t.setControl()}))},methods:{getComponent:core_dataformat__WEBPACK_IMPORTED_MODULE_5__.e,getPlaceholder:core_dataformat__WEBPACK_IMPORTED_MODULE_5__.f,getDisabled:function(t){return this.vaildDetail(t)||this.isDetail||this.vaildDisabled(t)||this.allDisabled},getSpan:function(t){return t.span||this.parentOption.span||this.itemSpanDefault},isGroupShow:function(t,e){return!this.isTabs||(e==this.activeName||0==e)},forEachLabel:function(){var t=this;1!=this.tableOption.filterDic?this.propOption.forEach((function(e){var n,i=t.DIC[e.prop];t.validatenull(i)||(n=Object(core_detail__WEBPACK_IMPORTED_MODULE_0__.a)(t.form,e,t.tableOption,i),t.$set(t.form,["$"+e.prop],n))})):this.form=Object(utils_util__WEBPACK_IMPORTED_MODULE_7__.i)(this.form,["$"],!1)},handleGroupClick:function(t){this.$emit("tab-click",t)},handleTabClick:function(t,e){this.$emit("tab-click",t,e)},getLabelWidth:function(t,e){var n;return n=this.validatenull(t.labelWidth)?this.validatenull(e.labelWidth)?this.parentOption.labelWidth:e.labelWidth:t.labelWidth,this.setPx(n,this.labelWidth)},validateField:function(t){return this.$refs.form.validateField(t)},validTip:function(t){return!t.tip||"upload"===t.type},getPropRef:function(t){return this.$refs[t][0]},dataFormat:function(){this.formDefault=Object(core_dataformat__WEBPACK_IMPORTED_MODULE_5__.d)(this.propOption);var t=this.deepClone(this.formDefault.tableForm);this.setForm(this.deepClone(Object.assign(t,this.formVal)))},setVal:function(){this.$emit("input",this.form),this.$emit("change",this.form)},setControl:function setControl(){var _this6=this;this.propOption.forEach((function(column){var prop=column.prop,bind=column.bind,control=column.control,value=_this6.form;if(!_this6.formBind[prop]){if(bind&&(_this6.$watch("form."+prop,(function(t,e){t!=e&&Object(utils_util__WEBPACK_IMPORTED_MODULE_7__.t)(_this6.form,bind,t)})),_this6.$watch("form."+bind,(function(t,e){t!=e&&_this6.$set(_this6.form,prop,t)})),_this6.$set(_this6.form,prop,eval("value."+bind))),control){var callback=function(){var t=control(_this6.form[column.prop],_this6.form)||{};Object.keys(t).forEach((function(e){_this6.objectOption[e]=Object.assign(_this6.objectOption[e]||{},t[e]),t[e].dicData&&(_this6.DIC[e]=t[e].dicData)}))};_this6.$watch("form."+prop,(function(t,e){callback()})),callback()}_this6.formBind[prop]=!0}}))},setForm:function(t){var e=this;Object.keys(t).forEach((function(n){e.$set(e.form,n,t[n])})),this.forEachLabel(),!0===this.tableOption.filterNull&&(this.form=Object(utils_util__WEBPACK_IMPORTED_MODULE_7__.i)(this.form,[""],!1))},handleChange:function(t,e){var n=this;this.$nextTick((function(){var i=e.cascader,o=i.join(",");i.forEach((function(a){var r=a,s=n.form[e.prop],l=n.findObject(t,r);n.validatenull(l)||(n.formList.includes(o)&&i.forEach((function(t){n.form[t]="",n.$set(n.DIC,t,[])})),n.validatenull(i)||n.validatenull(s)||n.validatenull(l)||Object(core_dic__WEBPACK_IMPORTED_MODULE_6__.d)({column:l,value:s,form:n.form}).then((function(t){n.formList.includes(o)||n.formList.push(o);var e=t||[];n.$set(n.DIC,r,e),n.validatenull(e)||n.validatenull(e)||n.validatenull(l.cascaderIndex)||!n.validatenull(n.form[r])||(n.form[r]=e[l.cascaderIndex][(l.props||{}).value||global_variable__WEBPACK_IMPORTED_MODULE_4__.e.value])})))}))}))},handlePrint:function(){this.$Print(this.$el)},propChange:function(t,e){e.cascader&&this.handleChange(t,e)},handleMock:function(){var t=this;this.isMock&&(this.columnOption.forEach((function(e){var n=Object(utils_mock__WEBPACK_IMPORTED_MODULE_8__.a)(e.column,t.DIC,t.form,t.isMock);t.validatenull(n)||Object.keys(n).forEach((function(e){t.form[e]=n[e]}))})),this.$nextTick((function(){t.clearValidate(),t.$emit("mock-change",t.form)})))},vaildDetail:function(t){var e;if(this.detail)return!1;if(this.validatenull(t.detail)){if(this.isAdd)e="addDetail";else if(this.isEdit)e="editDetail";else if(this.isView)return!1}else e="detail";return!!e&&this.vaildData(t[e],!1)},vaildDisabled:function(t){var e;if(this.disabled)return!0;if(this.validatenull(t.disabled)){if(this.isAdd)e="addDisabled";else if(this.isEdit)e="editDisabled";else if(this.isView)return!0}else e="disabled";return!!e&&this.vaildData(t[e],!1)},vaildDisplay:function(t){var e;return this.validatenull(t.display)?this.isAdd?e="addDisplay":this.isEdit?e="editDisplay":this.isView&&(e="viewDisplay"):e="display",!e||this.vaildData(t[e],!0)},clearValidate:function(t){this.$refs.form.clearValidate(t)},validateCellForm:function(){var t=this;return new Promise((function(e){t.$refs.form.validate((function(t,n){e(n)}))}))},validate:function(t){var e=this;this.$refs.form.validate((function(n,i){var o=[],a=[],r={};e.dynamicOption.forEach((function(t){var n="form"===t.children.type;a.push(t.prop),n?e.validatenull(e.$refs[t.prop][0].$refs.temp.$refs.main)||e.$refs[t.prop][0].$refs.temp.$refs.main.forEach((function(t){o.push(t.validateCellForm())})):o.push(e.$refs[t.prop][0].$refs.temp.$refs.main.validateCellForm())})),Promise.all(o).then((function(n){n.forEach((function(t,n){e.validatenull(t)||(r[a[n]]=t)}));var o=Object.assign(r,i);e.validatenull(o)?(e.show(),t(!0,e.hide)):t(!1,e.hide,o)}))}))},resetForm:function(){var t=this;this.form=Object(utils_util__WEBPACK_IMPORTED_MODULE_7__.b)(this.form,(this.tableOption.filterParams||[]).concat([this.rowKey])),this.$nextTick((function(){t.clearValidate(),t.$emit("reset-change")}))},resetFields:function(){this.$refs.form.resetFields()},show:function(){this.allDisabled=!0},hide:function(){this.allDisabled=!1},submit:function(){var t=this;this.validate((function(e,n){e?t.$emit("submit",Object(utils_util__WEBPACK_IMPORTED_MODULE_7__.i)(t.form),t.hide):t.$emit("error",n)}))}}})},function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var i=n(5),o=n(2),a=n(3),r=n(10),s=n.n(r),l=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],l=t[e.prop],c=e.type,u=e.separator;if(e.bind&&(l=Object(o.m)(t,e.bind)),Object(i.a)(l))l="";else{var d=a.j.includes(e.type)&&e.multiple,p=a.b.includes(e.type);if((["string","number"].includes(e.dataType)||d||p)&&!Array.isArray(l)&&(l=(l+"").split(u||a.g),"number"===e.dataType&&(l=Object(o.w)(l))),a.a.includes(c))l=Array.isArray(l)?l.join(u||a.f):l.split(u||a.g).join(u||a.f);else if("password"===c)l=Object(o.p)(l,"*");else if(a.c.includes(c)&&e.format){var h=e.format.replace("dd","DD").replace("yyyy","YYYY"),f=s()().format("YYYY-MM-DD");if(-1!==c.indexOf("range")){var m=l[0]||"",v=l[1]||"";"timerange"===c&&m.length<=8&&v.length<8&&(m="".concat(f," ").concat(m),v="".concat(f," ").concat(v)),l=[s()(m).format(h),s()(v).format(h)].join(e.separator||"~")}else"time"===c&&l.length<=8&&(l="".concat(f," ").concat(l)),l=s()(l).format(h)}l=Object(o.k)(r,l,e.props||n.props)}return e.formatter&&"function"==typeof e.formatter&&(l=e.formatter(t,t[e.prop],l,e)),l}},function(t,e,n){var i,o;void 0===(o="function"==typeof(i=function(t,e,n){return function(t,e,n,i,o,a){function r(t){return"number"==typeof t&&!isNaN(t)}var s=this;if(s.version=function(){return"1.9.3"},s.options={useEasing:!0,useGrouping:!0,separator:",",decimal:".",easingFn:function(t,e,n,i){return n*(1-Math.pow(2,-10*t/i))*1024/1023+e},formattingFn:function(t){var e,n,i,o,a,r,l=t<0;if(t=Math.abs(t).toFixed(s.decimals),n=(e=(t+="").split("."))[0],i=e.length>1?s.options.decimal+e[1]:"",s.options.useGrouping){for(o="",a=0,r=n.length;a<r;++a)0!==a&&a%3==0&&(o=s.options.separator+o),o=n[r-a-1]+o;n=o}return s.options.numerals.length&&(n=n.replace(/[0-9]/g,(function(t){return s.options.numerals[+t]})),i=i.replace(/[0-9]/g,(function(t){return s.options.numerals[+t]}))),(l?"-":"")+s.options.prefix+n+i+s.options.suffix},prefix:"",suffix:"",numerals:[]},a&&"object"==typeof a)for(var l in s.options)a.hasOwnProperty(l)&&null!==a[l]&&(s.options[l]=a[l]);""===s.options.separator?s.options.useGrouping=!1:s.options.separator=""+s.options.separator;for(var c=0,u=["webkit","moz","ms","o"],d=0;d<u.length&&!window.requestAnimationFrame;++d)window.requestAnimationFrame=window[u[d]+"RequestAnimationFrame"],window.cancelAnimationFrame=window[u[d]+"CancelAnimationFrame"]||window[u[d]+"CancelRequestAnimationFrame"];window.requestAnimationFrame||(window.requestAnimationFrame=function(t,e){var n=(new Date).getTime(),i=Math.max(0,16-(n-c)),o=window.setTimeout((function(){t(n+i)}),i);return c=n+i,o}),window.cancelAnimationFrame||(window.cancelAnimationFrame=function(t){clearTimeout(t)}),s.initialize=function(){return!(!s.initialized&&(s.error="",s.d="string"==typeof t?document.getElementById(t):t,s.d?(s.startVal=Number(e),s.endVal=Number(n),r(s.startVal)&&r(s.endVal)?(s.decimals=Math.max(0,i||0),s.dec=Math.pow(10,s.decimals),s.duration=1e3*Number(o)||2e3,s.countDown=s.startVal>s.endVal,s.frameVal=s.startVal,s.initialized=!0,0):(s.error="[CountUp] startVal ("+e+") or endVal ("+n+") is not a number",1)):(s.error="[CountUp] target is null or undefined",1)))},s.printValue=function(t){var e=s.options.formattingFn(t);"INPUT"===s.d.tagName?this.d.value=e:"text"===s.d.tagName||"tspan"===s.d.tagName?this.d.textContent=e:this.d.innerHTML=e},s.count=function(t){s.startTime||(s.startTime=t),s.timestamp=t;var e=t-s.startTime;s.remaining=s.duration-e,s.options.useEasing?s.countDown?s.frameVal=s.startVal-s.options.easingFn(e,0,s.startVal-s.endVal,s.duration):s.frameVal=s.options.easingFn(e,s.startVal,s.endVal-s.startVal,s.duration):s.countDown?s.frameVal=s.startVal-(s.startVal-s.endVal)*(e/s.duration):s.frameVal=s.startVal+(s.endVal-s.startVal)*(e/s.duration),s.countDown?s.frameVal=s.frameVal<s.endVal?s.endVal:s.frameVal:s.frameVal=s.frameVal>s.endVal?s.endVal:s.frameVal,s.frameVal=Math.round(s.frameVal*s.dec)/s.dec,s.printValue(s.frameVal),e<s.duration?s.rAF=requestAnimationFrame(s.count):s.callback&&s.callback()},s.start=function(t){s.initialize()&&(s.callback=t,s.rAF=requestAnimationFrame(s.count))},s.pauseResume=function(){s.paused?(s.paused=!1,delete s.startTime,s.duration=s.remaining,s.startVal=s.frameVal,requestAnimationFrame(s.count)):(s.paused=!0,cancelAnimationFrame(s.rAF))},s.reset=function(){s.paused=!1,delete s.startTime,s.initialized=!1,s.initialize()&&(cancelAnimationFrame(s.rAF),s.printValue(s.startVal))},s.update=function(t){if(s.initialize()){if(!r(t=Number(t)))return void(s.error="[CountUp] update() - new endVal is not a number: "+t);s.error="",t!==s.frameVal&&(cancelAnimationFrame(s.rAF),s.paused=!1,delete s.startTime,s.startVal=s.frameVal,s.endVal=t,s.countDown=s.startVal>s.endVal,s.rAF=requestAnimationFrame(s.count))}},s.initialize()&&s.printValue(s.startVal)}})?i.call(e,n,e,t):i)||(t.exports=o)},function(t,e,n){"use strict";var i=n(6);function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}e.a=function(t,e,n,a){if(a){if(window.Mock){var r=(window.Mock||{}).Random,s={};return Object.keys(t).forEach((function(i){var a,c,u,d,p,h=t[i];if(h.mock&&"object"===o(h.mock)){var f=h.mock;switch(f.dic="string"==typeof h.dicData?e[h.dicData]:h.dicData||[],f.props=h.props||{},f.columnType=h.type,f.multiple=h.multiple,f.type){case"name":s[h.prop]=f.en?r.name(!0):r.cname();break;case"number":s[h.prop]=l(f);break;case"datetime":s[h.prop]=(p=(d=f).format,d.now?r.now(p):r.datetime(p));break;case"word":s[h.prop]=(c=(a=f).min,u=a.max,r.csentence(c,u));break;case"url":s[h.prop]=function(t){var e=t.header,n=(t.footer,r.url()),i=n.indexOf("://");return n=!1===e?n.substring(i+3):"http://"+n.substring(i+3)}(f);break;case"county":s[h.prop]=r.county(!0);break;case"dic":s[h.prop]=function(t){var e=t.dic,n=t.props,i=t.columnType,o=t.multiple,a=n.value||"value",r=e.length;if(["checkbox"].includes(i)||o){for(var s=l({min:1,max:r}),c=[],u=0;u<s;u++)for(var d=!0;d;){var p=e[l({min:0,max:r-1})][a];c.includes(p)||(c.push(p),d=!1)}return c}return e[l({min:0,max:r-1})][a]}(f)}}else h.mock instanceof Function&&(s[h.prop]=h.mock(n))})),s}i.a.logs("mock")}function l(t){var e=t.max,n=t.min,i=t.precision;if(i){var o=r.float(n,e,i)+"",a=o.indexOf(".")+1;return Number(o.substring(0,a+i))}return r.integer(n,e)}}},function(t,e){t.exports=__WEBPACK_EXTERNAL_MODULE__20__},function(t,e,n){var i,o;
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("vue"),require("axios")):"function"==typeof define&&define.amd?define("AVUE",["vue","axios"],e):"object"==typeof exports?exports.AVUE=e(require("vue"),require("axios")):t.AVUE=e(t.Vue,t.axios)}(this,(function(__WEBPACK_EXTERNAL_MODULE__8__,__WEBPACK_EXTERNAL_MODULE__20__){return function(t){var e={};function n(i){if(e[i])return e[i].exports;var o=e[i]={i:i,l:!1,exports:{}};return t[i].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(t,e,i){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:i})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)n.d(i,o,function(e){return t[e]}.bind(null,o));return i},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=24)}([function(t,e,n){"use strict";function i(t,e,n,i,o,a,r,s){var l,c="function"==typeof t?t.options:t;if(e&&(c.render=e,c.staticRenderFns=n,c._compiled=!0),i&&(c.functional=!0),a&&(c._scopeId="data-v-"+a),r?(l=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(r)},c._ssrRegister=l):o&&(l=s?function(){o.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:o),l)if(c.functional){c._injectStyles=l;var u=c.render;c.render=function(t,e){return l.call(e),u(t,e)}}else{var d=c.beforeCreate;c.beforeCreate=d?[].concat(d,l):[l]}return{exports:t,options:c}}n.d(e,"a",(function(){return i}))},function(t,e,n){"use strict";var i=function(t,e,n){return e?t+n+e:t},o=function t(e,n){if("string"==typeof n)return i(e,n,"--");if(Array.isArray(n))return n.map((function(n){return t(e,n)}));var o={};return Object.keys(n||{}).forEach((function(t){o[e+"--"+t]=n[t]})),o},a={methods:{b:function(t,e){var n=this.$options.name;return t&&"string"!=typeof t&&(e=t,t=""),t=i(n,t,"__"),e?[t,o(t,e)]:t}}},r=n(3);e.a=function(t){return t.name=r.i+(t.name||""),t.mixins=t.mixins||[],t.mixins.push(a),t}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"n",(function(){return getFixed})),__webpack_require__.d(__webpack_exports__,"m",(function(){return getAsVal})),__webpack_require__.d(__webpack_exports__,"t",(function(){return setAsVal})),__webpack_require__.d(__webpack_exports__,"r",(function(){return loadScript})),__webpack_require__.d(__webpack_exports__,"h",(function(){return downFile})),__webpack_require__.d(__webpack_exports__,"w",(function(){return strCorNum})),__webpack_require__.d(__webpack_exports__,"c",(function(){return createObj})),__webpack_require__.d(__webpack_exports__,"d",(function(){return dataURLtoFile})),__webpack_require__.d(__webpack_exports__,"l",(function(){return findObject})),__webpack_require__.d(__webpack_exports__,"s",(function(){return randomId})),__webpack_require__.d(__webpack_exports__,"q",(function(){return isJson})),__webpack_require__.d(__webpack_exports__,"e",(function(){return deepClone})),__webpack_require__.d(__webpack_exports__,"v",(function(){return sortArrys})),__webpack_require__.d(__webpack_exports__,"u",(function(){return setPx})),__webpack_require__.d(__webpack_exports__,"f",(function(){return detailDataType})),__webpack_require__.d(__webpack_exports__,"g",(function(){return detailDic})),__webpack_require__.d(__webpack_exports__,"k",(function(){return findByValue})),__webpack_require__.d(__webpack_exports__,"i",(function(){return filterParams})),__webpack_require__.d(__webpack_exports__,"o",(function(){return getObjValue})),__webpack_require__.d(__webpack_exports__,"j",(function(){return findArray})),__webpack_require__.d(__webpack_exports__,"p",(function(){return getPasswordChar})),__webpack_require__.d(__webpack_exports__,"a",(function(){return arraySort})),__webpack_require__.d(__webpack_exports__,"b",(function(){return clearVal})),__webpack_require__.d(__webpack_exports__,"x",(function(){return vaildData}));var _validate__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(5),global_variable__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(3);function _typeof(t){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function getFixed(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2;return Number(t.toFixed(e))}function getAsVal(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=deepClone(t);return Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(e)||e.split(".").forEach((function(t){n=Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(n[t])?"":n[t]})),n}function setAsVal(obj){var bind=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",value=arguments.length>2?arguments[2]:void 0,result,type=getObjType(value);return result=Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(value)?"array"===type?"obj.".concat(bind,"=[]"):"object"===type?"obj.".concat(bind,"={}"):["number","boolean"].includes(type)?"obj.".concat(bind,"=undefined"):"obj.".concat(bind,"=''"):"string"==type?"obj.".concat(bind,"='").concat(value,"'"):"obj.".concat(bind,"=").concat(value),eval(result),obj}var loadScript=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"js",e=arguments.length>1?arguments[1]:void 0,n=!1;return new Promise((function(i){var o,a=document.getElementsByTagName("head")[0];(a.children.forEach((function(t){-1!==(t.src||"").indexOf(e)&&(n=!0,i())})),n)||("js"===t?((o=document.createElement("script")).type="text/javascript",o.src=e):"css"===t&&((o=document.createElement("link")).rel="stylesheet",o.type="text/css",o.href=e),a.appendChild(o),o.onload=function(){i()})}))};function downFile(t,e){"object"==_typeof(t)&&t instanceof Blob&&(t=URL.createObjectURL(t));var n,i=document.createElement("a");i.href=t,i.download=e||"",window.MouseEvent?n=new MouseEvent("click"):(n=document.createEvent("MouseEvents")).initMouseEvent("click",!0,!1,window,0,0,0,0,0,!1,!1,!1,!1,0,null),i.dispatchEvent(n)}function strCorNum(t){return t.forEach((function(e,n){t[n]=Number(e)})),t}function extend(){var t,e,n,i,o=arguments[0]||{},a=!1,r=Array.prototype.slice.call(arguments),s=1,l=!1;for("boolean"==typeof o&&(a=o,s++,o=arguments[1]);s<r.length;s++)if(null!=(t=r[s]))for(n in t)i=t[n],e=o[n],a&&("[object Object]"===toString.call(i)||(l="[object Array]"==toString.call(i)))?(e=l?"[object Array]"===toString.call(e)?e:[]:"[object Object]"===toString.call(e)?e:{},o[n]=extend(a,e,i)):void 0!==i&&i!==e&&(o[n]=i);return o}function createObj(t,e){var n=e.split("."),i=n.splice(0,1)[0],o={};if(o[i]={},n.length>=2){var a="";n.forEach((function(t){a="".concat(a).concat("{",'"').concat(t,'":')})),a="".concat(a,'""');for(var r=0;r<n.length;r++)a="".concat(a).concat("}");a=JSON.parse(a),o[i]=a}return t=extend(!0,t,o)}function dataURLtoFile(t,e){for(var n=t.split(","),i=n[0].match(/:(.*?);/)[1],o=atob(n[1]),a=o.length,r=new Uint8Array(a);a--;)r[a]=o.charCodeAt(a);return new File([r],e,{type:i})}function findObject(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"prop",i=-1,o=function(){var e;return t.forEach((function(t){t.column?e="group":t.children&&(e="tree")})),e}();return"group"===o?t.forEach((function(t){var o=findArray(t.column,e,n,!0);-1!==o&&(i=o)})):i="tree"===o?findLabelNode(t,e,{value:n},!0):findArray(t,e,n,!0),i}function randomId(){for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",e=t.length,n="",i=0;i<16;i++)n+=t.charAt(Math.floor(Math.random()*e));return n}var getObjType=function(t){var e=Object.prototype.toString;return t instanceof Element?"element":{"[object Boolean]":"boolean","[object Number]":"number","[object String]":"string","[object Function]":"function","[object Array]":"array","[object Date]":"date","[object RegExp]":"regExp","[object Undefined]":"undefined","[object Null]":"null","[object Object]":"object"}[e.call(t)]},isJson=function(t){return Array.isArray(t)?t[0]instanceof Object:t instanceof Object},deepClone=function t(e){var n,i=getObjType(e);if("array"===i)n=[];else{if("object"!==i)return e;n={}}if("array"===i)for(var o=0,a=e.length;o<a;o++)e[o]=(e[o],e[o]),e[o]&&delete e[o].$parent,n.push(t(e[o]));else if("object"===i)for(var r in e)e&&delete e.$parent,n[r]=t(e[r]);return n},sortArrys=function(t,e){return t.sort((function(t,n){return t[e]>n[e]?-1:t[e]<n[e]?1:0})),t},setPx=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(t)&&(t=e),Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(t)?"":(-1===(t+="").indexOf("%")&&(t+="px"),t)},detailDataType=function(t,e){return Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(t)?t:"number"===e?Number(t):"string"===e?t+"":t},getUrlParams=function(t){var e={url:"",params:{}},n=t.split("?");e.url=n[0];var i=n[1];i&&i.split("&").forEach((function(t){var n=t.split("="),i=n[0],o=n[1];e.params[i]=o}));return e},detailDic=function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=arguments.length>2?arguments[2]:void 0,o=n.value||global_variable__WEBPACK_IMPORTED_MODULE_1__.e.value,a=n.children||global_variable__WEBPACK_IMPORTED_MODULE_1__.e.children;return e.forEach((function(e){e[o]=detailDataType(e[o],i),e[a]&&t(e[a],n,i)})),e},findByValue=function(t,e,n){if(Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(t))return e;var i="",o=e instanceof Array,a=o?e:[e];n=n||global_variable__WEBPACK_IMPORTED_MODULE_1__.e,i=[];for(var r=0;r<a.length;r++)i.push(findLabelNode(t,a[r],n)||a[r]);return o?i.join(global_variable__WEBPACK_IMPORTED_MODULE_1__.f).toString():i.join()},filterParams=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:["","$"],n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],i=n?deepClone(t):t;for(var o in i)e.includes("")&&Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(i[o])&&delete i[o],e.includes("$")&&-1!==o.indexOf("$")&&delete i[o];return i},detailDicGroup=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=deepClone(t),i=e[global_variable__WEBPACK_IMPORTED_MODULE_1__.e.groups]||global_variable__WEBPACK_IMPORTED_MODULE_1__.e.groups;return t.forEach((function(t){t[i]&&(n=n.concat(t[i]))})),n},findLabelNode=function(t,e,n,i){var o;i||(t=detailDicGroup(t,n));return function t(a){for(var r=n.label||global_variable__WEBPACK_IMPORTED_MODULE_1__.e.label,s=n.value||global_variable__WEBPACK_IMPORTED_MODULE_1__.e.value,l=n.children||global_variable__WEBPACK_IMPORTED_MODULE_1__.e.children,c=0;c<a.length;c++){var u=a[c],d=u[l]||[];u[s]===e?o=i?u:u[r]:t(d)}}(t),o},getDeepData=function(t){return(Array.isArray(t)?t:t.data)||[]},getObjValue=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2?arguments[2]:void 0,i=e.split("."),o=t;return""===i[0]&&"object"!==n?getDeepData(t):(""!==i[0]&&i.forEach((function(t){o=o[t]})),o)},findArray=function(t,e,n,i){n=n||global_variable__WEBPACK_IMPORTED_MODULE_1__.e.value;for(var o=0;o<t.length;o++)if(t[o][n]===e)return i?t[o]:o;return-1},getPasswordChar=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",e=arguments.length>1?arguments[1]:void 0,n=t.toString().length;t="";for(var i=0;i<n;i++)t+=e;return t},arraySort=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0;return t.filter((function(t){return!Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(t[e])})).sort((function(t,e){return n(t,e)})).concat(t.filter((function(t){return Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(t[e])})))},clearVal=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return t?(Object.keys(t).forEach((function(n){if(!e.includes(n))if(n.includes("$"))delete t[n];else if(!Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(t[n])){var i=getObjType(t[n]);"array"===i?t[n]=[]:"object"===i?t[n]={}:["number","boolean"].includes(i)?t[n]=void 0:t[n]=""}})),t):{}},vaildData=function(t,e){return"boolean"==typeof t?t:Object(_validate__WEBPACK_IMPORTED_MODULE_0__.a)(t)?e:t}},function(t,e,n){"use strict";n.d(e,"i",(function(){return i})),n.d(e,"e",(function(){return o})),n.d(e,"d",(function(){return a})),n.d(e,"c",(function(){return r})),n.d(e,"h",(function(){return s})),n.d(e,"a",(function(){return l})),n.d(e,"j",(function(){return c})),n.d(e,"k",(function(){return u})),n.d(e,"b",(function(){return d})),n.d(e,"l",(function(){return p})),n.d(e,"f",(function(){return h})),n.d(e,"g",(function(){return f})),n.d(e,"m",(function(){return m}));var i="avue-",o={rowKey:"id",rowParentKey:"parentId",nodeKey:"id",label:"label",value:"value",desc:"desc",groups:"groups",title:"title",leaf:"leaf",children:"children",hasChildren:"hasChildren",labelText:"名称",disabled:"disabled"},a={name:"name",url:"url",fileName:"file",res:""},r=["dates","date","datetime","datetimerange","daterange","time","timerange","week","month","monthrange","year"],s=["tree","number","icon","color","table","map"],l=["img","array","url"],c=["cascader","tree","select"],u=["slider"],d=l.concat(["upload","dynamic","map","checkbox","cascader","dynamic","timerange","monthrange","daterange","datetimerange","dates"]),p=r.concat(["select","checkbox","radio","cascader","tree","color","icon","table","map"]),h=" | ",f=",",m={img:/\.(gif|jpg|jpeg|png|webp|GIF|JPG|PNG)/,video:/\.(swf|avi|flv|mpg|rm|mov|wav|asf|3gp|mkv|rmvb|ogg|mp4)/}},function(t,e,n){"use strict";var i=n(12);e.a={methods:{t:function(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return i.b.apply(this,e)}}}},function(t,e,n){"use strict";function i(t){if(t instanceof Date||"boolean"==typeof t||"number"==typeof t)return!1;if(!(t instanceof Array)){if(t instanceof Object){for(var e in t)return!1;return!0}return"null"===t||null==t||"undefined"===t||void 0===t||""===t}return 0===t.length}n.d(e,"a",(function(){return i}))},function(t,e,n){"use strict";var i=n(15),o={AliOSS:{title:"阿里云云图片上传,需引入OSS的sdk",github:"https://github.com/ali-sdk/ali-oss/"},Map:{url:"https://webapi.amap.com/maps?v=1.4.11&key=xxxxx&plugin=AMap.PlaceSearch,https://webapi.amap.com/ui/1.0/main.js?v=1.0.11",title:"地图组件,需引入高德SDK"},MapUi:{url:"https://webapi.amap.com/ui/1.0/main.js?v=1.0.11",title:"地图组件,需引入高德UISDK"},Sortable:{url:"https://cdn.staticfile.org/Sortable/1.10.0-rc2/Sortable.min.js",title:"拖拽,需引入sortableJs",github:"https://github.com/SortableJS/Sortable"},Screenshot:{url:"https://cdn.staticfile.org/html2canvas/0.5.0-beta4/html2canvas.min.js",title:"需引入html2canvas依赖包",github:"https://github.com/niklasvh/html2canvas/"},CryptoJS:{url:"https://avuejs.com/cdn/CryptoJS.js",title:"七牛云图片上传,需引入CryptoJS"},hljs:{url:"https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/highlight.min.js",title:"需引入hljs框架包",github:"https://github.com/highlightjs/highlight.js"},"file-saver":{url:"../../src/config/FileSaver.js-master",title:"需引入文件操作包"},xlsx:{url:"../../src/config/js-xlsx-master",title:"需引入excel操作包"},mock:{url:"https://cdn.staticfile.org/Mock.js/1.0.1-beta3/mock-min.js",title:"需要引入mock模拟数据包",github:"https://github.com/Colingo/mock"}};e.a={logs:function(t){var e=o[t];i.a.capsule(t,e.title,"warning"),i.a.warning("CDN:"+(e.url||"-")),i.a.warning("GITHUB:"+(e.github||"-"))}}},function(t,e,n){"use strict";n.d(e,"a",(function(){return s})),n.d(e,"b",(function(){return c})),n.d(e,"h",(function(){return u})),n.d(e,"g",(function(){return d})),n.d(e,"e",(function(){return p})),n.d(e,"d",(function(){return h})),n.d(e,"f",(function(){return f}));var i=n(5),o=n(3),a=n(2),r=n(12),s=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return t.forEach((function(e){var n=e.cascader;if(!Object(i.a)(n)){var o=e.prop;n.forEach((function(e){var n=Object(a.l)(t,e);-1!==n&&(n.parentProp=o)}))}})),t},l=0,c=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:12,n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];n&&(l=0);var i=24;return(l=l+(t.span||e)+(t.offset||0))===i?l=0:l>i?l=0+(t.span||e)+(t.offset||0):t.row&&l!==i&&(t.count=i-l,l=0),t},u=function(t,e){var n=e.type,r=e.multiple,s=e.dataType,l=e.separator,c=void 0===l?o.g:l,u=e.alone,d=e.emitPath,p=e.range,h=t;return o.j.includes(n)&&1==r||o.b.includes(n)&&!1!==d||o.k.includes(n)&&1==p?(Array.isArray(h)||(h=Object(i.a)(h)?[]:(h+"").split(c)||[]),h.forEach((function(t,e){h[e]=Object(a.f)(t,s)})),o.a.includes(n)&&Object(i.a)(h)&&u&&(h=[""])):h=Object(a.f)(h,s),h},d=function(t){var e=t.type,n=t.searchRange,i=e;if(t.searchType)return t.searchType;if(["radio","checkbox","switch"].includes(e))i="select";else if(o.c.includes(e)){i=n?e.includes("range")?e:e+"range":e.replace("range","")}else["textarea"].includes(e)&&(i="input");return i},p=function(t,e){var n=t||"input";return Object(i.a)(e)?(o.a.includes(t)?n="array":["time","timerange"].includes(t)?n="time":o.c.includes(t)?n="date":["password","textarea","search"].includes(t)?n="input":o.h.includes(t)&&(n="input-"+t),o.i+n):e},h=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e={};return t.forEach((function(t){o.b.includes(t.type)&&!1!==t.emitPath||o.j.includes(t.type)&&t.multiple||"array"===t.dataType?e[t.prop]=[]:o.k.includes(t.type)&&1==t.range?e[t.prop]=[0,0]:["rate","slider","number"].includes(t.type)||"number"===t.dataType?e[t.prop]=void 0:e[t.prop]="",t.bind&&(e=Object(a.c)(e,t.bind)),Object(i.a)(t.value)||(e[t.prop]=t.value)})),{tableForm:e}},f=function(t){var e=t.placeholder,n=t.label;return Object(i.a)(e)?o.l.includes(t.type)?"".concat(Object(r.b)("tip.select")," ").concat(n):"".concat(Object(r.b)("tip.input")," ").concat(n):e}},function(t,e){t.exports=__WEBPACK_EXTERNAL_MODULE__8__},function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n.d(e,"b",(function(){return r})),n.d(e,"c",(function(){return s})),n.d(e,"d",(function(){return l}));var i=n(5),o=n(2),a=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return new Promise((function(n,o){var a=[],r=[],s={};t.forEach((function(t){t.parentProp&&a.push(t)})),e.forEach((function(t,e){a.forEach((function(n){!0!==n.hide&&!1!==n.dicFlag&&r.push(new Promise((function(o){Object(i.a)(t[n.parentProp])?o({prop:n.prop,data:[],index:e}):n.dicUrl&&l({url:"".concat(n.dicUrl.replace("{{key}}",t[n.parentProp])),props:n.props,method:n.dicMethod,formatter:n.dicFormatter,query:n.dicQuery,form:t}).then((function(t){o({prop:n.prop,data:t,index:e})}))})))}))})),Promise.all(r).then((function(t){t.forEach((function(t){Object(i.a)(s[t.index])&&(s[t.index]={}),s[t.index][t.prop]=t.data})),n(s)}))}))},r=function(t){var e=[];return new Promise((function(n,i){var a,r,s,c=function(t){var e=t.column||[],n=[],i={},o=[];return e.forEach((function(t){var e=t.dicData,a=t.dicUrl,r=t.prop,s=t.parentProp;o=o.concat(t.cascader||[]),Array.isArray(e)&&(i[r]=e),!1===t.dicFlag||!0===t.lazy||o.includes(r)||a&&!s&&n.push({url:a,name:r,method:t.dicMethod,formatter:t.dicFormatter,props:t.props,dataType:t.dataType,resKey:(t.props||{}).res,query:t.dicQuery||{}})})),{ajaxdic:n,locationdic:i}}(t);e=c.ajaxdic,(a=e,r={},s=[],new Promise((function(t){a.forEach((function(t){s.push(new Promise((function(e){l(Object.assign(t,{url:"".concat(t.url.replace("{{key}}",""))})).then((function(n){n=Object(o.g)(n,t.props,t.dataType),e(n)})).catch((function(){e([])}))})))})),Promise.all(s).then((function(e){a.forEach((function(t,n){r[t.name]=e[n]})),t(r)}))}))).then((function(t){n(t)})).catch((function(t){i(t)}))}))},s=function(t){var e={},n=t.dicData||{};return t.column.forEach((function(t){t.dicData&&(e[t.prop]=Object(o.g)(t.dicData,t.props,t.dataType))})),Object.assign(n,e)};var l=function(t){var e=t.url,n=t.query,i=t.method,a=t.resKey,r=t.props,s=t.formatter,l=t.value,c=void 0===l?"":l,u=t.column,d=t.form,p=void 0===d?{}:d;u&&(e=u.dicUrl,i=u.dicMethod,n=u.dicQuery||{},s=u.dicFormatter,r=u.props);var h={};return((e=e||"").match(/[^\{\}]+(?=\})/g)||[]).forEach((function(t){var n="{{".concat(t,"}}"),i=p[t];e="key"===t?e.replace(n,c):e.replace(n,i)})),"post"===i&&Object.keys(n).forEach((function(t){var e=n[t];if("string"==typeof e)if(e.match(/\{{|}}/g)){var i=p[e.replace(/\{{|}}/g,"")];h[t]=i}else h[t]=e;else h[t]=e})),r&&(a=(r||{}).res||a),new Promise((function(t){var r=function(e){var n=[];n="function"==typeof s?s(e.data):Object(o.o)(e.data,a),t(n)};"post"===i?window.axios.post(e,h).then((function(t){r(t)})).catch((function(){return[t([])]})):window.axios.get(e,{params:n}).then((function(t){r(t)})).catch((function(){return[t([])]}))}))}},function(t,e,n){t.exports=function(){"use strict";var t=6e4,e=36e5,n="millisecond",i="second",o="minute",a="hour",r="day",s="week",l="month",c="quarter",u="year",d="date",p="Invalid Date",h=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,f=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,m={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},v=function(t,e,n){var i=String(t);return!i||i.length>=e?t:""+Array(e+1-i.length).join(n)+t},b={s:v,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),i=Math.floor(n/60),o=n%60;return(e<=0?"+":"-")+v(i,2,"0")+":"+v(o,2,"0")},m:function t(e,n){if(e.date()<n.date())return-t(n,e);var i=12*(n.year()-e.year())+(n.month()-e.month()),o=e.clone().add(i,l),a=n-o<0,r=e.clone().add(i+(a?-1:1),l);return+(-(i+(n-o)/(a?o-r:r-o))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(t){return{M:l,y:u,w:s,d:r,D:d,h:a,m:o,s:i,ms:n,Q:c}[t]||String(t||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},g="en",y={};y[g]=m;var _=function(t){return t instanceof C},x=function t(e,n,i){var o;if(!e)return g;if("string"==typeof e){var a=e.toLowerCase();y[a]&&(o=a),n&&(y[a]=n,o=a);var r=e.split("-");if(!o&&r.length>1)return t(r[0])}else{var s=e.name;y[s]=e,o=s}return!i&&o&&(g=o),o||!i&&g},w=function(t,e){if(_(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new C(n)},O=b;O.l=x,O.i=_,O.w=function(t,e){return w(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var C=function(){function m(t){this.$L=x(t.locale,null,!0),this.parse(t)}var v=m.prototype;return v.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(O.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var i=e.match(h);if(i){var o=i[2]-1||0,a=(i[7]||"0").substring(0,3);return n?new Date(Date.UTC(i[1],o,i[3]||1,i[4]||0,i[5]||0,i[6]||0,a)):new Date(i[1],o,i[3]||1,i[4]||0,i[5]||0,i[6]||0,a)}}return new Date(e)}(t),this.$x=t.x||{},this.init()},v.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},v.$utils=function(){return O},v.isValid=function(){return!(this.$d.toString()===p)},v.isSame=function(t,e){var n=w(t);return this.startOf(e)<=n&&n<=this.endOf(e)},v.isAfter=function(t,e){return w(t)<this.startOf(e)},v.isBefore=function(t,e){return this.endOf(e)<w(t)},v.$g=function(t,e,n){return O.u(t)?this[e]:this.set(n,t)},v.unix=function(){return Math.floor(this.valueOf()/1e3)},v.valueOf=function(){return this.$d.getTime()},v.startOf=function(t,e){var n=this,c=!!O.u(e)||e,p=O.p(t),h=function(t,e){var i=O.w(n.$u?Date.UTC(n.$y,e,t):new Date(n.$y,e,t),n);return c?i:i.endOf(r)},f=function(t,e){return O.w(n.toDate()[t].apply(n.toDate("s"),(c?[0,0,0,0]:[23,59,59,999]).slice(e)),n)},m=this.$W,v=this.$M,b=this.$D,g="set"+(this.$u?"UTC":"");switch(p){case u:return c?h(1,0):h(31,11);case l:return c?h(1,v):h(0,v+1);case s:var y=this.$locale().weekStart||0,_=(m<y?m+7:m)-y;return h(c?b-_:b+(6-_),v);case r:case d:return f(g+"Hours",0);case a:return f(g+"Minutes",1);case o:return f(g+"Seconds",2);case i:return f(g+"Milliseconds",3);default:return this.clone()}},v.endOf=function(t){return this.startOf(t,!1)},v.$set=function(t,e){var s,c=O.p(t),p="set"+(this.$u?"UTC":""),h=(s={},s[r]=p+"Date",s[d]=p+"Date",s[l]=p+"Month",s[u]=p+"FullYear",s[a]=p+"Hours",s[o]=p+"Minutes",s[i]=p+"Seconds",s[n]=p+"Milliseconds",s)[c],f=c===r?this.$D+(e-this.$W):e;if(c===l||c===u){var m=this.clone().set(d,1);m.$d[h](f),m.init(),this.$d=m.set(d,Math.min(this.$D,m.daysInMonth())).$d}else h&&this.$d[h](f);return this.init(),this},v.set=function(t,e){return this.clone().$set(t,e)},v.get=function(t){return this[O.p(t)]()},v.add=function(n,c){var d,p=this;n=Number(n);var h=O.p(c),f=function(t){var e=w(p);return O.w(e.date(e.date()+Math.round(t*n)),p)};if(h===l)return this.set(l,this.$M+n);if(h===u)return this.set(u,this.$y+n);if(h===r)return f(1);if(h===s)return f(7);var m=(d={},d[o]=t,d[a]=e,d[i]=1e3,d)[h]||1,v=this.$d.getTime()+n*m;return O.w(v,this)},v.subtract=function(t,e){return this.add(-1*t,e)},v.format=function(t){var e=this,n=this.$locale();if(!this.isValid())return n.invalidDate||p;var i=t||"YYYY-MM-DDTHH:mm:ssZ",o=O.z(this),a=this.$H,r=this.$m,s=this.$M,l=n.weekdays,c=n.months,u=function(t,n,o,a){return t&&(t[n]||t(e,i))||o[n].slice(0,a)},d=function(t){return O.s(a%12||12,t,"0")},h=n.meridiem||function(t,e,n){var i=t<12?"AM":"PM";return n?i.toLowerCase():i},m={YY:String(this.$y).slice(-2),YYYY:this.$y,M:s+1,MM:O.s(s+1,2,"0"),MMM:u(n.monthsShort,s,c,3),MMMM:u(c,s),D:this.$D,DD:O.s(this.$D,2,"0"),d:String(this.$W),dd:u(n.weekdaysMin,this.$W,l,2),ddd:u(n.weekdaysShort,this.$W,l,3),dddd:l[this.$W],H:String(a),HH:O.s(a,2,"0"),h:d(1),hh:d(2),a:h(a,r,!0),A:h(a,r,!1),m:String(r),mm:O.s(r,2,"0"),s:String(this.$s),ss:O.s(this.$s,2,"0"),SSS:O.s(this.$ms,3,"0"),Z:o};return i.replace(f,(function(t,e){return e||m[t]||o.replace(":","")}))},v.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},v.diff=function(n,d,p){var h,f=O.p(d),m=w(n),v=(m.utcOffset()-this.utcOffset())*t,b=this-m,g=O.m(this,m);return g=(h={},h[u]=g/12,h[l]=g,h[c]=g/3,h[s]=(b-v)/6048e5,h[r]=(b-v)/864e5,h[a]=b/e,h[o]=b/t,h[i]=b/1e3,h)[f]||b,p?g:O.a(g)},v.daysInMonth=function(){return this.endOf(l).$D},v.$locale=function(){return y[this.$L]},v.locale=function(t,e){if(!t)return this.$L;var n=this.clone(),i=x(t,e,!0);return i&&(n.$L=i),n},v.clone=function(){return O.w(this.$d,this)},v.toDate=function(){return new Date(this.valueOf())},v.toJSON=function(){return this.isValid()?this.toISOString():null},v.toISOString=function(){return this.$d.toISOString()},v.toString=function(){return this.$d.toUTCString()},m}(),k=C.prototype;return w.prototype=k,[["$ms",n],["$s",i],["$m",o],["$H",a],["$W",r],["$M",l],["$y",u],["$D",d]].forEach((function(t){k[t[1]]=function(e){return this.$g(e,t[0],t[1])}})),w.extend=function(t,e){return t.$i||(t(e,C,w),t.$i=!0),w},w.locale=x,w.isDayjs=_,w.unix=function(t){return w(1e3*t)},w.en=y[g],w.Ls=y,w.p={},w}()},function(t,e,n){"use strict";e.a={methods:{getSlotName:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"D",n=arguments.length>2?arguments[2]:void 0,i={F:"Form",H:"Header",E:"Error",L:"Label",S:"Search",T:"Type",D:""},o=t.prop+i[e];return n?n[o]:o},getSlotList:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0;return n=n.map((function(t){return t.prop})),Object.keys(e).filter((function(e){var i=!1;return n.includes(e)||t.forEach((function(t){e.includes(t)&&(i=!0)})),i}))}}}},function(t,e,n){"use strict";n.d(e,"b",(function(){return h}));var i=n(8),o=n.n(i);function a(t){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var r=Object.prototype.hasOwnProperty;function s(t,e){return r.call(t,e)}var l=/(%|)\{([0-9a-zA-Z_]+)\}/g,c=(o.a,function(){for(var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",e=arguments.length,n=new Array(e>1?e-1:0),i=1;i<e;i++)n[i-1]=arguments[i];return 1===n.length&&"object"===a(n[0])&&(n=n[0]),n&&n.hasOwnProperty||(n={}),t.replace(l,(function(e,i,o,a){var r;return"{"===t[a-1]&&"}"===t[a+e.length]?o:null==(r=s(n,o)?n[o]:null)?"":r}))}),u={common:{condition:"条件",display:"显示",hide:"隐藏"},tip:{select:"请选择",input:"请输入"},upload:{upload:"点击上传",tip:"将文件拖到此处,或"},date:{start:"开始日期",end:"结束日期",t:"今日",y:"昨日",n:"近7天",a:"全部"},form:{printBtn:"打 å°",mockBtn:"模 æ‹Ÿ",submitBtn:"提 äº¤",emptyBtn:"清 ç©º"},crud:{filter:{addBtn:"新增条件",clearBtn:"清空数据",resetBtn:"清空条件",cancelBtn:"取 æ¶ˆ",submitBtn:"ç¡® å®š"},column:{name:"列名",hide:"隐藏",fixed:"冻结",filters:"过滤",sortable:"排序",index:"顺序",width:"宽度"},tipStartTitle:"当前表格已选择",tipEndTitle:"项",editTitle:"编 è¾‘",copyTitle:"复 åˆ¶",addTitle:"新 å¢ž",viewTitle:"查 çœ‹",filterTitle:"过滤条件",showTitle:"列显隐",menu:"操作",addBtn:"新 å¢ž",show:"显 ç¤º",hide:"隐 è—",open:"展 å¼€",shrink:"收 ç¼©",printBtn:"打 å°",excelBtn:"导 å‡º",updateBtn:"ä¿® æ”¹",cancelBtn:"取 æ¶ˆ",searchBtn:"搜 ç´¢",emptyBtn:"清 ç©º",menuBtn:"功 èƒ½",saveBtn:"保 å­˜",viewBtn:"查 çœ‹",editBtn:"编 è¾‘",copyBtn:"复 åˆ¶",delBtn:"删 é™¤"}},d=!1,p=function(){var t=Object.getPrototypeOf(this||o.a).$t;if("function"==typeof t&&o.a.locale)return d||(d=!0,o.a.locale(o.a.config.lang,Object.assign(u,o.a.locale(o.a.config.lang)||{},{clone:!0}))),t.apply(this,arguments)},h=function(t,e){var n=p.apply(this,arguments);if(null!=n)return n;for(var i=t.split("."),o=u,a=0,r=i.length;a<r;a++){var s=i[a];if(n=o[s],a===r-1)return c(n,e);if(!n)return"";o=n}return""};e.a={use:function(t){u=t||u},t:h,i18n:function(t){p=t||p}}},function(t,e,n){"use strict";var i=n(9),o=n(3),a=n(11);e.a=function(){return{mixins:[a.a],props:{defaults:{type:Object,default:function(){return{}}},option:{type:Object,required:!0,default:function(){return{}}}},watch:{defaults:{handler:function(t){this.objectOption=t},deep:!0},objectOption:{handler:function(t){this.$emit("update:defaults",t)},deep:!0},propOption:{handler:function(t){var e=this;this.objectOption={},t.forEach((function(t){return e.objectOption[t.prop]=t}))},deep:!0},option:{handler:function(){this.init(!1)},deep:!0}},data:function(){return{DIC:{},cascaderDIC:{},tableOption:{},isMobile:"",objectOption:{}}},created:function(){this.init()},computed:{resultOption:function(){return Object.assign(this.deepClone(this.tableOption),{column:this.propOption})},rowKey:function(){return this.tableOption.rowKey||o.e.rowKey},formRules:function(){var t={};return this.propOption.forEach((function(e){e.rules&&!1!==e.display&&(t[e.prop]=e.rules)})),t},isMediumSize:function(){return this.controlSize},controlSize:function(){return this.tableOption.size||this.$AVUE.size}},methods:{init:function(t){this.tableOption=this.option,this.getIsMobile(),this.handleLocalDic(),!1!==t&&this.handleLoadDic()},dicInit:function(t){"cascader"===t?this.handleLoadCascaderDic():this.handleLoadDic()},getIsMobile:function(){this.isMobile=window.document.body.clientWidth<=768},updateDic:function(t,e){var n=this,o=this.findObject(this.propOption,t);this.validatenull(e)&&this.validatenull(t)?this.handleLoadDic():this.validatenull(e)&&!this.validatenull(o.dicUrl)?Object(i.d)({column:o}).then((function(e){n.$set(n.DIC,t,e)})):this.$set(this.DIC,t,e)},handleSetDic:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Object.keys(n).forEach((function(i){e.$set(t,i,n[i])}))},handleLocalDic:function(){this.handleSetDic(this.DIC,Object(i.c)(this.resultOption))},handleLoadDic:function(){var t=this;Object(i.b)(this.resultOption).then((function(e){return t.handleSetDic(t.DIC,e)}))},handleLoadCascaderDic:function(){var t=this;Object(i.a)(this.propOption,this.data).then((function(e){return t.handleSetDic(t.cascaderDIC,e)}))}}}}},function(t,e,n){"use strict";var i=n(7),o={name:"form-temp",mixins:[n(11).a],props:{value:{},uploadBefore:Function,uploadDelete:Function,uploadAfter:Function,uploadPreview:Function,uploadError:Function,uploadExceed:Function,columnSlot:{type:Array,default:function(){return[]}},tableData:{type:Object,default:function(){return{}}},clearable:{type:Boolean},enter:{type:Boolean,default:!1},type:{type:String},propsHttp:{type:Object,default:function(){return{}}},props:{type:Object},dic:{type:Array},placeholder:{type:String},size:{type:String},disabled:{type:Boolean},readonly:{type:Boolean},column:{type:Object,default:function(){return{}}}},data:function(){return{first:!1,text:void 0}},computed:{params:function(){return this.column.params||{}},event:function(){return this.column.event||{}}},watch:{text:{handler:function(t){this.first||!this.validatenull(t)?(this.first=!0,this.$emit("input",t),this.$emit("change",t)):this.first=!0}},value:{handler:function(t){this.text=t},immediate:!0}},methods:{getComponent:i.e,getPlaceholder:i.f,enterChange:function(){var t=this.column.enter;this.validatenull(t)?this.enter&&this.$emit("enter"):"function"==typeof t&&this.column.enter(this.text,this.column)}}},a=n(0),r=Object(a.a)(o,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n(t.getComponent(t.column.type,t.column.component),t._g(t._b({ref:"temp",tag:"component",attrs:{column:Object.assign(t.column,t.params),dic:t.dic,disabled:t.column.disabled||t.disabled,readonly:t.column.readonly||t.readonly,placeholder:t.getPlaceholder(t.column),props:t.column.props||t.props,propsHttp:t.column.propsHttp||t.propsHttp,size:t.column.size||t.size,"table-data":t.tableData,type:t.type||t.column.type,"column-slot":t.columnSlot},nativeOn:{keyup:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.enterChange.apply(null,arguments)}},scopedSlots:t._u([t._l(t.getSlotName(t.column,"T",t.$scopedSlots)?[t.column]:[],(function(e){return{key:"default",fn:function(n){return[t._t(t.getSlotName(e,"T"),null,null,n)]}}})),t._l(t.columnSlot,(function(e){return{key:e,fn:function(n){return[t._t(e,null,null,n)]}}}))],null,!0),model:{value:t.text,callback:function(e){t.text=e},expression:"text"}},"component",Object.assign(t.column,t.$uploadFun(t.column)),!1),t.event),[t.params.html?n("span",{domProps:{innerHTML:t._s(t.params.html)}}):t._e()])}),[],!1,null,null,null);e.a=r.exports},function(t,e,n){"use strict";function i(t){return function(t){if(Array.isArray(t))return o(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(!t)return;if("string"==typeof t)return o(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return o(t,e)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n<e;n++)i[n]=t[n];return i}var a={};function r(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"default",e="";switch(t){case"default":e="#35495E";break;case"primary":e="#3488ff";break;case"success":e="#43B883";break;case"warning":e="#e6a23c";break;case"danger":e="#f56c6c"}return e}a.capsule=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"primary";console.log("%c ".concat(t," %c ").concat(e," %c"),"background:#35495E; padding: 1px; border-radius: 3px 0 0 3px; color: #fff;","background:".concat(r(n),"; padding: 1px; border-radius: 0 3px 3px 0;  color: #fff;"),"background:transparent")},a.colorful=function(t){var e;(e=console).log.apply(e,["%c".concat(t.map((function(t){return t.text||""})).join("%c"))].concat(i(t.map((function(t){return"color: ".concat(r(t.type),";")})))))},a.default=function(t){a.colorful([{text:t}])},a.primary=function(t){a.colorful([{text:t,type:"primary"}])},a.success=function(t){a.colorful([{text:t,type:"success"}])},a.warning=function(t){a.colorful([{text:t,type:"warning"}])},a.danger=function(t){a.colorful([{text:t,type:"danger"}])},window.$Log=a,e.a=a},function(module,__webpack_exports__,__webpack_require__){"use strict";var core_detail__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(17),core_create__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(1),common_common_init__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(13),common_components_form_index__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(14),global_variable__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(3),core_dataformat__WEBPACK_IMPORTED_MODULE_5__=__webpack_require__(7),core_dic__WEBPACK_IMPORTED_MODULE_6__=__webpack_require__(9),utils_util__WEBPACK_IMPORTED_MODULE_7__=__webpack_require__(2),utils_mock__WEBPACK_IMPORTED_MODULE_8__=__webpack_require__(19),_menu__WEBPACK_IMPORTED_MODULE_9__=__webpack_require__(23);__webpack_exports__.a=Object(core_create__WEBPACK_IMPORTED_MODULE_1__.a)({name:"form",mixins:[Object(common_common_init__WEBPACK_IMPORTED_MODULE_2__.a)()],components:{formTemp:common_components_form_index__WEBPACK_IMPORTED_MODULE_3__.a,formMenu:_menu__WEBPACK_IMPORTED_MODULE_9__.a},data:function(){return{activeName:"",labelWidth:90,allDisabled:!1,optionIndex:[],optionBox:!1,tableOption:{},itemSpanDefault:12,form:{},formList:[],formBind:{},formCreate:!1,formDefault:{},formVal:{}}},provide:function(){return{formSafe:this}},watch:{tabsActive:{handler:function(t){this.activeName=this.tabsActive},immediate:!0},form:{handler:function(t){this.formCreate&&this.setVal()},deep:!0},DIC:{handler:function(){this.forEachLabel()},deep:!0,immediate:!0},allDisabled:{handler:function(t){this.$emit("update:status",t)},deep:!0,immediate:!0},value:{handler:function(t){this.formCreate?this.setForm(t):this.formVal=Object.assign(this.formVal,t||{})},deep:!0,immediate:!0}},computed:{columnSlot:function(){var t=this;return Object.keys(this.$scopedSlots).filter((function(e){return!t.propOption.map((function(t){return t.prop})).includes(e)}))},labelSuffix:function(){return this.parentOption.labelSuffix||":"},isMenu:function(){return 1!=this.columnOption.length},isDetail:function(){return!0===this.detail},isTabs:function(){return!0===this.parentOption.tabs},isAdd:function(){return"add"===this.boxType},isEdit:function(){return"edit"===this.boxType},isView:function(){return"view"===this.boxType},gutter:function(){return this.setPx((this.parentOption.gutter||10)/2)},detail:function(){return this.parentOption.detail},disabled:function(){return this.parentOption.disabled},readonly:function(){return this.parentOption.readonly},tabsType:function(){return this.parentOption.tabsType},columnLen:function(){return this.columnOption.length},dynamicOption:function(){var t=this,e=[];return this.propOption.forEach((function(n){"dynamic"==n.type&&t.vaildDisplay(n)&&e.push(n)})),e},propOption:function(){var t=[];return this.columnOption.forEach((function(e){!1!==e.display&&e.column.forEach((function(e){t.push(e)}))})),t},parentOption:function(){return this.tableOption||{}},columnOption:function(){var t=this,e=this.tableOption.column||[],n=this.deepClone(this.tableOption.group)||[],i=this.tableOption.footer||[];return 0!==e.length&&n.unshift({header:!1,column:e}),0!==i.length&&n.push({header:!1,column:i}),n.forEach((function(e,n){e.column=e.column||[],e.column.forEach((function(e,n){!1===e.display||t.isMobile||(e=Object(core_dataformat__WEBPACK_IMPORTED_MODULE_5__.b)(e,t.itemSpanDefault,0===n))})),e.column=Object(core_dataformat__WEBPACK_IMPORTED_MODULE_5__.a)(e.column),e.column=e.column.sort((function(t,e){return(e.order||0)-(t.order||0)}))})),n},menuPosition:function(){return this.parentOption.menuPosition?this.parentOption.menuPosition:"center"},boxType:function(){return this.parentOption.boxType},isPrint:function(){return this.vaildData(this.parentOption.printBtn,!1)},tabsActive:function(){return this.vaildData(this.tableOption.tabsActive+"","1")},isMock:function(){return this.vaildData(this.parentOption.mockBtn,!1)}},props:{uploadBefore:Function,uploadAfter:Function,uploadDelete:Function,uploadPreview:Function,uploadError:Function,uploadExceed:Function,status:{type:Boolean,default:!1},isCrud:{type:Boolean,default:!1},value:{type:Object,required:!0,default:function(){return{}}}},created:function(){var t=this;this.$nextTick((function(){t.dataFormat(),t.setVal(),t.$nextTick((function(){return t.clearValidate()})),t.formCreate=!0,t.setControl()}))},methods:{getComponent:core_dataformat__WEBPACK_IMPORTED_MODULE_5__.e,getPlaceholder:core_dataformat__WEBPACK_IMPORTED_MODULE_5__.f,getDisabled:function(t){return this.vaildDetail(t)||this.isDetail||this.vaildDisabled(t)||this.allDisabled},getSpan:function(t){return t.span||this.parentOption.span||this.itemSpanDefault},isGroupShow:function(t,e){return!this.isTabs||(e==this.activeName||0==e)},forEachLabel:function(){var t=this;1!=this.tableOption.filterDic?this.propOption.forEach((function(e){var n,i=t.DIC[e.prop];t.validatenull(i)||(n=Object(core_detail__WEBPACK_IMPORTED_MODULE_0__.a)(t.form,e,t.tableOption,i),t.$set(t.form,["$"+e.prop],n))})):this.form=Object(utils_util__WEBPACK_IMPORTED_MODULE_7__.i)(this.form,["$"],!1)},handleGroupClick:function(t){this.$emit("tab-click",t)},handleTabClick:function(t,e){this.$emit("tab-click",t,e)},getLabelWidth:function(t,e){var n;return n=this.validatenull(t.labelWidth)?this.validatenull(e.labelWidth)?this.parentOption.labelWidth:e.labelWidth:t.labelWidth,this.setPx(n,this.labelWidth)},validateField:function(t){return this.$refs.form.validateField(t)},validTip:function(t){return!t.tip||"upload"===t.type},getPropRef:function(t){return this.$refs[t][0]},dataFormat:function(){this.formDefault=Object(core_dataformat__WEBPACK_IMPORTED_MODULE_5__.d)(this.propOption);var t=this.deepClone(this.formDefault.tableForm);this.setForm(this.deepClone(Object.assign(t,this.formVal)))},setVal:function(){this.$emit("input",this.form),this.$emit("change",this.form)},setControl:function setControl(){var _this6=this;this.propOption.forEach((function(column){var prop=column.prop,bind=column.bind,control=column.control,value=_this6.form;if(!_this6.formBind[prop]){if(bind&&(_this6.$watch("form."+prop,(function(t,e){t!=e&&Object(utils_util__WEBPACK_IMPORTED_MODULE_7__.t)(_this6.form,bind,t)})),_this6.$watch("form."+bind,(function(t,e){t!=e&&_this6.$set(_this6.form,prop,t)})),_this6.$set(_this6.form,prop,eval("value."+bind))),control){var callback=function(){var t=control(_this6.form[column.prop],_this6.form)||{};Object.keys(t).forEach((function(e){_this6.objectOption[e]=Object.assign(_this6.objectOption[e]||{},t[e]),t[e].dicData&&(_this6.DIC[e]=t[e].dicData)}))};_this6.$watch("form."+prop,(function(t,e){callback()})),callback()}_this6.formBind[prop]=!0}}))},setForm:function(t){var e=this;Object.keys(t).forEach((function(n){e.$set(e.form,n,t[n])})),this.forEachLabel(),!0===this.tableOption.filterNull&&(this.form=Object(utils_util__WEBPACK_IMPORTED_MODULE_7__.i)(this.form,[""],!1))},handleChange:function(t,e){var n=this;this.$nextTick((function(){var i=e.cascader,o=i.join(",");i.forEach((function(a){var r=a,s=n.form[e.prop],l=n.findObject(t,r);n.validatenull(l)||(n.formList.includes(o)&&i.forEach((function(t){n.form[t]="",n.$set(n.DIC,t,[])})),n.validatenull(i)||n.validatenull(s)||n.validatenull(l)||Object(core_dic__WEBPACK_IMPORTED_MODULE_6__.d)({column:l,value:s,form:n.form}).then((function(t){n.formList.includes(o)||n.formList.push(o);var e=t||[];n.$set(n.DIC,r,e),n.validatenull(e)||n.validatenull(e)||n.validatenull(l.cascaderIndex)||!n.validatenull(n.form[r])||(n.form[r]=e[l.cascaderIndex][(l.props||{}).value||global_variable__WEBPACK_IMPORTED_MODULE_4__.e.value])})))}))}))},handlePrint:function(){this.$Print(this.$el)},propChange:function(t,e){e.cascader&&this.handleChange(t,e)},handleMock:function(){var t=this;this.isMock&&(this.columnOption.forEach((function(e){var n=Object(utils_mock__WEBPACK_IMPORTED_MODULE_8__.a)(e.column,t.DIC,t.form,t.isMock);t.validatenull(n)||Object.keys(n).forEach((function(e){t.form[e]=n[e]}))})),this.$nextTick((function(){t.clearValidate(),t.$emit("mock-change",t.form)})))},vaildDetail:function(t){var e;if(this.detail)return!1;if(this.validatenull(t.detail)){if(this.isAdd)e="addDetail";else if(this.isEdit)e="editDetail";else if(this.isView)return!1}else e="detail";return!!e&&this.vaildData(t[e],!1)},vaildDisabled:function(t){var e;if(this.disabled)return!0;if(this.validatenull(t.disabled)){if(this.isAdd)e="addDisabled";else if(this.isEdit)e="editDisabled";else if(this.isView)return!0}else e="disabled";return!!e&&this.vaildData(t[e],!1)},vaildDisplay:function(t){var e;return this.validatenull(t.display)?this.isAdd?e="addDisplay":this.isEdit?e="editDisplay":this.isView&&(e="viewDisplay"):e="display",!e||this.vaildData(t[e],!0)},clearValidate:function(t){this.$refs.form.clearValidate(t)},validateCellForm:function(){var t=this;return new Promise((function(e){t.$refs.form.validate((function(t,n){e(n)}))}))},validate:function(t){var e=this;this.$refs.form.validate((function(n,i){var o=[],a=[],r={};e.dynamicOption.forEach((function(t){var n="form"===t.children.type;a.push(t.prop),n?e.validatenull(e.$refs[t.prop][0].$refs.temp.$refs.main)||e.$refs[t.prop][0].$refs.temp.$refs.main.forEach((function(t){o.push(t.validateCellForm())})):o.push(e.$refs[t.prop][0].$refs.temp.$refs.main.validateCellForm())})),Promise.all(o).then((function(n){n.forEach((function(t,n){e.validatenull(t)||(r[a[n]]=t)}));var o=Object.assign(r,i);e.validatenull(o)?(e.show(),t(!0,e.hide)):t(!1,e.hide,o)}))}))},resetForm:function(){var t=this;this.form=Object(utils_util__WEBPACK_IMPORTED_MODULE_7__.b)(this.form,(this.tableOption.filterParams||[]).concat([this.rowKey])),this.$nextTick((function(){t.clearValidate(),t.$emit("reset-change")}))},resetFields:function(){this.$refs.form.resetFields()},show:function(){this.allDisabled=!0},hide:function(){this.allDisabled=!1},submit:function(){var t=this;this.validate((function(e,n){e?t.$emit("submit",Object(utils_util__WEBPACK_IMPORTED_MODULE_7__.i)(t.form),t.hide):t.$emit("error",n)}))}}})},function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var i=n(5),o=n(2),a=n(3),r=n(10),s=n.n(r),l=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],l=t[e.prop],c=e.type,u=e.separator;if(e.bind&&(l=Object(o.m)(t,e.bind)),Object(i.a)(l))l="";else{var d=a.j.includes(e.type)&&e.multiple,p=a.b.includes(e.type);if((["string","number"].includes(e.dataType)||d||p)&&!Array.isArray(l)&&(l=(l+"").split(u||a.g),"number"===e.dataType&&(l=Object(o.w)(l))),a.a.includes(c))l=Array.isArray(l)?l.join(u||a.f):l.split(u||a.g).join(u||a.f);else if("password"===c)l=Object(o.p)(l,"*");else if(a.c.includes(c)&&e.format){var h=e.format.replace("dd","DD").replace("yyyy","YYYY"),f=s()().format("YYYY-MM-DD");if(-1!==c.indexOf("range")){var m=l[0]||"",v=l[1]||"";"timerange"===c&&m.length<=8&&v.length<8&&(m="".concat(f," ").concat(m),v="".concat(f," ").concat(v)),l=[s()(m).format(h),s()(v).format(h)].join(e.separator||"~")}else"time"===c&&l.length<=8&&(l="".concat(f," ").concat(l)),l=s()(l).format(h)}l=Object(o.k)(r,l,e.props||n.props)}return e.formatter&&"function"==typeof e.formatter&&(l=e.formatter(t,t[e.prop],l,e)),l}},function(t,e,n){var i,o;void 0===(o="function"==typeof(i=function(t,e,n){return function(t,e,n,i,o,a){function r(t){return"number"==typeof t&&!isNaN(t)}var s=this;if(s.version=function(){return"1.9.3"},s.options={useEasing:!0,useGrouping:!0,separator:",",decimal:".",easingFn:function(t,e,n,i){return n*(1-Math.pow(2,-10*t/i))*1024/1023+e},formattingFn:function(t){var e,n,i,o,a,r,l=t<0;if(t=Math.abs(t).toFixed(s.decimals),n=(e=(t+="").split("."))[0],i=e.length>1?s.options.decimal+e[1]:"",s.options.useGrouping){for(o="",a=0,r=n.length;a<r;++a)0!==a&&a%3==0&&(o=s.options.separator+o),o=n[r-a-1]+o;n=o}return s.options.numerals.length&&(n=n.replace(/[0-9]/g,(function(t){return s.options.numerals[+t]})),i=i.replace(/[0-9]/g,(function(t){return s.options.numerals[+t]}))),(l?"-":"")+s.options.prefix+n+i+s.options.suffix},prefix:"",suffix:"",numerals:[]},a&&"object"==typeof a)for(var l in s.options)a.hasOwnProperty(l)&&null!==a[l]&&(s.options[l]=a[l]);""===s.options.separator?s.options.useGrouping=!1:s.options.separator=""+s.options.separator;for(var c=0,u=["webkit","moz","ms","o"],d=0;d<u.length&&!window.requestAnimationFrame;++d)window.requestAnimationFrame=window[u[d]+"RequestAnimationFrame"],window.cancelAnimationFrame=window[u[d]+"CancelAnimationFrame"]||window[u[d]+"CancelRequestAnimationFrame"];window.requestAnimationFrame||(window.requestAnimationFrame=function(t,e){var n=(new Date).getTime(),i=Math.max(0,16-(n-c)),o=window.setTimeout((function(){t(n+i)}),i);return c=n+i,o}),window.cancelAnimationFrame||(window.cancelAnimationFrame=function(t){clearTimeout(t)}),s.initialize=function(){return!(!s.initialized&&(s.error="",s.d="string"==typeof t?document.getElementById(t):t,s.d?(s.startVal=Number(e),s.endVal=Number(n),r(s.startVal)&&r(s.endVal)?(s.decimals=Math.max(0,i||0),s.dec=Math.pow(10,s.decimals),s.duration=1e3*Number(o)||2e3,s.countDown=s.startVal>s.endVal,s.frameVal=s.startVal,s.initialized=!0,0):(s.error="[CountUp] startVal ("+e+") or endVal ("+n+") is not a number",1)):(s.error="[CountUp] target is null or undefined",1)))},s.printValue=function(t){var e=s.options.formattingFn(t);"INPUT"===s.d.tagName?this.d.value=e:"text"===s.d.tagName||"tspan"===s.d.tagName?this.d.textContent=e:this.d.innerHTML=e},s.count=function(t){s.startTime||(s.startTime=t),s.timestamp=t;var e=t-s.startTime;s.remaining=s.duration-e,s.options.useEasing?s.countDown?s.frameVal=s.startVal-s.options.easingFn(e,0,s.startVal-s.endVal,s.duration):s.frameVal=s.options.easingFn(e,s.startVal,s.endVal-s.startVal,s.duration):s.countDown?s.frameVal=s.startVal-(s.startVal-s.endVal)*(e/s.duration):s.frameVal=s.startVal+(s.endVal-s.startVal)*(e/s.duration),s.countDown?s.frameVal=s.frameVal<s.endVal?s.endVal:s.frameVal:s.frameVal=s.frameVal>s.endVal?s.endVal:s.frameVal,s.frameVal=Math.round(s.frameVal*s.dec)/s.dec,s.printValue(s.frameVal),e<s.duration?s.rAF=requestAnimationFrame(s.count):s.callback&&s.callback()},s.start=function(t){s.initialize()&&(s.callback=t,s.rAF=requestAnimationFrame(s.count))},s.pauseResume=function(){s.paused?(s.paused=!1,delete s.startTime,s.duration=s.remaining,s.startVal=s.frameVal,requestAnimationFrame(s.count)):(s.paused=!0,cancelAnimationFrame(s.rAF))},s.reset=function(){s.paused=!1,delete s.startTime,s.initialized=!1,s.initialize()&&(cancelAnimationFrame(s.rAF),s.printValue(s.startVal))},s.update=function(t){if(s.initialize()){if(!r(t=Number(t)))return void(s.error="[CountUp] update() - new endVal is not a number: "+t);s.error="",t!==s.frameVal&&(cancelAnimationFrame(s.rAF),s.paused=!1,delete s.startTime,s.startVal=s.frameVal,s.endVal=t,s.countDown=s.startVal>s.endVal,s.rAF=requestAnimationFrame(s.count))}},s.initialize()&&s.printValue(s.startVal)}})?i.call(e,n,e,t):i)||(t.exports=o)},function(t,e,n){"use strict";var i=n(6);function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}e.a=function(t,e,n,a){if(a){if(window.Mock){var r=(window.Mock||{}).Random,s={};return Object.keys(t).forEach((function(i){var a,c,u,d,p,h=t[i];if(h.mock&&"object"===o(h.mock)){var f=h.mock;switch(f.dic="string"==typeof h.dicData?e[h.dicData]:h.dicData||[],f.props=h.props||{},f.columnType=h.type,f.multiple=h.multiple,f.type){case"name":s[h.prop]=f.en?r.name(!0):r.cname();break;case"number":s[h.prop]=l(f);break;case"datetime":s[h.prop]=(p=(d=f).format,d.now?r.now(p):r.datetime(p));break;case"word":s[h.prop]=(c=(a=f).min,u=a.max,r.csentence(c,u));break;case"url":s[h.prop]=function(t){var e=t.header,n=(t.footer,r.url()),i=n.indexOf("://");return n=!1===e?n.substring(i+3):"http://"+n.substring(i+3)}(f);break;case"county":s[h.prop]=r.county(!0);break;case"dic":s[h.prop]=function(t){var e=t.dic,n=t.props,i=t.columnType,o=t.multiple,a=n.value||"value",r=e.length;if(["checkbox"].includes(i)||o){for(var s=l({min:1,max:r}),c=[],u=0;u<s;u++)for(var d=!0;d;){var p=e[l({min:0,max:r-1})][a];c.includes(p)||(c.push(p),d=!1)}return c}return e[l({min:0,max:r-1})][a]}(f)}}else h.mock instanceof Function&&(s[h.prop]=h.mock(n))})),s}i.a.logs("mock")}function l(t){var e=t.max,n=t.min,i=t.precision;if(i){var o=r.float(n,e,i)+"",a=o.indexOf(".")+1;return Number(o.substring(0,a+i))}return r.integer(n,e)}}},function(t,e){t.exports=__WEBPACK_EXTERNAL_MODULE__20__},function(t,e,n){var i,o;
/* NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress
 * @license MIT */void 0===(o="function"==typeof(i=function(){var t,e,n={version:"0.2.0"},i=n.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'<div class="bar" role="bar"><div class="peg"></div></div><div class="spinner" role="spinner"><div class="spinner-icon"></div></div>'};function o(t,e,n){return t<e?e:t>n?n:t}function a(t){return 100*(-1+t)}n.configure=function(t){var e,n;for(e in t)void 0!==(n=t[e])&&t.hasOwnProperty(e)&&(i[e]=n);return this},n.status=null,n.set=function(t){var e=n.isStarted();t=o(t,i.minimum,1),n.status=1===t?null:t;var l=n.render(!e),c=l.querySelector(i.barSelector),u=i.speed,d=i.easing;return l.offsetWidth,r((function(e){""===i.positionUsing&&(i.positionUsing=n.getPositioningCSS()),s(c,function(t,e,n){var o;return(o="translate3d"===i.positionUsing?{transform:"translate3d("+a(t)+"%,0,0)"}:"translate"===i.positionUsing?{transform:"translate("+a(t)+"%,0)"}:{"margin-left":a(t)+"%"}).transition="all "+e+"ms "+n,o}(t,u,d)),1===t?(s(l,{transition:"none",opacity:1}),l.offsetWidth,setTimeout((function(){s(l,{transition:"all "+u+"ms linear",opacity:0}),setTimeout((function(){n.remove(),e()}),u)}),u)):setTimeout(e,u)})),this},n.isStarted=function(){return"number"==typeof n.status},n.start=function(){n.status||n.set(0);var t=function(){setTimeout((function(){n.status&&(n.trickle(),t())}),i.trickleSpeed)};return i.trickle&&t(),this},n.done=function(t){return t||n.status?n.inc(.3+.5*Math.random()).set(1):this},n.inc=function(t){var e=n.status;return e?("number"!=typeof t&&(t=(1-e)*o(Math.random()*e,.1,.95)),e=o(e+t,0,.994),n.set(e)):n.start()},n.trickle=function(){return n.inc(Math.random()*i.trickleRate)},t=0,e=0,n.promise=function(i){return i&&"resolved"!==i.state()?(0===e&&n.start(),t++,e++,i.always((function(){0==--e?(t=0,n.done()):n.set((t-e)/t)})),this):this},n.render=function(t){if(n.isRendered())return document.getElementById("nprogress");c(document.documentElement,"nprogress-busy");var e=document.createElement("div");e.id="nprogress",e.innerHTML=i.template;var o,r=e.querySelector(i.barSelector),l=t?"-100":a(n.status||0),u=document.querySelector(i.parent);return s(r,{transition:"all 0 linear",transform:"translate3d("+l+"%,0,0)"}),i.showSpinner||(o=e.querySelector(i.spinnerSelector))&&p(o),u!=document.body&&c(u,"nprogress-custom-parent"),u.appendChild(e),e},n.remove=function(){u(document.documentElement,"nprogress-busy"),u(document.querySelector(i.parent),"nprogress-custom-parent");var t=document.getElementById("nprogress");t&&p(t)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var t=document.body.style,e="WebkitTransform"in t?"Webkit":"MozTransform"in t?"Moz":"msTransform"in t?"ms":"OTransform"in t?"O":"";return e+"Perspective"in t?"translate3d":e+"Transform"in t?"translate":"margin"};var r=function(){var t=[];function e(){var n=t.shift();n&&n(e)}return function(n){t.push(n),1==t.length&&e()}}(),s=function(){var t=["Webkit","O","Moz","ms"],e={};function n(n){return n=n.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,(function(t,e){return e.toUpperCase()})),e[n]||(e[n]=function(e){var n=document.body.style;if(e in n)return e;for(var i,o=t.length,a=e.charAt(0).toUpperCase()+e.slice(1);o--;)if((i=t[o]+a)in n)return i;return e}(n))}function i(t,e,i){e=n(e),t.style[e]=i}return function(t,e){var n,o,a=arguments;if(2==a.length)for(n in e)void 0!==(o=e[n])&&e.hasOwnProperty(n)&&i(t,n,o);else i(t,a[1],a[2])}}();function l(t,e){return("string"==typeof t?t:d(t)).indexOf(" "+e+" ")>=0}function c(t,e){var n=d(t),i=n+e;l(n,e)||(t.className=i.substring(1))}function u(t,e){var n,i=d(t);l(t,e)&&(n=i.replace(" "+e+" "," "),t.className=n.substring(1,n.length-1))}function d(t){return(" "+(t.className||"")+" ").replace(/\s+/gi," ")}function p(t){t&&t.parentNode&&t.parentNode.removeChild(t)}return n})?i.call(e,n,e,t):i)||(t.exports=o)},function(t,e,n){window,t.exports=function(t){var e={};function n(i){if(e[i])return e[i].exports;var o=e[i]={i:i,l:!1,exports:{}};return t[i].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(t,e,i){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:i})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)n.d(i,o,function(e){return t[e]}.bind(null,o));return i},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=6)}([function(t,e,n){var i=n(2);"string"==typeof i&&(i=[[t.i,i,""]]),n(4)(i,{hmr:!0,transform:void 0,insertInto:void 0}),i.locals&&(t.exports=i.locals)},function(t,e,n){"use strict";var i=n(0);n.n(i).a},function(t,e,n){(t.exports=n(3)(!1)).push([t.i,'\n.vue-cropper[data-v-6dae58fd] {\n  position: relative;\n  width: 100%;\n  height: 100%;\n  box-sizing: border-box;\n  user-select: none;\n  -webkit-user-select: none;\n  -moz-user-select: none;\n  -ms-user-select: none;\n  direction: ltr;\n  touch-action: none;\n  text-align: left;\n  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC");\n}\n.cropper-box[data-v-6dae58fd],\n.cropper-box-canvas[data-v-6dae58fd],\n.cropper-drag-box[data-v-6dae58fd],\n.cropper-crop-box[data-v-6dae58fd],\n.cropper-face[data-v-6dae58fd] {\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  user-select: none;\n}\n.cropper-box-canvas img[data-v-6dae58fd] {\n  position: relative;\n  text-align: left;\n  user-select: none;\n  transform: none;\n  max-width: none;\n  max-height: none;\n}\n.cropper-box[data-v-6dae58fd] {\n  overflow: hidden;\n}\n.cropper-move[data-v-6dae58fd] {\n  cursor: move;\n}\n.cropper-crop[data-v-6dae58fd] {\n  cursor: crosshair;\n}\n.cropper-modal[data-v-6dae58fd] {\n  background: rgba(0, 0, 0, 0.5);\n}\n.cropper-crop-box[data-v-6dae58fd] {\n  /*border: 2px solid #39f;*/\n}\n.cropper-view-box[data-v-6dae58fd] {\n  display: block;\n  overflow: hidden;\n  width: 100%;\n  height: 100%;\n  outline: 1px solid #39f;\n  outline-color: rgba(51, 153, 255, 0.75);\n  user-select: none;\n}\n.cropper-view-box img[data-v-6dae58fd] {\n  user-select: none;\n  text-align: left;\n  max-width: none;\n  max-height: none;\n}\n.cropper-face[data-v-6dae58fd] {\n  top: 0;\n  left: 0;\n  background-color: #fff;\n  opacity: 0.1;\n}\n.crop-info[data-v-6dae58fd] {\n  position: absolute;\n  left: 0px;\n  min-width: 65px;\n  text-align: center;\n  color: white;\n  line-height: 20px;\n  background-color: rgba(0, 0, 0, 0.8);\n  font-size: 12px;\n}\n.crop-line[data-v-6dae58fd] {\n  position: absolute;\n  display: block;\n  width: 100%;\n  height: 100%;\n  opacity: 0.1;\n}\n.line-w[data-v-6dae58fd] {\n  top: -3px;\n  left: 0;\n  height: 5px;\n  cursor: n-resize;\n}\n.line-a[data-v-6dae58fd] {\n  top: 0;\n  left: -3px;\n  width: 5px;\n  cursor: w-resize;\n}\n.line-s[data-v-6dae58fd] {\n  bottom: -3px;\n  left: 0;\n  height: 5px;\n  cursor: s-resize;\n}\n.line-d[data-v-6dae58fd] {\n  top: 0;\n  right: -3px;\n  width: 5px;\n  cursor: e-resize;\n}\n.crop-point[data-v-6dae58fd] {\n  position: absolute;\n  width: 8px;\n  height: 8px;\n  opacity: 0.75;\n  background-color: #39f;\n  border-radius: 100%;\n}\n.point1[data-v-6dae58fd] {\n  top: -4px;\n  left: -4px;\n  cursor: nw-resize;\n}\n.point2[data-v-6dae58fd] {\n  top: -5px;\n  left: 50%;\n  margin-left: -3px;\n  cursor: n-resize;\n}\n.point3[data-v-6dae58fd] {\n  top: -4px;\n  right: -4px;\n  cursor: ne-resize;\n}\n.point4[data-v-6dae58fd] {\n  top: 50%;\n  left: -4px;\n  margin-top: -3px;\n  cursor: w-resize;\n}\n.point5[data-v-6dae58fd] {\n  top: 50%;\n  right: -4px;\n  margin-top: -3px;\n  cursor: e-resize;\n}\n.point6[data-v-6dae58fd] {\n  bottom: -5px;\n  left: -4px;\n  cursor: sw-resize;\n}\n.point7[data-v-6dae58fd] {\n  bottom: -5px;\n  left: 50%;\n  margin-left: -3px;\n  cursor: s-resize;\n}\n.point8[data-v-6dae58fd] {\n  bottom: -5px;\n  right: -4px;\n  cursor: se-resize;\n}\n@media screen and (max-width: 500px) {\n.crop-point[data-v-6dae58fd] {\n    position: absolute;\n    width: 20px;\n    height: 20px;\n    opacity: 0.45;\n    background-color: #39f;\n    border-radius: 100%;\n}\n.point1[data-v-6dae58fd] {\n    top: -10px;\n    left: -10px;\n}\n.point2[data-v-6dae58fd],\n  .point4[data-v-6dae58fd],\n  .point5[data-v-6dae58fd],\n  .point7[data-v-6dae58fd] {\n    display: none;\n}\n.point3[data-v-6dae58fd] {\n    top: -10px;\n    right: -10px;\n}\n.point4[data-v-6dae58fd] {\n    top: 0;\n    left: 0;\n}\n.point6[data-v-6dae58fd] {\n    bottom: -10px;\n    left: -10px;\n}\n.point8[data-v-6dae58fd] {\n    bottom: -10px;\n    right: -10px;\n}\n}\n',""])},function(t,e){t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n=function(t,e){var n=t[1]||"",i=t[3];if(!i)return n;if(e&&"function"==typeof btoa){var o=function(t){return"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(t))))+" */"}(i),a=i.sources.map((function(t){return"/*# sourceURL="+i.sourceRoot+t+" */"}));return[n].concat(a).concat([o]).join("\n")}return[n].join("\n")}(e,t);return e[2]?"@media "+e[2]+"{"+n+"}":n})).join("")},e.i=function(t,n){"string"==typeof t&&(t=[[null,t,""]]);for(var i={},o=0;o<this.length;o++){var a=this[o][0];"number"==typeof a&&(i[a]=!0)}for(o=0;o<t.length;o++){var r=t[o];"number"==typeof r[0]&&i[r[0]]||(n&&!r[2]?r[2]=n:n&&(r[2]="("+r[2]+") and ("+n+")"),e.push(r))}},e}},function(t,e,n){var i={},o=function(t){var e;return function(){return void 0===e&&(e=t.apply(this,arguments)),e}}((function(){return window&&document&&document.all&&!window.atob})),a=function(t){var e={};return function(t,n){if("function"==typeof t)return t();if(void 0===e[t]){var i=function(t,e){return e?e.querySelector(t):document.querySelector(t)}.call(this,t,n);if(window.HTMLIFrameElement&&i instanceof window.HTMLIFrameElement)try{i=i.contentDocument.head}catch(t){i=null}e[t]=i}return e[t]}}(),r=null,s=0,l=[],c=n(5);function u(t,e){for(var n=0;n<t.length;n++){var o=t[n],a=i[o.id];if(a){a.refs++;for(var r=0;r<a.parts.length;r++)a.parts[r](o.parts[r]);for(;r<o.parts.length;r++)a.parts.push(v(o.parts[r],e))}else{var s=[];for(r=0;r<o.parts.length;r++)s.push(v(o.parts[r],e));i[o.id]={id:o.id,refs:1,parts:s}}}}function d(t,e){for(var n=[],i={},o=0;o<t.length;o++){var a=t[o],r=e.base?a[0]+e.base:a[0],s={css:a[1],media:a[2],sourceMap:a[3]};i[r]?i[r].parts.push(s):n.push(i[r]={id:r,parts:[s]})}return n}function p(t,e){var n=a(t.insertInto);if(!n)throw new Error("Couldn't find a style target. This probably means that the value for the 'insertInto' parameter is invalid.");var i=l[l.length-1];if("top"===t.insertAt)i?i.nextSibling?n.insertBefore(e,i.nextSibling):n.appendChild(e):n.insertBefore(e,n.firstChild),l.push(e);else if("bottom"===t.insertAt)n.appendChild(e);else{if("object"!=typeof t.insertAt||!t.insertAt.before)throw new Error("[Style Loader]\n\n Invalid value for parameter 'insertAt' ('options.insertAt') found.\n Must be 'top', 'bottom', or Object.\n (https://github.com/webpack-contrib/style-loader#insertat)\n");var o=a(t.insertAt.before,n);n.insertBefore(e,o)}}function h(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t);var e=l.indexOf(t);e>=0&&l.splice(e,1)}function f(t){var e=document.createElement("style");if(void 0===t.attrs.type&&(t.attrs.type="text/css"),void 0===t.attrs.nonce){var i=n.nc;i&&(t.attrs.nonce=i)}return m(e,t.attrs),p(t,e),e}function m(t,e){Object.keys(e).forEach((function(n){t.setAttribute(n,e[n])}))}function v(t,e){var n,i,o,a;if(e.transform&&t.css){if(!(a="function"==typeof e.transform?e.transform(t.css):e.transform.default(t.css)))return function(){};t.css=a}if(e.singleton){var l=s++;n=r||(r=f(e)),i=g.bind(null,n,l,!1),o=g.bind(null,n,l,!0)}else t.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=function(t){var e=document.createElement("link");return void 0===t.attrs.type&&(t.attrs.type="text/css"),t.attrs.rel="stylesheet",m(e,t.attrs),p(t,e),e}(e),i=function(t,e,n){var i=n.css,o=n.sourceMap,a=void 0===e.convertToAbsoluteUrls&&o;(e.convertToAbsoluteUrls||a)&&(i=c(i)),o&&(i+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+" */");var r=new Blob([i],{type:"text/css"}),s=t.href;t.href=URL.createObjectURL(r),s&&URL.revokeObjectURL(s)}.bind(null,n,e),o=function(){h(n),n.href&&URL.revokeObjectURL(n.href)}):(n=f(e),i=function(t,e){var n=e.css,i=e.media;if(i&&t.setAttribute("media",i),t.styleSheet)t.styleSheet.cssText=n;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(n))}}.bind(null,n),o=function(){h(n)});return i(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap)return;i(t=e)}else o()}}t.exports=function(t,e){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");(e=e||{}).attrs="object"==typeof e.attrs?e.attrs:{},e.singleton||"boolean"==typeof e.singleton||(e.singleton=o()),e.insertInto||(e.insertInto="head"),e.insertAt||(e.insertAt="bottom");var n=d(t,e);return u(n,e),function(t){for(var o=[],a=0;a<n.length;a++){var r=n[a];(s=i[r.id]).refs--,o.push(s)}for(t&&u(d(t,e),e),a=0;a<o.length;a++){var s;if(0===(s=o[a]).refs){for(var l=0;l<s.parts.length;l++)s.parts[l]();delete i[s.id]}}}};var b=function(){var t=[];return function(e,n){return t[e]=n,t.filter(Boolean).join("\n")}}();function g(t,e,n,i){var o=n?"":i.css;if(t.styleSheet)t.styleSheet.cssText=b(e,o);else{var a=document.createTextNode(o),r=t.childNodes;r[e]&&t.removeChild(r[e]),r.length?t.insertBefore(a,r[e]):t.appendChild(a)}}},function(t,e){t.exports=function(t){var e="undefined"!=typeof window&&window.location;if(!e)throw new Error("fixUrls requires window.location");if(!t||"string"!=typeof t)return t;var n=e.protocol+"//"+e.host,i=n+e.pathname.replace(/\/[^\/]*$/,"/");return t.replace(/url\s*\(((?:[^)(]|\((?:[^)(]+|\([^)(]*\))*\))*)\)/gi,(function(t,e){var o,a=e.trim().replace(/^"(.*)"$/,(function(t,e){return e})).replace(/^'(.*)'$/,(function(t,e){return e}));return/^(#|data:|http:\/\/|https:\/\/|file:\/\/\/|\s*$)/i.test(a)?t:(o=0===a.indexOf("//")?a:0===a.indexOf("/")?n+a:i+a.replace(/^\.\//,""),"url("+JSON.stringify(o)+")")}))}},function(t,e,n){"use strict";n.r(e);var i=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{ref:"cropper",staticClass:"vue-cropper",on:{mouseover:t.scaleImg,mouseout:t.cancelScale}},[t.imgs?n("div",{staticClass:"cropper-box"},[n("div",{directives:[{name:"show",rawName:"v-show",value:!t.loading,expression:"!loading"}],staticClass:"cropper-box-canvas",style:{width:t.trueWidth+"px",height:t.trueHeight+"px",transform:"scale("+t.scale+","+t.scale+") translate3d("+t.x/t.scale+"px,"+t.y/t.scale+"px,0)rotateZ("+90*t.rotate+"deg)"}},[n("img",{ref:"cropperImg",attrs:{src:t.imgs,alt:"cropper-img"}})])]):t._e(),t._v(" "),n("div",{staticClass:"cropper-drag-box",class:{"cropper-move":t.move&&!t.crop,"cropper-crop":t.crop,"cropper-modal":t.cropping},on:{mousedown:t.startMove,touchstart:t.startMove}}),t._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:t.cropping,expression:"cropping"}],staticClass:"cropper-crop-box",style:{width:t.cropW+"px",height:t.cropH+"px",transform:"translate3d("+t.cropOffsertX+"px,"+t.cropOffsertY+"px,0)"}},[n("span",{staticClass:"cropper-view-box"},[n("img",{style:{width:t.trueWidth+"px",height:t.trueHeight+"px",transform:"scale("+t.scale+","+t.scale+") translate3d("+(t.x-t.cropOffsertX)/t.scale+"px,"+(t.y-t.cropOffsertY)/t.scale+"px,0)rotateZ("+90*t.rotate+"deg)"},attrs:{src:t.imgs,alt:"cropper-img"}})]),t._v(" "),n("span",{staticClass:"cropper-face cropper-move",on:{mousedown:t.cropMove,touchstart:t.cropMove}}),t._v(" "),t.info?n("span",{staticClass:"crop-info",style:{top:t.cropInfo.top}},[t._v(t._s(t.cropInfo.width)+" Ã— "+t._s(t.cropInfo.height))]):t._e(),t._v(" "),t.fixedBox?t._e():n("span",[n("span",{staticClass:"crop-line line-w",on:{mousedown:function(e){t.changeCropSize(e,!1,!0,0,1)},touchstart:function(e){t.changeCropSize(e,!1,!0,0,1)}}}),t._v(" "),n("span",{staticClass:"crop-line line-a",on:{mousedown:function(e){t.changeCropSize(e,!0,!1,1,0)},touchstart:function(e){t.changeCropSize(e,!0,!1,1,0)}}}),t._v(" "),n("span",{staticClass:"crop-line line-s",on:{mousedown:function(e){t.changeCropSize(e,!1,!0,0,2)},touchstart:function(e){t.changeCropSize(e,!1,!0,0,2)}}}),t._v(" "),n("span",{staticClass:"crop-line line-d",on:{mousedown:function(e){t.changeCropSize(e,!0,!1,2,0)},touchstart:function(e){t.changeCropSize(e,!0,!1,2,0)}}}),t._v(" "),n("span",{staticClass:"crop-point point1",on:{mousedown:function(e){t.changeCropSize(e,!0,!0,1,1)},touchstart:function(e){t.changeCropSize(e,!0,!0,1,1)}}}),t._v(" "),n("span",{staticClass:"crop-point point2",on:{mousedown:function(e){t.changeCropSize(e,!1,!0,0,1)},touchstart:function(e){t.changeCropSize(e,!1,!0,0,1)}}}),t._v(" "),n("span",{staticClass:"crop-point point3",on:{mousedown:function(e){t.changeCropSize(e,!0,!0,2,1)},touchstart:function(e){t.changeCropSize(e,!0,!0,2,1)}}}),t._v(" "),n("span",{staticClass:"crop-point point4",on:{mousedown:function(e){t.changeCropSize(e,!0,!1,1,0)},touchstart:function(e){t.changeCropSize(e,!0,!1,1,0)}}}),t._v(" "),n("span",{staticClass:"crop-point point5",on:{mousedown:function(e){t.changeCropSize(e,!0,!1,2,0)},touchstart:function(e){t.changeCropSize(e,!0,!1,2,0)}}}),t._v(" "),n("span",{staticClass:"crop-point point6",on:{mousedown:function(e){t.changeCropSize(e,!0,!0,1,2)},touchstart:function(e){t.changeCropSize(e,!0,!0,1,2)}}}),t._v(" "),n("span",{staticClass:"crop-point point7",on:{mousedown:function(e){t.changeCropSize(e,!1,!0,0,2)},touchstart:function(e){t.changeCropSize(e,!1,!0,0,2)}}}),t._v(" "),n("span",{staticClass:"crop-point point8",on:{mousedown:function(e){t.changeCropSize(e,!0,!0,2,2)},touchstart:function(e){t.changeCropSize(e,!0,!0,2,2)}}})])])])};i._withStripped=!0;var o={getData:function(t){return new Promise((function(e,n){var i={};(function(t){var e=null;return new Promise((function(n,i){if(t.src)if(/^data\:/i.test(t.src))e=function(t){t=t.replace(/^data\:([^\;]+)\;base64,/gim,"");for(var e=atob(t),n=e.length,i=new ArrayBuffer(n),o=new Uint8Array(i),a=0;a<n;a++)o[a]=e.charCodeAt(a);return i}(t.src),n(e);else if(/^blob\:/i.test(t.src)){var o=new FileReader;o.onload=function(t){e=t.target.result,n(e)},function(t,e){var n=new XMLHttpRequest;n.open("GET",t,!0),n.responseType="blob",n.onload=function(t){200!=this.status&&0!==this.status||function(t){o.readAsArrayBuffer(t)}(this.response)},n.send()}(t.src)}else{var a=new XMLHttpRequest;a.onload=function(){if(200!=this.status&&0!==this.status)throw"Could not load image";e=a.response,n(e),a=null},a.open("GET",t.src,!0),a.responseType="arraybuffer",a.send(null)}else i("img error")}))})(t).then((function(t){i.arrayBuffer=t,i.orientation=function(t){var e,n,i,o,a,r,s,l,c,u=new DataView(t),d=u.byteLength;if(255===u.getUint8(0)&&216===u.getUint8(1))for(l=2;l<d;){if(255===u.getUint8(l)&&225===u.getUint8(l+1)){r=l;break}l++}if(r&&(n=r+10,"Exif"===function(t,e,n){var i,o="";for(i=e,n+=e;i<n;i++)o+=String.fromCharCode(t.getUint8(i));return o}(u,r+4,4)&&((o=18761===(a=u.getUint16(n)))||19789===a)&&42===u.getUint16(n+2,o)&&(i=u.getUint32(n+4,o))>=8&&(s=n+i)),s)for(d=u.getUint16(s,o),c=0;c<d;c++)if(l=s+12*c+2,274===u.getUint16(l,o)){l+=8,e=u.getUint16(l,o);break}return e}(t),e(i)})).catch((function(t){n(t)}))}))}},a=o,r={data:function(){return{w:0,h:0,scale:1,x:0,y:0,loading:!0,trueWidth:0,trueHeight:0,move:!0,moveX:0,moveY:0,crop:!1,cropping:!1,cropW:0,cropH:0,cropOldW:0,cropOldH:0,canChangeX:!1,canChangeY:!1,changeCropTypeX:1,changeCropTypeY:1,cropX:0,cropY:0,cropChangeX:0,cropChangeY:0,cropOffsertX:0,cropOffsertY:0,support:"",touches:[],touchNow:!1,rotate:0,isIos:!1,orientation:0,imgs:"",coe:.2,scaling:!1,scalingSet:"",coeStatus:"",isCanShow:!0}},props:{img:{type:[String,Blob,null,File],default:""},outputSize:{type:Number,default:1},outputType:{type:String,default:"jpeg"},info:{type:Boolean,default:!0},canScale:{type:Boolean,default:!0},autoCrop:{type:Boolean,default:!1},autoCropWidth:{type:[Number,String],default:0},autoCropHeight:{type:[Number,String],default:0},fixed:{type:Boolean,default:!1},fixedNumber:{type:Array,default:function(){return[1,1]}},fixedBox:{type:Boolean,default:!1},full:{type:Boolean,default:!1},canMove:{type:Boolean,default:!0},canMoveBox:{type:Boolean,default:!0},original:{type:Boolean,default:!1},centerBox:{type:Boolean,default:!1},high:{type:Boolean,default:!0},infoTrue:{type:Boolean,default:!1},maxImgSize:{type:[Number,String],default:2e3},enlarge:{type:[Number,String],default:1},preW:{type:[Number,String],default:0},mode:{type:String,default:"contain"},limitMinSize:{type:[Number,Array,String],default:function(){return 10}}},computed:{cropInfo:function(){var t={};if(t.top=this.cropOffsertY>21?"-21px":"0px",t.width=this.cropW>0?this.cropW:0,t.height=this.cropH>0?this.cropH:0,this.infoTrue){var e=1;this.high&&!this.full&&(e=window.devicePixelRatio),1!==this.enlarge&!this.full&&(e=Math.abs(Number(this.enlarge))),t.width=t.width*e,t.height=t.height*e,this.full&&(t.width=t.width/this.scale,t.height=t.height/this.scale)}return t.width=t.width.toFixed(0),t.height=t.height.toFixed(0),t},isIE:function(){return navigator.userAgent,!!window.ActiveXObject||"ActiveXObject"in window},passive:function(){return this.isIE?null:{passive:!1}}},watch:{img:function(){this.checkedImg()},imgs:function(t){""!==t&&this.reload()},cropW:function(){this.showPreview()},cropH:function(){this.showPreview()},cropOffsertX:function(){this.showPreview()},cropOffsertY:function(){this.showPreview()},scale:function(t,e){this.showPreview()},x:function(){this.showPreview()},y:function(){this.showPreview()},autoCrop:function(t){t&&this.goAutoCrop()},autoCropWidth:function(){this.autoCrop&&this.goAutoCrop()},autoCropHeight:function(){this.autoCrop&&this.goAutoCrop()},mode:function(){this.checkedImg()},rotate:function(){this.showPreview(),(this.autoCrop||this.cropW>0||this.cropH>0)&&this.goAutoCrop(this.cropW,this.cropH)}},methods:{getVersion:function(t){for(var e=navigator.userAgent.split(" "),n="",i=new RegExp(t,"i"),o=0;o<e.length;o++)i.test(e[o])&&(n=e[o]);return n?n.split("/")[1].split("."):["0","0","0"]},checkOrientationImage:function(t,e,n,i){var o=this;if(this.getVersion("chrome")[0]>=81)e=-1;else if(this.getVersion("safari")[0]>=605){var a=this.getVersion("version");a[0]>13&&a[1]>1&&(e=-1)}else{var r=navigator.userAgent.toLowerCase().match(/cpu iphone os (.*?) like mac os/);if(r){var s=r[1];((s=s.split("_"))[0]>13||s[0]>=13&&s[1]>=4)&&(e=-1)}}var l=document.createElement("canvas"),c=l.getContext("2d");switch(c.save(),e){case 2:l.width=n,l.height=i,c.translate(n,0),c.scale(-1,1);break;case 3:l.width=n,l.height=i,c.translate(n/2,i/2),c.rotate(180*Math.PI/180),c.translate(-n/2,-i/2);break;case 4:l.width=n,l.height=i,c.translate(0,i),c.scale(1,-1);break;case 5:l.height=n,l.width=i,c.rotate(.5*Math.PI),c.scale(1,-1);break;case 6:l.width=i,l.height=n,c.translate(i/2,n/2),c.rotate(90*Math.PI/180),c.translate(-n/2,-i/2);break;case 7:l.height=n,l.width=i,c.rotate(.5*Math.PI),c.translate(n,-i),c.scale(-1,1);break;case 8:l.height=n,l.width=i,c.translate(i/2,n/2),c.rotate(-90*Math.PI/180),c.translate(-n/2,-i/2);break;default:l.width=n,l.height=i}c.drawImage(t,0,0,n,i),c.restore(),l.toBlob((function(t){var e=URL.createObjectURL(t);URL.revokeObjectURL(o.imgs),o.imgs=e}),"image/"+this.outputType,1)},checkedImg:function(){var t=this;if(null===this.img||""===this.img)return this.imgs="",void this.clearCrop();this.loading=!0,this.scale=1,this.rotate=0,this.clearCrop();var e=new Image;if(e.onload=function(){if(""===t.img)return t.$emit("imgLoad","error"),t.$emit("img-load","error"),!1;var n=e.width,i=e.height;a.getData(e).then((function(o){t.orientation=o.orientation||1;var a=Number(t.maxImgSize);!t.orientation&&n<a&i<a?t.imgs=t.img:(n>a&&(i=i/n*a,n=a),i>a&&(n=n/i*a,i=a),t.checkOrientationImage(e,t.orientation,n,i))}))},e.onerror=function(){t.$emit("imgLoad","error"),t.$emit("img-load","error")},"data"!==this.img.substr(0,4)&&(e.crossOrigin=""),this.isIE){var n=new XMLHttpRequest;n.onload=function(){var t=URL.createObjectURL(this.response);e.src=t},n.open("GET",this.img,!0),n.responseType="blob",n.send()}else e.src=this.img},startMove:function(t){if(t.preventDefault(),this.move&&!this.crop){if(!this.canMove)return!1;this.moveX=("clientX"in t?t.clientX:t.touches[0].clientX)-this.x,this.moveY=("clientY"in t?t.clientY:t.touches[0].clientY)-this.y,t.touches?(window.addEventListener("touchmove",this.moveImg),window.addEventListener("touchend",this.leaveImg),2==t.touches.length&&(this.touches=t.touches,window.addEventListener("touchmove",this.touchScale),window.addEventListener("touchend",this.cancelTouchScale))):(window.addEventListener("mousemove",this.moveImg),window.addEventListener("mouseup",this.leaveImg)),this.$emit("imgMoving",{moving:!0,axis:this.getImgAxis()}),this.$emit("img-moving",{moving:!0,axis:this.getImgAxis()})}else this.cropping=!0,window.addEventListener("mousemove",this.createCrop),window.addEventListener("mouseup",this.endCrop),window.addEventListener("touchmove",this.createCrop),window.addEventListener("touchend",this.endCrop),this.cropOffsertX=t.offsetX?t.offsetX:t.touches[0].pageX-this.$refs.cropper.offsetLeft,this.cropOffsertY=t.offsetY?t.offsetY:t.touches[0].pageY-this.$refs.cropper.offsetTop,this.cropX="clientX"in t?t.clientX:t.touches[0].clientX,this.cropY="clientY"in t?t.clientY:t.touches[0].clientY,this.cropChangeX=this.cropOffsertX,this.cropChangeY=this.cropOffsertY,this.cropW=0,this.cropH=0},touchScale:function(t){var e=this;t.preventDefault();var n=this.scale,i=this.touches[0].clientX,o=this.touches[0].clientY,a=t.touches[0].clientX,r=t.touches[0].clientY,s=this.touches[1].clientX,l=this.touches[1].clientY,c=t.touches[1].clientX,u=t.touches[1].clientY,d=Math.sqrt(Math.pow(i-s,2)+Math.pow(o-l,2)),p=Math.sqrt(Math.pow(a-c,2)+Math.pow(r-u,2))-d,h=1,f=(h=(h=h/this.trueWidth>h/this.trueHeight?h/this.trueHeight:h/this.trueWidth)>.1?.1:h)*p;if(!this.touchNow){if(this.touchNow=!0,p>0?n+=Math.abs(f):p<0&&n>Math.abs(f)&&(n-=Math.abs(f)),this.touches=t.touches,setTimeout((function(){e.touchNow=!1}),8),!this.checkoutImgAxis(this.x,this.y,n))return!1;this.scale=n}},cancelTouchScale:function(t){window.removeEventListener("touchmove",this.touchScale)},moveImg:function(t){var e=this;if(t.preventDefault(),t.touches&&2===t.touches.length)return this.touches=t.touches,window.addEventListener("touchmove",this.touchScale),window.addEventListener("touchend",this.cancelTouchScale),window.removeEventListener("touchmove",this.moveImg),!1;var n,i,o="clientX"in t?t.clientX:t.touches[0].clientX,a="clientY"in t?t.clientY:t.touches[0].clientY;n=o-this.moveX,i=a-this.moveY,this.$nextTick((function(){if(e.centerBox){var t,o,a,r,s=e.getImgAxis(n,i,e.scale),l=e.getCropAxis(),c=e.trueHeight*e.scale,u=e.trueWidth*e.scale;switch(e.rotate){case 1:case-1:case 3:case-3:t=e.cropOffsertX-e.trueWidth*(1-e.scale)/2+(c-u)/2,o=e.cropOffsertY-e.trueHeight*(1-e.scale)/2+(u-c)/2,a=t-c+e.cropW,r=o-u+e.cropH;break;default:t=e.cropOffsertX-e.trueWidth*(1-e.scale)/2,o=e.cropOffsertY-e.trueHeight*(1-e.scale)/2,a=t-u+e.cropW,r=o-c+e.cropH}s.x1>=l.x1&&(n=t),s.y1>=l.y1&&(i=o),s.x2<=l.x2&&(n=a),s.y2<=l.y2&&(i=r)}e.x=n,e.y=i,e.$emit("imgMoving",{moving:!0,axis:e.getImgAxis()}),e.$emit("img-moving",{moving:!0,axis:e.getImgAxis()})}))},leaveImg:function(t){window.removeEventListener("mousemove",this.moveImg),window.removeEventListener("touchmove",this.moveImg),window.removeEventListener("mouseup",this.leaveImg),window.removeEventListener("touchend",this.leaveImg),this.$emit("imgMoving",{moving:!1,axis:this.getImgAxis()}),this.$emit("img-moving",{moving:!1,axis:this.getImgAxis()})},scaleImg:function(){this.canScale&&window.addEventListener(this.support,this.changeSize,this.passive)},cancelScale:function(){this.canScale&&window.removeEventListener(this.support,this.changeSize)},changeSize:function(t){var e=this;t.preventDefault();var n=this.scale,i=t.deltaY||t.wheelDelta;i=navigator.userAgent.indexOf("Firefox")>0?30*i:i,this.isIE&&(i=-i);var o=this.coe,a=(o=o/this.trueWidth>o/this.trueHeight?o/this.trueHeight:o/this.trueWidth)*i;a<0?n+=Math.abs(a):n>Math.abs(a)&&(n-=Math.abs(a));var r=a<0?"add":"reduce";if(r!==this.coeStatus&&(this.coeStatus=r,this.coe=.2),this.scaling||(this.scalingSet=setTimeout((function(){e.scaling=!1,e.coe=e.coe+=.01}),50)),this.scaling=!0,!this.checkoutImgAxis(this.x,this.y,n))return!1;this.scale=n},changeScale:function(t){var e=this.scale;t=t||1;var n=20;if((t*=n=n/this.trueWidth>n/this.trueHeight?n/this.trueHeight:n/this.trueWidth)>0?e+=Math.abs(t):e>Math.abs(t)&&(e-=Math.abs(t)),!this.checkoutImgAxis(this.x,this.y,e))return!1;this.scale=e},createCrop:function(t){var e=this;t.preventDefault();var n="clientX"in t?t.clientX:t.touches?t.touches[0].clientX:0,i="clientY"in t?t.clientY:t.touches?t.touches[0].clientY:0;this.$nextTick((function(){var t=n-e.cropX,o=i-e.cropY;if(t>0?(e.cropW=t+e.cropChangeX>e.w?e.w-e.cropChangeX:t,e.cropOffsertX=e.cropChangeX):(e.cropW=e.w-e.cropChangeX+Math.abs(t)>e.w?e.cropChangeX:Math.abs(t),e.cropOffsertX=e.cropChangeX+t>0?e.cropChangeX+t:0),e.fixed){var a=e.cropW/e.fixedNumber[0]*e.fixedNumber[1];a+e.cropOffsertY>e.h?(e.cropH=e.h-e.cropOffsertY,e.cropW=e.cropH/e.fixedNumber[1]*e.fixedNumber[0],e.cropOffsertX=t>0?e.cropChangeX:e.cropChangeX-e.cropW):e.cropH=a,e.cropOffsertY=e.cropOffsertY}else o>0?(e.cropH=o+e.cropChangeY>e.h?e.h-e.cropChangeY:o,e.cropOffsertY=e.cropChangeY):(e.cropH=e.h-e.cropChangeY+Math.abs(o)>e.h?e.cropChangeY:Math.abs(o),e.cropOffsertY=e.cropChangeY+o>0?e.cropChangeY+o:0)}))},changeCropSize:function(t,e,n,i,o){t.preventDefault(),window.addEventListener("mousemove",this.changeCropNow),window.addEventListener("mouseup",this.changeCropEnd),window.addEventListener("touchmove",this.changeCropNow),window.addEventListener("touchend",this.changeCropEnd),this.canChangeX=e,this.canChangeY=n,this.changeCropTypeX=i,this.changeCropTypeY=o,this.cropX="clientX"in t?t.clientX:t.touches[0].clientX,this.cropY="clientY"in t?t.clientY:t.touches[0].clientY,this.cropOldW=this.cropW,this.cropOldH=this.cropH,this.cropChangeX=this.cropOffsertX,this.cropChangeY=this.cropOffsertY,this.fixed&&this.canChangeX&&this.canChangeY&&(this.canChangeY=0),this.$emit("change-crop-size",{width:this.cropW,height:this.cropH})},changeCropNow:function(t){var e=this;t.preventDefault();var n="clientX"in t?t.clientX:t.touches?t.touches[0].clientX:0,i="clientY"in t?t.clientY:t.touches?t.touches[0].clientY:0,o=this.w,a=this.h,r=0,s=0;if(this.centerBox){var l=this.getImgAxis(),c=l.x2,u=l.y2;r=l.x1>0?l.x1:0,s=l.y1>0?l.y1:0,o>c&&(o=c),a>u&&(a=u)}this.$nextTick((function(){var t=n-e.cropX,l=i-e.cropY;if(e.canChangeX&&(1===e.changeCropTypeX?e.cropOldW-t>0?(e.cropW=o-e.cropChangeX-t<=o-r?e.cropOldW-t:e.cropOldW+e.cropChangeX-r,e.cropOffsertX=o-e.cropChangeX-t<=o-r?e.cropChangeX+t:r):(e.cropW=Math.abs(t)+e.cropChangeX<=o?Math.abs(t)-e.cropOldW:o-e.cropOldW-e.cropChangeX,e.cropOffsertX=e.cropChangeX+e.cropOldW):2===e.changeCropTypeX&&(e.cropOldW+t>0?(e.cropW=e.cropOldW+t+e.cropOffsertX<=o?e.cropOldW+t:o-e.cropOffsertX,e.cropOffsertX=e.cropChangeX):(e.cropW=o-e.cropChangeX+Math.abs(t+e.cropOldW)<=o-r?Math.abs(t+e.cropOldW):e.cropChangeX-r,e.cropOffsertX=o-e.cropChangeX+Math.abs(t+e.cropOldW)<=o-r?e.cropChangeX-Math.abs(t+e.cropOldW):r))),e.canChangeY&&(1===e.changeCropTypeY?e.cropOldH-l>0?(e.cropH=a-e.cropChangeY-l<=a-s?e.cropOldH-l:e.cropOldH+e.cropChangeY-s,e.cropOffsertY=a-e.cropChangeY-l<=a-s?e.cropChangeY+l:s):(e.cropH=Math.abs(l)+e.cropChangeY<=a?Math.abs(l)-e.cropOldH:a-e.cropOldH-e.cropChangeY,e.cropOffsertY=e.cropChangeY+e.cropOldH):2===e.changeCropTypeY&&(e.cropOldH+l>0?(e.cropH=e.cropOldH+l+e.cropOffsertY<=a?e.cropOldH+l:a-e.cropOffsertY,e.cropOffsertY=e.cropChangeY):(e.cropH=a-e.cropChangeY+Math.abs(l+e.cropOldH)<=a-s?Math.abs(l+e.cropOldH):e.cropChangeY-s,e.cropOffsertY=a-e.cropChangeY+Math.abs(l+e.cropOldH)<=a-s?e.cropChangeY-Math.abs(l+e.cropOldH):s))),e.canChangeX&&e.fixed){var c=e.cropW/e.fixedNumber[0]*e.fixedNumber[1];c+e.cropOffsertY>a?(e.cropH=a-e.cropOffsertY,e.cropW=e.cropH/e.fixedNumber[1]*e.fixedNumber[0]):e.cropH=c}if(e.canChangeY&&e.fixed){var u=e.cropH/e.fixedNumber[1]*e.fixedNumber[0];u+e.cropOffsertX>o?(e.cropW=o-e.cropOffsertX,e.cropH=e.cropW/e.fixedNumber[0]*e.fixedNumber[1]):e.cropW=u}e.$emit("crop-sizing",{cropW:e.cropW,cropH:e.cropH})}))},checkCropLimitSize:function(){this.cropW,this.cropH;var t=this.limitMinSize,e=new Array;return e=Array.isArray[t]?t:[t,t],[parseFloat(e[0]),parseFloat(e[1])]},changeCropEnd:function(t){window.removeEventListener("mousemove",this.changeCropNow),window.removeEventListener("mouseup",this.changeCropEnd),window.removeEventListener("touchmove",this.changeCropNow),window.removeEventListener("touchend",this.changeCropEnd)},endCrop:function(){0===this.cropW&&0===this.cropH&&(this.cropping=!1),window.removeEventListener("mousemove",this.createCrop),window.removeEventListener("mouseup",this.endCrop),window.removeEventListener("touchmove",this.createCrop),window.removeEventListener("touchend",this.endCrop)},startCrop:function(){this.crop=!0},stopCrop:function(){this.crop=!1},clearCrop:function(){this.cropping=!1,this.cropW=0,this.cropH=0},cropMove:function(t){if(t.preventDefault(),!this.canMoveBox)return this.crop=!1,this.startMove(t),!1;if(t.touches&&2===t.touches.length)return this.crop=!1,this.startMove(t),this.leaveCrop(),!1;window.addEventListener("mousemove",this.moveCrop),window.addEventListener("mouseup",this.leaveCrop),window.addEventListener("touchmove",this.moveCrop),window.addEventListener("touchend",this.leaveCrop);var e,n,i="clientX"in t?t.clientX:t.touches[0].clientX,o="clientY"in t?t.clientY:t.touches[0].clientY;e=i-this.cropOffsertX,n=o-this.cropOffsertY,this.cropX=e,this.cropY=n,this.$emit("cropMoving",{moving:!0,axis:this.getCropAxis()}),this.$emit("crop-moving",{moving:!0,axis:this.getCropAxis()})},moveCrop:function(t,e){var n=this,i=0,o=0;t&&(t.preventDefault(),i="clientX"in t?t.clientX:t.touches[0].clientX,o="clientY"in t?t.clientY:t.touches[0].clientY),this.$nextTick((function(){var t,a,r=i-n.cropX,s=o-n.cropY;if(e&&(r=n.cropOffsertX,s=n.cropOffsertY),t=r<=0?0:r+n.cropW>n.w?n.w-n.cropW:r,a=s<=0?0:s+n.cropH>n.h?n.h-n.cropH:s,n.centerBox){var l=n.getImgAxis();t<=l.x1&&(t=l.x1),t+n.cropW>l.x2&&(t=l.x2-n.cropW),a<=l.y1&&(a=l.y1),a+n.cropH>l.y2&&(a=l.y2-n.cropH)}n.cropOffsertX=t,n.cropOffsertY=a,n.$emit("cropMoving",{moving:!0,axis:n.getCropAxis()}),n.$emit("crop-moving",{moving:!0,axis:n.getCropAxis()})}))},getImgAxis:function(t,e,n){t=t||this.x,e=e||this.y,n=n||this.scale;var i={x1:0,x2:0,y1:0,y2:0},o=this.trueWidth*n,a=this.trueHeight*n;switch(this.rotate){case 0:i.x1=t+this.trueWidth*(1-n)/2,i.x2=i.x1+this.trueWidth*n,i.y1=e+this.trueHeight*(1-n)/2,i.y2=i.y1+this.trueHeight*n;break;case 1:case-1:case 3:case-3:i.x1=t+this.trueWidth*(1-n)/2+(o-a)/2,i.x2=i.x1+this.trueHeight*n,i.y1=e+this.trueHeight*(1-n)/2+(a-o)/2,i.y2=i.y1+this.trueWidth*n;break;default:i.x1=t+this.trueWidth*(1-n)/2,i.x2=i.x1+this.trueWidth*n,i.y1=e+this.trueHeight*(1-n)/2,i.y2=i.y1+this.trueHeight*n}return i},getCropAxis:function(){var t={x1:0,x2:0,y1:0,y2:0};return t.x1=this.cropOffsertX,t.x2=t.x1+this.cropW,t.y1=this.cropOffsertY,t.y2=t.y1+this.cropH,t},leaveCrop:function(t){window.removeEventListener("mousemove",this.moveCrop),window.removeEventListener("mouseup",this.leaveCrop),window.removeEventListener("touchmove",this.moveCrop),window.removeEventListener("touchend",this.leaveCrop),this.$emit("cropMoving",{moving:!1,axis:this.getCropAxis()}),this.$emit("crop-moving",{moving:!1,axis:this.getCropAxis()})},getCropChecked:function(t){var e=this,n=document.createElement("canvas"),i=new Image,o=this.rotate,a=this.trueWidth,r=this.trueHeight,s=this.cropOffsertX,l=this.cropOffsertY;function c(t,e){n.width=Math.round(t),n.height=Math.round(e)}i.onload=function(){if(0!==e.cropW){var u=n.getContext("2d"),d=1;e.high&!e.full&&(d=window.devicePixelRatio),1!==e.enlarge&!e.full&&(d=Math.abs(Number(e.enlarge)));var p=e.cropW*d,h=e.cropH*d,f=a*e.scale*d,m=r*e.scale*d,v=(e.x-s+e.trueWidth*(1-e.scale)/2)*d,b=(e.y-l+e.trueHeight*(1-e.scale)/2)*d;switch(c(p,h),u.save(),o){case 0:e.full?(c(p/e.scale,h/e.scale),u.drawImage(i,v/e.scale,b/e.scale,f/e.scale,m/e.scale)):u.drawImage(i,v,b,f,m);break;case 1:case-3:e.full?(c(p/e.scale,h/e.scale),v=v/e.scale+(f/e.scale-m/e.scale)/2,b=b/e.scale+(m/e.scale-f/e.scale)/2,u.rotate(90*o*Math.PI/180),u.drawImage(i,b,-v-m/e.scale,f/e.scale,m/e.scale)):(v+=(f-m)/2,b+=(m-f)/2,u.rotate(90*o*Math.PI/180),u.drawImage(i,b,-v-m,f,m));break;case 2:case-2:e.full?(c(p/e.scale,h/e.scale),u.rotate(90*o*Math.PI/180),v/=e.scale,b/=e.scale,u.drawImage(i,-v-f/e.scale,-b-m/e.scale,f/e.scale,m/e.scale)):(u.rotate(90*o*Math.PI/180),u.drawImage(i,-v-f,-b-m,f,m));break;case 3:case-1:e.full?(c(p/e.scale,h/e.scale),v=v/e.scale+(f/e.scale-m/e.scale)/2,b=b/e.scale+(m/e.scale-f/e.scale)/2,u.rotate(90*o*Math.PI/180),u.drawImage(i,-b-f/e.scale,v,f/e.scale,m/e.scale)):(v+=(f-m)/2,b+=(m-f)/2,u.rotate(90*o*Math.PI/180),u.drawImage(i,-b-f,v,f,m));break;default:e.full?(c(p/e.scale,h/e.scale),u.drawImage(i,v/e.scale,b/e.scale,f/e.scale,m/e.scale)):u.drawImage(i,v,b,f,m)}u.restore()}else{var g=a*e.scale,y=r*e.scale,_=n.getContext("2d");switch(_.save(),o){case 0:c(g,y),_.drawImage(i,0,0,g,y);break;case 1:case-3:c(y,g),_.rotate(90*o*Math.PI/180),_.drawImage(i,0,-y,g,y);break;case 2:case-2:c(g,y),_.rotate(90*o*Math.PI/180),_.drawImage(i,-g,-y,g,y);break;case 3:case-1:c(y,g),_.rotate(90*o*Math.PI/180),_.drawImage(i,-g,0,g,y);break;default:c(g,y),_.drawImage(i,0,0,g,y)}_.restore()}t(n)},"data"!==this.img.substr(0,4)&&(i.crossOrigin="Anonymous"),i.src=this.imgs},getCropData:function(t){var e=this;this.getCropChecked((function(n){t(n.toDataURL("image/"+e.outputType,e.outputSize))}))},getCropBlob:function(t){var e=this;this.getCropChecked((function(n){n.toBlob((function(e){return t(e)}),"image/"+e.outputType,e.outputSize)}))},showPreview:function(){var t=this;if(!this.isCanShow)return!1;this.isCanShow=!1,setTimeout((function(){t.isCanShow=!0}),16);var e=this.cropW,n=this.cropH,i=this.scale,o={};o.div={width:"".concat(e,"px"),height:"".concat(n,"px")};var a=(this.x-this.cropOffsertX)/i,r=(this.y-this.cropOffsertY)/i;o.w=e,o.h=n,o.url=this.imgs,o.img={width:"".concat(this.trueWidth,"px"),height:"".concat(this.trueHeight,"px"),transform:"scale(".concat(i,")translate3d(").concat(a,"px, ").concat(r,"px, ").concat(0,"px)rotateZ(").concat(90*this.rotate,"deg)")},o.html='\n      <div class="show-preview" style="width: '.concat(o.w,"px; height: ").concat(o.h,'px,; overflow: hidden">\n        <div style="width: ').concat(e,"px; height: ").concat(n,'px">\n          <img src=').concat(o.url,' style="width: ').concat(this.trueWidth,"px; height: ").concat(this.trueHeight,"px; transform:\n          scale(").concat(i,")translate3d(").concat(a,"px, ").concat(r,"px, ").concat(0,"px)rotateZ(").concat(90*this.rotate,'deg)">\n        </div>\n      </div>'),this.$emit("realTime",o),this.$emit("real-time",o)},reload:function(){var t=this,e=new Image;e.onload=function(){t.w=parseFloat(window.getComputedStyle(t.$refs.cropper).width),t.h=parseFloat(window.getComputedStyle(t.$refs.cropper).height),t.trueWidth=e.width,t.trueHeight=e.height,t.original?t.scale=1:t.scale=t.checkedMode(),t.$nextTick((function(){t.x=-(t.trueWidth-t.trueWidth*t.scale)/2+(t.w-t.trueWidth*t.scale)/2,t.y=-(t.trueHeight-t.trueHeight*t.scale)/2+(t.h-t.trueHeight*t.scale)/2,t.loading=!1,t.autoCrop&&t.goAutoCrop(),t.$emit("img-load","success"),t.$emit("imgLoad","success"),setTimeout((function(){t.showPreview()}),20)}))},e.onerror=function(){t.$emit("imgLoad","error"),t.$emit("img-load","error")},e.src=this.imgs},checkedMode:function(){var t=1,e=(this.trueWidth,this.trueHeight),n=this.mode.split(" ");switch(n[0]){case"contain":this.trueWidth>this.w&&(t=this.w/this.trueWidth),this.trueHeight*t>this.h&&(t=this.h/this.trueHeight);break;case"cover":(e*=t=this.w/this.trueWidth)<this.h&&(t=(e=this.h)/this.trueHeight);break;default:try{var i=n[0];if(-1!==i.search("px")){i=i.replace("px","");var o=parseFloat(i)/this.trueWidth,a=1,r=n[1];-1!==r.search("px")&&(r=r.replace("px",""),a=(e=parseFloat(r))/this.trueHeight),t=Math.min(o,a)}if(-1!==i.search("%")&&(i=i.replace("%",""),t=parseFloat(i)/100*this.w/this.trueWidth),2===n.length&&"auto"===i){var s=n[1];-1!==s.search("px")&&(s=s.replace("px",""),t=(e=parseFloat(s))/this.trueHeight),-1!==s.search("%")&&(s=s.replace("%",""),t=(e=parseFloat(s)/100*this.h)/this.trueHeight)}}catch(e){t=1}}return t},goAutoCrop:function(t,e){if(""!==this.imgs&&null!==this.imgs){this.clearCrop(),this.cropping=!0;var n=this.w,i=this.h;if(this.centerBox){var o=Math.abs(this.rotate)%2>0,a=(o?this.trueHeight:this.trueWidth)*this.scale,r=(o?this.trueWidth:this.trueHeight)*this.scale;n=a<n?a:n,i=r<i?r:i}var s=t||parseFloat(this.autoCropWidth),l=e||parseFloat(this.autoCropHeight);0!==s&&0!==l||(s=.8*n,l=.8*i),s=s>n?n:s,l=l>i?i:l,this.fixed&&(l=s/this.fixedNumber[0]*this.fixedNumber[1]),l>this.h&&(s=(l=this.h)/this.fixedNumber[1]*this.fixedNumber[0]),this.changeCrop(s,l)}},changeCrop:function(t,e){var n=this;if(this.centerBox){var i=this.getImgAxis();t>i.x2-i.x1&&(e=(t=i.x2-i.x1)/this.fixedNumber[0]*this.fixedNumber[1]),e>i.y2-i.y1&&(t=(e=i.y2-i.y1)/this.fixedNumber[1]*this.fixedNumber[0])}this.cropW=t,this.cropH=e,this.checkCropLimitSize(),this.$nextTick((function(){n.cropOffsertX=(n.w-n.cropW)/2,n.cropOffsertY=(n.h-n.cropH)/2,n.centerBox&&n.moveCrop(null,!0)}))},refresh:function(){var t=this;this.img,this.imgs="",this.scale=1,this.crop=!1,this.rotate=0,this.w=0,this.h=0,this.trueWidth=0,this.trueHeight=0,this.clearCrop(),this.$nextTick((function(){t.checkedImg()}))},rotateLeft:function(){this.rotate=this.rotate<=-3?0:this.rotate-1},rotateRight:function(){this.rotate=this.rotate>=3?0:this.rotate+1},rotateClear:function(){this.rotate=0},checkoutImgAxis:function(t,e,n){t=t||this.x,e=e||this.y,n=n||this.scale;var i=!0;if(this.centerBox){var o=this.getImgAxis(t,e,n),a=this.getCropAxis();o.x1>=a.x1&&(i=!1),o.x2<=a.x2&&(i=!1),o.y1>=a.y1&&(i=!1),o.y2<=a.y2&&(i=!1)}return i}},mounted:function(){this.support="onwheel"in document.createElement("div")?"wheel":void 0!==document.onmousewheel?"mousewheel":"DOMMouseScroll";var t=this,e=navigator.userAgent;this.isIOS=!!e.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),HTMLCanvasElement.prototype.toBlob||Object.defineProperty(HTMLCanvasElement.prototype,"toBlob",{value:function(e,n,i){for(var o=atob(this.toDataURL(n,i).split(",")[1]),a=o.length,r=new Uint8Array(a),s=0;s<a;s++)r[s]=o.charCodeAt(s);e(new Blob([r],{type:t.type||"image/png"}))}}),this.showPreview(),this.checkedImg()},destroyed:function(){window.removeEventListener("mousemove",this.moveCrop),window.removeEventListener("mouseup",this.leaveCrop),window.removeEventListener("touchmove",this.moveCrop),window.removeEventListener("touchend",this.leaveCrop),this.cancelScale()}};n(1);var s=function(t,e,n,i,o,a,r,s){var l,c="function"==typeof t?t.options:t;if(e&&(c.render=e,c.staticRenderFns=[],c._compiled=!0),c._scopeId="data-v-"+a,l)if(c.functional){c._injectStyles=l;var u=c.render;c.render=function(t,e){return l.call(e),u(t,e)}}else{var d=c.beforeCreate;c.beforeCreate=d?[].concat(d,l):[l]}return{exports:t,options:c}}(r,i,0,0,0,"6dae58fd");s.options.__file="src/vue-cropper.vue";var l=s.exports;n.d(e,"VueCropper",(function(){return l}));var c=function(t){t.component("VueCropper",l)};"undefined"!=typeof window&&window.Vue&&c(window.Vue),e.default={version:"0.5.8",install:c,VueCropper:l,vueCropper:l}}])},function(t,e,n){"use strict";var i={inject:["formSafe"],mixins:[n(4).a],computed:{menuSpan:function(){return this.formSafe.parentOption.menuSpan||24},styleName:function(){return 24!==this.menuSpan?{padding:0}:{}}}},o=n(0),a=Object(o.a)(i,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.vaildData(t.formSafe.parentOption.menuBtn,!0)?n("el-col",{class:[t.formSafe.b("menu",[t.formSafe.menuPosition]),"no-print"],style:t.styleName,attrs:{span:t.menuSpan,md:t.menuSpan}},[n("el-form-item",{attrs:{"label-width":"0px"}},[t.formSafe.isMock?n("el-button",{attrs:{type:"primary",size:t.formSafe.controlSize,icon:"el-icon-edit-outline",loading:t.formSafe.allDisabled},on:{click:t.formSafe.handleMock}},[t._v(t._s(t.vaildData(t.formSafe.parentOption.mockText,t.t("form.mockBtn"))))]):t._e(),t._v(" "),t.formSafe.isPrint?n("el-button",{attrs:{type:"primary",size:t.formSafe.controlSize,icon:"el-icon-printer",loading:t.formSafe.allDisabled},on:{click:t.formSafe.handlePrint}},[t._v(t._s(t.vaildData(t.formSafe.parentOption.printText,t.t("form.printBtn"))))]):t._e(),t._v(" "),t.vaildData(t.formSafe.parentOption.submitBtn,!0)?n("el-button",{attrs:{type:"primary",size:t.formSafe.controlSize,icon:t.formSafe.parentOption.submitIcon||"el-icon-check",loading:t.formSafe.allDisabled},on:{click:t.formSafe.submit}},[t._v(t._s(t.vaildData(t.formSafe.parentOption.submitText,t.t("form.submitBtn"))))]):t._e(),t._v(" "),t.vaildData(t.formSafe.parentOption.emptyBtn,!0)?n("el-button",{attrs:{icon:t.formSafe.parentOption.emptyIcon||"el-icon-delete",size:t.formSafe.controlSize,loading:t.formSafe.allDisabled},on:{click:t.formSafe.resetForm}},[t._v(t._s(t.vaildData(t.formSafe.parentOption.emptyText,t.t("form.emptyBtn"))))]):t._e(),t._v(" "),t._t("menuForm",null,{disabled:t.formSafe.allDisabled,size:t.formSafe.controlSize})],2)],1):t._e()}),[],!1,null,null,null);e.a=a.exports},function(t,e,n){t.exports=n(25)},function(t,e,n){"use strict";n.r(e);var i=n(1);function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}Object.prototype.hasOwnProperty;var a,r=Object(i.a)({name:"affix",props:{id:String,offsetTop:{type:Number,default:0},offsetBottom:{type:Number}},data:function(){return{affix:!1,styles:{},slot:!1,slotStyle:{}}},computed:{parent:function(){return this.validatenull(this.id)?window:(t=this.id,("object"===("undefined"==typeof HTMLElement?"undefined":o(HTMLElement))?t instanceof HTMLElement:t&&"object"===o(t)&&1===t.nodeType&&"string"==typeof t.nodeName)?this.id:window.document.getElementById(this.id));var t},offsetType:function(){var t="top";return this.offsetBottom>=0&&(t="bottom"),t}},mounted:function(){this.parent.addEventListener("scroll",this.handleScroll,!1),this.parent.addEventListener("resize",this.handleScroll,!1)},beforeDestroy:function(){this.parent.removeEventListener("scroll",this.handleScroll,!1),this.parent.removeEventListener("resize",this.handleScroll,!1)},methods:{getScroll:function(t,e){var n=e?"scrollTop":"scrollLeft",i=t[e?"pageYOffset":"pageXOffset"];return"number"!=typeof i&&(i=window.document.documentElement[n]),i},getOffset:function(t){var e=t.getBoundingClientRect(),n=this.getScroll(this.parent,!0),i=this.getScroll(this.parent),o=window.document.body,a=o.clientTop||0,r=o.clientLeft||0;return{top:e.top+n-a,left:e.left+i-r}},handleScroll:function(){var t=this.affix,e=this.getScroll(this.parent,!0),n=this.getOffset(this.$el),i=this.parent.innerHeight,o=this.$el.getElementsByTagName("div")[0].offsetHeight;n.top-this.offsetTop<e&&"top"==this.offsetType&&!t?(this.affix=!0,this.slotStyle={width:this.$refs.point.clientWidth+"px",height:this.$refs.point.clientHeight+"px"},this.slot=!0,this.styles={top:"".concat(this.offsetTop,"px"),left:"".concat(n.left,"px"),width:"".concat(this.$el.offsetWidth,"px")},this.$emit("on-change",!0)):n.top-this.offsetTop>e&&"top"==this.offsetType&&t&&(this.slot=!1,this.slotStyle={},this.affix=!1,this.styles=null,this.$emit("on-change",!1)),n.top+this.offsetBottom+o>e+i&&"bottom"==this.offsetType&&!t?(this.affix=!0,this.styles={bottom:"".concat(this.offsetBottom,"px"),left:"".concat(n.left,"px"),width:"".concat(this.$el.offsetWidth,"px")},this.$emit("on-change",!0)):n.top+this.offsetBottom+o<e+i&&"bottom"==this.offsetType&&t&&(this.affix=!1,this.styles=null,this.$emit("on-change",!1))}}}),s=n(0),l=Object(s.a)(r,(function(){var t=this.$createElement,e=this._self._c||t;return e("div",[e("div",{ref:"point",class:{"avue-affix":this.affix},style:this.styles},[this._t("default")],2),this._v(" "),e("div",{directives:[{name:"show",rawName:"v-show",value:this.slot,expression:"slot"}],style:this.slotStyle})])}),[],!1,null,null,null).exports,c=n(18),u=n.n(c),d=Object(i.a)({name:"count-up",props:{animation:{type:Boolean,default:!0},start:{type:Number,required:!1,default:0},end:{required:!0},decimals:{type:Number,required:!1,default:0},duration:{type:Number,required:!1,default:2},options:{type:Object,required:!1,default:function(){return{}}},callback:{type:Function,required:!1,default:function(){}}},data:function(){return{c:null}},watch:{decimals:function(){this.c&&this.c.update&&this.c.update(this.end)},end:function(t){this.c&&this.c.update&&this.c.update(t)}},mounted:function(){this.animation&&this.init()},methods:{init:function(){var t=this;this.c||(this.c=new u.a(this.$el,this.start,this.end,this.decimals,this.duration,this.options),this.c.start((function(){t.callback(t.c)})))},destroy:function(){this.c=null}},beforeDestroy:function(){this.destroy()},start:function(t){var e=this;this.c&&this.c.start&&this.c.start((function(){t&&t(e.c)}))},pauseResume:function(){this.c&&this.c.pauseResume&&this.c.pauseResume()},reset:function(){this.c&&this.c.reset&&this.c.reset()},update:function(t){this.c&&this.c.update&&this.c.update(t)}}),p=Object(s.a)(d,(function(){var t=this.$createElement;return(this._self._c||t)("span",[this._v(this._s(this.end))])}),[],!1,null,null,null).exports;function h(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var f=Object(i.a)({name:"avatar",props:(a={src:String,shape:{validator:function(t){return["circle","square"].includes(t)},default:"circle"}},h(a,"shape",String),h(a,"size",{validator:function(t){return"number"==typeof t||["small","large","default"].includes(t)},default:"default"}),h(a,"icon",String),a),data:function(){return{scale:1}},updated:function(){var t=this;this.$nextTick((function(){t.setScale()}))},computed:{sizeChildrenStyle:function(){var t={},e=(this.$refs.avatarChildren,"scale(".concat(this.scale,") translateX(-50%)"));return t={msTransform:e,WebkitTransform:e,transform:e},"number"==typeof size&&(t.lineHeight="".concat(this.size,"px")),t},sizeCls:function(){var t;return h(t={},"".concat("avue-avatar","--").concat(this.shape),this.shape),h(t,"".concat("avue-avatar","--lg"),"large"===this.size),h(t,"".concat("avue-avatar","--sm"),"small"===this.size),t},sizeStyle:function(){return"number"==typeof this.size?{width:"".concat(this.size,"px"),height:"".concat(this.size,"px"),lineHeight:"".concat(this.size,"px"),fontSize:this.icon?"".concat(this.size/2,"px"):"18px"}:{}}},mounted:function(){var t=this;this.$nextTick((function(){t.setScale()}))},methods:{setScale:function(){var t=this.$refs.avatarChildren;if(t){var e=t.offsetWidth,n=this.$el.getBoundingClientRect().width;this.scale=n-8<e?(n-8)/e:1}}}}),m=Object(s.a)(f,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",{class:[t.b(),t.sizeCls,t.b("icon")],style:t.sizeStyle},[t.src?n("img",{class:t.b("images"),attrs:{src:t.src,alt:""}}):t.icon?n("i",{class:t.icon}):n("span",{ref:"avatarChildren",class:t.b("string"),style:t.sizeChildrenStyle},[t._t("default")],2)])}),[],!1,null,null,null).exports,v={title:"title",meta:"meta",lead:"lead",body:"body"},b=Object(i.a)({name:"article",props:{data:{type:Object,default:function(){return{}}},props:{type:Object,default:function(){return v}}},computed:{titleKey:function(){return this.props.title||v.title},metaKey:function(){return this.props.meta||v.meta},leadKey:function(){return this.props.lead||v.lead},bodyKey:function(){return this.props.body||v.body},title:function(){return this.data[this.titleKey]},meta:function(){return this.data[this.metaKey]},lead:function(){return this.data[this.leadKey]},body:function(){return this.data[this.bodyKey]}},mounted:function(){}}),g=Object(s.a)(b,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b()},[n("div",{class:t.b("header")},[t.title?n("div",{class:t.b("title"),domProps:{textContent:t._s(t.title)}}):t._e(),t._v(" "),t.meta?n("small",{class:t.b("meta"),domProps:{textContent:t._s(t.meta)}}):t._e()]),t._v(" "),t.lead?n("div",{class:t.b("lead"),domProps:{textContent:t._s(t.lead)}}):t._e(),t._v(" "),t.body?n("div",{class:t.b("body"),domProps:{innerHTML:t._s(t.body)}}):t._e()])}),[],!1,null,null,null).exports,y=Object(i.a)({name:"carousel",data:function(){return{}},props:{option:{type:Object,default:function(){}}},computed:{data:function(){return this.option.data||[]}},created:function(){},mounted:function(){},watch:{},methods:{}}),_=Object(s.a)(y,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:[t.b(),{"avue-carousel--fullscreen":t.option.fullscreen}]},[n("el-carousel",{attrs:{type:t.option.type,height:t.option.height+"px",autoplay:t.option.autoplay,interval:t.option.interval,"indicator-position":"outside"}},t._l(t.data,(function(e,i){return n("el-carousel-item",{key:i},[n("div",{class:t.b("item")},[n("a",{attrs:{href:e.href?e.href:"javascript:void(0);",target:e.target}},[n("div",{class:t.b("img"),style:{backgroundImage:"url("+e.src+")"}}),t._v(" "),e.title?n("div",{class:t.b("title")},[t._v(t._s(e.title))]):t._e()])])])})),1)],1)}),[],!1,null,null,null).exports,x=n(6),w=function(){function t(t,e){var n=e.value;t.style.display=!1===n?"none":""}return{bind:function(e,n){t(e,n)},update:function(e,n){t(e,n)}}}(),O=n(13),C={menuWidth:220,menuFixed:"right",menuXsWidth:100,menuAlign:"center",menuHeaderAlign:"center",headerAlign:"left",cancelBtnIcon:"el-icon-circle-close",viewBtnIcon:"el-icon-view",editBtnIcon:"el-icon-edit",copyBtnIcon:"el-icon-document-add",addBtnIcon:"el-icon-plus",printBtnIcon:"el-icon-printer",excelBtnIcon:"el-icon-download",delBtnIcon:"el-icon-delete",searchBtnIcon:"el-icon-search",emptyBtnIcon:"el-icon-delete",saveBtnIcon:"el-icon-circle-plus-outline",updateBtnIcon:"el-icon-circle-check",columnBtnIcon:"el-icon-s-operation",filterBtnIcon:"el-icon-tickets",refreshBtnIcon:"el-icon-refresh",viewBtn:!1,editBtn:!0,copyBtn:!1,cancelBtn:!0,addBtn:!0,addRowBtn:!1,printBtn:!1,excelBtn:!1,delBtn:!0,cellBtn:!1,dateBtn:!1,updateBtn:!0,saveBtn:!0,refreshBtn:!0,columnBtn:!0,filterBtn:!1,queryBtn:!0,menuBtn:!1,searchBtn:!0,clearBtn:!0,selectClearBtn:!0,searchShow:!0,tip:!0,dialogWidth:"60%",dialogDrag:!1,formFullscreen:!1,pageBackground:!0,simplePage:!1,page:!0,menu:!0,indexLabel:"#",indexWidth:50,indexFixed:"left",selectionWidth:50,selectionFixed:"left",expandWidth:60,expandFixed:"left",filterMultiple:!0,calcHeight:300,title:"表格标题",width:"100%",searchGutter:20,searchLabelWidth:80,searchSpan:6,dropRowClass:".el-table__body-wrapper > table > tbody",dropColClass:".el-table__header-wrapper tr",ghostClass:"avue-crud__ghost"},k=Object(i.a)({name:"crud",inject:["crud"],props:{page:{type:Object,default:function(){return{}}}},data:function(){return{config:C,defaultPage:{total:0,pagerCount:7,currentPage:1,pageSize:10,pageSizes:[10,20,30,40,50,100],layout:"total, sizes, prev, pager, next, jumper",background:!0}}},created:function(){this.pageInit(),this.crud.$emit("on-load",this.defaultPage)},watch:{page:{handler:function(){this.pageInit()},deep:!0},pageFlag:function(){this.crud.getTableHeight()},"defaultPage.total":function(t){this.defaultPage.total===(this.defaultPage.currentPage-1)*this.defaultPage.pageSize&&0!=this.defaultPage.total&&(this.defaultPage.currentPage=this.defaultPage.currentPage-1,this.crud.$emit("on-load",this.defaultPage),this.crud.$emit("current-change",this.defaultPage.currentPage),this.updateValue())}},computed:{pageFlag:function(){return 0!=this.defaultPage.total}},methods:{pageInit:function(){this.defaultPage=Object.assign(this.defaultPage,this.page,{total:Number(this.page.total||this.defaultPage.total),pagerCount:Number(this.page.pagerCount||this.defaultPage.pagerCount),currentPage:Number(this.page.currentPage||this.defaultPage.currentPage),pageSize:Number(this.page.pageSize||this.defaultPage.pageSize)}),this.updateValue()},updateValue:function(){this.crud.$emit("update:page",this.defaultPage)},nextClick:function(t){this.crud.$emit("next-click",t)},prevClick:function(t){this.crud.$emit("prev-click",t)},sizeChange:function(t){this.defaultPage.currentPage=1,this.defaultPage.pageSize=t,this.updateValue(),this.crud.$emit("on-load",this.defaultPage),this.crud.$emit("size-change",t)},currentChange:function(t){this.updateValue(),this.crud.$emit("on-load",this.defaultPage),this.crud.$emit("current-change",t)}}}),S=Object(s.a)(k,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.pageFlag&&t.vaildData(t.crud.tableOption.page,!0)?n("el-card",{class:t.b("pagination"),attrs:{shadow:t.crud.isCard}},[t._t("page"),t._v(" "),n("el-pagination",{attrs:{small:t.crud.isMobile,disabled:t.defaultPage.disabled,"hide-on-single-page":t.vaildData(t.crud.tableOption.simplePage,t.config.simplePage),"pager-count":t.defaultPage.pagerCount,"current-page":t.defaultPage.currentPage,background:t.vaildData(t.defaultPage.background,t.config.pageBackground),"page-size":t.defaultPage.pageSize,"page-sizes":t.defaultPage.pageSizes,layout:t.defaultPage.layout,total:t.defaultPage.total},on:{"update:currentPage":function(e){return t.$set(t.defaultPage,"currentPage",e)},"update:current-page":function(e){return t.$set(t.defaultPage,"currentPage",e)},"size-change":t.sizeChange,"prev-click":t.prevClick,"next-click":t.nextClick,"current-change":t.currentChange}})],2):t._e()}),[],!1,null,null,null).exports,E=n(11),j=n(4),$=n(7),D=n(2),A=Object(i.a)({name:"crud__search",inject:["crud"],mixins:[j.a,E.a],data:function(){return{show:!1,searchIndex:2,searchShow:!0,searchForm:{}}},props:{search:Object},watch:{"crud.propOption":{handler:function(){this.dataFormat()},deep:!0},show:function(){this.crud.getTableHeight()},searchShow:function(){this.crud.getTableHeight()},search:{handler:function(){this.searchForm=Object.assign(this.searchForm,this.search)},immediate:!0,deep:!0}},created:function(){this.initFun(),this.dataFormat()},computed:{option:function(){var t=this,e=this.crud.option;this.searchIndex=e.searchIndex||2;var n,i;return n=e,(i=t.deepClone(n)).column=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],i=[],o=0;return(n=n.sort((function(t,e){return(e.searchOrder||0)-(t.searchOrder||0)}))).forEach((function(n){if(n.search){var a=o<t.searchIndex,r={};Object.keys(n).forEach((function(t){if(t.includes("search")){var e=t.replace("search","");if(0==e.length)return;e=e.replace(e[0],e[0].toLowerCase()),r[e]=n[t]}})),n=Object.assign(n,r,{type:Object($.g)(n),detail:!1,dicFlag:!!n.cascader||t.vaildData(n.dicFlag,!1),span:n.searchSpan||e.searchSpan||C.searchSpan,control:n.searchControl,gutter:n.searchGutter||e.searchGutter||C.searchGutter,labelWidth:n.searchLabelWidth||e.searchLabelWidth||C.searchLabelWidth,labelPosition:n.searchLabelPosition||e.searchLabelPosition,size:n.searchSize||e.searchSize,value:n.searchValue,rules:n.searchRules,row:n.searchRow,bind:n.searchBin,disabled:n.searchDisabled,readonly:n.searchReadonly,display:!t.isSearchIcon||!!t.show||a}),i.push(n),o+=1}})),i}(t.deepClone(t.crud.propOption)),i=Object.assign(i,{rowKey:e.searchRowKey||"null",tabs:!1,group:!1,printBtn:!1,mockBtn:!1,filterDic:e.searchFilterDic,filterNull:e.searchFilterNull,filterParam:e.searchFilterParam,enter:e.searchEnter,size:e.searchSize,submitText:e.searchBtnText||t.t("crud.searchBtn"),submitBtn:t.vaildData(e.searchBtn,C.searchSubBtn),submitIcon:t.crud.getBtnIcon("searchBtn"),emptyText:e.emptyBtnText||t.t("crud.emptyBtn"),emptyBtn:t.vaildData(e.emptyBtn,C.emptyBtn),emptyIcon:t.crud.getBtnIcon("emptyBtn"),menuSpan:t.show||!t.isSearchIcon||e.searchMenuSpan<6?e.searchMenuSpan:6,menuPosition:e.searchMenuPosition||"center",dicFlag:!1,dicData:t.crud.DIC})},isSearchIcon:function(){return this.vaildData(this.crud.option.searchIcon,this.$AVUE.searchIcon)&&this.searchLen>this.searchIndex},searchLen:function(){var t=0;return this.crud.propOption.forEach((function(e){e.search&&t++})),t},searchFlag:function(){return!!this.crud.$scopedSlots.search||0!==this.searchLen}},methods:{initFun:function(){var t=this;["searchReset","searchChange"].forEach((function(e){return t.crud[e]=t[e]}))},getSlotName:function(t){return t.replace("Search","")},handleChange:function(){this.crud.$emit("update:search",this.searchForm)},searchChange:function(t,e){this.crud.$emit("search-change",Object(D.i)(t),e)},resetChange:function(){this.crud.$emit("search-reset",this.searchForm)},searchReset:function(){this.$refs.form.resetForm()},handleSearchShow:function(){this.searchShow=!this.searchShow},dataFormat:function(){var t=this.crud.option;this.searchShow=this.vaildData(t.searchShow,C.searchShow)}}}),T=Object(s.a)(A,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-card",{directives:[{name:"show",rawName:"v-show",value:t.searchShow&&t.searchFlag,expression:"searchShow && searchFlag"}],class:t.b(),attrs:{shadow:t.crud.isCard}},[t._t("search",null,{row:t.searchForm,search:t.searchForm,size:t.crud.controlSize}),t._v(" "),t.searchShow?n("avue-form",{ref:"form",attrs:{option:t.option},on:{submit:t.searchChange,change:t.handleChange,"reset-change":t.resetChange},scopedSlots:t._u([{key:"menuForm",fn:function(e){return[t._t("searchMenu",null,null,Object.assign(e,{search:t.searchForm,row:t.searchForm})),t._v(" "),t.isSearchIcon?[!1===t.show?n("el-button",{attrs:{type:"text",icon:"el-icon-arrow-down"},on:{click:function(e){t.show=!0}}},[t._v(t._s(t.t("crud.open")))]):t._e(),t._v(" "),!0===t.show?n("el-button",{attrs:{type:"text",icon:"el-icon-arrow-up"},on:{click:function(e){t.show=!1}}},[t._v(t._s(t.t("crud.shrink")))]):t._e()]:t._e()]}},t._l(t.crud.searchSlot,(function(e){return{key:t.getSlotName(e),fn:function(n){return[t._t(e,null,null,Object.assign(n,{search:t.searchForm,row:t.searchForm}))]}}}))],null,!0),model:{value:t.searchForm,callback:function(e){t.searchForm=e},expression:"searchForm"}}):t._e()],2)}),[],!1,null,null,null).exports,P=n(17),B=n(3),M=n(9),L=n(14),I={name:"icon-temp",props:{small:Boolean,text:{type:String,default:""}}},N=Object(s.a)(I,(function(){var t=this.$createElement,e=this._self._c||t;return e("span",{staticClass:"avue-icon",class:{"avue-icon--small":this.small}},[this.text.includes("#")?e("svg",{attrs:{"aria-hidden":"true"}},[e("use",{attrs:{"xlink:href":this.text}})]):e("i",{class:this.text})])}),[],!1,null,null,null).exports;function z(t){return(z="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function F(t){return function(t){if(Array.isArray(t))return H(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(!t)return;if("string"==typeof t)return H(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return H(t,e)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function H(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n<e;n++)i[n]=t[n];return i}var K={},R={name:"column-slot",inject:["dynamic","crud"],components:{formTemp:L.a,iconTemp:N},props:{column:Object,columnOption:Array},created:function(){var t=this,e=["getColumnProp","handleFiltersMethod","handleFilters"];Object.keys(this.dynamic).forEach((function(n){e.includes(n)&&(t[n]=t.dynamic[n])}))},methods:{getIsVideo:function(t){return B.m.video.test(t)?"video":"img"},vaildLabel:function(t,e,n){if(t.rules&&e.$cellEdit)return n},columnChange:function(t,e,n){var i="".concat(n,"-").concat(e.prop);K[i]||(this.handleChange(e,t),"function"==typeof e.change&&1==e.cell&&e.change({row:t,column:e,index:n,value:t[e.prop]})),K[i]=!0,this.$nextTick((function(){return K[i]=!1}))},handleChange:function(t,e){var n=this;t.cascader&&this.$nextTick((function(){F(n.crud.propOption);var i=t.cascader;i.join(",");i.forEach((function(o){var a=o,r=e[t.prop],s=e.$index,l=n.findObject(n.columnOption,a);n.validatenull(l)||(n.validatenull(n.crud.cascaderDIC[s])&&n.$set(n.crud.cascaderDIC,s,{}),n.crud.formIndexList.includes(s)&&i.forEach((function(t){n.$set(n.crud.cascaderDIC[s],t.prop,[]),i.forEach((function(t){return e[t]=""}))})),n.validatenull(i)||n.validatenull(r)||n.validatenull(l)||Object(M.d)({column:l,value:r,form:e}).then((function(t){n.crud.formIndexList.includes(s)||n.crud.formIndexList.push(s);var i=t||[];n.$set(n.crud.cascaderDIC[s],a,i),n.validatenull(i[l.cascaderIndex])||n.validatenull(i)||n.validatenull(l.cascaderIndex)||(e[a]=i[l.cascaderIndex][(l.props||{}).value||B.e.value])})))}))}))},openImg:function(t,e){t=t.map((function(t){return{thumbUrl:t,url:t}})),this.$ImagePreview(t,e)},corArray:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:B.g;return this.validatenull(t)?[]:Array.isArray(t)?t:t.split(e)},handleDetail:function(t,e){var n=t[e.prop],i=e.parentProp?(this.crud.cascaderDIC[t.$index]||{})[e.prop]:this.crud.DIC[e.prop];return n=Object(P.a)(t,e,this.crud.tableOption,i),this.validatenull(i)||!0===this.crud.tableOption.filterDic||(t["$"+e.prop]=n),n},getImgList:function(t,e){var n=(e.propsHttp||{}).home||"",i=(e.props||{}).value||B.e.value,o=this.handleDetail(t,e);if(this.validatenull(o))return[];if("picture-img"==e.listType)return[n+o];var a=this.corArray(this.deepClone(o),e.separator);return a.forEach((function(t,e){a[e]=n+("object"===z(t)?t[i]:t)})),a}}},W=Object(s.a)(R,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.getColumnProp(t.column,"hide")?n("el-table-column",{key:t.column.prop,attrs:{prop:t.column.prop,label:t.column.label,"column-key":t.column.prop,"filter-placement":"bottom-end",filters:t.getColumnProp(t.column,"filters"),"filter-method":t.getColumnProp(t.column,"filterMethod")?t.handleFiltersMethod:void 0,"filter-multiple":t.vaildData(t.column.filterMultiple,!0),"show-overflow-tooltip":t.column.overHidden,"min-width":t.column.minWidth,sortable:t.getColumnProp(t.column,"sortable"),"render-header":t.column.renderHeader,align:t.column.align||t.crud.tableOption.align,"header-align":t.column.headerAlign||t.crud.tableOption.headerAlign,width:t.getColumnProp(t.column,"width"),fixed:t.getColumnProp(t.column,"fixed")},scopedSlots:t._u([{key:"header",fn:function(e){var i=e.$index;return[t.crud.getSlotName(t.column,"H",t.crud.$scopedSlots)?t._t(t.crud.getSlotName(t.column,"H"),null,null,{column:t.column,$index:i}):n("span",[t._v(t._s(t.column.label))])]}},{key:"default",fn:function(e){var i=e.row,o=e.$index;return[i.$cellEdit&&t.column.cell?n("el-form-item",{attrs:{prop:t.crud.isTree?"":"list."+o+"."+t.column.prop,label:t.vaildLabel(t.column,i," "),"label-width":t.vaildLabel(t.column,i,"1px"),rules:t.column.rules}},[n("el-tooltip",{attrs:{content:(t.crud.listError["list."+o+"."+t.column.prop]||{}).msg,disabled:!(t.crud.listError["list."+o+"."+t.column.prop]||{}).valid,placement:"top"}},[t.crud.getSlotName(t.column,"F",t.crud.$scopedSlots)?t._t(t.crud.getSlotName(t.column,"F"),null,null,{row:i,dic:t.crud.DIC[t.column.prop],size:t.crud.isMediumSize,index:o,disabled:t.crud.btnDisabledList[o],label:t.handleDetail(i,t.column),$cell:i.$cellEdit}):n("form-temp",t._b({attrs:{column:t.column,size:t.crud.isMediumSize,"table-data":{index:o,row:i,label:t.handleDetail(i,t.column)},dic:(t.crud.cascaderDIC[o]||{})[t.column.prop]||t.crud.DIC[t.column.prop],props:t.column.props||t.crud.tableOption.props,readonly:t.column.readonly,disabled:t.crud.disabled||t.crud.tableOption.disabled||t.column.disabled||t.crud.btnDisabledList[o],clearable:t.vaildData(t.column.clearable,!1),"column-slot":t.crud.mainSlot},on:{change:function(e){return t.columnChange(i,t.column,o)}},scopedSlots:t._u([t._l(t.crud.mainSlot,(function(e){return{key:e,fn:function(n){return[t._t(e,null,null,n)]}}}))],null,!0),model:{value:i[t.column.prop],callback:function(e){t.$set(i,t.column.prop,e)},expression:"row[column.prop]"}},"form-temp",t.$uploadFun(t.column,t.crud),!1))],2)],1):t.crud.$scopedSlots[t.column.prop]?t._t(t.column.prop,null,{row:i,index:o,dic:t.crud.DIC[t.column.prop],size:t.crud.isMediumSize,label:t.handleDetail(i,t.column)}):[["img","upload"].includes(t.column.type)?n("span",[n("div",{staticClass:"avue-crud__img"},t._l(t.getImgList(i,t.column),(function(e,o){return n(t.getIsVideo(e),{key:o,tag:"component",attrs:{src:e},on:{click:function(e){e.stopPropagation(),t.openImg(t.getImgList(i,t.column),o)}}})})),1)]):"url"===t.column.type?n("span",t._l(t.corArray(i[t.column.prop],t.column.separator),(function(e,i){return n("el-link",{key:i,attrs:{type:"primary",href:e,target:t.column.target||"_blank"}},[t._v(t._s(e))])})),1):"rate"===t.column.type?n("span",[n("avue-rate",{attrs:{disabled:""},model:{value:i[t.column.prop],callback:function(e){t.$set(i,t.column.prop,e)},expression:"row[column.prop]"}})],1):"color"===t.column.type?n("i",{staticClass:"avue-crud__color",style:{backgroundColor:i[t.column.prop]}}):"icon"===t.column.type?n("icon-temp",{attrs:{text:i[t.column.prop]}}):t.column.html?n("span",{domProps:{innerHTML:t._s(t.handleDetail(i,t.column))}}):n("span",{domProps:{textContent:t._s(t.handleDetail(i,t.column))}})]]}}],null,!0)}):t._e()}),[],!1,null,null,null).exports,U={name:"column-dynamic",components:{columnSlot:W},inject:["dynamic","crud"],props:{columnOption:Object},created:function(){var t=this,e=["getColumnProp","handleFiltersMethod","handleFilters"];Object.keys(this.dynamic).forEach((function(n){e.includes(n)&&(t[n]=t.dynamic[n])}))}},V=Object(s.a)(U,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.getColumnProp(t.columnOption,"hide")?n("el-table-column",{key:t.columnOption.prop,attrs:{prop:t.columnOption.prop,label:t.columnOption.label,"filter-placement":"bottom-end",filters:t.getColumnProp(t.columnOption,"filters"),"filter-method":t.getColumnProp(t.columnOption,"filterMethod")?t.handleFiltersMethod:void 0,"filter-multiple":t.vaildData(t.columnOption.filterMultiple,!0),"show-overflow-tooltip":t.columnOption.overHidden,"min-width":t.columnOption.minWidth,sortable:t.getColumnProp(t.columnOption,"sortable"),"render-header":t.columnOption.renderHeader,align:t.columnOption.align||t.crud.tableOption.align,"header-align":t.columnOption.headerAlign||t.crud.tableOption.headerAlign,width:t.getColumnProp(t.columnOption,"width"),fixed:t.getColumnProp(t.columnOption,"fixed")}},[t._l(t.columnOption.children,(function(e){return[e.children&&e.children.length>0?n("column-dynamic",{key:e.label,attrs:{columnOption:e},scopedSlots:t._u([t._l(t.crud.mainSlot,(function(e){return{key:e,fn:function(n){return[t._t(e,null,null,n)]}}}))],null,!0)}):n("column-slot",{attrs:{column:e,"column-option":t.columnOption.children},scopedSlots:t._u([t._l(t.crud.mainSlot,(function(e){return{key:e,fn:function(n){return[t._t(e,null,null,n)]}}}))],null,!0)})]}))],2):t._e()}),[],!1,null,null,null).exports;function Y(t){return function(t){if(Array.isArray(t))return X(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(!t)return;if("string"==typeof t)return X(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return X(t,e)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function X(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n<e;n++)i[n]=t[n];return i}var q=Object(i.a)({name:"crud",data:function(){return{}},components:{columnSlot:W,columnDynamic:V},inject:["crud"],provide:function(){return{crud:this.crud,dynamic:this}},props:{columnOption:Array},computed:{list:function(){var t=this,e=Y(this.columnOption);return e=Object(D.a)(e,"index",(function(e,n){var i,o;return(null===(i=t.crud.objectOption[e.prop])||void 0===i?void 0:i.index)-(null===(o=t.crud.objectOption[n.prop])||void 0===o?void 0:o.index)}))}},methods:{handleFiltersMethod:function(t,e,n){var i=this.columnOption.filter((function(t){return t.prop===n.property}))[0];return"function"==typeof i.filtersMethod?i.filtersMethod(t,e,i):e[i.prop]===t},handleFilters:function(t,e){var n=this;if(!0===e){var i=this.crud.DIC[t.prop]||[],o=[];return this.validatenull(i)?this.crud.cellForm.list.forEach((function(e){o.map((function(t){return t.text})).includes(e[t.prop])||o.push({text:e[t.prop],value:e[t.prop]})})):i.forEach((function(e){var i=t.props||n.crud.tableOption.props||{};o.push({text:e[i.label||B.e.label],value:e[i.value||B.e.value]})})),o}},getColumnProp:function(t,e){var n=this.crud.objectOption[t.prop]||{};if("filterMethod"===e)return null==n?void 0:n.filters;if(this.crud.isMobile&&["fixed"].includes(e))return!1;var i=null==n?void 0:n[e];return"width"!=e||0!=i?"filters"==e?this.handleFilters(t,i):"hide"==e?!0!==(null==n?void 0:n.hide):i:void 0}}}),G=Object(s.a)(q,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[t._t("header"),t._v(" "),t._l(t.list,(function(e,i){return[e.children&&e.children.length>0?n("column-dynamic",{key:e.label,attrs:{columnOption:e},scopedSlots:t._u([t._l(t.crud.mainSlot,(function(e){return{key:e,fn:function(n){return[t._t(e,null,null,n)]}}}))],null,!0)}):n("column-slot",{attrs:{column:e,"column-option":t.columnOption},scopedSlots:t._u([t._l(t.crud.mainSlot,(function(e){return{key:e,fn:function(n){return[t._t(e,null,null,n)]}}}))],null,!0)})]})),t._v(" "),t._t("footer")],2)}),[],!1,null,null,null).exports,J=Object(i.a)({name:"crud",mixins:[j.a],directives:{permission:w},inject:["crud"],data:function(){return{dateCreate:!1,pickerOptions:{shortcuts:[{text:"今日",onClick:function(t){var e=new Date,n=new Date;n.setTime(n.getTime()),t.$emit("pick",[n,e])}},{text:"昨日",onClick:function(t){var e=new Date,n=new Date;n.setTime(n.getTime()-864e5),t.$emit("pick",[n,e])}},{text:"最近一周",onClick:function(t){var e=new Date,n=new Date;n.setTime(n.getTime()-6048e5),t.$emit("pick",[n,e])}},{text:"最近一个月",onClick:function(t){var e=new Date,n=new Date;n.setTime(n.getTime()-2592e6),t.$emit("pick",[n,e])}},{text:"最近三个月",onClick:function(t){var e=new Date,n=new Date;n.setTime(n.getTime()-7776e6),t.$emit("pick",[n,e])}}]},config:C}},created:function(){this.initFun()},methods:{dateChange:function(t){this.dateCreate?this.crud.$emit("date-change",t):this.dateCreate=!0},initFun:function(){this.vaildData=D.x,this.crud.rowExcel=this.rowExcel,this.crud.rowPrint=this.rowPrint},rowExcel:function(){this.crud.$refs.dialogExcel.handleShow()},rowPrint:function(){this.$Print(this.crud.$refs.table)}}}),Q=Object(s.a)(J,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b("menu")},[n("div",{class:t.b("left")},[t.vaildData(t.crud.tableOption.addBtn,t.config.addBtn)?n("el-button",{directives:[{name:"permission",rawName:"v-permission",value:t.crud.getPermission("addBtn"),expression:"crud.getPermission('addBtn')"}],attrs:{type:"primary",icon:t.crud.getBtnIcon("addBtn"),size:t.crud.isMediumSize},on:{click:t.crud.rowAdd}},[t.crud.isIconMenu?t._e():[t._v("\n        "+t._s(t.crud.menuIcon("addBtn"))+"\n      ")]],2):t._e(),t._v(" "),t.vaildData(t.crud.tableOption.addRowBtn,t.config.addRowBtn)?n("el-button",{directives:[{name:"permission",rawName:"v-permission",value:t.crud.getPermission("addRowBtn"),expression:"crud.getPermission('addRowBtn')"}],attrs:{type:"primary",icon:t.crud.getBtnIcon("addBtn"),size:t.crud.isMediumSize},on:{click:t.crud.rowCellAdd}},[t.crud.isIconMenu?t._e():[t._v("\n        "+t._s(t.crud.menuIcon("addBtn"))+"\n      ")]],2):t._e(),t._v(" "),t._t("menuLeft",null,{size:t.crud.isMediumSize})],2),t._v(" "),n("div",{class:t.b("right")},[t.vaildData(t.crud.tableOption.dateBtn,t.config.dateBtn)?n("avue-date",{staticStyle:{display:"inline-block","margin-right":"20px"},attrs:{type:"datetimerange","value-format":"yyyy-MM-dd HH:mm:ss",format:"yyyy-MM-dd HH:mm:ss",pickerOptions:t.pickerOptions,size:t.crud.isMediumSize},on:{change:t.dateChange}}):t._e(),t._v(" "),t._t("menuRight",null,{size:t.crud.isMediumSize}),t._v(" "),t.vaildData(t.crud.tableOption.excelBtn,t.config.excelBtn)?n("el-button",{directives:[{name:"permission",rawName:"v-permission",value:t.crud.getPermission("excelBtn"),expression:"crud.getPermission('excelBtn')"}],attrs:{icon:t.crud.getBtnIcon("excelBtn"),circle:"",size:t.crud.isMediumSize},on:{click:t.rowExcel}}):t._e(),t._v(" "),t.vaildData(t.crud.tableOption.printBtn,t.config.printBtn)?n("el-button",{directives:[{name:"permission",rawName:"v-permission",value:t.crud.getPermission("printBtn"),expression:"crud.getPermission('printBtn')"}],attrs:{icon:t.crud.getBtnIcon("printBtn"),circle:"",size:t.crud.isMediumSize},on:{click:t.rowPrint}}):t._e(),t._v(" "),t.vaildData(t.crud.tableOption.refreshBtn,t.config.refreshBtn)?n("el-button",{directives:[{name:"permission",rawName:"v-permission",value:t.crud.getPermission("refreshBtn"),expression:"crud.getPermission('refreshBtn')"}],attrs:{icon:t.crud.getBtnIcon("refreshBtn"),circle:"",size:t.crud.isMediumSize},on:{click:t.crud.refreshChange}}):t._e(),t._v(" "),t.vaildData(t.crud.tableOption.columnBtn,t.config.columnBtn)?n("el-button",{directives:[{name:"permission",rawName:"v-permission",value:t.crud.getPermission("columnBtn"),expression:"crud.getPermission('columnBtn')"}],attrs:{icon:t.crud.getBtnIcon("columnBtn"),circle:"",size:t.crud.isMediumSize},on:{click:function(e){t.crud.$refs.dialogColumn.columnBox=!0}}}):t._e(),t._v(" "),(t.crud.$refs.headerSearch||{}).searchFlag&&t.vaildData(t.crud.tableOption.searchShowBtn,!0)?n("el-button",{attrs:{icon:t.crud.getBtnIcon("searchBtn"),circle:"",size:t.crud.isMediumSize},on:{click:function(e){return t.crud.$refs.headerSearch.handleSearchShow()}}}):t._e(),t._v(" "),t.vaildData(t.crud.tableOption.filterBtn,t.config.filterBtn)?n("el-button",{directives:[{name:"permission",rawName:"v-permission",value:t.crud.getPermission("filterBtn"),expression:"crud.getPermission('filterBtn')"}],attrs:{icon:t.crud.getBtnIcon("filterBtn"),circle:"",size:t.crud.isMediumSize},on:{click:function(e){t.crud.$refs.dialogFilter.box=!0}}}):t._e()],2)])}),[],!1,null,null,null).exports,Z=Object(i.a)({name:"crud",mixins:[j.a],inject:["crud"],data:function(){return{columnBox:!1,bindList:{}}},computed:{defaultColumn:function(){return[{label:this.t("crud.column.hide"),prop:"hide"},{label:this.t("crud.column.fixed"),prop:"fixed"},{label:this.t("crud.column.filters"),prop:"filters"},{label:this.t("crud.column.sortable"),prop:"sortable"},{label:this.t("crud.column.index"),prop:"index",hide:!0},{label:this.t("crud.column.width"),prop:"width",hide:!0}]},list:function(){var t=[];return this.crud.propOption.forEach((function(e){0!=e.showColumn&&t.push(e)})),t}},methods:{init:function(){var t=this;this.crud.propOption.forEach((function(e){!0!==t.bindList[e.prop]&&(t.defaultColumn.forEach((function(n){["hide","filters"].includes(n.prop)&&t.$watch("crud.objectOption.".concat(e.prop,".").concat(n.prop),(function(){return t.crud.refreshTable()}))})),t.bindList[e.prop]=!0)})),this.rowDrop()},rowDrop:function(){var t=this,e=this.$refs.table.$el.querySelectorAll(C.dropRowClass)[0];this.crud.tableDrop("column",e,(function(e){var n=e.oldIndex,i=e.newIndex;t.crud.headerSort(n,i),t.crud.refreshTable((function(){return t.rowDrop()}))}))}}}),tt=Object(s.a)(Z,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-drawer",{staticClass:"avue-dialog",class:[t.b("dialog"),t.b("column")],attrs:{"lock-scroll":"","modal-append-to-body":!1,"append-to-body":"",title:t.t("crud.showTitle"),size:t.crud.isMobile?"100%":"40%",visible:t.columnBox},on:{opened:t.init,"update:visible":function(e){t.columnBox=e}}},[n("el-table",{key:Math.random(),ref:"table",attrs:{data:t.list,height:"100%",size:"small",border:""}},[n("el-table-column",{key:"label",attrs:{align:"center",width:"100","header-align":"center",prop:"label",label:t.t("crud.column.name")}}),t._v(" "),t._l(t.defaultColumn,(function(e,i){return[1!=e.hide?n("el-table-column",{key:e.prop,attrs:{prop:e.prop,align:"center","header-align":"center",label:e.label},scopedSlots:t._u([{key:"default",fn:function(i){var o=i.row;return[n("el-checkbox",{model:{value:t.crud.objectOption[o.prop][e.prop],callback:function(n){t.$set(t.crud.objectOption[o.prop],e.prop,n)},expression:"crud.objectOption[row.prop][item.prop]"}})]}}],null,!0)}):t._e()]}))],2)],1)}),[],!1,null,null,null).exports,et=Object(i.a)({name:"crud",mixins:[j.a],inject:["crud"],components:{formTemp:L.a},data:function(){return{box:!1,formDefault:{},list:[],columnList:[],dateList:$.dateList,columnProps:{value:"prop"}}},computed:{symbolDic:function(){return[{label:"=",value:"="},{label:"≠",value:"≠"},{label:"like",value:"like"},{label:">",value:">"},{label:"≥",value:"≥"},{label:"<",value:"<"},{label:"≤",value:"≤"},{label:"∈",value:"∈"}]},result:function(){var t=this,e=[];return this.list.forEach((function(n){t.validatenull(n.value)||e.push([n.text,n.symbol,n.value])})),e},columnObj:function(){return this.columnOption[0]},columnOption:function(){return this.crud.propOption.filter((function(t){return!1!==t.filter&&!1!==t.showColumn}))}},created:function(){this.getSearchType=$.g,this.formDefault=Object($.d)(this.columnOption).tableForm},methods:{getColumnByIndex:function(t,e){var n=this.deepClone(t);return n.type=Object($.g)(n),n.multiple=["checkbox"].includes(t.type),n},handleDelete:function(t){this.list.splice(t,1),this.columnList.splice(t,1)},handleClear:function(){this.list=[],this.columnList=[]},handleValueClear:function(){var t=this;this.list.forEach((function(e,n){t.$set(t.list[n],"value",t.formDefault[e.text])}))},handleGetColumn:function(t){return this.columnOption.find((function(e){return e.prop===t}))},handleSubmit:function(){this.list.push({}),this.list.splice(this.list.length-1,1),this.crud.$emit("filter",this.result),this.box=!1},handleChange:function(t,e){var n=this.handleGetColumn(t);this.columnList[e]=n,this.list[e].value=this.formDefault[t]},handleAdd:function(){this.list.length;var t=this.columnObj.prop,e=this.handleGetColumn(t);this.columnList.push(e),this.list.push({text:t,value:this.formDefault[t],symbol:this.symbolDic[0].value})}}}),nt=Object(s.a)(et,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-drawer",{staticClass:"avue-dialog",class:[t.b("dialog"),t.b("filter")],attrs:{"lock-scroll":"","modal-append-to-body":!1,"append-to-body":"",title:t.t("crud.filterTitle"),size:t.crud.isMobile?"100%":"60%",visible:t.box},on:{"update:visible":function(e){t.box=e}}},[n("el-row",{attrs:{span:24}},[n("div",{class:t.b("filter-menu")},[n("el-button-group",[n("el-button",{attrs:{type:"primary",size:t.crud.isMediumSize},on:{click:t.handleAdd}},[t._v(t._s(t.t("crud.filter.addBtn")))]),t._v(" "),n("el-button",{attrs:{type:"primary",size:t.crud.isMediumSize},on:{click:t.handleClear}},[t._v(t._s(t.t("crud.filter.resetBtn")))]),t._v(" "),n("el-button",{attrs:{type:"primary",size:t.crud.isMediumSize},on:{click:t.handleValueClear}},[t._v(t._s(t.t("crud.filter.clearBtn")))])],1)],1),t._v(" "),t._l(t.list,(function(e,i){return n("el-col",{key:i,class:t.b("filter-item"),attrs:{md:12,xs:24,sm:12}},[n("avue-select",{class:t.b("filter-label"),attrs:{dic:t.columnOption,props:t.columnProps,clearable:!1,size:t.crud.isMediumSize},on:{change:function(n){return t.handleChange(e.text,i)}},model:{value:e.text,callback:function(n){t.$set(e,"text",n)},expression:"column.text"}}),t._v(" "),n("avue-select",{class:t.b("filter-symbol"),attrs:{dic:t.symbolDic,clearable:!1,size:t.crud.isMediumSize},model:{value:e.symbol,callback:function(n){t.$set(e,"symbol",n)},expression:"column.symbol"}}),t._v(" "),n("form-temp",{class:t.b("filter-value"),attrs:{column:t.getColumnByIndex(t.columnList[i]),size:t.crud.isMediumSize,dic:t.crud.DIC[t.columnList[i].prop],props:t.columnList[i].props||t.crud.tableOption.props},model:{value:e.value,callback:function(n){t.$set(e,"value",n)},expression:"column.value"}}),t._v(" "),n("el-button",{class:t.b("filter-icon"),attrs:{type:"danger",size:"mini",circle:"",icon:"el-icon-minus"},on:{click:function(e){return t.handleDelete(i)}}})],1)})),t._v(" "),n("el-col",{staticClass:"avue-form__menu avue-form__menu--right",attrs:{span:24}},[n("el-button",{attrs:{type:"primary",size:t.crud.isMediumSize},on:{click:t.handleSubmit}},[t._v(t._s(t.t("crud.filter.submitBtn")))]),t._v(" "),n("el-button",{attrs:{size:t.crud.isMediumSize},on:{click:function(e){t.box=!1}}},[t._v(t._s(t.t("crud.filter.cancelBtn")))])],1)],2)],1)}),[],!1,null,null,null).exports,it=Object(i.a)({name:"crud",mixins:[j.a],inject:["crud"],data:function(){return{disabled:!1,config:C,boxType:"",fullscreen:!1,size:null,boxVisible:!1}},props:{value:{type:Object,default:function(){return{}}}},computed:{option:function(){var t=this,e=this.deepClone(this.crud.tableOption);return e.boxType=this.boxType,e.column=this.deepClone(this.crud.propOption),e.menuBtn=!1,this.isAdd?(e.submitBtn=e.saveBtn,e.submitText=this.crud.menuIcon("saveBtn"),e.submitIcon=this.crud.getBtnIcon("saveBtn")):this.isEdit?(e.submitBtn=e.updateBtn,e.submitText=this.crud.menuIcon("updateBtn"),e.submitIcon=this.crud.getBtnIcon("updateBtn")):this.isView&&(e.detail=!0),e.emptyBtn=e.cancelBtn,e.emptyText=this.crud.menuIcon("cancelBtn"),e.emptyIcon=this.crud.getBtnIcon("cancelBtn"),this.crud.isGroup||(e.dicFlag=!1,e.dicData=this.crud.DIC),this.validatenull(e.dicFlag)||e.column.forEach((function(n){n.boxType=t.boxType,n.dicFlag=n.dicFlag||e.dicFlag})),e},isView:function(){return"view"===this.boxType},isAdd:function(){return"add"===this.boxType},isEdit:function(){return"edit"===this.boxType},direction:function(){return this.crud.tableOption.dialogDirection},width:function(){return this.vaildData(this.crud.tableOption.dialogWidth+"",this.crud.isMobile?"100%":C.dialogWidth+"")},dialogType:function(){return this.isDrawer?"elDrawer":"elDialog"},dialogTop:function(){return this.isDrawer||this.fullscreen?"0":this.crud.tableOption.dialogTop},isDrawer:function(){return"drawer"===this.crud.tableOption.dialogType},params:function(){return this.isDrawer?{size:this.fullscreen?"100%":this.width,direction:this.crud.tableOption.dialogDirection}:{width:this.width,fullscreen:this.fullscreen}},dialogTitle:function(){var t="".concat(this.boxType);if(!this.validatenull(this.boxType))return this.crud.tableOption[t+"Title"]||this.t("crud.".concat(t,"Title"))},dialogMenuPosition:function(){return this.crud.option.dialogMenuPosition||"right"}},methods:{submit:function(){this.$refs.tableForm.submit()},reset:function(){this.$refs.tableForm.resetForm()},getSlotName:function(t){return t.replace("Form","")},handleOpened:function(){var t=this;this.$nextTick((function(){["clearValidate","validate","resetForm"].forEach((function(e){t.crud[e]=t.$refs.tableForm[e]}))}))},handleChange:function(){this.crud.$emit("input",this.crud.tableForm),this.crud.$emit("change",this.crud.tableForm)},handleTabClick:function(t,e){this.crud.$emit("tab-click",t,e)},handleFullScreen:function(){this.isDrawer&&(this.validatenull(this.size)?this.size="100%":this.size=""),this.fullscreen?this.fullscreen=!1:this.fullscreen=!0},handleError:function(t){this.crud.$emit("error",t)},handleSubmit:function(t,e){this.isAdd?this.rowSave(e):this.isEdit&&this.rowUpdate(e)},rowSave:function(t){this.crud.$emit("row-save",Object(D.i)(this.crud.tableForm),this.closeDialog,t)},rowUpdate:function(t){this.crud.$emit("row-update",Object(D.i)(this.crud.tableForm),this.crud.tableIndex,this.closeDialog,t)},closeDialog:function(t){var e=this;(t=this.deepClone(t))&&function(){if(e.isEdit){var n=e.crud.findData(t[e.crud.rowKey]),i=n.parentList,o=n.index;i&&(i.splice(o,1),i.splice(o,0,t))}else if(e.isAdd){var a=e.crud.findData(t[e.crud.rowParentKey]).item;a?(a[e.crud.childrenKey]||(a[e.crud.childrenKey]=[],a[e.crud.hasChildrenKey]=!0),a[e.crud.childrenKey].push(t)):e.crud.list.push(t)}}(),this.hide()},hide:function(t){var e=this,n=function(){t&&t(),e.crud.tableIndex=-1,e.boxVisible=!1,Object.keys(e.crud.tableForm).forEach((function(t){e.$delete(e.crud.tableForm,t)}))};"function"==typeof this.crud.beforeClose?this.crud.beforeClose(n,this.boxType):n()},show:function(t){var e=this;this.boxType=t;var n=function(){e.fullscreen=e.crud.tableOption.dialogFullscreen,e.boxVisible=!0};"function"==typeof this.crud.beforeOpen?this.crud.beforeOpen(n,this.boxType):n()}}}),ot=Object(s.a)(it,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n(t.dialogType,t._b({directives:[{name:"dialogDrag",rawName:"v-dialogDrag",value:t.vaildData(t.crud.tableOption.dialogDrag,t.config.dialogDrag),expression:"vaildData(crud.tableOption.dialogDrag,config.dialogDrag)"}],tag:"component",class:["avue-dialog",t.b("dialog"),{"avue-dialog--fullscreen":t.fullscreen}],attrs:{"lock-scroll":"","destroy-on-close":t.crud.tableOption.dialogDestroy,wrapperClosable:t.crud.tableOption.dialogClickModal,direction:t.direction,"custom-class":t.crud.tableOption.dialogCustomClass,"modal-append-to-body":"","append-to-body":"",top:t.dialogTop,title:t.dialogTitle,"close-on-press-escape":t.crud.tableOption.dialogEscape,"close-on-click-modal":t.vaildData(t.crud.tableOption.dialogClickModal,!1),modal:t.crud.tableOption.dialogModal,"show-close":t.crud.tableOption.dialogCloseBtn,visible:t.boxVisible,"before-close":t.hide},on:{"update:visible":function(e){t.boxVisible=e},opened:t.handleOpened}},"component",t.params,!1),[n("div",{class:t.b("dialog__header"),attrs:{slot:"title"},slot:"title"},[n("span",{staticClass:"el-dialog__title"},[t._v(t._s(t.dialogTitle))]),t._v(" "),n("div",{class:t.b("dialog__menu")},[n("i",{staticClass:"el-dialog__close",class:t.fullscreen?"el-icon-news":"el-icon-full-screen",on:{click:t.handleFullScreen}})])]),t._v(" "),t.boxVisible?n("avue-form",t._b({ref:"tableForm",attrs:{status:t.disabled,option:t.option},on:{"update:status":function(e){t.disabled=e},change:t.handleChange,submit:t.handleSubmit,"reset-change":t.hide,"tab-click":t.handleTabClick,error:t.handleError},scopedSlots:t._u([t._l(t.crud.formSlot,(function(e){return{key:t.getSlotName(e),fn:function(n){return[t._t(e,null,null,Object.assign(n,{type:t.boxType}))]}}}))],null,!0),model:{value:t.crud.tableForm,callback:function(e){t.$set(t.crud,"tableForm",e)},expression:"crud.tableForm"}},"avue-form",t.$uploadFun({},t.crud),!1)):t._e(),t._v(" "),n("span",{staticClass:"avue-dialog__footer",class:"avue-dialog__footer--"+t.dialogMenuPosition},[t.vaildData(t.option.submitBtn,!0)&&!t.isView?n("el-button",{attrs:{disabled:t.disabled,size:t.crud.controlSize,icon:t.option.submitIcon,type:"primary"},on:{click:t.submit}},[t._v(t._s(t.option.submitText))]):t._e(),t._v(" "),t.vaildData(t.option.emptyBtn,!0)&&!t.isView?n("el-button",{attrs:{disabled:t.disabled,size:t.crud.controlSize,icon:t.option.emptyIcon},on:{click:t.reset}},[t._v(t._s(t.option.emptyText))]):t._e(),t._v(" "),t._t("menuForm",null,{disabled:t.disabled,size:t.crud.controlSize,type:t.boxType})],2)],1)}),[],!1,null,null,null).exports,at={name:"crud",mixins:[j.a],inject:["crud"],data:function(){return{box:!1,form:{name:this.crud.tableOption.title}}},computed:{columnOption:function(){var t=[];return this.deepClone(this.crud.columnOption).forEach((function(e){var n=e.children;n&&!Array.isArray(n)&&delete e.children,!1!==e.showColumn&&t.push(e)})),t},columnList:function(){if(!this.form.params)return[];if(this.form.params.includes("headers"))return this.crud.propOption;var t=[];return function e(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];n.forEach((function(n,i){n.children?e(n.children):t.push(n)}))}(this.columnOption),t},columns:function(){var t=this,e=this.deepClone(this.columnOption);if(!this.form.params)return[];if(this.form.params.includes("headers")){return function e(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];n.forEach((function(i,o){i.children?e(i.children):t.form.prop.includes(i.prop)||n.splice(o,1)}))}(e),e}var n=[];return function e(){var i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];i.forEach((function(i,o){i.children?e(i.children):t.form.prop.includes(i.prop)&&n.push(i)}))}(e),n},option:function(){var t,e=this;return{submitBtn:!1,emptyBtn:!1,column:[{label:"文件名",prop:"name",span:24},{label:"选择数据",prop:"type",span:24,type:"select",value:0,dicData:[{label:"当前数据(当前页全部的数据)",value:0},{label:"选中的数据(当前页选中的数据)",value:1}]},{label:"选择字段",prop:"prop",type:"tree",multiple:!0,checkStrictly:!0,span:24,props:{value:"prop"},dicData:this.columnOption},{label:"参数设置",prop:"params",type:"checkbox",span:24,value:["header","data"].concat((t=[],e.crud.isHeader&&t.push("headers"),e.crud.isShowSummary&&t.push("sum"),t)),dicData:[{label:"表头",disabled:!0,value:"header"},{label:"数据源",value:"data"}].concat(function(){var t=[];return t.push({label:"复杂表头",value:"headers",disabled:!e.crud.isHeader}),t.push({label:"合计统计",value:"sum",disabled:!e.crud.isShowSummary}),t}())}]}}},watch:{columnList:function(){this.form.prop=this.columnList.map((function(t){return t.prop}))}},methods:{handleShow:function(){this.box=!0},handleSubmit:function(){this.$Export.excel({title:this.form.name,columns:this.columns,data:this.handleSum()}),this.box=!1},handleSum:function(){var t=this,e=this.crud.tableOption,n=this.crud.propOption,i=0==this.form.type?this.crud.list:this.crud.tableSelect,o=[];return this.form.params.includes("data")&&i.forEach((function(e){var i=t.deepClone(e);n.forEach((function(e){e.bind&&(i[e.prop]=Object(D.m)(i,e.bind)),t.validatenull(i["$"+e.prop])||(i[e.prop]=i["$"+e.prop])})),o.push(i)})),this.form.params.includes("sum")&&e.showSummary&&o.push(this.crud.sumsList),o}}},rt=Object(s.a)(at,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-dialog",{staticClass:"avue-dialog",attrs:{title:t.t("crud.excelBtn"),"lock-scroll":"","modal-append-to-body":!1,"append-to-body":"",visible:t.box,width:t.crud.isMobile?"100%":"30%"},on:{"update:visible":function(e){t.box=e}}},[n("avue-form",{attrs:{option:t.option},model:{value:t.form,callback:function(e){t.form=e},expression:"form"}}),t._v(" "),n("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[n("el-button",{attrs:{type:"primary",size:t.crud.isMediumSize},on:{click:t.handleSubmit}},[t._v(t._s(t.t("crud.filter.submitBtn")))]),t._v(" "),n("el-button",{attrs:{size:t.crud.isMediumSize},on:{click:function(e){t.box=!1}}},[t._v(t._s(t.t("crud.filter.cancelBtn")))])],1)],1)}),[],!1,null,null,null).exports,st=Object(i.a)({name:"crud",data:function(){return{config:C}},mixins:[j.a],inject:["crud"],directives:{permission:w},computed:{menuType:function(){return this.crud.tableOption.menuType||this.$AVUE.menuType||"button"},isIconMenu:function(){return"icon"===this.menuType},isTextMenu:function(){return"text"===this.menuType},isMenu:function(){return"menu"===this.menuType}},methods:{menuText:function(t){return["text","menu"].includes(this.menuType)?"text":t}}}),lt=Object(s.a)(st,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.vaildData(t.crud.tableOption.menu,t.config.menu)&&t.crud.getPermission("menu")?n("el-table-column",{key:"menu",class:t.b("btn"),attrs:{prop:"menu",fixed:t.vaildData(t.crud.tableOption.menuFixed,t.config.menuFixed),label:t.crud.tableOption.menuTitle||t.t("crud.menu"),align:t.crud.tableOption.menuAlign||t.config.menuAlign,"header-align":t.crud.tableOption.menuHeaderAlign||t.config.menuHeaderAlign,width:t.crud.isMobile?t.crud.tableOption.menuXsWidth||t.config.menuXsWidth:t.crud.tableOption.menuWidth||t.config.menuWidth},scopedSlots:t._u([{key:"default",fn:function(e){var i=e.row,o=e.$index;return[t.isMenu?n("el-dropdown",{attrs:{size:t.crud.isMediumSize}},[n("el-button",{attrs:{type:"text",size:t.crud.isMediumSize}},[t._v("\n        "+t._s(t.crud.tableOption.menuBtnTitle||t.t("crud.menuBtn"))+"\n        "),n("i",{staticClass:"el-icon-arrow-down el-icon--right"})]),t._v(" "),n("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[t.vaildData(t.crud.tableOption.viewBtn,t.config.viewBtn)?n("el-dropdown-item",{directives:[{name:"permission",rawName:"v-permission",value:t.crud.getPermission("viewBtn",i,o),expression:"crud.getPermission('viewBtn',row,$index)"}],attrs:{icon:t.crud.getBtnIcon("viewBtn")},nativeOn:{click:function(e){return t.crud.rowView(i,o)}}},[t._v(t._s(t.crud.menuIcon("viewBtn")))]):t._e(),t._v(" "),t.vaildData(t.crud.tableOption.editBtn,t.config.editBtn)?n("el-dropdown-item",{directives:[{name:"permission",rawName:"v-permission",value:t.crud.getPermission("editBtn",i,o),expression:"crud.getPermission('editBtn',row,$index)"}],attrs:{icon:t.crud.getBtnIcon("editBtn")},nativeOn:{click:function(e){return t.crud.rowEdit(i,o)}}},[t._v(t._s(t.crud.menuIcon("editBtn")))]):t._e(),t._v(" "),t.vaildData(t.crud.tableOption.copyBtn,t.config.copyBtn)?n("el-dropdown-item",{directives:[{name:"permission",rawName:"v-permission",value:t.crud.getPermission("copyBtn",i,o),expression:"crud.getPermission('copyBtn',row,$index)"}],attrs:{icon:t.crud.getBtnIcon("copyBtn")},nativeOn:{click:function(e){return t.crud.rowCopy(i)}}},[t._v(t._s(t.crud.menuIcon("copyBtn")))]):t._e(),t._v(" "),t.vaildData(t.crud.tableOption.delBtn,t.config.delBtn)?n("el-dropdown-item",{directives:[{name:"permission",rawName:"v-permission",value:t.crud.getPermission("delBtn",i,o),expression:"crud.getPermission('delBtn',row,$index)"}],attrs:{icon:t.crud.getBtnIcon("delBtn")},nativeOn:{click:function(e){return t.crud.rowDel(i,o)}}},[t._v(t._s(t.crud.menuIcon("delBtn")))]):t._e(),t._v(" "),t._t("menuBtn",null,{row:i,type:t.menuText("primary"),disabled:t.crud.btnDisabled,size:t.crud.isMediumSize,index:o})],2)],1):["button","text","icon"].includes(t.menuType)?[t.vaildData(t.crud.tableOption.cellBtn,t.config.cellBtn)?[t.vaildData(t.crud.tableOption.editBtn,t.config.editBtn)&&!i.$cellEdit?n("el-button",{directives:[{name:"permission",rawName:"v-permission",value:t.crud.getPermission("editBtn",i,o),expression:"crud.getPermission('editBtn',row,$index)"}],attrs:{type:t.menuText("primary"),icon:t.crud.getBtnIcon("editBtn"),size:t.crud.isMediumSize,disabled:t.crud.btnDisabledList[o]},on:{click:function(e){return e.stopPropagation(),t.crud.rowCell(i,o)}}},[t.isIconMenu?t._e():[t._v("\n            "+t._s(t.crud.menuIcon("editBtn"))+"\n          ")]],2):t.vaildData(t.crud.tableOption.saveBtn,t.config.saveBtn)&&i.$cellEdit?n("el-button",{directives:[{name:"permission",rawName:"v-permission",value:t.crud.getPermission("saveBtn",i,o),expression:"crud.getPermission('saveBtn',row,$index)"}],attrs:{type:t.menuText("primary"),icon:t.crud.getBtnIcon("saveBtn"),size:t.crud.isMediumSize,disabled:t.crud.btnDisabledList[o]},on:{click:function(e){return e.stopPropagation(),t.crud.rowCell(i,o)}}},[t.isIconMenu?t._e():[t._v("\n            "+t._s(t.crud.menuIcon("saveBtn"))+"\n          ")]],2):t._e(),t._v(" "),i.$cellEdit?n("el-button",{attrs:{type:t.menuText("danger"),icon:t.crud.getBtnIcon("cancelBtn"),size:t.crud.isMediumSize,disabled:t.crud.btnDisabledList[o]},on:{click:function(e){return e.stopPropagation(),t.crud.rowCancel(i,o)}}},[t.isIconMenu?t._e():[t._v("\n            "+t._s(t.crud.menuIcon("cancelBtn"))+"\n          ")]],2):t._e()]:t._e(),t._v(" "),t.vaildData(t.crud.tableOption.viewBtn,t.config.viewBtn)?n("el-button",{directives:[{name:"permission",rawName:"v-permission",value:t.crud.getPermission("viewBtn",i,o),expression:"crud.getPermission('viewBtn',row,$index)"}],attrs:{type:t.menuText("success"),icon:t.crud.getBtnIcon("viewBtn"),size:t.crud.isMediumSize,disabled:t.btnDisabled},on:{click:function(e){return e.stopPropagation(),t.crud.rowView(i,o)}}},[t.isIconMenu?t._e():[t._v("\n          "+t._s(t.crud.menuIcon("viewBtn"))+"\n        ")]],2):t._e(),t._v(" "),t.vaildData(t.crud.tableOption.editBtn,t.config.editBtn)&&!t.crud.tableOption.cellBtn?n("el-button",{directives:[{name:"permission",rawName:"v-permission",value:t.crud.getPermission("editBtn",i,o),expression:"crud.getPermission('editBtn',row,$index)"}],attrs:{type:t.menuText("primary"),icon:t.crud.getBtnIcon("editBtn"),size:t.crud.isMediumSize,disabled:t.btnDisabled},on:{click:function(e){return e.stopPropagation(),t.crud.rowEdit(i,o)}}},[t.isIconMenu?t._e():[t._v("\n          "+t._s(t.crud.menuIcon("editBtn"))+"\n        ")]],2):t._e(),t._v(" "),t.vaildData(t.crud.tableOption.copyBtn,t.config.copyBtn)?n("el-button",{directives:[{name:"permission",rawName:"v-permission",value:t.crud.getPermission("copyBtn",i,o),expression:"crud.getPermission('copyBtn',row,$index)"}],attrs:{type:t.menuText("primary"),icon:t.crud.getBtnIcon("copyBtn"),size:t.crud.isMediumSize,disabled:t.btnDisabled},on:{click:function(e){return e.stopPropagation(),t.crud.rowCopy(i)}}},[t.isIconMenu?t._e():[t._v("\n          "+t._s(t.crud.menuIcon("copyBtn"))+"\n        ")]],2):t._e(),t._v(" "),t.vaildData(t.crud.tableOption.delBtn,t.config.delBtn)&&!i.$cellEdit?n("el-button",{directives:[{name:"permission",rawName:"v-permission",value:t.crud.getPermission("delBtn",i,o),expression:"crud.getPermission('delBtn',row,$index)"}],attrs:{type:t.menuText("danger"),icon:t.crud.getBtnIcon("delBtn"),size:t.crud.isMediumSize,disabled:t.btnDisabled},on:{click:function(e){return e.stopPropagation(),t.crud.rowDel(i,o)}}},[t.isIconMenu?t._e():[t._v("\n          "+t._s(t.crud.menuIcon("delBtn"))+"\n        ")]],2):t._e()]:t._e(),t._v(" "),t._t("menu",null,{row:i,type:t.menuText("primary"),disabled:t.crud.btnDisabled,size:t.crud.isMediumSize,index:o})]}}],null,!0)}):t._e()}),[],!1,null,null,null).exports,ct=Object(i.a)({name:"crud",data:function(){return{config:C}},mixins:[j.a],inject:["crud"],methods:{indexMethod:function(t){return t+1+((this.crud.page.currentPage||1)-1)*(this.crud.page.pageSize||10)},setSort:function(){this.rowDrop(),this.columnDrop()},rowDrop:function(){var t=this,e=this.crud.$refs.table.$el.querySelectorAll(this.config.dropRowClass)[0];this.crud.tableDrop("row",e,(function(e){var n=e.oldIndex,i=e.newIndex,o=t.crud.list.splice(n,1)[0];t.crud.list.splice(i,0,o),t.crud.$emit("sortable-change",n,i),t.crud.refreshTable((function(){return t.rowDrop()}))}))},columnDrop:function(){var t=this,e=this.crud.$refs.table.$el.querySelector(this.config.dropColClass),n=0;this.crud.tableOption.selection&&(n+=1),this.crud.tableOption.index&&(n+=1),this.crud.tableOption.expand&&(n+=1),this.crud.tableDrop("column",e,(function(e){t.crud.headerSort(e.oldIndex-n,e.newIndex-n),t.columnDrop()}))}}}),ut=Object(s.a)(ct,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[n("el-table-column",{attrs:{width:"1px"}}),t._v(" "),t.crud.tableOption.expand?n("el-table-column",{key:"expand",attrs:{type:"expand",width:t.crud.tableOption.expandWidth||t.config.expandWidth,fixed:t.vaildData(t.crud.tableOption.expandFixed,t.config.expandFixed),align:"center"},scopedSlots:t._u([{key:"default",fn:function(e){var n=e.row;return[t._t("expand",null,{row:n,index:n.$index})]}}],null,!0)}):t._e(),t._v(" "),t.crud.tableOption.selection?n("el-table-column",{key:"selection",attrs:{fixed:t.vaildData(t.crud.tableOption.selectionFixed,t.config.selectionFixed),type:"selection",selectable:t.crud.tableOption.selectable,"reserve-selection":t.vaildData(t.crud.tableOption.reserveSelection),width:t.crud.tableOption.selectionWidth||t.config.selectionWidth,align:"center"}}):t._e(),t._v(" "),t.vaildData(t.crud.tableOption.index)?n("el-table-column",{key:"index",attrs:{fixed:t.vaildData(t.crud.tableOption.indexFixed,t.config.indexFixed),label:t.crud.tableOption.indexLabel||t.config.indexLabel,type:"index",width:t.crud.tableOption.indexWidth||t.config.indexWidth,index:t.indexMethod,align:"center"}}):t._e()],1)}),[],!1,null,null,null).exports;function dt(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(!t)return;if("string"==typeof t)return pt(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return pt(t,e)}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var i=0,o=function(){};return{s:o,n:function(){return i>=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,r=!0,s=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return r=t.done,t},e:function(t){s=!0,a=t},f:function(){try{r||null==n.return||n.return()}finally{if(s)throw a}}}}function pt(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n<e;n++)i[n]=t[n];return i}var ht=Object(i.a)({name:"crud",mixins:[Object(O.a)(),j.a],directives:{permission:w},provide:function(){return{crud:this}},components:{column:G,columnDefault:ut,columnMenu:lt,tablePage:S,headerSearch:T,headerMenu:Q,dialogColumn:tt,dialogFilter:nt,dialogExcel:rt,dialogForm:ot},data:function(){return{reload:Math.random(),cellForm:{list:[]},config:C,list:[],listError:{},tableForm:{},tableHeight:void 0,tableIndex:-1,tableSelect:[],formIndexList:[],sumsList:{},cascaderDicList:{},formCascaderList:{},btnDisabledList:{},btnDisabled:!1,default:{}}},mounted:function(){this.dataInit(),this.getTableHeight()},computed:{isSortable:function(){return this.tableOption.sortable},isRowSort:function(){return this.tableOption.rowSort},isColumnSort:function(){return this.tableOption.columnSort},rowParentKey:function(){return this.option.rowParentKey||B.e.rowParentKey},childrenKey:function(){return this.treeProps.children||B.e.children},hasChildrenKey:function(){return this.treeProps.hasChildren||B.e.hasChildren},treeProps:function(){return this.tableOption.treeProps||{}},isAutoHeight:function(){return"auto"===this.tableOption.height},formSlot:function(){return this.getSlotList(["Error","Label","Type","Form"],this.$scopedSlots,this.propOption)},searchSlot:function(){return this.getSlotList(["Search"],this.$scopedSlots,this.propOption)},mainSlot:function(){var t=this,e=[];return this.propOption.forEach((function(n){t.$scopedSlots[n.prop]&&e.push(n.prop)})),this.getSlotList(["Header","Form"],this.$scopedSlots,this.propOption).concat(e)},calcHeight:function(){return(this.tableOption.calcHeight||0)+this.$AVUE.calcHeight},propOption:function(){var t=[];return function e(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];Array.isArray(n)&&n.forEach((function(n){t.push(n),n.children&&e(n.children)}))}(this.columnOption),t=Object($.a)(t)},isShowSummary:function(){return this.option.showSummary},isHeader:function(){var t=!1;return this.columnOption.forEach((function(e){e.children&&(t=!0)})),t},isTree:function(){var t=!1;return this.data.forEach((function(e){e.children&&(t=!0)})),t},isCard:function(){return this.option.card?"always":"never"},expandLevel:function(){return this.parentOption.expandLevel||0},expandAll:function(){return this.parentOption.expandAll||!1},parentOption:function(){return this.tableOption||{}},columnOption:function(){return this.tableOption.column||[]},sumColumnList:function(){return this.tableOption.sumColumnList||[]},selectLen:function(){return this.tableSelect?this.tableSelect.length:0}},watch:{value:{handler:function(){this.tableForm=this.value},immediate:!0,deep:!0},list:{handler:function(){this.cellForm.list=this.list},deep:!0},data:{handler:function(){this.dataInit()},deep:!0}},props:{sortBy:Function,sortOrders:Array,sortMethod:Function,spanMethod:Function,summaryMethod:Function,rowStyle:Function,cellStyle:Function,beforeClose:Function,beforeOpen:Function,rowClassName:Function,cellClassName:Function,headerCellClassName:Function,uploadBefore:Function,uploadAfter:Function,uploadDelete:Function,uploadPreview:Function,uploadError:Function,uploadExceed:Function,permission:{type:[Function,Object],default:function(){return{}}},value:{type:Object,default:function(){return{}}},search:{type:Object,default:function(){return{}}},page:{type:Object,default:function(){return{}}},tableLoading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},data:{type:Array,required:!0,default:function(){return[]}}},methods:{handleValidate:function(t,e,n){this.listError[t]||this.$set(this.listError,t,{valid:!1,msg:""}),this.listError[t].valid=!e,this.listError[t].msg=n},getPermission:function(t,e,n){return"function"==typeof this.permission?this.permission(t,e,n):!!this.validatenull(this.permission[t])||this.permission[t]},getTableHeight:function(){var t=this;this.isAutoHeight?this.$nextTick((function(){var e=t.$refs.table,n=t.$refs.tablePage;if(e){var i=e.$el,o=n.$el.offsetHeight||20;t.tableHeight=document.documentElement.clientHeight-i.offsetTop-o-t.calcHeight}})):this.tableHeight=this.tableOption.height,this.refreshTable()},doLayout:function(){this.$refs.table.doLayout()},refreshTable:function(t){var e=this;this.reload=Math.random(),this.tableSelect=[],this.$nextTick((function(){e.$refs.columnDefault.setSort(),t&&t()}))},treeLoad:function(t,e,n){this.$emit("tree-load",t,e,(function(e){t.children=e,n(e)}))},menuIcon:function(t){return this.vaildData(this.tableOption[t+"Text"],this.t("crud."+t))},getBtnIcon:function(t){var e=t+"Icon";return this.tableOption[e]||C[e]},validateField:function(t){return this.$refs.dialogForm.$refs.tableForm.validateField(t)},handleGetRowKeys:function(t){return t[this.rowKey]},selectClear:function(){this.$emit("selection-clear",this.deepClone(this.tableSelect)),this.$refs.table.clearSelection()},toggleRowSelection:function(t,e){this.$refs.table.toggleRowSelection(t,e)},toggleRowExpansion:function(t,e){this.$refs.table.toggleRowExpansion(t,e)},setCurrentRow:function(t){this.$refs.table.setCurrentRow(t)},dataInit:function(){var t=this;this.list=this.data,this.list.forEach((function(e,n){e.$cellEdit&&!t.formCascaderList[n]&&(t.formCascaderList[n]=t.deepClone(e)),t.$set(e,"$cellEdit",e.$cellEdit||!1),t.$set(e,"$index",n)}))},headerDragend:function(t,e,n,i){this.objectOption[n.property].width=t,this.$emit("header-dragend",t,e,n,i)},headerSort:function(t,e){var n=this.columnOption,i=n.splice(t,1)[0];n.splice(e,0,i),this.refreshTable()},clearFilter:function(t){this.$refs.table.clearFilter(t)},expandChange:function(t,e){this.$emit("expand-change",t,e)},currentRowChange:function(t,e){this.$emit("current-row-change",t,e)},refreshChange:function(){this.$emit("refresh-change")},toggleSelection:function(t){var e=this;t?t.forEach((function(t){e.$refs.table.toggleRowSelection(t)})):this.$refs.table.clearSelection()},selectionChange:function(t){this.tableSelect=t,this.$emit("selection-change",this.tableSelect)},select:function(t,e){this.$emit("select",t,e)},selectAll:function(t){this.$emit("select-all",t)},filterChange:function(t){this.$emit("filter-change",t)},sortChange:function(t){this.$emit("sort-change",t)},rowDblclick:function(t,e){this.$emit("row-dblclick",t,e)},rowClick:function(t,e,n){this.$emit("row-click",t,e,n)},clearSort:function(){this.$refs.table.clearSort()},cellMouseEnter:function(t,e,n,i){this.$emit("cell-mouse-enter",t,e,n,i)},cellMouseLeave:function(t,e,n,i){this.$emit("cell-mouse-leave",t,e,n,i)},cellClick:function(t,e,n,i){this.$emit("cell-click",t,e,n,i)},headerClick:function(t,e){this.$emit("header-click",t,e)},rowContextmenu:function(t,e,n){this.$emit("row-contextmenu",t,e,n)},headerContextmenu:function(t,e){this.$emit("header-contextmenu",t,e)},cellDblclick:function(t,e,n,i){this.$emit("cell-dblclick",t,e,n,i)},rowCell:function(t,e){t.$cellEdit?this.rowCellUpdate(t,e):this.rowCellEdit(t,e)},rowCellAdd:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=this.list.length,i=Object($.d)(this.propOption).tableForm;e=this.deepClone(Object.assign({$cellEdit:!0,$index:n},i,e)),this.list.push(e),this.formIndexList.push(n),setTimeout((function(){return t.$refs.columnDefault.setSort()}))},rowCancel:function(t,e){this.validatenull(t[this.rowKey])?this.list.splice(e,1):(this.formCascaderList[e].$cellEdit=!1,this.$set(this.list,e,this.formCascaderList[e]),delete this.formCascaderList[e],this.$set(this.cascaderDIC,e,this.cascaderDicList[e]),this.formIndexList.splice(this.formIndexList.indexOf(e),1))},rowCellEdit:function(t,e){var n=this;t.$cellEdit=!0,this.$set(this.list,e,t),this.formCascaderList[e]=this.deepClone(t),this.cascaderDicList[e]=this.deepClone(this.cascaderDIC[e]),setTimeout((function(){n.formIndexList.push(e)}),1e3)},validateCellForm:function(t){var e=this;return new Promise((function(t){e.$refs.cellForm.validate((function(e,n){t(n)}))}))},validateCellField:function(t){var e,n=!0,i=dt(this.$refs.cellForm.fields);try{for(i.s();!(e=i.n()).done;){var o=e.value;if(o.prop.split(".")[1]==t&&this.$refs.cellForm.validateField(o.prop,(function(t){t&&(n=!1)})),!n)break}}catch(t){i.e(t)}finally{i.f()}return n},rowCellUpdate:function(t,e){var n=this;t=this.deepClone(t);var i=function(){n.btnDisabledList[e]=!1,n.btnDisabled=!1,t.$cellEdit=!1,n.$set(n.list,e,t),delete n.formCascaderList[e]},o=function(){n.btnDisabledList[e]=!1,n.btnDisabled=!1};this.validateCellField(e)&&(this.btnDisabledList[e]=!0,this.btnDisabled=!0,this.validatenull(t[this.rowKey])?this.$emit("row-save",t,i,o):this.$emit("row-update",t,e,i,o))},rowAdd:function(){this.$refs.dialogForm.show("add")},rowSave:function(){return this.$refs.dialogForm.$refs.tableForm.submit()},rowUpdate:function(){return this.$refs.dialogForm.$refs.tableForm.submit()},closeDialog:function(){return this.$refs.dialogForm.closeDialog()},rowClone:function(t){var e={};return Object.keys(t).forEach((function(n){["_parent","children"].includes(n)||(e[n]=t[n])})),e},getPropRef:function(t){return this.$refs.dialogForm.$refs.tableForm.getPropRef(t)},rowEdit:function(t,e){this.tableForm=this.rowClone(t),this.tableIndex=e,this.$emit("input",this.tableForm),this.$refs.dialogForm.show("edit")},rowCopy:function(t){this.tableForm=this.rowClone(t),delete this.tableForm[this.rowKey],this.tableIndex=-1,this.$emit("input",this.tableForm),this.$refs.dialogForm.show("add")},rowView:function(t,e){this.tableForm=this.rowClone(t),this.tableIndex=e,this.$emit("input",this.tableForm),this.$refs.dialogForm.show("view")},rowDel:function(t,e){var n=this;this.$emit("row-del",t,e,(function(){var e=n.findData(t[n.rowKey]),i=e.parentList,o=e.index;i&&i.splice(o,1)}))},tableSpanMethod:function(t){if("function"==typeof this.spanMethod)return this.spanMethod(t)},tableSummaryMethod:function(t){var e=this,n={};if("function"==typeof this.summaryMethod)return this.summaryMethod(t);var i=t.columns,o=t.data,a=[];return i.length>0&&i.forEach((function(t,i){var r=e.sumColumnList.find((function(e){return e.name===t.property}));if(r){var s=r.decimals||2,l=r.label||"";switch(r.type){case"count":a[i]=l+o.length;break;case"avg":var c=o.map((function(e){return Number(e[t.property])})),u=1;a[i]=c.reduce((function(t,e){var n=Number(e);return isNaN(n)?t:(t*(u-1)+e)/u++}),0),a[i]=l+a[i].toFixed(s);break;case"sum":var d=o.map((function(e){return Number(e[t.property])}));a[i]=d.reduce((function(t,e){var n=Number(e);return isNaN(n)?t:t+e}),0),a[i]=l+a[i].toFixed(s)}n[t.property]=a[i]}else a[i]=""})),this.sumsList=n,a},tableDrop:function(t,e,n){if(!0!==this.isSortable){if("row"==t&&!this.isRowSort)return;if("column"==t&&!this.isColumnSort)return}window.Sortable?window.Sortable.create(e,{ghostClass:C.ghostClass,chosenClass:C.ghostClass,animation:500,delay:0,onEnd:function(t){return n(t)}}):x.a.logs("Sortable")},findData:function(t){var e=this,n={};return function i(o,a){o.forEach((function(r,s){r[e.rowKey]==t&&(n={item:r,index:s,parentList:o,parent:a}),r[e.childrenKey]&&i(r[e.childrenKey],r)}))}(this.list),n}}}),ft=Object(s.a)(ht,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b({card:!t.option.card})},[t.tableOption.title?n(t.tableOption.titleSize||"h2",{tag:"component",style:t.tableOption.titleStyle},[t._v(t._s(t.tableOption.title))]):t._e(),t._v(" "),n("header-search",{ref:"headerSearch",attrs:{search:t.search},scopedSlots:t._u([{key:"search",fn:function(e){return[t._t("search",null,null,e)]}},{key:"searchMenu",fn:function(e){return[t._t("searchMenu",null,null,e)]}},t._l(t.searchSlot,(function(e){return{key:e,fn:function(n){return[t._t(e,null,null,n)]}}}))],null,!0)}),t._v(" "),n("el-card",{attrs:{shadow:t.isCard}},[t.vaildData(t.tableOption.header,!0)?n("header-menu",{ref:"headerMenu",scopedSlots:t._u([{key:"menuLeft",fn:function(e){return[t._t("menuLeft",null,null,e)]}},{key:"menuRight",fn:function(e){return[t._t("menuRight",null,null,e)]}}],null,!0)}):t._e(),t._v(" "),t.vaildData(t.tableOption.tip,t.config.tip)&&t.tableOption.selection?n("el-tag",{staticClass:"avue-crud__tip"},[n("span",{staticClass:"avue-crud__tip-name"},[t._v("\n        "+t._s(t.t("crud.tipStartTitle"))+"\n        "),n("span",{staticClass:"avue-crud__tip-count"},[t._v(t._s(t.selectLen))]),t._v("\n        "+t._s(t.t("crud.tipEndTitle"))+"\n      ")]),t._v(" "),t.vaildData(t.tableOption.selectClearBtn,t.config.selectClearBtn)&&t.tableOption.selection?n("el-button",{directives:[{name:"permission",rawName:"v-permission",value:t.getPermission("selectClearBtn"),expression:"getPermission('selectClearBtn')"}],attrs:{type:"text",size:"small"},on:{click:t.selectClear}},[t._v(t._s(t.t("crud.emptyBtn")))]):t._e(),t._v(" "),t._t("tip")],2):t._e(),t._v(" "),t._t("header"),t._v(" "),n("el-form",{ref:"cellForm",attrs:{model:t.cellForm,"show-message":!1},on:{validate:t.handleValidate}},[n("el-table",{directives:[{name:"loading",rawName:"v-loading",value:t.tableLoading,expression:"tableLoading"}],key:t.reload,ref:"table",class:{"avue-crud--indeterminate":t.vaildData(t.tableOption.indeterminate,!1)},attrs:{data:t.cellForm.list,"row-key":t.handleGetRowKeys,size:t.$AVUE.tableSize||t.controlSize,lazy:t.vaildData(t.tableOption.lazy,!1),load:t.treeLoad,"tree-props":t.treeProps,"expand-row-keys":t.tableOption.expandRowKeys,"default-expand-all":t.tableOption.defaultExpandAll,"highlight-current-row":t.tableOption.highlightCurrentRow,"show-summary":t.tableOption.showSummary,"summary-method":t.tableSummaryMethod,"span-method":t.tableSpanMethod,stripe:t.tableOption.stripe,"show-header":t.tableOption.showHeader,"default-sort":t.tableOption.defaultSort,"row-class-name":t.rowClassName,"cell-class-name":t.cellClassName,"row-style":t.rowStyle,"cell-style":t.cellStyle,"sort-method":t.sortMethod,"sort-orders":t.sortOrders,"sort-by":t.sortBy,fit:t.tableOption.fit,"header-cell-class-name":t.headerCellClassName,"max-height":t.isAutoHeight?t.tableHeight:t.tableOption.maxHeight,height:t.tableHeight,width:t.setPx(t.tableOption.width,t.config.width),border:t.tableOption.border},on:{"current-change":t.currentRowChange,"expand-change":t.expandChange,"header-dragend":t.headerDragend,"row-click":t.rowClick,"row-dblclick":t.rowDblclick,"cell-mouse-enter":t.cellMouseEnter,"cell-mouse-leave":t.cellMouseLeave,"cell-click":t.cellClick,"header-click":t.headerClick,"row-contextmenu":t.rowContextmenu,"header-contextmenu":t.headerContextmenu,"cell-dblclick":t.cellDblclick,"filter-change":t.filterChange,"selection-change":t.selectionChange,select:t.select,"select-all":t.selectAll,"sort-change":t.sortChange}},[n("template",{slot:"empty"},[n("div",{class:t.b("empty")},[t.$slots.empty?t._t("empty"):n("el-empty",{attrs:{"image-size":100,description:t.tableOption.emptyText}})],2)]),t._v(" "),n("column",{attrs:{columnOption:t.columnOption},scopedSlots:t._u([t._l(t.mainSlot,(function(e){return{key:e,fn:function(n){return[t._t(e,null,null,n)]}}}))],null,!0)},[n("column-default",{ref:"columnDefault",attrs:{slot:"header"},slot:"header",scopedSlots:t._u([{key:"expand",fn:function(e){var n=e.row,i=e.index;return[t._t("expand",null,{row:n,index:i})]}}],null,!0)}),t._v(" "),t._v(" "),n("column-menu",{attrs:{slot:"footer"},slot:"footer",scopedSlots:t._u([{key:"menu",fn:function(e){return[t._t("menu",null,null,e)]}},{key:"menuBtn",fn:function(e){return[t._t("menuBtn",null,null,e)]}}],null,!0)})],1)],2)],1),t._v(" "),t._t("footer")],2),t._v(" "),n("table-page",{ref:"tablePage",attrs:{page:t.page}},[n("template",{slot:"page"},[t._t("page")],2)],2),t._v(" "),n("dialog-form",{ref:"dialogForm",scopedSlots:t._u([t._l(t.formSlot,(function(e){return{key:e,fn:function(n){return[t._t(e,null,null,n)]}}})),{key:"menuForm",fn:function(e){return[t._t("menuForm",null,null,e)]}}],null,!0)}),t._v(" "),n("dialog-column",{ref:"dialogColumn"}),t._v(" "),n("dialog-excel",{ref:"dialogExcel"}),t._v(" "),n("dialog-filter",{ref:"dialogFilter"})],1)}),[],!1,null,null,null).exports,mt={img:"img",title:"title",info:"info"},vt=Object(i.a)({name:"card",props:{props:{type:Object,default:function(){return mt}},option:{type:Object,default:function(){return{}}},data:{type:Array,default:function(){return[]}}},data:function(){return{propsDefault:mt}},computed:{imgKey:function(){return this.option.props.img||this.propsDefault.img},titleKey:function(){return this.option.props.title||this.propsDefault.title},infoKey:function(){return this.option.props.info||this.propsDefault.info},span:function(){return this.option.span||8},gutter:function(){return this.option.gutter||20}},methods:{rowAdd:function(){this.$emit("row-add")},rowClick:function(t,e){this.$emit("row-click",t,e)}}}),bt=Object(s.a)(vt,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b()},[n("el-row",{attrs:{span:24,gutter:t.gutter}},[t.vaildData(t.option.addBtn,!0)?n("el-col",{attrs:{span:t.span}},[n("div",{class:t.b("item",{add:!0}),on:{click:function(e){return t.rowAdd()}}},[n("i",{staticClass:"el-icon-plus"}),t._v(" "),n("span",[t._v("添加")])])]):t._e(),t._v(" "),t._l(t.data,(function(e,i){return n("el-col",{key:i,attrs:{span:t.span}},[n("div",{class:t.b("item"),on:{click:function(n){return t.rowClick(e,i)}}},[n("div",{class:t.b("body")},[n("div",{class:t.b("avatar")},[n("img",{attrs:{src:e[t.imgKey],alt:""}})]),t._v(" "),n("div",{class:t.b("detail")},[n("div",{class:t.b("title")},[t._v(t._s(e[t.titleKey]))]),t._v(" "),n("div",{class:t.b("info")},[t._v(t._s(e[t.infoKey]))])])]),t._v(" "),n("div",{class:t.b("menu")},[t._t("menu",null,{index:i,row:e})],2)])])}))],2)],1)}),[],!1,null,null,null).exports,gt=Object(i.a)({name:"code",props:{height:{type:Number,default:200},syntax:{type:String,default:"javascript"}},computed:{styleName:function(){return{height:this.setPx(this.height)}}},mounted:function(){window.hljs?window.hljs&&"function"==typeof window.hljs.highlightBlock&&window.hljs.highlightBlock(this.$refs.container):x.a.logs("hljs")}}),yt=Object(s.a)(gt,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b()},[n("el-scrollbar",{style:t.styleName},[n("pre",[t._v("      "),n("code",{ref:"container",class:t.syntax},[t._v("\n        "),t._t("default"),t._v("\n      ")],2),t._v("\n    ")])])],1)}),[],!1,null,null,null).exports,_t=n(10),xt=n.n(_t);function wt(t){return(wt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var Ot,Ct=Object(i.a)({name:"chat",data:function(){return{upload:{box:!1,src:"",type:"",title:""},visible:!1,imgSrc:"",videoSrc:"",audioSrc:"",keys:"",show:!1,msg:""}},props:{beforeOpen:Function,tools:{type:Object,default:function(){return{img:!0,video:!0,file:!0}}},placeholder:{type:String,default:"请输入..."},width:{type:[String,Number],default:320},height:{type:[String,Number],default:520},value:{type:String},notice:{type:Boolean,default:!0},audio:{type:Array,default:function(){return["https://www.helloweba.net/demo/notifysound/notify.ogg","https://www.helloweba.net/demo/notifysound/notify.mp3","https://www.helloweba.net/demo/notifysound/notify.wav"]}},config:{type:Object,default:function(){return{}}},keylist:{type:Array,default:function(){return[]}},list:{type:Array,default:function(){return[]}}},watch:{"upload.box":function(t){var e=this;t&&this.$nextTick((function(){e.$refs.form.clearValidate()}))},value:{handler:function(){this.msg=this.value},immediate:!0},msg:{handler:function(){this.$emit("input",this.msg)},immediate:!0}},computed:{heightStyleName:function(){return{height:this.setPx(this.height)}},widthStyleName:function(){return{width:this.setPx(this.width)}},msgActive:function(){return!this.validatenull(this.msg.replace(/[\r\n]/g,""))}},methods:{uploadSubmit:function(){var t=this;this.$refs.form.validate((function(e){e&&(t.upload.box=!1,t.$emit("submit",t.getDetail(t.upload)))}))},handleUpload:function(t){this.upload.type=t,this.upload.src="","img"===t?this.upload.title="图片上传":"video"===t?this.upload.title="视频上传":"file"===t&&(this.upload.title="文件上传"),this.upload.box=!0},handleClose:function(t){this.imgSrc=void 0,this.videoSrc=void 0,this.audioSrc=void 0,t()},addKey:function(){""!==this.keys&&(this.$emit("keyadd",this.keys),this.keys=""),this.visible=!1},sendKey:function(t){this.$emit("keysend",t)},getAudio:function(){this.$refs.chatAudio.play()},getNotification:function(t){var e=this,n=Notification||window.Notification;if(n){var i=function(){var n=new Notification(e.config.name,{body:t,icon:e.config.img});n.onshow=function(){e.getAudio(),setTimeout((function(){n.close()}),2500)},n.onclick=function(t){n.close()}},o=n.permission;"granted"===o?i():"denied"===o?console.log("用户拒绝了你!!!"):n.requestPermission((function(t){"granted"===t?i():console.log("用户无情残忍的拒绝了你!!!")}))}},pushMsg:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=!0===e.mine,i=e.text||{},o=e.date,a={date:o||xt()().format("YYYY-MM-DD HH:mm:ss"),text:"object"!=wt(i)?{text:i}:i,mine:n,img:n?this.config.myImg:this.config.img,name:n?this.config.myName:this.config.name};this.list.push(a),setTimeout((function(){t.setScroll()}),50)},setScroll:function(t){var e=this;this.$nextTick((function(){e.$refs.main.scrollTop=t||e.$refs.main.scrollHeight}))},handleSend:function(){this.msgActive&&this.$emit("submit")},handleItemMsg:function(t){this.$emit("submit",t.ask)},handleDetail:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",n=e;return setTimeout((function(){t.$refs.content.forEach((function(e){for(var n=function(n){var i=e.children[n];0!=i.getAttribute("data-flag")&&(i.setAttribute("data-flag",0),i.onclick=function(){t.handleEvent(i.dataset)},"IMG"===i.tagName?(i.className="web__msg--img",i.src=i.getAttribute("data-src")):"VIDEO"===i.tagName?(i.className="web__msg--video",i.src=i.getAttribute("data-src")):"AUDIO"===i.tagName?(i.className="web__msg--audio",i.controls="controls",i.src=i.getAttribute("data-src")):"FILE"===i.tagName?(i.className="web__msg--file",i.innerHTML="<h2>File</h2><span>".concat(i.getAttribute("data-name"),"</span>")):"MAP"===i.tagName&&(i.className="web__msg--file web__msg--map",i.innerHTML="<h2>Map</h2><span>".concat(i.getAttribute("data-longitude")," , ").concat(i.getAttribute("data-latitude"),"<br />").concat(i.getAttribute("data-address"),"</span>")),t.setScroll())},i=0;i<e.children.length;i++)n(i)}))}),0),n},getDetail:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.type,n=t.src,i=t.name,o=t.longitude,a=t.latitude,r=t.address;return"img"===e?'<img data-type="IMG" data-src="'.concat(n,'"  />'):"video"===e?'<video data-type="VIDEO"  data-src="'.concat(n,'"></video>'):"audio"===e?'<audio data-type="AUDIO"  data-src="'.concat(n,'"></audio>'):"file"===e?'<file data-type="FILE" data-name="'.concat(i,'" data-src="').concat(n,'"></file>'):"map"===e?'<map data-type="MAP" data-src="'.concat(n,'" data-address="').concat(r,' "data-latitude="').concat(a,'" data-longitude="').concat(o,'"></map>'):void 0},handleEvent:function(t){var e=this,n=function(){"IMG"===t.type?(e.imgSrc=t.src,e.show=!0):"VIDEO"===t.type?(e.videoSrc=t.src,e.show=!0):"AUDIO"===t.type?(e.audioSrc=t.src,e.show=!0):"FILE"===t.type&&window.open(t.src)};"function"==typeof this.beforeOpen?this.beforeOpen(t,n):n()},rootSendMsg:function(t){this.pushMsg({text:t}),this.notice&&this.getNotification(t.text||t)}}}),kt=Object(s.a)(Ct,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b(),style:t.heightStyleName,on:{keyup:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.handleSend.apply(null,arguments)}}},[n("audio",{ref:"chatAudio"},[n("source",{attrs:{src:t.audio[0],type:"audio/ogg"}}),t._v(" "),n("source",{attrs:{src:t.audio[1],type:"audio/mpeg"}}),t._v(" "),n("source",{attrs:{src:t.audio[2],type:"audio/wav"}})]),t._v(" "),n("div",{staticClass:"web__logo"},[n("img",{staticClass:"web__logo-img",attrs:{src:t.config.img,alt:""}}),t._v(" "),n("div",{staticClass:"web__logo-info"},[n("p",{staticClass:"web__logo-name"},[t._v(t._s(t.config.name))]),t._v(" "),n("p",{staticClass:"web__logo-dept"},[t._v(t._s(t.config.dept))])]),t._v(" "),t._t("header")],2),t._v(" "),n("div",{staticClass:"web__content"},[n("div",{style:t.widthStyleName},[n("div",{ref:"main",staticClass:"web__main"},t._l(t.list,(function(e,i){return n("div",{key:i,staticClass:"web__main-item",class:{"web__main-item--mine":e.mine}},[n("div",{staticClass:"web__main-user"},[n("img",{attrs:{src:e.img}}),t._v(" "),n("cite",[t._v("\n              "+t._s(e.name)+"\n              "),n("i",[t._v(t._s(e.date))])])]),t._v(" "),n("div",{staticClass:"web__main-text"},[n("div",{staticClass:"web__main-arrow"}),t._v(" "),n("span",{ref:"content",refInFor:!0,domProps:{innerHTML:t._s(t.handleDetail(e.text.text))}}),t._v(" "),t.validatenull(e.text.list)?t._e():n("ul",{staticClass:" web__main-list"},t._l(e.text.list,(function(e,i){return n("li",{key:i,on:{click:function(n){return t.handleItemMsg(e)}}},[t._v(t._s(e.text))])})),0)])])})),0),t._v(" "),n("div",{staticClass:"web__footer",style:t.widthStyleName},[n("div",{staticClass:"web__tools"},[t.tools.img?n("i",{staticClass:"el-icon-picture-outline",on:{click:function(e){return t.handleUpload("img")}}}):t._e(),t._v(" "),t.tools.video?n("i",{staticClass:"el-icon-video-camera",on:{click:function(e){return t.handleUpload("video")}}}):t._e(),t._v(" "),t.tools.file?n("i",{staticClass:"el-icon-folder-opened",on:{click:function(e){return t.handleUpload("file")}}}):t._e()]),t._v(" "),n("div",{staticClass:"web__msg"},[n("textarea",{directives:[{name:"model",rawName:"v-model",value:t.msg,expression:"msg"}],staticClass:"web__msg-input",attrs:{rows:"2",placeholder:t.placeholder},domProps:{value:t.msg},on:{input:function(e){e.target.composing||(t.msg=e.target.value)}}}),t._v(" "),n("div",{staticClass:"web__msg-menu"},[n("el-dropdown",{staticClass:"web__msg-submit",attrs:{"split-button":"",type:"primary",size:"mini",trigger:"click"},on:{click:t.handleSend}},[t._v("\n              å‘送\n              "),n("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[n("el-dropdown-item",[n("el-popover",{attrs:{placement:"top",width:"160"},model:{value:t.visible,callback:function(e){t.visible=e},expression:"visible"}},[n("el-input",{staticStyle:{"margin-bottom":"10px"},attrs:{size:"mini",rows:3,"show-word-limit":"",maxlength:"100",placeholder:"请输入快捷回复语",type:"textarea"},model:{value:t.keys,callback:function(e){t.keys=e},expression:"keys"}}),t._v(" "),n("div",{staticStyle:{"text-align":"right",margin:"0"}},[n("el-button",{attrs:{size:"mini",type:"text"},on:{click:function(e){t.visible=!1}}},[t._v("取消")]),t._v(" "),n("el-button",{attrs:{type:"primary",size:"mini"},on:{click:t.addKey}},[t._v("确定")])],1),t._v(" "),n("el-button",{attrs:{slot:"reference",type:"text",icon:"el-icon-plus"},slot:"reference"})],1)],1),t._v(" "),n("el-scrollbar",{staticStyle:{height:"100px"}},t._l(t.keylist,(function(e,i){return n("el-dropdown-item",{key:i,nativeOn:{click:function(n){return t.sendKey(e)}}},[n("el-tooltip",{attrs:{effect:"dark",content:e,placement:"top"}},[n("span",[t._v(" "+t._s(e.substr(0,10))+t._s(e.length>10?"...":""))])])],1)})),1)],1)],1)],1)])])]),t._v(" "),t._t("default")],2),t._v(" "),n("el-dialog",{attrs:{title:t.upload.title,"append-to-body":"",visible:t.upload.box,width:"30%"},on:{"update:visible":function(e){return t.$set(t.upload,"box",e)}}},[n("el-form",{ref:"form",attrs:{model:t.upload}},[n("el-form-item",{attrs:{prop:"src",rules:[{required:!0,message:"地址不能为空"}]}},[n("el-input",{staticStyle:{"margin-bottom":"10px"},attrs:{size:"mini",rows:4,"show-word-limit":"",maxlength:"100",placeholder:"请输入地址",type:"textarea"},model:{value:t.upload.src,callback:function(e){t.$set(t.upload,"src",e)},expression:"upload.src"}})],1)],1),t._v(" "),n("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[n("el-button",{attrs:{size:"small"},on:{click:function(e){t.upload.box=!1}}},[t._v("取 æ¶ˆ")]),t._v(" "),n("el-button",{attrs:{type:"primary",size:"small"},on:{click:t.uploadSubmit}},[t._v("ç¡® å®š")])],1)],1),t._v(" "),n("el-dialog",{staticClass:"web__dialog",attrs:{visible:t.show,width:"40%","append-to-body":"","before-close":t.handleClose},on:{"update:visible":function(e){t.show=e}}},[t.imgSrc?n("img",{staticStyle:{width:"100%","object-fit":"cover"},attrs:{src:t.imgSrc}}):t._e(),t._v(" "),t.videoSrc?n("video",{staticStyle:{width:"100%","object-fit":"cover"},attrs:{src:t.videoSrc,controls:"controls"}}):t._e(),t._v(" "),t.audioSrc?n("audio",{staticStyle:{width:"100%","object-fit":"cover"},attrs:{src:t.audioSrc,controls:"controls"}}):t._e()])],1)}),[],!1,null,null,null).exports,St={avatar:"avatar",author:"author",body:"body"},Et=Object(i.a)({name:"comment",props:{reverse:{type:Boolean,default:!1},data:{type:Object,default:function(){return{}}},props:{type:Object,default:function(){return St}},option:{type:Object,default:function(){return{}}}},computed:{avatarKey:function(){return this.props.avatar||St.avatar},authorKey:function(){return this.props.author||St.author},bodyKey:function(){return this.props.body||St.body},avatar:function(){return this.data[this.avatarKey]},author:function(){return this.data[this.authorKey]},body:function(){return this.data[this.bodyKey]}},mounted:function(){}}),jt=Object(s.a)(Et,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b({reverse:t.reverse})},[n("img",{class:t.b("avatar"),attrs:{src:t.avatar,alt:""}}),t._v(" "),n("div",{class:t.b("main")},[n("div",{class:t.b("header")},[t.author?n("div",{class:t.b("author"),domProps:{textContent:t._s(t.author)}}):t._e(),t._v(" "),t._t("default")],2),t._v(" "),t.body?n("div",{class:t.b("body"),domProps:{innerHTML:t._s(t.body)}}):t._e()])])}),[],!1,null,null,null).exports,$t=n(16).a,Dt=Object(s.a)($t,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:[t.b(),{"avue--detail":t.isDetail}],style:{width:t.setPx(t.parentOption.formWidth,"100%")}},[n("el-form",{ref:"form",attrs:{"status-icon":t.parentOption.statusIcon,model:t.form,"label-suffix":t.labelSuffix,size:t.$AVUE.formSize||t.controlSize,"label-position":t.parentOption.labelPosition,"label-width":t.setPx(t.parentOption.labelWidth,t.labelWidth)},nativeOn:{submit:function(t){t.preventDefault()}}},[n("el-row",{class:{"avue-form__tabs":t.isTabs},attrs:{span:24}},[t._l(t.columnOption,(function(e,i){return n("avue-group",{key:e.prop,attrs:{tabs:t.isTabs,arrow:e.arrow,collapse:e.collapse,display:t.vaildDisplay(e),icon:e.icon,index:i,header:!t.isTabs,active:t.activeName,label:e.label},on:{change:t.handleGroupClick}},[t.isTabs&&1==i?n("el-tabs",{class:t.b("tabs"),attrs:{slot:"tabs",type:t.tabsType},on:{"tab-click":t.handleTabClick},slot:"tabs",model:{value:t.activeName,callback:function(e){t.activeName=e},expression:"activeName"}},[t._l(t.columnOption,(function(e,i){return[t.vaildDisplay(e)&&0!=i?n("el-tab-pane",{key:i,attrs:{name:i+""}},[n("span",{attrs:{slot:"label"},slot:"label"},[t.getSlotName(e,"H",t.$scopedSlots)?t._t(t.getSlotName(e,"H"),null,{column:t.column}):[n("i",{class:e.icon},[t._v(" ")]),t._v("\n                  "+t._s(e.label)+"\n                ")]],2)]):t._e()]}))],2):t._e(),t._v(" "),t.getSlotName(e,"H",t.$scopedSlots)?n("template",{slot:"header"},[t._t(t.getSlotName(e,"H"),null,{column:e})],2):t._e(),t._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:t.isGroupShow(e,i),expression:"isGroupShow(item,index)"}],class:t.b("group",{flex:t.vaildData(e.flex,!0)})},[t._l(e.column,(function(i,o){return[t.vaildDisplay(i)?n("el-col",{key:o,class:[t.b("row"),{"avue--detail avue--detail__column":t.vaildDetail(i)},i.className],style:{paddingLeft:t.gutter,paddingRight:t.gutter},attrs:{span:t.getSpan(i),md:t.getSpan(i),sm:i.smSpan||e.smSpan||12,xs:i.xsSpan||e.xmSpan||24,offset:i.offset||e.offset||0}},[n("el-form-item",{class:t.b("item--"+(i.labelPosition||e.labelPosition||"")),attrs:{prop:i.prop,label:i.label,rules:i.rules,"label-position":i.labelPosition||e.labelPosition||t.parentOption.labelPosition,"label-width":t.getLabelWidth(i,e)},scopedSlots:t._u([{key:"error",fn:function(e){return t.getSlotName(i,"E",t.$scopedSlots)?[t._t(t.getSlotName(i,"E"),null,null,Object.assign(e,{column:i,value:t.form[i.prop],readonly:t.readonly||i.readonly,disabled:t.getDisabled(i),size:i.size||t.controlSize,dic:t.DIC[i.prop]}))]:void 0}}],null,!0)},[t.getSlotName(i,"L",t.$scopedSlots)?n("template",{slot:"label"},[t._t(t.getSlotName(i,"L"),null,{column:i,value:t.form[i.prop],readonly:i.readonly||t.readonly,disabled:t.getDisabled(i),size:i.size||t.controlSize,dic:t.DIC[i.prop]})],2):i.labelTip?n("template",{slot:"label"},[n("el-tooltip",{staticClass:"item",attrs:{effect:"dark",placement:i.labelTipPlacement||"top-start"}},[n("div",{attrs:{slot:"content"},domProps:{innerHTML:t._s(i.labelTip)},slot:"content"}),t._v(" "),n("i",{staticClass:"el-icon-info"})]),t._v(" "),n("span",[t._v(" "+t._s(i.label)+t._s(t.labelSuffix))])],1):t._e(),t._v(" "),t._v(" "),n(t.validTip(i)?"div":"elTooltip",{tag:"component",attrs:{disabled:t.validTip(i),content:t.vaildData(i.tip,t.getPlaceholder(i)),placement:i.tipPlacement}},[t.$scopedSlots[i.prop]?t._t(i.prop,null,{value:t.form[i.prop],column:i,label:t.form["$"+i.prop],size:i.size||t.controlSize,readonly:t.readonly||i.readonly,disabled:t.getDisabled(i),dic:t.DIC[i.prop]}):n("form-temp",t._b({ref:i.prop,refInFor:!0,attrs:{column:i,dic:t.DIC[i.prop],props:t.parentOption.props,propsHttp:t.parentOption.propsHttp,disabled:t.getDisabled(i),readonly:i.readonly||t.readonly,enter:t.parentOption.enter,size:t.parentOption.size,"column-slot":t.columnSlot},on:{enter:t.submit,change:function(n){return t.propChange(e.column,i)}},scopedSlots:t._u([t._l(t.getSlotName(i,"T",t.$scopedSlots)?[i]:[],(function(e){return{key:t.getSlotName(i,"T"),fn:function(n){return[t._t(t.getSlotName(e,"T"),null,null,n)]}}})),t._l(t.columnSlot,(function(e){return{key:e,fn:function(n){return[t._t(e,null,null,n)]}}}))],null,!0),model:{value:t.form[i.prop],callback:function(e){t.$set(t.form,i.prop,e)},expression:"form[column.prop]"}},"form-temp",t.$uploadFun(i),!1))],2)],2)],1):t._e(),t._v(" "),t.vaildDisplay(i)&&i.row&&24!==i.span&&i.count?n("div",{key:"line"+o,class:t.b("line"),style:{width:i.count/24*100+"%"}}):t._e()]})),t._v(" "),t.isDetail||t.isMenu?t._e():n("form-menu",{scopedSlots:t._u([{key:"menuForm",fn:function(e){return[t._t("menuForm",null,null,e)]}}],null,!0)})],2)],2)})),t._v(" "),!t.isDetail&&t.isMenu?n("form-menu",{scopedSlots:t._u([{key:"menuForm",fn:function(e){return[t._t("menuForm",null,null,e)]}}],null,!0)}):t._e()],2)],1)],1)}),[],!1,null,null,null).exports,At=function(){return{mixins:[E.a],data:function(){return{stringMode:!1,name:"",text:void 0,propsHttpDefault:B.d,propsDefault:B.e}},props:{blur:Function,focus:Function,change:Function,click:Function,typeformat:Function,control:Function,separator:{type:String,default:B.g},params:{type:Object,default:function(){return{}}},listType:{type:String},tableData:{type:Object},value:{},column:{type:Object,default:function(){return{}}},label:{type:String,default:""},readonly:{type:Boolean,default:!1},size:{type:String,default:""},tip:{type:String,default:""},disabled:{type:Boolean,default:!1},dataType:{type:String},clearable:{type:Boolean,default:!0},type:{type:String,default:""},dicUrl:{type:String,default:""},dicMethod:{type:String,default:""},dicFormatter:Function,dicQuery:{type:Object,default:function(){return{}}},dic:{type:Array,default:function(){return[]}},placeholder:{type:String,default:""},rules:{type:Array},min:{type:Number},max:{type:Number},multiple:{type:Boolean,default:!1},button:{type:Boolean,default:!1},group:{type:Boolean,default:!1},row:{type:Boolean,default:!1},prop:{type:String,default:""},border:{type:Boolean,default:!1},popperClass:{type:String},propsHttp:{type:Object,default:function(){return B.d}},props:{type:Object,default:function(){return B.e}}},watch:{text:{handler:function(t){this.handleChange(t)}},value:{handler:function(){this.initVal()}}},computed:{clearableVal:function(){return!this.disabled&&this.clearable},componentName:function(){return"".concat("el","-").concat(this.name).concat(this.button?"-button":"")},required:function(){return!this.validatenull(this.rules)},isArray:function(){return"array"===this.dataType},isString:function(){return"string"===this.dataType},isNumber:function(){return"number"===this.dataType},nameKey:function(){return this.propsHttp.name||this.propsHttpDefault.name},urlKey:function(){return this.propsHttp.url||this.propsHttpDefault.url},resKey:function(){return this.propsHttp.res||this.propsHttpDefault.res},groupsKey:function(){return this.props.groups||this.propsDefault.groups},valueKey:function(){return this.props.value||this.propsDefault.value},descKey:function(){return this.props.desc||this.propsDefault.desc},leafKey:function(){return this.props.leaf||this.propsDefault.leaf},labelKey:function(){return this.props.label||this.propsDefault.label},childrenKey:function(){return this.props.children||this.propsDefault.children},disabledKey:function(){return this.props.disabled||this.propsDefault.disabled},idKey:function(){return this.props.id||this.propsDefault.id}},created:function(){this.initVal()}}},Tt=function(){return{methods:{bindEvent:function(t,e){e=Object.assign(e,{column:this.column},this.tableData),"function"==typeof this[t]&&("change"==t?1!=this.column.cell&&this[t](e):this[t](e)),this.$emit(t,e)},initVal:function(){this.stringMode="string"==typeof this.value,this.text=Object($.h)(this.value,this.column)},getLabelText:function(t){return this.validatenull(t)?"":"function"==typeof this.typeformat?this.typeformat(t,this.labelKey,this.valueKey):t[this.labelKey]},handleFocus:function(t){this.bindEvent("focus",{value:this.value,event:t})},handleBlur:function(t){this.bindEvent("blur",{value:this.value,event:t})},handleClick:function(t){this.bindEvent("click",{value:this.value,event:t})},handleChange:function(t){var e=t;(this.isString||this.isNumber||this.stringMode||"picture-img"===this.listType)&&Array.isArray(t)&&(e=t.join(this.separator||B.g)),this.bindEvent("change",{value:e}),this.$emit("input",e)}}}},Pt=Object(i.a)({name:"checkbox",props:{all:{type:Boolean,default:!1}},mixins:[At(),Tt()],data:function(){return{checkAll:!1,isIndeterminate:!1,name:"checkbox"}},watch:{dic:function(){this.handleCheckChange(this.text)},text:{handler:function(t){this.handleChange(t),this.handleCheckChange(t)},immediate:!0}},created:function(){},mounted:function(){},methods:{handleCheckAll:function(t){var e=this;this.all&&(this.text=t?this.dic.map((function(t){return t[e.valueKey]})):[],this.isIndeterminate=!1)},handleCheckChange:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];if(this.all){var e=t.length,n=this.dic.length;this.checkAll=e===n,this.isIndeterminate=e>0&&e<n}}}}),Bt=Object(s.a)(Pt,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b()},[t.all?n("el-checkbox",{class:t.b("all"),attrs:{disabled:t.disabled,indeterminate:t.isIndeterminate},on:{change:t.handleCheckAll},model:{value:t.checkAll,callback:function(e){t.checkAll=e},expression:"checkAll"}},[t._v("全选")]):t._e(),t._v(" "),n("el-checkbox-group",{attrs:{disabled:t.disabled,size:t.size,min:t.min,max:t.max},on:{change:t.handleCheckChange},nativeOn:{click:function(e){return t.handleClick.apply(null,arguments)}},model:{value:t.text,callback:function(e){t.text=e},expression:"text"}},t._l(t.dic,(function(e,i){return n(t.componentName,{key:i,tag:"component",attrs:{label:e[t.valueKey],border:t.border,size:t.size,readonly:t.readonly,disabled:e[t.disabledKey]}},[t._v(t._s(e[t.labelKey])+"\n    ")])})),1)],1)}),[],!1,null,null,null).exports,Mt=Object(i.a)({name:"date",mixins:[At(),Tt(),j.a],data:function(){return{text:"",menu:[]}},props:{editable:{type:Boolean,default:!0},unlinkPanels:{type:Boolean,default:!1},value:{},startPlaceholder:{type:String},endPlaceholder:{type:String},rangeSeparator:{type:String},defaultValue:{type:[String,Array]},defaultTime:{type:[String,Array]},pickerOptions:{type:Object,default:function(){}},type:{type:String,default:"date"},valueFormat:{},format:{}}}),Lt=Object(s.a)(Mt,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b()},[n("el-date-picker",{attrs:{type:t.type,"popper-class":t.popperClass,size:t.size,editable:t.editable,"unlink-panels":t.unlinkPanels,readonly:t.readonly,"default-value":t.defaultValue,"default-time":t.defaultTime,"range-separator":t.rangeSeparator,"start-placeholder":t.startPlaceholder,"end-placeholder":t.endPlaceholder,format:t.format,clearable:t.clearableVal,"picker-options":t.pickerOptions,"value-format":t.valueFormat,placeholder:t.placeholder,disabled:t.disabled},on:{blur:t.handleBlur,focus:t.handleFocus},nativeOn:{click:function(e){return t.handleClick.apply(null,arguments)}},model:{value:t.text,callback:function(e){t.text=e},expression:"text"}})],1)}),[],!1,null,null,null).exports,It=Object(i.a)({name:"draggable",props:{index:{type:[String,Number]},mask:{type:Boolean,default:!0},scale:{type:Number,default:1},readonly:{type:Boolean,default:!1},resize:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},lock:{type:Boolean,default:!1},step:{type:Number,default:1},zIndex:{type:[Number,String],default:1},left:{type:Number,default:0},top:{type:Number,default:0},width:{type:Number},height:{type:Number}},data:function(){return{first:!0,value:"",baseWidth:0,baseHeight:0,baseLeft:0,baseTop:0,children:{},moveActive:!1,overActive:!1,rangeActive:!1,active:!1,keyDown:null,rangeList:[{classname:"left"},{classname:"right"},{classname:"top"},{classname:"bottom"},{classname:"top-left"},{classname:"top-right"},{classname:"bottom-left"},{classname:"bottom-right"}]}},computed:{scaleVal:function(){return this.scale},styleMenuName:function(){return{transformOrigin:"0 0",transform:"scale(".concat(this.scaleVal,")")}},styleLineName:function(){return{borderWidth:this.setPx(this.scaleVal)}},styleRangeName:function(){var t=10*this.scaleVal;return{width:this.setPx(t),height:this.setPx(t)}},styleLabelName:function(){return{fontSize:this.setPx(18*this.scaleVal)}},styleName:function(){var t=this;return Object.assign(t.active?Object.assign({zIndex:9999},t.styleLineName):{zIndex:t.zIndex},{top:this.setPx(this.baseTop),left:this.setPx(this.baseLeft),width:this.setPx(this.baseWidth),height:this.setPx(this.baseHeight)})}},watch:{active:function(t){t?this.handleKeydown():document.onkeydown=this.keyDown},width:function(t){this.baseWidth=Object(D.n)(t)||this.children.offsetWidth},height:function(t){this.baseHeight=Object(D.n)(t)||this.children.offsetHeight},left:function(t){this.baseLeft=Object(D.n)(t)},top:function(t){this.baseTop=Object(D.n)(t)},baseWidth:function(t){this.$refs.wrapper.style.width=this.setPx(t),this.resize&&this.children.style&&(this.children.style.width=this.setPx(t))},baseHeight:function(t){this.$refs.wrapper.style.height=this.setPx(t),this.resize&&this.children.style&&(this.children.style.height=this.setPx(t))},baseLeft:function(t,e){this.first||this.setMove(t-e,0)},baseTop:function(t,e){this.first||this.setMove(0,t-e)}},mounted:function(){this.init()},methods:{init:function(){var t=this;this.children=this.$refs.item.firstChild,this.baseWidth=Object(D.n)(this.width)||this.children.offsetWidth,this.baseHeight=Object(D.n)(this.height)||this.children.offsetHeight,this.baseLeft=Object(D.n)(this.left),this.baseTop=Object(D.n)(this.top),this.keyDown=document.onkeydown,this.$nextTick((function(){t.first=!1}))},setMove:function(t,e){this.$emit("move",{index:this.index,left:t,top:e})},setLeft:function(t){this.baseLeft=t},setTop:function(t){this.baseTop=t},getRangeStyle:function(t){var e=this,n=10*this.scaleVal/2,i={};return t.split("-").forEach((function(t){i[t]=e.setPx(-n)})),i},setOverActive:function(t){this.overActive=t},setActive:function(t){this.active=t},rangeMove:function(t,e){var n=this;if(!this.disabled&&!this.lock){var i,o,a,r,s,l;this.rangeActive=!0,this.handleMouseDown();var c=t.clientX,u=t.clientY;document.onmousemove=function(t){n.moveActive=!0,"right"===e?(i=!0,o=!1):"left"===e?(i=!0,a=!0,s=!0,o=!1):"top"===e?(i=!1,o=!0,r=!0,l=!0):"bottom"===e?(i=!1,o=!0):"bottom-right"===e?(i=!0,o=!0):"bottom-left"===e?(i=!0,o=!0,a=!0,s=!0):"top-right"===e?(i=!0,o=!0,r=!0,l=!0):"top-left"===e&&(i=!0,o=!0,a=!0,s=!0,r=!0,l=!0);var d=t.clientX-c,p=t.clientY-u;if(c=t.clientX,u=t.clientY,i){var h=d*n.step;s&&(h=-h),a&&(n.baseLeft=Object(D.n)(n.baseLeft-h)),n.baseWidth=Object(D.n)(n.baseWidth+h)}if(o){var f=p*n.step;l&&(f=-f),r&&(n.baseTop=Object(D.n)(n.baseTop-f)),n.baseHeight=Object(D.n)(n.baseHeight+f)}},this.handleClear()}},handleOut:function(){this.overActive=!1,this.$emit("out",{index:this.index,width:this.baseWidth,height:this.baseHeight,left:this.baseLeft,top:this.baseTop})},handleOver:function(){this.disabled||(this.overActive=!0,this.$emit("over",{index:this.index,width:this.baseWidth,height:this.baseHeight,left:this.baseLeft,top:this.baseTop}))},handleMove:function(t){var e=this;if(!this.disabled&&!this.lock){setTimeout((function(){e.$refs.input.focus()})),this.active=!0,this.handleMouseDown();var n=t.clientX,i=t.clientY;document.onmousemove=function(t){var o=t.clientX-n,a=t.clientY-i;n=t.clientX,i=t.clientY,e.baseLeft=Object(D.n)(e.baseLeft+o*e.step),e.baseTop=Object(D.n)(e.baseTop+a*e.step)},this.handleClear()}},handleClear:function(){var t=this;document.onmouseup=function(){document.onmousemove=null,document.onmouseup=null,t.handleMouseUp()}},handleKeydown:function(){var t=arguments,e=this;document.onkeydown=function(n){var i=n||window.event||t.callee.caller.arguments[0],o=1*e.step;e.$refs.input.focused&&(i&&38==i.keyCode?e.baseTop=Object(D.n)(e.baseTop-o):i&&37==i.keyCode?e.baseLeft=Object(D.n)(e.baseLeft-o):i&&40==i.keyCode?e.baseTop=Object(D.n)(e.baseTop+o):i&&39==i.keyCode&&(e.baseLeft=Object(D.n)(e.baseLeft+o)),n.stopPropagation(),n.preventDefault(),e.$emit("blur",{index:e.index,width:e.baseWidth,height:e.baseHeight,left:e.baseLeft,top:e.baseTop}),e.keyDown&&e.keyDown(n))}},handleMouseDown:function(t){this.moveActive=!0,this.$emit("focus",{index:this.index,width:this.baseWidth,height:this.baseHeight,left:this.baseLeft,top:this.baseTop})},handleMouseUp:function(){this.moveActive=!1,this.rangeActive=!1,this.$emit("blur",{index:this.index,width:this.baseWidth,height:this.baseHeight,left:this.baseLeft,top:this.baseTop})}}}),Nt=Object(s.a)(It,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b({active:(t.active||t.overActive)&&!t.readonly,move:t.moveActive,click:t.disabled}),style:t.styleName,on:{mousedown:function(e){return e.stopPropagation(),t.handleMove.apply(null,arguments)},mouseover:function(e){return e.stopPropagation(),t.handleOver.apply(null,arguments)},mouseout:function(e){return e.stopPropagation(),t.handleOut.apply(null,arguments)}}},[n("el-input",{ref:"input",class:t.b("focus"),model:{value:t.value,callback:function(e){t.value=e},expression:"value"}}),t._v(" "),n("div",{ref:"wrapper",class:t.b("wrapper")},[(t.active||t.overActive||t.moveActive)&&!t.readonly?[n("div",{class:t.b("line",["left"]),style:t.styleLineName}),t._v(" "),n("div",{class:t.b("line",["top"]),style:t.styleLineName}),t._v(" "),n("div",{class:t.b("line",["label"]),style:t.styleLabelName},[t._v(t._s(t.baseLeft)+","+t._s(t.baseTop))])]:t._e(),t._v(" "),t._l(t.rangeList,(function(e,i){return t.readonly?t._e():[t.active?n("div",{key:i,class:t.b("range",[e.classname]),style:[t.styleRangeName,t.getRangeStyle(e.classname)],on:{mousedown:function(n){return n.stopPropagation(),t.rangeMove(n,e.classname)}}}):t._e()]})),t._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:t.active||t.overActive,expression:"active || overActive"}],class:t.b("menu"),style:t.styleMenuName},[t._t("menu",null,{zIndex:t.zIndex,index:t.index})],2),t._v(" "),n("div",{ref:"item",class:t.b("item")},[t._t("default")],2),t._v(" "),!t.disabled&&t.mask?n("div",{class:t.b("mask")}):t._e()],2)],1)}),[],!1,null,null,null).exports,zt=Object(i.a)({name:"flow",props:{active:[String,Number],index:[String,Number],node:Object},data:function(){return{mouseEnter:!1}},computed:{flowNodeContainer:{get:function(){return{position:"absolute",width:"200px",top:this.setPx(this.node.top),left:this.setPx(this.node.left),boxShadow:this.mouseEnter?"#66a6e0 0px 0px 12px 0px":"",backgroundColor:"transparent"}}}},methods:{showDelete:function(){this.mouseEnter=!0},hideDelete:function(){this.mouseEnter=!1},changeNodeSite:function(){this.node.left==this.$refs.node.style.left&&this.node.top==this.$refs.node.style.top||this.$emit("changeNodeSite",{index:this.index,left:Number(this.$refs.node.style.left.replace("px","")),top:Number(this.$refs.node.style.top.replace("px",""))})}}}),Ft=Object(s.a)(zt,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{ref:"node",style:t.flowNodeContainer,attrs:{left:t.node.left,top:t.node.top,disabled:"",mask:!1},on:{mouseenter:t.showDelete,mouseleave:t.hideDelete,mouseup:t.changeNodeSite}},[n("div",{class:t.b("node",{active:t.active===t.node.id})},[n("div",{class:t.b("node-header")},[n("i",{staticClass:"el-icon-rank",class:t.b("node-drag")}),t._v(" "),t._t("header",null,{node:t.node})],2),t._v(" "),n("div",{class:t.b("node-body")},[t._t("default",null,{node:t.node})],2)])])}),[],!1,null,null,null).exports,Ht=Object(i.a)({name:"flow",components:{flowNode:Ft},data:function(){return{active:"",jsPlumb:{},id:"",jsplumbSetting:{Anchors:["Top","TopCenter","TopRight","TopLeft","Right","RightMiddle","Bottom","BottomCenter","BottomRight","BottomLeft","Left","LeftMiddle"],Container:"",Connector:"Flowchart",ConnectionsDetachable:!1,DeleteEndpointsOnDetach:!1,Endpoint:["Rectangle",{height:10,width:10}],EndpointStyle:{fill:"rgba(255,255,255,0)",outlineWidth:1},LogEnabled:!0,PaintStyle:{stroke:"black",strokeWidth:3},Overlays:[["Arrow",{width:12,length:12,location:1}]],RenderMode:"svg"},jsplumbConnectOptions:{isSource:!0,isTarget:!0,anchor:"Continuous"},jsplumbSourceOptions:{filter:".avue-flow__node-drag",filterExclude:!1,anchor:"Continuous",allowLoopback:!1},jsplumbTargetOptions:{filter:".avue-flow__node-drag",filterExclude:!1,anchor:"Continuous",allowLoopback:!1},loadEasyFlowFinish:!1}},props:{value:{type:String},option:{type:Object},width:{type:[Number,String],default:"100%"},height:{type:[Number,String],default:"100%"}},watch:{value:{handler:function(){this.active=this.value},immediate:!0},active:function(t){this.$emit("input",t)}},created:function(){this.id=Object(D.s)(),this.jsplumbSetting.Container=this.id},mounted:function(){this.init()},computed:{styleName:function(){return{position:"relative",width:this.setPx(this.width),height:this.setPx(this.height)}}},methods:{init:function(){var t=this;this.jsPlumb=jsPlumb.getInstance(),this.$nextTick((function(){t.jsPlumbInit()}))},handleClick:function(t){this.$emit("click",t)},hasLine:function(t,e){for(var n=0;n<this.data.lineList.length;n++){var i=this.data.lineList[n];if(i.from===t&&i.to===e)return!0}return!1},hashOppositeLine:function(t,e){return this.hasLine(e,t)},deleteLine:function(t,e){this.option.lineList=this.option.lineList.filter((function(n){return n.from!==t&&n.to!==e}))},changeLine:function(t,e){this.deleteLine(t,e)},changeNodeSite:function(t){for(var e=t.index,n=t.left,i=t.top,o=0;o<this.option.nodeList.length;o++){this.option.nodeList[o];o===e&&(this.$set(this.option.nodeList[o],"left",n),this.$set(this.option.nodeList[o],"top",i))}},deleteNode:function(t){var e=this;return this.$confirm("确定要删除节点"+t+"?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning",closeOnClickModal:!1}).then((function(){e.option.nodeList.forEach((function(e){e.id===t&&(e.display=!0)})),e.$nextTick((function(){this.jsPlumb.removeAllEndpoints(t)}))})).catch((function(){})),!0},addNode:function(t){var e=this.option.nodeList.length,n="node"+e;this.option.nodeList.push({id:"node"+e,name:t,left:0,top:0}),this.$nextTick((function(){this.jsPlumb.makeSource(n,this.jsplumbSourceOptions),this.jsPlumb.makeTarget(n,this.jsplumbTargetOptions),this.jsPlumb.draggable(n,{containment:"parent"})}))},loadEasyFlow:function(){for(var t=0;t<this.option.nodeList.length;t++){var e=this.option.nodeList[t];this.jsPlumb.makeSource(e.id,this.jsplumbSourceOptions),this.jsPlumb.makeTarget(e.id,this.jsplumbTargetOptions),this.jsPlumb.draggable(e.id)}for(t=0;t<this.option.lineList.length;t++){var n=this.option.lineList[t];this.jsPlumb.connect({source:n.from,target:n.to},this.jsplumbConnectOptions)}this.$nextTick((function(){this.loadEasyFlowFinish=!0}))},jsPlumbInit:function(){var t=this;this.jsPlumb.ready((function(){t.jsPlumb.importDefaults(t.jsplumbSetting),t.jsPlumb.setSuspendDrawing(!1,!0),t.loadEasyFlow(),t.jsPlumb.bind("click",(function(e,n){console.log("click",e),t.$confirm("确定删除所点击的线吗?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((function(){t.jsPlumb.deleteConnection(e)})).catch((function(){}))})),t.jsPlumb.bind("connection",(function(e){console.log("connection",e);var n=e.source.id,i=e.target.id;t.loadEasyFlowFinish&&t.option.lineList.push({from:n,to:i})})),t.jsPlumb.bind("connectionDetached",(function(e){console.log("connectionDetached",e),t.deleteLine(e.sourceId,e.targetId)})),t.jsPlumb.bind("connectionMoved",(function(e){console.log("connectionMoved",e),t.changeLine(e.originalSourceId,e.originalTargetId)})),t.jsPlumb.bind("contextmenu",(function(t){console.log("contextmenu",t)})),t.jsPlumb.bind("beforeDrop",(function(e){console.log("beforeDrop",e);var n=e.sourceId,i=e.targetId;return n===i?(t.$message.error("不能连接自己"),!1):t.hasLine(n,i)?(t.$message.error("不能重复连线"),!1):!t.hashOppositeLine(n,i)||(t.$message.error("不能回环哦"),!1)})),t.jsPlumb.bind("beforeDetach",(function(t){console.log("beforeDetach",t)}))}))}}}),Kt=Object(s.a)(Ht,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b(),style:t.styleName},[n("div",{style:t.styleName,attrs:{id:t.id}},[n("div",{staticClass:"avue-grid"}),t._v(" "),t._l(t.option.nodeList,(function(e,i){return e.display?t._e():n("flow-node",{key:i,attrs:{node:e,id:e.id,index:i,active:t.active},on:{changeNodeSite:t.changeNodeSite},nativeOn:{click:function(n){return t.handleClick(e)}},scopedSlots:t._u([{key:"header",fn:function(e){var n=e.node;return[t._t("header",null,{node:n})]}}],null,!0)},[t._v(" "),t._t("default",null,{node:e})],2)}))],2)])}),[],!1,null,null,null).exports,Rt=Object(i.a)({name:"group",data:function(){return{activeName:""}},props:{arrow:{type:Boolean,default:!0},collapse:{type:Boolean,default:!0},header:{type:Boolean,default:!0},icon:{type:String},display:{type:Boolean,default:!0},card:{type:Boolean,default:!1},label:{type:String}},watch:{text:function(t){this.activeName=[t]}},computed:{text:function(){return this.collapse?1:0},isHeader:function(){return this.$slots.header&&this.header||(this.label||this.icon)&&this.header}},created:function(){this.activeName=[this.text]},methods:{handleChange:function(t){this.$emit("change",t)}}}),Wt=Object(s.a)(Rt,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.display?n("div",{class:[t.b({header:!t.isHeader,arrow:!t.arrow})]},[t._t("tabs"),t._v(" "),n("el-collapse",{attrs:{value:t.text},on:{change:t.handleChange},model:{value:t.activeName,callback:function(e){t.activeName=e},expression:"activeName"}},[n("el-collapse-item",{attrs:{name:1,disabled:!t.arrow}},[t.$slots.header&&t.header?n("div",{class:[t.b("header")],attrs:{slot:"title"},slot:"title"},[t._t("header")],2):(t.label||t.icon)&&t.header?n("div",{class:[t.b("header")],attrs:{slot:"title"},slot:"title"},[t.icon?n("i",{class:[t.icon,t.b("icon")]}):t._e(),t._v(" "),t.label?n("h1",{class:t.b("title")},[t._v(t._s(t.label))]):t._e()]):t._e(),t._v(" "),t._t("default")],2)],1)],2):t._e()}),[],!1,null,null,null).exports,Ut={img:"img",title:"title",subtile:"title",tag:"tag",status:"status"},Vt=Object(i.a)({name:"notice",props:{finish:{type:Boolean,default:!1},option:{type:Object,default:function(){return{}}},data:{type:Array,default:function(){return[]}}},data:function(){return{page:1,loading:!1}},computed:{props:function(){return this.option.props||Ut},imgKey:function(){return this.props.img||Ut.img},titleKey:function(){return this.props.title||Ut.title},subtitleKey:function(){return this.props.subtitle||Ut.subtitle},tagKey:function(){return this.props.tag||Ut.tag},statusKey:function(){return this.props.status||Ut.status}},methods:{click:function(t){this.$emit("click",t)},handleClick:function(){var t=this;this.loading=!0;this.page++,this.$emit("page-change",this.page,(function(){t.loading=!1}))},getType:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return 0==t?"info":1==t?"":2==t?"warning":3==t?"danger":4==t?"success":void 0}}}),Yt=Object(s.a)(Vt,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b()},[t._l(t.data,(function(e,i){return n("div",{key:i,class:t.b("item"),on:{click:function(n){return t.click(e)}}},[e[t.imgKey]?n("div",{class:t.b("img")},[n("img",{attrs:{src:e[t.imgKey],alt:""}})]):t._e(),t._v(" "),n("div",{class:t.b("content")},[n("div",{class:t.b("title")},[n("span",{class:t.b("name")},[t._v(t._s(e[t.titleKey]))]),t._v(" "),e[t.tagKey]?n("span",{class:t.b("tag")},[n("el-tag",{attrs:{size:"small",type:t.getType(e[t.statusKey])}},[t._v(t._s(e[t.tagKey]))])],1):t._e()]),t._v(" "),n("div",{class:t.b("subtitle")},[t._v(t._s(e[t.subtitleKey]))])])])})),t._v(" "),t.finish?t._e():n("div",{directives:[{name:"loading",rawName:"v-loading",value:t.loading,expression:"loading"}],class:t.b("more"),on:{click:t.handleClick}},[t._v("\n    åŠ è½½æ›´å¤š\n  ")])],2)}),[],!1,null,null,null).exports,Xt=Object(i.a)({name:"license",props:{id:{type:String,default:""},option:{type:Object,default:function(){return{}}}},watch:{option:{handler:function(){this.init()},deep:!0}},data:function(){return{base64:"",draw:!1,canvas:"",context:""}},computed:{img:function(){return this.option.img},list:function(){return this.option.list||[]}},mounted:function(){this.canvas=document.getElementById("canvas"+this.id),this.context=this.canvas.getContext("2d"),this.init()},methods:{init:function(){var t=this;this.draw=!1;var e=new Image;e.src=this.img,e.onload=function(){var n=t.option.width||e.width,i=t.option.width?e.height/e.width*t.option.width:e.height;t.$refs.canvas.width=n,t.$refs.canvas.height=i,t.context.clearRect(0,0,n,i),t.context.drawImage(e,0,0,n,i),t.list.forEach((function(e,n){var i=function(){n==t.list.length-1&&setTimeout((function(){t.draw=!0}),0)};if(e.img){var o=new Image;o.src=e.img,o.onload=function(){var n=e.width||o.width,a=e.width?o.height/o.width*e.width:o.height;t.context.drawImage(o,e.left,e.top,n,a),i()}}else e.bold?t.context.font="bold ".concat(e.size,"px ").concat(e.style):t.context.font="".concat(e.size,"px ").concat(e.style),t.context.fillStyle=e.color,t.context.fillText(e.text,e.left,e.top),t.context.stroke(),i()}))}},getFile:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(new Date).getTime();return new Promise((function(n){var i=setInterval((function(){if(t.draw){var o=t.canvas.toDataURL("image/jpeg",1),a=t.dataURLtoFile(o,e);clearInterval(i),n(a)}}),1e3)}))},downFile:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(new Date).getTime();Object(D.h)(this.base64,t)},getBase64:function(){var t=this;return new Promise((function(e){var n=setInterval((function(){if(t.draw){var i=t.canvas.toDataURL("image/jpeg",1);t.base64=i,clearInterval(n),e(i)}}),100)}))},getPdf:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:(new Date).getTime(),e=this.canvas.width,n=this.canvas.height,i=e/592.28*841.89,o=n,a=0,r=595.28,s=592.28/e*n,l=this.canvas.toDataURL("image/jpeg",1),c=new window.jsPDF("","pt","a4");if(o<i)c.addImage(l,"JPEG",0,0,r,s);else for(;o>0;)c.addImage(l,"JPEG",0,a,r,s),a-=841.89,(o-=i)>0&&c.addPage();c.save("".concat(t,".pdf"))}}}),qt=Object(s.a)(Xt,(function(){var t=this.$createElement,e=this._self._c||t;return e("div",{class:this.b(),staticStyle:{position:"relative"}},[e("canvas",{ref:"canvas",attrs:{id:"canvas"+this.id}}),this._v(" "),this._t("default")],2)}),[],!1,null,null,null).exports,Gt=Object(i.a)({name:"progress",props:{showText:{type:Boolean},width:{type:[Number,String]},strokeWidth:{type:[Number,String]},type:{type:String},color:{type:String},percentage:{type:[Number]}}}),Jt=Object(s.a)(Gt,(function(){var t=this.$createElement,e=this._self._c||t;return e("div",{class:this.b()},[e("el-progress",{attrs:{type:this.type,color:this.color,width:this.width,"text-inside":"","show-text":this.showText,"stroke-width":this.strokeWidth,percentage:this.percentage}})],1)}),[],!1,null,null,null).exports,Qt=Object(i.a)({name:"time",mixins:[At(),Tt(),j.a],data:function(){return{}},props:{editable:{type:Boolean,default:!0},startPlaceholder:{type:String,default:"开始时间"},endPlaceholder:{type:String,default:"结束时间"},rangeSeparator:{type:String},value:{required:!0},defaultValue:{type:[String,Array]},pickerOptions:{type:Object,default:function(){}},valueFormat:{default:""},arrowControl:{type:Boolean,default:!1},type:{default:""},format:{default:""}},watch:{text:function(){Array.isArray(this.text)&&this.validatenull(this.text)&&(this.text=this.text.join(","))}},created:function(){},mounted:function(){},computed:{isRange:function(){return"timerange"===this.type}},methods:{}}),Zt=Object(s.a)(Qt,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b()},[n("el-time-picker",{attrs:{"popper-class":t.popperClass,"is-range":t.isRange,size:t.size,editable:t.editable,"default-value":t.defaultValue,"range-separator":t.rangeSeparator,"arrow-control":t.arrowControl,"start-placeholder":t.startPlaceholder,"end-placeholder":t.endPlaceholder,format:t.format,readonly:t.readonly,clearable:t.clearableVal,"picker-options":t.pickerOptions,"value-format":t.valueFormat,placeholder:t.placeholder,disabled:t.disabled},on:{change:t.handleChange},nativeOn:{click:function(e){return t.handleClick.apply(null,arguments)}},model:{value:t.text,callback:function(e){t.text=e},expression:"text"}})],1)}),[],!1,null,null,null).exports,te=n(5);function ee(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var ne,ie=Object(i.a)({name:"input",mixins:[At(),Tt()],data:function(){return{}},props:(Ot={value:{},maxlength:"",minlength:"",showPassword:{type:Boolean,default:!0},showWordLimit:{type:Boolean,default:!1},target:{type:String,default:" _blank"},prefixIcon:{type:String},suffixIcon:{type:String},prependClick:{type:Function,default:function(){}},prepend:{type:String},appendClick:{type:Function,default:function(){}},append:{type:String}},ee(Ot,"minlength",{type:Number}),ee(Ot,"maxlength",{type:Number}),ee(Ot,"minRows",{type:Number,default:5}),ee(Ot,"maxRows",{type:Number,default:10}),ee(Ot,"autocomplete",{type:String}),Ot),computed:{isSearch:function(){return"search"==this.type},typeParam:function(){return"textarea"===this.type?"textarea":"password"===this.type?"password":"text"}}}),oe=Object(s.a)(ie,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-input",{class:t.b(),attrs:{size:t.size,clearable:t.clearableVal,type:t.typeParam,maxlength:t.maxlength,minlength:t.minlength,"show-password":"password"==t.typeParam&&t.showPassword,autosize:{minRows:t.minRows,maxRows:t.maxRows},"prefix-icon":t.prefixIcon,"suffix-icon":t.suffixIcon,readonly:t.readonly,placeholder:t.placeholder,"show-word-limit":t.showWordLimit,disabled:t.disabled,autocomplete:t.autocomplete},on:{keyup:function(e){if(!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter"))return null;t.isSearch&&t.appendClick()},focus:t.handleFocus,blur:t.handleBlur},nativeOn:{click:function(e){return t.handleClick.apply(null,arguments)}},model:{value:t.text,callback:function(e){t.text=e},expression:"text"}},[t.prepend?n("template",{slot:"prepend"},[n("span",{on:{click:function(e){return t.prependClick()}}},[t._v(t._s(t.prepend))])]):t._e(),t._v(" "),t.append?n("template",{slot:"append"},[n("span",{on:{click:function(e){return t.appendClick()}}},[t._v(t._s(t.append))])]):t.isSearch?n("el-button",{attrs:{slot:"append",icon:"el-icon-search"},on:{click:function(e){return t.appendClick()}},slot:"append"}):t._e()],2)}),[],!1,null,null,null).exports,ae=Object(i.a)({name:"radio",mixins:[At(),Tt()],data:function(){return{name:"radio"}},props:{value:{}},watch:{},created:function(){},mounted:function(){},methods:{}}),re=Object(s.a)(ae,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b()},[n("el-radio-group",{attrs:{size:t.size,disabled:t.disabled},on:{change:t.handleChange},nativeOn:{click:function(e){return t.handleClick.apply(null,arguments)}},model:{value:t.text,callback:function(e){t.text=e},expression:"text"}},t._l(t.dic,(function(e,i){return n(t.componentName,{key:i,tag:"component",attrs:{label:e[t.valueKey],border:t.border,readonly:t.readonly,disabled:e[t.disabledKey]}},[t._v(t._s(e[t.labelKey]))])})),1)],1)}),[],!1,null,null,null).exports,se=Object(i.a)({name:"select",mixins:[At(),Tt()],data:function(){return{checkAll:!1,created:!1,netDic:[],loading:!1}},props:{value:{},loadingText:{type:String},noMatchText:{type:String},noDataText:{type:String},drag:{type:Boolean,default:!1},remote:{type:Boolean,default:!1},tags:{type:Boolean,default:!1},limit:{type:Number,default:0},filterable:{type:Boolean,default:!1},allowCreate:{type:Boolean,default:!1},defaultFirstOption:{type:Boolean,default:!1},all:{type:Boolean,default:!1},popperAppendToBody:{type:Boolean,default:!0}},watch:{value:function(t){this.validatenull(t)||this.remote&&!this.created&&(this.created=!0,this.handleRemoteMethod(this.multiple?this.text.join(B.g):this.text))},dic:{handler:function(t){this.netDic=t},immediate:!0}},mounted:function(){this.drag&&this.setSort()},methods:{setSort:function(){var t=this;if(window.Sortable){var e=this.$refs.main.$el.querySelectorAll(".el-select__tags > span")[0];window.Sortable.create(e,{animation:100,onEnd:function(e){var n=t.value.splice(e.oldIndex,1)[0];t.value.splice(e.newIndex,0,n)}})}else x.a.logs("Sortable")},handleRemoteMethod:function(t){var e=this;this.loading=!0,Object(M.d)({column:this.column,value:t}).then((function(t){e.loading=!1,e.netDic=t}))},selectAll:function(){var t=this;this.text=[],this.checkAll?this.netDic.map((function(e){t.text.push(e[t.valueKey])})):this.text=[]},changeSelect:function(t){this.checkAll=t.length===this.netDic.length}}}),le=Object(s.a)(se,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-select",{ref:"main",class:t.b(),attrs:{size:t.size,loading:t.loading,"loading-text":t.loadingText,multiple:t.multiple,filterable:!!t.remote||t.filterable,remote:t.remote,readonly:t.readonly,"no-match-text":t.noMatchText,"no-data-text":t.noDataText,"remote-method":t.handleRemoteMethod,"popper-class":t.popperClass,"popper-append-to-body":t.popperAppendToBody,"collapse-tags":t.tags,clearable:t.clearableVal,placeholder:t.placeholder,"multiple-limit":t.limit,"allow-create":t.allowCreate,"default-first-option":t.defaultFirstOption,disabled:t.disabled},on:{focus:t.handleFocus,blur:t.handleBlur,change:t.changeSelect},nativeOn:{click:function(e){return t.handleClick.apply(null,arguments)}},model:{value:t.text,callback:function(e){t.text=e},expression:"text"}},[t.group?t._l(t.netDic,(function(e,i){return n("el-option-group",{key:i,attrs:{label:t.getLabelText(e)}},t._l(e[t.groupsKey],(function(e,i){return n("el-option",{key:i,attrs:{disabled:e[t.disabledKey],label:t.getLabelText(e),value:e[t.valueKey]}},[t.$scopedSlots.default?t._t("default",null,{label:t.labelKey,value:t.valueKey,item:e}):[n("span",[t._v(t._s(t.getLabelText(e)))]),t._v(" "),e[t.descKey]?n("span",{class:t.b("desc")},[t._v(t._s(e[t.descKey]))]):t._e()]],2)})),1)})):[t.all&&t.multiple?n("el-checkbox",{class:t.b("check"),on:{change:t.selectAll},model:{value:t.checkAll,callback:function(e){t.checkAll=e},expression:"checkAll"}},[t._v("全选")]):t._e(),t._v(" "),t._l(t.netDic,(function(e,i){return n("el-option",{key:i,attrs:{disabled:e[t.disabledKey],label:t.getLabelText(e),value:e[t.valueKey]}},[t.$scopedSlots.default?t._t("default",null,{label:t.labelKey,value:t.valueKey,item:e}):[n("span",[t._v(t._s(t.getLabelText(e)))]),t._v(" "),e[t.descKey]?n("span",{class:t.b("desc")},[t._v(t._s(e[t.descKey]))]):t._e()]],2)}))]],2)}),[],!1,null,null,null).exports;function ce(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var ue=Object(i.a)({name:"cascader",mixins:[At(),Tt()],props:(ne={checkStrictly:{type:Boolean,default:!1},emitPath:{type:Boolean,default:!0},tags:{type:Boolean,default:!1},expandTrigger:{type:String,default:"hover"},showAllLevels:{type:Boolean,default:!0},lazy:{type:Boolean,default:!1},lazyLoad:Function,filterable:{type:Boolean,default:!1}},ce(ne,"expandTrigger",{type:String,default:"click"}),ce(ne,"separator",{type:String}),ne),data:function(){return{}},watch:{},computed:{allProps:function(){var t=this;return{label:this.labelKey,value:this.valueKey,children:this.childrenKey,checkStrictly:this.checkStrictly,multiple:this.multiple,emitPath:this.emitPath,lazy:this.lazy,lazyLoad:function(e,n){t.lazyLoad&&t.lazyLoad(e,(function(i){!function e(n,i,o){n.forEach((function(n){n[t.valueKey]==i?n[t.childrenKey]=o:n[t.childrenKey]&&e(n[t.childrenKey])}))}(t.dic,e[t.valueKey],i),n(i)}))},expandTrigger:this.expandTrigger}}},created:function(){},mounted:function(){},methods:{}}),de=Object(s.a)(ue,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-cascader",{attrs:{options:t.dic,placeholder:t.placeholder,props:t.allProps,size:t.size,clearable:t.clearableVal,"show-all-levels":t.showAllLevels,filterable:t.filterable,"popper-class":t.popperClass,separator:t.separator,disabled:t.disabled,"collapse-tags":t.tags},on:{focus:t.handleFocus,blur:t.handleBlur},nativeOn:{click:function(e){return t.handleClick.apply(null,arguments)}},scopedSlots:t._u([{key:"default",fn:function(e){var i=e.data,o=e.node;return[t.$scopedSlots.default?t._t("default",null,{data:i,node:o}):n("span",[t._v(t._s(i[t.labelKey]))])]}}],null,!0),model:{value:t.text,callback:function(e){t.text=e},expression:"text"}})}),[],!1,null,null,null).exports,pe=Object(i.a)({name:"input-color",mixins:[At(),Tt()],props:{colorFormat:String,showAlpha:{type:Boolean,default:!0},iconList:{type:Array,default:function(){return[]}}},data:function(){return{predefineColors:["#ff4500","#ff8c00","#ffd700","#90ee90","#00ced1","#1e90ff","#c71585","rgba(255, 69, 0, 0.68)","rgb(255, 120, 0)","hsv(51, 100, 98)","hsva(120, 40, 94, 0.5)","hsl(181, 100%, 37%)","hsla(209, 100%, 56%, 0.73)","#c7158577"]}},methods:{}}),he=Object(s.a)(pe,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b()},[n("el-input",{ref:"main",attrs:{placeholder:t.placeholder,size:t.size,readonly:t.readonly,clearable:t.clearableVal,disabled:t.disabled},on:{change:t.handleChange},nativeOn:{click:function(e){return t.handleClick.apply(null,arguments)}},model:{value:t.text,callback:function(e){t.text=e},expression:"text"}},[n("template",{slot:"append"},[n("el-color-picker",{attrs:{size:"mini","popper-class":t.popperClass,"color-format":t.colorFormat,disabled:t.disabled,"show-alpha":t.showAlpha,predefine:t.predefineColors},on:{change:t.handleChange},model:{value:t.text,callback:function(e){t.text=e},expression:"text"}})],1)],2)],1)}),[],!1,null,null,null).exports,fe=Object(i.a)({name:"input-number",mixins:[At(),Tt()],data:function(){return{}},props:{controls:{type:Boolean,default:!0},step:{type:Number,default:1},controlsPosition:{type:String,default:"right"},precision:{type:Number},min:{type:Number,default:-1/0},max:{type:Number,default:1/0}},created:function(){},mounted:function(){},methods:{}}),me=Object(s.a)(fe,(function(){var t=this,e=t.$createElement;return(t._self._c||e)("el-input-number",{class:t.b(),attrs:{precision:t.precision,placeholder:t.placeholder,size:t.size,min:t.min,max:t.max,step:t.step,clearable:t.clearableVal,readonly:t.readonly,"controls-position":t.controlsPosition,controls:t.controls,label:t.placeholder,disabled:t.disabled},on:{focus:t.handleFocus,blur:t.handleBlur},nativeOn:{click:function(e){return t.handleClick.apply(null,arguments)}},model:{value:t.text,callback:function(e){t.text=t._n(e)},expression:"text"}})}),[],!1,null,null,null).exports,ve=Object(i.a)({name:"input-tree",mixins:[At(),Tt()],data:function(){return{node:[],filterValue:"",box:!1,created:!1,netDic:[],loading:!1}},props:{nodeClick:Function,treeLoad:Function,checked:Function,value:{},loadingText:{type:String},lazy:{type:Boolean,default:!1},leafOnly:{type:Boolean,default:!1},tags:{type:Boolean,default:!1},limit:{type:Number,default:0},expandOnClickNode:{type:Boolean,default:!0},filter:{type:Boolean,default:!0},filterText:{type:String,default:"输入关键字进行过滤"},checkStrictly:{type:Boolean,default:!1},accordion:{type:Boolean,default:!1},parent:{type:Boolean,default:!0},iconClass:{type:String},defaultExpandAll:{type:Boolean,default:!1},popperAppendToBody:{type:Boolean,default:!0}},watch:{text:{handler:function(t){this.validatenull(t)&&this.clearHandle(),this.init()}},value:function(t){this.validatenull(t)||this.lazy&&!this.created&&(this.created=!0,this.handleRemoteMethod(this.multiple?this.text.join(","):this.text))},dic:{handler:function(t){this.netDic=t},immediate:!0},netDic:{handler:function(){this.init()},immediate:!0},filterValue:function(t){this.$refs.tree.filter(t)}},computed:{treeProps:function(){return Object.assign(this.props,{isLeaf:this.leafKey})},dicList:function(){var t=this.netDic;return function t(e,n){e.forEach((function(e){var i=e.children;i&&t(i,e),n&&(e.$parent=n)}))}(t),t},keysList:function(){var t=this;if(this.validatenull(this.text))return[];return Array.isArray(this.text)?this.text:(this.text+"").split(this.separator).map((function(e){return Object(D.f)(e,t.dataType)}))},labelShow:function(){var t=this,e=[],n=this.deepClone(this.node);return e=this.typeformat?n.map((function(e){return t.getLabelText(e)})):n.map((function(e){return e[t.labelKey]})),this.multiple?e:e.join("")}},methods:{handleClear:function(){this.multiple?this.text=[]:this.text="",this.node=[]},handleTreeLoad:function(t,e){var n=this;this.treeLoad&&this.treeLoad(t,(function(i){!function t(e,i,o){e.forEach((function(e){e[n.valueKey]==i?e[n.childrenKey]=o:e[n.childrenKey]&&t(e[n.childrenKey])}))}(n.netDic,t.key,i),e(i)}))},initScroll:function(t){var e=this;setTimeout((function(){e.$nextTick((function(){document.querySelectorAll(".el-scrollbar .el-select-dropdown__wrap").forEach((function(t){t.scrollTop=0}))}))}),0),this.handleClick(t)},filterNode:function(t,e){return!t||-1!==e[this.labelKey].toLowerCase().indexOf(t.toLowerCase())},checkChange:function(t,e,n,i){var o=this;this.text=[],this.$refs.tree.getCheckedNodes(this.leafOnly,!1).forEach((function(t){return o.text.push(t[o.valueKey])})),"function"==typeof this.checked&&this.checked(t,e,n,i)},getHalfList:function(){var t=this,e=this.$refs.tree.getCheckedNodes(!1,!0);return e=e.map((function(e){return e[t.valueKey]}))},init:function(){var t=this;this.$nextTick((function(){if(t.node=[],t.multiple){t.$refs.tree.getCheckedNodes(t.leafOnly,!1).forEach((function(e){t.node.push(e)}))}else{var e=t.$refs.tree.getNode(t.vaildData(t.text,""));if(e){var n=e.data;t.$refs.tree.setCurrentKey(n[t.valueKey]),t.node.push(n)}}})),this.disabledParentNode(this.dic,this.parent)},disabledParentNode:function(t,e){var n=this;t.forEach((function(t){var i=t[n.childrenKey];n.validatenull(i)||(e||(t.disabled=!0),n.disabledParentNode(i,e))}))},clearHandle:function(){this.filterValue="",this.$refs.tree.setCurrentKey(null),this.$refs.tree.setCheckedKeys([])},handleNodeClick:function(t,e,n){t.disabled||("function"==typeof this.nodeClick&&this.nodeClick(t,e,n),this.multiple||(this.validatenull(t[this.childrenKey])&&!this.multiple||this.parent)&&(this.text=t[this.valueKey],this.$refs.main.blur()))},handleRemoteMethod:function(t){var e=this;this.loading=!0,Object(M.d)({column:this.column,value:t}).then((function(t){e.loading=!1,e.netDic=t}))}}}),be=Object(s.a)(ve,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-select",{ref:"main",class:t.b(),attrs:{size:t.size,loading:t.loading,"loading-text":t.loadingText,multiple:t.multiple,"multiple-limit":t.limit,"collapse-tags":t.tags,value:t.labelShow,clearable:t.clearableVal,placeholder:t.placeholder,"popper-class":t.popperClass,"popper-append-to-body":t.popperAppendToBody,disabled:t.disabled},on:{focus:t.handleFocus,blur:t.handleBlur,clear:t.handleClear},nativeOn:{click:function(e){return t.initScroll.apply(null,arguments)}}},[t.filter?n("div",{staticStyle:{padding:"0 10px",margin:"5px 0 0 0"}},[n("el-input",{attrs:{size:"mini",placeholder:t.filterText},model:{value:t.filterValue,callback:function(e){t.filterValue=e},expression:"filterValue"}})],1):t._e(),t._v(" "),n("el-option",{attrs:{value:t.text}},[n("el-tree",{ref:"tree",staticClass:"tree-option",staticStyle:{padding:"10px 0"},attrs:{data:t.dicList,lazy:t.lazy,load:t.handleTreeLoad,"node-key":t.valueKey,accordion:t.accordion,"icon-class":t.iconClass,"show-checkbox":t.multiple,"expand-on-click-node":t.expandOnClickNode,props:t.treeProps,"check-strictly":t.checkStrictly,"highlight-current":!t.multiple,"current-node-key":t.multiple?"":t.text,"filter-node-method":t.filterNode,"default-checked-keys":t.keysList,"default-expand-all":t.defaultExpandAll},on:{check:t.checkChange,"node-click":function(e){return e.target!==e.currentTarget?null:t.handleNodeClick.apply(null,arguments)}},scopedSlots:t._u([{key:"default",fn:function(e){var i=e.data;return n("div",{staticStyle:{width:"100%","padding-right":"10px"}},[t.$scopedSlots.default?t._t("default",null,{label:t.labelKey,value:t.valueKey,item:i}):[n("span",{class:{"avue--disabled":i[t.disabledKey]}},[t._v(t._s(i[t.labelKey]))]),t._v(" "),i[t.descKey]?n("span",{class:t.b("desc")},[t._v(t._s(i[t.descKey]))]):t._e()]],2)}}],null,!0)})],1)],1)}),[],!1,null,null,null).exports,ge=Object(i.a)({name:"input-map",mixins:[At(),Tt()],props:{dialogWidth:{type:String,default:"80%"}},data:function(){return{formattedAddress:"",address:"",poi:{},marker:null,map:null,box:!1}},watch:{poi:function(t){this.formattedAddress=t.formattedAddress},value:function(t){this.validatenull(t)&&(this.poi={})},text:function(t){this.validatenull(t)||(this.poi={longitude:t[0],latitude:t[1],formattedAddress:t[2]},this.address=t[2])},box:{handler:function(){var t=this;this.box&&this.$nextTick((function(){return t.init((function(){t.longitude&&t.latitude&&(t.addMarker(t.longitude,t.latitude),t.getAddress(t.longitude,t.latitude))}))}))},immediate:!0}},computed:{longitude:function(){return this.text[0]},latitude:function(){return this.text[1]},title:function(){return this.disabled||this.readonly?"查看":"选择"}},methods:{clear:function(){this.poi={},this.clearMarker()},handleSubmit:function(){this.setVal(),this.box=!1},handleClear:function(){this.text=[],this.poi={},this.handleChange(this.text)},setVal:function(){this.text=[this.poi.longitude,this.poi.latitude,this.poi.formattedAddress],this.handleChange(this.text)},handleShow:function(){this.$refs.main.blur(),this.box=!0},addMarker:function(t,e){this.clearMarker(),this.marker=new window.AMap.Marker({position:[t,e]}),this.marker.setMap(this.map)},clearMarker:function(){this.marker&&(this.marker.setMap(null),this.marker=null)},getAddress:function(t,e){var n=this;new window.AMap.service("AMap.Geocoder",(function(){new window.AMap.Geocoder({}).getAddress([t,e],(function(i,o){if("complete"===i&&"OK"===o.info){var a=o.regeocode;n.poi=Object.assign(a,{longitude:t,latitude:e});var r=document.createElement("div"),s=document.createElement("img");s.src="//a.amap.com/jsapi_demos/static/demo-center/icons/poi-marker-default.png",r.appendChild(s);var l=document.createElement("span");l.className="avue-input-map__marker",l.innerHTML=n.poi.formattedAddress,r.appendChild(l),n.marker.setContent(r)}}))}))},handleClose:function(){window.poiPicker.clearSearchResults()},addClick:function(){var t=this;this.map.on("click",(function(e){if(!t.disabled&&!t.readonly){var n=e.lnglat,i=n.P||n.Q,o=n.R;t.addMarker(o,i),t.getAddress(o,i)}}))},init:function(t){var e=this;window.AMap?(this.map=new window.AMap.Map("map__container",Object.assign({zoom:13,center:function(){if(e.longitude&&e.latitude)return[e.longitude,e.latitude]}()},this.params)),this.initPoip(),this.addClick(),t()):x.a.logs("Map")},initPoip:function(){var t=this;window.AMapUI?window.AMapUI.loadUI(["misc/PoiPicker"],(function(e){var n=new e({input:"map__input",placeSearchOptions:{map:t.map,pageSize:10},searchResultsContainer:"map__result"});t.poiPickerReady(n)})):x.a.logs("MapUi")},poiPickerReady:function(t){var e=this;window.poiPicker=t,t.on("poiPicked",(function(n){e.clearMarker();var i=n.source,o=n.item;e.poi=Object.assign(o,{formattedAddress:o.name,longitude:o.location.R,latitude:o.location.P||o.location.Q}),"search"!==i&&t.searchByKeyword(o.name)}))}}}),ye=Object(s.a)(ge,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b()},[n("el-input",{ref:"main",attrs:{size:t.size,clearable:t.clearableVal,disabled:t.disabled,placeholder:t.placeholder},on:{clear:t.handleClear,focus:t.handleShow},nativeOn:{click:function(e){return t.handleClick.apply(null,arguments)}},model:{value:t.address,callback:function(e){t.address=e},expression:"address"}}),t._v(" "),n("el-dialog",{staticClass:"avue-dialog avue-dialog--none",attrs:{width:t.dialogWidth,"append-to-body":"",title:t.placeholder,visible:t.box},on:{close:t.handleClose,"update:visible":function(e){t.box=e}}},[t.box?n("div",{class:t.b("content")},[n("el-input",{class:t.b("content-input"),attrs:{id:"map__input",size:t.size,readonly:t.disabled,clearable:"",placeholder:"输入关键字选取地点"},on:{clear:t.clear},model:{value:t.formattedAddress,callback:function(e){t.formattedAddress=e},expression:"formattedAddress"}}),t._v(" "),n("div",{class:t.b("content-box")},[n("div",{class:t.b("content-container"),attrs:{id:"map__container",tabindex:"0"}}),t._v(" "),n("div",{class:t.b("content-result"),attrs:{id:"map__result"}})])],1):t._e(),t._v(" "),n("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[t.disabled||t.readonly?t._e():n("el-button",{attrs:{type:"primary",size:t.size,icon:"el-icon-check"},on:{click:t.handleSubmit}},[t._v("ç¡® å®š")])],1)])],1)}),[],!1,null,null,null).exports,_e=Object(i.a)({name:"input-icon",components:{iconTemp:N},mixins:[At(),Tt()],props:{dialogWidth:{type:String,default:"80%"},iconList:{type:Array,default:function(){return[]}}},data:function(){return{box:!1,tabs:{}}},computed:{list:function(){var t=(this.tabs.list||[]).map((function(t){return t.value?t:{value:t}}));return t},option:function(){return{column:this.iconList}}},created:function(){this.tabs=this.iconList[0]||{}},methods:{handleTabs:function(t){this.tabs=t},handleSubmit:function(t){this.box=!1,this.text=t,this.handleChange(t)},handleShow:function(){this.$refs.main.blur(),this.disabled||this.readonly||(this.box=!0)}}}),xe=Object(s.a)(_e,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b()},[n("el-input",{ref:"main",attrs:{placeholder:t.placeholder,size:t.size,clearable:t.clearableVal,disabled:t.disabled},on:{change:t.handleChange,focus:t.handleShow},nativeOn:{click:function(e){return t.handleClick.apply(null,arguments)}},model:{value:t.text,callback:function(e){t.text=e},expression:"text"}},[n("icon-temp",{attrs:{slot:"append",text:t.text,size:28,small:""},on:{click:t.handleShow},slot:"append"})],1),t._v(" "),n("el-dialog",{staticClass:"avue-dialog avue-dialog--none",attrs:{title:t.placeholder,"append-to-body":"",visible:t.box,width:t.dialogWidth},on:{"update:visible":function(e){t.box=e}}},[n("avue-tabs",{attrs:{option:t.option},on:{change:t.handleTabs}}),t._v(" "),n("div",{class:t.b("list")},t._l(t.list,(function(e,i){return n("div",{key:i,class:t.b("item",{active:t.text===e}),on:{click:function(n){return t.handleSubmit(e.value)}}},[n("icon-temp",{attrs:{text:e.value}}),t._v(" "),n("p",[t._v(t._s(e.label||e.value))])],1)})),0)],1)],1)}),[],!1,null,null,null).exports,we=Object(i.a)({name:"input-table",mixins:[At(),Tt()],data:function(){return{object:{},active:{},page:{},loading:!1,box:!1,created:!1,data:[]}},props:{formatter:Function,onLoad:Function,dialogWidth:{type:String,default:"80%"}},watch:{value:function(t){this.validatenull(t)&&(this.active={},this.object={})},text:function(t){var e=this;this.created||this.validatenull(t)||"function"==typeof this.onLoad&&this.onLoad({value:this.text},(function(t){e.active=t,e.object=t,e.created=!0}))}},computed:{title:function(){return this.disabled||this.readonly?"查看":"选择"},labelShow:function(){return"function"==typeof this.formatter?this.formatter(this.object):this.object[this.labelKey]||""},option:function(){return Object.assign({menu:!1,header:!1,size:"mini",headerAlign:"center",align:"center",highlightCurrentRow:!0},this.column.children)}},methods:{handleClear:function(){this.active={},this.setVal()},handleShow:function(){this.$refs.main.blur(),this.disabled||this.readonly||(this.page={currentPage:1,total:0},this.data=[],this.box=!0)},setVal:function(){this.object=this.active,this.text=this.active[this.valueKey]||"",this.handleChange(this.text),this.box=!1},handleCurrentRowChange:function(t){this.active=t},handleSearchChange:function(t,e){var n=this;this.onLoad({page:this.page,data:t},(function(t){n.page.total=t.total,n.data=t.data})),e&&e()},onList:function(t){var e=this;this.loading=!0,"function"==typeof this.onLoad&&this.onLoad({page:this.page},(function(t){e.page.total=t.total,e.data=t.data,e.loading=!1;var n=e.data.find((function(t){return t[e.valueKey]==e.object[e.valueKey]}));setTimeout((function(){return e.$refs.crud.setCurrentRow(n)}))}))}}}),Oe=Object(s.a)(we,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b()},[n("el-input",{ref:"main",attrs:{size:t.size,value:t.labelShow,clearable:t.clearableVal,placeholder:t.placeholder,disabled:t.disabled},on:{clear:t.handleClear,focus:t.handleShow},nativeOn:{click:function(e){return t.handleClick.apply(null,arguments)}}}),t._v(" "),n("el-dialog",{staticClass:"avue-dialog avue-dialog--none",attrs:{width:t.dialogWidth,"append-to-body":"",title:t.placeholder,visible:t.box},on:{"update:visible":function(e){t.box=e}}},[t.box?n("avue-crud",{ref:"crud",class:t.b("crud"),attrs:{option:t.option,data:t.data,"table-loading":t.loading,page:t.page},on:{"on-load":t.onList,"search-change":t.handleSearchChange,"search-reset":t.handleSearchChange,"current-row-change":t.handleCurrentRowChange,"update:page":function(e){t.page=e}}}):t._e(),t._v(" "),n("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[n("el-button",{attrs:{type:"primary",size:t.size,icon:"el-icon-check"},on:{click:t.setVal}},[t._v("ç¡® å®š")])],1)],1)],1)}),[],!1,null,null,null).exports,Ce=Object(i.a)({name:"verify",props:{size:{type:[Number,String],default:50},value:[Number,String],len:{type:[Number,String],default:6}},computed:{styleName:function(){return{padding:"".concat(this.setPx(this.size/7)," ").concat(this.setPx(this.size/4)),fontSize:this.setPx(this.size)}},list:function(){return this.data.split("")}},watch:{value:{handler:function(t){this.validatenull(t)?this.randomn():this.data=t+""},immediate:!0},data:{handler:function(t){this.$emit("input",t)},immediate:!0}},data:function(){return{data:0}},methods:{randomn:function(){var t=this.len;if(t>21)return null;var e=new RegExp("(\\d{"+t+"})(\\.|$)"),n=(Array(t-1).join(0)+Math.pow(10,t)*Math.random()).match(e)[1];this.data=n}}}),ke=Object(s.a)(Ce,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b()},t._l(t.list,(function(e,i){return n("span",{key:i,class:t.b("item"),style:t.styleName},[t._v("\n    "+t._s(e)+"\n  ")])})),0)}),[],!1,null,null,null).exports,Se=Object(i.a)({name:"switch",mixins:[At(),Tt()],props:{value:{},activeIconClass:String,inactiveIconClass:String,activeColor:String,inactiveColor:String,len:Number},data:function(){return{}},watch:{},created:function(){},mounted:function(){},computed:{active:function(){return this.dic[1]||{}},inactive:function(){return this.dic[0]||{}}},methods:{}}),Ee=Object(s.a)(Se,(function(){var t=this,e=t.$createElement;return(t._self._c||e)("el-switch",{attrs:{"active-text":t.active[t.labelKey],"active-value":t.active[t.valueKey],"inactive-value":t.inactive[t.valueKey],"inactive-text":t.inactive[t.labelKey],"active-icon-class":t.activeIconClass,"inactive-icon-class":t.inactiveIconClass,"active-color":t.activeColor,"inactive-color":t.inactiveColor,width:t.len,disabled:t.disabled,readonly:t.readonly,size:t.size},nativeOn:{click:function(e){return t.handleClick.apply(null,arguments)}},model:{value:t.text,callback:function(e){t.text=e},expression:"text"}})}),[],!1,null,null,null).exports,je=Object(i.a)({name:"rate",mixins:[At(),Tt()],props:{value:{type:Number,default:0},colors:{type:Array},max:{type:Number,default:5},iconClasses:{type:Array},texts:{type:Array},showText:{type:Boolean,default:!1},voidIconClass:{type:String}},data:function(){return{}},watch:{},created:function(){},mounted:function(){},methods:{}}),$e=Object(s.a)(je,(function(){var t=this,e=t.$createElement;return(t._self._c||e)("el-rate",{staticStyle:{"margin-top":"10px"},attrs:{max:t.max,readonly:t.readonly,texts:t.texts,"show-text":t.showText,"icon-classes":t.iconClasses,"void-icon-class":t.voidIconClass,disabled:t.disabled,colors:t.colors},on:{change:t.handleChange},nativeOn:{click:function(e){return t.handleClick.apply(null,arguments)}},model:{value:t.text,callback:function(e){t.text=e},expression:"text"}})}),[],!1,null,null,null).exports;function De(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function Ae(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}var Te,Pe,Be=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};De(this,t),this.CONTAINERID=Object(D.s)(),this.drawCanvas=this.drawCanvas.bind(this),this.parentObserver=this.parentObserver.bind(this),this.Repaint=this.Repaint.bind(this),this.isOberserve=!1,this.init(e),this.drawCanvas(),this.parentObserver()}var e,n,i;return e=t,(n=[{key:"init",value:function(t){this.option=Object.assign({width:400,height:200,text:"avueJS",fontSize:"30px",fontStyle:"黑体",textAlign:"center",color:"rgba(100,100,100,0.15)",degree:-20},t)}},{key:"drawCanvas",value:function(){this.isOberserve=!0;var t=document.createElement("div"),e=document.createElement("canvas"),n=e.getContext("2d");t.id=this.CONTAINERID,e.width=this.option.width,e.height=this.option.height,n.font="".concat(this.option.fontSize," ").concat(this.option.fontStyle),n.textAlign=this.option.textAlign,n.fillStyle=this.option.color,n.translate(e.width/2,e.height/2),n.rotate(this.option.degree*Math.PI/180),n.fillText(this.option.text,0,0);var i,o=e.toDataURL("image/png"),a=this.option.id;a&&(i=document.getElementById(a)),this.styleStr="\n    position:".concat(a?"absolute":"fixed",";\n    top:0;\n    left:0;\n    width:").concat(a?i.offsetWidth+"px":"100%",";\n    height:").concat(a?i.offsetHeight+"px":"100%",";\n    z-index:9999;\n    pointer-events:none;\n    background-repeat:repeat;\n    background-image:url('").concat(o,"')"),t.setAttribute("style",this.styleStr),a?document.getElementById(a).appendChild(t):document.body.appendChild(t),this.wmObserver(t),this.isOberserve=!1}},{key:"wmObserver",value:function(t){var e=this,n=new MutationObserver((function(t){if(!e.isOberserve){var i=t[0].target;i.setAttribute("style",e.styleStr),i.setAttribute("id",e.CONTAINERID),n.takeRecords()}}));n.observe(t,{attributes:!0,childList:!0,characterData:!0})}},{key:"parentObserver",value:function(){var t=this;new MutationObserver((function(){if(!t.isOberserve){var e=document.querySelector("#".concat(t.CONTAINERID));e?e.getAttribute("style")!==t.styleStr&&e.setAttribute("style",t.styleStr):t.drawCanvas()}})).observe(document.querySelector("#".concat(this.CONTAINERID)).parentNode,{childList:!0})}},{key:"Repaint",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.remove(),this.init(t),this.drawCanvas()}},{key:"remove",value:function(){this.isOberserve=!0;var t=document.querySelector("#".concat(this.CONTAINERID));t.parentNode.removeChild(t)}}])&&Ae(e.prototype,n),i&&Ae(e,i),Object.defineProperty(e,"prototype",{writable:!1}),t}(),Me=200,Le=200,Ie={text:"avueJS",fontFamily:"microsoft yahei",color:"#999",fontSize:16,opacity:100,bottom:10,right:10,ratio:1};function Ne(t,e){var n=new FileReader;n.readAsDataURL(t),n.onload=function(t){e(t.target.result)}}var ze=function(t,e,n){var i=function(t){var e,n,i,o,a,r;i=t.length,n=0,e="";for(;n<i;){if(o=255&t.charCodeAt(n++),n==i){e+=Fe.charAt(o>>2),e+=Fe.charAt((3&o)<<4),e+="==";break}if(a=t.charCodeAt(n++),n==i){e+=Fe.charAt(o>>2),e+=Fe.charAt((3&o)<<4|(240&a)>>4),e+=Fe.charAt((15&a)<<2),e+="=";break}r=t.charCodeAt(n++),e+=Fe.charAt(o>>2),e+=Fe.charAt((3&o)<<4|(240&a)>>4),e+=Fe.charAt((15&a)<<2|(192&r)>>6),e+=Fe.charAt(63&r)}return e}(function(t){var e,n,i,o;for(e="",i=t.length,n=0;n<i;n++)(o=t.charCodeAt(n))>=1&&o<=127?e+=t.charAt(n):o>2047?(e+=String.fromCharCode(224|o>>12&15),e+=String.fromCharCode(128|o>>6&63),e+=String.fromCharCode(128|o>>0&63)):(e+=String.fromCharCode(192|o>>6&31),e+=String.fromCharCode(128|o>>0&63));return e}(JSON.stringify(n))),o=CryptoJS.HmacSHA1(i,e).toString(CryptoJS.enc.Base64);return t+":"+He(o)+":"+i};var Fe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_";new Array(-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,-1,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-1,-1,-1,-1,-1);var He=function(t){return t=(t=t.replace(/\+/g,"-")).replace(/\//g,"_")};function Ke(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return e.match(/(^http:\/\/|^https:\/\/|^\/\/|data:image\/)/)?e:t+e}var Re=Object(i.a)({name:"upload",mixins:[At(),Tt(),j.a],data:function(){return{res:"",loading:!1,text:[],file:{},menu:!1,reload:Math.random()}},props:{data:{type:Object,default:function(){return{}}},showFileList:{type:Boolean,default:!0},fileType:{type:String},oss:{type:String},limit:{type:Number,default:10},headers:{type:Object,default:function(){return{}}},accept:{type:[String,Array],default:""},canvasOption:{type:Object,default:function(){return{}}},cropperOption:{type:Object,default:function(){return{}}},fileSize:{type:Number},dragFile:{type:Boolean,default:!1},drag:{type:Boolean,default:!1},loadText:{type:String,default:"Loading..."},action:{type:String,default:""},uploadBefore:Function,uploadAfter:Function,uploadDelete:Function,uploadPreview:Function,uploadError:Function,uploadExceed:Function,httpRequest:Function},computed:{isMultiple:function(){return this.isArray||this.isString||this.stringMode},acceptList:function(){return Array.isArray(this.accept)?this.accept.join(","):this.accept},homeUrl:function(){return this.propsHttp.home||""},fileName:function(){return this.propsHttp.fileName||"file"},isAliOss:function(){return"ali"===this.oss},isQiniuOss:function(){return"qiniu"===this.oss},isPictureImg:function(){return"picture-img"===this.listType},imgUrl:function(){if(!this.validatenull(this.text))return Ke(this.homeUrl,this.text[0])},fileList:function(){var t=this,e=[];return(this.text||[]).forEach((function(n,i){if(n){var o;if(t.isMultiple){var a=n.lastIndexOf("/");o=n.substring(a+1)}var r=Ke(t.homeUrl,t.isMultiple?n:n[t.valueKey]);e.push({uid:i+"",status:"done",type:t.getIsVideo(r),name:t.isMultiple?o:n[t.labelKey],url:r})}})),e}},mounted:function(){this.drag&&this.setSort()},methods:{getIsVideo:function(t){return B.m.video.test(t)||"video"==this.fileType?"video":B.m.img.test(t)||"image"==this.fileType?"img":void 0},setSort:function(){var t=this;if(window.Sortable){var e=this.$el.querySelectorAll(".avue-upload > ul")[0];window.Sortable.create(e,{animation:100,onEnd:function(e){var n=t.text.splice(e.oldIndex,1)[0];t.text.splice(e.newIndex,0,n),t.reload=Math.random(),t.$nextTick((function(){return t.setSort()}))}})}else x.a.logs("Sortable")},handleSuccess:function(t){if(this.isPictureImg)this.text.splice(0,1,t[this.urlKey]);else if(this.isMultiple)this.text.push(t[this.urlKey]);else{var e={};e[this.labelKey]=t[this.nameKey],e[this.valueKey]=t[this.urlKey],this.text.push(e)}},handleRemove:function(t,e){var n=this;this.beforeRemove(t).then((function(){n.delete(t)}))},handleError:function(t){this.uploadError&&this.uploadError(t,this.column)},delete:function(t){var e=this;(this.text||[]).forEach((function(n,i){(e.isMultiple?n:n[e.valueKey])===t.url.replace(e.homeUrl,"")&&e.text.splice(i,1)}))},show:function(t){this.loading=!1,this.handleSuccess(t||this.res)},hide:function(t){this.loading=!1,this.handleError(t)},handleFileChange:function(t,e){e.splice(e.length-1,1)},httpUpload:function(t){var e=this;if("function"!=typeof this.httpRequest){this.loading=!0;var n=t.file,i=n.size/1024;if(this.file=t.file,!this.validatenull(i)&&i>this.fileSize)this.hide("文件太大不符合");else{var o=Object.assign(this.headers,{"Content-Type":"multipart/form-data"}),a={},r={},s=new FormData,l=function(){var t=function(t){var i=e.action;for(var l in e.data)s.append(l,e.data[l]);var c=t||n;if(s.append(e.fileName,c),e.isQiniuOss){if(!window.CryptoJS)return x.a.logs("CryptoJS"),void e.hide();a=e.$AVUE.qiniu;var u=ze(a.AK,a.SK,{scope:a.scope,deadline:(new Date).getTime()+3600*a.deadline});s.append("token",u),i=a.bucket}else if(e.isAliOss){if(!window.OSS)return x.a.logs("AliOSS"),void e.hide();a=e.$AVUE.ali,r=new OSS(a)}(e.isAliOss?r.put(c.name,c,{headers:e.headers}):e.$axios.post(i,s,{headers:o})).then((function(t){e.res={},e.isQiniuOss&&(t.data.key=a.url+t.data.key),e.isAliOss?e.res=Object(D.m)(t,e.resKey):e.res=Object(D.m)(t.data,e.resKey),"function"==typeof e.uploadAfter?e.uploadAfter(e.res,e.show,(function(){e.loading=!1}),e.column):e.show(e.res)})).catch((function(t){"function"==typeof e.uploadAfter?e.uploadAfter(t,e.hide,(function(){e.loading=!1}),e.column):e.hide(t)}))};"function"==typeof e.uploadBefore?e.uploadBefore(e.file,t,(function(){e.loading=!1}),e.column):t()};this.validatenull(this.cropperOption)?this.validatenull(this.canvasOption)?l():function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0,i=e.text,o=e.fontFamily,a=e.color,r=e.fontSize,s=e.opacity,l=e.bottom,c=e.right,u=e.ratio;function d(){Ie.text=i||Ie.text,Ie.fontFamily=o||Ie.fontFamily,Ie.color=a||Ie.color,Ie.fontSize=r||Ie.fontSize,Ie.opacity=s||Ie.opacity,Ie.bottom=l||Ie.bottom,Ie.right=c||Ie.right,Ie.ratio=u||Ie.ratio}function p(e){var i=new Image;i.src=e,i.onload=function(){var e=i.width,o=i.height;h(e,o),Pe.drawImage(i,0,0,e,o),f(e,o),n&&n(Object(D.d)(document.getElementById("canvas").toDataURL(t.type,Ie.ratio),t.name))}}function h(t,e){null===(Te=document.getElementById("canvas"))&&((Te=document.createElement("canvas")).id="canvas",Te.className="avue-canvas",document.body.appendChild(Te)),Pe=Te.getContext("2d"),Te.width=t,Te.height=e}function f(t,e){var n=Ie.text,i=m(n,t,e);Pe.font=i.fontSize+"px "+Ie.fontFamily,Pe.fillStyle=Ie.color,Pe.globalAlpha=Ie.opacity/100,Pe.fillText(n,i.x,i.y)}function m(t,e,n){var i,o,a=Ie.fontSize/Me*e;return o=Ie.bottom?Le-Ie.bottom:Ie.top,i=Ie.right?Me-Ie.right:Ie.left,Pe.font=Ie.fontSize+"px "+Ie.fontFamily,{x:i=(i-=Number(Pe.measureText(t).width))/Me*e,y:o=o/Le*n,fontSize:a}}d(),Ne(t,p)}(n,this.canvasOption,(function(t){n=t,l()})):Ne(this.file,(function(t){var i=Object.assign(e.cropperOption,{img:t,type:"file",callback:function(t){n=t,l()},cancel:function(){e.loading=!1}});e.$ImageCropper(i)}))}}else this.httpRequest(t)},handleExceed:function(t,e){this.uploadExceed&&this.uploadExceed(this.limit,t,e,this.column)},handlePreview:function(t){var e=this,n=function(){var n=e.fileList.findIndex((function(e){return e.url===t.url}));e.$ImagePreview(e.fileList,n)};"function"==typeof this.uploadPreview?this.uploadPreview(t,this.column,n):n()},handleDelete:function(t){var e=this;this.beforeRemove(t).then((function(){e.text=[],e.menu=!1}))},beforeRemove:function(t){return"function"==typeof this.uploadDelete?this.uploadDelete(t,this.column):Promise.resolve()}}}),We=Object(s.a)(Re,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{directives:[{name:"loading",rawName:"v-loading.lock",value:t.loading,expression:"loading",modifiers:{lock:!0}}],class:t.b(),attrs:{"element-loading-text":t.loadText}},[n("el-upload",{key:t.reload,class:t.b({list:"picture-img"==t.listType,upload:t.disabled}),attrs:{action:t.action,"on-remove":t.handleRemove,accept:t.acceptList,"before-remove":t.beforeRemove,multiple:t.multiple,"on-preview":t.handlePreview,limit:t.limit,"http-request":t.httpUpload,readonly:t.readonly,drag:t.dragFile,"show-file-list":!t.isPictureImg&&t.showFileList,"list-type":t.listType,"on-change":t.handleFileChange,"on-exceed":t.handleExceed,disabled:t.disabled,"file-list":t.fileList},nativeOn:{click:function(e){return t.handleClick.apply(null,arguments)}},scopedSlots:t._u([{key:"file",fn:function(e){var i=e.file;return[t.$scopedSlots.default?t._t("default",null,{file:i}):"picture-card"===t.listType?n("span",[n(i.type,{tag:"component",staticClass:"el-upload-list__item-thumbnail",attrs:{src:i.url}}),t._v(" "),n("span",{staticClass:"el-upload-list__item-actions"},[n("span",{staticClass:"el-upload-list__item-preview"},[n("i",{staticClass:"el-icon-zoom-in",on:{click:function(e){return e.stopPropagation(),t.handlePreview(i)}}})]),t._v(" "),n("span",{staticClass:"el-upload-list__item-delete"},[t.disabled?t._e():n("i",{staticClass:"el-icon-delete",on:{click:function(e){return e.stopPropagation(),t.handleRemove(i)}}})])])],1):"picture"===t.listType?n("span",{on:{click:function(e){return e.stopPropagation(),t.handlePreview(i)}}},[n(i.type,{tag:"component",staticClass:"el-upload-list__item-thumbnail",attrs:{src:i.url}}),t._v(" "),n("a",{staticClass:"el-upload-list__item-name"},[n("i",{staticClass:"el-icon-document"}),t._v("\n          "+t._s(i.name)+"\n        ")]),t._v(" "),n("i",{staticClass:"el-icon-close",on:{click:function(e){return e.stopPropagation(),t.handleRemove(i)}}})],1):n("span",{on:{click:function(e){return e.stopPropagation(),t.handlePreview(i)}}},[n("a",{staticClass:"el-upload-list__item-name"},[n("i",{staticClass:"el-icon-document"}),t._v("\n          "+t._s(i.name)+"\n        ")]),t._v(" "),t.disabled?t._e():n("i",{staticClass:"el-icon-close",on:{click:function(e){return e.stopPropagation(),t.handleRemove(i)}}})])]}}],null,!0)},["picture-card"==t.listType?[n("i",{staticClass:"el-icon-plus"})]:"picture-img"==t.listType?[t.$scopedSlots.default?t._t("default",null,{file:{url:t.imgUrl}}):[t.imgUrl?n(t.getIsVideo(t.imgUrl),{tag:"component",class:t.b("avatar"),attrs:{src:t.imgUrl},on:{mouseover:function(e){t.menu=!0}}}):n("i",{staticClass:"el-icon-plus",class:t.b("icon")}),t._v(" "),t.menu?n("div",{staticClass:"el-upload-list__item-actions",class:t.b("menu"),on:{mouseover:function(e){t.menu=!0},mouseout:function(e){t.menu=!1},click:function(t){return t.stopPropagation(),function(){return!1}.apply(null,arguments)}}},[n("i",{staticClass:"el-icon-zoom-in",on:{click:function(e){return e.stopPropagation(),t.handlePreview({url:t.imgUrl})}}}),t._v(" "),t.disabled?t._e():n("i",{staticClass:"el-icon-delete",on:{click:function(e){return e.stopPropagation(),t.handleDelete(t.imgUrl)}}})]):t._e()]]:t.dragFile?[n("i",{staticClass:"el-icon-upload"}),t._v(" "),n("div",{staticClass:"el-upload__text"},[t._v("\n        "+t._s(t.t("upload.tip"))+"\n        "),n("em",[t._v(t._s(t.t("upload.upload")))])])]:[n("el-button",{attrs:{size:"small",type:"primary"}},[t._v(t._s(t.t("upload.upload")))])],t._v(" "),n("div",{staticClass:"el-upload__tip",attrs:{slot:"tip"},domProps:{innerHTML:t._s(t.tip)},slot:"tip"})],2)],1)}),[],!1,null,null,null).exports;var Ue=Object(i.a)({name:"sign",props:{width:{type:Number,default:600},height:{type:Number,default:400}},data:function(){return{disabled:!1,linex:[],liney:[],linen:[],canvas:{},context:{}}},computed:{styleName:function(){return{width:this.setPx(this.width),height:this.setPx(this.height)}}},mounted:function(){this.init()},methods:{getStar:function(t,e,n){var i=this.canvas,o=this.context,a=i.width/2,r=i.height/2;o.lineWidth=7,o.strokeStyle="#f00",o.beginPath(),o.arc(a,r,110,0,2*Math.PI),o.stroke(),function(t,e,n,i,o,a){t.save(),t.fillStyle=o,t.translate(e,n),t.rotate(Math.PI+a),t.beginPath();for(var r=Math.sin(0),s=Math.cos(0),l=Math.PI/5*4,c=0;c<5;c++){r=Math.sin(c*l),s=Math.cos(c*l);t.lineTo(r*i,s*i)}t.closePath(),t.stroke(),t.fill(),t.restore()}(o,a,r,20,"#f00",0),o.font="18px é»‘体",o.textBaseline="middle",o.textAlign="center",o.lineWidth=1,o.strokeStyle="#f00",o.strokeText(t,a,r+50),o.font="14px é»‘体",o.textBaseline="middle",o.textAlign="center",o.lineWidth=1,o.strokeStyle="#f00",o.strokeText(n,a,r+80),o.translate(a,r),o.font="22px é»‘体";for(var s,l=e.length,c=4*Math.PI/(3*(l-1)),u=e.split(""),d=0;d<l;d++)s=u[d],0==d?o.rotate(5*Math.PI/6):o.rotate(c),o.save(),o.translate(90,0),o.rotate(Math.PI/2),o.strokeText(s,0,0),o.restore(),o.save();this.disabled=!0},submit:function(t,e){return t||(t=this.width),e||(e=this.height),this.canvas.toDataURL("i/png")},clear:function(){this.linex=new Array,this.liney=new Array,this.linen=new Array,this.disabled=!1,this.canvas.width=this.canvas.width},init:function(){this.canvas=this.$refs.canvas;var t=this.canvas,e=this;void 0!==document.ontouchstart?(t.addEventListener("touchmove",s,!1),t.addEventListener("touchstart",l,!1),t.addEventListener("touchend",c,!1)):(t.addEventListener("mousemove",s,!1),t.addEventListener("mousedown",l,!1),t.addEventListener("mouseup",c,!1),t.addEventListener("mouseleave",c,!1)),this.context=t.getContext("2d");var n=this.context;this.linex=new Array,this.liney=new Array,this.linen=new Array;var i=1,o=30,a=0;function r(t,e){var n,i,o=t.getBoundingClientRect();return e.targetTouches?(n=e.targetTouches[0].clientX,i=e.targetTouches[0].clientY):(n=e.clientX,i=e.clientY),{x:(n-o.left)*(t.width/o.width),y:(i-o.top)*(t.height/o.height)}}function s(s){if(!e.disabled){var l=r(t,s).x,c=r(t,s).y;if(1==a){e.linex.push(l),e.liney.push(c),e.linen.push(1),n.save(),n.translate(n.canvas.width/2,n.canvas.height/2),n.translate(-n.canvas.width/2,-n.canvas.height/2),n.beginPath(),n.lineWidth=2;for(var u=1;u<e.linex.length;u++)i=e.linex[u],o=e.liney[u],0==e.linen[u]?n.moveTo(i,o):n.lineTo(i,o);n.shadowBlur=10,n.stroke(),n.restore()}s.preventDefault()}}function l(n){if(!e.disabled){var i=r(t,n).x,o=r(t,n).y;a=1,e.linex.push(i),e.liney.push(o),e.linen.push(0)}}function c(){e.disabled||(a=0)}}}}),Ve=Object(s.a)(Ue,(function(){var t=this.$createElement,e=this._self._c||t;return e("div",{class:this.b()},[e("canvas",{ref:"canvas",class:this.b("canvas"),attrs:{width:this.width,height:this.height}})])}),[],!1,null,null,null).exports,Ye=Object(i.a)({name:"slider",mixins:[At(),Tt()],props:{step:{type:Number},min:{type:Number},max:{type:Number},marks:{type:Object},range:{type:Boolean,default:!1},showInput:{type:Boolean,default:!1},showStops:{type:Boolean,default:!1},vertical:{type:Boolean,default:!1},formatTooltip:Function,height:String}}),Xe=Object(s.a)(Ye,(function(){var t=this,e=t.$createElement;return(t._self._c||e)("el-slider",{attrs:{disabled:t.disabled,vertical:t.vertical,height:t.height,step:t.step,min:t.min,max:t.max,range:t.range,"show-stops":t.showStops,"show-input":t.showInput,marks:t.marks,"format-tooltip":t.formatTooltip},nativeOn:{click:function(e){return t.handleClick.apply(null,arguments)}},model:{value:t.text,callback:function(e){t.text=e},expression:"text"}})}),[],!1,null,null,null).exports;function qe(t){return(qe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function Ge(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}var Je=function(){function t(e){if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),"object"===qe(e)){this.obj=e;var n=document.querySelector(e.el),i="";if("object"===qe(e.style))for(var o in e.style)i+=o+": "+e.style[o]+";";for(var a='<div class="akeyboard-keyboard'+(e.fixedBottomCenter?" akeyboard-keyboard-fixedBottomCenter":"")+'" style="'+i+'">',r=[],s=1;s<10;s++)r.push(s.toString());r.push("0");for(var l,c=e.keys||[["`"].concat(r).concat(["-","=","Delete"]),["Tab","q","w","e","r","t","y","u","i","o","p","[","]","\\"],["Caps","a","s","d","f","g","h","j","k","l",";","'","Enter"],["Shift","z","x","c","v","b","n","m",",",".","/","Shift"],["Space"]],u=[],d=[],p=0;p<c.length;p++){u.push([]),d.push([]),l=c[p];for(var h=0;h<l.length;h++)if(1!==l[h].length)u[p].push(l[h]),d[p].push(l[h]);else{switch(d[p].push(l[h].toUpperCase()),l[h]){case"`":u[p].push("~");continue;case"1":u[p].push("!");continue;case"2":u[p].push("@");continue;case"3":u[p].push("#");continue;case"4":u[p].push("$");continue;case"5":u[p].push("%");continue;case"6":u[p].push("^");continue;case"7":u[p].push("&");continue;case"8":u[p].push("*");continue;case"9":u[p].push("(");continue;case"0":u[p].push(")");continue;case"-":u[p].push("_");continue;case"=":u[p].push("+");continue;case"[":u[p].push("{");continue;case"]":u[p].push("}");continue;case"\\":u[p].push("|");continue;case";":u[p].push(":");continue;case"'":u[p].push('"');continue;case",":u[p].push("<");continue;case".":u[p].push(">");continue;case"/":u[p].push("?");continue}u[p].push(l[h].toUpperCase())}}for(var f=0;f<c.length;f++){l=c[f],a+='<div class="akeyboard-keyboard-innerKeys">';for(var m=0;m<l.length;m++)a+='<div class="akeyboard-keyboard-keys akeyboard-keyboard-keys-'+l[m]+'">'+l[m]+"</div>";a+="</div>"}a+="</div>",n.innerHTML=a;var v=!1;if(c.forEach((function(t){t.includes("Shift")&&(v=!0)})),v)document.querySelectorAll(e.el+" .akeyboard-keyboard-keys-Shift").forEach((function(t){t.onclick=function(){if(this.isShift){t.isShift=!1,t.innerHTML="Shift",this.classList.remove("keyboard-keyboard-keys-focus");for(var n,i=document.querySelectorAll(e.el+" .akeyboard-keyboard-innerKeys"),o=0;o<i.length;o++){n=i[o];for(var a=0;a<n.childNodes.length;a++)n.childNodes[a].innerHTML=c[o][a]}}else{var r=document.querySelector(e.el+" .akeyboard-keyboard-keys-Caps");if(r&&r.isCaps)return;t.isShift=!0,t.innerHTML="SHIFT",this.classList.add("keyboard-keyboard-keys-focus");for(var s,l=document.querySelectorAll(e.el+" .akeyboard-keyboard-innerKeys"),d=0;d<l.length;d++){s=l[d];for(var p=0;p<s.childNodes.length;p++)"Shift"!==u[d][p]&&(s.childNodes[p].innerHTML=u[d][p])}}}}));var b=!1;if(c.forEach((function(t){t.includes("Caps")&&(b=!0)})),b)document.querySelectorAll(e.el+" .akeyboard-keyboard-keys-Caps").forEach((function(t){t.onclick=function(){if(this.isCaps){this.isCaps=!1,this.classList.remove("keyboard-keyboard-keys-focus");for(var t,n=document.querySelectorAll(e.el+" .akeyboard-keyboard-innerKeys"),i=0;i<n.length;i++){t=n[i];for(var o=0;o<t.childNodes.length;o++)t.childNodes[o].innerHTML=c[i][o]}}else{var a=document.querySelector(e.el+" .akeyboard-keyboard-keys-Shift");if(a&&a.isShift)return;this.isCaps=!0,this.classList.add("keyboard-keyboard-keys-focus");for(var r,s=document.querySelectorAll(e.el+" .akeyboard-keyboard-innerKeys"),l=0;l<s.length;l++){r=s[l];for(var u=0;u<r.childNodes.length;u++)r.childNodes[u].innerHTML=d[l][u]}}}}))}else console.error('aKeyboard: The obj parameter needs to be an object <In "new aKeyboard()">')}var e,n,i;return e=t,(n=[{key:"inputOn",value:function(t,e,n,i){if("string"==typeof t)if("string"==typeof e)for(var o=document.querySelector(t),a=document.querySelectorAll(this.obj.el+" .akeyboard-keyboard-keys"),r=0;r<a.length;r++)["Shift","Caps"].includes(a[r].innerHTML)||("Delete"!==a[r].innerHTML?"Tab"!==a[r].innerHTML?"Enter"!==a[r].innerHTML?"Space"!==a[r].innerHTML?i&&"object"===qe(i)&&Object.keys(i).length>0&&i[a[r].innerHTML]?a[r].onclick=i[a[r].innerHTML]:a[r].onclick=function(){o[e]+=this.innerText,n(this.innerText,o[e])}:a[r].onclick=function(){o[e]+=" ",n("Space",o[e])}:a[r].onclick=function(){o[e]+="\n",n("Enter",o[e])}:a[r].onclick=function(){o[e]+="  ",n("Tab",o[e])}:a[r].onclick=function(){o[e]=o[e].substr(0,o[e].length-1),n("Delete",o[e])});else console.error('aKeyboard: The type parameter needs to be a string <In "aKeyboard.inputOn()">');else console.error('aKeyboard: The inputEle parameter needs to be a string <In "aKeyboard.inputOn()">')}},{key:"onclick",value:function(t,e){if("string"==typeof t)if("function"==typeof e){var n=document.querySelector(this.obj.el+" .akeyboard-keyboard-keys-"+t);n?n.onclick=e:console.error("Can not find key: "+t)}else console.error('aKeyboard: The fn parameter needs to be a function <In "aKeyboard.onclick()">');else console.error('aKeyboard: The btn parameter needs to be a string <In "aKeyboard.onclick()">')}}])&&Ge(e.prototype,n),i&&Ge(e,i),Object.defineProperty(e,"prototype",{writable:!1}),t}();function Qe(t){return(Qe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function Ze(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}var tn=function(){function t(e){if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),"object"===Qe(e)){this.obj=e;var n=document.querySelector(e.el),i="";if("object"===Qe(e.style))for(var o in e.style)i+=o+": "+e.style[o]+";";var a='<div class="akeyboard-numberKeyboard'+(e.fixedBottomCenter?" akeyboard-keyboard-fixedBottomCenter":"")+'" style="'+i+'">';a+='<div class="akeyboard-keyboard-innerKeys">';for(var r=1;r<10;r++)a+='<div class="akeyboard-keyboard-keys akeyboard-keyboard-keys-'+r+'">'+r+"</div>",r%3==0&&(a+='</div><div class="akeyboard-keyboard-innerKeys">');a+='<div class="akeyboard-keyboard-keys akeyboard-keyboard-keys-0">0</div><div class="akeyboard-keyboard-keys akeyboard-keyboard-keys-Delete">Delete</div></div><div class="akeyboard-keyboard-innerKeys"><div class="akeyboard-keyboard-keys akeyboard-numberKeyboard-keys-Enter">Enter</div></div>',a+="</div>",n.innerHTML=a}else console.error('aKeyboard: The obj parameter needs to be an object <In "new aKeyboard()">')}var e,n,i;return e=t,(n=[{key:"inputOn",value:function(t,e,n,i){if("string"==typeof t)if("string"==typeof e)for(var o=document.querySelector(t),a=document.querySelectorAll(this.obj.el+" .akeyboard-keyboard-keys"),r=0;r<a.length;r++)"Delete"!==a[r].innerHTML?"Enter"!==a[r].innerHTML?i&&"object"===Qe(i)&&Object.keys(i).length>0&&i[a[r].innerHTML]?a[r].onclick=i[a[r].innerHTML]:a[r].onclick=function(){o[e]+=this.innerText,n(this.innerText,o[e])}:a[r].onclick=function(){o[e]+="\n",n("Enter",o[e])}:a[r].onclick=function(){o[e]=o[e].substr(0,o[e].length-1),n("Delete",o[e])};else console.error('aKeyboard: The type parameter needs to be a string <In "aKeyboard.inputOn()">');else console.error('aKeyboard: The inputEle parameter needs to be a string <In "aKeyboard.inputOn()">')}},{key:"onclick",value:function(t,e){if("string"==typeof t)if("function"==typeof e){var n=document.querySelector(this.obj.el+" .akeyboard-keyboard-keys-"+t);n?n.onclick=e:console.error("Can not find key: "+t)}else console.error('aKeyboard: The fn parameter needs to be a function <In "aKeyboard.onclick()">');else console.error('aKeyboard: The btn parameter needs to be a string <In "aKeyboard.onclick()">')}}])&&Ze(e.prototype,n),i&&Ze(e,i),Object.defineProperty(e,"prototype",{writable:!1}),t}();var en=Object(i.a)({name:"keyboard",props:{ele:{type:String,required:!0},keys:Array,theme:{type:String,default:"default",validator:function(t){return["default","dark","green","classic"].includes(t)}},type:{type:String,default:"default",validator:function(t){return["default","number","mobile"].includes(t)}},fixedBottomCenter:{type:Boolean,default:!1},rebind:{type:Boolean,default:!0}},watch:{ele:function(){this.init()}},data:function(){return{customClick:{}}},computed:{className:function(){return"avue-keyboard--".concat(this.theme)}},mounted:function(){this.init()},methods:{init:function(){var t=this;if(this.ele){var e,n={el:"#keyboard",style:{},keys:this.keys,fixedBottomCenter:this.fixedBottomCenter};"default"==this.type?e=new Je(n):"number"==this.type?e=new tn(n):"mobile"==this.type&&(e=new MobileKeyBoard(n));var i=0==this.ele.indexOf("#")?this.ele.substring(1):this.ele;e.inputOn("#".concat(i),"value",(function(e,n){t.$emit("click",e,n)}),this.rebind?this.customClick:null),this.keyboard=e}},bindClick:function(t,e){this.keyboard.onclick(t,e),this.customClick[t]=e}}}),nn=Object(s.a)(en,(function(){var t=this.$createElement,e=this._self._c||t;return e("div",{class:[this.b(),this.className]},[e("div",{attrs:{id:"keyboard"}})])}),[],!1,null,null,null).exports,on=Object(i.a)({name:"tree",mixins:[j.a],directives:{permission:w},props:{indent:Number,filterNodeMethod:Function,checkOnClickNode:Boolean,permission:{type:[Function,Object],default:function(){return{}}},iconClass:{type:String},loading:{type:Boolean,default:!1},expandOnClickNode:{type:Boolean,default:!1},option:{type:Object,default:function(){return{}}},data:{type:Array,default:function(){return[]}},value:{type:Object,default:function(){return{}}}},data:function(){return{filterValue:"",client:{x:0,y:0,show:!1},box:!1,type:"",node:{},obj:{},form:{}}},computed:{styleName:function(){return{top:this.setPx(this.client.y-10),left:this.setPx(this.client.x-10)}},treeProps:function(){return Object.assign(this.props,{isLeaf:this.leafKey})},menu:function(){return this.vaildData(this.option.menu,!0)},title:function(){return this.option.title},treeLoad:function(){return this.option.treeLoad},checkStrictly:function(){return this.option.checkStrictly},accordion:function(){return this.option.accordion},multiple:function(){return this.option.multiple},lazy:function(){return this.option.lazy},addText:function(){return this.addFlag?this.menuIcon("addBtn"):this.menuIcon("updateBtn")},addFlag:function(){return["add","parentAdd"].includes(this.type)},size:function(){return this.option.size||"small"},props:function(){return this.option.props||{}},leafKey:function(){return this.props.leaf||B.e.leaf},valueKey:function(){return this.props.value||B.e.value},labelKey:function(){return this.props.label||B.e.label},childrenKey:function(){return this.props.children||B.e.children},nodeKey:function(){return this.option.nodeKey||B.e.nodeKey},defaultExpandAll:function(){return this.option.defaultExpandAll},defaultExpandedKeys:function(){return this.option.defaultExpandedKeys},formOption:function(){return Object.assign(this.option.formOption||{},{submitText:this.addText})}},mounted:function(){var t=this;document.addEventListener("click",(function(e){t.$el.contains(e.target)||(t.client.show=!1)})),this.initFun()},watch:{filterValue:function(t){this.$refs.tree.filter(t)},value:function(t){this.form=t},form:function(t){this.$emit("input",t)}},methods:{menuIcon:function(t){return this.vaildData(this.option[t+"Text"],this.t("crud."+t))},getPermission:function(t){return"function"==typeof this.permission?this.permission(t,this.node):!!this.validatenull(this.permission[t])||this.permission[t]},initFun:function(){var t=this;["filter","updateKeyChildren","getCheckedNodes","setCheckedNodes","getCheckedKeys","setCheckedKeys","setChecked","getHalfCheckedNodes","getHalfCheckedKeys","getCurrentKey","getCurrentNode","setCurrentKey","setCurrentNode","getNode","remove","append","insertBefore","insertAfter"].forEach((function(e){t[e]=t.$refs.tree[e]}))},nodeContextmenu:function(t,e){this.node=this.deepClone(e),this.client.x=t.clientX,this.client.y=t.clientY,this.client.show=!0},handleCheckChange:function(t,e,n){this.$emit("check-change",t,e,n)},handleSubmit:function(t,e){this.addFlag?this.save(t,e):this.update(t,e)},nodeClick:function(t,e,n){this.client.show=!1,this.$emit("node-click",t,e,n)},filterNode:function(t,e){return"function"==typeof this.filterNodeMethod?this.filterNodeMethod(t,e):!t||-1!==e[this.labelKey].indexOf(t)},hide:function(){this.box=!1,this.node={},this.$refs.form.resetForm(),this.$refs.form.clearValidate()},save:function(t,e){var n=this;this.$emit("save",this.node,t,(function(){var t=n.deepClone(n.form);"add"===n.type?n.$refs.tree.append(t,n.node[n.valueKey]):"parentAdd"===n.type&&n.$refs.tree.append(t),n.hide(),e()}),e)},update:function(t,e){var n=this;this.$emit("update",this.node,t,(function(){(n.$refs.tree.getNode(n.node[n.valueKey])||{}).data=n.deepClone(n.form),n.hide(),e()}),e)},rowEdit:function(t){this.type="edit",this.form=this.node,this.show()},parentAdd:function(){this.type="parentAdd",this.show()},rowAdd:function(){this.type="add",this.show()},show:function(){this.client.show=!1,this.box=!0},rowRemove:function(){var t=this;this.client.show=!1;this.$emit("del",this.node,(function(){t.$refs.tree.remove(t.node[t.valueKey])}))}}}),an=Object(s.a)(on,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b()},[t.vaildData(t.option.filter,!0)?n("div",{class:t.b("filter")},[n("el-input",{attrs:{placeholder:t.vaildData(t.option.filterText,"输入关键字进行过滤"),size:t.size},model:{value:t.filterValue,callback:function(e){t.filterValue=e},expression:"filterValue"}},[t.vaildData(t.option.addBtn,!0)?n("el-button",{directives:[{name:"permission",rawName:"v-permission",value:t.getPermission("addBtn"),expression:"getPermission('addBtn')"}],attrs:{slot:"append",size:t.size,icon:"el-icon-plus"},on:{click:t.parentAdd},slot:"append"}):t._t("addBtn",null,{slot:"append"})],2)],1):t._e(),t._v(" "),n("el-scrollbar",{class:t.b("content")},[n("el-tree",{directives:[{name:"loading",rawName:"v-loading",value:t.loading,expression:"loading"}],ref:"tree",attrs:{data:t.data,lazy:t.lazy,load:t.treeLoad,props:t.treeProps,"icon-class":t.iconClass,indent:t.indent,"highlight-current":!t.multiple,"show-checkbox":t.multiple,accordion:t.accordion,"node-key":t.valueKey,"check-strictly":t.checkStrictly,"check-on-click-node":t.checkOnClickNode,"filter-node-method":t.filterNode,"expand-on-click-node":t.expandOnClickNode,"default-expand-all":t.defaultExpandAll,"default-expanded-keys":t.defaultExpandedKeys},on:{"check-change":t.handleCheckChange,"node-click":t.nodeClick,"node-contextmenu":t.nodeContextmenu},scopedSlots:t._u([{key:"default",fn:function(e){var i=e.node,o=e.data;return t.$scopedSlots.default?t._t("default",null,{node:i,data:o}):n("span",{staticClass:"el-tree-node__label"},[n("span",[t._v(t._s(i.label))])])}}],null,!0)})],1),t._v(" "),t.client.show&&t.menu?n("div",{staticClass:"el-cascader-panel is-bordered",class:t.b("menu"),style:t.styleName,on:{click:function(e){t.client.show=!1}}},[t.vaildData(t.option.addBtn,!0)?n("div",{directives:[{name:"permission",rawName:"v-permission",value:t.getPermission("addBtn"),expression:"getPermission('addBtn')"}],class:t.b("item"),on:{click:t.rowAdd}},[t._v(t._s(t.menuIcon("addBtn")))]):t._e(),t._v(" "),t.vaildData(t.option.editBtn,!0)?n("div",{directives:[{name:"permission",rawName:"v-permission",value:t.getPermission("editBtn"),expression:"getPermission('editBtn')"}],class:t.b("item"),on:{click:t.rowEdit}},[t._v(t._s(t.menuIcon("editBtn")))]):t._e(),t._v(" "),t.vaildData(t.option.delBtn,!0)?n("div",{directives:[{name:"permission",rawName:"v-permission",value:t.getPermission("delBtn"),expression:"getPermission('delBtn')"}],class:t.b("item"),on:{click:t.rowRemove}},[t._v(t._s(t.menuIcon("delBtn")))]):t._e(),t._v(" "),t._t("menu",null,{node:t.node})],2):t._e(),t._v(" "),n("el-dialog",{staticClass:"avue-dialog",class:t.b("dialog"),attrs:{title:t.node[t.labelKey]||t.title,visible:t.box,"modal-append-to-body":"","append-to-body":"",width:t.vaildData(t.option.dialogWidth,"50%")},on:{"update:visible":function(e){t.box=e},close:t.hide}},[n("avue-form",{ref:"form",attrs:{option:t.formOption},on:{submit:t.handleSubmit},model:{value:t.form,callback:function(e){t.form=e},expression:"form"}})],1)],1)}),[],!1,null,null,null).exports,rn=Object(i.a)({name:"title",mixins:[At(),Tt()],props:{styles:{type:Object,default:function(){return{}}}},mounted:function(){},methods:{}}),sn=Object(s.a)(rn,(function(){var t=this.$createElement,e=this._self._c||t;return e("div",{class:this.b()},[e("p",{style:this.styles},[this._v(this._s(this.text))])])}),[],!1,null,null,null).exports,ln=Object(i.a)({name:"search",mixins:[Object(O.a)()],props:{value:{}},computed:{isCard:function(){return this.parentOption.card},parentOption:function(){return this.tableOption},propOption:function(){return this.columnOption},columnOption:function(){return this.parentOption.column}},data:function(){return{form:{}}},watch:{value:{handler:function(){this.setVal()},deep:!0}},created:function(){this.dataformat(),this.setVal()},methods:{setVal:function(){var t=this;Object.keys(this.value).forEach((function(e){t.$set(t.form,e,t.value[e])}))},getKey:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return t[e[n]||(this.parentOption.props||{})[n]||n]},dataformat:function(){var t=this;this.columnOption.forEach((function(e){var n=e.prop;t.validatenull(t.form[n])&&(!1===e.multiple?t.$set(t.form,n,""):t.$set(t.form,n,[]))}))},getActive:function(t,e){var n=this.getKey(t,e.props,"value");return!1===e.multiple?this.form[e.prop]===n:this.form[e.prop].includes(n)},handleClick:function(t,e){var n=this.getKey(e,t.props,"value");if(!1===t.multiple)this.form[t.prop]=n;else{var i=this.form[t.prop].indexOf(n);-1===i?this.form[t.prop].push(n):this.form[t.prop].splice(i,1)}this.$emit("change",this.form),this.$emit("input",this.form)}}}),cn=Object(s.a)(ln,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-row",{class:[t.b(),{"avue--card":t.isCard}],attrs:{span:24}},t._l(t.columnOption,(function(e,i){return n("el-col",{key:e.prop,class:t.b("item"),attrs:{span:e.span||24}},[n("p",{class:t.b("title")},[t._v(t._s(e.label)+":")]),t._v(" "),n("div",{class:t.b("content")},[e.slot?t._t(e.prop,null,{dic:t.DIC[e.prop]}):t._l(t.DIC[e.prop],(function(i){return n("span",{key:t.getKey(i,e.props,"value"),class:[t.b("tags"),{"avue-search__tags--active":t.getActive(i,e)}],on:{click:function(n){return t.handleClick(e,i)}}},[t._v(t._s(t.getKey(i,e.props,"label")))])}))],2)])})),1)}),[],!1,null,null,null).exports;var un=Object(i.a)({name:"skeleton",props:{loading:{type:Boolean,default:!0},avatar:Boolean,active:{type:Boolean,default:!0},block:Boolean,number:{type:Number,default:1},rows:{type:Number,default:3}},computed:{styleName:function(){return this.block?{width:"100%"}:{}},className:function(){var t,e,n,i=this.active;return t={},e="".concat("avue-skeleton","__loading"),n=i,e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}}}),dn=Object(s.a)(un,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b()},t._l(t.number,(function(e,i){return t.loading?n("div",{key:i,class:t.b("item")},[n("div",{class:t.b("header")},[t.avatar?n("span",{class:[t.b("avatar"),t.className]}):t._e()]),t._v(" "),n("div",{class:t.b("content")},[n("h3",{class:[t.b("title"),t.className]}),t._v(" "),n("div",{class:t.b("list")},t._l(t.rows,(function(e,i){return n("li",{key:i,class:[t.b("li"),t.className],style:t.styleName})})),0)])]):n("div",[t._t("default")],2)})),0)}),[],!1,null,null,null).exports,pn=Object(i.a)({name:"tabs",props:{option:{type:Object,required:!0,default:function(){return{}}}},data:function(){return{active:"0"}},watch:{active:function(){this.$emit("change",this.tabsObj)}},computed:{tabsObj:function(){return this.columnOption[this.active]},parentOption:function(){return this.option},columnOption:function(){return this.parentOption.column||[]}},methods:{changeTabs:function(t){this.active=t+""}}}),hn=Object(s.a)(pn,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b()},[n("el-tabs",{attrs:{"tab-position":t.parentOption.position,type:t.parentOption.type},model:{value:t.active,callback:function(e){t.active=e},expression:"active"}},t._l(t.columnOption,(function(e,i){return n("el-tab-pane",{key:i,attrs:{name:i+"",disabled:e.disabled}},[n("span",{attrs:{slot:"label"},slot:"label"},[n("i",{class:e.icon}),t._v(" \n        "+t._s(e.label)+"\n      ")])])})),1)],1)}),[],!1,null,null,null).exports,fn=Object(i.a)({name:"dynamic",mixins:[At(),Tt()],data:function(){return{hoverList:[]}},props:{columnSlot:{type:Array,default:function(){return[]}},children:{type:Object,default:function(){return{}}}},computed:{showIndex:function(){return this.vaildData(this.children.index,!0)},showType:function(){return this.children.type||"crud"},isForm:function(){return"form"===this.showType},isCrud:function(){return"crud"===this.showType},selectionChange:function(){return this.children.selectionChange},sortableChange:function(){return this.children.sortableChange},rowAdd:function(){return this.children.rowAdd},rowDel:function(){return this.children.rowDel},viewBtn:function(){return!1===this.children.viewBtn},addBtn:function(){return!1===this.children.addBtn},delBtn:function(){return!1===this.children.delBtn},valueOption:function(){var t={};return this.columnOption.forEach((function(e){e.value&&(t[e.prop]=e.value)})),t},rulesOption:function(){var t={};return this.columnOption.forEach((function(e){e.rules&&(t[e.prop]=e.rules)})),t},columnOption:function(){return this.children.column||[]},option:function(){var t,e=this;return Object.assign({border:!0,header:!1,menu:!1,size:this.size,disabled:this.disabled,readonly:this.readonly,emptyBtn:!1,submitBtn:!1},function(){var t=e.deepClone(e.children);return delete t.column,t}(),(t=[{label:e.children.indexLabel||"#",prop:"_index",display:e.showIndex,fixed:!0,align:"center",headerAlign:"center",span:24,width:50}],e.columnOption.forEach((function(n){t.push(Object.assign(n,{cell:e.vaildData(n.cell,!0)}))})),{column:t}))}},mounted:function(){this.initData()},watch:{textLen:function(){return this.text.length},text:function(){this.initData()}},methods:{handleSelectionChange:function(t){this.selectionChange&&this.selectionChange(t)},handleSortableChange:function(t,e,n,i){this.sortableChange&&this.sortableChange(t,e,n,i)},cellMouseenter:function(t){var e=t.$index;this.mouseoverRow(e)},cellMouseLeave:function(t,e,n,i){var o=t.$index;this.mouseoutRow(o)},initData:function(){this.text.forEach((function(t,e){t=Object.assign(t,{$cellEdit:!0,$index:e})}))},mouseoverRow:function(t){this.delBtn||(this.flagList(),this.$set(this.hoverList,t,!0))},mouseoutRow:function(t){this.delBtn||(this.flagList(),this.$set(this.hoverList,t,!1))},flagList:function(){this.hoverList.forEach((function(t,e){!1}))},delRow:function(t){var e=this,n=function(){var n=e.deepClone(e.text);n.splice(t,1),e.text=n};"function"==typeof this.rowDel?this.rowDel(this.text[t],n):n()},addRow:function(){var t=this,e=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};e=Object.assign(t.valueOption,e,{$index:t.textLen}),t.isCrud?t.$refs.main.rowCellAdd(e):t.isForm&&t.text.push(e)};"function"==typeof this.rowAdd?this.rowAdd(e):e()}}}),mn=Object(s.a)(fn,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b()},[t.isForm?[n("div",{class:t.b("header")},[t.readonly||t.disabled||t.addBtn?t._e():n("el-button",{attrs:{size:"mini",circle:"",disabled:t.disabled,type:"primary",icon:"el-icon-plus"},on:{click:t.addRow}})],1),t._v(" "),n("div",t._l(t.text,(function(e,i){return n("div",{key:i,class:t.b("row"),on:{mouseenter:function(e){return t.cellMouseenter({$index:i})},mouseleave:function(e){return t.cellMouseLeave({$index:i})}}},[t.readonly||t.disabled||t.delBtn||!t.hoverList[i]?t._e():n("el-button",{class:t.b("menu"),attrs:{type:"danger",size:"mini",disabled:t.disabled,icon:"el-icon-delete",circle:""},on:{click:function(n){return t.delRow(e.$index)}}}),t._v(" "),n("avue-form",{key:i,ref:"main",refInFor:!0,attrs:{option:t.deepClone(t.option)},scopedSlots:t._u([{key:"_index",fn:function(i){return n("div",{},[n("span",[t._v(t._s(e.$index+1))])])}},t._l(t.columnSlot,(function(e){return{key:e,fn:function(n){return[t._t(e,null,null,Object.assign(n,{row:t.text[i]}))]}}}))],null,!0),model:{value:t.text[i],callback:function(e){t.$set(t.text,i,e)},expression:"text[index]"}})],1)})),0)]:t.isCrud?n("avue-crud",{ref:"main",attrs:{option:t.option,disabled:t.disabled,data:t.text},on:{"cell-mouse-enter":t.cellMouseenter,"cell-mouse-leave":t.cellMouseLeave,"selection-change":t.handleSelectionChange,"sortable-change":t.handleSortableChange},scopedSlots:t._u([{key:"_indexHeader",fn:function(e){return[t.addBtn||t.readonly?t._e():n("el-button",{attrs:{type:"primary",size:"mini",disabled:t.disabled,icon:"el-icon-plus",circle:""},on:{click:function(e){return t.addRow()}}})]}},{key:"_index",fn:function(e){return[t.readonly||t.disabled||t.delBtn||!t.hoverList[e.row.$index]?n("div",[t._v(t._s(e.row.$index+1))]):n("el-button",{attrs:{type:"danger",size:"mini",disabled:t.disabled,icon:"el-icon-delete",circle:""},on:{click:function(n){return t.delRow(e.row.$index)}}})]}},t._l(t.columnSlot,(function(e){return{key:t.getSlotName({prop:e},"F"),fn:function(n){return[t._t(e,null,null,n)]}}}))],null,!0)}):t._e()],2)}),[],!1,null,null,null).exports,vn=Object(i.a)({name:"queue",props:{enter:{type:String,default:"fadeInLeft"},leave:{type:String,default:"fadeOutRight"},block:{type:Boolean,default:!1},delay:{type:Number,default:0}},data:function(){return{isFixed:0,animate:[]}},mounted:function(){var t=this;this.$nextTick((function(){addEventListener("scroll",t.handleAnimate),t.handleAnimate()}))},methods:{handleAnimate:function(){var t=this;(pageYOffset||document.documentElement.scrollTop||document.body.scrollTop)+document.documentElement.clientHeight>this.$refs.queue.offsetTop?setTimeout((function(){t.animate=[t.enter,"avue-opacity--active"]}),this.delay):this.animate=["avue-opacity"]}},destroyed:function(){removeEventListener("scroll",this.handleAnimate)}}),bn=Object(s.a)(vn,(function(){var t=this.$createElement,e=this._self._c||t;return e("div",{class:[this.b(),{"avue-queue--block":this.block}]},[e("div",{ref:"queue",staticClass:"animated",class:this.animate},[this._t("default")],2)])}),[],!1,null,null,null).exports;function gn(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}var yn=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.video=e,this.mediaRecorder=null,this.chunks=[]}var e,n,i;return e=t,(n=[{key:"init",value:function(){var t=this;return new Promise((function(e,n){navigator.mediaDevices.getUserMedia({audio:!0,video:!0}).then((function(n){"srcObject"in t.video?t.video.srcObject=n:t.video.src=window.URL.createObjectURL(n),t.video.addEventListener("loadmetadata",(function(){t.video.play()})),t.mediaRecorder=new MediaRecorder(n),t.mediaRecorder.addEventListener("dataavailable",(function(e){t.chunks.push(e.data)})),e()})).catch((function(t){n(t)}))}))}},{key:"startRecord",value:function(){"inactive"===this.mediaRecorder.state&&this.mediaRecorder.start()}},{key:"stopRecord",value:function(){"recording"===this.mediaRecorder.state&&this.mediaRecorder.stop()}},{key:"isSupport",value:function(){if(navigator.mediaDevices&&navigator.mediaDevices.getUserMedia)return!0}}])&&gn(e.prototype,n),i&&gn(e,i),Object.defineProperty(e,"prototype",{writable:!1}),t}(),_n=Object(i.a)({name:"video",props:{background:{type:String},width:{type:[String,Number],default:500}},computed:{styleName:function(){return{width:this.setPx(this.width)}},imgStyleName:function(){return{width:this.setPx(this.width/2)}},borderStyleName:function(){return{width:this.setPx(this.width/15),height:this.setPx(this.width/15),borderWidth:this.setPx(5)}}},data:function(){return{videoObj:null}},mounted:function(){this.init()},methods:{init:function(){var t=this;this.videoObj=new yn(this.$refs.main),this.videoObj.init().then((function(){t.videoObj.mediaRecorder.addEventListener("stop",t.getData,!1)}))},startRecord:function(){this.videoObj.startRecord()},stopRecord:function(){this.videoObj.stopRecord()},getData:function(){var t=this,e=new Blob(this.videoObj.chunks,{type:"video/mp4"}),n=new FileReader;n.readAsDataURL(e),n.addEventListener("loadend",(function(){var e=n.result;t.$emit("data-change",e)}))}}}),xn=Object(s.a)(_n,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b(),style:t.styleName},[n("div",{class:t.b("border")},[n("span",{style:t.borderStyleName}),t._v(" "),n("span",{style:t.borderStyleName}),t._v(" "),n("span",{style:t.borderStyleName}),t._v(" "),n("span",{style:t.borderStyleName})]),t._v(" "),n("img",{class:t.b("img"),style:t.imgStyleName,attrs:{src:t.background}}),t._v(" "),n("video",{ref:"main",class:t.b("main"),attrs:{autoplay:"",muted:""},domProps:{muted:!0}})])}),[],!1,null,null,null).exports,wn=Object(i.a)({name:"login",props:{value:{type:Object,default:function(){return{}}},codesrc:{type:String},option:{type:Object,default:function(){return{}}}},watch:{value:{handler:function(){this.form=this.value},deep:!0},form:{handler:function(){this.$emit("input",this.form)},deep:!0,immediate:!0}},computed:{labelWidth:function(){return this.option.labelWidth||80},time:function(){return this.option.time||60},isImg:function(){return"img"===this.codeType},isPhone:function(){return"phone"===this.codeType},codeType:function(){return this.option.codeType||"img"},width:function(){return this.option.width||"100%"},username:function(){return this.column.username||{}},password:function(){return this.column.password||{}},code:function(){return this.column.code||{}},column:function(){return this.option.column||{}},sendDisabled:function(){return!this.validatenull(this.check)}},data:function(){return{text:"发送验证码",nowtime:"",check:{},flag:!1,form:{username:"",password:"",code:""}}},methods:{onSend:function(){var t=this;this.sendDisabled||this.$emit("send",(function(){t.nowtime=t.time,t.text="{{time}}s后重获取".replace("{{time}}",t.nowtime),t.check=setInterval((function(){t.nowtime--,0===t.nowtime?(t.text="发送验证码",clearInterval(t.check),t.check=null):t.text="{{time}}s后重获取".replace("{{time}}",t.nowtime)}),1e3)}))},onRefresh:function(){this.$emit("refresh")},onSubmit:function(){var t=this;this.$refs.form.validate((function(e){e&&t.$emit("submit",function(){var e={};for(var n in t.form){var i=n;t[n].prop&&(i=t[n].prop),e[i]=t.form[n]}return e}())}))}}}),On=Object(s.a)(wn,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b(),style:{width:t.setPx(t.width)}},[n("el-form",{ref:"form",attrs:{model:t.form,"label-suffix":":","label-width":t.setPx(t.labelWidth)}},[t.username.hide?t._e():n("el-form-item",{attrs:{label:t.username.label||"用户名",rules:t.username.rules,"label-width":t.setPx(t.username.labelWidth),prop:"username"}},[n("el-tooltip",{attrs:{content:t.username.tip,disabled:void 0===t.username.tip,placement:"top-start"}},[n("el-input",{attrs:{size:"small","prefix-icon":t.username.prefixIcon||"el-icon-user",placeholder:t.username.placeholder||"请输入用户名",autocomplete:t.username.autocomplete},model:{value:t.form.username,callback:function(e){t.$set(t.form,"username",e)},expression:"form.username"}})],1)],1),t._v(" "),t.password.hide?t._e():n("el-form-item",{attrs:{label:t.password.label||"密码",rules:t.password.rules,"label-width":t.setPx(t.password.labelWidth),prop:"password"}},[n("el-tooltip",{attrs:{content:t.password.tip,disabled:void 0===t.password.tip,placement:"top-start"}},[n("el-input",{attrs:{type:"password",size:"small","prefix-icon":t.password.prefixIcon||"el-icon-unlock",placeholder:t.password.placeholder||"请输入密码","show-password":"",autocomplete:t.password.autocomplete},model:{value:t.form.password,callback:function(e){t.$set(t.form,"password",e)},expression:"form.password"}})],1)],1),t._v(" "),t.code.hide?t._e():n("el-form-item",{attrs:{label:t.code.label||"验证码",rules:t.code.rules,"label-width":t.setPx(t.code.labelWidth),prop:"code"}},[n("el-tooltip",{attrs:{content:t.code.tip,disabled:void 0===t.code.tip,placement:"top-start"}},[n("el-input",{attrs:{size:"small","prefix-icon":t.code.prefixIcon||"el-icon-c-scale-to-original",placeholder:t.code.placeholder||"请输入验证码",autocomplete:t.code.autocomplete},model:{value:t.form.code,callback:function(e){t.$set(t.form,"code",e)},expression:"form.code"}},[n("template",{slot:"append"},[t.isPhone?n("el-button",{class:t.b("send"),attrs:{type:"primary",disabled:t.sendDisabled},on:{click:t.onSend}},[t._v(t._s(t.text))]):t._e(),t._v(" "),t.isImg?n("span",[n("img",{attrs:{src:t.codesrc,alt:"",width:"80",height:"25"},on:{click:t.onRefresh}})]):t._e()],1)],2)],1)],1),t._v(" "),n("el-form-item",[n("el-button",{class:t.b("submit"),attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("登录")])],1)],1)],1)}),[],!1,null,null,null).exports,Cn=Object(i.a)({name:"array",mixins:[At(),Tt()],data:function(){return{text:[]}},computed:{isLimit:function(){return!this.validatenull(this.limit)&&this.textLen>=this.limit},textLen:function(){return(this.text||[]).length},isImg:function(){return"img"===this.type},isUrl:function(){return"url"===this.type}},props:{alone:Boolean,type:String,size:String,placeholder:String,readonly:Boolean,disabled:Boolean,value:[Array,String],limit:Number},methods:{add:function(t){this.text.splice(t+1,0,"")},remove:function(t){this.text.splice(t,1)},openImg:function(t){var e=this.text.map((function(t){return{thumbUrl:t,url:t}}));this.$ImagePreview(e,t)}}}),kn=Object(s.a)(Cn,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b()},[t.validatenull(t.text)?n("el-button",{attrs:{type:"primary",icon:"el-icon-plus",circle:"",size:t.size,disabled:t.disabled},on:{click:function(e){return t.add()}}}):t._e(),t._v(" "),t._l(t.text,(function(e,i){return n("div",{key:i,class:t.b("item")},[n("div",{class:t.b("input")},[n("el-tooltip",{attrs:{placement:"bottom",disabled:!t.isImg&&!t.isUrl||t.validatenull(e)}},[n("div",{attrs:{slot:"content"},slot:"content"},[t.isImg?n("el-image",{staticStyle:{width:"150px"},attrs:{src:e,fit:"cover"},on:{click:function(e){return t.openImg(i)}}}):t.isUrl?n("el-link",{attrs:{type:"primary",href:e,target:t.target}},[t._v(t._s(e))]):t._e()],1),t._v(" "),n("el-input",{attrs:{size:t.size,placeholder:t.placeholder,disabled:t.disabled},model:{value:t.text[i],callback:function(e){t.$set(t.text,i,e)},expression:"text[index]"}})],1),t._v(" "),t.disabled||t.readonly||t.alone?t._e():[t.isLimit?t._e():n("el-button",{attrs:{type:"primary",icon:"el-icon-plus",circle:"",size:t.size,disabled:t.disabled},on:{click:function(e){return t.add(i)}}}),t._v(" "),n("el-button",{attrs:{type:"danger",icon:"el-icon-minus",circle:"",size:t.size,disabled:t.disabled},on:{click:function(e){return t.remove(i)}}})]],2)])}))],2)}),[],!1,null,null,null).exports,Sn=Object(i.a)({name:"text-ellipsis",props:{text:String,height:Number,width:Number,isLimitHeight:{type:Boolean,default:!0},useTooltip:{type:Boolean,default:!1},placement:String},data:function(){return{keyIndex:0,oversize:!1,isHide:!1}},watch:{isLimitHeight:function(){this.init()},text:function(){this.init()},height:function(){this.init()}},mounted:function(){this.init()},methods:{init:function(){this.oversize=!1,this.keyIndex+=1,this.$refs.more.style.display="none",this.isLimitHeight&&this.limitShow()},limitShow:function(){var t=this;this.$nextTick((function(){var e=t.$refs.text,n=t.$el,i=t.$refs.more,o=1e3;if(e)if(n.offsetHeight>t.height){i.style.display="inline-block";for(var a=t.text;n.offsetHeight>t.height&&o>0;)n.offsetHeight>3*t.height?e.innerText=a=a.substring(0,Math.floor(a.length/2)):e.innerText=a=a.substring(0,a.length-1),o--;t.$emit("hide"),t.isHide=!0}else t.$emit("show"),t.isHide=!1}))}}}),En=[kn,l,m,g,_,ft,yt,bt,kt,jt,Dt,Bt,Lt,p,Nt,Kt,Wt,Yt,qt,Jt,Zt,oe,re,le,de,he,me,be,xe,ye,Oe,Ee,$e,We,Xe,nn,an,sn,cn,hn,bn,mn,xn,ke,Object(s.a)(Sn,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b(),style:{width:t.setPx(t.width,"100%")}},[t._t("before"),t._v(" "),n("el-tooltip",{attrs:{content:t.text,disabled:!(t.useTooltip&&t.isHide),placement:t.placement}},[n("span",[n("span",{key:t.keyIndex,ref:"text",class:t.b("text")},[t._v(t._s(t.text))])])]),t._v(" "),n("span",{ref:"more",class:t.b("more")},[t._t("more")],2),t._v(" "),t._t("after")],2)}),[],!1,null,null,null).exports,dn,Ve,On],jn=Object(i.a)({name:"data-tabs",data:function(){return{}},computed:{animation:function(){return this.option.animation},decimals:function(){return this.option.decimals||0},span:function(){return this.option.span||8},data:function(){return this.option.data||[]}},props:{option:{type:Object,default:function(){}}}}),$n=Object(s.a)(jn,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"avue-data-tabs"},[n("el-row",{attrs:{span:24}},t._l(t.data,(function(e,i){return n("el-col",{key:i,attrs:{md:t.span,xs:24,sm:12}},[n("div",{staticClass:"item",style:{background:e.color}},[n("a",{attrs:{href:e.href?e.href:"javascript:void(0);",target:e.target},on:{click:function(t){e.click&&e.click(e)}}},[n("div",{staticClass:"item-header"},[n("p",[t._v(t._s(e.title))]),t._v(" "),n("span",[t._v(t._s(e.subtitle))])]),t._v(" "),n("div",{staticClass:"item-body"},[n("avue-count-up",{staticClass:"h2",attrs:{decimals:e.decimals||t.decimals,animation:e.animation||t.animation,end:e.count}})],1),t._v(" "),n("div",{staticClass:"item-footer"},[n("span",[t._v(t._s(e.allcount))]),t._v(" "),n("p",[t._v(t._s(e.text))])]),t._v(" "),n("p",{staticClass:"item-tip"},[t._v(t._s(e.key))])])])])})),1)],1)}),[],!1,null,null,null).exports,Dn=Object(i.a)({name:"data-cardtext",data:function(){return{}},computed:{icon:function(){return this.option.icon},color:function(){return this.option.color||"#333"},span:function(){return this.option.span||8},data:function(){return this.option.data||[]}},props:{option:{type:Object,default:function(){}}}}),An=Object(s.a)(Dn,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"avue-data-cardText"},[n("el-row",{attrs:{span:24}},t._l(t.data,(function(e,i){return n("el-col",{key:i,attrs:{md:t.span,xs:24,sm:12}},[n("div",{staticClass:"item"},[n("a",{attrs:{href:e.href||"javascript:void(0);",target:e.target},on:{click:function(t){e.click&&e.click(e)}}},[n("div",{staticClass:"item-header"},[n("i",{class:e.icon||"el-icon-bell",style:{color:e.color||"red"}}),t._v(" "),n("a",{},[t._v(t._s(e.title))])]),t._v(" "),n("div",{staticClass:"item-content"},[t._v(t._s(e.content))]),t._v(" "),n("div",{staticClass:"item-footer"},[n("span",[t._v(t._s(e.name))]),t._v(" "),n("span",[t._v(t._s(e.date))])])])])])})),1)],1)}),[],!1,null,null,null).exports,Tn=Object(i.a)({name:"data-box",data:function(){return{}},props:{option:{type:Object,default:function(){}}},computed:{animation:function(){return this.option.animation},decimals:function(){return this.option.decimals||0},span:function(){return this.option.span||8},data:function(){return this.option.data||[]}},created:function(){},mounted:function(){},watch:{},methods:{}}),Pn=Object(s.a)(Tn,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"data-box"},[n("el-row",{attrs:{span:24}},t._l(t.data,(function(e,i){return n("el-col",{key:i,attrs:{md:t.span,xs:24,sm:12}},[n("div",{staticClass:"item"},[n("a",{attrs:{href:e.href?e.href:"javascript:void(0);",target:e.target},on:{click:function(t){e.click&&e.click(e)}}},[n("div",{staticClass:"item-icon",style:{backgroundColor:e.color}},[n("i",{class:e.icon})]),t._v(" "),n("div",{staticClass:"item-info"},[n("avue-count-up",{staticClass:"title",style:{color:e.color},attrs:{animation:e.animation||t.animation,decimals:e.decimals||t.decimals,end:e.count}}),t._v(" "),n("div",{staticClass:"info"},[t._v(t._s(e.title))])],1)])])])})),1)],1)}),[],!1,null,null,null).exports,Bn=Object(i.a)({name:"data-progress",data:function(){return{}},props:{option:{type:Object,default:function(){}}},computed:{animation:function(){return this.option.animation},decimals:function(){return this.option.decimals||0},span:function(){return this.option.span||8},data:function(){return this.option.data||[]}},created:function(){},mounted:function(){},watch:{},methods:{}}),Mn=Object(s.a)(Bn,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"data-progress"},[n("el-row",{attrs:{span:24}},t._l(t.data,(function(e,i){return n("el-col",{key:i,attrs:{md:t.span,xs:24,sm:12}},[n("div",{staticClass:"item"},[n("a",{attrs:{href:e.href?e.href:"javascript:void(0);",target:e.target},on:{click:function(t){e.click&&e.click(e)}}},[n("div",{staticClass:"item-header"},[n("avue-count-up",{staticClass:"item-count",attrs:{animation:e.animation||t.animation,decimals:e.decimals||t.decimals,end:e.count}}),t._v(" "),n("div",{staticClass:"item-title",domProps:{textContent:t._s(e.title)}})],1),t._v(" "),n("el-progress",{attrs:{"stroke-width":15,percentage:e.count,color:e.color,"show-text":!1}})],1)])])})),1)],1)}),[],!1,null,null,null).exports,Ln=Object(i.a)({name:"data-icons",data:function(){return{}},computed:{animation:function(){return this.option.animation},decimals:function(){return this.option.decimals||0},span:function(){return this.option.span||4},data:function(){return this.option.data},color:function(){return this.option.color||"rgb(63, 161, 255)"},discount:function(){return this.option.discount||!1}},props:{option:{type:Object,default:function(){}}}}),In=Object(s.a)(Ln,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"data-icons"},[n("el-row",{attrs:{span:24}},[t._l(t.data,(function(e,i){return[n("el-col",{key:i,attrs:{xs:12,sm:6,md:t.span}},[n("div",{staticClass:"item",class:[{"item--easy":t.discount}]},[n("a",{attrs:{href:e.href?e.href:"javascript:void(0);",target:e.target},on:{click:function(t){e.click&&e.click(e)}}},[n("div",{staticClass:"item-icon",style:{color:t.color}},[n("i",{class:e.icon})]),t._v(" "),n("div",{staticClass:"item-info"},[n("span",[t._v(t._s(e.title))]),t._v(" "),n("avue-count-up",{staticClass:"count",style:{color:t.color},attrs:{animation:e.animation||t.animation,decimals:e.decimals||t.decimals,end:e.count}})],1)])])])]}))],2)],1)}),[],!1,null,null,null).exports,Nn=Object(i.a)({name:"data-card",data:function(){return{}},props:{option:{type:Object,default:function(){}}},computed:{span:function(){return this.option.span||6},data:function(){return this.option.data||[]},colorText:function(){return this.option.colorText||"#fff"},bgText:function(){return this.option.bgText||"#2e323f"},borderColor:function(){return this.option.borderColor||"#2e323f"}},created:function(){},mounted:function(){},watch:{},methods:{}}),zn=Object(s.a)(Nn,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"data-card"},[n("el-row",{attrs:{span:24}},t._l(t.data,(function(e,i){return n("el-col",{key:i,attrs:{md:t.span,xs:24,sm:12}},[n("div",{staticClass:"item"},[n("a",{attrs:{href:e.href?e.href:"javascript:void(0);",target:e.target},on:{click:function(t){e.click&&e.click(e)}}},[n("img",{staticClass:"item-img",attrs:{src:e.src}}),t._v(" "),n("div",{staticClass:"item-text",style:{backgroundColor:t.bgText}},[n("h3",{style:{color:t.colorText}},[t._v(t._s(e.name))]),t._v(" "),n("p",{style:{color:t.colorText}},[t._v(t._s(e.text))])])])])])})),1)],1)}),[],!1,null,null,null).exports,Fn=Object(i.a)({name:"data-display",data:function(){return{}},computed:{animation:function(){return this.option.animation},decimals:function(){return this.option.decimals||0},span:function(){return this.option.span||6},data:function(){return this.option.data||[]},color:function(){return this.option.color||"rgb(63, 161, 255)"}},props:{option:{type:Object,default:function(){}}},created:function(){},methods:{}}),Hn=Object(s.a)(Fn,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"avue-data-display"},[n("el-row",{attrs:{span:24}},t._l(t.data,(function(e,i){return n("el-col",{key:i,attrs:{md:t.span,xs:12,sm:12}},[n("div",{staticClass:"item",style:{color:t.color}},[n("a",{attrs:{href:e.href?e.href:"javascript:void(0);",target:e.target},on:{click:function(t){e.click&&e.click(e)}}},[n("avue-count-up",{staticClass:"count",attrs:{animation:e.animation||t.animation,decimals:e.decimals||t.decimals,end:e.count}}),t._v(" "),n("span",{staticClass:"splitLine"}),t._v(" "),n("div",{staticClass:"title"},[t._v(t._s(e.title))])],1)])])})),1)],1)}),[],!1,null,null,null).exports,Kn=Object(i.a)({name:"data-imgtext",data:function(){return{}},computed:{span:function(){return this.option.span||6},data:function(){return this.option.data||[]},color:function(){return this.option.color||"rgb(63, 161, 255)"}},props:{option:{type:Object,default:function(){}}},created:function(){},methods:{}}),Rn=Object(s.a)(Kn,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"avue-data-imgtext"},[n("el-row",{attrs:{span:24}},t._l(t.data,(function(e,i){return n("el-col",{key:i,attrs:{md:t.span,xs:24,sm:12}},[n("div",{staticClass:"item",style:{color:t.color}},[n("a",{attrs:{href:e.href?e.href:"javascript:void(0);",target:e.target},on:{click:function(t){e.click&&e.click(e)}}},[n("div",{staticClass:"item-header"},[n("img",{attrs:{src:e.imgsrc,alt:""}})]),t._v(" "),n("div",{staticClass:"item-content"},[n("span",[t._v(t._s(e.title))]),t._v(" "),n("p",[t._v(t._s(e.content))])]),t._v(" "),n("div",{staticClass:"item-footer"},[n("div",{staticClass:"time"},[n("span",[t._v(t._s(e.time))])]),t._v(" "),n("div",{staticClass:"imgs"},[n("ul",t._l(e.headimg,(function(t,e){return n("li",{key:e},[n("el-tooltip",{attrs:{effect:"dark",content:t.name,placement:"top-start"}},[n("img",{attrs:{src:t.src,alt:""}})])],1)})),0)])])])])])})),1)],1)}),[],!1,null,null,null).exports,Wn=Object(i.a)({name:"data-operatext",data:function(){return{}},computed:{span:function(){return this.option.span||6},data:function(){return this.option.data||[]}},props:{option:{type:Object,default:function(){}}},created:function(){},methods:{}}),Un=Object(s.a)(Wn,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"avue-data-operatext"},[n("el-row",{attrs:{span:24}},t._l(t.data,(function(e,i){return n("el-col",{key:i,attrs:{md:t.span,xs:24,sm:12}},[n("div",{staticClass:"item"},[n("a",{attrs:{href:e.href?e.href:"javascript:void(0);"},on:{click:function(t){e.click&&e.click(e)}}},[n("div",{staticClass:"item-header",style:{backgroundColor:e.color,backgroundImage:"url("+e.colorImg+")"}},[n("span",{staticClass:"item-title"},[t._v(t._s(e.title))]),t._v(" "),n("span",{staticClass:"item-subtitle"},[t._v(t._s(e.subtitle))])]),t._v(" "),n("div",{staticClass:"item-content"},[n("div",{staticClass:"item-img"},[n("img",{attrs:{src:e.img,alt:""}})]),t._v(" "),n("div",{staticClass:"item-list"},t._l(e.list,(function(e,i){return n("div",{key:i,staticClass:"item-row"},[n("span",{staticClass:"item-label"},[t._v(t._s(e.label))]),t._v(" "),n("span",{staticClass:"item-value"},[t._v(t._s(e.value))])])})),0)])])])])})),1)],1)}),[],!1,null,null,null).exports,Vn=Object(i.a)({name:"data-rotate",data:function(){return{}},props:{option:{type:Object,default:function(){}}},computed:{animation:function(){return this.option.animation},decimals:function(){return this.option.decimals||0},span:function(){return this.option.span||8},data:function(){return this.option.data||[]}},created:function(){},mounted:function(){},watch:{},methods:{}}),Yn=Object(s.a)(Vn,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"avue-data-rotate"},[n("el-row",{attrs:{span:24}},t._l(t.data,(function(e,i){return n("el-col",{key:i,attrs:{md:t.span,xs:24,sm:12}},[n("div",{staticClass:"item",style:{backgroundColor:e.color}},[n("div",{staticClass:"item-box"},[n("avue-count-up",{staticClass:"item-count",attrs:{decimals:e.decimals||t.decimals,animation:e.animation||t.animation,end:e.count}}),t._v(" "),n("span",{staticClass:"item-title"},[t._v(t._s(e.title))]),t._v(" "),n("i",{staticClass:"item-icon",class:e.icon})],1),t._v(" "),n("a",{attrs:{href:e.href?e.href:"javascript:void(0);"},on:{click:function(t){e.click&&e.click(e)}}},[n("p",{staticClass:"item-more"},[t._v("更多"),n("i",{staticClass:"el-icon-arrow-right"})])])])])})),1)],1)}),[],!1,null,null,null).exports,Xn=Object(i.a)({name:"data-pay",props:{option:{type:Object,default:function(){}}},computed:{animation:function(){return this.option.animation},decimals:function(){return this.option.decimals||0},span:function(){return this.option.span||6},data:function(){return this.option.data||[]}}}),qn=Object(s.a)(Xn,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{class:t.b()},[n("el-row",{attrs:{span:24}},t._l(t.data,(function(e,i){return n("el-col",{key:i,attrs:{md:t.span,xs:24,sm:12}},[n("div",{staticClass:"item"},[n("div",{staticClass:"top",style:{backgroundColor:e.color}}),t._v(" "),n("div",{staticClass:"header"},[n("p",{staticClass:"title"},[t._v(t._s(e.title))]),t._v(" "),n("img",{staticClass:"img",attrs:{src:e.src,alt:""}}),t._v(" "),e.subtitle?[n("p",{staticClass:"subtitle",style:{color:e.color}},[t._v(t._s(e.subtitle))])]:t._e(),t._v(" "),e.money||e.dismoney?[n("p",{staticClass:"money",style:{color:e.color}},[n("span",[t._v("Â¥")]),t._v(" "),n("avue-count-up",{staticClass:"b",attrs:{decimals:e.decimals||t.decimals,animation:e.animation||t.animation,end:e.dismoney}}),t._v(" "),n("s",[t._v(t._s(e.money))]),t._v(" "),n("em",[t._v(t._s(e.tip))])],1)]:t._e(),t._v(" "),n("div",{staticClass:"line"}),t._v(" "),n("a",{staticClass:"btn",style:{backgroundColor:e.color},attrs:{href:e.href?e.href:"javascript:void(0);"},on:{click:function(t){e.click&&e.click(e)}}},[t._v(t._s(e.subtext))])],2),t._v(" "),n("div",{staticClass:"list"},t._l(e.list,(function(i,o){return n("div",{staticClass:"list-item"},[i.check?n("i",{staticClass:"list-item-icon list-item--check",style:{color:e.color}},[t._v("√")]):n("i",{staticClass:"list-item-icon list-item--no"},[t._v("x")]),t._v(" "),n("a",{attrs:{href:i.href?i.href:"javascript:void(0);"}},[n("el-tooltip",{attrs:{effect:"dark",disabled:!i.tip,placement:"top"}},[n("div",{attrs:{slot:"content"},domProps:{innerHTML:t._s(i.tip)},slot:"content"}),t._v(" "),n("span",{class:{"list-item--link":i.href}},[t._v(t._s(i.title))])])],1)])})),0)])])})),1)],1)}),[],!1,null,null,null).exports,Gn=Object(i.a)({name:"data-price",data:function(){return{}},computed:{span:function(){return this.option.span||6},data:function(){return this.option.data}},props:{option:{type:Object,default:function(){}}}}),Jn=Object(s.a)(Gn,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"data-price"},[n("el-row",{attrs:{span:24}},[t._l(t.data,(function(e,i){return[n("el-col",{key:i,attrs:{xs:12,sm:6,md:t.span}},[n("div",{staticClass:"item item--active"},[n("a",{attrs:{href:e.href?e.href:"javascript:void(0);",target:e.target},on:{click:function(t){e.click&&e.click(e)}}},[n("div",{staticClass:"title"},[t._v("\n              "+t._s(e.title)+"\n            ")]),t._v(" "),n("div",{staticClass:"body"},[n("span",{staticClass:"price"},[t._v(t._s(e.price))]),t._v(" "),n("span",{staticClass:"append"},[t._v(t._s(e.append))])]),t._v(" "),n("div",{staticClass:"list"},t._l(e.list,(function(e,i){return n("p",{key:i},[t._v("\n                "+t._s(e)+"\n              ")])})),0)])])])]}))],2)],1)}),[],!1,null,null,null).exports,Qn=Object(i.a)({name:"data-panel",data:function(){return{}},computed:{decimals:function(){return this.option.decimals||0},animation:function(){return this.option.animation},span:function(){return this.option.span||6},data:function(){return this.option.data||[]}},props:{option:{type:Object,default:function(){}}},created:function(){},methods:{}}),Zn=[$n,An,Pn,Mn,In,zn,Hn,Rn,Un,Yn,qn,Jn,Object(s.a)(Qn,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"avue-data-panel"},[n("el-row",{attrs:{span:24}},t._l(t.data,(function(e,i){return n("el-col",{key:i,attrs:{md:t.span,xs:24,sm:12}},[n("a",{attrs:{href:e.href?e.href:"javascript:void(0);"},on:{click:function(t){e.click&&e.click(e)}}},[n("div",{staticClass:"item"},[n("div",{staticClass:"item-icon"},[n("i",{class:e.icon,style:{color:e.color}})]),t._v(" "),n("div",{staticClass:"item-info"},[n("div",{staticClass:"item-title"},[t._v(t._s(e.title))]),t._v(" "),n("avue-count-up",{staticClass:"item-count",attrs:{animation:e.animation||t.animation,decimals:e.decimals||t.decimals,end:e.count}})],1)])])])})),1)],1)}),[],!1,null,null,null).exports];function ti(t){return function(t){if(Array.isArray(t))return ei(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(!t)return;if("string"==typeof t)return ei(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ei(t,e)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ei(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n<e;n++)i[n]=t[n];return i}var ni=[].concat(ti(En),ti(Zn)),ii=n(20),oi=n.n(ii),ai={bind:function(t,e,n,i){if(0!=e.value){var o=t.querySelector(".el-dialog__header"),a=t.querySelector(".el-dialog");o.style.cursor="move";var r=a.currentStyle||window.getComputedStyle(a,null),s=a.style.width;s=s.includes("%")?+document.body.clientWidth*(+s.replace(/\%/g,"")/100):+s.replace(/\px/g,""),o.onmousedown=function(t){var e,n,i=t.clientX-o.offsetLeft,s=t.clientY-o.offsetTop;r.left.includes("%")?(e=+document.body.clientWidth*(+r.left.replace(/\%/g,"")/100),n=+document.body.clientHeight*(+r.top.replace(/\%/g,"")/100)):(e=+r.left.replace(/\px/g,""),n=+r.top.replace(/\px/g,"")),document.onmousemove=function(t){var o=t.clientX-i,r=t.clientY-s,l=o+e,c=r+n;a.style.left="".concat(l,"px"),a.style.top="".concat(c,"px")},document.onmouseup=function(t){document.onmousemove=null,document.onmouseup=null}}}}},ri=function(){var t;function e(e,n,i,o){var a=n,r=i;o&&(e.oncontextmenu=function(e){var n=e.clientX,i=e.clientY,o=document.documentElement.clientWidth,s=document.documentElement.clientHeight,l=t.offsetWidth,c=t.offsetHeight;s-i-c<0&&(i-=c),o-n-l<0&&(n-=l);var u=function e(){t.style.display="none",document.removeEventListener("click",e)},d=function(){t.style.display="block",t.style.position="fixed",t.style.zIndex=1024,t.style.top=i+"px",t.style.left=n+"px",document.addEventListener("click",u)};return r?r(a,d):d(),!1})}return{inserted:function(n,i){var o=i.value.id,a=i.value.event,r=i.value.value;(t=document.getElementById(o))&&(t.style.display="none",e(n,r,a,!0))},update:function(t,n){var i=n.value.event;e(t,n.value.value,i,!1)}}}();function si(t){return function(t){if(Array.isArray(t))return li(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(!t)return;if("string"==typeof t)return li(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return li(t,e)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function li(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n<e;n++)i[n]=t[n];return i}var ci={buildHeader:function(t){var e=this,n=[];this.getHeader(t,n,0,0);var i=Math.max.apply(Math,si(n.map((function(t){return t.length}))));return n.filter((function(t){return t.length<i})).forEach((function(t){return e.pushRowSpanPlaceHolder(t,i-t.length)})),n},getHeader:function(t,e,n,i){var o=0,a=e[n];a||(a=e[n]=[]),this.pushRowSpanPlaceHolder(a,i-a.length);for(var r=0;r<t.length;r++){var s=t[r];if(a.push(s.label),s.hasOwnProperty("children")&&Array.isArray(s.children)&&s.children.length>0){var l=this.getHeader(s.children,e,n+1,a.length-1);this.pushColSpanPlaceHolder(a,l-1),o+=l}else o++}return o},pushRowSpanPlaceHolder:function(t,e){for(var n=0;n<e;n++)t.push("!$ROW_SPAN_PLACEHOLDER")},pushColSpanPlaceHolder:function(t,e){for(var n=0;n<e;n++)t.push("!$COL_SPAN_PLACEHOLDER")},doMerges:function(t){for(var e=t.length,n=[],i=0;i<e;i++)for(var o=t[i],a=0,r=0;r<o.length;r++)"!$COL_SPAN_PLACEHOLDER"===o[r]?(o[r]=void 0,r+1===o.length&&n.push({s:{r:i,c:r-a-1},e:{r:i,c:r}}),a++):a>0&&r>a?(n.push({s:{r:i,c:r-a-1},e:{r:i,c:r-1}}),a=0):a=0;for(var s=t[0].length,l=0;l<s;l++)for(var c=0,u=0;u<e;u++)"!$ROW_SPAN_PLACEHOLDER"===t[u][l]?(t[u][l]=void 0,u+1===e&&n.push({s:{r:u-c,c:l},e:{r:u,c:l}}),c++):c>0&&u>c?(n.push({s:{r:u-c-1,c:l},e:{r:u-1,c:l}}),c=0):c=0;return n},aoa_to_sheet:function(t,e){for(var n={},i={s:{c:1e7,r:1e7},e:{c:0,r:0}},o=0;o!==t.length;++o)for(var a=0;a!==t[o].length;++a){i.s.r>o&&(i.s.r=o),i.s.c>a&&(i.s.c=a),i.e.r<o&&(i.e.r=o),i.e.c<a&&(i.e.c=a);var r={v:Object(D.x)(t[o][a],""),s:{font:{name:"宋体",sz:11,color:{auto:1,rgb:"000000"},bold:!0},alignment:{wrapText:1,horizontal:"center",vertical:"center",indent:0}}};o<e&&(r.s.border={top:{style:"thin",color:{rgb:"EBEEF5"}},left:{style:"thin",color:{rgb:"EBEEF5"}},bottom:{style:"thin",color:{rgb:"EBEEF5"}},right:{style:"thin",color:{rgb:"EBEEF5"}}},r.s.fill={patternType:"solid",fgColor:{theme:3,tint:.3999755851924192,rgb:"F5F7FA"},bgColor:{theme:7,tint:.3999755851924192,rgb:"F5F7FA"}});var s=XLSX.utils.encode_cell({c:a,r:o});"number"==typeof r.v?r.t="n":"boolean"==typeof r.v?r.t="b":r.t="s",n[s]=r}return i.s.c<1e7&&(n["!ref"]=XLSX.utils.encode_range(i)),n},s2ab:function(t){for(var e=new ArrayBuffer(t.length),n=new Uint8Array(e),i=0;i!==t.length;++i)n[i]=255&t.charCodeAt(i);return e},excel:function(t){var e=this;if(window.XLSX)return new Promise((function(n,i){var o,a={prop:[]};a.header=e.buildHeader(t.columns),a.title=t.title||xt()().format("YYYY-MM-DD HH:mm:ss");!function t(e){e.forEach((function(e){e.children&&e.children instanceof Array?t(e.children):a.prop.push(e.prop)}))}(t.columns),a.data=t.data.map((function(t){return a.prop.map((function(e){var n=t[e];return Object(D.q)(n)&&(n=JSON.stringify(n)),n}))}));var r=a.header.length;(o=a.header).push.apply(o,si(a.data).concat([[]]));var s=e.doMerges(a.header),l=e.aoa_to_sheet(a.header,r);l["!merges"]=s,l["!freeze"]={xSplit:"1",ySplit:""+r,topLeftCell:"B"+(r+1),activePane:"bottomRight",state:"frozen"},l["!cols"]=[{wpx:165}];var c={SheetNames:["Sheet1"],Sheets:{}};c.Sheets.Sheet1=l;var u=XLSX.write(c,{bookType:"xlsx",bookSST:!1,type:"binary",cellStyles:!0}),d=new Blob([e.s2ab(u)],{type:"application/octet-stream"});Object(D.h)(d,a.title+".xlsx"),n()}));x.a.logs("xlsx")},xlsx:function(t){if(!window.saveAs||!window.XLSX)return x.a.logs("file-saver"),void x.a.logs("xlsx");var e=window.XLSX;return new Promise((function(n,i){var o=new FileReader;o.onload=function(t){var i=function(t){for(var e="",n=0,i=10240;n<t.byteLength/i;++n)e+=String.fromCharCode.apply(null,new Uint8Array(t.slice(n*i,n*i+i)));return e+=String.fromCharCode.apply(null,new Uint8Array(t.slice(n*i)))}(t.target.result),o=e.read(btoa(i),{type:"base64"}),a=o.SheetNames[0],r=o.Sheets[a],s=function(t){var n,i=[],o=e.utils.decode_range(t["!ref"]),a=o.s.r;for(n=o.s.c;n<=o.e.c;++n){var r=t[e.utils.encode_cell({c:n,r:a})],s="UNKNOWN "+n;r&&r.t&&(s=e.utils.format_cell(r)),i.push(s)}return i}(r),l=e.utils.sheet_to_json(r);n({header:s,results:l})},o.readAsArrayBuffer(t)}))}},ui=n(15),di=n(12);function pi(t){return(pi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var hi=function t(e,n){if(!(this instanceof t))return new t(e,n);this.options=this.extend({noPrint:".no-print"},n),"string"==typeof e?this.dom=document.querySelector(e):(this.isDOM(e),this.dom=this.isDOM(e)?e:e.$el),this.init()};hi.prototype={init:function(){var t=this.getStyle()+this.getHtml();this.writeIframe(t)},extend:function(t,e){for(var n in e)t[n]=e[n];return t},getStyle:function(){for(var t="",e=document.querySelectorAll("style,link"),n=0;n<e.length;n++)t+=e[n].outerHTML;return t+="<style>"+(this.options.noPrint?this.options.noPrint:".no-print")+"{display:none;}</style>"},getHtml:function(){for(var t=document.querySelectorAll("input"),e=document.querySelectorAll("textarea"),n=document.querySelectorAll("select"),i=0;i<t.length;i++)"checkbox"==t[i].type||"radio"==t[i].type?1==t[i].checked?t[i].setAttribute("checked","checked"):t[i].removeAttribute("checked"):(t[i].type,t[i].setAttribute("value",t[i].value));for(var o=0;o<e.length;o++)"textarea"==e[o].type&&(e[o].innerHTML=e[o].value);for(var a=0;a<n.length;a++)if("select-one"==n[a].type){var r=n[a].children;for(var s in r)"OPTION"==r[s].tagName&&(1==r[s].selected?r[s].setAttribute("selected","selected"):r[s].removeAttribute("selected"))}return this.wrapperRefDom(this.dom).outerHTML},wrapperRefDom:function(t){var e=null,n=t;if(!this.isInBody(n))return n;for(;n;){if(e){var i=n.cloneNode(!1);i.appendChild(e),e=i}else e=n.cloneNode(!0);n=n.parentElement}return e},writeIframe:function(t){var e,n,i=document.createElement("iframe"),o=document.body.appendChild(i);i.id="myIframe",i.setAttribute("style","position:absolute;width:0;height:0;top:-10px;left:-10px;"),e=o.contentWindow||o.contentDocument,(n=o.contentDocument||o.contentWindow.document).open(),n.write(t),n.close();var a=this;i.onload=function(){a.toPrint(e),setTimeout((function(){document.body.removeChild(i)}),100)}},toPrint:function(t){try{setTimeout((function(){t.focus();try{t.document.execCommand("print",!1,null)||t.print()}catch(e){t.print()}t.close()}),10)}catch(t){console.log("err",t)}},isInBody:function(t){return t!==document.body&&document.body.contains(t)},isDOM:"object"===("undefined"==typeof HTMLElement?"undefined":pi(HTMLElement))?function(t){return t instanceof HTMLElement}:function(t){return t&&"object"===pi(t)&&1===t.nodeType&&"string"==typeof t.nodeName}};var fi=hi,mi=n(21),vi=n.n(mi).a,bi=Object(i.a)({name:"image-preview",data:function(){return{left:0,top:0,scale:1,datas:[],rotate:0,isShow:!1,index:0,isFile:!1}},computed:{styleBoxName:function(){return{marginLeft:this.setPx(this.left),marginTop:this.setPx(this.top)}},styleName:function(){return{transform:"scale(".concat(this.scale,") rotate(").concat(this.rotate,"deg)"),maxWidth:"100%",maxHeight:"100%"}},isRrrow:function(){return 1!=this.imgLen},imgLen:function(){return this.imgList.length},imgList:function(){return this.datas.map((function(t){return t.url}))}},methods:{handlePrint:function(){this.$Print("#avue-image-preview__".concat(this.index))},handlePrev:function(){this.$refs.carousel.prev(),this.index=this.$refs.carousel.activeIndex,this.stopItem()},handleNext:function(){this.$refs.carousel.next(),this.index=this.$refs.carousel.activeIndex,this.stopItem()},stopItem:function(){this.left=0,this.top=0,this.$refs.item.forEach((function(t){t.pause&&t.pause()}))},isMedia:function(t){return B.m.img.test(t.url)||B.m.video.test(t.url)},getIsVideo:function(t){var e=t.url,n=t.type;return B.m.video.test(e)||"video"==n?"video":B.m.img.test(e)||"image"==n?"img":void 0},subScale:function(){.2!=this.scale&&(this.scale=parseFloat((this.scale-.2).toFixed(2)))},addScale:function(){this.scale=parseFloat((this.scale+.2).toFixed(2))},handleChange:function(){this.scale=1,this.rotate=0},move:function(t){var e=this,n=t.clientX,i=t.clientY;document.onmousemove=function(t){var o=t.clientX-n,a=t.clientY-i;n=t.clientX,i=t.clientY,e.left=e.left+2*o,e.top=e.top+2*a},document.onmouseup=function(t){document.onmousemove=null,document.onmouseup=null}},handleClick:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];"function"==typeof this.ops.click?this.ops.click(t,e):n&&window.open(t.url)},close:function(){this.isShow=!1,"function"==typeof this.ops.beforeClose&&this.ops.beforeClose(this.datas,this.index),this.$destroy(),this.$el.remove()}}}),gi=Object(s.a)(bi,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.isShow?n("div",{class:t.b()},[t.ops.modal?n("div",{class:t.b("mask"),on:{click:t.close}}):t._e(),t._v(" "),n("span",{staticClass:"el-image-viewer__btn el-image-viewer__close",on:{click:t.close}},[n("i",{staticClass:"el-icon-circle-close"})]),t._v(" "),t.isRrrow?n("span",{staticClass:"el-image-viewer__btn el-image-viewer__prev",on:{click:function(e){return t.handlePrev()}}},[n("i",{staticClass:"el-icon-arrow-left"})]):t._e(),t._v(" "),t.isRrrow?n("span",{staticClass:"el-image-viewer__btn el-image-viewer__next",on:{click:function(e){return t.handleNext()}}},[n("i",{staticClass:"el-icon-arrow-right"})]):t._e(),t._v(" "),n("div",{ref:"box",class:t.b("box")},[n("el-carousel",{ref:"carousel",attrs:{"show-indicators":!1,"initial-index":t.index,"initial-swipe":t.index,interval:0,arrow:"never","indicator-position":"none",height:t.height},on:{change:t.handleChange}},t._l(t.datas,(function(e,i){return n("el-carousel-item",{key:i,nativeOn:{click:function(e){if(e.target!==e.currentTarget)return null;t.ops.closeOnClickModal&&t.close()}}},[t.getIsVideo(e)?n(t.getIsVideo(e),{directives:[{name:"else",rawName:"v-else"}],ref:"item",refInFor:!0,tag:"component",style:[t.styleName,t.styleBoxName],attrs:{id:"avue-image-preview__"+i,src:e.url,controls:"controls",ondragstart:"return false"},on:{click:function(n){return t.handleClick(e,i)},mousedown:t.move}}):n("div",{class:t.b("file"),attrs:{id:"avue-image-preview__"+i},on:{click:function(n){return t.handleClick(e,i,!0)}}},[n("span",[n("i",{staticClass:"el-icon-document"}),t._v(" "),n("p",[t._v(t._s(e.name))])])])],1)})),1)],1),t._v(" "),n("div",{staticClass:"el-image-viewer__btn el-image-viewer__actions"},[n("div",{staticClass:"el-image-viewer__actions__inner"},[n("i",{staticClass:"el-icon-zoom-out",on:{click:t.subScale}}),t._v(" "),n("i",{staticClass:"el-icon-zoom-in",on:{click:t.addScale}}),t._v(" "),n("i",{staticClass:"el-image-viewer__actions__divider"}),t._v(" "),n("i",{staticClass:"el-icon-printer",on:{click:t.handlePrint}}),t._v(" "),n("i",{staticClass:"el-image-viewer__actions__divider"}),t._v(" "),n("i",{staticClass:"el-icon-refresh-left",on:{click:function(e){t.rotate=t.rotate-90}}}),t._v(" "),n("i",{staticClass:"el-icon-refresh-right",on:{click:function(e){t.rotate=t.rotate+90}}})])])]):t._e()}),[],!1,null,null,null).exports,yi=n(8),_i=n.n(yi),xi={name:"CropperImage",components:{VueCropper:n(22).VueCropper},data:function(){return{visible:!1,previews:{},option:{}}},methods:{show:function(){this.visible=!0},changeScale:function(t){t=t||1,this.$refs.cropper.changeScale(t)},rotateLeft:function(){this.$refs.cropper.rotateLeft()},rotateRight:function(){this.$refs.cropper.rotateRight()},realTime:function(t){this.previews=t},submit:function(){var t=this;this.visible=!1,this.$refs.cropper.getCropData((function(e){var n=e;"file"===t.option.type&&(n=Object(D.d)(e,"".concat((new Date).getTime(),".").concat(t.option.outputType))),t.option.callback&&t.option.callback(n)}))},cancel:function(t){t&&t(),this.visible=!1,this.option.cancel&&this.option.cancel(),"function"==typeof this.option.beforeClose&&this.option.beforeClose(),this.$destroy(),this.$el.remove()}}},wi=Object(s.a)(xi,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-dialog",{staticClass:"avue-dialog avue-cropper",attrs:{visible:t.visible,"before-close":t.cancel,"close-on-press-escape":!1,"close-on-click-modal":!1,"append-to-body":"",width:"1000px"},on:{"update:visible":function(e){t.visible=e}}},[n("div",{staticClass:"cropper-content"},[n("div",{staticClass:"cropper-box"},[n("div",{staticClass:"cropper"},[n("vue-cropper",{ref:"cropper",attrs:{img:t.option.img,outputSize:t.option.outputSize,outputType:t.option.outputType,info:t.option.info,canScale:t.option.canScale,autoCrop:t.option.autoCrop,autoCropWidth:t.option.autoCropWidth,autoCropHeight:t.option.autoCropHeight,fixed:t.option.fixed,fixedNumber:t.option.fixedNumber,full:t.option.full,fixedBox:t.option.fixedBox,canMove:t.option.canMove,canMoveBox:t.option.canMoveBox,original:t.option.original,centerBox:t.option.centerBox,height:t.option.height,infoTrue:t.option.infoTrue,maxImgSize:t.option.maxImgSize,enlarge:t.option.enlarge,mode:t.option.mode},on:{realTime:t.realTime}})],1),t._v(" "),n("div",{staticClass:"footer-btn"},[n("el-button",{attrs:{size:"mini",type:"danger",icon:"el-icon-zoom-in"},on:{click:function(e){return t.changeScale(1)}}}),t._v(" "),n("el-button",{attrs:{size:"mini",type:"danger",icon:"el-icon-zoom-out"},on:{click:function(e){return t.changeScale(-1)}}}),t._v(" "),n("el-button",{attrs:{size:"mini",icon:"el-icon-back",type:"danger"},on:{click:t.rotateLeft}}),t._v(" "),n("el-button",{attrs:{size:"mini",type:"danger",icon:"el-icon-right"},on:{click:t.rotateRight}})],1)]),t._v(" "),n("div",{staticClass:"show-preview"},[n("div",{staticClass:"preview",style:t.previews.div},[n("img",{style:t.previews.img,attrs:{src:t.previews.url}})])])]),t._v(" "),n("span",{staticClass:"avue-dialog__footer"},[n("el-button",{attrs:{size:"small",type:"primary"},on:{click:t.submit}},[t._v("ç¡® å®š")]),t._v(" "),n("el-button",{attrs:{size:"small"},on:{click:function(e){return t.cancel()}}},[t._v("取 æ¶ˆ")])],1)])}),[],!1,null,null,null).exports,Oi={data:function(){return{opt:{},callback:null,visible:!1,dialog:{closeOnClickModal:!1},option:{submitText:"提交",emptyText:"关闭",submitIcon:"el-icon-check",emptyIcon:"el-icon-close",column:[]},data:{}}},computed:{menuPosition:function(){return this.opt.menuPosition||"center"}},methods:{submit:function(){this.$refs.form.submit()},reset:function(){this.$refs.form.resetForm()},beforeClose:function(t){t(),this.close()},show:function(t){this.opt=t,this.callback=t.callback;var e=this.deepClone(t);["callback","option","data"].forEach((function(t){return delete e[t]})),this.dialog=Object.assign(this.dialog,e),this.option=Object.assign(this.option,t.option),this.data=t.data,this.visible=!0},close:function(){var t=this,e=function(){t.visible=!1,t.$destroy(),t.$el.remove()};"function"==typeof this.dialog.beforeClose?this.dialog.beforeClose(e):e()},handleSubmit:function(t,e){this.callback&&this.callback({data:t,close:this.close,done:e})}}},Ci=Object(s.a)(Oi,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("el-dialog",t._b({staticClass:"avue-dialog",attrs:{visible:t.visible,"destroy-on-close":"",beforeClose:t.beforeClose},on:{"update:visible":function(e){t.visible=e}}},"el-dialog",t.dialog,!1),[n("avue-form",{ref:"form",attrs:{option:Object.assign({},t.deepClone(t.option),{menuBtn:!1})},on:{submit:t.handleSubmit,"reset-change":t.close},model:{value:t.data,callback:function(e){t.data=e},expression:"data"}}),t._v(" "),this.vaildData(t.option.menuBtn,!0)?n("span",{staticClass:"avue-dialog__footer",class:"avue-dialog__footer--"+t.menuPosition},[this.vaildData(t.option.submitBtn,!0)?n("el-button",{attrs:{size:t.$AVUE.size,icon:t.option.submitIcon,type:"primary"},on:{click:t.submit}},[t._v(t._s(t.option.submitText))]):t._e(),t._v(" "),this.vaildData(t.option.emptyBtn,!0)?n("el-button",{attrs:{size:t.$AVUE.size,icon:t.option.emptyIcon},on:{click:t.reset}},[t._v(t._s(t.option.emptyText))]):t._e()],1):t._e()],1)}),[],!1,null,null,null).exports,ki=function(){this.$root={}};ki.prototype.initMounted=function(){var t;this.$root=((t=new(_i.a.extend(Ci))).vm=t.$mount(),document.body.appendChild(t.vm.$el),t.dom=t.vm.$el,t.vm)},ki.prototype.show=function(t){this.initMounted(),this.$root.show(t)};var Si={$ImagePreview:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=_i.a.extend(gi),o={datas:t,index:e,ops:Object.assign({closeOnClickModal:!1,beforeClose:null,click:null,modal:!0},n)},a=new i({data:o});return a.vm=a.$mount(),document.body.appendChild(a.vm.$el),a.vm.isShow=!0,a.dom=a.vm.$el,a.vm},$ImageCropper:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=_i.a.extend(wi),n=Object.assign({outputSize:1,outputType:"jpeg",info:!0,canScale:!0,autoCrop:!0,fixed:!1,full:!1,fixedBox:!1,canMove:!0,canMoveBox:!0,original:!1,centerBox:!1,height:!0,infoTrue:!1,enlarge:1},t),i=new e({data:{option:n}});return i.vm=i.$mount(),document.body.appendChild(i.vm.$el),i.vm.show(),i.dom=i.vm.$el,i.vm},$DialogForm:new ki,$Export:ci,$Print:fi,$Clipboard:function(t){var e=t.text;return new Promise((function(t,n){var i=document.body,o="rtl"==document.documentElement.getAttribute("dir"),a=document.createElement("textarea");a.style.fontSize="12pt",a.style.border="0",a.style.padding="0",a.style.margin="0",a.style.position="absolute",a.style[o?"right":"left"]="-9999px";var r=window.pageYOffset||document.documentElement.scrollTop;a.style.top="".concat(r,"px"),a.setAttribute("readonly",""),a.value=e,i.appendChild(a),function(t){var e;if("SELECT"===t.nodeName)t.focus(),e=t.value;else if("INPUT"===t.nodeName||"TEXTAREA"===t.nodeName){var n=t.hasAttribute("readonly");n||t.setAttribute("readonly",""),t.select(),t.setSelectionRange(0,t.value.length),n||t.removeAttribute("readonly"),e=t.value}else{t.hasAttribute("contenteditable")&&t.focus();var i=window.getSelection(),o=document.createRange();o.selectNodeContents(t),i.removeAllRanges(),i.addRange(o),e=i.toString()}}(a);try{document.execCommand("copy"),t()}catch(t){!1,n()}}))},$Log:ui.a,$NProgress:vi,$Screenshot:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(window.html2canvas)return window.html2canvas(t,e);x.a.logs("Screenshot")},deepClone:D.e,dataURLtoFile:D.d,isJson:D.q,setPx:D.u,vaildData:D.x,sortArrys:D.v,findArray:D.j,validatenull:te.a,downFile:D.h,loadScript:D.r,watermark:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new Be(t)},findObject:D.l,randomId:D.s},Ei={dialogDrag:ai,contextmenu:ri},ji=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};"dark"===e.theme&&(document.documentElement.className="avue-theme--dark");var n={size:e.size||"small",calcHeight:e.calcHeight||0,menuType:e.menuType||"text",canvas:Object.assign({text:"avuejs.com",fontFamily:"microsoft yahei",color:"#999",fontSize:16,opacity:100,bottom:10,right:10,ratio:1},e.canvas),qiniu:Object.assign({AK:"",SK:"",scope:"",url:"",bucket:"https://upload.qiniup.com",deadline:1},e.qiniu||{}),ali:Object.assign({region:"",endpoint:"",stsToken:"",accessKeyId:"",accessKeySecret:"",bucket:""},e.ali||{})};t.prototype.$AVUE=Object.assign(e,n),ni.forEach((function(e){t.component(e.name,e)})),Object.keys(Si).forEach((function(e){t.prototype[e]=Si[e]})),Object.keys(Ei).forEach((function(e){t.directive(e,Ei[e])})),di.a.use(e.locale),di.a.i18n(e.i18n),t.prototype.$axios=e.axios||window.axios||oi.a,window.axios=t.prototype.$axios,t.prototype.$uploadFun=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1?arguments[1]:void 0;e=e||this;var n=["uploadPreview","uploadBefore","uploadAfter","uploadDelete","uploadError","uploadExceed"],i={};return"upload"===t.type?n.forEach((function(n){t[n]||(i[n]=e[n])})):n.forEach((function(t){i[t]=e[t]})),i}};"undefined"!=typeof window&&window.Vue&&ji(window.Vue);var $i=Object.assign({version:"2.9.12",locale:{en:{},zh:{}},install:ji},ni);e.default=$i}]).default}));
Source/UBCS-WEB/src/api/code/maxSerialNum.js
@@ -1,9 +1,18 @@
import request from '@/router/axios';
// ç æ®µ
export const getCodePrice = (data) => {
  return request({
    url: '/api/ubcs-code/ubcs-code/mdmRule/getCodeRuleAndBasicSecByRuleOid',
    url: '/api/ubcs-code/ubcs-code/codeBasicSecController/getCodeRuleAndBasicSecByRuleOid',
    method: 'get',
    params: data
  })
}
}
//保存最大流水号
export const saveMaxSerialNum = (data) => {
    return request({
      url: '/api/ubcs-code/ubcs-code/codeBasicSecController/setMaxSerialNumberForCodeRule',
      method: 'post',
      data: data
    })
  }
Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue
@@ -50,7 +50,7 @@
    // é»˜è®¤ç¦ç”¨å…ƒç´ 
    disabledProp: {
      type: Array,
      default: () => ["id","lcstatus"],
      default: () => ["id", "lcstatus"],
    },
    templateOid: {
      type: String,
@@ -80,6 +80,11 @@
      type: Object,
      default: () => ({}),
    },
    // ä¸€è¡Œæ”¾å‡ ä¸ªè¡¨å•
    trendsSpan: {
      type: Number,
      default: 8,
    },
  },
  data() {
    return {
@@ -103,395 +108,6 @@
        date: "date",
        refer: "refer",
      },
      // å‡æ•°æ®
      testItems: [
        {
          comboxKey: null,
          customClass: null,
          data: null,
          dateFormate: "",
          defaultValue: "",
          displayExtension: null,
          extendAttrMap: null,
          extendAttrString: null,
          field: "id",
          hidden: false,
          keyAttr: false,
          prefix: "",
          readOnly: false,
          referConfig: null,
          required: false,
          selectLibFlag: "",
          showField: null,
          suffix: "",
          text: "传值禁用功能",
          tooltips: "",
          type: "combox",
          unique: false,
          verify: "",
        },
        {
          customClass: null,
          data: null,
          dateFormate: "",
          defaultValue: "",
          displayExtension: null,
          extendAttrMap: null,
          extendAttrString: null,
          field: "state",
          hidden: false,
          keyAttr: false,
          prefix: "",
          readOnly: true,
          referConfig: null,
          required: false,
          selectLibFlag: "",
          showField: null,
          suffix: "",
          text: "接口禁用功能",
          tooltips: "",
          type: "combox",
          unique: false,
          verify: "",
        },
        {
          comboxKey: null,
          customClass: null,
          data: null,
          dateFormate: "",
          defaultValue: "",
          displayExtension: null,
          extendAttrMap: null,
          extendAttrString: null,
          field: "oldcode",
          hidden: false,
          keyAttr: false,
          prefix: "el-icon-search",
          readOnly: false,
          referConfig: null,
          required: false,
          selectLibFlag: "",
          showField: null,
          suffix: "文本后缀测试",
          text: "前后缀功能",
          tooltips: "",
          type: "text",
          unique: false,
          verify: "",
        },
        {
          comboxKey: null,
          customClass: null,
          data: null,
          dateFormate: "",
          defaultValue: "",
          displayExtension: null,
          extendAttrMap: null,
          extendAttrString: null,
          field: "materialname",
          hidden: false,
          keyAttr: false,
          prefix: "",
          readOnly: false,
          referConfig: null,
          required: true,
          selectLibFlag: "",
          showField: null,
          suffix: "",
          text: "正则校验功能",
          tooltips: "请输入数字",
          type: "text",
          unique: false,
          verify: /^[0-9]+$/g,
        },
        {
          comboxKey: null,
          customClass: null,
          data: [
            {
              attributes: {},
              key: "model_type",
              value: "模型",
            },
            {
              attributes: {},
              key: "part_type",
              value: "零件",
            },
          ],
          dateFormate: "",
          defaultValue: "",
          displayExtension: null,
          extendAttrMap: null,
          extendAttrString: null,
          field: "dataSelect",
          hidden: false,
          keyAttr: false,
          prefix: "",
          readOnly: false,
          referConfig: null,
          required: false,
          selectLibFlag: "",
          showField: null,
          suffix: "",
          text: "直接返回下拉",
          tooltips: "",
          type: "combox",
          unique: false,
          verify: "",
        },
        {
          comboxKey: "formTemplateTest",
          customClass: null,
          data: [],
          dateFormate: "",
          defaultValue: "",
          displayExtension: null,
          extendAttrMap: null,
          extendAttrString: null,
          field: "dictSelect",
          hidden: false,
          keyAttr: false,
          prefix: "",
          readOnly: false,
          referConfig: null,
          required: false,
          selectLibFlag: "",
          showField: null,
          suffix: "",
          text: "字典返回下拉",
          tooltips: "",
          type: "combox",
          unique: false,
          verify: "",
        },
        {
          comboxKey: null,
          customClass: null,
          data: null,
          dateFormate: "",
          defaultValue: "",
          displayExtension: null,
          extendAttrMap: null,
          extendAttrString: null,
          field: "firstfl",
          hidden: false,
          keyAttr: false,
          prefix: "",
          readOnly: false,
          referConfig: null,
          required: false,
          selectLibFlag: "",
          showField: null,
          suffix: "",
          text: "数字输入框",
          tooltips: "",
          type: "number",
          unique: false,
          verify: "",
        },
        {
          comboxKey: null,
          customClass: null,
          data: null,
          dateFormate: "yyyy-MM-dd HH:mm:ss",
          defaultValue: "",
          displayExtension: null,
          extendAttrMap: null,
          extendAttrString: null,
          field: "datetime",
          hidden: false,
          keyAttr: false,
          prefix: "",
          readOnly: false,
          referConfig: null,
          required: false,
          selectLibFlag: "",
          showField: null,
          suffix: "",
          text: "日期时间选择器",
          tooltips: "",
          type: "datetime",
          unique: false,
          verify: "",
        },
        {
          comboxKey: null,
          customClass: null,
          data: null,
          dateFormate: "",
          defaultValue: "",
          displayExtension: null,
          extendAttrMap: null,
          extendAttrString: null,
          field: "time",
          hidden: false,
          keyAttr: false,
          prefix: "",
          readOnly: false,
          referConfig: null,
          required: false,
          selectLibFlag: "",
          showField: null,
          suffix: "",
          text: "时间选择器",
          tooltips: "",
          type: "date",
          unique: false,
          verify: "",
        },
        {
          comboxKey: null,
          customClass: null,
          data: null,
          dateFormate: "",
          defaultValue: "false",
          displayExtension: null,
          extendAttrMap: null,
          extendAttrString: null,
          field: "xiaoshouwl",
          hidden: false,
          keyAttr: false,
          prefix: "",
          readOnly: false,
          referConfig: null,
          required: false,
          selectLibFlag: "",
          showField: null,
          suffix: "",
          text: "开关",
          tooltips: "",
          type: "truefalse",
          unique: false,
          verify: "",
        },
        {
          comboxKey: null,
          customClass: null,
          data: null,
          dateFormate: "",
          defaultValue: "我是默认值",
          displayExtension: null,
          extendAttrMap: null,
          extendAttrString: null,
          field: "tuhao",
          hidden: false,
          keyAttr: false,
          prefix: "",
          readOnly: false,
          referConfig: null,
          required: false,
          selectLibFlag: "",
          showField: null,
          suffix: "",
          text: "默认值功能",
          tooltips: "提示",
          type: "text",
          unique: false,
          verify: "",
        },
        {
          comboxKey: null,
          customClass: null,
          data: null,
          dateFormate: "",
          defaultValue: "",
          displayExtension: null,
          extendAttrMap: null,
          extendAttrString: null,
          field: "xinghaoguige",
          hidden: false,
          keyAttr: true,
          prefix: "",
          readOnly: false,
          referConfig: null,
          required: false,
          selectLibFlag: "",
          showField: null,
          suffix: "",
          text: "属性关键值",
          tooltips: "",
          type: "text",
          unique: false,
          verify: "",
        },
        {
          comboxKey: null,
          customClass: null,
          data: null,
          dateFormate: "",
          defaultValue: "",
          displayExtension: null,
          extendAttrMap: null,
          extendAttrString: null,
          field: "jiliangdw",
          hidden: false,
          keyAttr: false,
          prefix: "",
          readOnly: false,
          tip: "我是提示功能",
          required: false,
          selectLibFlag: "",
          showField: "jiliangdwname",
          suffix: "",
          text: "提示功能",
          tooltips: "",
          type: "text",
          unique: false,
          verify: "",
        },
        {
          comboxKey: null,
          customClass: null,
          data: null,
          dateFormate: "",
          defaultValue: "",
          displayExtension: null,
          extendAttrMap: null,
          extendAttrString: null,
          field: "textarea",
          hidden: false,
          keyAttr: false,
          prefix: "",
          readOnly: false,
          referConfig: null,
          required: false,
          selectLibFlag: "",
          showField: null,
          suffix: "",
          text: "文本域",
          tooltips: "",
          type: "textarea",
          unique: false,
          verify: "",
        },
        {
          comboxKey: null,
          customClass: null,
          data: null,
          dateFormate: "",
          defaultValue: "",
          displayExtension: null,
          extendAttrMap: null,
          extendAttrString: null,
          field: "cz",
          hidden: false,
          keyAttr: false,
          prefix: "",
          readOnly: true,
          referConfig: {},
          required: false,
          selectLibFlag: "",
          showField: "depId",
          suffix: "",
          text: "参照",
          tooltips: "",
          type: "refer",
          unique: false,
          verify: "",
        },
      ],
      trendsSpan: 8,
      defaultValue: {},
      // è¡¨å•属性
      attributes: [],
@@ -501,9 +117,20 @@
  mounted() {
    this.handleResize();
  },
  computed: {
    localTrendsSpan() {
      if (this.trendsSpan) {
        return this.trendsSpan;
      } else {
        let windowWidth = document.body.clientWidth;
        return 24 / Math.floor(windowWidth / 500);
      }
    },
  },
  methods: {
    // æ¸²æŸ“表单模板
    templateRender(formItemList) {
      console.log(formItemList, "formItemList");
      // æ— éœ€åˆ†ç»„数据
      let column = [];
      let group = [];
@@ -523,7 +150,8 @@
        if (
          formItem.type === "combox" &&
          formItem.comboxKey &&
          (!Array.isArray(formItem.dicData) || formItem.dicData.length === 0) &&(!Array.isArray(formItem.data) || formItem.data.length === 0)
          (!Array.isArray(formItem.dicData) || formItem.dicData.length === 0) &&
          (!Array.isArray(formItem.data) || formItem.data.length === 0)
        ) {
          dictKeys.push({ dictKey: formItem.comboxKey, field: formItem.field });
        }
@@ -531,9 +159,9 @@
        if (this.disabledProp.includes(formItem.field)) {
          formItem.readOnly = true;
        }
        if(formItem.field=='lcstatus'){
          formItem.field=formItem.field+'_text';
          formItem.readOnly=true;
        if (formItem.field == "lcstatus") {
          formItem.field = formItem.field + "_text";
          formItem.readOnly = true;
        }
        // è®¾ç½®è¡¨å•校验的规则,文本
        let message = "请选择";
@@ -576,7 +204,11 @@
                  options: formItem.referConfig,
                }
              : {},
          span: formItem.span ? formItem.span : formItem.type === "textarea" ? 24 : this.trendsSpan,
          span: formItem.span
            ? formItem.span
            : formItem.type === "textarea"
            ? 24
            : this.localTrendsSpan,
          rules: [
            {
              required: formItem.required,
@@ -603,6 +235,7 @@
        }
      });
      this.slotColumnList = slotColumnList;
      console.log(column, "column");
      this.$set(this.option, "column", column);
      this.$set(this.option, "group", group);
      this.updateIndex++;
@@ -646,9 +279,9 @@
    },
    // æ ¹æ®å±å¹•动态配置表单布局
    handleResize() {
      let windowWidth = document.body.clientWidth;
      this.trendsSpan = 24 / Math.floor(windowWidth / 500);
      this.updateIndex++;
      // let windowWidth = document.body.clientWidth;
      // this.trendsSpan = 24 / Math.floor(windowWidth / 500);
      // this.updateIndex++;
    },
    // å‰åŽç¼€
    preOrSufFixShow(type, val) {
Source/UBCS-WEB/src/components/FormTemplate/index.vue
@@ -137,7 +137,10 @@
        codefixedsec: "combox",
        codeclassifysec: "refer",
        codevariablesec: "text",
        codeattrsec: "text",
        codelevelsec: "text",
        coderefersec: "refer",
        codedatesec: "date"
      },
      selfColumnConfig: {
        function: {
@@ -156,6 +159,7 @@
          label: "name",
          maxlength: "codeSecLength",
          data: "fixedValueVOList",
          dateFormate: "codeDateFormatStr"
        },
        directVoluation: {
          search: true,
@@ -265,6 +269,9 @@
            "codeclassifysec",
            "codevariablesec",
            "coderefersec",
            "codeattrsec",
            "codelevelsec",
            "codedatesec"
          ];
          this.secVOList = (res.data.data.secVOList || []).filter((item) =>
            typeList.includes(item.secType)
Source/UBCS-WEB/src/components/code-dialog-page/maxSerialnumDialog.vue
@@ -1,17 +1,26 @@
<template>
    <el-dialog title="最大流水号" width="30%" append-to-body="true" :visible.sync="visible">
    <el-dialog title="最大流水号" width="30%" append-to-body="true" :visible.sync="dialogVisible">
        <el-form :label-position="right" ref="ruleForm" label-width="80px" :model="formModel" :rules="rules">
            <el-form-item label="流水号" prop="maxSecNum">
                <el-input v-model="formModel.maxSecNum"></el-input>
            </el-form-item>
        </el-form>
        <el-tabs v-model="activeName" type="border-card" @tab-click="handleClick">
            <el-tab-pane label="最大流水号" name="codeApply">
                <form-template v-bind="$attrs" type="add" :selfColumnType="selfColumnType" :selfColumnConfig="selfColumnConfig"
                    ref="CodeApply" @getFormData="getCodeApplyFormData"
                <form-template v-bind="$attrs" type="add" :selfColumnType="selfColumnType" :trendsSpan="24"
                    :selfColumnConfig="selfColumnConfig" ref="CodeApply" @getFormData="getCodeApplyFormData"
                    @referConfigDataUpdate="referConfigDataUpdate"></form-template>
            </el-tab-pane>
        </el-tabs>
        <div slot="footer" class="dialog-footer">
            <el-button @click="cancel">取 æ¶ˆ</el-button>
            <el-button type="primary" :loading="confirmLoadding" @click="comfirm">ç¡® å®š</el-button>
        </div>
    </el-dialog>
</template>
<script>
import FormTemplate from "@/components/FormTemplate/FormTemplate";
import { getCodePrice } from "@/api/code/maxSerialNum.js"
import { getCodePrice, saveMaxSerialNum } from "@/api/code/maxSerialNum.js"
export default {
    name: 'maxSerialnumDialog',
    components: {
@@ -39,7 +48,7 @@
        },
        selfColumnConfig: {
            handler(newval) {
                console.log('selfColumnConfig', newval)
                // console.log('selfColumnConfig', newval)
            },
            immediate: true,
            deep: true
@@ -49,13 +58,27 @@
        return {
            dialogVisible: this.visible,
            activeName: 'codePrice',
            confirmLoadding: false,
            codeApplyForm: {},
            secVOList: [],
            formModel: {
                maxSecNum: '',
                codeRuleOid: '',
                secDTOList: []
            },
            rules: {
                maxSecNum: [
                    { required: true, message: '请输入流水号', trigger: 'blur' }
                ],
            },
            selfColumnType: {
                codefixedsec: "combox",
                codeclassifysec: "refer",
                codevariablesec: "text",
                codeattrsec: "text",
                codelevelsec: "text",
                coderefersec: "refer",
                codedatesec: "date",
            },
            selfColumnConfig: {
                function: {
@@ -74,6 +97,7 @@
                    label: "name",
                    maxlength: "codeSecLength",
                    data: "fixedValueVOList",
                    dateFormate: "codeDateFormatStr"
                },
                directVoluation: {
                    search: true,
@@ -86,24 +110,27 @@
        }
    },
    methods: {
        // èŽ·å–ç æ®µ
        async apiGetCode() {
            this.activeName = "codeApply";
            const response = await getCodePrice({ ruleOid: this.ruleOid })
            const res = response.data
            if (res.success && res.code === 200) {
                console.log(response)
                const typeList = [
                    "codefixedsec",
                    "codeclassifysec",
                    "codevariablesec",
                    "coderefersec",
                    "codeattrsec",
                    "codelevelsec",
                    "codedatesec"
                ];
                this.secVOList = (res.data.secVOList || []).filter((item) =>
                    typeList.includes(item.secType)
                );
                console.log(this.secVOList)
                if (this.secVOList.length > 0) {
                    // this.showCodeApply = true;
                    this.activeName = "codePrice";
                    this.$nextTick(() => {
                        this.$refs.CodeApply.templateRender(this.secVOList);
                    });
@@ -113,14 +140,63 @@
            }
        },
        handleClick(tab, event) {
            console.log(event)
            // console.log(event)
        },
        getCodeApplyFormData(codeApplyForm) {
            this.codeApplyForm = codeApplyForm;
        },
        // å–消
        cancel() {
            this.dialogVisible = false
            this.formModel['secDTOList'] = []
            this.formModel['codeRuleOid'] = ''
            this.formModel['maxSecNum'] = ''
            this.$refs.ruleForm.clearValidate('maxSecNum')
        },
        // ç¡®è®¤
        async comfirm() {
            console.log(this.codeApplyForm)
            const objcodekey = Object.keys(this.codeApplyForm)
            console.log(objcodekey)
            const filteredObj = objcodekey.reduce((acc, key) => {
                const pattern = /[\u4e00-\u9fa5]/; // åŒ¹é…ä¸­æ–‡å­—符的正则表达式
                if (!pattern.test(key)) {
                    acc[key] = this.codeApplyForm[key];
                }
                return acc;
            }, {});
            const arrCode = Object.entries(filteredObj).map(([key, value]) => {
                return {
                    secOid: key,
                    secValue: value
                }
            })
            this.formModel['secDTOList'] = arrCode
            this.formModel['codeRuleOid'] = this.ruleOid
            console.log(this.formModel)
            this.confirmLoadding = true
            const rule = await this.$refs.CodeApply.validate()
            this.$refs.ruleForm.validate(res => {
                if (rule && res) {
                    console.log(rule)
                    saveMaxSerialNum(this.formModel).then(res => {
                        if (res.data.success) {
                            this.$message.success('操作成功!');
                            this.confirmLoadding = false
                            this.cancel()
                        }
                    })
                } else {
                    this.confirmLoadding = false
                }
            })
        },
        // å‚照组件数据变更
        referConfigDataUpdate(data) {
            console.log(data)
            // console.log(data)
            const { field } = data;
            this.secVOList = this.secVOList.map((item) => {
                if (item.parentClassifySecOid === field) {
@@ -129,7 +205,6 @@
                }
                return item;
            });
            console.log(this.secVOList)
            this.$refs.CodeApply.templateRender(this.secVOList);
        },
        isRequired(item) {
@@ -150,7 +225,7 @@
            }
        },
        getReferConfig(item) {
            console.log(item)
            // console.log(item)
            let params = {};
            if (item.secType == "codeclassifysec") {
                params = {
@@ -199,7 +274,7 @@
            } else if (item.secType == "coderefersec") {
                params = JSON.parse(item.referValueInfo);
            }
            console.log(params)
            // console.log(params)
            return params;
        },
Source/UBCS-WEB/src/components/refer/vciWebReferDefalut.vue
@@ -176,7 +176,6 @@
          hidden: (!this.controllerSecret)
        }];
      } else {
        debugger;
        this.option.column = this.options.tableConfig.cols.map(item => {
          if (item.field != 'LAY_TABLE_INDEX' && item.field != 'LAY_CHECKED') {
            return {
Source/UBCS-WEB/src/config/js-xlsx-master/.gitignore
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,27 @@
node_modules
misc/coverage.html
misc/prof.js
v8.log
tmp
*.txt
*.csv
*.dif
*.prn
*.slk
*.socialcalc
*.xls
*.xlsb
*.xlsm
*.xlsx
*.xlsm
*.xlsb
*.xml
*.htm
*.html
*.sheetjs
lab/
test_files
example.js
example2.js
.idea
Source/UBCS-WEB/src/config/js-xlsx-master/.gitmodules
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,3 @@
[submodule "test_files"]
    path = test_files
    url = https://github.com/SheetJS/test_files
Source/UBCS-WEB/src/config/js-xlsx-master/.jscs.json
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
{
  "requireCommaBeforeLineBreak": true,
  "disallowTrailingWhitespace": true,
  "disallowTrailingComma": true
}
Source/UBCS-WEB/src/config/js-xlsx-master/.jshintrc
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,4 @@
{
    "bitwise": false,
    "curly": false
}
Source/UBCS-WEB/src/config/js-xlsx-master/.npmignore
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,35 @@
test_files/
tests/files/
index.html
misc/
node_modules
tmp
*.txt
*.csv
*.dif
*.prn
*.slk
*.socialcalc
*.xls
*.xlsb
*.xlsm
*.xlsx
*.xml
*.htm
*.html
*.sheetjs
.gitignore
.jshintrc
CONTRIBUTING.md
Makefile
*.lst
.npmignore
xlsworker.js
shim.js
test.js
.jscs.json
.gitmodules
.travis.yml
bits/
odsbits/
tests/
Source/UBCS-WEB/src/config/js-xlsx-master/.travis.yml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
language: node_js
node_js:
  - "iojs"
  - "0.11.14"
  - "0.10"
#  - "0.8" # commented because of npm issue with camelcase
before_install:
  - "npm install -g mocha"
  - "npm install blanket"
  - "npm install xlsjs"
  - "npm install coveralls mocha-lcov-reporter"
before_script:
  - "make init"
  - "cd test_files; make all; cd -"
after_success:
  - "make coveralls-spin"
Source/UBCS-WEB/src/config/js-xlsx-master/CONTRIBUTING.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,63 @@
# Contributing
The SheetJS Libraries should be free and clear to use in your projects.  In
order to maintain that, every contributor must be vigilant.
There have been many projects in the past that have been very lax regarding
licensing, and we are of the opinion that those are ticking timebombs and that
no commercial product should depend on them.
# Required Reading
These are pretty short reads and emphasize the importance of proper licensing:
- https://github.com/kennethreitz/tablib/issues/114 (discussion of other tools)
- http://www.codinghorror.com/blog/2007/04/pick-a-license-any-license.html
# Raising Issues
Issues should generally be accompanied by test files.  Since github does not
support attachments, the best method is to send files to <sheetjs@gmail.com>
(subject line should contain issue number or message) or to share using some
storage service.  Unless expressly permitted, any attachments will not be
shared or included in a test suite (although I will ask :)
If sending email to a gmail account is problematic, the <dev@sheetjs.com> email
inbox is self-hosted.
# Pre-Contribution Checklist
Before thinking about contributing, make sure that:
- You are not, nor have ever been, an employee of Microsoft Corporation.
- You have not signed any NDAs or Shared Source Agreements with Microsoft
  Corporation or a subsidiary
- You have not consulted any existing relevant codebase (if you have, please
  take note of which codebases were consulted).
If you cannot attest to each of these items, the best approach is to raise an
issue.  If it is a particularly high-priority issue, please drop an email to
<sheetjs@gmail.com> and it will be prioritized.
# Intra-Contribution
Keep these in mind as you work:
- Your contributions are your original work.  Take note of any resources you
  consult in the process (and be extra careful not to use unlicensed code on
  the internet.
- You are working on your own time.  Unless they explicitly grant permission,
  your employer may be the ultimate owner of your IP
# Post-Contribution
Before contributions are merged, you will receive an email (at the address
associated with the git commit) and will be asked to confirm the aforementioned
items.  Ensure that the email addresses associated with the commits is valid.
Source/UBCS-WEB/src/config/js-xlsx-master/LICENSE
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Copyright (C) 2012-2015  SheetJS
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at
       http://www.apache.org/licenses/LICENSE-2.0
   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
Except where noted, this license applies to any and all software programs and associated documentation files created by the Original Author and distributed with the Software:
'jszip.js' is a modified version of JSZip, Copyright (c) Stuart Knightley, David Duponchel, Franz Buchinger, Ant'onio Afonso.  JSZip is dual licensed and is used according to the terms of the MIT License.
Source/UBCS-WEB/src/config/js-xlsx-master/Makefile
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,116 @@
LIB=xlsx
FMT=xlsx xlsm xlsb ods xls xml misc full
REQS=jszip.js
ADDONS=dist/cpexcel.js
AUXTARGETS=ods.js
ULIB=$(shell echo $(LIB) | tr a-z A-Z)
DEPS=$(sort $(wildcard bits/*.js))
TARGET=$(LIB).js
.PHONY: all
all: $(TARGET) $(AUXTARGETS)
$(TARGET): $(DEPS)
    cat $^ | tr -d '\15\32' > $@
bits/01_version.js: package.json
    echo "$(ULIB).version = '"`grep version package.json | awk '{gsub(/[^0-9a-z\.-]/,"",$$2); print $$2}'`"';" > $@
bits/18_cfb.js: node_modules/cfb/dist/xlscfb.js
    cp $^ $@
.PHONY: clean
clean:
    rm -f $(TARGET)
.PHONY: clean-data
clean-data:
    rm -f *.xlsx *.xlsm *.xlsb *.xls *.xml
.PHONY: init
init:
    git submodule init
    git submodule update
    git submodule foreach git pull origin master
    git submodule foreach make
.PHONY: test mocha
test mocha: test.js
    mkdir -p tmp
    mocha -R spec -t 20000
.PHONY: prof
prof:
    cat misc/prof.js test.js > prof.js
    node --prof prof.js
TESTFMT=$(patsubst %,test_%,$(FMT))
.PHONY: $(TESTFMT)
$(TESTFMT): test_%:
    FMTS=$* make test
.PHONY: lint
lint: $(TARGET)
    jshint --show-non-errors $(TARGET) $(AUXTARGETS)
    jshint --show-non-errors package.json bower.json
    jscs $(TARGET) $(AUXTARGETS)
.PHONY: test-osx
test-osx:
    node tests/write.js
    open -a Numbers sheetjs.xlsx
    open -a "Microsoft Excel" sheetjs.xlsx
.PHONY: cov cov-spin
cov: misc/coverage.html
cov-spin:
    make cov & bash misc/spin.sh $$!
COVFMT=$(patsubst %,cov_%,$(FMT))
.PHONY: $(COVFMT)
$(COVFMT): cov_%:
    FMTS=$* make cov
misc/coverage.html: $(TARGET) test.js
    mocha --require blanket -R html-cov > $@
.PHONY: coveralls coveralls-spin
coveralls:
    mocha --require blanket --reporter mocha-lcov-reporter | ./node_modules/coveralls/bin/coveralls.js
coveralls-spin:
    make coveralls & bash misc/spin.sh $$!
bower.json: misc/_bower.json package.json
    cat $< | sed 's/_VERSION_/'`grep version package.json | awk '{gsub(/[^0-9a-z\.-]/,"",$$2); print $$2}'`'/' > $@
.PHONY: dist
dist: dist-deps $(TARGET) bower.json
    cp $(TARGET) dist/
    cp LICENSE dist/
    uglifyjs $(TARGET) -o dist/$(LIB).min.js --source-map dist/$(LIB).min.map --preamble "$$(head -n 1 bits/00_header.js)"
    misc/strip_sourcemap.sh dist/$(LIB).min.js
    uglifyjs $(REQS) $(TARGET) -o dist/$(LIB).core.min.js --source-map dist/$(LIB).core.min.map --preamble "$$(head -n 1 bits/00_header.js)"
    misc/strip_sourcemap.sh dist/$(LIB).core.min.js
    uglifyjs $(REQS) $(ADDONS) $(TARGET) -o dist/$(LIB).full.min.js --source-map dist/$(LIB).full.min.map --preamble "$$(head -n 1 bits/00_header.js)"
    misc/strip_sourcemap.sh dist/$(LIB).full.min.js
.PHONY: aux
aux: $(AUXTARGETS)
.PHONY: ods
ods: ods.js
ODSDEPS=$(sort $(wildcard odsbits/*.js))
ods.js: $(ODSDEPS)
    cat $(ODSDEPS) | tr -d '\15\32' > $@
    cp ods.js dist/ods.js
.PHONY: dist-deps
dist-deps: ods.js
    cp node_modules/codepage/dist/cpexcel.full.js dist/cpexcel.js
    cp jszip.js dist/jszip.js
    cp ods.js dist/ods.js
Source/UBCS-WEB/src/config/js-xlsx-master/README.md
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,705 @@
# xlsx-style
Parser and writer for various spreadsheet formats.  Pure-JS cleanroom implementation from official specifications and related documents.
# About this fork
**NOTE:** [This project](https://github.com/SheetJS/js-xlsx/tree/beta) is a fork of the original (and awesome) [SheetJS/xlsx](https://github.com/SheetJS/js-xlsx) project.
It is extended to enable cell formats to be read from and written to .xlsx workbooks.
The intent is to provide a temporary means of using these features in practice, and ultimately to merge this into the primary project.
Report any issues to https://github.com/protobi/js-xlsx/issues.
For those contributing to this fork:
* `master` is the main branch, which follows the original repo to enable a future pull request.
* `beta` branch is published to npm and bower to make this fork available for use.
# Supported formats
Supported read formats:
- Excel 2007+ XML Formats (XLSX/XLSM)
- Excel 2007+ Binary Format (XLSB)
- Excel 2003-2004 XML Format (XML "SpreadsheetML")
- Excel 97-2004 (XLS BIFF8)
- Excel 5.0/95 (XLS BIFF5)
- OpenDocument Spreadsheet (ODS)
Supported write formats:
- XLSX
- CSV (and general DSV)
- JSON and JS objects (various styles)
Demo: <http://oss.sheetjs.com/js-xlsx>
Source: <http://git.io/xlsx>
## Installation
With [npm](https://www.npmjs.org/package/xlsx-style):
```sh
npm install xlsx-style --save
```
In the browser:
```html
<script lang="javascript" src="dist/xlsx.core.min.js"></script>
```
With [bower](http://bower.io/search/?q=js-xlsx):
```sh
bower install js-xlsx-style#beta
```
CDNjs automatically pulls the latest version and makes all versions available at
<http://cdnjs.com/libraries/xlsx>
## Optional Modules
The node version automatically requires modules for additional features.  Some
of these modules are rather large in size and are only needed in special
circumstances, so they do not ship with the core.  For browser use, they must
be included directly:
```html
<!-- international support from https://github.com/sheetjs/js-codepage -->
<script src="dist/cpexcel.js"></script>
<!-- ODS support -->
<script src="dist/ods.js"></script>
```
An appropriate version for each dependency is included in the dist/ directory.
The complete single-file version is generated at `dist/xlsx.full.min.js`
## ECMAScript 5 Compatibility
Since xlsx.js uses ES5 functions like `Array#forEach`, older browsers require
[Polyfills](http://git.io/QVh77g).  This repo and the gh-pages branch include
[a shim](https://github.com/SheetJS/js-xlsx/blob/master/shim.js)
To use the shim, add the shim before the script tag that loads xlsx.js:
```html
<script type="text/javascript" src="/path/to/shim.js"></script>
```
## Parsing Workbooks
For parsing, the first step is to read the file.  This involves acquiring the
data and feeding it into the library.  Here are a few common scenarios:
- node readFile:
```js
if(typeof require !== 'undefined') XLSX = require('xlsx');
var workbook = XLSX.readFile('test.xlsx');
/* DO SOMETHING WITH workbook HERE */
```
- ajax (for a more complete example that works in older browsers, check the demo
  at <http://oss.sheetjs.com/js-xlsx/ajax.html>):
```js
/* set up XMLHttpRequest */
var url = "test_files/formula_stress_test_ajax.xlsx";
var oReq = new XMLHttpRequest();
oReq.open("GET", url, true);
oReq.responseType = "arraybuffer";
oReq.onload = function(e) {
  var arraybuffer = oReq.response;
  /* convert data to binary string */
  var data = new Uint8Array(arraybuffer);
  var arr = new Array();
  for(var i = 0; i != data.length; ++i) arr[i] = String.fromCharCode(data[i]);
  var bstr = arr.join("");
  /* Call XLSX */
  var workbook = XLSX.read(bstr, {type:"binary"});
  /* DO SOMETHING WITH workbook HERE */
}
oReq.send();
```
- HTML5 drag-and-drop using readAsBinaryString:
```js
/* set up drag-and-drop event */
function handleDrop(e) {
  e.stopPropagation();
  e.preventDefault();
  var files = e.dataTransfer.files;
  var i, f;
  for (i = 0, f = files[i]; i != files.length; ++i) {
    var reader = new FileReader();
    var name = f.name;
    reader.onload = function(e) {
      var data = e.target.result;
      /* if binary string, read with type 'binary' */
      var workbook = XLSX.read(data, {type: 'binary'});
      /* DO SOMETHING WITH workbook HERE */
    };
    reader.readAsBinaryString(f);
  }
}
drop_dom_element.addEventListener('drop', handleDrop, false);
```
- HTML5 input file element using readAsBinaryString:
```js
function handleFile(e) {
  var files = e.target.files;
  var i, f;
  for (i = 0, f = files[i]; i != files.length; ++i) {
    var reader = new FileReader();
    var name = f.name;
    reader.onload = function(e) {
      var data = e.target.result;
      var workbook = XLSX.read(data, {type: 'binary'});
      /* DO SOMETHING WITH workbook HERE */
    };
    reader.readAsBinaryString(f);
  }
}
input_dom_element.addEventListener('change', handleFile, false);
```
## Working with the Workbook
The full object format is described later in this README.
This example extracts the value stored in cell A1 from the first worksheet:
```js
var first_sheet_name = workbook.SheetNames[0];
var address_of_cell = 'A1';
/* Get worksheet */
var worksheet = workbook.Sheets[first_sheet_name];
/* Find desired cell */
var desired_cell = worksheet[address_of_cell];
/* Get the value */
var desired_value = desired_cell.v;
```
This example iterates through every nonempty of every sheet and dumps values:
```js
var sheet_name_list = workbook.SheetNames;
sheet_name_list.forEach(function(y) { /* iterate through sheets */
  var worksheet = workbook.Sheets[y];
  for (z in worksheet) {
    /* all keys that do not begin with "!" correspond to cell addresses */
    if(z[0] === '!') continue;
    console.log(y + "!" + z + "=" + JSON.stringify(worksheet[z].v));
  }
});
```
Complete examples:
- <http://oss.sheetjs.com/js-xlsx/> HTML5 File API / Base64 Text / Web Workers
Note that older versions of IE does not support HTML5 File API, so the base64
mode is provided for testing.  On OSX you can get the base64 encoding with:
```sh
$ <target_file.xlsx base64 | pbcopy
```
- <http://oss.sheetjs.com/js-xlsx/ajax.html> XMLHttpRequest
- <https://github.com/SheetJS/js-xlsx/blob/master/bin/xlsx.njs> node
The node version installs a command line tool `xlsx` which can read spreadsheet
files and output the contents in various formats.  The source is available at
`xlsx.njs` in the bin directory.
Some helper functions in `XLSX.utils` generate different views of the sheets:
- `XLSX.utils.sheet_to_csv` generates CSV
- `XLSX.utils.sheet_to_json` generates an array of objects
- `XLSX.utils.sheet_to_formulae` generates a list of formulae
## Writing Workbooks
For writing, the first step is to generate output data.  The helper functions
`write` and `writeFile` will produce the data in various formats suitable for
dissemination.  The second step is to actual share the data with the end point.
Assuming `workbook` is a workbook object:
- nodejs write to file:
```js
/* output format determined by filename */
XLSX.writeFile(workbook, 'out.xlsx');
/* at this point, out.xlsx is a file that you can distribute */
```
- write to binary string (using FileSaver.js):
```js
/* bookType can be 'xlsx' or 'xlsm' or 'xlsb' */
var wopts = { bookType:'xlsx', bookSST:false, type:'binary' };
var wbout = XLSX.write(workbook,wopts);
function s2ab(s) {
  var buf = new ArrayBuffer(s.length);
  var view = new Uint8Array(buf);
  for (var i=0; i!=s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF;
  return buf;
}
/* the saveAs call downloads a file on the local machine */
saveAs(new Blob([s2ab(wbout)],{type:""}), "test.xlsx")
```
Complete examples:
- <http://sheetjs.com/demos/writexlsx.html> generates a simple file
- <http://git.io/WEK88Q> writing an array of arrays in nodejs
- <http://sheetjs.com/demos/table.html> exporting an HTML table
## Interface
`XLSX` is the exposed variable in the browser and the exported node variable
`XLSX.version` is the version of the library (added by the build script).
`XLSX.SSF` is an embedded version of the [format library](http://git.io/ssf).
### Parsing functions
`XLSX.read(data, read_opts)` attempts to parse `data`.
`XLSX.readFile(filename, read_opts)` attempts to read `filename` and parse.
### Writing functions
`XLSX.write(wb, write_opts)` attempts to write the workbook `wb`
`XLSX.writeFile(wb, filename, write_opts)` attempts to write `wb` to `filename`
### Utilities
Utilities are available in the `XLSX.utils` object:
Exporting:
- `sheet_to_json` converts a workbook object to an array of JSON objects.
- `sheet_to_csv` generates delimiter-separated-values output
- `sheet_to_formulae` generates a list of the formulae (with value fallbacks)
Cell and cell address manipulation:
- `format_cell` generates the text value for a cell (using number formats)
- `{en,de}code_{row,col}` convert between 0-indexed rows/cols and A1 forms.
- `{en,de}code_cell` converts cell addresses
- `{en,de}code_range` converts cell ranges
## Workbook / Worksheet / Cell Object Description
js-xlsx conforms to the Common Spreadsheet Format (CSF):
### General Structures
Cell address objects are stored as `{c:C, r:R}` where `C` and `R` are 0-indexed
column and row numbers, respectively.  For example, the cell address `B5` is
represented by the object `{c:1, r:4}`.
Cell range objects are stored as `{s:S, e:E}` where `S` is the first cell and
`E` is the last cell in the range.  The ranges are inclusive.  For example, the
range `A3:B7` is represented by the object `{s:{c:0, r:2}, e:{c:1, r:6}}`. Utils
use the following pattern to walk each of the cells in a range:
```js
for(var R = range.s.r; R <= range.e.r; ++R) {
  for(var C = range.s.c; C <= range.e.c; ++C) {
    var cell_address = {c:C, r:R};
  }
}
```
### Cell Object
| Key | Description |
| --- | ----------- |
| `v` | raw value (see Data Types section for more info) |
| `w` | formatted text (if applicable) |
| `t` | cell type: `b` Boolean, `n` Number, `e` error, `s` String, `d` Date |
| `f` | cell formula (if applicable) |
| `r` | rich text encoding (if applicable) |
| `h` | HTML rendering of the rich text (if applicable) |
| `c` | comments associated with the cell ** |
| `z` | number format string associated with the cell (if requested) |
| `l` | cell hyperlink object (.Target holds link, .tooltip is tooltip) |
| `s` | the style/theme of the cell (if applicable) |
Built-in export utilities (such as the CSV exporter) will use the `w` text if it
is available.  To change a value, be sure to delete `cell.w` (or set it to
`undefined`) before attempting to export.  The utilities will regenerate the `w`
text from the number format (`cell.z`) and the raw value if possible.
**Note**: The .z attribute is now deprecated.  Use the `.s` attribute to specify cell styles including number formats.
To specify a number format, use `s.numFmt`, e.g. `{v: 42145.822, s: { numFmt: "m/dd/yy"}}` described below.
### Data Types
The raw value is stored in the `v` field, interpreted based on the `t` field.
Type `b` is the Boolean type.  `v` is interpreted according to JS truth tables
Type `e` is the Error type. `v` holds the number and `w` holds the common name:
| Value | Error Meaning |
| ----: | :------------ |
|  0x00 | #NULL!        |
|  0x07 | #DIV/0!       |
|  0x0F | #VALUE!       |
|  0x17 | #REF!         |
|  0x1D | #NAME?        |
|  0x24 | #NUM!         |
|  0x2A | #N/A          |
|  0x2B | #GETTING_DATA |
Type `n` is the Number type. This includes all forms of data that Excel stores
as numbers, such as dates/times and Boolean fields.  Excel exclusively uses data
that can be fit in an IEEE754 floating point number, just like JS Number, so the
`v` field holds the raw number.  The `w` field holds formatted text.
Type `d` is the Date type, generated only when the option `cellDates` is passed.
Since JSON does not have a natural Date type, parsers are generally expected to
store ISO 8601 Date strings like you would get from `date.toISOString()`.  On
the other hand, writers and exporters should be able to handle date strings and
JS Date objects.  Note that Excel disregards the timezone modifier and treats all
dates in the local timezone.  js-xlsx does not correct for this error.
Type `s` is the String type.  `v` should be explicitly stored as a string to
avoid possible confusion.
### Worksheet Object
Each key that does not start with `!` maps to a cell (using `A-1` notation)
`worksheet[address]` returns the cell object for the specified address.
Special worksheet keys (accessible as `worksheet[key]`, each starting with `!`):
- `ws['!ref']`: A-1 based range representing the worksheet range. Functions that
  work with sheets should use this parameter to determine the range.  Cells that
  are assigned outside of the range are not processed.  In particular, when
  writing a worksheet by hand, be sure to update the range.  For a longer
  discussion, see <http://git.io/KIaNKQ>
  Functions that handle worksheets should test for the presence of `!ref` field.
  If the `!ref` is omitted or is not a valid range, functions are free to treat
  the sheet as empty or attempt to guess the range.  The standard utilities that
  ship with this library treat sheets as empty (for example, the CSV output is an
  empty string).
  When reading a worksheet with the `sheetRows` property set, the ref parameter
  will use the restricted range.  The original range is set at `ws['!fullref']`
- `ws['!cols']`: array of column properties objects.  Column widths are actually
  stored in files in a normalized manner, measured in terms of the "Maximum
  Digit Width" (the largest width of the rendered digits 0-9, in pixels).  When
  parsed, the column objects store the pixel width in the `wpx` field, character
  width in the `wch` field, and the maximum digit width in the `MDW` field.
- `ws['!merges']`: array of range objects corresponding to the merged cells in
  the worksheet.  Plaintext utilities are unaware of merge cells.  CSV export
  will write all cells in the merge range if they exist, so be sure that only
  the first cell (upper-left) in the range is set.
- `ws['!printHeader']`:  array of row indices for repeating row headers on print, e.g. `[1:1]` to repeat just the first row.
The following properties are currently used when generating an XLSX file, but not yet parsed:
- `ws['!rowBreaks']`: array of row break points, e.g. `[16,32]`
- `ws['!colBreaks']`: array of col break points, e.g. `[8,16]`
- `ws['!pageSetup']`: `{scale: '100', orientation: 'portrait'||'landscape'}
- `ws['!printHeader']`: array of first and last row indexes for repeat header on printing, e.g. `[1,1]` to repeat just first row
- `ws['!freeze']`:  string cell reference for breakpoint, e.g. the following will freeze the first row and first column:
        {
           xSplit: "1",
           ySplit: "1",
           topLeftCell: "B2",
           activePane: "bottomRight",
           state: "frozen"
         }
### Workbook Object
`workbook.SheetNames` is an ordered list of the sheets in the workbook
`wb.Sheets[sheetname]` returns an object representing the worksheet.
`wb.Props` is an object storing the standard properties.  The following properties are currently used when
generating an XLSX file, but not yet parsed:
    - `title`
    - `subject`
    - `description`
    - `keywords`
    - `creator`
`wb.Custprops` stores custom properties.  Since the XLS standard properties deviate from the XLSX
standard, XLS parsing stores core properties in both places.  .
## Parsing Options
The exported `read` and `readFile` functions accept an options argument:
| Option Name | Default | Description |
| :---------- | ------: | :---------- |
| cellFormula | true    | Save formulae to the .f field ** |
| cellHTML    | true    | Parse rich text and save HTML to the .h field |
| cellNF      | false   | Save number format string to the .z field |
| cellStyles  | false   | Save style/theme info to the .s field |
| cellDates   | false   | Store dates as type `d` (default is `n`) ** |
| sheetStubs  | false   | Create cell objects for stub cells |
| sheetRows   | 0       | If >0, read the first `sheetRows` rows ** |
| bookDeps    | false   | If true, parse calculation chains |
| bookFiles   | false   | If true, add raw files to book object ** |
| bookProps   | false   | If true, only parse enough to get book metadata ** |
| bookSheets  | false   | If true, only parse enough to get the sheet names |
| bookVBA     | false   | If true, expose vbaProject.bin to `vbaraw` field ** |
| password    | ""      | If defined and file is encrypted, use password ** |
- `cellFormula` option only applies to formats that require extra processing to
  parse formulae (XLS/XLSB).
- Even if `cellNF` is false, formatted text will be generated and saved to `.w`
- In some cases, sheets may be parsed even if `bookSheets` is false.
- `bookSheets` and `bookProps` combine to give both sets of information
- `Deps` will be an empty object if `bookDeps` is falsy
- `bookFiles` behavior depends on file type:
    * `keys` array (paths in the ZIP) for ZIP-based formats
    * `files` hash (mapping paths to objects representing the files) for ZIP
    * `cfb` object for formats using CFB containers
- `sheetRows-1` rows will be generated when looking at the JSON object output
  (since the header row is counted as a row when parsing the data)
- `bookVBA` merely exposes the raw vba object.  It does not parse the data.
- `cellDates` currently does not convert numerical dates to JS dates.
- Currently only XOR encryption is supported.  Unsupported error will be thrown
  for files employing other encryption methods.
The defaults are enumerated in bits/84_defaults.js
## Writing Options
The exported `write` and `writeFile` functions accept an options argument:
| Option Name | Default | Description |
| :---------- | ------: | :---------- |
| cellDates   | false   | Store dates as type `d` (default is `n`) |
| bookSST     | false   | Generate Shared String Table ** |
| bookType    | 'xlsx'  | Type of Workbook ("xlsx" or "xlsm" or "xlsb") |
| showGridLines | true | Show gridlines on all pages  |
| tabSelected | '1' | Initial tab selected |
| Props       | null | Workbook properties |
- `bookSST` is slower and more memory intensive, but has better compatibility
  with older versions of iOS Numbers
- `bookType = 'xlsb'` is stubbed and far from complete
- The raw data is the only thing guaranteed to be saved.  Formulae, formatting,
  and other niceties may not be serialized (pending CSF standardization)
- `cellDates` only applies to XLSX output and is not guaranteed to work with
  third-party readers.  Excel itself does not usually write cells with type `d`
  so non-Excel tools may ignore the data or blow up in the presence of dates.
- showGridLines and tabSelected are currently used when generating an XLSX file but not yet parse.
- Props specifies workbook properties
## Cell Styles
Cell styles are specified by a style object that roughly parallels the OpenXML structure.  The style object has five
top-level attributes: `fill`, `font`, `numFmt`, `alignment`, and `border`.
| Style Attribute | Sub Attributes | Values |
| :-------------- | :------------- | :------------- |
| fill            | patternType    |  `"solid"` or `"none"`
|                 | fgColor        |  `COLOR_SPEC`
|                 | bgColor        |  `COLOR_SPEC`
| font            | name           |  `"Calibri"` // default
|                 | sz             |  `"11"` // font size in points
|                 | color          |  `COLOR_SPEC`
|                 | bold           |  `true` or `false`
|                 | underline      |  `true` or `false`
|                 | italic         |  `true` or `false`
|                 | strike         |  `true` or `false`
|                 | outline        |  `true` or `false`
|                 | shadow         |  `true` or `false`
|                 | vertAlign      |  `true` or `false`
| numFmt          |                |  `"0"`  // integer index to built in formats, see StyleBuilder.SSF property
|                 |                |  `"0.00%"` // string matching a built-in format, see StyleBuilder.SSF
|                 |                |  `"0.0%"`  // string specifying a custom format
|                 |                |  `"0.00%;\\(0.00%\\);\\-;@"` // string specifying a custom format, escaping special characters
|                 |                |  `"m/dd/yy"` // string a date format using Excel's format notation
| alignment       | vertical       | `"bottom"` or `"center"` or `"top"`
|                 | horizontal     | `"left"` or `"center"` or `"right"`
|                 | wrapText       |  `true ` or ` false`
|                 | readingOrder   |  `2` // for right-to-left
|                 | textRotation   | Number from `0` to `180` or `255` (default is `0`)
|                 |                |  `90` is rotated up 90 degrees
|                 |                |  `45` is rotated up 45 degrees
|                 |                | `135` is rotated down 45 degrees
|                 |                | `180` is rotated down 180 degrees
|                 |                | `255` is special,  aligned vertically
| border          | top            | `{ style: BORDER_STYLE, color: COLOR_SPEC }`
|                 | bottom         | `{ style: BORDER_STYLE, color: COLOR_SPEC }`
|                 | left           | `{ style: BORDER_STYLE, color: COLOR_SPEC }`
|                 | right          | `{ style: BORDER_STYLE, color: COLOR_SPEC }`
|                 | diagonal       | `{ style: BORDER_STYLE, color: COLOR_SPEC }`
|                 | diagonalUp     | `true` or `false`
|                 | diagonalDown   | `true` or `false`
**COLOR_SPEC**: Colors for `fill`, `font`, and `border` are specified as objects, either:
* `{ auto: 1}` specifying automatic values
* `{ rgb: "FFFFAA00" }` specifying a hex ARGB value
* `{ theme: "1", tint: "-0.25"}` specifying an integer index to a theme color and a tint value (default 0)
* `{ indexed: 64}` default value for `fill.bgColor`
**BORDER_STYLE**: Border style is a string value which may take on one of the following values:
 * `thin`
 * `medium`
 * `thick`
 * `dotted`
 * `hair`
 * `dashed`
 * `mediumDashed`
 * `dashDot`
 * `mediumDashDot`
 * `dashDotDot`
 * `mediumDashDotDot`
 * `slantDashDot`
Borders for merged areas are specified for each cell within the merged area.  So to apply a box border to a merged area of 3x3 cells, border styles would need to be specified for eight different cells:
* left borders for the three cells on the left,
* right borders for the cells on the right
* top borders for the cells on the top
* bottom borders for the cells on the left
## Tested Environments
 - NodeJS 0.8, 0.10 (latest release), 0.11.14 (unstable), io.js
 - IE 6/7/8/9/10/11 using Base64 mode (IE10/11 using HTML5 mode)
 - FF 18 using Base64 or HTML5 mode
 - Chrome 24 using Base64 or HTML5 mode
Tests utilize the mocha testing framework.  Travis-CI and Sauce Labs links:
 - <https://travis-ci.org/SheetJS/js-xlsx> for XLSX module in nodejs
 - <https://travis-ci.org/SheetJS/SheetJS.github.io> for XLS* modules
 - <https://saucelabs.com/u/sheetjs> for XLS* modules using Sauce Labs
## Test Files
Test files are housed in [another repo](https://github.com/SheetJS/test_files).
Running `make init` will refresh the `test_files` submodule and get the files.
## Testing
`make test` will run the node-based tests.  To run the in-browser tests, clone
[the oss.sheetjs.com repo](https://github.com/SheetJS/SheetJS.github.io) and
replace the xlsx.js file (then fire up the browser and go to `stress.html`):
```sh
$ cp xlsx.js ../SheetJS.github.io
$ cd ../SheetJS.github.io
$ simplehttpserver # or "python -mSimpleHTTPServer" or "serve"
$ open -a Chromium.app http://localhost:8000/stress.html
```
For a much smaller test, run `make test_misc`.
## Contributing
Due to the precarious nature of the Open Specifications Promise, it is very
important to ensure code is cleanroom.  Consult CONTRIBUTING.md
The xlsx.js file is constructed from the files in the `bits` subdirectory. The
build script (run `make`) will concatenate the individual bits to produce the
script.  Before submitting a contribution, ensure that running make will produce
the xlsx.js file exactly.  The simplest way to test is to move the script:
```sh
$ mv xlsx.js xlsx.new.js
$ make
$ diff xlsx.js xlsx.new.js
```
To produce the dist files, run `make dist`.  The dist files are updated in each
version release and should not be committed between versions.
## License
Please consult the attached LICENSE file for details.  All rights not explicitly
granted by the Apache 2.0 license are reserved by the Original Author.
It is the opinion of the Original Author that this code conforms to the terms of
the Microsoft Open Specifications Promise, falling under the same terms as
OpenOffice (which is governed by the Apache License v2).  Given the vagaries of
the promise, the Original Author makes no legal claim that in fact end users are
protected from future actions.  It is highly recommended that, for commercial
uses, you consult a lawyer before proceeding.
## References
ISO/IEC 29500:2012(E) "Information technology â€” Document description and processing languages â€” Office Open XML File Formats"
OSP-covered specifications:
 - [MS-XLSB]: Excel (.xlsb) Binary File Format
 - [MS-XLSX]: Excel (.xlsx) Extensions to the Office Open XML SpreadsheetML File Format
 - [MS-OE376]: Office Implementation Information for ECMA-376 Standards Support
 - [MS-CFB]: Compound File Binary File Format
 - [MS-XLS]: Excel Binary File Format (.xls) Structure Specification
 - [MS-ODATA]: Open Data Protocol (OData)
 - [MS-OFFCRYPTO]: Office Document Cryptography Structure
 - [MS-OLEDS]: Object Linking and Embedding (OLE) Data Structures
 - [MS-OLEPS]: Object Linking and Embedding (OLE) Property Set Data Structures
 - [MS-OSHARED]: Office Common Data Types and Objects Structures
 - [MS-OVBA]: Office VBA File Format Structure
 - [MS-CTXLS]: Excel Custom Toolbar Binary File Format
 - [MS-XLDM]: Spreadsheet Data Model File Format
 - [MS-EXSPXML3]: Excel Calculation Version 2 Web Service XML Schema
 - [XLS]: Microsoft Office Excel 97-2007 Binary File Format Specification
Open Document Format for Office Applications Version 1.2 (29 September 2011)
## Badges
[![Build Status](https://travis-ci.org/SheetJS/js-xlsx.svg?branch=master)](https://travis-ci.org/SheetJS/js-xlsx)
[![Coverage Status](http://img.shields.io/coveralls/SheetJS/js-xlsx/master.svg)](https://coveralls.io/r/SheetJS/js-xlsx?branch=master)
Source/UBCS-WEB/src/config/js-xlsx-master/bin/xlsx.njs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,133 @@
#!/usr/bin/env node
/* xlsx.js (C) 2013-2015 SheetJS -- http://sheetjs.com */
var n = "xlsx";
/* vim: set ts=2 ft=javascript: */
var X = require('../');
var fs = require('fs'), program = require('commander');
program
    .version(X.version)
    .usage('[options] <file> [sheetname]')
    .option('-f, --file <file>', 'use specified workbook')
    .option('-s, --sheet <sheet>', 'print specified sheet (default first sheet)')
    .option('-p, --password <pw>', 'if file is encrypted, try with specified pw')
    .option('-l, --list-sheets', 'list sheet names and exit')
    .option('-o, --output <file>', 'output to specified file')
    .option('-B, --xlsb', 'emit XLSB to <sheetname> or <file>.xlsb')
    .option('-M, --xlsm', 'emit XLSM to <sheetname> or <file>.xlsm')
    .option('-X, --xlsx', 'emit XLSX to <sheetname> or <file>.xlsx')
    .option('-S, --formulae', 'print formulae')
    .option('-j, --json', 'emit formatted JSON (all fields text)')
    .option('-J, --raw-js', 'emit raw JS object (raw numbers)')
    .option('-F, --field-sep <sep>', 'CSV field separator', ",")
    .option('-R, --row-sep <sep>', 'CSV row separator', "\n")
    .option('-n, --sheet-rows <num>', 'Number of rows to process (0=all rows)')
    .option('--sst', 'generate sst')
    .option('--perf', 'do not generate output')
    .option('--all', 'parse everything; XLS[XMB] write as much as possible')
    .option('--dev', 'development mode')
    .option('--read', 'read but do not print out contents')
    .option('-q, --quiet', 'quiet mode');
program.on('--help', function() {
    console.log('  Default output format is CSV');
    console.log('  Support email: dev@sheetjs.com');
    console.log('  Web Demo: http://oss.sheetjs.com/js-'+n+'/');
});
program.parse(process.argv);
/* see https://github.com/SheetJS/j/issues/4 */
if(process.version === 'v0.10.31') {
    var msgs = [
        "node v0.10.31 is known to crash on OSX and Linux, refusing to proceed.",
        "see https://github.com/SheetJS/j/issues/4 for the relevant discussion.",
        "see https://github.com/joyent/node/issues/8208 for the relevant node issue"
    ];
    msgs.forEach(function(m) { console.error(m); });
    process.exit(1);
}
var filename, sheetname = '';
if(program.args[0]) {
    filename = program.args[0];
    if(program.args[1]) sheetname = program.args[1];
}
if(program.sheet) sheetname = program.sheet;
if(program.file) filename = program.file;
if(!filename) {
    console.error(n + ": must specify a filename");
    process.exit(1);
}
if(!fs.existsSync(filename)) {
    console.error(n + ": " + filename + ": No such file or directory");
    process.exit(2);
}
var opts = {}, wb;
if(program.listSheets) opts.bookSheets = true;
if(program.sheetRows) opts.sheetRows = program.sheetRows;
if(program.password) opts.password = program.password;
if(program.xlsx || program.xlsm || program.xlsb) {
    opts.cellNF = true;
    if(program.output) sheetname = program.output;
}
else if(program.formulae);
else opts.cellFormula = false;
if(program.all) {
    opts.cellFormula = true;
    opts.cellNF = true;
    opts.cellStyles = true;
}
if(program.dev) {
    X.verbose = 2;
    opts.WTF = true;
    wb = X.readFile(filename, opts);
}
else try {
    wb = X.readFile(filename, opts);
} catch(e) {
    var msg = (program.quiet) ? "" : n + ": error parsing ";
    msg += filename + ": " + e;
    console.error(msg);
    process.exit(3);
}
if(program.read) process.exit(0);
if(program.listSheets) {
    console.log(wb.SheetNames.join("\n"));
    process.exit(0);
}
var wopts = {WTF:opts.WTF, bookSST:program.sst};
if(program.xlsx) return X.writeFile(wb, sheetname || (filename + ".xlsx"), wopts);
if(program.xlsm) return X.writeFile(wb, sheetname || (filename + ".xlsm"), wopts);
if(program.xlsb) return X.writeFile(wb, sheetname || (filename + ".xlsb"), wopts);
var target_sheet = sheetname || '';
if(target_sheet === '') target_sheet = wb.SheetNames[0];
var ws;
try {
    ws = wb.Sheets[target_sheet];
    if(!ws) throw "Sheet " + target_sheet + " cannot be found";
} catch(e) {
    console.error(n + ": error parsing "+filename+" "+target_sheet+": " + e);
    process.exit(4);
}
if(program.perf) return;
var oo = "";
if(!program.quiet) console.error(target_sheet);
if(program.formulae) oo = X.utils.get_formulae(ws).join("\n");
else if(program.json) oo = JSON.stringify(X.utils.sheet_to_row_object_array(ws));
else if(program.rawJs) oo = JSON.stringify(X.utils.sheet_to_row_object_array(ws,{raw:true}));
else oo = X.utils.make_csv(ws, {FS:program.fieldSep, RS:program.rowSep});
if(program.output) fs.writeFileSync(program.output, oo);
else console.log(oo);
Source/UBCS-WEB/src/config/js-xlsx-master/bits/.npmignore
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
*.js
Source/UBCS-WEB/src/config/js-xlsx-master/bits/00_header.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
/* xlsx.js (C) 2013-2015 SheetJS -- http://sheetjs.com */
/* vim: set ts=2: */
/*jshint -W041 */
/*jshint funcscope:true, eqnull:true */
var XLSX = {};
(function make_xlsx(XLSX){
Source/UBCS-WEB/src/config/js-xlsx-master/bits/01_version.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
XLSX.version = '0.8.20';
Source/UBCS-WEB/src/config/js-xlsx-master/bits/02_codepage.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
var current_codepage = 1200, current_cptable;
if(typeof module !== "undefined" && typeof require !== 'undefined') {
    if(typeof cptable === 'undefined') cptable = require('./dist/cpexcel');
    current_cptable = cptable[current_codepage];
}
function reset_cp() { set_cp(1200); }
var set_cp = function(cp) { current_codepage = cp; };
function char_codes(data) { var o = []; for(var i = 0, len = data.length; i < len; ++i) o[i] = data.charCodeAt(i); return o; }
var debom_xml = function(data) { return data; };
var _getchar = function _gc1(x) { return String.fromCharCode(x); };
if(typeof cptable !== 'undefined') {
    set_cp = function(cp) { current_codepage = cp; current_cptable = cptable[cp]; };
    debom_xml = function(data) {
        if(data.charCodeAt(0) === 0xFF && data.charCodeAt(1) === 0xFE) { return cptable.utils.decode(1200, char_codes(data.substr(2))); }
        return data;
    };
    _getchar = function _gc2(x) {
        if(current_codepage === 1200) return String.fromCharCode(x);
        return cptable.utils.decode(current_codepage, [x&255,x>>8])[0];
    };
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/04_base64.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,41 @@
var Base64 = (function make_b64(){
    var map = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
    return {
        encode: function(input, utf8) {
            var o = "";
            var c1, c2, c3, e1, e2, e3, e4;
            for(var i = 0; i < input.length; ) {
                c1 = input.charCodeAt(i++);
                c2 = input.charCodeAt(i++);
                c3 = input.charCodeAt(i++);
                e1 = c1 >> 2;
                e2 = (c1 & 3) << 4 | c2 >> 4;
                e3 = (c2 & 15) << 2 | c3 >> 6;
                e4 = c3 & 63;
                if (isNaN(c2)) { e3 = e4 = 64; }
                else if (isNaN(c3)) { e4 = 64; }
                o += map.charAt(e1) + map.charAt(e2) + map.charAt(e3) + map.charAt(e4);
            }
            return o;
        },
        decode: function b64_decode(input, utf8) {
            var o = "";
            var c1, c2, c3;
            var e1, e2, e3, e4;
            input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");
            for(var i = 0; i < input.length;) {
                e1 = map.indexOf(input.charAt(i++));
                e2 = map.indexOf(input.charAt(i++));
                e3 = map.indexOf(input.charAt(i++));
                e4 = map.indexOf(input.charAt(i++));
                c1 = e1 << 2 | e2 >> 4;
                c2 = (e2 & 15) << 4 | e3 >> 2;
                c3 = (e3 & 3) << 6 | e4;
                o += String.fromCharCode(c1);
                if (e3 != 64) { o += String.fromCharCode(c2); }
                if (e4 != 64) { o += String.fromCharCode(c3); }
            }
            return o;
        }
    };
})();
Source/UBCS-WEB/src/config/js-xlsx-master/bits/05_buf.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
var has_buf = (typeof Buffer !== 'undefined');
function new_raw_buf(len) {
    /* jshint -W056 */
    return new (has_buf ? Buffer : Array)(len);
    /* jshint +W056 */
}
function s2a(s) {
    if(has_buf) return new Buffer(s, "binary");
    return s.split("").map(function(x){ return x.charCodeAt(0) & 0xff; });
}
var bconcat = function(bufs) { return [].concat.apply([], bufs); };
var chr0 = /\u0000/g, chr1 = /[\u0001-\u0006]/;
Source/UBCS-WEB/src/config/js-xlsx-master/bits/10_ssf.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,765 @@
/* ssf.js (C) 2013-2014 SheetJS -- http://sheetjs.com */
/*jshint -W041 */
var SSF = {};
var make_ssf = function make_ssf(SSF){
SSF.version = '0.8.1';
function _strrev(x) { var o = "", i = x.length-1; while(i>=0) o += x.charAt(i--); return o; }
function fill(c,l) { var o = ""; while(o.length < l) o+=c; return o; }
function pad0(v,d){var t=""+v; return t.length>=d?t:fill('0',d-t.length)+t;}
function pad_(v,d){var t=""+v;return t.length>=d?t:fill(' ',d-t.length)+t;}
function rpad_(v,d){var t=""+v; return t.length>=d?t:t+fill(' ',d-t.length);}
function pad0r1(v,d){var t=""+Math.round(v); return t.length>=d?t:fill('0',d-t.length)+t;}
function pad0r2(v,d){var t=""+v; return t.length>=d?t:fill('0',d-t.length)+t;}
var p2_32 = Math.pow(2,32);
function pad0r(v,d){if(v>p2_32||v<-p2_32) return pad0r1(v,d); var i = Math.round(v); return pad0r2(i,d); }
function isgeneral(s, i) { return s.length >= 7 + i && (s.charCodeAt(i)|32) === 103 && (s.charCodeAt(i+1)|32) === 101 && (s.charCodeAt(i+2)|32) === 110 && (s.charCodeAt(i+3)|32) === 101 && (s.charCodeAt(i+4)|32) === 114 && (s.charCodeAt(i+5)|32) === 97 && (s.charCodeAt(i+6)|32) === 108; }
/* Options */
var opts_fmt = [
    ["date1904", 0],
    ["output", ""],
    ["WTF", false]
];
function fixopts(o){
    for(var y = 0; y != opts_fmt.length; ++y) if(o[opts_fmt[y][0]]===undefined) o[opts_fmt[y][0]]=opts_fmt[y][1];
}
SSF.opts = opts_fmt;
var table_fmt = {
    0:  'General',
    1:  '0',
    2:  '0.00',
    3:  '#,##0',
    4:  '#,##0.00',
    9:  '0%',
    10: '0.00%',
    11: '0.00E+00',
    12: '# ?/?',
    13: '# ??/??',
    14: 'm/d/yy',
    15: 'd-mmm-yy',
    16: 'd-mmm',
    17: 'mmm-yy',
    18: 'h:mm AM/PM',
    19: 'h:mm:ss AM/PM',
    20: 'h:mm',
    21: 'h:mm:ss',
    22: 'm/d/yy h:mm',
    37: '#,##0 ;(#,##0)',
    38: '#,##0 ;[Red](#,##0)',
    39: '#,##0.00;(#,##0.00)',
    40: '#,##0.00;[Red](#,##0.00)',
    45: 'mm:ss',
    46: '[h]:mm:ss',
    47: 'mmss.0',
    48: '##0.0E+0',
    49: '@',
    56: '"上午/下午 "hh"時"mm"分"ss"秒 "',
    65535: 'General'
};
var days = [
    ['Sun', 'Sunday'],
    ['Mon', 'Monday'],
    ['Tue', 'Tuesday'],
    ['Wed', 'Wednesday'],
    ['Thu', 'Thursday'],
    ['Fri', 'Friday'],
    ['Sat', 'Saturday']
];
var months = [
    ['J', 'Jan', 'January'],
    ['F', 'Feb', 'February'],
    ['M', 'Mar', 'March'],
    ['A', 'Apr', 'April'],
    ['M', 'May', 'May'],
    ['J', 'Jun', 'June'],
    ['J', 'Jul', 'July'],
    ['A', 'Aug', 'August'],
    ['S', 'Sep', 'September'],
    ['O', 'Oct', 'October'],
    ['N', 'Nov', 'November'],
    ['D', 'Dec', 'December']
];
function frac(x, D, mixed) {
    var sgn = x < 0 ? -1 : 1;
    var B = x * sgn;
    var P_2 = 0, P_1 = 1, P = 0;
    var Q_2 = 1, Q_1 = 0, Q = 0;
    var A = Math.floor(B);
    while(Q_1 < D) {
        A = Math.floor(B);
        P = A * P_1 + P_2;
        Q = A * Q_1 + Q_2;
        if((B - A) < 0.0000000005) break;
        B = 1 / (B - A);
        P_2 = P_1; P_1 = P;
        Q_2 = Q_1; Q_1 = Q;
    }
    if(Q > D) { Q = Q_1; P = P_1; }
    if(Q > D) { Q = Q_2; P = P_2; }
    if(!mixed) return [0, sgn * P, Q];
    if(Q===0) throw "Unexpected state: "+P+" "+P_1+" "+P_2+" "+Q+" "+Q_1+" "+Q_2;
    var q = Math.floor(sgn * P/Q);
    return [q, sgn*P - q*Q, Q];
}
function general_fmt_int(v, opts) { return ""+v; }
SSF._general_int = general_fmt_int;
var general_fmt_num = (function make_general_fmt_num() {
var gnr1 = /\.(\d*[1-9])0+$/, gnr2 = /\.0*$/, gnr4 = /\.(\d*[1-9])0+/, gnr5 = /\.0*[Ee]/, gnr6 = /(E[+-])(\d)$/;
function gfn2(v) {
    var w = (v<0?12:11);
    var o = gfn5(v.toFixed(12)); if(o.length <= w) return o;
    o = v.toPrecision(10); if(o.length <= w) return o;
    return v.toExponential(5);
}
function gfn3(v) {
    var o = v.toFixed(11).replace(gnr1,".$1");
    if(o.length > (v<0?12:11)) o = v.toPrecision(6);
    return o;
}
function gfn4(o) {
    for(var i = 0; i != o.length; ++i) if((o.charCodeAt(i) | 0x20) === 101) return o.replace(gnr4,".$1").replace(gnr5,"E").replace("e","E").replace(gnr6,"$10$2");
    return o;
}
function gfn5(o) {
    //for(var i = 0; i != o.length; ++i) if(o.charCodeAt(i) === 46) return o.replace(gnr2,"").replace(gnr1,".$1");
    //return o;
    return o.indexOf(".") > -1 ? o.replace(gnr2,"").replace(gnr1,".$1") : o;
}
return function general_fmt_num(v, opts) {
    var V = Math.floor(Math.log(Math.abs(v))*Math.LOG10E), o;
    if(V >= -4 && V <= -1) o = v.toPrecision(10+V);
    else if(Math.abs(V) <= 9) o = gfn2(v);
    else if(V === 10) o = v.toFixed(10).substr(0,12);
    else o = gfn3(v);
    return gfn5(gfn4(o));
};})();
SSF._general_num = general_fmt_num;
function general_fmt(v, opts) {
    switch(typeof v) {
        case 'string': return v;
        case 'boolean': return v ? "TRUE" : "FALSE";
        case 'number': return (v|0) === v ? general_fmt_int(v, opts) : general_fmt_num(v, opts);
    }
    throw new Error("unsupported value in General format: " + v);
}
SSF._general = general_fmt;
function fix_hijri(date, o) { return 0; }
function parse_date_code(v,opts,b2) {
    if(v > 2958465 || v < 0) return null;
    var date = (v|0), time = Math.floor(86400 * (v - date)), dow=0;
    var dout=[];
    var out={D:date, T:time, u:86400*(v-date)-time,y:0,m:0,d:0,H:0,M:0,S:0,q:0};
    if(Math.abs(out.u) < 1e-6) out.u = 0;
    fixopts(opts != null ? opts : (opts=[]));
    if(opts.date1904) date += 1462;
    if(out.u > 0.999) {
        out.u = 0;
        if(++time == 86400) { time = 0; ++date; }
    }
    if(date === 60) {dout = b2 ? [1317,10,29] : [1900,2,29]; dow=3;}
    else if(date === 0) {dout = b2 ? [1317,8,29] : [1900,1,0]; dow=6;}
    else {
        if(date > 60) --date;
        /* 1 = Jan 1 1900 */
        var d = new Date(1900,0,1);
        d.setDate(d.getDate() + date - 1);
        dout = [d.getFullYear(), d.getMonth()+1,d.getDate()];
        dow = d.getDay();
        if(date < 60) dow = (dow + 6) % 7;
        if(b2) dow = fix_hijri(d, dout);
    }
    out.y = dout[0]; out.m = dout[1]; out.d = dout[2];
    out.S = time % 60; time = Math.floor(time / 60);
    out.M = time % 60; time = Math.floor(time / 60);
    out.H = time;
    out.q = dow;
    return out;
}
SSF.parse_date_code = parse_date_code;
/*jshint -W086 */
function write_date(type, fmt, val, ss0) {
    var o="", ss=0, tt=0, y = val.y, out, outl = 0;
    switch(type) {
        case 98: /* 'b' buddhist year */
            y = val.y + 543;
            /* falls through */
        case 121: /* 'y' year */
        switch(fmt.length) {
            case 1: case 2: out = y % 100; outl = 2; break;
            default: out = y % 10000; outl = 4; break;
        } break;
        case 109: /* 'm' month */
        switch(fmt.length) {
            case 1: case 2: out = val.m; outl = fmt.length; break;
            case 3: return months[val.m-1][1];
            case 5: return months[val.m-1][0];
            default: return months[val.m-1][2];
        } break;
        case 100: /* 'd' day */
        switch(fmt.length) {
            case 1: case 2: out = val.d; outl = fmt.length; break;
            case 3: return days[val.q][0];
            default: return days[val.q][1];
        } break;
        case 104: /* 'h' 12-hour */
        switch(fmt.length) {
            case 1: case 2: out = 1+(val.H+11)%12; outl = fmt.length; break;
            default: throw 'bad hour format: ' + fmt;
        } break;
        case 72: /* 'H' 24-hour */
        switch(fmt.length) {
            case 1: case 2: out = val.H; outl = fmt.length; break;
            default: throw 'bad hour format: ' + fmt;
        } break;
        case 77: /* 'M' minutes */
        switch(fmt.length) {
            case 1: case 2: out = val.M; outl = fmt.length; break;
            default: throw 'bad minute format: ' + fmt;
        } break;
        case 115: /* 's' seconds */
        if(val.u === 0) switch(fmt) {
            case 's': case 'ss': return pad0(val.S, fmt.length);
            case '.0': case '.00': case '.000':
        }
        switch(fmt) {
            case 's': case 'ss': case '.0': case '.00': case '.000':
                if(ss0 >= 2) tt = ss0 === 3 ? 1000 : 100;
                else tt = ss0 === 1 ? 10 : 1;
                ss = Math.round((tt)*(val.S + val.u));
                if(ss >= 60*tt) ss = 0;
                if(fmt === 's') return ss === 0 ? "0" : ""+ss/tt;
                o = pad0(ss,2 + ss0);
                if(fmt === 'ss') return o.substr(0,2);
                return "." + o.substr(2,fmt.length-1);
            default: throw 'bad second format: ' + fmt;
        }
        case 90: /* 'Z' absolute time */
        switch(fmt) {
            case '[h]': case '[hh]': out = val.D*24+val.H; break;
            case '[m]': case '[mm]': out = (val.D*24+val.H)*60+val.M; break;
            case '[s]': case '[ss]': out = ((val.D*24+val.H)*60+val.M)*60+Math.round(val.S+val.u); break;
            default: throw 'bad abstime format: ' + fmt;
        } outl = fmt.length === 3 ? 1 : 2; break;
        case 101: /* 'e' era */
            out = y; outl = 1;
    }
    if(outl > 0) return pad0(out, outl); else return "";
}
/*jshint +W086 */
function commaify(s) {
    if(s.length <= 3) return s;
    var j = (s.length % 3), o = s.substr(0,j);
    for(; j!=s.length; j+=3) o+=(o.length > 0 ? "," : "") + s.substr(j,3);
    return o;
}
var write_num = (function make_write_num(){
var pct1 = /%/g;
function write_num_pct(type, fmt, val){
    var sfmt = fmt.replace(pct1,""), mul = fmt.length - sfmt.length;
    return write_num(type, sfmt, val * Math.pow(10,2*mul)) + fill("%",mul);
}
function write_num_cm(type, fmt, val){
    var idx = fmt.length - 1;
    while(fmt.charCodeAt(idx-1) === 44) --idx;
    return write_num(type, fmt.substr(0,idx), val / Math.pow(10,3*(fmt.length-idx)));
}
function write_num_exp(fmt, val){
    var o;
    var idx = fmt.indexOf("E") - fmt.indexOf(".") - 1;
    if(fmt.match(/^#+0.0E\+0$/)) {
        var period = fmt.indexOf("."); if(period === -1) period=fmt.indexOf('E');
        var ee = Math.floor(Math.log(Math.abs(val))*Math.LOG10E)%period;
        if(ee < 0) ee += period;
        o = (val/Math.pow(10,ee)).toPrecision(idx+1+(period+ee)%period);
        if(o.indexOf("e") === -1) {
            var fakee = Math.floor(Math.log(Math.abs(val))*Math.LOG10E);
            if(o.indexOf(".") === -1) o = o[0] + "." + o.substr(1) + "E+" + (fakee - o.length+ee);
            else o += "E+" + (fakee - ee);
            while(o.substr(0,2) === "0.") {
                o = o[0] + o.substr(2,period) + "." + o.substr(2+period);
                o = o.replace(/^0+([1-9])/,"$1").replace(/^0+\./,"0.");
            }
            o = o.replace(/\+-/,"-");
        }
        o = o.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,function($$,$1,$2,$3) { return $1 + $2 + $3.substr(0,(period+ee)%period) + "." + $3.substr(ee) + "E"; });
    } else o = val.toExponential(idx);
    if(fmt.match(/E\+00$/) && o.match(/e[+-]\d$/)) o = o.substr(0,o.length-1) + "0" + o[o.length-1];
    if(fmt.match(/E\-/) && o.match(/e\+/)) o = o.replace(/e\+/,"e");
    return o.replace("e","E");
}
var frac1 = /# (\?+)( ?)\/( ?)(\d+)/;
function write_num_f1(r, aval, sign) {
    var den = parseInt(r[4]), rr = Math.round(aval * den), base = Math.floor(rr/den);
    var myn = (rr - base*den), myd = den;
    return sign + (base === 0 ? "" : ""+base) + " " + (myn === 0 ? fill(" ", r[1].length + 1 + r[4].length) : pad_(myn,r[1].length) + r[2] + "/" + r[3] + pad0(myd,r[4].length));
}
function write_num_f2(r, aval, sign) {
    return sign + (aval === 0 ? "" : ""+aval) + fill(" ", r[1].length + 2 + r[4].length);
}
var dec1 = /^#*0*\.(0+)/;
var closeparen = /\).*[0#]/;
var phone = /\(###\) ###\\?-####/;
function hashq(str) {
    var o = "", cc;
    for(var i = 0; i != str.length; ++i) switch((cc=str.charCodeAt(i))) {
        case 35: break;
        case 63: o+= " "; break;
        case 48: o+= "0"; break;
        default: o+= String.fromCharCode(cc);
    }
    return o;
}
function rnd(val, d) { var dd = Math.pow(10,d); return ""+(Math.round(val * dd)/dd); }
function dec(val, d) { return Math.round((val-Math.floor(val))*Math.pow(10,d)); }
function flr(val) { if(val < 2147483647 && val > -2147483648) return ""+(val >= 0 ? (val|0) : (val-1|0)); return ""+Math.floor(val); }
function write_num_flt(type, fmt, val) {
    if(type.charCodeAt(0) === 40 && !fmt.match(closeparen)) {
        var ffmt = fmt.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");
        if(val >= 0) return write_num_flt('n', ffmt, val);
        return '(' + write_num_flt('n', ffmt, -val) + ')';
    }
    if(fmt.charCodeAt(fmt.length - 1) === 44) return write_num_cm(type, fmt, val);
    if(fmt.indexOf('%') !== -1) return write_num_pct(type, fmt, val);
    if(fmt.indexOf('E') !== -1) return write_num_exp(fmt, val);
    if(fmt.charCodeAt(0) === 36) return "$"+write_num_flt(type,fmt.substr(fmt[1]==' '?2:1),val);
    var o, oo;
    var r, ri, ff, aval = Math.abs(val), sign = val < 0 ? "-" : "";
    if(fmt.match(/^00+$/)) return sign + pad0r(aval,fmt.length);
    if(fmt.match(/^[#?]+$/)) {
        o = pad0r(val,0); if(o === "0") o = "";
        return o.length > fmt.length ? o : hashq(fmt.substr(0,fmt.length-o.length)) + o;
    }
    if((r = fmt.match(frac1)) !== null) return write_num_f1(r, aval, sign);
    if(fmt.match(/^#+0+$/) !== null) return sign + pad0r(aval,fmt.length - fmt.indexOf("0"));
    if((r = fmt.match(dec1)) !== null) {
        o = rnd(val, r[1].length).replace(/^([^\.]+)$/,"$1."+r[1]).replace(/\.$/,"."+r[1]).replace(/\.(\d*)$/,function($$, $1) { return "." + $1 + fill("0", r[1].length-$1.length); });
        return fmt.indexOf("0.") !== -1 ? o : o.replace(/^0\./,".");
    }
    fmt = fmt.replace(/^#+([0.])/, "$1");
    if((r = fmt.match(/^(0*)\.(#*)$/)) !== null) {
        return sign + rnd(aval, r[2].length).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,r[1].length?"0.":".");
    }
    if((r = fmt.match(/^#,##0(\.?)$/)) !== null) return sign + commaify(pad0r(aval,0));
    if((r = fmt.match(/^#,##0\.([#0]*0)$/)) !== null) {
        return val < 0 ? "-" + write_num_flt(type, fmt, -val) : commaify(""+(Math.floor(val))) + "." + pad0(dec(val, r[1].length),r[1].length);
    }
    if((r = fmt.match(/^#,#*,#0/)) !== null) return write_num_flt(type,fmt.replace(/^#,#*,/,""),val);
    if((r = fmt.match(/^([0#]+)(\\?-([0#]+))+$/)) !== null) {
        o = _strrev(write_num_flt(type, fmt.replace(/[\\-]/g,""), val));
        ri = 0;
        return _strrev(_strrev(fmt.replace(/\\/g,"")).replace(/[0#]/g,function(x){return ri<o.length?o[ri++]:x==='0'?'0':"";}));
    }
    if(fmt.match(phone) !== null) {
        o = write_num_flt(type, "##########", val);
        return "(" + o.substr(0,3) + ") " + o.substr(3, 3) + "-" + o.substr(6);
    }
    var oa = "";
    if((r = fmt.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/)) !== null) {
        ri = Math.min(r[4].length,7);
        ff = frac(aval, Math.pow(10,ri)-1, false);
        o = "" + sign;
        oa = write_num("n", r[1], ff[1]);
        if(oa[oa.length-1] == " ") oa = oa.substr(0,oa.length-1) + "0";
        o += oa + r[2] + "/" + r[3];
        oa = rpad_(ff[2],ri);
        if(oa.length < r[4].length) oa = hashq(r[4].substr(r[4].length-oa.length)) + oa;
        o += oa;
        return o;
    }
    if((r = fmt.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/)) !== null) {
        ri = Math.min(Math.max(r[1].length, r[4].length),7);
        ff = frac(aval, Math.pow(10,ri)-1, true);
        return sign + (ff[0]||(ff[1] ? "" : "0")) + " " + (ff[1] ? pad_(ff[1],ri) + r[2] + "/" + r[3] + rpad_(ff[2],ri): fill(" ", 2*ri+1 + r[2].length + r[3].length));
    }
    if((r = fmt.match(/^[#0?]+$/)) !== null) {
        o = pad0r(val, 0);
        if(fmt.length <= o.length) return o;
        return hashq(fmt.substr(0,fmt.length-o.length)) + o;
    }
  if((r = fmt.match(/^([#0?]+)\.([#0]+)$/)) !== null) {
        o = "" + val.toFixed(Math.min(r[2].length,10)).replace(/([^0])0+$/,"$1");
        ri = o.indexOf(".");
        var lres = fmt.indexOf(".") - ri, rres = fmt.length - o.length - lres;
        return hashq(fmt.substr(0,lres) + o + fmt.substr(fmt.length-rres));
    }
    if((r = fmt.match(/^00,000\.([#0]*0)$/)) !== null) {
        ri = dec(val, r[1].length);
        return val < 0 ? "-" + write_num_flt(type, fmt, -val) : commaify(flr(val)).replace(/^\d,\d{3}$/,"0$&").replace(/^\d*$/,function($$) { return "00," + ($$.length < 3 ? pad0(0,3-$$.length) : "") + $$; }) + "." + pad0(ri,r[1].length);
    }
    switch(fmt) {
        case "#,###": var x = commaify(pad0r(aval,0)); return x !== "0" ? sign + x : "";
        default:
    }
    throw new Error("unsupported format |" + fmt + "|");
}
function write_num_cm2(type, fmt, val){
    var idx = fmt.length - 1;
    while(fmt.charCodeAt(idx-1) === 44) --idx;
    return write_num(type, fmt.substr(0,idx), val / Math.pow(10,3*(fmt.length-idx)));
}
function write_num_pct2(type, fmt, val){
    var sfmt = fmt.replace(pct1,""), mul = fmt.length - sfmt.length;
    return write_num(type, sfmt, val * Math.pow(10,2*mul)) + fill("%",mul);
}
function write_num_exp2(fmt, val){
    var o;
    var idx = fmt.indexOf("E") - fmt.indexOf(".") - 1;
    if(fmt.match(/^#+0.0E\+0$/)) {
        var period = fmt.indexOf("."); if(period === -1) period=fmt.indexOf('E');
        var ee = Math.floor(Math.log(Math.abs(val))*Math.LOG10E)%period;
        if(ee < 0) ee += period;
        o = (val/Math.pow(10,ee)).toPrecision(idx+1+(period+ee)%period);
        if(!o.match(/[Ee]/)) {
            var fakee = Math.floor(Math.log(Math.abs(val))*Math.LOG10E);
            if(o.indexOf(".") === -1) o = o[0] + "." + o.substr(1) + "E+" + (fakee - o.length+ee);
            else o += "E+" + (fakee - ee);
            o = o.replace(/\+-/,"-");
        }
        o = o.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,function($$,$1,$2,$3) { return $1 + $2 + $3.substr(0,(period+ee)%period) + "." + $3.substr(ee) + "E"; });
    } else o = val.toExponential(idx);
    if(fmt.match(/E\+00$/) && o.match(/e[+-]\d$/)) o = o.substr(0,o.length-1) + "0" + o[o.length-1];
    if(fmt.match(/E\-/) && o.match(/e\+/)) o = o.replace(/e\+/,"e");
    return o.replace("e","E");
}
function write_num_int(type, fmt, val) {
    if(type.charCodeAt(0) === 40 && !fmt.match(closeparen)) {
        var ffmt = fmt.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");
        if(val >= 0) return write_num_int('n', ffmt, val);
        return '(' + write_num_int('n', ffmt, -val) + ')';
    }
    if(fmt.charCodeAt(fmt.length - 1) === 44) return write_num_cm2(type, fmt, val);
    if(fmt.indexOf('%') !== -1) return write_num_pct2(type, fmt, val);
    if(fmt.indexOf('E') !== -1) return write_num_exp2(fmt, val);
    if(fmt.charCodeAt(0) === 36) return "$"+write_num_int(type,fmt.substr(fmt[1]==' '?2:1),val);
    var o;
    var r, ri, ff, aval = Math.abs(val), sign = val < 0 ? "-" : "";
    if(fmt.match(/^00+$/)) return sign + pad0(aval,fmt.length);
    if(fmt.match(/^[#?]+$/)) {
        o = (""+val); if(val === 0) o = "";
        return o.length > fmt.length ? o : hashq(fmt.substr(0,fmt.length-o.length)) + o;
    }
    if((r = fmt.match(frac1)) !== null) return write_num_f2(r, aval, sign);
    if(fmt.match(/^#+0+$/) !== null) return sign + pad0(aval,fmt.length - fmt.indexOf("0"));
    if((r = fmt.match(dec1)) !== null) {
        o = (""+val).replace(/^([^\.]+)$/,"$1."+r[1]).replace(/\.$/,"."+r[1]).replace(/\.(\d*)$/,function($$, $1) { return "." + $1 + fill("0", r[1].length-$1.length); });
        return fmt.indexOf("0.") !== -1 ? o : o.replace(/^0\./,".");
    }
    fmt = fmt.replace(/^#+([0.])/, "$1");
    if((r = fmt.match(/^(0*)\.(#*)$/)) !== null) {
        return sign + (""+aval).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,r[1].length?"0.":".");
    }
    if((r = fmt.match(/^#,##0(\.?)$/)) !== null) return sign + commaify((""+aval));
    if((r = fmt.match(/^#,##0\.([#0]*0)$/)) !== null) {
        return val < 0 ? "-" + write_num_int(type, fmt, -val) : commaify((""+val)) + "." + fill('0',r[1].length);
    }
    if((r = fmt.match(/^#,#*,#0/)) !== null) return write_num_int(type,fmt.replace(/^#,#*,/,""),val);
    if((r = fmt.match(/^([0#]+)(\\?-([0#]+))+$/)) !== null) {
        o = _strrev(write_num_int(type, fmt.replace(/[\\-]/g,""), val));
        ri = 0;
        return _strrev(_strrev(fmt.replace(/\\/g,"")).replace(/[0#]/g,function(x){return ri<o.length?o[ri++]:x==='0'?'0':"";}));
    }
    if(fmt.match(phone) !== null) {
        o = write_num_int(type, "##########", val);
        return "(" + o.substr(0,3) + ") " + o.substr(3, 3) + "-" + o.substr(6);
    }
    var oa = "";
    if((r = fmt.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/)) !== null) {
        ri = Math.min(r[4].length,7);
        ff = frac(aval, Math.pow(10,ri)-1, false);
        o = "" + sign;
        oa = write_num("n", r[1], ff[1]);
        if(oa[oa.length-1] == " ") oa = oa.substr(0,oa.length-1) + "0";
        o += oa + r[2] + "/" + r[3];
        oa = rpad_(ff[2],ri);
        if(oa.length < r[4].length) oa = hashq(r[4].substr(r[4].length-oa.length)) + oa;
        o += oa;
        return o;
    }
    if((r = fmt.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/)) !== null) {
        ri = Math.min(Math.max(r[1].length, r[4].length),7);
        ff = frac(aval, Math.pow(10,ri)-1, true);
        return sign + (ff[0]||(ff[1] ? "" : "0")) + " " + (ff[1] ? pad_(ff[1],ri) + r[2] + "/" + r[3] + rpad_(ff[2],ri): fill(" ", 2*ri+1 + r[2].length + r[3].length));
    }
    if((r = fmt.match(/^[#0?]+$/)) !== null) {
        o = "" + val;
        if(fmt.length <= o.length) return o;
        return hashq(fmt.substr(0,fmt.length-o.length)) + o;
    }
    if((r = fmt.match(/^([#0]+)\.([#0]+)$/)) !== null) {
        o = "" + val.toFixed(Math.min(r[2].length,10)).replace(/([^0])0+$/,"$1");
        ri = o.indexOf(".");
        var lres = fmt.indexOf(".") - ri, rres = fmt.length - o.length - lres;
        return hashq(fmt.substr(0,lres) + o + fmt.substr(fmt.length-rres));
    }
    if((r = fmt.match(/^00,000\.([#0]*0)$/)) !== null) {
        return val < 0 ? "-" + write_num_int(type, fmt, -val) : commaify(""+val).replace(/^\d,\d{3}$/,"0$&").replace(/^\d*$/,function($$) { return "00," + ($$.length < 3 ? pad0(0,3-$$.length) : "") + $$; }) + "." + pad0(0,r[1].length);
    }
    switch(fmt) {
        case "#,###": var x = commaify(""+aval); return x !== "0" ? sign + x : "";
        default:
    }
    throw new Error("unsupported format |" + fmt + "|");
}
return function write_num(type, fmt, val) {
    return (val|0) === val ? write_num_int(type, fmt, val) : write_num_flt(type, fmt, val);
};})();
function split_fmt(fmt) {
    var out = [];
    var in_str = false, cc;
    for(var i = 0, j = 0; i < fmt.length; ++i) switch((cc=fmt.charCodeAt(i))) {
        case 34: /* '"' */
            in_str = !in_str; break;
        case 95: case 42: case 92: /* '_' '*' '\\' */
            ++i; break;
        case 59: /* ';' */
            out[out.length] = fmt.substr(j,i-j);
            j = i+1;
    }
    out[out.length] = fmt.substr(j);
    if(in_str === true) throw new Error("Format |" + fmt + "| unterminated string ");
    return out;
}
SSF._split = split_fmt;
var abstime = /\[[HhMmSs]*\]/;
function eval_fmt(fmt, v, opts, flen) {
    var out = [], o = "", i = 0, c = "", lst='t', q, dt, j, cc;
    var hr='H';
    /* Tokenize */
    while(i < fmt.length) {
        switch((c = fmt[i])) {
            case 'G': /* General */
                if(!isgeneral(fmt, i)) throw new Error('unrecognized character ' + c + ' in ' +fmt);
                out[out.length] = {t:'G', v:'General'}; i+=7; break;
            case '"': /* Literal text */
                for(o="";(cc=fmt.charCodeAt(++i)) !== 34 && i < fmt.length;) o += String.fromCharCode(cc);
                out[out.length] = {t:'t', v:o}; ++i; break;
            case '\\': var w = fmt[++i], t = (w === "(" || w === ")") ? w : 't';
                out[out.length] = {t:t, v:w}; ++i; break;
            case '_': out[out.length] = {t:'t', v:" "}; i+=2; break;
            case '@': /* Text Placeholder */
                out[out.length] = {t:'T', v:v}; ++i; break;
            case 'B': case 'b':
                if(fmt[i+1] === "1" || fmt[i+1] === "2") {
          if(dt==null) { dt=parse_date_code(v, opts, fmt[i+1] === "2"); if(dt==null) return ""; }
                    out[out.length] = {t:'X', v:fmt.substr(i,2)}; lst = c; i+=2; break;
                }
                /* falls through */
            case 'M': case 'D': case 'Y': case 'H': case 'S': case 'E':
                c = c.toLowerCase();
                /* falls through */
            case 'm': case 'd': case 'y': case 'h': case 's': case 'e': case 'g':
                if(v < 0) return "";
                if(dt==null) { dt=parse_date_code(v, opts); if(dt==null) return ""; }
                o = c; while(++i<fmt.length && fmt[i].toLowerCase() === c) o+=c;
                if(c === 'm' && lst.toLowerCase() === 'h') c = 'M'; /* m = minute */
                if(c === 'h') c = hr;
                out[out.length] = {t:c, v:o}; lst = c; break;
            case 'A':
                q={t:c, v:"A"};
                if(dt==null) dt=parse_date_code(v, opts);
        if(fmt.substr(i, 3) === "A/P") { if(dt!=null) q.v = dt.H >= 12 ? "P" : "A"; q.t = 'T'; hr='h';i+=3;}
        else if(fmt.substr(i,5) === "AM/PM") { if(dt!=null) q.v = dt.H >= 12 ? "PM" : "AM"; q.t = 'T'; i+=5; hr='h'; }
                else { q.t = "t"; ++i; }
                if(dt==null && q.t === 'T') return "";
                out[out.length] = q; lst = c; break;
            case '[':
                o = c;
                while(fmt[i++] !== ']' && i < fmt.length) o += fmt[i];
                if(o.substr(-1) !== ']') throw 'unterminated "[" block: |' + o + '|';
                if(o.match(abstime)) {
                    if(dt==null) { dt=parse_date_code(v, opts); if(dt==null) return ""; }
                    out[out.length] = {t:'Z', v:o.toLowerCase()};
                } else { o=""; }
                break;
            /* Numbers */
            case '.':
                if(dt != null) {
                    o = c; while((c=fmt[++i]) === "0") o += c;
                    out[out.length] = {t:'s', v:o}; break;
                }
                /* falls through */
            case '0': case '#':
                o = c; while("0#?.,E+-%".indexOf(c=fmt[++i]) > -1 || c=='\\' && fmt[i+1] == "-" && "0#".indexOf(fmt[i+2])>-1) o += c;
                out[out.length] = {t:'n', v:o}; break;
            case '?':
                o = c; while(fmt[++i] === c) o+=c;
                q={t:c, v:o}; out[out.length] = q; lst = c; break;
            case '*': ++i; if(fmt[i] == ' ' || fmt[i] == '*') ++i; break; // **
            case '(': case ')': out[out.length] = {t:(flen===1?'t':c), v:c}; ++i; break;
            case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9':
                o = c; while("0123456789".indexOf(fmt[++i]) > -1) o+=fmt[i];
                out[out.length] = {t:'D', v:o}; break;
            case ' ': out[out.length] = {t:c, v:c}; ++i; break;
            default:
                if(",$-+/():!^&'~{}<>=€acfijklopqrtuvwxz".indexOf(c) === -1) throw new Error('unrecognized character ' + c + ' in ' + fmt);
                out[out.length] = {t:'t', v:c}; ++i; break;
        }
    }
    var bt = 0, ss0 = 0, ssm;
    for(i=out.length-1, lst='t'; i >= 0; --i) {
        switch(out[i].t) {
            case 'h': case 'H': out[i].t = hr; lst='h'; if(bt < 1) bt = 1; break;
            case 's':
                if((ssm=out[i].v.match(/\.0+$/))) ss0=Math.max(ss0,ssm[0].length-1);
                if(bt < 3) bt = 3;
            /* falls through */
            case 'd': case 'y': case 'M': case 'e': lst=out[i].t; break;
            case 'm': if(lst === 's') { out[i].t = 'M'; if(bt < 2) bt = 2; } break;
            case 'X': if(out[i].v === "B2");
                break;
            case 'Z':
                if(bt < 1 && out[i].v.match(/[Hh]/)) bt = 1;
                if(bt < 2 && out[i].v.match(/[Mm]/)) bt = 2;
                if(bt < 3 && out[i].v.match(/[Ss]/)) bt = 3;
        }
    }
    switch(bt) {
        case 0: break;
        case 1:
            if(dt.u >= 0.5) { dt.u = 0; ++dt.S; }
            if(dt.S >=  60) { dt.S = 0; ++dt.M; }
            if(dt.M >=  60) { dt.M = 0; ++dt.H; }
            break;
        case 2:
            if(dt.u >= 0.5) { dt.u = 0; ++dt.S; }
            if(dt.S >=  60) { dt.S = 0; ++dt.M; }
            break;
    }
    /* replace fields */
    var nstr = "", jj;
    for(i=0; i < out.length; ++i) {
        switch(out[i].t) {
            case 't': case 'T': case ' ': case 'D': break;
            case 'X': out[i] = undefined; break;
            case 'd': case 'm': case 'y': case 'h': case 'H': case 'M': case 's': case 'e': case 'b': case 'Z':
                out[i].v = write_date(out[i].t.charCodeAt(0), out[i].v, dt, ss0);
                out[i].t = 't'; break;
            case 'n': case '(': case '?':
                jj = i+1;
                while(out[jj] != null && (
                    (c=out[jj].t) === "?" || c === "D" ||
                    (c === " " || c === "t") && out[jj+1] != null && (out[jj+1].t === '?' || out[jj+1].t === "t" && out[jj+1].v === '/') ||
                    out[i].t === '(' && (c === ' ' || c === 'n' || c === ')') ||
                    c === 't' && (out[jj].v === '/' || '$€'.indexOf(out[jj].v) > -1 || out[jj].v === ' ' && out[jj+1] != null && out[jj+1].t == '?')
                )) {
                    out[i].v += out[jj].v;
                    out[jj] = undefined; ++jj;
                }
                nstr += out[i].v;
                i = jj-1; break;
            case 'G': out[i].t = 't'; out[i].v = general_fmt(v,opts); break;
        }
    }
    var vv = "", myv, ostr;
    if(nstr.length > 0) {
        myv = (v<0&&nstr.charCodeAt(0) === 45 ? -v : v); /* '-' */
        ostr = write_num(nstr.charCodeAt(0) === 40 ? '(' : 'n', nstr, myv); /* '(' */
        jj=ostr.length-1;
        var decpt = out.length;
        for(i=0; i < out.length; ++i) if(out[i] != null && out[i].v.indexOf(".") > -1) { decpt = i; break; }
        var lasti=out.length;
        if(decpt === out.length && ostr.indexOf("E") === -1) {
            for(i=out.length-1; i>= 0;--i) {
                if(out[i] == null || 'n?('.indexOf(out[i].t) === -1) continue;
                if(jj>=out[i].v.length-1) { jj -= out[i].v.length; out[i].v = ostr.substr(jj+1, out[i].v.length); }
                else if(jj < 0) out[i].v = "";
                else { out[i].v = ostr.substr(0, jj+1); jj = -1; }
                out[i].t = 't';
                lasti = i;
            }
            if(jj>=0 && lasti<out.length) out[lasti].v = ostr.substr(0,jj+1) + out[lasti].v;
        }
        else if(decpt !== out.length && ostr.indexOf("E") === -1) {
            jj = ostr.indexOf(".")-1;
            for(i=decpt; i>= 0; --i) {
                if(out[i] == null || 'n?('.indexOf(out[i].t) === -1) continue;
                j=out[i].v.indexOf(".")>-1&&i===decpt?out[i].v.indexOf(".")-1:out[i].v.length-1;
                vv = out[i].v.substr(j+1);
                for(; j>=0; --j) {
                    if(jj>=0 && (out[i].v[j] === "0" || out[i].v[j] === "#")) vv = ostr[jj--] + vv;
                }
                out[i].v = vv;
                out[i].t = 't';
                lasti = i;
            }
            if(jj>=0 && lasti<out.length) out[lasti].v = ostr.substr(0,jj+1) + out[lasti].v;
            jj = ostr.indexOf(".")+1;
            for(i=decpt; i<out.length; ++i) {
                if(out[i] == null || 'n?('.indexOf(out[i].t) === -1 && i !== decpt ) continue;
                j=out[i].v.indexOf(".")>-1&&i===decpt?out[i].v.indexOf(".")+1:0;
                vv = out[i].v.substr(0,j);
                for(; j<out[i].v.length; ++j) {
                    if(jj<ostr.length) vv += ostr[jj++];
                }
                out[i].v = vv;
                out[i].t = 't';
                lasti = i;
            }
        }
    }
    for(i=0; i<out.length; ++i) if(out[i] != null && 'n(?'.indexOf(out[i].t)>-1) {
        myv = (flen >1 && v < 0 && i>0 && out[i-1].v === "-" ? -v:v);
        out[i].v = write_num(out[i].t, out[i].v, myv);
        out[i].t = 't';
    }
    var retval = "";
    for(i=0; i !== out.length; ++i) if(out[i] != null) retval += out[i].v;
    return retval;
}
SSF._eval = eval_fmt;
var cfregex = /\[[=<>]/;
var cfregex2 = /\[([=<>]*)(-?\d+\.?\d*)\]/;
function chkcond(v, rr) {
    if(rr == null) return false;
    var thresh = parseFloat(rr[2]);
    switch(rr[1]) {
        case "=":  if(v == thresh) return true; break;
        case ">":  if(v >  thresh) return true; break;
        case "<":  if(v <  thresh) return true; break;
        case "<>": if(v != thresh) return true; break;
        case ">=": if(v >= thresh) return true; break;
        case "<=": if(v <= thresh) return true; break;
    }
    return false;
}
function choose_fmt(f, v) {
    var fmt = split_fmt(f);
    var l = fmt.length, lat = fmt[l-1].indexOf("@");
    if(l<4 && lat>-1) --l;
    if(fmt.length > 4) throw "cannot find right format for |" + fmt + "|";
    if(typeof v !== "number") return [4, fmt.length === 4 || lat>-1?fmt[fmt.length-1]:"@"];
    switch(fmt.length) {
        case 1: fmt = lat>-1 ? ["General", "General", "General", fmt[0]] : [fmt[0], fmt[0], fmt[0], "@"]; break;
        case 2: fmt = lat>-1 ? [fmt[0], fmt[0], fmt[0], fmt[1]] : [fmt[0], fmt[1], fmt[0], "@"]; break;
        case 3: fmt = lat>-1 ? [fmt[0], fmt[1], fmt[0], fmt[2]] : [fmt[0], fmt[1], fmt[2], "@"]; break;
        case 4: break;
    }
    var ff = v > 0 ? fmt[0] : v < 0 ? fmt[1] : fmt[2];
    if(fmt[0].indexOf("[") === -1 && fmt[1].indexOf("[") === -1) return [l, ff];
    if(fmt[0].match(cfregex) != null || fmt[1].match(cfregex) != null) {
        var m1 = fmt[0].match(cfregex2);
        var m2 = fmt[1].match(cfregex2);
        return chkcond(v, m1) ? [l, fmt[0]] : chkcond(v, m2) ? [l, fmt[1]] : [l, fmt[m1 != null && m2 != null ? 2 : 1]];
    }
    return [l, ff];
}
function format(fmt,v,o) {
    fixopts(o != null ? o : (o=[]));
    var sfmt = "";
    switch(typeof fmt) {
        case "string": sfmt = fmt; break;
        case "number": sfmt = (o.table != null ? o.table : table_fmt)[fmt]; break;
    }
    if(isgeneral(sfmt,0)) return general_fmt(v, o);
    var f = choose_fmt(sfmt, v);
    if(isgeneral(f[1])) return general_fmt(v, o);
    if(v === true) v = "TRUE"; else if(v === false) v = "FALSE";
    else if(v === "" || v == null) return "";
    return eval_fmt(f[1], v, o, f[0]);
}
SSF._table = table_fmt;
SSF.load = function load_entry(fmt, idx) { table_fmt[idx] = fmt; };
SSF.format = format;
SSF.get_table = function get_table() { return table_fmt; };
SSF.load_table = function load_table(tbl) { for(var i=0; i!=0x0188; ++i) if(tbl[i] !== undefined) SSF.load(tbl[i], i); };
};
make_ssf(SSF);
Source/UBCS-WEB/src/config/js-xlsx-master/bits/11_ssfutils.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
/* map from xlml named formats to SSF TODO: localize */
var XLMLFormatMap = {
    "General Number": "General",
    "General Date": SSF._table[22],
    "Long Date": "dddd, mmmm dd, yyyy",
    "Medium Date": SSF._table[15],
    "Short Date": SSF._table[14],
    "Long Time": SSF._table[19],
    "Medium Time": SSF._table[18],
    "Short Time": SSF._table[20],
    "Currency": '"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',
    "Fixed": SSF._table[2],
    "Standard": SSF._table[4],
    "Percent": SSF._table[10],
    "Scientific": SSF._table[11],
    "Yes/No": '"Yes";"Yes";"No";@',
    "True/False": '"True";"True";"False";@',
    "On/Off": '"Yes";"Yes";"No";@'
};
Source/UBCS-WEB/src/config/js-xlsx-master/bits/18_cfb.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,383 @@
var DO_NOT_EXPORT_CFB = true;
/* cfb.js (C) 2013-2014 SheetJS -- http://sheetjs.com */
/* vim: set ts=2: */
/*jshint eqnull:true */
/* [MS-CFB] v20130118 */
var CFB = (function _CFB(){
var exports = {};
exports.version = '0.10.2';
function parse(file) {
var mver = 3; // major version
var ssz = 512; // sector size
var nmfs = 0; // number of mini FAT sectors
var ndfs = 0; // number of DIFAT sectors
var dir_start = 0; // first directory sector location
var minifat_start = 0; // first mini FAT sector location
var difat_start = 0; // first mini FAT sector location
var fat_addrs = []; // locations of FAT sectors
/* [MS-CFB] 2.2 Compound File Header */
var blob = file.slice(0,512);
prep_blob(blob, 0);
/* major version */
var mv = check_get_mver(blob);
mver = mv[0];
switch(mver) {
    case 3: ssz = 512; break; case 4: ssz = 4096; break;
    default: throw "Major Version: Expected 3 or 4 saw " + mver;
}
/* reprocess header */
if(ssz !== 512) { blob = file.slice(0,ssz); prep_blob(blob, 28 /* blob.l */); }
/* Save header for final object */
var header = file.slice(0,ssz);
check_shifts(blob, mver);
// Number of Directory Sectors
var nds = blob.read_shift(4, 'i');
if(mver === 3 && nds !== 0) throw '# Directory Sectors: Expected 0 saw ' + nds;
// Number of FAT Sectors
//var nfs = blob.read_shift(4, 'i');
blob.l += 4;
// First Directory Sector Location
dir_start = blob.read_shift(4, 'i');
// Transaction Signature
blob.l += 4;
// Mini Stream Cutoff Size
blob.chk('00100000', 'Mini Stream Cutoff Size: ');
// First Mini FAT Sector Location
minifat_start = blob.read_shift(4, 'i');
// Number of Mini FAT Sectors
nmfs = blob.read_shift(4, 'i');
// First DIFAT sector location
difat_start = blob.read_shift(4, 'i');
// Number of DIFAT Sectors
ndfs = blob.read_shift(4, 'i');
// Grab FAT Sector Locations
for(var q, j = 0; j < 109; ++j) { /* 109 = (512 - blob.l)>>>2; */
    q = blob.read_shift(4, 'i');
    if(q<0) break;
    fat_addrs[j] = q;
}
/** Break the file up into sectors */
var sectors = sectorify(file, ssz);
sleuth_fat(difat_start, ndfs, sectors, ssz, fat_addrs);
/** Chains */
var sector_list = make_sector_list(sectors, dir_start, fat_addrs, ssz);
sector_list[dir_start].name = "!Directory";
if(nmfs > 0 && minifat_start !== ENDOFCHAIN) sector_list[minifat_start].name = "!MiniFAT";
sector_list[fat_addrs[0]].name = "!FAT";
sector_list.fat_addrs = fat_addrs;
sector_list.ssz = ssz;
/* [MS-CFB] 2.6.1 Compound File Directory Entry */
var files = {}, Paths = [], FileIndex = [], FullPaths = [], FullPathDir = {};
read_directory(dir_start, sector_list, sectors, Paths, nmfs, files, FileIndex);
build_full_paths(FileIndex, FullPathDir, FullPaths, Paths);
var root_name = Paths.shift();
Paths.root = root_name;
/* [MS-CFB] 2.6.4 (Unicode 3.0.1 case conversion) */
var find_path = make_find_path(FullPaths, Paths, FileIndex, files, root_name);
return {
    raw: {header: header, sectors: sectors},
    FileIndex: FileIndex,
    FullPaths: FullPaths,
    FullPathDir: FullPathDir,
    find: find_path
};
} // parse
/* [MS-CFB] 2.2 Compound File Header -- read up to major version */
function check_get_mver(blob) {
    // header signature 8
    blob.chk(HEADER_SIGNATURE, 'Header Signature: ');
    // clsid 16
    blob.chk(HEADER_CLSID, 'CLSID: ');
    // minor version 2
    var mver = blob.read_shift(2, 'u');
    return [blob.read_shift(2,'u'), mver];
}
function check_shifts(blob, mver) {
    var shift = 0x09;
    // Byte Order
    blob.chk('feff', 'Byte Order: ');
    // Sector Shift
    switch((shift = blob.read_shift(2))) {
        case 0x09: if(mver !== 3) throw 'MajorVersion/SectorShift Mismatch'; break;
        case 0x0c: if(mver !== 4) throw 'MajorVersion/SectorShift Mismatch'; break;
        default: throw 'Sector Shift: Expected 9 or 12 saw ' + shift;
    }
    // Mini Sector Shift
    blob.chk('0600', 'Mini Sector Shift: ');
    // Reserved
    blob.chk('000000000000', 'Reserved: ');
}
/** Break the file up into sectors */
function sectorify(file, ssz) {
    var nsectors = Math.ceil(file.length/ssz)-1;
    var sectors = new Array(nsectors);
    for(var i=1; i < nsectors; ++i) sectors[i-1] = file.slice(i*ssz,(i+1)*ssz);
    sectors[nsectors-1] = file.slice(nsectors*ssz);
    return sectors;
}
/* [MS-CFB] 2.6.4 Red-Black Tree */
function build_full_paths(FI, FPD, FP, Paths) {
    var i = 0, L = 0, R = 0, C = 0, j = 0, pl = Paths.length;
    var dad = new Array(pl), q = new Array(pl);
    for(; i < pl; ++i) { dad[i]=q[i]=i; FP[i]=Paths[i]; }
    for(; j < q.length; ++j) {
        i = q[j];
        L = FI[i].L; R = FI[i].R; C = FI[i].C;
        if(dad[i] === i) {
            if(L !== -1 /*NOSTREAM*/ && dad[L] !== L) dad[i] = dad[L];
            if(R !== -1 && dad[R] !== R) dad[i] = dad[R];
        }
        if(C !== -1 /*NOSTREAM*/) dad[C] = i;
        if(L !== -1) { dad[L] = dad[i]; q.push(L); }
        if(R !== -1) { dad[R] = dad[i]; q.push(R); }
    }
    for(i=1; i !== pl; ++i) if(dad[i] === i) {
        if(R !== -1 /*NOSTREAM*/ && dad[R] !== R) dad[i] = dad[R];
        else if(L !== -1 && dad[L] !== L) dad[i] = dad[L];
    }
    for(i=1; i < pl; ++i) {
        if(FI[i].type === 0 /* unknown */) continue;
        j = dad[i];
        if(j === 0) FP[i] = FP[0] + "/" + FP[i];
        else while(j !== 0) {
            FP[i] = FP[j] + "/" + FP[i];
            j = dad[j];
        }
        dad[i] = 0;
    }
    FP[0] += "/";
    for(i=1; i < pl; ++i) {
        if(FI[i].type !== 2 /* stream */) FP[i] += "/";
        FPD[FP[i]] = FI[i];
    }
}
/* [MS-CFB] 2.6.4 */
function make_find_path(FullPaths, Paths, FileIndex, files, root_name) {
    var UCFullPaths = new Array(FullPaths.length);
    var UCPaths = new Array(Paths.length), i;
    for(i = 0; i < FullPaths.length; ++i) UCFullPaths[i] = FullPaths[i].toUpperCase().replace(chr0,'').replace(chr1,'!');
    for(i = 0; i < Paths.length; ++i) UCPaths[i] = Paths[i].toUpperCase().replace(chr0,'').replace(chr1,'!');
    return function find_path(path) {
        var k;
        if(path.charCodeAt(0) === 47 /* "/" */) { k=true; path = root_name + path; }
        else k = path.indexOf("/") !== -1;
        var UCPath = path.toUpperCase().replace(chr0,'').replace(chr1,'!');
        var w = k === true ? UCFullPaths.indexOf(UCPath) : UCPaths.indexOf(UCPath);
        if(w === -1) return null;
        return k === true ? FileIndex[w] : files[Paths[w]];
    };
}
/** Chase down the rest of the DIFAT chain to build a comprehensive list
    DIFAT chains by storing the next sector number as the last 32 bytes */
function sleuth_fat(idx, cnt, sectors, ssz, fat_addrs) {
    var q;
    if(idx === ENDOFCHAIN) {
        if(cnt !== 0) throw "DIFAT chain shorter than expected";
    } else if(idx !== -1 /*FREESECT*/) {
        var sector = sectors[idx], m = (ssz>>>2)-1;
        for(var i = 0; i < m; ++i) {
            if((q = __readInt32LE(sector,i*4)) === ENDOFCHAIN) break;
            fat_addrs.push(q);
        }
        sleuth_fat(__readInt32LE(sector,ssz-4),cnt - 1, sectors, ssz, fat_addrs);
    }
}
/** Follow the linked list of sectors for a given starting point */
function get_sector_list(sectors, start, fat_addrs, ssz, chkd) {
    var sl = sectors.length;
    var buf, buf_chain;
    if(!chkd) chkd = new Array(sl);
    var modulus = ssz - 1, j, jj;
    buf = [];
    buf_chain = [];
    for(j=start; j>=0;) {
        chkd[j] = true;
        buf[buf.length] = j;
        buf_chain.push(sectors[j]);
        var addr = fat_addrs[Math.floor(j*4/ssz)];
        jj = ((j*4) & modulus);
        if(ssz < 4 + jj) throw "FAT boundary crossed: " + j + " 4 "+ssz;
        j = __readInt32LE(sectors[addr], jj);
    }
    return {nodes: buf, data:__toBuffer([buf_chain])};
}
/** Chase down the sector linked lists */
function make_sector_list(sectors, dir_start, fat_addrs, ssz) {
    var sl = sectors.length, sector_list = new Array(sl);
    var chkd = new Array(sl), buf, buf_chain;
    var modulus = ssz - 1, i, j, k, jj;
    for(i=0; i < sl; ++i) {
        buf = [];
        k = (i + dir_start); if(k >= sl) k-=sl;
        if(chkd[k] === true) continue;
        buf_chain = [];
        for(j=k; j>=0;) {
            chkd[j] = true;
            buf[buf.length] = j;
            buf_chain.push(sectors[j]);
            var addr = fat_addrs[Math.floor(j*4/ssz)];
            jj = ((j*4) & modulus);
            if(ssz < 4 + jj) throw "FAT boundary crossed: " + j + " 4 "+ssz;
            j = __readInt32LE(sectors[addr], jj);
        }
        sector_list[k] = {nodes: buf, data:__toBuffer([buf_chain])};
    }
    return sector_list;
}
/* [MS-CFB] 2.6.1 Compound File Directory Entry */
function read_directory(dir_start, sector_list, sectors, Paths, nmfs, files, FileIndex) {
    var blob;
    var minifat_store = 0, pl = (Paths.length?2:0);
    var sector = sector_list[dir_start].data;
    var i = 0, namelen = 0, name, o, ctime, mtime;
    for(; i < sector.length; i+= 128) {
        blob = sector.slice(i, i+128);
        prep_blob(blob, 64);
        namelen = blob.read_shift(2);
        if(namelen === 0) continue;
        name = __utf16le(blob,0,namelen-pl);
        Paths.push(name);
        o = {
            name:  name,
            type:  blob.read_shift(1),
            color: blob.read_shift(1),
            L:     blob.read_shift(4, 'i'),
            R:     blob.read_shift(4, 'i'),
            C:     blob.read_shift(4, 'i'),
            clsid: blob.read_shift(16),
            state: blob.read_shift(4, 'i')
        };
        ctime = blob.read_shift(2) + blob.read_shift(2) + blob.read_shift(2) + blob.read_shift(2);
        if(ctime !== 0) {
            o.ctime = ctime; o.ct = read_date(blob, blob.l-8);
        }
        mtime = blob.read_shift(2) + blob.read_shift(2) + blob.read_shift(2) + blob.read_shift(2);
        if(mtime !== 0) {
            o.mtime = mtime; o.mt = read_date(blob, blob.l-8);
        }
        o.start = blob.read_shift(4, 'i');
        o.size = blob.read_shift(4, 'i');
        if(o.type === 5) { /* root */
            minifat_store = o.start;
            if(nmfs > 0 && minifat_store !== ENDOFCHAIN) sector_list[minifat_store].name = "!StreamData";
            /*minifat_size = o.size;*/
        } else if(o.size >= 4096 /* MSCSZ */) {
            o.storage = 'fat';
            if(sector_list[o.start] === undefined) sector_list[o.start] = get_sector_list(sectors, o.start, sector_list.fat_addrs, sector_list.ssz);
            sector_list[o.start].name = o.name;
            o.content = sector_list[o.start].data.slice(0,o.size);
            prep_blob(o.content, 0);
        } else {
            o.storage = 'minifat';
            if(minifat_store !== ENDOFCHAIN && o.start !== ENDOFCHAIN) {
                o.content = sector_list[minifat_store].data.slice(o.start*MSSZ,o.start*MSSZ+o.size);
                prep_blob(o.content, 0);
            }
        }
        files[name] = o;
        FileIndex.push(o);
    }
}
function read_date(blob, offset) {
    return new Date(( ( (__readUInt32LE(blob,offset+4)/1e7)*Math.pow(2,32)+__readUInt32LE(blob,offset)/1e7 ) - 11644473600)*1000);
}
var fs;
function readFileSync(filename, options) {
    if(fs === undefined) fs = require('fs');
    return parse(fs.readFileSync(filename), options);
}
function readSync(blob, options) {
    switch(options !== undefined && options.type !== undefined ? options.type : "base64") {
        case "file": return readFileSync(blob, options);
        case "base64": return parse(s2a(Base64.decode(blob)), options);
        case "binary": return parse(s2a(blob), options);
    }
    return parse(blob);
}
/** CFB Constants */
var MSSZ = 64; /* Mini Sector Size = 1<<6 */
//var MSCSZ = 4096; /* Mini Stream Cutoff Size */
/* 2.1 Compound File Sector Numbers and Types */
var ENDOFCHAIN = -2;
/* 2.2 Compound File Header */
var HEADER_SIGNATURE = 'd0cf11e0a1b11ae1';
var HEADER_CLSID = '00000000000000000000000000000000';
var consts = {
    /* 2.1 Compund File Sector Numbers and Types */
    MAXREGSECT: -6,
    DIFSECT: -4,
    FATSECT: -3,
    ENDOFCHAIN: ENDOFCHAIN,
    FREESECT: -1,
    /* 2.2 Compound File Header */
    HEADER_SIGNATURE: HEADER_SIGNATURE,
    HEADER_MINOR_VERSION: '3e00',
    MAXREGSID: -6,
    NOSTREAM: -1,
    HEADER_CLSID: HEADER_CLSID,
    /* 2.6.1 Compound File Directory Entry */
    EntryTypes: ['unknown','storage','stream','lockbytes','property','root']
};
exports.read = readSync;
exports.parse = parse;
exports.utils = {
    ReadShift: ReadShift,
    CheckField: CheckField,
    prep_blob: prep_blob,
    bconcat: bconcat,
    consts: consts
};
return exports;
})();
if(typeof require !== 'undefined' && typeof module !== 'undefined' && typeof DO_NOT_EXPORT_CFB === 'undefined') { module.exports = CFB; }
Source/UBCS-WEB/src/config/js-xlsx-master/bits/20_jsutils.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,44 @@
function isval(x) { return x !== undefined && x !== null; }
function keys(o) { return Object.keys(o); }
function evert_key(obj, key) {
    var o = [], K = keys(obj);
    for(var i = 0; i !== K.length; ++i) o[obj[K[i]][key]] = K[i];
    return o;
}
function evert(obj) {
    var o = [], K = keys(obj);
    for(var i = 0; i !== K.length; ++i) o[obj[K[i]]] = K[i];
    return o;
}
function evert_num(obj) {
    var o = [], K = keys(obj);
    for(var i = 0; i !== K.length; ++i) o[obj[K[i]]] = parseInt(K[i],10);
    return o;
}
function evert_arr(obj) {
    var o = [], K = keys(obj);
    for(var i = 0; i !== K.length; ++i) {
        if(o[obj[K[i]]] == null) o[obj[K[i]]] = [];
        o[obj[K[i]]].push(K[i]);
    }
    return o;
}
/* TODO: date1904 logic */
function datenum(v, date1904) {
    if(date1904) v+=1462;
    var epoch = Date.parse(v);
    return (epoch + 2209161600000) / (24 * 60 * 60 * 1000);
}
function cc2str(arr) {
    var o = "";
    for(var i = 0; i != arr.length; ++i) o += String.fromCharCode(arr[i]);
    return o;
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/21_ziputils.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,49 @@
function getdata(data) {
    if(!data) return null;
    if(data.name.substr(-4) === ".bin") {
        if(data.data) return char_codes(data.data);
        if(data.asNodeBuffer && has_buf) return data.asNodeBuffer();
        if(data._data && data._data.getContent) return Array.prototype.slice.call(data._data.getContent());
    } else {
        if(data.data) return data.name.substr(-4) !== ".bin" ? debom_xml(data.data) : char_codes(data.data);
        if(data.asNodeBuffer && has_buf) return debom_xml(data.asNodeBuffer().toString('binary'));
        if(data.asBinary) return debom_xml(data.asBinary());
        if(data._data && data._data.getContent) return debom_xml(cc2str(Array.prototype.slice.call(data._data.getContent(),0)));
    }
    return null;
}
function safegetzipfile(zip, file) {
    var f = file; if(zip.files[f]) return zip.files[f];
    var lowerCaseFiles = {};
    for (var key in zip.files) {
        lowerCaseFiles[key.toLowerCase()] = zip.files[key];
    }
    f = file.toLowerCase(); if(lowerCaseFiles[f]) return lowerCaseFiles[f];
    f = f.replace(/\//g,'\\'); if(lowerCaseFiles[f]) return lowerCaseFiles[f];
    return null;
}
function getzipfile(zip, file) {
    var o = safegetzipfile(zip, file);
    if(o == null) throw new Error("Cannot find file " + file + " in zip");
    return o;
}
function getzipdata(zip, file, safe) {
    if(!safe) return getdata(getzipfile(zip, file));
    if(!file) return null;
    try { return getzipdata(zip, file); } catch(e) { return null; }
}
var _fs, jszip;
if(typeof JSZip !== 'undefined') jszip = JSZip;
if (typeof exports !== 'undefined') {
    if (typeof module !== 'undefined' && module.exports) {
        if(has_buf && typeof jszip === 'undefined') jszip = require('js'+'zip');
        if(typeof jszip === 'undefined') jszip = require('./js'+'zip').JSZip;
        _fs = require('f'+'s');
    }
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/22_xmlutils.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,171 @@
var attregexg=/([\w:]+)=((?:")([^"]*)(?:")|(?:')([^']*)(?:'))/g;
var tagregex=/<[^>]*>/g;
var nsregex=/<\w*:/, nsregex2 = /<(\/?)\w+:/;
function parsexmltag(tag, skip_root) {
    var z = [];
    var eq = 0, c = 0;
    for(; eq !== tag.length; ++eq) if((c = tag.charCodeAt(eq)) === 32 || c === 10 || c === 13) break;
    if(!skip_root) z[0] = tag.substr(0, eq);
    if(eq === tag.length) return z;
    var m = tag.match(attregexg), j=0, w="", v="", i=0, q="", cc="";
    if(m) for(i = 0; i != m.length; ++i) {
        cc = m[i];
        for(c=0; c != cc.length; ++c) if(cc.charCodeAt(c) === 61) break;
        q = cc.substr(0,c); v = cc.substring(c+2, cc.length-1);
        for(j=0;j!=q.length;++j) if(q.charCodeAt(j) === 58) break;
        if(j===q.length) z[q] = v;
        else z[(j===5 && q.substr(0,5)==="xmlns"?"xmlns":"")+q.substr(j+1)] = v;
    }
    return z;
}
function strip_ns(x) { return x.replace(nsregex2, "<$1"); }
var encodings = {
    '&quot;': '"',
    '&apos;': "'",
    '&gt;': '>',
    '&lt;': '<',
    '&amp;': '&'
};
var rencoding = evert(encodings);
var rencstr = "&<>'\"".split("");
// TODO: CP remap (need to read file version to determine OS)
var unescapexml = (function() {
    var encregex = /&[a-z]*;/g, coderegex = /_x([\da-fA-F]+)_/g;
    return function unescapexml(text){
        var s = text + '';
        return s.replace(encregex, function($$) { return encodings[$$]; }).replace(coderegex,function(m,c) {return String.fromCharCode(parseInt(c,16));});
    };
})();
var decregex=/[&<>'"]/g, charegex = /[\u0000-\u0008\u000b-\u001f]/g;
function escapexml(text){
    var s = text + '';
    return s.replace(decregex, function(y) { return rencoding[y]; }).replace(charegex,function(s) { return "_x" + ("000"+s.charCodeAt(0).toString(16)).substr(-4) + "_";});
}
/* TODO: handle codepages */
var xlml_fixstr = (function() {
    var entregex = /&#(\d+);/g;
    function entrepl($$,$1) { return String.fromCharCode(parseInt($1,10)); }
    return function xlml_fixstr(str) { return str.replace(entregex,entrepl); };
})();
function parsexmlbool(value, tag) {
    switch(value) {
        case '1': case 'true': case 'TRUE': return true;
        /* case '0': case 'false': case 'FALSE':*/
        default: return false;
    }
}
var utf8read = function utf8reada(orig) {
    var out = "", i = 0, c = 0, d = 0, e = 0, f = 0, w = 0;
    while (i < orig.length) {
        c = orig.charCodeAt(i++);
        if (c < 128) { out += String.fromCharCode(c); continue; }
        d = orig.charCodeAt(i++);
        if (c>191 && c<224) { out += String.fromCharCode(((c & 31) << 6) | (d & 63)); continue; }
        e = orig.charCodeAt(i++);
        if (c < 240) { out += String.fromCharCode(((c & 15) << 12) | ((d & 63) << 6) | (e & 63)); continue; }
        f = orig.charCodeAt(i++);
        w = (((c & 7) << 18) | ((d & 63) << 12) | ((e & 63) << 6) | (f & 63))-65536;
        out += String.fromCharCode(0xD800 + ((w>>>10)&1023));
        out += String.fromCharCode(0xDC00 + (w&1023));
    }
    return out;
};
if(has_buf) {
    var utf8readb = function utf8readb(data) {
        var out = new Buffer(2*data.length), w, i, j = 1, k = 0, ww=0, c;
        for(i = 0; i < data.length; i+=j) {
            j = 1;
            if((c=data.charCodeAt(i)) < 128) w = c;
            else if(c < 224) { w = (c&31)*64+(data.charCodeAt(i+1)&63); j=2; }
            else if(c < 240) { w=(c&15)*4096+(data.charCodeAt(i+1)&63)*64+(data.charCodeAt(i+2)&63); j=3; }
            else { j = 4;
                w = (c & 7)*262144+(data.charCodeAt(i+1)&63)*4096+(data.charCodeAt(i+2)&63)*64+(data.charCodeAt(i+3)&63);
                w -= 65536; ww = 0xD800 + ((w>>>10)&1023); w = 0xDC00 + (w&1023);
            }
            if(ww !== 0) { out[k++] = ww&255; out[k++] = ww>>>8; ww = 0; }
            out[k++] = w%256; out[k++] = w>>>8;
        }
        out.length = k;
        return out.toString('ucs2');
    };
    var corpus = "foo bar baz\u00e2\u0098\u0083\u00f0\u009f\u008d\u00a3";
    if(utf8read(corpus) == utf8readb(corpus)) utf8read = utf8readb;
    var utf8readc = function utf8readc(data) { return Buffer(data, 'binary').toString('utf8'); };
    if(utf8read(corpus) == utf8readc(corpus)) utf8read = utf8readc;
}
// matches <foo>...</foo> extracts content
var matchtag = (function() {
    var mtcache = {};
    return function matchtag(f,g) {
        var t = f+"|"+g;
        if(mtcache[t] !== undefined) return mtcache[t];
        return (mtcache[t] = new RegExp('<(?:\\w+:)?'+f+'(?: xml:space="preserve")?(?:[^>]*)>([^\u2603]*)</(?:\\w+:)?'+f+'>',(g||"")));
    };
})();
var vtregex = (function(){ var vt_cache = {};
    return function vt_regex(bt) {
        if(vt_cache[bt] !== undefined) return vt_cache[bt];
        return (vt_cache[bt] = new RegExp("<vt:" + bt + ">(.*?)</vt:" + bt + ">", 'g') );
};})();
var vtvregex = /<\/?vt:variant>/g, vtmregex = /<vt:([^>]*)>(.*)</;
function parseVector(data) {
    var h = parsexmltag(data);
    var matches = data.match(vtregex(h.baseType))||[];
    if(matches.length != h.size) throw "unexpected vector length " + matches.length + " != " + h.size;
    var res = [];
    matches.forEach(function(x) {
        var v = x.replace(vtvregex,"").match(vtmregex);
        res.push({v:v[2], t:v[1]});
    });
    return res;
}
var wtregex = /(^\s|\s$|\n)/;
function writetag(f,g) {return '<' + f + (g.match(wtregex)?' xml:space="preserve"' : "") + '>' + g + '</' + f + '>';}
function wxt_helper(h) { return keys(h).map(function(k) { return " " + k + '="' + h[k] + '"';}).join(""); }
function writextag(f,g,h) { return '<' + f + (isval(h) ? wxt_helper(h) : "") + (isval(g) ? (g.match(wtregex)?' xml:space="preserve"' : "") + '>' + g + '</' + f : "/") + '>';}
function write_w3cdtf(d, t) { try { return d.toISOString().replace(/\.\d*/,""); } catch(e) { if(t) throw e; } }
function write_vt(s) {
    switch(typeof s) {
        case 'string': return writextag('vt:lpwstr', s);
        case 'number': return writextag((s|0)==s?'vt:i4':'vt:r8', String(s));
        case 'boolean': return writextag('vt:bool',s?'true':'false');
    }
    if(s instanceof Date) return writextag('vt:filetime', write_w3cdtf(s));
    throw new Error("Unable to serialize " + s);
}
var XML_HEADER = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r\n';
var XMLNS = {
    'dc': 'http://purl.org/dc/elements/1.1/',
    'dcterms': 'http://purl.org/dc/terms/',
    'dcmitype': 'http://purl.org/dc/dcmitype/',
    'mx': 'http://schemas.microsoft.com/office/mac/excel/2008/main',
    'r': 'http://schemas.openxmlformats.org/officeDocument/2006/relationships',
    'sjs': 'http://schemas.openxmlformats.org/package/2006/sheetjs/core-properties',
    'vt': 'http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes',
    'xsi': 'http://www.w3.org/2001/XMLSchema-instance',
    'xsd': 'http://www.w3.org/2001/XMLSchema'
};
XMLNS.main = [
    'http://schemas.openxmlformats.org/spreadsheetml/2006/main',
    'http://purl.oclc.org/ooxml/spreadsheetml/main',
    'http://schemas.microsoft.com/office/excel/2006/main',
    'http://schemas.microsoft.com/office/excel/2006/2'
];
Source/UBCS-WEB/src/config/js-xlsx-master/bits/23_binutils.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,167 @@
function readIEEE754(buf, idx, isLE, nl, ml) {
    if(isLE === undefined) isLE = true;
    if(!nl) nl = 8;
    if(!ml && nl === 8) ml = 52;
    var e, m, el = nl * 8 - ml - 1, eMax = (1 << el) - 1, eBias = eMax >> 1;
    var bits = -7, d = isLE ? -1 : 1, i = isLE ? (nl - 1) : 0, s = buf[idx + i];
    i += d;
    e = s & ((1 << (-bits)) - 1); s >>>= (-bits); bits += el;
    for (; bits > 0; e = e * 256 + buf[idx + i], i += d, bits -= 8);
    m = e & ((1 << (-bits)) - 1); e >>>= (-bits); bits += ml;
    for (; bits > 0; m = m * 256 + buf[idx + i], i += d, bits -= 8);
    if (e === eMax) return m ? NaN : ((s ? -1 : 1) * Infinity);
    else if (e === 0) e = 1 - eBias;
    else { m = m + Math.pow(2, ml); e = e - eBias; }
    return (s ? -1 : 1) * m * Math.pow(2, e - ml);
}
var __toBuffer, ___toBuffer;
__toBuffer = ___toBuffer = function toBuffer_(bufs) { var x = []; for(var i = 0; i < bufs[0].length; ++i) { x.push.apply(x, bufs[0][i]); } return x; };
var __utf16le, ___utf16le;
__utf16le = ___utf16le = function utf16le_(b,s,e) { var ss=[]; for(var i=s; i<e; i+=2) ss.push(String.fromCharCode(__readUInt16LE(b,i))); return ss.join(""); };
var __hexlify, ___hexlify;
__hexlify = ___hexlify = function hexlify_(b,s,l) { return b.slice(s,(s+l)).map(function(x){return (x<16?"0":"") + x.toString(16);}).join(""); };
var __utf8, ___utf8;
__utf8 = ___utf8 = function(b,s,e) { var ss=[]; for(var i=s; i<e; i++) ss.push(String.fromCharCode(__readUInt8(b,i))); return ss.join(""); };
var __lpstr, ___lpstr;
__lpstr = ___lpstr = function lpstr_(b,i) { var len = __readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len-1) : "";};
var __lpwstr, ___lpwstr;
__lpwstr = ___lpwstr = function lpwstr_(b,i) { var len = 2*__readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len-1) : "";};
var __double, ___double;
__double = ___double = function(b, idx) { return readIEEE754(b, idx);};
var is_buf = function is_buf_a(a) { return Array.isArray(a); };
if(has_buf) {
    __utf16le = function utf16le_b(b,s,e) { if(!Buffer.isBuffer(b)) return ___utf16le(b,s,e); return b.toString('utf16le',s,e); };
    __hexlify = function(b,s,l) { return Buffer.isBuffer(b) ? b.toString('hex',s,s+l) : ___hexlify(b,s,l); };
    __lpstr = function lpstr_b(b,i) { if(!Buffer.isBuffer(b)) return ___lpstr(b, i); var len = b.readUInt32LE(i); return len > 0 ? b.toString('utf8',i+4,i+4+len-1) : "";};
    __lpwstr = function lpwstr_b(b,i) { if(!Buffer.isBuffer(b)) return ___lpwstr(b, i); var len = 2*b.readUInt32LE(i); return b.toString('utf16le',i+4,i+4+len-1);};
    __utf8 = function utf8_b(s,e) { return this.toString('utf8',s,e); };
    __toBuffer = function(bufs) { return (bufs[0].length > 0 && Buffer.isBuffer(bufs[0][0])) ? Buffer.concat(bufs[0]) : ___toBuffer(bufs);};
    bconcat = function(bufs) { return Buffer.isBuffer(bufs[0]) ? Buffer.concat(bufs) : [].concat.apply([], bufs); };
    __double = function double_(b,i) { if(Buffer.isBuffer(b)) return b.readDoubleLE(i); return ___double(b,i); };
    is_buf = function is_buf_b(a) { return Buffer.isBuffer(a) || Array.isArray(a); };
}
/* from js-xls */
if(typeof cptable !== 'undefined') {
    __utf16le = function(b,s,e) { return cptable.utils.decode(1200, b.slice(s,e)); };
    __utf8 = function(b,s,e) { return cptable.utils.decode(65001, b.slice(s,e)); };
    __lpstr = function(b,i) { var len = __readUInt32LE(b,i); return len > 0 ? cptable.utils.decode(current_codepage, b.slice(i+4, i+4+len-1)) : "";};
    __lpwstr = function(b,i) { var len = 2*__readUInt32LE(b,i); return len > 0 ? cptable.utils.decode(1200, b.slice(i+4,i+4+len-1)) : "";};
}
var __readUInt8 = function(b, idx) { return b[idx]; };
var __readUInt16LE = function(b, idx) { return b[idx+1]*(1<<8)+b[idx]; };
var __readInt16LE = function(b, idx) { var u = b[idx+1]*(1<<8)+b[idx]; return (u < 0x8000) ? u : (0xffff - u + 1) * -1; };
var __readUInt32LE = function(b, idx) { return b[idx+3]*(1<<24)+(b[idx+2]<<16)+(b[idx+1]<<8)+b[idx]; };
var __readInt32LE = function(b, idx) { return (b[idx+3]<<24)|(b[idx+2]<<16)|(b[idx+1]<<8)|b[idx]; };
var ___unhexlify = function(s) { return s.match(/../g).map(function(x) { return parseInt(x,16);}); };
var __unhexlify = typeof Buffer !== "undefined" ? function(s) { return Buffer.isBuffer(s) ? new Buffer(s, 'hex') : ___unhexlify(s); } : ___unhexlify;
function ReadShift(size, t) {
    var o="", oI, oR, oo=[], w, vv, i, loc;
    switch(t) {
        case 'dbcs':
            loc = this.l;
            if(has_buf && Buffer.isBuffer(this)) o = this.slice(this.l, this.l+2*size).toString("utf16le");
            else for(i = 0; i != size; ++i) { o+=String.fromCharCode(__readUInt16LE(this, loc)); loc+=2; }
            size *= 2;
            break;
        case 'utf8': o = __utf8(this, this.l, this.l + size); break;
        case 'utf16le': size *= 2; o = __utf16le(this, this.l, this.l + size); break;
        /* [MS-OLEDS] 2.1.4 LengthPrefixedAnsiString */
        case 'lpstr': o = __lpstr(this, this.l); size = 5 + o.length; break;
        /* [MS-OLEDS] 2.1.5 LengthPrefixedUnicodeString */
        case 'lpwstr': o = __lpwstr(this, this.l); size = 5 + o.length; if(o[o.length-1] == '\u0000') size += 2; break;
        case 'cstr': size = 0; o = "";
            while((w=__readUInt8(this, this.l + size++))!==0) oo.push(_getchar(w));
            o = oo.join(""); break;
        case 'wstr': size = 0; o = "";
            while((w=__readUInt16LE(this,this.l +size))!==0){oo.push(_getchar(w));size+=2;}
            size+=2; o = oo.join(""); break;
        /* sbcs and dbcs support continue records in the SST way TODO codepages */
        case 'dbcs-cont': o = ""; loc = this.l;
            for(i = 0; i != size; ++i) {
                if(this.lens && this.lens.indexOf(loc) !== -1) {
                    w = __readUInt8(this, loc);
                    this.l = loc + 1;
                    vv = ReadShift.call(this, size-i, w ? 'dbcs-cont' : 'sbcs-cont');
                    return oo.join("") + vv;
                }
                oo.push(_getchar(__readUInt16LE(this, loc)));
                loc+=2;
            } o = oo.join(""); size *= 2; break;
        case 'sbcs-cont': o = ""; loc = this.l;
            for(i = 0; i != size; ++i) {
                if(this.lens && this.lens.indexOf(loc) !== -1) {
                    w = __readUInt8(this, loc);
                    this.l = loc + 1;
                    vv = ReadShift.call(this, size-i, w ? 'dbcs-cont' : 'sbcs-cont');
                    return oo.join("") + vv;
                }
                oo.push(_getchar(__readUInt8(this, loc)));
                loc+=1;
            } o = oo.join(""); break;
        default:
    switch(size) {
        case 1: oI = __readUInt8(this, this.l); this.l++; return oI;
        case 2: oI = (t === 'i' ? __readInt16LE : __readUInt16LE)(this, this.l); this.l += 2; return oI;
        case 4:
            if(t === 'i' || (this[this.l+3] & 0x80)===0) { oI = __readInt32LE(this, this.l); this.l += 4; return oI; }
            else { oR = __readUInt32LE(this, this.l); this.l += 4; return oR; } break;
        case 8: if(t === 'f') { oR = __double(this, this.l); this.l += 8; return oR; }
        /* falls through */
        case 16: o = __hexlify(this, this.l, size); break;
    }}
    this.l+=size; return o;
}
function WriteShift(t, val, f) {
    var size, i;
    if(f === 'dbcs') {
        for(i = 0; i != val.length; ++i) this.writeUInt16LE(val.charCodeAt(i), this.l + 2 * i);
        size = 2 * val.length;
    } else switch(t) {
        case  1: size = 1; this[this.l] = val&255; break;
        case  3: size = 3; this[this.l+2] = val & 255; val >>>= 8; this[this.l+1] = val&255; val >>>= 8; this[this.l] = val&255; break;
        case  4: size = 4; this.writeUInt32LE(val, this.l); break;
        case  8: size = 8; if(f === 'f') { this.writeDoubleLE(val, this.l); break; }
        /* falls through */
        case 16: break;
        case -4: size = 4; this.writeInt32LE(val, this.l); break;
    }
    this.l += size; return this;
}
function CheckField(hexstr, fld) {
    var m = __hexlify(this,this.l,hexstr.length>>1);
    if(m !== hexstr) throw fld + 'Expected ' + hexstr + ' saw ' + m;
    this.l += hexstr.length>>1;
}
function prep_blob(blob, pos) {
    blob.l = pos;
    blob.read_shift = ReadShift;
    blob.chk = CheckField;
    blob.write_shift = WriteShift;
}
function parsenoop(blob, length) { blob.l += length; }
function writenoop(blob, length) { blob.l += length; }
function new_buf(sz) {
    var o = new_raw_buf(sz);
    prep_blob(o, 0);
    return o;
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/24_hoppers.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,66 @@
/* [MS-XLSB] 2.1.4 Record */
function recordhopper(data, cb, opts) {
    var tmpbyte, cntbyte, length;
    prep_blob(data, data.l || 0);
    while(data.l < data.length) {
        var RT = data.read_shift(1);
        if(RT & 0x80) RT = (RT & 0x7F) + ((data.read_shift(1) & 0x7F)<<7);
        var R = XLSBRecordEnum[RT] || XLSBRecordEnum[0xFFFF];
        tmpbyte = data.read_shift(1);
        length = tmpbyte & 0x7F;
        for(cntbyte = 1; cntbyte <4 && (tmpbyte & 0x80); ++cntbyte) length += ((tmpbyte = data.read_shift(1)) & 0x7F)<<(7*cntbyte);
        var d = R.f(data, length, opts);
        if(cb(d, R, RT)) return;
    }
}
/* control buffer usage for fixed-length buffers */
function buf_array() {
    var bufs = [], blksz = 2048;
    var newblk = function ba_newblk(sz) {
        var o = new_buf(sz);
        prep_blob(o, 0);
        return o;
    };
    var curbuf = newblk(blksz);
    var endbuf = function ba_endbuf() {
        curbuf.length = curbuf.l;
        if(curbuf.length > 0) bufs.push(curbuf);
        curbuf = null;
    };
    var next = function ba_next(sz) {
        if(sz < curbuf.length - curbuf.l) return curbuf;
        endbuf();
        return (curbuf = newblk(Math.max(sz+1, blksz)));
    };
    var end = function ba_end() {
        endbuf();
        return __toBuffer([bufs]);
    };
    var push = function ba_push(buf) { endbuf(); curbuf = buf; next(blksz); };
    return { next:next, push:push, end:end, _bufs:bufs };
}
function write_record(ba, type, payload, length) {
    var t = evert_RE[type], l;
    if(!length) length = XLSBRecordEnum[t].p || (payload||[]).length || 0;
    l = 1 + (t >= 0x80 ? 1 : 0) + 1 + length;
    if(length >= 0x80) ++l; if(length >= 0x4000) ++l; if(length >= 0x200000) ++l;
    var o = ba.next(l);
    if(t <= 0x7F) o.write_shift(1, t);
    else {
        o.write_shift(1, (t & 0x7F) + 0x80);
        o.write_shift(1, (t >> 7));
    }
    for(var i = 0; i != 4; ++i) {
        if(length >= 0x80) { o.write_shift(1, (length & 0x7F)+0x80); length >>= 7; }
        else { o.write_shift(1, length); break; }
    }
    if(length > 0 && is_buf(payload)) ba.push(payload);
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/25_cellutils.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
/* XLS ranges enforced */
function shift_cell_xls(cell, tgt) {
    if(tgt.s) {
        if(cell.cRel) cell.c += tgt.s.c;
        if(cell.rRel) cell.r += tgt.s.r;
    } else {
        cell.c += tgt.c;
        cell.r += tgt.r;
    }
    cell.cRel = cell.rRel = 0;
    while(cell.c >= 0x100) cell.c -= 0x100;
    while(cell.r >= 0x10000) cell.r -= 0x10000;
    return cell;
}
function shift_range_xls(cell, range) {
    cell.s = shift_cell_xls(cell.s, range.s);
    cell.e = shift_cell_xls(cell.e, range.s);
    return cell;
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/26_crypto.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,35 @@
var OFFCRYPTO = {};
var make_offcrypto = function(O, _crypto) {
    var crypto;
    if(typeof _crypto !== 'undefined') crypto = _crypto;
    else if(typeof require !== 'undefined') {
        try { crypto = require('cry'+'pto'); }
        catch(e) { crypto = null; }
    }
    O.rc4 = function(key, data) {
        var S = new Array(256);
        var c = 0, i = 0, j = 0, t = 0;
        for(i = 0; i != 256; ++i) S[i] = i;
        for(i = 0; i != 256; ++i) {
            j = (j + S[i] + (key[i%key.length]).charCodeAt(0))&255;
            t = S[i]; S[i] = S[j]; S[j] = t;
        }
        i = j = 0; out = Buffer(data.length);
        for(c = 0; c != data.length; ++c) {
            i = (i + 1)&255;
            j = (j + S[i])%256;
            t = S[i]; S[i] = S[j]; S[j] = t;
            out[c] = (data[c] ^ S[(S[i]+S[j])&255]);
        }
        return out;
    };
    if(crypto) {
        O.md5 = function(hex) { return crypto.createHash('md5').update(hex).digest('hex'); };
    } else {
        O.md5 = function(hex) { throw "unimplemented"; };
    }
};
make_offcrypto(OFFCRYPTO, typeof crypto !== "undefined" ? crypto : undefined);
Source/UBCS-WEB/src/config/js-xlsx-master/bits/28_binstructs.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,160 @@
/* [MS-XLSB] 2.5.143 */
function parse_StrRun(data, length) {
    return { ich: data.read_shift(2), ifnt: data.read_shift(2) };
}
/* [MS-XLSB] 2.1.7.121 */
function parse_RichStr(data, length) {
    var start = data.l;
    var flags = data.read_shift(1);
    var str = parse_XLWideString(data);
    var rgsStrRun = [];
    var z = { t: str, h: str };
    if((flags & 1) !== 0) { /* fRichStr */
        /* TODO: formatted string */
        var dwSizeStrRun = data.read_shift(4);
        for(var i = 0; i != dwSizeStrRun; ++i) rgsStrRun.push(parse_StrRun(data));
        z.r = rgsStrRun;
    }
    else z.r = "<t>" + escapexml(str) + "</t>";
    if((flags & 2) !== 0) { /* fExtStr */
        /* TODO: phonetic string */
    }
    data.l = start + length;
    return z;
}
function write_RichStr(str, o) {
    /* TODO: formatted string */
    if(o == null) o = new_buf(5+2*str.t.length);
    o.write_shift(1,0);
    write_XLWideString(str.t, o);
    return o;
}
/* [MS-XLSB] 2.5.9 */
function parse_XLSBCell(data) {
    var col = data.read_shift(4);
    var iStyleRef = data.read_shift(2);
    iStyleRef += data.read_shift(1) <<16;
    var fPhShow = data.read_shift(1);
    return { c:col, iStyleRef: iStyleRef };
}
function write_XLSBCell(cell, o) {
    if(o == null) o = new_buf(8);
    o.write_shift(-4, cell.c);
    o.write_shift(3, cell.iStyleRef === undefined ? cell.iStyleRef : cell.s);
    o.write_shift(1, 0); /* fPhShow */
    return o;
}
/* [MS-XLSB] 2.5.21 */
function parse_XLSBCodeName (data, length) { return parse_XLWideString(data, length); }
/* [MS-XLSB] 2.5.166 */
function parse_XLNullableWideString(data) {
    var cchCharacters = data.read_shift(4);
    return cchCharacters === 0 || cchCharacters === 0xFFFFFFFF ? "" : data.read_shift(cchCharacters, 'dbcs');
}
function write_XLNullableWideString(data, o) {
    if(!o) o = new_buf(127);
    o.write_shift(4, data.length > 0 ? data.length : 0xFFFFFFFF);
    if(data.length > 0) o.write_shift(0, data, 'dbcs');
    return o;
}
/* [MS-XLSB] 2.5.168 */
function parse_XLWideString(data) {
    var cchCharacters = data.read_shift(4);
    return cchCharacters === 0 ? "" : data.read_shift(cchCharacters, 'dbcs');
}
function write_XLWideString(data, o) {
    if(o == null) o = new_buf(4+2*data.length);
    o.write_shift(4, data.length);
    if(data.length > 0) o.write_shift(0, data, 'dbcs');
    return o;
}
/* [MS-XLSB] 2.5.114 */
var parse_RelID = parse_XLNullableWideString;
var write_RelID = write_XLNullableWideString;
/* [MS-XLSB] 2.5.122 */
/* [MS-XLS] 2.5.217 */
function parse_RkNumber(data) {
    var b = data.slice(data.l, data.l+4);
    var fX100 = b[0] & 1, fInt = b[0] & 2;
    data.l+=4;
    b[0] &= 0xFC; // b[0] &= ~3;
    var RK = fInt === 0 ? __double([0,0,0,0,b[0],b[1],b[2],b[3]],0) : __readInt32LE(b,0)>>2;
    return fX100 ? RK/100 : RK;
}
/* [MS-XLSB] 2.5.153 */
function parse_UncheckedRfX(data) {
    var cell = {s: {}, e: {}};
    cell.s.r = data.read_shift(4);
    cell.e.r = data.read_shift(4);
    cell.s.c = data.read_shift(4);
    cell.e.c = data.read_shift(4);
    return cell;
}
function write_UncheckedRfX(r, o) {
    if(!o) o = new_buf(16);
    o.write_shift(4, r.s.r);
    o.write_shift(4, r.e.r);
    o.write_shift(4, r.s.c);
    o.write_shift(4, r.e.c);
    return o;
}
/* [MS-XLSB] 2.5.171 */
/* [MS-XLS] 2.5.342 */
function parse_Xnum(data, length) { return data.read_shift(8, 'f'); }
function write_Xnum(data, o) { return (o || new_buf(8)).write_shift(8, 'f', data); }
/* [MS-XLSB] 2.5.198.2 */
var BErr = {
    0x00: "#NULL!",
    0x07: "#DIV/0!",
    0x0F: "#VALUE!",
    0x17: "#REF!",
    0x1D: "#NAME?",
    0x24: "#NUM!",
    0x2A: "#N/A",
    0x2B: "#GETTING_DATA",
    0xFF: "#WTF?"
};
var RBErr = evert_num(BErr);
/* [MS-XLSB] 2.4.321 BrtColor */
function parse_BrtColor(data, length) {
    var out = {};
    var d = data.read_shift(1);
    out.fValidRGB = d & 1;
    out.xColorType = d >>> 1;
    out.index = data.read_shift(1);
    out.nTintAndShade = data.read_shift(2, 'i');
    out.bRed   = data.read_shift(1);
    out.bGreen = data.read_shift(1);
    out.bBlue  = data.read_shift(1);
    out.bAlpha = data.read_shift(1);
}
/* [MS-XLSB] 2.5.52 */
function parse_FontFlags(data, length) {
    var d = data.read_shift(1);
    data.l++;
    var out = {
        fItalic: d & 0x2,
        fStrikeout: d & 0x8,
        fOutline: d & 0x10,
        fShadow: d & 0x20,
        fCondense: d & 0x40,
        fExtend: d & 0x80
    };
    return out;
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/29_xlsenum.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,265 @@
/* [MS-OLEPS] 2.2 PropertyType */
{
    var VT_EMPTY    = 0x0000;
    var VT_NULL     = 0x0001;
    var VT_I2       = 0x0002;
    var VT_I4       = 0x0003;
    var VT_R4       = 0x0004;
    var VT_R8       = 0x0005;
    var VT_CY       = 0x0006;
    var VT_DATE     = 0x0007;
    var VT_BSTR     = 0x0008;
    var VT_ERROR    = 0x000A;
    var VT_BOOL     = 0x000B;
    var VT_VARIANT  = 0x000C;
    var VT_DECIMAL  = 0x000E;
    var VT_I1       = 0x0010;
    var VT_UI1      = 0x0011;
    var VT_UI2      = 0x0012;
    var VT_UI4      = 0x0013;
    var VT_I8       = 0x0014;
    var VT_UI8      = 0x0015;
    var VT_INT      = 0x0016;
    var VT_UINT     = 0x0017;
    var VT_LPSTR    = 0x001E;
    var VT_LPWSTR   = 0x001F;
    var VT_FILETIME = 0x0040;
    var VT_BLOB     = 0x0041;
    var VT_STREAM   = 0x0042;
    var VT_STORAGE  = 0x0043;
    var VT_STREAMED_Object  = 0x0044;
    var VT_STORED_Object    = 0x0045;
    var VT_BLOB_Object      = 0x0046;
    var VT_CF       = 0x0047;
    var VT_CLSID    = 0x0048;
    var VT_VERSIONED_STREAM = 0x0049;
    var VT_VECTOR   = 0x1000;
    var VT_ARRAY    = 0x2000;
    var VT_STRING   = 0x0050; // 2.3.3.1.11 VtString
    var VT_USTR     = 0x0051; // 2.3.3.1.12 VtUnalignedString
    var VT_CUSTOM   = [VT_STRING, VT_USTR];
}
/* [MS-OSHARED] 2.3.3.2.2.1 Document Summary Information PIDDSI */
var DocSummaryPIDDSI = {
    0x01: { n: 'CodePage', t: VT_I2 },
    0x02: { n: 'Category', t: VT_STRING },
    0x03: { n: 'PresentationFormat', t: VT_STRING },
    0x04: { n: 'ByteCount', t: VT_I4 },
    0x05: { n: 'LineCount', t: VT_I4 },
    0x06: { n: 'ParagraphCount', t: VT_I4 },
    0x07: { n: 'SlideCount', t: VT_I4 },
    0x08: { n: 'NoteCount', t: VT_I4 },
    0x09: { n: 'HiddenCount', t: VT_I4 },
    0x0a: { n: 'MultimediaClipCount', t: VT_I4 },
    0x0b: { n: 'Scale', t: VT_BOOL },
    0x0c: { n: 'HeadingPair', t: VT_VECTOR | VT_VARIANT },
    0x0d: { n: 'DocParts', t: VT_VECTOR | VT_LPSTR },
    0x0e: { n: 'Manager', t: VT_STRING },
    0x0f: { n: 'Company', t: VT_STRING },
    0x10: { n: 'LinksDirty', t: VT_BOOL },
    0x11: { n: 'CharacterCount', t: VT_I4 },
    0x13: { n: 'SharedDoc', t: VT_BOOL },
    0x16: { n: 'HLinksChanged', t: VT_BOOL },
    0x17: { n: 'AppVersion', t: VT_I4, p: 'version' },
    0x1A: { n: 'ContentType', t: VT_STRING },
    0x1B: { n: 'ContentStatus', t: VT_STRING },
    0x1C: { n: 'Language', t: VT_STRING },
    0x1D: { n: 'Version', t: VT_STRING },
    0xFF: {}
};
/* [MS-OSHARED] 2.3.3.2.1.1 Summary Information Property Set PIDSI */
var SummaryPIDSI = {
    0x01: { n: 'CodePage', t: VT_I2 },
    0x02: { n: 'Title', t: VT_STRING },
    0x03: { n: 'Subject', t: VT_STRING },
    0x04: { n: 'Author', t: VT_STRING },
    0x05: { n: 'Keywords', t: VT_STRING },
    0x06: { n: 'Comments', t: VT_STRING },
    0x07: { n: 'Template', t: VT_STRING },
    0x08: { n: 'LastAuthor', t: VT_STRING },
    0x09: { n: 'RevNumber', t: VT_STRING },
    0x0A: { n: 'EditTime', t: VT_FILETIME },
    0x0B: { n: 'LastPrinted', t: VT_FILETIME },
    0x0C: { n: 'CreatedDate', t: VT_FILETIME },
    0x0D: { n: 'ModifiedDate', t: VT_FILETIME },
    0x0E: { n: 'PageCount', t: VT_I4 },
    0x0F: { n: 'WordCount', t: VT_I4 },
    0x10: { n: 'CharCount', t: VT_I4 },
    0x11: { n: 'Thumbnail', t: VT_CF },
    0x12: { n: 'ApplicationName', t: VT_LPSTR },
    0x13: { n: 'DocumentSecurity', t: VT_I4 },
    0xFF: {}
};
/* [MS-OLEPS] 2.18 */
var SpecialProperties = {
    0x80000000: { n: 'Locale', t: VT_UI4 },
    0x80000003: { n: 'Behavior', t: VT_UI4 },
    0x72627262: {}
};
(function() {
    for(var y in SpecialProperties) if(SpecialProperties.hasOwnProperty(y))
    DocSummaryPIDDSI[y] = SummaryPIDSI[y] = SpecialProperties[y];
})();
/* [MS-XLS] 2.4.63 Country/Region codes */
var CountryEnum = {
    0x0001: "US", // United States
    0x0002: "CA", // Canada
    0x0003: "", // Latin America (except Brazil)
    0x0007: "RU", // Russia
    0x0014: "EG", // Egypt
    0x001E: "GR", // Greece
    0x001F: "NL", // Netherlands
    0x0020: "BE", // Belgium
    0x0021: "FR", // France
    0x0022: "ES", // Spain
    0x0024: "HU", // Hungary
    0x0027: "IT", // Italy
    0x0029: "CH", // Switzerland
    0x002B: "AT", // Austria
    0x002C: "GB", // United Kingdom
    0x002D: "DK", // Denmark
    0x002E: "SE", // Sweden
    0x002F: "NO", // Norway
    0x0030: "PL", // Poland
    0x0031: "DE", // Germany
    0x0034: "MX", // Mexico
    0x0037: "BR", // Brazil
    0x003d: "AU", // Australia
    0x0040: "NZ", // New Zealand
    0x0042: "TH", // Thailand
    0x0051: "JP", // Japan
    0x0052: "KR", // Korea
    0x0054: "VN", // Viet Nam
    0x0056: "CN", // China
    0x005A: "TR", // Turkey
    0x0069: "JS", // Ramastan
    0x00D5: "DZ", // Algeria
    0x00D8: "MA", // Morocco
    0x00DA: "LY", // Libya
    0x015F: "PT", // Portugal
    0x0162: "IS", // Iceland
    0x0166: "FI", // Finland
    0x01A4: "CZ", // Czech Republic
    0x0376: "TW", // Taiwan
    0x03C1: "LB", // Lebanon
    0x03C2: "JO", // Jordan
    0x03C3: "SY", // Syria
    0x03C4: "IQ", // Iraq
    0x03C5: "KW", // Kuwait
    0x03C6: "SA", // Saudi Arabia
    0x03CB: "AE", // United Arab Emirates
    0x03CC: "IL", // Israel
    0x03CE: "QA", // Qatar
    0x03D5: "IR", // Iran
    0xFFFF: "US"  // United States
};
/* [MS-XLS] 2.5.127 */
var XLSFillPattern = [
    null,
    'solid',
    'mediumGray',
    'darkGray',
    'lightGray',
    'darkHorizontal',
    'darkVertical',
    'darkDown',
    'darkUp',
    'darkGrid',
    'darkTrellis',
    'lightHorizontal',
    'lightVertical',
    'lightDown',
    'lightUp',
    'lightGrid',
    'lightTrellis',
    'gray125',
    'gray0625'
];
function rgbify(arr) { return arr.map(function(x) { return [(x>>16)&255,(x>>8)&255,x&255]; }); }
/* [MS-XLS] 2.5.161 */
var XLSIcv = rgbify([
    /* Color Constants */
    0x000000,
    0xFFFFFF,
    0xFF0000,
    0x00FF00,
    0x0000FF,
    0xFFFF00,
    0xFF00FF,
    0x00FFFF,
    /* Defaults */
    0x000000,
    0xFFFFFF,
    0xFF0000,
    0x00FF00,
    0x0000FF,
    0xFFFF00,
    0xFF00FF,
    0x00FFFF,
    0x800000,
    0x008000,
    0x000080,
    0x808000,
    0x800080,
    0x008080,
    0xC0C0C0,
    0x808080,
    0x9999FF,
    0x993366,
    0xFFFFCC,
    0xCCFFFF,
    0x660066,
    0xFF8080,
    0x0066CC,
    0xCCCCFF,
    0x000080,
    0xFF00FF,
    0xFFFF00,
    0x00FFFF,
    0x800080,
    0x800000,
    0x008080,
    0x0000FF,
    0x00CCFF,
    0xCCFFFF,
    0xCCFFCC,
    0xFFFF99,
    0x99CCFF,
    0xFF99CC,
    0xCC99FF,
    0xFFCC99,
    0x3366FF,
    0x33CCCC,
    0x99CC00,
    0xFFCC00,
    0xFF9900,
    0xFF6600,
    0x666699,
    0x969696,
    0x003366,
    0x339966,
    0x003300,
    0x333300,
    0x993300,
    0x993366,
    0x333399,
    0x333333,
    /* Sheet */
    0xFFFFFF,
    0x000000
]);
Source/UBCS-WEB/src/config/js-xlsx-master/bits/30_ctype.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,254 @@
/* Parts enumerated in OPC spec, MS-XLSB and MS-XLSX */
/* 12.3 Part Summary <SpreadsheetML> */
/* 14.2 Part Summary <DrawingML> */
/* [MS-XLSX] 2.1 Part Enumerations */
/* [MS-XLSB] 2.1.7 Part Enumeration */
var ct2type = {
    /* Workbook */
    "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml": "workbooks",
    /* Worksheet */
    "application/vnd.ms-excel.binIndexWs": "TODO", /* Binary Index */
    /* Chartsheet */
    "application/vnd.ms-excel.chartsheet": "TODO",
    "application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml": "TODO",
    /* Dialogsheet */
    "application/vnd.ms-excel.dialogsheet": "TODO",
    "application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml": "TODO",
    /* Macrosheet */
    "application/vnd.ms-excel.macrosheet": "TODO",
    "application/vnd.ms-excel.macrosheet+xml": "TODO",
    "application/vnd.ms-excel.intlmacrosheet": "TODO",
    "application/vnd.ms-excel.binIndexMs": "TODO", /* Binary Index */
    /* File Properties */
    "application/vnd.openxmlformats-package.core-properties+xml": "coreprops",
    "application/vnd.openxmlformats-officedocument.custom-properties+xml": "custprops",
    "application/vnd.openxmlformats-officedocument.extended-properties+xml": "extprops",
    /* Custom Data Properties */
    "application/vnd.openxmlformats-officedocument.customXmlProperties+xml": "TODO",
    /* Comments */
    "application/vnd.ms-excel.comments": "comments",
    "application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml": "comments",
    /* PivotTable */
    "application/vnd.ms-excel.pivotTable": "TODO",
    "application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml": "TODO",
    /* Calculation Chain */
    "application/vnd.ms-excel.calcChain": "calcchains",
    "application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml": "calcchains",
    /* Printer Settings */
    "application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings": "TODO",
    /* ActiveX */
    "application/vnd.ms-office.activeX": "TODO",
    "application/vnd.ms-office.activeX+xml": "TODO",
    /* Custom Toolbars */
    "application/vnd.ms-excel.attachedToolbars": "TODO",
    /* External Data Connections */
    "application/vnd.ms-excel.connections": "TODO",
    "application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml": "TODO",
    /* External Links */
    "application/vnd.ms-excel.externalLink": "TODO",
    "application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml": "TODO",
    /* Metadata */
    "application/vnd.ms-excel.sheetMetadata": "TODO",
    "application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml": "TODO",
    /* PivotCache */
    "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",
    /* Query Table */
    "application/vnd.ms-excel.queryTable": "TODO",
    "application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml": "TODO",
    /* Shared Workbook */
    "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",
    /* Single Cell Table */
    "application/vnd.ms-excel.tableSingleCells": "TODO",
    "application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml": "TODO",
    /* Slicer */
    "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",
    /* Sort Map */
    "application/vnd.ms-excel.wsSortMap": "TODO",
    /* Table */
    "application/vnd.ms-excel.table": "TODO",
    "application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml": "TODO",
    /* Themes */
    "application/vnd.openxmlformats-officedocument.theme+xml": "themes",
    /* Timeline */
    "application/vnd.ms-excel.Timeline+xml": "TODO", /* verify */
    "application/vnd.ms-excel.TimelineCache+xml": "TODO", /* verify */
    /* VBA */
    "application/vnd.ms-office.vbaProject": "vba",
    "application/vnd.ms-office.vbaProjectSignature": "vba",
    /* Volatile Dependencies */
    "application/vnd.ms-office.volatileDependencies": "TODO",
    "application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml": "TODO",
    /* Control Properties */
    "application/vnd.ms-excel.controlproperties+xml": "TODO",
    /* Data Model */
    "application/vnd.openxmlformats-officedocument.model+data": "TODO",
    /* Survey */
    "application/vnd.ms-excel.Survey+xml": "TODO",
    /* Drawing */
    "application/vnd.openxmlformats-officedocument.drawing+xml": "TODO",
    "application/vnd.openxmlformats-officedocument.drawingml.chart+xml": "TODO",
    "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",
    /* VML */
    "application/vnd.openxmlformats-officedocument.vmlDrawing": "TODO",
    "application/vnd.openxmlformats-package.relationships+xml": "rels",
    "application/vnd.openxmlformats-officedocument.oleObject": "TODO",
    "sheet": "js"
};
var CT_LIST = (function(){
    var o = {
        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",
            xltx: "application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml"
        },
        strs: { /* Shared Strings */
            xlsx: "application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml",
            xlsb: "application/vnd.ms-excel.sharedStrings"
        },
        sheets: {
            xlsx: "application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",
            xlsb: "application/vnd.ms-excel.worksheet"
        },
        styles: {/* Styles */
            xlsx: "application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml",
            xlsb: "application/vnd.ms-excel.styles"
        }
    };
    keys(o).forEach(function(k) { if(!o[k].xlsm) o[k].xlsm = o[k].xlsx; });
    keys(o).forEach(function(k){ keys(o[k]).forEach(function(v) { ct2type[o[k][v]] = k; }); });
    return o;
})();
var type2ct = evert_arr(ct2type);
XMLNS.CT = 'http://schemas.openxmlformats.org/package/2006/content-types';
function parse_ct(data, opts) {
    var ctext = {};
    if(!data || !data.match) return data;
    var ct = { workbooks: [], sheets: [], calcchains: [], themes: [], styles: [],
        coreprops: [], extprops: [], custprops: [], strs:[], comments: [], vba: [],
        TODO:[], rels:[], xmlns: "" };
    (data.match(tagregex)||[]).forEach(function(x) {
        var y = parsexmltag(x);
        switch(y[0].replace(nsregex,"<")) {
            case '<?xml': break;
            case '<Types': ct.xmlns = y['xmlns' + (y[0].match(/<(\w+):/)||["",""])[1] ]; break;
            case '<Default': ctext[y.Extension] = y.ContentType; break;
            case '<Override':
                if(ct[ct2type[y.ContentType]] !== undefined) ct[ct2type[y.ContentType]].push(y.PartName);
                else if(opts.WTF) console.error(y);
                break;
        }
    });
    if(ct.xmlns !== XMLNS.CT) throw new Error("Unknown Namespace: " + ct.xmlns);
    ct.calcchain = ct.calcchains.length > 0 ? ct.calcchains[0] : "";
    ct.sst = ct.strs.length > 0 ? ct.strs[0] : "";
    ct.style = ct.styles.length > 0 ? ct.styles[0] : "";
    ct.defaults = ctext;
    delete ct.calcchains;
    return ct;
}
var CTYPE_XML_ROOT = writextag('Types', null, {
    'xmlns': XMLNS.CT,
    'xmlns:xsd': XMLNS.xsd,
    'xmlns:xsi': XMLNS.xsi
});
var CTYPE_DEFAULTS = [
    ['xml', 'application/xml'],
    ['bin', 'application/vnd.ms-excel.sheet.binary.macroEnabled.main'],
    ['rels', type2ct.rels[0]]
].map(function(x) {
    return writextag('Default', null, {'Extension':x[0], 'ContentType': x[1]});
});
function write_ct(ct, opts) {
    var o = [], v;
    o[o.length] = (XML_HEADER);
    o[o.length] = (CTYPE_XML_ROOT);
    o = o.concat(CTYPE_DEFAULTS);
    var f1 = function(w) {
        if(ct[w] && ct[w].length > 0) {
            v = ct[w][0];
            o[o.length] = (writextag('Override', null, {
                'PartName': (v[0] == '/' ? "":"/") + v,
                'ContentType': CT_LIST[w][opts.bookType || 'xlsx']
            }));
        }
    };
    var f2 = function(w) {
        ct[w].forEach(function(v) {
            o[o.length] = (writextag('Override', null, {
                'PartName': (v[0] == '/' ? "":"/") + v,
                'ContentType': CT_LIST[w][opts.bookType || 'xlsx']
            }));
        });
    };
    var f3 = function(t) {
        (ct[t]||[]).forEach(function(v) {
            o[o.length] = (writextag('Override', null, {
                'PartName': (v[0] == '/' ? "":"/") + v,
                'ContentType': type2ct[t][0]
            }));
        });
    };
    f1('workbooks');
    f2('sheets');
    f3('themes');
    ['strs', 'styles'].forEach(f1);
    ['coreprops', 'extprops', 'custprops'].forEach(f3);
    if(o.length>2){ o[o.length] = ('</Types>'); o[1]=o[1].replace("/>",">"); }
    return o.join("");
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/31_rels.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,61 @@
/* 9.3.2 OPC Relationships Markup */
var RELS = {
    WB: "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",
    SHEET: "http://sheetjs.openxmlformats.org/officeDocument/2006/relationships/officeDocument"
};
function parse_rels(data, currentFilePath) {
    if (!data) return data;
    if (currentFilePath.charAt(0) !== '/') {
        currentFilePath = '/'+currentFilePath;
    }
    var rels = {};
    var hash = {};
    var resolveRelativePathIntoAbsolute = function (to) {
        var toksFrom = currentFilePath.split('/');
        toksFrom.pop(); // folder path
        var toksTo = to.split('/');
        var reversed = [];
        while (toksTo.length !== 0) {
            var tokTo = toksTo.shift();
            if (tokTo === '..') {
                toksFrom.pop();
            } else if (tokTo !== '.') {
                toksFrom.push(tokTo);
            }
        }
        return toksFrom.join('/');
    };
    data.match(tagregex).forEach(function(x) {
        var y = parsexmltag(x);
        /* 9.3.2.2 OPC_Relationships */
        if (y[0] === '<Relationship') {
            var rel = {}; rel.Type = y.Type; rel.Target = y.Target; rel.Id = y.Id; rel.TargetMode = y.TargetMode;
            var canonictarget = y.TargetMode === 'External' ? y.Target : resolveRelativePathIntoAbsolute(y.Target);
            rels[canonictarget] = rel;
            hash[y.Id] = rel;
        }
    });
    rels["!id"] = hash;
    return rels;
}
XMLNS.RELS = 'http://schemas.openxmlformats.org/package/2006/relationships';
var RELS_ROOT = writextag('Relationships', null, {
    //'xmlns:ns0': XMLNS.RELS,
    'xmlns': XMLNS.RELS
});
/* TODO */
function write_rels(rels) {
    var o = [];
    o[o.length] = (XML_HEADER);
    o[o.length] = (RELS_ROOT);
    keys(rels['!id']).forEach(function(rid) { var rel = rels['!id'][rid];
        o[o.length] = (writextag('Relationship', null, rel));
    });
    if(o.length>2){ o[o.length] = ('</Relationships>'); o[1]=o[1].replace("/>",">"); }
    return o.join("");
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/33_coreprops.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,79 @@
/* ECMA-376 Part II 11.1 Core Properties Part */
/* [MS-OSHARED] 2.3.3.2.[1-2].1 (PIDSI/PIDDSI) */
var CORE_PROPS = [
    ["cp:category", "Category"],
    ["cp:contentStatus", "ContentStatus"],
    ["cp:keywords", "Keywords"],
    ["cp:lastModifiedBy", "LastAuthor"],
    ["cp:lastPrinted", "LastPrinted"],
    ["cp:revision", "RevNumber"],
    ["cp:version", "Version"],
    ["dc:creator", "Author"],
    ["dc:description", "Comments"],
    ["dc:identifier", "Identifier"],
    ["dc:language", "Language"],
    ["dc:subject", "Subject"],
    ["dc:title", "Title"],
    ["dcterms:created", "CreatedDate", 'date'],
    ["dcterms:modified", "ModifiedDate", 'date']
];
XMLNS.CORE_PROPS = "http://schemas.openxmlformats.org/package/2006/metadata/core-properties";
RELS.CORE_PROPS  = 'http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties';
var CORE_PROPS_REGEX = (function() {
    var r = new Array(CORE_PROPS.length);
    for(var i = 0; i < CORE_PROPS.length; ++i) {
        var f = CORE_PROPS[i];
        var g = "(?:"+ f[0].substr(0,f[0].indexOf(":")) +":)"+ f[0].substr(f[0].indexOf(":")+1);
        r[i] = new RegExp("<" + g + "[^>]*>(.*)<\/" + g + ">");
    }
    return r;
})();
function parse_core_props(data) {
    var p = {};
    for(var i = 0; i < CORE_PROPS.length; ++i) {
        var f = CORE_PROPS[i], cur = data.match(CORE_PROPS_REGEX[i]);
        if(cur != null && cur.length > 0) p[f[1]] = cur[1];
        if(f[2] === 'date' && p[f[1]]) p[f[1]] = new Date(p[f[1]]);
    }
    return p;
}
var CORE_PROPS_XML_ROOT = writextag('cp:coreProperties', null, {
    //'xmlns': XMLNS.CORE_PROPS,
    'xmlns:cp': XMLNS.CORE_PROPS,
    'xmlns:dc': XMLNS.dc,
    'xmlns:dcterms': XMLNS.dcterms,
    'xmlns:dcmitype': XMLNS.dcmitype,
    'xmlns:xsi': XMLNS.xsi
});
function cp_doit(f, g, h, o, p) {
    if(p[f] != null || g == null || g === "") return;
    p[f] = g;
    o[o.length] = (h ? writextag(f,g,h) : writetag(f,g));
}
function write_core_props(cp, opts) {
    var o = [XML_HEADER, CORE_PROPS_XML_ROOT], p = {};
  if (opts && opts.Props) {
    if (opts.Props.title) o[o.length]       = '<dc:title>'       + opts.Props.title        + '</dc:title>';
    if (opts.Props.subject) o[o.length]     = '<dc:subject>'     + opts.Props.subject      + '</dc:subject>';
    if (opts.Props.creator) o[o.length]     = '<dc:creator>'     + opts.Props.creator      + '</dc:creator>';
    if (opts.Props.keywords) o[o.length]    = '<cp:keywords>'    + opts.Props.keywords      + '</cp:keywords>';
    if (opts.Props.description) o[o.length] = '<dc:description>' + opts.Props.description  + '</dc:description>';
  }
  if(cp) {
    if(cp.CreatedDate != null) cp_doit("dcterms:created", typeof cp.CreatedDate === "string" ? cp.CreatedDate : write_w3cdtf(cp.CreatedDate, opts.WTF), {"xsi:type":"dcterms:W3CDTF"}, o, p);
    if(cp.ModifiedDate != null) cp_doit("dcterms:modified", typeof cp.ModifiedDate === "string" ? cp.ModifiedDate : write_w3cdtf(cp.ModifiedDate, opts.WTF), {"xsi:type":"dcterms:W3CDTF"}, o, p);
      for(var i = 0; i != CORE_PROPS.length; ++i) { var f = CORE_PROPS[i]; cp_doit(f[0], cp[f[1]], null, o, p); }
  }
  if(o.length>2){ o[o.length] = ('</cp:coreProperties>'); o[1]=o[1].replace("/>",">"); }
  return o.join("");
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/34_extprops.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,76 @@
/* 15.2.12.3 Extended File Properties Part */
/* [MS-OSHARED] 2.3.3.2.[1-2].1 (PIDSI/PIDDSI) */
var EXT_PROPS = [
    ["Application", "Application", "string"],
    ["AppVersion", "AppVersion", "string"],
    ["Company", "Company", "string"],
    ["DocSecurity", "DocSecurity", "string"],
    ["Manager", "Manager", "string"],
    ["HyperlinksChanged", "HyperlinksChanged", "bool"],
    ["SharedDoc", "SharedDoc", "bool"],
    ["LinksUpToDate", "LinksUpToDate", "bool"],
    ["ScaleCrop", "ScaleCrop", "bool"],
    ["HeadingPairs", "HeadingPairs", "raw"],
    ["TitlesOfParts", "TitlesOfParts", "raw"]
];
XMLNS.EXT_PROPS = "http://schemas.openxmlformats.org/officeDocument/2006/extended-properties";
RELS.EXT_PROPS  = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties';
function parse_ext_props(data, p) {
    var q = {}; if(!p) p = {};
    EXT_PROPS.forEach(function(f) {
        switch(f[2]) {
            case "string": p[f[1]] = (data.match(matchtag(f[0]))||[])[1]; break;
            case "bool": p[f[1]] = (data.match(matchtag(f[0]))||[])[1] === "true"; break;
            case "raw":
                var cur = data.match(new RegExp("<" + f[0] + "[^>]*>(.*)<\/" + f[0] + ">"));
                if(cur && cur.length > 0) q[f[1]] = cur[1];
                break;
        }
    });
    if(q.HeadingPairs && q.TitlesOfParts) {
        var v = parseVector(q.HeadingPairs);
        var j = 0, widx = 0;
        for(var i = 0; i !== v.length; ++i) {
            switch(v[i].v) {
                case "Worksheets": widx = j; p.Worksheets = +(v[++i].v); break;
                case "Named Ranges": ++i; break; // TODO: Handle Named Ranges
            }
        }
        var parts = parseVector(q.TitlesOfParts).map(function(x) { return utf8read(x.v); });
        p.SheetNames = parts.slice(widx, widx + p.Worksheets);
    }
    return p;
}
var EXT_PROPS_XML_ROOT = writextag('Properties', null, {
    'xmlns': XMLNS.EXT_PROPS,
    'xmlns:vt': XMLNS.vt
});
function write_ext_props(cp, opts) {
    var o = [], p = {}, W = writextag;
    if(!cp) cp = {};
    cp.Application = "SheetJS";
    o[o.length] = (XML_HEADER);
    o[o.length] = (EXT_PROPS_XML_ROOT);
    EXT_PROPS.forEach(function(f) {
        if(cp[f[1]] === undefined) return;
        var v;
        switch(f[2]) {
            case 'string': v = cp[f[1]]; break;
            case 'bool': v = cp[f[1]] ? 'true' : 'false'; break;
        }
        if(v !== undefined) o[o.length] = (W(f[0], v));
    });
    /* TODO: HeadingPairs, TitlesOfParts */
    o[o.length] = (W('HeadingPairs', W('vt:vector', W('vt:variant', '<vt:lpstr>Worksheets</vt:lpstr>')+W('vt:variant', W('vt:i4', String(cp.Worksheets))), {size:2, baseType:"variant"})));
    o[o.length] = (W('TitlesOfParts', W('vt:vector', cp.SheetNames.map(function(s) { return "<vt:lpstr>" + s + "</vt:lpstr>"; }).join(""), {size: cp.Worksheets, baseType:"lpstr"})));
    if(o.length>2){ o[o.length] = ('</Properties>'); o[1]=o[1].replace("/>",">"); }
    return o.join("");
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/35_custprops.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,70 @@
/* 15.2.12.2 Custom File Properties Part */
XMLNS.CUST_PROPS = "http://schemas.openxmlformats.org/officeDocument/2006/custom-properties";
RELS.CUST_PROPS  = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties';
var custregex = /<[^>]+>[^<]*/g;
function parse_cust_props(data, opts) {
    var p = {}, name;
    var m = data.match(custregex);
    if(m) for(var i = 0; i != m.length; ++i) {
        var x = m[i], y = parsexmltag(x);
        switch(y[0]) {
            case '<?xml': break;
            case '<Properties':
                if(y.xmlns !== XMLNS.CUST_PROPS) throw "unrecognized xmlns " + y.xmlns;
                if(y.xmlnsvt && y.xmlnsvt !== XMLNS.vt) throw "unrecognized vt " + y.xmlnsvt;
                break;
            case '<property': name = y.name; break;
            case '</property>': name = null; break;
            default: if (x.indexOf('<vt:') === 0) {
                var toks = x.split('>');
                var type = toks[0].substring(4), text = toks[1];
                /* 22.4.2.32 (CT_Variant). Omit the binary types from 22.4 (Variant Types) */
                switch(type) {
                    case 'lpstr': case 'lpwstr': case 'bstr': case 'lpwstr':
                        p[name] = unescapexml(text);
                        break;
                    case 'bool':
                        p[name] = parsexmlbool(text, '<vt:bool>');
                        break;
                    case 'i1': case 'i2': case 'i4': case 'i8': case 'int': case 'uint':
                        p[name] = parseInt(text, 10);
                        break;
                    case 'r4': case 'r8': case 'decimal':
                        p[name] = parseFloat(text);
                        break;
                    case 'filetime': case 'date':
                        p[name] = new Date(text);
                        break;
                    case 'cy': case 'error':
                        p[name] = unescapexml(text);
                        break;
                    default:
                        if(typeof console !== 'undefined') console.warn('Unexpected', x, type, toks);
                }
            } else if(x.substr(0,2) === "</") {
            } else if(opts.WTF) throw new Error(x);
        }
    }
    return p;
}
var CUST_PROPS_XML_ROOT = writextag('Properties', null, {
    'xmlns': XMLNS.CUST_PROPS,
    'xmlns:vt': XMLNS.vt
});
function write_cust_props(cp, opts) {
    var o = [XML_HEADER, CUST_PROPS_XML_ROOT];
    if(!cp) return o.join("");
    var pid = 1;
    keys(cp).forEach(function custprop(k) { ++pid;
        o[o.length] = (writextag('property', write_vt(cp[k]), {
            'fmtid': '{D5CDD505-2E9C-101B-9397-08002B2CF9AE}',
            'pid': pid,
            'name': k
        }));
    });
    if(o.length>2){ o[o.length] = '</Properties>'; o[1]=o[1].replace("/>",">"); }
    return o.join("");
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/36_xlsprops.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
function xlml_set_prop(Props, tag, val) {
    /* TODO: Normalize the properties */
    switch(tag) {
        case 'Description': tag = 'Comments'; break;
    }
    Props[tag] = val;
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/38_xlstypes.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,440 @@
/* [MS-DTYP] 2.3.3 FILETIME */
/* [MS-OLEDS] 2.1.3 FILETIME (Packet Version) */
/* [MS-OLEPS] 2.8 FILETIME (Packet Version) */
function parse_FILETIME(blob) {
    var dwLowDateTime = blob.read_shift(4), dwHighDateTime = blob.read_shift(4);
    return new Date(((dwHighDateTime/1e7*Math.pow(2,32) + dwLowDateTime/1e7) - 11644473600)*1000).toISOString().replace(/\.000/,"");
}
/* [MS-OSHARED] 2.3.3.1.4 Lpstr */
function parse_lpstr(blob, type, pad) {
    var str = blob.read_shift(0, 'lpstr');
    if(pad) blob.l += (4 - ((str.length+1) & 3)) & 3;
    return str;
}
/* [MS-OSHARED] 2.3.3.1.6 Lpwstr */
function parse_lpwstr(blob, type, pad) {
    var str = blob.read_shift(0, 'lpwstr');
    if(pad) blob.l += (4 - ((str.length+1) & 3)) & 3;
    return str;
}
/* [MS-OSHARED] 2.3.3.1.11 VtString */
/* [MS-OSHARED] 2.3.3.1.12 VtUnalignedString */
function parse_VtStringBase(blob, stringType, pad) {
    if(stringType === 0x1F /*VT_LPWSTR*/) return parse_lpwstr(blob);
    return parse_lpstr(blob, stringType, pad);
}
function parse_VtString(blob, t, pad) { return parse_VtStringBase(blob, t, pad === false ? 0: 4); }
function parse_VtUnalignedString(blob, t) { if(!t) throw new Error("dafuq?"); return parse_VtStringBase(blob, t, 0); }
/* [MS-OSHARED] 2.3.3.1.9 VtVecUnalignedLpstrValue */
function parse_VtVecUnalignedLpstrValue(blob) {
    var length = blob.read_shift(4);
    var ret = [];
    for(var i = 0; i != length; ++i) ret[i] = blob.read_shift(0, 'lpstr');
    return ret;
}
/* [MS-OSHARED] 2.3.3.1.10 VtVecUnalignedLpstr */
function parse_VtVecUnalignedLpstr(blob) {
    return parse_VtVecUnalignedLpstrValue(blob);
}
/* [MS-OSHARED] 2.3.3.1.13 VtHeadingPair */
function parse_VtHeadingPair(blob) {
    var headingString = parse_TypedPropertyValue(blob, VT_USTR);
    var headerParts = parse_TypedPropertyValue(blob, VT_I4);
    return [headingString, headerParts];
}
/* [MS-OSHARED] 2.3.3.1.14 VtVecHeadingPairValue */
function parse_VtVecHeadingPairValue(blob) {
    var cElements = blob.read_shift(4);
    var out = [];
    for(var i = 0; i != cElements / 2; ++i) out.push(parse_VtHeadingPair(blob));
    return out;
}
/* [MS-OSHARED] 2.3.3.1.15 VtVecHeadingPair */
function parse_VtVecHeadingPair(blob) {
    // NOTE: When invoked, wType & padding were already consumed
    return parse_VtVecHeadingPairValue(blob);
}
/* [MS-OLEPS] 2.18.1 Dictionary (uses 2.17, 2.16) */
function parse_dictionary(blob,CodePage) {
    var cnt = blob.read_shift(4);
    var dict = {};
    for(var j = 0; j != cnt; ++j) {
        var pid = blob.read_shift(4);
        var len = blob.read_shift(4);
        dict[pid] = blob.read_shift(len, (CodePage === 0x4B0 ?'utf16le':'utf8')).replace(chr0,'').replace(chr1,'!');
    }
    if(blob.l & 3) blob.l = (blob.l>>2+1)<<2;
    return dict;
}
/* [MS-OLEPS] 2.9 BLOB */
function parse_BLOB(blob) {
    var size = blob.read_shift(4);
    var bytes = blob.slice(blob.l,blob.l+size);
    if(size & 3 > 0) blob.l += (4 - (size & 3)) & 3;
    return bytes;
}
/* [MS-OLEPS] 2.11 ClipboardData */
function parse_ClipboardData(blob) {
    // TODO
    var o = {};
    o.Size = blob.read_shift(4);
    //o.Format = blob.read_shift(4);
    blob.l += o.Size;
    return o;
}
/* [MS-OLEPS] 2.14 Vector and Array Property Types */
function parse_VtVector(blob, cb) {
    /* [MS-OLEPS] 2.14.2 VectorHeader */
/*    var Length = blob.read_shift(4);
    var o = [];
    for(var i = 0; i != Length; ++i) {
        o.push(cb(blob));
    }
    return o;*/
}
/* [MS-OLEPS] 2.15 TypedPropertyValue */
function parse_TypedPropertyValue(blob, type, _opts) {
    var t = blob.read_shift(2), ret, opts = _opts||{};
    blob.l += 2;
    if(type !== VT_VARIANT)
    if(t !== type && VT_CUSTOM.indexOf(type)===-1) throw new Error('Expected type ' + type + ' saw ' + t);
    switch(type === VT_VARIANT ? t : type) {
        case 0x02 /*VT_I2*/: ret = blob.read_shift(2, 'i'); if(!opts.raw) blob.l += 2; return ret;
        case 0x03 /*VT_I4*/: ret = blob.read_shift(4, 'i'); return ret;
        case 0x0B /*VT_BOOL*/: return blob.read_shift(4) !== 0x0;
        case 0x13 /*VT_UI4*/: ret = blob.read_shift(4); return ret;
        case 0x1E /*VT_LPSTR*/: return parse_lpstr(blob, t, 4).replace(chr0,'');
        case 0x1F /*VT_LPWSTR*/: return parse_lpwstr(blob);
        case 0x40 /*VT_FILETIME*/: return parse_FILETIME(blob);
        case 0x41 /*VT_BLOB*/: return parse_BLOB(blob);
        case 0x47 /*VT_CF*/: return parse_ClipboardData(blob);
        case 0x50 /*VT_STRING*/: return parse_VtString(blob, t, !opts.raw && 4).replace(chr0,'');
        case 0x51 /*VT_USTR*/: return parse_VtUnalignedString(blob, t, 4).replace(chr0,'');
        case 0x100C /*VT_VECTOR|VT_VARIANT*/: return parse_VtVecHeadingPair(blob);
        case 0x101E /*VT_LPSTR*/: return parse_VtVecUnalignedLpstr(blob);
        default: throw new Error("TypedPropertyValue unrecognized type " + type + " " + t);
    }
}
/* [MS-OLEPS] 2.14.2 VectorHeader */
/*function parse_VTVectorVariant(blob) {
    var Length = blob.read_shift(4);
    if(Length & 1 !== 0) throw new Error("VectorHeader Length=" + Length + " must be even");
    var o = [];
    for(var i = 0; i != Length; ++i) {
        o.push(parse_TypedPropertyValue(blob, VT_VARIANT));
    }
    return o;
}*/
/* [MS-OLEPS] 2.20 PropertySet */
function parse_PropertySet(blob, PIDSI) {
    var start_addr = blob.l;
    var size = blob.read_shift(4);
    var NumProps = blob.read_shift(4);
    var Props = [], i = 0;
    var CodePage = 0;
    var Dictionary = -1, DictObj;
    for(i = 0; i != NumProps; ++i) {
        var PropID = blob.read_shift(4);
        var Offset = blob.read_shift(4);
        Props[i] = [PropID, Offset + start_addr];
    }
    var PropH = {};
    for(i = 0; i != NumProps; ++i) {
        if(blob.l !== Props[i][1]) {
            var fail = true;
            if(i>0 && PIDSI) switch(PIDSI[Props[i-1][0]].t) {
                case 0x02 /*VT_I2*/: if(blob.l +2 === Props[i][1]) { blob.l+=2; fail = false; } break;
                case 0x50 /*VT_STRING*/: if(blob.l <= Props[i][1]) { blob.l=Props[i][1]; fail = false; } break;
                case 0x100C /*VT_VECTOR|VT_VARIANT*/: if(blob.l <= Props[i][1]) { blob.l=Props[i][1]; fail = false; } break;
            }
            if(!PIDSI && blob.l <= Props[i][1]) { fail=false; blob.l = Props[i][1]; }
            if(fail) throw new Error("Read Error: Expected address " + Props[i][1] + ' at ' + blob.l + ' :' + i);
        }
        if(PIDSI) {
            var piddsi = PIDSI[Props[i][0]];
            PropH[piddsi.n] = parse_TypedPropertyValue(blob, piddsi.t, {raw:true});
            if(piddsi.p === 'version') PropH[piddsi.n] = String(PropH[piddsi.n] >> 16) + "." + String(PropH[piddsi.n] & 0xFFFF);
            if(piddsi.n == "CodePage") switch(PropH[piddsi.n]) {
                case 0: PropH[piddsi.n] = 1252;
                    /* falls through */
                case 10000: // OSX Roman
                case 1252: // Windows Latin
                case 874: // SB Windows Thai
                case 1250: // SB Windows Central Europe
                case 1251: // SB Windows Cyrillic
                case 1253: // SB Windows Greek
                case 1254: // SB Windows Turkish
                case 1255: // SB Windows Hebrew
                case 1256: // SB Windows Arabic
                case 1257: // SB Windows Baltic
                case 1258: // SB Windows Vietnam
                case 932: // DB Windows Japanese Shift-JIS
                case 936: // DB Windows Simplified Chinese GBK
                case 949: // DB Windows Korean
                case 950: // DB Windows Traditional Chinese Big5
                case 1200: // UTF16LE
                case 1201: // UTF16BE
                case 65000: case -536: // UTF-7
                case 65001: case -535: // UTF-8
                    set_cp(CodePage = PropH[piddsi.n]); break;
                default: throw new Error("Unsupported CodePage: " + PropH[piddsi.n]);
            }
        } else {
            if(Props[i][0] === 0x1) {
                CodePage = PropH.CodePage = parse_TypedPropertyValue(blob, VT_I2);
                set_cp(CodePage);
                if(Dictionary !== -1) {
                    var oldpos = blob.l;
                    blob.l = Props[Dictionary][1];
                    DictObj = parse_dictionary(blob,CodePage);
                    blob.l = oldpos;
                }
            } else if(Props[i][0] === 0) {
                if(CodePage === 0) { Dictionary = i; blob.l = Props[i+1][1]; continue; }
                DictObj = parse_dictionary(blob,CodePage);
            } else {
                var name = DictObj[Props[i][0]];
                var val;
                /* [MS-OSHARED] 2.3.3.2.3.1.2 + PROPVARIANT */
                switch(blob[blob.l]) {
                    case 0x41 /*VT_BLOB*/: blob.l += 4; val = parse_BLOB(blob); break;
                    case 0x1E /*VT_LPSTR*/: blob.l += 4; val = parse_VtString(blob, blob[blob.l-4]); break;
                    case 0x1F /*VT_LPWSTR*/: blob.l += 4; val = parse_VtString(blob, blob[blob.l-4]); break;
                    case 0x03 /*VT_I4*/: blob.l += 4; val = blob.read_shift(4, 'i'); break;
                    case 0x13 /*VT_UI4*/: blob.l += 4; val = blob.read_shift(4); break;
                    case 0x05 /*VT_R8*/: blob.l += 4; val = blob.read_shift(8, 'f'); break;
                    case 0x0B /*VT_BOOL*/: blob.l += 4; val = parsebool(blob, 4); break;
                    case 0x40 /*VT_FILETIME*/: blob.l += 4; val = new Date(parse_FILETIME(blob)); break;
                    default: throw new Error("unparsed value: " + blob[blob.l]);
                }
                PropH[name] = val;
            }
        }
    }
    blob.l = start_addr + size; /* step ahead to skip padding */
    return PropH;
}
/* [MS-OLEPS] 2.21 PropertySetStream */
function parse_PropertySetStream(file, PIDSI) {
    var blob = file.content;
    prep_blob(blob, 0);
    var NumSets, FMTID0, FMTID1, Offset0, Offset1;
    blob.chk('feff', 'Byte Order: ');
    var vers = blob.read_shift(2); // TODO: check version
    var SystemIdentifier = blob.read_shift(4);
    blob.chk(CFB.utils.consts.HEADER_CLSID, 'CLSID: ');
    NumSets = blob.read_shift(4);
    if(NumSets !== 1 && NumSets !== 2) throw "Unrecognized #Sets: " + NumSets;
    FMTID0 = blob.read_shift(16); Offset0 = blob.read_shift(4);
    if(NumSets === 1 && Offset0 !== blob.l) throw "Length mismatch";
    else if(NumSets === 2) { FMTID1 = blob.read_shift(16); Offset1 = blob.read_shift(4); }
    var PSet0 = parse_PropertySet(blob, PIDSI);
    var rval = { SystemIdentifier: SystemIdentifier };
    for(var y in PSet0) rval[y] = PSet0[y];
    //rval.blob = blob;
    rval.FMTID = FMTID0;
    //rval.PSet0 = PSet0;
    if(NumSets === 1) return rval;
    if(blob.l !== Offset1) throw "Length mismatch 2: " + blob.l + " !== " + Offset1;
    var PSet1;
    try { PSet1 = parse_PropertySet(blob, null); } catch(e) { }
    for(y in PSet1) rval[y] = PSet1[y];
    rval.FMTID = [FMTID0, FMTID1]; // TODO: verify FMTID0/1
    return rval;
}
function parsenoop2(blob, length) { blob.read_shift(length); return null; }
function parslurp(blob, length, cb) {
    var arr = [], target = blob.l + length;
    while(blob.l < target) arr.push(cb(blob, target - blob.l));
    if(target !== blob.l) throw new Error("Slurp error");
    return arr;
}
function parslurp2(blob, length, cb) {
    var arr = [], target = blob.l + length, len = blob.read_shift(2);
    while(len-- !== 0) arr.push(cb(blob, target - blob.l));
    if(target !== blob.l) throw new Error("Slurp error");
    return arr;
}
function parsebool(blob, length) { return blob.read_shift(length) === 0x1; }
function parseuint16(blob) { return blob.read_shift(2, 'u'); }
function parseuint16a(blob, length) { return parslurp(blob,length,parseuint16);}
/* --- 2.5 Structures --- */
/* [MS-XLS] 2.5.14 Boolean */
var parse_Boolean = parsebool;
/* [MS-XLS] 2.5.10 Bes (boolean or error) */
function parse_Bes(blob) {
    var v = blob.read_shift(1), t = blob.read_shift(1);
    return t === 0x01 ? v : v === 0x01;
}
/* [MS-XLS] 2.5.240 ShortXLUnicodeString */
function parse_ShortXLUnicodeString(blob, length, opts) {
    var cch = blob.read_shift(1);
    var width = 1, encoding = 'sbcs-cont';
    var cp = current_codepage;
    if(opts && opts.biff >= 8) current_codepage = 1200;
    if(opts === undefined || opts.biff !== 5) {
        var fHighByte = blob.read_shift(1);
        if(fHighByte) { width = 2; encoding = 'dbcs-cont'; }
    }
    var o = cch ? blob.read_shift(cch, encoding) : "";
    current_codepage = cp;
    return o;
}
/* 2.5.293 XLUnicodeRichExtendedString */
function parse_XLUnicodeRichExtendedString(blob) {
    var cp = current_codepage;
    current_codepage = 1200;
    var cch = blob.read_shift(2), flags = blob.read_shift(1);
    var fHighByte = flags & 0x1, fExtSt = flags & 0x4, fRichSt = flags & 0x8;
    var width = 1 + (flags & 0x1); // 0x0 -> utf8, 0x1 -> dbcs
    var cRun, cbExtRst;
    var z = {};
    if(fRichSt) cRun = blob.read_shift(2);
    if(fExtSt) cbExtRst = blob.read_shift(4);
    var encoding = (flags & 0x1) ? 'dbcs-cont' : 'sbcs-cont';
    var msg = cch === 0 ? "" : blob.read_shift(cch, encoding);
    if(fRichSt) blob.l += 4 * cRun; //TODO: parse this
    if(fExtSt) blob.l += cbExtRst; //TODO: parse this
    z.t = msg;
    if(!fRichSt) { z.raw = "<t>" + z.t + "</t>"; z.r = z.t; }
    current_codepage = cp;
    return z;
}
/* 2.5.296 XLUnicodeStringNoCch */
function parse_XLUnicodeStringNoCch(blob, cch, opts) {
    var retval;
    var fHighByte = blob.read_shift(1);
    if(fHighByte===0) { retval = blob.read_shift(cch, 'sbcs-cont'); }
    else { retval = blob.read_shift(cch, 'dbcs-cont'); }
    return retval;
}
/* 2.5.294 XLUnicodeString */
function parse_XLUnicodeString(blob, length, opts) {
    var cch = blob.read_shift(opts !== undefined && opts.biff > 0 && opts.biff < 8 ? 1 : 2);
    if(cch === 0) { blob.l++; return ""; }
    return parse_XLUnicodeStringNoCch(blob, cch, opts);
}
/* BIFF5 override */
function parse_XLUnicodeString2(blob, length, opts) {
    if(opts.biff !== 5 && opts.biff !== 2) return parse_XLUnicodeString(blob, length, opts);
    var cch = blob.read_shift(1);
    if(cch === 0) { blob.l++; return ""; }
    return blob.read_shift(cch, 'sbcs-cont');
}
/* [MS-XLS] 2.5.61 ControlInfo */
var parse_ControlInfo = parsenoop;
/* [MS-OSHARED] 2.3.7.6 URLMoniker TODO: flags */
var parse_URLMoniker = function(blob, length) {
    var len = blob.read_shift(4), start = blob.l;
    var extra = false;
    if(len > 24) {
        /* look ahead */
        blob.l += len - 24;
        if(blob.read_shift(16) === "795881f43b1d7f48af2c825dc4852763") extra = true;
        blob.l = start;
    }
    var url = blob.read_shift((extra?len-24:len)>>1, 'utf16le').replace(chr0,"");
    if(extra) blob.l += 24;
    return url;
};
/* [MS-OSHARED] 2.3.7.8 FileMoniker TODO: all fields */
var parse_FileMoniker = function(blob, length) {
    var cAnti = blob.read_shift(2);
    var ansiLength = blob.read_shift(4);
    var ansiPath = blob.read_shift(ansiLength, 'cstr');
    var endServer = blob.read_shift(2);
    var versionNumber = blob.read_shift(2);
    var cbUnicodePathSize = blob.read_shift(4);
    if(cbUnicodePathSize === 0) return ansiPath.replace(/\\/g,"/");
    var cbUnicodePathBytes = blob.read_shift(4);
    var usKeyValue = blob.read_shift(2);
    var unicodePath = blob.read_shift(cbUnicodePathBytes>>1, 'utf16le').replace(chr0,"");
    return unicodePath;
};
/* [MS-OSHARED] 2.3.7.2 HyperlinkMoniker TODO: all the monikers */
var parse_HyperlinkMoniker = function(blob, length) {
    var clsid = blob.read_shift(16); length -= 16;
    switch(clsid) {
        case "e0c9ea79f9bace118c8200aa004ba90b": return parse_URLMoniker(blob, length);
        case "0303000000000000c000000000000046": return parse_FileMoniker(blob, length);
        default: throw "unsupported moniker " + clsid;
    }
};
/* [MS-OSHARED] 2.3.7.9 HyperlinkString */
var parse_HyperlinkString = function(blob, length) {
    var len = blob.read_shift(4);
    var o = blob.read_shift(len, 'utf16le').replace(chr0, "");
    return o;
};
/* [MS-OSHARED] 2.3.7.1 Hyperlink Object TODO: unify params with XLSX */
var parse_Hyperlink = function(blob, length) {
    var end = blob.l + length;
    var sVer = blob.read_shift(4);
    if(sVer !== 2) throw new Error("Unrecognized streamVersion: " + sVer);
    var flags = blob.read_shift(2);
    blob.l += 2;
    var displayName, targetFrameName, moniker, oleMoniker, location, guid, fileTime;
    if(flags & 0x0010) displayName = parse_HyperlinkString(blob, end - blob.l);
    if(flags & 0x0080) targetFrameName = parse_HyperlinkString(blob, end - blob.l);
    if((flags & 0x0101) === 0x0101) moniker = parse_HyperlinkString(blob, end - blob.l);
    if((flags & 0x0101) === 0x0001) oleMoniker = parse_HyperlinkMoniker(blob, end - blob.l);
    if(flags & 0x0008) location = parse_HyperlinkString(blob, end - blob.l);
    if(flags & 0x0020) guid = blob.read_shift(16);
    if(flags & 0x0040) fileTime = parse_FILETIME(blob, 8);
    blob.l = end;
    var target = (targetFrameName||moniker||oleMoniker);
    if(location) target+="#"+location;
    return {Target: target};
};
/* 2.5.178 LongRGBA */
function parse_LongRGBA(blob, length) { var r = blob.read_shift(1), g = blob.read_shift(1), b = blob.read_shift(1), a = blob.read_shift(1); return [r,g,b,a]; }
/* 2.5.177 LongRGB */
function parse_LongRGB(blob, length) { var x = parse_LongRGBA(blob, length); x[3] = 0; return x; }
Source/UBCS-WEB/src/config/js-xlsx-master/bits/39_xlsbiff.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,917 @@
/* --- MS-XLS --- */
/* 2.5.19 */
function parse_XLSCell(blob, length) {
    var rw = blob.read_shift(2); // 0-indexed
    var col = blob.read_shift(2);
    var ixfe = blob.read_shift(2);
    return {r:rw, c:col, ixfe:ixfe};
}
/* 2.5.134 */
function parse_frtHeader(blob) {
    var rt = blob.read_shift(2);
    var flags = blob.read_shift(2); // TODO: parse these flags
    blob.l += 8;
    return {type: rt, flags: flags};
}
function parse_OptXLUnicodeString(blob, length, opts) { return length === 0 ? "" : parse_XLUnicodeString2(blob, length, opts); }
/* 2.5.158 */
var HIDEOBJENUM = ['SHOWALL', 'SHOWPLACEHOLDER', 'HIDEALL'];
var parse_HideObjEnum = parseuint16;
/* 2.5.344 */
function parse_XTI(blob, length) {
    var iSupBook = blob.read_shift(2), itabFirst = blob.read_shift(2,'i'), itabLast = blob.read_shift(2,'i');
    return [iSupBook, itabFirst, itabLast];
}
/* 2.5.218 */
function parse_RkRec(blob, length) {
    var ixfe = blob.read_shift(2);
    var RK = parse_RkNumber(blob);
    //console.log("::", ixfe, RK,";;");
    return [ixfe, RK];
}
/* 2.5.1 */
function parse_AddinUdf(blob, length) {
    blob.l += 4; length -= 4;
    var l = blob.l + length;
    var udfName = parse_ShortXLUnicodeString(blob, length);
    var cb = blob.read_shift(2);
    l -= blob.l;
    if(cb !== l) throw "Malformed AddinUdf: padding = " + l + " != " + cb;
    blob.l += cb;
    return udfName;
}
/* 2.5.209 TODO: Check sizes */
function parse_Ref8U(blob, length) {
    var rwFirst = blob.read_shift(2);
    var rwLast = blob.read_shift(2);
    var colFirst = blob.read_shift(2);
    var colLast = blob.read_shift(2);
    return {s:{c:colFirst, r:rwFirst}, e:{c:colLast,r:rwLast}};
}
/* 2.5.211 */
function parse_RefU(blob, length) {
    var rwFirst = blob.read_shift(2);
    var rwLast = blob.read_shift(2);
    var colFirst = blob.read_shift(1);
    var colLast = blob.read_shift(1);
    return {s:{c:colFirst, r:rwFirst}, e:{c:colLast,r:rwLast}};
}
/* 2.5.207 */
var parse_Ref = parse_RefU;
/* 2.5.143 */
function parse_FtCmo(blob, length) {
    blob.l += 4;
    var ot = blob.read_shift(2);
    var id = blob.read_shift(2);
    var flags = blob.read_shift(2);
    blob.l+=12;
    return [id, ot, flags];
}
/* 2.5.149 */
function parse_FtNts(blob, length) {
    var out = {};
    blob.l += 4;
    blob.l += 16; // GUID TODO
    out.fSharedNote = blob.read_shift(2);
    blob.l += 4;
    return out;
}
/* 2.5.142 */
function parse_FtCf(blob, length) {
    var out = {};
    blob.l += 4;
    blob.cf = blob.read_shift(2);
    return out;
}
/* 2.5.140 - 2.5.154 and friends */
var FtTab = {
    0x15: parse_FtCmo,
    0x13: parsenoop,                                /* FtLbsData */
    0x12: function(blob, length) { blob.l += 12; }, /* FtCblsData */
    0x11: function(blob, length) { blob.l += 8; },  /* FtRboData */
    0x10: parsenoop,                                /* FtEdoData */
    0x0F: parsenoop,                                /* FtGboData */
    0x0D: parse_FtNts,                              /* FtNts */
    0x0C: function(blob, length) { blob.l += 24; }, /* FtSbs */
    0x0B: function(blob, length) { blob.l += 10; }, /* FtRbo */
    0x0A: function(blob, length) { blob.l += 16; }, /* FtCbls */
    0x09: parsenoop,                                /* FtPictFmla */
    0x08: function(blob, length) { blob.l += 6; },  /* FtPioGrbit */
    0x07: parse_FtCf,                               /* FtCf */
    0x06: function(blob, length) { blob.l += 6; },  /* FtGmo */
    0x04: parsenoop,                                /* FtMacro */
    0x00: function(blob, length) { blob.l += 4; }   /* FtEnding */
};
function parse_FtArray(blob, length, ot) {
    var s = blob.l;
    var fts = [];
    while(blob.l < s + length) {
        var ft = blob.read_shift(2);
        blob.l-=2;
        try {
            fts.push(FtTab[ft](blob, s + length - blob.l));
        } catch(e) { blob.l = s + length; return fts; }
    }
    if(blob.l != s + length) blob.l = s + length; //throw "bad Object Ft-sequence";
    return fts;
}
/* 2.5.129 */
var parse_FontIndex = parseuint16;
/* --- 2.4 Records --- */
/* 2.4.21 */
function parse_BOF(blob, length) {
    var o = {};
    o.BIFFVer = blob.read_shift(2); length -= 2;
    switch(o.BIFFVer) {
        case 0x0600: /* BIFF8 */
        case 0x0500: /* BIFF5 */
        case 0x0002: case 0x0007: /* BIFF2 */
            break;
        default: throw "Unexpected BIFF Ver " + o.BIFFVer;
    }
    blob.read_shift(length);
    return o;
}
/* 2.4.146 */
function parse_InterfaceHdr(blob, length) {
    if(length === 0) return 0x04b0;
    var q;
    if((q=blob.read_shift(2))!==0x04b0) throw 'InterfaceHdr codePage ' + q;
    return 0x04b0;
}
/* 2.4.349 */
function parse_WriteAccess(blob, length, opts) {
    if(opts.enc) { blob.l += length; return ""; }
    var l = blob.l;
    // TODO: make sure XLUnicodeString doesnt overrun
    var UserName = parse_XLUnicodeString(blob, 0, opts);
    blob.read_shift(length + l - blob.l);
    return UserName;
}
/* 2.4.28 */
function parse_BoundSheet8(blob, length, opts) {
    var pos = blob.read_shift(4);
    var hidden = blob.read_shift(1) >> 6;
    var dt = blob.read_shift(1);
    switch(dt) {
        case 0: dt = 'Worksheet'; break;
        case 1: dt = 'Macrosheet'; break;
        case 2: dt = 'Chartsheet'; break;
        case 6: dt = 'VBAModule'; break;
    }
    var name = parse_ShortXLUnicodeString(blob, 0, opts);
    if(name.length === 0) name = "Sheet1";
    return { pos:pos, hs:hidden, dt:dt, name:name };
}
/* 2.4.265 TODO */
function parse_SST(blob, length) {
    var cnt = blob.read_shift(4);
    var ucnt = blob.read_shift(4);
    var strs = [];
    for(var i = 0; i != ucnt; ++i) {
        strs.push(parse_XLUnicodeRichExtendedString(blob));
    }
    strs.Count = cnt; strs.Unique = ucnt;
    return strs;
}
/* 2.4.107 */
function parse_ExtSST(blob, length) {
    var extsst = {};
    extsst.dsst = blob.read_shift(2);
    blob.l += length-2;
    return extsst;
}
/* 2.4.221 TODO*/
function parse_Row(blob, length) {
    var rw = blob.read_shift(2), col = blob.read_shift(2), Col = blob.read_shift(2), rht = blob.read_shift(2);
    blob.read_shift(4); // reserved(2), unused(2)
    var flags = blob.read_shift(1); // various flags
    blob.read_shift(1); // reserved
    blob.read_shift(2); //ixfe, other flags
    return {r:rw, c:col, cnt:Col-col};
}
/* 2.4.125 */
function parse_ForceFullCalculation(blob, length) {
    var header = parse_frtHeader(blob);
    if(header.type != 0x08A3) throw "Invalid Future Record " + header.type;
    var fullcalc = blob.read_shift(4);
    return fullcalc !== 0x0;
}
var parse_CompressPictures = parsenoop2; /* 2.4.55 Not interesting */
/* 2.4.215 rt */
function parse_RecalcId(blob, length) {
    blob.read_shift(2);
    return blob.read_shift(4);
}
/* 2.4.87 */
function parse_DefaultRowHeight (blob, length) {
    var f = blob.read_shift(2), miyRw;
    miyRw = blob.read_shift(2); // flags & 0x02 -> hidden, else empty
    var fl = {Unsynced:f&1,DyZero:(f&2)>>1,ExAsc:(f&4)>>2,ExDsc:(f&8)>>3};
    return [fl, miyRw];
}
/* 2.4.345 TODO */
function parse_Window1(blob, length) {
    var xWn = blob.read_shift(2), yWn = blob.read_shift(2), dxWn = blob.read_shift(2), dyWn = blob.read_shift(2);
    var flags = blob.read_shift(2), iTabCur = blob.read_shift(2), iTabFirst = blob.read_shift(2);
    var ctabSel = blob.read_shift(2), wTabRatio = blob.read_shift(2);
    return { Pos: [xWn, yWn], Dim: [dxWn, dyWn], Flags: flags, CurTab: iTabCur,
        FirstTab: iTabFirst, Selected: ctabSel, TabRatio: wTabRatio };
}
/* 2.4.122 TODO */
function parse_Font(blob, length, opts) {
    blob.l += 14;
    var name = parse_ShortXLUnicodeString(blob, 0, opts);
    return name;
}
/* 2.4.149 */
function parse_LabelSst(blob, length) {
    var cell = parse_XLSCell(blob);
    cell.isst = blob.read_shift(4);
    return cell;
}
/* 2.4.148 */
function parse_Label(blob, length, opts) {
    var cell = parse_XLSCell(blob, 6);
    var str = parse_XLUnicodeString(blob, length-6, opts);
    cell.val = str;
    return cell;
}
/* 2.4.126 Number Formats */
function parse_Format(blob, length, opts) {
    var ifmt = blob.read_shift(2);
    var fmtstr = parse_XLUnicodeString2(blob, 0, opts);
    return [ifmt, fmtstr];
}
/* 2.4.90 */
function parse_Dimensions(blob, length) {
    var w = length === 10 ? 2 : 4;
    var r = blob.read_shift(w), R = blob.read_shift(w),
        c = blob.read_shift(2), C = blob.read_shift(2);
    blob.l += 2;
    return {s: {r:r, c:c}, e: {r:R, c:C}};
}
/* 2.4.220 */
function parse_RK(blob, length) {
    var rw = blob.read_shift(2), col = blob.read_shift(2);
    var rkrec = parse_RkRec(blob);
    return {r:rw, c:col, ixfe:rkrec[0], rknum:rkrec[1]};
}
/* 2.4.175 */
function parse_MulRk(blob, length) {
    var target = blob.l + length - 2;
    var rw = blob.read_shift(2), col = blob.read_shift(2);
    var rkrecs = [];
    while(blob.l < target) rkrecs.push(parse_RkRec(blob));
    if(blob.l !== target) throw "MulRK read error";
    var lastcol = blob.read_shift(2);
    if(rkrecs.length != lastcol - col + 1) throw "MulRK length mismatch";
    return {r:rw, c:col, C:lastcol, rkrec:rkrecs};
}
/* 2.5.20 2.5.249 TODO */
function parse_CellStyleXF(blob, length, style) {
    var o = {};
    var a = blob.read_shift(4), b = blob.read_shift(4);
    var c = blob.read_shift(4), d = blob.read_shift(2);
    o.patternType = XLSFillPattern[c >> 26];
    o.icvFore = d & 0x7F;
    o.icvBack = (d >> 7) & 0x7F;
    return o;
}
function parse_CellXF(blob, length) {return parse_CellStyleXF(blob,length,0);}
function parse_StyleXF(blob, length) {return parse_CellStyleXF(blob,length,1);}
/* 2.4.353 TODO: actually do this right */
function parse_XF(blob, length) {
    var o = {};
    o.ifnt = blob.read_shift(2); o.ifmt = blob.read_shift(2); o.flags = blob.read_shift(2);
    o.fStyle = (o.flags >> 2) & 0x01;
    length -= 6;
    o.data = parse_CellStyleXF(blob, length, o.fStyle);
    return o;
}
/* 2.4.134 */
function parse_Guts(blob, length) {
    blob.l += 4;
    var out = [blob.read_shift(2), blob.read_shift(2)];
    if(out[0] !== 0) out[0]--;
    if(out[1] !== 0) out[1]--;
    if(out[0] > 7 || out[1] > 7) throw "Bad Gutters: " + out;
    return out;
}
/* 2.4.24 */
function parse_BoolErr(blob, length) {
    var cell = parse_XLSCell(blob, 6);
    var val = parse_Bes(blob, 2);
    cell.val = val;
    cell.t = (val === true || val === false) ? 'b' : 'e';
    return cell;
}
/* 2.4.180 Number */
function parse_Number(blob, length) {
    var cell = parse_XLSCell(blob, 6);
    var xnum = parse_Xnum(blob, 8);
    cell.val = xnum;
    return cell;
}
var parse_XLHeaderFooter = parse_OptXLUnicodeString; // TODO: parse 2.4.136
/* 2.4.271 */
function parse_SupBook(blob, length, opts) {
    var end = blob.l + length;
    var ctab = blob.read_shift(2);
    var cch = blob.read_shift(2);
    var virtPath;
    if(cch >=0x01 && cch <=0xff) virtPath = parse_XLUnicodeStringNoCch(blob, cch);
    var rgst = blob.read_shift(end - blob.l);
    opts.sbcch = cch;
    return [cch, ctab, virtPath, rgst];
}
/* 2.4.105 TODO */
function parse_ExternName(blob, length, opts) {
    var flags = blob.read_shift(2);
    var body;
    var o = {
        fBuiltIn: flags & 0x01,
        fWantAdvise: (flags >>> 1) & 0x01,
        fWantPict: (flags >>> 2) & 0x01,
        fOle: (flags >>> 3) & 0x01,
        fOleLink: (flags >>> 4) & 0x01,
        cf: (flags >>> 5) & 0x3FF,
        fIcon: flags >>> 15 & 0x01
    };
    if(opts.sbcch === 0x3A01) body = parse_AddinUdf(blob, length-2);
    //else throw new Error("unsupported SupBook cch: " + opts.sbcch);
    o.body = body || blob.read_shift(length-2);
    return o;
}
/* 2.4.150 TODO */
function parse_Lbl(blob, length, opts) {
    if(opts.biff < 8) return parse_Label(blob, length, opts);
    var target = blob.l + length;
    var flags = blob.read_shift(2);
    var chKey = blob.read_shift(1);
    var cch = blob.read_shift(1);
    var cce = blob.read_shift(2);
    blob.l += 2;
    var itab = blob.read_shift(2);
    blob.l += 4;
    var name = parse_XLUnicodeStringNoCch(blob, cch, opts);
    var rgce = parse_NameParsedFormula(blob, target - blob.l, opts, cce);
    return {
        chKey: chKey,
        Name: name,
        rgce: rgce
    };
}
/* 2.4.106 TODO: verify supbook manipulation */
function parse_ExternSheet(blob, length, opts) {
    if(opts.biff < 8) return parse_ShortXLUnicodeString(blob, length, opts);
    var o = parslurp2(blob,length,parse_XTI);
    var oo = [];
    if(opts.sbcch === 0x0401) {
        for(var i = 0; i != o.length; ++i) oo.push(opts.snames[o[i][1]]);
        return oo;
    }
    else return o;
}
/* 2.4.260 */
function parse_ShrFmla(blob, length, opts) {
    var ref = parse_RefU(blob, 6);
    blob.l++;
    var cUse = blob.read_shift(1);
    length -= 8;
    return [parse_SharedParsedFormula(blob, length, opts), cUse];
}
/* 2.4.4 TODO */
function parse_Array(blob, length, opts) {
    var ref = parse_Ref(blob, 6);
    blob.l += 6; length -= 12; /* TODO: fAlwaysCalc */
    return [ref, parse_ArrayParsedFormula(blob, length, opts, ref)];
}
/* 2.4.173 */
function parse_MTRSettings(blob, length) {
    var fMTREnabled = blob.read_shift(4) !== 0x00;
    var fUserSetThreadCount = blob.read_shift(4) !== 0x00;
    var cUserThreadCount = blob.read_shift(4);
    return [fMTREnabled, fUserSetThreadCount, cUserThreadCount];
}
/* 2.5.186 TODO: BIFF5 */
function parse_NoteSh(blob, length, opts) {
    if(opts.biff < 8) return;
    var row = blob.read_shift(2), col = blob.read_shift(2);
    var flags = blob.read_shift(2), idObj = blob.read_shift(2);
    var stAuthor = parse_XLUnicodeString2(blob, 0, opts);
    if(opts.biff < 8) blob.read_shift(1);
    return [{r:row,c:col}, stAuthor, idObj, flags];
}
/* 2.4.179 */
function parse_Note(blob, length, opts) {
    /* TODO: Support revisions */
    return parse_NoteSh(blob, length, opts);
}
/* 2.4.168 */
function parse_MergeCells(blob, length) {
    var merges = [];
    var cmcs = blob.read_shift(2);
    while (cmcs--) merges.push(parse_Ref8U(blob,length));
    return merges;
}
/* 2.4.181 TODO: parse all the things! */
function parse_Obj(blob, length) {
    var cmo = parse_FtCmo(blob, 22); // id, ot, flags
    var fts = parse_FtArray(blob, length-22, cmo[1]);
    return { cmo: cmo, ft:fts };
}
/* 2.4.329 TODO: parse properly */
function parse_TxO(blob, length, opts) {
    var s = blob.l;
try {
    blob.l += 4;
    var ot = (opts.lastobj||{cmo:[0,0]}).cmo[1];
    var controlInfo;
    if([0,5,7,11,12,14].indexOf(ot) == -1) blob.l += 6;
    else controlInfo = parse_ControlInfo(blob, 6, opts);
    var cchText = blob.read_shift(2);
    var cbRuns = blob.read_shift(2);
    var ifntEmpty = parse_FontIndex(blob, 2);
    var len = blob.read_shift(2);
    blob.l += len;
    //var fmla = parse_ObjFmla(blob, s + length - blob.l);
    var texts = "";
    for(var i = 1; i < blob.lens.length-1; ++i) {
        if(blob.l-s != blob.lens[i]) throw "TxO: bad continue record";
        var hdr = blob[blob.l];
        var t = parse_XLUnicodeStringNoCch(blob, blob.lens[i+1]-blob.lens[i]-1);
        texts += t;
        if(texts.length >= (hdr ? cchText : 2*cchText)) break;
    }
    if(texts.length !== cchText && texts.length !== cchText*2) {
        throw "cchText: " + cchText + " != " + texts.length;
    }
    blob.l = s + length;
    /* 2.5.272 TxORuns */
//    var rgTxoRuns = [];
//    for(var j = 0; j != cbRuns/8-1; ++j) blob.l += 8;
//    var cchText2 = blob.read_shift(2);
//    if(cchText2 !== cchText) throw "TxOLastRun mismatch: " + cchText2 + " " + cchText;
//    blob.l += 6;
//    if(s + length != blob.l) throw "TxO " + (s + length) + ", at " + blob.l;
    return { t: texts };
} catch(e) { blob.l = s + length; return { t: texts||"" }; }
}
/* 2.4.140 */
var parse_HLink = function(blob, length) {
    var ref = parse_Ref8U(blob, 8);
    blob.l += 16; /* CLSID */
    var hlink = parse_Hyperlink(blob, length-24);
    return [ref, hlink];
};
/* 2.4.141 */
var parse_HLinkTooltip = function(blob, length) {
    var end = blob.l + length;
    blob.read_shift(2);
    var ref = parse_Ref8U(blob, 8);
    var wzTooltip = blob.read_shift((length-10)/2, 'dbcs-cont');
    wzTooltip = wzTooltip.replace(chr0,"");
    return [ref, wzTooltip];
};
/* 2.4.63 */
function parse_Country(blob, length) {
    var o = [], d;
    d = blob.read_shift(2); o[0] = CountryEnum[d] || d;
    d = blob.read_shift(2); o[1] = CountryEnum[d] || d;
    return o;
}
/* 2.4.50 ClrtClient */
function parse_ClrtClient(blob, length) {
    var ccv = blob.read_shift(2);
    var o = [];
    while(ccv-->0) o.push(parse_LongRGB(blob, 8));
    return o;
}
/* 2.4.188 */
function parse_Palette(blob, length) {
    var ccv = blob.read_shift(2);
    var o = [];
    while(ccv-->0) o.push(parse_LongRGB(blob, 8));
    return o;
}
/* 2.4.354 */
function parse_XFCRC(blob, length) {
    blob.l += 2;
    var o = {cxfs:0, crc:0};
    o.cxfs = blob.read_shift(2);
    o.crc = blob.read_shift(4);
    return o;
}
var parse_Style = parsenoop;
var parse_StyleExt = parsenoop;
var parse_ColInfo = parsenoop;
var parse_Window2 = parsenoop;
var parse_Backup = parsebool; /* 2.4.14 */
var parse_Blank = parse_XLSCell; /* 2.4.20 Just the cell */
var parse_BottomMargin = parse_Xnum; /* 2.4.27 */
var parse_BuiltInFnGroupCount = parseuint16; /* 2.4.30 0x0E or 0x10 but excel 2011 generates 0x11? */
var parse_CalcCount = parseuint16; /* 2.4.31 #Iterations */
var parse_CalcDelta = parse_Xnum; /* 2.4.32 */
var parse_CalcIter = parsebool;  /* 2.4.33 1=iterative calc */
var parse_CalcMode = parseuint16; /* 2.4.34 0=manual, 1=auto (def), 2=table */
var parse_CalcPrecision = parsebool; /* 2.4.35 */
var parse_CalcRefMode = parsenoop2; /* 2.4.36 */
var parse_CalcSaveRecalc = parsebool; /* 2.4.37 */
var parse_CodePage = parseuint16; /* 2.4.52 */
var parse_Compat12 = parsebool; /* 2.4.54 true = no compatibility check */
var parse_Date1904 = parsebool; /* 2.4.77 - 1=1904,0=1900 */
var parse_DefColWidth = parseuint16; /* 2.4.89 */
var parse_DSF = parsenoop2; /* 2.4.94 -- MUST be ignored */
var parse_EntExU2 = parsenoop2; /* 2.4.102 -- Explicitly says to ignore */
var parse_EOF = parsenoop2; /* 2.4.103 */
var parse_Excel9File = parsenoop2; /* 2.4.104 -- Optional and unused */
var parse_FeatHdr = parsenoop2; /* 2.4.112 */
var parse_FontX = parseuint16; /* 2.4.123 */
var parse_Footer = parse_XLHeaderFooter; /* 2.4.124 */
var parse_GridSet = parseuint16; /* 2.4.132, =1 */
var parse_HCenter = parsebool; /* 2.4.135 sheet centered horizontal on print */
var parse_Header = parse_XLHeaderFooter; /* 2.4.136 */
var parse_HideObj = parse_HideObjEnum; /* 2.4.139 */
var parse_InterfaceEnd = parsenoop2; /* 2.4.145 -- noop */
var parse_LeftMargin = parse_Xnum; /* 2.4.151 */
var parse_Mms = parsenoop2; /* 2.4.169 -- Explicitly says to ignore */
var parse_ObjProtect = parsebool; /* 2.4.183 -- must be 1 if present */
var parse_Password = parseuint16; /* 2.4.191 */
var parse_PrintGrid = parsebool; /* 2.4.202 */
var parse_PrintRowCol = parsebool; /* 2.4.203 */
var parse_PrintSize = parseuint16; /* 2.4.204 0:3 */
var parse_Prot4Rev = parsebool; /* 2.4.205 */
var parse_Prot4RevPass = parseuint16; /* 2.4.206 */
var parse_Protect = parsebool; /* 2.4.207 */
var parse_RefreshAll = parsebool; /* 2.4.217 -- must be 0 if not template */
var parse_RightMargin = parse_Xnum; /* 2.4.219 */
var parse_RRTabId = parseuint16a; /* 2.4.241 */
var parse_ScenarioProtect = parsebool; /* 2.4.245 */
var parse_Scl = parseuint16a; /* 2.4.247 num, den */
var parse_String = parse_XLUnicodeString; /* 2.4.268 */
var parse_SxBool = parsebool; /* 2.4.274 */
var parse_TopMargin = parse_Xnum; /* 2.4.328 */
var parse_UsesELFs = parsebool; /* 2.4.337 -- should be 0 */
var parse_VCenter = parsebool; /* 2.4.342 */
var parse_WinProtect = parsebool; /* 2.4.347 */
var parse_WriteProtect = parsenoop; /* 2.4.350 empty record */
/* ---- */
var parse_VerticalPageBreaks = parsenoop;
var parse_HorizontalPageBreaks = parsenoop;
var parse_Selection = parsenoop;
var parse_Continue = parsenoop;
var parse_Pane = parsenoop;
var parse_Pls = parsenoop;
var parse_DCon = parsenoop;
var parse_DConRef = parsenoop;
var parse_DConName = parsenoop;
var parse_XCT = parsenoop;
var parse_CRN = parsenoop;
var parse_FileSharing = parsenoop;
var parse_Uncalced = parsenoop;
var parse_Template = parsenoop;
var parse_Intl = parsenoop;
var parse_WsBool = parsenoop;
var parse_Sort = parsenoop;
var parse_Sync = parsenoop;
var parse_LPr = parsenoop;
var parse_DxGCol = parsenoop;
var parse_FnGroupName = parsenoop;
var parse_FilterMode = parsenoop;
var parse_AutoFilterInfo = parsenoop;
var parse_AutoFilter = parsenoop;
var parse_Setup = parsenoop;
var parse_ScenMan = parsenoop;
var parse_SCENARIO = parsenoop;
var parse_SxView = parsenoop;
var parse_Sxvd = parsenoop;
var parse_SXVI = parsenoop;
var parse_SxIvd = parsenoop;
var parse_SXLI = parsenoop;
var parse_SXPI = parsenoop;
var parse_DocRoute = parsenoop;
var parse_RecipName = parsenoop;
var parse_MulBlank = parsenoop;
var parse_SXDI = parsenoop;
var parse_SXDB = parsenoop;
var parse_SXFDB = parsenoop;
var parse_SXDBB = parsenoop;
var parse_SXNum = parsenoop;
var parse_SxErr = parsenoop;
var parse_SXInt = parsenoop;
var parse_SXString = parsenoop;
var parse_SXDtr = parsenoop;
var parse_SxNil = parsenoop;
var parse_SXTbl = parsenoop;
var parse_SXTBRGIITM = parsenoop;
var parse_SxTbpg = parsenoop;
var parse_ObProj = parsenoop;
var parse_SXStreamID = parsenoop;
var parse_DBCell = parsenoop;
var parse_SXRng = parsenoop;
var parse_SxIsxoper = parsenoop;
var parse_BookBool = parsenoop;
var parse_DbOrParamQry = parsenoop;
var parse_OleObjectSize = parsenoop;
var parse_SXVS = parsenoop;
var parse_BkHim = parsenoop;
var parse_MsoDrawingGroup = parsenoop;
var parse_MsoDrawing = parsenoop;
var parse_MsoDrawingSelection = parsenoop;
var parse_PhoneticInfo = parsenoop;
var parse_SxRule = parsenoop;
var parse_SXEx = parsenoop;
var parse_SxFilt = parsenoop;
var parse_SxDXF = parsenoop;
var parse_SxItm = parsenoop;
var parse_SxName = parsenoop;
var parse_SxSelect = parsenoop;
var parse_SXPair = parsenoop;
var parse_SxFmla = parsenoop;
var parse_SxFormat = parsenoop;
var parse_SXVDEx = parsenoop;
var parse_SXFormula = parsenoop;
var parse_SXDBEx = parsenoop;
var parse_RRDInsDel = parsenoop;
var parse_RRDHead = parsenoop;
var parse_RRDChgCell = parsenoop;
var parse_RRDRenSheet = parsenoop;
var parse_RRSort = parsenoop;
var parse_RRDMove = parsenoop;
var parse_RRFormat = parsenoop;
var parse_RRAutoFmt = parsenoop;
var parse_RRInsertSh = parsenoop;
var parse_RRDMoveBegin = parsenoop;
var parse_RRDMoveEnd = parsenoop;
var parse_RRDInsDelBegin = parsenoop;
var parse_RRDInsDelEnd = parsenoop;
var parse_RRDConflict = parsenoop;
var parse_RRDDefName = parsenoop;
var parse_RRDRstEtxp = parsenoop;
var parse_LRng = parsenoop;
var parse_CUsr = parsenoop;
var parse_CbUsr = parsenoop;
var parse_UsrInfo = parsenoop;
var parse_UsrExcl = parsenoop;
var parse_FileLock = parsenoop;
var parse_RRDInfo = parsenoop;
var parse_BCUsrs = parsenoop;
var parse_UsrChk = parsenoop;
var parse_UserBView = parsenoop;
var parse_UserSViewBegin = parsenoop; // overloaded
var parse_UserSViewEnd = parsenoop;
var parse_RRDUserView = parsenoop;
var parse_Qsi = parsenoop;
var parse_CondFmt = parsenoop;
var parse_CF = parsenoop;
var parse_DVal = parsenoop;
var parse_DConBin = parsenoop;
var parse_Lel = parsenoop;
var parse_XLSCodeName = parse_XLUnicodeString;
var parse_SXFDBType = parsenoop;
var parse_ObNoMacros = parsenoop;
var parse_Dv = parsenoop;
var parse_Index = parsenoop;
var parse_Table = parsenoop;
var parse_BigName = parsenoop;
var parse_ContinueBigName = parsenoop;
var parse_WebPub = parsenoop;
var parse_QsiSXTag = parsenoop;
var parse_DBQueryExt = parsenoop;
var parse_ExtString = parsenoop;
var parse_TxtQry = parsenoop;
var parse_Qsir = parsenoop;
var parse_Qsif = parsenoop;
var parse_RRDTQSIF = parsenoop;
var parse_OleDbConn = parsenoop;
var parse_WOpt = parsenoop;
var parse_SXViewEx = parsenoop;
var parse_SXTH = parsenoop;
var parse_SXPIEx = parsenoop;
var parse_SXVDTEx = parsenoop;
var parse_SXViewEx9 = parsenoop;
var parse_ContinueFrt = parsenoop;
var parse_RealTimeData = parsenoop;
var parse_ChartFrtInfo = parsenoop;
var parse_FrtWrapper = parsenoop;
var parse_StartBlock = parsenoop;
var parse_EndBlock = parsenoop;
var parse_StartObject = parsenoop;
var parse_EndObject = parsenoop;
var parse_CatLab = parsenoop;
var parse_YMult = parsenoop;
var parse_SXViewLink = parsenoop;
var parse_PivotChartBits = parsenoop;
var parse_FrtFontList = parsenoop;
var parse_SheetExt = parsenoop;
var parse_BookExt = parsenoop;
var parse_SXAddl = parsenoop;
var parse_CrErr = parsenoop;
var parse_HFPicture = parsenoop;
var parse_Feat = parsenoop;
var parse_DataLabExt = parsenoop;
var parse_DataLabExtContents = parsenoop;
var parse_CellWatch = parsenoop;
var parse_FeatHdr11 = parsenoop;
var parse_Feature11 = parsenoop;
var parse_DropDownObjIds = parsenoop;
var parse_ContinueFrt11 = parsenoop;
var parse_DConn = parsenoop;
var parse_List12 = parsenoop;
var parse_Feature12 = parsenoop;
var parse_CondFmt12 = parsenoop;
var parse_CF12 = parsenoop;
var parse_CFEx = parsenoop;
var parse_AutoFilter12 = parsenoop;
var parse_ContinueFrt12 = parsenoop;
var parse_MDTInfo = parsenoop;
var parse_MDXStr = parsenoop;
var parse_MDXTuple = parsenoop;
var parse_MDXSet = parsenoop;
var parse_MDXProp = parsenoop;
var parse_MDXKPI = parsenoop;
var parse_MDB = parsenoop;
var parse_PLV = parsenoop;
var parse_DXF = parsenoop;
var parse_TableStyles = parsenoop;
var parse_TableStyle = parsenoop;
var parse_TableStyleElement = parsenoop;
var parse_NamePublish = parsenoop;
var parse_NameCmt = parsenoop;
var parse_SortData = parsenoop;
var parse_GUIDTypeLib = parsenoop;
var parse_FnGrp12 = parsenoop;
var parse_NameFnGrp12 = parsenoop;
var parse_HeaderFooter = parsenoop;
var parse_CrtLayout12 = parsenoop;
var parse_CrtMlFrt = parsenoop;
var parse_CrtMlFrtContinue = parsenoop;
var parse_ShapePropsStream = parsenoop;
var parse_TextPropsStream = parsenoop;
var parse_RichTextStream = parsenoop;
var parse_CrtLayout12A = parsenoop;
var parse_Units = parsenoop;
var parse_Chart = parsenoop;
var parse_Series = parsenoop;
var parse_DataFormat = parsenoop;
var parse_LineFormat = parsenoop;
var parse_MarkerFormat = parsenoop;
var parse_AreaFormat = parsenoop;
var parse_PieFormat = parsenoop;
var parse_AttachedLabel = parsenoop;
var parse_SeriesText = parsenoop;
var parse_ChartFormat = parsenoop;
var parse_Legend = parsenoop;
var parse_SeriesList = parsenoop;
var parse_Bar = parsenoop;
var parse_Line = parsenoop;
var parse_Pie = parsenoop;
var parse_Area = parsenoop;
var parse_Scatter = parsenoop;
var parse_CrtLine = parsenoop;
var parse_Axis = parsenoop;
var parse_Tick = parsenoop;
var parse_ValueRange = parsenoop;
var parse_CatSerRange = parsenoop;
var parse_AxisLine = parsenoop;
var parse_CrtLink = parsenoop;
var parse_DefaultText = parsenoop;
var parse_Text = parsenoop;
var parse_ObjectLink = parsenoop;
var parse_Frame = parsenoop;
var parse_Begin = parsenoop;
var parse_End = parsenoop;
var parse_PlotArea = parsenoop;
var parse_Chart3d = parsenoop;
var parse_PicF = parsenoop;
var parse_DropBar = parsenoop;
var parse_Radar = parsenoop;
var parse_Surf = parsenoop;
var parse_RadarArea = parsenoop;
var parse_AxisParent = parsenoop;
var parse_LegendException = parsenoop;
var parse_ShtProps = parsenoop;
var parse_SerToCrt = parsenoop;
var parse_AxesUsed = parsenoop;
var parse_SBaseRef = parsenoop;
var parse_SerParent = parsenoop;
var parse_SerAuxTrend = parsenoop;
var parse_IFmtRecord = parsenoop;
var parse_Pos = parsenoop;
var parse_AlRuns = parsenoop;
var parse_BRAI = parsenoop;
var parse_SerAuxErrBar = parsenoop;
var parse_SerFmt = parsenoop;
var parse_Chart3DBarShape = parsenoop;
var parse_Fbi = parsenoop;
var parse_BopPop = parsenoop;
var parse_AxcExt = parsenoop;
var parse_Dat = parsenoop;
var parse_PlotGrowth = parsenoop;
var parse_SIIndex = parsenoop;
var parse_GelFrame = parsenoop;
var parse_BopPopCustom = parsenoop;
var parse_Fbi2 = parsenoop;
/* --- Specific to versions before BIFF8 --- */
function parse_BIFF5String(blob) {
    var len = blob.read_shift(1);
    return blob.read_shift(len, 'sbcs-cont');
}
/* BIFF2_??? where ??? is the name from [XLS] */
function parse_BIFF2STR(blob, length, opts) {
    var cell = parse_XLSCell(blob, 6);
    ++blob.l;
    var str = parse_XLUnicodeString2(blob, length-7, opts);
    cell.val = str;
    return cell;
}
function parse_BIFF2NUM(blob, length, opts) {
    var cell = parse_XLSCell(blob, 6);
    ++blob.l;
    var num = parse_Xnum(blob, 8);
    cell.val = num;
    return cell;
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/42_sstxml.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,204 @@
/* 18.4.1 charset to codepage mapping */
var CS2CP = {
    0:    1252, /* ANSI */
    1:   65001, /* DEFAULT */
    2:   65001, /* SYMBOL */
    77:  10000, /* MAC */
    128:   932, /* SHIFTJIS */
    129:   949, /* HANGUL */
    130:  1361, /* JOHAB */
    134:   936, /* GB2312 */
    136:   950, /* CHINESEBIG5 */
    161:  1253, /* GREEK */
    162:  1254, /* TURKISH */
    163:  1258, /* VIETNAMESE */
    177:  1255, /* HEBREW */
    178:  1256, /* ARABIC */
    186:  1257, /* BALTIC */
    204:  1251, /* RUSSIAN */
    222:   874, /* THAI */
    238:  1250, /* EASTEUROPE */
    255:  1252, /* OEM */
    69:   6969  /* MISC */
};
/* Parse a list of <r> tags */
var parse_rs = (function parse_rs_factory() {
    var tregex = matchtag("t"), rpregex = matchtag("rPr"), rregex = /<r>/g, rend = /<\/r>/, nlregex = /\r\n/g;
    /* 18.4.7 rPr CT_RPrElt */
    var parse_rpr = function parse_rpr(rpr, intro, outro) {
        var font = {}, cp = 65001;
        var m = rpr.match(tagregex), i = 0;
        if(m) for(;i!=m.length; ++i) {
            var y = parsexmltag(m[i]);
            switch(y[0]) {
                /* 18.8.12 condense CT_BooleanProperty */
                /* ** not required . */
                case '<condense': break;
                /* 18.8.17 extend CT_BooleanProperty */
                /* ** not required . */
                case '<extend': break;
                /* 18.8.36 shadow CT_BooleanProperty */
                /* ** not required . */
                case '<shadow':
                    /* falls through */
                case '<shadow/>': break;
                /* 18.4.1 charset CT_IntProperty TODO */
                case '<charset':
                    if(y.val == '1') break;
                    cp = CS2CP[parseInt(y.val, 10)];
                    break;
                /* 18.4.2 outline CT_BooleanProperty TODO */
                case '<outline':
                    /* falls through */
                case '<outline/>': break;
                /* 18.4.5 rFont CT_FontName */
                case '<rFont': font.name = y.val; break;
                /* 18.4.11 sz CT_FontSize */
                case '<sz': font.sz = y.val; break;
                /* 18.4.10 strike CT_BooleanProperty */
                case '<strike':
                    if(!y.val) break;
                    /* falls through */
                case '<strike/>': font.strike = 1; break;
                case '</strike>': break;
                /* 18.4.13 u CT_UnderlineProperty */
                case '<u':
                    if(!y.val) break;
                    /* falls through */
                case '<u/>': font.u = 1; break;
                case '</u>': break;
                /* 18.8.2 b */
                case '<b':
                    if(!y.val) break;
                    /* falls through */
                case '<b/>': font.b = 1; break;
                case '</b>': break;
                /* 18.8.26 i */
                case '<i':
                    if(!y.val) break;
                    /* falls through */
                case '<i/>': font.i = 1; break;
                case '</i>': break;
                /* 18.3.1.15 color CT_Color TODO: tint, theme, auto, indexed */
                case '<color':
                    if(y.rgb) font.color = y.rgb.substr(2,6);
                    break;
                /* 18.8.18 family ST_FontFamily */
                case '<family': font.family = y.val; break;
                /* 18.4.14 vertAlign CT_VerticalAlignFontProperty TODO */
                case '<vertAlign': break;
                /* 18.8.35 scheme CT_FontScheme TODO */
                case '<scheme': break;
                default:
                    if(y[0].charCodeAt(1) !== 47) throw 'Unrecognized rich format ' + y[0];
            }
        }
        /* TODO: These should be generated styles, not inline */
        var style = [];
        if(font.b) style.push("font-weight: bold;");
        if(font.i) style.push("font-style: italic;");
        intro.push('<span style="' + style.join("") + '">');
        outro.push("</span>");
        return cp;
    };
    /* 18.4.4 r CT_RElt */
    function parse_r(r) {
        var terms = [[],"",[]];
        /* 18.4.12 t ST_Xstring */
        var t = r.match(tregex), cp = 65001;
        if(!isval(t)) return "";
        terms[1] = t[1];
        var rpr = r.match(rpregex);
        if(isval(rpr)) cp = parse_rpr(rpr[1], terms[0], terms[2]);
        return terms[0].join("") + terms[1].replace(nlregex,'<br/>') + terms[2].join("");
    }
    return function parse_rs(rs) {
        return rs.replace(rregex,"").split(rend).map(parse_r).join("");
    };
})();
/* 18.4.8 si CT_Rst */
var sitregex = /<t[^>]*>([^<]*)<\/t>/g, sirregex = /<r>/;
function parse_si(x, opts) {
    var html = opts ? opts.cellHTML : true;
    var z = {};
    if(!x) return null;
    var y;
    /* 18.4.12 t ST_Xstring (Plaintext String) */
    if(x.charCodeAt(1) === 116) {
        z.t = utf8read(unescapexml(x.substr(x.indexOf(">")+1).split(/<\/t>/)[0]));
        z.r = x;
        if(html) z.h = z.t;
    }
    /* 18.4.4 r CT_RElt (Rich Text Run) */
    else if((y = x.match(sirregex))) {
        z.r = x;
        z.t = utf8read(unescapexml(x.match(sitregex).join("").replace(tagregex,"")));
        if(html) z.h = parse_rs(x);
    }
    /* 18.4.3 phoneticPr CT_PhoneticPr (TODO: needed for Asian support) */
    /* 18.4.6 rPh CT_PhoneticRun (TODO: needed for Asian support) */
    return z;
}
/* 18.4 Shared String Table */
var sstr0 = /<sst([^>]*)>([\s\S]*)<\/sst>/;
var sstr1 = /<(?:si|sstItem)>/g;
var sstr2 = /<\/(?:si|sstItem)>/;
function parse_sst_xml(data, opts) {
    var s = [], ss;
    /* 18.4.9 sst CT_Sst */
    var sst = data.match(sstr0);
    if(isval(sst)) {
        ss = sst[2].replace(sstr1,"").split(sstr2);
        for(var i = 0; i != ss.length; ++i) {
            var o = parse_si(ss[i], opts);
            if(o != null) s[s.length] = o;
        }
        sst = parsexmltag(sst[1]); s.Count = sst.count; s.Unique = sst.uniqueCount;
    }
    return s;
}
RELS.SST = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings";
var straywsregex = /^\s|\s$|[\t\n\r]/;
function write_sst_xml(sst, opts) {
    if(!opts.bookSST) return "";
    var o = [XML_HEADER];
    o[o.length] = (writextag('sst', null, {
        xmlns: XMLNS.main[0],
        count: sst.Count,
        uniqueCount: sst.Unique
    }));
    for(var i = 0; i != sst.length; ++i) { if(sst[i] == null) continue;
        var s = sst[i];
        var sitag = "<si>";
        if(s.r) sitag += s.r;
        else {
            sitag += "<t";
            if(s.t.match(straywsregex)) sitag += ' xml:space="preserve"';
            sitag += ">" + escapexml(s.t) + "</t>";
        }
        sitag += "</si>";
        o[o.length] = (sitag);
    }
    if(o.length>2){ o[o.length] = ('</sst>'); o[1]=o[1].replace("/>",">"); }
    return o.join("");
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/43_sstbin.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,39 @@
/* [MS-XLSB] 2.4.219 BrtBeginSst */
function parse_BrtBeginSst(data, length) {
    return [data.read_shift(4), data.read_shift(4)];
}
/* [MS-XLSB] 2.1.7.45 Shared Strings */
function parse_sst_bin(data, opts) {
    var s = [];
    var pass = false;
    recordhopper(data, function hopper_sst(val, R, RT) {
        switch(R.n) {
            case 'BrtBeginSst': s.Count = val[0]; s.Unique = val[1]; break;
            case 'BrtSSTItem': s.push(val); break;
            case 'BrtEndSst': return true;
            /* TODO: produce a test case with a future record */
            case 'BrtFRTBegin': pass = true; break;
            case 'BrtFRTEnd': pass = false; break;
            default: if(!pass || opts.WTF) throw new Error("Unexpected record " + RT + " " + R.n);
        }
    });
    return s;
}
function write_BrtBeginSst(sst, o) {
    if(!o) o = new_buf(8);
    o.write_shift(4, sst.Count);
    o.write_shift(4, sst.Unique);
    return o;
}
var write_BrtSSTItem = write_RichStr;
function write_sst_bin(sst, opts) {
    var ba = buf_array();
    write_record(ba, "BrtBeginSst", write_BrtBeginSst(sst));
    for(var i = 0; i < sst.length; ++i) write_record(ba, "BrtSSTItem", write_BrtSSTItem(sst[i]));
    write_record(ba, "BrtEndSst");
    return ba.end();
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/44_offcrypto.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,180 @@
function _JS2ANSI(str) { if(typeof cptable !== 'undefined') return cptable.utils.encode(1252, str); return str.split("").map(function(x) { return x.charCodeAt(0); }); }
/* [MS-OFFCRYPTO] 2.1.4 Version */
function parse_Version(blob, length) {
    var o = {};
    o.Major = blob.read_shift(2);
    o.Minor = blob.read_shift(2);
    return o;
}
/* [MS-OFFCRYPTO] 2.3.2 Encryption Header */
function parse_EncryptionHeader(blob, length) {
    var o = {};
    o.Flags = blob.read_shift(4);
    // Check if SizeExtra is 0x00000000
    var tmp = blob.read_shift(4);
    if(tmp !== 0) throw 'Unrecognized SizeExtra: ' + tmp;
    o.AlgID = blob.read_shift(4);
    switch(o.AlgID) {
        case 0: case 0x6801: case 0x660E: case 0x660F: case 0x6610: break;
        default: throw 'Unrecognized encryption algorithm: ' + o.AlgID;
    }
    parsenoop(blob, length-12);
    return o;
}
/* [MS-OFFCRYPTO] 2.3.3 Encryption Verifier */
function parse_EncryptionVerifier(blob, length) {
    return parsenoop(blob, length);
}
/* [MS-OFFCRYPTO] 2.3.5.1 RC4 CryptoAPI Encryption Header */
function parse_RC4CryptoHeader(blob, length) {
    var o = {};
    var vers = o.EncryptionVersionInfo = parse_Version(blob, 4); length -= 4;
    if(vers.Minor != 2) throw 'unrecognized minor version code: ' + vers.Minor;
    if(vers.Major > 4 || vers.Major < 2) throw 'unrecognized major version code: ' + vers.Major;
    o.Flags = blob.read_shift(4); length -= 4;
    var sz = blob.read_shift(4); length -= 4;
    o.EncryptionHeader = parse_EncryptionHeader(blob, sz); length -= sz;
    o.EncryptionVerifier = parse_EncryptionVerifier(blob, length);
    return o;
}
/* [MS-OFFCRYPTO] 2.3.6.1 RC4 Encryption Header */
function parse_RC4Header(blob, length) {
    var o = {};
    var vers = o.EncryptionVersionInfo = parse_Version(blob, 4); length -= 4;
    if(vers.Major != 1 || vers.Minor != 1) throw 'unrecognized version code ' + vers.Major + ' : ' + vers.Minor;
    o.Salt = blob.read_shift(16);
    o.EncryptedVerifier = blob.read_shift(16);
    o.EncryptedVerifierHash = blob.read_shift(16);
    return o;
}
/* [MS-OFFCRYPTO] 2.3.7.1 Binary Document Password Verifier Derivation */
function crypto_CreatePasswordVerifier_Method1(Password) {
    var Verifier = 0x0000, PasswordArray;
    var PasswordDecoded = _JS2ANSI(Password);
    var len = PasswordDecoded.length + 1, i, PasswordByte;
    var Intermediate1, Intermediate2, Intermediate3;
    PasswordArray = new_raw_buf(len);
    PasswordArray[0] = PasswordDecoded.length;
    for(i = 1; i != len; ++i) PasswordArray[i] = PasswordDecoded[i-1];
    for(i = len-1; i >= 0; --i) {
        PasswordByte = PasswordArray[i];
        Intermediate1 = ((Verifier & 0x4000) === 0x0000) ? 0 : 1;
        Intermediate2 = (Verifier << 1) & 0x7FFF;
        Intermediate3 = Intermediate1 | Intermediate2;
        Verifier = Intermediate3 ^ PasswordByte;
    }
    return Verifier ^ 0xCE4B;
}
/* [MS-OFFCRYPTO] 2.3.7.2 Binary Document XOR Array Initialization */
var crypto_CreateXorArray_Method1 = (function() {
    var PadArray = [0xBB, 0xFF, 0xFF, 0xBA, 0xFF, 0xFF, 0xB9, 0x80, 0x00, 0xBE, 0x0F, 0x00, 0xBF, 0x0F, 0x00];
    var InitialCode = [0xE1F0, 0x1D0F, 0xCC9C, 0x84C0, 0x110C, 0x0E10, 0xF1CE, 0x313E, 0x1872, 0xE139, 0xD40F, 0x84F9, 0x280C, 0xA96A, 0x4EC3];
    var XorMatrix = [0xAEFC, 0x4DD9, 0x9BB2, 0x2745, 0x4E8A, 0x9D14, 0x2A09, 0x7B61, 0xF6C2, 0xFDA5, 0xEB6B, 0xC6F7, 0x9DCF, 0x2BBF, 0x4563, 0x8AC6, 0x05AD, 0x0B5A, 0x16B4, 0x2D68, 0x5AD0, 0x0375, 0x06EA, 0x0DD4, 0x1BA8, 0x3750, 0x6EA0, 0xDD40, 0xD849, 0xA0B3, 0x5147, 0xA28E, 0x553D, 0xAA7A, 0x44D5, 0x6F45, 0xDE8A, 0xAD35, 0x4A4B, 0x9496, 0x390D, 0x721A, 0xEB23, 0xC667, 0x9CEF, 0x29FF, 0x53FE, 0xA7FC, 0x5FD9, 0x47D3, 0x8FA6, 0x0F6D, 0x1EDA, 0x3DB4, 0x7B68, 0xF6D0, 0xB861, 0x60E3, 0xC1C6, 0x93AD, 0x377B, 0x6EF6, 0xDDEC, 0x45A0, 0x8B40, 0x06A1, 0x0D42, 0x1A84, 0x3508, 0x6A10, 0xAA51, 0x4483, 0x8906, 0x022D, 0x045A, 0x08B4, 0x1168, 0x76B4, 0xED68, 0xCAF1, 0x85C3, 0x1BA7, 0x374E, 0x6E9C, 0x3730, 0x6E60, 0xDCC0, 0xA9A1, 0x4363, 0x86C6, 0x1DAD, 0x3331, 0x6662, 0xCCC4, 0x89A9, 0x0373, 0x06E6, 0x0DCC, 0x1021, 0x2042, 0x4084, 0x8108, 0x1231, 0x2462, 0x48C4];
    var Ror = function(Byte) { return ((Byte/2) | (Byte*128)) & 0xFF; };
    var XorRor = function(byte1, byte2) { return Ror(byte1 ^ byte2); };
    var CreateXorKey_Method1 = function(Password) {
        var XorKey = InitialCode[Password.length - 1];
        var CurrentElement = 0x68;
        for(var i = Password.length-1; i >= 0; --i) {
            var Char = Password[i];
            for(var j = 0; j != 7; ++j) {
                if(Char & 0x40) XorKey ^= XorMatrix[CurrentElement];
                Char *= 2; --CurrentElement;
            }
        }
        return XorKey;
    };
    return function(password) {
        var Password = _JS2ANSI(password);
        var XorKey = CreateXorKey_Method1(Password);
        var Index = Password.length;
        var ObfuscationArray = new_raw_buf(16);
        for(var i = 0; i != 16; ++i) ObfuscationArray[i] = 0x00;
        var Temp, PasswordLastChar, PadIndex;
        if((Index & 1) === 1) {
            Temp = XorKey >> 8;
            ObfuscationArray[Index] = XorRor(PadArray[0], Temp);
            --Index;
            Temp = XorKey & 0xFF;
            PasswordLastChar = Password[Password.length - 1];
            ObfuscationArray[Index] = XorRor(PasswordLastChar, Temp);
        }
        while(Index > 0) {
            --Index;
            Temp = XorKey >> 8;
            ObfuscationArray[Index] = XorRor(Password[Index], Temp);
            --Index;
            Temp = XorKey & 0xFF;
            ObfuscationArray[Index] = XorRor(Password[Index], Temp);
        }
        Index = 15;
        PadIndex = 15 - Password.length;
        while(PadIndex > 0) {
            Temp = XorKey >> 8;
            ObfuscationArray[Index] = XorRor(PadArray[PadIndex], Temp);
            --Index;
            --PadIndex;
            Temp = XorKey & 0xFF;
            ObfuscationArray[Index] = XorRor(Password[Index], Temp);
            --Index;
            --PadIndex;
        }
        return ObfuscationArray;
    };
})();
/* [MS-OFFCRYPTO] 2.3.7.3 Binary Document XOR Data Transformation Method 1 */
var crypto_DecryptData_Method1 = function(password, Data, XorArrayIndex, XorArray, O) {
    /* If XorArray is set, use it; if O is not set, make changes in-place */
    if(!O) O = Data;
    if(!XorArray) XorArray = crypto_CreateXorArray_Method1(password);
    var Index, Value;
    for(Index = 0; Index != Data.length; ++Index) {
        Value = Data[Index];
        Value ^= XorArray[XorArrayIndex];
        Value = ((Value>>5) | (Value<<3)) & 0xFF;
        O[Index] = Value;
        ++XorArrayIndex;
    }
    return [O, XorArrayIndex, XorArray];
};
var crypto_MakeXorDecryptor = function(password) {
    var XorArrayIndex = 0, XorArray = crypto_CreateXorArray_Method1(password);
    return function(Data) {
        var O = crypto_DecryptData_Method1(null, Data, XorArrayIndex, XorArray);
        XorArrayIndex = O[1];
        return O[0];
    };
};
/* 2.5.343 */
function parse_XORObfuscation(blob, length, opts, out) {
    var o = { key: parseuint16(blob), verificationBytes: parseuint16(blob) };
    if(opts.password) o.verifier = crypto_CreatePasswordVerifier_Method1(opts.password);
    out.valid = o.verificationBytes === o.verifier;
    if(out.valid) out.insitu_decrypt = crypto_MakeXorDecryptor(opts.password);
    return o;
}
/* 2.4.117 */
function parse_FilePassHeader(blob, length, oo) {
    var o = oo || {}; o.Info = blob.read_shift(2); blob.l -= 2;
    if(o.Info === 1) o.Data = parse_RC4Header(blob, length);
    else o.Data = parse_RC4CryptoHeader(blob, length);
    return o;
}
function parse_FilePass(blob, length, opts) {
    var o = { Type: blob.read_shift(2) }; /* wEncryptionType */
    if(o.Type) parse_FilePassHeader(blob, length-2, o);
    else parse_XORObfuscation(blob, length-2, opts, o);
    return o;
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/45_styutils.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,85 @@
function hex2RGB(h) {
    var o = h.substr(h[0]==="#"?1:0,6);
    return [parseInt(o.substr(0,2),16),parseInt(o.substr(2,2),16),parseInt(o.substr(4,2),16)];
}
function rgb2Hex(rgb) {
    for(var i=0,o=1; i!=3; ++i) o = o*256 + (rgb[i]>255?255:rgb[i]<0?0:rgb[i]);
    return o.toString(16).toUpperCase().substr(1);
}
function rgb2HSL(rgb) {
    var R = rgb[0]/255, G = rgb[1]/255, B=rgb[2]/255;
    var M = Math.max(R, G, B), m = Math.min(R, G, B), C = M - m;
    if(C === 0) return [0, 0, R];
    var H6 = 0, S = 0, L2 = (M + m);
    S = C / (L2 > 1 ? 2 - L2 : L2);
    switch(M){
        case R: H6 = ((G - B) / C + 6)%6; break;
        case G: H6 = ((B - R) / C + 2); break;
        case B: H6 = ((R - G) / C + 4); break;
    }
    return [H6 / 6, S, L2 / 2];
}
function hsl2RGB(hsl){
    var H = hsl[0], S = hsl[1], L = hsl[2];
    var C = S * 2 * (L < 0.5 ? L : 1 - L), m = L - C/2;
    var rgb = [m,m,m], h6 = 6*H;
    var X;
    if(S !== 0) switch(h6|0) {
        case 0: case 6: X = C * h6; rgb[0] += C; rgb[1] += X; break;
        case 1: X = C * (2 - h6);   rgb[0] += X; rgb[1] += C; break;
        case 2: X = C * (h6 - 2);   rgb[1] += C; rgb[2] += X; break;
        case 3: X = C * (4 - h6);   rgb[1] += X; rgb[2] += C; break;
        case 4: X = C * (h6 - 4);   rgb[2] += C; rgb[0] += X; break;
        case 5: X = C * (6 - h6);   rgb[2] += X; rgb[0] += C; break;
    }
    for(var i = 0; i != 3; ++i) rgb[i] = Math.round(rgb[i]*255);
    return rgb;
}
/* 18.8.3 bgColor tint algorithm */
function rgb_tint(hex, tint) {
    if(tint == 0) return hex;
    var hsl = rgb2HSL(hex2RGB(hex));
    if (tint < 0) hsl[2] = hsl[2] * (1 + tint);
    else hsl[2] = 1 - (1 - hsl[2]) * (1 - tint);
  var rev =rgb2Hex(hsl2RGB(hsl))
    return rev;
}
/* 18.3.1.13 width calculations */
var DEF_MDW = 7, MAX_MDW = 15, MIN_MDW = 1, MDW = DEF_MDW;
function width2px(width) { return (( width + ((128/MDW)|0)/256 )* MDW )|0; }
function px2char(px) { return (((px - 5)/MDW * 100 + 0.5)|0)/100; }
function char2width(chr) { return (((chr * MDW + 5)/MDW*256)|0)/256; }
function cycle_width(collw) { return char2width(px2char(width2px(collw))); }
function find_mdw(collw, coll) {
    if(cycle_width(collw) != collw) {
        for(MDW=DEF_MDW; MDW>MIN_MDW; --MDW) if(cycle_width(collw) === collw) break;
        if(MDW === MIN_MDW) for(MDW=DEF_MDW+1; MDW<MAX_MDW; ++MDW) if(cycle_width(collw) === collw) break;
        if(MDW === MAX_MDW) MDW = DEF_MDW;
    }
}
/* [MS-EXSPXML3] 2.4.54 ST_enmPattern */
var XLMLPatternTypeMap = {
    "None": "none",
    "Solid": "solid",
    "Gray50": "mediumGray",
    "Gray75": "darkGray",
    "Gray25": "lightGray",
    "HorzStripe": "darkHorizontal",
    "VertStripe": "darkVertical",
    "ReverseDiagStripe": "darkDown",
    "DiagStripe": "darkUp",
    "DiagCross": "darkGrid",
    "ThickDiagCross": "darkTrellis",
    "ThinHorzStripe": "lightHorizontal",
    "ThinVertStripe": "lightVertical",
    "ThinReverseDiagStripe": "lightDown",
    "ThinHorzCross": "lightGrid"
};
Source/UBCS-WEB/src/config/js-xlsx-master/bits/46_stycommon.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,4 @@
var styles = {}; // shared styles
var themes = {}; // shared themes
Source/UBCS-WEB/src/config/js-xlsx-master/bits/47_styxml.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,400 @@
/* 18.8.21 fills CT_Fills */
function parse_fills(t, opts) {
  styles.Fills = [];
  var fill = {};
  t[0].match(tagregex).forEach(function (x) {
    var y = parsexmltag(x);
    switch (y[0]) {
      case '<fills':
      case '<fills>':
      case '</fills>':
        break;
      /* 18.8.20 fill CT_Fill */
      case '<fill>':
        break;
      case '</fill>':
        styles.Fills.push(fill);
        fill = {};
        break;
      /* 18.8.32 patternFill CT_PatternFill */
      case '<patternFill':
        if (y.patternType) fill.patternType = y.patternType;
        break;
      case '<patternFill/>':
      case '</patternFill>':
        break;
      /* 18.8.3 bgColor CT_Color */
      case '<bgColor':
        if (!fill.bgColor) fill.bgColor = {};
        if (y.indexed) fill.bgColor.indexed = parseInt(y.indexed, 10);
        if (y.theme) fill.bgColor.theme = parseInt(y.theme, 10);
        if (y.tint) fill.bgColor.tint = parseFloat(y.tint);
        if (y.theme && themes.themeElements && themes.themeElements.clrScheme) {
          fill.bgColor.rgb = rgb_tint(themes.themeElements.clrScheme[fill.bgColor.theme].rgb, fill.bgColor.tint || 0);
          if (opts.WTF) fill.bgColor.raw_rgb = rgb_tint(themes.themeElements.clrScheme[fill.bgColor.theme].rgb,0);
        }
        /* Excel uses ARGB strings */
        if (y.rgb) fill.bgColor.rgb = y.rgb;//.substring(y.rgb.length - 6);
        break;
      case '<bgColor/>':
      case '</bgColor>':
        break;
      /* 18.8.19 fgColor CT_Color */
      case '<fgColor':
        if (!fill.fgColor) fill.fgColor = {};
        if (y.theme) fill.fgColor.theme = parseInt(y.theme, 10);
        if (y.tint) fill.fgColor.tint = parseFloat(y.tint);
        if (y.theme && themes.themeElements && themes.themeElements.clrScheme) {
          fill.fgColor.rgb = rgb_tint(themes.themeElements.clrScheme[fill.fgColor.theme].rgb, fill.fgColor.tint || 0);
          if (opts.WTF) fill.fgColor.raw_rgb = rgb_tint(themes.themeElements.clrScheme[fill.fgColor.theme].rgb,0);
        }
        /* Excel uses ARGB strings */
        if (y.rgb) fill.fgColor.rgb = y.rgb;//.substring(y.rgb.length - 6);
        break;
      case '<fgColor/>':
      case '</fgColor>':
        break;
      default:
        if (opts.WTF) throw 'unrecognized ' + y[0] + ' in fills';
    }
  });
}
function parse_fonts(t, opts) {
  styles.Fonts = [];
  var font = {};
  t[0].match(tagregex).forEach(function (x) {
    var y = parsexmltag(x);
    switch (y[0]) {
      case '<fonts':
      case  '<fonts>':
      case '</fonts>':
        break;
      case '<font':
        break;
      case '</font>':
        styles.Fonts.push(font);
        ;
        font = {};
        break;
      case '<name':
        if (y.val) font.name = y.val;
        break;
      case '<name/>':
      case '</name>':
        break;
      case '<b/>':
        font.bold = true;
        break;
      case '<u/>':
        font.underline = true;
        break;
      case '<i/>':
        font.italic = true;
        break;
      case '<strike/>':
        font.strike = true;
        break;
      case '<outline/>':
        font.outline = true;
        break;
      case '<shadow/>':
        font.shadow = true;
        break;
      case '<sz':
        if (y.val) font.sz = y.val;
        break;
      case '<sz/>':
      case '</sz>':
        break;
      case '<vertAlign':
        if (y.val) font.vertAlign = y.val;
        break;
      case '<vertAlign/>':
      case '</vertAlign>':
        break;
      case '<color':
        if (!font.color) font.color = {};
        if (y.theme) font.color.theme = y.theme;
        if (y.tint) font.color.tint = y.tint;
        if (y.theme && themes.themeElements && themes.themeElements.clrScheme) {
          font.color.rgb = rgb_tint(themes.themeElements.clrScheme[font.color.theme].rgb, font.color.tint || 0);
        }
        if (y.rgb) font.color.rgb = y.rgb;
        break;
      case '<color/>':
      case '</color>':
        break;
    }
  });
}
function parse_borders(t, opts) {
  styles.Borders = [];
  var border = {}, sub_border = {};
  t[0].match(tagregex).forEach(function (x) {
    var y = parsexmltag(x);
    switch (y[0]) {
      case '<borders':
      case  '<borders>':
      case '</borders>':
        break;
      case '<border':
      case '<border>':
        border = {};
        if (y.diagonalUp) { border.diagonalUp = y.diagonalUp; }
        if (y.diagonalDown) { border.diagonalDown = y.diagonalDown; }
        styles.Borders.push(border);
        break;
        break;
      case '</border>':
        break;
      case '<left':
        sub_border = border.left = {};
        if (y.style) {
          sub_border.style = y.style;
        }
        break;
      case '<right':
        sub_border = border.right = {};
        if (y.style) {
          sub_border.style = y.style;
        }
        break;
      case '<top':
        sub_border = border.top = {};
        if (y.style) {
          sub_border.style = y.style;
        }
        break;
      case '<bottom':
        sub_border = border.bottom = {};
        if (y.style) {
          sub_border.style = y.style;
        }
        break;
      case '<diagonal':
        sub_border = border.diagonal = {};
        if (y.style) {
          sub_border.style = y.style;
        }
        break;
      case '<color':
        sub_border.color = {};
        if (y.theme) sub_border.color.theme = y.theme;
        if (y.theme && themes.themeElements && themes.themeElements.clrScheme) {
          sub_border.color.rgb = rgb_tint(themes.themeElements.clrScheme[sub_border.color.theme].rgb, sub_border.color.tint || 0);
        }
        if (y.tint) sub_border.color.tint = y.tint;
        if (y.rgb) sub_border.color.rgb = y.rgb;
        if (y.auto) sub_border.color.auto = y.auto;
        break;
      case '<name/>':
      case '</name>':
        break;
      default:
        break;
    }
  });
}
/* 18.8.31 numFmts CT_NumFmts */
function parse_numFmts(t, opts) {
  styles.NumberFmt = [];
  var k = keys(SSF._table);
  for (var i = 0; i < k.length; ++i) styles.NumberFmt[k[i]] = SSF._table[k[i]];
  var m = t[0].match(tagregex);
  for (i = 0; i < m.length; ++i) {
    var y = parsexmltag(m[i]);
    switch (y[0]) {
      case '<numFmts':
      case '</numFmts>':
      case '<numFmts/>':
      case '<numFmts>':
        break;
      case '<numFmt':
      {
        var f = unescapexml(utf8read(y.formatCode)), j = parseInt(y.numFmtId, 10);
        styles.NumberFmt[j] = f;
        if (j > 0) SSF.load(f, j);
      }
        break;
      default:
        if (opts.WTF) throw 'unrecognized ' + y[0] + ' in numFmts';
    }
  }
}
function write_numFmts(NF, opts) {
  var o = ["<numFmts>"];
  [
    [5, 8],
    [23, 26],
    [41, 44],
    [63, 66],
    [164, 392]
  ].forEach(function (r) {
    for (var i = r[0]; i <= r[1]; ++i) if (NF[i] !== undefined) o[o.length] = (writextag('numFmt', null, {numFmtId: i, formatCode: escapexml(NF[i])}));
  });
  if (o.length === 1) return "";
  o[o.length] = ("</numFmts>");
  o[0] = writextag('numFmts', null, { count: o.length - 2 }).replace("/>", ">");
  return o.join("");
}
/* 18.8.10 cellXfs CT_CellXfs */
function parse_cellXfs(t, opts) {
  styles.CellXf = [];
  var xf;
  t[0].match(tagregex).forEach(function (x) {
    var y = parsexmltag(x);
    switch (y[0]) {
      case '<cellXfs':
      case '<cellXfs>':
      case '<cellXfs/>':
      case '</cellXfs>':
        break;
      /* 18.8.45 xf CT_Xf */
      case '<xf':
          xf = y;
          delete xf[0];
        delete y[0];
        if (xf.numFmtId) xf.numFmtId = parseInt(xf.numFmtId, 10);
        if (xf.fillId) xf.fillId = parseInt(xf.fillId, 10);
        styles.CellXf.push(xf);
        break;
      case '</xf>':
        break;
      /* 18.8.1 alignment CT_CellAlignment */
      case '<alignment':
      case '<alignment/>':
        var alignment = {}
          if (y.vertical) { alignment.vertical = y.vertical;}
          if (y.horizontal) { alignment.horizontal = y.horizontal;}
          if (y.textRotation != undefined) { alignment.textRotation = y.textRotation; }
          if (y.indent) { alignment.indent = y.indent; }
          if (y.wrapText) { alignment.wrapText = y.wrapText; }
          xf.alignment = alignment;
        break;
      /* 18.8.33 protection CT_CellProtection */
      case '<protection':
      case '</protection>':
      case '<protection/>':
        break;
      case '<extLst':
      case '</extLst>':
        break;
      case '<ext':
        break;
      default:
        if (opts.WTF) throw 'unrecognized ' + y[0] + ' in cellXfs';
    }
  });
}
function write_cellXfs(cellXfs) {
  var o = [];
  o[o.length] = (writextag('cellXfs', null));
  cellXfs.forEach(function (c) {
    o[o.length] = (writextag('xf', null, c));
  });
  o[o.length] = ("</cellXfs>");
  if (o.length === 2) return "";
  o[0] = writextag('cellXfs', null, {count: o.length - 2}).replace("/>", ">");
  return o.join("");
}
/* 18.8 Styles CT_Stylesheet*/
var parse_sty_xml = (function make_pstyx() {
  var numFmtRegex = /<numFmts([^>]*)>.*<\/numFmts>/;
  var cellXfRegex = /<cellXfs([^>]*)>.*<\/cellXfs>/;
  var fillsRegex = /<fills([^>]*)>.*<\/fills>/;
  var bordersRegex = /<borders([^>]*)>.*<\/borders>/;
  return function parse_sty_xml(data, opts) {
    /* 18.8.39 styleSheet CT_Stylesheet */
    var t;
    /* numFmts CT_NumFmts ? */
    if ((t = data.match(numFmtRegex))) parse_numFmts(t, opts);
    /* fonts CT_Fonts ? */
    if ((t = data.match(/<fonts([^>]*)>.*<\/fonts>/))) parse_fonts(t, opts)
    /* fills CT_Fills */
    if ((t = data.match(fillsRegex))) parse_fills(t, opts);
    /* borders CT_Borders ? */
    if ((t = data.match(bordersRegex))) parse_borders(t, opts);
    /* cellStyleXfs CT_CellStyleXfs ? */
    /* cellXfs CT_CellXfs ? */
    if ((t = data.match(cellXfRegex))) parse_cellXfs(t, opts);
    /* dxfs CT_Dxfs ? */
    /* tableStyles CT_TableStyles ? */
    /* colors CT_Colors ? */
    /* extLst CT_ExtensionList ? */
    return styles;
  };
})();
var STYLES_XML_ROOT = writextag('styleSheet', null, {
  'xmlns': XMLNS.main[0],
  'xmlns:vt': XMLNS.vt
});
RELS.STY = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles";
function write_sty_xml(wb, opts) {
  if (typeof style_builder != 'undefined' && typeof 'require' != 'undefined') {
    return style_builder.toXml();
  }
  var o = [XML_HEADER, STYLES_XML_ROOT], w;
  if ((w = write_numFmts(wb.SSF)) != null) o[o.length] = w;
  o[o.length] = ('<fonts count="1"><font><sz val="12"/><color theme="1"/><name val="Calibri"/><family val="2"/><scheme val="minor"/></font></fonts>');
  o[o.length] = ('<fills count="2"><fill><patternFill patternType="none"/></fill><fill><patternFill patternType="gray125"/></fill></fills>');
  o[o.length] = ('<borders count="1"><border><left/><right/><top/><bottom/><diagonal/></border></borders>');
  o[o.length] = ('<cellStyleXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0"/></cellStyleXfs>');
  if ((w = write_cellXfs(opts.cellXfs))) o[o.length] = (w);
  o[o.length] = ('<cellStyles count="1"><cellStyle name="Normal" xfId="0" builtinId="0"/></cellStyles>');
  o[o.length] = ('<dxfs count="0"/>');
  o[o.length] = ('<tableStyles count="0" defaultTableStyle="TableStyleMedium9" defaultPivotStyle="PivotStyleMedium4"/>');
  if (o.length > 2) {
    o[o.length] = ('</styleSheet>');
    o[1] = o[1].replace("/>", ">");
  }
  return o.join("");
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/48_stybin.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,133 @@
/* [MS-XLSB] 2.4.651 BrtFmt */
function parse_BrtFmt(data, length) {
    var ifmt = data.read_shift(2);
    var stFmtCode = parse_XLWideString(data,length-2);
    return [ifmt, stFmtCode];
}
/* [MS-XLSB] 2.4.653 BrtFont TODO */
function parse_BrtFont(data, length) {
    var out = {flags:{}};
    out.dyHeight = data.read_shift(2);
    out.grbit = parse_FontFlags(data, 2);
    out.bls = data.read_shift(2);
    out.sss = data.read_shift(2);
    out.uls = data.read_shift(1);
    out.bFamily = data.read_shift(1);
    out.bCharSet = data.read_shift(1);
    data.l++;
    out.brtColor = parse_BrtColor(data, 8);
    out.bFontScheme = data.read_shift(1);
    out.name = parse_XLWideString(data, length - 21);
    out.flags.Bold = out.bls === 0x02BC;
    out.flags.Italic = out.grbit.fItalic;
    out.flags.Strikeout = out.grbit.fStrikeout;
    out.flags.Outline = out.grbit.fOutline;
    out.flags.Shadow = out.grbit.fShadow;
    out.flags.Condense = out.grbit.fCondense;
    out.flags.Extend = out.grbit.fExtend;
    out.flags.Sub = out.sss & 0x2;
    out.flags.Sup = out.sss & 0x1;
    return out;
}
/* [MS-XLSB] 2.4.816 BrtXF */
function parse_BrtXF(data, length) {
    var ixfeParent = data.read_shift(2);
    var ifmt = data.read_shift(2);
    parsenoop(data, length-4);
    return {ixfe:ixfeParent, ifmt:ifmt };
}
/* [MS-XLSB] 2.1.7.50 Styles */
function parse_sty_bin(data, opts) {
    styles.NumberFmt = [];
    for(var y in SSF._table) styles.NumberFmt[y] = SSF._table[y];
    styles.CellXf = [];
    var state = ""; /* TODO: this should be a stack */
    var pass = false;
    recordhopper(data, function hopper_sty(val, R, RT) {
        switch(R.n) {
            case 'BrtFmt':
                styles.NumberFmt[val[0]] = val[1]; SSF.load(val[1], val[0]);
                break;
            case 'BrtFont': break; /* TODO */
            case 'BrtKnownFonts': break; /* TODO */
            case 'BrtFill': break; /* TODO */
            case 'BrtBorder': break; /* TODO */
            case 'BrtXF':
                if(state === "CELLXFS") {
                    styles.CellXf.push(val);
                }
                break; /* TODO */
            case 'BrtStyle': break; /* TODO */
            case 'BrtDXF': break; /* TODO */
            case 'BrtMRUColor': break; /* TODO */
            case 'BrtIndexedColor': break; /* TODO */
            case 'BrtBeginStyleSheet': break;
            case 'BrtEndStyleSheet': break;
            case 'BrtBeginTableStyle': break;
            case 'BrtTableStyleElement': break;
            case 'BrtEndTableStyle': break;
            case 'BrtBeginFmts': state = "FMTS"; break;
            case 'BrtEndFmts': state = ""; break;
            case 'BrtBeginFonts': state = "FONTS"; break;
            case 'BrtEndFonts': state = ""; break;
            case 'BrtACBegin': state = "ACFONTS"; break;
            case 'BrtACEnd': state = ""; break;
            case 'BrtBeginFills': state = "FILLS"; break;
            case 'BrtEndFills': state = ""; break;
            case 'BrtBeginBorders': state = "BORDERS"; break;
            case 'BrtEndBorders': state = ""; break;
            case 'BrtBeginCellStyleXFs': state = "CELLSTYLEXFS"; break;
            case 'BrtEndCellStyleXFs': state = ""; break;
            case 'BrtBeginCellXFs': state = "CELLXFS"; break;
            case 'BrtEndCellXFs': state = ""; break;
            case 'BrtBeginStyles': state = "STYLES"; break;
            case 'BrtEndStyles': state = ""; break;
            case 'BrtBeginDXFs': state = "DXFS"; break;
            case 'BrtEndDXFs': state = ""; break;
            case 'BrtBeginTableStyles': state = "TABLESTYLES"; break;
            case 'BrtEndTableStyles': state = ""; break;
            case 'BrtBeginColorPalette': state = "COLORPALETTE"; break;
            case 'BrtEndColorPalette': state = ""; break;
            case 'BrtBeginIndexedColors': state = "INDEXEDCOLORS"; break;
            case 'BrtEndIndexedColors': state = ""; break;
            case 'BrtBeginMRUColors': state = "MRUCOLORS"; break;
            case 'BrtEndMRUColors': state = ""; break;
            case 'BrtFRTBegin': pass = true; break;
            case 'BrtFRTEnd': pass = false; break;
            case 'BrtBeginStyleSheetExt14': break;
            case 'BrtBeginSlicerStyles': break;
            case 'BrtEndSlicerStyles': break;
            case 'BrtBeginTimelineStylesheetExt15': break;
            case 'BrtEndTimelineStylesheetExt15': break;
            case 'BrtBeginTimelineStyles': break;
            case 'BrtEndTimelineStyles': break;
            case 'BrtEndStyleSheetExt14': break;
            default: if(!pass || opts.WTF) throw new Error("Unexpected record " + RT + " " + R.n);
        }
    });
    return styles;
}
/* [MS-XLSB] 2.1.7.50 Styles */
function write_sty_bin(data, opts) {
    var ba = buf_array();
    write_record(ba, "BrtBeginStyleSheet");
    /* [FMTS] */
    /* [FONTS] */
    /* [FILLS] */
    /* [BORDERS] */
    /* CELLSTYLEXFS */
    /* CELLXFS*/
    /* STYLES */
    /* DXFS */
    /* TABLESTYLES */
    /* [COLORPALETTE] */
    /* FRTSTYLESHEET*/
    write_record(ba, "BrtEndStyleSheet");
    return ba.end();
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/49_theme.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,116 @@
RELS.THEME = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme";
/* 20.1.6.2 clrScheme CT_ColorScheme */
function parse_clrScheme(t, opts) {
    themes.themeElements.clrScheme = [];
    var color = {};
    t[0].match(tagregex).forEach(function(x) {
        var y = parsexmltag(x);
        switch(y[0]) {
            case '<a:clrScheme': case '</a:clrScheme>': break;
            /* 20.1.2.3.32 srgbClr CT_SRgbColor */
            case '<a:srgbClr': color.rgb = y.val; break;
            /* 20.1.2.3.33 sysClr CT_SystemColor */
            case '<a:sysClr': color.rgb = y.lastClr; break;
            /* 20.1.4.1.9 dk1 (Dark 1) */
            case '<a:dk1>':
            case '</a:dk1>':
            /* 20.1.4.1.10 dk2 (Dark 2) */
            case '<a:dk2>':
            case '</a:dk2>':
            /* 20.1.4.1.22 lt1 (Light 1) */
            case '<a:lt1>':
            case '</a:lt1>':
            /* 20.1.4.1.23 lt2 (Light 2) */
            case '<a:lt2>':
            case '</a:lt2>':
            /* 20.1.4.1.1 accent1 (Accent 1) */
            case '<a:accent1>':
            case '</a:accent1>':
            /* 20.1.4.1.2 accent2 (Accent 2) */
            case '<a:accent2>':
            case '</a:accent2>':
            /* 20.1.4.1.3 accent3 (Accent 3) */
            case '<a:accent3>':
            case '</a:accent3>':
            /* 20.1.4.1.4 accent4 (Accent 4) */
            case '<a:accent4>':
            case '</a:accent4>':
            /* 20.1.4.1.5 accent5 (Accent 5) */
            case '<a:accent5>':
            case '</a:accent5>':
            /* 20.1.4.1.6 accent6 (Accent 6) */
            case '<a:accent6>':
            case '</a:accent6>':
            /* 20.1.4.1.19 hlink (Hyperlink) */
            case '<a:hlink>':
            case '</a:hlink>':
            /* 20.1.4.1.15 folHlink (Followed Hyperlink) */
            case '<a:folHlink>':
            case '</a:folHlink>':
                if (y[0][1] === '/') {
                    themes.themeElements.clrScheme.push(color);
                    color = {};
                } else {
                    color.name = y[0].substring(3, y[0].length - 1);
                }
                break;
            default: if(opts.WTF) throw 'unrecognized ' + y[0] + ' in clrScheme';
        }
    });
}
/* 20.1.4.1.18 fontScheme CT_FontScheme */
function parse_fontScheme(t, opts) { }
/* 20.1.4.1.15 fmtScheme CT_StyleMatrix */
function parse_fmtScheme(t, opts) { }
var clrsregex = /<a:clrScheme([^>]*)>[^\u2603]*<\/a:clrScheme>/;
var fntsregex = /<a:fontScheme([^>]*)>[^\u2603]*<\/a:fontScheme>/;
var fmtsregex = /<a:fmtScheme([^>]*)>[^\u2603]*<\/a:fmtScheme>/;
/* 20.1.6.10 themeElements CT_BaseStyles */
function parse_themeElements(data, opts) {
    themes.themeElements = {};
    var t;
    [
        /* clrScheme CT_ColorScheme */
        ['clrScheme', clrsregex, parse_clrScheme],
        /* fontScheme CT_FontScheme */
        ['fontScheme', fntsregex, parse_fontScheme],
        /* fmtScheme CT_StyleMatrix */
        ['fmtScheme', fmtsregex, parse_fmtScheme]
    ].forEach(function(m) {
        if(!(t=data.match(m[1]))) throw m[0] + ' not found in themeElements';
        m[2](t, opts);
    });
}
var themeltregex = /<a:themeElements([^>]*)>[^\u2603]*<\/a:themeElements>/;
/* 14.2.7 Theme Part */
function parse_theme_xml(data, opts) {
    /* 20.1.6.9 theme CT_OfficeStyleSheet */
    if(!data || data.length === 0) return themes;
    var t;
    /* themeElements CT_BaseStyles */
    if(!(t=data.match(themeltregex))) throw 'themeElements not found in theme';
    parse_themeElements(t[0], opts);
    return themes;
}
//function write_theme() { return '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"><a:themeElements><a:clrScheme name="Office"><a:dk1><a:sysClr val="windowText" lastClr="000000"/></a:dk1><a:lt1><a:sysClr val="window" lastClr="FFFFFF"/></a:lt1><a:dk2><a:srgbClr val="1F497D"/></a:dk2><a:lt2><a:srgbClr val="EEECE1"/></a:lt2><a:accent1><a:srgbClr val="4F81BD"/></a:accent1><a:accent2><a:srgbClr val="C0504D"/></a:accent2><a:accent3><a:srgbClr val="9BBB59"/></a:accent3><a:accent4><a:srgbClr val="8064A2"/></a:accent4><a:accent5><a:srgbClr val="4BACC6"/></a:accent5><a:accent6><a:srgbClr val="F79646"/></a:accent6><a:hlink><a:srgbClr val="0000FF"/></a:hlink><a:folHlink><a:srgbClr val="800080"/></a:folHlink></a:clrScheme><a:fontScheme name="Office"><a:majorFont><a:latin typeface="Cambria"/><a:ea typeface=""/><a:cs typeface=""/><a:font script="Jpan" typeface="ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯"/><a:font script="Hang" typeface="맑은 ê³ ë”•"/><a:font script="Hans" typeface="宋体"/><a:font script="Hant" typeface="新細明體"/><a:font script="Arab" typeface="Times New Roman"/><a:font script="Hebr" typeface="Times New Roman"/><a:font script="Thai" typeface="Tahoma"/><a:font script="Ethi" typeface="Nyala"/><a:font script="Beng" typeface="Vrinda"/><a:font script="Gujr" typeface="Shruti"/><a:font script="Khmr" typeface="MoolBoran"/><a:font script="Knda" typeface="Tunga"/><a:font script="Guru" typeface="Raavi"/><a:font script="Cans" typeface="Euphemia"/><a:font script="Cher" typeface="Plantagenet Cherokee"/><a:font script="Yiii" typeface="Microsoft Yi Baiti"/><a:font script="Tibt" typeface="Microsoft Himalaya"/><a:font script="Thaa" typeface="MV Boli"/><a:font script="Deva" typeface="Mangal"/><a:font script="Telu" typeface="Gautami"/><a:font script="Taml" typeface="Latha"/><a:font script="Syrc" typeface="Estrangelo Edessa"/><a:font script="Orya" typeface="Kalinga"/><a:font script="Mlym" typeface="Kartika"/><a:font script="Laoo" typeface="DokChampa"/><a:font script="Sinh" typeface="Iskoola Pota"/><a:font script="Mong" typeface="Mongolian Baiti"/><a:font script="Viet" typeface="Times New Roman"/><a:font script="Uigh" typeface="Microsoft Uighur"/><a:font script="Geor" typeface="Sylfaen"/></a:majorFont><a:minorFont><a:latin typeface="Calibri"/><a:ea typeface=""/><a:cs typeface=""/><a:font script="Jpan" typeface="ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯"/><a:font script="Hang" typeface="맑은 ê³ ë”•"/><a:font script="Hans" typeface="宋体"/><a:font script="Hant" typeface="新細明體"/><a:font script="Arab" typeface="Arial"/><a:font script="Hebr" typeface="Arial"/><a:font script="Thai" typeface="Tahoma"/><a:font script="Ethi" typeface="Nyala"/><a:font script="Beng" typeface="Vrinda"/><a:font script="Gujr" typeface="Shruti"/><a:font script="Khmr" typeface="DaunPenh"/><a:font script="Knda" typeface="Tunga"/><a:font script="Guru" typeface="Raavi"/><a:font script="Cans" typeface="Euphemia"/><a:font script="Cher" typeface="Plantagenet Cherokee"/><a:font script="Yiii" typeface="Microsoft Yi Baiti"/><a:font script="Tibt" typeface="Microsoft Himalaya"/><a:font script="Thaa" typeface="MV Boli"/><a:font script="Deva" typeface="Mangal"/><a:font script="Telu" typeface="Gautami"/><a:font script="Taml" typeface="Latha"/><a:font script="Syrc" typeface="Estrangelo Edessa"/><a:font script="Orya" typeface="Kalinga"/><a:font script="Mlym" typeface="Kartika"/><a:font script="Laoo" typeface="DokChampa"/><a:font script="Sinh" typeface="Iskoola Pota"/><a:font script="Mong" typeface="Mongolian Baiti"/><a:font script="Viet" typeface="Arial"/><a:font script="Uigh" typeface="Microsoft Uighur"/><a:font script="Geor" typeface="Sylfaen"/></a:minorFont></a:fontScheme><a:fmtScheme name="Office"><a:fillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="50000"/><a:satMod val="300000"/></a:schemeClr></a:gs><a:gs pos="35000"><a:schemeClr val="phClr"><a:tint val="37000"/><a:satMod val="300000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="15000"/><a:satMod val="350000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="16200000" scaled="1"/></a:gradFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="100000"/><a:shade val="100000"/><a:satMod val="130000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="50000"/><a:shade val="100000"/><a:satMod val="350000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="16200000" scaled="0"/></a:gradFill></a:fillStyleLst><a:lnStyleLst><a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"><a:shade val="95000"/><a:satMod val="105000"/></a:schemeClr></a:solidFill><a:prstDash val="solid"/></a:ln><a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln><a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln></a:lnStyleLst><a:effectStyleLst><a:effectStyle><a:effectLst><a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="38000"/></a:srgbClr></a:outerShdw></a:effectLst></a:effectStyle><a:effectStyle><a:effectLst><a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw></a:effectLst></a:effectStyle><a:effectStyle><a:effectLst><a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw></a:effectLst><a:scene3d><a:camera prst="orthographicFront"><a:rot lat="0" lon="0" rev="0"/></a:camera><a:lightRig rig="threePt" dir="t"><a:rot lat="0" lon="0" rev="1200000"/></a:lightRig></a:scene3d><a:sp3d><a:bevelT w="63500" h="25400"/></a:sp3d></a:effectStyle></a:effectStyleLst><a:bgFillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="40000"/><a:satMod val="350000"/></a:schemeClr></a:gs><a:gs pos="40000"><a:schemeClr val="phClr"><a:tint val="45000"/><a:shade val="99000"/><a:satMod val="350000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="20000"/><a:satMod val="255000"/></a:schemeClr></a:gs></a:gsLst><a:path path="circle"><a:fillToRect l="50000" t="-80000" r="50000" b="180000"/></a:path></a:gradFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="80000"/><a:satMod val="300000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="30000"/><a:satMod val="200000"/></a:schemeClr></a:gs></a:gsLst><a:path path="circle"><a:fillToRect l="50000" t="50000" r="50000" b="50000"/></a:path></a:gradFill></a:bgFillStyleLst></a:fmtScheme></a:themeElements><a:objectDefaults><a:spDef><a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="1"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="3"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="2"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="lt1"/></a:fontRef></a:style></a:spDef><a:lnDef><a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="2"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="0"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="1"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="tx1"/></a:fontRef></a:style></a:lnDef></a:objectDefaults><a:extraClrSchemeLst/></a:theme>'; }
function write_theme(opts) {
  if (opts.themeXml) { return opts.themeXml; }
  return '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"><a:themeElements><a:clrScheme name="Office"><a:dk1><a:sysClr val="windowText" lastClr="000000"/></a:dk1><a:lt1><a:sysClr val="window" lastClr="FFFFFF"/></a:lt1><a:dk2><a:srgbClr val="1F497D"/></a:dk2><a:lt2><a:srgbClr val="EEECE1"/></a:lt2><a:accent1><a:srgbClr val="4F81BD"/></a:accent1><a:accent2><a:srgbClr val="C0504D"/></a:accent2><a:accent3><a:srgbClr val="9BBB59"/></a:accent3><a:accent4><a:srgbClr val="8064A2"/></a:accent4><a:accent5><a:srgbClr val="4BACC6"/></a:accent5><a:accent6><a:srgbClr val="F79646"/></a:accent6><a:hlink><a:srgbClr val="0000FF"/></a:hlink><a:folHlink><a:srgbClr val="800080"/></a:folHlink></a:clrScheme><a:fontScheme name="Office"><a:majorFont><a:latin typeface="Cambria"/><a:ea typeface=""/><a:cs typeface=""/><a:font script="Jpan" typeface="ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯"/><a:font script="Hang" typeface="맑은 ê³ ë”•"/><a:font script="Hans" typeface="宋体"/><a:font script="Hant" typeface="新細明體"/><a:font script="Arab" typeface="Times New Roman"/><a:font script="Hebr" typeface="Times New Roman"/><a:font script="Thai" typeface="Tahoma"/><a:font script="Ethi" typeface="Nyala"/><a:font script="Beng" typeface="Vrinda"/><a:font script="Gujr" typeface="Shruti"/><a:font script="Khmr" typeface="MoolBoran"/><a:font script="Knda" typeface="Tunga"/><a:font script="Guru" typeface="Raavi"/><a:font script="Cans" typeface="Euphemia"/><a:font script="Cher" typeface="Plantagenet Cherokee"/><a:font script="Yiii" typeface="Microsoft Yi Baiti"/><a:font script="Tibt" typeface="Microsoft Himalaya"/><a:font script="Thaa" typeface="MV Boli"/><a:font script="Deva" typeface="Mangal"/><a:font script="Telu" typeface="Gautami"/><a:font script="Taml" typeface="Latha"/><a:font script="Syrc" typeface="Estrangelo Edessa"/><a:font script="Orya" typeface="Kalinga"/><a:font script="Mlym" typeface="Kartika"/><a:font script="Laoo" typeface="DokChampa"/><a:font script="Sinh" typeface="Iskoola Pota"/><a:font script="Mong" typeface="Mongolian Baiti"/><a:font script="Viet" typeface="Times New Roman"/><a:font script="Uigh" typeface="Microsoft Uighur"/><a:font script="Geor" typeface="Sylfaen"/></a:majorFont><a:minorFont><a:latin typeface="Calibri"/><a:ea typeface=""/><a:cs typeface=""/><a:font script="Jpan" typeface="ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯"/><a:font script="Hang" typeface="맑은 ê³ ë”•"/><a:font script="Hans" typeface="宋体"/><a:font script="Hant" typeface="新細明體"/><a:font script="Arab" typeface="Arial"/><a:font script="Hebr" typeface="Arial"/><a:font script="Thai" typeface="Tahoma"/><a:font script="Ethi" typeface="Nyala"/><a:font script="Beng" typeface="Vrinda"/><a:font script="Gujr" typeface="Shruti"/><a:font script="Khmr" typeface="DaunPenh"/><a:font script="Knda" typeface="Tunga"/><a:font script="Guru" typeface="Raavi"/><a:font script="Cans" typeface="Euphemia"/><a:font script="Cher" typeface="Plantagenet Cherokee"/><a:font script="Yiii" typeface="Microsoft Yi Baiti"/><a:font script="Tibt" typeface="Microsoft Himalaya"/><a:font script="Thaa" typeface="MV Boli"/><a:font script="Deva" typeface="Mangal"/><a:font script="Telu" typeface="Gautami"/><a:font script="Taml" typeface="Latha"/><a:font script="Syrc" typeface="Estrangelo Edessa"/><a:font script="Orya" typeface="Kalinga"/><a:font script="Mlym" typeface="Kartika"/><a:font script="Laoo" typeface="DokChampa"/><a:font script="Sinh" typeface="Iskoola Pota"/><a:font script="Mong" typeface="Mongolian Baiti"/><a:font script="Viet" typeface="Arial"/><a:font script="Uigh" typeface="Microsoft Uighur"/><a:font script="Geor" typeface="Sylfaen"/></a:minorFont></a:fontScheme><a:fmtScheme name="Office"><a:fillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="50000"/><a:satMod val="300000"/></a:schemeClr></a:gs><a:gs pos="35000"><a:schemeClr val="phClr"><a:tint val="37000"/><a:satMod val="300000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="15000"/><a:satMod val="350000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="16200000" scaled="1"/></a:gradFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="100000"/><a:shade val="100000"/><a:satMod val="130000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="50000"/><a:shade val="100000"/><a:satMod val="350000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="16200000" scaled="0"/></a:gradFill></a:fillStyleLst><a:lnStyleLst><a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"><a:shade val="95000"/><a:satMod val="105000"/></a:schemeClr></a:solidFill><a:prstDash val="solid"/></a:ln><a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln><a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln></a:lnStyleLst><a:effectStyleLst><a:effectStyle><a:effectLst><a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="38000"/></a:srgbClr></a:outerShdw></a:effectLst></a:effectStyle><a:effectStyle><a:effectLst><a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw></a:effectLst></a:effectStyle><a:effectStyle><a:effectLst><a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw></a:effectLst><a:scene3d><a:camera prst="orthographicFront"><a:rot lat="0" lon="0" rev="0"/></a:camera><a:lightRig rig="threePt" dir="t"><a:rot lat="0" lon="0" rev="1200000"/></a:lightRig></a:scene3d><a:sp3d><a:bevelT w="63500" h="25400"/></a:sp3d></a:effectStyle></a:effectStyleLst><a:bgFillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="40000"/><a:satMod val="350000"/></a:schemeClr></a:gs><a:gs pos="40000"><a:schemeClr val="phClr"><a:tint val="45000"/><a:shade val="99000"/><a:satMod val="350000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="20000"/><a:satMod val="255000"/></a:schemeClr></a:gs></a:gsLst><a:path path="circle"><a:fillToRect l="50000" t="-80000" r="50000" b="180000"/></a:path></a:gradFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="80000"/><a:satMod val="300000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="30000"/><a:satMod val="200000"/></a:schemeClr></a:gs></a:gsLst><a:path path="circle"><a:fillToRect l="50000" t="50000" r="50000" b="50000"/></a:path></a:gradFill></a:bgFillStyleLst></a:fmtScheme></a:themeElements><a:objectDefaults><a:spDef><a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="1"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="3"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="2"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="lt1"/></a:fontRef></a:style></a:spDef><a:lnDef><a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="2"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="0"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="1"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="tx1"/></a:fontRef></a:style></a:lnDef></a:objectDefaults><a:extraClrSchemeLst/></a:theme>';
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/50_styxls.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,78 @@
/* [MS-XLS] 2.4.326 TODO: payload is a zip file */
function parse_Theme(blob, length) {
    var dwThemeVersion = blob.read_shift(4);
    if(dwThemeVersion === 124226) return;
    blob.l += length-4;
}
/* 2.5.49 */
function parse_ColorTheme(blob, length) { return blob.read_shift(4); }
/* 2.5.155 */
function parse_FullColorExt(blob, length) {
    var o = {};
    o.xclrType = blob.read_shift(2);
    o.nTintShade = blob.read_shift(2);
    switch(o.xclrType) {
        case 0: blob.l += 4; break;
        case 1: o.xclrValue = parse_IcvXF(blob, 4); break;
        case 2: o.xclrValue = parse_LongRGBA(blob, 4); break;
        case 3: o.xclrValue = parse_ColorTheme(blob, 4); break;
        case 4: blob.l += 4; break;
    }
    blob.l += 8;
    return o;
}
/* 2.5.164 TODO: read 7 bits*/
function parse_IcvXF(blob, length) {
    return parsenoop(blob, length);
}
/* 2.5.280 */
function parse_XFExtGradient(blob, length) {
    return parsenoop(blob, length);
}
/* 2.5.108 */
function parse_ExtProp(blob, length) {
    var extType = blob.read_shift(2);
    var cb = blob.read_shift(2);
    var o = [extType];
    switch(extType) {
        case 0x04: case 0x05: case 0x07: case 0x08:
        case 0x09: case 0x0A: case 0x0B: case 0x0D:
            o[1] = parse_FullColorExt(blob, cb); break;
        case 0x06: o[1] = parse_XFExtGradient(blob, cb); break;
        case 0x0E: case 0x0F: o[1] = blob.read_shift(cb === 5 ? 1 : 2); break;
        default: throw new Error("Unrecognized ExtProp type: " + extType + " " + cb);
    }
    return o;
}
/* 2.4.355 */
function parse_XFExt(blob, length) {
    var end = blob.l + length;
    blob.l += 2;
    var ixfe = blob.read_shift(2);
    blob.l += 2;
    var cexts = blob.read_shift(2);
    var ext = [];
    while(cexts-- > 0) ext.push(parse_ExtProp(blob, end-blob.l));
    return {ixfe:ixfe, ext:ext};
}
/* xf is an XF, see parse_XFExt for xfext */
function update_xfext(xf, xfext) {
    xfext.forEach(function(xfe) {
        switch(xfe[0]) { /* 2.5.108 extPropData */
            case 0x04: break; /* foreground color */
            case 0x05: break; /* background color */
            case 0x07: case 0x08: case 0x09: case 0x0a: break;
            case 0x0d: break; /* text color */
            case 0x0e: break; /* font scheme */
            default: throw "bafuq" + xfe[0].toString(16);
        }
    });
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/52_ccxml.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
/* 18.6 Calculation Chain */
function parse_cc_xml(data, opts) {
    var d = [];
    var l = 0, i = 1;
    (data.match(tagregex)||[]).forEach(function(x) {
        var y = parsexmltag(x);
        switch(y[0]) {
            case '<?xml': break;
            /* 18.6.2  calcChain CT_CalcChain 1 */
            case '<calcChain': case '<calcChain>': case '</calcChain>': break;
            /* 18.6.1  c CT_CalcCell 1 */
            case '<c': delete y[0]; if(y.i) i = y.i; else y.i = i; d.push(y); break;
        }
    });
    return d;
}
function write_cc_xml(data, opts) { }
Source/UBCS-WEB/src/config/js-xlsx-master/bits/53_ccbin.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,30 @@
/* [MS-XLSB] 2.6.4.1 */
function parse_BrtCalcChainItem$(data, length) {
    var out = {};
    out.i = data.read_shift(4);
    var cell = {};
    cell.r = data.read_shift(4);
    cell.c = data.read_shift(4);
    out.r = encode_cell(cell);
    var flags = data.read_shift(1);
    if(flags & 0x2) out.l = '1';
    if(flags & 0x8) out.a = '1';
    return out;
}
/* 18.6 Calculation Chain */
function parse_cc_bin(data, opts) {
    var out = [];
    var pass = false;
    recordhopper(data, function hopper_cc(val, R, RT) {
        switch(R.n) {
            case 'BrtCalcChainItem$': out.push(val); break;
            case 'BrtBeginCalcChain$': break;
            case 'BrtEndCalcChain$': break;
            default: if(!pass || opts.WTF) throw new Error("Unexpected record " + RT + " " + R.n);
        }
    });
    return out;
}
function write_cc_bin(data, opts) { }
Source/UBCS-WEB/src/config/js-xlsx-master/bits/56_cmntcommon.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,42 @@
function parse_comments(zip, dirComments, sheets, sheetRels, opts) {
    for(var i = 0; i != dirComments.length; ++i) {
        var canonicalpath=dirComments[i];
        var comments=parse_cmnt(getzipdata(zip, canonicalpath.replace(/^\//,''), true), canonicalpath, opts);
        if(!comments || !comments.length) continue;
        // find the sheets targeted by these comments
        var sheetNames = keys(sheets);
        for(var j = 0; j != sheetNames.length; ++j) {
            var sheetName = sheetNames[j];
            var rels = sheetRels[sheetName];
            if(rels) {
                var rel = rels[canonicalpath];
                if(rel) insertCommentsIntoSheet(sheetName, sheets[sheetName], comments);
            }
        }
    }
}
function insertCommentsIntoSheet(sheetName, sheet, comments) {
    comments.forEach(function(comment) {
        var cell = sheet[comment.ref];
        if (!cell) {
            cell = {};
            sheet[comment.ref] = cell;
            var range = safe_decode_range(sheet["!ref"]||"BDWGO1000001:A1");
            var thisCell = decode_cell(comment.ref);
            if(range.s.r > thisCell.r) range.s.r = thisCell.r;
            if(range.e.r < thisCell.r) range.e.r = thisCell.r;
            if(range.s.c > thisCell.c) range.s.c = thisCell.c;
            if(range.e.c < thisCell.c) range.e.c = thisCell.c;
            var encoded = encode_range(range);
            if (encoded !== sheet["!ref"]) sheet["!ref"] = encoded;
        }
        if (!cell.c) cell.c = [];
        var o = {a: comment.author, t: comment.t, r: comment.r};
        if(comment.h) o.h = comment.h;
        cell.c.push(o);
    });
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/57_cmntxml.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,27 @@
/* 18.7.3 CT_Comment */
function parse_comments_xml(data, opts) {
    if(data.match(/<(?:\w+:)?comments *\/>/)) return [];
    var authors = [];
    var commentList = [];
    data.match(/<(?:\w+:)?authors>([^\u2603]*)<\/(?:\w+:)?authors>/)[1].split(/<\/\w*:?author>/).forEach(function(x) {
        if(x === "" || x.trim() === "") return;
        authors.push(x.match(/<(?:\w+:)?author[^>]*>(.*)/)[1]);
    });
    (data.match(/<(?:\w+:)?commentList>([^\u2603]*)<\/(?:\w+:)?commentList>/)||["",""])[1].split(/<\/\w*:?comment>/).forEach(function(x, index) {
        if(x === "" || x.trim() === "") return;
        var y = parsexmltag(x.match(/<(?:\w+:)?comment[^>]*>/)[0]);
        var comment = { author: y.authorId && authors[y.authorId] ? authors[y.authorId] : undefined, ref: y.ref, guid: y.guid };
        var cell = decode_cell(y.ref);
        if(opts.sheetRows && opts.sheetRows <= cell.r) return;
        var textMatch = x.match(/<text>([^\u2603]*)<\/text>/);
        if (!textMatch || !textMatch[1]) return; // a comment may contain an empty text tag.
        var rt = parse_si(textMatch[1]);
        comment.r = rt.r;
        comment.t = rt.t;
        if(opts.cellHTML) comment.h = rt.h;
        commentList.push(comment);
    });
    return commentList;
}
function write_comments_xml(data, opts) { }
Source/UBCS-WEB/src/config/js-xlsx-master/bits/58_cmntbin.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,46 @@
/* [MS-XLSB] 2.4.28 BrtBeginComment */
function parse_BrtBeginComment(data, length) {
    var out = {};
    out.iauthor = data.read_shift(4);
    var rfx = parse_UncheckedRfX(data, 16);
    out.rfx = rfx.s;
    out.ref = encode_cell(rfx.s);
    data.l += 16; /*var guid = parse_GUID(data); */
    return out;
}
/* [MS-XLSB] 2.4.324 BrtCommentAuthor */
var parse_BrtCommentAuthor = parse_XLWideString;
/* [MS-XLSB] 2.4.325 BrtCommentText */
var parse_BrtCommentText = parse_RichStr;
/* [MS-XLSB] 2.1.7.8 Comments */
function parse_comments_bin(data, opts) {
    var out = [];
    var authors = [];
    var c = {};
    var pass = false;
    recordhopper(data, function hopper_cmnt(val, R, RT) {
        switch(R.n) {
            case 'BrtCommentAuthor': authors.push(val); break;
            case 'BrtBeginComment': c = val; break;
            case 'BrtCommentText': c.t = val.t; c.h = val.h; c.r = val.r; break;
            case 'BrtEndComment':
                c.author = authors[c.iauthor];
                delete c.iauthor;
                if(opts.sheetRows && opts.sheetRows <= c.rfx.r) break;
                delete c.rfx; out.push(c); break;
            case 'BrtBeginComments': break;
            case 'BrtEndComments': break;
            case 'BrtBeginCommentAuthors': break;
            case 'BrtEndCommentAuthors': break;
            case 'BrtBeginCommentList': break;
            case 'BrtEndCommentList': break;
            default: if(!pass || opts.WTF) throw new Error("Unexpected record " + RT + " " + R.n);
        }
    });
    return out;
}
function write_comments_bin(data, opts) { }
Source/UBCS-WEB/src/config/js-xlsx-master/bits/61_fcommon.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
/* TODO: it will be useful to parse the function str */
var rc_to_a1 = (function(){
    var rcregex = /(^|[^A-Za-z])R(\[?)(-?\d+|)\]?C(\[?)(-?\d+|)\]?/g;
    var rcbase;
    function rcfunc($$,$1,$2,$3,$4,$5) {
        var R = $3.length>0?parseInt($3,10)|0:0, C = $5.length>0?parseInt($5,10)|0:0;
        if(C<0 && $4.length === 0) C=0;
        if($4.length > 0) C += rcbase.c;
        if($2.length > 0) R += rcbase.r;
        return $1 + encode_col(C) + encode_row(R);
    }
    return function rc_to_a1(fstr, base) {
        rcbase = base;
        return fstr.replace(rcregex, rcfunc);
    };
})();
Source/UBCS-WEB/src/config/js-xlsx-master/bits/62_fxls.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,803 @@
/* --- formula references point to MS-XLS --- */
/* Small helpers */
function parseread(l) { return function(blob, length) { blob.l+=l; return; }; }
function parseread1(blob, length) { blob.l+=1; return; }
/* Rgce Helpers */
/* 2.5.51 */
function parse_ColRelU(blob, length) {
    var c = blob.read_shift(2);
    return [c & 0x3FFF, (c >> 14) & 1, (c >> 15) & 1];
}
/* 2.5.198.105 */
function parse_RgceArea(blob, length) {
    var r=blob.read_shift(2), R=blob.read_shift(2);
    var c=parse_ColRelU(blob, 2);
    var C=parse_ColRelU(blob, 2);
    return { s:{r:r, c:c[0], cRel:c[1], rRel:c[2]}, e:{r:R, c:C[0], cRel:C[1], rRel:C[2]} };
}
/* 2.5.198.105 TODO */
function parse_RgceAreaRel(blob, length) {
    var r=blob.read_shift(2), R=blob.read_shift(2);
    var c=parse_ColRelU(blob, 2);
    var C=parse_ColRelU(blob, 2);
    return { s:{r:r, c:c[0], cRel:c[1], rRel:c[2]}, e:{r:R, c:C[0], cRel:C[1], rRel:C[2]} };
}
/* 2.5.198.109 */
function parse_RgceLoc(blob, length) {
    var r = blob.read_shift(2);
    var c = parse_ColRelU(blob, 2);
    return {r:r, c:c[0], cRel:c[1], rRel:c[2]};
}
/* 2.5.198.111 */
function parse_RgceLocRel(blob, length) {
    var r = blob.read_shift(2);
    var cl = blob.read_shift(2);
    var cRel = (cl & 0x8000) >> 15, rRel = (cl & 0x4000) >> 14;
    cl &= 0x3FFF;
    if(cRel !== 0) while(cl >= 0x100) cl -= 0x100;
    return {r:r,c:cl,cRel:cRel,rRel:rRel};
}
/* Ptg Tokens */
/* 2.5.198.27 */
function parse_PtgArea(blob, length) {
    var type = (blob[blob.l++] & 0x60) >> 5;
    var area = parse_RgceArea(blob, 8);
    return [type, area];
}
/* 2.5.198.28 */
function parse_PtgArea3d(blob, length) {
    var type = (blob[blob.l++] & 0x60) >> 5;
    var ixti = blob.read_shift(2);
    var area = parse_RgceArea(blob, 8);
    return [type, ixti, area];
}
/* 2.5.198.29 */
function parse_PtgAreaErr(blob, length) {
    var type = (blob[blob.l++] & 0x60) >> 5;
    blob.l += 8;
    return [type];
}
/* 2.5.198.30 */
function parse_PtgAreaErr3d(blob, length) {
    var type = (blob[blob.l++] & 0x60) >> 5;
    var ixti = blob.read_shift(2);
    blob.l += 8;
    return [type, ixti];
}
/* 2.5.198.31 */
function parse_PtgAreaN(blob, length) {
    var type = (blob[blob.l++] & 0x60) >> 5;
    var area = parse_RgceAreaRel(blob, 8);
    return [type, area];
}
/* 2.5.198.32 -- ignore this and look in PtgExtraArray for shape + values */
function parse_PtgArray(blob, length) {
    var type = (blob[blob.l++] & 0x60) >> 5;
    blob.l += 7;
    return [type];
}
/* 2.5.198.33 */
function parse_PtgAttrBaxcel(blob, length) {
    var bitSemi = blob[blob.l+1] & 0x01; /* 1 = volatile */
    var bitBaxcel = 1;
    blob.l += 4;
    return [bitSemi, bitBaxcel];
}
/* 2.5.198.34 */
function parse_PtgAttrChoose(blob, length) {
    blob.l +=2;
    var offset = blob.read_shift(2);
    var o = [];
    /* offset is 1 less than the number of elements */
    for(var i = 0; i <= offset; ++i) o.push(blob.read_shift(2));
    return o;
}
/* 2.5.198.35 */
function parse_PtgAttrGoto(blob, length) {
    var bitGoto = (blob[blob.l+1] & 0xFF) ? 1 : 0;
    blob.l += 2;
    return [bitGoto, blob.read_shift(2)];
}
/* 2.5.198.36 */
function parse_PtgAttrIf(blob, length) {
    var bitIf = (blob[blob.l+1] & 0xFF) ? 1 : 0;
    blob.l += 2;
    return [bitIf, blob.read_shift(2)];
}
/* 2.5.198.37 */
function parse_PtgAttrSemi(blob, length) {
    var bitSemi = (blob[blob.l+1] & 0xFF) ? 1 : 0;
    blob.l += 4;
    return [bitSemi];
}
/* 2.5.198.40 (used by PtgAttrSpace and PtgAttrSpaceSemi) */
function parse_PtgAttrSpaceType(blob, length) {
    var type = blob.read_shift(1), cch = blob.read_shift(1);
    return [type, cch];
}
/* 2.5.198.38 */
function parse_PtgAttrSpace(blob, length) {
    blob.read_shift(2);
    return parse_PtgAttrSpaceType(blob, 2);
}
/* 2.5.198.39 */
function parse_PtgAttrSpaceSemi(blob, length) {
    blob.read_shift(2);
    return parse_PtgAttrSpaceType(blob, 2);
}
/* 2.5.198.84 TODO */
function parse_PtgRef(blob, length) {
    var ptg = blob[blob.l] & 0x1F;
    var type = (blob[blob.l] & 0x60)>>5;
    blob.l += 1;
    var loc = parse_RgceLoc(blob,4);
    return [type, loc];
}
/* 2.5.198.88 TODO */
function parse_PtgRefN(blob, length) {
    var ptg = blob[blob.l] & 0x1F;
    var type = (blob[blob.l] & 0x60)>>5;
    blob.l += 1;
    var loc = parse_RgceLocRel(blob,4);
    return [type, loc];
}
/* 2.5.198.85 TODO */
function parse_PtgRef3d(blob, length) {
    var ptg = blob[blob.l] & 0x1F;
    var type = (blob[blob.l] & 0x60)>>5;
    blob.l += 1;
    var ixti = blob.read_shift(2); // XtiIndex
    var loc = parse_RgceLoc(blob,4);
    return [type, ixti, loc];
}
/* 2.5.198.62 TODO */
function parse_PtgFunc(blob, length) {
    var ptg = blob[blob.l] & 0x1F;
    var type = (blob[blob.l] & 0x60)>>5;
    blob.l += 1;
    var iftab = blob.read_shift(2);
    return [FtabArgc[iftab], Ftab[iftab]];
}
/* 2.5.198.63 TODO */
function parse_PtgFuncVar(blob, length) {
    blob.l++;
    var cparams = blob.read_shift(1), tab = parsetab(blob);
    return [cparams, (tab[0] === 0 ? Ftab : Cetab)[tab[1]]];
}
function parsetab(blob, length) {
    return [blob[blob.l+1]>>7, blob.read_shift(2) & 0x7FFF];
}
/* 2.5.198.41 */
var parse_PtgAttrSum = parseread(4);
/* 2.5.198.43 */
var parse_PtgConcat = parseread1;
/* 2.5.198.58 */
function parse_PtgExp(blob, length) {
    blob.l++;
    var row = blob.read_shift(2);
    var col = blob.read_shift(2);
    return [row, col];
}
/* 2.5.198.57 */
function parse_PtgErr(blob, length) { blob.l++; return BErr[blob.read_shift(1)]; }
/* 2.5.198.66 TODO */
function parse_PtgInt(blob, length) { blob.l++; return blob.read_shift(2); }
/* 2.5.198.42 */
function parse_PtgBool(blob, length) { blob.l++; return blob.read_shift(1)!==0;}
/* 2.5.198.79 */
function parse_PtgNum(blob, length) { blob.l++; return parse_Xnum(blob, 8); }
/* 2.5.198.89 */
function parse_PtgStr(blob, length) { blob.l++; return parse_ShortXLUnicodeString(blob); }
/* 2.5.192.112 + 2.5.192.11{3,4,5,6,7} */
function parse_SerAr(blob) {
    var val = [];
    switch((val[0] = blob.read_shift(1))) {
        /* 2.5.192.113 */
        case 0x04: /* SerBool -- boolean */
            val[1] = parsebool(blob, 1) ? 'TRUE' : 'FALSE';
            blob.l += 7; break;
        /* 2.5.192.114 */
        case 0x10: /* SerErr -- error */
            val[1] = BErr[blob[blob.l]];
            blob.l += 8; break;
        /* 2.5.192.115 */
        case 0x00: /* SerNil -- honestly, I'm not sure how to reproduce this */
            blob.l += 8; break;
        /* 2.5.192.116 */
        case 0x01: /* SerNum -- Xnum */
            val[1] = parse_Xnum(blob, 8); break;
        /* 2.5.192.117 */
        case 0x02: /* SerStr -- XLUnicodeString (<256 chars) */
            val[1] = parse_XLUnicodeString(blob); break;
        // default: throw "Bad SerAr: " + val[0]; /* Unreachable */
    }
    return val;
}
/* 2.5.198.61 */
function parse_PtgExtraMem(blob, cce) {
    var count = blob.read_shift(2);
    var out = [];
    for(var i = 0; i != count; ++i) out.push(parse_Ref8U(blob, 8));
    return out;
}
/* 2.5.198.59 */
function parse_PtgExtraArray(blob) {
    var cols = 1 + blob.read_shift(1); //DColByteU
    var rows = 1 + blob.read_shift(2); //DRw
    for(var i = 0, o=[]; i != rows && (o[i] = []); ++i)
        for(var j = 0; j != cols; ++j) o[i][j] = parse_SerAr(blob);
    return o;
}
/* 2.5.198.76 */
function parse_PtgName(blob, length) {
    var type = (blob.read_shift(1) >>> 5) & 0x03;
    var nameindex = blob.read_shift(4);
    return [type, 0, nameindex];
}
/* 2.5.198.77 */
function parse_PtgNameX(blob, length) {
    var type = (blob.read_shift(1) >>> 5) & 0x03;
    var ixti = blob.read_shift(2); // XtiIndex
    var nameindex = blob.read_shift(4);
    return [type, ixti, nameindex];
}
/* 2.5.198.70 */
function parse_PtgMemArea(blob, length) {
    var type = (blob.read_shift(1) >>> 5) & 0x03;
    blob.l += 4;
    var cce = blob.read_shift(2);
    return [type, cce];
}
/* 2.5.198.72 */
function parse_PtgMemFunc(blob, length) {
    var type = (blob.read_shift(1) >>> 5) & 0x03;
    var cce = blob.read_shift(2);
    return [type, cce];
}
/* 2.5.198.86 */
function parse_PtgRefErr(blob, length) {
    var type = (blob.read_shift(1) >>> 5) & 0x03;
    blob.l += 4;
    return [type];
}
/* 2.5.198.26 */
var parse_PtgAdd = parseread1;
/* 2.5.198.45 */
var parse_PtgDiv = parseread1;
/* 2.5.198.56 */
var parse_PtgEq = parseread1;
/* 2.5.198.64 */
var parse_PtgGe = parseread1;
/* 2.5.198.65 */
var parse_PtgGt = parseread1;
/* 2.5.198.67 */
var parse_PtgIsect = parseread1;
/* 2.5.198.68 */
var parse_PtgLe = parseread1;
/* 2.5.198.69 */
var parse_PtgLt = parseread1;
/* 2.5.198.74 */
var parse_PtgMissArg = parseread1;
/* 2.5.198.75 */
var parse_PtgMul = parseread1;
/* 2.5.198.78 */
var parse_PtgNe = parseread1;
/* 2.5.198.80 */
var parse_PtgParen = parseread1;
/* 2.5.198.81 */
var parse_PtgPercent = parseread1;
/* 2.5.198.82 */
var parse_PtgPower = parseread1;
/* 2.5.198.83 */
var parse_PtgRange = parseread1;
/* 2.5.198.90 */
var parse_PtgSub = parseread1;
/* 2.5.198.93 */
var parse_PtgUminus = parseread1;
/* 2.5.198.94 */
var parse_PtgUnion = parseread1;
/* 2.5.198.95 */
var parse_PtgUplus = parseread1;
/* 2.5.198.71 */
var parse_PtgMemErr = parsenoop;
/* 2.5.198.73 */
var parse_PtgMemNoMem = parsenoop;
/* 2.5.198.87 */
var parse_PtgRefErr3d = parsenoop;
/* 2.5.198.92 */
var parse_PtgTbl = parsenoop;
/* 2.5.198.25 */
var PtgTypes = {
    0x01: { n:'PtgExp', f:parse_PtgExp },
    0x02: { n:'PtgTbl', f:parse_PtgTbl },
    0x03: { n:'PtgAdd', f:parse_PtgAdd },
    0x04: { n:'PtgSub', f:parse_PtgSub },
    0x05: { n:'PtgMul', f:parse_PtgMul },
    0x06: { n:'PtgDiv', f:parse_PtgDiv },
    0x07: { n:'PtgPower', f:parse_PtgPower },
    0x08: { n:'PtgConcat', f:parse_PtgConcat },
    0x09: { n:'PtgLt', f:parse_PtgLt },
    0x0A: { n:'PtgLe', f:parse_PtgLe },
    0x0B: { n:'PtgEq', f:parse_PtgEq },
    0x0C: { n:'PtgGe', f:parse_PtgGe },
    0x0D: { n:'PtgGt', f:parse_PtgGt },
    0x0E: { n:'PtgNe', f:parse_PtgNe },
    0x0F: { n:'PtgIsect', f:parse_PtgIsect },
    0x10: { n:'PtgUnion', f:parse_PtgUnion },
    0x11: { n:'PtgRange', f:parse_PtgRange },
    0x12: { n:'PtgUplus', f:parse_PtgUplus },
    0x13: { n:'PtgUminus', f:parse_PtgUminus },
    0x14: { n:'PtgPercent', f:parse_PtgPercent },
    0x15: { n:'PtgParen', f:parse_PtgParen },
    0x16: { n:'PtgMissArg', f:parse_PtgMissArg },
    0x17: { n:'PtgStr', f:parse_PtgStr },
    0x1C: { n:'PtgErr', f:parse_PtgErr },
    0x1D: { n:'PtgBool', f:parse_PtgBool },
    0x1E: { n:'PtgInt', f:parse_PtgInt },
    0x1F: { n:'PtgNum', f:parse_PtgNum },
    0x20: { n:'PtgArray', f:parse_PtgArray },
    0x21: { n:'PtgFunc', f:parse_PtgFunc },
    0x22: { n:'PtgFuncVar', f:parse_PtgFuncVar },
    0x23: { n:'PtgName', f:parse_PtgName },
    0x24: { n:'PtgRef', f:parse_PtgRef },
    0x25: { n:'PtgArea', f:parse_PtgArea },
    0x26: { n:'PtgMemArea', f:parse_PtgMemArea },
    0x27: { n:'PtgMemErr', f:parse_PtgMemErr },
    0x28: { n:'PtgMemNoMem', f:parse_PtgMemNoMem },
    0x29: { n:'PtgMemFunc', f:parse_PtgMemFunc },
    0x2A: { n:'PtgRefErr', f:parse_PtgRefErr },
    0x2B: { n:'PtgAreaErr', f:parse_PtgAreaErr },
    0x2C: { n:'PtgRefN', f:parse_PtgRefN },
    0x2D: { n:'PtgAreaN', f:parse_PtgAreaN },
    0x39: { n:'PtgNameX', f:parse_PtgNameX },
    0x3A: { n:'PtgRef3d', f:parse_PtgRef3d },
    0x3B: { n:'PtgArea3d', f:parse_PtgArea3d },
    0x3C: { n:'PtgRefErr3d', f:parse_PtgRefErr3d },
    0x3D: { n:'PtgAreaErr3d', f:parse_PtgAreaErr3d },
    0xFF: {}
};
/* These are duplicated in the PtgTypes table */
var PtgDupes = {
    0x40: 0x20, 0x60: 0x20,
    0x41: 0x21, 0x61: 0x21,
    0x42: 0x22, 0x62: 0x22,
    0x43: 0x23, 0x63: 0x23,
    0x44: 0x24, 0x64: 0x24,
    0x45: 0x25, 0x65: 0x25,
    0x46: 0x26, 0x66: 0x26,
    0x47: 0x27, 0x67: 0x27,
    0x48: 0x28, 0x68: 0x28,
    0x49: 0x29, 0x69: 0x29,
    0x4A: 0x2A, 0x6A: 0x2A,
    0x4B: 0x2B, 0x6B: 0x2B,
    0x4C: 0x2C, 0x6C: 0x2C,
    0x4D: 0x2D, 0x6D: 0x2D,
    0x59: 0x39, 0x79: 0x39,
    0x5A: 0x3A, 0x7A: 0x3A,
    0x5B: 0x3B, 0x7B: 0x3B,
    0x5C: 0x3C, 0x7C: 0x3C,
    0x5D: 0x3D, 0x7D: 0x3D
};
(function(){for(var y in PtgDupes) PtgTypes[y] = PtgTypes[PtgDupes[y]];})();
var Ptg18 = {};
var Ptg19 = {
    0x01: { n:'PtgAttrSemi', f:parse_PtgAttrSemi },
    0x02: { n:'PtgAttrIf', f:parse_PtgAttrIf },
    0x04: { n:'PtgAttrChoose', f:parse_PtgAttrChoose },
    0x08: { n:'PtgAttrGoto', f:parse_PtgAttrGoto },
    0x10: { n:'PtgAttrSum', f:parse_PtgAttrSum },
    0x20: { n:'PtgAttrBaxcel', f:parse_PtgAttrBaxcel },
    0x40: { n:'PtgAttrSpace', f:parse_PtgAttrSpace },
    0x41: { n:'PtgAttrSpaceSemi', f:parse_PtgAttrSpaceSemi },
    0xFF: {}
};
/* 2.4.127 TODO */
function parse_Formula(blob, length, opts) {
    var cell = parse_XLSCell(blob, 6);
    var val = parse_FormulaValue(blob,8);
    var flags = blob.read_shift(1);
    blob.read_shift(1);
    var chn = blob.read_shift(4);
    var cbf = "";
    if(opts.biff === 5) blob.l += length-20;
    else cbf = parse_XLSCellParsedFormula(blob, length-20, opts);
    return {cell:cell, val:val[0], formula:cbf, shared: (flags >> 3) & 1, tt:val[1]};
}
/* 2.5.133 TODO: how to emit empty strings? */
function parse_FormulaValue(blob) {
    var b;
    if(__readUInt16LE(blob,blob.l + 6) !== 0xFFFF) return [parse_Xnum(blob),'n'];
    switch(blob[blob.l]) {
        case 0x00: blob.l += 8; return ["String", 's'];
        case 0x01: b = blob[blob.l+2] === 0x1; blob.l += 8; return [b,'b'];
        case 0x02: b = blob[blob.l+2]; blob.l += 8; return [b,'e'];
        case 0x03: blob.l += 8; return ["",'s'];
    }
}
/* 2.5.198.103 */
function parse_RgbExtra(blob, length, rgce, opts) {
    if(opts.biff < 8) return parsenoop(blob, length);
    var target = blob.l + length;
    var o = [];
    for(var i = 0; i !== rgce.length; ++i) {
        switch(rgce[i][0]) {
            case 'PtgArray': /* PtgArray -> PtgExtraArray */
                rgce[i][1] = parse_PtgExtraArray(blob);
                o.push(rgce[i][1]);
                break;
            case 'PtgMemArea': /* PtgMemArea -> PtgExtraMem */
                rgce[i][2] = parse_PtgExtraMem(blob, rgce[i][1]);
                o.push(rgce[i][2]);
                break;
            default: break;
        }
    }
    length = target - blob.l;
    if(length !== 0) o.push(parsenoop(blob, length));
    return o;
}
/* 2.5.198.21 */
function parse_NameParsedFormula(blob, length, opts, cce) {
    var target = blob.l + length;
    var rgce = parse_Rgce(blob, cce);
    var rgcb;
    if(target !== blob.l) rgcb = parse_RgbExtra(blob, target - blob.l, rgce, opts);
    return [rgce, rgcb];
}
/* 2.5.198.3 TODO */
function parse_XLSCellParsedFormula(blob, length, opts) {
    var target = blob.l + length;
    var rgcb, cce = blob.read_shift(2); // length of rgce
    if(cce == 0xFFFF) return [[],parsenoop(blob, length-2)];
    var rgce = parse_Rgce(blob, cce);
    if(length !== cce + 2) rgcb = parse_RgbExtra(blob, length - cce - 2, rgce, opts);
    return [rgce, rgcb];
}
/* 2.5.198.118 TODO */
function parse_SharedParsedFormula(blob, length, opts) {
    var target = blob.l + length;
    var rgcb, cce = blob.read_shift(2); // length of rgce
    var rgce = parse_Rgce(blob, cce);
    if(cce == 0xFFFF) return [[],parsenoop(blob, length-2)];
    if(length !== cce + 2) rgcb = parse_RgbExtra(blob, target - cce - 2, rgce, opts);
    return [rgce, rgcb];
}
/* 2.5.198.1 TODO */
function parse_ArrayParsedFormula(blob, length, opts, ref) {
    var target = blob.l + length;
    var rgcb, cce = blob.read_shift(2); // length of rgce
    if(cce == 0xFFFF) return [[],parsenoop(blob, length-2)];
    var rgce = parse_Rgce(blob, cce);
    if(length !== cce + 2) rgcb = parse_RgbExtra(blob, target - cce - 2, rgce, opts);
    return [rgce, rgcb];
}
/* 2.5.198.104 */
function parse_Rgce(blob, length) {
    var target = blob.l + length;
    var R, id, ptgs = [];
    while(target != blob.l) {
        length = target - blob.l;
        id = blob[blob.l];
        R = PtgTypes[id];
        //console.log("ptg", id, R)
        if(id === 0x18 || id === 0x19) {
            id = blob[blob.l + 1];
            R = (id === 0x18 ? Ptg18 : Ptg19)[id];
        }
        if(!R || !R.f) { ptgs.push(parsenoop(blob, length)); }
        else { ptgs.push([R.n, R.f(blob, length)]); }
    }
    return ptgs;
}
function mapper(x) { return x.map(function f2(y) { return y[1];}).join(",");}
/* 2.2.2 + Magic TODO */
function stringify_formula(formula, range, cell, supbooks, opts) {
    if(opts !== undefined && opts.biff === 5) return "BIFF5??";
    var _range = range !== undefined ? range : {s:{c:0, r:0}};
    var stack = [], e1, e2, type, c, ixti, nameidx, r;
    if(!formula[0] || !formula[0][0]) return "";
    //console.log("--",cell,formula[0])
    for(var ff = 0, fflen = formula[0].length; ff < fflen; ++ff) {
        var f = formula[0][ff];
        //console.log("++",f, stack)
        switch(f[0]) {
        /* 2.2.2.1 Unary Operator Tokens */
            /* 2.5.198.93 */
            case 'PtgUminus': stack.push("-" + stack.pop()); break;
            /* 2.5.198.95 */
            case 'PtgUplus': stack.push("+" + stack.pop()); break;
            /* 2.5.198.81 */
            case 'PtgPercent': stack.push(stack.pop() + "%"); break;
        /* 2.2.2.1 Binary Value Operator Token */
            /* 2.5.198.26 */
            case 'PtgAdd':
                e1 = stack.pop(); e2 = stack.pop();
                stack.push(e2+"+"+e1);
                break;
            /* 2.5.198.90 */
            case 'PtgSub':
                e1 = stack.pop(); e2 = stack.pop();
                stack.push(e2+"-"+e1);
                break;
            /* 2.5.198.75 */
            case 'PtgMul':
                e1 = stack.pop(); e2 = stack.pop();
                stack.push(e2+"*"+e1);
                break;
            /* 2.5.198.45 */
            case 'PtgDiv':
                e1 = stack.pop(); e2 = stack.pop();
                stack.push(e2+"/"+e1);
                break;
            /* 2.5.198.82 */
            case 'PtgPower':
                e1 = stack.pop(); e2 = stack.pop();
                stack.push(e2+"^"+e1);
                break;
            /* 2.5.198.43 */
            case 'PtgConcat':
                e1 = stack.pop(); e2 = stack.pop();
                stack.push(e2+"&"+e1);
                break;
            /* 2.5.198.69 */
            case 'PtgLt':
                e1 = stack.pop(); e2 = stack.pop();
                stack.push(e2+"<"+e1);
                break;
            /* 2.5.198.68 */
            case 'PtgLe':
                e1 = stack.pop(); e2 = stack.pop();
                stack.push(e2+"<="+e1);
                break;
            /* 2.5.198.56 */
            case 'PtgEq':
                e1 = stack.pop(); e2 = stack.pop();
                stack.push(e2+"="+e1);
                break;
            /* 2.5.198.64 */
            case 'PtgGe':
                e1 = stack.pop(); e2 = stack.pop();
                stack.push(e2+">="+e1);
                break;
            /* 2.5.198.65 */
            case 'PtgGt':
                e1 = stack.pop(); e2 = stack.pop();
                stack.push(e2+">"+e1);
                break;
            /* 2.5.198.78 */
            case 'PtgNe':
                e1 = stack.pop(); e2 = stack.pop();
                stack.push(e2+"<>"+e1);
                break;
        /* 2.2.2.1 Binary Reference Operator Token */
            /* 2.5.198.67 */
            case 'PtgIsect':
                e1 = stack.pop(); e2 = stack.pop();
                stack.push(e2+" "+e1);
                break;
            case 'PtgUnion':
                e1 = stack.pop(); e2 = stack.pop();
                stack.push(e2+","+e1);
                break;
            case 'PtgRange': break;
        /* 2.2.2.3 Control Tokens "can be ignored" */
            /* 2.5.198.34 */
            case 'PtgAttrChoose': break;
            /* 2.5.198.35 */
            case 'PtgAttrGoto': break;
            /* 2.5.198.36 */
            case 'PtgAttrIf': break;
            /* 2.5.198.84 */
            case 'PtgRef':
                type = f[1][0]; c = shift_cell_xls(decode_cell(encode_cell(f[1][1])), _range);
                stack.push(encode_cell(c));
                break;
            /* 2.5.198.88 */
            case 'PtgRefN':
                type = f[1][0]; c = shift_cell_xls(decode_cell(encode_cell(f[1][1])), cell);
                stack.push(encode_cell(c));
                break;
            case 'PtgRef3d': // TODO: lots of stuff
                type = f[1][0]; ixti = f[1][1]; c = shift_cell_xls(f[1][2], _range);
                stack.push(supbooks[1][ixti+1]+"!"+encode_cell(c));
                break;
        /* Function Call */
            /* 2.5.198.62 */
            case 'PtgFunc':
            /* 2.5.198.63 */
            case 'PtgFuncVar':
                /* f[1] = [argc, func] */
                var argc = f[1][0], func = f[1][1];
                if(!argc) argc = 0;
                var args = stack.slice(-argc);
                stack.length -= argc;
                if(func === 'User') func = args.shift();
                stack.push(func + "(" + args.join(",") + ")");
                break;
            /* 2.5.198.42 */
            case 'PtgBool': stack.push(f[1] ? "TRUE" : "FALSE"); break;
            /* 2.5.198.66 */
            case 'PtgInt': stack.push(f[1]); break;
            /* 2.5.198.79 TODO: precision? */
            case 'PtgNum': stack.push(String(f[1])); break;
            /* 2.5.198.89 */
            case 'PtgStr': stack.push('"' + f[1] + '"'); break;
            /* 2.5.198.57 */
            case 'PtgErr': stack.push(f[1]); break;
            /* 2.5.198.27 TODO: fixed points */
            case 'PtgArea':
                type = f[1][0]; r = shift_range_xls(f[1][1], _range);
                stack.push(encode_range(r));
                break;
            /* 2.5.198.28 */
            case 'PtgArea3d': // TODO: lots of stuff
                type = f[1][0]; ixti = f[1][1]; r = f[1][2];
                stack.push(supbooks[1][ixti+1]+"!"+encode_range(r));
                break;
            /* 2.5.198.41 */
            case 'PtgAttrSum':
                stack.push("SUM(" + stack.pop() + ")");
                break;
        /* Expression Prefixes */
            /* 2.5.198.37 */
            case 'PtgAttrSemi': break;
            /* 2.5.97.60 TODO: do something different for revisions */
            case 'PtgName':
                /* f[1] = type, 0, nameindex */
                nameidx = f[1][2];
                var lbl = supbooks[0][nameidx];
                var name = lbl.Name;
                if(name in XLSXFutureFunctions) name = XLSXFutureFunctions[name];
                stack.push(name);
                break;
            /* 2.5.97.61 TODO: do something different for revisions */
            case 'PtgNameX':
                /* f[1] = type, ixti, nameindex */
                var bookidx = f[1][1]; nameidx = f[1][2]; var externbook;
                /* TODO: Properly handle missing values */
                if(supbooks[bookidx+1]) externbook = supbooks[bookidx+1][nameidx];
                else if(supbooks[bookidx-1]) externbook = supbooks[bookidx-1][nameidx];
                if(!externbook) externbook = {body: "??NAMEX??"};
                stack.push(externbook.body);
                break;
        /* 2.2.2.4 Display Tokens */
            /* 2.5.198.80 */
            case 'PtgParen': stack.push('(' + stack.pop() + ')'); break;
            /* 2.5.198.86 */
            case 'PtgRefErr': stack.push('#REF!'); break;
        /* */
            /* 2.5.198.58 TODO */
            case 'PtgExp':
                c = {c:f[1][1],r:f[1][0]};
                var q = {c: cell.c, r:cell.r};
                if(supbooks.sharedf[encode_cell(c)]) {
                    var parsedf = (supbooks.sharedf[encode_cell(c)]);
                    stack.push(stringify_formula(parsedf, _range, q, supbooks, opts));
                }
                else {
                    var fnd = false;
                    for(e1=0;e1!=supbooks.arrayf.length; ++e1) {
                        /* TODO: should be something like range_has */
                        e2 = supbooks.arrayf[e1];
                        if(c.c < e2[0].s.c || c.c > e2[0].e.c) continue;
                        if(c.r < e2[0].s.r || c.r > e2[0].e.r) continue;
                        stack.push(stringify_formula(e2[1], _range, q, supbooks, opts));
                    }
                    if(!fnd) stack.push(f[1]);
                }
                break;
            /* 2.5.198.32 TODO */
            case 'PtgArray':
                stack.push("{" + f[1].map(mapper).join(";") + "}");
                break;
        /* 2.2.2.5 Mem Tokens */
            /* 2.5.198.70 TODO: confirm this is a non-display */
            case 'PtgMemArea':
                //stack.push("(" + f[2].map(encode_range).join(",") + ")");
                break;
            /* 2.5.198.38 TODO */
            case 'PtgAttrSpace': break;
            /* 2.5.198.92 TODO */
            case 'PtgTbl': break;
            /* 2.5.198.71 */
            case 'PtgMemErr': break;
            /* 2.5.198.74 */
            case 'PtgMissArg':
                stack.push("");
                break;
            /* 2.5.198.29 TODO */
            case 'PtgAreaErr': break;
            /* 2.5.198.31 TODO */
            case 'PtgAreaN': stack.push(""); break;
            /* 2.5.198.87 TODO */
            case 'PtgRefErr3d': break;
            /* 2.5.198.72 TODO */
            case 'PtgMemFunc': break;
            default: throw 'Unrecognized Formula Token: ' + f;
        }
        //console.log("::",f, stack)
    }
    //console.log("--",stack);
    return stack[0];
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/63_fbin.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,5 @@
/* [MS-XLSB] 2.5.97.4 CellParsedFormula TODO: use similar logic to js-xls */
function parse_XLSBCellParsedFormula(data, length) {
    var cce = data.read_shift(4);
    return parsenoop(data, length-4);
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/64_ftab.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,1090 @@
/* [MS-XLS] 2.5.198.44 */
var PtgDataType = {
    0x1: "REFERENCE", // reference to range
    0x2: "VALUE", // single value
    0x3: "ARRAY" // array of values
};
/* [MS-XLS] 2.5.198.4 */
var Cetab = {
    0x0000: 'BEEP',
    0x0001: 'OPEN',
    0x0002: 'OPEN.LINKS',
    0x0003: 'CLOSE.ALL',
    0x0004: 'SAVE',
    0x0005: 'SAVE.AS',
    0x0006: 'FILE.DELETE',
    0x0007: 'PAGE.SETUP',
    0x0008: 'PRINT',
    0x0009: 'PRINTER.SETUP',
    0x000A: 'QUIT',
    0x000B: 'NEW.WINDOW',
    0x000C: 'ARRANGE.ALL',
    0x000D: 'WINDOW.SIZE',
    0x000E: 'WINDOW.MOVE',
    0x000F: 'FULL',
    0x0010: 'CLOSE',
    0x0011: 'RUN',
    0x0016: 'SET.PRINT.AREA',
    0x0017: 'SET.PRINT.TITLES',
    0x0018: 'SET.PAGE.BREAK',
    0x0019: 'REMOVE.PAGE.BREAK',
    0x001A: 'FONT',
    0x001B: 'DISPLAY',
    0x001C: 'PROTECT.DOCUMENT',
    0x001D: 'PRECISION',
    0x001E: 'A1.R1C1',
    0x001F: 'CALCULATE.NOW',
    0x0020: 'CALCULATION',
    0x0022: 'DATA.FIND',
    0x0023: 'EXTRACT',
    0x0024: 'DATA.DELETE',
    0x0025: 'SET.DATABASE',
    0x0026: 'SET.CRITERIA',
    0x0027: 'SORT',
    0x0028: 'DATA.SERIES',
    0x0029: 'TABLE',
    0x002A: 'FORMAT.NUMBER',
    0x002B: 'ALIGNMENT',
    0x002C: 'STYLE',
    0x002D: 'BORDER',
    0x002E: 'CELL.PROTECTION',
    0x002F: 'COLUMN.WIDTH',
    0x0030: 'UNDO',
    0x0031: 'CUT',
    0x0032: 'COPY',
    0x0033: 'PASTE',
    0x0034: 'CLEAR',
    0x0035: 'PASTE.SPECIAL',
    0x0036: 'EDIT.DELETE',
    0x0037: 'INSERT',
    0x0038: 'FILL.RIGHT',
    0x0039: 'FILL.DOWN',
    0x003D: 'DEFINE.NAME',
    0x003E: 'CREATE.NAMES',
    0x003F: 'FORMULA.GOTO',
    0x0040: 'FORMULA.FIND',
    0x0041: 'SELECT.LAST.CELL',
    0x0042: 'SHOW.ACTIVE.CELL',
    0x0043: 'GALLERY.AREA',
    0x0044: 'GALLERY.BAR',
    0x0045: 'GALLERY.COLUMN',
    0x0046: 'GALLERY.LINE',
    0x0047: 'GALLERY.PIE',
    0x0048: 'GALLERY.SCATTER',
    0x0049: 'COMBINATION',
    0x004A: 'PREFERRED',
    0x004B: 'ADD.OVERLAY',
    0x004C: 'GRIDLINES',
    0x004D: 'SET.PREFERRED',
    0x004E: 'AXES',
    0x004F: 'LEGEND',
    0x0050: 'ATTACH.TEXT',
    0x0051: 'ADD.ARROW',
    0x0052: 'SELECT.CHART',
    0x0053: 'SELECT.PLOT.AREA',
    0x0054: 'PATTERNS',
    0x0055: 'MAIN.CHART',
    0x0056: 'OVERLAY',
    0x0057: 'SCALE',
    0x0058: 'FORMAT.LEGEND',
    0x0059: 'FORMAT.TEXT',
    0x005A: 'EDIT.REPEAT',
    0x005B: 'PARSE',
    0x005C: 'JUSTIFY',
    0x005D: 'HIDE',
    0x005E: 'UNHIDE',
    0x005F: 'WORKSPACE',
    0x0060: 'FORMULA',
    0x0061: 'FORMULA.FILL',
    0x0062: 'FORMULA.ARRAY',
    0x0063: 'DATA.FIND.NEXT',
    0x0064: 'DATA.FIND.PREV',
    0x0065: 'FORMULA.FIND.NEXT',
    0x0066: 'FORMULA.FIND.PREV',
    0x0067: 'ACTIVATE',
    0x0068: 'ACTIVATE.NEXT',
    0x0069: 'ACTIVATE.PREV',
    0x006A: 'UNLOCKED.NEXT',
    0x006B: 'UNLOCKED.PREV',
    0x006C: 'COPY.PICTURE',
    0x006D: 'SELECT',
    0x006E: 'DELETE.NAME',
    0x006F: 'DELETE.FORMAT',
    0x0070: 'VLINE',
    0x0071: 'HLINE',
    0x0072: 'VPAGE',
    0x0073: 'HPAGE',
    0x0074: 'VSCROLL',
    0x0075: 'HSCROLL',
    0x0076: 'ALERT',
    0x0077: 'NEW',
    0x0078: 'CANCEL.COPY',
    0x0079: 'SHOW.CLIPBOARD',
    0x007A: 'MESSAGE',
    0x007C: 'PASTE.LINK',
    0x007D: 'APP.ACTIVATE',
    0x007E: 'DELETE.ARROW',
    0x007F: 'ROW.HEIGHT',
    0x0080: 'FORMAT.MOVE',
    0x0081: 'FORMAT.SIZE',
    0x0082: 'FORMULA.REPLACE',
    0x0083: 'SEND.KEYS',
    0x0084: 'SELECT.SPECIAL',
    0x0085: 'APPLY.NAMES',
    0x0086: 'REPLACE.FONT',
    0x0087: 'FREEZE.PANES',
    0x0088: 'SHOW.INFO',
    0x0089: 'SPLIT',
    0x008A: 'ON.WINDOW',
    0x008B: 'ON.DATA',
    0x008C: 'DISABLE.INPUT',
    0x008E: 'OUTLINE',
    0x008F: 'LIST.NAMES',
    0x0090: 'FILE.CLOSE',
    0x0091: 'SAVE.WORKBOOK',
    0x0092: 'DATA.FORM',
    0x0093: 'COPY.CHART',
    0x0094: 'ON.TIME',
    0x0095: 'WAIT',
    0x0096: 'FORMAT.FONT',
    0x0097: 'FILL.UP',
    0x0098: 'FILL.LEFT',
    0x0099: 'DELETE.OVERLAY',
    0x009B: 'SHORT.MENUS',
    0x009F: 'SET.UPDATE.STATUS',
    0x00A1: 'COLOR.PALETTE',
    0x00A2: 'DELETE.STYLE',
    0x00A3: 'WINDOW.RESTORE',
    0x00A4: 'WINDOW.MAXIMIZE',
    0x00A6: 'CHANGE.LINK',
    0x00A7: 'CALCULATE.DOCUMENT',
    0x00A8: 'ON.KEY',
    0x00A9: 'APP.RESTORE',
    0x00AA: 'APP.MOVE',
    0x00AB: 'APP.SIZE',
    0x00AC: 'APP.MINIMIZE',
    0x00AD: 'APP.MAXIMIZE',
    0x00AE: 'BRING.TO.FRONT',
    0x00AF: 'SEND.TO.BACK',
    0x00B9: 'MAIN.CHART.TYPE',
    0x00BA: 'OVERLAY.CHART.TYPE',
    0x00BB: 'SELECT.END',
    0x00BC: 'OPEN.MAIL',
    0x00BD: 'SEND.MAIL',
    0x00BE: 'STANDARD.FONT',
    0x00BF: 'CONSOLIDATE',
    0x00C0: 'SORT.SPECIAL',
    0x00C1: 'GALLERY.3D.AREA',
    0x00C2: 'GALLERY.3D.COLUMN',
    0x00C3: 'GALLERY.3D.LINE',
    0x00C4: 'GALLERY.3D.PIE',
    0x00C5: 'VIEW.3D',
    0x00C6: 'GOAL.SEEK',
    0x00C7: 'WORKGROUP',
    0x00C8: 'FILL.GROUP',
    0x00C9: 'UPDATE.LINK',
    0x00CA: 'PROMOTE',
    0x00CB: 'DEMOTE',
    0x00CC: 'SHOW.DETAIL',
    0x00CE: 'UNGROUP',
    0x00CF: 'OBJECT.PROPERTIES',
    0x00D0: 'SAVE.NEW.OBJECT',
    0x00D1: 'SHARE',
    0x00D2: 'SHARE.NAME',
    0x00D3: 'DUPLICATE',
    0x00D4: 'APPLY.STYLE',
    0x00D5: 'ASSIGN.TO.OBJECT',
    0x00D6: 'OBJECT.PROTECTION',
    0x00D7: 'HIDE.OBJECT',
    0x00D8: 'SET.EXTRACT',
    0x00D9: 'CREATE.PUBLISHER',
    0x00DA: 'SUBSCRIBE.TO',
    0x00DB: 'ATTRIBUTES',
    0x00DC: 'SHOW.TOOLBAR',
    0x00DE: 'PRINT.PREVIEW',
    0x00DF: 'EDIT.COLOR',
    0x00E0: 'SHOW.LEVELS',
    0x00E1: 'FORMAT.MAIN',
    0x00E2: 'FORMAT.OVERLAY',
    0x00E3: 'ON.RECALC',
    0x00E4: 'EDIT.SERIES',
    0x00E5: 'DEFINE.STYLE',
    0x00F0: 'LINE.PRINT',
    0x00F3: 'ENTER.DATA',
    0x00F9: 'GALLERY.RADAR',
    0x00FA: 'MERGE.STYLES',
    0x00FB: 'EDITION.OPTIONS',
    0x00FC: 'PASTE.PICTURE',
    0x00FD: 'PASTE.PICTURE.LINK',
    0x00FE: 'SPELLING',
    0x0100: 'ZOOM',
    0x0103: 'INSERT.OBJECT',
    0x0104: 'WINDOW.MINIMIZE',
    0x0109: 'SOUND.NOTE',
    0x010A: 'SOUND.PLAY',
    0x010B: 'FORMAT.SHAPE',
    0x010C: 'EXTEND.POLYGON',
    0x010D: 'FORMAT.AUTO',
    0x0110: 'GALLERY.3D.BAR',
    0x0111: 'GALLERY.3D.SURFACE',
    0x0112: 'FILL.AUTO',
    0x0114: 'CUSTOMIZE.TOOLBAR',
    0x0115: 'ADD.TOOL',
    0x0116: 'EDIT.OBJECT',
    0x0117: 'ON.DOUBLECLICK',
    0x0118: 'ON.ENTRY',
    0x0119: 'WORKBOOK.ADD',
    0x011A: 'WORKBOOK.MOVE',
    0x011B: 'WORKBOOK.COPY',
    0x011C: 'WORKBOOK.OPTIONS',
    0x011D: 'SAVE.WORKSPACE',
    0x0120: 'CHART.WIZARD',
    0x0121: 'DELETE.TOOL',
    0x0122: 'MOVE.TOOL',
    0x0123: 'WORKBOOK.SELECT',
    0x0124: 'WORKBOOK.ACTIVATE',
    0x0125: 'ASSIGN.TO.TOOL',
    0x0127: 'COPY.TOOL',
    0x0128: 'RESET.TOOL',
    0x0129: 'CONSTRAIN.NUMERIC',
    0x012A: 'PASTE.TOOL',
    0x012E: 'WORKBOOK.NEW',
    0x0131: 'SCENARIO.CELLS',
    0x0132: 'SCENARIO.DELETE',
    0x0133: 'SCENARIO.ADD',
    0x0134: 'SCENARIO.EDIT',
    0x0135: 'SCENARIO.SHOW',
    0x0136: 'SCENARIO.SHOW.NEXT',
    0x0137: 'SCENARIO.SUMMARY',
    0x0138: 'PIVOT.TABLE.WIZARD',
    0x0139: 'PIVOT.FIELD.PROPERTIES',
    0x013A: 'PIVOT.FIELD',
    0x013B: 'PIVOT.ITEM',
    0x013C: 'PIVOT.ADD.FIELDS',
    0x013E: 'OPTIONS.CALCULATION',
    0x013F: 'OPTIONS.EDIT',
    0x0140: 'OPTIONS.VIEW',
    0x0141: 'ADDIN.MANAGER',
    0x0142: 'MENU.EDITOR',
    0x0143: 'ATTACH.TOOLBARS',
    0x0144: 'VBAActivate',
    0x0145: 'OPTIONS.CHART',
    0x0148: 'VBA.INSERT.FILE',
    0x014A: 'VBA.PROCEDURE.DEFINITION',
    0x0150: 'ROUTING.SLIP',
    0x0152: 'ROUTE.DOCUMENT',
    0x0153: 'MAIL.LOGON',
    0x0156: 'INSERT.PICTURE',
    0x0157: 'EDIT.TOOL',
    0x0158: 'GALLERY.DOUGHNUT',
    0x015E: 'CHART.TREND',
    0x0160: 'PIVOT.ITEM.PROPERTIES',
    0x0162: 'WORKBOOK.INSERT',
    0x0163: 'OPTIONS.TRANSITION',
    0x0164: 'OPTIONS.GENERAL',
    0x0172: 'FILTER.ADVANCED',
    0x0175: 'MAIL.ADD.MAILER',
    0x0176: 'MAIL.DELETE.MAILER',
    0x0177: 'MAIL.REPLY',
    0x0178: 'MAIL.REPLY.ALL',
    0x0179: 'MAIL.FORWARD',
    0x017A: 'MAIL.NEXT.LETTER',
    0x017B: 'DATA.LABEL',
    0x017C: 'INSERT.TITLE',
    0x017D: 'FONT.PROPERTIES',
    0x017E: 'MACRO.OPTIONS',
    0x017F: 'WORKBOOK.HIDE',
    0x0180: 'WORKBOOK.UNHIDE',
    0x0181: 'WORKBOOK.DELETE',
    0x0182: 'WORKBOOK.NAME',
    0x0184: 'GALLERY.CUSTOM',
    0x0186: 'ADD.CHART.AUTOFORMAT',
    0x0187: 'DELETE.CHART.AUTOFORMAT',
    0x0188: 'CHART.ADD.DATA',
    0x0189: 'AUTO.OUTLINE',
    0x018A: 'TAB.ORDER',
    0x018B: 'SHOW.DIALOG',
    0x018C: 'SELECT.ALL',
    0x018D: 'UNGROUP.SHEETS',
    0x018E: 'SUBTOTAL.CREATE',
    0x018F: 'SUBTOTAL.REMOVE',
    0x0190: 'RENAME.OBJECT',
    0x019C: 'WORKBOOK.SCROLL',
    0x019D: 'WORKBOOK.NEXT',
    0x019E: 'WORKBOOK.PREV',
    0x019F: 'WORKBOOK.TAB.SPLIT',
    0x01A0: 'FULL.SCREEN',
    0x01A1: 'WORKBOOK.PROTECT',
    0x01A4: 'SCROLLBAR.PROPERTIES',
    0x01A5: 'PIVOT.SHOW.PAGES',
    0x01A6: 'TEXT.TO.COLUMNS',
    0x01A7: 'FORMAT.CHARTTYPE',
    0x01A8: 'LINK.FORMAT',
    0x01A9: 'TRACER.DISPLAY',
    0x01AE: 'TRACER.NAVIGATE',
    0x01AF: 'TRACER.CLEAR',
    0x01B0: 'TRACER.ERROR',
    0x01B1: 'PIVOT.FIELD.GROUP',
    0x01B2: 'PIVOT.FIELD.UNGROUP',
    0x01B3: 'CHECKBOX.PROPERTIES',
    0x01B4: 'LABEL.PROPERTIES',
    0x01B5: 'LISTBOX.PROPERTIES',
    0x01B6: 'EDITBOX.PROPERTIES',
    0x01B7: 'PIVOT.REFRESH',
    0x01B8: 'LINK.COMBO',
    0x01B9: 'OPEN.TEXT',
    0x01BA: 'HIDE.DIALOG',
    0x01BB: 'SET.DIALOG.FOCUS',
    0x01BC: 'ENABLE.OBJECT',
    0x01BD: 'PUSHBUTTON.PROPERTIES',
    0x01BE: 'SET.DIALOG.DEFAULT',
    0x01BF: 'FILTER',
    0x01C0: 'FILTER.SHOW.ALL',
    0x01C1: 'CLEAR.OUTLINE',
    0x01C2: 'FUNCTION.WIZARD',
    0x01C3: 'ADD.LIST.ITEM',
    0x01C4: 'SET.LIST.ITEM',
    0x01C5: 'REMOVE.LIST.ITEM',
    0x01C6: 'SELECT.LIST.ITEM',
    0x01C7: 'SET.CONTROL.VALUE',
    0x01C8: 'SAVE.COPY.AS',
    0x01CA: 'OPTIONS.LISTS.ADD',
    0x01CB: 'OPTIONS.LISTS.DELETE',
    0x01CC: 'SERIES.AXES',
    0x01CD: 'SERIES.X',
    0x01CE: 'SERIES.Y',
    0x01CF: 'ERRORBAR.X',
    0x01D0: 'ERRORBAR.Y',
    0x01D1: 'FORMAT.CHART',
    0x01D2: 'SERIES.ORDER',
    0x01D3: 'MAIL.LOGOFF',
    0x01D4: 'CLEAR.ROUTING.SLIP',
    0x01D5: 'APP.ACTIVATE.MICROSOFT',
    0x01D6: 'MAIL.EDIT.MAILER',
    0x01D7: 'ON.SHEET',
    0x01D8: 'STANDARD.WIDTH',
    0x01D9: 'SCENARIO.MERGE',
    0x01DA: 'SUMMARY.INFO',
    0x01DB: 'FIND.FILE',
    0x01DC: 'ACTIVE.CELL.FONT',
    0x01DD: 'ENABLE.TIPWIZARD',
    0x01DE: 'VBA.MAKE.ADDIN',
    0x01E0: 'INSERTDATATABLE',
    0x01E1: 'WORKGROUP.OPTIONS',
    0x01E2: 'MAIL.SEND.MAILER',
    0x01E5: 'AUTOCORRECT',
    0x01E9: 'POST.DOCUMENT',
    0x01EB: 'PICKLIST',
    0x01ED: 'VIEW.SHOW',
    0x01EE: 'VIEW.DEFINE',
    0x01EF: 'VIEW.DELETE',
    0x01FD: 'SHEET.BACKGROUND',
    0x01FE: 'INSERT.MAP.OBJECT',
    0x01FF: 'OPTIONS.MENONO',
    0x0205: 'MSOCHECKS',
    0x0206: 'NORMAL',
    0x0207: 'LAYOUT',
    0x0208: 'RM.PRINT.AREA',
    0x0209: 'CLEAR.PRINT.AREA',
    0x020A: 'ADD.PRINT.AREA',
    0x020B: 'MOVE.BRK',
    0x0221: 'HIDECURR.NOTE',
    0x0222: 'HIDEALL.NOTES',
    0x0223: 'DELETE.NOTE',
    0x0224: 'TRAVERSE.NOTES',
    0x0225: 'ACTIVATE.NOTES',
    0x026C: 'PROTECT.REVISIONS',
    0x026D: 'UNPROTECT.REVISIONS',
    0x0287: 'OPTIONS.ME',
    0x028D: 'WEB.PUBLISH',
    0x029B: 'NEWWEBQUERY',
    0x02A1: 'PIVOT.TABLE.CHART',
    0x02F1: 'OPTIONS.SAVE',
    0x02F3: 'OPTIONS.SPELL',
    0x0328: 'HIDEALL.INKANNOTS'
};
/* [MS-XLS] 2.5.198.17 */
var Ftab = {
    0x0000: 'COUNT',
    0x0001: 'IF',
    0x0002: 'ISNA',
    0x0003: 'ISERROR',
    0x0004: 'SUM',
    0x0005: 'AVERAGE',
    0x0006: 'MIN',
    0x0007: 'MAX',
    0x0008: 'ROW',
    0x0009: 'COLUMN',
    0x000A: 'NA',
    0x000B: 'NPV',
    0x000C: 'STDEV',
    0x000D: 'DOLLAR',
    0x000E: 'FIXED',
    0x000F: 'SIN',
    0x0010: 'COS',
    0x0011: 'TAN',
    0x0012: 'ATAN',
    0x0013: 'PI',
    0x0014: 'SQRT',
    0x0015: 'EXP',
    0x0016: 'LN',
    0x0017: 'LOG10',
    0x0018: 'ABS',
    0x0019: 'INT',
    0x001A: 'SIGN',
    0x001B: 'ROUND',
    0x001C: 'LOOKUP',
    0x001D: 'INDEX',
    0x001E: 'REPT',
    0x001F: 'MID',
    0x0020: 'LEN',
    0x0021: 'VALUE',
    0x0022: 'TRUE',
    0x0023: 'FALSE',
    0x0024: 'AND',
    0x0025: 'OR',
    0x0026: 'NOT',
    0x0027: 'MOD',
    0x0028: 'DCOUNT',
    0x0029: 'DSUM',
    0x002A: 'DAVERAGE',
    0x002B: 'DMIN',
    0x002C: 'DMAX',
    0x002D: 'DSTDEV',
    0x002E: 'VAR',
    0x002F: 'DVAR',
    0x0030: 'TEXT',
    0x0031: 'LINEST',
    0x0032: 'TREND',
    0x0033: 'LOGEST',
    0x0034: 'GROWTH',
    0x0035: 'GOTO',
    0x0036: 'HALT',
    0x0037: 'RETURN',
    0x0038: 'PV',
    0x0039: 'FV',
    0x003A: 'NPER',
    0x003B: 'PMT',
    0x003C: 'RATE',
    0x003D: 'MIRR',
    0x003E: 'IRR',
    0x003F: 'RAND',
    0x0040: 'MATCH',
    0x0041: 'DATE',
    0x0042: 'TIME',
    0x0043: 'DAY',
    0x0044: 'MONTH',
    0x0045: 'YEAR',
    0x0046: 'WEEKDAY',
    0x0047: 'HOUR',
    0x0048: 'MINUTE',
    0x0049: 'SECOND',
    0x004A: 'NOW',
    0x004B: 'AREAS',
    0x004C: 'ROWS',
    0x004D: 'COLUMNS',
    0x004E: 'OFFSET',
    0x004F: 'ABSREF',
    0x0050: 'RELREF',
    0x0051: 'ARGUMENT',
    0x0052: 'SEARCH',
    0x0053: 'TRANSPOSE',
    0x0054: 'ERROR',
    0x0055: 'STEP',
    0x0056: 'TYPE',
    0x0057: 'ECHO',
    0x0058: 'SET.NAME',
    0x0059: 'CALLER',
    0x005A: 'DEREF',
    0x005B: 'WINDOWS',
    0x005C: 'SERIES',
    0x005D: 'DOCUMENTS',
    0x005E: 'ACTIVE.CELL',
    0x005F: 'SELECTION',
    0x0060: 'RESULT',
    0x0061: 'ATAN2',
    0x0062: 'ASIN',
    0x0063: 'ACOS',
    0x0064: 'CHOOSE',
    0x0065: 'HLOOKUP',
    0x0066: 'VLOOKUP',
    0x0067: 'LINKS',
    0x0068: 'INPUT',
    0x0069: 'ISREF',
    0x006A: 'GET.FORMULA',
    0x006B: 'GET.NAME',
    0x006C: 'SET.VALUE',
    0x006D: 'LOG',
    0x006E: 'EXEC',
    0x006F: 'CHAR',
    0x0070: 'LOWER',
    0x0071: 'UPPER',
    0x0072: 'PROPER',
    0x0073: 'LEFT',
    0x0074: 'RIGHT',
    0x0075: 'EXACT',
    0x0076: 'TRIM',
    0x0077: 'REPLACE',
    0x0078: 'SUBSTITUTE',
    0x0079: 'CODE',
    0x007A: 'NAMES',
    0x007B: 'DIRECTORY',
    0x007C: 'FIND',
    0x007D: 'CELL',
    0x007E: 'ISERR',
    0x007F: 'ISTEXT',
    0x0080: 'ISNUMBER',
    0x0081: 'ISBLANK',
    0x0082: 'T',
    0x0083: 'N',
    0x0084: 'FOPEN',
    0x0085: 'FCLOSE',
    0x0086: 'FSIZE',
    0x0087: 'FREADLN',
    0x0088: 'FREAD',
    0x0089: 'FWRITELN',
    0x008A: 'FWRITE',
    0x008B: 'FPOS',
    0x008C: 'DATEVALUE',
    0x008D: 'TIMEVALUE',
    0x008E: 'SLN',
    0x008F: 'SYD',
    0x0090: 'DDB',
    0x0091: 'GET.DEF',
    0x0092: 'REFTEXT',
    0x0093: 'TEXTREF',
    0x0094: 'INDIRECT',
    0x0095: 'REGISTER',
    0x0096: 'CALL',
    0x0097: 'ADD.BAR',
    0x0098: 'ADD.MENU',
    0x0099: 'ADD.COMMAND',
    0x009A: 'ENABLE.COMMAND',
    0x009B: 'CHECK.COMMAND',
    0x009C: 'RENAME.COMMAND',
    0x009D: 'SHOW.BAR',
    0x009E: 'DELETE.MENU',
    0x009F: 'DELETE.COMMAND',
    0x00A0: 'GET.CHART.ITEM',
    0x00A1: 'DIALOG.BOX',
    0x00A2: 'CLEAN',
    0x00A3: 'MDETERM',
    0x00A4: 'MINVERSE',
    0x00A5: 'MMULT',
    0x00A6: 'FILES',
    0x00A7: 'IPMT',
    0x00A8: 'PPMT',
    0x00A9: 'COUNTA',
    0x00AA: 'CANCEL.KEY',
    0x00AB: 'FOR',
    0x00AC: 'WHILE',
    0x00AD: 'BREAK',
    0x00AE: 'NEXT',
    0x00AF: 'INITIATE',
    0x00B0: 'REQUEST',
    0x00B1: 'POKE',
    0x00B2: 'EXECUTE',
    0x00B3: 'TERMINATE',
    0x00B4: 'RESTART',
    0x00B5: 'HELP',
    0x00B6: 'GET.BAR',
    0x00B7: 'PRODUCT',
    0x00B8: 'FACT',
    0x00B9: 'GET.CELL',
    0x00BA: 'GET.WORKSPACE',
    0x00BB: 'GET.WINDOW',
    0x00BC: 'GET.DOCUMENT',
    0x00BD: 'DPRODUCT',
    0x00BE: 'ISNONTEXT',
    0x00BF: 'GET.NOTE',
    0x00C0: 'NOTE',
    0x00C1: 'STDEVP',
    0x00C2: 'VARP',
    0x00C3: 'DSTDEVP',
    0x00C4: 'DVARP',
    0x00C5: 'TRUNC',
    0x00C6: 'ISLOGICAL',
    0x00C7: 'DCOUNTA',
    0x00C8: 'DELETE.BAR',
    0x00C9: 'UNREGISTER',
    0x00CC: 'USDOLLAR',
    0x00CD: 'FINDB',
    0x00CE: 'SEARCHB',
    0x00CF: 'REPLACEB',
    0x00D0: 'LEFTB',
    0x00D1: 'RIGHTB',
    0x00D2: 'MIDB',
    0x00D3: 'LENB',
    0x00D4: 'ROUNDUP',
    0x00D5: 'ROUNDDOWN',
    0x00D6: 'ASC',
    0x00D7: 'DBCS',
    0x00D8: 'RANK',
    0x00DB: 'ADDRESS',
    0x00DC: 'DAYS360',
    0x00DD: 'TODAY',
    0x00DE: 'VDB',
    0x00DF: 'ELSE',
    0x00E0: 'ELSE.IF',
    0x00E1: 'END.IF',
    0x00E2: 'FOR.CELL',
    0x00E3: 'MEDIAN',
    0x00E4: 'SUMPRODUCT',
    0x00E5: 'SINH',
    0x00E6: 'COSH',
    0x00E7: 'TANH',
    0x00E8: 'ASINH',
    0x00E9: 'ACOSH',
    0x00EA: 'ATANH',
    0x00EB: 'DGET',
    0x00EC: 'CREATE.OBJECT',
    0x00ED: 'VOLATILE',
    0x00EE: 'LAST.ERROR',
    0x00EF: 'CUSTOM.UNDO',
    0x00F0: 'CUSTOM.REPEAT',
    0x00F1: 'FORMULA.CONVERT',
    0x00F2: 'GET.LINK.INFO',
    0x00F3: 'TEXT.BOX',
    0x00F4: 'INFO',
    0x00F5: 'GROUP',
    0x00F6: 'GET.OBJECT',
    0x00F7: 'DB',
    0x00F8: 'PAUSE',
    0x00FB: 'RESUME',
    0x00FC: 'FREQUENCY',
    0x00FD: 'ADD.TOOLBAR',
    0x00FE: 'DELETE.TOOLBAR',
    0x00FF: 'User',
    0x0100: 'RESET.TOOLBAR',
    0x0101: 'EVALUATE',
    0x0102: 'GET.TOOLBAR',
    0x0103: 'GET.TOOL',
    0x0104: 'SPELLING.CHECK',
    0x0105: 'ERROR.TYPE',
    0x0106: 'APP.TITLE',
    0x0107: 'WINDOW.TITLE',
    0x0108: 'SAVE.TOOLBAR',
    0x0109: 'ENABLE.TOOL',
    0x010A: 'PRESS.TOOL',
    0x010B: 'REGISTER.ID',
    0x010C: 'GET.WORKBOOK',
    0x010D: 'AVEDEV',
    0x010E: 'BETADIST',
    0x010F: 'GAMMALN',
    0x0110: 'BETAINV',
    0x0111: 'BINOMDIST',
    0x0112: 'CHIDIST',
    0x0113: 'CHIINV',
    0x0114: 'COMBIN',
    0x0115: 'CONFIDENCE',
    0x0116: 'CRITBINOM',
    0x0117: 'EVEN',
    0x0118: 'EXPONDIST',
    0x0119: 'FDIST',
    0x011A: 'FINV',
    0x011B: 'FISHER',
    0x011C: 'FISHERINV',
    0x011D: 'FLOOR',
    0x011E: 'GAMMADIST',
    0x011F: 'GAMMAINV',
    0x0120: 'CEILING',
    0x0121: 'HYPGEOMDIST',
    0x0122: 'LOGNORMDIST',
    0x0123: 'LOGINV',
    0x0124: 'NEGBINOMDIST',
    0x0125: 'NORMDIST',
    0x0126: 'NORMSDIST',
    0x0127: 'NORMINV',
    0x0128: 'NORMSINV',
    0x0129: 'STANDARDIZE',
    0x012A: 'ODD',
    0x012B: 'PERMUT',
    0x012C: 'POISSON',
    0x012D: 'TDIST',
    0x012E: 'WEIBULL',
    0x012F: 'SUMXMY2',
    0x0130: 'SUMX2MY2',
    0x0131: 'SUMX2PY2',
    0x0132: 'CHITEST',
    0x0133: 'CORREL',
    0x0134: 'COVAR',
    0x0135: 'FORECAST',
    0x0136: 'FTEST',
    0x0137: 'INTERCEPT',
    0x0138: 'PEARSON',
    0x0139: 'RSQ',
    0x013A: 'STEYX',
    0x013B: 'SLOPE',
    0x013C: 'TTEST',
    0x013D: 'PROB',
    0x013E: 'DEVSQ',
    0x013F: 'GEOMEAN',
    0x0140: 'HARMEAN',
    0x0141: 'SUMSQ',
    0x0142: 'KURT',
    0x0143: 'SKEW',
    0x0144: 'ZTEST',
    0x0145: 'LARGE',
    0x0146: 'SMALL',
    0x0147: 'QUARTILE',
    0x0148: 'PERCENTILE',
    0x0149: 'PERCENTRANK',
    0x014A: 'MODE',
    0x014B: 'TRIMMEAN',
    0x014C: 'TINV',
    0x014E: 'MOVIE.COMMAND',
    0x014F: 'GET.MOVIE',
    0x0150: 'CONCATENATE',
    0x0151: 'POWER',
    0x0152: 'PIVOT.ADD.DATA',
    0x0153: 'GET.PIVOT.TABLE',
    0x0154: 'GET.PIVOT.FIELD',
    0x0155: 'GET.PIVOT.ITEM',
    0x0156: 'RADIANS',
    0x0157: 'DEGREES',
    0x0158: 'SUBTOTAL',
    0x0159: 'SUMIF',
    0x015A: 'COUNTIF',
    0x015B: 'COUNTBLANK',
    0x015C: 'SCENARIO.GET',
    0x015D: 'OPTIONS.LISTS.GET',
    0x015E: 'ISPMT',
    0x015F: 'DATEDIF',
    0x0160: 'DATESTRING',
    0x0161: 'NUMBERSTRING',
    0x0162: 'ROMAN',
    0x0163: 'OPEN.DIALOG',
    0x0164: 'SAVE.DIALOG',
    0x0165: 'VIEW.GET',
    0x0166: 'GETPIVOTDATA',
    0x0167: 'HYPERLINK',
    0x0168: 'PHONETIC',
    0x0169: 'AVERAGEA',
    0x016A: 'MAXA',
    0x016B: 'MINA',
    0x016C: 'STDEVPA',
    0x016D: 'VARPA',
    0x016E: 'STDEVA',
    0x016F: 'VARA',
    0x0170: 'BAHTTEXT',
    0x0171: 'THAIDAYOFWEEK',
    0x0172: 'THAIDIGIT',
    0x0173: 'THAIMONTHOFYEAR',
    0x0174: 'THAINUMSOUND',
    0x0175: 'THAINUMSTRING',
    0x0176: 'THAISTRINGLENGTH',
    0x0177: 'ISTHAIDIGIT',
    0x0178: 'ROUNDBAHTDOWN',
    0x0179: 'ROUNDBAHTUP',
    0x017A: 'THAIYEAR',
    0x017B: 'RTD'
};
var FtabArgc = {
    0x0002: 1, /* ISNA */
    0x0003: 1, /* ISERROR */
    0x000F: 1, /* SIN */
    0x0010: 1, /* COS */
    0x0011: 1, /* TAN */
    0x0012: 1, /* ATAN */
    0x0014: 1, /* SQRT */
    0x0015: 1, /* EXP */
    0x0016: 1, /* LN */
    0x0017: 1, /* LOG10 */
    0x0018: 1, /* ABS */
    0x0019: 1, /* INT */
    0x001A: 1, /* SIGN */
    0x001B: 2, /* ROUND */
    0x001E: 2, /* REPT */
    0x001F: 3, /* MID */
    0x0020: 1, /* LEN */
    0x0021: 1, /* VALUE */
    0x0026: 1, /* NOT */
    0x0027: 2, /* MOD */
    0x0028: 3, /* DCOUNT */
    0x0029: 3, /* DSUM */
    0x002A: 3, /* DAVERAGE */
    0x002B: 3, /* DMIN */
    0x002C: 3, /* DMAX */
    0x002D: 3, /* DSTDEV */
    0x002F: 3, /* DVAR */
    0x0030: 2, /* TEXT */
    0x0035: 1, /* GOTO */
    0x003D: 3, /* MIRR */
    0x0041: 3, /* DATE */
    0x0042: 3, /* TIME */
    0x0043: 1, /* DAY */
    0x0044: 1, /* MONTH */
    0x0045: 1, /* YEAR */
    0x0047: 1, /* HOUR */
    0x0048: 1, /* MINUTE */
    0x0049: 1, /* SECOND */
    0x004B: 1, /* AREAS */
    0x004C: 1, /* ROWS */
    0x004D: 1, /* COLUMNS */
    0x004F: 2, /* ABSREF */
    0x0050: 2, /* RELREF */
    0x0053: 1, /* TRANSPOSE */
    0x0056: 1, /* TYPE */
    0x005A: 1, /* DEREF */
    0x0061: 2, /* ATAN2 */
    0x0062: 1, /* ASIN */
    0x0063: 1, /* ACOS */
    0x0069: 1, /* ISREF */
    0x006F: 1, /* CHAR */
    0x0070: 1, /* LOWER */
    0x0071: 1, /* UPPER */
    0x0072: 1, /* PROPER */
    0x0075: 2, /* EXACT */
    0x0076: 1, /* TRIM */
    0x0077: 4, /* REPLACE */
    0x0079: 1, /* CODE */
    0x007E: 1, /* ISERR */
    0x007F: 1, /* ISTEXT */
    0x0080: 1, /* ISNUMBER */
    0x0081: 1, /* ISBLANK */
    0x0082: 1, /* T */
    0x0083: 1, /* N */
    0x0085: 1, /* FCLOSE */
    0x0086: 1, /* FSIZE */
    0x0087: 1, /* FREADLN */
    0x0088: 2, /* FREAD */
    0x0089: 2, /* FWRITELN */
    0x008A: 2, /* FWRITE */
    0x008C: 1, /* DATEVALUE */
    0x008D: 1, /* TIMEVALUE */
    0x008E: 3, /* SLN */
    0x008F: 4, /* SYD */
    0x00A2: 1, /* CLEAN */
    0x00A3: 1, /* MDETERM */
    0x00A4: 1, /* MINVERSE */
    0x00A5: 2, /* MMULT */
    0x00AC: 1, /* WHILE */
    0x00AF: 2, /* INITIATE */
    0x00B0: 2, /* REQUEST */
    0x00B1: 3, /* POKE */
    0x00B2: 2, /* EXECUTE */
    0x00B3: 1, /* TERMINATE */
    0x00B8: 1, /* FACT */
    0x00BD: 3, /* DPRODUCT */
    0x00BE: 1, /* ISNONTEXT */
    0x00C3: 3, /* DSTDEVP */
    0x00C4: 3, /* DVARP */
    0x00C6: 1, /* ISLOGICAL */
    0x00C7: 3, /* DCOUNTA */
    0x00C9: 1, /* UNREGISTER */
    0x00CF: 4, /* REPLACEB */
    0x00D2: 3, /* MIDB */
    0x00D3: 1, /* LENB */
    0x00D4: 2, /* ROUNDUP */
    0x00D5: 2, /* ROUNDDOWN */
    0x00D6: 1, /* ASC */
    0x00D7: 1, /* DBCS */
    0x00E5: 1, /* SINH */
    0x00E6: 1, /* COSH */
    0x00E7: 1, /* TANH */
    0x00E8: 1, /* ASINH */
    0x00E9: 1, /* ACOSH */
    0x00EA: 1, /* ATANH */
    0x00EB: 3, /* DGET */
    0x00F4: 1, /* INFO */
    0x00FC: 2, /* FREQUENCY */
    0x0101: 1, /* EVALUATE */
    0x0105: 1, /* ERROR.TYPE */
    0x010F: 1, /* GAMMALN */
    0x0111: 4, /* BINOMDIST */
    0x0112: 2, /* CHIDIST */
    0x0113: 2, /* CHIINV */
    0x0114: 2, /* COMBIN */
    0x0115: 3, /* CONFIDENCE */
    0x0116: 3, /* CRITBINOM */
    0x0117: 1, /* EVEN */
    0x0118: 3, /* EXPONDIST */
    0x0119: 3, /* FDIST */
    0x011A: 3, /* FINV */
    0x011B: 1, /* FISHER */
    0x011C: 1, /* FISHERINV */
    0x011D: 2, /* FLOOR */
    0x011E: 4, /* GAMMADIST */
    0x011F: 3, /* GAMMAINV */
    0x0120: 2, /* CEILING */
    0x0121: 4, /* HYPGEOMDIST */
    0x0122: 3, /* LOGNORMDIST */
    0x0123: 3, /* LOGINV */
    0x0124: 3, /* NEGBINOMDIST */
    0x0125: 4, /* NORMDIST */
    0x0126: 1, /* NORMSDIST */
    0x0127: 3, /* NORMINV */
    0x0128: 1, /* NORMSINV */
    0x0129: 3, /* STANDARDIZE */
    0x012A: 1, /* ODD */
    0x012B: 2, /* PERMUT */
    0x012C: 3, /* POISSON */
    0x012D: 3, /* TDIST */
    0x012E: 4, /* WEIBULL */
    0x012F: 2, /* SUMXMY2 */
    0x0130: 2, /* SUMX2MY2 */
    0x0131: 2, /* SUMX2PY2 */
    0x0132: 2, /* CHITEST */
    0x0133: 2, /* CORREL */
    0x0134: 2, /* COVAR */
    0x0135: 3, /* FORECAST */
    0x0136: 2, /* FTEST */
    0x0137: 2, /* INTERCEPT */
    0x0138: 2, /* PEARSON */
    0x0139: 2, /* RSQ */
    0x013A: 2, /* STEYX */
    0x013B: 2, /* SLOPE */
    0x013C: 4, /* TTEST */
    0x0145: 2, /* LARGE */
    0x0146: 2, /* SMALL */
    0x0147: 2, /* QUARTILE */
    0x0148: 2, /* PERCENTILE */
    0x014B: 2, /* TRIMMEAN */
    0x014C: 2, /* TINV */
    0x0151: 2, /* POWER */
    0x0156: 1, /* RADIANS */
    0x0157: 1, /* DEGREES */
    0x015A: 2, /* COUNTIF */
    0x015B: 1, /* COUNTBLANK */
    0x015E: 4, /* ISPMT */
    0x015F: 3, /* DATEDIF */
    0x0160: 1, /* DATESTRING */
    0x0161: 2, /* NUMBERSTRING */
    0x0168: 1, /* PHONETIC */
    0x0170: 1, /* BAHTTEXT */
    0x0171: 1, /* THAIDAYOFWEEK */
    0x0172: 1, /* THAIDIGIT */
    0x0173: 1, /* THAIMONTHOFYEAR */
    0x0174: 1, /* THAINUMSOUND */
    0x0175: 1, /* THAINUMSTRING */
    0x0176: 1, /* THAISTRINGLENGTH */
    0x0177: 1, /* ISTHAIDIGIT */
    0x0178: 1, /* ROUNDBAHTDOWN */
    0x0179: 1, /* ROUNDBAHTUP */
    0x017A: 1, /* THAIYEAR */
    0xFFFF: 0
};
/* [MS-XLSX] 2.2.3 Functions */
var XLSXFutureFunctions = {
    "_xlfn.ACOT": "ACOT",
    "_xlfn.ACOTH": "ACOTH",
    "_xlfn.AGGREGATE": "AGGREGATE",
    "_xlfn.ARABIC": "ARABIC",
    "_xlfn.AVERAGEIF": "AVERAGEIF",
    "_xlfn.AVERAGEIFS": "AVERAGEIFS",
    "_xlfn.BASE": "BASE",
    "_xlfn.BETA.DIST": "BETA.DIST",
    "_xlfn.BETA.INV": "BETA.INV",
    "_xlfn.BINOM.DIST": "BINOM.DIST",
    "_xlfn.BINOM.DIST.RANGE": "BINOM.DIST.RANGE",
    "_xlfn.BINOM.INV": "BINOM.INV",
    "_xlfn.BITAND": "BITAND",
    "_xlfn.BITLSHIFT": "BITLSHIFT",
    "_xlfn.BITOR": "BITOR",
    "_xlfn.BITRSHIFT": "BITRSHIFT",
    "_xlfn.BITXOR": "BITXOR",
    "_xlfn.CEILING.MATH": "CEILING.MATH",
    "_xlfn.CEILING.PRECISE": "CEILING.PRECISE",
    "_xlfn.CHISQ.DIST": "CHISQ.DIST",
    "_xlfn.CHISQ.DIST.RT": "CHISQ.DIST.RT",
    "_xlfn.CHISQ.INV": "CHISQ.INV",
    "_xlfn.CHISQ.INV.RT": "CHISQ.INV.RT",
    "_xlfn.CHISQ.TEST": "CHISQ.TEST",
    "_xlfn.COMBINA": "COMBINA",
    "_xlfn.CONFIDENCE.NORM": "CONFIDENCE.NORM",
    "_xlfn.CONFIDENCE.T": "CONFIDENCE.T",
    "_xlfn.COT": "COT",
    "_xlfn.COTH": "COTH",
    "_xlfn.COUNTIFS": "COUNTIFS",
    "_xlfn.COVARIANCE.P": "COVARIANCE.P",
    "_xlfn.COVARIANCE.S": "COVARIANCE.S",
    "_xlfn.CSC": "CSC",
    "_xlfn.CSCH": "CSCH",
    "_xlfn.DAYS": "DAYS",
    "_xlfn.DECIMAL": "DECIMAL",
    "_xlfn.ECMA.CEILING": "ECMA.CEILING",
    "_xlfn.ERF.PRECISE": "ERF.PRECISE",
    "_xlfn.ERFC.PRECISE": "ERFC.PRECISE",
    "_xlfn.EXPON.DIST": "EXPON.DIST",
    "_xlfn.F.DIST": "F.DIST",
    "_xlfn.F.DIST.RT": "F.DIST.RT",
    "_xlfn.F.INV": "F.INV",
    "_xlfn.F.INV.RT": "F.INV.RT",
    "_xlfn.F.TEST": "F.TEST",
    "_xlfn.FILTERXML": "FILTERXML",
    "_xlfn.FLOOR.MATH": "FLOOR.MATH",
    "_xlfn.FLOOR.PRECISE": "FLOOR.PRECISE",
    "_xlfn.FORMULATEXT": "FORMULATEXT",
    "_xlfn.GAMMA": "GAMMA",
    "_xlfn.GAMMA.DIST": "GAMMA.DIST",
    "_xlfn.GAMMA.INV": "GAMMA.INV",
    "_xlfn.GAMMALN.PRECISE": "GAMMALN.PRECISE",
    "_xlfn.GAUSS": "GAUSS",
    "_xlfn.HYPGEOM.DIST": "HYPGEOM.DIST",
    "_xlfn.IFNA": "IFNA",
    "_xlfn.IFERROR": "IFERROR",
    "_xlfn.IMCOSH": "IMCOSH",
    "_xlfn.IMCOT": "IMCOT",
    "_xlfn.IMCSC": "IMCSC",
    "_xlfn.IMCSCH": "IMCSCH",
    "_xlfn.IMSEC": "IMSEC",
    "_xlfn.IMSECH": "IMSECH",
    "_xlfn.IMSINH": "IMSINH",
    "_xlfn.IMTAN": "IMTAN",
    "_xlfn.ISFORMULA": "ISFORMULA",
    "_xlfn.ISO.CEILING": "ISO.CEILING",
    "_xlfn.ISOWEEKNUM": "ISOWEEKNUM",
    "_xlfn.LOGNORM.DIST": "LOGNORM.DIST",
    "_xlfn.LOGNORM.INV": "LOGNORM.INV",
    "_xlfn.MODE.MULT": "MODE.MULT",
    "_xlfn.MODE.SNGL": "MODE.SNGL",
    "_xlfn.MUNIT": "MUNIT",
    "_xlfn.NEGBINOM.DIST": "NEGBINOM.DIST",
    "_xlfn.NETWORKDAYS.INTL": "NETWORKDAYS.INTL",
    "_xlfn.NIGBINOM": "NIGBINOM",
    "_xlfn.NORM.DIST": "NORM.DIST",
    "_xlfn.NORM.INV": "NORM.INV",
    "_xlfn.NORM.S.DIST": "NORM.S.DIST",
    "_xlfn.NORM.S.INV": "NORM.S.INV",
    "_xlfn.NUMBERVALUE": "NUMBERVALUE",
    "_xlfn.PDURATION": "PDURATION",
    "_xlfn.PERCENTILE.EXC": "PERCENTILE.EXC",
    "_xlfn.PERCENTILE.INC": "PERCENTILE.INC",
    "_xlfn.PERCENTRANK.EXC": "PERCENTRANK.EXC",
    "_xlfn.PERCENTRANK.INC": "PERCENTRANK.INC",
    "_xlfn.PERMUTATIONA": "PERMUTATIONA",
    "_xlfn.PHI": "PHI",
    "_xlfn.POISSON.DIST": "POISSON.DIST",
    "_xlfn.QUARTILE.EXC": "QUARTILE.EXC",
    "_xlfn.QUARTILE.INC": "QUARTILE.INC",
    "_xlfn.QUERYSTRING": "QUERYSTRING",
    "_xlfn.RANK.AVG": "RANK.AVG",
    "_xlfn.RANK.EQ": "RANK.EQ",
    "_xlfn.RRI": "RRI",
    "_xlfn.SEC": "SEC",
    "_xlfn.SECH": "SECH",
    "_xlfn.SHEET": "SHEET",
    "_xlfn.SHEETS": "SHEETS",
    "_xlfn.SKEW.P": "SKEW.P",
    "_xlfn.STDEV.P": "STDEV.P",
    "_xlfn.STDEV.S": "STDEV.S",
    "_xlfn.SUMIFS": "SUMIFS",
    "_xlfn.T.DIST": "T.DIST",
    "_xlfn.T.DIST.2T": "T.DIST.2T",
    "_xlfn.T.DIST.RT": "T.DIST.RT",
    "_xlfn.T.INV": "T.INV",
    "_xlfn.T.INV.2T": "T.INV.2T",
    "_xlfn.T.TEST": "T.TEST",
    "_xlfn.UNICHAR": "UNICHAR",
    "_xlfn.UNICODE": "UNICODE",
    "_xlfn.VAR.P": "VAR.P",
    "_xlfn.VAR.S": "VAR.S",
    "_xlfn.WEBSERVICE": "WEBSERVICE",
    "_xlfn.WEIBULL.DIST": "WEIBULL.DIST",
    "_xlfn.WORKDAY.INTL": "WORKDAY.INTL",
    "_xlfn.XOR": "XOR",
    "_xlfn.Z.TEST": "Z.TEST"
};
Source/UBCS-WEB/src/config/js-xlsx-master/bits/66_wscommon.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,84 @@
var strs = {}; // shared strings
var _ssfopts = {}; // spreadsheet formatting options
RELS.WS = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet";
function get_sst_id(sst, str) {
    for(var i = 0, len = sst.length; i < len; ++i) if(sst[i].t === str) { sst.Count ++; return i; }
    sst[len] = {t:str}; sst.Count ++; sst.Unique ++; return len;
}
function get_cell_style(styles, cell, opts) {
  if (typeof style_builder != 'undefined') {
    if (/^\d+$/.exec(cell.s)) { return cell.s}  // if its already an integer index, let it be
    if (cell.s && (cell.s == +cell.s)) { return cell.s}  // if its already an integer index, let it be
    var s = cell.s || {};
    if (cell.z) s.numFmt = cell.z;
    return style_builder.addStyle(s);
  }
  else {
    var z = opts.revssf[cell.z != null ? cell.z : "General"];
    for(var i = 0, len = styles.length; i != len; ++i) if(styles[i].numFmtId === z) return i;
    styles[len] = {
      numFmtId:z,
      fontId:0,
      fillId:0,
      borderId:0,
      xfId:0,
      applyNumberFormat:1
    };
    return len;
  }
}
function get_cell_style_csf(cellXf) {
  if (cellXf) {
    var s = {}
    if (typeof cellXf.numFmtId != undefined)  {
      s.numFmt = SSF._table[cellXf.numFmtId];
    }
    if(cellXf.fillId)  {
      s.fill =  styles.Fills[cellXf.fillId];
    }
    if (cellXf.fontId) {
      s.font = styles.Fonts[cellXf.fontId];
    }
    if (cellXf.borderId) {
      s.border = styles.Borders[cellXf.borderId];
    }
    if (cellXf.applyAlignment==1) {
      s.alignment = cellXf.alignment;
    }
    return JSON.parse(JSON.stringify(s));
  }
  return null;
}
function safe_format(p, fmtid, fillid, opts) {
    try {
        if(p.t === 'e') p.w = p.w || BErr[p.v];
        else if(fmtid === 0) {
            if(p.t === 'n') {
                if((p.v|0) === p.v) p.w = SSF._general_int(p.v,_ssfopts);
                else p.w = SSF._general_num(p.v,_ssfopts);
            }
            else if(p.t === 'd') {
                var dd = datenum(p.v);
                if((dd|0) === dd) p.w = SSF._general_int(dd,_ssfopts);
                else p.w = SSF._general_num(dd,_ssfopts);
            }
            else if(p.v === undefined) return "";
            else p.w = SSF._general(p.v,_ssfopts);
        }
        else if(p.t === 'd') p.w = SSF.format(fmtid,datenum(p.v),_ssfopts);
        else p.w = SSF.format(fmtid,p.v,_ssfopts);
        if(opts.cellNF) p.z = SSF._table[fmtid];
    } catch(e) { if(opts.WTF) throw e; }
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/67_wsxml.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,433 @@
function parse_ws_xml_dim(ws, s) {
  var d = safe_decode_range(s);
  if (d.s.r <= d.e.r && d.s.c <= d.e.c && d.s.r >= 0 && d.s.c >= 0) ws["!ref"] = encode_range(d);
}
var mergecregex = /<mergeCell ref="[A-Z0-9:]+"\s*\/>/g;
var sheetdataregex = /<(?:\w+:)?sheetData>([^\u2603]*)<\/(?:\w+:)?sheetData>/;
var hlinkregex = /<hyperlink[^>]*\/>/g;
var dimregex = /"(\w*:\w*)"/;
var colregex = /<col[^>]*\/>/g;
/* 18.3 Worksheets */
function parse_ws_xml(data, opts, rels) {
  if (!data) return data;
  /* 18.3.1.99 worksheet CT_Worksheet */
  var s = {};
  /* 18.3.1.35 dimension CT_SheetDimension ? */
  var ridx = data.indexOf("<dimension");
  if (ridx > 0) {
    var ref = data.substr(ridx, 50).match(dimregex);
    if (ref != null) parse_ws_xml_dim(s, ref[1]);
  }
  /* 18.3.1.55 mergeCells CT_MergeCells */
  var mergecells = [];
  if (data.indexOf("</mergeCells>") !== -1) {
    var merges = data.match(mergecregex);
    for (ridx = 0; ridx != merges.length; ++ridx)
      mergecells[ridx] = safe_decode_range(merges[ridx].substr(merges[ridx].indexOf("\"") + 1));
  }
  /* 18.3.1.17 cols CT_Cols */
  var columns = [];
  if (opts.cellStyles && data.indexOf("</cols>") !== -1) {
    /* 18.3.1.13 col CT_Col */
    var cols = data.match(colregex);
    parse_ws_xml_cols(columns, cols);
  }
  var refguess = {s: {r: 1000000, c: 1000000}, e: {r: 0, c: 0}};
  /* 18.3.1.80 sheetData CT_SheetData ? */
  var mtch = data.match(sheetdataregex);
  if (mtch) parse_ws_xml_data(mtch[1], s, opts, refguess);
  /* 18.3.1.48 hyperlinks CT_Hyperlinks */
  if (data.indexOf("</hyperlinks>") !== -1) parse_ws_xml_hlinks(s, data.match(hlinkregex), rels);
  if (!s["!ref"] && refguess.e.c >= refguess.s.c && refguess.e.r >= refguess.s.r) s["!ref"] = encode_range(refguess);
  if (opts.sheetRows > 0 && s["!ref"]) {
    var tmpref = safe_decode_range(s["!ref"]);
    if (opts.sheetRows < +tmpref.e.r) {
      tmpref.e.r = opts.sheetRows - 1;
      if (tmpref.e.r > refguess.e.r) tmpref.e.r = refguess.e.r;
      if (tmpref.e.r < tmpref.s.r) tmpref.s.r = tmpref.e.r;
      if (tmpref.e.c > refguess.e.c) tmpref.e.c = refguess.e.c;
      if (tmpref.e.c < tmpref.s.c) tmpref.s.c = tmpref.e.c;
      s["!fullref"] = s["!ref"];
      s["!ref"] = encode_range(tmpref);
    }
  }
  if (mergecells.length > 0) s["!merges"] = mergecells;
  if (columns.length > 0) s["!cols"] = columns;
  return s;
}
function write_ws_xml_merges(merges) {
  if (merges.length == 0) return "";
  var o = '<mergeCells count="' + merges.length + '">';
  for (var i = 0; i != merges.length; ++i) o += '<mergeCell ref="' + encode_range(merges[i]) + '"/>';
  return o + '</mergeCells>';
}
function write_ws_xml_pagesetup(setup) {
  var pageSetup = writextag('pageSetup', null, {
    scale: setup.scale || '100',
    orientation: setup.orientation || 'portrait',
    horizontalDpi: setup.horizontalDpi || '4294967292',
    verticalDpi: setup.verticalDpi || '4294967292'
  })
  return pageSetup;
}
function parse_ws_xml_hlinks(s, data, rels) {
  for (var i = 0; i != data.length; ++i) {
    var val = parsexmltag(data[i], true);
    if (!val.ref) return;
    var rel = rels ? rels['!id'][val.id] : null;
    if (rel) {
      val.Target = rel.Target;
      if (val.location) val.Target += "#" + val.location;
      val.Rel = rel;
    } else {
      val.Target = val.location;
      rel = {Target: val.location, TargetMode: 'Internal'};
      val.Rel = rel;
    }
    var rng = safe_decode_range(val.ref);
    for (var R = rng.s.r; R <= rng.e.r; ++R) for (var C = rng.s.c; C <= rng.e.c; ++C) {
      var addr = encode_cell({c: C, r: R});
      if (!s[addr]) s[addr] = {t: "stub", v: undefined};
      s[addr].l = val;
    }
  }
}
function parse_ws_xml_cols(columns, cols) {
  var seencol = false;
  for (var coli = 0; coli != cols.length; ++coli) {
    var coll = parsexmltag(cols[coli], true);
    var colm = parseInt(coll.min, 10) - 1, colM = parseInt(coll.max, 10) - 1;
    delete coll.min;
    delete coll.max;
    if (!seencol && coll.width) {
      seencol = true;
      find_mdw(+coll.width, coll);
    }
    if (coll.width) {
      coll.wpx = width2px(+coll.width);
      coll.wch = px2char(coll.wpx);
      coll.MDW = MDW;
    }
    while (colm <= colM) columns[colm++] = coll;
  }
}
function write_ws_xml_cols(ws, cols) {
  var o = ["<cols>"], col, width;
  for (var i = 0; i != cols.length; ++i) {
    if (!(col = cols[i])) continue;
    var p = {min: i + 1, max: i + 1};
    /* wch (chars), wpx (pixels) */
    width = -1;
    if (col.wpx) width = px2char(col.wpx);
    else if (col.wch) width = col.wch;
    if (width > -1) {
      p.width = char2width(width);
      p.customWidth = 1;
    }
    o[o.length] = (writextag('col', null, p));
  }
  o[o.length] = "</cols>";
  return o.join("");
}
function write_ws_xml_cell(cell, ref, ws, opts, idx, wb) {
  if (cell.v === undefined && cell.s === undefined) return "";
  var vv = "";
  var oldt = cell.t, oldv = cell.v;
  switch (cell.t) {
    case 'b':
      vv = cell.v ? "1" : "0";
      break;
    case 'n':
      vv = '' + cell.v;
      break;
    case 'e':
      vv = BErr[cell.v];
      break;
    case 'd':
      if (opts.cellDates) vv = new Date(cell.v).toISOString();
      else {
        cell.t = 'n';
        vv = '' + (cell.v = datenum(cell.v));
        if (typeof cell.z === 'undefined') cell.z = SSF._table[14];
      }
      break;
    default:
      vv = cell.v;
      break;
  }
  var v = writetag('v', escapexml(vv)), o = {r: ref};
  /* TODO: cell style */
  var os = get_cell_style(opts.cellXfs, cell, opts);
  if (os !== 0) o.s = os;
  switch (cell.t) {
    case 'n':
      break;
    case 'd':
      o.t = "d";
      break;
    case 'b':
      o.t = "b";
      break;
    case 'e':
      o.t = "e";
      break;
    default:
      if (opts.bookSST) {
        v = writetag('v', '' + get_sst_id(opts.Strings, cell.v));
        o.t = "s";
        break;
      }
      o.t = "str";
      break;
  }
  if (cell.t != oldt) {
    cell.t = oldt;
    cell.v = oldv;
  }
  return writextag('c', v, o);
}
var parse_ws_xml_data = (function parse_ws_xml_data_factory() {
  var cellregex = /<(?:\w+:)?c[ >]/, rowregex = /<\/(?:\w+:)?row>/;
  var rregex = /r=["']([^"']*)["']/, isregex = /<is>([\S\s]*?)<\/is>/;
  var match_v = matchtag("v"), match_f = matchtag("f");
  return function parse_ws_xml_data(sdata, s, opts, guess) {
    var ri = 0, x = "", cells = [], cref = [], idx = 0, i = 0, cc = 0, d = "", p;
    var tag, tagr = 0, tagc = 0;
    var sstr;
    var fmtid = 0, fillid = 0, do_format = Array.isArray(styles.CellXf), cf;
    for (var marr = sdata.split(rowregex), mt = 0, marrlen = marr.length; mt != marrlen; ++mt) {
      x = marr[mt].trim();
      var xlen = x.length;
      if (xlen === 0) continue;
      /* 18.3.1.73 row CT_Row */
      for (ri = 0; ri < xlen; ++ri) if (x.charCodeAt(ri) === 62) break;
      ++ri;
      tag = parsexmltag(x.substr(0, ri), true);
      /* SpreadSheetGear uses implicit r/c */
      tagr = typeof tag.r !== 'undefined' ? parseInt(tag.r, 10) : tagr + 1;
      tagc = -1;
      if (opts.sheetRows && opts.sheetRows < tagr) continue;
      if (guess.s.r > tagr - 1) guess.s.r = tagr - 1;
      if (guess.e.r < tagr - 1) guess.e.r = tagr - 1;
      /* 18.3.1.4 c CT_Cell */
      cells = x.substr(ri).split(cellregex);
      for (ri = typeof tag.r === 'undefined' ? 0 : 1; ri != cells.length; ++ri) {
        x = cells[ri].trim();
        if (x.length === 0) continue;
        cref = x.match(rregex);
        idx = ri;
        i = 0;
        cc = 0;
        x = "<c " + (x.substr(0, 1) == "<" ? ">" : "") + x;
        if (cref !== null && cref.length === 2) {
          idx = 0;
          d = cref[1];
          for (i = 0; i != d.length; ++i) {
            if ((cc = d.charCodeAt(i) - 64) < 1 || cc > 26) break;
            idx = 26 * idx + cc;
          }
          --idx;
          tagc = idx;
        } else ++tagc;
        for (i = 0; i != x.length; ++i) if (x.charCodeAt(i) === 62) break;
        ++i;
        tag = parsexmltag(x.substr(0, i), true);
        if (!tag.r) tag.r = utils.encode_cell({r: tagr - 1, c: tagc});
        d = x.substr(i);
        p = {t: ""};
        if ((cref = d.match(match_v)) !== null && cref[1] !== '') p.v = unescapexml(cref[1]);
        if (opts.cellFormula && (cref = d.match(match_f)) !== null) p.f = unescapexml(cref[1]);
        /* SCHEMA IS ACTUALLY INCORRECT HERE.  IF A CELL HAS NO T, EMIT "" */
        if (tag.t === undefined && tag.s === undefined && p.v === undefined) {
          if (!opts.sheetStubs) continue;
          p.t = "stub";
        }
        else p.t = tag.t || "n";
        if (guess.s.c > idx) guess.s.c = idx;
        if (guess.e.c < idx) guess.e.c = idx;
        /* 18.18.11 t ST_CellType */
        switch (p.t) {
          case 'n':
            p.v = parseFloat(p.v);
            if (isNaN(p.v)) p.v = "" // we don't want NaN if p.v is null
            break;
          case 's':
            // if (!p.hasOwnProperty('v')) continue;
            sstr = strs[parseInt(p.v, 10)];
            p.v = sstr.t;
            p.r = sstr.r;
            if (opts.cellHTML) p.h = sstr.h;
            break;
          case 'str':
            p.t = "s";
            p.v = (p.v != null) ? utf8read(p.v) : '';
            if (opts.cellHTML) p.h = p.v;
            break;
          case 'inlineStr':
            cref = d.match(isregex);
            p.t = 's';
            if (cref !== null) {
              sstr = parse_si(cref[1]);
              p.v = sstr.t;
            } else p.v = "";
            break; // inline string
          case 'b':
            p.v = parsexmlbool(p.v);
            break;
          case 'd':
            if (!opts.cellDates) {
              p.v = datenum(p.v);
              p.t = 'n';
            }
            break;
            /* error string in .v, number in .v */
          case 'e':
            p.w = p.v;
            p.v = RBErr[p.v];
            break;
        }
        /* formatting */
        fmtid = fillid = 0;
        if (do_format && tag.s !== undefined) {
          cf = styles.CellXf[tag.s];
          if (opts.cellStyles) {
            p.s = get_cell_style_csf(cf)
          }
          if (cf != null) {
            if (cf.numFmtId != null) fmtid = cf.numFmtId;
            if (opts.cellStyles && cf.fillId != null) fillid = cf.fillId;
          }
        }
        safe_format(p, fmtid, fillid, opts);
        s[tag.r] = p;
      }
    }
  };
})();
function write_ws_xml_data(ws, opts, idx, wb) {
  var o = [], r = [], range = safe_decode_range(ws['!ref']), cell, ref, rr = "", cols = [], R, C;
  for (C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C);
  for (R = range.s.r; R <= range.e.r; ++R) {
    r = [];
    rr = encode_row(R);
    for (C = range.s.c; C <= range.e.c; ++C) {
      ref = cols[C] + rr;
      if (ws[ref] === undefined) continue;
      if ((cell = write_ws_xml_cell(ws[ref], ref, ws, opts, idx, wb)) != null) r.push(cell);
    }
    if (r.length > 0) o[o.length] = (writextag('row', r.join(""), {r: rr}));
  }
  return o.join("");
}
var WS_XML_ROOT = writextag('worksheet', null, {
  'xmlns': XMLNS.main[0],
  'xmlns:r': XMLNS.r
});
function write_ws_xml(idx, opts, wb) {
  var o = [XML_HEADER, WS_XML_ROOT];
  var s = wb.SheetNames[idx], sidx = 0, rdata = "";
  var ws = wb.Sheets[s];
  if (ws === undefined) ws = {};
  var ref = ws['!ref'];
  if (ref === undefined) ref = 'A1';
  o[o.length] = (writextag('dimension', null, {'ref': ref}));
  var kids = [];
  if (ws['!freeze']) {
    var pane = '';
    pane = writextag('pane', null, ws['!freeze'])
    kids.push(pane)
    var selection = writextag('selection', null, {
      pane: "topLeft"
    })
    kids.push(selection)
    var selection = writextag('selection', null, {
      pane: "bottomLeft"
    })
    kids.push(selection)
    var selection = writextag('selection', null, {
      pane: "bottomRight",
      activeCell: ws['!freeze'],
      sqref: ws['!freeze']
    })
    kids.push(selection)
  }
//<selection pane="bottomRight" activeCell="A4" sqref="A4"/>
  var sheetView = writextag('sheetView', kids.join('') || undefined, {
    showGridLines: opts.showGridLines == false ? '0' : '1',
    tabSelected: opts.tabSelected === undefined ? '0' : opts.tabSelected,  // see issue #26, need to set WorkbookViews if this is set
    workbookViewId: opts.workbookViewId === undefined ? '0' : opts.workbookViewId
  });
  o[o.length] = writextag('sheetViews', sheetView);
  if (ws['!cols'] !== undefined && ws['!cols'].length > 0) o[o.length] = (write_ws_xml_cols(ws, ws['!cols']));
  o[sidx = o.length] = '<sheetData/>';
  if (ws['!ref'] !== undefined) {
    rdata = write_ws_xml_data(ws, opts, idx, wb);
    if (rdata.length > 0) o[o.length] = (rdata);
  }
  if (o.length > sidx + 1) {
    o[o.length] = ('</sheetData>');
    o[sidx] = o[sidx].replace("/>", ">");
  }
  if (ws['!merges'] !== undefined && ws['!merges'].length > 0) o[o.length] = (write_ws_xml_merges(ws['!merges']));
  if (ws['!pageSetup'] !== undefined) o[o.length] = write_ws_xml_pagesetup(ws['!pageSetup']);
  if (ws['!rowBreaks'] !== undefined) o[o.length] = write_ws_xml_row_breaks(ws['!rowBreaks']);
  if (ws['!colBreaks'] !== undefined) o[o.length] = write_ws_xml_col_breaks(ws['!colBreaks']);
  if (o.length > 2) {
    o[o.length] = ('</worksheet>');
    o[1] = o[1].replace("/>", ">");
  }
  return o.join("");
}
function write_ws_xml_row_breaks(breaks) {
  var brk = [];
  for (var i = 0; i < breaks.length; i++) {
    var thisBreak = '' + (breaks[i]);
    var nextBreak = '' + (breaks[i + 1] || '16383');
    brk.push(writextag('brk', null, {id: thisBreak, max: nextBreak, man: '1'}))
  }
  return writextag('rowBreaks', brk.join(' '), {count: brk.length, manualBreakCount: brk.length})
}
function write_ws_xml_col_breaks(breaks) {
  var brk = [];
  for (var i = 0; i < breaks.length; i++) {
    var thisBreak = '' + (breaks[i]);
    var nextBreak = '' + (breaks[i + 1] || '1048575');
    brk.push(writextag('brk', null, {id: thisBreak, max: nextBreak, man: '1'}))
  }
  return writextag('colBreaks', brk.join(' '), {count: brk.length, manualBreakCount: brk.length})
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/68_wsbin.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,439 @@
/* [MS-XLSB] 2.4.718 BrtRowHdr */
function parse_BrtRowHdr(data, length) {
    var z = [];
    z.r = data.read_shift(4);
    data.l += length-4;
    return z;
}
/* [MS-XLSB] 2.4.812 BrtWsDim */
var parse_BrtWsDim = parse_UncheckedRfX;
var write_BrtWsDim = write_UncheckedRfX;
/* [MS-XLSB] 2.4.815 BrtWsProp */
function parse_BrtWsProp(data, length) {
    var z = {};
    /* TODO: pull flags */
    data.l += 19;
    z.name = parse_XLSBCodeName(data, length - 19);
    return z;
}
/* [MS-XLSB] 2.4.303 BrtCellBlank */
function parse_BrtCellBlank(data, length) {
    var cell = parse_XLSBCell(data);
    return [cell];
}
function write_BrtCellBlank(cell, val, o) {
    if(o == null) o = new_buf(8);
    return write_XLSBCell(val, o);
}
/* [MS-XLSB] 2.4.304 BrtCellBool */
function parse_BrtCellBool(data, length) {
    var cell = parse_XLSBCell(data);
    var fBool = data.read_shift(1);
    return [cell, fBool, 'b'];
}
/* [MS-XLSB] 2.4.305 BrtCellError */
function parse_BrtCellError(data, length) {
    var cell = parse_XLSBCell(data);
    var fBool = data.read_shift(1);
    return [cell, fBool, 'e'];
}
/* [MS-XLSB] 2.4.308 BrtCellIsst */
function parse_BrtCellIsst(data, length) {
    var cell = parse_XLSBCell(data);
    var isst = data.read_shift(4);
    return [cell, isst, 's'];
}
/* [MS-XLSB] 2.4.310 BrtCellReal */
function parse_BrtCellReal(data, length) {
    var cell = parse_XLSBCell(data);
    var value = parse_Xnum(data);
    return [cell, value, 'n'];
}
/* [MS-XLSB] 2.4.311 BrtCellRk */
function parse_BrtCellRk(data, length) {
    var cell = parse_XLSBCell(data);
    var value = parse_RkNumber(data);
    return [cell, value, 'n'];
}
/* [MS-XLSB] 2.4.314 BrtCellSt */
function parse_BrtCellSt(data, length) {
    var cell = parse_XLSBCell(data);
    var value = parse_XLWideString(data);
    return [cell, value, 'str'];
}
/* [MS-XLSB] 2.4.647 BrtFmlaBool */
function parse_BrtFmlaBool(data, length, opts) {
    var cell = parse_XLSBCell(data);
    var value = data.read_shift(1);
    var o = [cell, value, 'b'];
    if(opts.cellFormula) {
        var formula = parse_XLSBCellParsedFormula(data, length-9);
        o[3] = ""; /* TODO */
    }
    else data.l += length-9;
    return o;
}
/* [MS-XLSB] 2.4.648 BrtFmlaError */
function parse_BrtFmlaError(data, length, opts) {
    var cell = parse_XLSBCell(data);
    var value = data.read_shift(1);
    var o = [cell, value, 'e'];
    if(opts.cellFormula) {
        var formula = parse_XLSBCellParsedFormula(data, length-9);
        o[3] = ""; /* TODO */
    }
    else data.l += length-9;
    return o;
}
/* [MS-XLSB] 2.4.649 BrtFmlaNum */
function parse_BrtFmlaNum(data, length, opts) {
    var cell = parse_XLSBCell(data);
    var value = parse_Xnum(data);
    var o = [cell, value, 'n'];
    if(opts.cellFormula) {
        var formula = parse_XLSBCellParsedFormula(data, length - 16);
        o[3] = ""; /* TODO */
    }
    else data.l += length-16;
    return o;
}
/* [MS-XLSB] 2.4.650 BrtFmlaString */
function parse_BrtFmlaString(data, length, opts) {
    var start = data.l;
    var cell = parse_XLSBCell(data);
    var value = parse_XLWideString(data);
    var o = [cell, value, 'str'];
    if(opts.cellFormula) {
        var formula = parse_XLSBCellParsedFormula(data, start + length - data.l);
    }
    else data.l = start + length;
    return o;
}
/* [MS-XLSB] 2.4.676 BrtMergeCell */
var parse_BrtMergeCell = parse_UncheckedRfX;
/* [MS-XLSB] 2.4.656 BrtHLink */
function parse_BrtHLink(data, length, opts) {
    var end = data.l + length;
    var rfx = parse_UncheckedRfX(data, 16);
    var relId = parse_XLNullableWideString(data);
    var loc = parse_XLWideString(data);
    var tooltip = parse_XLWideString(data);
    var display = parse_XLWideString(data);
    data.l = end;
    return {rfx:rfx, relId:relId, loc:loc, tooltip:tooltip, display:display};
}
/* [MS-XLSB] 2.1.7.61 Worksheet */
function parse_ws_bin(data, opts, rels) {
    if(!data) return data;
    if(!rels) rels = {'!id':{}};
    var s = {};
    var ref;
    var refguess = {s: {r:1000000, c:1000000}, e: {r:0, c:0} };
    var pass = false, end = false;
    var row, p, cf, R, C, addr, sstr, rr;
    var mergecells = [];
    recordhopper(data, function ws_parse(val, R) {
        if(end) return;
        switch(R.n) {
            case 'BrtWsDim': ref = val; break;
            case 'BrtRowHdr':
                row = val;
                if(opts.sheetRows && opts.sheetRows <= row.r) end=true;
                rr = encode_row(row.r);
                break;
            case 'BrtFmlaBool':
            case 'BrtFmlaError':
            case 'BrtFmlaNum':
            case 'BrtFmlaString':
            case 'BrtCellBool':
            case 'BrtCellError':
            case 'BrtCellIsst':
            case 'BrtCellReal':
            case 'BrtCellRk':
            case 'BrtCellSt':
                p = {t:val[2]};
                switch(val[2]) {
                    case 'n': p.v = val[1]; break;
                    case 's': sstr = strs[val[1]]; p.v = sstr.t; p.r = sstr.r; break;
                    case 'b': p.v = val[1] ? true : false; break;
                    case 'e': p.v = val[1]; p.w = BErr[p.v]; break;
                    case 'str': p.t = 's'; p.v = utf8read(val[1]); break;
                }
                if(opts.cellFormula && val.length > 3) p.f = val[3];
                if((cf = styles.CellXf[val[0].iStyleRef])) safe_format(p,cf.ifmt,null,opts);
                s[encode_col(C=val[0].c) + rr] = p;
                if(refguess.s.r > row.r) refguess.s.r = row.r;
                if(refguess.s.c > C) refguess.s.c = C;
                if(refguess.e.r < row.r) refguess.e.r = row.r;
                if(refguess.e.c < C) refguess.e.c = C;
                break;
            case 'BrtCellBlank': if(!opts.sheetStubs) break;
                p = {t:'s',v:undefined};
                s[encode_col(C=val[0].c) + rr] = p;
                if(refguess.s.r > row.r) refguess.s.r = row.r;
                if(refguess.s.c > C) refguess.s.c = C;
                if(refguess.e.r < row.r) refguess.e.r = row.r;
                if(refguess.e.c < C) refguess.e.c = C;
                break;
            /* Merge Cells */
            case 'BrtBeginMergeCells': break;
            case 'BrtEndMergeCells': break;
            case 'BrtMergeCell': mergecells.push(val); break;
            case 'BrtHLink':
                var rel = rels['!id'][val.relId];
                if(rel) {
                    val.Target = rel.Target;
                    if(val.loc) val.Target += "#"+val.loc;
                    val.Rel = rel;
                }
                for(R=val.rfx.s.r;R<=val.rfx.e.r;++R) for(C=val.rfx.s.c;C<=val.rfx.e.c;++C) {
                    addr = encode_cell({c:C,r:R});
                    if(!s[addr]) s[addr] = {t:'s',v:undefined};
                    s[addr].l = val;
                }
                break;
            case 'BrtArrFmla': break; // TODO
            case 'BrtShrFmla': break; // TODO
            case 'BrtBeginSheet': break;
            case 'BrtWsProp': break; // TODO
            case 'BrtSheetCalcProp': break; // TODO
            case 'BrtBeginWsViews': break; // TODO
            case 'BrtBeginWsView': break; // TODO
            case 'BrtPane': break; // TODO
            case 'BrtSel': break; // TODO
            case 'BrtEndWsView': break; // TODO
            case 'BrtEndWsViews': break; // TODO
            case 'BrtACBegin': break; // TODO
            case 'BrtRwDescent': break; // TODO
            case 'BrtACEnd': break; // TODO
            case 'BrtWsFmtInfoEx14': break; // TODO
            case 'BrtWsFmtInfo': break; // TODO
            case 'BrtBeginColInfos': break; // TODO
            case 'BrtColInfo': break; // TODO
            case 'BrtEndColInfos': break; // TODO
            case 'BrtBeginSheetData': break; // TODO
            case 'BrtEndSheetData': break; // TODO
            case 'BrtSheetProtection': break; // TODO
            case 'BrtPrintOptions': break; // TODO
            case 'BrtMargins': break; // TODO
            case 'BrtPageSetup': break; // TODO
            case 'BrtFRTBegin': pass = true; break;
            case 'BrtFRTEnd': pass = false; break;
            case 'BrtEndSheet': break; // TODO
            case 'BrtDrawing': break; // TODO
            case 'BrtLegacyDrawing': break; // TODO
            case 'BrtLegacyDrawingHF': break; // TODO
            case 'BrtPhoneticInfo': break; // TODO
            case 'BrtBeginHeaderFooter': break; // TODO
            case 'BrtEndHeaderFooter': break; // TODO
            case 'BrtBrk': break; // TODO
            case 'BrtBeginRwBrk': break; // TODO
            case 'BrtEndRwBrk': break; // TODO
            case 'BrtBeginColBrk': break; // TODO
            case 'BrtEndColBrk': break; // TODO
            case 'BrtBeginUserShViews': break; // TODO
            case 'BrtBeginUserShView': break; // TODO
            case 'BrtEndUserShView': break; // TODO
            case 'BrtEndUserShViews': break; // TODO
            case 'BrtBkHim': break; // TODO
            case 'BrtBeginOleObjects': break; // TODO
            case 'BrtOleObject': break; // TODO
            case 'BrtEndOleObjects': break; // TODO
            case 'BrtBeginListParts': break; // TODO
            case 'BrtListPart': break; // TODO
            case 'BrtEndListParts': break; // TODO
            case 'BrtBeginSortState': break; // TODO
            case 'BrtBeginSortCond': break; // TODO
            case 'BrtEndSortCond': break; // TODO
            case 'BrtEndSortState': break; // TODO
            case 'BrtBeginConditionalFormatting': break; // TODO
            case 'BrtEndConditionalFormatting': break; // TODO
            case 'BrtBeginCFRule': break; // TODO
            case 'BrtEndCFRule': break; // TODO
            case 'BrtBeginDVals': break; // TODO
            case 'BrtDVal': break; // TODO
            case 'BrtEndDVals': break; // TODO
            case 'BrtRangeProtection': break; // TODO
            case 'BrtBeginDCon': break; // TODO
            case 'BrtEndDCon': break; // TODO
            case 'BrtBeginDRefs': break;
            case 'BrtDRef': break;
            case 'BrtEndDRefs': break;
            /* ActiveX */
            case 'BrtBeginActiveXControls': break;
            case 'BrtActiveX': break;
            case 'BrtEndActiveXControls': break;
            /* AutoFilter */
            case 'BrtBeginAFilter': break;
            case 'BrtEndAFilter': break;
            case 'BrtBeginFilterColumn': break;
            case 'BrtBeginFilters': break;
            case 'BrtFilter': break;
            case 'BrtEndFilters': break;
            case 'BrtEndFilterColumn': break;
            case 'BrtDynamicFilter': break;
            case 'BrtTop10Filter': break;
            case 'BrtBeginCustomFilters': break;
            case 'BrtCustomFilter': break;
            case 'BrtEndCustomFilters': break;
            /* Smart Tags */
            case 'BrtBeginSmartTags': break;
            case 'BrtBeginCellSmartTags': break;
            case 'BrtBeginCellSmartTag': break;
            case 'BrtCellSmartTagProperty': break;
            case 'BrtEndCellSmartTag': break;
            case 'BrtEndCellSmartTags': break;
            case 'BrtEndSmartTags': break;
            /* Cell Watch */
            case 'BrtBeginCellWatches': break;
            case 'BrtCellWatch': break;
            case 'BrtEndCellWatches': break;
            /* Table */
            case 'BrtTable': break;
            /* Ignore Cell Errors */
            case 'BrtBeginCellIgnoreECs': break;
            case 'BrtCellIgnoreEC': break;
            case 'BrtEndCellIgnoreECs': break;
            default: if(!pass || opts.WTF) throw new Error("Unexpected record " + R.n);
        }
    }, opts);
    if(!s["!ref"] && (refguess.s.r < 1000000 || ref.e.r > 0 || ref.e.c > 0 || ref.s.r > 0 || ref.s.c > 0)) s["!ref"] = encode_range(ref);
    if(opts.sheetRows && s["!ref"]) {
        var tmpref = safe_decode_range(s["!ref"]);
        if(opts.sheetRows < +tmpref.e.r) {
            tmpref.e.r = opts.sheetRows - 1;
            if(tmpref.e.r > refguess.e.r) tmpref.e.r = refguess.e.r;
            if(tmpref.e.r < tmpref.s.r) tmpref.s.r = tmpref.e.r;
            if(tmpref.e.c > refguess.e.c) tmpref.e.c = refguess.e.c;
            if(tmpref.e.c < tmpref.s.c) tmpref.s.c = tmpref.e.c;
            s["!fullref"] = s["!ref"];
            s["!ref"] = encode_range(tmpref);
        }
    }
    if(mergecells.length > 0) s["!merges"] = mergecells;
    return s;
}
/* TODO: something useful -- this is a stub */
function write_ws_bin_cell(ba, cell, R, C, opts) {
    if(cell.v === undefined) return "";
    var vv = "";
    switch(cell.t) {
        case 'b': vv = cell.v ? "1" : "0"; break;
        case 'n': case 'e': vv = ''+cell.v; break;
        default: vv = cell.v; break;
    }
    var o = {r:R, c:C};
    /* TODO: cell style */
    o.s = get_cell_style(opts.cellXfs, cell, opts);
    switch(cell.t) {
        case 's': case 'str':
            if(opts.bookSST) {
                vv = get_sst_id(opts.Strings, cell.v);
                o.t = "s"; break;
            }
            o.t = "str"; break;
        case 'n': break;
        case 'b': o.t = "b"; break;
        case 'e': o.t = "e"; break;
    }
    write_record(ba, "BrtCellBlank", write_BrtCellBlank(cell, o));
}
function write_CELLTABLE(ba, ws, idx, opts, wb) {
    var range = safe_decode_range(ws['!ref'] || "A1"), ref, rr = "", cols = [];
    write_record(ba, 'BrtBeginSheetData');
    for(var R = range.s.r; R <= range.e.r; ++R) {
        rr = encode_row(R);
        /* [ACCELLTABLE] */
        /* BrtRowHdr */
        for(var C = range.s.c; C <= range.e.c; ++C) {
            /* *16384CELL */
            if(R === range.s.r) cols[C] = encode_col(C);
            ref = cols[C] + rr;
            if(!ws[ref]) continue;
            /* write cell */
            write_ws_bin_cell(ba, ws[ref], R, C, opts);
        }
    }
    write_record(ba, 'BrtEndSheetData');
}
function write_ws_bin(idx, opts, wb) {
    var ba = buf_array();
    var s = wb.SheetNames[idx], ws = wb.Sheets[s] || {};
    var r = safe_decode_range(ws['!ref'] || "A1");
    write_record(ba, "BrtBeginSheet");
    /* [BrtWsProp] */
    write_record(ba, "BrtWsDim", write_BrtWsDim(r));
    /* [WSVIEWS2] */
    /* [WSFMTINFO] */
    /* *COLINFOS */
    write_CELLTABLE(ba, ws, idx, opts, wb);
    /* [BrtSheetCalcProp] */
    /* [[BrtSheetProtectionIso] BrtSheetProtection] */
    /* *([BrtRangeProtectionIso] BrtRangeProtection) */
    /* [SCENMAN] */
    /* [AUTOFILTER] */
    /* [SORTSTATE] */
    /* [DCON] */
    /* [USERSHVIEWS] */
    /* [MERGECELLS] */
    /* [BrtPhoneticInfo] */
    /* *CONDITIONALFORMATTING */
    /* [DVALS] */
    /* *BrtHLink */
    /* [BrtPrintOptions] */
    /* [BrtMargins] */
    /* [BrtPageSetup] */
    /* [HEADERFOOTER] */
    /* [RWBRK] */
    /* [COLBRK] */
    /* *BrtBigName */
    /* [CELLWATCHES] */
    /* [IGNOREECS] */
    /* [SMARTTAGS] */
    /* [BrtDrawing] */
    /* [BrtLegacyDrawing] */
    /* [BrtLegacyDrawingHF] */
    /* [BrtBkHim] */
    /* [OLEOBJECTS] */
    /* [ACTIVEXCONTROLS] */
    /* [WEBPUBITEMS] */
    /* [LISTPARTS] */
    /* FRTWORKSHEET */
    write_record(ba, "BrtEndSheet");
    return ba.end();
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/76_wbcommon.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,100 @@
/* 18.2.28 (CT_WorkbookProtection) Defaults */
var WBPropsDef = [
    ['allowRefreshQuery', '0'],
    ['autoCompressPictures', '1'],
    ['backupFile', '0'],
    ['checkCompatibility', '0'],
    ['codeName', ''],
    ['date1904', '0'],
    ['dateCompatibility', '1'],
    //['defaultThemeVersion', '0'],
    ['filterPrivacy', '0'],
    ['hidePivotFieldList', '0'],
    ['promptedSolutions', '0'],
    ['publishItems', '0'],
    ['refreshAllConnections', false],
    ['saveExternalLinkValues', '1'],
    ['showBorderUnselectedTables', '1'],
    ['showInkAnnotation', '1'],
    ['showObjects', 'all'],
    ['showPivotChartFilter', '0']
    //['updateLinks', 'userSet']
];
/* 18.2.30 (CT_BookView) Defaults */
var WBViewDef = [
    ['activeTab', '0'],
    ['autoFilterDateGrouping', '1'],
    ['firstSheet', '0'],
    ['minimized', '0'],
    ['showHorizontalScroll', '1'],
    ['showSheetTabs', '1'],
    ['showVerticalScroll', '1'],
    ['tabRatio', '600'],
    ['visibility', 'visible']
    //window{Height,Width}, {x,y}Window
];
/* 18.2.19 (CT_Sheet) Defaults */
var SheetDef = [
    ['state', 'visible']
];
/* 18.2.2  (CT_CalcPr) Defaults */
var CalcPrDef = [
    ['calcCompleted', 'true'],
    ['calcMode', 'auto'],
    ['calcOnSave', 'true'],
    ['concurrentCalc', 'true'],
    ['fullCalcOnLoad', 'false'],
    ['fullPrecision', 'true'],
    ['iterate', 'false'],
    ['iterateCount', '100'],
    ['iterateDelta', '0.001'],
    ['refMode', 'A1']
];
/* 18.2.3 (CT_CustomWorkbookView) Defaults */
var CustomWBViewDef = [
    ['autoUpdate', 'false'],
    ['changesSavedWin', 'false'],
    ['includeHiddenRowCol', 'true'],
    ['includePrintSettings', 'true'],
    ['maximized', 'false'],
    ['minimized', 'false'],
    ['onlySync', 'false'],
    ['personalView', 'false'],
    ['showComments', 'commIndicator'],
    ['showFormulaBar', 'true'],
    ['showHorizontalScroll', 'true'],
    ['showObjects', 'all'],
    ['showSheetTabs', 'true'],
    ['showStatusbar', 'true'],
    ['showVerticalScroll', 'true'],
    ['tabRatio', '600'],
    ['xWindow', '0'],
    ['yWindow', '0']
];
function push_defaults_array(target, defaults) {
    for(var j = 0; j != target.length; ++j) { var w = target[j];
        for(var i=0; i != defaults.length; ++i) { var z = defaults[i];
            if(w[z[0]] == null) w[z[0]] = z[1];
        }
    }
}
function push_defaults(target, defaults) {
    for(var i = 0; i != defaults.length; ++i) { var z = defaults[i];
        if(target[z[0]] == null) target[z[0]] = z[1];
    }
}
function parse_wb_defaults(wb) {
    push_defaults(wb.WBProps, WBPropsDef);
    push_defaults(wb.CalcPr, CalcPrDef);
    push_defaults_array(wb.WBView, WBViewDef);
    push_defaults_array(wb.Sheets, SheetDef);
    _ssfopts.date1904 = parsexmlbool(wb.WBProps.date1904, 'date1904');
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/77_wbxml.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,181 @@
/* 18.2 Workbook */
var wbnsregex = /<\w+:workbook/;
function parse_wb_xml(data, opts) {
    var wb = { AppVersion:{}, WBProps:{}, WBView:[], Sheets:[], CalcPr:{}, xmlns: "" };
    var pass = false, xmlns = "xmlns";
    data.match(tagregex).forEach(function xml_wb(x) {
        var y = parsexmltag(x);
        switch(strip_ns(y[0])) {
            case '<?xml': break;
            /* 18.2.27 workbook CT_Workbook 1 */
            case '<workbook':
                if(x.match(wbnsregex)) xmlns = "xmlns" + x.match(/<(\w+):/)[1];
                wb.xmlns = y[xmlns];
                break;
            case '</workbook>': break;
            /* 18.2.13 fileVersion CT_FileVersion ? */
            case '<fileVersion': delete y[0]; wb.AppVersion = y; break;
            case '<fileVersion/>': break;
            /* 18.2.12 fileSharing CT_FileSharing ? */
            case '<fileSharing': case '<fileSharing/>': break;
            /* 18.2.28 workbookPr CT_WorkbookPr ? */
            case '<workbookPr': delete y[0]; wb.WBProps = y; break;
            case '<workbookPr/>': delete y[0]; wb.WBProps = y; break;
            /* 18.2.29 workbookProtection CT_WorkbookProtection ? */
            case '<workbookProtection': break;
            case '<workbookProtection/>': break;
            /* 18.2.1  bookViews CT_BookViews ? */
            case '<bookViews>': case '</bookViews>': break;
            /* 18.2.30   workbookView CT_BookView + */
            case '<workbookView': delete y[0]; wb.WBView.push(y); break;
            /* 18.2.20 sheets CT_Sheets 1 */
            case '<sheets>': case '</sheets>': break; // aggregate sheet
            /* 18.2.19   sheet CT_Sheet + */
            case '<sheet': delete y[0]; y.name = utf8read(y.name); wb.Sheets.push(y); break;
            /* 18.2.15 functionGroups CT_FunctionGroups ? */
            case '<functionGroups': case '<functionGroups/>': break;
            /* 18.2.14   functionGroup CT_FunctionGroup + */
            case '<functionGroup': break;
            /* 18.2.9  externalReferences CT_ExternalReferences ? */
            case '<externalReferences': case '</externalReferences>': case '<externalReferences>': break;
            /* 18.2.8    externalReference CT_ExternalReference + */
            case '<externalReference': break;
            /* 18.2.6  definedNames CT_DefinedNames ? */
            case '<definedNames/>': break;
            case '<definedNames>': case '<definedNames': pass=true; break;
            case '</definedNames>': pass=false; break;
            /* 18.2.5    definedName CT_DefinedName + */
            case '<definedName': case '<definedName/>': case '</definedName>': break;
            /* 18.2.2  calcPr CT_CalcPr ? */
            case '<calcPr': delete y[0]; wb.CalcPr = y; break;
            case '<calcPr/>': delete y[0]; wb.CalcPr = y; break;
            /* 18.2.16 oleSize CT_OleSize ? (ref required) */
            case '<oleSize': break;
            /* 18.2.4  customWorkbookViews CT_CustomWorkbookViews ? */
            case '<customWorkbookViews>': case '</customWorkbookViews>': case '<customWorkbookViews': break;
            /* 18.2.3    customWorkbookView CT_CustomWorkbookView + */
            case '<customWorkbookView': case '</customWorkbookView>': break;
            /* 18.2.18 pivotCaches CT_PivotCaches ? */
            case '<pivotCaches>': case '</pivotCaches>': case '<pivotCaches': break;
            /* 18.2.17 pivotCache CT_PivotCache ? */
            case '<pivotCache': break;
            /* 18.2.21 smartTagPr CT_SmartTagPr ? */
            case '<smartTagPr': case '<smartTagPr/>': break;
            /* 18.2.23 smartTagTypes CT_SmartTagTypes ? */
            case '<smartTagTypes': case '<smartTagTypes>': case '</smartTagTypes>': break;
            /* 18.2.22   smartTagType CT_SmartTagType ? */
            case '<smartTagType': break;
            /* 18.2.24 webPublishing CT_WebPublishing ? */
            case '<webPublishing': case '<webPublishing/>': break;
            /* 18.2.11 fileRecoveryPr CT_FileRecoveryPr ? */
            case '<fileRecoveryPr': case '<fileRecoveryPr/>': break;
            /* 18.2.26 webPublishObjects CT_WebPublishObjects ? */
            case '<webPublishObjects>': case '<webPublishObjects': case '</webPublishObjects>': break;
            /* 18.2.25 webPublishObject CT_WebPublishObject ? */
            case '<webPublishObject': break;
            /* 18.2.10 extLst CT_ExtensionList ? */
            case '<extLst>': case '</extLst>': case '<extLst/>': break;
            /* 18.2.7    ext CT_Extension + */
            case '<ext': pass=true; break; //TODO: check with versions of excel
            case '</ext>': pass=false; break;
            /* Others */
            case '<ArchID': break;
            case '<AlternateContent': pass=true; break;
            case '</AlternateContent>': pass=false; break;
            default: if(!pass && opts.WTF) throw 'unrecognized ' + y[0] + ' in workbook';
        }
    });
    if(XMLNS.main.indexOf(wb.xmlns) === -1) throw new Error("Unknown Namespace: " + wb.xmlns);
    parse_wb_defaults(wb);
    return wb;
}
var WB_XML_ROOT = writextag('workbook', null, {
    'xmlns': XMLNS.main[0],
    //'xmlns:mx': XMLNS.mx,
    //'xmlns:s': XMLNS.main[0],
    'xmlns:r': XMLNS.r
});
function safe1904(wb) {
    /* TODO: store date1904 somewhere else */
    try { return parsexmlbool(wb.Workbook.WBProps.date1904) ? "true" : "false"; } catch(e) { return "false"; }
}
function write_wb_xml(wb, opts) {
    var o = [XML_HEADER];
    o[o.length] = WB_XML_ROOT;
    o[o.length] = (writextag('workbookPr', null, {date1904:safe1904(wb)}));
    o[o.length] = "<sheets>";
    for(var i = 0; i != wb.SheetNames.length; ++i)
        o[o.length] = (writextag('sheet',null,{name:wb.SheetNames[i].substr(0,31), sheetId:""+(i+1), "r:id":"rId"+(i+1)}));
    o[o.length] = "</sheets>";
  var hasPrintHeaders = false;
  for(var i = 0; i != wb.SheetNames.length; ++i) {
    var sheetName = wb.SheetNames[i];
    var sheet = wb.Sheets[sheetName]
    if (sheet['!printHeader']) {
      if (sheet['!printHeader'].length !== 2) {
        throw "!printHeaders must be an array of length 2: "+sheet['!printHeader'];
      }
      hasPrintHeaders = true;
    }
  }
  if (hasPrintHeaders) {
    o[o.length] = '<definedNames>';
    for(var i = 0; i != wb.SheetNames.length; ++i) {
      var sheetName = wb.SheetNames[i];
      var sheet = wb.Sheets[sheetName]
      if (sheet['!printHeader'] || sheet['!printColumns']) {
          var printHeader = sheet['!printHeader'];
          var printColumns = sheet['!printColumns'];
        //Sheet1!$A:$C,Sheet1!$1:$1
        var range = "";
        if (printColumns)  range += ("'" + sheetName + "'!")  + ("$" + printColumns[0] + ":$" + printColumns[1]);
        if (printColumns && printHeader)  range += ","
        if (printHeader) range += ("'" + sheetName + "'!" ) +  ("$" + printHeader[0] + ":$" + printHeader[1]);
        console.log("-----------------------------")
        console.log(range)
        o[o.length] = (writextag('definedName', range, {
          "name":"_xlnm.Print_Titles",
          localSheetId : ''+i
        }))
      }
    }
    o[o.length] = '</definedNames>';
  }
    if(o.length>2){ o[o.length] = '</workbook>'; o[1]=o[1].replace("/>",">"); }
    return o.join("");
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/78_wbbin.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,181 @@
/* [MS-XLSB] 2.4.301 BrtBundleSh */
function parse_BrtBundleSh(data, length) {
    var z = {};
    z.hsState = data.read_shift(4); //ST_SheetState
    z.iTabID = data.read_shift(4);
    z.strRelID = parse_RelID(data,length-8);
    z.name = parse_XLWideString(data);
    return z;
}
function write_BrtBundleSh(data, o) {
    if(!o) o = new_buf(127);
    o.write_shift(4, data.hsState);
    o.write_shift(4, data.iTabID);
    write_RelID(data.strRelID, o);
    write_XLWideString(data.name.substr(0,31), o);
    return o;
}
/* [MS-XLSB] 2.4.807 BrtWbProp */
function parse_BrtWbProp(data, length) {
    data.read_shift(4);
    var dwThemeVersion = data.read_shift(4);
    var strName = (length > 8) ? parse_XLWideString(data) : "";
    return [dwThemeVersion, strName];
}
function write_BrtWbProp(data, o) {
    if(!o) o = new_buf(8);
    o.write_shift(4, 0);
    o.write_shift(4, 0);
    return o;
}
function parse_BrtFRTArchID$(data, length) {
    var o = {};
    data.read_shift(4);
    o.ArchID = data.read_shift(4);
    data.l += length - 8;
    return o;
}
/* [MS-XLSB] 2.1.7.60 Workbook */
function parse_wb_bin(data, opts) {
    var wb = { AppVersion:{}, WBProps:{}, WBView:[], Sheets:[], CalcPr:{}, xmlns: "" };
    var pass = false, z;
    recordhopper(data, function hopper_wb(val, R) {
        switch(R.n) {
            case 'BrtBundleSh': wb.Sheets.push(val); break;
            case 'BrtBeginBook': break;
            case 'BrtFileVersion': break;
            case 'BrtWbProp': break;
            case 'BrtACBegin': break;
            case 'BrtAbsPath15': break;
            case 'BrtACEnd': break;
            case 'BrtWbFactoid': break;
            /*case 'BrtBookProtectionIso': break;*/
            case 'BrtBookProtection': break;
            case 'BrtBeginBookViews': break;
            case 'BrtBookView': break;
            case 'BrtEndBookViews': break;
            case 'BrtBeginBundleShs': break;
            case 'BrtEndBundleShs': break;
            case 'BrtBeginFnGroup': break;
            case 'BrtEndFnGroup': break;
            case 'BrtBeginExternals': break;
            case 'BrtSupSelf': break;
            case 'BrtSupBookSrc': break;
            case 'BrtExternSheet': break;
            case 'BrtEndExternals': break;
            case 'BrtName': break;
            case 'BrtCalcProp': break;
            case 'BrtUserBookView': break;
            case 'BrtBeginPivotCacheIDs': break;
            case 'BrtBeginPivotCacheID': break;
            case 'BrtEndPivotCacheID': break;
            case 'BrtEndPivotCacheIDs': break;
            case 'BrtWebOpt': break;
            case 'BrtFileRecover': break;
            case 'BrtFileSharing': break;
            /*case 'BrtBeginWebPubItems': break;
            case 'BrtBeginWebPubItem': break;
            case 'BrtEndWebPubItem': break;
            case 'BrtEndWebPubItems': break;*/
            /* Smart Tags */
            case 'BrtBeginSmartTagTypes': break;
            case 'BrtSmartTagType': break;
            case 'BrtEndSmartTagTypes': break;
            case 'BrtFRTBegin': pass = true; break;
            case 'BrtFRTArchID$': break;
            case 'BrtWorkBookPr15': break;
            case 'BrtFRTEnd': pass = false; break;
            case 'BrtEndBook': break;
            default: if(!pass || opts.WTF) throw new Error("Unexpected record " + R.n);
        }
    });
    parse_wb_defaults(wb);
    return wb;
}
/* [MS-XLSB] 2.1.7.60 Workbook */
function write_BUNDLESHS(ba, wb, opts) {
    write_record(ba, "BrtBeginBundleShs");
    for(var idx = 0; idx != wb.SheetNames.length; ++idx) {
        var d = { hsState: 0, iTabID: idx+1, strRelID: 'rId' + (idx+1), name: wb.SheetNames[idx] };
        write_record(ba, "BrtBundleSh", write_BrtBundleSh(d));
    }
    write_record(ba, "BrtEndBundleShs");
}
/* [MS-XLSB] 2.4.643 BrtFileVersion */
function write_BrtFileVersion(data, o) {
    if(!o) o = new_buf(127);
    for(var i = 0; i != 4; ++i) o.write_shift(4, 0);
    write_XLWideString("SheetJS", o);
    write_XLWideString(XLSX.version, o);
    write_XLWideString(XLSX.version, o);
    write_XLWideString("7262", o);
    o.length = o.l;
    return o;
}
/* [MS-XLSB] 2.1.7.60 Workbook */
function write_BOOKVIEWS(ba, wb, opts) {
    write_record(ba, "BrtBeginBookViews");
    /* 1*(BrtBookView *FRT) */
    write_record(ba, "BrtEndBookViews");
}
/* [MS-XLSB] 2.4.302 BrtCalcProp */
function write_BrtCalcProp(data, o) {
    if(!o) o = new_buf(26);
    o.write_shift(4,0); /* force recalc */
    o.write_shift(4,1);
    o.write_shift(4,0);
    write_Xnum(0, o);
    o.write_shift(-4, 1023);
    o.write_shift(1, 0x33);
    o.write_shift(1, 0x00);
    return o;
}
function write_BrtFileRecover(data, o) {
    if(!o) o = new_buf(1);
    o.write_shift(1,0);
    return o;
}
/* [MS-XLSB] 2.1.7.60 Workbook */
function write_wb_bin(wb, opts) {
    var ba = buf_array();
    write_record(ba, "BrtBeginBook");
    write_record(ba, "BrtFileVersion", write_BrtFileVersion());
    /* [[BrtFileSharingIso] BrtFileSharing] */
    write_record(ba, "BrtWbProp", write_BrtWbProp());
    /* [ACABSPATH] */
    /* [[BrtBookProtectionIso] BrtBookProtection] */
    write_BOOKVIEWS(ba, wb, opts);
    write_BUNDLESHS(ba, wb, opts);
    /* [FNGROUP] */
    /* [EXTERNALS] */
    /* *BrtName */
    write_record(ba, "BrtCalcProp", write_BrtCalcProp());
    /* [BrtOleSize] */
    /* *(BrtUserBookView *FRT) */
    /* [PIVOTCACHEIDS] */
    /* [BrtWbFactoid] */
    /* [SMARTTAGTYPES] */
    /* [BrtWebOpt] */
    write_record(ba, "BrtFileRecover", write_BrtFileRecover());
    /* [WEBPUBITEMS] */
    /* [CRERRS] */
    /* FRTWORKBOOK */
    write_record(ba, "BrtEndBook");
    return ba.end();
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/79_xmlbin.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,52 @@
function parse_wb(data, name, opts) {
    return (name.substr(-4)===".bin" ? parse_wb_bin : parse_wb_xml)(data, opts);
}
function parse_ws(data, name, opts, rels) {
    return (name.substr(-4)===".bin" ? parse_ws_bin : parse_ws_xml)(data, opts, rels);
}
function parse_sty(data, name, opts) {
    return (name.substr(-4)===".bin" ? parse_sty_bin : parse_sty_xml)(data, opts);
}
function parse_theme(data, name, opts) {
    return parse_theme_xml(data, opts);
}
function parse_sst(data, name, opts) {
    return (name.substr(-4)===".bin" ? parse_sst_bin : parse_sst_xml)(data, opts);
}
function parse_cmnt(data, name, opts) {
    return (name.substr(-4)===".bin" ? parse_comments_bin : parse_comments_xml)(data, opts);
}
function parse_cc(data, name, opts) {
    return (name.substr(-4)===".bin" ? parse_cc_bin : parse_cc_xml)(data, opts);
}
function write_wb(wb, name, opts) {
    return (name.substr(-4)===".bin" ? write_wb_bin : write_wb_xml)(wb, opts);
}
function write_ws(data, name, opts, wb) {
    return (name.substr(-4)===".bin" ? write_ws_bin : write_ws_xml)(data, opts, wb);
}
function write_sty(data, name, opts) {
    return (name.substr(-4)===".bin" ? write_sty_bin : write_sty_xml)(data, opts);
}
function write_sst(data, name, opts) {
    return (name.substr(-4)===".bin" ? write_sst_bin : write_sst_xml)(data, opts);
}
/*
function write_cmnt(data, name, opts) {
    return (name.substr(-4)===".bin" ? write_comments_bin : write_comments_xml)(data, opts);
}
function write_cc(data, name, opts) {
    return (name.substr(-4)===".bin" ? write_cc_bin : write_cc_xml)(data, opts);
}
*/
Source/UBCS-WEB/src/config/js-xlsx-master/bits/80_xlml.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,699 @@
var attregexg2=/([\w:]+)=((?:")([^"]*)(?:")|(?:')([^']*)(?:'))/g;
var attregex2=/([\w:]+)=((?:")(?:[^"]*)(?:")|(?:')(?:[^']*)(?:'))/;
var _chr = function(c) { return String.fromCharCode(c); };
function xlml_parsexmltag(tag, skip_root) {
    var words = tag.split(/\s+/);
    var z = []; if(!skip_root) z[0] = words[0];
    if(words.length === 1) return z;
    var m = tag.match(attregexg2), y, j, w, i;
    if(m) for(i = 0; i != m.length; ++i) {
        y = m[i].match(attregex2);
        if((j=y[1].indexOf(":")) === -1) z[y[1]] = y[2].substr(1,y[2].length-2);
        else {
            if(y[1].substr(0,6) === "xmlns:") w = "xmlns"+y[1].substr(6);
            else w = y[1].substr(j+1);
            z[w] = y[2].substr(1,y[2].length-2);
        }
    }
    return z;
}
function xlml_parsexmltagobj(tag) {
    var words = tag.split(/\s+/);
    var z = {};
    if(words.length === 1) return z;
    var m = tag.match(attregexg2), y, j, w, i;
    if(m) for(i = 0; i != m.length; ++i) {
        y = m[i].match(attregex2);
        if((j=y[1].indexOf(":")) === -1) z[y[1]] = y[2].substr(1,y[2].length-2);
        else {
            if(y[1].substr(0,6) === "xmlns:") w = "xmlns"+y[1].substr(6);
            else w = y[1].substr(j+1);
            z[w] = y[2].substr(1,y[2].length-2);
        }
    }
    return z;
}
// ----
function xlml_format(format, value) {
    var fmt = XLMLFormatMap[format] || unescapexml(format);
    if(fmt === "General") return SSF._general(value);
    return SSF.format(fmt, value);
}
function xlml_set_custprop(Custprops, Rn, cp, val) {
    switch((cp[0].match(/dt:dt="([\w.]+)"/)||["",""])[1]) {
        case "boolean": val = parsexmlbool(val); break;
        case "i2": case "int": val = parseInt(val, 10); break;
        case "r4": case "float": val = parseFloat(val); break;
        case "date": case "dateTime.tz": val = new Date(val); break;
        case "i8": case "string": case "fixed": case "uuid": case "bin.base64": break;
        default: throw "bad custprop:" + cp[0];
    }
    Custprops[unescapexml(Rn[3])] = val;
}
function safe_format_xlml(cell, nf, o) {
    try {
        if(cell.t === 'e') { cell.w = cell.w || BErr[cell.v]; }
        else if(nf === "General") {
            if(cell.t === 'n') {
                if((cell.v|0) === cell.v) cell.w = SSF._general_int(cell.v);
                else cell.w = SSF._general_num(cell.v);
            }
            else cell.w = SSF._general(cell.v);
        }
        else cell.w = xlml_format(nf||"General", cell.v);
        if(o.cellNF) cell.z = XLMLFormatMap[nf]||nf||"General";
    } catch(e) { if(o.WTF) throw e; }
}
function process_style_xlml(styles, stag, opts) {
    if(opts.cellStyles) {
        if(stag.Interior) {
            var I = stag.Interior;
            if(I.Pattern) I.patternType = XLMLPatternTypeMap[I.Pattern] || I.Pattern;
        }
    }
    styles[stag.ID] = stag;
}
/* TODO: there must exist some form of OSP-blessed spec */
function parse_xlml_data(xml, ss, data, cell, base, styles, csty, row, o) {
    var nf = "General", sid = cell.StyleID, S = {}; o = o || {};
    var interiors = [];
    if(sid === undefined && row) sid = row.StyleID;
    if(sid === undefined && csty) sid = csty.StyleID;
    while(styles[sid] !== undefined) {
        if(styles[sid].nf) nf = styles[sid].nf;
        if(styles[sid].Interior) interiors.push(styles[sid].Interior);
        if(!styles[sid].Parent) break;
        sid = styles[sid].Parent;
    }
    switch(data.Type) {
        case 'Boolean':
            cell.t = 'b';
            cell.v = parsexmlbool(xml);
            break;
        case 'String':
            cell.t = 's'; cell.r = xlml_fixstr(unescapexml(xml));
            cell.v = xml.indexOf("<") > -1 ? ss : cell.r;
            break;
        case 'DateTime':
            cell.v = (Date.parse(xml) - new Date(Date.UTC(1899, 11, 30))) / (24 * 60 * 60 * 1000);
            if(cell.v !== cell.v) cell.v = unescapexml(xml);
            else if(cell.v >= 1 && cell.v<60) cell.v = cell.v -1;
            if(!nf || nf == "General") nf = "yyyy-mm-dd";
            /* falls through */
        case 'Number':
            if(cell.v === undefined) cell.v=+xml;
            if(!cell.t) cell.t = 'n';
            break;
        case 'Error': cell.t = 'e'; cell.v = RBErr[xml]; cell.w = xml; break;
        default: cell.t = 's'; cell.v = xlml_fixstr(ss); break;
    }
    safe_format_xlml(cell, nf, o);
    if(o.cellFormula != null && cell.Formula) {
        cell.f = rc_to_a1(unescapexml(cell.Formula), base);
        cell.Formula = undefined;
    }
    if(o.cellStyles) {
        interiors.forEach(function(x) {
            if(!S.patternType && x.patternType) S.patternType = x.patternType;
        });
        cell.s = S;
    }
    cell.ixfe = cell.StyleID !== undefined ? cell.StyleID : 'Default';
}
function xlml_clean_comment(comment) {
    comment.t = comment.v;
    comment.v = comment.w = comment.ixfe = undefined;
}
function xlml_normalize(d) {
    if(has_buf && Buffer.isBuffer(d)) return d.toString('utf8');
    if(typeof d === 'string') return d;
    throw "badf";
}
/* TODO: Everything */
var xlmlregex = /<(\/?)([a-z0-9]*:|)(\w+)[^>]*>/mg;
function parse_xlml_xml(d, opts) {
    var str = xlml_normalize(d);
    var Rn;
    var state = [], tmp;
    var sheets = {}, sheetnames = [], cursheet = {}, sheetname = "";
    var table = {}, cell = {}, row = {}, dtag, didx;
    var c = 0, r = 0;
    var refguess = {s: {r:1000000, c:1000000}, e: {r:0, c:0} };
    var styles = {}, stag = {};
    var ss = "", fidx = 0;
    var mergecells = [];
    var Props = {}, Custprops = {}, pidx = 0, cp = {};
    var comments = [], comment = {};
    var cstys = [], csty;
    xlmlregex.lastIndex = 0;
    while((Rn = xlmlregex.exec(str))) switch(Rn[3]) {
        case 'Data':
            if(state[state.length-1][1]) break;
            if(Rn[1]==='/') parse_xlml_data(str.slice(didx, Rn.index), ss, dtag, state[state.length-1][0]=="Comment"?comment:cell, {c:c,r:r}, styles, cstys[c], row, opts);
            else { ss = ""; dtag = xlml_parsexmltag(Rn[0]); didx = Rn.index + Rn[0].length; }
            break;
        case 'Cell':
            if(Rn[1]==='/'){
                if(comments.length > 0) cell.c = comments;
                if((!opts.sheetRows || opts.sheetRows > r) && cell.v !== undefined) cursheet[encode_col(c) + encode_row(r)] = cell;
                if(cell.HRef) {
                    cell.l = {Target:cell.HRef, tooltip:cell.HRefScreenTip};
                    cell.HRef = cell.HRefScreenTip = undefined;
                }
                if(cell.MergeAcross || cell.MergeDown) {
                    var cc = c + (parseInt(cell.MergeAcross,10)|0);
                    var rr = r + (parseInt(cell.MergeDown,10)|0);
                    mergecells.push({s:{c:c,r:r},e:{c:cc,r:rr}});
                }
                ++c;
                if(cell.MergeAcross) c += +cell.MergeAcross;
            } else {
                cell = xlml_parsexmltagobj(Rn[0]);
                if(cell.Index) c = +cell.Index - 1;
                if(c < refguess.s.c) refguess.s.c = c;
                if(c > refguess.e.c) refguess.e.c = c;
                if(Rn[0].substr(-2) === "/>") ++c;
                comments = [];
            }
            break;
        case 'Row':
            if(Rn[1]==='/' || Rn[0].substr(-2) === "/>") {
                if(r < refguess.s.r) refguess.s.r = r;
                if(r > refguess.e.r) refguess.e.r = r;
                if(Rn[0].substr(-2) === "/>") {
                    row = xlml_parsexmltag(Rn[0]);
                    if(row.Index) r = +row.Index - 1;
                }
                c = 0; ++r;
            } else {
                row = xlml_parsexmltag(Rn[0]);
                if(row.Index) r = +row.Index - 1;
            }
            break;
        case 'Worksheet': /* TODO: read range from FullRows/FullColumns */
            if(Rn[1]==='/'){
                if((tmp=state.pop())[0]!==Rn[3]) throw "Bad state: "+tmp;
                sheetnames.push(sheetname);
                if(refguess.s.r <= refguess.e.r && refguess.s.c <= refguess.e.c) cursheet["!ref"] = encode_range(refguess);
                if(mergecells.length) cursheet["!merges"] = mergecells;
                sheets[sheetname] = cursheet;
            } else {
                refguess = {s: {r:1000000, c:1000000}, e: {r:0, c:0} };
                r = c = 0;
                state.push([Rn[3], false]);
                tmp = xlml_parsexmltag(Rn[0]);
                sheetname = tmp.Name;
                cursheet = {};
                mergecells = [];
            }
            break;
        case 'Table':
            if(Rn[1]==='/'){if((tmp=state.pop())[0]!==Rn[3]) throw "Bad state: "+tmp;}
            else if(Rn[0].slice(-2) == "/>") break;
            else {
                table = xlml_parsexmltag(Rn[0]);
                state.push([Rn[3], false]);
                cstys = [];
            }
            break;
        case 'Style':
            if(Rn[1]==='/') process_style_xlml(styles, stag, opts);
            else stag = xlml_parsexmltag(Rn[0]);
            break;
        case 'NumberFormat':
            stag.nf = xlml_parsexmltag(Rn[0]).Format || "General";
            break;
        case 'Column':
            if(state[state.length-1][0] !== 'Table') break;
            csty = xlml_parsexmltag(Rn[0]);
            cstys[(csty.Index-1||cstys.length)] = csty;
            for(var i = 0; i < +csty.Span; ++i) cstys[cstys.length] = csty;
            break;
        case 'NamedRange': break;
        case 'NamedCell': break;
        case 'B': break;
        case 'I': break;
        case 'U': break;
        case 'S': break;
        case 'Sub': break;
        case 'Sup': break;
        case 'Span': break;
        case 'Border': break;
        case 'Alignment': break;
        case 'Borders': break;
        case 'Font':
            if(Rn[0].substr(-2) === "/>") break;
            else if(Rn[1]==="/") ss += str.slice(fidx, Rn.index);
            else fidx = Rn.index + Rn[0].length;
            break;
        case 'Interior':
            if(!opts.cellStyles) break;
            stag.Interior = xlml_parsexmltag(Rn[0]);
            break;
        case 'Protection': break;
        case 'Author':
        case 'Title':
        case 'Description':
        case 'Created':
        case 'Keywords':
        case 'Subject':
        case 'Category':
        case 'Company':
        case 'LastAuthor':
        case 'LastSaved':
        case 'LastPrinted':
        case 'Version':
        case 'Revision':
        case 'TotalTime':
        case 'HyperlinkBase':
        case 'Manager':
            if(Rn[0].substr(-2) === "/>") break;
            else if(Rn[1]==="/") xlml_set_prop(Props, Rn[3], str.slice(pidx, Rn.index));
            else pidx = Rn.index + Rn[0].length;
            break;
        case 'Paragraphs': break;
        case 'Styles':
        case 'Workbook':
            if(Rn[1]==='/'){if((tmp=state.pop())[0]!==Rn[3]) throw "Bad state: "+tmp;}
            else state.push([Rn[3], false]);
            break;
        case 'Comment':
            if(Rn[1]==='/'){
                if((tmp=state.pop())[0]!==Rn[3]) throw "Bad state: "+tmp;
                xlml_clean_comment(comment);
                comments.push(comment);
            } else {
                state.push([Rn[3], false]);
                tmp = xlml_parsexmltag(Rn[0]);
                comment = {a:tmp.Author};
            }
            break;
        case 'Name': break;
        case 'ComponentOptions':
        case 'DocumentProperties':
        case 'CustomDocumentProperties':
        case 'OfficeDocumentSettings':
        case 'PivotTable':
        case 'PivotCache':
        case 'Names':
        case 'MapInfo':
        case 'PageBreaks':
        case 'QueryTable':
        case 'DataValidation':
        case 'AutoFilter':
        case 'Sorting':
        case 'Schema':
        case 'data':
        case 'ConditionalFormatting':
        case 'SmartTagType':
        case 'SmartTags':
        case 'ExcelWorkbook':
        case 'WorkbookOptions':
        case 'WorksheetOptions':
            if(Rn[1]==='/'){if((tmp=state.pop())[0]!==Rn[3]) throw "Bad state: "+tmp;}
            else if(Rn[0].charAt(Rn[0].length-2) !== '/') state.push([Rn[3], true]);
            break;
        default:
            var seen = true;
            switch(state[state.length-1][0]) {
                /* OfficeDocumentSettings */
                case 'OfficeDocumentSettings': switch(Rn[3]) {
                    case 'AllowPNG': break;
                    case 'RemovePersonalInformation': break;
                    case 'DownloadComponents': break;
                    case 'LocationOfComponents': break;
                    case 'Colors': break;
                    case 'Color': break;
                    case 'Index': break;
                    case 'RGB': break;
                    case 'PixelsPerInch': break;
                    case 'TargetScreenSize': break;
                    case 'ReadOnlyRecommended': break;
                    default: seen = false;
                } break;
                /* ComponentOptions */
                case 'ComponentOptions': switch(Rn[3]) {
                    case 'Toolbar': break;
                    case 'HideOfficeLogo': break;
                    case 'SpreadsheetAutoFit': break;
                    case 'Label': break;
                    case 'Caption': break;
                    case 'MaxHeight': break;
                    case 'MaxWidth': break;
                    case 'NextSheetNumber': break;
                    default: seen = false;
                } break;
                /* ExcelWorkbook */
                case 'ExcelWorkbook': switch(Rn[3]) {
                    case 'WindowHeight': break;
                    case 'WindowWidth': break;
                    case 'WindowTopX': break;
                    case 'WindowTopY': break;
                    case 'TabRatio': break;
                    case 'ProtectStructure': break;
                    case 'ProtectWindows': break;
                    case 'ActiveSheet': break;
                    case 'DisplayInkNotes': break;
                    case 'FirstVisibleSheet': break;
                    case 'SupBook': break;
                    case 'SheetName': break;
                    case 'SheetIndex': break;
                    case 'SheetIndexFirst': break;
                    case 'SheetIndexLast': break;
                    case 'Dll': break;
                    case 'AcceptLabelsInFormulas': break;
                    case 'DoNotSaveLinkValues': break;
                    case 'Date1904': break;
                    case 'Iteration': break;
                    case 'MaxIterations': break;
                    case 'MaxChange': break;
                    case 'Path': break;
                    case 'Xct': break;
                    case 'Count': break;
                    case 'SelectedSheets': break;
                    case 'Calculation': break;
                    case 'Uncalced': break;
                    case 'StartupPrompt': break;
                    case 'Crn': break;
                    case 'ExternName': break;
                    case 'Formula': break;
                    case 'ColFirst': break;
                    case 'ColLast': break;
                    case 'WantAdvise': break;
                    case 'Boolean': break;
                    case 'Error': break;
                    case 'Text': break;
                    case 'OLE': break;
                    case 'NoAutoRecover': break;
                    case 'PublishObjects': break;
                    case 'DoNotCalculateBeforeSave': break;
                    case 'Number': break;
                    case 'RefModeR1C1': break;
                    case 'EmbedSaveSmartTags': break;
                    default: seen = false;
                } break;
                /* WorkbookOptions */
                case 'WorkbookOptions': switch(Rn[3]) {
                    case 'OWCVersion': break;
                    case 'Height': break;
                    case 'Width': break;
                    default: seen = false;
                } break;
                /* WorksheetOptions */
                case 'WorksheetOptions': switch(Rn[3]) {
                    case 'Unsynced': break;
                    case 'Visible': break;
                    case 'Print': break;
                    case 'Panes': break;
                    case 'Scale': break;
                    case 'Pane': break;
                    case 'Number': break;
                    case 'Layout': break;
                    case 'Header': break;
                    case 'Footer': break;
                    case 'PageSetup': break;
                    case 'PageMargins': break;
                    case 'Selected': break;
                    case 'ProtectObjects': break;
                    case 'EnableSelection': break;
                    case 'ProtectScenarios': break;
                    case 'ValidPrinterInfo': break;
                    case 'HorizontalResolution': break;
                    case 'VerticalResolution': break;
                    case 'NumberofCopies': break;
                    case 'ActiveRow': break;
                    case 'ActiveCol': break;
                    case 'ActivePane': break;
                    case 'TopRowVisible': break;
                    case 'TopRowBottomPane': break;
                    case 'LeftColumnVisible': break;
                    case 'LeftColumnRightPane': break;
                    case 'FitToPage': break;
                    case 'RangeSelection': break;
                    case 'PaperSizeIndex': break;
                    case 'PageLayoutZoom': break;
                    case 'PageBreakZoom': break;
                    case 'FilterOn': break;
                    case 'DoNotDisplayGridlines': break;
                    case 'SplitHorizontal': break;
                    case 'SplitVertical': break;
                    case 'FreezePanes': break;
                    case 'FrozenNoSplit': break;
                    case 'FitWidth': break;
                    case 'FitHeight': break;
                    case 'CommentsLayout': break;
                    case 'Zoom': break;
                    case 'LeftToRight': break;
                    case 'Gridlines': break;
                    case 'AllowSort': break;
                    case 'AllowFilter': break;
                    case 'AllowInsertRows': break;
                    case 'AllowDeleteRows': break;
                    case 'AllowInsertCols': break;
                    case 'AllowDeleteCols': break;
                    case 'AllowInsertHyperlinks': break;
                    case 'AllowFormatCells': break;
                    case 'AllowSizeCols': break;
                    case 'AllowSizeRows': break;
                    case 'NoSummaryRowsBelowDetail': break;
                    case 'TabColorIndex': break;
                    case 'DoNotDisplayHeadings': break;
                    case 'ShowPageLayoutZoom': break;
                    case 'NoSummaryColumnsRightDetail': break;
                    case 'BlackAndWhite': break;
                    case 'DoNotDisplayZeros': break;
                    case 'DisplayPageBreak': break;
                    case 'RowColHeadings': break;
                    case 'DoNotDisplayOutline': break;
                    case 'NoOrientation': break;
                    case 'AllowUsePivotTables': break;
                    case 'ZeroHeight': break;
                    case 'ViewableRange': break;
                    case 'Selection': break;
                    case 'ProtectContents': break;
                    default: seen = false;
                } break;
                /* PivotTable */
                case 'PivotTable': case 'PivotCache': switch(Rn[3]) {
                    case 'ImmediateItemsOnDrop': break;
                    case 'ShowPageMultipleItemLabel': break;
                    case 'CompactRowIndent': break;
                    case 'Location': break;
                    case 'PivotField': break;
                    case 'Orientation': break;
                    case 'LayoutForm': break;
                    case 'LayoutSubtotalLocation': break;
                    case 'LayoutCompactRow': break;
                    case 'Position': break;
                    case 'PivotItem': break;
                    case 'DataType': break;
                    case 'DataField': break;
                    case 'SourceName': break;
                    case 'ParentField': break;
                    case 'PTLineItems': break;
                    case 'PTLineItem': break;
                    case 'CountOfSameItems': break;
                    case 'Item': break;
                    case 'ItemType': break;
                    case 'PTSource': break;
                    case 'CacheIndex': break;
                    case 'ConsolidationReference': break;
                    case 'FileName': break;
                    case 'Reference': break;
                    case 'NoColumnGrand': break;
                    case 'NoRowGrand': break;
                    case 'BlankLineAfterItems': break;
                    case 'Hidden': break;
                    case 'Subtotal': break;
                    case 'BaseField': break;
                    case 'MapChildItems': break;
                    case 'Function': break;
                    case 'RefreshOnFileOpen': break;
                    case 'PrintSetTitles': break;
                    case 'MergeLabels': break;
                    case 'DefaultVersion': break;
                    case 'RefreshName': break;
                    case 'RefreshDate': break;
                    case 'RefreshDateCopy': break;
                    case 'VersionLastRefresh': break;
                    case 'VersionLastUpdate': break;
                    case 'VersionUpdateableMin': break;
                    case 'VersionRefreshableMin': break;
                    case 'Calculation': break;
                    default: seen = false;
                } break;
                /* PageBreaks */
                case 'PageBreaks': switch(Rn[3]) {
                    case 'ColBreaks': break;
                    case 'ColBreak': break;
                    case 'RowBreaks': break;
                    case 'RowBreak': break;
                    case 'ColStart': break;
                    case 'ColEnd': break;
                    case 'RowEnd': break;
                    default: seen = false;
                } break;
                /* AutoFilter */
                case 'AutoFilter': switch(Rn[3]) {
                    case 'AutoFilterColumn': break;
                    case 'AutoFilterCondition': break;
                    case 'AutoFilterAnd': break;
                    case 'AutoFilterOr': break;
                    default: seen = false;
                } break;
                /* QueryTable */
                case 'QueryTable': switch(Rn[3]) {
                    case 'Id': break;
                    case 'AutoFormatFont': break;
                    case 'AutoFormatPattern': break;
                    case 'QuerySource': break;
                    case 'QueryType': break;
                    case 'EnableRedirections': break;
                    case 'RefreshedInXl9': break;
                    case 'URLString': break;
                    case 'HTMLTables': break;
                    case 'Connection': break;
                    case 'CommandText': break;
                    case 'RefreshInfo': break;
                    case 'NoTitles': break;
                    case 'NextId': break;
                    case 'ColumnInfo': break;
                    case 'OverwriteCells': break;
                    case 'DoNotPromptForFile': break;
                    case 'TextWizardSettings': break;
                    case 'Source': break;
                    case 'Number': break;
                    case 'Decimal': break;
                    case 'ThousandSeparator': break;
                    case 'TrailingMinusNumbers': break;
                    case 'FormatSettings': break;
                    case 'FieldType': break;
                    case 'Delimiters': break;
                    case 'Tab': break;
                    case 'Comma': break;
                    case 'AutoFormatName': break;
                    case 'VersionLastEdit': break;
                    case 'VersionLastRefresh': break;
                    default: seen = false;
                } break;
                /* Sorting */
                case 'Sorting':
                /* ConditionalFormatting */
                case 'ConditionalFormatting':
                /* DataValidation */
                case 'DataValidation': switch(Rn[3]) {
                    case 'Range': break;
                    case 'Type': break;
                    case 'Min': break;
                    case 'Max': break;
                    case 'Sort': break;
                    case 'Descending': break;
                    case 'Order': break;
                    case 'CaseSensitive': break;
                    case 'Value': break;
                    case 'ErrorStyle': break;
                    case 'ErrorMessage': break;
                    case 'ErrorTitle': break;
                    case 'CellRangeList': break;
                    case 'InputMessage': break;
                    case 'InputTitle': break;
                    case 'ComboHide': break;
                    case 'InputHide': break;
                    case 'Condition': break;
                    case 'Qualifier': break;
                    case 'UseBlank': break;
                    case 'Value1': break;
                    case 'Value2': break;
                    case 'Format': break;
                    default: seen = false;
                } break;
                /* MapInfo (schema) */
                case 'MapInfo': case 'Schema': case 'data': switch(Rn[3]) {
                    case 'Map': break;
                    case 'Entry': break;
                    case 'Range': break;
                    case 'XPath': break;
                    case 'Field': break;
                    case 'XSDType': break;
                    case 'FilterOn': break;
                    case 'Aggregate': break;
                    case 'ElementType': break;
                    case 'AttributeType': break;
                /* These are from xsd (XML Schema Definition) */
                    case 'schema':
                    case 'element':
                    case 'complexType':
                    case 'datatype':
                    case 'all':
                    case 'attribute':
                    case 'extends': break;
                    case 'row': break;
                    default: seen = false;
                } break;
                /* SmartTags (can be anything) */
                case 'SmartTags': break;
                default: seen = false; break;
            }
            if(seen) break;
            /* CustomDocumentProperties */
            if(!state[state.length-1][1]) throw 'Unrecognized tag: ' + Rn[3] + "|" + state.join("|");
            if(state[state.length-1][0]==='CustomDocumentProperties') {
                if(Rn[0].substr(-2) === "/>") break;
                else if(Rn[1]==="/") xlml_set_custprop(Custprops, Rn, cp, str.slice(pidx, Rn.index));
                else { cp = Rn; pidx = Rn.index + Rn[0].length; }
                break;
            }
            if(opts.WTF) throw 'Unrecognized tag: ' + Rn[3] + "|" + state.join("|");
    }
    var out = {};
    if(!opts.bookSheets && !opts.bookProps) out.Sheets = sheets;
    out.SheetNames = sheetnames;
    out.SSF = SSF.get_table();
    out.Props = Props;
    out.Custprops = Custprops;
    return out;
}
function parse_xlml(data, opts) {
    fix_read_opts(opts=opts||{});
    switch(opts.type||"base64") {
        case "base64": return parse_xlml_xml(Base64.decode(data), opts);
        case "binary": case "buffer": case "file": return parse_xlml_xml(data, opts);
        case "array": return parse_xlml_xml(data.map(_chr).join(""), opts);
    }
}
function write_xlml(wb, opts) { }
Source/UBCS-WEB/src/config/js-xlsx-master/bits/81_xls.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,675 @@
/* [MS-OLEDS] 2.3.8 CompObjStream */
function parse_compobj(obj) {
    var v = {};
    var o = obj.content;
    /* [MS-OLEDS] 2.3.7 CompObjHeader -- All fields MUST be ignored */
    var l = 28, m;
    m = __lpstr(o, l);
    l += 4 + __readUInt32LE(o,l);
    v.UserType = m;
    /* [MS-OLEDS] 2.3.1 ClipboardFormatOrAnsiString */
    m = __readUInt32LE(o,l); l+= 4;
    switch(m) {
        case 0x00000000: break;
        case 0xffffffff: case 0xfffffffe: l+=4; break;
        default:
            if(m > 0x190) throw new Error("Unsupported Clipboard: " + m.toString(16));
            l += m;
    }
    m = __lpstr(o, l); l += m.length === 0 ? 0 : 5 + m.length; v.Reserved1 = m;
    if((m = __readUInt32LE(o,l)) !== 0x71b2e9f4) return v;
    throw "Unsupported Unicode Extension";
}
/* 2.4.58 Continue logic */
function slurp(R, blob, length, opts) {
    var l = length;
    var bufs = [];
    var d = blob.slice(blob.l,blob.l+l);
    if(opts && opts.enc && opts.enc.insitu_decrypt) switch(R.n) {
    case 'BOF': case 'FilePass': case 'FileLock': case 'InterfaceHdr': case 'RRDInfo': case 'RRDHead': case 'UsrExcl': break;
    default:
        if(d.length === 0) break;
        opts.enc.insitu_decrypt(d);
    }
    bufs.push(d);
    blob.l += l;
    var next = (XLSRecordEnum[__readUInt16LE(blob,blob.l)]);
    while(next != null && next.n === 'Continue') {
        l = __readUInt16LE(blob,blob.l+2);
        bufs.push(blob.slice(blob.l+4,blob.l+4+l));
        blob.l += 4+l;
        next = (XLSRecordEnum[__readUInt16LE(blob, blob.l)]);
    }
    var b = bconcat(bufs);
    prep_blob(b, 0);
    var ll = 0; b.lens = [];
    for(var j = 0; j < bufs.length; ++j) { b.lens.push(ll); ll += bufs[j].length; }
    return R.f(b, b.length, opts);
}
function safe_format_xf(p, opts, date1904) {
    if(!p.XF) return;
    try {
        var fmtid = p.XF.ifmt||0;
        if(p.t === 'e') { p.w = p.w || BErr[p.v]; }
        else if(fmtid === 0) {
            if(p.t === 'n') {
                if((p.v|0) === p.v) p.w = SSF._general_int(p.v);
                else p.w = SSF._general_num(p.v);
            }
            else p.w = SSF._general(p.v);
        }
        else p.w = SSF.format(fmtid,p.v, {date1904:date1904||false});
        if(opts.cellNF) p.z = SSF._table[fmtid];
    } catch(e) { if(opts.WTF) throw e; }
}
function make_cell(val, ixfe, t) {
    return {v:val, ixfe:ixfe, t:t};
}
// 2.3.2
function parse_workbook(blob, options) {
    var wb = {opts:{}};
    var Sheets = {};
    var out = {};
    var Directory = {};
    var found_sheet = false;
    var range = {};
    var last_formula = null;
    var sst = [];
    var cur_sheet = "";
    var Preamble = {};
    var lastcell, last_cell, cc, cmnt, rng, rngC, rngR;
    var shared_formulae = {};
    var array_formulae = []; /* TODO: something more clever */
    var temp_val;
    var country;
    var cell_valid = true;
    var XFs = []; /* XF records */
    var palette = [];
    var get_rgb = function getrgb(icv) {
        if(icv < 8) return XLSIcv[icv];
        if(icv < 64) return palette[icv-8] || XLSIcv[icv];
        return XLSIcv[icv];
    };
    var process_cell_style = function pcs(cell, line) {
        var xfd = line.XF.data;
        if(!xfd || !xfd.patternType) return;
        line.s = {};
        line.s.patternType = xfd.patternType;
        var t;
        if((t = rgb2Hex(get_rgb(xfd.icvFore)))) { line.s.fgColor = {rgb:t}; }
        if((t = rgb2Hex(get_rgb(xfd.icvBack)))) { line.s.bgColor = {rgb:t}; }
    };
    var addcell = function addcell(cell, line, options) {
        if(!cell_valid) return;
        if(options.cellStyles && line.XF && line.XF.data) process_cell_style(cell, line);
        lastcell = cell;
        last_cell = encode_cell(cell);
        if(range.s) {
            if(cell.r < range.s.r) range.s.r = cell.r;
            if(cell.c < range.s.c) range.s.c = cell.c;
        }
        if(range.e) {
            if(cell.r + 1 > range.e.r) range.e.r = cell.r + 1;
            if(cell.c + 1 > range.e.c) range.e.c = cell.c + 1;
        }
        if(options.sheetRows && lastcell.r >= options.sheetRows) cell_valid = false;
        else out[last_cell] = line;
    };
    var opts = {
        enc: false, // encrypted
        sbcch: 0, // cch in the preceding SupBook
        snames: [], // sheetnames
        sharedf: shared_formulae, // shared formulae by address
        arrayf: array_formulae, // array formulae array
        rrtabid: [], // RRTabId
        lastuser: "", // Last User from WriteAccess
        biff: 8, // BIFF version
        codepage: 0, // CP from CodePage record
        winlocked: 0, // fLockWn from WinProtect
        wtf: false
    };
    if(options.password) opts.password = options.password;
    var mergecells = [];
    var objects = [];
    var supbooks = [[]]; // 1-indexed, will hold extern names
    var sbc = 0, sbci = 0, sbcli = 0;
    supbooks.SheetNames = opts.snames;
    supbooks.sharedf = opts.sharedf;
    supbooks.arrayf = opts.arrayf;
    var last_Rn = '';
    var file_depth = 0; /* TODO: make a real stack */
    /* explicit override for some broken writers */
    opts.codepage = 1200;
    set_cp(1200);
    while(blob.l < blob.length - 1) {
        var s = blob.l;
        var RecordType = blob.read_shift(2);
        if(RecordType === 0 && last_Rn === 'EOF') break;
        var length = (blob.l === blob.length ? 0 : blob.read_shift(2)), y;
        var R = XLSRecordEnum[RecordType];
        if(R && R.f) {
            if(options.bookSheets) {
                if(last_Rn === 'BoundSheet8' && R.n !== 'BoundSheet8') break;
            }
            last_Rn = R.n;
            if(R.r === 2 || R.r == 12) {
                var rt = blob.read_shift(2); length -= 2;
                if(!opts.enc && rt !== RecordType) throw "rt mismatch";
                if(R.r == 12){ blob.l += 10; length -= 10; } // skip FRT
            }
            //console.error(R,blob.l,length,blob.length);
            var val;
            if(R.n === 'EOF') val = R.f(blob, length, opts);
            else val = slurp(R, blob, length, opts);
            var Rn = R.n;
            /* BIFF5 overrides */
            if(opts.biff === 5 || opts.biff === 2) switch(Rn) {
                case 'Lbl': Rn = 'Label'; break;
            }
            /* nested switch statements to workaround V8 128 limit */
            switch(Rn) {
                /* Workbook Options */
                case 'Date1904': wb.opts.Date1904 = val; break;
                case 'WriteProtect': wb.opts.WriteProtect = true; break;
                case 'FilePass':
                    if(!opts.enc) blob.l = 0;
                    opts.enc = val;
                    if(opts.WTF) console.error(val);
                    if(!options.password) throw new Error("File is password-protected");
                    if(val.Type !== 0) throw new Error("Encryption scheme unsupported");
                    if(!val.valid) throw new Error("Password is incorrect");
                    break;
                case 'WriteAccess': opts.lastuser = val; break;
                case 'FileSharing': break; //TODO
                case 'CodePage':
                    /* overrides based on test cases */
                    if(val === 0x5212) val = 1200;
                    else if(val === 0x8001) val = 1252;
                    opts.codepage = val;
                    set_cp(val);
                    break;
                case 'RRTabId': opts.rrtabid = val; break;
                case 'WinProtect': opts.winlocked = val; break;
                case 'Template': break; // TODO
                case 'RefreshAll': wb.opts.RefreshAll = val; break;
                case 'BookBool': break; // TODO
                case 'UsesELFs': /* if(val) console.error("Unsupported ELFs"); */ break;
                case 'MTRSettings': {
                    if(val[0] && val[1]) throw "Unsupported threads: " + val;
                } break; // TODO: actually support threads
                case 'CalcCount': wb.opts.CalcCount = val; break;
                case 'CalcDelta': wb.opts.CalcDelta = val; break;
                case 'CalcIter': wb.opts.CalcIter = val; break;
                case 'CalcMode': wb.opts.CalcMode = val; break;
                case 'CalcPrecision': wb.opts.CalcPrecision = val; break;
                case 'CalcSaveRecalc': wb.opts.CalcSaveRecalc = val; break;
                case 'CalcRefMode': opts.CalcRefMode = val; break; // TODO: implement R1C1
                case 'Uncalced': break;
                case 'ForceFullCalculation': wb.opts.FullCalc = val; break;
                case 'WsBool': break; // TODO
                case 'XF': XFs.push(val); break;
                case 'ExtSST': break; // TODO
                case 'BookExt': break; // TODO
                case 'RichTextStream': break;
                case 'BkHim': break;
                case 'SupBook': supbooks[++sbc] = [val]; sbci = 0; break;
                case 'ExternName': supbooks[sbc][++sbci] = val; break;
                case 'Index': break; // TODO
                case 'Lbl': supbooks[0][++sbcli] = val; break;
                case 'ExternSheet': supbooks[sbc] = supbooks[sbc].concat(val); sbci += val.length; break;
                case 'Protect': out["!protect"] = val; break; /* for sheet or book */
                case 'Password': if(val !== 0 && opts.WTF) console.error("Password verifier: " + val); break;
                case 'Prot4Rev': case 'Prot4RevPass': break; /*TODO: Revision Control*/
                case 'BoundSheet8': {
                    Directory[val.pos] = val;
                    opts.snames.push(val.name);
                } break;
                case 'EOF': {
                    if(--file_depth) break;
                    if(range.e) {
                        out["!range"] = range;
                        if(range.e.r > 0 && range.e.c > 0) {
                            range.e.r--; range.e.c--;
                            out["!ref"] = encode_range(range);
                            range.e.r++; range.e.c++;
                        }
                        if(mergecells.length > 0) out["!merges"] = mergecells;
                        if(objects.length > 0) out["!objects"] = objects;
                    }
                    if(cur_sheet === "") Preamble = out; else Sheets[cur_sheet] = out;
                    out = {};
                } break;
                case 'BOF': {
                    if(opts.biff !== 8);
                    else if(val.BIFFVer === 0x0500) opts.biff = 5;
                    else if(val.BIFFVer === 0x0002) opts.biff = 2;
                    else if(val.BIFFVer === 0x0007) opts.biff = 2;
                    if(file_depth++) break;
                    cell_valid = true;
                    out = {};
                    if(opts.biff === 2) {
                        if(cur_sheet === "") cur_sheet = "Sheet1";
                        range = {s:{r:0,c:0},e:{r:0,c:0}};
                    }
                    else cur_sheet = (Directory[s] || {name:""}).name;
                    mergecells = [];
                    objects = [];
                } break;
                case 'Number': case 'BIFF2NUM': {
                    temp_val = {ixfe: val.ixfe, XF: XFs[val.ixfe], v:val.val, t:'n'};
                    if(temp_val.XF) safe_format_xf(temp_val, options, wb.opts.Date1904);
                    addcell({c:val.c, r:val.r}, temp_val, options);
                } break;
                case 'BoolErr': {
                    temp_val = {ixfe: val.ixfe, XF: XFs[val.ixfe], v:val.val, t:val.t};
                    if(temp_val.XF) safe_format_xf(temp_val, options, wb.opts.Date1904);
                    addcell({c:val.c, r:val.r}, temp_val, options);
                } break;
                case 'RK': {
                    temp_val = {ixfe: val.ixfe, XF: XFs[val.ixfe], v:val.rknum, t:'n'};
                    if(temp_val.XF) safe_format_xf(temp_val, options, wb.opts.Date1904);
                    addcell({c:val.c, r:val.r}, temp_val, options);
                } break;
                case 'MulRk': {
                    for(var j = val.c; j <= val.C; ++j) {
                        var ixfe = val.rkrec[j-val.c][0];
                        temp_val= {ixfe:ixfe, XF:XFs[ixfe], v:val.rkrec[j-val.c][1], t:'n'};
                        if(temp_val.XF) safe_format_xf(temp_val, options, wb.opts.Date1904);
                        addcell({c:j, r:val.r}, temp_val, options);
                    }
                } break;
                case 'Formula': {
                    switch(val.val) {
                        case 'String': last_formula = val; break;
                        case 'Array Formula': throw "Array Formula unsupported";
                        default:
                            temp_val = {v:val.val, ixfe:val.cell.ixfe, t:val.tt};
                            temp_val.XF = XFs[temp_val.ixfe];
                            if(options.cellFormula) temp_val.f = "="+stringify_formula(val.formula,range,val.cell,supbooks, opts);
                            if(temp_val.XF) safe_format_xf(temp_val, options, wb.opts.Date1904);
                            addcell(val.cell, temp_val, options);
                            last_formula = val;
                    }
                } break;
                case 'String': {
                    if(last_formula) {
                        last_formula.val = val;
                        temp_val = {v:last_formula.val, ixfe:last_formula.cell.ixfe, t:'s'};
                        temp_val.XF = XFs[temp_val.ixfe];
                        if(options.cellFormula) temp_val.f = "="+stringify_formula(last_formula.formula, range, last_formula.cell, supbooks, opts);
                        if(temp_val.XF) safe_format_xf(temp_val, options, wb.opts.Date1904);
                        addcell(last_formula.cell, temp_val, options);
                        last_formula = null;
                    }
                } break;
                case 'Array': {
                    array_formulae.push(val);
                } break;
                case 'ShrFmla': {
                    if(!cell_valid) break;
                    //if(options.cellFormula) out[last_cell].f = stringify_formula(val[0], range, lastcell, supbooks, opts);
                    /* TODO: capture range */
                    shared_formulae[encode_cell(last_formula.cell)]= val[0];
                } break;
                case 'LabelSst':
                    //temp_val={v:sst[val.isst].t, ixfe:val.ixfe, t:'s'};
                    temp_val=make_cell(sst[val.isst].t, val.ixfe, 's');
                    temp_val.XF = XFs[temp_val.ixfe];
                    if(temp_val.XF) safe_format_xf(temp_val, options, wb.opts.Date1904);
                    addcell({c:val.c, r:val.r}, temp_val, options);
                    break;
                case 'Label': case 'BIFF2STR':
                    /* Some writers erroneously write Label */
                    temp_val=make_cell(val.val, val.ixfe, 's');
                    temp_val.XF = XFs[temp_val.ixfe];
                    if(temp_val.XF) safe_format_xf(temp_val, options, wb.opts.Date1904);
                    addcell({c:val.c, r:val.r}, temp_val, options);
                    break;
                case 'Dimensions': {
                    if(file_depth === 1) range = val; /* TODO: stack */
                } break;
                case 'SST': {
                    sst = val;
                } break;
                case 'Format': { /* val = [id, fmt] */
                    SSF.load(val[1], val[0]);
                } break;
                case 'MergeCells': mergecells = mergecells.concat(val); break;
                case 'Obj': objects[val.cmo[0]] = opts.lastobj = val; break;
                case 'TxO': opts.lastobj.TxO = val; break;
                case 'HLink': {
                    for(rngR = val[0].s.r; rngR <= val[0].e.r; ++rngR)
                        for(rngC = val[0].s.c; rngC <= val[0].e.c; ++rngC)
                            if(out[encode_cell({c:rngC,r:rngR})])
                                out[encode_cell({c:rngC,r:rngR})].l = val[1];
                } break;
                case 'HLinkTooltip': {
                    for(rngR = val[0].s.r; rngR <= val[0].e.r; ++rngR)
                        for(rngC = val[0].s.c; rngC <= val[0].e.c; ++rngC)
                            if(out[encode_cell({c:rngC,r:rngR})])
                                out[encode_cell({c:rngC,r:rngR})].l.tooltip = val[1];
                } break;
                /* Comments */
                case 'Note': {
                    if(opts.biff <= 5 && opts.biff >= 2) break; /* TODO: BIFF5 */
                    cc = out[encode_cell(val[0])];
                    var noteobj = objects[val[2]];
                    if(!cc) break;
                    if(!cc.c) cc.c = [];
                    cmnt = {a:val[1],t:noteobj.TxO.t};
                    cc.c.push(cmnt);
                } break;
                default: switch(R.n) { /* nested */
                case 'ClrtClient': break;
                case 'XFExt': update_xfext(XFs[val.ixfe], val.ext); break;
                case 'NameCmt': break;
                case 'Header': break; // TODO
                case 'Footer': break; // TODO
                case 'HCenter': break; // TODO
                case 'VCenter': break; // TODO
                case 'Pls': break; // TODO
                case 'Setup': break; // TODO
                case 'DefColWidth': break; // TODO
                case 'GCW': break;
                case 'LHRecord': break;
                case 'ColInfo': break; // TODO
                case 'Row': break; // TODO
                case 'DBCell': break; // TODO
                case 'MulBlank': break; // TODO
                case 'EntExU2': break; // TODO
                case 'SxView': break; // TODO
                case 'Sxvd': break; // TODO
                case 'SXVI': break; // TODO
                case 'SXVDEx': break; // TODO
                case 'SxIvd': break; // TODO
                case 'SXDI': break; // TODO
                case 'SXLI': break; // TODO
                case 'SXEx': break; // TODO
                case 'QsiSXTag': break; // TODO
                case 'Selection': break;
                case 'Feat': break;
                case 'FeatHdr': case 'FeatHdr11': break;
                case 'Feature11': case 'Feature12': case 'List12': break;
                case 'Blank': break;
                case 'Country': country = val; break;
                case 'RecalcId': break;
                case 'DefaultRowHeight': case 'DxGCol': break; // TODO: htmlify
                case 'Fbi': case 'Fbi2': case 'GelFrame': break;
                case 'Font': break; // TODO
                case 'XFCRC': break; // TODO
                case 'Style': break; // TODO
                case 'StyleExt': break; // TODO
                case 'Palette': palette = val; break; // TODO
                case 'Theme': break; // TODO
                /* Protection */
                case 'ScenarioProtect': break;
                case 'ObjProtect': break;
                /* Conditional Formatting */
                case 'CondFmt12': break;
                /* Table */
                case 'Table': break; // TODO
                case 'TableStyles': break; // TODO
                case 'TableStyle': break; // TODO
                case 'TableStyleElement': break; // TODO
                /* PivotTable */
                case 'SXStreamID': break; // TODO
                case 'SXVS': break; // TODO
                case 'DConRef': break; // TODO
                case 'SXAddl': break; // TODO
                case 'DConBin': break; // TODO
                case 'DConName': break; // TODO
                case 'SXPI': break; // TODO
                case 'SxFormat': break; // TODO
                case 'SxSelect': break; // TODO
                case 'SxRule': break; // TODO
                case 'SxFilt': break; // TODO
                case 'SxItm': break; // TODO
                case 'SxDXF': break; // TODO
                /* Scenario Manager */
                case 'ScenMan': break;
                /* Data Consolidation */
                case 'DCon': break;
                /* Watched Cell */
                case 'CellWatch': break;
                /* Print Settings */
                case 'PrintRowCol': break;
                case 'PrintGrid': break;
                case 'PrintSize': break;
                case 'XCT': break;
                case 'CRN': break;
                case 'Scl': {
                    //console.log("Zoom Level:", val[0]/val[1],val);
                } break;
                case 'SheetExt': {
                } break;
                case 'SheetExtOptional': {
                } break;
                /* VBA */
                case 'ObNoMacros': {
                } break;
                case 'ObProj': {
                } break;
                case 'CodeName': {
                } break;
                case 'GUIDTypeLib': {
                } break;
                case 'WOpt': break; // TODO: WTF?
                case 'PhoneticInfo': break;
                case 'OleObjectSize': break;
                /* Differential Formatting */
                case 'DXF': case 'DXFN': case 'DXFN12': case 'DXFN12List': case 'DXFN12NoCB': break;
                /* Data Validation */
                case 'Dv': case 'DVal': break;
                /* Data Series */
                case 'BRAI': case 'Series': case 'SeriesText': break;
                /* Data Connection */
                case 'DConn': break;
                case 'DbOrParamQry': break;
                case 'DBQueryExt': break;
                /* Formatting */
                case 'IFmtRecord': break;
                case 'CondFmt': case 'CF': case 'CF12': case 'CFEx': break;
                /* Explicitly Ignored */
                case 'Excel9File': break;
                case 'Units': break;
                case 'InterfaceHdr': case 'Mms': case 'InterfaceEnd': case 'DSF': case 'BuiltInFnGroupCount':
                /* View Stuff */
                case 'Window1': case 'Window2': case 'HideObj': case 'GridSet': case 'Guts':
                case 'UserBView': case 'UserSViewBegin': case 'UserSViewEnd':
                case 'Pane': break;
                default: switch(R.n) { /* nested */
                /* Chart */
                case 'Dat':
                case 'Begin': case 'End':
                case 'StartBlock': case 'EndBlock':
                case 'Frame': case 'Area':
                case 'Axis': case 'AxisLine': case 'Tick': break;
                case 'AxesUsed':
                case 'CrtLayout12': case 'CrtLayout12A': case 'CrtLink': case 'CrtLine': case 'CrtMlFrt': case 'CrtMlFrtContinue': break;
                case 'LineFormat': case 'AreaFormat':
                case 'Chart': case 'Chart3d': case 'Chart3DBarShape': case 'ChartFormat': case 'ChartFrtInfo': break;
                case 'PlotArea': case 'PlotGrowth': break;
                case 'SeriesList': case 'SerParent': case 'SerAuxTrend': break;
                case 'DataFormat': case 'SerToCrt': case 'FontX': break;
                case 'CatSerRange': case 'AxcExt': case 'SerFmt': break;
                case 'ShtProps': break;
                case 'DefaultText': case 'Text': case 'CatLab': break;
                case 'DataLabExtContents': break;
                case 'Legend': case 'LegendException': break;
                case 'Pie': case 'Scatter': break;
                case 'PieFormat': case 'MarkerFormat': break;
                case 'StartObject': case 'EndObject': break;
                case 'AlRuns': case 'ObjectLink': break;
                case 'SIIndex': break;
                case 'AttachedLabel': case 'YMult': break;
                /* Chart Group */
                case 'Line': case 'Bar': break;
                case 'Surf': break;
                /* Axis Group */
                case 'AxisParent': break;
                case 'Pos': break;
                case 'ValueRange': break;
                /* Pivot Chart */
                case 'SXViewEx9': break; // TODO
                case 'SXViewLink': break;
                case 'PivotChartBits': break;
                case 'SBaseRef': break;
                case 'TextPropsStream': break;
                /* Chart Misc */
                case 'LnExt': break;
                case 'MkrExt': break;
                case 'CrtCoopt': break;
                /* Query Table */
                case 'Qsi': case 'Qsif': case 'Qsir': case 'QsiSXTag': break;
                case 'TxtQry': break;
                /* Filter */
                case 'FilterMode': break;
                case 'AutoFilter': case 'AutoFilterInfo': break;
                case 'AutoFilter12': break;
                case 'DropDownObjIds': break;
                case 'Sort': break;
                case 'SortData': break;
                /* Drawing */
                case 'ShapePropsStream': break;
                case 'MsoDrawing': case 'MsoDrawingGroup': case 'MsoDrawingSelection': break;
                case 'ImData': break;
                /* Pub Stuff */
                case 'WebPub': case 'AutoWebPub':
                /* Print Stuff */
                case 'RightMargin': case 'LeftMargin': case 'TopMargin': case 'BottomMargin':
                case 'HeaderFooter': case 'HFPicture': case 'PLV':
                case 'HorizontalPageBreaks': case 'VerticalPageBreaks':
                /* Behavioral */
                case 'Backup': case 'CompressPictures': case 'Compat12': break;
                /* Should not Happen */
                case 'Continue': case 'ContinueFrt12': break;
                /* Future Records */
                case 'FrtFontList': case 'FrtWrapper': break;
                /* BIFF5 records */
                case 'ExternCount': break;
                case 'RString': break;
                case 'TabIdConf': case 'Radar': case 'RadarArea': case 'DropBar': case 'Intl': case 'CoordList': case 'SerAuxErrBar': break;
                default: switch(R.n) { /* nested */
                /* Miscellaneous */
                case 'SCENARIO': case 'DConBin': case 'PicF': case 'DataLabExt':
                case 'Lel': case 'BopPop': case 'BopPopCustom': case 'RealTimeData':
                case 'Name': break;
                default: if(options.WTF) throw 'Unrecognized Record ' + R.n;
            }}}}
        } else blob.l += length;
    }
    var sheetnamesraw = opts.biff === 2 ? ['Sheet1'] : Object.keys(Directory).sort(function(a,b) { return Number(a) - Number(b); }).map(function(x){return Directory[x].name;});
    var sheetnames = sheetnamesraw.slice();
    wb.Directory=sheetnamesraw;
    wb.SheetNames=sheetnamesraw;
    if(!options.bookSheets) wb.Sheets=Sheets;
    wb.Preamble=Preamble;
    wb.Strings = sst;
    wb.SSF = SSF.get_table();
    if(opts.enc) wb.Encryption = opts.enc;
    wb.Metadata = {};
    if(country !== undefined) wb.Metadata.Country = country;
    return wb;
}
function parse_xlscfb(cfb, options) {
if(!options) options = {};
fix_read_opts(options);
reset_cp();
var CompObj, Summary, Workbook;
if(cfb.find) {
    CompObj = cfb.find('!CompObj');
    Summary = cfb.find('!SummaryInformation');
    Workbook = cfb.find('/Workbook');
} else {
    prep_blob(cfb, 0);
    Workbook = {content: cfb};
}
if(!Workbook) Workbook = cfb.find('/Book');
var CompObjP, SummaryP, WorkbookP;
if(CompObj) CompObjP = parse_compobj(CompObj);
if(options.bookProps && !options.bookSheets) WorkbookP = {};
else {
    if(Workbook) WorkbookP = parse_workbook(Workbook.content, options, !!Workbook.find);
    else throw new Error("Cannot find Workbook stream");
}
if(cfb.find) parse_props(cfb);
var props = {};
for(var y in cfb.Summary) props[y] = cfb.Summary[y];
for(y in cfb.DocSummary) props[y] = cfb.DocSummary[y];
WorkbookP.Props = WorkbookP.Custprops = props; /* TODO: split up properties */
if(options.bookFiles) WorkbookP.cfb = cfb;
WorkbookP.CompObjP = CompObjP;
return WorkbookP;
}
/* TODO: WTF */
function parse_props(cfb) {
    /* [MS-OSHARED] 2.3.3.2.2 Document Summary Information Property Set */
    var DSI = cfb.find('!DocumentSummaryInformation');
    if(DSI) try { cfb.DocSummary = parse_PropertySetStream(DSI, DocSummaryPIDDSI); } catch(e) {}
    /* [MS-OSHARED] 2.3.3.2.1 Summary Information Property Set*/
    var SI = cfb.find('!SummaryInformation');
    if(SI) try { cfb.Summary = parse_PropertySetStream(SI, SummaryPIDSI); } catch(e) {}
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/82_parsetab.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,1230 @@
/* [MS-XLSB] 2.3 Record Enumeration */
var XLSBRecordEnum = {
    0x0000: { n:"BrtRowHdr", f:parse_BrtRowHdr },
    0x0001: { n:"BrtCellBlank", f:parse_BrtCellBlank },
    0x0002: { n:"BrtCellRk", f:parse_BrtCellRk },
    0x0003: { n:"BrtCellError", f:parse_BrtCellError },
    0x0004: { n:"BrtCellBool", f:parse_BrtCellBool },
    0x0005: { n:"BrtCellReal", f:parse_BrtCellReal },
    0x0006: { n:"BrtCellSt", f:parse_BrtCellSt },
    0x0007: { n:"BrtCellIsst", f:parse_BrtCellIsst },
    0x0008: { n:"BrtFmlaString", f:parse_BrtFmlaString },
    0x0009: { n:"BrtFmlaNum", f:parse_BrtFmlaNum },
    0x000A: { n:"BrtFmlaBool", f:parse_BrtFmlaBool },
    0x000B: { n:"BrtFmlaError", f:parse_BrtFmlaError },
    0x0010: { n:"BrtFRTArchID$", f:parse_BrtFRTArchID$ },
    0x0013: { n:"BrtSSTItem", f:parse_RichStr },
    0x0014: { n:"BrtPCDIMissing", f:parsenoop },
    0x0015: { n:"BrtPCDINumber", f:parsenoop },
    0x0016: { n:"BrtPCDIBoolean", f:parsenoop },
    0x0017: { n:"BrtPCDIError", f:parsenoop },
    0x0018: { n:"BrtPCDIString", f:parsenoop },
    0x0019: { n:"BrtPCDIDatetime", f:parsenoop },
    0x001A: { n:"BrtPCDIIndex", f:parsenoop },
    0x001B: { n:"BrtPCDIAMissing", f:parsenoop },
    0x001C: { n:"BrtPCDIANumber", f:parsenoop },
    0x001D: { n:"BrtPCDIABoolean", f:parsenoop },
    0x001E: { n:"BrtPCDIAError", f:parsenoop },
    0x001F: { n:"BrtPCDIAString", f:parsenoop },
    0x0020: { n:"BrtPCDIADatetime", f:parsenoop },
    0x0021: { n:"BrtPCRRecord", f:parsenoop },
    0x0022: { n:"BrtPCRRecordDt", f:parsenoop },
    0x0023: { n:"BrtFRTBegin", f:parsenoop },
    0x0024: { n:"BrtFRTEnd", f:parsenoop },
    0x0025: { n:"BrtACBegin", f:parsenoop },
    0x0026: { n:"BrtACEnd", f:parsenoop },
    0x0027: { n:"BrtName", f:parsenoop },
    0x0028: { n:"BrtIndexRowBlock", f:parsenoop },
    0x002A: { n:"BrtIndexBlock", f:parsenoop },
    0x002B: { n:"BrtFont", f:parse_BrtFont },
    0x002C: { n:"BrtFmt", f:parse_BrtFmt },
    0x002D: { n:"BrtFill", f:parsenoop },
    0x002E: { n:"BrtBorder", f:parsenoop },
    0x002F: { n:"BrtXF", f:parse_BrtXF },
    0x0030: { n:"BrtStyle", f:parsenoop },
    0x0031: { n:"BrtCellMeta", f:parsenoop },
    0x0032: { n:"BrtValueMeta", f:parsenoop },
    0x0033: { n:"BrtMdb", f:parsenoop },
    0x0034: { n:"BrtBeginFmd", f:parsenoop },
    0x0035: { n:"BrtEndFmd", f:parsenoop },
    0x0036: { n:"BrtBeginMdx", f:parsenoop },
    0x0037: { n:"BrtEndMdx", f:parsenoop },
    0x0038: { n:"BrtBeginMdxTuple", f:parsenoop },
    0x0039: { n:"BrtEndMdxTuple", f:parsenoop },
    0x003A: { n:"BrtMdxMbrIstr", f:parsenoop },
    0x003B: { n:"BrtStr", f:parsenoop },
    0x003C: { n:"BrtColInfo", f:parsenoop },
    0x003E: { n:"BrtCellRString", f:parsenoop },
    0x003F: { n:"BrtCalcChainItem$", f:parse_BrtCalcChainItem$ },
    0x0040: { n:"BrtDVal", f:parsenoop },
    0x0041: { n:"BrtSxvcellNum", f:parsenoop },
    0x0042: { n:"BrtSxvcellStr", f:parsenoop },
    0x0043: { n:"BrtSxvcellBool", f:parsenoop },
    0x0044: { n:"BrtSxvcellErr", f:parsenoop },
    0x0045: { n:"BrtSxvcellDate", f:parsenoop },
    0x0046: { n:"BrtSxvcellNil", f:parsenoop },
    0x0080: { n:"BrtFileVersion", f:parsenoop },
    0x0081: { n:"BrtBeginSheet", f:parsenoop },
    0x0082: { n:"BrtEndSheet", f:parsenoop },
    0x0083: { n:"BrtBeginBook", f:parsenoop, p:0 },
    0x0084: { n:"BrtEndBook", f:parsenoop },
    0x0085: { n:"BrtBeginWsViews", f:parsenoop },
    0x0086: { n:"BrtEndWsViews", f:parsenoop },
    0x0087: { n:"BrtBeginBookViews", f:parsenoop },
    0x0088: { n:"BrtEndBookViews", f:parsenoop },
    0x0089: { n:"BrtBeginWsView", f:parsenoop },
    0x008A: { n:"BrtEndWsView", f:parsenoop },
    0x008B: { n:"BrtBeginCsViews", f:parsenoop },
    0x008C: { n:"BrtEndCsViews", f:parsenoop },
    0x008D: { n:"BrtBeginCsView", f:parsenoop },
    0x008E: { n:"BrtEndCsView", f:parsenoop },
    0x008F: { n:"BrtBeginBundleShs", f:parsenoop },
    0x0090: { n:"BrtEndBundleShs", f:parsenoop },
    0x0091: { n:"BrtBeginSheetData", f:parsenoop },
    0x0092: { n:"BrtEndSheetData", f:parsenoop },
    0x0093: { n:"BrtWsProp", f:parse_BrtWsProp },
    0x0094: { n:"BrtWsDim", f:parse_BrtWsDim, p:16 },
    0x0097: { n:"BrtPane", f:parsenoop },
    0x0098: { n:"BrtSel", f:parsenoop },
    0x0099: { n:"BrtWbProp", f:parse_BrtWbProp },
    0x009A: { n:"BrtWbFactoid", f:parsenoop },
    0x009B: { n:"BrtFileRecover", f:parsenoop },
    0x009C: { n:"BrtBundleSh", f:parse_BrtBundleSh },
    0x009D: { n:"BrtCalcProp", f:parsenoop },
    0x009E: { n:"BrtBookView", f:parsenoop },
    0x009F: { n:"BrtBeginSst", f:parse_BrtBeginSst },
    0x00A0: { n:"BrtEndSst", f:parsenoop },
    0x00A1: { n:"BrtBeginAFilter", f:parsenoop },
    0x00A2: { n:"BrtEndAFilter", f:parsenoop },
    0x00A3: { n:"BrtBeginFilterColumn", f:parsenoop },
    0x00A4: { n:"BrtEndFilterColumn", f:parsenoop },
    0x00A5: { n:"BrtBeginFilters", f:parsenoop },
    0x00A6: { n:"BrtEndFilters", f:parsenoop },
    0x00A7: { n:"BrtFilter", f:parsenoop },
    0x00A8: { n:"BrtColorFilter", f:parsenoop },
    0x00A9: { n:"BrtIconFilter", f:parsenoop },
    0x00AA: { n:"BrtTop10Filter", f:parsenoop },
    0x00AB: { n:"BrtDynamicFilter", f:parsenoop },
    0x00AC: { n:"BrtBeginCustomFilters", f:parsenoop },
    0x00AD: { n:"BrtEndCustomFilters", f:parsenoop },
    0x00AE: { n:"BrtCustomFilter", f:parsenoop },
    0x00AF: { n:"BrtAFilterDateGroupItem", f:parsenoop },
    0x00B0: { n:"BrtMergeCell", f:parse_BrtMergeCell },
    0x00B1: { n:"BrtBeginMergeCells", f:parsenoop },
    0x00B2: { n:"BrtEndMergeCells", f:parsenoop },
    0x00B3: { n:"BrtBeginPivotCacheDef", f:parsenoop },
    0x00B4: { n:"BrtEndPivotCacheDef", f:parsenoop },
    0x00B5: { n:"BrtBeginPCDFields", f:parsenoop },
    0x00B6: { n:"BrtEndPCDFields", f:parsenoop },
    0x00B7: { n:"BrtBeginPCDField", f:parsenoop },
    0x00B8: { n:"BrtEndPCDField", f:parsenoop },
    0x00B9: { n:"BrtBeginPCDSource", f:parsenoop },
    0x00BA: { n:"BrtEndPCDSource", f:parsenoop },
    0x00BB: { n:"BrtBeginPCDSRange", f:parsenoop },
    0x00BC: { n:"BrtEndPCDSRange", f:parsenoop },
    0x00BD: { n:"BrtBeginPCDFAtbl", f:parsenoop },
    0x00BE: { n:"BrtEndPCDFAtbl", f:parsenoop },
    0x00BF: { n:"BrtBeginPCDIRun", f:parsenoop },
    0x00C0: { n:"BrtEndPCDIRun", f:parsenoop },
    0x00C1: { n:"BrtBeginPivotCacheRecords", f:parsenoop },
    0x00C2: { n:"BrtEndPivotCacheRecords", f:parsenoop },
    0x00C3: { n:"BrtBeginPCDHierarchies", f:parsenoop },
    0x00C4: { n:"BrtEndPCDHierarchies", f:parsenoop },
    0x00C5: { n:"BrtBeginPCDHierarchy", f:parsenoop },
    0x00C6: { n:"BrtEndPCDHierarchy", f:parsenoop },
    0x00C7: { n:"BrtBeginPCDHFieldsUsage", f:parsenoop },
    0x00C8: { n:"BrtEndPCDHFieldsUsage", f:parsenoop },
    0x00C9: { n:"BrtBeginExtConnection", f:parsenoop },
    0x00CA: { n:"BrtEndExtConnection", f:parsenoop },
    0x00CB: { n:"BrtBeginECDbProps", f:parsenoop },
    0x00CC: { n:"BrtEndECDbProps", f:parsenoop },
    0x00CD: { n:"BrtBeginECOlapProps", f:parsenoop },
    0x00CE: { n:"BrtEndECOlapProps", f:parsenoop },
    0x00CF: { n:"BrtBeginPCDSConsol", f:parsenoop },
    0x00D0: { n:"BrtEndPCDSConsol", f:parsenoop },
    0x00D1: { n:"BrtBeginPCDSCPages", f:parsenoop },
    0x00D2: { n:"BrtEndPCDSCPages", f:parsenoop },
    0x00D3: { n:"BrtBeginPCDSCPage", f:parsenoop },
    0x00D4: { n:"BrtEndPCDSCPage", f:parsenoop },
    0x00D5: { n:"BrtBeginPCDSCPItem", f:parsenoop },
    0x00D6: { n:"BrtEndPCDSCPItem", f:parsenoop },
    0x00D7: { n:"BrtBeginPCDSCSets", f:parsenoop },
    0x00D8: { n:"BrtEndPCDSCSets", f:parsenoop },
    0x00D9: { n:"BrtBeginPCDSCSet", f:parsenoop },
    0x00DA: { n:"BrtEndPCDSCSet", f:parsenoop },
    0x00DB: { n:"BrtBeginPCDFGroup", f:parsenoop },
    0x00DC: { n:"BrtEndPCDFGroup", f:parsenoop },
    0x00DD: { n:"BrtBeginPCDFGItems", f:parsenoop },
    0x00DE: { n:"BrtEndPCDFGItems", f:parsenoop },
    0x00DF: { n:"BrtBeginPCDFGRange", f:parsenoop },
    0x00E0: { n:"BrtEndPCDFGRange", f:parsenoop },
    0x00E1: { n:"BrtBeginPCDFGDiscrete", f:parsenoop },
    0x00E2: { n:"BrtEndPCDFGDiscrete", f:parsenoop },
    0x00E3: { n:"BrtBeginPCDSDTupleCache", f:parsenoop },
    0x00E4: { n:"BrtEndPCDSDTupleCache", f:parsenoop },
    0x00E5: { n:"BrtBeginPCDSDTCEntries", f:parsenoop },
    0x00E6: { n:"BrtEndPCDSDTCEntries", f:parsenoop },
    0x00E7: { n:"BrtBeginPCDSDTCEMembers", f:parsenoop },
    0x00E8: { n:"BrtEndPCDSDTCEMembers", f:parsenoop },
    0x00E9: { n:"BrtBeginPCDSDTCEMember", f:parsenoop },
    0x00EA: { n:"BrtEndPCDSDTCEMember", f:parsenoop },
    0x00EB: { n:"BrtBeginPCDSDTCQueries", f:parsenoop },
    0x00EC: { n:"BrtEndPCDSDTCQueries", f:parsenoop },
    0x00ED: { n:"BrtBeginPCDSDTCQuery", f:parsenoop },
    0x00EE: { n:"BrtEndPCDSDTCQuery", f:parsenoop },
    0x00EF: { n:"BrtBeginPCDSDTCSets", f:parsenoop },
    0x00F0: { n:"BrtEndPCDSDTCSets", f:parsenoop },
    0x00F1: { n:"BrtBeginPCDSDTCSet", f:parsenoop },
    0x00F2: { n:"BrtEndPCDSDTCSet", f:parsenoop },
    0x00F3: { n:"BrtBeginPCDCalcItems", f:parsenoop },
    0x00F4: { n:"BrtEndPCDCalcItems", f:parsenoop },
    0x00F5: { n:"BrtBeginPCDCalcItem", f:parsenoop },
    0x00F6: { n:"BrtEndPCDCalcItem", f:parsenoop },
    0x00F7: { n:"BrtBeginPRule", f:parsenoop },
    0x00F8: { n:"BrtEndPRule", f:parsenoop },
    0x00F9: { n:"BrtBeginPRFilters", f:parsenoop },
    0x00FA: { n:"BrtEndPRFilters", f:parsenoop },
    0x00FB: { n:"BrtBeginPRFilter", f:parsenoop },
    0x00FC: { n:"BrtEndPRFilter", f:parsenoop },
    0x00FD: { n:"BrtBeginPNames", f:parsenoop },
    0x00FE: { n:"BrtEndPNames", f:parsenoop },
    0x00FF: { n:"BrtBeginPName", f:parsenoop },
    0x0100: { n:"BrtEndPName", f:parsenoop },
    0x0101: { n:"BrtBeginPNPairs", f:parsenoop },
    0x0102: { n:"BrtEndPNPairs", f:parsenoop },
    0x0103: { n:"BrtBeginPNPair", f:parsenoop },
    0x0104: { n:"BrtEndPNPair", f:parsenoop },
    0x0105: { n:"BrtBeginECWebProps", f:parsenoop },
    0x0106: { n:"BrtEndECWebProps", f:parsenoop },
    0x0107: { n:"BrtBeginEcWpTables", f:parsenoop },
    0x0108: { n:"BrtEndECWPTables", f:parsenoop },
    0x0109: { n:"BrtBeginECParams", f:parsenoop },
    0x010A: { n:"BrtEndECParams", f:parsenoop },
    0x010B: { n:"BrtBeginECParam", f:parsenoop },
    0x010C: { n:"BrtEndECParam", f:parsenoop },
    0x010D: { n:"BrtBeginPCDKPIs", f:parsenoop },
    0x010E: { n:"BrtEndPCDKPIs", f:parsenoop },
    0x010F: { n:"BrtBeginPCDKPI", f:parsenoop },
    0x0110: { n:"BrtEndPCDKPI", f:parsenoop },
    0x0111: { n:"BrtBeginDims", f:parsenoop },
    0x0112: { n:"BrtEndDims", f:parsenoop },
    0x0113: { n:"BrtBeginDim", f:parsenoop },
    0x0114: { n:"BrtEndDim", f:parsenoop },
    0x0115: { n:"BrtIndexPartEnd", f:parsenoop },
    0x0116: { n:"BrtBeginStyleSheet", f:parsenoop },
    0x0117: { n:"BrtEndStyleSheet", f:parsenoop },
    0x0118: { n:"BrtBeginSXView", f:parsenoop },
    0x0119: { n:"BrtEndSXVI", f:parsenoop },
    0x011A: { n:"BrtBeginSXVI", f:parsenoop },
    0x011B: { n:"BrtBeginSXVIs", f:parsenoop },
    0x011C: { n:"BrtEndSXVIs", f:parsenoop },
    0x011D: { n:"BrtBeginSXVD", f:parsenoop },
    0x011E: { n:"BrtEndSXVD", f:parsenoop },
    0x011F: { n:"BrtBeginSXVDs", f:parsenoop },
    0x0120: { n:"BrtEndSXVDs", f:parsenoop },
    0x0121: { n:"BrtBeginSXPI", f:parsenoop },
    0x0122: { n:"BrtEndSXPI", f:parsenoop },
    0x0123: { n:"BrtBeginSXPIs", f:parsenoop },
    0x0124: { n:"BrtEndSXPIs", f:parsenoop },
    0x0125: { n:"BrtBeginSXDI", f:parsenoop },
    0x0126: { n:"BrtEndSXDI", f:parsenoop },
    0x0127: { n:"BrtBeginSXDIs", f:parsenoop },
    0x0128: { n:"BrtEndSXDIs", f:parsenoop },
    0x0129: { n:"BrtBeginSXLI", f:parsenoop },
    0x012A: { n:"BrtEndSXLI", f:parsenoop },
    0x012B: { n:"BrtBeginSXLIRws", f:parsenoop },
    0x012C: { n:"BrtEndSXLIRws", f:parsenoop },
    0x012D: { n:"BrtBeginSXLICols", f:parsenoop },
    0x012E: { n:"BrtEndSXLICols", f:parsenoop },
    0x012F: { n:"BrtBeginSXFormat", f:parsenoop },
    0x0130: { n:"BrtEndSXFormat", f:parsenoop },
    0x0131: { n:"BrtBeginSXFormats", f:parsenoop },
    0x0132: { n:"BrtEndSxFormats", f:parsenoop },
    0x0133: { n:"BrtBeginSxSelect", f:parsenoop },
    0x0134: { n:"BrtEndSxSelect", f:parsenoop },
    0x0135: { n:"BrtBeginISXVDRws", f:parsenoop },
    0x0136: { n:"BrtEndISXVDRws", f:parsenoop },
    0x0137: { n:"BrtBeginISXVDCols", f:parsenoop },
    0x0138: { n:"BrtEndISXVDCols", f:parsenoop },
    0x0139: { n:"BrtEndSXLocation", f:parsenoop },
    0x013A: { n:"BrtBeginSXLocation", f:parsenoop },
    0x013B: { n:"BrtEndSXView", f:parsenoop },
    0x013C: { n:"BrtBeginSXTHs", f:parsenoop },
    0x013D: { n:"BrtEndSXTHs", f:parsenoop },
    0x013E: { n:"BrtBeginSXTH", f:parsenoop },
    0x013F: { n:"BrtEndSXTH", f:parsenoop },
    0x0140: { n:"BrtBeginISXTHRws", f:parsenoop },
    0x0141: { n:"BrtEndISXTHRws", f:parsenoop },
    0x0142: { n:"BrtBeginISXTHCols", f:parsenoop },
    0x0143: { n:"BrtEndISXTHCols", f:parsenoop },
    0x0144: { n:"BrtBeginSXTDMPS", f:parsenoop },
    0x0145: { n:"BrtEndSXTDMPs", f:parsenoop },
    0x0146: { n:"BrtBeginSXTDMP", f:parsenoop },
    0x0147: { n:"BrtEndSXTDMP", f:parsenoop },
    0x0148: { n:"BrtBeginSXTHItems", f:parsenoop },
    0x0149: { n:"BrtEndSXTHItems", f:parsenoop },
    0x014A: { n:"BrtBeginSXTHItem", f:parsenoop },
    0x014B: { n:"BrtEndSXTHItem", f:parsenoop },
    0x014C: { n:"BrtBeginMetadata", f:parsenoop },
    0x014D: { n:"BrtEndMetadata", f:parsenoop },
    0x014E: { n:"BrtBeginEsmdtinfo", f:parsenoop },
    0x014F: { n:"BrtMdtinfo", f:parsenoop },
    0x0150: { n:"BrtEndEsmdtinfo", f:parsenoop },
    0x0151: { n:"BrtBeginEsmdb", f:parsenoop },
    0x0152: { n:"BrtEndEsmdb", f:parsenoop },
    0x0153: { n:"BrtBeginEsfmd", f:parsenoop },
    0x0154: { n:"BrtEndEsfmd", f:parsenoop },
    0x0155: { n:"BrtBeginSingleCells", f:parsenoop },
    0x0156: { n:"BrtEndSingleCells", f:parsenoop },
    0x0157: { n:"BrtBeginList", f:parsenoop },
    0x0158: { n:"BrtEndList", f:parsenoop },
    0x0159: { n:"BrtBeginListCols", f:parsenoop },
    0x015A: { n:"BrtEndListCols", f:parsenoop },
    0x015B: { n:"BrtBeginListCol", f:parsenoop },
    0x015C: { n:"BrtEndListCol", f:parsenoop },
    0x015D: { n:"BrtBeginListXmlCPr", f:parsenoop },
    0x015E: { n:"BrtEndListXmlCPr", f:parsenoop },
    0x015F: { n:"BrtListCCFmla", f:parsenoop },
    0x0160: { n:"BrtListTrFmla", f:parsenoop },
    0x0161: { n:"BrtBeginExternals", f:parsenoop },
    0x0162: { n:"BrtEndExternals", f:parsenoop },
    0x0163: { n:"BrtSupBookSrc", f:parsenoop },
    0x0165: { n:"BrtSupSelf", f:parsenoop },
    0x0166: { n:"BrtSupSame", f:parsenoop },
    0x0167: { n:"BrtSupTabs", f:parsenoop },
    0x0168: { n:"BrtBeginSupBook", f:parsenoop },
    0x0169: { n:"BrtPlaceholderName", f:parsenoop },
    0x016A: { n:"BrtExternSheet", f:parsenoop },
    0x016B: { n:"BrtExternTableStart", f:parsenoop },
    0x016C: { n:"BrtExternTableEnd", f:parsenoop },
    0x016E: { n:"BrtExternRowHdr", f:parsenoop },
    0x016F: { n:"BrtExternCellBlank", f:parsenoop },
    0x0170: { n:"BrtExternCellReal", f:parsenoop },
    0x0171: { n:"BrtExternCellBool", f:parsenoop },
    0x0172: { n:"BrtExternCellError", f:parsenoop },
    0x0173: { n:"BrtExternCellString", f:parsenoop },
    0x0174: { n:"BrtBeginEsmdx", f:parsenoop },
    0x0175: { n:"BrtEndEsmdx", f:parsenoop },
    0x0176: { n:"BrtBeginMdxSet", f:parsenoop },
    0x0177: { n:"BrtEndMdxSet", f:parsenoop },
    0x0178: { n:"BrtBeginMdxMbrProp", f:parsenoop },
    0x0179: { n:"BrtEndMdxMbrProp", f:parsenoop },
    0x017A: { n:"BrtBeginMdxKPI", f:parsenoop },
    0x017B: { n:"BrtEndMdxKPI", f:parsenoop },
    0x017C: { n:"BrtBeginEsstr", f:parsenoop },
    0x017D: { n:"BrtEndEsstr", f:parsenoop },
    0x017E: { n:"BrtBeginPRFItem", f:parsenoop },
    0x017F: { n:"BrtEndPRFItem", f:parsenoop },
    0x0180: { n:"BrtBeginPivotCacheIDs", f:parsenoop },
    0x0181: { n:"BrtEndPivotCacheIDs", f:parsenoop },
    0x0182: { n:"BrtBeginPivotCacheID", f:parsenoop },
    0x0183: { n:"BrtEndPivotCacheID", f:parsenoop },
    0x0184: { n:"BrtBeginISXVIs", f:parsenoop },
    0x0185: { n:"BrtEndISXVIs", f:parsenoop },
    0x0186: { n:"BrtBeginColInfos", f:parsenoop },
    0x0187: { n:"BrtEndColInfos", f:parsenoop },
    0x0188: { n:"BrtBeginRwBrk", f:parsenoop },
    0x0189: { n:"BrtEndRwBrk", f:parsenoop },
    0x018A: { n:"BrtBeginColBrk", f:parsenoop },
    0x018B: { n:"BrtEndColBrk", f:parsenoop },
    0x018C: { n:"BrtBrk", f:parsenoop },
    0x018D: { n:"BrtUserBookView", f:parsenoop },
    0x018E: { n:"BrtInfo", f:parsenoop },
    0x018F: { n:"BrtCUsr", f:parsenoop },
    0x0190: { n:"BrtUsr", f:parsenoop },
    0x0191: { n:"BrtBeginUsers", f:parsenoop },
    0x0193: { n:"BrtEOF", f:parsenoop },
    0x0194: { n:"BrtUCR", f:parsenoop },
    0x0195: { n:"BrtRRInsDel", f:parsenoop },
    0x0196: { n:"BrtRREndInsDel", f:parsenoop },
    0x0197: { n:"BrtRRMove", f:parsenoop },
    0x0198: { n:"BrtRREndMove", f:parsenoop },
    0x0199: { n:"BrtRRChgCell", f:parsenoop },
    0x019A: { n:"BrtRREndChgCell", f:parsenoop },
    0x019B: { n:"BrtRRHeader", f:parsenoop },
    0x019C: { n:"BrtRRUserView", f:parsenoop },
    0x019D: { n:"BrtRRRenSheet", f:parsenoop },
    0x019E: { n:"BrtRRInsertSh", f:parsenoop },
    0x019F: { n:"BrtRRDefName", f:parsenoop },
    0x01A0: { n:"BrtRRNote", f:parsenoop },
    0x01A1: { n:"BrtRRConflict", f:parsenoop },
    0x01A2: { n:"BrtRRTQSIF", f:parsenoop },
    0x01A3: { n:"BrtRRFormat", f:parsenoop },
    0x01A4: { n:"BrtRREndFormat", f:parsenoop },
    0x01A5: { n:"BrtRRAutoFmt", f:parsenoop },
    0x01A6: { n:"BrtBeginUserShViews", f:parsenoop },
    0x01A7: { n:"BrtBeginUserShView", f:parsenoop },
    0x01A8: { n:"BrtEndUserShView", f:parsenoop },
    0x01A9: { n:"BrtEndUserShViews", f:parsenoop },
    0x01AA: { n:"BrtArrFmla", f:parsenoop },
    0x01AB: { n:"BrtShrFmla", f:parsenoop },
    0x01AC: { n:"BrtTable", f:parsenoop },
    0x01AD: { n:"BrtBeginExtConnections", f:parsenoop },
    0x01AE: { n:"BrtEndExtConnections", f:parsenoop },
    0x01AF: { n:"BrtBeginPCDCalcMems", f:parsenoop },
    0x01B0: { n:"BrtEndPCDCalcMems", f:parsenoop },
    0x01B1: { n:"BrtBeginPCDCalcMem", f:parsenoop },
    0x01B2: { n:"BrtEndPCDCalcMem", f:parsenoop },
    0x01B3: { n:"BrtBeginPCDHGLevels", f:parsenoop },
    0x01B4: { n:"BrtEndPCDHGLevels", f:parsenoop },
    0x01B5: { n:"BrtBeginPCDHGLevel", f:parsenoop },
    0x01B6: { n:"BrtEndPCDHGLevel", f:parsenoop },
    0x01B7: { n:"BrtBeginPCDHGLGroups", f:parsenoop },
    0x01B8: { n:"BrtEndPCDHGLGroups", f:parsenoop },
    0x01B9: { n:"BrtBeginPCDHGLGroup", f:parsenoop },
    0x01BA: { n:"BrtEndPCDHGLGroup", f:parsenoop },
    0x01BB: { n:"BrtBeginPCDHGLGMembers", f:parsenoop },
    0x01BC: { n:"BrtEndPCDHGLGMembers", f:parsenoop },
    0x01BD: { n:"BrtBeginPCDHGLGMember", f:parsenoop },
    0x01BE: { n:"BrtEndPCDHGLGMember", f:parsenoop },
    0x01BF: { n:"BrtBeginQSI", f:parsenoop },
    0x01C0: { n:"BrtEndQSI", f:parsenoop },
    0x01C1: { n:"BrtBeginQSIR", f:parsenoop },
    0x01C2: { n:"BrtEndQSIR", f:parsenoop },
    0x01C3: { n:"BrtBeginDeletedNames", f:parsenoop },
    0x01C4: { n:"BrtEndDeletedNames", f:parsenoop },
    0x01C5: { n:"BrtBeginDeletedName", f:parsenoop },
    0x01C6: { n:"BrtEndDeletedName", f:parsenoop },
    0x01C7: { n:"BrtBeginQSIFs", f:parsenoop },
    0x01C8: { n:"BrtEndQSIFs", f:parsenoop },
    0x01C9: { n:"BrtBeginQSIF", f:parsenoop },
    0x01CA: { n:"BrtEndQSIF", f:parsenoop },
    0x01CB: { n:"BrtBeginAutoSortScope", f:parsenoop },
    0x01CC: { n:"BrtEndAutoSortScope", f:parsenoop },
    0x01CD: { n:"BrtBeginConditionalFormatting", f:parsenoop },
    0x01CE: { n:"BrtEndConditionalFormatting", f:parsenoop },
    0x01CF: { n:"BrtBeginCFRule", f:parsenoop },
    0x01D0: { n:"BrtEndCFRule", f:parsenoop },
    0x01D1: { n:"BrtBeginIconSet", f:parsenoop },
    0x01D2: { n:"BrtEndIconSet", f:parsenoop },
    0x01D3: { n:"BrtBeginDatabar", f:parsenoop },
    0x01D4: { n:"BrtEndDatabar", f:parsenoop },
    0x01D5: { n:"BrtBeginColorScale", f:parsenoop },
    0x01D6: { n:"BrtEndColorScale", f:parsenoop },
    0x01D7: { n:"BrtCFVO", f:parsenoop },
    0x01D8: { n:"BrtExternValueMeta", f:parsenoop },
    0x01D9: { n:"BrtBeginColorPalette", f:parsenoop },
    0x01DA: { n:"BrtEndColorPalette", f:parsenoop },
    0x01DB: { n:"BrtIndexedColor", f:parsenoop },
    0x01DC: { n:"BrtMargins", f:parsenoop },
    0x01DD: { n:"BrtPrintOptions", f:parsenoop },
    0x01DE: { n:"BrtPageSetup", f:parsenoop },
    0x01DF: { n:"BrtBeginHeaderFooter", f:parsenoop },
    0x01E0: { n:"BrtEndHeaderFooter", f:parsenoop },
    0x01E1: { n:"BrtBeginSXCrtFormat", f:parsenoop },
    0x01E2: { n:"BrtEndSXCrtFormat", f:parsenoop },
    0x01E3: { n:"BrtBeginSXCrtFormats", f:parsenoop },
    0x01E4: { n:"BrtEndSXCrtFormats", f:parsenoop },
    0x01E5: { n:"BrtWsFmtInfo", f:parsenoop },
    0x01E6: { n:"BrtBeginMgs", f:parsenoop },
    0x01E7: { n:"BrtEndMGs", f:parsenoop },
    0x01E8: { n:"BrtBeginMGMaps", f:parsenoop },
    0x01E9: { n:"BrtEndMGMaps", f:parsenoop },
    0x01EA: { n:"BrtBeginMG", f:parsenoop },
    0x01EB: { n:"BrtEndMG", f:parsenoop },
    0x01EC: { n:"BrtBeginMap", f:parsenoop },
    0x01ED: { n:"BrtEndMap", f:parsenoop },
    0x01EE: { n:"BrtHLink", f:parse_BrtHLink },
    0x01EF: { n:"BrtBeginDCon", f:parsenoop },
    0x01F0: { n:"BrtEndDCon", f:parsenoop },
    0x01F1: { n:"BrtBeginDRefs", f:parsenoop },
    0x01F2: { n:"BrtEndDRefs", f:parsenoop },
    0x01F3: { n:"BrtDRef", f:parsenoop },
    0x01F4: { n:"BrtBeginScenMan", f:parsenoop },
    0x01F5: { n:"BrtEndScenMan", f:parsenoop },
    0x01F6: { n:"BrtBeginSct", f:parsenoop },
    0x01F7: { n:"BrtEndSct", f:parsenoop },
    0x01F8: { n:"BrtSlc", f:parsenoop },
    0x01F9: { n:"BrtBeginDXFs", f:parsenoop },
    0x01FA: { n:"BrtEndDXFs", f:parsenoop },
    0x01FB: { n:"BrtDXF", f:parsenoop },
    0x01FC: { n:"BrtBeginTableStyles", f:parsenoop },
    0x01FD: { n:"BrtEndTableStyles", f:parsenoop },
    0x01FE: { n:"BrtBeginTableStyle", f:parsenoop },
    0x01FF: { n:"BrtEndTableStyle", f:parsenoop },
    0x0200: { n:"BrtTableStyleElement", f:parsenoop },
    0x0201: { n:"BrtTableStyleClient", f:parsenoop },
    0x0202: { n:"BrtBeginVolDeps", f:parsenoop },
    0x0203: { n:"BrtEndVolDeps", f:parsenoop },
    0x0204: { n:"BrtBeginVolType", f:parsenoop },
    0x0205: { n:"BrtEndVolType", f:parsenoop },
    0x0206: { n:"BrtBeginVolMain", f:parsenoop },
    0x0207: { n:"BrtEndVolMain", f:parsenoop },
    0x0208: { n:"BrtBeginVolTopic", f:parsenoop },
    0x0209: { n:"BrtEndVolTopic", f:parsenoop },
    0x020A: { n:"BrtVolSubtopic", f:parsenoop },
    0x020B: { n:"BrtVolRef", f:parsenoop },
    0x020C: { n:"BrtVolNum", f:parsenoop },
    0x020D: { n:"BrtVolErr", f:parsenoop },
    0x020E: { n:"BrtVolStr", f:parsenoop },
    0x020F: { n:"BrtVolBool", f:parsenoop },
    0x0210: { n:"BrtBeginCalcChain$", f:parsenoop },
    0x0211: { n:"BrtEndCalcChain$", f:parsenoop },
    0x0212: { n:"BrtBeginSortState", f:parsenoop },
    0x0213: { n:"BrtEndSortState", f:parsenoop },
    0x0214: { n:"BrtBeginSortCond", f:parsenoop },
    0x0215: { n:"BrtEndSortCond", f:parsenoop },
    0x0216: { n:"BrtBookProtection", f:parsenoop },
    0x0217: { n:"BrtSheetProtection", f:parsenoop },
    0x0218: { n:"BrtRangeProtection", f:parsenoop },
    0x0219: { n:"BrtPhoneticInfo", f:parsenoop },
    0x021A: { n:"BrtBeginECTxtWiz", f:parsenoop },
    0x021B: { n:"BrtEndECTxtWiz", f:parsenoop },
    0x021C: { n:"BrtBeginECTWFldInfoLst", f:parsenoop },
    0x021D: { n:"BrtEndECTWFldInfoLst", f:parsenoop },
    0x021E: { n:"BrtBeginECTwFldInfo", f:parsenoop },
    0x0224: { n:"BrtFileSharing", f:parsenoop },
    0x0225: { n:"BrtOleSize", f:parsenoop },
    0x0226: { n:"BrtDrawing", f:parsenoop },
    0x0227: { n:"BrtLegacyDrawing", f:parsenoop },
    0x0228: { n:"BrtLegacyDrawingHF", f:parsenoop },
    0x0229: { n:"BrtWebOpt", f:parsenoop },
    0x022A: { n:"BrtBeginWebPubItems", f:parsenoop },
    0x022B: { n:"BrtEndWebPubItems", f:parsenoop },
    0x022C: { n:"BrtBeginWebPubItem", f:parsenoop },
    0x022D: { n:"BrtEndWebPubItem", f:parsenoop },
    0x022E: { n:"BrtBeginSXCondFmt", f:parsenoop },
    0x022F: { n:"BrtEndSXCondFmt", f:parsenoop },
    0x0230: { n:"BrtBeginSXCondFmts", f:parsenoop },
    0x0231: { n:"BrtEndSXCondFmts", f:parsenoop },
    0x0232: { n:"BrtBkHim", f:parsenoop },
    0x0234: { n:"BrtColor", f:parsenoop },
    0x0235: { n:"BrtBeginIndexedColors", f:parsenoop },
    0x0236: { n:"BrtEndIndexedColors", f:parsenoop },
    0x0239: { n:"BrtBeginMRUColors", f:parsenoop },
    0x023A: { n:"BrtEndMRUColors", f:parsenoop },
    0x023C: { n:"BrtMRUColor", f:parsenoop },
    0x023D: { n:"BrtBeginDVals", f:parsenoop },
    0x023E: { n:"BrtEndDVals", f:parsenoop },
    0x0241: { n:"BrtSupNameStart", f:parsenoop },
    0x0242: { n:"BrtSupNameValueStart", f:parsenoop },
    0x0243: { n:"BrtSupNameValueEnd", f:parsenoop },
    0x0244: { n:"BrtSupNameNum", f:parsenoop },
    0x0245: { n:"BrtSupNameErr", f:parsenoop },
    0x0246: { n:"BrtSupNameSt", f:parsenoop },
    0x0247: { n:"BrtSupNameNil", f:parsenoop },
    0x0248: { n:"BrtSupNameBool", f:parsenoop },
    0x0249: { n:"BrtSupNameFmla", f:parsenoop },
    0x024A: { n:"BrtSupNameBits", f:parsenoop },
    0x024B: { n:"BrtSupNameEnd", f:parsenoop },
    0x024C: { n:"BrtEndSupBook", f:parsenoop },
    0x024D: { n:"BrtCellSmartTagProperty", f:parsenoop },
    0x024E: { n:"BrtBeginCellSmartTag", f:parsenoop },
    0x024F: { n:"BrtEndCellSmartTag", f:parsenoop },
    0x0250: { n:"BrtBeginCellSmartTags", f:parsenoop },
    0x0251: { n:"BrtEndCellSmartTags", f:parsenoop },
    0x0252: { n:"BrtBeginSmartTags", f:parsenoop },
    0x0253: { n:"BrtEndSmartTags", f:parsenoop },
    0x0254: { n:"BrtSmartTagType", f:parsenoop },
    0x0255: { n:"BrtBeginSmartTagTypes", f:parsenoop },
    0x0256: { n:"BrtEndSmartTagTypes", f:parsenoop },
    0x0257: { n:"BrtBeginSXFilters", f:parsenoop },
    0x0258: { n:"BrtEndSXFilters", f:parsenoop },
    0x0259: { n:"BrtBeginSXFILTER", f:parsenoop },
    0x025A: { n:"BrtEndSXFilter", f:parsenoop },
    0x025B: { n:"BrtBeginFills", f:parsenoop },
    0x025C: { n:"BrtEndFills", f:parsenoop },
    0x025D: { n:"BrtBeginCellWatches", f:parsenoop },
    0x025E: { n:"BrtEndCellWatches", f:parsenoop },
    0x025F: { n:"BrtCellWatch", f:parsenoop },
    0x0260: { n:"BrtBeginCRErrs", f:parsenoop },
    0x0261: { n:"BrtEndCRErrs", f:parsenoop },
    0x0262: { n:"BrtCrashRecErr", f:parsenoop },
    0x0263: { n:"BrtBeginFonts", f:parsenoop },
    0x0264: { n:"BrtEndFonts", f:parsenoop },
    0x0265: { n:"BrtBeginBorders", f:parsenoop },
    0x0266: { n:"BrtEndBorders", f:parsenoop },
    0x0267: { n:"BrtBeginFmts", f:parsenoop },
    0x0268: { n:"BrtEndFmts", f:parsenoop },
    0x0269: { n:"BrtBeginCellXFs", f:parsenoop },
    0x026A: { n:"BrtEndCellXFs", f:parsenoop },
    0x026B: { n:"BrtBeginStyles", f:parsenoop },
    0x026C: { n:"BrtEndStyles", f:parsenoop },
    0x0271: { n:"BrtBigName", f:parsenoop },
    0x0272: { n:"BrtBeginCellStyleXFs", f:parsenoop },
    0x0273: { n:"BrtEndCellStyleXFs", f:parsenoop },
    0x0274: { n:"BrtBeginComments", f:parsenoop },
    0x0275: { n:"BrtEndComments", f:parsenoop },
    0x0276: { n:"BrtBeginCommentAuthors", f:parsenoop },
    0x0277: { n:"BrtEndCommentAuthors", f:parsenoop },
    0x0278: { n:"BrtCommentAuthor", f:parse_BrtCommentAuthor },
    0x0279: { n:"BrtBeginCommentList", f:parsenoop },
    0x027A: { n:"BrtEndCommentList", f:parsenoop },
    0x027B: { n:"BrtBeginComment", f:parse_BrtBeginComment},
    0x027C: { n:"BrtEndComment", f:parsenoop },
    0x027D: { n:"BrtCommentText", f:parse_BrtCommentText },
    0x027E: { n:"BrtBeginOleObjects", f:parsenoop },
    0x027F: { n:"BrtOleObject", f:parsenoop },
    0x0280: { n:"BrtEndOleObjects", f:parsenoop },
    0x0281: { n:"BrtBeginSxrules", f:parsenoop },
    0x0282: { n:"BrtEndSxRules", f:parsenoop },
    0x0283: { n:"BrtBeginActiveXControls", f:parsenoop },
    0x0284: { n:"BrtActiveX", f:parsenoop },
    0x0285: { n:"BrtEndActiveXControls", f:parsenoop },
    0x0286: { n:"BrtBeginPCDSDTCEMembersSortBy", f:parsenoop },
    0x0288: { n:"BrtBeginCellIgnoreECs", f:parsenoop },
    0x0289: { n:"BrtCellIgnoreEC", f:parsenoop },
    0x028A: { n:"BrtEndCellIgnoreECs", f:parsenoop },
    0x028B: { n:"BrtCsProp", f:parsenoop },
    0x028C: { n:"BrtCsPageSetup", f:parsenoop },
    0x028D: { n:"BrtBeginUserCsViews", f:parsenoop },
    0x028E: { n:"BrtEndUserCsViews", f:parsenoop },
    0x028F: { n:"BrtBeginUserCsView", f:parsenoop },
    0x0290: { n:"BrtEndUserCsView", f:parsenoop },
    0x0291: { n:"BrtBeginPcdSFCIEntries", f:parsenoop },
    0x0292: { n:"BrtEndPCDSFCIEntries", f:parsenoop },
    0x0293: { n:"BrtPCDSFCIEntry", f:parsenoop },
    0x0294: { n:"BrtBeginListParts", f:parsenoop },
    0x0295: { n:"BrtListPart", f:parsenoop },
    0x0296: { n:"BrtEndListParts", f:parsenoop },
    0x0297: { n:"BrtSheetCalcProp", f:parsenoop },
    0x0298: { n:"BrtBeginFnGroup", f:parsenoop },
    0x0299: { n:"BrtFnGroup", f:parsenoop },
    0x029A: { n:"BrtEndFnGroup", f:parsenoop },
    0x029B: { n:"BrtSupAddin", f:parsenoop },
    0x029C: { n:"BrtSXTDMPOrder", f:parsenoop },
    0x029D: { n:"BrtCsProtection", f:parsenoop },
    0x029F: { n:"BrtBeginWsSortMap", f:parsenoop },
    0x02A0: { n:"BrtEndWsSortMap", f:parsenoop },
    0x02A1: { n:"BrtBeginRRSort", f:parsenoop },
    0x02A2: { n:"BrtEndRRSort", f:parsenoop },
    0x02A3: { n:"BrtRRSortItem", f:parsenoop },
    0x02A4: { n:"BrtFileSharingIso", f:parsenoop },
    0x02A5: { n:"BrtBookProtectionIso", f:parsenoop },
    0x02A6: { n:"BrtSheetProtectionIso", f:parsenoop },
    0x02A7: { n:"BrtCsProtectionIso", f:parsenoop },
    0x02A8: { n:"BrtRangeProtectionIso", f:parsenoop },
    0x0400: { n:"BrtRwDescent", f:parsenoop },
    0x0401: { n:"BrtKnownFonts", f:parsenoop },
    0x0402: { n:"BrtBeginSXTupleSet", f:parsenoop },
    0x0403: { n:"BrtEndSXTupleSet", f:parsenoop },
    0x0404: { n:"BrtBeginSXTupleSetHeader", f:parsenoop },
    0x0405: { n:"BrtEndSXTupleSetHeader", f:parsenoop },
    0x0406: { n:"BrtSXTupleSetHeaderItem", f:parsenoop },
    0x0407: { n:"BrtBeginSXTupleSetData", f:parsenoop },
    0x0408: { n:"BrtEndSXTupleSetData", f:parsenoop },
    0x0409: { n:"BrtBeginSXTupleSetRow", f:parsenoop },
    0x040A: { n:"BrtEndSXTupleSetRow", f:parsenoop },
    0x040B: { n:"BrtSXTupleSetRowItem", f:parsenoop },
    0x040C: { n:"BrtNameExt", f:parsenoop },
    0x040D: { n:"BrtPCDH14", f:parsenoop },
    0x040E: { n:"BrtBeginPCDCalcMem14", f:parsenoop },
    0x040F: { n:"BrtEndPCDCalcMem14", f:parsenoop },
    0x0410: { n:"BrtSXTH14", f:parsenoop },
    0x0411: { n:"BrtBeginSparklineGroup", f:parsenoop },
    0x0412: { n:"BrtEndSparklineGroup", f:parsenoop },
    0x0413: { n:"BrtSparkline", f:parsenoop },
    0x0414: { n:"BrtSXDI14", f:parsenoop },
    0x0415: { n:"BrtWsFmtInfoEx14", f:parsenoop },
    0x0416: { n:"BrtBeginConditionalFormatting14", f:parsenoop },
    0x0417: { n:"BrtEndConditionalFormatting14", f:parsenoop },
    0x0418: { n:"BrtBeginCFRule14", f:parsenoop },
    0x0419: { n:"BrtEndCFRule14", f:parsenoop },
    0x041A: { n:"BrtCFVO14", f:parsenoop },
    0x041B: { n:"BrtBeginDatabar14", f:parsenoop },
    0x041C: { n:"BrtBeginIconSet14", f:parsenoop },
    0x041D: { n:"BrtDVal14", f:parsenoop },
    0x041E: { n:"BrtBeginDVals14", f:parsenoop },
    0x041F: { n:"BrtColor14", f:parsenoop },
    0x0420: { n:"BrtBeginSparklines", f:parsenoop },
    0x0421: { n:"BrtEndSparklines", f:parsenoop },
    0x0422: { n:"BrtBeginSparklineGroups", f:parsenoop },
    0x0423: { n:"BrtEndSparklineGroups", f:parsenoop },
    0x0425: { n:"BrtSXVD14", f:parsenoop },
    0x0426: { n:"BrtBeginSxview14", f:parsenoop },
    0x0427: { n:"BrtEndSxview14", f:parsenoop },
    0x042A: { n:"BrtBeginPCD14", f:parsenoop },
    0x042B: { n:"BrtEndPCD14", f:parsenoop },
    0x042C: { n:"BrtBeginExtConn14", f:parsenoop },
    0x042D: { n:"BrtEndExtConn14", f:parsenoop },
    0x042E: { n:"BrtBeginSlicerCacheIDs", f:parsenoop },
    0x042F: { n:"BrtEndSlicerCacheIDs", f:parsenoop },
    0x0430: { n:"BrtBeginSlicerCacheID", f:parsenoop },
    0x0431: { n:"BrtEndSlicerCacheID", f:parsenoop },
    0x0433: { n:"BrtBeginSlicerCache", f:parsenoop },
    0x0434: { n:"BrtEndSlicerCache", f:parsenoop },
    0x0435: { n:"BrtBeginSlicerCacheDef", f:parsenoop },
    0x0436: { n:"BrtEndSlicerCacheDef", f:parsenoop },
    0x0437: { n:"BrtBeginSlicersEx", f:parsenoop },
    0x0438: { n:"BrtEndSlicersEx", f:parsenoop },
    0x0439: { n:"BrtBeginSlicerEx", f:parsenoop },
    0x043A: { n:"BrtEndSlicerEx", f:parsenoop },
    0x043B: { n:"BrtBeginSlicer", f:parsenoop },
    0x043C: { n:"BrtEndSlicer", f:parsenoop },
    0x043D: { n:"BrtSlicerCachePivotTables", f:parsenoop },
    0x043E: { n:"BrtBeginSlicerCacheOlapImpl", f:parsenoop },
    0x043F: { n:"BrtEndSlicerCacheOlapImpl", f:parsenoop },
    0x0440: { n:"BrtBeginSlicerCacheLevelsData", f:parsenoop },
    0x0441: { n:"BrtEndSlicerCacheLevelsData", f:parsenoop },
    0x0442: { n:"BrtBeginSlicerCacheLevelData", f:parsenoop },
    0x0443: { n:"BrtEndSlicerCacheLevelData", f:parsenoop },
    0x0444: { n:"BrtBeginSlicerCacheSiRanges", f:parsenoop },
    0x0445: { n:"BrtEndSlicerCacheSiRanges", f:parsenoop },
    0x0446: { n:"BrtBeginSlicerCacheSiRange", f:parsenoop },
    0x0447: { n:"BrtEndSlicerCacheSiRange", f:parsenoop },
    0x0448: { n:"BrtSlicerCacheOlapItem", f:parsenoop },
    0x0449: { n:"BrtBeginSlicerCacheSelections", f:parsenoop },
    0x044A: { n:"BrtSlicerCacheSelection", f:parsenoop },
    0x044B: { n:"BrtEndSlicerCacheSelections", f:parsenoop },
    0x044C: { n:"BrtBeginSlicerCacheNative", f:parsenoop },
    0x044D: { n:"BrtEndSlicerCacheNative", f:parsenoop },
    0x044E: { n:"BrtSlicerCacheNativeItem", f:parsenoop },
    0x044F: { n:"BrtRangeProtection14", f:parsenoop },
    0x0450: { n:"BrtRangeProtectionIso14", f:parsenoop },
    0x0451: { n:"BrtCellIgnoreEC14", f:parsenoop },
    0x0457: { n:"BrtList14", f:parsenoop },
    0x0458: { n:"BrtCFIcon", f:parsenoop },
    0x0459: { n:"BrtBeginSlicerCachesPivotCacheIDs", f:parsenoop },
    0x045A: { n:"BrtEndSlicerCachesPivotCacheIDs", f:parsenoop },
    0x045B: { n:"BrtBeginSlicers", f:parsenoop },
    0x045C: { n:"BrtEndSlicers", f:parsenoop },
    0x045D: { n:"BrtWbProp14", f:parsenoop },
    0x045E: { n:"BrtBeginSXEdit", f:parsenoop },
    0x045F: { n:"BrtEndSXEdit", f:parsenoop },
    0x0460: { n:"BrtBeginSXEdits", f:parsenoop },
    0x0461: { n:"BrtEndSXEdits", f:parsenoop },
    0x0462: { n:"BrtBeginSXChange", f:parsenoop },
    0x0463: { n:"BrtEndSXChange", f:parsenoop },
    0x0464: { n:"BrtBeginSXChanges", f:parsenoop },
    0x0465: { n:"BrtEndSXChanges", f:parsenoop },
    0x0466: { n:"BrtSXTupleItems", f:parsenoop },
    0x0468: { n:"BrtBeginSlicerStyle", f:parsenoop },
    0x0469: { n:"BrtEndSlicerStyle", f:parsenoop },
    0x046A: { n:"BrtSlicerStyleElement", f:parsenoop },
    0x046B: { n:"BrtBeginStyleSheetExt14", f:parsenoop },
    0x046C: { n:"BrtEndStyleSheetExt14", f:parsenoop },
    0x046D: { n:"BrtBeginSlicerCachesPivotCacheID", f:parsenoop },
    0x046E: { n:"BrtEndSlicerCachesPivotCacheID", f:parsenoop },
    0x046F: { n:"BrtBeginConditionalFormattings", f:parsenoop },
    0x0470: { n:"BrtEndConditionalFormattings", f:parsenoop },
    0x0471: { n:"BrtBeginPCDCalcMemExt", f:parsenoop },
    0x0472: { n:"BrtEndPCDCalcMemExt", f:parsenoop },
    0x0473: { n:"BrtBeginPCDCalcMemsExt", f:parsenoop },
    0x0474: { n:"BrtEndPCDCalcMemsExt", f:parsenoop },
    0x0475: { n:"BrtPCDField14", f:parsenoop },
    0x0476: { n:"BrtBeginSlicerStyles", f:parsenoop },
    0x0477: { n:"BrtEndSlicerStyles", f:parsenoop },
    0x0478: { n:"BrtBeginSlicerStyleElements", f:parsenoop },
    0x0479: { n:"BrtEndSlicerStyleElements", f:parsenoop },
    0x047A: { n:"BrtCFRuleExt", f:parsenoop },
    0x047B: { n:"BrtBeginSXCondFmt14", f:parsenoop },
    0x047C: { n:"BrtEndSXCondFmt14", f:parsenoop },
    0x047D: { n:"BrtBeginSXCondFmts14", f:parsenoop },
    0x047E: { n:"BrtEndSXCondFmts14", f:parsenoop },
    0x0480: { n:"BrtBeginSortCond14", f:parsenoop },
    0x0481: { n:"BrtEndSortCond14", f:parsenoop },
    0x0482: { n:"BrtEndDVals14", f:parsenoop },
    0x0483: { n:"BrtEndIconSet14", f:parsenoop },
    0x0484: { n:"BrtEndDatabar14", f:parsenoop },
    0x0485: { n:"BrtBeginColorScale14", f:parsenoop },
    0x0486: { n:"BrtEndColorScale14", f:parsenoop },
    0x0487: { n:"BrtBeginSxrules14", f:parsenoop },
    0x0488: { n:"BrtEndSxrules14", f:parsenoop },
    0x0489: { n:"BrtBeginPRule14", f:parsenoop },
    0x048A: { n:"BrtEndPRule14", f:parsenoop },
    0x048B: { n:"BrtBeginPRFilters14", f:parsenoop },
    0x048C: { n:"BrtEndPRFilters14", f:parsenoop },
    0x048D: { n:"BrtBeginPRFilter14", f:parsenoop },
    0x048E: { n:"BrtEndPRFilter14", f:parsenoop },
    0x048F: { n:"BrtBeginPRFItem14", f:parsenoop },
    0x0490: { n:"BrtEndPRFItem14", f:parsenoop },
    0x0491: { n:"BrtBeginCellIgnoreECs14", f:parsenoop },
    0x0492: { n:"BrtEndCellIgnoreECs14", f:parsenoop },
    0x0493: { n:"BrtDxf14", f:parsenoop },
    0x0494: { n:"BrtBeginDxF14s", f:parsenoop },
    0x0495: { n:"BrtEndDxf14s", f:parsenoop },
    0x0499: { n:"BrtFilter14", f:parsenoop },
    0x049A: { n:"BrtBeginCustomFilters14", f:parsenoop },
    0x049C: { n:"BrtCustomFilter14", f:parsenoop },
    0x049D: { n:"BrtIconFilter14", f:parsenoop },
    0x049E: { n:"BrtPivotCacheConnectionName", f:parsenoop },
    0x0800: { n:"BrtBeginDecoupledPivotCacheIDs", f:parsenoop },
    0x0801: { n:"BrtEndDecoupledPivotCacheIDs", f:parsenoop },
    0x0802: { n:"BrtDecoupledPivotCacheID", f:parsenoop },
    0x0803: { n:"BrtBeginPivotTableRefs", f:parsenoop },
    0x0804: { n:"BrtEndPivotTableRefs", f:parsenoop },
    0x0805: { n:"BrtPivotTableRef", f:parsenoop },
    0x0806: { n:"BrtSlicerCacheBookPivotTables", f:parsenoop },
    0x0807: { n:"BrtBeginSxvcells", f:parsenoop },
    0x0808: { n:"BrtEndSxvcells", f:parsenoop },
    0x0809: { n:"BrtBeginSxRow", f:parsenoop },
    0x080A: { n:"BrtEndSxRow", f:parsenoop },
    0x080C: { n:"BrtPcdCalcMem15", f:parsenoop },
    0x0813: { n:"BrtQsi15", f:parsenoop },
    0x0814: { n:"BrtBeginWebExtensions", f:parsenoop },
    0x0815: { n:"BrtEndWebExtensions", f:parsenoop },
    0x0816: { n:"BrtWebExtension", f:parsenoop },
    0x0817: { n:"BrtAbsPath15", f:parsenoop },
    0x0818: { n:"BrtBeginPivotTableUISettings", f:parsenoop },
    0x0819: { n:"BrtEndPivotTableUISettings", f:parsenoop },
    0x081B: { n:"BrtTableSlicerCacheIDs", f:parsenoop },
    0x081C: { n:"BrtTableSlicerCacheID", f:parsenoop },
    0x081D: { n:"BrtBeginTableSlicerCache", f:parsenoop },
    0x081E: { n:"BrtEndTableSlicerCache", f:parsenoop },
    0x081F: { n:"BrtSxFilter15", f:parsenoop },
    0x0820: { n:"BrtBeginTimelineCachePivotCacheIDs", f:parsenoop },
    0x0821: { n:"BrtEndTimelineCachePivotCacheIDs", f:parsenoop },
    0x0822: { n:"BrtTimelineCachePivotCacheID", f:parsenoop },
    0x0823: { n:"BrtBeginTimelineCacheIDs", f:parsenoop },
    0x0824: { n:"BrtEndTimelineCacheIDs", f:parsenoop },
    0x0825: { n:"BrtBeginTimelineCacheID", f:parsenoop },
    0x0826: { n:"BrtEndTimelineCacheID", f:parsenoop },
    0x0827: { n:"BrtBeginTimelinesEx", f:parsenoop },
    0x0828: { n:"BrtEndTimelinesEx", f:parsenoop },
    0x0829: { n:"BrtBeginTimelineEx", f:parsenoop },
    0x082A: { n:"BrtEndTimelineEx", f:parsenoop },
    0x082B: { n:"BrtWorkBookPr15", f:parsenoop },
    0x082C: { n:"BrtPCDH15", f:parsenoop },
    0x082D: { n:"BrtBeginTimelineStyle", f:parsenoop },
    0x082E: { n:"BrtEndTimelineStyle", f:parsenoop },
    0x082F: { n:"BrtTimelineStyleElement", f:parsenoop },
    0x0830: { n:"BrtBeginTimelineStylesheetExt15", f:parsenoop },
    0x0831: { n:"BrtEndTimelineStylesheetExt15", f:parsenoop },
    0x0832: { n:"BrtBeginTimelineStyles", f:parsenoop },
    0x0833: { n:"BrtEndTimelineStyles", f:parsenoop },
    0x0834: { n:"BrtBeginTimelineStyleElements", f:parsenoop },
    0x0835: { n:"BrtEndTimelineStyleElements", f:parsenoop },
    0x0836: { n:"BrtDxf15", f:parsenoop },
    0x0837: { n:"BrtBeginDxfs15", f:parsenoop },
    0x0838: { n:"brtEndDxfs15", f:parsenoop },
    0x0839: { n:"BrtSlicerCacheHideItemsWithNoData", f:parsenoop },
    0x083A: { n:"BrtBeginItemUniqueNames", f:parsenoop },
    0x083B: { n:"BrtEndItemUniqueNames", f:parsenoop },
    0x083C: { n:"BrtItemUniqueName", f:parsenoop },
    0x083D: { n:"BrtBeginExtConn15", f:parsenoop },
    0x083E: { n:"BrtEndExtConn15", f:parsenoop },
    0x083F: { n:"BrtBeginOledbPr15", f:parsenoop },
    0x0840: { n:"BrtEndOledbPr15", f:parsenoop },
    0x0841: { n:"BrtBeginDataFeedPr15", f:parsenoop },
    0x0842: { n:"BrtEndDataFeedPr15", f:parsenoop },
    0x0843: { n:"BrtTextPr15", f:parsenoop },
    0x0844: { n:"BrtRangePr15", f:parsenoop },
    0x0845: { n:"BrtDbCommand15", f:parsenoop },
    0x0846: { n:"BrtBeginDbTables15", f:parsenoop },
    0x0847: { n:"BrtEndDbTables15", f:parsenoop },
    0x0848: { n:"BrtDbTable15", f:parsenoop },
    0x0849: { n:"BrtBeginDataModel", f:parsenoop },
    0x084A: { n:"BrtEndDataModel", f:parsenoop },
    0x084B: { n:"BrtBeginModelTables", f:parsenoop },
    0x084C: { n:"BrtEndModelTables", f:parsenoop },
    0x084D: { n:"BrtModelTable", f:parsenoop },
    0x084E: { n:"BrtBeginModelRelationships", f:parsenoop },
    0x084F: { n:"BrtEndModelRelationships", f:parsenoop },
    0x0850: { n:"BrtModelRelationship", f:parsenoop },
    0x0851: { n:"BrtBeginECTxtWiz15", f:parsenoop },
    0x0852: { n:"BrtEndECTxtWiz15", f:parsenoop },
    0x0853: { n:"BrtBeginECTWFldInfoLst15", f:parsenoop },
    0x0854: { n:"BrtEndECTWFldInfoLst15", f:parsenoop },
    0x0855: { n:"BrtBeginECTWFldInfo15", f:parsenoop },
    0x0856: { n:"BrtFieldListActiveItem", f:parsenoop },
    0x0857: { n:"BrtPivotCacheIdVersion", f:parsenoop },
    0x0858: { n:"BrtSXDI15", f:parsenoop },
    0xFFFF: { n:"", f:parsenoop }
};
var evert_RE = evert_key(XLSBRecordEnum, 'n');
/* [MS-XLS] 2.3 Record Enumeration */
var XLSRecordEnum = {
    0x0003: { n:"BIFF2NUM", f:parse_BIFF2NUM },
    0x0004: { n:"BIFF2STR", f:parse_BIFF2STR },
    0x0006: { n:"Formula", f:parse_Formula },
    0x0009: { n:'BOF', f:parse_BOF },
    0x000a: { n:'EOF', f:parse_EOF },
    0x000c: { n:"CalcCount", f:parse_CalcCount },
    0x000d: { n:"CalcMode", f:parse_CalcMode },
    0x000e: { n:"CalcPrecision", f:parse_CalcPrecision },
    0x000f: { n:"CalcRefMode", f:parse_CalcRefMode },
    0x0010: { n:"CalcDelta", f:parse_CalcDelta },
    0x0011: { n:"CalcIter", f:parse_CalcIter },
    0x0012: { n:"Protect", f:parse_Protect },
    0x0013: { n:"Password", f:parse_Password },
    0x0014: { n:"Header", f:parse_Header },
    0x0015: { n:"Footer", f:parse_Footer },
    0x0017: { n:"ExternSheet", f:parse_ExternSheet },
    0x0018: { n:"Lbl", f:parse_Lbl },
    0x0019: { n:"WinProtect", f:parse_WinProtect },
    0x001a: { n:"VerticalPageBreaks", f:parse_VerticalPageBreaks },
    0x001b: { n:"HorizontalPageBreaks", f:parse_HorizontalPageBreaks },
    0x001c: { n:"Note", f:parse_Note },
    0x001d: { n:"Selection", f:parse_Selection },
    0x0022: { n:"Date1904", f:parse_Date1904 },
    0x0023: { n:"ExternName", f:parse_ExternName },
    0x0026: { n:"LeftMargin", f:parse_LeftMargin },
    0x0027: { n:"RightMargin", f:parse_RightMargin },
    0x0028: { n:"TopMargin", f:parse_TopMargin },
    0x0029: { n:"BottomMargin", f:parse_BottomMargin },
    0x002a: { n:"PrintRowCol", f:parse_PrintRowCol },
    0x002b: { n:"PrintGrid", f:parse_PrintGrid },
    0x002f: { n:"FilePass", f:parse_FilePass },
    0x0031: { n:"Font", f:parse_Font },
    0x0033: { n:"PrintSize", f:parse_PrintSize },
    0x003c: { n:"Continue", f:parse_Continue },
    0x003d: { n:"Window1", f:parse_Window1 },
    0x0040: { n:"Backup", f:parse_Backup },
    0x0041: { n:"Pane", f:parse_Pane },
    0x0042: { n:'CodePage', f:parse_CodePage },
    0x004d: { n:"Pls", f:parse_Pls },
    0x0050: { n:"DCon", f:parse_DCon },
    0x0051: { n:"DConRef", f:parse_DConRef },
    0x0052: { n:"DConName", f:parse_DConName },
    0x0055: { n:"DefColWidth", f:parse_DefColWidth },
    0x0059: { n:"XCT", f:parse_XCT },
    0x005a: { n:"CRN", f:parse_CRN },
    0x005b: { n:"FileSharing", f:parse_FileSharing },
    0x005c: { n:'WriteAccess', f:parse_WriteAccess },
    0x005d: { n:"Obj", f:parse_Obj },
    0x005e: { n:"Uncalced", f:parse_Uncalced },
    0x005f: { n:"CalcSaveRecalc", f:parse_CalcSaveRecalc },
    0x0060: { n:"Template", f:parse_Template },
    0x0061: { n:"Intl", f:parse_Intl },
    0x0063: { n:"ObjProtect", f:parse_ObjProtect },
    0x007d: { n:"ColInfo", f:parse_ColInfo },
    0x0080: { n:"Guts", f:parse_Guts },
    0x0081: { n:"WsBool", f:parse_WsBool },
    0x0082: { n:"GridSet", f:parse_GridSet },
    0x0083: { n:"HCenter", f:parse_HCenter },
    0x0084: { n:"VCenter", f:parse_VCenter },
    0x0085: { n:'BoundSheet8', f:parse_BoundSheet8 },
    0x0086: { n:"WriteProtect", f:parse_WriteProtect },
    0x008c: { n:"Country", f:parse_Country },
    0x008d: { n:"HideObj", f:parse_HideObj },
    0x0090: { n:"Sort", f:parse_Sort },
    0x0092: { n:"Palette", f:parse_Palette },
    0x0097: { n:"Sync", f:parse_Sync },
    0x0098: { n:"LPr", f:parse_LPr },
    0x0099: { n:"DxGCol", f:parse_DxGCol },
    0x009a: { n:"FnGroupName", f:parse_FnGroupName },
    0x009b: { n:"FilterMode", f:parse_FilterMode },
    0x009c: { n:"BuiltInFnGroupCount", f:parse_BuiltInFnGroupCount },
    0x009d: { n:"AutoFilterInfo", f:parse_AutoFilterInfo },
    0x009e: { n:"AutoFilter", f:parse_AutoFilter },
    0x00a0: { n:"Scl", f:parse_Scl },
    0x00a1: { n:"Setup", f:parse_Setup },
    0x00ae: { n:"ScenMan", f:parse_ScenMan },
    0x00af: { n:"SCENARIO", f:parse_SCENARIO },
    0x00b0: { n:"SxView", f:parse_SxView },
    0x00b1: { n:"Sxvd", f:parse_Sxvd },
    0x00b2: { n:"SXVI", f:parse_SXVI },
    0x00b4: { n:"SxIvd", f:parse_SxIvd },
    0x00b5: { n:"SXLI", f:parse_SXLI },
    0x00b6: { n:"SXPI", f:parse_SXPI },
    0x00b8: { n:"DocRoute", f:parse_DocRoute },
    0x00b9: { n:"RecipName", f:parse_RecipName },
    0x00bd: { n:"MulRk", f:parse_MulRk },
    0x00be: { n:"MulBlank", f:parse_MulBlank },
    0x00c1: { n:'Mms', f:parse_Mms },
    0x00c5: { n:"SXDI", f:parse_SXDI },
    0x00c6: { n:"SXDB", f:parse_SXDB },
    0x00c7: { n:"SXFDB", f:parse_SXFDB },
    0x00c8: { n:"SXDBB", f:parse_SXDBB },
    0x00c9: { n:"SXNum", f:parse_SXNum },
    0x00ca: { n:"SxBool", f:parse_SxBool },
    0x00cb: { n:"SxErr", f:parse_SxErr },
    0x00cc: { n:"SXInt", f:parse_SXInt },
    0x00cd: { n:"SXString", f:parse_SXString },
    0x00ce: { n:"SXDtr", f:parse_SXDtr },
    0x00cf: { n:"SxNil", f:parse_SxNil },
    0x00d0: { n:"SXTbl", f:parse_SXTbl },
    0x00d1: { n:"SXTBRGIITM", f:parse_SXTBRGIITM },
    0x00d2: { n:"SxTbpg", f:parse_SxTbpg },
    0x00d3: { n:"ObProj", f:parse_ObProj },
    0x00d5: { n:"SXStreamID", f:parse_SXStreamID },
    0x00d7: { n:"DBCell", f:parse_DBCell },
    0x00d8: { n:"SXRng", f:parse_SXRng },
    0x00d9: { n:"SxIsxoper", f:parse_SxIsxoper },
    0x00da: { n:"BookBool", f:parse_BookBool },
    0x00dc: { n:"DbOrParamQry", f:parse_DbOrParamQry },
    0x00dd: { n:"ScenarioProtect", f:parse_ScenarioProtect },
    0x00de: { n:"OleObjectSize", f:parse_OleObjectSize },
    0x00e0: { n:"XF", f:parse_XF },
    0x00e1: { n:'InterfaceHdr', f:parse_InterfaceHdr },
    0x00e2: { n:'InterfaceEnd', f:parse_InterfaceEnd },
    0x00e3: { n:"SXVS", f:parse_SXVS },
    0x00e5: { n:"MergeCells", f:parse_MergeCells },
    0x00e9: { n:"BkHim", f:parse_BkHim },
    0x00eb: { n:"MsoDrawingGroup", f:parse_MsoDrawingGroup },
    0x00ec: { n:"MsoDrawing", f:parse_MsoDrawing },
    0x00ed: { n:"MsoDrawingSelection", f:parse_MsoDrawingSelection },
    0x00ef: { n:"PhoneticInfo", f:parse_PhoneticInfo },
    0x00f0: { n:"SxRule", f:parse_SxRule },
    0x00f1: { n:"SXEx", f:parse_SXEx },
    0x00f2: { n:"SxFilt", f:parse_SxFilt },
    0x00f4: { n:"SxDXF", f:parse_SxDXF },
    0x00f5: { n:"SxItm", f:parse_SxItm },
    0x00f6: { n:"SxName", f:parse_SxName },
    0x00f7: { n:"SxSelect", f:parse_SxSelect },
    0x00f8: { n:"SXPair", f:parse_SXPair },
    0x00f9: { n:"SxFmla", f:parse_SxFmla },
    0x00fb: { n:"SxFormat", f:parse_SxFormat },
    0x00fc: { n:"SST", f:parse_SST },
    0x00fd: { n:"LabelSst", f:parse_LabelSst },
    0x00ff: { n:"ExtSST", f:parse_ExtSST },
    0x0100: { n:"SXVDEx", f:parse_SXVDEx },
    0x0103: { n:"SXFormula", f:parse_SXFormula },
    0x0122: { n:"SXDBEx", f:parse_SXDBEx },
    0x0137: { n:"RRDInsDel", f:parse_RRDInsDel },
    0x0138: { n:"RRDHead", f:parse_RRDHead },
    0x013b: { n:"RRDChgCell", f:parse_RRDChgCell },
    0x013d: { n:"RRTabId", f:parse_RRTabId },
    0x013e: { n:"RRDRenSheet", f:parse_RRDRenSheet },
    0x013f: { n:"RRSort", f:parse_RRSort },
    0x0140: { n:"RRDMove", f:parse_RRDMove },
    0x014a: { n:"RRFormat", f:parse_RRFormat },
    0x014b: { n:"RRAutoFmt", f:parse_RRAutoFmt },
    0x014d: { n:"RRInsertSh", f:parse_RRInsertSh },
    0x014e: { n:"RRDMoveBegin", f:parse_RRDMoveBegin },
    0x014f: { n:"RRDMoveEnd", f:parse_RRDMoveEnd },
    0x0150: { n:"RRDInsDelBegin", f:parse_RRDInsDelBegin },
    0x0151: { n:"RRDInsDelEnd", f:parse_RRDInsDelEnd },
    0x0152: { n:"RRDConflict", f:parse_RRDConflict },
    0x0153: { n:"RRDDefName", f:parse_RRDDefName },
    0x0154: { n:"RRDRstEtxp", f:parse_RRDRstEtxp },
    0x015f: { n:"LRng", f:parse_LRng },
    0x0160: { n:"UsesELFs", f:parse_UsesELFs },
    0x0161: { n:"DSF", f:parse_DSF },
    0x0191: { n:"CUsr", f:parse_CUsr },
    0x0192: { n:"CbUsr", f:parse_CbUsr },
    0x0193: { n:"UsrInfo", f:parse_UsrInfo },
    0x0194: { n:"UsrExcl", f:parse_UsrExcl },
    0x0195: { n:"FileLock", f:parse_FileLock },
    0x0196: { n:"RRDInfo", f:parse_RRDInfo },
    0x0197: { n:"BCUsrs", f:parse_BCUsrs },
    0x0198: { n:"UsrChk", f:parse_UsrChk },
    0x01a9: { n:"UserBView", f:parse_UserBView },
    0x01aa: { n:"UserSViewBegin", f:parse_UserSViewBegin },
    0x01ab: { n:"UserSViewEnd", f:parse_UserSViewEnd },
    0x01ac: { n:"RRDUserView", f:parse_RRDUserView },
    0x01ad: { n:"Qsi", f:parse_Qsi },
    0x01ae: { n:"SupBook", f:parse_SupBook },
    0x01af: { n:"Prot4Rev", f:parse_Prot4Rev },
    0x01b0: { n:"CondFmt", f:parse_CondFmt },
    0x01b1: { n:"CF", f:parse_CF },
    0x01b2: { n:"DVal", f:parse_DVal },
    0x01b5: { n:"DConBin", f:parse_DConBin },
    0x01b6: { n:"TxO", f:parse_TxO },
    0x01b7: { n:"RefreshAll", f:parse_RefreshAll },
    0x01b8: { n:"HLink", f:parse_HLink },
    0x01b9: { n:"Lel", f:parse_Lel },
    0x01ba: { n:"CodeName", f:parse_XLSCodeName },
    0x01bb: { n:"SXFDBType", f:parse_SXFDBType },
    0x01bc: { n:"Prot4RevPass", f:parse_Prot4RevPass },
    0x01bd: { n:"ObNoMacros", f:parse_ObNoMacros },
    0x01be: { n:"Dv", f:parse_Dv },
    0x01c0: { n:"Excel9File", f:parse_Excel9File },
    0x01c1: { n:"RecalcId", f:parse_RecalcId, r:2},
    0x01c2: { n:"EntExU2", f:parse_EntExU2 },
    0x0200: { n:"Dimensions", f:parse_Dimensions },
    0x0201: { n:"Blank", f:parse_Blank },
    0x0203: { n:"Number", f:parse_Number },
    0x0204: { n:"Label", f:parse_Label },
    0x0205: { n:"BoolErr", f:parse_BoolErr },
    0x0207: { n:"String", f:parse_String },
    0x0208: { n:'Row', f:parse_Row },
    0x020b: { n:"Index", f:parse_Index },
    0x0221: { n:"Array", f:parse_Array },
    0x0225: { n:"DefaultRowHeight", f:parse_DefaultRowHeight },
    0x0236: { n:"Table", f:parse_Table },
    0x023e: { n:"Window2", f:parse_Window2 },
    0x027e: { n:"RK", f:parse_RK },
    0x0293: { n:"Style", f:parse_Style },
    0x0418: { n:"BigName", f:parse_BigName },
    0x041e: { n:"Format", f:parse_Format },
    0x043c: { n:"ContinueBigName", f:parse_ContinueBigName },
    0x04bc: { n:"ShrFmla", f:parse_ShrFmla },
    0x0800: { n:"HLinkTooltip", f:parse_HLinkTooltip },
    0x0801: { n:"WebPub", f:parse_WebPub },
    0x0802: { n:"QsiSXTag", f:parse_QsiSXTag },
    0x0803: { n:"DBQueryExt", f:parse_DBQueryExt },
    0x0804: { n:"ExtString", f:parse_ExtString },
    0x0805: { n:"TxtQry", f:parse_TxtQry },
    0x0806: { n:"Qsir", f:parse_Qsir },
    0x0807: { n:"Qsif", f:parse_Qsif },
    0x0808: { n:"RRDTQSIF", f:parse_RRDTQSIF },
    0x0809: { n:'BOF', f:parse_BOF },
    0x080a: { n:"OleDbConn", f:parse_OleDbConn },
    0x080b: { n:"WOpt", f:parse_WOpt },
    0x080c: { n:"SXViewEx", f:parse_SXViewEx },
    0x080d: { n:"SXTH", f:parse_SXTH },
    0x080e: { n:"SXPIEx", f:parse_SXPIEx },
    0x080f: { n:"SXVDTEx", f:parse_SXVDTEx },
    0x0810: { n:"SXViewEx9", f:parse_SXViewEx9 },
    0x0812: { n:"ContinueFrt", f:parse_ContinueFrt },
    0x0813: { n:"RealTimeData", f:parse_RealTimeData },
    0x0850: { n:"ChartFrtInfo", f:parse_ChartFrtInfo },
    0x0851: { n:"FrtWrapper", f:parse_FrtWrapper },
    0x0852: { n:"StartBlock", f:parse_StartBlock },
    0x0853: { n:"EndBlock", f:parse_EndBlock },
    0x0854: { n:"StartObject", f:parse_StartObject },
    0x0855: { n:"EndObject", f:parse_EndObject },
    0x0856: { n:"CatLab", f:parse_CatLab },
    0x0857: { n:"YMult", f:parse_YMult },
    0x0858: { n:"SXViewLink", f:parse_SXViewLink },
    0x0859: { n:"PivotChartBits", f:parse_PivotChartBits },
    0x085a: { n:"FrtFontList", f:parse_FrtFontList },
    0x0862: { n:"SheetExt", f:parse_SheetExt },
    0x0863: { n:"BookExt", f:parse_BookExt, r:12},
    0x0864: { n:"SXAddl", f:parse_SXAddl },
    0x0865: { n:"CrErr", f:parse_CrErr },
    0x0866: { n:"HFPicture", f:parse_HFPicture },
    0x0867: { n:'FeatHdr', f:parse_FeatHdr },
    0x0868: { n:"Feat", f:parse_Feat },
    0x086a: { n:"DataLabExt", f:parse_DataLabExt },
    0x086b: { n:"DataLabExtContents", f:parse_DataLabExtContents },
    0x086c: { n:"CellWatch", f:parse_CellWatch },
    0x0871: { n:"FeatHdr11", f:parse_FeatHdr11 },
    0x0872: { n:"Feature11", f:parse_Feature11 },
    0x0874: { n:"DropDownObjIds", f:parse_DropDownObjIds },
    0x0875: { n:"ContinueFrt11", f:parse_ContinueFrt11 },
    0x0876: { n:"DConn", f:parse_DConn },
    0x0877: { n:"List12", f:parse_List12 },
    0x0878: { n:"Feature12", f:parse_Feature12 },
    0x0879: { n:"CondFmt12", f:parse_CondFmt12 },
    0x087a: { n:"CF12", f:parse_CF12 },
    0x087b: { n:"CFEx", f:parse_CFEx },
    0x087c: { n:"XFCRC", f:parse_XFCRC, r:12 },
    0x087d: { n:"XFExt", f:parse_XFExt, r:12 },
    0x087e: { n:"AutoFilter12", f:parse_AutoFilter12 },
    0x087f: { n:"ContinueFrt12", f:parse_ContinueFrt12 },
    0x0884: { n:"MDTInfo", f:parse_MDTInfo },
    0x0885: { n:"MDXStr", f:parse_MDXStr },
    0x0886: { n:"MDXTuple", f:parse_MDXTuple },
    0x0887: { n:"MDXSet", f:parse_MDXSet },
    0x0888: { n:"MDXProp", f:parse_MDXProp },
    0x0889: { n:"MDXKPI", f:parse_MDXKPI },
    0x088a: { n:"MDB", f:parse_MDB },
    0x088b: { n:"PLV", f:parse_PLV },
    0x088c: { n:"Compat12", f:parse_Compat12, r:12 },
    0x088d: { n:"DXF", f:parse_DXF },
    0x088e: { n:"TableStyles", f:parse_TableStyles, r:12 },
    0x088f: { n:"TableStyle", f:parse_TableStyle },
    0x0890: { n:"TableStyleElement", f:parse_TableStyleElement },
    0x0892: { n:"StyleExt", f:parse_StyleExt },
    0x0893: { n:"NamePublish", f:parse_NamePublish },
    0x0894: { n:"NameCmt", f:parse_NameCmt },
    0x0895: { n:"SortData", f:parse_SortData },
    0x0896: { n:"Theme", f:parse_Theme, r:12 },
    0x0897: { n:"GUIDTypeLib", f:parse_GUIDTypeLib },
    0x0898: { n:"FnGrp12", f:parse_FnGrp12 },
    0x0899: { n:"NameFnGrp12", f:parse_NameFnGrp12 },
    0x089a: { n:"MTRSettings", f:parse_MTRSettings, r:12 },
    0x089b: { n:"CompressPictures", f:parse_CompressPictures },
    0x089c: { n:"HeaderFooter", f:parse_HeaderFooter },
    0x089d: { n:"CrtLayout12", f:parse_CrtLayout12 },
    0x089e: { n:"CrtMlFrt", f:parse_CrtMlFrt },
    0x089f: { n:"CrtMlFrtContinue", f:parse_CrtMlFrtContinue },
    0x08a3: { n:"ForceFullCalculation", f:parse_ForceFullCalculation },
    0x08a4: { n:"ShapePropsStream", f:parse_ShapePropsStream },
    0x08a5: { n:"TextPropsStream", f:parse_TextPropsStream },
    0x08a6: { n:"RichTextStream", f:parse_RichTextStream },
    0x08a7: { n:"CrtLayout12A", f:parse_CrtLayout12A },
    0x1001: { n:"Units", f:parse_Units },
    0x1002: { n:"Chart", f:parse_Chart },
    0x1003: { n:"Series", f:parse_Series },
    0x1006: { n:"DataFormat", f:parse_DataFormat },
    0x1007: { n:"LineFormat", f:parse_LineFormat },
    0x1009: { n:"MarkerFormat", f:parse_MarkerFormat },
    0x100a: { n:"AreaFormat", f:parse_AreaFormat },
    0x100b: { n:"PieFormat", f:parse_PieFormat },
    0x100c: { n:"AttachedLabel", f:parse_AttachedLabel },
    0x100d: { n:"SeriesText", f:parse_SeriesText },
    0x1014: { n:"ChartFormat", f:parse_ChartFormat },
    0x1015: { n:"Legend", f:parse_Legend },
    0x1016: { n:"SeriesList", f:parse_SeriesList },
    0x1017: { n:"Bar", f:parse_Bar },
    0x1018: { n:"Line", f:parse_Line },
    0x1019: { n:"Pie", f:parse_Pie },
    0x101a: { n:"Area", f:parse_Area },
    0x101b: { n:"Scatter", f:parse_Scatter },
    0x101c: { n:"CrtLine", f:parse_CrtLine },
    0x101d: { n:"Axis", f:parse_Axis },
    0x101e: { n:"Tick", f:parse_Tick },
    0x101f: { n:"ValueRange", f:parse_ValueRange },
    0x1020: { n:"CatSerRange", f:parse_CatSerRange },
    0x1021: { n:"AxisLine", f:parse_AxisLine },
    0x1022: { n:"CrtLink", f:parse_CrtLink },
    0x1024: { n:"DefaultText", f:parse_DefaultText },
    0x1025: { n:"Text", f:parse_Text },
    0x1026: { n:"FontX", f:parse_FontX },
    0x1027: { n:"ObjectLink", f:parse_ObjectLink },
    0x1032: { n:"Frame", f:parse_Frame },
    0x1033: { n:"Begin", f:parse_Begin },
    0x1034: { n:"End", f:parse_End },
    0x1035: { n:"PlotArea", f:parse_PlotArea },
    0x103a: { n:"Chart3d", f:parse_Chart3d },
    0x103c: { n:"PicF", f:parse_PicF },
    0x103d: { n:"DropBar", f:parse_DropBar },
    0x103e: { n:"Radar", f:parse_Radar },
    0x103f: { n:"Surf", f:parse_Surf },
    0x1040: { n:"RadarArea", f:parse_RadarArea },
    0x1041: { n:"AxisParent", f:parse_AxisParent },
    0x1043: { n:"LegendException", f:parse_LegendException },
    0x1044: { n:"ShtProps", f:parse_ShtProps },
    0x1045: { n:"SerToCrt", f:parse_SerToCrt },
    0x1046: { n:"AxesUsed", f:parse_AxesUsed },
    0x1048: { n:"SBaseRef", f:parse_SBaseRef },
    0x104a: { n:"SerParent", f:parse_SerParent },
    0x104b: { n:"SerAuxTrend", f:parse_SerAuxTrend },
    0x104e: { n:"IFmtRecord", f:parse_IFmtRecord },
    0x104f: { n:"Pos", f:parse_Pos },
    0x1050: { n:"AlRuns", f:parse_AlRuns },
    0x1051: { n:"BRAI", f:parse_BRAI },
    0x105b: { n:"SerAuxErrBar", f:parse_SerAuxErrBar },
    0x105c: { n:"ClrtClient", f:parse_ClrtClient },
    0x105d: { n:"SerFmt", f:parse_SerFmt },
    0x105f: { n:"Chart3DBarShape", f:parse_Chart3DBarShape },
    0x1060: { n:"Fbi", f:parse_Fbi },
    0x1061: { n:"BopPop", f:parse_BopPop },
    0x1062: { n:"AxcExt", f:parse_AxcExt },
    0x1063: { n:"Dat", f:parse_Dat },
    0x1064: { n:"PlotGrowth", f:parse_PlotGrowth },
    0x1065: { n:"SIIndex", f:parse_SIIndex },
    0x1066: { n:"GelFrame", f:parse_GelFrame },
    0x1067: { n:"BopPopCustom", f:parse_BopPopCustom },
    0x1068: { n:"Fbi2", f:parse_Fbi2 },
    /* These are specified in an older version of the spec */
    0x0016: { n:"ExternCount", f:parsenoop },
    0x007e: { n:"RK", f:parsenoop }, /* Not necessarily same as 0x027e */
    0x007f: { n:"ImData", f:parsenoop },
    0x0087: { n:"Addin", f:parsenoop },
    0x0088: { n:"Edg", f:parsenoop },
    0x0089: { n:"Pub", f:parsenoop },
    0x0091: { n:"Sub", f:parsenoop },
    0x0094: { n:"LHRecord", f:parsenoop },
    0x0095: { n:"LHNGraph", f:parsenoop },
    0x0096: { n:"Sound", f:parsenoop },
    0x00a9: { n:"CoordList", f:parsenoop },
    0x00ab: { n:"GCW", f:parsenoop },
    0x00bc: { n:"ShrFmla", f:parsenoop }, /* Not necessarily same as 0x04bc */
    0x00c2: { n:"AddMenu", f:parsenoop },
    0x00c3: { n:"DelMenu", f:parsenoop },
    0x00d6: { n:"RString", f:parsenoop },
    0x00df: { n:"UDDesc", f:parsenoop },
    0x00ea: { n:"TabIdConf", f:parsenoop },
    0x0162: { n:"XL5Modify", f:parsenoop },
    0x01a5: { n:"FileSharing2", f:parsenoop },
    0x0218: { n:"Name", f:parsenoop },
    0x0223: { n:"ExternName", f:parse_ExternName },
    0x0231: { n:"Font", f:parsenoop },
    0x0406: { n:"Formula", f:parse_Formula },
    0x086d: { n:"FeatInfo", f:parsenoop },
    0x0873: { n:"FeatInfo11", f:parsenoop },
    0x0881: { n:"SXAddl12", f:parsenoop },
    0x08c0: { n:"AutoWebPub", f:parsenoop },
    0x08c1: { n:"ListObj", f:parsenoop },
    0x08c2: { n:"ListField", f:parsenoop },
    0x08c3: { n:"ListDV", f:parsenoop },
    0x08c4: { n:"ListCondFmt", f:parsenoop },
    0x08c5: { n:"ListCF", f:parsenoop },
    0x08c6: { n:"FMQry", f:parsenoop },
    0x08c7: { n:"FMSQry", f:parsenoop },
    0x08c8: { n:"PLV", f:parsenoop }, /* supposedly PLV for Excel 11 */
    0x08c9: { n:"LnExt", f:parsenoop },
    0x08ca: { n:"MkrExt", f:parsenoop },
    0x08cb: { n:"CrtCoopt", f:parsenoop },
    0x0000: {}
};
Source/UBCS-WEB/src/config/js-xlsx-master/bits/83_parseods.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,6 @@
/* Helper function to call out to ODS parser */
function parse_ods(zip, opts) {
    if(typeof module !== "undefined" && typeof require !== 'undefined' && typeof ODS === 'undefined') ODS = require('./od' + 's');
    if(typeof ODS === 'undefined' || !ODS.parse_ods) throw new Error("Unsupported ODS");
    return ODS.parse_ods(zip, opts);
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/84_defaults.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,40 @@
function fix_opts_func(defaults) {
    return function fix_opts(opts) {
        for(var i = 0; i != defaults.length; ++i) {
            var d = defaults[i];
            if(opts[d[0]] === undefined) opts[d[0]] = d[1];
            if(d[2] === 'n') opts[d[0]] = Number(opts[d[0]]);
        }
    };
}
var fix_read_opts = fix_opts_func([
    ['cellNF', false], /* emit cell number format string as .z */
    ['cellHTML', true], /* emit html string as .h */
    ['cellFormula', true], /* emit formulae as .f */
    ['cellStyles', false], /* emits style/theme as .s */
    ['cellDates', false], /* emit date cells with type `d` */
    ['sheetStubs', false], /* emit empty cells */
    ['sheetRows', 0, 'n'], /* read n rows (0 = read all rows) */
    ['bookDeps', false], /* parse calculation chains */
    ['bookSheets', false], /* only try to get sheet names (no Sheets) */
    ['bookProps', false], /* only try to get properties (no Sheets) */
    ['bookFiles', false], /* include raw file structure (keys, files, cfb) */
    ['bookVBA', false], /* include vba raw data (vbaraw) */
    ['password',''], /* password */
    ['WTF', false] /* WTF mode (throws errors) */
]);
var fix_write_opts = fix_opts_func([
    ['cellDates', false], /* write date cells with type `d` */
    ['bookSST', false], /* Generate Shared String Table */
    ['bookType', 'xlsx'], /* Type of workbook (xlsx/m/b) */
    ['WTF', false] /* WTF mode (throws errors) */
]);
Source/UBCS-WEB/src/config/js-xlsx-master/bits/85_parsezip.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,142 @@
function safe_parse_wbrels(wbrels, sheets) {
    if(!wbrels) return 0;
    try {
        wbrels = sheets.map(function pwbr(w) { return [w.name, wbrels['!id'][w.id].Target]; });
    } catch(e) { return null; }
    return !wbrels || wbrels.length === 0 ? null : wbrels;
}
function safe_parse_ws(zip, path, relsPath, sheet, sheetRels, sheets, opts) {
    try {
        sheetRels[sheet]=parse_rels(getzipdata(zip, relsPath, true), path);
        sheets[sheet]=parse_ws(getzipdata(zip, path),path,opts,sheetRels[sheet]);
    } catch(e) { if(opts.WTF) throw e; }
}
var nodirs = function nodirs(x){return x.substr(-1) != '/';};
function parse_zip(zip, opts) {
    make_ssf(SSF);
    opts = opts || {};
    fix_read_opts(opts);
    reset_cp();
    /* OpenDocument Part 3 Section 2.2.1 OpenDocument Package */
    if(safegetzipfile(zip, 'META-INF/manifest.xml')) return parse_ods(zip, opts);
    var entries = keys(zip.files).filter(nodirs).sort();
    var dir = parse_ct(getzipdata(zip, '[Content_Types].xml'), opts);
    var xlsb = false;
    var sheets, binname;
    if(dir.workbooks.length === 0) {
        binname = "xl/workbook.xml";
        if(getzipdata(zip,binname, true)) dir.workbooks.push(binname);
    }
    if(dir.workbooks.length === 0) {
        binname = "xl/workbook.bin";
        if(!getzipfile(zip,binname,true)) throw new Error("Could not find workbook");
        dir.workbooks.push(binname);
        xlsb = true;
    }
    if(dir.workbooks[0].substr(-3) == "bin") xlsb = true;
    if(xlsb) set_cp(1200);
    if(!opts.bookSheets && !opts.bookProps) {
        strs = [];
        if(dir.sst) strs=parse_sst(getzipdata(zip, dir.sst.replace(/^\//,'')), dir.sst, opts);
    // parse themes before styles so that we can reliably decode theme/tint into rgb when parsing styles
    themes = {};
    if(opts.cellStyles && dir.themes.length) themes = parse_theme(getzipdata(zip, dir.themes[0].replace(/^\//,''), true),dir.themes[0], opts);
    styles = {};
        if(dir.style) styles = parse_sty(getzipdata(zip, dir.style.replace(/^\//,'')),dir.style, opts);
    }
    var wb = parse_wb(getzipdata(zip, dir.workbooks[0].replace(/^\//,'')), dir.workbooks[0], opts);
    var props = {}, propdata = "";
    if(dir.coreprops.length !== 0) {
        propdata = getzipdata(zip, dir.coreprops[0].replace(/^\//,''), true);
        if(propdata) props = parse_core_props(propdata);
        if(dir.extprops.length !== 0) {
            propdata = getzipdata(zip, dir.extprops[0].replace(/^\//,''), true);
            if(propdata) parse_ext_props(propdata, props);
        }
    }
    var custprops = {};
    if(!opts.bookSheets || opts.bookProps) {
        if (dir.custprops.length !== 0) {
            propdata = getzipdata(zip, dir.custprops[0].replace(/^\//,''), true);
            if(propdata) custprops = parse_cust_props(propdata, opts);
        }
    }
    var out = {};
    if(opts.bookSheets || opts.bookProps) {
        if(props.Worksheets && props.SheetNames.length > 0) sheets=props.SheetNames;
        else if(wb.Sheets) sheets = wb.Sheets.map(function pluck(x){ return x.name; });
        if(opts.bookProps) { out.Props = props; out.Custprops = custprops; }
        if(typeof sheets !== 'undefined') out.SheetNames = sheets;
        if(opts.bookSheets ? out.SheetNames : opts.bookProps) return out;
    }
    sheets = {};
    var deps = {};
    if(opts.bookDeps && dir.calcchain) deps=parse_cc(getzipdata(zip, dir.calcchain.replace(/^\//,'')),dir.calcchain,opts);
    var i=0;
    var sheetRels = {};
    var path, relsPath;
    if(!props.Worksheets) {
        var wbsheets = wb.Sheets;
        props.Worksheets = wbsheets.length;
        props.SheetNames = [];
        for(var j = 0; j != wbsheets.length; ++j) {
            props.SheetNames[j] = wbsheets[j].name;
        }
    }
    var wbext = xlsb ? "bin" : "xml";
    var wbrelsfile = 'xl/_rels/workbook.' + wbext + '.rels';
    var wbrels = parse_rels(getzipdata(zip, wbrelsfile, true), wbrelsfile);
    if(wbrels) wbrels = safe_parse_wbrels(wbrels, wb.Sheets);
    /* Numbers iOS hack */
    var nmode = (getzipdata(zip,"xl/worksheets/sheet.xml",true))?1:0;
    for(i = 0; i != props.Worksheets; ++i) {
        if(wbrels) path = 'xl/' + (wbrels[i][1]).replace(/[\/]?xl\//, "");
        else {
            path = 'xl/worksheets/sheet'+(i+1-nmode)+"." + wbext;
            path = path.replace(/sheet0\./,"sheet.");
        }
        relsPath = path.replace(/^(.*)(\/)([^\/]*)$/, "$1/_rels/$3.rels");
        safe_parse_ws(zip, path, relsPath, props.SheetNames[i], sheetRels, sheets, opts);
    }
    if(dir.comments) parse_comments(zip, dir.comments, sheets, sheetRels, opts);
    out = {
        Directory: dir,
        Workbook: wb,
        Props: props,
        Custprops: custprops,
        Deps: deps,
        Sheets: sheets,
        SheetNames: props.SheetNames,
        Strings: strs,
        Styles: styles,
        Themes: themes,
        SSF: SSF.get_table()
    };
    if(opts.bookFiles) {
        out.keys = entries;
        out.files = zip.files;
    }
    if(opts.bookVBA) {
        if(dir.vba.length > 0) out.vbaraw = getzipdata(zip,dir.vba[0],true);
        else if(dir.defaults.bin === 'application/vnd.ms-office.vbaProject') out.vbaraw = getzipdata(zip,'xl/vbaProject.bin',true);
    }
    return out;
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/86_writezip.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,90 @@
function add_rels(rels, rId, f, type, relobj) {
    if(!relobj) relobj = {};
    if(!rels['!id']) rels['!id'] = {};
    relobj.Id = 'rId' + rId;
    relobj.Type = type;
    relobj.Target = f;
    if(rels['!id'][relobj.Id]) throw new Error("Cannot rewrite rId " + rId);
    rels['!id'][relobj.Id] = relobj;
    rels[('/' + relobj.Target).replace("//","/")] = relobj;
}
function write_zip(wb, opts) {
    if(wb && !wb.SSF) {
        wb.SSF = SSF.get_table();
    }
    if(wb && wb.SSF) {
        make_ssf(SSF); SSF.load_table(wb.SSF);
        opts.revssf = evert_num(wb.SSF); opts.revssf[wb.SSF[65535]] = 0;
    }
    opts.rels = {}; opts.wbrels = {};
    opts.Strings = []; opts.Strings.Count = 0; opts.Strings.Unique = 0;
    var wbext = opts.bookType == "xlsb" ? "bin" : "xml";
    var ct = { workbooks: [], sheets: [], calcchains: [], themes: [], styles: [],
        coreprops: [], extprops: [], custprops: [], strs:[], comments: [], vba: [],
        TODO:[], rels:[], xmlns: "" };
    fix_write_opts(opts = opts || {});
    var zip = new jszip();
    var f = "", rId = 0;
    opts.cellXfs = [];
    get_cell_style(opts.cellXfs, {}, {revssf:{"General":0}});
    f = "docProps/core.xml";
    zip.file(f, write_core_props(wb.Props, opts));
    ct.coreprops.push(f);
    add_rels(opts.rels, 2, f, RELS.CORE_PROPS);
    f = "docProps/app.xml";
    if(!wb.Props) wb.Props = {};
    wb.Props.SheetNames = wb.SheetNames;
    wb.Props.Worksheets = wb.SheetNames.length;
    zip.file(f, write_ext_props(wb.Props, opts));
    ct.extprops.push(f);
    add_rels(opts.rels, 3, f, RELS.EXT_PROPS);
    if(wb.Custprops !== wb.Props && keys(wb.Custprops||{}).length > 0) {
        f = "docProps/custom.xml";
        zip.file(f, write_cust_props(wb.Custprops, opts));
        ct.custprops.push(f);
        add_rels(opts.rels, 4, f, RELS.CUST_PROPS);
    }
    f = "xl/workbook." + wbext;
    zip.file(f, write_wb(wb, f, opts));
    ct.workbooks.push(f);
    add_rels(opts.rels, 1, f, RELS.WB);
    for(rId=1;rId <= wb.SheetNames.length; ++rId) {
        f = "xl/worksheets/sheet" + rId + "." + wbext;
        zip.file(f, write_ws(rId-1, f, opts, wb));
        ct.sheets.push(f);
        add_rels(opts.wbrels, rId, "worksheets/sheet" + rId + "." + wbext, RELS.WS);
    }
    if(opts.Strings != null && opts.Strings.length > 0) {
        f = "xl/sharedStrings." + wbext;
        zip.file(f, write_sst(opts.Strings, f, opts));
        ct.strs.push(f);
        add_rels(opts.wbrels, ++rId, "sharedStrings." + wbext, RELS.SST);
    }
    /* TODO: something more intelligent with themes */
    f = "xl/theme/theme1.xml";
  zip.file(f, write_theme(opts));
    ct.themes.push(f);
    add_rels(opts.wbrels, ++rId, "theme/theme1.xml", RELS.THEME);
    /* TODO: something more intelligent with styles */
    f = "xl/styles." + wbext;
    zip.file(f, write_sty(wb, f, opts));
    ct.styles.push(f);
    add_rels(opts.wbrels, ++rId, "styles." + wbext, RELS.STY);
    zip.file("[Content_Types].xml", write_ct(ct, opts));
    zip.file('_rels/.rels', write_rels(opts.rels));
    zip.file('xl/_rels/workbook.' + wbext + '.rels', write_rels(opts.wbrels));
    return zip;
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/87_read.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,48 @@
function firstbyte(f,o) {
    switch((o||{}).type || "base64") {
        case 'buffer': return f[0];
        case 'base64': return Base64.decode(f.substr(0,12)).charCodeAt(0);
        case 'binary': return f.charCodeAt(0);
        case 'array': return f[0];
        default: throw new Error("Unrecognized type " + o.type);
    }
}
function read_zip(data, opts) {
    var zip, d = data;
    var o = opts||{};
    if(!o.type) o.type = (has_buf && Buffer.isBuffer(data)) ? "buffer" : "base64";
    switch(o.type) {
        case "base64": zip = new jszip(d, { base64:true }); break;
        case "binary": case "array": zip = new jszip(d, { base64:false }); break;
        case "buffer": zip = new jszip(d); break;
        case "file": zip=new jszip(d=_fs.readFileSync(data)); break;
        default: throw new Error("Unrecognized type " + o.type);
    }
    return parse_zip(zip, o);
}
function readSync(data, opts) {
    var zip, d = data, isfile = false, n;
    var o = opts||{};
    if(!o.type) o.type = (has_buf && Buffer.isBuffer(data)) ? "buffer" : "base64";
    if(o.type == "file") { isfile = true; o.type = "buffer"; d = _fs.readFileSync(data); }
    switch((n = firstbyte(d, o))) {
        case 0xD0:
            if(isfile) o.type = "file";
            return parse_xlscfb(CFB.read(data, o), o);
        case 0x09: return parse_xlscfb(s2a(o.type === 'base64' ? Base64.decode(data) : data), o);
        case 0x3C: return parse_xlml(d, o);
        case 0x50:
            if(isfile) o.type = "file";
            return read_zip(data, opts);
        default: throw new Error("Unsupported file " + n);
    }
}
function readFileSync(data, opts) {
    var o = opts||{}; o.type = 'file'
  var wb = readSync(data, o);
  wb.FILENAME = data;
    return wb;
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/88_write.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,37 @@
function write_zip_type(wb, opts) {
    var o = opts||{};
  style_builder  = new StyleBuilder(opts);
  var z = write_zip(wb, o);
    switch(o.type) {
        case "base64": return z.generate({type:"base64"});
        case "binary": return z.generate({type:"string"});
        case "buffer": return z.generate({type:"nodebuffer"});
        case "file": return _fs.writeFileSync(o.file, z.generate({type:"nodebuffer"}));
        default: throw new Error("Unrecognized type " + o.type);
    }
}
function writeSync(wb, opts) {
    var o = opts||{};
    switch(o.bookType) {
        case 'xml': return write_xlml(wb, o);
        default: return write_zip_type(wb, o);
    }
}
function writeFileSync(wb, filename, opts) {
    var o = opts||{}; o.type = 'file';
    o.file = filename;
    switch(o.file.substr(-5).toLowerCase()) {
        case '.xlsx': o.bookType = 'xlsx'; break;
        case '.xlsm': o.bookType = 'xlsm'; break;
        case '.xlsb': o.bookType = 'xlsb'; break;
    default: switch(o.file.substr(-4).toLowerCase()) {
        case '.xls': o.bookType = 'xls'; break;
        case '.xml': o.bookType = 'xml'; break;
    }}
    return writeSync(wb, o);
}
Source/UBCS-WEB/src/config/js-xlsx-master/bits/90_utils.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,207 @@
function decode_row(rowstr) { return parseInt(unfix_row(rowstr),10) - 1; }
function encode_row(row) { return "" + (row + 1); }
function fix_row(cstr) { return cstr.replace(/([A-Z]|^)(\d+)$/,"$1$$$2"); }
function unfix_row(cstr) { return cstr.replace(/\$(\d+)$/,"$1"); }
function decode_col(colstr) { var c = unfix_col(colstr), d = 0, i = 0; for(; i !== c.length; ++i) d = 26*d + c.charCodeAt(i) - 64; return d - 1; }
function encode_col(col) { var s=""; for(++col; col; col=Math.floor((col-1)/26)) s = String.fromCharCode(((col-1)%26) + 65) + s; return s; }
function fix_col(cstr) { return cstr.replace(/^([A-Z])/,"$$$1"); }
function unfix_col(cstr) { return cstr.replace(/^\$([A-Z])/,"$1"); }
function split_cell(cstr) { return cstr.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(","); }
function decode_cell(cstr) { var splt = split_cell(cstr); return { c:decode_col(splt[0]), r:decode_row(splt[1]) }; }
function encode_cell(cell) { return encode_col(cell.c) + encode_row(cell.r); }
function fix_cell(cstr) { return fix_col(fix_row(cstr)); }
function unfix_cell(cstr) { return unfix_col(unfix_row(cstr)); }
function decode_range(range) { var x =range.split(":").map(decode_cell); return {s:x[0],e:x[x.length-1]}; }
function encode_range(cs,ce) {
    if(ce === undefined || typeof ce === 'number') return encode_range(cs.s, cs.e);
    if(typeof cs !== 'string') cs = encode_cell(cs); if(typeof ce !== 'string') ce = encode_cell(ce);
    return cs == ce ? cs : cs + ":" + ce;
}
function safe_decode_range(range) {
    var o = {s:{c:0,r:0},e:{c:0,r:0}};
    var idx = 0, i = 0, cc = 0;
    var len = range.length;
    for(idx = 0; i < len; ++i) {
        if((cc=range.charCodeAt(i)-64) < 1 || cc > 26) break;
        idx = 26*idx + cc;
    }
    o.s.c = --idx;
    for(idx = 0; i < len; ++i) {
        if((cc=range.charCodeAt(i)-48) < 0 || cc > 9) break;
        idx = 10*idx + cc;
    }
    o.s.r = --idx;
    if(i === len || range.charCodeAt(++i) === 58) { o.e.c=o.s.c; o.e.r=o.s.r; return o; }
    for(idx = 0; i != len; ++i) {
        if((cc=range.charCodeAt(i)-64) < 1 || cc > 26) break;
        idx = 26*idx + cc;
    }
    o.e.c = --idx;
    for(idx = 0; i != len; ++i) {
        if((cc=range.charCodeAt(i)-48) < 0 || cc > 9) break;
        idx = 10*idx + cc;
    }
    o.e.r = --idx;
    return o;
}
function safe_format_cell(cell, v) {
    if(cell.z !== undefined) try { return (cell.w = SSF.format(cell.z, v)); } catch(e) { }
    if(!cell.XF) return v;
    try { return (cell.w = SSF.format(cell.XF.ifmt||0, v)); } catch(e) { return ''+v; }
}
function format_cell(cell, v) {
    if(cell == null || cell.t == null) return "";
    if(cell.w !== undefined) return cell.w;
    if(v === undefined) return safe_format_cell(cell, cell.v);
    return safe_format_cell(cell, v);
}
function sheet_to_json(sheet, opts){
    var val, row, range, header = 0, offset = 1, r, hdr = [], isempty, R, C, v;
    var o = opts != null ? opts : {};
    var raw = o.raw;
    if(sheet == null || sheet["!ref"] == null) return [];
    range = o.range !== undefined ? o.range : sheet["!ref"];
    if(o.header === 1) header = 1;
    else if(o.header === "A") header = 2;
    else if(Array.isArray(o.header)) header = 3;
    switch(typeof range) {
        case 'string': r = safe_decode_range(range); break;
        case 'number': r = safe_decode_range(sheet["!ref"]); r.s.r = range; break;
        default: r = range;
    }
    if(header > 0) offset = 0;
    var rr = encode_row(r.s.r);
    var cols = new Array(r.e.c-r.s.c+1);
    var out = new Array(r.e.r-r.s.r-offset+1);
    var outi = 0;
    for(C = r.s.c; C <= r.e.c; ++C) {
        cols[C] = encode_col(C);
        val = sheet[cols[C] + rr];
        switch(header) {
            case 1: hdr[C] = C; break;
            case 2: hdr[C] = cols[C]; break;
            case 3: hdr[C] = o.header[C - r.s.c]; break;
            default:
                if(val === undefined) continue;
                hdr[C] = format_cell(val);
        }
    }
    for (R = r.s.r + offset; R <= r.e.r; ++R) {
        rr = encode_row(R);
        isempty = true;
        if(header === 1) row = [];
        else {
            row = {};
            if(Object.defineProperty) Object.defineProperty(row, '__rowNum__', {value:R, enumerable:false});
            else row.__rowNum__ = R;
        }
        for (C = r.s.c; C <= r.e.c; ++C) {
            val = sheet[cols[C] + rr];
            if(val === undefined || val.t === undefined) continue;
            v = val.v;
            switch(val.t){
                case 'e': continue;
                case 's': break;
                case 'b': case 'n': break;
                default: throw 'unrecognized type ' + val.t;
            }
            if(v !== undefined) {
                row[hdr[C]] = raw ? v : format_cell(val,v);
                isempty = false;
            }
        }
        if(isempty === false || header === 1) out[outi++] = row;
    }
    out.length = outi;
    return out;
}
function sheet_to_row_object_array(sheet, opts) { return sheet_to_json(sheet, opts != null ? opts : {}); }
function sheet_to_csv(sheet, opts) {
    var out = "", txt = "", qreg = /"/g;
    var o = opts == null ? {} : opts;
    if(sheet == null || sheet["!ref"] == null) return "";
    var r = safe_decode_range(sheet["!ref"]);
    var FS = o.FS !== undefined ? o.FS : ",", fs = FS.charCodeAt(0);
    var RS = o.RS !== undefined ? o.RS : "\n", rs = RS.charCodeAt(0);
    var row = "", rr = "", cols = [];
    var i = 0, cc = 0, val;
    var R = 0, C = 0;
    for(C = r.s.c; C <= r.e.c; ++C) cols[C] = encode_col(C);
    for(R = r.s.r; R <= r.e.r; ++R) {
        row = "";
        rr = encode_row(R);
        for(C = r.s.c; C <= r.e.c; ++C) {
            val = sheet[cols[C] + rr];
            txt = val !== undefined ? ''+format_cell(val) : "";
            for(i = 0, cc = 0; i !== txt.length; ++i) if((cc = txt.charCodeAt(i)) === fs || cc === rs || cc === 34) {
                txt = "\"" + txt.replace(qreg, '""') + "\""; break; }
            row += (C === r.s.c ? "" : FS) + txt;
        }
        out += row + RS;
    }
    return out;
}
var make_csv = sheet_to_csv;
function sheet_to_formulae(sheet) {
    var cmds, y = "", x, val="";
    if(sheet == null || sheet["!ref"] == null) return "";
    var r = safe_decode_range(sheet['!ref']), rr = "", cols = [], C;
    cmds = new Array((r.e.r-r.s.r+1)*(r.e.c-r.s.c+1));
    var i = 0;
    for(C = r.s.c; C <= r.e.c; ++C) cols[C] = encode_col(C);
    for(var R = r.s.r; R <= r.e.r; ++R) {
        rr = encode_row(R);
        for(C = r.s.c; C <= r.e.c; ++C) {
            y = cols[C] + rr;
            x = sheet[y];
            val = "";
            if(x === undefined) continue;
            if(x.f != null) val = x.f;
            else if(x.w !== undefined) val = "'" + x.w;
            else if(x.v === undefined) continue;
            else val = ""+x.v;
            cmds[i++] = y + "=" + val;
        }
    }
    cmds.length = i;
    return cmds;
}
var utils = {
    encode_col: encode_col,
    encode_row: encode_row,
    encode_cell: encode_cell,
    encode_range: encode_range,
    decode_col: decode_col,
    decode_row: decode_row,
    split_cell: split_cell,
    decode_cell: decode_cell,
    decode_range: decode_range,
    format_cell: format_cell,
    get_formulae: sheet_to_formulae,
    make_csv: sheet_to_csv,
    make_json: sheet_to_json,
    make_formulae: sheet_to_formulae,
    sheet_to_csv: sheet_to_csv,
    sheet_to_json: sheet_to_json,
    sheet_to_formulae: sheet_to_formulae,
    sheet_to_row_object_array: sheet_to_row_object_array
};
Source/UBCS-WEB/src/config/js-xlsx-master/bits/91_xmlbuilder.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,88 @@
/////////////////////////////////////////////////////////////////////////////////////////////////////
var XmlNode = (function () {
  function XmlNode(tagName, attributes, children) {
    if (!(this instanceof XmlNode)) {
      return new XmlNode(tagName, attributes, children);
    }
    this.tagName = tagName;
    this._attributes = attributes || {};
    this._children = children || [];
    this._prefix = '';
    return this;
  }
  XmlNode.prototype.createElement = function () {
    return new XmlNode(arguments)
  }
  XmlNode.prototype.children = function() {
    return this._children;
  }
  XmlNode.prototype.append = function (node) {
    this._children.push(node);
    return this;
  }
  XmlNode.prototype.prefix = function (prefix) {
    if (arguments.length==0) { return this._prefix;}
    this._prefix = prefix;
    return this;
  }
  XmlNode.prototype.attr = function (attr, value) {
    if (value == undefined) {
      delete this._attributes[attr];
      return this;
    }
    if (arguments.length == 0) {
      return this._attributes;
    }
    else if (typeof attr == 'string' && arguments.length == 1) {
      return this._attributes.attr[attr];
    }
    if (typeof attr == 'object' && arguments.length == 1) {
      for (var key in attr) {
        this._attributes[key] = attr[key];
      }
    }
    else if (arguments.length == 2 && typeof attr == 'string') {
      this._attributes[attr] = value;
    }
    return this;
  }
  var APOS = "'"; QUOTE = '"'
  var ESCAPED_QUOTE = {  }
  ESCAPED_QUOTE[QUOTE] = '&quot;'
  ESCAPED_QUOTE[APOS] = '&apos;'
  XmlNode.prototype.escapeAttributeValue = function(att_value) {
    return '"' + att_value.replace(/\"/g,'&quot;') + '"';// TODO Extend with four other codes
  }
  XmlNode.prototype.toXml = function (node) {
    if (!node) node = this;
    var xml = node._prefix;
    xml += '<' + node.tagName;
    if (node._attributes) {
      for (var key in node._attributes) {
        xml += ' ' + key + '=' + this.escapeAttributeValue(''+node._attributes[key]) + ''
      }
    }
    if (node._children && node._children.length > 0) {
      xml += ">";
      for (var i = 0; i < node._children.length; i++) {
        xml += this.toXml(node._children[i]);
      }
      xml += '</' + node.tagName + '>';
    }
    else {
      xml += '/>';
    }
    return xml;
  }
  return XmlNode;
})();
Source/UBCS-WEB/src/config/js-xlsx-master/bits/92_stylebuilder.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,378 @@
/////////////////////////////////////////////////////////////////////////////////////////////////////
  var StyleBuilder = function (options) {
    var customNumFmtId = 164;
    var table_fmt = {
      0:  'General',
      1:  '0',
      2:  '0.00',
      3:  '#,##0',
      4:  '#,##0.00',
      9:  '0%',
      10: '0.00%',
      11: '0.00E+00',
      12: '# ?/?',
      13: '# ??/??',
      14: 'm/d/yy',
      15: 'd-mmm-yy',
      16: 'd-mmm',
      17: 'mmm-yy',
      18: 'h:mm AM/PM',
      19: 'h:mm:ss AM/PM',
      20: 'h:mm',
      21: 'h:mm:ss',
      22: 'm/d/yy h:mm',
      37: '#,##0 ;(#,##0)',
      38: '#,##0 ;[Red](#,##0)',
      39: '#,##0.00;(#,##0.00)',
      40: '#,##0.00;[Red](#,##0.00)',
      45: 'mm:ss',
      46: '[h]:mm:ss',
      47: 'mmss.0',
      48: '##0.0E+0',
      49: '@',
      56: '"上午/下午 "hh"時"mm"分"ss"秒 "'    };
    var fmt_table = {};
    for (var idx in table_fmt) {
      fmt_table[table_fmt[idx]] = idx;
    }
    // cache style specs to avoid excessive duplication
    _hashIndex = {};
    _listIndex = [];
    return {
      initialize: function (options) {
        this.$fonts = XmlNode('fonts').attr('count',0).attr("x14ac:knownFonts","1");
        this.$fills = XmlNode('fills').attr('count',0);
        this.$borders = XmlNode('borders').attr('count',0);
        this.$numFmts = XmlNode('numFmts').attr('count',0);
        this.$cellStyleXfs = XmlNode('cellStyleXfs');
        this.$xf = XmlNode('xf')
            .attr('numFmtId', 0)
            .attr('fontId', 0)
            .attr('fillId', 0)
            .attr('borderId', 0);
        this.$cellXfs = XmlNode('cellXfs').attr('count',0);
        this.$cellStyles = XmlNode('cellStyles')
            .append(XmlNode('cellStyle')
                .attr('name', 'Normal')
                .attr('xfId',0)
                .attr('builtinId',0)
            );
        this.$dxfs = XmlNode('dxfs').attr('count', "0");
        this.$tableStyles = XmlNode('tableStyles')
            .attr('count','0')
            .attr('defaultTableStyle','TableStyleMedium9')
            .attr('defaultPivotStyle','PivotStyleMedium4')
        this.$styles = XmlNode('styleSheet')
            .attr('xmlns:mc','http://schemas.openxmlformats.org/markup-compatibility/2006')
            .attr('xmlns:x14ac','http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac')
            .attr('xmlns','http://schemas.openxmlformats.org/spreadsheetml/2006/main')
            .attr('mc:Ignorable','x14ac')
            .prefix('<?xml version="1.0" encoding="UTF-8" standalone="yes"?>')
            .append(this.$numFmts)
            .append(this.$fonts)
            .append(this.$fills)
            .append(this.$borders)
            .append(this.$cellStyleXfs.append(this.$xf))
            .append(this.$cellXfs)
            .append(this.$cellStyles)
            .append(this.$dxfs)
            .append(this.$tableStyles);
        // need to specify styles at index 0 and 1.
        // the second style MUST be gray125 for some reason
        var defaultStyle = options.defaultCellStyle || {};
        if (!defaultStyle.font) defaultStyle.font = {name: 'Calibri', sz: '12'};
        if (!defaultStyle.font.name) defaultStyle.font.name = 'Calibri';
        if (!defaultStyle.font.sz) defaultStyle.font.sz = 11;
        if (!defaultStyle.fill) defaultStyle.fill = {  patternType: "none", fgColor: {}};
        if (!defaultStyle.border) defaultStyle.border = {};
        if (!defaultStyle.numFmt) defaultStyle.numFmt = 0;
        this.defaultStyle = defaultStyle;
        var gray125Style = JSON.parse(JSON.stringify(defaultStyle));
        gray125Style.fill = {patternType: "gray125", fgColor: { }}
        this.addStyles([defaultStyle, gray125Style]);
        return this;
      },
      // create a style entry and returns an integer index that can be used in the cell .s property
      // these format of this object follows the emerging Common Spreadsheet Format
      addStyle: function (attributes) {
        var hashKey = JSON.stringify(attributes);
        var index = _hashIndex[hashKey];
        if (index == undefined) {
          index = this._addXf(attributes); //_listIndex.push(attributes) -1;
          _hashIndex[hashKey] = index;
        }
        else {
          index = _hashIndex[hashKey];
        }
        return index;
      },
      // create style entries and returns array of integer indexes that can be used in cell .s property
      addStyles: function (styles) {
        var self = this;
        return styles.map(function (style) {
          return self.addStyle(style);
        })
      },
      _duckTypeStyle: function(attributes) {
        if (typeof attributes == 'object' && (attributes.patternFill || attributes.fgColor)) {
          return {fill: attributes }; // this must be read via XLSX.parseFile(...)
        }
        else if (attributes.font || attributes.numFmt || attributes.border || attributes.fill) {
          return attributes;
        }
        else {
          return this._getStyleCSS(attributes)
        }
      },
      _getStyleCSS: function(css) {
        return css; //TODO
      },
      // Create an <xf> record for the style as well as corresponding <font>, <fill>, <border>, <numfmts>
      // Right now this is simple and creates a <font>, <fill>, <border>, <numfmts> for every <xf>
      // We could perhaps get fancier and avoid duplicating  auxiliary entries as Excel presumably intended, but bother.
      _addXf: function (attributes) {
        var fontId = this._addFont(attributes.font);
        var fillId = this._addFill(attributes.fill);
        var borderId = this._addBorder(attributes.border);
        var numFmtId = this._addNumFmt(attributes.numFmt);
        var $xf = XmlNode('xf')
            .attr("numFmtId", numFmtId)
            .attr("fontId", fontId)
            .attr("fillId", fillId)
            .attr("borderId", borderId)
            .attr("xfId", "0");
        if (fontId > 0) {
          $xf.attr('applyFont', "1");
        }
        if (fillId > 0) {
          $xf.attr('applyFill', "1");
        }
        if (borderId > 0) {
          $xf.attr('applyBorder', "1");
        }
        if (numFmtId > 0) {
          $xf.attr('applyNumberFormat', "1");
        }
        if (attributes.alignment) {
          var $alignment = XmlNode('alignment');
          if (attributes.alignment.horizontal) { $alignment.attr('horizontal', attributes.alignment.horizontal);}
          if (attributes.alignment.vertical)  { $alignment.attr('vertical', attributes.alignment.vertical);}
          if (attributes.alignment.indent)  { $alignment.attr('indent', attributes.alignment.indent);}
          if (attributes.alignment.readingOrder)  { $alignment.attr('readingOrder', attributes.alignment.readingOrder);}
          if (attributes.alignment.wrapText)  { $alignment.attr('wrapText', attributes.alignment.wrapText);}
          if (attributes.alignment.textRotation!=undefined)  { $alignment.attr('textRotation', attributes.alignment.textRotation);}
          $xf.append($alignment).attr('applyAlignment',1)
        }
        this.$cellXfs.append($xf);
        var count = +this.$cellXfs.children().length;
        this.$cellXfs.attr('count', count);
        return count - 1;
      },
      _addFont: function (attributes) {
        if (!attributes) {  return 0; }
        var $font = XmlNode('font')
            .append(XmlNode('sz').attr('val', attributes.sz || this.defaultStyle.font.sz))
            .append(XmlNode('name').attr('val', attributes.name || this.defaultStyle.font.name))
        if (attributes.bold) $font.append(XmlNode('b'));
        if (attributes.underline)  $font.append(XmlNode('u'));
        if (attributes.italic)  $font.append(XmlNode('i'));
        if (attributes.strike)  $font.append(XmlNode('strike'));
        if (attributes.outline)  $font.append(XmlNode('outline'));
        if (attributes.shadow)  $font.append(XmlNode('shadow'));
        if (attributes.vertAlign) {
          $font.append(XmlNode('vertAlign').attr('val', attributes.vertAlign))
        }
        if (attributes.color) {
          if (attributes.color.theme) {
            $font.append(XmlNode('color').attr('theme', attributes.color.theme))
            if (attributes.color.tint) { //tint only if theme
              $font.append(XmlNode('tint').attr('theme', attributes.color.tint))
            }
          } else if (attributes.color.rgb) { // not both rgb and theme
            $font.append(XmlNode('color').attr('rgb', attributes.color.rgb))
          }
        }
        this.$fonts.append($font);
        var count = this.$fonts.children().length;
        this.$fonts.attr('count', count);
        return count - 1;
      },
        _addNumFmt: function (numFmt) {
        if (!numFmt) { return 0; }
        if (typeof numFmt == 'string') {
          var numFmtIdx = fmt_table[numFmt];
          if (numFmtIdx >= 0) {
            return numFmtIdx; // we found a match against built in formats
          }
        }
        if (/^[0-9]+$/.exec(numFmt)) {
          return numFmt; // we're matching an integer against some known code
        }
        numFmt = numFmt
            .replace(/&/g, '&amp;')
            .replace(/</g, '&lt;')
            .replace(/>/g, '&gt;')
            .replace(/"/g, '&quot;')
            .replace(/'/g, '&apos;');
        var $numFmt = XmlNode('numFmt')
            .attr('numFmtId', (++customNumFmtId))
            .attr('formatCode', numFmt);
        this.$numFmts.append($numFmt);
        var count = this.$numFmts.children().length;
        this.$numFmts.attr('count', count);
        return customNumFmtId ;
      },
      _addFill: function (attributes) {
        if (!attributes) { return 0; }
        var $patternFill = XmlNode('patternFill')
            .attr('patternType', attributes.patternType || 'solid');
        if (attributes.fgColor) {
          var $fgColor = XmlNode('fgColor');
          //Excel doesn't like it when we set both rgb and theme+tint, but xlsx.parseFile() sets both
          //var $fgColor = createElement('<fgColor/>', null, null, {xmlMode: true}).attr(attributes.fgColor)
          if (attributes.fgColor.rgb) {
            if (attributes.fgColor.rgb.length == 6) {
              attributes.fgColor.rgb = "FF" + attributes.fgColor.rgb /// add alpha to an RGB as Excel expects aRGB
            }
            $fgColor.attr('rgb', attributes.fgColor.rgb);
            $patternFill.append($fgColor);
          }
          else if (attributes.fgColor.theme) {
            $fgColor.attr('theme', attributes.fgColor.theme);
            if (attributes.fgColor.tint) {
              $fgColor.attr('tint', attributes.fgColor.tint);
            }
            $patternFill.append($fgColor);
          }
          if (!attributes.bgColor) {
            attributes.bgColor = { "indexed": "64"}
          }
        }
        if (attributes.bgColor) {
          var $bgColor = XmlNode('bgColor').attr(attributes.bgColor);
          $patternFill.append($bgColor);
        }
        var $fill = XmlNode('fill')
            .append($patternFill);
        this.$fills.append($fill);
        var count = this.$fills.children().length;
        this.$fills.attr('count', count);
        return count - 1;
      },
      _getSubBorder: function(direction, spec) {
        var $direction = XmlNode(direction);
        if (spec){
          if (spec.style) $direction.attr('style', spec.style);
          if (spec.color) {
            var $color = XmlNode('color');
            if (spec.color.auto) {
              $color.attr('auto', spec.color.auto);
            }
            else if (spec.color.rgb) {
              $color.attr('rgb', spec.color.rgb);
            }
            else if (spec.color.theme || spec.color.tint) {
              $color.attr('theme', spec.color.theme || "1");
              $color.attr('tint', spec.color.tint || "0");
            }
            $direction.append($color)
          }
        }
        return $direction;
      },
      _addBorder: function (attributes) {
        if (!attributes) { return 0; }
        var self = this;
        var $border = XmlNode('border')
            .attr("diagonalUp",attributes.diagonalUp)
            .attr("diagonalDown",attributes.diagonalDown);
        var directions = ["left","right","top","bottom","diagonal"];
        directions.forEach(function(direction) {
          $border.append(self._getSubBorder(direction, attributes[direction]))
        });
        this.$borders.append($border);
        var count = this.$borders.children().length;
        this.$borders.attr('count', count);
        return count -1;
      },
      toXml: function () {
        return this.$styles.toXml();
      }
    }.initialize(options||{});
  }
Source/UBCS-WEB/src/config/js-xlsx-master/bits/98_exports.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,11 @@
XLSX.parse_xlscfb = parse_xlscfb;
XLSX.parse_zip = parse_zip;
XLSX.read = readSync; //xlsread
XLSX.readFile = readFileSync; //readFile
XLSX.readFileSync = readFileSync;
XLSX.write = writeSync;
XLSX.writeFile = writeFileSync;
XLSX.writeFileSync = writeFileSync;
XLSX.utils = utils;
XLSX.CFB = CFB;
XLSX.SSF = SSF;
Source/UBCS-WEB/src/config/js-xlsx-master/bits/99_footer.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,2 @@
})(typeof exports !== 'undefined' ? exports : XLSX);
var XLS = XLSX;
Source/UBCS-WEB/src/config/js-xlsx-master/bower.json
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
{
  "name": "js-xlsx",
  "homepage": "https://github.com/SheetJS/js-xlsx",
  "main": "dist/xlsx.js",
  "version": "0.8.20",
  "ignore": [
    "bin",
    "bits",
    "misc",
    "**/.*"
  ],
  "keywords": [
    "excel",
    "xls",
    "xml",
    "xlsx",
    "xlsm",
    "xlsb",
    "ods",
    "js-xls",
    "js-xlsx"
  ]
}
Source/UBCS-WEB/src/config/js-xlsx-master/cell_style_simple.json
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,1773 @@
{
    "!ref": "A1:J10",
    "A1": {
        "t": "n",
        "v": 1,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkHorizontal",
                "fgColor": {
                    "theme": 9,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 5,
                    "tint": 0.3999755851924192
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "1",
        "z": "General"
    },
    "B1": {
        "t": "n",
        "v": 2,
        "f": "A1+1",
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkHorizontal",
                "fgColor": {
                    "theme": 9,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 5,
                    "tint": 0.3999755851924192
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "2",
        "z": "General"
    },
    "C1": {
        "t": "n",
        "v": 3,
        "f": "B1+1",
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkHorizontal",
                "fgColor": {
                    "theme": 9,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 5,
                    "tint": 0.3999755851924192
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "3",
        "z": "General"
    },
    "D1": {
        "t": "n",
        "v": 4,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkHorizontal",
                "fgColor": {
                    "theme": 9,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 5,
                    "tint": 0.3999755851924192
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "4",
        "z": "General"
    },
    "E1": {
        "t": "n",
        "v": 5,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightDown",
                "fgColor": {
                    "theme": 4,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 7,
                    "tint": -0.249977111117893
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "5",
        "z": "General"
    },
    "F1": {
        "t": "n",
        "v": 6,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkHorizontal",
                "fgColor": {
                    "theme": 9,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 5,
                    "tint": 0.3999755851924192
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "6",
        "z": "General"
    },
    "G1": {
        "t": "n",
        "v": 7,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkHorizontal",
                "fgColor": {
                    "theme": 9,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 5,
                    "tint": 0.3999755851924192
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "7",
        "z": "General"
    },
    "H1": {
        "t": "n",
        "v": 8,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGrid",
                "fgColor": {
                    "theme": 4
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.749992370372631
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "8",
        "z": "General"
    },
    "I1": {
        "t": "n",
        "v": 9,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGrid",
                "fgColor": {
                    "theme": 4
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.749992370372631
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "9",
        "z": "General"
    },
    "J1": {
        "t": "n",
        "v": 10,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGrid",
                "fgColor": {
                    "theme": 4
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.749992370372631
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "10",
        "z": "General"
    },
    "A2": {
        "t": "n",
        "v": 2,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkUp",
                "fgColor": {
                    "theme": 3,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 7,
                    "tint": 0.3999755851924192
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "2",
        "z": "General"
    },
    "B2": {
        "t": "n",
        "v": 3,
        "f": "A2+1",
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkUp",
                "fgColor": {
                    "theme": 3,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 7,
                    "tint": 0.3999755851924192
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "3",
        "z": "General"
    },
    "C2": {
        "t": "n",
        "v": 4,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkUp",
                "fgColor": {
                    "theme": 3,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 7,
                    "tint": 0.3999755851924192
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "4",
        "z": "General"
    },
    "D2": {
        "t": "n",
        "v": 5,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkUp",
                "fgColor": {
                    "theme": 3,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 7,
                    "tint": 0.3999755851924192
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "5",
        "z": "General"
    },
    "E2": {
        "t": "n",
        "v": 6,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightDown",
                "fgColor": {
                    "theme": 4,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 7,
                    "tint": -0.249977111117893
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "6",
        "z": "General"
    },
    "F2": {
        "t": "n",
        "v": 7,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkUp",
                "fgColor": {
                    "theme": 3,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 7,
                    "tint": 0.3999755851924192
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "7",
        "z": "General"
    },
    "G2": {
        "t": "n",
        "v": 8,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkUp",
                "fgColor": {
                    "theme": 3,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 7,
                    "tint": 0.3999755851924192
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "8",
        "z": "General"
    },
    "H2": {
        "t": "n",
        "v": 9,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGrid",
                "fgColor": {
                    "theme": 4
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.749992370372631
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "9",
        "z": "General"
    },
    "I2": {
        "t": "n",
        "v": 10,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGrid",
                "fgColor": {
                    "theme": 4
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.749992370372631
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "10",
        "z": "General"
    },
    "J2": {
        "t": "n",
        "v": 11,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGrid",
                "fgColor": {
                    "theme": 4
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.749992370372631
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "11",
        "z": "General"
    },
    "A3": {
        "t": "n",
        "v": 3,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkGray",
                "fgColor": {
                    "theme": 3
                },
                "bgColor": {
                    "theme": 1
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "3",
        "z": "General"
    },
    "B3": {
        "t": "n",
        "v": 4,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGray",
                "fgColor": {
                    "theme": 6,
                    "tint": 0.3999755851924192
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.499984740745262
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "4",
        "z": "General"
    },
    "C3": {
        "t": "n",
        "v": 5,
        "w": "5",
        "z": "General"
    },
    "D3": {
        "t": "n",
        "v": 6,
        "w": "6",
        "z": "General"
    },
    "E3": {
        "t": "n",
        "v": 7,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightDown",
                "fgColor": {
                    "theme": 4,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 7,
                    "tint": -0.249977111117893
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "7",
        "z": "General"
    },
    "F3": {
        "t": "n",
        "v": 8,
        "w": "8",
        "z": "General"
    },
    "G3": {
        "t": "n",
        "v": 9,
        "w": "9",
        "z": "General"
    },
    "H3": {
        "t": "n",
        "v": 10,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGrid",
                "fgColor": {
                    "theme": 4
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.749992370372631
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "10",
        "z": "General"
    },
    "I3": {
        "t": "n",
        "v": 11,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGrid",
                "fgColor": {
                    "theme": 4
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.749992370372631
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "11",
        "z": "General"
    },
    "J3": {
        "t": "n",
        "v": 12,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGrid",
                "fgColor": {
                    "theme": 4
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.749992370372631
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "12",
        "z": "General"
    },
    "A4": {
        "t": "n",
        "v": 4,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkGray",
                "fgColor": {
                    "theme": 3
                },
                "bgColor": {
                    "theme": 1
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "4",
        "z": "General"
    },
    "B4": {
        "t": "n",
        "v": 5,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGray",
                "fgColor": {
                    "theme": 6,
                    "tint": 0.3999755851924192
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.499984740745262
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "5",
        "z": "General"
    },
    "C4": {
        "t": "n",
        "v": 6,
        "w": "6",
        "z": "General"
    },
    "D4": {
        "t": "n",
        "v": 7,
        "w": "7",
        "z": "General"
    },
    "E4": {
        "t": "n",
        "v": 8,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightDown",
                "fgColor": {
                    "theme": 4,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 7,
                    "tint": -0.249977111117893
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "8",
        "z": "General"
    },
    "F4": {
        "t": "n",
        "v": 9,
        "w": "9",
        "z": "General"
    },
    "G4": {
        "t": "n",
        "v": 10,
        "w": "10",
        "z": "General"
    },
    "H4": {
        "t": "n",
        "v": 11,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGrid",
                "fgColor": {
                    "theme": 4
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.749992370372631
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "11",
        "z": "General"
    },
    "I4": {
        "t": "n",
        "v": 12,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGrid",
                "fgColor": {
                    "theme": 4
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.749992370372631
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "12",
        "z": "General"
    },
    "J4": {
        "t": "n",
        "v": 13,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGrid",
                "fgColor": {
                    "theme": 4
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.749992370372631
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "13",
        "z": "General"
    },
    "A5": {
        "t": "n",
        "v": 5,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkGray",
                "fgColor": {
                    "theme": 3
                },
                "bgColor": {
                    "theme": 1
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "5",
        "z": "General"
    },
    "B5": {
        "t": "n",
        "v": 6,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGray",
                "fgColor": {
                    "theme": 6,
                    "tint": 0.3999755851924192
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.499984740745262
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "6",
        "z": "General"
    },
    "C5": {
        "t": "n",
        "v": 7,
        "w": "7",
        "z": "General"
    },
    "D5": {
        "t": "n",
        "v": 8,
        "w": "8",
        "z": "General"
    },
    "E5": {
        "t": "n",
        "v": 9,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightDown",
                "fgColor": {
                    "theme": 4,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 7,
                    "tint": -0.249977111117893
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "9",
        "z": "General"
    },
    "F5": {
        "t": "n",
        "v": 10,
        "w": "10",
        "z": "General"
    },
    "G5": {
        "t": "n",
        "v": 11,
        "w": "11",
        "z": "General"
    },
    "H5": {
        "t": "n",
        "v": 12,
        "w": "12",
        "z": "General"
    },
    "I5": {
        "t": "n",
        "v": 13,
        "w": "13",
        "z": "General"
    },
    "J5": {
        "t": "n",
        "v": 14,
        "w": "14",
        "z": "General"
    },
    "A6": {
        "t": "n",
        "v": 6,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkGray",
                "fgColor": {
                    "theme": 3
                },
                "bgColor": {
                    "theme": 1
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "6",
        "z": "General"
    },
    "B6": {
        "t": "n",
        "v": 7,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGray",
                "fgColor": {
                    "theme": 6,
                    "tint": 0.3999755851924192
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.499984740745262
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "7",
        "z": "General"
    },
    "C6": {
        "t": "n",
        "v": 8,
        "w": "8",
        "z": "General"
    },
    "D6": {
        "t": "n",
        "v": 9,
        "w": "9",
        "z": "General"
    },
    "E6": {
        "t": "n",
        "v": 10,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightDown",
                "fgColor": {
                    "theme": 4,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 7,
                    "tint": -0.249977111117893
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "10",
        "z": "General"
    },
    "F6": {
        "t": "n",
        "v": 11,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGrid",
                "fgColor": {
                    "theme": 6,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 9,
                    "tint": -0.249977111117893
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "11",
        "z": "General"
    },
    "G6": {
        "t": "n",
        "v": 12,
        "w": "12",
        "z": "General"
    },
    "H6": {
        "t": "n",
        "v": 13,
        "w": "13",
        "z": "General"
    },
    "I6": {
        "t": "n",
        "v": 14,
        "w": "14",
        "z": "General"
    },
    "J6": {
        "t": "n",
        "v": 15,
        "w": "15",
        "z": "General"
    },
    "A7": {
        "t": "n",
        "v": 7,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkGray",
                "fgColor": {
                    "theme": 3
                },
                "bgColor": {
                    "theme": 1
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "7",
        "z": "General"
    },
    "B7": {
        "t": "n",
        "v": 8,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGray",
                "fgColor": {
                    "theme": 6,
                    "tint": 0.3999755851924192
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.499984740745262
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "8",
        "z": "General"
    },
    "C7": {
        "t": "n",
        "v": 9,
        "w": "9",
        "z": "General"
    },
    "D7": {
        "t": "n",
        "v": 10,
        "w": "10",
        "z": "General"
    },
    "E7": {
        "t": "n",
        "v": 11,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightDown",
                "fgColor": {
                    "theme": 4,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 7,
                    "tint": -0.249977111117893
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "11",
        "z": "General"
    },
    "F7": {
        "t": "n",
        "v": 12,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGrid",
                "fgColor": {
                    "theme": 6,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 9,
                    "tint": -0.249977111117893
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "12",
        "z": "General"
    },
    "G7": {
        "t": "n",
        "v": 13,
        "w": "13",
        "z": "General"
    },
    "H7": {
        "t": "n",
        "v": 14,
        "w": "14",
        "z": "General"
    },
    "I7": {
        "t": "n",
        "v": 15,
        "w": "15",
        "z": "General"
    },
    "J7": {
        "t": "n",
        "v": 16,
        "w": "16",
        "z": "General"
    },
    "A8": {
        "t": "n",
        "v": 8,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkGray",
                "fgColor": {
                    "theme": 3
                },
                "bgColor": {
                    "theme": 1
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "8",
        "z": "General"
    },
    "B8": {
        "t": "n",
        "v": 9,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGray",
                "fgColor": {
                    "theme": 6,
                    "tint": 0.3999755851924192
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.499984740745262
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "9",
        "z": "General"
    },
    "C8": {
        "t": "n",
        "v": 10,
        "w": "10",
        "z": "General"
    },
    "D8": {
        "t": "n",
        "v": 11,
        "w": "11",
        "z": "General"
    },
    "E8": {
        "t": "n",
        "v": 12,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightDown",
                "fgColor": {
                    "theme": 4,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 7,
                    "tint": -0.249977111117893
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "12",
        "z": "General"
    },
    "F8": {
        "t": "n",
        "v": 13,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGrid",
                "fgColor": {
                    "theme": 6,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 9,
                    "tint": -0.249977111117893
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "13",
        "z": "General"
    },
    "G8": {
        "t": "n",
        "v": 14,
        "w": "14",
        "z": "General"
    },
    "H8": {
        "t": "n",
        "v": 15,
        "w": "15",
        "z": "General"
    },
    "I8": {
        "t": "n",
        "v": 16,
        "w": "16",
        "z": "General"
    },
    "J8": {
        "t": "n",
        "v": 17,
        "w": "17",
        "z": "General"
    },
    "A9": {
        "t": "n",
        "v": 9,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkGray",
                "fgColor": {
                    "theme": 3
                },
                "bgColor": {
                    "theme": 1
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "9",
        "z": "General"
    },
    "B9": {
        "t": "n",
        "v": 10,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGray",
                "fgColor": {
                    "theme": 6,
                    "tint": 0.3999755851924192
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.499984740745262
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "10",
        "z": "General"
    },
    "C9": {
        "t": "n",
        "v": 11,
        "w": "11",
        "z": "General"
    },
    "D9": {
        "t": "n",
        "v": 12,
        "w": "12",
        "z": "General"
    },
    "E9": {
        "t": "n",
        "v": 13,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightDown",
                "fgColor": {
                    "theme": 4,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 7,
                    "tint": -0.249977111117893
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "13",
        "z": "General"
    },
    "F9": {
        "t": "n",
        "v": 14,
        "w": "14",
        "z": "General"
    },
    "G9": {
        "t": "n",
        "v": 15,
        "w": "15",
        "z": "General"
    },
    "H9": {
        "t": "n",
        "v": 16,
        "w": "16",
        "z": "General"
    },
    "I9": {
        "t": "n",
        "v": 17,
        "w": "17",
        "z": "General"
    },
    "J9": {
        "t": "n",
        "v": 18,
        "w": "18",
        "z": "General"
    },
    "A10": {
        "t": "n",
        "v": 10,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "darkGray",
                "fgColor": {
                    "theme": 3
                },
                "bgColor": {
                    "theme": 1
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "10",
        "z": "General"
    },
    "B10": {
        "t": "n",
        "v": 11,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightGray",
                "fgColor": {
                    "theme": 6,
                    "tint": 0.3999755851924192
                },
                "bgColor": {
                    "theme": 2,
                    "tint": -0.499984740745262
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "11",
        "z": "General"
    },
    "C10": {
        "t": "n",
        "v": 12,
        "w": "12",
        "z": "General"
    },
    "D10": {
        "t": "n",
        "v": 13,
        "w": "13",
        "z": "General"
    },
    "E10": {
        "t": "n",
        "v": 14,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightDown",
                "fgColor": {
                    "theme": 4,
                    "tint": -0.249977111117893
                },
                "bgColor": {
                    "theme": 7,
                    "tint": -0.249977111117893
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "14",
        "z": "General"
    },
    "F10": {
        "t": "n",
        "v": 15,
        "w": "15",
        "z": "General"
    },
    "G10": {
        "t": "n",
        "v": 16,
        "w": "16",
        "z": "General"
    },
    "H10": {
        "t": "n",
        "v": 17,
        "s": {
            "numFmt": "General",
            "fill": {
                "patternType": "lightVertical",
                "fgColor": {
                    "theme": 3,
                    "tint": 0.3999755851924192
                },
                "bgColor": {
                    "theme": 7,
                    "tint": 0.3999755851924192
                }
            },
            "font": {
                "sz": "12",
                "color": {
                    "theme": "1"
                },
                "name": "Calibri"
            },
            "border": {}
        },
        "w": "17",
        "z": "General"
    },
    "I10": {
        "t": "n",
        "v": 18,
        "w": "18",
        "z": "General"
    },
    "J10": {
        "t": "n",
        "v": 19,
        "w": "19",
        "z": "General"
    },
    "!cols": [
        [],
        [],
        null,
        null,
        []
    ]
}
Source/UBCS-WEB/src/config/js-xlsx-master/color.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,86 @@
function hex2RGB(h) {
    var o = h.substr(h[0]==="#"?1:0,6);
        var R = o.substr(0,2);
        var G = o.substr(2,2);
        var B = o.substr(4,2);
    return [parseInt(R,16),parseInt(G,16),parseInt(B,16)];
}
function rgb2Hex(rgb) {
    for(var i=0,o=1; i!=3; ++i) o = o*256 + (rgb[i]>255?255:rgb[i]<0?0:rgb[i]);
    return o.toString(16).toUpperCase().substr(1);
}
function rgb2HSL(rgb) {
    var R = rgb[0]/255, G = rgb[1]/255, B=rgb[2]/255;
    var M = Math.max(R, G, B), m = Math.min(R, G, B), C = M - m;
    if(C === 0) return [0, 0, R];
    var H6 = 0, S = 0, L2 = (M + m);
    S = C / (L2 > 1 ? 2 - L2 : L2);
    switch(M){
        case R: H6 = ((G - B) / C + 6)%6; break;
        case G: H6 = ((B - R) / C + 2); break;
        case B: H6 = ((R - G) / C + 4); break;
    }
    return [H6 / 6, S, L2 / 2];
}
function hsl2RGB(hsl){
    var H = hsl[0], S = hsl[1], L = hsl[2];
    var C = S * 2 * (L < 0.5 ? L : 1 - L), m = L - C/2;
    var rgb = [m,m,m], h6 = 6*H;
    var X;
    if(S !== 0) switch(h6|0) {
        case 0: case 6: X = C * h6; rgb[0] += C; rgb[1] += X; break;
        case 1: X = C * (2 - h6);   rgb[0] += X; rgb[1] += C; break;
        case 2: X = C * (h6 - 2);   rgb[1] += C; rgb[2] += X; break;
        case 3: X = C * (4 - h6);   rgb[1] += X; rgb[2] += C; break;
        case 4: X = C * (h6 - 4);   rgb[2] += C; rgb[0] += X; break;
        case 5: X = C * (6 - h6);   rgb[2] += X; rgb[0] += C; break;
    }
    for(var i = 0; i != 3; ++i) rgb[i] = Math.round(rgb[i]*255);
    return rgb;
}
/* 18.8.3 bgColor tint algorithm */
function rgb_tint(hex, tint) {
    if(tint === 0) return hex;
    var hsl = rgb2HSL(hex2RGB(hex));
    if (tint < 0) hsl[2] = hsl[2] * (1 + tint);
    else hsl[2] = 1 - (1 - hsl[2]) * (1 - tint);
    return rgb2Hex(hsl2RGB(hsl));
}
 var exp = [
      { patternType: 'darkHorizontal',
        fgColor: { theme: 9, "tint":-0.249977111117893, rgb: 'F79646' },
        bgColor: { theme: 5, "tint":0.3999755851924192, rgb: 'C0504D' } },
      { patternType: 'darkUp',
        fgColor: { theme: 3, "tint":-0.249977111117893, rgb: 'EEECE1' },
        bgColor: { theme: 7, "tint":0.3999755851924192, rgb: '8064A2' } },
      { patternType: 'darkGray',
        fgColor: { theme: 3, rgb: 'EEECE1' },
        bgColor: { theme: 1, rgb: 'FFFFFF' } },
      { patternType: 'lightGray',
        fgColor: { theme: 6, "tint":0.3999755851924192, rgb: '9BBB59' },
        bgColor: { theme: 2, "tint":-0.499984740745262, rgb: '1F497D' } },
      { patternType: 'lightDown',
        fgColor: { theme: 4, rgb: '4F81BD' },
        bgColor: { theme: 7, rgb: '8064A2' } },
      { patternType: 'lightGrid',
        fgColor: { theme: 6, "tint":-0.249977111117893, rgb: '9BBB59' },
        bgColor: { theme: 9, "tint":-0.249977111117893, rgb: 'F79646' } },
      { patternType: 'lightGrid',
        fgColor: { theme: 4, rgb: '4F81BD' },
        bgColor: { theme: 2, "tint":-0.749992370372631, rgb: '1F497D' } },
      { patternType: 'lightVertical',
        fgColor: { theme: 3, "tint":0.3999755851924192, rgb: 'EEECE1' },
        bgColor: { theme: 7, "tint":0.3999755851924192, rgb: '8064A2' } }
    ];
 var map = [];
 exp.forEach(function(e) {
    e.fgColor.new =  rgb_tint( e.fgColor.rgb,  e.fgColor.tint || 0);
console.log(e.fgColor.rgb, e.fgColor.new);
    e.bgColor.new =  rgb_tint( e.bgColor.rgb,  e.bgColor.tint || 0);
console.log(e.bgColor.rgb, e.bgColor.new);
 });
Source/UBCS-WEB/src/config/js-xlsx-master/dist/LICENSE
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Copyright (C) 2012-2015  SheetJS
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at
       http://www.apache.org/licenses/LICENSE-2.0
   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
Except where noted, this license applies to any and all software programs and associated documentation files created by the Original Author and distributed with the Software:
'jszip.js' is a modified version of JSZip, Copyright (c) Stuart Knightley, David Duponchel, Franz Buchinger, Ant'onio Afonso.  JSZip is dual licensed and is used according to the terms of the MIT License.
Source/UBCS-WEB/src/config/js-xlsx-master/dist/cpexcel.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,1324 @@
/* cpexcel.js (C) 2013-2014 SheetJS -- http://sheetjs.com */
/*jshint -W100 */
var cptable = {version:"1.3.7"};
cptable[874] = (function(){ var d = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€����…�����������‘’“”•–—�������� กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู����฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛����", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {"enc": e, "dec": D }; })();
cptable[932] = (function(){ var d = [], e = {}, D = [], j;
D[0] = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~���������������������������������。「」、・ヲァィゥェォャュョッーアイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワン゙゚��������������������������������".split("");
for(j = 0; j != D[0].length; ++j) if(D[0][j].charCodeAt(0) !== 0xFFFD) { e[D[0][j]] = 0 + j; d[0 + j] = D[0][j];}
D[129] = "���������������������������������������������������������������� 、。,.・:;?!゛゜´`¨^ ̄_ヽヾゝゞ〃仝々〆〇ー―‐/\~∥|…‥‘’“”()〔〕[]{}〈〉《》「」『』【】+-±×�÷=≠<>≦≧∞∴♂♀°′″℃¥$¢£%#&*@§☆★○●◎◇◆□■△▲▽▼※〒→←↑↓〓�����������∈∋⊆⊇⊂⊃∪∩��������∧∨¬⇒⇔∀∃�����������∠⊥⌒∂∇≡≒≪≫√∽∝∵∫∬�������ʼn♯♭♪†‡¶����◯���".split("");
for(j = 0; j != D[129].length; ++j) if(D[129][j].charCodeAt(0) !== 0xFFFD) { e[D[129][j]] = 33024 + j; d[33024 + j] = D[129][j];}
D[130] = "�������������������������������������������������������������������������������0123456789�������ABCDEFGHIJKLMNOPQRSTUVWXYZ�������abcdefghijklmnopqrstuvwxyz����ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん��������������".split("");
for(j = 0; j != D[130].length; ++j) if(D[130][j].charCodeAt(0) !== 0xFFFD) { e[D[130][j]] = 33280 + j; d[33280 + j] = D[130][j];}
D[131] = "����������������������������������������������������������������ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミ�ムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ��������ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ��������αβγδεζηθικλμνξοπρστυφχψω�����������������������������������������".split("");
for(j = 0; j != D[131].length; ++j) if(D[131][j].charCodeAt(0) !== 0xFFFD) { e[D[131][j]] = 33536 + j; d[33536 + j] = D[131][j];}
D[132] = "����������������������������������������������������������������АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ���������������абвгдеёжзийклмн�опрстуфхцчшщъыьэюя�������������─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂�����������������������������������������������������������������".split("");
for(j = 0; j != D[132].length; ++j) if(D[132][j].charCodeAt(0) !== 0xFFFD) { e[D[132][j]] = 33792 + j; d[33792 + j] = D[132][j];}
D[135] = "����������������������������������������������������������������①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ�㍉㌔㌢㍍㌘㌧㌃㌶㍑㍗㌍㌦㌣㌫㍊㌻㎜㎝㎞㎎㎏㏄㎡��������㍻�〝〟№㏍℡㊤㊥㊦㊧㊨㈱㈲㈹㍾㍽㍼≒≡∫∮∑√⊥∠∟⊿∵∩∪���������������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[135].length; ++j) if(D[135][j].charCodeAt(0) !== 0xFFFD) { e[D[135][j]] = 34560 + j; d[34560 + j] = D[135][j];}
D[136] = "���������������������������������������������������������������������������������������������������������������������������������������������������������������亜唖娃阿哀愛挨姶逢葵茜穐悪握渥旭葦芦鯵梓圧斡扱宛姐虻飴絢綾鮎或粟袷安庵按暗案闇鞍杏以伊位依偉囲夷委威尉惟意慰易椅為畏異移維緯胃萎衣謂違遺医井亥域育郁磯一壱溢逸稲茨芋鰯允印咽員因姻引飲淫胤蔭���".split("");
for(j = 0; j != D[136].length; ++j) if(D[136][j].charCodeAt(0) !== 0xFFFD) { e[D[136][j]] = 34816 + j; d[34816 + j] = D[136][j];}
D[137] = "����������������������������������������������������������������院陰隠韻吋右宇烏羽迂雨卯鵜窺丑碓臼渦嘘唄欝蔚鰻姥厩浦瓜閏噂云運雲荏餌叡営嬰影映曳栄永泳洩瑛盈穎頴英衛詠鋭液疫益駅悦謁越閲榎厭円�園堰奄宴延怨掩援沿演炎焔煙燕猿縁艶苑薗遠鉛鴛塩於汚甥凹央奥往応押旺横欧殴王翁襖鴬鴎黄岡沖荻億屋憶臆桶牡乙俺卸恩温穏音下化仮何伽価佳加可嘉夏嫁家寡科暇果架歌河火珂禍禾稼箇花苛茄荷華菓蝦課嘩貨迦過霞蚊俄峨我牙画臥芽蛾賀雅餓駕介会解回塊壊廻快怪悔恢懐戒拐改���".split("");
for(j = 0; j != D[137].length; ++j) if(D[137][j].charCodeAt(0) !== 0xFFFD) { e[D[137][j]] = 35072 + j; d[35072 + j] = D[137][j];}
D[138] = "����������������������������������������������������������������魁晦械海灰界皆絵芥蟹開階貝凱劾外咳害崖慨概涯碍蓋街該鎧骸浬馨蛙垣柿蛎鈎劃嚇各廓拡撹格核殻獲確穫覚角赫較郭閣隔革学岳楽額顎掛笠樫�橿梶鰍潟割喝恰括活渇滑葛褐轄且鰹叶椛樺鞄株兜竃蒲釜鎌噛鴨栢茅萱粥刈苅瓦乾侃冠寒刊勘勧巻喚堪姦完官寛干幹患感慣憾換敢柑桓棺款歓汗漢澗潅環甘監看竿管簡緩缶翰肝艦莞観諌貫還鑑間閑関陥韓館舘丸含岸巌玩癌眼岩翫贋雁頑顔願企伎危喜器基奇嬉寄岐希幾忌揮机旗既期棋棄���".split("");
for(j = 0; j != D[138].length; ++j) if(D[138][j].charCodeAt(0) !== 0xFFFD) { e[D[138][j]] = 35328 + j; d[35328 + j] = D[138][j];}
D[139] = "����������������������������������������������������������������機帰毅気汽畿祈季稀紀徽規記貴起軌輝飢騎鬼亀偽儀妓宜戯技擬欺犠疑祇義蟻誼議掬菊鞠吉吃喫桔橘詰砧杵黍却客脚虐逆丘久仇休及吸宮弓急救�朽求汲泣灸球究窮笈級糾給旧牛去居巨拒拠挙渠虚許距鋸漁禦魚亨享京供侠僑兇競共凶協匡卿叫喬境峡強彊怯恐恭挟教橋況狂狭矯胸脅興蕎郷鏡響饗驚仰凝尭暁業局曲極玉桐粁僅勤均巾錦斤欣欽琴禁禽筋緊芹菌衿襟謹近金吟銀九倶句区狗玖矩苦躯駆駈駒具愚虞喰空偶寓遇隅串櫛釧屑屈���".split("");
for(j = 0; j != D[139].length; ++j) if(D[139][j].charCodeAt(0) !== 0xFFFD) { e[D[139][j]] = 35584 + j; d[35584 + j] = D[139][j];}
D[140] = "����������������������������������������������������������������掘窟沓靴轡窪熊隈粂栗繰桑鍬勲君薫訓群軍郡卦袈祁係傾刑兄啓圭珪型契形径恵慶慧憩掲携敬景桂渓畦稽系経継繋罫茎荊蛍計詣警軽頚鶏芸迎鯨�劇戟撃激隙桁傑欠決潔穴結血訣月件倹倦健兼券剣喧圏堅嫌建憲懸拳捲検権牽犬献研硯絹県肩見謙賢軒遣鍵険顕験鹸元原厳幻弦減源玄現絃舷言諺限乎個古呼固姑孤己庫弧戸故枯湖狐糊袴股胡菰虎誇跨鈷雇顧鼓五互伍午呉吾娯後御悟梧檎瑚碁語誤護醐乞鯉交佼侯候倖光公功効勾厚口向���".split("");
for(j = 0; j != D[140].length; ++j) if(D[140][j].charCodeAt(0) !== 0xFFFD) { e[D[140][j]] = 35840 + j; d[35840 + j] = D[140][j];}
D[141] = "����������������������������������������������������������������后喉坑垢好孔孝宏工巧巷幸広庚康弘恒慌抗拘控攻昂晃更杭校梗構江洪浩港溝甲皇硬稿糠紅紘絞綱耕考肯肱腔膏航荒行衡講貢購郊酵鉱砿鋼閤降�項香高鴻剛劫号合壕拷濠豪轟麹克刻告国穀酷鵠黒獄漉腰甑忽惚骨狛込此頃今困坤墾婚恨懇昏昆根梱混痕紺艮魂些佐叉唆嵯左差査沙瑳砂詐鎖裟坐座挫債催再最哉塞妻宰彩才採栽歳済災采犀砕砦祭斎細菜裁載際剤在材罪財冴坂阪堺榊肴咲崎埼碕鷺作削咋搾昨朔柵窄策索錯桜鮭笹匙冊刷���".split("");
for(j = 0; j != D[141].length; ++j) if(D[141][j].charCodeAt(0) !== 0xFFFD) { e[D[141][j]] = 36096 + j; d[36096 + j] = D[141][j];}
D[142] = "����������������������������������������������������������������察拶撮擦札殺薩雑皐鯖捌錆鮫皿晒三傘参山惨撒散桟燦珊産算纂蚕讃賛酸餐斬暫残仕仔伺使刺司史嗣四士始姉姿子屍市師志思指支孜斯施旨枝止�死氏獅祉私糸紙紫肢脂至視詞詩試誌諮資賜雌飼歯事似侍児字寺慈持時次滋治爾璽痔磁示而耳自蒔辞汐鹿式識鴫竺軸宍雫七叱執失嫉室悉湿漆疾質実蔀篠偲柴芝屡蕊縞舎写射捨赦斜煮社紗者謝車遮蛇邪借勺尺杓灼爵酌釈錫若寂弱惹主取守手朱殊狩珠種腫趣酒首儒受呪寿授樹綬需囚収周���".split("");
for(j = 0; j != D[142].length; ++j) if(D[142][j].charCodeAt(0) !== 0xFFFD) { e[D[142][j]] = 36352 + j; d[36352 + j] = D[142][j];}
D[143] = "����������������������������������������������������������������宗就州修愁拾洲秀秋終繍習臭舟蒐衆襲讐蹴輯週酋酬集醜什住充十従戎柔汁渋獣縦重銃叔夙宿淑祝縮粛塾熟出術述俊峻春瞬竣舜駿准循旬楯殉淳�準潤盾純巡遵醇順処初所暑曙渚庶緒署書薯藷諸助叙女序徐恕鋤除傷償勝匠升召哨商唱嘗奨妾娼宵将小少尚庄床廠彰承抄招掌捷昇昌昭晶松梢樟樵沼消渉湘焼焦照症省硝礁祥称章笑粧紹肖菖蒋蕉衝裳訟証詔詳象賞醤鉦鍾鐘障鞘上丈丞乗冗剰城場壌嬢常情擾条杖浄状畳穣蒸譲醸錠嘱埴飾���".split("");
for(j = 0; j != D[143].length; ++j) if(D[143][j].charCodeAt(0) !== 0xFFFD) { e[D[143][j]] = 36608 + j; d[36608 + j] = D[143][j];}
D[144] = "����������������������������������������������������������������拭植殖燭織職色触食蝕辱尻伸信侵唇娠寝審心慎振新晋森榛浸深申疹真神秦紳臣芯薪親診身辛進針震人仁刃塵壬尋甚尽腎訊迅陣靭笥諏須酢図厨�逗吹垂帥推水炊睡粋翠衰遂酔錐錘随瑞髄崇嵩数枢趨雛据杉椙菅頗雀裾澄摺寸世瀬畝是凄制勢姓征性成政整星晴棲栖正清牲生盛精聖声製西誠誓請逝醒青静斉税脆隻席惜戚斥昔析石積籍績脊責赤跡蹟碩切拙接摂折設窃節説雪絶舌蝉仙先千占宣専尖川戦扇撰栓栴泉浅洗染潜煎煽旋穿箭線���".split("");
for(j = 0; j != D[144].length; ++j) if(D[144][j].charCodeAt(0) !== 0xFFFD) { e[D[144][j]] = 36864 + j; d[36864 + j] = D[144][j];}
D[145] = "����������������������������������������������������������������繊羨腺舛船薦詮賎践選遷銭銑閃鮮前善漸然全禅繕膳糎噌塑岨措曾曽楚狙疏疎礎祖租粗素組蘇訴阻遡鼠僧創双叢倉喪壮奏爽宋層匝惣想捜掃挿掻�操早曹巣槍槽漕燥争痩相窓糟総綜聡草荘葬蒼藻装走送遭鎗霜騒像増憎臓蔵贈造促側則即息捉束測足速俗属賊族続卒袖其揃存孫尊損村遜他多太汰詑唾堕妥惰打柁舵楕陀駄騨体堆対耐岱帯待怠態戴替泰滞胎腿苔袋貸退逮隊黛鯛代台大第醍題鷹滝瀧卓啄宅托択拓沢濯琢託鐸濁諾茸凧蛸只���".split("");
for(j = 0; j != D[145].length; ++j) if(D[145][j].charCodeAt(0) !== 0xFFFD) { e[D[145][j]] = 37120 + j; d[37120 + j] = D[145][j];}
D[146] = "����������������������������������������������������������������叩但達辰奪脱巽竪辿棚谷狸鱈樽誰丹単嘆坦担探旦歎淡湛炭短端箪綻耽胆蛋誕鍛団壇弾断暖檀段男談値知地弛恥智池痴稚置致蜘遅馳築畜竹筑蓄�逐秩窒茶嫡着中仲宙忠抽昼柱注虫衷註酎鋳駐樗瀦猪苧著貯丁兆凋喋寵帖帳庁弔張彫徴懲挑暢朝潮牒町眺聴脹腸蝶調諜超跳銚長頂鳥勅捗直朕沈珍賃鎮陳津墜椎槌追鎚痛通塚栂掴槻佃漬柘辻蔦綴鍔椿潰坪壷嬬紬爪吊釣鶴亭低停偵剃貞呈堤定帝底庭廷弟悌抵挺提梯汀碇禎程締艇訂諦蹄逓���".split("");
for(j = 0; j != D[146].length; ++j) if(D[146][j].charCodeAt(0) !== 0xFFFD) { e[D[146][j]] = 37376 + j; d[37376 + j] = D[146][j];}
D[147] = "����������������������������������������������������������������邸鄭釘鼎泥摘擢敵滴的笛適鏑溺哲徹撤轍迭鉄典填天展店添纏甜貼転顛点伝殿澱田電兎吐堵塗妬屠徒斗杜渡登菟賭途都鍍砥砺努度土奴怒倒党冬�凍刀唐塔塘套宕島嶋悼投搭東桃梼棟盗淘湯涛灯燈当痘祷等答筒糖統到董蕩藤討謄豆踏逃透鐙陶頭騰闘働動同堂導憧撞洞瞳童胴萄道銅峠鴇匿得徳涜特督禿篤毒独読栃橡凸突椴届鳶苫寅酉瀞噸屯惇敦沌豚遁頓呑曇鈍奈那内乍凪薙謎灘捺鍋楢馴縄畷南楠軟難汝二尼弐迩匂賑肉虹廿日乳入���".split("");
for(j = 0; j != D[147].length; ++j) if(D[147][j].charCodeAt(0) !== 0xFFFD) { e[D[147][j]] = 37632 + j; d[37632 + j] = D[147][j];}
D[148] = "����������������������������������������������������������������如尿韮任妊忍認濡禰祢寧葱猫熱年念捻撚燃粘乃廼之埜嚢悩濃納能脳膿農覗蚤巴把播覇杷波派琶破婆罵芭馬俳廃拝排敗杯盃牌背肺輩配倍培媒梅�楳煤狽買売賠陪這蝿秤矧萩伯剥博拍柏泊白箔粕舶薄迫曝漠爆縛莫駁麦函箱硲箸肇筈櫨幡肌畑畠八鉢溌発醗髪伐罰抜筏閥鳩噺塙蛤隼伴判半反叛帆搬斑板氾汎版犯班畔繁般藩販範釆煩頒飯挽晩番盤磐蕃蛮匪卑否妃庇彼悲扉批披斐比泌疲皮碑秘緋罷肥被誹費避非飛樋簸備尾微枇毘琵眉美���".split("");
for(j = 0; j != D[148].length; ++j) if(D[148][j].charCodeAt(0) !== 0xFFFD) { e[D[148][j]] = 37888 + j; d[37888 + j] = D[148][j];}
D[149] = "����������������������������������������������������������������鼻柊稗匹疋髭彦膝菱肘弼必畢筆逼桧姫媛紐百謬俵彪標氷漂瓢票表評豹廟描病秒苗錨鋲蒜蛭鰭品彬斌浜瀕貧賓頻敏瓶不付埠夫婦富冨布府怖扶敷�斧普浮父符腐膚芙譜負賦赴阜附侮撫武舞葡蕪部封楓風葺蕗伏副復幅服福腹複覆淵弗払沸仏物鮒分吻噴墳憤扮焚奮粉糞紛雰文聞丙併兵塀幣平弊柄並蔽閉陛米頁僻壁癖碧別瞥蔑箆偏変片篇編辺返遍便勉娩弁鞭保舗鋪圃捕歩甫補輔穂募墓慕戊暮母簿菩倣俸包呆報奉宝峰峯崩庖抱捧放方朋���".split("");
for(j = 0; j != D[149].length; ++j) if(D[149][j].charCodeAt(0) !== 0xFFFD) { e[D[149][j]] = 38144 + j; d[38144 + j] = D[149][j];}
D[150] = "����������������������������������������������������������������法泡烹砲縫胞芳萌蓬蜂褒訪豊邦鋒飽鳳鵬乏亡傍剖坊妨帽忘忙房暴望某棒冒紡肪膨謀貌貿鉾防吠頬北僕卜墨撲朴牧睦穆釦勃没殆堀幌奔本翻凡盆�摩磨魔麻埋妹昧枚毎哩槙幕膜枕鮪柾鱒桝亦俣又抹末沫迄侭繭麿万慢満漫蔓味未魅巳箕岬密蜜湊蓑稔脈妙粍民眠務夢無牟矛霧鵡椋婿娘冥名命明盟迷銘鳴姪牝滅免棉綿緬面麺摸模茂妄孟毛猛盲網耗蒙儲木黙目杢勿餅尤戻籾貰問悶紋門匁也冶夜爺耶野弥矢厄役約薬訳躍靖柳薮鑓愉愈油癒���".split("");
for(j = 0; j != D[150].length; ++j) if(D[150][j].charCodeAt(0) !== 0xFFFD) { e[D[150][j]] = 38400 + j; d[38400 + j] = D[150][j];}
D[151] = "����������������������������������������������������������������諭輸唯佑優勇友宥幽悠憂揖有柚湧涌猶猷由祐裕誘遊邑郵雄融夕予余与誉輿預傭幼妖容庸揚揺擁曜楊様洋溶熔用窯羊耀葉蓉要謡踊遥陽養慾抑欲�沃浴翌翼淀羅螺裸来莱頼雷洛絡落酪乱卵嵐欄濫藍蘭覧利吏履李梨理璃痢裏裡里離陸律率立葎掠略劉流溜琉留硫粒隆竜龍侶慮旅虜了亮僚両凌寮料梁涼猟療瞭稜糧良諒遼量陵領力緑倫厘林淋燐琳臨輪隣鱗麟瑠塁涙累類令伶例冷励嶺怜玲礼苓鈴隷零霊麗齢暦歴列劣烈裂廉恋憐漣煉簾練聯���".split("");
for(j = 0; j != D[151].length; ++j) if(D[151][j].charCodeAt(0) !== 0xFFFD) { e[D[151][j]] = 38656 + j; d[38656 + j] = D[151][j];}
D[152] = "����������������������������������������������������������������蓮連錬呂魯櫓炉賂路露労婁廊弄朗楼榔浪漏牢狼篭老聾蝋郎六麓禄肋録論倭和話歪賄脇惑枠鷲亙亘鰐詫藁蕨椀湾碗腕��������������������������������������������弌丐丕个丱丶丼丿乂乖乘亂亅豫亊舒弍于亞亟亠亢亰亳亶从仍仄仆仂仗仞仭仟价伉佚估佛佝佗佇佶侈侏侘佻佩佰侑佯來侖儘俔俟俎俘俛俑俚俐俤俥倚倨倔倪倥倅伜俶倡倩倬俾俯們倆偃假會偕偐偈做偖偬偸傀傚傅傴傲���".split("");
for(j = 0; j != D[152].length; ++j) if(D[152][j].charCodeAt(0) !== 0xFFFD) { e[D[152][j]] = 38912 + j; d[38912 + j] = D[152][j];}
D[153] = "����������������������������������������������������������������僉僊傳僂僖僞僥僭僣僮價僵儉儁儂儖儕儔儚儡儺儷儼儻儿兀兒兌兔兢竸兩兪兮冀冂囘册冉冏冑冓冕冖冤冦冢冩冪冫决冱冲冰况冽凅凉凛几處凩凭�凰凵凾刄刋刔刎刧刪刮刳刹剏剄剋剌剞剔剪剴剩剳剿剽劍劔劒剱劈劑辨辧劬劭劼劵勁勍勗勞勣勦飭勠勳勵勸勹匆匈甸匍匐匏匕匚匣匯匱匳匸區卆卅丗卉卍凖卞卩卮夘卻卷厂厖厠厦厥厮厰厶參簒雙叟曼燮叮叨叭叺吁吽呀听吭吼吮吶吩吝呎咏呵咎呟呱呷呰咒呻咀呶咄咐咆哇咢咸咥咬哄哈咨���".split("");
for(j = 0; j != D[153].length; ++j) if(D[153][j].charCodeAt(0) !== 0xFFFD) { e[D[153][j]] = 39168 + j; d[39168 + j] = D[153][j];}
D[154] = "����������������������������������������������������������������咫哂咤咾咼哘哥哦唏唔哽哮哭哺哢唹啀啣啌售啜啅啖啗唸唳啝喙喀咯喊喟啻啾喘喞單啼喃喩喇喨嗚嗅嗟嗄嗜嗤嗔嘔嗷嘖嗾嗽嘛嗹噎噐營嘴嘶嘲嘸�噫噤嘯噬噪嚆嚀嚊嚠嚔嚏嚥嚮嚶嚴囂嚼囁囃囀囈囎囑囓囗囮囹圀囿圄圉圈國圍圓團圖嗇圜圦圷圸坎圻址坏坩埀垈坡坿垉垓垠垳垤垪垰埃埆埔埒埓堊埖埣堋堙堝塲堡塢塋塰毀塒堽塹墅墹墟墫墺壞墻墸墮壅壓壑壗壙壘壥壜壤壟壯壺壹壻壼壽夂夊夐夛梦夥夬夭夲夸夾竒奕奐奎奚奘奢奠奧奬奩���".split("");
for(j = 0; j != D[154].length; ++j) if(D[154][j].charCodeAt(0) !== 0xFFFD) { e[D[154][j]] = 39424 + j; d[39424 + j] = D[154][j];}
D[155] = "����������������������������������������������������������������奸妁妝佞侫妣妲姆姨姜妍姙姚娥娟娑娜娉娚婀婬婉娵娶婢婪媚媼媾嫋嫂媽嫣嫗嫦嫩嫖嫺嫻嬌嬋嬖嬲嫐嬪嬶嬾孃孅孀孑孕孚孛孥孩孰孳孵學斈孺宀�它宦宸寃寇寉寔寐寤實寢寞寥寫寰寶寳尅將專對尓尠尢尨尸尹屁屆屎屓屐屏孱屬屮乢屶屹岌岑岔妛岫岻岶岼岷峅岾峇峙峩峽峺峭嶌峪崋崕崗嵜崟崛崑崔崢崚崙崘嵌嵒嵎嵋嵬嵳嵶嶇嶄嶂嶢嶝嶬嶮嶽嶐嶷嶼巉巍巓巒巖巛巫已巵帋帚帙帑帛帶帷幄幃幀幎幗幔幟幢幤幇幵并幺麼广庠廁廂廈廐廏���".split("");
for(j = 0; j != D[155].length; ++j) if(D[155][j].charCodeAt(0) !== 0xFFFD) { e[D[155][j]] = 39680 + j; d[39680 + j] = D[155][j];}
D[156] = "����������������������������������������������������������������廖廣廝廚廛廢廡廨廩廬廱廳廰廴廸廾弃弉彝彜弋弑弖弩弭弸彁彈彌彎弯彑彖彗彙彡彭彳彷徃徂彿徊很徑徇從徙徘徠徨徭徼忖忻忤忸忱忝悳忿怡恠�怙怐怩怎怱怛怕怫怦怏怺恚恁恪恷恟恊恆恍恣恃恤恂恬恫恙悁悍惧悃悚悄悛悖悗悒悧悋惡悸惠惓悴忰悽惆悵惘慍愕愆惶惷愀惴惺愃愡惻惱愍愎慇愾愨愧慊愿愼愬愴愽慂慄慳慷慘慙慚慫慴慯慥慱慟慝慓慵憙憖憇憬憔憚憊憑憫憮懌懊應懷懈懃懆憺懋罹懍懦懣懶懺懴懿懽懼懾戀戈戉戍戌戔戛���".split("");
for(j = 0; j != D[156].length; ++j) if(D[156][j].charCodeAt(0) !== 0xFFFD) { e[D[156][j]] = 39936 + j; d[39936 + j] = D[156][j];}
D[157] = "����������������������������������������������������������������戞戡截戮戰戲戳扁扎扞扣扛扠扨扼抂抉找抒抓抖拔抃抔拗拑抻拏拿拆擔拈拜拌拊拂拇抛拉挌拮拱挧挂挈拯拵捐挾捍搜捏掖掎掀掫捶掣掏掉掟掵捫�捩掾揩揀揆揣揉插揶揄搖搴搆搓搦搶攝搗搨搏摧摯摶摎攪撕撓撥撩撈撼據擒擅擇撻擘擂擱擧舉擠擡抬擣擯攬擶擴擲擺攀擽攘攜攅攤攣攫攴攵攷收攸畋效敖敕敍敘敞敝敲數斂斃變斛斟斫斷旃旆旁旄旌旒旛旙无旡旱杲昊昃旻杳昵昶昴昜晏晄晉晁晞晝晤晧晨晟晢晰暃暈暎暉暄暘暝曁暹曉暾暼���".split("");
for(j = 0; j != D[157].length; ++j) if(D[157][j].charCodeAt(0) !== 0xFFFD) { e[D[157][j]] = 40192 + j; d[40192 + j] = D[157][j];}
D[158] = "����������������������������������������������������������������曄暸曖曚曠昿曦曩曰曵曷朏朖朞朦朧霸朮朿朶杁朸朷杆杞杠杙杣杤枉杰枩杼杪枌枋枦枡枅枷柯枴柬枳柩枸柤柞柝柢柮枹柎柆柧檜栞框栩桀桍栲桎�梳栫桙档桷桿梟梏梭梔條梛梃檮梹桴梵梠梺椏梍桾椁棊椈棘椢椦棡椌棍棔棧棕椶椒椄棗棣椥棹棠棯椨椪椚椣椡棆楹楷楜楸楫楔楾楮椹楴椽楙椰楡楞楝榁楪榲榮槐榿槁槓榾槎寨槊槝榻槃榧樮榑榠榜榕榴槞槨樂樛槿權槹槲槧樅榱樞槭樔槫樊樒櫁樣樓橄樌橲樶橸橇橢橙橦橈樸樢檐檍檠檄檢檣���".split("");
for(j = 0; j != D[158].length; ++j) if(D[158][j].charCodeAt(0) !== 0xFFFD) { e[D[158][j]] = 40448 + j; d[40448 + j] = D[158][j];}
D[159] = "����������������������������������������������������������������檗蘗檻櫃櫂檸檳檬櫞櫑櫟檪櫚櫪櫻欅蘖櫺欒欖鬱欟欸欷盜欹飮歇歃歉歐歙歔歛歟歡歸歹歿殀殄殃殍殘殕殞殤殪殫殯殲殱殳殷殼毆毋毓毟毬毫毳毯�麾氈氓气氛氤氣汞汕汢汪沂沍沚沁沛汾汨汳沒沐泄泱泓沽泗泅泝沮沱沾沺泛泯泙泪洟衍洶洫洽洸洙洵洳洒洌浣涓浤浚浹浙涎涕濤涅淹渕渊涵淇淦涸淆淬淞淌淨淒淅淺淙淤淕淪淮渭湮渮渙湲湟渾渣湫渫湶湍渟湃渺湎渤滿渝游溂溪溘滉溷滓溽溯滄溲滔滕溏溥滂溟潁漑灌滬滸滾漿滲漱滯漲滌���".split("");
for(j = 0; j != D[159].length; ++j) if(D[159][j].charCodeAt(0) !== 0xFFFD) { e[D[159][j]] = 40704 + j; d[40704 + j] = D[159][j];}
D[224] = "����������������������������������������������������������������漾漓滷澆潺潸澁澀潯潛濳潭澂潼潘澎澑濂潦澳澣澡澤澹濆澪濟濕濬濔濘濱濮濛瀉瀋濺瀑瀁瀏濾瀛瀚潴瀝瀘瀟瀰瀾瀲灑灣炙炒炯烱炬炸炳炮烟烋烝�烙焉烽焜焙煥煕熈煦煢煌煖煬熏燻熄熕熨熬燗熹熾燒燉燔燎燠燬燧燵燼燹燿爍爐爛爨爭爬爰爲爻爼爿牀牆牋牘牴牾犂犁犇犒犖犢犧犹犲狃狆狄狎狒狢狠狡狹狷倏猗猊猜猖猝猴猯猩猥猾獎獏默獗獪獨獰獸獵獻獺珈玳珎玻珀珥珮珞璢琅瑯琥珸琲琺瑕琿瑟瑙瑁瑜瑩瑰瑣瑪瑶瑾璋璞璧瓊瓏瓔珱���".split("");
for(j = 0; j != D[224].length; ++j) if(D[224][j].charCodeAt(0) !== 0xFFFD) { e[D[224][j]] = 57344 + j; d[57344 + j] = D[224][j];}
D[225] = "����������������������������������������������������������������瓠瓣瓧瓩瓮瓲瓰瓱瓸瓷甄甃甅甌甎甍甕甓甞甦甬甼畄畍畊畉畛畆畚畩畤畧畫畭畸當疆疇畴疊疉疂疔疚疝疥疣痂疳痃疵疽疸疼疱痍痊痒痙痣痞痾痿�痼瘁痰痺痲痳瘋瘍瘉瘟瘧瘠瘡瘢瘤瘴瘰瘻癇癈癆癜癘癡癢癨癩癪癧癬癰癲癶癸發皀皃皈皋皎皖皓皙皚皰皴皸皹皺盂盍盖盒盞盡盥盧盪蘯盻眈眇眄眩眤眞眥眦眛眷眸睇睚睨睫睛睥睿睾睹瞎瞋瞑瞠瞞瞰瞶瞹瞿瞼瞽瞻矇矍矗矚矜矣矮矼砌砒礦砠礪硅碎硴碆硼碚碌碣碵碪碯磑磆磋磔碾碼磅磊磬���".split("");
for(j = 0; j != D[225].length; ++j) if(D[225][j].charCodeAt(0) !== 0xFFFD) { e[D[225][j]] = 57600 + j; d[57600 + j] = D[225][j];}
D[226] = "����������������������������������������������������������������磧磚磽磴礇礒礑礙礬礫祀祠祗祟祚祕祓祺祿禊禝禧齋禪禮禳禹禺秉秕秧秬秡秣稈稍稘稙稠稟禀稱稻稾稷穃穗穉穡穢穩龝穰穹穽窈窗窕窘窖窩竈窰�窶竅竄窿邃竇竊竍竏竕竓站竚竝竡竢竦竭竰笂笏笊笆笳笘笙笞笵笨笶筐筺笄筍笋筌筅筵筥筴筧筰筱筬筮箝箘箟箍箜箚箋箒箏筝箙篋篁篌篏箴篆篝篩簑簔篦篥籠簀簇簓篳篷簗簍篶簣簧簪簟簷簫簽籌籃籔籏籀籐籘籟籤籖籥籬籵粃粐粤粭粢粫粡粨粳粲粱粮粹粽糀糅糂糘糒糜糢鬻糯糲糴糶糺紆���".split("");
for(j = 0; j != D[226].length; ++j) if(D[226][j].charCodeAt(0) !== 0xFFFD) { e[D[226][j]] = 57856 + j; d[57856 + j] = D[226][j];}
D[227] = "����������������������������������������������������������������紂紜紕紊絅絋紮紲紿紵絆絳絖絎絲絨絮絏絣經綉絛綏絽綛綺綮綣綵緇綽綫總綢綯緜綸綟綰緘緝緤緞緻緲緡縅縊縣縡縒縱縟縉縋縢繆繦縻縵縹繃縷�縲縺繧繝繖繞繙繚繹繪繩繼繻纃緕繽辮繿纈纉續纒纐纓纔纖纎纛纜缸缺罅罌罍罎罐网罕罔罘罟罠罨罩罧罸羂羆羃羈羇羌羔羞羝羚羣羯羲羹羮羶羸譱翅翆翊翕翔翡翦翩翳翹飜耆耄耋耒耘耙耜耡耨耿耻聊聆聒聘聚聟聢聨聳聲聰聶聹聽聿肄肆肅肛肓肚肭冐肬胛胥胙胝胄胚胖脉胯胱脛脩脣脯腋���".split("");
for(j = 0; j != D[227].length; ++j) if(D[227][j].charCodeAt(0) !== 0xFFFD) { e[D[227][j]] = 58112 + j; d[58112 + j] = D[227][j];}
D[228] = "����������������������������������������������������������������隋腆脾腓腑胼腱腮腥腦腴膃膈膊膀膂膠膕膤膣腟膓膩膰膵膾膸膽臀臂膺臉臍臑臙臘臈臚臟臠臧臺臻臾舁舂舅與舊舍舐舖舩舫舸舳艀艙艘艝艚艟艤�艢艨艪艫舮艱艷艸艾芍芒芫芟芻芬苡苣苟苒苴苳苺莓范苻苹苞茆苜茉苙茵茴茖茲茱荀茹荐荅茯茫茗茘莅莚莪莟莢莖茣莎莇莊荼莵荳荵莠莉莨菴萓菫菎菽萃菘萋菁菷萇菠菲萍萢萠莽萸蔆菻葭萪萼蕚蒄葷葫蒭葮蒂葩葆萬葯葹萵蓊葢蒹蒿蒟蓙蓍蒻蓚蓐蓁蓆蓖蒡蔡蓿蓴蔗蔘蔬蔟蔕蔔蓼蕀蕣蕘蕈���".split("");
for(j = 0; j != D[228].length; ++j) if(D[228][j].charCodeAt(0) !== 0xFFFD) { e[D[228][j]] = 58368 + j; d[58368 + j] = D[228][j];}
D[229] = "����������������������������������������������������������������蕁蘂蕋蕕薀薤薈薑薊薨蕭薔薛藪薇薜蕷蕾薐藉薺藏薹藐藕藝藥藜藹蘊蘓蘋藾藺蘆蘢蘚蘰蘿虍乕虔號虧虱蚓蚣蚩蚪蚋蚌蚶蚯蛄蛆蚰蛉蠣蚫蛔蛞蛩蛬�蛟蛛蛯蜒蜆蜈蜀蜃蛻蜑蜉蜍蛹蜊蜴蜿蜷蜻蜥蜩蜚蝠蝟蝸蝌蝎蝴蝗蝨蝮蝙蝓蝣蝪蠅螢螟螂螯蟋螽蟀蟐雖螫蟄螳蟇蟆螻蟯蟲蟠蠏蠍蟾蟶蟷蠎蟒蠑蠖蠕蠢蠡蠱蠶蠹蠧蠻衄衂衒衙衞衢衫袁衾袞衵衽袵衲袂袗袒袮袙袢袍袤袰袿袱裃裄裔裘裙裝裹褂裼裴裨裲褄褌褊褓襃褞褥褪褫襁襄褻褶褸襌褝襠襞���".split("");
for(j = 0; j != D[229].length; ++j) if(D[229][j].charCodeAt(0) !== 0xFFFD) { e[D[229][j]] = 58624 + j; d[58624 + j] = D[229][j];}
D[230] = "����������������������������������������������������������������襦襤襭襪襯襴襷襾覃覈覊覓覘覡覩覦覬覯覲覺覽覿觀觚觜觝觧觴觸訃訖訐訌訛訝訥訶詁詛詒詆詈詼詭詬詢誅誂誄誨誡誑誥誦誚誣諄諍諂諚諫諳諧�諤諱謔諠諢諷諞諛謌謇謚諡謖謐謗謠謳鞫謦謫謾謨譁譌譏譎證譖譛譚譫譟譬譯譴譽讀讌讎讒讓讖讙讚谺豁谿豈豌豎豐豕豢豬豸豺貂貉貅貊貍貎貔豼貘戝貭貪貽貲貳貮貶賈賁賤賣賚賽賺賻贄贅贊贇贏贍贐齎贓賍贔贖赧赭赱赳趁趙跂趾趺跏跚跖跌跛跋跪跫跟跣跼踈踉跿踝踞踐踟蹂踵踰踴蹊���".split("");
for(j = 0; j != D[230].length; ++j) if(D[230][j].charCodeAt(0) !== 0xFFFD) { e[D[230][j]] = 58880 + j; d[58880 + j] = D[230][j];}
D[231] = "����������������������������������������������������������������蹇蹉蹌蹐蹈蹙蹤蹠踪蹣蹕蹶蹲蹼躁躇躅躄躋躊躓躑躔躙躪躡躬躰軆躱躾軅軈軋軛軣軼軻軫軾輊輅輕輒輙輓輜輟輛輌輦輳輻輹轅轂輾轌轉轆轎轗轜�轢轣轤辜辟辣辭辯辷迚迥迢迪迯邇迴逅迹迺逑逕逡逍逞逖逋逧逶逵逹迸遏遐遑遒逎遉逾遖遘遞遨遯遶隨遲邂遽邁邀邊邉邏邨邯邱邵郢郤扈郛鄂鄒鄙鄲鄰酊酖酘酣酥酩酳酲醋醉醂醢醫醯醪醵醴醺釀釁釉釋釐釖釟釡釛釼釵釶鈞釿鈔鈬鈕鈑鉞鉗鉅鉉鉤鉈銕鈿鉋鉐銜銖銓銛鉚鋏銹銷鋩錏鋺鍄錮���".split("");
for(j = 0; j != D[231].length; ++j) if(D[231][j].charCodeAt(0) !== 0xFFFD) { e[D[231][j]] = 59136 + j; d[59136 + j] = D[231][j];}
D[232] = "����������������������������������������������������������������錙錢錚錣錺錵錻鍜鍠鍼鍮鍖鎰鎬鎭鎔鎹鏖鏗鏨鏥鏘鏃鏝鏐鏈鏤鐚鐔鐓鐃鐇鐐鐶鐫鐵鐡鐺鑁鑒鑄鑛鑠鑢鑞鑪鈩鑰鑵鑷鑽鑚鑼鑾钁鑿閂閇閊閔閖閘閙�閠閨閧閭閼閻閹閾闊濶闃闍闌闕闔闖關闡闥闢阡阨阮阯陂陌陏陋陷陜陞陝陟陦陲陬隍隘隕隗險隧隱隲隰隴隶隸隹雎雋雉雍襍雜霍雕雹霄霆霈霓霎霑霏霖霙霤霪霰霹霽霾靄靆靈靂靉靜靠靤靦靨勒靫靱靹鞅靼鞁靺鞆鞋鞏鞐鞜鞨鞦鞣鞳鞴韃韆韈韋韜韭齏韲竟韶韵頏頌頸頤頡頷頽顆顏顋顫顯顰���".split("");
for(j = 0; j != D[232].length; ++j) if(D[232][j].charCodeAt(0) !== 0xFFFD) { e[D[232][j]] = 59392 + j; d[59392 + j] = D[232][j];}
D[233] = "����������������������������������������������������������������顱顴顳颪颯颱颶飄飃飆飩飫餃餉餒餔餘餡餝餞餤餠餬餮餽餾饂饉饅饐饋饑饒饌饕馗馘馥馭馮馼駟駛駝駘駑駭駮駱駲駻駸騁騏騅駢騙騫騷驅驂驀驃�騾驕驍驛驗驟驢驥驤驩驫驪骭骰骼髀髏髑髓體髞髟髢髣髦髯髫髮髴髱髷髻鬆鬘鬚鬟鬢鬣鬥鬧鬨鬩鬪鬮鬯鬲魄魃魏魍魎魑魘魴鮓鮃鮑鮖鮗鮟鮠鮨鮴鯀鯊鮹鯆鯏鯑鯒鯣鯢鯤鯔鯡鰺鯲鯱鯰鰕鰔鰉鰓鰌鰆鰈鰒鰊鰄鰮鰛鰥鰤鰡鰰鱇鰲鱆鰾鱚鱠鱧鱶鱸鳧鳬鳰鴉鴈鳫鴃鴆鴪鴦鶯鴣鴟鵄鴕鴒鵁鴿鴾鵆鵈���".split("");
for(j = 0; j != D[233].length; ++j) if(D[233][j].charCodeAt(0) !== 0xFFFD) { e[D[233][j]] = 59648 + j; d[59648 + j] = D[233][j];}
D[234] = "����������������������������������������������������������������鵝鵞鵤鵑鵐鵙鵲鶉鶇鶫鵯鵺鶚鶤鶩鶲鷄鷁鶻鶸鶺鷆鷏鷂鷙鷓鷸鷦鷭鷯鷽鸚鸛鸞鹵鹹鹽麁麈麋麌麒麕麑麝麥麩麸麪麭靡黌黎黏黐黔黜點黝黠黥黨黯�黴黶黷黹黻黼黽鼇鼈皷鼕鼡鼬鼾齊齒齔齣齟齠齡齦齧齬齪齷齲齶龕龜龠堯槇遙瑤凜熙�������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[234].length; ++j) if(D[234][j].charCodeAt(0) !== 0xFFFD) { e[D[234][j]] = 59904 + j; d[59904 + j] = D[234][j];}
D[237] = "����������������������������������������������������������������纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏�塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱���".split("");
for(j = 0; j != D[237].length; ++j) if(D[237][j].charCodeAt(0) !== 0xFFFD) { e[D[237][j]] = 60672 + j; d[60672 + j] = D[237][j];}
D[238] = "����������������������������������������������������������������犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙�蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑��ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹ¬¦'"���".split("");
for(j = 0; j != D[238].length; ++j) if(D[238][j].charCodeAt(0) !== 0xFFFD) { e[D[238][j]] = 60928 + j; d[60928 + j] = D[238][j];}
D[250] = "����������������������������������������������������������������ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ¬¦'"㈱№℡∵纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊�兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯���".split("");
for(j = 0; j != D[250].length; ++j) if(D[250][j].charCodeAt(0) !== 0xFFFD) { e[D[250][j]] = 64000 + j; d[64000 + j] = D[250][j];}
D[251] = "����������������������������������������������������������������涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神�祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙���".split("");
for(j = 0; j != D[251].length; ++j) if(D[251][j].charCodeAt(0) !== 0xFFFD) { e[D[251][j]] = 64256 + j; d[64256 + j] = D[251][j];}
D[252] = "����������������������������������������������������������������髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[252].length; ++j) if(D[252][j].charCodeAt(0) !== 0xFFFD) { e[D[252][j]] = 64512 + j; d[64512 + j] = D[252][j];}
return {"enc": e, "dec": d }; })();
cptable[936] = (function(){ var d = [], e = {}, D = [], j;
D[0] = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�������������������������������������������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[0].length; ++j) if(D[0][j].charCodeAt(0) !== 0xFFFD) { e[D[0][j]] = 0 + j; d[0 + j] = D[0][j];}
D[129] = "����������������������������������������������������������������丂丄丅丆丏丒丗丟丠両丣並丩丮丯丱丳丵丷丼乀乁乂乄乆乊乑乕乗乚乛乢乣乤乥乧乨乪乫乬乭乮乯乲乴乵乶乷乸乹乺乻乼乽乿亀亁亂亃亄亅亇亊�亐亖亗亙亜亝亞亣亪亯亰亱亴亶亷亸亹亼亽亾仈仌仏仐仒仚仛仜仠仢仦仧仩仭仮仯仱仴仸仹仺仼仾伀伂伃伄伅伆伇伈伋伌伒伓伔伕伖伜伝伡伣伨伩伬伭伮伱伳伵伷伹伻伾伿佀佁佂佄佅佇佈佉佊佋佌佒佔佖佡佢佦佨佪佫佭佮佱佲併佷佸佹佺佽侀侁侂侅來侇侊侌侎侐侒侓侕侖侘侙侚侜侞侟価侢�".split("");
for(j = 0; j != D[129].length; ++j) if(D[129][j].charCodeAt(0) !== 0xFFFD) { e[D[129][j]] = 33024 + j; d[33024 + j] = D[129][j];}
D[130] = "����������������������������������������������������������������侤侫侭侰侱侲侳侴侶侷侸侹侺侻侼侽侾俀俁係俆俇俈俉俋俌俍俒俓俔俕俖俙俛俠俢俤俥俧俫俬俰俲俴俵俶俷俹俻俼俽俿倀倁倂倃倄倅倆倇倈倉倊�個倎倐們倓倕倖倗倛倝倞倠倢倣値倧倫倯倰倱倲倳倴倵倶倷倸倹倻倽倿偀偁偂偄偅偆偉偊偋偍偐偑偒偓偔偖偗偘偙偛偝偞偟偠偡偢偣偤偦偧偨偩偪偫偭偮偯偰偱偲偳側偵偸偹偺偼偽傁傂傃傄傆傇傉傊傋傌傎傏傐傑傒傓傔傕傖傗傘備傚傛傜傝傞傟傠傡傢傤傦傪傫傭傮傯傰傱傳傴債傶傷傸傹傼�".split("");
for(j = 0; j != D[130].length; ++j) if(D[130][j].charCodeAt(0) !== 0xFFFD) { e[D[130][j]] = 33280 + j; d[33280 + j] = D[130][j];}
D[131] = "����������������������������������������������������������������傽傾傿僀僁僂僃僄僅僆僇僈僉僊僋僌働僎僐僑僒僓僔僕僗僘僙僛僜僝僞僟僠僡僢僣僤僥僨僩僪僫僯僰僱僲僴僶僷僸價僺僼僽僾僿儀儁儂儃億儅儈�儉儊儌儍儎儏儐儑儓儔儕儖儗儘儙儚儛儜儝儞償儠儢儣儤儥儦儧儨儩優儫儬儭儮儯儰儱儲儳儴儵儶儷儸儹儺儻儼儽儾兂兇兊兌兎兏児兒兓兗兘兙兛兝兞兟兠兡兣兤兦內兩兪兯兲兺兾兿冃冄円冇冊冋冎冏冐冑冓冔冘冚冝冞冟冡冣冦冧冨冩冪冭冮冴冸冹冺冾冿凁凂凃凅凈凊凍凎凐凒凓凔凕凖凗�".split("");
for(j = 0; j != D[131].length; ++j) if(D[131][j].charCodeAt(0) !== 0xFFFD) { e[D[131][j]] = 33536 + j; d[33536 + j] = D[131][j];}
D[132] = "����������������������������������������������������������������凘凙凚凜凞凟凢凣凥処凧凨凩凪凬凮凱凲凴凷凾刄刅刉刋刌刏刐刓刔刕刜刞刟刡刢刣別刦刧刪刬刯刱刲刴刵刼刾剄剅剆則剈剉剋剎剏剒剓剕剗剘�剙剚剛剝剟剠剢剣剤剦剨剫剬剭剮剰剱剳剴創剶剷剸剹剺剻剼剾劀劃劄劅劆劇劉劊劋劌劍劎劏劑劒劔劕劖劗劘劙劚劜劤劥劦劧劮劯劰労劵劶劷劸効劺劻劼劽勀勁勂勄勅勆勈勊勌勍勎勏勑勓勔動勗務勚勛勜勝勞勠勡勢勣勥勦勧勨勩勪勫勬勭勮勯勱勲勳勴勵勶勷勸勻勼勽匁匂匃匄匇匉匊匋匌匎�".split("");
for(j = 0; j != D[132].length; ++j) if(D[132][j].charCodeAt(0) !== 0xFFFD) { e[D[132][j]] = 33792 + j; d[33792 + j] = D[132][j];}
D[133] = "����������������������������������������������������������������匑匒匓匔匘匛匜匞匟匢匤匥匧匨匩匫匬匭匯匰匱匲匳匴匵匶匷匸匼匽區卂卄卆卋卌卍卐協単卙卛卝卥卨卪卬卭卲卶卹卻卼卽卾厀厁厃厇厈厊厎厏�厐厑厒厓厔厖厗厙厛厜厞厠厡厤厧厪厫厬厭厯厰厱厲厳厴厵厷厸厹厺厼厽厾叀參叄叅叆叇収叏叐叒叓叕叚叜叝叞叡叢叧叴叺叾叿吀吂吅吇吋吔吘吙吚吜吢吤吥吪吰吳吶吷吺吽吿呁呂呄呅呇呉呌呍呎呏呑呚呝呞呟呠呡呣呥呧呩呪呫呬呭呮呯呰呴呹呺呾呿咁咃咅咇咈咉咊咍咑咓咗咘咜咞咟咠咡�".split("");
for(j = 0; j != D[133].length; ++j) if(D[133][j].charCodeAt(0) !== 0xFFFD) { e[D[133][j]] = 34048 + j; d[34048 + j] = D[133][j];}
D[134] = "����������������������������������������������������������������咢咥咮咰咲咵咶咷咹咺咼咾哃哅哊哋哖哘哛哠員哢哣哤哫哬哯哰哱哴哵哶哷哸哹哻哾唀唂唃唄唅唈唊唋唌唍唎唒唓唕唖唗唘唙唚唜唝唞唟唡唥唦�唨唩唫唭唲唴唵唶唸唹唺唻唽啀啂啅啇啈啋啌啍啎問啑啒啓啔啗啘啙啚啛啝啞啟啠啢啣啨啩啫啯啰啱啲啳啴啹啺啽啿喅喆喌喍喎喐喒喓喕喖喗喚喛喞喠喡喢喣喤喥喦喨喩喪喫喬喭單喯喰喲喴営喸喺喼喿嗀嗁嗂嗃嗆嗇嗈嗊嗋嗎嗏嗐嗕嗗嗘嗙嗚嗛嗞嗠嗢嗧嗩嗭嗮嗰嗱嗴嗶嗸嗹嗺嗻嗼嗿嘂嘃嘄嘅�".split("");
for(j = 0; j != D[134].length; ++j) if(D[134][j].charCodeAt(0) !== 0xFFFD) { e[D[134][j]] = 34304 + j; d[34304 + j] = D[134][j];}
D[135] = "����������������������������������������������������������������嘆嘇嘊嘋嘍嘐嘑嘒嘓嘔嘕嘖嘗嘙嘚嘜嘝嘠嘡嘢嘥嘦嘨嘩嘪嘫嘮嘯嘰嘳嘵嘷嘸嘺嘼嘽嘾噀噁噂噃噄噅噆噇噈噉噊噋噏噐噑噒噓噕噖噚噛噝噞噟噠噡�噣噥噦噧噭噮噯噰噲噳噴噵噷噸噹噺噽噾噿嚀嚁嚂嚃嚄嚇嚈嚉嚊嚋嚌嚍嚐嚑嚒嚔嚕嚖嚗嚘嚙嚚嚛嚜嚝嚞嚟嚠嚡嚢嚤嚥嚦嚧嚨嚩嚪嚫嚬嚭嚮嚰嚱嚲嚳嚴嚵嚶嚸嚹嚺嚻嚽嚾嚿囀囁囂囃囄囅囆囇囈囉囋囌囍囎囏囐囑囒囓囕囖囘囙囜団囥囦囧囨囩囪囬囮囯囲図囶囷囸囻囼圀圁圂圅圇國圌圍圎圏圐圑�".split("");
for(j = 0; j != D[135].length; ++j) if(D[135][j].charCodeAt(0) !== 0xFFFD) { e[D[135][j]] = 34560 + j; d[34560 + j] = D[135][j];}
D[136] = "����������������������������������������������������������������園圓圔圕圖圗團圙圚圛圝圞圠圡圢圤圥圦圧圫圱圲圴圵圶圷圸圼圽圿坁坃坄坅坆坈坉坋坒坓坔坕坖坘坙坢坣坥坧坬坮坰坱坲坴坵坸坹坺坽坾坿垀�垁垇垈垉垊垍垎垏垐垑垔垕垖垗垘垙垚垜垝垞垟垥垨垪垬垯垰垱垳垵垶垷垹垺垻垼垽垾垿埀埁埄埅埆埇埈埉埊埌埍埐埑埓埖埗埛埜埞埡埢埣埥埦埧埨埩埪埫埬埮埰埱埲埳埵埶執埻埼埾埿堁堃堄堅堈堉堊堌堎堏堐堒堓堔堖堗堘堚堛堜堝堟堢堣堥堦堧堨堩堫堬堭堮堯報堲堳場堶堷堸堹堺堻堼堽�".split("");
for(j = 0; j != D[136].length; ++j) if(D[136][j].charCodeAt(0) !== 0xFFFD) { e[D[136][j]] = 34816 + j; d[34816 + j] = D[136][j];}
D[137] = "����������������������������������������������������������������堾堿塀塁塂塃塅塆塇塈塉塊塋塎塏塐塒塓塕塖塗塙塚塛塜塝塟塠塡塢塣塤塦塧塨塩塪塭塮塯塰塱塲塳塴塵塶塷塸塹塺塻塼塽塿墂墄墆墇墈墊墋墌�墍墎墏墐墑墔墕墖増墘墛墜墝墠墡墢墣墤墥墦墧墪墫墬墭墮墯墰墱墲墳墴墵墶墷墸墹墺墻墽墾墿壀壂壃壄壆壇壈壉壊壋壌壍壎壏壐壒壓壔壖壗壘壙壚壛壜壝壞壟壠壡壢壣壥壦壧壨壩壪壭壯壱売壴壵壷壸壺壻壼壽壾壿夀夁夃夅夆夈変夊夋夌夎夐夑夒夓夗夘夛夝夞夠夡夢夣夦夨夬夰夲夳夵夶夻�".split("");
for(j = 0; j != D[137].length; ++j) if(D[137][j].charCodeAt(0) !== 0xFFFD) { e[D[137][j]] = 35072 + j; d[35072 + j] = D[137][j];}
D[138] = "����������������������������������������������������������������夽夾夿奀奃奅奆奊奌奍奐奒奓奙奛奜奝奞奟奡奣奤奦奧奨奩奪奫奬奭奮奯奰奱奲奵奷奺奻奼奾奿妀妅妉妋妌妎妏妐妑妔妕妘妚妛妜妝妟妠妡妢妦�妧妬妭妰妱妳妴妵妶妷妸妺妼妽妿姀姁姂姃姄姅姇姈姉姌姍姎姏姕姖姙姛姞姟姠姡姢姤姦姧姩姪姫姭姮姯姰姱姲姳姴姵姶姷姸姺姼姽姾娀娂娊娋娍娎娏娐娒娔娕娖娗娙娚娛娝娞娡娢娤娦娧娨娪娫娬娭娮娯娰娳娵娷娸娹娺娻娽娾娿婁婂婃婄婅婇婈婋婌婍婎婏婐婑婒婓婔婖婗婘婙婛婜婝婞婟婠�".split("");
for(j = 0; j != D[138].length; ++j) if(D[138][j].charCodeAt(0) !== 0xFFFD) { e[D[138][j]] = 35328 + j; d[35328 + j] = D[138][j];}
D[139] = "����������������������������������������������������������������婡婣婤婥婦婨婩婫婬婭婮婯婰婱婲婳婸婹婻婼婽婾媀媁媂媃媄媅媆媇媈媉媊媋媌媍媎媏媐媑媓媔媕媖媗媘媙媜媝媞媟媠媡媢媣媤媥媦媧媨媩媫媬�媭媮媯媰媱媴媶媷媹媺媻媼媽媿嫀嫃嫄嫅嫆嫇嫈嫊嫋嫍嫎嫏嫐嫑嫓嫕嫗嫙嫚嫛嫝嫞嫟嫢嫤嫥嫧嫨嫪嫬嫭嫮嫯嫰嫲嫳嫴嫵嫶嫷嫸嫹嫺嫻嫼嫽嫾嫿嬀嬁嬂嬃嬄嬅嬆嬇嬈嬊嬋嬌嬍嬎嬏嬐嬑嬒嬓嬔嬕嬘嬙嬚嬛嬜嬝嬞嬟嬠嬡嬢嬣嬤嬥嬦嬧嬨嬩嬪嬫嬬嬭嬮嬯嬰嬱嬳嬵嬶嬸嬹嬺嬻嬼嬽嬾嬿孁孂孃孄孅孆孇�".split("");
for(j = 0; j != D[139].length; ++j) if(D[139][j].charCodeAt(0) !== 0xFFFD) { e[D[139][j]] = 35584 + j; d[35584 + j] = D[139][j];}
D[140] = "����������������������������������������������������������������孈孉孊孋孌孍孎孏孒孖孞孠孡孧孨孫孭孮孯孲孴孶孷學孹孻孼孾孿宂宆宊宍宎宐宑宒宔宖実宧宨宩宬宭宮宯宱宲宷宺宻宼寀寁寃寈寉寊寋寍寎寏�寑寔寕寖寗寘寙寚寛寜寠寢寣實寧審寪寫寬寭寯寱寲寳寴寵寶寷寽対尀専尃尅將專尋尌對導尐尒尓尗尙尛尞尟尠尡尣尦尨尩尪尫尭尮尯尰尲尳尵尶尷屃屄屆屇屌屍屒屓屔屖屗屘屚屛屜屝屟屢層屧屨屩屪屫屬屭屰屲屳屴屵屶屷屸屻屼屽屾岀岃岄岅岆岇岉岊岋岎岏岒岓岕岝岞岟岠岡岤岥岦岧岨�".split("");
for(j = 0; j != D[140].length; ++j) if(D[140][j].charCodeAt(0) !== 0xFFFD) { e[D[140][j]] = 35840 + j; d[35840 + j] = D[140][j];}
D[141] = "����������������������������������������������������������������岪岮岯岰岲岴岶岹岺岻岼岾峀峂峃峅峆峇峈峉峊峌峍峎峏峐峑峓峔峕峖峗峘峚峛峜峝峞峟峠峢峣峧峩峫峬峮峯峱峲峳峴峵島峷峸峹峺峼峽峾峿崀�崁崄崅崈崉崊崋崌崍崏崐崑崒崓崕崗崘崙崚崜崝崟崠崡崢崣崥崨崪崫崬崯崰崱崲崳崵崶崷崸崹崺崻崼崿嵀嵁嵂嵃嵄嵅嵆嵈嵉嵍嵎嵏嵐嵑嵒嵓嵔嵕嵖嵗嵙嵚嵜嵞嵟嵠嵡嵢嵣嵤嵥嵦嵧嵨嵪嵭嵮嵰嵱嵲嵳嵵嵶嵷嵸嵹嵺嵻嵼嵽嵾嵿嶀嶁嶃嶄嶅嶆嶇嶈嶉嶊嶋嶌嶍嶎嶏嶐嶑嶒嶓嶔嶕嶖嶗嶘嶚嶛嶜嶞嶟嶠�".split("");
for(j = 0; j != D[141].length; ++j) if(D[141][j].charCodeAt(0) !== 0xFFFD) { e[D[141][j]] = 36096 + j; d[36096 + j] = D[141][j];}
D[142] = "����������������������������������������������������������������嶡嶢嶣嶤嶥嶦嶧嶨嶩嶪嶫嶬嶭嶮嶯嶰嶱嶲嶳嶴嶵嶶嶸嶹嶺嶻嶼嶽嶾嶿巀巁巂巃巄巆巇巈巉巊巋巌巎巏巐巑巒巓巔巕巖巗巘巙巚巜巟巠巣巤巪巬巭�巰巵巶巸巹巺巻巼巿帀帄帇帉帊帋帍帎帒帓帗帞帟帠帡帢帣帤帥帨帩帪師帬帯帰帲帳帴帵帶帹帺帾帿幀幁幃幆幇幈幉幊幋幍幎幏幐幑幒幓幖幗幘幙幚幜幝幟幠幣幤幥幦幧幨幩幪幫幬幭幮幯幰幱幵幷幹幾庁庂広庅庈庉庌庍庎庒庘庛庝庡庢庣庤庨庩庪庫庬庮庯庰庱庲庴庺庻庼庽庿廀廁廂廃廄廅�".split("");
for(j = 0; j != D[142].length; ++j) if(D[142][j].charCodeAt(0) !== 0xFFFD) { e[D[142][j]] = 36352 + j; d[36352 + j] = D[142][j];}
D[143] = "����������������������������������������������������������������廆廇廈廋廌廍廎廏廐廔廕廗廘廙廚廜廝廞廟廠廡廢廣廤廥廦廧廩廫廬廭廮廯廰廱廲廳廵廸廹廻廼廽弅弆弇弉弌弍弎弐弒弔弖弙弚弜弝弞弡弢弣弤�弨弫弬弮弰弲弳弴張弶強弸弻弽弾弿彁彂彃彄彅彆彇彈彉彊彋彌彍彎彏彑彔彙彚彛彜彞彟彠彣彥彧彨彫彮彯彲彴彵彶彸彺彽彾彿徃徆徍徎徏徑従徔徖徚徛徝從徟徠徢徣徤徥徦徧復徫徬徯徰徱徲徳徴徶徸徹徺徻徾徿忀忁忂忇忈忊忋忎忓忔忕忚忛応忞忟忢忣忥忦忨忩忬忯忰忲忳忴忶忷忹忺忼怇�".split("");
for(j = 0; j != D[143].length; ++j) if(D[143][j].charCodeAt(0) !== 0xFFFD) { e[D[143][j]] = 36608 + j; d[36608 + j] = D[143][j];}
D[144] = "����������������������������������������������������������������怈怉怋怌怐怑怓怗怘怚怞怟怢怣怤怬怭怮怰怱怲怳怴怶怷怸怹怺怽怾恀恄恅恆恇恈恉恊恌恎恏恑恓恔恖恗恘恛恜恞恟恠恡恥恦恮恱恲恴恵恷恾悀�悁悂悅悆悇悈悊悋悎悏悐悑悓悕悗悘悙悜悞悡悢悤悥悧悩悪悮悰悳悵悶悷悹悺悽悾悿惀惁惂惃惄惇惈惉惌惍惎惏惐惒惓惔惖惗惙惛惞惡惢惣惤惥惪惱惲惵惷惸惻惼惽惾惿愂愃愄愅愇愊愋愌愐愑愒愓愔愖愗愘愙愛愜愝愞愡愢愥愨愩愪愬愭愮愯愰愱愲愳愴愵愶愷愸愹愺愻愼愽愾慀慁慂慃慄慅慆�".split("");
for(j = 0; j != D[144].length; ++j) if(D[144][j].charCodeAt(0) !== 0xFFFD) { e[D[144][j]] = 36864 + j; d[36864 + j] = D[144][j];}
D[145] = "����������������������������������������������������������������慇慉態慍慏慐慒慓慔慖慗慘慙慚慛慜慞慟慠慡慣慤慥慦慩慪慫慬慭慮慯慱慲慳慴慶慸慹慺慻慼慽慾慿憀憁憂憃憄憅憆憇憈憉憊憌憍憏憐憑憒憓憕�憖憗憘憙憚憛憜憞憟憠憡憢憣憤憥憦憪憫憭憮憯憰憱憲憳憴憵憶憸憹憺憻憼憽憿懀懁懃懄懅懆懇應懌懍懎懏懐懓懕懖懗懘懙懚懛懜懝懞懟懠懡懢懣懤懥懧懨懩懪懫懬懭懮懯懰懱懲懳懴懶懷懸懹懺懻懼懽懾戀戁戂戃戄戅戇戉戓戔戙戜戝戞戠戣戦戧戨戩戫戭戯戰戱戲戵戶戸戹戺戻戼扂扄扅扆扊�".split("");
for(j = 0; j != D[145].length; ++j) if(D[145][j].charCodeAt(0) !== 0xFFFD) { e[D[145][j]] = 37120 + j; d[37120 + j] = D[145][j];}
D[146] = "����������������������������������������������������������������扏扐払扖扗扙扚扜扝扞扟扠扡扢扤扥扨扱扲扴扵扷扸扺扻扽抁抂抃抅抆抇抈抋抌抍抎抏抐抔抙抜抝択抣抦抧抩抪抭抮抯抰抲抳抴抶抷抸抺抾拀拁�拃拋拏拑拕拝拞拠拡拤拪拫拰拲拵拸拹拺拻挀挃挄挅挆挊挋挌挍挏挐挒挓挔挕挗挘挙挜挦挧挩挬挭挮挰挱挳挴挵挶挷挸挻挼挾挿捀捁捄捇捈捊捑捒捓捔捖捗捘捙捚捛捜捝捠捤捥捦捨捪捫捬捯捰捲捳捴捵捸捹捼捽捾捿掁掃掄掅掆掋掍掑掓掔掕掗掙掚掛掜掝掞掟採掤掦掫掯掱掲掵掶掹掻掽掿揀�".split("");
for(j = 0; j != D[146].length; ++j) if(D[146][j].charCodeAt(0) !== 0xFFFD) { e[D[146][j]] = 37376 + j; d[37376 + j] = D[146][j];}
D[147] = "����������������������������������������������������������������揁揂揃揅揇揈揊揋揌揑揓揔揕揗揘揙揚換揜揝揟揢揤揥揦揧揨揫揬揮揯揰揱揳揵揷揹揺揻揼揾搃搄搆搇搈搉搊損搎搑搒搕搖搗搘搙搚搝搟搢搣搤�搥搧搨搩搫搮搯搰搱搲搳搵搶搷搸搹搻搼搾摀摂摃摉摋摌摍摎摏摐摑摓摕摖摗摙摚摛摜摝摟摠摡摢摣摤摥摦摨摪摫摬摮摯摰摱摲摳摴摵摶摷摻摼摽摾摿撀撁撃撆撈撉撊撋撌撍撎撏撐撓撔撗撘撚撛撜撝撟撠撡撢撣撥撦撧撨撪撫撯撱撲撳撴撶撹撻撽撾撿擁擃擄擆擇擈擉擊擋擌擏擑擓擔擕擖擙據�".split("");
for(j = 0; j != D[147].length; ++j) if(D[147][j].charCodeAt(0) !== 0xFFFD) { e[D[147][j]] = 37632 + j; d[37632 + j] = D[147][j];}
D[148] = "����������������������������������������������������������������擛擜擝擟擠擡擣擥擧擨擩擪擫擬擭擮擯擰擱擲擳擴擵擶擷擸擹擺擻擼擽擾擿攁攂攃攄攅攆攇攈攊攋攌攍攎攏攐攑攓攔攕攖攗攙攚攛攜攝攞攟攠攡�攢攣攤攦攧攨攩攪攬攭攰攱攲攳攷攺攼攽敀敁敂敃敄敆敇敊敋敍敎敐敒敓敔敗敘敚敜敟敠敡敤敥敧敨敩敪敭敮敯敱敳敵敶數敹敺敻敼敽敾敿斀斁斂斃斄斅斆斈斉斊斍斎斏斒斔斕斖斘斚斝斞斠斢斣斦斨斪斬斮斱斲斳斴斵斶斷斸斺斻斾斿旀旂旇旈旉旊旍旐旑旓旔旕旘旙旚旛旜旝旞旟旡旣旤旪旫�".split("");
for(j = 0; j != D[148].length; ++j) if(D[148][j].charCodeAt(0) !== 0xFFFD) { e[D[148][j]] = 37888 + j; d[37888 + j] = D[148][j];}
D[149] = "����������������������������������������������������������������旲旳旴旵旸旹旻旼旽旾旿昁昄昅昇昈昉昋昍昐昑昒昖昗昘昚昛昜昞昡昢昣昤昦昩昪昫昬昮昰昲昳昷昸昹昺昻昽昿晀時晄晅晆晇晈晉晊晍晎晐晑晘�晙晛晜晝晞晠晢晣晥晧晩晪晫晬晭晱晲晳晵晸晹晻晼晽晿暀暁暃暅暆暈暉暊暋暍暎暏暐暒暓暔暕暘暙暚暛暜暞暟暠暡暢暣暤暥暦暩暪暫暬暭暯暰暱暲暳暵暶暷暸暺暻暼暽暿曀曁曂曃曄曅曆曇曈曉曊曋曌曍曎曏曐曑曒曓曔曕曖曗曘曚曞曟曠曡曢曣曤曥曧曨曪曫曬曭曮曯曱曵曶書曺曻曽朁朂會�".split("");
for(j = 0; j != D[149].length; ++j) if(D[149][j].charCodeAt(0) !== 0xFFFD) { e[D[149][j]] = 38144 + j; d[38144 + j] = D[149][j];}
D[150] = "����������������������������������������������������������������朄朅朆朇朌朎朏朑朒朓朖朘朙朚朜朞朠朡朢朣朤朥朧朩朮朰朲朳朶朷朸朹朻朼朾朿杁杄杅杇杊杋杍杒杔杕杗杘杙杚杛杝杢杣杤杦杧杫杬杮東杴杶�杸杹杺杻杽枀枂枃枅枆枈枊枌枍枎枏枑枒枓枔枖枙枛枟枠枡枤枦枩枬枮枱枲枴枹枺枻枼枽枾枿柀柂柅柆柇柈柉柊柋柌柍柎柕柖柗柛柟柡柣柤柦柧柨柪柫柭柮柲柵柶柷柸柹柺査柼柾栁栂栃栄栆栍栐栒栔栕栘栙栚栛栜栞栟栠栢栣栤栥栦栧栨栫栬栭栮栯栰栱栴栵栶栺栻栿桇桋桍桏桒桖桗桘桙桚桛�".split("");
for(j = 0; j != D[150].length; ++j) if(D[150][j].charCodeAt(0) !== 0xFFFD) { e[D[150][j]] = 38400 + j; d[38400 + j] = D[150][j];}
D[151] = "����������������������������������������������������������������桜桝桞桟桪桬桭桮桯桰桱桲桳桵桸桹桺桻桼桽桾桿梀梂梄梇梈梉梊梋梌梍梎梐梑梒梔梕梖梘梙梚梛梜條梞梟梠梡梣梤梥梩梪梫梬梮梱梲梴梶梷梸�梹梺梻梼梽梾梿棁棃棄棅棆棇棈棊棌棎棏棐棑棓棔棖棗棙棛棜棝棞棟棡棢棤棥棦棧棨棩棪棫棬棭棯棲棳棴棶棷棸棻棽棾棿椀椂椃椄椆椇椈椉椊椌椏椑椓椔椕椖椗椘椙椚椛検椝椞椡椢椣椥椦椧椨椩椪椫椬椮椯椱椲椳椵椶椷椸椺椻椼椾楀楁楃楄楅楆楇楈楉楊楋楌楍楎楏楐楑楒楓楕楖楘楙楛楜楟�".split("");
for(j = 0; j != D[151].length; ++j) if(D[151][j].charCodeAt(0) !== 0xFFFD) { e[D[151][j]] = 38656 + j; d[38656 + j] = D[151][j];}
D[152] = "����������������������������������������������������������������楡楢楤楥楧楨楩楪楬業楯楰楲楳楴極楶楺楻楽楾楿榁榃榅榊榋榌榎榏榐榑榒榓榖榗榙榚榝榞榟榠榡榢榣榤榥榦榩榪榬榮榯榰榲榳榵榶榸榹榺榼榽�榾榿槀槂槃槄槅槆槇槈槉構槍槏槑槒槓槕槖槗様槙槚槜槝槞槡槢槣槤槥槦槧槨槩槪槫槬槮槯槰槱槳槴槵槶槷槸槹槺槻槼槾樀樁樂樃樄樅樆樇樈樉樋樌樍樎樏樐樑樒樓樔樕樖標樚樛樜樝樞樠樢樣樤樥樦樧権樫樬樭樮樰樲樳樴樶樷樸樹樺樻樼樿橀橁橂橃橅橆橈橉橊橋橌橍橎橏橑橒橓橔橕橖橗橚�".split("");
for(j = 0; j != D[152].length; ++j) if(D[152][j].charCodeAt(0) !== 0xFFFD) { e[D[152][j]] = 38912 + j; d[38912 + j] = D[152][j];}
D[153] = "����������������������������������������������������������������橜橝橞機橠橢橣橤橦橧橨橩橪橫橬橭橮橯橰橲橳橴橵橶橷橸橺橻橽橾橿檁檂檃檅檆檇檈檉檊檋檌檍檏檒檓檔檕檖檘檙檚檛檜檝檞檟檡檢檣檤檥檦�檧檨檪檭檮檯檰檱檲檳檴檵檶檷檸檹檺檻檼檽檾檿櫀櫁櫂櫃櫄櫅櫆櫇櫈櫉櫊櫋櫌櫍櫎櫏櫐櫑櫒櫓櫔櫕櫖櫗櫘櫙櫚櫛櫜櫝櫞櫟櫠櫡櫢櫣櫤櫥櫦櫧櫨櫩櫪櫫櫬櫭櫮櫯櫰櫱櫲櫳櫴櫵櫶櫷櫸櫹櫺櫻櫼櫽櫾櫿欀欁欂欃欄欅欆欇欈欉權欋欌欍欎欏欐欑欒欓欔欕欖欗欘欙欚欛欜欝欞欟欥欦欨欩欪欫欬欭欮�".split("");
for(j = 0; j != D[153].length; ++j) if(D[153][j].charCodeAt(0) !== 0xFFFD) { e[D[153][j]] = 39168 + j; d[39168 + j] = D[153][j];}
D[154] = "����������������������������������������������������������������欯欰欱欳欴欵欶欸欻欼欽欿歀歁歂歄歅歈歊歋歍歎歏歐歑歒歓歔歕歖歗歘歚歛歜歝歞歟歠歡歨歩歫歬歭歮歯歰歱歲歳歴歵歶歷歸歺歽歾歿殀殅殈�殌殎殏殐殑殔殕殗殘殙殜殝殞殟殠殢殣殤殥殦殧殨殩殫殬殭殮殯殰殱殲殶殸殹殺殻殼殽殾毀毃毄毆毇毈毉毊毌毎毐毑毘毚毜毝毞毟毠毢毣毤毥毦毧毨毩毬毭毮毰毱毲毴毶毷毸毺毻毼毾毿氀氁氂氃氄氈氉氊氋氌氎氒気氜氝氞氠氣氥氫氬氭氱氳氶氷氹氺氻氼氾氿汃汄汅汈汋汌汍汎汏汑汒汓汖汘�".split("");
for(j = 0; j != D[154].length; ++j) if(D[154][j].charCodeAt(0) !== 0xFFFD) { e[D[154][j]] = 39424 + j; d[39424 + j] = D[154][j];}
D[155] = "����������������������������������������������������������������汙汚汢汣汥汦汧汫汬汭汮汯汱汳汵汷汸決汻汼汿沀沄沇沊沋沍沎沑沒沕沖沗沘沚沜沝沞沠沢沨沬沯沰沴沵沶沷沺泀況泂泃泆泇泈泋泍泎泏泑泒泘�泙泚泜泝泟泤泦泧泩泬泭泲泴泹泿洀洂洃洅洆洈洉洊洍洏洐洑洓洔洕洖洘洜洝洟洠洡洢洣洤洦洨洩洬洭洯洰洴洶洷洸洺洿浀浂浄浉浌浐浕浖浗浘浛浝浟浡浢浤浥浧浨浫浬浭浰浱浲浳浵浶浹浺浻浽浾浿涀涁涃涄涆涇涊涋涍涏涐涒涖涗涘涙涚涜涢涥涬涭涰涱涳涴涶涷涹涺涻涼涽涾淁淂淃淈淉淊�".split("");
for(j = 0; j != D[155].length; ++j) if(D[155][j].charCodeAt(0) !== 0xFFFD) { e[D[155][j]] = 39680 + j; d[39680 + j] = D[155][j];}
D[156] = "����������������������������������������������������������������淍淎淏淐淒淓淔淕淗淚淛淜淟淢淣淥淧淨淩淪淭淯淰淲淴淵淶淸淺淽淾淿渀渁渂渃渄渆渇済渉渋渏渒渓渕渘渙減渜渞渟渢渦渧渨渪測渮渰渱渳渵�渶渷渹渻渼渽渾渿湀湁湂湅湆湇湈湉湊湋湌湏湐湑湒湕湗湙湚湜湝湞湠湡湢湣湤湥湦湧湨湩湪湬湭湯湰湱湲湳湴湵湶湷湸湹湺湻湼湽満溁溂溄溇溈溊溋溌溍溎溑溒溓溔溕準溗溙溚溛溝溞溠溡溣溤溦溨溩溫溬溭溮溰溳溵溸溹溼溾溿滀滃滄滅滆滈滉滊滌滍滎滐滒滖滘滙滛滜滝滣滧滪滫滬滭滮滯�".split("");
for(j = 0; j != D[156].length; ++j) if(D[156][j].charCodeAt(0) !== 0xFFFD) { e[D[156][j]] = 39936 + j; d[39936 + j] = D[156][j];}
D[157] = "����������������������������������������������������������������滰滱滲滳滵滶滷滸滺滻滼滽滾滿漀漁漃漄漅漇漈漊漋漌漍漎漐漑漒漖漗漘漙漚漛漜漝漞漟漡漢漣漥漦漧漨漬漮漰漲漴漵漷漸漹漺漻漼漽漿潀潁潂�潃潄潅潈潉潊潌潎潏潐潑潒潓潔潕潖潗潙潚潛潝潟潠潡潣潤潥潧潨潩潪潫潬潯潰潱潳潵潶潷潹潻潽潾潿澀澁澂澃澅澆澇澊澋澏澐澑澒澓澔澕澖澗澘澙澚澛澝澞澟澠澢澣澤澥澦澨澩澪澫澬澭澮澯澰澱澲澴澵澷澸澺澻澼澽澾澿濁濃濄濅濆濇濈濊濋濌濍濎濏濐濓濔濕濖濗濘濙濚濛濜濝濟濢濣濤濥�".split("");
for(j = 0; j != D[157].length; ++j) if(D[157][j].charCodeAt(0) !== 0xFFFD) { e[D[157][j]] = 40192 + j; d[40192 + j] = D[157][j];}
D[158] = "����������������������������������������������������������������濦濧濨濩濪濫濬濭濰濱濲濳濴濵濶濷濸濹濺濻濼濽濾濿瀀瀁瀂瀃瀄瀅瀆瀇瀈瀉瀊瀋瀌瀍瀎瀏瀐瀒瀓瀔瀕瀖瀗瀘瀙瀜瀝瀞瀟瀠瀡瀢瀤瀥瀦瀧瀨瀩瀪�瀫瀬瀭瀮瀯瀰瀱瀲瀳瀴瀶瀷瀸瀺瀻瀼瀽瀾瀿灀灁灂灃灄灅灆灇灈灉灊灋灍灎灐灑灒灓灔灕灖灗灘灙灚灛灜灝灟灠灡灢灣灤灥灦灧灨灩灪灮灱灲灳灴灷灹灺灻災炁炂炃炄炆炇炈炋炌炍炏炐炑炓炗炘炚炛炞炟炠炡炢炣炤炥炦炧炨炩炪炰炲炴炵炶為炾炿烄烅烆烇烉烋烌烍烎烏烐烑烒烓烔烕烖烗烚�".split("");
for(j = 0; j != D[158].length; ++j) if(D[158][j].charCodeAt(0) !== 0xFFFD) { e[D[158][j]] = 40448 + j; d[40448 + j] = D[158][j];}
D[159] = "����������������������������������������������������������������烜烝烞烠烡烢烣烥烪烮烰烱烲烳烴烵烶烸烺烻烼烾烿焀焁焂焃焄焅焆焇焈焋焌焍焎焏焑焒焔焗焛焜焝焞焟焠無焢焣焤焥焧焨焩焪焫焬焭焮焲焳焴�焵焷焸焹焺焻焼焽焾焿煀煁煂煃煄煆煇煈煉煋煍煏煐煑煒煓煔煕煖煗煘煙煚煛煝煟煠煡煢煣煥煩煪煫煬煭煯煰煱煴煵煶煷煹煻煼煾煿熀熁熂熃熅熆熇熈熉熋熌熍熎熐熑熒熓熕熖熗熚熛熜熝熞熡熢熣熤熥熦熧熩熪熫熭熮熯熰熱熲熴熶熷熸熺熻熼熽熾熿燀燁燂燄燅燆燇燈燉燊燋燌燍燏燐燑燒燓�".split("");
for(j = 0; j != D[159].length; ++j) if(D[159][j].charCodeAt(0) !== 0xFFFD) { e[D[159][j]] = 40704 + j; d[40704 + j] = D[159][j];}
D[160] = "����������������������������������������������������������������燖燗燘燙燚燛燜燝燞營燡燢燣燤燦燨燩燪燫燬燭燯燰燱燲燳燴燵燶燷燸燺燻燼燽燾燿爀爁爂爃爄爅爇爈爉爊爋爌爍爎爏爐爑爒爓爔爕爖爗爘爙爚�爛爜爞爟爠爡爢爣爤爥爦爧爩爫爭爮爯爲爳爴爺爼爾牀牁牂牃牄牅牆牉牊牋牎牏牐牑牓牔牕牗牘牚牜牞牠牣牤牥牨牪牫牬牭牰牱牳牴牶牷牸牻牼牽犂犃犅犆犇犈犉犌犎犐犑犓犔犕犖犗犘犙犚犛犜犝犞犠犡犢犣犤犥犦犧犨犩犪犫犮犱犲犳犵犺犻犼犽犾犿狀狅狆狇狉狊狋狌狏狑狓狔狕狖狘狚狛�".split("");
for(j = 0; j != D[160].length; ++j) if(D[160][j].charCodeAt(0) !== 0xFFFD) { e[D[160][j]] = 40960 + j; d[40960 + j] = D[160][j];}
D[161] = "����������������������������������������������������������������������������������������������������������������������������������������������������������������� 、。·ˉˇ¨〃々—~‖…‘’“”〔〕〈〉《》「」『』〖〗【】±×÷∶∧∨∑∏∪∩∈∷√⊥∥∠⌒⊙∫∮≡≌≈∽∝≠≮≯≤≥∞∵∴♂♀°′″℃$¤¢£‰§№☆★○●◎◇◆□■△▲※→←↑↓〓�".split("");
for(j = 0; j != D[161].length; ++j) if(D[161][j].charCodeAt(0) !== 0xFFFD) { e[D[161][j]] = 41216 + j; d[41216 + j] = D[161][j];}
D[162] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹ������⒈⒉⒊⒋⒌⒍⒎⒏⒐⒑⒒⒓⒔⒕⒖⒗⒘⒙⒚⒛⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂⒃⒄⒅⒆⒇①②③④⑤⑥⑦⑧⑨⑩��㈠㈡㈢㈣㈤㈥㈦㈧㈨㈩��ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩⅪⅫ���".split("");
for(j = 0; j != D[162].length; ++j) if(D[162][j].charCodeAt(0) !== 0xFFFD) { e[D[162][j]] = 41472 + j; d[41472 + j] = D[162][j];}
D[163] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������!"#¥%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|} ̄�".split("");
for(j = 0; j != D[163].length; ++j) if(D[163][j].charCodeAt(0) !== 0xFFFD) { e[D[163][j]] = 41728 + j; d[41728 + j] = D[163][j];}
D[164] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん������������".split("");
for(j = 0; j != D[164].length; ++j) if(D[164][j].charCodeAt(0) !== 0xFFFD) { e[D[164][j]] = 41984 + j; d[41984 + j] = D[164][j];}
D[165] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ���������".split("");
for(j = 0; j != D[165].length; ++j) if(D[165][j].charCodeAt(0) !== 0xFFFD) { e[D[165][j]] = 42240 + j; d[42240 + j] = D[165][j];}
D[166] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ��������αβγδεζηθικλμνξοπρστυφχψω�������︵︶︹︺︿﹀︽︾﹁﹂﹃﹄��︻︼︷︸︱�︳︴����������".split("");
for(j = 0; j != D[166].length; ++j) if(D[166][j].charCodeAt(0) !== 0xFFFD) { e[D[166][j]] = 42496 + j; d[42496 + j] = D[166][j];}
D[167] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ���������������абвгдеёжзийклмнопрстуфхцчшщъыьэюя��������������".split("");
for(j = 0; j != D[167].length; ++j) if(D[167][j].charCodeAt(0) !== 0xFFFD) { e[D[167][j]] = 42752 + j; d[42752 + j] = D[167][j];}
D[168] = "����������������������������������������������������������������ˊˋ˙–―‥‵℅℉↖↗↘↙∕∟∣≒≦≧⊿═║╒╓╔╕╖╗╘╙╚╛╜╝╞╟╠╡╢╣╤╥╦╧╨╩╪╫╬╭╮╯╰╱╲╳▁▂▃▄▅▆▇�█▉▊▋▌▍▎▏▓▔▕▼▽◢◣◤◥☉⊕〒〝〞�����������āáǎàēéěèīíǐìōóǒòūúǔùǖǘǚǜüêɑ�ńň�ɡ����ㄅㄆㄇㄈㄉㄊㄋㄌㄍㄎㄏㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙㄚㄛㄜㄝㄞㄟㄠㄡㄢㄣㄤㄥㄦㄧㄨㄩ����������������������".split("");
for(j = 0; j != D[168].length; ++j) if(D[168][j].charCodeAt(0) !== 0xFFFD) { e[D[168][j]] = 43008 + j; d[43008 + j] = D[168][j];}
D[169] = "����������������������������������������������������������������〡〢〣〤〥〦〧〨〩㊣㎎㎏㎜㎝㎞㎡㏄㏎㏑㏒㏕︰¬¦�℡㈱�‐���ー゛゜ヽヾ〆ゝゞ﹉﹊﹋﹌﹍﹎﹏﹐﹑﹒﹔﹕﹖﹗﹙﹚﹛﹜﹝﹞﹟﹠﹡�﹢﹣﹤﹥﹦﹨﹩﹪﹫�������������〇�������������─━│┃┄┅┆┇┈┉┊┋┌┍┎┏┐┑┒┓└┕┖┗┘┙┚┛├┝┞┟┠┡┢┣┤┥┦┧┨┩┪┫┬┭┮┯┰┱┲┳┴┵┶┷┸┹┺┻┼┽┾┿╀╁╂╃╄╅╆╇╈╉╊╋����������������".split("");
for(j = 0; j != D[169].length; ++j) if(D[169][j].charCodeAt(0) !== 0xFFFD) { e[D[169][j]] = 43264 + j; d[43264 + j] = D[169][j];}
D[170] = "����������������������������������������������������������������狜狝狟狢狣狤狥狦狧狪狫狵狶狹狽狾狿猀猂猄猅猆猇猈猉猋猌猍猏猐猑猒猔猘猙猚猟猠猣猤猦猧猨猭猯猰猲猳猵猶猺猻猼猽獀獁獂獃獄獅獆獇獈�獉獊獋獌獎獏獑獓獔獕獖獘獙獚獛獜獝獞獟獡獢獣獤獥獦獧獨獩獪獫獮獰獱�����������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[170].length; ++j) if(D[170][j].charCodeAt(0) !== 0xFFFD) { e[D[170][j]] = 43520 + j; d[43520 + j] = D[170][j];}
D[171] = "����������������������������������������������������������������獲獳獴獵獶獷獸獹獺獻獼獽獿玀玁玂玃玅玆玈玊玌玍玏玐玒玓玔玕玗玘玙玚玜玝玞玠玡玣玤玥玦玧玨玪玬玭玱玴玵玶玸玹玼玽玾玿珁珃珄珅珆珇�珋珌珎珒珓珔珕珖珗珘珚珛珜珝珟珡珢珣珤珦珨珪珫珬珮珯珰珱珳珴珵珶珷�����������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[171].length; ++j) if(D[171][j].charCodeAt(0) !== 0xFFFD) { e[D[171][j]] = 43776 + j; d[43776 + j] = D[171][j];}
D[172] = "����������������������������������������������������������������珸珹珺珻珼珽現珿琀琁琂琄琇琈琋琌琍琎琑琒琓琔琕琖琗琘琙琜琝琞琟琠琡琣琤琧琩琫琭琯琱琲琷琸琹琺琻琽琾琿瑀瑂瑃瑄瑅瑆瑇瑈瑉瑊瑋瑌瑍�瑎瑏瑐瑑瑒瑓瑔瑖瑘瑝瑠瑡瑢瑣瑤瑥瑦瑧瑨瑩瑪瑫瑬瑮瑯瑱瑲瑳瑴瑵瑸瑹瑺�����������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[172].length; ++j) if(D[172][j].charCodeAt(0) !== 0xFFFD) { e[D[172][j]] = 44032 + j; d[44032 + j] = D[172][j];}
D[173] = "����������������������������������������������������������������瑻瑼瑽瑿璂璄璅璆璈璉璊璌璍璏璑璒璓璔璕璖璗璘璙璚璛璝璟璠璡璢璣璤璥璦璪璫璬璭璮璯環璱璲璳璴璵璶璷璸璹璻璼璽璾璿瓀瓁瓂瓃瓄瓅瓆瓇�瓈瓉瓊瓋瓌瓍瓎瓏瓐瓑瓓瓔瓕瓖瓗瓘瓙瓚瓛瓝瓟瓡瓥瓧瓨瓩瓪瓫瓬瓭瓰瓱瓲�����������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[173].length; ++j) if(D[173][j].charCodeAt(0) !== 0xFFFD) { e[D[173][j]] = 44288 + j; d[44288 + j] = D[173][j];}
D[174] = "����������������������������������������������������������������瓳瓵瓸瓹瓺瓻瓼瓽瓾甀甁甂甃甅甆甇甈甉甊甋甌甎甐甒甔甕甖甗甛甝甞甠甡產産甤甦甧甪甮甴甶甹甼甽甿畁畂畃畄畆畇畉畊畍畐畑畒畓畕畖畗畘�畝畞畟畠畡畢畣畤畧畨畩畫畬畭畮畯異畱畳畵當畷畺畻畼畽畾疀疁疂疄疅疇�����������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[174].length; ++j) if(D[174][j].charCodeAt(0) !== 0xFFFD) { e[D[174][j]] = 44544 + j; d[44544 + j] = D[174][j];}
D[175] = "����������������������������������������������������������������疈疉疊疌疍疎疐疓疕疘疛疜疞疢疦疧疨疩疪疭疶疷疺疻疿痀痁痆痋痌痎痏痐痑痓痗痙痚痜痝痟痠痡痥痩痬痭痮痯痲痳痵痶痷痸痺痻痽痾瘂瘄瘆瘇�瘈瘉瘋瘍瘎瘏瘑瘒瘓瘔瘖瘚瘜瘝瘞瘡瘣瘧瘨瘬瘮瘯瘱瘲瘶瘷瘹瘺瘻瘽癁療癄�����������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[175].length; ++j) if(D[175][j].charCodeAt(0) !== 0xFFFD) { e[D[175][j]] = 44800 + j; d[44800 + j] = D[175][j];}
D[176] = "����������������������������������������������������������������癅癆癇癈癉癊癋癎癏癐癑癒癓癕癗癘癙癚癛癝癟癠癡癢癤癥癦癧癨癩癪癬癭癮癰癱癲癳癴癵癶癷癹発發癿皀皁皃皅皉皊皌皍皏皐皒皔皕皗皘皚皛�皜皝皞皟皠皡皢皣皥皦皧皨皩皪皫皬皭皯皰皳皵皶皷皸皹皺皻皼皽皾盀盁盃啊阿埃挨哎唉哀皑癌蔼矮艾碍爱隘鞍氨安俺按暗岸胺案肮昂盎凹敖熬翱袄傲奥懊澳芭捌扒叭吧笆八疤巴拔跋靶把耙坝霸罢爸白柏百摆佰败拜稗斑班搬扳般颁板版扮拌伴瓣半办绊邦帮梆榜膀绑棒磅蚌镑傍谤苞胞包褒剥�".split("");
for(j = 0; j != D[176].length; ++j) if(D[176][j].charCodeAt(0) !== 0xFFFD) { e[D[176][j]] = 45056 + j; d[45056 + j] = D[176][j];}
D[177] = "����������������������������������������������������������������盄盇盉盋盌盓盕盙盚盜盝盞盠盡盢監盤盦盧盨盩盪盫盬盭盰盳盵盶盷盺盻盽盿眀眂眃眅眆眊県眎眏眐眑眒眓眔眕眖眗眘眛眜眝眞眡眣眤眥眧眪眫�眬眮眰眱眲眳眴眹眻眽眾眿睂睄睅睆睈睉睊睋睌睍睎睏睒睓睔睕睖睗睘睙睜薄雹保堡饱宝抱报暴豹鲍爆杯碑悲卑北辈背贝钡倍狈备惫焙被奔苯本笨崩绷甭泵蹦迸逼鼻比鄙笔彼碧蓖蔽毕毙毖币庇痹闭敝弊必辟壁臂避陛鞭边编贬扁便变卞辨辩辫遍标彪膘表鳖憋别瘪彬斌濒滨宾摈兵冰柄丙秉饼炳�".split("");
for(j = 0; j != D[177].length; ++j) if(D[177][j].charCodeAt(0) !== 0xFFFD) { e[D[177][j]] = 45312 + j; d[45312 + j] = D[177][j];}
D[178] = "����������������������������������������������������������������睝睞睟睠睤睧睩睪睭睮睯睰睱睲睳睴睵睶睷睸睺睻睼瞁瞂瞃瞆瞇瞈瞉瞊瞋瞏瞐瞓瞔瞕瞖瞗瞘瞙瞚瞛瞜瞝瞞瞡瞣瞤瞦瞨瞫瞭瞮瞯瞱瞲瞴瞶瞷瞸瞹瞺�瞼瞾矀矁矂矃矄矅矆矇矈矉矊矋矌矎矏矐矑矒矓矔矕矖矘矙矚矝矞矟矠矡矤病并玻菠播拨钵波博勃搏铂箔伯帛舶脖膊渤泊驳捕卜哺补埠不布步簿部怖擦猜裁材才财睬踩采彩菜蔡餐参蚕残惭惨灿苍舱仓沧藏操糙槽曹草厕策侧册测层蹭插叉茬茶查碴搽察岔差诧拆柴豺搀掺蝉馋谗缠铲产阐颤昌猖�".split("");
for(j = 0; j != D[178].length; ++j) if(D[178][j].charCodeAt(0) !== 0xFFFD) { e[D[178][j]] = 45568 + j; d[45568 + j] = D[178][j];}
D[179] = "����������������������������������������������������������������矦矨矪矯矰矱矲矴矵矷矹矺矻矼砃砄砅砆砇砈砊砋砎砏砐砓砕砙砛砞砠砡砢砤砨砪砫砮砯砱砲砳砵砶砽砿硁硂硃硄硆硈硉硊硋硍硏硑硓硔硘硙硚�硛硜硞硟硠硡硢硣硤硥硦硧硨硩硯硰硱硲硳硴硵硶硸硹硺硻硽硾硿碀碁碂碃场尝常长偿肠厂敞畅唱倡超抄钞朝嘲潮巢吵炒车扯撤掣彻澈郴臣辰尘晨忱沉陈趁衬撑称城橙成呈乘程惩澄诚承逞骋秤吃痴持匙池迟弛驰耻齿侈尺赤翅斥炽充冲虫崇宠抽酬畴踌稠愁筹仇绸瞅丑臭初出橱厨躇锄雏滁除楚�".split("");
for(j = 0; j != D[179].length; ++j) if(D[179][j].charCodeAt(0) !== 0xFFFD) { e[D[179][j]] = 45824 + j; d[45824 + j] = D[179][j];}
D[180] = "����������������������������������������������������������������碄碅碆碈碊碋碏碐碒碔碕碖碙碝碞碠碢碤碦碨碩碪碫碬碭碮碯碵碶碷碸確碻碼碽碿磀磂磃磄磆磇磈磌磍磎磏磑磒磓磖磗磘磚磛磜磝磞磟磠磡磢磣�磤磥磦磧磩磪磫磭磮磯磰磱磳磵磶磸磹磻磼磽磾磿礀礂礃礄礆礇礈礉礊礋礌础储矗搐触处揣川穿椽传船喘串疮窗幢床闯创吹炊捶锤垂春椿醇唇淳纯蠢戳绰疵茨磁雌辞慈瓷词此刺赐次聪葱囱匆从丛凑粗醋簇促蹿篡窜摧崔催脆瘁粹淬翠村存寸磋撮搓措挫错搭达答瘩打大呆歹傣戴带殆代贷袋待逮�".split("");
for(j = 0; j != D[180].length; ++j) if(D[180][j].charCodeAt(0) !== 0xFFFD) { e[D[180][j]] = 46080 + j; d[46080 + j] = D[180][j];}
D[181] = "����������������������������������������������������������������礍礎礏礐礑礒礔礕礖礗礘礙礚礛礜礝礟礠礡礢礣礥礦礧礨礩礪礫礬礭礮礯礰礱礲礳礵礶礷礸礹礽礿祂祃祄祅祇祊祋祌祍祎祏祐祑祒祔祕祘祙祡祣�祤祦祩祪祫祬祮祰祱祲祳祴祵祶祹祻祼祽祾祿禂禃禆禇禈禉禋禌禍禎禐禑禒怠耽担丹单郸掸胆旦氮但惮淡诞弹蛋当挡党荡档刀捣蹈倒岛祷导到稻悼道盗德得的蹬灯登等瞪凳邓堤低滴迪敌笛狄涤翟嫡抵底地蒂第帝弟递缔颠掂滇碘点典靛垫电佃甸店惦奠淀殿碉叼雕凋刁掉吊钓调跌爹碟蝶迭谍叠�".split("");
for(j = 0; j != D[181].length; ++j) if(D[181][j].charCodeAt(0) !== 0xFFFD) { e[D[181][j]] = 46336 + j; d[46336 + j] = D[181][j];}
D[182] = "����������������������������������������������������������������禓禔禕禖禗禘禙禛禜禝禞禟禠禡禢禣禤禥禦禨禩禪禫禬禭禮禯禰禱禲禴禵禶禷禸禼禿秂秄秅秇秈秊秌秎秏秐秓秔秖秗秙秚秛秜秝秞秠秡秢秥秨秪�秬秮秱秲秳秴秵秶秷秹秺秼秾秿稁稄稅稇稈稉稊稌稏稐稑稒稓稕稖稘稙稛稜丁盯叮钉顶鼎锭定订丢东冬董懂动栋侗恫冻洞兜抖斗陡豆逗痘都督毒犊独读堵睹赌杜镀肚度渡妒端短锻段断缎堆兑队对墩吨蹲敦顿囤钝盾遁掇哆多夺垛躲朵跺舵剁惰堕蛾峨鹅俄额讹娥恶厄扼遏鄂饿恩而儿耳尔饵洱二�".split("");
for(j = 0; j != D[182].length; ++j) if(D[182][j].charCodeAt(0) !== 0xFFFD) { e[D[182][j]] = 46592 + j; d[46592 + j] = D[182][j];}
D[183] = "����������������������������������������������������������������稝稟稡稢稤稥稦稧稨稩稪稫稬稭種稯稰稱稲稴稵稶稸稺稾穀穁穂穃穄穅穇穈穉穊穋穌積穎穏穐穒穓穔穕穖穘穙穚穛穜穝穞穟穠穡穢穣穤穥穦穧穨�穩穪穫穬穭穮穯穱穲穳穵穻穼穽穾窂窅窇窉窊窋窌窎窏窐窓窔窙窚窛窞窡窢贰发罚筏伐乏阀法珐藩帆番翻樊矾钒繁凡烦反返范贩犯饭泛坊芳方肪房防妨仿访纺放菲非啡飞肥匪诽吠肺废沸费芬酚吩氛分纷坟焚汾粉奋份忿愤粪丰封枫蜂峰锋风疯烽逢冯缝讽奉凤佛否夫敷肤孵扶拂辐幅氟符伏俘服�".split("");
for(j = 0; j != D[183].length; ++j) if(D[183][j].charCodeAt(0) !== 0xFFFD) { e[D[183][j]] = 46848 + j; d[46848 + j] = D[183][j];}
D[184] = "����������������������������������������������������������������窣窤窧窩窪窫窮窯窰窱窲窴窵窶窷窸窹窺窻窼窽窾竀竁竂竃竄竅竆竇竈竉竊竌竍竎竏竐竑竒竓竔竕竗竘竚竛竜竝竡竢竤竧竨竩竪竫竬竮竰竱竲竳�竴竵競竷竸竻竼竾笀笁笂笅笇笉笌笍笎笐笒笓笖笗笘笚笜笝笟笡笢笣笧笩笭浮涪福袱弗甫抚辅俯釜斧脯腑府腐赴副覆赋复傅付阜父腹负富讣附妇缚咐噶嘎该改概钙盖溉干甘杆柑竿肝赶感秆敢赣冈刚钢缸肛纲岗港杠篙皋高膏羔糕搞镐稿告哥歌搁戈鸽胳疙割革葛格蛤阁隔铬个各给根跟耕更庚羹�".split("");
for(j = 0; j != D[184].length; ++j) if(D[184][j].charCodeAt(0) !== 0xFFFD) { e[D[184][j]] = 47104 + j; d[47104 + j] = D[184][j];}
D[185] = "����������������������������������������������������������������笯笰笲笴笵笶笷笹笻笽笿筀筁筂筃筄筆筈筊筍筎筓筕筗筙筜筞筟筡筣筤筥筦筧筨筩筪筫筬筭筯筰筳筴筶筸筺筼筽筿箁箂箃箄箆箇箈箉箊箋箌箎箏�箑箒箓箖箘箙箚箛箞箟箠箣箤箥箮箯箰箲箳箵箶箷箹箺箻箼箽箾箿節篂篃範埂耿梗工攻功恭龚供躬公宫弓巩汞拱贡共钩勾沟苟狗垢构购够辜菇咕箍估沽孤姑鼓古蛊骨谷股故顾固雇刮瓜剐寡挂褂乖拐怪棺关官冠观管馆罐惯灌贯光广逛瑰规圭硅归龟闺轨鬼诡癸桂柜跪贵刽辊滚棍锅郭国果裹过哈�".split("");
for(j = 0; j != D[185].length; ++j) if(D[185][j].charCodeAt(0) !== 0xFFFD) { e[D[185][j]] = 47360 + j; d[47360 + j] = D[185][j];}
D[186] = "����������������������������������������������������������������篅篈築篊篋篍篎篏篐篒篔篕篖篗篘篛篜篞篟篠篢篣篤篧篨篩篫篬篭篯篰篲篳篴篵篶篸篹篺篻篽篿簀簁簂簃簄簅簆簈簉簊簍簎簐簑簒簓簔簕簗簘簙�簚簛簜簝簞簠簡簢簣簤簥簨簩簫簬簭簮簯簰簱簲簳簴簵簶簷簹簺簻簼簽簾籂骸孩海氦亥害骇酣憨邯韩含涵寒函喊罕翰撼捍旱憾悍焊汗汉夯杭航壕嚎豪毫郝好耗号浩呵喝荷菏核禾和何合盒貉阂河涸赫褐鹤贺嘿黑痕很狠恨哼亨横衡恒轰哄烘虹鸿洪宏弘红喉侯猴吼厚候后呼乎忽瑚壶葫胡蝴狐糊湖�".split("");
for(j = 0; j != D[186].length; ++j) if(D[186][j].charCodeAt(0) !== 0xFFFD) { e[D[186][j]] = 47616 + j; d[47616 + j] = D[186][j];}
D[187] = "����������������������������������������������������������������籃籄籅籆籇籈籉籊籋籌籎籏籐籑籒籓籔籕籖籗籘籙籚籛籜籝籞籟籠籡籢籣籤籥籦籧籨籩籪籫籬籭籮籯籰籱籲籵籶籷籸籹籺籾籿粀粁粂粃粄粅粆粇�粈粊粋粌粍粎粏粐粓粔粖粙粚粛粠粡粣粦粧粨粩粫粬粭粯粰粴粵粶粷粸粺粻弧虎唬护互沪户花哗华猾滑画划化话槐徊怀淮坏欢环桓还缓换患唤痪豢焕涣宦幻荒慌黄磺蝗簧皇凰惶煌晃幌恍谎灰挥辉徽恢蛔回毁悔慧卉惠晦贿秽会烩汇讳诲绘荤昏婚魂浑混豁活伙火获或惑霍货祸击圾基机畸稽积箕�".split("");
for(j = 0; j != D[187].length; ++j) if(D[187][j].charCodeAt(0) !== 0xFFFD) { e[D[187][j]] = 47872 + j; d[47872 + j] = D[187][j];}
D[188] = "����������������������������������������������������������������粿糀糂糃糄糆糉糋糎糏糐糑糒糓糔糘糚糛糝糞糡糢糣糤糥糦糧糩糪糫糬糭糮糰糱糲糳糴糵糶糷糹糺糼糽糾糿紀紁紂紃約紅紆紇紈紉紋紌納紎紏紐�紑紒紓純紕紖紗紘紙級紛紜紝紞紟紡紣紤紥紦紨紩紪紬紭紮細紱紲紳紴紵紶肌饥迹激讥鸡姬绩缉吉极棘辑籍集及急疾汲即嫉级挤几脊己蓟技冀季伎祭剂悸济寄寂计记既忌际妓继纪嘉枷夹佳家加荚颊贾甲钾假稼价架驾嫁歼监坚尖笺间煎兼肩艰奸缄茧检柬碱硷拣捡简俭剪减荐槛鉴践贱见键箭件�".split("");
for(j = 0; j != D[188].length; ++j) if(D[188][j].charCodeAt(0) !== 0xFFFD) { e[D[188][j]] = 48128 + j; d[48128 + j] = D[188][j];}
D[189] = "����������������������������������������������������������������紷紸紹紺紻紼紽紾紿絀絁終絃組絅絆絇絈絉絊絋経絍絎絏結絑絒絓絔絕絖絗絘絙絚絛絜絝絞絟絠絡絢絣絤絥給絧絨絩絪絫絬絭絯絰統絲絳絴絵絶�絸絹絺絻絼絽絾絿綀綁綂綃綄綅綆綇綈綉綊綋綌綍綎綏綐綑綒經綔綕綖綗綘健舰剑饯渐溅涧建僵姜将浆江疆蒋桨奖讲匠酱降蕉椒礁焦胶交郊浇骄娇嚼搅铰矫侥脚狡角饺缴绞剿教酵轿较叫窖揭接皆秸街阶截劫节桔杰捷睫竭洁结解姐戒藉芥界借介疥诫届巾筋斤金今津襟紧锦仅谨进靳晋禁近烬浸�".split("");
for(j = 0; j != D[189].length; ++j) if(D[189][j].charCodeAt(0) !== 0xFFFD) { e[D[189][j]] = 48384 + j; d[48384 + j] = D[189][j];}
D[190] = "����������������������������������������������������������������継続綛綜綝綞綟綠綡綢綣綤綥綧綨綩綪綫綬維綯綰綱網綳綴綵綶綷綸綹綺綻綼綽綾綿緀緁緂緃緄緅緆緇緈緉緊緋緌緍緎総緐緑緒緓緔緕緖緗緘緙�線緛緜緝緞緟締緡緢緣緤緥緦緧編緩緪緫緬緭緮緯緰緱緲緳練緵緶緷緸緹緺尽劲荆兢茎睛晶鲸京惊精粳经井警景颈静境敬镜径痉靖竟竞净炯窘揪究纠玖韭久灸九酒厩救旧臼舅咎就疚鞠拘狙疽居驹菊局咀矩举沮聚拒据巨具距踞锯俱句惧炬剧捐鹃娟倦眷卷绢撅攫抉掘倔爵觉决诀绝均菌钧军君峻�".split("");
for(j = 0; j != D[190].length; ++j) if(D[190][j].charCodeAt(0) !== 0xFFFD) { e[D[190][j]] = 48640 + j; d[48640 + j] = D[190][j];}
D[191] = "����������������������������������������������������������������緻緼緽緾緿縀縁縂縃縄縅縆縇縈縉縊縋縌縍縎縏縐縑縒縓縔縕縖縗縘縙縚縛縜縝縞縟縠縡縢縣縤縥縦縧縨縩縪縫縬縭縮縯縰縱縲縳縴縵縶縷縸縹�縺縼總績縿繀繂繃繄繅繆繈繉繊繋繌繍繎繏繐繑繒繓織繕繖繗繘繙繚繛繜繝俊竣浚郡骏喀咖卡咯开揩楷凯慨刊堪勘坎砍看康慷糠扛抗亢炕考拷烤靠坷苛柯棵磕颗科壳咳可渴克刻客课肯啃垦恳坑吭空恐孔控抠口扣寇枯哭窟苦酷库裤夸垮挎跨胯块筷侩快宽款匡筐狂框矿眶旷况亏盔岿窥葵奎魁傀�".split("");
for(j = 0; j != D[191].length; ++j) if(D[191][j].charCodeAt(0) !== 0xFFFD) { e[D[191][j]] = 48896 + j; d[48896 + j] = D[191][j];}
D[192] = "����������������������������������������������������������������繞繟繠繡繢繣繤繥繦繧繨繩繪繫繬繭繮繯繰繱繲繳繴繵繶繷繸繹繺繻繼繽繾繿纀纁纃纄纅纆纇纈纉纊纋續纍纎纏纐纑纒纓纔纕纖纗纘纙纚纜纝纞�纮纴纻纼绖绤绬绹缊缐缞缷缹缻缼缽缾缿罀罁罃罆罇罈罉罊罋罌罍罎罏罒罓馈愧溃坤昆捆困括扩廓阔垃拉喇蜡腊辣啦莱来赖蓝婪栏拦篮阑兰澜谰揽览懒缆烂滥琅榔狼廊郎朗浪捞劳牢老佬姥酪烙涝勒乐雷镭蕾磊累儡垒擂肋类泪棱楞冷厘梨犁黎篱狸离漓理李里鲤礼莉荔吏栗丽厉励砾历利傈例俐�".split("");
for(j = 0; j != D[192].length; ++j) if(D[192][j].charCodeAt(0) !== 0xFFFD) { e[D[192][j]] = 49152 + j; d[49152 + j] = D[192][j];}
D[193] = "����������������������������������������������������������������罖罙罛罜罝罞罠罣罤罥罦罧罫罬罭罯罰罳罵罶罷罸罺罻罼罽罿羀羂羃羄羅羆羇羈羉羋羍羏羐羑羒羓羕羖羗羘羙羛羜羠羢羣羥羦羨義羪羫羬羭羮羱�羳羴羵羶羷羺羻羾翀翂翃翄翆翇翈翉翋翍翏翐翑習翓翖翗翙翚翛翜翝翞翢翣痢立粒沥隶力璃哩俩联莲连镰廉怜涟帘敛脸链恋炼练粮凉梁粱良两辆量晾亮谅撩聊僚疗燎寥辽潦了撂镣廖料列裂烈劣猎琳林磷霖临邻鳞淋凛赁吝拎玲菱零龄铃伶羚凌灵陵岭领另令溜琉榴硫馏留刘瘤流柳六龙聋咙笼窿�".split("");
for(j = 0; j != D[193].length; ++j) if(D[193][j].charCodeAt(0) !== 0xFFFD) { e[D[193][j]] = 49408 + j; d[49408 + j] = D[193][j];}
D[194] = "����������������������������������������������������������������翤翧翨翪翫翬翭翯翲翴翵翶翷翸翹翺翽翾翿耂耇耈耉耊耎耏耑耓耚耛耝耞耟耡耣耤耫耬耭耮耯耰耲耴耹耺耼耾聀聁聄聅聇聈聉聎聏聐聑聓聕聖聗�聙聛聜聝聞聟聠聡聢聣聤聥聦聧聨聫聬聭聮聯聰聲聳聴聵聶職聸聹聺聻聼聽隆垄拢陇楼娄搂篓漏陋芦卢颅庐炉掳卤虏鲁麓碌露路赂鹿潞禄录陆戮驴吕铝侣旅履屡缕虑氯律率滤绿峦挛孪滦卵乱掠略抡轮伦仑沦纶论萝螺罗逻锣箩骡裸落洛骆络妈麻玛码蚂马骂嘛吗埋买麦卖迈脉瞒馒蛮满蔓曼慢漫�".split("");
for(j = 0; j != D[194].length; ++j) if(D[194][j].charCodeAt(0) !== 0xFFFD) { e[D[194][j]] = 49664 + j; d[49664 + j] = D[194][j];}
D[195] = "����������������������������������������������������������������聾肁肂肅肈肊肍肎肏肐肑肒肔肕肗肙肞肣肦肧肨肬肰肳肵肶肸肹肻胅胇胈胉胊胋胏胐胑胒胓胔胕胘胟胠胢胣胦胮胵胷胹胻胾胿脀脁脃脄脅脇脈脋�脌脕脗脙脛脜脝脟脠脡脢脣脤脥脦脧脨脩脪脫脭脮脰脳脴脵脷脹脺脻脼脽脿谩芒茫盲氓忙莽猫茅锚毛矛铆卯茂冒帽貌贸么玫枚梅酶霉煤没眉媒镁每美昧寐妹媚门闷们萌蒙檬盟锰猛梦孟眯醚靡糜迷谜弥米秘觅泌蜜密幂棉眠绵冕免勉娩缅面苗描瞄藐秒渺庙妙蔑灭民抿皿敏悯闽明螟鸣铭名命谬摸�".split("");
for(j = 0; j != D[195].length; ++j) if(D[195][j].charCodeAt(0) !== 0xFFFD) { e[D[195][j]] = 49920 + j; d[49920 + j] = D[195][j];}
D[196] = "����������������������������������������������������������������腀腁腂腃腄腅腇腉腍腎腏腒腖腗腘腛腜腝腞腟腡腢腣腤腦腨腪腫腬腯腲腳腵腶腷腸膁膃膄膅膆膇膉膋膌膍膎膐膒膓膔膕膖膗膙膚膞膟膠膡膢膤膥�膧膩膫膬膭膮膯膰膱膲膴膵膶膷膸膹膼膽膾膿臄臅臇臈臉臋臍臎臏臐臑臒臓摹蘑模膜磨摩魔抹末莫墨默沫漠寞陌谋牟某拇牡亩姆母墓暮幕募慕木目睦牧穆拿哪呐钠那娜纳氖乃奶耐奈南男难囊挠脑恼闹淖呢馁内嫩能妮霓倪泥尼拟你匿腻逆溺蔫拈年碾撵捻念娘酿鸟尿捏聂孽啮镊镍涅您柠狞凝宁�".split("");
for(j = 0; j != D[196].length; ++j) if(D[196][j].charCodeAt(0) !== 0xFFFD) { e[D[196][j]] = 50176 + j; d[50176 + j] = D[196][j];}
D[197] = "����������������������������������������������������������������臔臕臖臗臘臙臚臛臜臝臞臟臠臡臢臤臥臦臨臩臫臮臯臰臱臲臵臶臷臸臹臺臽臿舃與興舉舊舋舎舏舑舓舕舖舗舘舙舚舝舠舤舥舦舧舩舮舲舺舼舽舿�艀艁艂艃艅艆艈艊艌艍艎艐艑艒艓艔艕艖艗艙艛艜艝艞艠艡艢艣艤艥艦艧艩拧泞牛扭钮纽脓浓农弄奴努怒女暖虐疟挪懦糯诺哦欧鸥殴藕呕偶沤啪趴爬帕怕琶拍排牌徘湃派攀潘盘磐盼畔判叛乓庞旁耪胖抛咆刨炮袍跑泡呸胚培裴赔陪配佩沛喷盆砰抨烹澎彭蓬棚硼篷膨朋鹏捧碰坯砒霹批披劈琵毗�".split("");
for(j = 0; j != D[197].length; ++j) if(D[197][j].charCodeAt(0) !== 0xFFFD) { e[D[197][j]] = 50432 + j; d[50432 + j] = D[197][j];}
D[198] = "����������������������������������������������������������������艪艫艬艭艱艵艶艷艸艻艼芀芁芃芅芆芇芉芌芐芓芔芕芖芚芛芞芠芢芣芧芲芵芶芺芻芼芿苀苂苃苅苆苉苐苖苙苚苝苢苧苨苩苪苬苭苮苰苲苳苵苶苸�苺苼苽苾苿茀茊茋茍茐茒茓茖茘茙茝茞茟茠茡茢茣茤茥茦茩茪茮茰茲茷茻茽啤脾疲皮匹痞僻屁譬篇偏片骗飘漂瓢票撇瞥拼频贫品聘乒坪苹萍平凭瓶评屏坡泼颇婆破魄迫粕剖扑铺仆莆葡菩蒲埔朴圃普浦谱曝瀑期欺栖戚妻七凄漆柒沏其棋奇歧畦崎脐齐旗祈祁骑起岂乞企启契砌器气迄弃汽泣讫掐�".split("");
for(j = 0; j != D[198].length; ++j) if(D[198][j].charCodeAt(0) !== 0xFFFD) { e[D[198][j]] = 50688 + j; d[50688 + j] = D[198][j];}
D[199] = "����������������������������������������������������������������茾茿荁荂荄荅荈荊荋荌荍荎荓荕荖荗荘荙荝荢荰荱荲荳荴荵荶荹荺荾荿莀莁莂莃莄莇莈莊莋莌莍莏莐莑莔莕莖莗莙莚莝莟莡莢莣莤莥莦莧莬莭莮�莯莵莻莾莿菂菃菄菆菈菉菋菍菎菐菑菒菓菕菗菙菚菛菞菢菣菤菦菧菨菫菬菭恰洽牵扦钎铅千迁签仟谦乾黔钱钳前潜遣浅谴堑嵌欠歉枪呛腔羌墙蔷强抢橇锹敲悄桥瞧乔侨巧鞘撬翘峭俏窍切茄且怯窃钦侵亲秦琴勤芹擒禽寝沁青轻氢倾卿清擎晴氰情顷请庆琼穷秋丘邱球求囚酋泅趋区蛆曲躯屈驱渠�".split("");
for(j = 0; j != D[199].length; ++j) if(D[199][j].charCodeAt(0) !== 0xFFFD) { e[D[199][j]] = 50944 + j; d[50944 + j] = D[199][j];}
D[200] = "����������������������������������������������������������������菮華菳菴菵菶菷菺菻菼菾菿萀萂萅萇萈萉萊萐萒萓萔萕萖萗萙萚萛萞萟萠萡萢萣萩萪萫萬萭萮萯萰萲萳萴萵萶萷萹萺萻萾萿葀葁葂葃葄葅葇葈葉�葊葋葌葍葎葏葐葒葓葔葕葖葘葝葞葟葠葢葤葥葦葧葨葪葮葯葰葲葴葷葹葻葼取娶龋趣去圈颧权醛泉全痊拳犬券劝缺炔瘸却鹊榷确雀裙群然燃冉染瓤壤攘嚷让饶扰绕惹热壬仁人忍韧任认刃妊纫扔仍日戎茸蓉荣融熔溶容绒冗揉柔肉茹蠕儒孺如辱乳汝入褥软阮蕊瑞锐闰润若弱撒洒萨腮鳃塞赛三叁�".split("");
for(j = 0; j != D[200].length; ++j) if(D[200][j].charCodeAt(0) !== 0xFFFD) { e[D[200][j]] = 51200 + j; d[51200 + j] = D[200][j];}
D[201] = "����������������������������������������������������������������葽葾葿蒀蒁蒃蒄蒅蒆蒊蒍蒏蒐蒑蒒蒓蒔蒕蒖蒘蒚蒛蒝蒞蒟蒠蒢蒣蒤蒥蒦蒧蒨蒩蒪蒫蒬蒭蒮蒰蒱蒳蒵蒶蒷蒻蒼蒾蓀蓂蓃蓅蓆蓇蓈蓋蓌蓎蓏蓒蓔蓕蓗�蓘蓙蓚蓛蓜蓞蓡蓢蓤蓧蓨蓩蓪蓫蓭蓮蓯蓱蓲蓳蓴蓵蓶蓷蓸蓹蓺蓻蓽蓾蔀蔁蔂伞散桑嗓丧搔骚扫嫂瑟色涩森僧莎砂杀刹沙纱傻啥煞筛晒珊苫杉山删煽衫闪陕擅赡膳善汕扇缮墒伤商赏晌上尚裳梢捎稍烧芍勺韶少哨邵绍奢赊蛇舌舍赦摄射慑涉社设砷申呻伸身深娠绅神沈审婶甚肾慎渗声生甥牲升绳�".split("");
for(j = 0; j != D[201].length; ++j) if(D[201][j].charCodeAt(0) !== 0xFFFD) { e[D[201][j]] = 51456 + j; d[51456 + j] = D[201][j];}
D[202] = "����������������������������������������������������������������蔃蔄蔅蔆蔇蔈蔉蔊蔋蔍蔎蔏蔐蔒蔔蔕蔖蔘蔙蔛蔜蔝蔞蔠蔢蔣蔤蔥蔦蔧蔨蔩蔪蔭蔮蔯蔰蔱蔲蔳蔴蔵蔶蔾蔿蕀蕁蕂蕄蕅蕆蕇蕋蕌蕍蕎蕏蕐蕑蕒蕓蕔蕕�蕗蕘蕚蕛蕜蕝蕟蕠蕡蕢蕣蕥蕦蕧蕩蕪蕫蕬蕭蕮蕯蕰蕱蕳蕵蕶蕷蕸蕼蕽蕿薀薁省盛剩胜圣师失狮施湿诗尸虱十石拾时什食蚀实识史矢使屎驶始式示士世柿事拭誓逝势是嗜噬适仕侍释饰氏市恃室视试收手首守寿授售受瘦兽蔬枢梳殊抒输叔舒淑疏书赎孰熟薯暑曙署蜀黍鼠属术述树束戍竖墅庶数漱�".split("");
for(j = 0; j != D[202].length; ++j) if(D[202][j].charCodeAt(0) !== 0xFFFD) { e[D[202][j]] = 51712 + j; d[51712 + j] = D[202][j];}
D[203] = "����������������������������������������������������������������薂薃薆薈薉薊薋薌薍薎薐薑薒薓薔薕薖薗薘薙薚薝薞薟薠薡薢薣薥薦薧薩薫薬薭薱薲薳薴薵薶薸薺薻薼薽薾薿藀藂藃藄藅藆藇藈藊藋藌藍藎藑藒�藔藖藗藘藙藚藛藝藞藟藠藡藢藣藥藦藧藨藪藫藬藭藮藯藰藱藲藳藴藵藶藷藸恕刷耍摔衰甩帅栓拴霜双爽谁水睡税吮瞬顺舜说硕朔烁斯撕嘶思私司丝死肆寺嗣四伺似饲巳松耸怂颂送宋讼诵搜艘擞嗽苏酥俗素速粟僳塑溯宿诉肃酸蒜算虽隋随绥髓碎岁穗遂隧祟孙损笋蓑梭唆缩琐索锁所塌他它她塔�".split("");
for(j = 0; j != D[203].length; ++j) if(D[203][j].charCodeAt(0) !== 0xFFFD) { e[D[203][j]] = 51968 + j; d[51968 + j] = D[203][j];}
D[204] = "����������������������������������������������������������������藹藺藼藽藾蘀蘁蘂蘃蘄蘆蘇蘈蘉蘊蘋蘌蘍蘎蘏蘐蘒蘓蘔蘕蘗蘘蘙蘚蘛蘜蘝蘞蘟蘠蘡蘢蘣蘤蘥蘦蘨蘪蘫蘬蘭蘮蘯蘰蘱蘲蘳蘴蘵蘶蘷蘹蘺蘻蘽蘾蘿虀�虁虂虃虄虅虆虇虈虉虊虋虌虒虓處虖虗虘虙虛虜虝號虠虡虣虤虥虦虧虨虩虪獭挞蹋踏胎苔抬台泰酞太态汰坍摊贪瘫滩坛檀痰潭谭谈坦毯袒碳探叹炭汤塘搪堂棠膛唐糖倘躺淌趟烫掏涛滔绦萄桃逃淘陶讨套特藤腾疼誊梯剔踢锑提题蹄啼体替嚏惕涕剃屉天添填田甜恬舔腆挑条迢眺跳贴铁帖厅听烃�".split("");
for(j = 0; j != D[204].length; ++j) if(D[204][j].charCodeAt(0) !== 0xFFFD) { e[D[204][j]] = 52224 + j; d[52224 + j] = D[204][j];}
D[205] = "����������������������������������������������������������������虭虯虰虲虳虴虵虶虷虸蚃蚄蚅蚆蚇蚈蚉蚎蚏蚐蚑蚒蚔蚖蚗蚘蚙蚚蚛蚞蚟蚠蚡蚢蚥蚦蚫蚭蚮蚲蚳蚷蚸蚹蚻蚼蚽蚾蚿蛁蛂蛃蛅蛈蛌蛍蛒蛓蛕蛖蛗蛚蛜�蛝蛠蛡蛢蛣蛥蛦蛧蛨蛪蛫蛬蛯蛵蛶蛷蛺蛻蛼蛽蛿蜁蜄蜅蜆蜋蜌蜎蜏蜐蜑蜔蜖汀廷停亭庭挺艇通桐酮瞳同铜彤童桶捅筒统痛偷投头透凸秃突图徒途涂屠土吐兔湍团推颓腿蜕褪退吞屯臀拖托脱鸵陀驮驼椭妥拓唾挖哇蛙洼娃瓦袜歪外豌弯湾玩顽丸烷完碗挽晚皖惋宛婉万腕汪王亡枉网往旺望忘妄威�".split("");
for(j = 0; j != D[205].length; ++j) if(D[205][j].charCodeAt(0) !== 0xFFFD) { e[D[205][j]] = 52480 + j; d[52480 + j] = D[205][j];}
D[206] = "����������������������������������������������������������������蜙蜛蜝蜟蜠蜤蜦蜧蜨蜪蜫蜬蜭蜯蜰蜲蜳蜵蜶蜸蜹蜺蜼蜽蝀蝁蝂蝃蝄蝅蝆蝊蝋蝍蝏蝐蝑蝒蝔蝕蝖蝘蝚蝛蝜蝝蝞蝟蝡蝢蝦蝧蝨蝩蝪蝫蝬蝭蝯蝱蝲蝳蝵�蝷蝸蝹蝺蝿螀螁螄螆螇螉螊螌螎螏螐螑螒螔螕螖螘螙螚螛螜螝螞螠螡螢螣螤巍微危韦违桅围唯惟为潍维苇萎委伟伪尾纬未蔚味畏胃喂魏位渭谓尉慰卫瘟温蚊文闻纹吻稳紊问嗡翁瓮挝蜗涡窝我斡卧握沃巫呜钨乌污诬屋无芜梧吾吴毋武五捂午舞伍侮坞戊雾晤物勿务悟误昔熙析西硒矽晰嘻吸锡牺�".split("");
for(j = 0; j != D[206].length; ++j) if(D[206][j].charCodeAt(0) !== 0xFFFD) { e[D[206][j]] = 52736 + j; d[52736 + j] = D[206][j];}
D[207] = "����������������������������������������������������������������螥螦螧螩螪螮螰螱螲螴螶螷螸螹螻螼螾螿蟁蟂蟃蟄蟅蟇蟈蟉蟌蟍蟎蟏蟐蟔蟕蟖蟗蟘蟙蟚蟜蟝蟞蟟蟡蟢蟣蟤蟦蟧蟨蟩蟫蟬蟭蟯蟰蟱蟲蟳蟴蟵蟶蟷蟸�蟺蟻蟼蟽蟿蠀蠁蠂蠄蠅蠆蠇蠈蠉蠋蠌蠍蠎蠏蠐蠑蠒蠔蠗蠘蠙蠚蠜蠝蠞蠟蠠蠣稀息希悉膝夕惜熄烯溪汐犀檄袭席习媳喜铣洗系隙戏细瞎虾匣霞辖暇峡侠狭下厦夏吓掀锨先仙鲜纤咸贤衔舷闲涎弦嫌显险现献县腺馅羡宪陷限线相厢镶香箱襄湘乡翔祥详想响享项巷橡像向象萧硝霄削哮嚣销消宵淆晓�".split("");
for(j = 0; j != D[207].length; ++j) if(D[207][j].charCodeAt(0) !== 0xFFFD) { e[D[207][j]] = 52992 + j; d[52992 + j] = D[207][j];}
D[208] = "����������������������������������������������������������������蠤蠥蠦蠧蠨蠩蠪蠫蠬蠭蠮蠯蠰蠱蠳蠴蠵蠶蠷蠸蠺蠻蠽蠾蠿衁衂衃衆衇衈衉衊衋衎衏衐衑衒術衕衖衘衚衛衜衝衞衟衠衦衧衪衭衯衱衳衴衵衶衸衹衺�衻衼袀袃袆袇袉袊袌袎袏袐袑袓袔袕袗袘袙袚袛袝袞袟袠袡袣袥袦袧袨袩袪小孝校肖啸笑效楔些歇蝎鞋协挟携邪斜胁谐写械卸蟹懈泄泻谢屑薪芯锌欣辛新忻心信衅星腥猩惺兴刑型形邢行醒幸杏性姓兄凶胸匈汹雄熊休修羞朽嗅锈秀袖绣墟戌需虚嘘须徐许蓄酗叙旭序畜恤絮婿绪续轩喧宣悬旋玄�".split("");
for(j = 0; j != D[208].length; ++j) if(D[208][j].charCodeAt(0) !== 0xFFFD) { e[D[208][j]] = 53248 + j; d[53248 + j] = D[208][j];}
D[209] = "����������������������������������������������������������������袬袮袯袰袲袳袴袵袶袸袹袺袻袽袾袿裀裃裄裇裈裊裋裌裍裏裐裑裓裖裗裚裛補裝裞裠裡裦裧裩裪裫裬裭裮裯裲裵裶裷裺裻製裿褀褁褃褄褅褆複褈�褉褋褌褍褎褏褑褔褕褖褗褘褜褝褞褟褠褢褣褤褦褧褨褩褬褭褮褯褱褲褳褵褷选癣眩绚靴薛学穴雪血勋熏循旬询寻驯巡殉汛训讯逊迅压押鸦鸭呀丫芽牙蚜崖衙涯雅哑亚讶焉咽阉烟淹盐严研蜒岩延言颜阎炎沿奄掩眼衍演艳堰燕厌砚雁唁彦焰宴谚验殃央鸯秧杨扬佯疡羊洋阳氧仰痒养样漾邀腰妖瑶�".split("");
for(j = 0; j != D[209].length; ++j) if(D[209][j].charCodeAt(0) !== 0xFFFD) { e[D[209][j]] = 53504 + j; d[53504 + j] = D[209][j];}
D[210] = "����������������������������������������������������������������褸褹褺褻褼褽褾褿襀襂襃襅襆襇襈襉襊襋襌襍襎襏襐襑襒襓襔襕襖襗襘襙襚襛襜襝襠襡襢襣襤襥襧襨襩襪襫襬襭襮襯襰襱襲襳襴襵襶襷襸襹襺襼�襽襾覀覂覄覅覇覈覉覊見覌覍覎規覐覑覒覓覔覕視覗覘覙覚覛覜覝覞覟覠覡摇尧遥窑谣姚咬舀药要耀椰噎耶爷野冶也页掖业叶曳腋夜液一壹医揖铱依伊衣颐夷遗移仪胰疑沂宜姨彝椅蚁倚已乙矣以艺抑易邑屹亿役臆逸肄疫亦裔意毅忆义益溢诣议谊译异翼翌绎茵荫因殷音阴姻吟银淫寅饮尹引隐�".split("");
for(j = 0; j != D[210].length; ++j) if(D[210][j].charCodeAt(0) !== 0xFFFD) { e[D[210][j]] = 53760 + j; d[53760 + j] = D[210][j];}
D[211] = "����������������������������������������������������������������覢覣覤覥覦覧覨覩親覫覬覭覮覯覰覱覲観覴覵覶覷覸覹覺覻覼覽覾覿觀觃觍觓觔觕觗觘觙觛觝觟觠觡觢觤觧觨觩觪觬觭觮觰觱觲觴觵觶觷觸觹觺�觻觼觽觾觿訁訂訃訄訅訆計訉訊訋訌訍討訏訐訑訒訓訔訕訖託記訙訚訛訜訝印英樱婴鹰应缨莹萤营荧蝇迎赢盈影颖硬映哟拥佣臃痈庸雍踊蛹咏泳涌永恿勇用幽优悠忧尤由邮铀犹油游酉有友右佑釉诱又幼迂淤于盂榆虞愚舆余俞逾鱼愉渝渔隅予娱雨与屿禹宇语羽玉域芋郁吁遇喻峪御愈欲狱育誉�".split("");
for(j = 0; j != D[211].length; ++j) if(D[211][j].charCodeAt(0) !== 0xFFFD) { e[D[211][j]] = 54016 + j; d[54016 + j] = D[211][j];}
D[212] = "����������������������������������������������������������������訞訟訠訡訢訣訤訥訦訧訨訩訪訫訬設訮訯訰許訲訳訴訵訶訷訸訹診註証訽訿詀詁詂詃詄詅詆詇詉詊詋詌詍詎詏詐詑詒詓詔評詖詗詘詙詚詛詜詝詞�詟詠詡詢詣詤詥試詧詨詩詪詫詬詭詮詯詰話該詳詴詵詶詷詸詺詻詼詽詾詿誀浴寓裕预豫驭鸳渊冤元垣袁原援辕园员圆猿源缘远苑愿怨院曰约越跃钥岳粤月悦阅耘云郧匀陨允运蕴酝晕韵孕匝砸杂栽哉灾宰载再在咱攒暂赞赃脏葬遭糟凿藻枣早澡蚤躁噪造皂灶燥责择则泽贼怎增憎曾赠扎喳渣札轧�".split("");
for(j = 0; j != D[212].length; ++j) if(D[212][j].charCodeAt(0) !== 0xFFFD) { e[D[212][j]] = 54272 + j; d[54272 + j] = D[212][j];}
D[213] = "����������������������������������������������������������������誁誂誃誄誅誆誇誈誋誌認誎誏誐誑誒誔誕誖誗誘誙誚誛誜誝語誟誠誡誢誣誤誥誦誧誨誩說誫説読誮誯誰誱課誳誴誵誶誷誸誹誺誻誼誽誾調諀諁諂�諃諄諅諆談諈諉諊請諌諍諎諏諐諑諒諓諔諕論諗諘諙諚諛諜諝諞諟諠諡諢諣铡闸眨栅榨咋乍炸诈摘斋宅窄债寨瞻毡詹粘沾盏斩辗崭展蘸栈占战站湛绽樟章彰漳张掌涨杖丈帐账仗胀瘴障招昭找沼赵照罩兆肇召遮折哲蛰辙者锗蔗这浙珍斟真甄砧臻贞针侦枕疹诊震振镇阵蒸挣睁征狰争怔整拯正政�".split("");
for(j = 0; j != D[213].length; ++j) if(D[213][j].charCodeAt(0) !== 0xFFFD) { e[D[213][j]] = 54528 + j; d[54528 + j] = D[213][j];}
D[214] = "����������������������������������������������������������������諤諥諦諧諨諩諪諫諬諭諮諯諰諱諲諳諴諵諶諷諸諹諺諻諼諽諾諿謀謁謂謃謄謅謆謈謉謊謋謌謍謎謏謐謑謒謓謔謕謖謗謘謙謚講謜謝謞謟謠謡謢謣�謤謥謧謨謩謪謫謬謭謮謯謰謱謲謳謴謵謶謷謸謹謺謻謼謽謾謿譀譁譂譃譄譅帧症郑证芝枝支吱蜘知肢脂汁之织职直植殖执值侄址指止趾只旨纸志挚掷至致置帜峙制智秩稚质炙痔滞治窒中盅忠钟衷终种肿重仲众舟周州洲诌粥轴肘帚咒皱宙昼骤珠株蛛朱猪诸诛逐竹烛煮拄瞩嘱主著柱助蛀贮铸筑�".split("");
for(j = 0; j != D[214].length; ++j) if(D[214][j].charCodeAt(0) !== 0xFFFD) { e[D[214][j]] = 54784 + j; d[54784 + j] = D[214][j];}
D[215] = "����������������������������������������������������������������譆譇譈證譊譋譌譍譎譏譐譑譒譓譔譕譖譗識譙譚譛譜譝譞譟譠譡譢譣譤譥譧譨譩譪譫譭譮譯議譱譲譳譴譵譶護譸譹譺譻譼譽譾譿讀讁讂讃讄讅讆�讇讈讉變讋讌讍讎讏讐讑讒讓讔讕讖讗讘讙讚讛讜讝讞讟讬讱讻诇诐诪谉谞住注祝驻抓爪拽专砖转撰赚篆桩庄装妆撞壮状椎锥追赘坠缀谆准捉拙卓桌琢茁酌啄着灼浊兹咨资姿滋淄孜紫仔籽滓子自渍字鬃棕踪宗综总纵邹走奏揍租足卒族祖诅阻组钻纂嘴醉最罪尊遵昨左佐柞做作坐座������".split("");
for(j = 0; j != D[215].length; ++j) if(D[215][j].charCodeAt(0) !== 0xFFFD) { e[D[215][j]] = 55040 + j; d[55040 + j] = D[215][j];}
D[216] = "����������������������������������������������������������������谸谹谺谻谼谽谾谿豀豂豃豄豅豈豊豋豍豎豏豐豑豒豓豔豖豗豘豙豛豜豝豞豟豠豣豤豥豦豧豨豩豬豭豮豯豰豱豲豴豵豶豷豻豼豽豾豿貀貁貃貄貆貇�貈貋貍貎貏貐貑貒貓貕貖貗貙貚貛貜貝貞貟負財貢貣貤貥貦貧貨販貪貫責貭亍丌兀丐廿卅丕亘丞鬲孬噩丨禺丿匕乇夭爻卮氐囟胤馗毓睾鼗丶亟鼐乜乩亓芈孛啬嘏仄厍厝厣厥厮靥赝匚叵匦匮匾赜卦卣刂刈刎刭刳刿剀剌剞剡剜蒯剽劂劁劐劓冂罔亻仃仉仂仨仡仫仞伛仳伢佤仵伥伧伉伫佞佧攸佚佝�".split("");
for(j = 0; j != D[216].length; ++j) if(D[216][j].charCodeAt(0) !== 0xFFFD) { e[D[216][j]] = 55296 + j; d[55296 + j] = D[216][j];}
D[217] = "����������������������������������������������������������������貮貯貰貱貲貳貴貵貶買貸貹貺費貼貽貾貿賀賁賂賃賄賅賆資賈賉賊賋賌賍賎賏賐賑賒賓賔賕賖賗賘賙賚賛賜賝賞賟賠賡賢賣賤賥賦賧賨賩質賫賬�賭賮賯賰賱賲賳賴賵賶賷賸賹賺賻購賽賾賿贀贁贂贃贄贅贆贇贈贉贊贋贌贍佟佗伲伽佶佴侑侉侃侏佾佻侪佼侬侔俦俨俪俅俚俣俜俑俟俸倩偌俳倬倏倮倭俾倜倌倥倨偾偃偕偈偎偬偻傥傧傩傺僖儆僭僬僦僮儇儋仝氽佘佥俎龠汆籴兮巽黉馘冁夔勹匍訇匐凫夙兕亠兖亳衮袤亵脔裒禀嬴蠃羸冫冱冽冼�".split("");
for(j = 0; j != D[217].length; ++j) if(D[217][j].charCodeAt(0) !== 0xFFFD) { e[D[217][j]] = 55552 + j; d[55552 + j] = D[217][j];}
D[218] = "����������������������������������������������������������������贎贏贐贑贒贓贔贕贖贗贘贙贚贛贜贠赑赒赗赟赥赨赩赪赬赮赯赱赲赸赹赺赻赼赽赾赿趀趂趃趆趇趈趉趌趍趎趏趐趒趓趕趖趗趘趙趚趛趜趝趞趠趡�趢趤趥趦趧趨趩趪趫趬趭趮趯趰趲趶趷趹趻趽跀跁跂跅跇跈跉跊跍跐跒跓跔凇冖冢冥讠讦讧讪讴讵讷诂诃诋诏诎诒诓诔诖诘诙诜诟诠诤诨诩诮诰诳诶诹诼诿谀谂谄谇谌谏谑谒谔谕谖谙谛谘谝谟谠谡谥谧谪谫谮谯谲谳谵谶卩卺阝阢阡阱阪阽阼陂陉陔陟陧陬陲陴隈隍隗隰邗邛邝邙邬邡邴邳邶邺�".split("");
for(j = 0; j != D[218].length; ++j) if(D[218][j].charCodeAt(0) !== 0xFFFD) { e[D[218][j]] = 55808 + j; d[55808 + j] = D[218][j];}
D[219] = "����������������������������������������������������������������跕跘跙跜跠跡跢跥跦跧跩跭跮跰跱跲跴跶跼跾跿踀踁踂踃踄踆踇踈踋踍踎踐踑踒踓踕踖踗踘踙踚踛踜踠踡踤踥踦踧踨踫踭踰踲踳踴踶踷踸踻踼踾�踿蹃蹅蹆蹌蹍蹎蹏蹐蹓蹔蹕蹖蹗蹘蹚蹛蹜蹝蹞蹟蹠蹡蹢蹣蹤蹥蹧蹨蹪蹫蹮蹱邸邰郏郅邾郐郄郇郓郦郢郜郗郛郫郯郾鄄鄢鄞鄣鄱鄯鄹酃酆刍奂劢劬劭劾哿勐勖勰叟燮矍廴凵凼鬯厶弁畚巯坌垩垡塾墼壅壑圩圬圪圳圹圮圯坜圻坂坩垅坫垆坼坻坨坭坶坳垭垤垌垲埏垧垴垓垠埕埘埚埙埒垸埴埯埸埤埝�".split("");
for(j = 0; j != D[219].length; ++j) if(D[219][j].charCodeAt(0) !== 0xFFFD) { e[D[219][j]] = 56064 + j; d[56064 + j] = D[219][j];}
D[220] = "����������������������������������������������������������������蹳蹵蹷蹸蹹蹺蹻蹽蹾躀躂躃躄躆躈躉躊躋躌躍躎躑躒躓躕躖躗躘躙躚躛躝躟躠躡躢躣躤躥躦躧躨躩躪躭躮躰躱躳躴躵躶躷躸躹躻躼躽躾躿軀軁軂�軃軄軅軆軇軈軉車軋軌軍軏軐軑軒軓軔軕軖軗軘軙軚軛軜軝軞軟軠軡転軣軤堋堍埽埭堀堞堙塄堠塥塬墁墉墚墀馨鼙懿艹艽艿芏芊芨芄芎芑芗芙芫芸芾芰苈苊苣芘芷芮苋苌苁芩芴芡芪芟苄苎芤苡茉苷苤茏茇苜苴苒苘茌苻苓茑茚茆茔茕苠苕茜荑荛荜茈莒茼茴茱莛荞茯荏荇荃荟荀茗荠茭茺茳荦荥�".split("");
for(j = 0; j != D[220].length; ++j) if(D[220][j].charCodeAt(0) !== 0xFFFD) { e[D[220][j]] = 56320 + j; d[56320 + j] = D[220][j];}
D[221] = "����������������������������������������������������������������軥軦軧軨軩軪軫軬軭軮軯軰軱軲軳軴軵軶軷軸軹軺軻軼軽軾軿輀輁輂較輄輅輆輇輈載輊輋輌輍輎輏輐輑輒輓輔輕輖輗輘輙輚輛輜輝輞輟輠輡輢輣�輤輥輦輧輨輩輪輫輬輭輮輯輰輱輲輳輴輵輶輷輸輹輺輻輼輽輾輿轀轁轂轃轄荨茛荩荬荪荭荮莰荸莳莴莠莪莓莜莅荼莶莩荽莸荻莘莞莨莺莼菁萁菥菘堇萘萋菝菽菖萜萸萑萆菔菟萏萃菸菹菪菅菀萦菰菡葜葑葚葙葳蒇蒈葺蒉葸萼葆葩葶蒌蒎萱葭蓁蓍蓐蓦蒽蓓蓊蒿蒺蓠蒡蒹蒴蒗蓥蓣蔌甍蔸蓰蔹蔟蔺�".split("");
for(j = 0; j != D[221].length; ++j) if(D[221][j].charCodeAt(0) !== 0xFFFD) { e[D[221][j]] = 56576 + j; d[56576 + j] = D[221][j];}
D[222] = "����������������������������������������������������������������轅轆轇轈轉轊轋轌轍轎轏轐轑轒轓轔轕轖轗轘轙轚轛轜轝轞轟轠轡轢轣轤轥轪辀辌辒辝辠辡辢辤辥辦辧辪辬辭辮辯農辳辴辵辷辸辺辻込辿迀迃迆�迉迊迋迌迍迏迒迖迗迚迠迡迣迧迬迯迱迲迴迵迶迺迻迼迾迿逇逈逌逎逓逕逘蕖蔻蓿蓼蕙蕈蕨蕤蕞蕺瞢蕃蕲蕻薤薨薇薏蕹薮薜薅薹薷薰藓藁藜藿蘧蘅蘩蘖蘼廾弈夼奁耷奕奚奘匏尢尥尬尴扌扪抟抻拊拚拗拮挢拶挹捋捃掭揶捱捺掎掴捭掬掊捩掮掼揲揸揠揿揄揞揎摒揆掾摅摁搋搛搠搌搦搡摞撄摭撖�".split("");
for(j = 0; j != D[222].length; ++j) if(D[222][j].charCodeAt(0) !== 0xFFFD) { e[D[222][j]] = 56832 + j; d[56832 + j] = D[222][j];}
D[223] = "����������������������������������������������������������������這逜連逤逥逧逨逩逪逫逬逰週進逳逴逷逹逺逽逿遀遃遅遆遈遉遊運遌過達違遖遙遚遜遝遞遟遠遡遤遦遧適遪遫遬遯遰遱遲遳遶遷選遹遺遻遼遾邁�還邅邆邇邉邊邌邍邎邏邐邒邔邖邘邚邜邞邟邠邤邥邧邨邩邫邭邲邷邼邽邿郀摺撷撸撙撺擀擐擗擤擢攉攥攮弋忒甙弑卟叱叽叩叨叻吒吖吆呋呒呓呔呖呃吡呗呙吣吲咂咔呷呱呤咚咛咄呶呦咝哐咭哂咴哒咧咦哓哔呲咣哕咻咿哌哙哚哜咩咪咤哝哏哞唛哧唠哽唔哳唢唣唏唑唧唪啧喏喵啉啭啁啕唿啐唼�".split("");
for(j = 0; j != D[223].length; ++j) if(D[223][j].charCodeAt(0) !== 0xFFFD) { e[D[223][j]] = 57088 + j; d[57088 + j] = D[223][j];}
D[224] = "����������������������������������������������������������������郂郃郆郈郉郋郌郍郒郔郕郖郘郙郚郞郟郠郣郤郥郩郪郬郮郰郱郲郳郵郶郷郹郺郻郼郿鄀鄁鄃鄅鄆鄇鄈鄉鄊鄋鄌鄍鄎鄏鄐鄑鄒鄓鄔鄕鄖鄗鄘鄚鄛鄜�鄝鄟鄠鄡鄤鄥鄦鄧鄨鄩鄪鄫鄬鄭鄮鄰鄲鄳鄴鄵鄶鄷鄸鄺鄻鄼鄽鄾鄿酀酁酂酄唷啖啵啶啷唳唰啜喋嗒喃喱喹喈喁喟啾嗖喑啻嗟喽喾喔喙嗪嗷嗉嘟嗑嗫嗬嗔嗦嗝嗄嗯嗥嗲嗳嗌嗍嗨嗵嗤辔嘞嘈嘌嘁嘤嘣嗾嘀嘧嘭噘嘹噗嘬噍噢噙噜噌噔嚆噤噱噫噻噼嚅嚓嚯囔囗囝囡囵囫囹囿圄圊圉圜帏帙帔帑帱帻帼�".split("");
for(j = 0; j != D[224].length; ++j) if(D[224][j].charCodeAt(0) !== 0xFFFD) { e[D[224][j]] = 57344 + j; d[57344 + j] = D[224][j];}
D[225] = "����������������������������������������������������������������酅酇酈酑酓酔酕酖酘酙酛酜酟酠酦酧酨酫酭酳酺酻酼醀醁醂醃醄醆醈醊醎醏醓醔醕醖醗醘醙醜醝醞醟醠醡醤醥醦醧醨醩醫醬醰醱醲醳醶醷醸醹醻�醼醽醾醿釀釁釂釃釄釅釆釈釋釐釒釓釔釕釖釗釘釙釚釛針釞釟釠釡釢釣釤釥帷幄幔幛幞幡岌屺岍岐岖岈岘岙岑岚岜岵岢岽岬岫岱岣峁岷峄峒峤峋峥崂崃崧崦崮崤崞崆崛嵘崾崴崽嵬嵛嵯嵝嵫嵋嵊嵩嵴嶂嶙嶝豳嶷巅彳彷徂徇徉後徕徙徜徨徭徵徼衢彡犭犰犴犷犸狃狁狎狍狒狨狯狩狲狴狷猁狳猃狺�".split("");
for(j = 0; j != D[225].length; ++j) if(D[225][j].charCodeAt(0) !== 0xFFFD) { e[D[225][j]] = 57600 + j; d[57600 + j] = D[225][j];}
D[226] = "����������������������������������������������������������������釦釧釨釩釪釫釬釭釮釯釰釱釲釳釴釵釶釷釸釹釺釻釼釽釾釿鈀鈁鈂鈃鈄鈅鈆鈇鈈鈉鈊鈋鈌鈍鈎鈏鈐鈑鈒鈓鈔鈕鈖鈗鈘鈙鈚鈛鈜鈝鈞鈟鈠鈡鈢鈣鈤�鈥鈦鈧鈨鈩鈪鈫鈬鈭鈮鈯鈰鈱鈲鈳鈴鈵鈶鈷鈸鈹鈺鈻鈼鈽鈾鈿鉀鉁鉂鉃鉄鉅狻猗猓猡猊猞猝猕猢猹猥猬猸猱獐獍獗獠獬獯獾舛夥飧夤夂饣饧饨饩饪饫饬饴饷饽馀馄馇馊馍馐馑馓馔馕庀庑庋庖庥庠庹庵庾庳赓廒廑廛廨廪膺忄忉忖忏怃忮怄忡忤忾怅怆忪忭忸怙怵怦怛怏怍怩怫怊怿怡恸恹恻恺恂�".split("");
for(j = 0; j != D[226].length; ++j) if(D[226][j].charCodeAt(0) !== 0xFFFD) { e[D[226][j]] = 57856 + j; d[57856 + j] = D[226][j];}
D[227] = "����������������������������������������������������������������鉆鉇鉈鉉鉊鉋鉌鉍鉎鉏鉐鉑鉒鉓鉔鉕鉖鉗鉘鉙鉚鉛鉜鉝鉞鉟鉠鉡鉢鉣鉤鉥鉦鉧鉨鉩鉪鉫鉬鉭鉮鉯鉰鉱鉲鉳鉵鉶鉷鉸鉹鉺鉻鉼鉽鉾鉿銀銁銂銃銄銅�銆銇銈銉銊銋銌銍銏銐銑銒銓銔銕銖銗銘銙銚銛銜銝銞銟銠銡銢銣銤銥銦銧恪恽悖悚悭悝悃悒悌悛惬悻悱惝惘惆惚悴愠愦愕愣惴愀愎愫慊慵憬憔憧憷懔懵忝隳闩闫闱闳闵闶闼闾阃阄阆阈阊阋阌阍阏阒阕阖阗阙阚丬爿戕氵汔汜汊沣沅沐沔沌汨汩汴汶沆沩泐泔沭泷泸泱泗沲泠泖泺泫泮沱泓泯泾�".split("");
for(j = 0; j != D[227].length; ++j) if(D[227][j].charCodeAt(0) !== 0xFFFD) { e[D[227][j]] = 58112 + j; d[58112 + j] = D[227][j];}
D[228] = "����������������������������������������������������������������銨銩銪銫銬銭銯銰銱銲銳銴銵銶銷銸銹銺銻銼銽銾銿鋀鋁鋂鋃鋄鋅鋆鋇鋉鋊鋋鋌鋍鋎鋏鋐鋑鋒鋓鋔鋕鋖鋗鋘鋙鋚鋛鋜鋝鋞鋟鋠鋡鋢鋣鋤鋥鋦鋧鋨�鋩鋪鋫鋬鋭鋮鋯鋰鋱鋲鋳鋴鋵鋶鋷鋸鋹鋺鋻鋼鋽鋾鋿錀錁錂錃錄錅錆錇錈錉洹洧洌浃浈洇洄洙洎洫浍洮洵洚浏浒浔洳涑浯涞涠浞涓涔浜浠浼浣渚淇淅淞渎涿淠渑淦淝淙渖涫渌涮渫湮湎湫溲湟溆湓湔渲渥湄滟溱溘滠漭滢溥溧溽溻溷滗溴滏溏滂溟潢潆潇漤漕滹漯漶潋潴漪漉漩澉澍澌潸潲潼潺濑�".split("");
for(j = 0; j != D[228].length; ++j) if(D[228][j].charCodeAt(0) !== 0xFFFD) { e[D[228][j]] = 58368 + j; d[58368 + j] = D[228][j];}
D[229] = "����������������������������������������������������������������錊錋錌錍錎錏錐錑錒錓錔錕錖錗錘錙錚錛錜錝錞錟錠錡錢錣錤錥錦錧錨錩錪錫錬錭錮錯錰錱録錳錴錵錶錷錸錹錺錻錼錽錿鍀鍁鍂鍃鍄鍅鍆鍇鍈鍉�鍊鍋鍌鍍鍎鍏鍐鍑鍒鍓鍔鍕鍖鍗鍘鍙鍚鍛鍜鍝鍞鍟鍠鍡鍢鍣鍤鍥鍦鍧鍨鍩鍫濉澧澹澶濂濡濮濞濠濯瀚瀣瀛瀹瀵灏灞宀宄宕宓宥宸甯骞搴寤寮褰寰蹇謇辶迓迕迥迮迤迩迦迳迨逅逄逋逦逑逍逖逡逵逶逭逯遄遑遒遐遨遘遢遛暹遴遽邂邈邃邋彐彗彖彘尻咫屐屙孱屣屦羼弪弩弭艴弼鬻屮妁妃妍妩妪妣�".split("");
for(j = 0; j != D[229].length; ++j) if(D[229][j].charCodeAt(0) !== 0xFFFD) { e[D[229][j]] = 58624 + j; d[58624 + j] = D[229][j];}
D[230] = "����������������������������������������������������������������鍬鍭鍮鍯鍰鍱鍲鍳鍴鍵鍶鍷鍸鍹鍺鍻鍼鍽鍾鍿鎀鎁鎂鎃鎄鎅鎆鎇鎈鎉鎊鎋鎌鎍鎎鎐鎑鎒鎓鎔鎕鎖鎗鎘鎙鎚鎛鎜鎝鎞鎟鎠鎡鎢鎣鎤鎥鎦鎧鎨鎩鎪鎫�鎬鎭鎮鎯鎰鎱鎲鎳鎴鎵鎶鎷鎸鎹鎺鎻鎼鎽鎾鎿鏀鏁鏂鏃鏄鏅鏆鏇鏈鏉鏋鏌鏍妗姊妫妞妤姒妲妯姗妾娅娆姝娈姣姘姹娌娉娲娴娑娣娓婀婧婊婕娼婢婵胬媪媛婷婺媾嫫媲嫒嫔媸嫠嫣嫱嫖嫦嫘嫜嬉嬗嬖嬲嬷孀尕尜孚孥孳孑孓孢驵驷驸驺驿驽骀骁骅骈骊骐骒骓骖骘骛骜骝骟骠骢骣骥骧纟纡纣纥纨纩�".split("");
for(j = 0; j != D[230].length; ++j) if(D[230][j].charCodeAt(0) !== 0xFFFD) { e[D[230][j]] = 58880 + j; d[58880 + j] = D[230][j];}
D[231] = "����������������������������������������������������������������鏎鏏鏐鏑鏒鏓鏔鏕鏗鏘鏙鏚鏛鏜鏝鏞鏟鏠鏡鏢鏣鏤鏥鏦鏧鏨鏩鏪鏫鏬鏭鏮鏯鏰鏱鏲鏳鏴鏵鏶鏷鏸鏹鏺鏻鏼鏽鏾鏿鐀鐁鐂鐃鐄鐅鐆鐇鐈鐉鐊鐋鐌鐍�鐎鐏鐐鐑鐒鐓鐔鐕鐖鐗鐘鐙鐚鐛鐜鐝鐞鐟鐠鐡鐢鐣鐤鐥鐦鐧鐨鐩鐪鐫鐬鐭鐮纭纰纾绀绁绂绉绋绌绐绔绗绛绠绡绨绫绮绯绱绲缍绶绺绻绾缁缂缃缇缈缋缌缏缑缒缗缙缜缛缟缡缢缣缤缥缦缧缪缫缬缭缯缰缱缲缳缵幺畿巛甾邕玎玑玮玢玟珏珂珑玷玳珀珉珈珥珙顼琊珩珧珞玺珲琏琪瑛琦琥琨琰琮琬�".split("");
for(j = 0; j != D[231].length; ++j) if(D[231][j].charCodeAt(0) !== 0xFFFD) { e[D[231][j]] = 59136 + j; d[59136 + j] = D[231][j];}
D[232] = "����������������������������������������������������������������鐯鐰鐱鐲鐳鐴鐵鐶鐷鐸鐹鐺鐻鐼鐽鐿鑀鑁鑂鑃鑄鑅鑆鑇鑈鑉鑊鑋鑌鑍鑎鑏鑐鑑鑒鑓鑔鑕鑖鑗鑘鑙鑚鑛鑜鑝鑞鑟鑠鑡鑢鑣鑤鑥鑦鑧鑨鑩鑪鑬鑭鑮鑯�鑰鑱鑲鑳鑴鑵鑶鑷鑸鑹鑺鑻鑼鑽鑾鑿钀钁钂钃钄钑钖钘铇铏铓铔铚铦铻锜锠琛琚瑁瑜瑗瑕瑙瑷瑭瑾璜璎璀璁璇璋璞璨璩璐璧瓒璺韪韫韬杌杓杞杈杩枥枇杪杳枘枧杵枨枞枭枋杷杼柰栉柘栊柩枰栌柙枵柚枳柝栀柃枸柢栎柁柽栲栳桠桡桎桢桄桤梃栝桕桦桁桧桀栾桊桉栩梵梏桴桷梓桫棂楮棼椟椠棹�".split("");
for(j = 0; j != D[232].length; ++j) if(D[232][j].charCodeAt(0) !== 0xFFFD) { e[D[232][j]] = 59392 + j; d[59392 + j] = D[232][j];}
D[233] = "����������������������������������������������������������������锧锳锽镃镈镋镕镚镠镮镴镵長镸镹镺镻镼镽镾門閁閂閃閄閅閆閇閈閉閊開閌閍閎閏閐閑閒間閔閕閖閗閘閙閚閛閜閝閞閟閠閡関閣閤閥閦閧閨閩閪�閫閬閭閮閯閰閱閲閳閴閵閶閷閸閹閺閻閼閽閾閿闀闁闂闃闄闅闆闇闈闉闊闋椤棰椋椁楗棣椐楱椹楠楂楝榄楫榀榘楸椴槌榇榈槎榉楦楣楹榛榧榻榫榭槔榱槁槊槟榕槠榍槿樯槭樗樘橥槲橄樾檠橐橛樵檎橹樽樨橘橼檑檐檩檗檫猷獒殁殂殇殄殒殓殍殚殛殡殪轫轭轱轲轳轵轶轸轷轹轺轼轾辁辂辄辇辋�".split("");
for(j = 0; j != D[233].length; ++j) if(D[233][j].charCodeAt(0) !== 0xFFFD) { e[D[233][j]] = 59648 + j; d[59648 + j] = D[233][j];}
D[234] = "����������������������������������������������������������������闌闍闎闏闐闑闒闓闔闕闖闗闘闙闚闛關闝闞闟闠闡闢闣闤闥闦闧闬闿阇阓阘阛阞阠阣阤阥阦阧阨阩阫阬阭阯阰阷阸阹阺阾陁陃陊陎陏陑陒陓陖陗�陘陙陚陜陝陞陠陣陥陦陫陭陮陯陰陱陳陸陹険陻陼陽陾陿隀隁隂隃隄隇隉隊辍辎辏辘辚軎戋戗戛戟戢戡戥戤戬臧瓯瓴瓿甏甑甓攴旮旯旰昊昙杲昃昕昀炅曷昝昴昱昶昵耆晟晔晁晏晖晡晗晷暄暌暧暝暾曛曜曦曩贲贳贶贻贽赀赅赆赈赉赇赍赕赙觇觊觋觌觎觏觐觑牮犟牝牦牯牾牿犄犋犍犏犒挈挲掰�".split("");
for(j = 0; j != D[234].length; ++j) if(D[234][j].charCodeAt(0) !== 0xFFFD) { e[D[234][j]] = 59904 + j; d[59904 + j] = D[234][j];}
D[235] = "����������������������������������������������������������������隌階隑隒隓隕隖隚際隝隞隟隠隡隢隣隤隥隦隨隩險隫隬隭隮隯隱隲隴隵隷隸隺隻隿雂雃雈雊雋雐雑雓雔雖雗雘雙雚雛雜雝雞雟雡離難雤雥雦雧雫�雬雭雮雰雱雲雴雵雸雺電雼雽雿霂霃霅霊霋霌霐霑霒霔霕霗霘霙霚霛霝霟霠搿擘耄毪毳毽毵毹氅氇氆氍氕氘氙氚氡氩氤氪氲攵敕敫牍牒牖爰虢刖肟肜肓肼朊肽肱肫肭肴肷胧胨胩胪胛胂胄胙胍胗朐胝胫胱胴胭脍脎胲胼朕脒豚脶脞脬脘脲腈腌腓腴腙腚腱腠腩腼腽腭腧塍媵膈膂膑滕膣膪臌朦臊膻�".split("");
for(j = 0; j != D[235].length; ++j) if(D[235][j].charCodeAt(0) !== 0xFFFD) { e[D[235][j]] = 60160 + j; d[60160 + j] = D[235][j];}
D[236] = "����������������������������������������������������������������霡霢霣霤霥霦霧霨霩霫霬霮霯霱霳霴霵霶霷霺霻霼霽霿靀靁靂靃靄靅靆靇靈靉靊靋靌靍靎靏靐靑靔靕靗靘靚靜靝靟靣靤靦靧靨靪靫靬靭靮靯靰靱�靲靵靷靸靹靺靻靽靾靿鞀鞁鞂鞃鞄鞆鞇鞈鞉鞊鞌鞎鞏鞐鞓鞕鞖鞗鞙鞚鞛鞜鞝臁膦欤欷欹歃歆歙飑飒飓飕飙飚殳彀毂觳斐齑斓於旆旄旃旌旎旒旖炀炜炖炝炻烀炷炫炱烨烊焐焓焖焯焱煳煜煨煅煲煊煸煺熘熳熵熨熠燠燔燧燹爝爨灬焘煦熹戾戽扃扈扉礻祀祆祉祛祜祓祚祢祗祠祯祧祺禅禊禚禧禳忑忐�".split("");
for(j = 0; j != D[236].length; ++j) if(D[236][j].charCodeAt(0) !== 0xFFFD) { e[D[236][j]] = 60416 + j; d[60416 + j] = D[236][j];}
D[237] = "����������������������������������������������������������������鞞鞟鞡鞢鞤鞥鞦鞧鞨鞩鞪鞬鞮鞰鞱鞳鞵鞶鞷鞸鞹鞺鞻鞼鞽鞾鞿韀韁韂韃韄韅韆韇韈韉韊韋韌韍韎韏韐韑韒韓韔韕韖韗韘韙韚韛韜韝韞韟韠韡韢韣�韤韥韨韮韯韰韱韲韴韷韸韹韺韻韼韽韾響頀頁頂頃頄項順頇須頉頊頋頌頍頎怼恝恚恧恁恙恣悫愆愍慝憩憝懋懑戆肀聿沓泶淼矶矸砀砉砗砘砑斫砭砜砝砹砺砻砟砼砥砬砣砩硎硭硖硗砦硐硇硌硪碛碓碚碇碜碡碣碲碹碥磔磙磉磬磲礅磴礓礤礞礴龛黹黻黼盱眄眍盹眇眈眚眢眙眭眦眵眸睐睑睇睃睚睨�".split("");
for(j = 0; j != D[237].length; ++j) if(D[237][j].charCodeAt(0) !== 0xFFFD) { e[D[237][j]] = 60672 + j; d[60672 + j] = D[237][j];}
D[238] = "����������������������������������������������������������������頏預頑頒頓頔頕頖頗領頙頚頛頜頝頞頟頠頡頢頣頤頥頦頧頨頩頪頫頬頭頮頯頰頱頲頳頴頵頶頷頸頹頺頻頼頽頾頿顀顁顂顃顄顅顆顇顈顉顊顋題額�顎顏顐顑顒顓顔顕顖顗願顙顚顛顜顝類顟顠顡顢顣顤顥顦顧顨顩顪顫顬顭顮睢睥睿瞍睽瞀瞌瞑瞟瞠瞰瞵瞽町畀畎畋畈畛畲畹疃罘罡罟詈罨罴罱罹羁罾盍盥蠲钅钆钇钋钊钌钍钏钐钔钗钕钚钛钜钣钤钫钪钭钬钯钰钲钴钶钷钸钹钺钼钽钿铄铈铉铊铋铌铍铎铐铑铒铕铖铗铙铘铛铞铟铠铢铤铥铧铨铪�".split("");
for(j = 0; j != D[238].length; ++j) if(D[238][j].charCodeAt(0) !== 0xFFFD) { e[D[238][j]] = 60928 + j; d[60928 + j] = D[238][j];}
D[239] = "����������������������������������������������������������������顯顰顱顲顳顴颋颎颒颕颙颣風颩颪颫颬颭颮颯颰颱颲颳颴颵颶颷颸颹颺颻颼颽颾颿飀飁飂飃飄飅飆飇飈飉飊飋飌飍飏飐飔飖飗飛飜飝飠飡飢飣飤�飥飦飩飪飫飬飭飮飯飰飱飲飳飴飵飶飷飸飹飺飻飼飽飾飿餀餁餂餃餄餅餆餇铩铫铮铯铳铴铵铷铹铼铽铿锃锂锆锇锉锊锍锎锏锒锓锔锕锖锘锛锝锞锟锢锪锫锩锬锱锲锴锶锷锸锼锾锿镂锵镄镅镆镉镌镎镏镒镓镔镖镗镘镙镛镞镟镝镡镢镤镥镦镧镨镩镪镫镬镯镱镲镳锺矧矬雉秕秭秣秫稆嵇稃稂稞稔�".split("");
for(j = 0; j != D[239].length; ++j) if(D[239][j].charCodeAt(0) !== 0xFFFD) { e[D[239][j]] = 61184 + j; d[61184 + j] = D[239][j];}
D[240] = "����������������������������������������������������������������餈餉養餋餌餎餏餑餒餓餔餕餖餗餘餙餚餛餜餝餞餟餠餡餢餣餤餥餦餧館餩餪餫餬餭餯餰餱餲餳餴餵餶餷餸餹餺餻餼餽餾餿饀饁饂饃饄饅饆饇饈饉�饊饋饌饍饎饏饐饑饒饓饖饗饘饙饚饛饜饝饞饟饠饡饢饤饦饳饸饹饻饾馂馃馉稹稷穑黏馥穰皈皎皓皙皤瓞瓠甬鸠鸢鸨鸩鸪鸫鸬鸲鸱鸶鸸鸷鸹鸺鸾鹁鹂鹄鹆鹇鹈鹉鹋鹌鹎鹑鹕鹗鹚鹛鹜鹞鹣鹦鹧鹨鹩鹪鹫鹬鹱鹭鹳疒疔疖疠疝疬疣疳疴疸痄疱疰痃痂痖痍痣痨痦痤痫痧瘃痱痼痿瘐瘀瘅瘌瘗瘊瘥瘘瘕瘙�".split("");
for(j = 0; j != D[240].length; ++j) if(D[240][j].charCodeAt(0) !== 0xFFFD) { e[D[240][j]] = 61440 + j; d[61440 + j] = D[240][j];}
D[241] = "����������������������������������������������������������������馌馎馚馛馜馝馞馟馠馡馢馣馤馦馧馩馪馫馬馭馮馯馰馱馲馳馴馵馶馷馸馹馺馻馼馽馾馿駀駁駂駃駄駅駆駇駈駉駊駋駌駍駎駏駐駑駒駓駔駕駖駗駘�駙駚駛駜駝駞駟駠駡駢駣駤駥駦駧駨駩駪駫駬駭駮駯駰駱駲駳駴駵駶駷駸駹瘛瘼瘢瘠癀瘭瘰瘿瘵癃瘾瘳癍癞癔癜癖癫癯翊竦穸穹窀窆窈窕窦窠窬窨窭窳衤衩衲衽衿袂袢裆袷袼裉裢裎裣裥裱褚裼裨裾裰褡褙褓褛褊褴褫褶襁襦襻疋胥皲皴矜耒耔耖耜耠耢耥耦耧耩耨耱耋耵聃聆聍聒聩聱覃顸颀颃�".split("");
for(j = 0; j != D[241].length; ++j) if(D[241][j].charCodeAt(0) !== 0xFFFD) { e[D[241][j]] = 61696 + j; d[61696 + j] = D[241][j];}
D[242] = "����������������������������������������������������������������駺駻駼駽駾駿騀騁騂騃騄騅騆騇騈騉騊騋騌騍騎騏騐騑騒験騔騕騖騗騘騙騚騛騜騝騞騟騠騡騢騣騤騥騦騧騨騩騪騫騬騭騮騯騰騱騲騳騴騵騶騷騸�騹騺騻騼騽騾騿驀驁驂驃驄驅驆驇驈驉驊驋驌驍驎驏驐驑驒驓驔驕驖驗驘驙颉颌颍颏颔颚颛颞颟颡颢颥颦虍虔虬虮虿虺虼虻蚨蚍蚋蚬蚝蚧蚣蚪蚓蚩蚶蛄蚵蛎蚰蚺蚱蚯蛉蛏蚴蛩蛱蛲蛭蛳蛐蜓蛞蛴蛟蛘蛑蜃蜇蛸蜈蜊蜍蜉蜣蜻蜞蜥蜮蜚蜾蝈蜴蜱蜩蜷蜿螂蜢蝽蝾蝻蝠蝰蝌蝮螋蝓蝣蝼蝤蝙蝥螓螯螨蟒�".split("");
for(j = 0; j != D[242].length; ++j) if(D[242][j].charCodeAt(0) !== 0xFFFD) { e[D[242][j]] = 61952 + j; d[61952 + j] = D[242][j];}
D[243] = "����������������������������������������������������������������驚驛驜驝驞驟驠驡驢驣驤驥驦驧驨驩驪驫驲骃骉骍骎骔骕骙骦骩骪骫骬骭骮骯骲骳骴骵骹骻骽骾骿髃髄髆髇髈髉髊髍髎髏髐髒體髕髖髗髙髚髛髜�髝髞髠髢髣髤髥髧髨髩髪髬髮髰髱髲髳髴髵髶髷髸髺髼髽髾髿鬀鬁鬂鬄鬅鬆蟆螈螅螭螗螃螫蟥螬螵螳蟋蟓螽蟑蟀蟊蟛蟪蟠蟮蠖蠓蟾蠊蠛蠡蠹蠼缶罂罄罅舐竺竽笈笃笄笕笊笫笏筇笸笪笙笮笱笠笥笤笳笾笞筘筚筅筵筌筝筠筮筻筢筲筱箐箦箧箸箬箝箨箅箪箜箢箫箴篑篁篌篝篚篥篦篪簌篾篼簏簖簋�".split("");
for(j = 0; j != D[243].length; ++j) if(D[243][j].charCodeAt(0) !== 0xFFFD) { e[D[243][j]] = 62208 + j; d[62208 + j] = D[243][j];}
D[244] = "����������������������������������������������������������������鬇鬉鬊鬋鬌鬍鬎鬐鬑鬒鬔鬕鬖鬗鬘鬙鬚鬛鬜鬝鬞鬠鬡鬢鬤鬥鬦鬧鬨鬩鬪鬫鬬鬭鬮鬰鬱鬳鬴鬵鬶鬷鬸鬹鬺鬽鬾鬿魀魆魊魋魌魎魐魒魓魕魖魗魘魙魚�魛魜魝魞魟魠魡魢魣魤魥魦魧魨魩魪魫魬魭魮魯魰魱魲魳魴魵魶魷魸魹魺魻簟簪簦簸籁籀臾舁舂舄臬衄舡舢舣舭舯舨舫舸舻舳舴舾艄艉艋艏艚艟艨衾袅袈裘裟襞羝羟羧羯羰羲籼敉粑粝粜粞粢粲粼粽糁糇糌糍糈糅糗糨艮暨羿翎翕翥翡翦翩翮翳糸絷綦綮繇纛麸麴赳趄趔趑趱赧赭豇豉酊酐酎酏酤�".split("");
for(j = 0; j != D[244].length; ++j) if(D[244][j].charCodeAt(0) !== 0xFFFD) { e[D[244][j]] = 62464 + j; d[62464 + j] = D[244][j];}
D[245] = "����������������������������������������������������������������魼魽魾魿鮀鮁鮂鮃鮄鮅鮆鮇鮈鮉鮊鮋鮌鮍鮎鮏鮐鮑鮒鮓鮔鮕鮖鮗鮘鮙鮚鮛鮜鮝鮞鮟鮠鮡鮢鮣鮤鮥鮦鮧鮨鮩鮪鮫鮬鮭鮮鮯鮰鮱鮲鮳鮴鮵鮶鮷鮸鮹鮺�鮻鮼鮽鮾鮿鯀鯁鯂鯃鯄鯅鯆鯇鯈鯉鯊鯋鯌鯍鯎鯏鯐鯑鯒鯓鯔鯕鯖鯗鯘鯙鯚鯛酢酡酰酩酯酽酾酲酴酹醌醅醐醍醑醢醣醪醭醮醯醵醴醺豕鹾趸跫踅蹙蹩趵趿趼趺跄跖跗跚跞跎跏跛跆跬跷跸跣跹跻跤踉跽踔踝踟踬踮踣踯踺蹀踹踵踽踱蹉蹁蹂蹑蹒蹊蹰蹶蹼蹯蹴躅躏躔躐躜躞豸貂貊貅貘貔斛觖觞觚觜�".split("");
for(j = 0; j != D[245].length; ++j) if(D[245][j].charCodeAt(0) !== 0xFFFD) { e[D[245][j]] = 62720 + j; d[62720 + j] = D[245][j];}
D[246] = "����������������������������������������������������������������鯜鯝鯞鯟鯠鯡鯢鯣鯤鯥鯦鯧鯨鯩鯪鯫鯬鯭鯮鯯鯰鯱鯲鯳鯴鯵鯶鯷鯸鯹鯺鯻鯼鯽鯾鯿鰀鰁鰂鰃鰄鰅鰆鰇鰈鰉鰊鰋鰌鰍鰎鰏鰐鰑鰒鰓鰔鰕鰖鰗鰘鰙鰚�鰛鰜鰝鰞鰟鰠鰡鰢鰣鰤鰥鰦鰧鰨鰩鰪鰫鰬鰭鰮鰯鰰鰱鰲鰳鰴鰵鰶鰷鰸鰹鰺鰻觥觫觯訾謦靓雩雳雯霆霁霈霏霎霪霭霰霾龀龃龅龆龇龈龉龊龌黾鼋鼍隹隼隽雎雒瞿雠銎銮鋈錾鍪鏊鎏鐾鑫鱿鲂鲅鲆鲇鲈稣鲋鲎鲐鲑鲒鲔鲕鲚鲛鲞鲟鲠鲡鲢鲣鲥鲦鲧鲨鲩鲫鲭鲮鲰鲱鲲鲳鲴鲵鲶鲷鲺鲻鲼鲽鳄鳅鳆鳇鳊鳋�".split("");
for(j = 0; j != D[246].length; ++j) if(D[246][j].charCodeAt(0) !== 0xFFFD) { e[D[246][j]] = 62976 + j; d[62976 + j] = D[246][j];}
D[247] = "����������������������������������������������������������������鰼鰽鰾鰿鱀鱁鱂鱃鱄鱅鱆鱇鱈鱉鱊鱋鱌鱍鱎鱏鱐鱑鱒鱓鱔鱕鱖鱗鱘鱙鱚鱛鱜鱝鱞鱟鱠鱡鱢鱣鱤鱥鱦鱧鱨鱩鱪鱫鱬鱭鱮鱯鱰鱱鱲鱳鱴鱵鱶鱷鱸鱹鱺�鱻鱽鱾鲀鲃鲄鲉鲊鲌鲏鲓鲖鲗鲘鲙鲝鲪鲬鲯鲹鲾鲿鳀鳁鳂鳈鳉鳑鳒鳚鳛鳠鳡鳌鳍鳎鳏鳐鳓鳔鳕鳗鳘鳙鳜鳝鳟鳢靼鞅鞑鞒鞔鞯鞫鞣鞲鞴骱骰骷鹘骶骺骼髁髀髅髂髋髌髑魅魃魇魉魈魍魑飨餍餮饕饔髟髡髦髯髫髻髭髹鬈鬏鬓鬟鬣麽麾縻麂麇麈麋麒鏖麝麟黛黜黝黠黟黢黩黧黥黪黯鼢鼬鼯鼹鼷鼽鼾齄�".split("");
for(j = 0; j != D[247].length; ++j) if(D[247][j].charCodeAt(0) !== 0xFFFD) { e[D[247][j]] = 63232 + j; d[63232 + j] = D[247][j];}
D[248] = "����������������������������������������������������������������鳣鳤鳥鳦鳧鳨鳩鳪鳫鳬鳭鳮鳯鳰鳱鳲鳳鳴鳵鳶鳷鳸鳹鳺鳻鳼鳽鳾鳿鴀鴁鴂鴃鴄鴅鴆鴇鴈鴉鴊鴋鴌鴍鴎鴏鴐鴑鴒鴓鴔鴕鴖鴗鴘鴙鴚鴛鴜鴝鴞鴟鴠鴡�鴢鴣鴤鴥鴦鴧鴨鴩鴪鴫鴬鴭鴮鴯鴰鴱鴲鴳鴴鴵鴶鴷鴸鴹鴺鴻鴼鴽鴾鴿鵀鵁鵂�����������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[248].length; ++j) if(D[248][j].charCodeAt(0) !== 0xFFFD) { e[D[248][j]] = 63488 + j; d[63488 + j] = D[248][j];}
D[249] = "����������������������������������������������������������������鵃鵄鵅鵆鵇鵈鵉鵊鵋鵌鵍鵎鵏鵐鵑鵒鵓鵔鵕鵖鵗鵘鵙鵚鵛鵜鵝鵞鵟鵠鵡鵢鵣鵤鵥鵦鵧鵨鵩鵪鵫鵬鵭鵮鵯鵰鵱鵲鵳鵴鵵鵶鵷鵸鵹鵺鵻鵼鵽鵾鵿鶀鶁�鶂鶃鶄鶅鶆鶇鶈鶉鶊鶋鶌鶍鶎鶏鶐鶑鶒鶓鶔鶕鶖鶗鶘鶙鶚鶛鶜鶝鶞鶟鶠鶡鶢�����������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[249].length; ++j) if(D[249][j].charCodeAt(0) !== 0xFFFD) { e[D[249][j]] = 63744 + j; d[63744 + j] = D[249][j];}
D[250] = "����������������������������������������������������������������鶣鶤鶥鶦鶧鶨鶩鶪鶫鶬鶭鶮鶯鶰鶱鶲鶳鶴鶵鶶鶷鶸鶹鶺鶻鶼鶽鶾鶿鷀鷁鷂鷃鷄鷅鷆鷇鷈鷉鷊鷋鷌鷍鷎鷏鷐鷑鷒鷓鷔鷕鷖鷗鷘鷙鷚鷛鷜鷝鷞鷟鷠鷡�鷢鷣鷤鷥鷦鷧鷨鷩鷪鷫鷬鷭鷮鷯鷰鷱鷲鷳鷴鷵鷶鷷鷸鷹鷺鷻鷼鷽鷾鷿鸀鸁鸂�����������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[250].length; ++j) if(D[250][j].charCodeAt(0) !== 0xFFFD) { e[D[250][j]] = 64000 + j; d[64000 + j] = D[250][j];}
D[251] = "����������������������������������������������������������������鸃鸄鸅鸆鸇鸈鸉鸊鸋鸌鸍鸎鸏鸐鸑鸒鸓鸔鸕鸖鸗鸘鸙鸚鸛鸜鸝鸞鸤鸧鸮鸰鸴鸻鸼鹀鹍鹐鹒鹓鹔鹖鹙鹝鹟鹠鹡鹢鹥鹮鹯鹲鹴鹵鹶鹷鹸鹹鹺鹻鹼鹽麀�麁麃麄麅麆麉麊麌麍麎麏麐麑麔麕麖麗麘麙麚麛麜麞麠麡麢麣麤麥麧麨麩麪�����������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[251].length; ++j) if(D[251][j].charCodeAt(0) !== 0xFFFD) { e[D[251][j]] = 64256 + j; d[64256 + j] = D[251][j];}
D[252] = "����������������������������������������������������������������麫麬麭麮麯麰麱麲麳麵麶麷麹麺麼麿黀黁黂黃黅黆黇黈黊黋黌黐黒黓黕黖黗黙黚點黡黣黤黦黨黫黬黭黮黰黱黲黳黴黵黶黷黸黺黽黿鼀鼁鼂鼃鼄鼅�鼆鼇鼈鼉鼊鼌鼏鼑鼒鼔鼕鼖鼘鼚鼛鼜鼝鼞鼟鼡鼣鼤鼥鼦鼧鼨鼩鼪鼫鼭鼮鼰鼱�����������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[252].length; ++j) if(D[252][j].charCodeAt(0) !== 0xFFFD) { e[D[252][j]] = 64512 + j; d[64512 + j] = D[252][j];}
D[253] = "����������������������������������������������������������������鼲鼳鼴鼵鼶鼸鼺鼼鼿齀齁齂齃齅齆齇齈齉齊齋齌齍齎齏齒齓齔齕齖齗齘齙齚齛齜齝齞齟齠齡齢齣齤齥齦齧齨齩齪齫齬齭齮齯齰齱齲齳齴齵齶齷齸�齹齺齻齼齽齾龁龂龍龎龏龐龑龒龓龔龕龖龗龘龜龝龞龡龢龣龤龥郎凉秊裏隣�����������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[253].length; ++j) if(D[253][j].charCodeAt(0) !== 0xFFFD) { e[D[253][j]] = 64768 + j; d[64768 + j] = D[253][j];}
D[254] = "����������������������������������������������������������������兀嗀﨎﨏﨑﨓﨔礼﨟蘒﨡﨣﨤﨧﨨﨩��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[254].length; ++j) if(D[254][j].charCodeAt(0) !== 0xFFFD) { e[D[254][j]] = 65024 + j; d[65024 + j] = D[254][j];}
return {"enc": e, "dec": d }; })();
cptable[949] = (function(){ var d = [], e = {}, D = [], j;
D[0] = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[0].length; ++j) if(D[0][j].charCodeAt(0) !== 0xFFFD) { e[D[0][j]] = 0 + j; d[0 + j] = D[0][j];}
D[129] = "�����������������������������������������������������������������갂갃갅갆갋갌갍갎갏갘갞갟갡갢갣갥갦갧갨갩갪갫갮갲갳갴������갵갶갷갺갻갽갾갿걁걂걃걄걅걆걇걈걉걊걌걎걏걐걑걒걓걕������걖걗걙걚걛걝걞걟걠걡걢걣걤걥걦걧걨걩걪걫걬걭걮걯걲걳걵걶걹걻걼걽걾걿겂겇겈겍겎겏겑겒겓겕겖겗겘겙겚겛겞겢겣겤겥겦겧겫겭겮겱겲겳겴겵겶겷겺겾겿곀곂곃곅곆곇곉곊곋곍곎곏곐곑곒곓곔곖곘곙곚곛곜곝곞곟곢곣곥곦곩곫곭곮곲곴곷곸곹곺곻곾곿괁괂괃괅괇괈괉괊괋괎괐괒괓�".split("");
for(j = 0; j != D[129].length; ++j) if(D[129][j].charCodeAt(0) !== 0xFFFD) { e[D[129][j]] = 33024 + j; d[33024 + j] = D[129][j];}
D[130] = "�����������������������������������������������������������������괔괕괖괗괙괚괛괝괞괟괡괢괣괤괥괦괧괨괪괫괮괯괰괱괲괳������괶괷괹괺괻괽괾괿굀굁굂굃굆굈굊굋굌굍굎굏굑굒굓굕굖굗������굙굚굛굜굝굞굟굠굢굤굥굦굧굨굩굪굫굮굯굱굲굷굸굹굺굾궀궃궄궅궆궇궊궋궍궎궏궑궒궓궔궕궖궗궘궙궚궛궞궟궠궡궢궣궥궦궧궨궩궪궫궬궭궮궯궰궱궲궳궴궵궶궸궹궺궻궼궽궾궿귂귃귅귆귇귉귊귋귌귍귎귏귒귔귕귖귗귘귙귚귛귝귞귟귡귢귣귥귦귧귨귩귪귫귬귭귮귯귰귱귲귳귴귵귶귷�".split("");
for(j = 0; j != D[130].length; ++j) if(D[130][j].charCodeAt(0) !== 0xFFFD) { e[D[130][j]] = 33280 + j; d[33280 + j] = D[130][j];}
D[131] = "�����������������������������������������������������������������귺귻귽귾긂긃긄긅긆긇긊긌긎긏긐긑긒긓긕긖긗긘긙긚긛긜������긝긞긟긠긡긢긣긤긥긦긧긨긩긪긫긬긭긮긯긲긳긵긶긹긻긼������긽긾긿깂깄깇깈깉깋깏깑깒깓깕깗깘깙깚깛깞깢깣깤깦깧깪깫깭깮깯깱깲깳깴깵깶깷깺깾깿꺀꺁꺂꺃꺆꺇꺈꺉꺊꺋꺍꺎꺏꺐꺑꺒꺓꺔꺕꺖꺗꺘꺙꺚꺛꺜꺝꺞꺟꺠꺡꺢꺣꺤꺥꺦꺧꺨꺩꺪꺫꺬꺭꺮꺯꺰꺱꺲꺳꺴꺵꺶꺷꺸꺹꺺꺻꺿껁껂껃껅껆껇껈껉껊껋껎껒껓껔껕껖껗껚껛껝껞껟껠껡껢껣껤껥�".split("");
for(j = 0; j != D[131].length; ++j) if(D[131][j].charCodeAt(0) !== 0xFFFD) { e[D[131][j]] = 33536 + j; d[33536 + j] = D[131][j];}
D[132] = "�����������������������������������������������������������������껦껧껩껪껬껮껯껰껱껲껳껵껶껷껹껺껻껽껾껿꼀꼁꼂꼃꼄꼅������꼆꼉꼊꼋꼌꼎꼏꼑꼒꼓꼔꼕꼖꼗꼘꼙꼚꼛꼜꼝꼞꼟꼠꼡꼢꼣������꼤꼥꼦꼧꼨꼩꼪꼫꼮꼯꼱꼳꼵꼶꼷꼸꼹꼺꼻꼾꽀꽄꽅꽆꽇꽊꽋꽌꽍꽎꽏꽑꽒꽓꽔꽕꽖꽗꽘꽙꽚꽛꽞꽟꽠꽡꽢꽣꽦꽧꽨꽩꽪꽫꽬꽭꽮꽯꽰꽱꽲꽳꽴꽵꽶꽷꽸꽺꽻꽼꽽꽾꽿꾁꾂꾃꾅꾆꾇꾉꾊꾋꾌꾍꾎꾏꾒꾓꾔꾖꾗꾘꾙꾚꾛꾝꾞꾟꾠꾡꾢꾣꾤꾥꾦꾧꾨꾩꾪꾫꾬꾭꾮꾯꾰꾱꾲꾳꾴꾵꾶꾷꾺꾻꾽꾾�".split("");
for(j = 0; j != D[132].length; ++j) if(D[132][j].charCodeAt(0) !== 0xFFFD) { e[D[132][j]] = 33792 + j; d[33792 + j] = D[132][j];}
D[133] = "�����������������������������������������������������������������꾿꿁꿂꿃꿄꿅꿆꿊꿌꿏꿐꿑꿒꿓꿕꿖꿗꿘꿙꿚꿛꿝꿞꿟꿠꿡������꿢꿣꿤꿥꿦꿧꿪꿫꿬꿭꿮꿯꿲꿳꿵꿶꿷꿹꿺꿻꿼꿽꿾꿿뀂뀃������뀅뀆뀇뀈뀉뀊뀋뀍뀎뀏뀑뀒뀓뀕뀖뀗뀘뀙뀚뀛뀞뀟뀠뀡뀢뀣뀤뀥뀦뀧뀩뀪뀫뀬뀭뀮뀯뀰뀱뀲뀳뀴뀵뀶뀷뀸뀹뀺뀻뀼뀽뀾뀿끀끁끂끃끆끇끉끋끍끏끐끑끒끖끘끚끛끜끞끟끠끡끢끣끤끥끦끧끨끩끪끫끬끭끮끯끰끱끲끳끴끵끶끷끸끹끺끻끾끿낁낂낃낅낆낇낈낉낊낋낎낐낒낓낔낕낖낗낛낝낞낣낤�".split("");
for(j = 0; j != D[133].length; ++j) if(D[133][j].charCodeAt(0) !== 0xFFFD) { e[D[133][j]] = 34048 + j; d[34048 + j] = D[133][j];}
D[134] = "�����������������������������������������������������������������낥낦낧낪낰낲낶낷낹낺낻낽낾낿냀냁냂냃냆냊냋냌냍냎냏냒������냓냕냖냗냙냚냛냜냝냞냟냡냢냣냤냦냧냨냩냪냫냬냭냮냯냰������냱냲냳냴냵냶냷냸냹냺냻냼냽냾냿넀넁넂넃넄넅넆넇넊넍넎넏넑넔넕넖넗넚넞넟넠넡넢넦넧넩넪넫넭넮넯넰넱넲넳넶넺넻넼넽넾넿녂녃녅녆녇녉녊녋녌녍녎녏녒녓녖녗녙녚녛녝녞녟녡녢녣녤녥녦녧녨녩녪녫녬녭녮녯녰녱녲녳녴녵녶녷녺녻녽녾녿놁놃놄놅놆놇놊놌놎놏놐놑놕놖놗놙놚놛놝�".split("");
for(j = 0; j != D[134].length; ++j) if(D[134][j].charCodeAt(0) !== 0xFFFD) { e[D[134][j]] = 34304 + j; d[34304 + j] = D[134][j];}
D[135] = "�����������������������������������������������������������������놞놟놠놡놢놣놤놥놦놧놩놪놫놬놭놮놯놰놱놲놳놴놵놶놷놸������놹놺놻놼놽놾놿뇀뇁뇂뇃뇄뇅뇆뇇뇈뇉뇊뇋뇍뇎뇏뇑뇒뇓뇕������뇖뇗뇘뇙뇚뇛뇞뇠뇡뇢뇣뇤뇥뇦뇧뇪뇫뇭뇮뇯뇱뇲뇳뇴뇵뇶뇷뇸뇺뇼뇾뇿눀눁눂눃눆눇눉눊눍눎눏눐눑눒눓눖눘눚눛눜눝눞눟눡눢눣눤눥눦눧눨눩눪눫눬눭눮눯눰눱눲눳눵눶눷눸눹눺눻눽눾눿뉀뉁뉂뉃뉄뉅뉆뉇뉈뉉뉊뉋뉌뉍뉎뉏뉐뉑뉒뉓뉔뉕뉖뉗뉙뉚뉛뉝뉞뉟뉡뉢뉣뉤뉥뉦뉧뉪뉫뉬뉭뉮�".split("");
for(j = 0; j != D[135].length; ++j) if(D[135][j].charCodeAt(0) !== 0xFFFD) { e[D[135][j]] = 34560 + j; d[34560 + j] = D[135][j];}
D[136] = "�����������������������������������������������������������������뉯뉰뉱뉲뉳뉶뉷뉸뉹뉺뉻뉽뉾뉿늀늁늂늃늆늇늈늊늋늌늍늎������늏늒늓늕늖늗늛늜늝늞늟늢늤늧늨늩늫늭늮늯늱늲늳늵늶늷������늸늹늺늻늼늽늾늿닀닁닂닃닄닅닆닇닊닋닍닎닏닑닓닔닕닖닗닚닜닞닟닠닡닣닧닩닪닰닱닲닶닼닽닾댂댃댅댆댇댉댊댋댌댍댎댏댒댖댗댘댙댚댛댝댞댟댠댡댢댣댤댥댦댧댨댩댪댫댬댭댮댯댰댱댲댳댴댵댶댷댸댹댺댻댼댽댾댿덀덁덂덃덄덅덆덇덈덉덊덋덌덍덎덏덐덑덒덓덗덙덚덝덠덡덢덣�".split("");
for(j = 0; j != D[136].length; ++j) if(D[136][j].charCodeAt(0) !== 0xFFFD) { e[D[136][j]] = 34816 + j; d[34816 + j] = D[136][j];}
D[137] = "�����������������������������������������������������������������덦덨덪덬덭덯덲덳덵덶덷덹덺덻덼덽덾덿뎂뎆뎇뎈뎉뎊뎋뎍������뎎뎏뎑뎒뎓뎕뎖뎗뎘뎙뎚뎛뎜뎝뎞뎟뎢뎣뎤뎥뎦뎧뎩뎪뎫뎭������뎮뎯뎰뎱뎲뎳뎴뎵뎶뎷뎸뎹뎺뎻뎼뎽뎾뎿돀돁돂돃돆돇돉돊돍돏돑돒돓돖돘돚돜돞돟돡돢돣돥돦돧돩돪돫돬돭돮돯돰돱돲돳돴돵돶돷돸돹돺돻돽돾돿됀됁됂됃됄됅됆됇됈됉됊됋됌됍됎됏됑됒됓됔됕됖됗됙됚됛됝됞됟됡됢됣됤됥됦됧됪됬됭됮됯됰됱됲됳됵됶됷됸됹됺됻됼됽됾됿둀둁둂둃둄�".split("");
for(j = 0; j != D[137].length; ++j) if(D[137][j].charCodeAt(0) !== 0xFFFD) { e[D[137][j]] = 35072 + j; d[35072 + j] = D[137][j];}
D[138] = "�����������������������������������������������������������������둅둆둇둈둉둊둋둌둍둎둏둒둓둕둖둗둙둚둛둜둝둞둟둢둤둦������둧둨둩둪둫둭둮둯둰둱둲둳둴둵둶둷둸둹둺둻둼둽둾둿뒁뒂������뒃뒄뒅뒆뒇뒉뒊뒋뒌뒍뒎뒏뒐뒑뒒뒓뒔뒕뒖뒗뒘뒙뒚뒛뒜뒞뒟뒠뒡뒢뒣뒥뒦뒧뒩뒪뒫뒭뒮뒯뒰뒱뒲뒳뒴뒶뒸뒺뒻뒼뒽뒾뒿듁듂듃듅듆듇듉듊듋듌듍듎듏듑듒듓듔듖듗듘듙듚듛듞듟듡듢듥듧듨듩듪듫듮듰듲듳듴듵듶듷듹듺듻듼듽듾듿딀딁딂딃딄딅딆딇딈딉딊딋딌딍딎딏딐딑딒딓딖딗딙딚딝�".split("");
for(j = 0; j != D[138].length; ++j) if(D[138][j].charCodeAt(0) !== 0xFFFD) { e[D[138][j]] = 35328 + j; d[35328 + j] = D[138][j];}
D[139] = "�����������������������������������������������������������������딞딟딠딡딢딣딦딫딬딭딮딯딲딳딵딶딷딹딺딻딼딽딾딿땂땆������땇땈땉땊땎땏땑땒땓땕땖땗땘땙땚땛땞땢땣땤땥땦땧땨땩땪������땫땬땭땮땯땰땱땲땳땴땵땶땷땸땹땺땻땼땽땾땿떀떁떂떃떄떅떆떇떈떉떊떋떌떍떎떏떐떑떒떓떔떕떖떗떘떙떚떛떜떝떞떟떢떣떥떦떧떩떬떭떮떯떲떶떷떸떹떺떾떿뗁뗂뗃뗅뗆뗇뗈뗉뗊뗋뗎뗒뗓뗔뗕뗖뗗뗙뗚뗛뗜뗝뗞뗟뗠뗡뗢뗣뗤뗥뗦뗧뗨뗩뗪뗫뗭뗮뗯뗰뗱뗲뗳뗴뗵뗶뗷뗸뗹뗺뗻뗼뗽뗾뗿�".split("");
for(j = 0; j != D[139].length; ++j) if(D[139][j].charCodeAt(0) !== 0xFFFD) { e[D[139][j]] = 35584 + j; d[35584 + j] = D[139][j];}
D[140] = "�����������������������������������������������������������������똀똁똂똃똄똅똆똇똈똉똊똋똌똍똎똏똒똓똕똖똗똙똚똛똜똝������똞똟똠똡똢똣똤똦똧똨똩똪똫똭똮똯똰똱똲똳똵똶똷똸똹똺������똻똼똽똾똿뙀뙁뙂뙃뙄뙅뙆뙇뙉뙊뙋뙌뙍뙎뙏뙐뙑뙒뙓뙔뙕뙖뙗뙘뙙뙚뙛뙜뙝뙞뙟뙠뙡뙢뙣뙥뙦뙧뙩뙪뙫뙬뙭뙮뙯뙰뙱뙲뙳뙴뙵뙶뙷뙸뙹뙺뙻뙼뙽뙾뙿뚀뚁뚂뚃뚄뚅뚆뚇뚈뚉뚊뚋뚌뚍뚎뚏뚐뚑뚒뚓뚔뚕뚖뚗뚘뚙뚚뚛뚞뚟뚡뚢뚣뚥뚦뚧뚨뚩뚪뚭뚮뚯뚰뚲뚳뚴뚵뚶뚷뚸뚹뚺뚻뚼뚽뚾뚿뛀뛁뛂�".split("");
for(j = 0; j != D[140].length; ++j) if(D[140][j].charCodeAt(0) !== 0xFFFD) { e[D[140][j]] = 35840 + j; d[35840 + j] = D[140][j];}
D[141] = "�����������������������������������������������������������������뛃뛄뛅뛆뛇뛈뛉뛊뛋뛌뛍뛎뛏뛐뛑뛒뛓뛕뛖뛗뛘뛙뛚뛛뛜뛝������뛞뛟뛠뛡뛢뛣뛤뛥뛦뛧뛨뛩뛪뛫뛬뛭뛮뛯뛱뛲뛳뛵뛶뛷뛹뛺������뛻뛼뛽뛾뛿뜂뜃뜄뜆뜇뜈뜉뜊뜋뜌뜍뜎뜏뜐뜑뜒뜓뜔뜕뜖뜗뜘뜙뜚뜛뜜뜝뜞뜟뜠뜡뜢뜣뜤뜥뜦뜧뜪뜫뜭뜮뜱뜲뜳뜴뜵뜶뜷뜺뜼뜽뜾뜿띀띁띂띃띅띆띇띉띊띋띍띎띏띐띑띒띓띖띗띘띙띚띛띜띝띞띟띡띢띣띥띦띧띩띪띫띬띭띮띯띲띴띶띷띸띹띺띻띾띿랁랂랃랅랆랇랈랉랊랋랎랓랔랕랚랛랝랞�".split("");
for(j = 0; j != D[141].length; ++j) if(D[141][j].charCodeAt(0) !== 0xFFFD) { e[D[141][j]] = 36096 + j; d[36096 + j] = D[141][j];}
D[142] = "�����������������������������������������������������������������랟랡랢랣랤랥랦랧랪랮랯랰랱랲랳랶랷랹랺랻랼랽랾랿럀럁������럂럃럄럅럆럈럊럋럌럍럎럏럐럑럒럓럔럕럖럗럘럙럚럛럜럝������럞럟럠럡럢럣럤럥럦럧럨럩럪럫럮럯럱럲럳럵럶럷럸럹럺럻럾렂렃렄렅렆렊렋렍렎렏렑렒렓렔렕렖렗렚렜렞렟렠렡렢렣렦렧렩렪렫렭렮렯렰렱렲렳렶렺렻렼렽렾렿롁롂롃롅롆롇롈롉롊롋롌롍롎롏롐롒롔롕롖롗롘롙롚롛롞롟롡롢롣롥롦롧롨롩롪롫롮롰롲롳롴롵롶롷롹롺롻롽롾롿뢀뢁뢂뢃뢄�".split("");
for(j = 0; j != D[142].length; ++j) if(D[142][j].charCodeAt(0) !== 0xFFFD) { e[D[142][j]] = 36352 + j; d[36352 + j] = D[142][j];}
D[143] = "�����������������������������������������������������������������뢅뢆뢇뢈뢉뢊뢋뢌뢎뢏뢐뢑뢒뢓뢔뢕뢖뢗뢘뢙뢚뢛뢜뢝뢞뢟������뢠뢡뢢뢣뢤뢥뢦뢧뢩뢪뢫뢬뢭뢮뢯뢱뢲뢳뢵뢶뢷뢹뢺뢻뢼뢽������뢾뢿룂룄룆룇룈룉룊룋룍룎룏룑룒룓룕룖룗룘룙룚룛룜룞룠룢룣룤룥룦룧룪룫룭룮룯룱룲룳룴룵룶룷룺룼룾룿뤀뤁뤂뤃뤅뤆뤇뤈뤉뤊뤋뤌뤍뤎뤏뤐뤑뤒뤓뤔뤕뤖뤗뤙뤚뤛뤜뤝뤞뤟뤡뤢뤣뤤뤥뤦뤧뤨뤩뤪뤫뤬뤭뤮뤯뤰뤱뤲뤳뤴뤵뤶뤷뤸뤹뤺뤻뤾뤿륁륂륃륅륆륇륈륉륊륋륍륎륐륒륓륔륕륖륗�".split("");
for(j = 0; j != D[143].length; ++j) if(D[143][j].charCodeAt(0) !== 0xFFFD) { e[D[143][j]] = 36608 + j; d[36608 + j] = D[143][j];}
D[144] = "�����������������������������������������������������������������륚륛륝륞륟륡륢륣륤륥륦륧륪륬륮륯륰륱륲륳륶륷륹륺륻륽������륾륿릀릁릂릃릆릈릋릌릏릐릑릒릓릔릕릖릗릘릙릚릛릜릝릞������릟릠릡릢릣릤릥릦릧릨릩릪릫릮릯릱릲릳릵릶릷릸릹릺릻릾맀맂맃맄맅맆맇맊맋맍맓맔맕맖맗맚맜맟맠맢맦맧맩맪맫맭맮맯맰맱맲맳맶맻맼맽맾맿먂먃먄먅먆먇먉먊먋먌먍먎먏먐먑먒먓먔먖먗먘먙먚먛먜먝먞먟먠먡먢먣먤먥먦먧먨먩먪먫먬먭먮먯먰먱먲먳먴먵먶먷먺먻먽먾먿멁멃멄멅멆�".split("");
for(j = 0; j != D[144].length; ++j) if(D[144][j].charCodeAt(0) !== 0xFFFD) { e[D[144][j]] = 36864 + j; d[36864 + j] = D[144][j];}
D[145] = "�����������������������������������������������������������������멇멊멌멏멐멑멒멖멗멙멚멛멝멞멟멠멡멢멣멦멪멫멬멭멮멯������멲멳멵멶멷멹멺멻멼멽멾멿몀몁몂몆몈몉몊몋몍몎몏몐몑몒������몓몔몕몖몗몘몙몚몛몜몝몞몟몠몡몢몣몤몥몦몧몪몭몮몯몱몳몴몵몶몷몺몼몾몿뫀뫁뫂뫃뫅뫆뫇뫉뫊뫋뫌뫍뫎뫏뫐뫑뫒뫓뫔뫕뫖뫗뫚뫛뫜뫝뫞뫟뫠뫡뫢뫣뫤뫥뫦뫧뫨뫩뫪뫫뫬뫭뫮뫯뫰뫱뫲뫳뫴뫵뫶뫷뫸뫹뫺뫻뫽뫾뫿묁묂묃묅묆묇묈묉묊묋묌묎묐묒묓묔묕묖묗묙묚묛묝묞묟묡묢묣묤묥묦묧�".split("");
for(j = 0; j != D[145].length; ++j) if(D[145][j].charCodeAt(0) !== 0xFFFD) { e[D[145][j]] = 37120 + j; d[37120 + j] = D[145][j];}
D[146] = "�����������������������������������������������������������������묨묪묬묭묮묯묰묱묲묳묷묹묺묿뭀뭁뭂뭃뭆뭈뭊뭋뭌뭎뭑뭒������뭓뭕뭖뭗뭙뭚뭛뭜뭝뭞뭟뭠뭢뭤뭥뭦뭧뭨뭩뭪뭫뭭뭮뭯뭰뭱������뭲뭳뭴뭵뭶뭷뭸뭹뭺뭻뭼뭽뭾뭿뮀뮁뮂뮃뮄뮅뮆뮇뮉뮊뮋뮍뮎뮏뮑뮒뮓뮔뮕뮖뮗뮘뮙뮚뮛뮜뮝뮞뮟뮠뮡뮢뮣뮥뮦뮧뮩뮪뮫뮭뮮뮯뮰뮱뮲뮳뮵뮶뮸뮹뮺뮻뮼뮽뮾뮿믁믂믃믅믆믇믉믊믋믌믍믎믏믑믒믔믕믖믗믘믙믚믛믜믝믞믟믠믡믢믣믤믥믦믧믨믩믪믫믬믭믮믯믰믱믲믳믴믵믶믷믺믻믽믾밁�".split("");
for(j = 0; j != D[146].length; ++j) if(D[146][j].charCodeAt(0) !== 0xFFFD) { e[D[146][j]] = 37376 + j; d[37376 + j] = D[146][j];}
D[147] = "�����������������������������������������������������������������밃밄밅밆밇밊밎밐밒밓밙밚밠밡밢밣밦밨밪밫밬밮밯밲밳밵������밶밷밹밺밻밼밽밾밿뱂뱆뱇뱈뱊뱋뱎뱏뱑뱒뱓뱔뱕뱖뱗뱘뱙������뱚뱛뱜뱞뱟뱠뱡뱢뱣뱤뱥뱦뱧뱨뱩뱪뱫뱬뱭뱮뱯뱰뱱뱲뱳뱴뱵뱶뱷뱸뱹뱺뱻뱼뱽뱾뱿벀벁벂벃벆벇벉벊벍벏벐벑벒벓벖벘벛벜벝벞벟벢벣벥벦벩벪벫벬벭벮벯벲벶벷벸벹벺벻벾벿볁볂볃볅볆볇볈볉볊볋볌볎볒볓볔볖볗볙볚볛볝볞볟볠볡볢볣볤볥볦볧볨볩볪볫볬볭볮볯볰볱볲볳볷볹볺볻볽�".split("");
for(j = 0; j != D[147].length; ++j) if(D[147][j].charCodeAt(0) !== 0xFFFD) { e[D[147][j]] = 37632 + j; d[37632 + j] = D[147][j];}
D[148] = "�����������������������������������������������������������������볾볿봀봁봂봃봆봈봊봋봌봍봎봏봑봒봓봕봖봗봘봙봚봛봜봝������봞봟봠봡봢봣봥봦봧봨봩봪봫봭봮봯봰봱봲봳봴봵봶봷봸봹������봺봻봼봽봾봿뵁뵂뵃뵄뵅뵆뵇뵊뵋뵍뵎뵏뵑뵒뵓뵔뵕뵖뵗뵚뵛뵜뵝뵞뵟뵠뵡뵢뵣뵥뵦뵧뵩뵪뵫뵬뵭뵮뵯뵰뵱뵲뵳뵴뵵뵶뵷뵸뵹뵺뵻뵼뵽뵾뵿붂붃붅붆붋붌붍붎붏붒붔붖붗붘붛붝붞붟붠붡붢붣붥붦붧붨붩붪붫붬붭붮붯붱붲붳붴붵붶붷붹붺붻붼붽붾붿뷀뷁뷂뷃뷄뷅뷆뷇뷈뷉뷊뷋뷌뷍뷎뷏뷐뷑�".split("");
for(j = 0; j != D[148].length; ++j) if(D[148][j].charCodeAt(0) !== 0xFFFD) { e[D[148][j]] = 37888 + j; d[37888 + j] = D[148][j];}
D[149] = "�����������������������������������������������������������������뷒뷓뷖뷗뷙뷚뷛뷝뷞뷟뷠뷡뷢뷣뷤뷥뷦뷧뷨뷪뷫뷬뷭뷮뷯뷱������뷲뷳뷵뷶뷷뷹뷺뷻뷼뷽뷾뷿븁븂븄븆븇븈븉븊븋븎븏븑븒븓������븕븖븗븘븙븚븛븞븠븡븢븣븤븥븦븧븨븩븪븫븬븭븮븯븰븱븲븳븴븵븶븷븸븹븺븻븼븽븾븿빀빁빂빃빆빇빉빊빋빍빏빐빑빒빓빖빘빜빝빞빟빢빣빥빦빧빩빫빬빭빮빯빲빶빷빸빹빺빾빿뺁뺂뺃뺅뺆뺇뺈뺉뺊뺋뺎뺒뺓뺔뺕뺖뺗뺚뺛뺜뺝뺞뺟뺠뺡뺢뺣뺤뺥뺦뺧뺩뺪뺫뺬뺭뺮뺯뺰뺱뺲뺳뺴뺵뺶뺷�".split("");
for(j = 0; j != D[149].length; ++j) if(D[149][j].charCodeAt(0) !== 0xFFFD) { e[D[149][j]] = 38144 + j; d[38144 + j] = D[149][j];}
D[150] = "�����������������������������������������������������������������뺸뺹뺺뺻뺼뺽뺾뺿뻀뻁뻂뻃뻄뻅뻆뻇뻈뻉뻊뻋뻌뻍뻎뻏뻒뻓������뻕뻖뻙뻚뻛뻜뻝뻞뻟뻡뻢뻦뻧뻨뻩뻪뻫뻭뻮뻯뻰뻱뻲뻳뻴뻵������뻶뻷뻸뻹뻺뻻뻼뻽뻾뻿뼀뼂뼃뼄뼅뼆뼇뼊뼋뼌뼍뼎뼏뼐뼑뼒뼓뼔뼕뼖뼗뼚뼞뼟뼠뼡뼢뼣뼤뼥뼦뼧뼨뼩뼪뼫뼬뼭뼮뼯뼰뼱뼲뼳뼴뼵뼶뼷뼸뼹뼺뼻뼼뼽뼾뼿뽂뽃뽅뽆뽇뽉뽊뽋뽌뽍뽎뽏뽒뽓뽔뽖뽗뽘뽙뽚뽛뽜뽝뽞뽟뽠뽡뽢뽣뽤뽥뽦뽧뽨뽩뽪뽫뽬뽭뽮뽯뽰뽱뽲뽳뽴뽵뽶뽷뽸뽹뽺뽻뽼뽽뽾뽿뾀뾁뾂�".split("");
for(j = 0; j != D[150].length; ++j) if(D[150][j].charCodeAt(0) !== 0xFFFD) { e[D[150][j]] = 38400 + j; d[38400 + j] = D[150][j];}
D[151] = "�����������������������������������������������������������������뾃뾄뾅뾆뾇뾈뾉뾊뾋뾌뾍뾎뾏뾐뾑뾒뾓뾕뾖뾗뾘뾙뾚뾛뾜뾝������뾞뾟뾠뾡뾢뾣뾤뾥뾦뾧뾨뾩뾪뾫뾬뾭뾮뾯뾱뾲뾳뾴뾵뾶뾷뾸������뾹뾺뾻뾼뾽뾾뾿뿀뿁뿂뿃뿄뿆뿇뿈뿉뿊뿋뿎뿏뿑뿒뿓뿕뿖뿗뿘뿙뿚뿛뿝뿞뿠뿢뿣뿤뿥뿦뿧뿨뿩뿪뿫뿬뿭뿮뿯뿰뿱뿲뿳뿴뿵뿶뿷뿸뿹뿺뿻뿼뿽뿾뿿쀀쀁쀂쀃쀄쀅쀆쀇쀈쀉쀊쀋쀌쀍쀎쀏쀐쀑쀒쀓쀔쀕쀖쀗쀘쀙쀚쀛쀜쀝쀞쀟쀠쀡쀢쀣쀤쀥쀦쀧쀨쀩쀪쀫쀬쀭쀮쀯쀰쀱쀲쀳쀴쀵쀶쀷쀸쀹쀺쀻쀽쀾쀿�".split("");
for(j = 0; j != D[151].length; ++j) if(D[151][j].charCodeAt(0) !== 0xFFFD) { e[D[151][j]] = 38656 + j; d[38656 + j] = D[151][j];}
D[152] = "�����������������������������������������������������������������쁀쁁쁂쁃쁄쁅쁆쁇쁈쁉쁊쁋쁌쁍쁎쁏쁐쁒쁓쁔쁕쁖쁗쁙쁚쁛������쁝쁞쁟쁡쁢쁣쁤쁥쁦쁧쁪쁫쁬쁭쁮쁯쁰쁱쁲쁳쁴쁵쁶쁷쁸쁹������쁺쁻쁼쁽쁾쁿삀삁삂삃삄삅삆삇삈삉삊삋삌삍삎삏삒삓삕삖삗삙삚삛삜삝삞삟삢삤삦삧삨삩삪삫삮삱삲삷삸삹삺삻삾샂샃샄샆샇샊샋샍샎샏샑샒샓샔샕샖샗샚샞샟샠샡샢샣샦샧샩샪샫샭샮샯샰샱샲샳샶샸샺샻샼샽샾샿섁섂섃섅섆섇섉섊섋섌섍섎섏섑섒섓섔섖섗섘섙섚섛섡섢섥섨섩섪섫섮�".split("");
for(j = 0; j != D[152].length; ++j) if(D[152][j].charCodeAt(0) !== 0xFFFD) { e[D[152][j]] = 38912 + j; d[38912 + j] = D[152][j];}
D[153] = "�����������������������������������������������������������������섲섳섴섵섷섺섻섽섾섿셁셂셃셄셅셆셇셊셎셏셐셑셒셓셖셗������셙셚셛셝셞셟셠셡셢셣셦셪셫셬셭셮셯셱셲셳셵셶셷셹셺셻������셼셽셾셿솀솁솂솃솄솆솇솈솉솊솋솏솑솒솓솕솗솘솙솚솛솞솠솢솣솤솦솧솪솫솭솮솯솱솲솳솴솵솶솷솸솹솺솻솼솾솿쇀쇁쇂쇃쇅쇆쇇쇉쇊쇋쇍쇎쇏쇐쇑쇒쇓쇕쇖쇙쇚쇛쇜쇝쇞쇟쇡쇢쇣쇥쇦쇧쇩쇪쇫쇬쇭쇮쇯쇲쇴쇵쇶쇷쇸쇹쇺쇻쇾쇿숁숂숃숅숆숇숈숉숊숋숎숐숒숓숔숕숖숗숚숛숝숞숡숢숣�".split("");
for(j = 0; j != D[153].length; ++j) if(D[153][j].charCodeAt(0) !== 0xFFFD) { e[D[153][j]] = 39168 + j; d[39168 + j] = D[153][j];}
D[154] = "�����������������������������������������������������������������숤숥숦숧숪숬숮숰숳숵숶숷숸숹숺숻숼숽숾숿쉀쉁쉂쉃쉄쉅������쉆쉇쉉쉊쉋쉌쉍쉎쉏쉒쉓쉕쉖쉗쉙쉚쉛쉜쉝쉞쉟쉡쉢쉣쉤쉦������쉧쉨쉩쉪쉫쉮쉯쉱쉲쉳쉵쉶쉷쉸쉹쉺쉻쉾슀슂슃슄슅슆슇슊슋슌슍슎슏슑슒슓슔슕슖슗슙슚슜슞슟슠슡슢슣슦슧슩슪슫슮슯슰슱슲슳슶슸슺슻슼슽슾슿싀싁싂싃싄싅싆싇싈싉싊싋싌싍싎싏싐싑싒싓싔싕싖싗싘싙싚싛싞싟싡싢싥싦싧싨싩싪싮싰싲싳싴싵싷싺싽싾싿쌁쌂쌃쌄쌅쌆쌇쌊쌋쌎쌏�".split("");
for(j = 0; j != D[154].length; ++j) if(D[154][j].charCodeAt(0) !== 0xFFFD) { e[D[154][j]] = 39424 + j; d[39424 + j] = D[154][j];}
D[155] = "�����������������������������������������������������������������쌐쌑쌒쌖쌗쌙쌚쌛쌝쌞쌟쌠쌡쌢쌣쌦쌧쌪쌫쌬쌭쌮쌯쌰쌱쌲������쌳쌴쌵쌶쌷쌸쌹쌺쌻쌼쌽쌾쌿썀썁썂썃썄썆썇썈썉썊썋썌썍������썎썏썐썑썒썓썔썕썖썗썘썙썚썛썜썝썞썟썠썡썢썣썤썥썦썧썪썫썭썮썯썱썳썴썵썶썷썺썻썾썿쎀쎁쎂쎃쎅쎆쎇쎉쎊쎋쎍쎎쎏쎐쎑쎒쎓쎔쎕쎖쎗쎘쎙쎚쎛쎜쎝쎞쎟쎠쎡쎢쎣쎤쎥쎦쎧쎨쎩쎪쎫쎬쎭쎮쎯쎰쎱쎲쎳쎴쎵쎶쎷쎸쎹쎺쎻쎼쎽쎾쎿쏁쏂쏃쏄쏅쏆쏇쏈쏉쏊쏋쏌쏍쏎쏏쏐쏑쏒쏓쏔쏕쏖쏗쏚�".split("");
for(j = 0; j != D[155].length; ++j) if(D[155][j].charCodeAt(0) !== 0xFFFD) { e[D[155][j]] = 39680 + j; d[39680 + j] = D[155][j];}
D[156] = "�����������������������������������������������������������������쏛쏝쏞쏡쏣쏤쏥쏦쏧쏪쏫쏬쏮쏯쏰쏱쏲쏳쏶쏷쏹쏺쏻쏼쏽쏾������쏿쐀쐁쐂쐃쐄쐅쐆쐇쐉쐊쐋쐌쐍쐎쐏쐑쐒쐓쐔쐕쐖쐗쐘쐙쐚������쐛쐜쐝쐞쐟쐠쐡쐢쐣쐥쐦쐧쐨쐩쐪쐫쐭쐮쐯쐱쐲쐳쐵쐶쐷쐸쐹쐺쐻쐾쐿쑀쑁쑂쑃쑄쑅쑆쑇쑉쑊쑋쑌쑍쑎쑏쑐쑑쑒쑓쑔쑕쑖쑗쑘쑙쑚쑛쑜쑝쑞쑟쑠쑡쑢쑣쑦쑧쑩쑪쑫쑭쑮쑯쑰쑱쑲쑳쑶쑷쑸쑺쑻쑼쑽쑾쑿쒁쒂쒃쒄쒅쒆쒇쒈쒉쒊쒋쒌쒍쒎쒏쒐쒑쒒쒓쒕쒖쒗쒘쒙쒚쒛쒝쒞쒟쒠쒡쒢쒣쒤쒥쒦쒧쒨쒩�".split("");
for(j = 0; j != D[156].length; ++j) if(D[156][j].charCodeAt(0) !== 0xFFFD) { e[D[156][j]] = 39936 + j; d[39936 + j] = D[156][j];}
D[157] = "�����������������������������������������������������������������쒪쒫쒬쒭쒮쒯쒰쒱쒲쒳쒴쒵쒶쒷쒹쒺쒻쒽쒾쒿쓀쓁쓂쓃쓄쓅������쓆쓇쓈쓉쓊쓋쓌쓍쓎쓏쓐쓑쓒쓓쓔쓕쓖쓗쓘쓙쓚쓛쓜쓝쓞쓟������쓠쓡쓢쓣쓤쓥쓦쓧쓨쓪쓫쓬쓭쓮쓯쓲쓳쓵쓶쓷쓹쓻쓼쓽쓾씂씃씄씅씆씇씈씉씊씋씍씎씏씑씒씓씕씖씗씘씙씚씛씝씞씟씠씡씢씣씤씥씦씧씪씫씭씮씯씱씲씳씴씵씶씷씺씼씾씿앀앁앂앃앆앇앋앏앐앑앒앖앚앛앜앟앢앣앥앦앧앩앪앫앬앭앮앯앲앶앷앸앹앺앻앾앿얁얂얃얅얆얈얉얊얋얎얐얒얓얔�".split("");
for(j = 0; j != D[157].length; ++j) if(D[157][j].charCodeAt(0) !== 0xFFFD) { e[D[157][j]] = 40192 + j; d[40192 + j] = D[157][j];}
D[158] = "�����������������������������������������������������������������얖얙얚얛얝얞얟얡얢얣얤얥얦얧얨얪얫얬얭얮얯얰얱얲얳얶������얷얺얿엀엁엂엃엋엍엏엒엓엕엖엗엙엚엛엜엝엞엟엢엤엦엧������엨엩엪엫엯엱엲엳엵엸엹엺엻옂옃옄옉옊옋옍옎옏옑옒옓옔옕옖옗옚옝옞옟옠옡옢옣옦옧옩옪옫옯옱옲옶옸옺옼옽옾옿왂왃왅왆왇왉왊왋왌왍왎왏왒왖왗왘왙왚왛왞왟왡왢왣왤왥왦왧왨왩왪왫왭왮왰왲왳왴왵왶왷왺왻왽왾왿욁욂욃욄욅욆욇욊욌욎욏욐욑욒욓욖욗욙욚욛욝욞욟욠욡욢욣욦�".split("");
for(j = 0; j != D[158].length; ++j) if(D[158][j].charCodeAt(0) !== 0xFFFD) { e[D[158][j]] = 40448 + j; d[40448 + j] = D[158][j];}
D[159] = "�����������������������������������������������������������������욨욪욫욬욭욮욯욲욳욵욶욷욻욼욽욾욿웂웄웆웇웈웉웊웋웎������웏웑웒웓웕웖웗웘웙웚웛웞웟웢웣웤웥웦웧웪웫웭웮웯웱웲������웳웴웵웶웷웺웻웼웾웿윀윁윂윃윆윇윉윊윋윍윎윏윐윑윒윓윖윘윚윛윜윝윞윟윢윣윥윦윧윩윪윫윬윭윮윯윲윴윶윸윹윺윻윾윿읁읂읃읅읆읇읈읉읋읎읐읙읚읛읝읞읟읡읢읣읤읥읦읧읩읪읬읭읮읯읰읱읲읳읶읷읹읺읻읿잀잁잂잆잋잌잍잏잒잓잕잙잛잜잝잞잟잢잧잨잩잪잫잮잯잱잲잳잵잶잷�".split("");
for(j = 0; j != D[159].length; ++j) if(D[159][j].charCodeAt(0) !== 0xFFFD) { e[D[159][j]] = 40704 + j; d[40704 + j] = D[159][j];}
D[160] = "�����������������������������������������������������������������잸잹잺잻잾쟂쟃쟄쟅쟆쟇쟊쟋쟍쟏쟑쟒쟓쟔쟕쟖쟗쟙쟚쟛쟜������쟞쟟쟠쟡쟢쟣쟥쟦쟧쟩쟪쟫쟭쟮쟯쟰쟱쟲쟳쟴쟵쟶쟷쟸쟹쟺������쟻쟼쟽쟾쟿젂젃젅젆젇젉젋젌젍젎젏젒젔젗젘젙젚젛젞젟젡젢젣젥젦젧젨젩젪젫젮젰젲젳젴젵젶젷젹젺젻젽젾젿졁졂졃졄졅졆졇졊졋졎졏졐졑졒졓졕졖졗졘졙졚졛졜졝졞졟졠졡졢졣졤졥졦졧졨졩졪졫졬졭졮졯졲졳졵졶졷졹졻졼졽졾졿좂좄좈좉좊좎좏좐좑좒좓좕좖좗좘좙좚좛좜좞좠좢좣좤�".split("");
for(j = 0; j != D[160].length; ++j) if(D[160][j].charCodeAt(0) !== 0xFFFD) { e[D[160][j]] = 40960 + j; d[40960 + j] = D[160][j];}
D[161] = "�����������������������������������������������������������������좥좦좧좩좪좫좬좭좮좯좰좱좲좳좴좵좶좷좸좹좺좻좾좿죀죁������죂죃죅죆죇죉죊죋죍죎죏죐죑죒죓죖죘죚죛죜죝죞죟죢죣죥������죦죧죨죩죪죫죬죭죮죯죰죱죲죳죴죶죷죸죹죺죻죾죿줁줂줃줇줈줉줊줋줎 、。·‥…¨〃­―∥\∼‘’“”〔〕〈〉《》「」『』【】±×÷≠≤≥∞∴°′″℃Å¢£¥♂♀∠⊥⌒∂∇≡≒§※☆★○●◎◇◆□■△▲▽▼→←↑↓↔〓≪≫√∽∝∵∫∬∈∋⊆⊇⊂⊃∪∩∧∨¬�".split("");
for(j = 0; j != D[161].length; ++j) if(D[161][j].charCodeAt(0) !== 0xFFFD) { e[D[161][j]] = 41216 + j; d[41216 + j] = D[161][j];}
D[162] = "�����������������������������������������������������������������줐줒줓줔줕줖줗줙줚줛줜줝줞줟줠줡줢줣줤줥줦줧줨줩줪줫������줭줮줯줰줱줲줳줵줶줷줸줹줺줻줼줽줾줿쥀쥁쥂쥃쥄쥅쥆쥇������쥈쥉쥊쥋쥌쥍쥎쥏쥒쥓쥕쥖쥗쥙쥚쥛쥜쥝쥞쥟쥢쥤쥥쥦쥧쥨쥩쥪쥫쥭쥮쥯⇒⇔∀∃´~ˇ˘˝˚˙¸˛¡¿ː∮∑∏¤℉‰◁◀▷▶♤♠♡♥♧♣⊙◈▣◐◑▒▤▥▨▧▦▩♨☏☎☜☞¶†‡↕↗↙↖↘♭♩♪♬㉿㈜№㏇™㏂㏘℡€®������������������������".split("");
for(j = 0; j != D[162].length; ++j) if(D[162][j].charCodeAt(0) !== 0xFFFD) { e[D[162][j]] = 41472 + j; d[41472 + j] = D[162][j];}
D[163] = "�����������������������������������������������������������������쥱쥲쥳쥵쥶쥷쥸쥹쥺쥻쥽쥾쥿즀즁즂즃즄즅즆즇즊즋즍즎즏������즑즒즓즔즕즖즗즚즜즞즟즠즡즢즣즤즥즦즧즨즩즪즫즬즭즮������즯즰즱즲즳즴즵즶즷즸즹즺즻즼즽즾즿짂짃짅짆짉짋짌짍짎짏짒짔짗짘짛!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[₩]^_`abcdefghijklmnopqrstuvwxyz{|} ̄�".split("");
for(j = 0; j != D[163].length; ++j) if(D[163][j].charCodeAt(0) !== 0xFFFD) { e[D[163][j]] = 41728 + j; d[41728 + j] = D[163][j];}
D[164] = "�����������������������������������������������������������������짞짟짡짣짥짦짨짩짪짫짮짲짳짴짵짶짷짺짻짽짾짿쨁쨂쨃쨄������쨅쨆쨇쨊쨎쨏쨐쨑쨒쨓쨕쨖쨗쨙쨚쨛쨜쨝쨞쨟쨠쨡쨢쨣쨤쨥������쨦쨧쨨쨪쨫쨬쨭쨮쨯쨰쨱쨲쨳쨴쨵쨶쨷쨸쨹쨺쨻쨼쨽쨾쨿쩀쩁쩂쩃쩄쩅쩆ㄱㄲㄳㄴㄵㄶㄷㄸㄹㄺㄻㄼㄽㄾㄿㅀㅁㅂㅃㅄㅅㅆㅇㅈㅉㅊㅋㅌㅍㅎㅏㅐㅑㅒㅓㅔㅕㅖㅗㅘㅙㅚㅛㅜㅝㅞㅟㅠㅡㅢㅣㅤㅥㅦㅧㅨㅩㅪㅫㅬㅭㅮㅯㅰㅱㅲㅳㅴㅵㅶㅷㅸㅹㅺㅻㅼㅽㅾㅿㆀㆁㆂㆃㆄㆅㆆㆇㆈㆉㆊㆋㆌㆍㆎ�".split("");
for(j = 0; j != D[164].length; ++j) if(D[164][j].charCodeAt(0) !== 0xFFFD) { e[D[164][j]] = 41984 + j; d[41984 + j] = D[164][j];}
D[165] = "�����������������������������������������������������������������쩇쩈쩉쩊쩋쩎쩏쩑쩒쩓쩕쩖쩗쩘쩙쩚쩛쩞쩢쩣쩤쩥쩦쩧쩩쩪������쩫쩬쩭쩮쩯쩰쩱쩲쩳쩴쩵쩶쩷쩸쩹쩺쩻쩼쩾쩿쪀쪁쪂쪃쪅쪆������쪇쪈쪉쪊쪋쪌쪍쪎쪏쪐쪑쪒쪓쪔쪕쪖쪗쪙쪚쪛쪜쪝쪞쪟쪠쪡쪢쪣쪤쪥쪦쪧ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹ�����ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ�������ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ��������αβγδεζηθικλμνξοπρστυφχψω�������".split("");
for(j = 0; j != D[165].length; ++j) if(D[165][j].charCodeAt(0) !== 0xFFFD) { e[D[165][j]] = 42240 + j; d[42240 + j] = D[165][j];}
D[166] = "�����������������������������������������������������������������쪨쪩쪪쪫쪬쪭쪮쪯쪰쪱쪲쪳쪴쪵쪶쪷쪸쪹쪺쪻쪾쪿쫁쫂쫃쫅������쫆쫇쫈쫉쫊쫋쫎쫐쫒쫔쫕쫖쫗쫚쫛쫜쫝쫞쫟쫡쫢쫣쫤쫥쫦쫧������쫨쫩쫪쫫쫭쫮쫯쫰쫱쫲쫳쫵쫶쫷쫸쫹쫺쫻쫼쫽쫾쫿쬀쬁쬂쬃쬄쬅쬆쬇쬉쬊─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂┒┑┚┙┖┕┎┍┞┟┡┢┦┧┩┪┭┮┱┲┵┶┹┺┽┾╀╁╃╄╅╆╇╈╉╊���������������������������".split("");
for(j = 0; j != D[166].length; ++j) if(D[166][j].charCodeAt(0) !== 0xFFFD) { e[D[166][j]] = 42496 + j; d[42496 + j] = D[166][j];}
D[167] = "�����������������������������������������������������������������쬋쬌쬍쬎쬏쬑쬒쬓쬕쬖쬗쬙쬚쬛쬜쬝쬞쬟쬢쬣쬤쬥쬦쬧쬨쬩������쬪쬫쬬쬭쬮쬯쬰쬱쬲쬳쬴쬵쬶쬷쬸쬹쬺쬻쬼쬽쬾쬿쭀쭂쭃쭄������쭅쭆쭇쭊쭋쭍쭎쭏쭑쭒쭓쭔쭕쭖쭗쭚쭛쭜쭞쭟쭠쭡쭢쭣쭥쭦쭧쭨쭩쭪쭫쭬㎕㎖㎗ℓ㎘㏄㎣㎤㎥㎦㎙㎚㎛㎜㎝㎞㎟㎠㎡㎢㏊㎍㎎㎏㏏㎈㎉㏈㎧㎨㎰㎱㎲㎳㎴㎵㎶㎷㎸㎹㎀㎁㎂㎃㎄㎺㎻㎼㎽㎾㎿㎐㎑㎒㎓㎔Ω㏀㏁㎊㎋㎌㏖㏅㎭㎮㎯㏛㎩㎪㎫㎬㏝㏐㏓㏃㏉㏜㏆����������������".split("");
for(j = 0; j != D[167].length; ++j) if(D[167][j].charCodeAt(0) !== 0xFFFD) { e[D[167][j]] = 42752 + j; d[42752 + j] = D[167][j];}
D[168] = "�����������������������������������������������������������������쭭쭮쭯쭰쭱쭲쭳쭴쭵쭶쭷쭺쭻쭼쭽쭾쭿쮀쮁쮂쮃쮄쮅쮆쮇쮈������쮉쮊쮋쮌쮍쮎쮏쮐쮑쮒쮓쮔쮕쮖쮗쮘쮙쮚쮛쮝쮞쮟쮠쮡쮢쮣������쮤쮥쮦쮧쮨쮩쮪쮫쮬쮭쮮쮯쮰쮱쮲쮳쮴쮵쮶쮷쮹쮺쮻쮼쮽쮾쮿쯀쯁쯂쯃쯄ÆÐªĦ�IJ�ĿŁØŒºÞŦŊ�㉠㉡㉢㉣㉤㉥㉦㉧㉨㉩㉪㉫㉬㉭㉮㉯㉰㉱㉲㉳㉴㉵㉶㉷㉸㉹㉺㉻ⓐⓑⓒⓓⓔⓕⓖⓗⓘⓙⓚⓛⓜⓝⓞⓟⓠⓡⓢⓣⓤⓥⓦⓧⓨⓩ①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮½⅓⅔¼¾⅛⅜⅝⅞�".split("");
for(j = 0; j != D[168].length; ++j) if(D[168][j].charCodeAt(0) !== 0xFFFD) { e[D[168][j]] = 43008 + j; d[43008 + j] = D[168][j];}
D[169] = "�����������������������������������������������������������������쯅쯆쯇쯈쯉쯊쯋쯌쯍쯎쯏쯐쯑쯒쯓쯕쯖쯗쯘쯙쯚쯛쯜쯝쯞쯟������쯠쯡쯢쯣쯥쯦쯨쯪쯫쯬쯭쯮쯯쯰쯱쯲쯳쯴쯵쯶쯷쯸쯹쯺쯻쯼������쯽쯾쯿찀찁찂찃찄찅찆찇찈찉찊찋찎찏찑찒찓찕찖찗찘찙찚찛찞찟찠찣찤æđðħıijĸŀłøœßþŧŋʼn㈀㈁㈂㈃㈄㈅㈆㈇㈈㈉㈊㈋㈌㈍㈎㈏㈐㈑㈒㈓㈔㈕㈖㈗㈘㈙㈚㈛⒜⒝⒞⒟⒠⒡⒢⒣⒤⒥⒦⒧⒨⒩⒪⒫⒬⒭⒮⒯⒰⒱⒲⒳⒴⒵⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂¹²³⁴ⁿ₁₂₃₄�".split("");
for(j = 0; j != D[169].length; ++j) if(D[169][j].charCodeAt(0) !== 0xFFFD) { e[D[169][j]] = 43264 + j; d[43264 + j] = D[169][j];}
D[170] = "�����������������������������������������������������������������찥찦찪찫찭찯찱찲찳찴찵찶찷찺찿챀챁챂챃챆챇챉챊챋챍챎������챏챐챑챒챓챖챚챛챜챝챞챟챡챢챣챥챧챩챪챫챬챭챮챯챱챲������챳챴챶챷챸챹챺챻챼챽챾챿첀첁첂첃첄첅첆첇첈첉첊첋첌첍첎첏첐첑첒첓ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん������������".split("");
for(j = 0; j != D[170].length; ++j) if(D[170][j].charCodeAt(0) !== 0xFFFD) { e[D[170][j]] = 43520 + j; d[43520 + j] = D[170][j];}
D[171] = "�����������������������������������������������������������������첔첕첖첗첚첛첝첞첟첡첢첣첤첥첦첧첪첮첯첰첱첲첳첶첷첹������첺첻첽첾첿쳀쳁쳂쳃쳆쳈쳊쳋쳌쳍쳎쳏쳑쳒쳓쳕쳖쳗쳘쳙쳚������쳛쳜쳝쳞쳟쳠쳡쳢쳣쳥쳦쳧쳨쳩쳪쳫쳭쳮쳯쳱쳲쳳쳴쳵쳶쳷쳸쳹쳺쳻쳼쳽ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ���������".split("");
for(j = 0; j != D[171].length; ++j) if(D[171][j].charCodeAt(0) !== 0xFFFD) { e[D[171][j]] = 43776 + j; d[43776 + j] = D[171][j];}
D[172] = "�����������������������������������������������������������������쳾쳿촀촂촃촄촅촆촇촊촋촍촎촏촑촒촓촔촕촖촗촚촜촞촟촠������촡촢촣촥촦촧촩촪촫촭촮촯촰촱촲촳촴촵촶촷촸촺촻촼촽촾������촿쵀쵁쵂쵃쵄쵅쵆쵇쵈쵉쵊쵋쵌쵍쵎쵏쵐쵑쵒쵓쵔쵕쵖쵗쵘쵙쵚쵛쵝쵞쵟АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ���������������абвгдеёжзийклмнопрстуфхцчшщъыьэюя��������������".split("");
for(j = 0; j != D[172].length; ++j) if(D[172][j].charCodeAt(0) !== 0xFFFD) { e[D[172][j]] = 44032 + j; d[44032 + j] = D[172][j];}
D[173] = "�����������������������������������������������������������������쵡쵢쵣쵥쵦쵧쵨쵩쵪쵫쵮쵰쵲쵳쵴쵵쵶쵷쵹쵺쵻쵼쵽쵾쵿춀������춁춂춃춄춅춆춇춉춊춋춌춍춎춏춐춑춒춓춖춗춙춚춛춝춞춟������춠춡춢춣춦춨춪춫춬춭춮춯춱춲춳춴춵춶춷춸춹춺춻춼춽춾춿췀췁췂췃췅�����������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[173].length; ++j) if(D[173][j].charCodeAt(0) !== 0xFFFD) { e[D[173][j]] = 44288 + j; d[44288 + j] = D[173][j];}
D[174] = "�����������������������������������������������������������������췆췇췈췉췊췋췍췎췏췑췒췓췔췕췖췗췘췙췚췛췜췝췞췟췠췡������췢췣췤췥췦췧췩췪췫췭췮췯췱췲췳췴췵췶췷췺췼췾췿츀츁츂������츃츅츆츇츉츊츋츍츎츏츐츑츒츓츕츖츗츘츚츛츜츝츞츟츢츣츥츦츧츩츪츫�����������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[174].length; ++j) if(D[174][j].charCodeAt(0) !== 0xFFFD) { e[D[174][j]] = 44544 + j; d[44544 + j] = D[174][j];}
D[175] = "�����������������������������������������������������������������츬츭츮츯츲츴츶츷츸츹츺츻츼츽츾츿칀칁칂칃칄칅칆칇칈칉������칊칋칌칍칎칏칐칑칒칓칔칕칖칗칚칛칝칞칢칣칤칥칦칧칪칬������칮칯칰칱칲칳칶칷칹칺칻칽칾칿캀캁캂캃캆캈캊캋캌캍캎캏캒캓캕캖캗캙�����������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[175].length; ++j) if(D[175][j].charCodeAt(0) !== 0xFFFD) { e[D[175][j]] = 44800 + j; d[44800 + j] = D[175][j];}
D[176] = "�����������������������������������������������������������������캚캛캜캝캞캟캢캦캧캨캩캪캫캮캯캰캱캲캳캴캵캶캷캸캹캺������캻캼캽캾캿컀컂컃컄컅컆컇컈컉컊컋컌컍컎컏컐컑컒컓컔컕������컖컗컘컙컚컛컜컝컞컟컠컡컢컣컦컧컩컪컭컮컯컰컱컲컳컶컺컻컼컽컾컿가각간갇갈갉갊감갑값갓갔강갖갗같갚갛개객갠갤갬갭갯갰갱갸갹갼걀걋걍걔걘걜거걱건걷걸걺검겁것겄겅겆겉겊겋게겐겔겜겝겟겠겡겨격겪견겯결겸겹겻겼경곁계곈곌곕곗고곡곤곧골곪곬곯곰곱곳공곶과곽관괄괆�".split("");
for(j = 0; j != D[176].length; ++j) if(D[176][j].charCodeAt(0) !== 0xFFFD) { e[D[176][j]] = 45056 + j; d[45056 + j] = D[176][j];}
D[177] = "�����������������������������������������������������������������켂켃켅켆켇켉켊켋켌켍켎켏켒켔켖켗켘켙켚켛켝켞켟켡켢켣������켥켦켧켨켩켪켫켮켲켳켴켵켶켷켹켺켻켼켽켾켿콀콁콂콃콄������콅콆콇콈콉콊콋콌콍콎콏콐콑콒콓콖콗콙콚콛콝콞콟콠콡콢콣콦콨콪콫콬괌괍괏광괘괜괠괩괬괭괴괵괸괼굄굅굇굉교굔굘굡굣구국군굳굴굵굶굻굼굽굿궁궂궈궉권궐궜궝궤궷귀귁귄귈귐귑귓규균귤그극근귿글긁금급긋긍긔기긱긴긷길긺김깁깃깅깆깊까깍깎깐깔깖깜깝깟깠깡깥깨깩깬깰깸�".split("");
for(j = 0; j != D[177].length; ++j) if(D[177][j].charCodeAt(0) !== 0xFFFD) { e[D[177][j]] = 45312 + j; d[45312 + j] = D[177][j];}
D[178] = "�����������������������������������������������������������������콭콮콯콲콳콵콶콷콹콺콻콼콽콾콿쾁쾂쾃쾄쾆쾇쾈쾉쾊쾋쾍������쾎쾏쾐쾑쾒쾓쾔쾕쾖쾗쾘쾙쾚쾛쾜쾝쾞쾟쾠쾢쾣쾤쾥쾦쾧쾩������쾪쾫쾬쾭쾮쾯쾱쾲쾳쾴쾵쾶쾷쾸쾹쾺쾻쾼쾽쾾쾿쿀쿁쿂쿃쿅쿆쿇쿈쿉쿊쿋깹깻깼깽꺄꺅꺌꺼꺽꺾껀껄껌껍껏껐껑께껙껜껨껫껭껴껸껼꼇꼈꼍꼐꼬꼭꼰꼲꼴꼼꼽꼿꽁꽂꽃꽈꽉꽐꽜꽝꽤꽥꽹꾀꾄꾈꾐꾑꾕꾜꾸꾹꾼꿀꿇꿈꿉꿋꿍꿎꿔꿜꿨꿩꿰꿱꿴꿸뀀뀁뀄뀌뀐뀔뀜뀝뀨끄끅끈끊끌끎끓끔끕끗끙�".split("");
for(j = 0; j != D[178].length; ++j) if(D[178][j].charCodeAt(0) !== 0xFFFD) { e[D[178][j]] = 45568 + j; d[45568 + j] = D[178][j];}
D[179] = "�����������������������������������������������������������������쿌쿍쿎쿏쿐쿑쿒쿓쿔쿕쿖쿗쿘쿙쿚쿛쿜쿝쿞쿟쿢쿣쿥쿦쿧쿩������쿪쿫쿬쿭쿮쿯쿲쿴쿶쿷쿸쿹쿺쿻쿽쿾쿿퀁퀂퀃퀅퀆퀇퀈퀉퀊������퀋퀌퀍퀎퀏퀐퀒퀓퀔퀕퀖퀗퀙퀚퀛퀜퀝퀞퀟퀠퀡퀢퀣퀤퀥퀦퀧퀨퀩퀪퀫퀬끝끼끽낀낄낌낍낏낑나낙낚난낟날낡낢남납낫났낭낮낯낱낳내낵낸낼냄냅냇냈냉냐냑냔냘냠냥너넉넋넌널넒넓넘넙넛넜넝넣네넥넨넬넴넵넷넸넹녀녁년녈념녑녔녕녘녜녠노녹논놀놂놈놉놋농높놓놔놘놜놨뇌뇐뇔뇜뇝�".split("");
for(j = 0; j != D[179].length; ++j) if(D[179][j].charCodeAt(0) !== 0xFFFD) { e[D[179][j]] = 45824 + j; d[45824 + j] = D[179][j];}
D[180] = "�����������������������������������������������������������������퀮퀯퀰퀱퀲퀳퀶퀷퀹퀺퀻퀽퀾퀿큀큁큂큃큆큈큊큋큌큍큎큏������큑큒큓큕큖큗큙큚큛큜큝큞큟큡큢큣큤큥큦큧큨큩큪큫큮큯������큱큲큳큵큶큷큸큹큺큻큾큿킀킂킃킄킅킆킇킈킉킊킋킌킍킎킏킐킑킒킓킔뇟뇨뇩뇬뇰뇹뇻뇽누눅눈눋눌눔눕눗눙눠눴눼뉘뉜뉠뉨뉩뉴뉵뉼늄늅늉느늑는늘늙늚늠늡늣능늦늪늬늰늴니닉닌닐닒님닙닛닝닢다닥닦단닫달닭닮닯닳담답닷닸당닺닻닿대댁댄댈댐댑댓댔댕댜더덕덖던덛덜덞덟덤덥�".split("");
for(j = 0; j != D[180].length; ++j) if(D[180][j].charCodeAt(0) !== 0xFFFD) { e[D[180][j]] = 46080 + j; d[46080 + j] = D[180][j];}
D[181] = "�����������������������������������������������������������������킕킖킗킘킙킚킛킜킝킞킟킠킡킢킣킦킧킩킪킫킭킮킯킰킱킲������킳킶킸킺킻킼킽킾킿탂탃탅탆탇탊탋탌탍탎탏탒탖탗탘탙탚������탛탞탟탡탢탣탥탦탧탨탩탪탫탮탲탳탴탵탶탷탹탺탻탼탽탾탿턀턁턂턃턄덧덩덫덮데덱덴델뎀뎁뎃뎄뎅뎌뎐뎔뎠뎡뎨뎬도독돈돋돌돎돐돔돕돗동돛돝돠돤돨돼됐되된될됨됩됫됴두둑둔둘둠둡둣둥둬뒀뒈뒝뒤뒨뒬뒵뒷뒹듀듄듈듐듕드득든듣들듦듬듭듯등듸디딕딘딛딜딤딥딧딨딩딪따딱딴딸�".split("");
for(j = 0; j != D[181].length; ++j) if(D[181][j].charCodeAt(0) !== 0xFFFD) { e[D[181][j]] = 46336 + j; d[46336 + j] = D[181][j];}
D[182] = "�����������������������������������������������������������������턅턆턇턈턉턊턋턌턎턏턐턑턒턓턔턕턖턗턘턙턚턛턜턝턞턟������턠턡턢턣턤턥턦턧턨턩턪턫턬턭턮턯턲턳턵턶턷턹턻턼턽턾������턿텂텆텇텈텉텊텋텎텏텑텒텓텕텖텗텘텙텚텛텞텠텢텣텤텥텦텧텩텪텫텭땀땁땃땄땅땋때땍땐땔땜땝땟땠땡떠떡떤떨떪떫떰떱떳떴떵떻떼떽뗀뗄뗌뗍뗏뗐뗑뗘뗬또똑똔똘똥똬똴뙈뙤뙨뚜뚝뚠뚤뚫뚬뚱뛔뛰뛴뛸뜀뜁뜅뜨뜩뜬뜯뜰뜸뜹뜻띄띈띌띔띕띠띤띨띰띱띳띵라락란랄람랍랏랐랑랒랖랗�".split("");
for(j = 0; j != D[182].length; ++j) if(D[182][j].charCodeAt(0) !== 0xFFFD) { e[D[182][j]] = 46592 + j; d[46592 + j] = D[182][j];}
D[183] = "�����������������������������������������������������������������텮텯텰텱텲텳텴텵텶텷텸텹텺텻텽텾텿톀톁톂톃톅톆톇톉톊������톋톌톍톎톏톐톑톒톓톔톕톖톗톘톙톚톛톜톝톞톟톢톣톥톦톧������톩톪톫톬톭톮톯톲톴톶톷톸톹톻톽톾톿퇁퇂퇃퇄퇅퇆퇇퇈퇉퇊퇋퇌퇍퇎퇏래랙랜랠램랩랫랬랭랴략랸럇량러럭런럴럼럽럿렀렁렇레렉렌렐렘렙렛렝려력련렬렴렵렷렸령례롄롑롓로록론롤롬롭롯롱롸롼뢍뢨뢰뢴뢸룀룁룃룅료룐룔룝룟룡루룩룬룰룸룹룻룽뤄뤘뤠뤼뤽륀륄륌륏륑류륙륜률륨륩�".split("");
for(j = 0; j != D[183].length; ++j) if(D[183][j].charCodeAt(0) !== 0xFFFD) { e[D[183][j]] = 46848 + j; d[46848 + j] = D[183][j];}
D[184] = "�����������������������������������������������������������������퇐퇑퇒퇓퇔퇕퇖퇗퇙퇚퇛퇜퇝퇞퇟퇠퇡퇢퇣퇤퇥퇦퇧퇨퇩퇪������퇫퇬퇭퇮퇯퇰퇱퇲퇳퇵퇶퇷퇹퇺퇻퇼퇽퇾퇿툀툁툂툃툄툅툆������툈툊툋툌툍툎툏툑툒툓툔툕툖툗툘툙툚툛툜툝툞툟툠툡툢툣툤툥툦툧툨툩륫륭르륵른를름릅릇릉릊릍릎리릭린릴림립릿링마막만많맏말맑맒맘맙맛망맞맡맣매맥맨맬맴맵맷맸맹맺먀먁먈먕머먹먼멀멂멈멉멋멍멎멓메멕멘멜멤멥멧멨멩며멱면멸몃몄명몇몌모목몫몬몰몲몸몹못몽뫄뫈뫘뫙뫼�".split("");
for(j = 0; j != D[184].length; ++j) if(D[184][j].charCodeAt(0) !== 0xFFFD) { e[D[184][j]] = 47104 + j; d[47104 + j] = D[184][j];}
D[185] = "�����������������������������������������������������������������툪툫툮툯툱툲툳툵툶툷툸툹툺툻툾퉀퉂퉃퉄퉅퉆퉇퉉퉊퉋퉌������퉍퉎퉏퉐퉑퉒퉓퉔퉕퉖퉗퉘퉙퉚퉛퉝퉞퉟퉠퉡퉢퉣퉥퉦퉧퉨������퉩퉪퉫퉬퉭퉮퉯퉰퉱퉲퉳퉴퉵퉶퉷퉸퉹퉺퉻퉼퉽퉾퉿튂튃튅튆튇튉튊튋튌묀묄묍묏묑묘묜묠묩묫무묵묶문묻물묽묾뭄뭅뭇뭉뭍뭏뭐뭔뭘뭡뭣뭬뮈뮌뮐뮤뮨뮬뮴뮷므믄믈믐믓미믹민믿밀밂밈밉밋밌밍및밑바박밖밗반받발밝밞밟밤밥밧방밭배백밴밸뱀뱁뱃뱄뱅뱉뱌뱍뱐뱝버벅번벋벌벎범법벗�".split("");
for(j = 0; j != D[185].length; ++j) if(D[185][j].charCodeAt(0) !== 0xFFFD) { e[D[185][j]] = 47360 + j; d[47360 + j] = D[185][j];}
D[186] = "�����������������������������������������������������������������튍튎튏튒튓튔튖튗튘튙튚튛튝튞튟튡튢튣튥튦튧튨튩튪튫튭������튮튯튰튲튳튴튵튶튷튺튻튽튾틁틃틄틅틆틇틊틌틍틎틏틐틑������틒틓틕틖틗틙틚틛틝틞틟틠틡틢틣틦틧틨틩틪틫틬틭틮틯틲틳틵틶틷틹틺벙벚베벡벤벧벨벰벱벳벴벵벼벽변별볍볏볐병볕볘볜보복볶본볼봄봅봇봉봐봔봤봬뵀뵈뵉뵌뵐뵘뵙뵤뵨부북분붇불붉붊붐붑붓붕붙붚붜붤붰붸뷔뷕뷘뷜뷩뷰뷴뷸븀븃븅브븍븐블븜븝븟비빅빈빌빎빔빕빗빙빚빛빠빡빤�".split("");
for(j = 0; j != D[186].length; ++j) if(D[186][j].charCodeAt(0) !== 0xFFFD) { e[D[186][j]] = 47616 + j; d[47616 + j] = D[186][j];}
D[187] = "�����������������������������������������������������������������틻틼틽틾틿팂팄팆팇팈팉팊팋팏팑팒팓팕팗팘팙팚팛팞팢팣������팤팦팧팪팫팭팮팯팱팲팳팴팵팶팷팺팾팿퍀퍁퍂퍃퍆퍇퍈퍉������퍊퍋퍌퍍퍎퍏퍐퍑퍒퍓퍔퍕퍖퍗퍘퍙퍚퍛퍜퍝퍞퍟퍠퍡퍢퍣퍤퍥퍦퍧퍨퍩빨빪빰빱빳빴빵빻빼빽뺀뺄뺌뺍뺏뺐뺑뺘뺙뺨뻐뻑뻔뻗뻘뻠뻣뻤뻥뻬뼁뼈뼉뼘뼙뼛뼜뼝뽀뽁뽄뽈뽐뽑뽕뾔뾰뿅뿌뿍뿐뿔뿜뿟뿡쀼쁑쁘쁜쁠쁨쁩삐삑삔삘삠삡삣삥사삭삯산삳살삵삶삼삽삿샀상샅새색샌샐샘샙샛샜생샤�".split("");
for(j = 0; j != D[187].length; ++j) if(D[187][j].charCodeAt(0) !== 0xFFFD) { e[D[187][j]] = 47872 + j; d[47872 + j] = D[187][j];}
D[188] = "�����������������������������������������������������������������퍪퍫퍬퍭퍮퍯퍰퍱퍲퍳퍴퍵퍶퍷퍸퍹퍺퍻퍾퍿펁펂펃펅펆펇������펈펉펊펋펎펒펓펔펕펖펗펚펛펝펞펟펡펢펣펤펥펦펧펪펬펮������펯펰펱펲펳펵펶펷펹펺펻펽펾펿폀폁폂폃폆폇폊폋폌폍폎폏폑폒폓폔폕폖샥샨샬샴샵샷샹섀섄섈섐섕서석섞섟선섣설섦섧섬섭섯섰성섶세섹센셀셈셉셋셌셍셔셕션셜셤셥셧셨셩셰셴셸솅소속솎손솔솖솜솝솟송솥솨솩솬솰솽쇄쇈쇌쇔쇗쇘쇠쇤쇨쇰쇱쇳쇼쇽숀숄숌숍숏숑수숙순숟술숨숩숫숭�".split("");
for(j = 0; j != D[188].length; ++j) if(D[188][j].charCodeAt(0) !== 0xFFFD) { e[D[188][j]] = 48128 + j; d[48128 + j] = D[188][j];}
D[189] = "�����������������������������������������������������������������폗폙폚폛폜폝폞폟폠폢폤폥폦폧폨폩폪폫폮폯폱폲폳폵폶폷������폸폹폺폻폾퐀퐂퐃퐄퐅퐆퐇퐉퐊퐋퐌퐍퐎퐏퐐퐑퐒퐓퐔퐕퐖������퐗퐘퐙퐚퐛퐜퐞퐟퐠퐡퐢퐣퐤퐥퐦퐧퐨퐩퐪퐫퐬퐭퐮퐯퐰퐱퐲퐳퐴퐵퐶퐷숯숱숲숴쉈쉐쉑쉔쉘쉠쉥쉬쉭쉰쉴쉼쉽쉿슁슈슉슐슘슛슝스슥슨슬슭슴습슷승시식신싣실싫심십싯싱싶싸싹싻싼쌀쌈쌉쌌쌍쌓쌔쌕쌘쌜쌤쌥쌨쌩썅써썩썬썰썲썸썹썼썽쎄쎈쎌쏀쏘쏙쏜쏟쏠쏢쏨쏩쏭쏴쏵쏸쐈쐐쐤쐬쐰�".split("");
for(j = 0; j != D[189].length; ++j) if(D[189][j].charCodeAt(0) !== 0xFFFD) { e[D[189][j]] = 48384 + j; d[48384 + j] = D[189][j];}
D[190] = "�����������������������������������������������������������������퐸퐹퐺퐻퐼퐽퐾퐿푁푂푃푅푆푇푈푉푊푋푌푍푎푏푐푑푒푓������푔푕푖푗푘푙푚푛푝푞푟푡푢푣푥푦푧푨푩푪푫푬푮푰푱푲������푳푴푵푶푷푺푻푽푾풁풃풄풅풆풇풊풌풎풏풐풑풒풓풕풖풗풘풙풚풛풜풝쐴쐼쐽쑈쑤쑥쑨쑬쑴쑵쑹쒀쒔쒜쒸쒼쓩쓰쓱쓴쓸쓺쓿씀씁씌씐씔씜씨씩씬씰씸씹씻씽아악안앉않알앍앎앓암압앗았앙앝앞애액앤앨앰앱앳앴앵야약얀얄얇얌얍얏양얕얗얘얜얠얩어억언얹얻얼얽얾엄업없엇었엉엊엌엎�".split("");
for(j = 0; j != D[190].length; ++j) if(D[190][j].charCodeAt(0) !== 0xFFFD) { e[D[190][j]] = 48640 + j; d[48640 + j] = D[190][j];}
D[191] = "�����������������������������������������������������������������풞풟풠풡풢풣풤풥풦풧풨풪풫풬풭풮풯풰풱풲풳풴풵풶풷풸������풹풺풻풼풽풾풿퓀퓁퓂퓃퓄퓅퓆퓇퓈퓉퓊퓋퓍퓎퓏퓑퓒퓓퓕������퓖퓗퓘퓙퓚퓛퓝퓞퓠퓡퓢퓣퓤퓥퓦퓧퓩퓪퓫퓭퓮퓯퓱퓲퓳퓴퓵퓶퓷퓹퓺퓼에엑엔엘엠엡엣엥여역엮연열엶엷염엽엾엿였영옅옆옇예옌옐옘옙옛옜오옥온올옭옮옰옳옴옵옷옹옻와왁완왈왐왑왓왔왕왜왝왠왬왯왱외왹왼욀욈욉욋욍요욕욘욜욤욥욧용우욱운울욹욺움웁웃웅워웍원월웜웝웠웡웨�".split("");
for(j = 0; j != D[191].length; ++j) if(D[191][j].charCodeAt(0) !== 0xFFFD) { e[D[191][j]] = 48896 + j; d[48896 + j] = D[191][j];}
D[192] = "�����������������������������������������������������������������퓾퓿픀픁픂픃픅픆픇픉픊픋픍픎픏픐픑픒픓픖픘픙픚픛픜픝������픞픟픠픡픢픣픤픥픦픧픨픩픪픫픬픭픮픯픰픱픲픳픴픵픶픷������픸픹픺픻픾픿핁핂핃핅핆핇핈핉핊핋핎핐핒핓핔핕핖핗핚핛핝핞핟핡핢핣웩웬웰웸웹웽위윅윈윌윔윕윗윙유육윤율윰윱윳융윷으윽은을읊음읍읏응읒읓읔읕읖읗의읜읠읨읫이익인일읽읾잃임입잇있잉잊잎자작잔잖잗잘잚잠잡잣잤장잦재잭잰잴잼잽잿쟀쟁쟈쟉쟌쟎쟐쟘쟝쟤쟨쟬저적전절젊�".split("");
for(j = 0; j != D[192].length; ++j) if(D[192][j].charCodeAt(0) !== 0xFFFD) { e[D[192][j]] = 49152 + j; d[49152 + j] = D[192][j];}
D[193] = "�����������������������������������������������������������������핤핦핧핪핬핮핯핰핱핲핳핶핷핹핺핻핽핾핿햀햁햂햃햆햊햋������햌햍햎햏햑햒햓햔햕햖햗햘햙햚햛햜햝햞햟햠햡햢햣햤햦햧������햨햩햪햫햬햭햮햯햰햱햲햳햴햵햶햷햸햹햺햻햼햽햾햿헀헁헂헃헄헅헆헇점접젓정젖제젝젠젤젬젭젯젱져젼졀졈졉졌졍졔조족존졸졺좀좁좃종좆좇좋좌좍좔좝좟좡좨좼좽죄죈죌죔죕죗죙죠죡죤죵주죽준줄줅줆줌줍줏중줘줬줴쥐쥑쥔쥘쥠쥡쥣쥬쥰쥴쥼즈즉즌즐즘즙즛증지직진짇질짊짐집짓�".split("");
for(j = 0; j != D[193].length; ++j) if(D[193][j].charCodeAt(0) !== 0xFFFD) { e[D[193][j]] = 49408 + j; d[49408 + j] = D[193][j];}
D[194] = "�����������������������������������������������������������������헊헋헍헎헏헑헓헔헕헖헗헚헜헞헟헠헡헢헣헦헧헩헪헫헭헮������헯헰헱헲헳헶헸헺헻헼헽헾헿혂혃혅혆혇혉혊혋혌혍혎혏혒������혖혗혘혙혚혛혝혞혟혡혢혣혥혦혧혨혩혪혫혬혮혯혰혱혲혳혴혵혶혷혺혻징짖짙짚짜짝짠짢짤짧짬짭짯짰짱째짹짼쨀쨈쨉쨋쨌쨍쨔쨘쨩쩌쩍쩐쩔쩜쩝쩟쩠쩡쩨쩽쪄쪘쪼쪽쫀쫄쫌쫍쫏쫑쫓쫘쫙쫠쫬쫴쬈쬐쬔쬘쬠쬡쭁쭈쭉쭌쭐쭘쭙쭝쭤쭸쭹쮜쮸쯔쯤쯧쯩찌찍찐찔찜찝찡찢찧차착찬찮찰참찹찻�".split("");
for(j = 0; j != D[194].length; ++j) if(D[194][j].charCodeAt(0) !== 0xFFFD) { e[D[194][j]] = 49664 + j; d[49664 + j] = D[194][j];}
D[195] = "�����������������������������������������������������������������혽혾혿홁홂홃홄홆홇홊홌홎홏홐홒홓홖홗홙홚홛홝홞홟홠홡������홢홣홤홥홦홨홪홫홬홭홮홯홲홳홵홶홷홸홹홺홻홼홽홾홿횀������횁횂횄횆횇횈횉횊횋횎횏횑횒횓횕횖횗횘횙횚횛횜횞횠횢횣횤횥횦횧횩횪찼창찾채책챈챌챔챕챗챘챙챠챤챦챨챰챵처척천철첨첩첫첬청체첵첸첼쳄쳅쳇쳉쳐쳔쳤쳬쳰촁초촉촌촐촘촙촛총촤촨촬촹최쵠쵤쵬쵭쵯쵱쵸춈추축춘출춤춥춧충춰췄췌췐취췬췰췸췹췻췽츄츈츌츔츙츠측츤츨츰츱츳층�".split("");
for(j = 0; j != D[195].length; ++j) if(D[195][j].charCodeAt(0) !== 0xFFFD) { e[D[195][j]] = 49920 + j; d[49920 + j] = D[195][j];}
D[196] = "�����������������������������������������������������������������횫횭횮횯횱횲횳횴횵횶횷횸횺횼횽횾횿훀훁훂훃훆훇훉훊훋������훍훎훏훐훒훓훕훖훘훚훛훜훝훞훟훡훢훣훥훦훧훩훪훫훬훭������훮훯훱훲훳훴훶훷훸훹훺훻훾훿휁휂휃휅휆휇휈휉휊휋휌휍휎휏휐휒휓휔치칙친칟칠칡침칩칫칭카칵칸칼캄캅캇캉캐캑캔캘캠캡캣캤캥캬캭컁커컥컨컫컬컴컵컷컸컹케켁켄켈켐켑켓켕켜켠켤켬켭켯켰켱켸코콕콘콜콤콥콧콩콰콱콴콸쾀쾅쾌쾡쾨쾰쿄쿠쿡쿤쿨쿰쿱쿳쿵쿼퀀퀄퀑퀘퀭퀴퀵퀸퀼�".split("");
for(j = 0; j != D[196].length; ++j) if(D[196][j].charCodeAt(0) !== 0xFFFD) { e[D[196][j]] = 50176 + j; d[50176 + j] = D[196][j];}
D[197] = "�����������������������������������������������������������������휕휖휗휚휛휝휞휟휡휢휣휤휥휦휧휪휬휮휯휰휱휲휳휶휷휹������휺휻휽휾휿흀흁흂흃흅흆흈흊흋흌흍흎흏흒흓흕흚흛흜흝흞������흟흢흤흦흧흨흪흫흭흮흯흱흲흳흵흶흷흸흹흺흻흾흿힀힂힃힄힅힆힇힊힋큄큅큇큉큐큔큘큠크큭큰클큼큽킁키킥킨킬킴킵킷킹타탁탄탈탉탐탑탓탔탕태택탠탤탬탭탯탰탱탸턍터턱턴털턺텀텁텃텄텅테텍텐텔템텝텟텡텨텬텼톄톈토톡톤톨톰톱톳통톺톼퇀퇘퇴퇸툇툉툐투툭툰툴툼툽툿퉁퉈퉜�".split("");
for(j = 0; j != D[197].length; ++j) if(D[197][j].charCodeAt(0) !== 0xFFFD) { e[D[197][j]] = 50432 + j; d[50432 + j] = D[197][j];}
D[198] = "�����������������������������������������������������������������힍힎힏힑힒힓힔힕힖힗힚힜힞힟힠힡힢힣������������������������������������������������������������������������������퉤튀튁튄튈튐튑튕튜튠튤튬튱트특튼튿틀틂틈틉틋틔틘틜틤틥티틱틴틸팀팁팃팅파팍팎판팔팖팜팝팟팠팡팥패팩팬팰팸팹팻팼팽퍄퍅퍼퍽펀펄펌펍펏펐펑페펙펜펠펨펩펫펭펴편펼폄폅폈평폐폘폡폣포폭폰폴폼폽폿퐁�".split("");
for(j = 0; j != D[198].length; ++j) if(D[198][j].charCodeAt(0) !== 0xFFFD) { e[D[198][j]] = 50688 + j; d[50688 + j] = D[198][j];}
D[199] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������퐈퐝푀푄표푠푤푭푯푸푹푼푿풀풂품풉풋풍풔풩퓌퓐퓔퓜퓟퓨퓬퓰퓸퓻퓽프픈플픔픕픗피픽핀필핌핍핏핑하학한할핥함합핫항해핵핸핼햄햅햇했행햐향허헉헌헐헒험헙헛헝헤헥헨헬헴헵헷헹혀혁현혈혐협혓혔형혜혠�".split("");
for(j = 0; j != D[199].length; ++j) if(D[199][j].charCodeAt(0) !== 0xFFFD) { e[D[199][j]] = 50944 + j; d[50944 + j] = D[199][j];}
D[200] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������혤혭호혹혼홀홅홈홉홋홍홑화확환활홧황홰홱홴횃횅회획횐횔횝횟횡효횬횰횹횻후훅훈훌훑훔훗훙훠훤훨훰훵훼훽휀휄휑휘휙휜휠휨휩휫휭휴휵휸휼흄흇흉흐흑흔흖흗흘흙흠흡흣흥흩희흰흴흼흽힁히힉힌힐힘힙힛힝�".split("");
for(j = 0; j != D[200].length; ++j) if(D[200][j].charCodeAt(0) !== 0xFFFD) { e[D[200][j]] = 51200 + j; d[51200 + j] = D[200][j];}
D[202] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������伽佳假價加可呵哥嘉嫁家暇架枷柯歌珂痂稼苛茄街袈訶賈跏軻迦駕刻却各恪慤殼珏脚覺角閣侃刊墾奸姦干幹懇揀杆柬桿澗癎看磵稈竿簡肝艮艱諫間乫喝曷渴碣竭葛褐蝎鞨勘坎堪嵌感憾戡敢柑橄減甘疳監瞰紺邯鑑鑒龕�".split("");
for(j = 0; j != D[202].length; ++j) if(D[202][j].charCodeAt(0) !== 0xFFFD) { e[D[202][j]] = 51712 + j; d[51712 + j] = D[202][j];}
D[203] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������匣岬甲胛鉀閘剛堈姜岡崗康强彊慷江畺疆糠絳綱羌腔舡薑襁講鋼降鱇介价個凱塏愷愾慨改槪漑疥皆盖箇芥蓋豈鎧開喀客坑更粳羹醵倨去居巨拒据據擧渠炬祛距踞車遽鉅鋸乾件健巾建愆楗腱虔蹇鍵騫乞傑杰桀儉劍劒檢�".split("");
for(j = 0; j != D[203].length; ++j) if(D[203][j].charCodeAt(0) !== 0xFFFD) { e[D[203][j]] = 51968 + j; d[51968 + j] = D[203][j];}
D[204] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������瞼鈐黔劫怯迲偈憩揭擊格檄激膈覡隔堅牽犬甄絹繭肩見譴遣鵑抉決潔結缺訣兼慊箝謙鉗鎌京俓倞傾儆勁勍卿坰境庚徑慶憬擎敬景暻更梗涇炅烱璟璥瓊痙硬磬竟競絅經耕耿脛莖警輕逕鏡頃頸驚鯨係啓堺契季屆悸戒桂械�".split("");
for(j = 0; j != D[204].length; ++j) if(D[204][j].charCodeAt(0) !== 0xFFFD) { e[D[204][j]] = 52224 + j; d[52224 + j] = D[204][j];}
D[205] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������棨溪界癸磎稽系繫繼計誡谿階鷄古叩告呱固姑孤尻庫拷攷故敲暠枯槁沽痼皐睾稿羔考股膏苦苽菰藁蠱袴誥賈辜錮雇顧高鼓哭斛曲梏穀谷鵠困坤崑昆梱棍滾琨袞鯤汨滑骨供公共功孔工恐恭拱控攻珙空蚣貢鞏串寡戈果瓜�".split("");
for(j = 0; j != D[205].length; ++j) if(D[205][j].charCodeAt(0) !== 0xFFFD) { e[D[205][j]] = 52480 + j; d[52480 + j] = D[205][j];}
D[206] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������科菓誇課跨過鍋顆廓槨藿郭串冠官寬慣棺款灌琯瓘管罐菅觀貫關館刮恝括适侊光匡壙廣曠洸炚狂珖筐胱鑛卦掛罫乖傀塊壞怪愧拐槐魁宏紘肱轟交僑咬喬嬌嶠巧攪敎校橋狡皎矯絞翹膠蕎蛟較轎郊餃驕鮫丘久九仇俱具勾�".split("");
for(j = 0; j != D[206].length; ++j) if(D[206][j].charCodeAt(0) !== 0xFFFD) { e[D[206][j]] = 52736 + j; d[52736 + j] = D[206][j];}
D[207] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������區口句咎嘔坵垢寇嶇廐懼拘救枸柩構歐毆毬求溝灸狗玖球瞿矩究絿耉臼舅舊苟衢謳購軀逑邱鉤銶駒驅鳩鷗龜國局菊鞠鞫麴君窘群裙軍郡堀屈掘窟宮弓穹窮芎躬倦券勸卷圈拳捲權淃眷厥獗蕨蹶闕机櫃潰詭軌饋句晷歸貴�".split("");
for(j = 0; j != D[207].length; ++j) if(D[207][j].charCodeAt(0) !== 0xFFFD) { e[D[207][j]] = 52992 + j; d[52992 + j] = D[207][j];}
D[208] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������鬼龜叫圭奎揆槻珪硅窺竅糾葵規赳逵閨勻均畇筠菌鈞龜橘克剋劇戟棘極隙僅劤勤懃斤根槿瑾筋芹菫覲謹近饉契今妗擒昑檎琴禁禽芩衾衿襟金錦伋及急扱汲級給亘兢矜肯企伎其冀嗜器圻基埼夔奇妓寄岐崎己幾忌技旗旣�".split("");
for(j = 0; j != D[208].length; ++j) if(D[208][j].charCodeAt(0) !== 0xFFFD) { e[D[208][j]] = 53248 + j; d[53248 + j] = D[208][j];}
D[209] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������朞期杞棋棄機欺氣汽沂淇玘琦琪璂璣畸畿碁磯祁祇祈祺箕紀綺羈耆耭肌記譏豈起錡錤飢饑騎騏驥麒緊佶吉拮桔金喫儺喇奈娜懦懶拏拿癩羅蘿螺裸邏那樂洛烙珞落諾酪駱亂卵暖欄煖爛蘭難鸞捏捺南嵐枏楠湳濫男藍襤拉�".split("");
for(j = 0; j != D[209].length; ++j) if(D[209][j].charCodeAt(0) !== 0xFFFD) { e[D[209][j]] = 53504 + j; d[53504 + j] = D[209][j];}
D[210] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������納臘蠟衲囊娘廊朗浪狼郎乃來內奈柰耐冷女年撚秊念恬拈捻寧寗努勞奴弩怒擄櫓爐瑙盧老蘆虜路露駑魯鷺碌祿綠菉錄鹿論壟弄濃籠聾膿農惱牢磊腦賂雷尿壘屢樓淚漏累縷陋嫩訥杻紐勒肋凜凌稜綾能菱陵尼泥匿溺多茶�".split("");
for(j = 0; j != D[210].length; ++j) if(D[210][j].charCodeAt(0) !== 0xFFFD) { e[D[210][j]] = 53760 + j; d[53760 + j] = D[210][j];}
D[211] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������丹亶但單團壇彖斷旦檀段湍短端簞緞蛋袒鄲鍛撻澾獺疸達啖坍憺擔曇淡湛潭澹痰聃膽蕁覃談譚錟沓畓答踏遝唐堂塘幢戇撞棠當糖螳黨代垈坮大對岱帶待戴擡玳臺袋貸隊黛宅德悳倒刀到圖堵塗導屠島嶋度徒悼挑掉搗桃�".split("");
for(j = 0; j != D[211].length; ++j) if(D[211][j].charCodeAt(0) !== 0xFFFD) { e[D[211][j]] = 54016 + j; d[54016 + j] = D[211][j];}
D[212] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������棹櫂淘渡滔濤燾盜睹禱稻萄覩賭跳蹈逃途道都鍍陶韜毒瀆牘犢獨督禿篤纛讀墩惇敦旽暾沌焞燉豚頓乭突仝冬凍動同憧東桐棟洞潼疼瞳童胴董銅兜斗杜枓痘竇荳讀豆逗頭屯臀芚遁遯鈍得嶝橙燈登等藤謄鄧騰喇懶拏癩羅�".split("");
for(j = 0; j != D[212].length; ++j) if(D[212][j].charCodeAt(0) !== 0xFFFD) { e[D[212][j]] = 54272 + j; d[54272 + j] = D[212][j];}
D[213] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������蘿螺裸邏樂洛烙珞絡落諾酪駱丹亂卵欄欒瀾爛蘭鸞剌辣嵐擥攬欖濫籃纜藍襤覽拉臘蠟廊朗浪狼琅瑯螂郞來崍徠萊冷掠略亮倆兩凉梁樑粮粱糧良諒輛量侶儷勵呂廬慮戾旅櫚濾礪藜蠣閭驢驪麗黎力曆歷瀝礫轢靂憐戀攣漣�".split("");
for(j = 0; j != D[213].length; ++j) if(D[213][j].charCodeAt(0) !== 0xFFFD) { e[D[213][j]] = 54528 + j; d[54528 + j] = D[213][j];}
D[214] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������煉璉練聯蓮輦連鍊冽列劣洌烈裂廉斂殮濂簾獵令伶囹寧岺嶺怜玲笭羚翎聆逞鈴零靈領齡例澧禮醴隷勞怒撈擄櫓潞瀘爐盧老蘆虜路輅露魯鷺鹵碌祿綠菉錄鹿麓論壟弄朧瀧瓏籠聾儡瀨牢磊賂賚賴雷了僚寮廖料燎療瞭聊蓼�".split("");
for(j = 0; j != D[214].length; ++j) if(D[214][j].charCodeAt(0) !== 0xFFFD) { e[D[214][j]] = 54784 + j; d[54784 + j] = D[214][j];}
D[215] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������遼鬧龍壘婁屢樓淚漏瘻累縷蔞褸鏤陋劉旒柳榴流溜瀏琉瑠留瘤硫謬類六戮陸侖倫崙淪綸輪律慄栗率隆勒肋凜凌楞稜綾菱陵俚利厘吏唎履悧李梨浬犁狸理璃異痢籬罹羸莉裏裡里釐離鯉吝潾燐璘藺躪隣鱗麟林淋琳臨霖砬�".split("");
for(j = 0; j != D[215].length; ++j) if(D[215][j].charCodeAt(0) !== 0xFFFD) { e[D[215][j]] = 55040 + j; d[55040 + j] = D[215][j];}
D[216] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������立笠粒摩瑪痲碼磨馬魔麻寞幕漠膜莫邈万卍娩巒彎慢挽晩曼滿漫灣瞞萬蔓蠻輓饅鰻唜抹末沫茉襪靺亡妄忘忙望網罔芒茫莽輞邙埋妹媒寐昧枚梅每煤罵買賣邁魅脈貊陌驀麥孟氓猛盲盟萌冪覓免冕勉棉沔眄眠綿緬面麵滅�".split("");
for(j = 0; j != D[216].length; ++j) if(D[216][j].charCodeAt(0) !== 0xFFFD) { e[D[216][j]] = 55296 + j; d[55296 + j] = D[216][j];}
D[217] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������蔑冥名命明暝椧溟皿瞑茗蓂螟酩銘鳴袂侮冒募姆帽慕摸摹暮某模母毛牟牡瑁眸矛耗芼茅謀謨貌木沐牧目睦穆鶩歿沒夢朦蒙卯墓妙廟描昴杳渺猫竗苗錨務巫憮懋戊拇撫无楙武毋無珷畝繆舞茂蕪誣貿霧鵡墨默們刎吻問文�".split("");
for(j = 0; j != D[217].length; ++j) if(D[217][j].charCodeAt(0) !== 0xFFFD) { e[D[217][j]] = 55552 + j; d[55552 + j] = D[217][j];}
D[218] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������汶紊紋聞蚊門雯勿沕物味媚尾嵋彌微未梶楣渼湄眉米美薇謎迷靡黴岷悶愍憫敏旻旼民泯玟珉緡閔密蜜謐剝博拍搏撲朴樸泊珀璞箔粕縛膊舶薄迫雹駁伴半反叛拌搬攀斑槃泮潘班畔瘢盤盼磐磻礬絆般蟠返頒飯勃拔撥渤潑�".split("");
for(j = 0; j != D[218].length; ++j) if(D[218][j].charCodeAt(0) !== 0xFFFD) { e[D[218][j]] = 55808 + j; d[55808 + j] = D[218][j];}
D[219] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������發跋醱鉢髮魃倣傍坊妨尨幇彷房放方旁昉枋榜滂磅紡肪膀舫芳蒡蚌訪謗邦防龐倍俳北培徘拜排杯湃焙盃背胚裴裵褙賠輩配陪伯佰帛柏栢白百魄幡樊煩燔番磻繁蕃藩飜伐筏罰閥凡帆梵氾汎泛犯範范法琺僻劈壁擘檗璧癖�".split("");
for(j = 0; j != D[219].length; ++j) if(D[219][j].charCodeAt(0) !== 0xFFFD) { e[D[219][j]] = 56064 + j; d[56064 + j] = D[219][j];}
D[220] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������碧蘗闢霹便卞弁變辨辯邊別瞥鱉鼈丙倂兵屛幷昞昺柄棅炳甁病秉竝輧餠騈保堡報寶普步洑湺潽珤甫菩補褓譜輔伏僕匐卜宓復服福腹茯蔔複覆輹輻馥鰒本乶俸奉封峯峰捧棒烽熢琫縫蓬蜂逢鋒鳳不付俯傅剖副否咐埠夫婦�".split("");
for(j = 0; j != D[220].length; ++j) if(D[220][j].charCodeAt(0) !== 0xFFFD) { e[D[220][j]] = 56320 + j; d[56320 + j] = D[220][j];}
D[221] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������孚孵富府復扶敷斧浮溥父符簿缶腐腑膚艀芙莩訃負賦賻赴趺部釜阜附駙鳧北分吩噴墳奔奮忿憤扮昐汾焚盆粉糞紛芬賁雰不佛弗彿拂崩朋棚硼繃鵬丕備匕匪卑妃婢庇悲憊扉批斐枇榧比毖毗毘沸泌琵痺砒碑秕秘粃緋翡肥�".split("");
for(j = 0; j != D[221].length; ++j) if(D[221][j].charCodeAt(0) !== 0xFFFD) { e[D[221][j]] = 56576 + j; d[56576 + j] = D[221][j];}
D[222] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������脾臂菲蜚裨誹譬費鄙非飛鼻嚬嬪彬斌檳殯浜濱瀕牝玭貧賓頻憑氷聘騁乍事些仕伺似使俟僿史司唆嗣四士奢娑寫寺射巳師徙思捨斜斯柶査梭死沙泗渣瀉獅砂社祀祠私篩紗絲肆舍莎蓑蛇裟詐詞謝賜赦辭邪飼駟麝削數朔索�".split("");
for(j = 0; j != D[222].length; ++j) if(D[222][j].charCodeAt(0) !== 0xFFFD) { e[D[222][j]] = 56832 + j; d[56832 + j] = D[222][j];}
D[223] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������傘刪山散汕珊産疝算蒜酸霰乷撒殺煞薩三參杉森渗芟蔘衫揷澁鈒颯上傷像償商喪嘗孀尙峠常床庠廂想桑橡湘爽牀狀相祥箱翔裳觴詳象賞霜塞璽賽嗇塞穡索色牲生甥省笙墅壻嶼序庶徐恕抒捿敍暑曙書栖棲犀瑞筮絮緖署�".split("");
for(j = 0; j != D[223].length; ++j) if(D[223][j].charCodeAt(0) !== 0xFFFD) { e[D[223][j]] = 57088 + j; d[57088 + j] = D[223][j];}
D[224] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������胥舒薯西誓逝鋤黍鼠夕奭席惜昔晳析汐淅潟石碩蓆釋錫仙僊先善嬋宣扇敾旋渲煽琁瑄璇璿癬禪線繕羨腺膳船蘚蟬詵跣選銑鐥饍鮮卨屑楔泄洩渫舌薛褻設說雪齧剡暹殲纖蟾贍閃陝攝涉燮葉城姓宬性惺成星晟猩珹盛省筬�".split("");
for(j = 0; j != D[224].length; ++j) if(D[224][j].charCodeAt(0) !== 0xFFFD) { e[D[224][j]] = 57344 + j; d[57344 + j] = D[224][j];}
D[225] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������聖聲腥誠醒世勢歲洗稅笹細說貰召嘯塑宵小少巢所掃搔昭梳沼消溯瀟炤燒甦疏疎瘙笑篠簫素紹蔬蕭蘇訴逍遡邵銷韶騷俗屬束涑粟續謖贖速孫巽損蓀遜飡率宋悚松淞訟誦送頌刷殺灑碎鎖衰釗修受嗽囚垂壽嫂守岫峀帥愁�".split("");
for(j = 0; j != D[225].length; ++j) if(D[225][j].charCodeAt(0) !== 0xFFFD) { e[D[225][j]] = 57600 + j; d[57600 + j] = D[225][j];}
D[226] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������戍手授搜收數樹殊水洙漱燧狩獸琇璲瘦睡秀穗竪粹綏綬繡羞脩茱蒐蓚藪袖誰讐輸遂邃酬銖銹隋隧隨雖需須首髓鬚叔塾夙孰宿淑潚熟琡璹肅菽巡徇循恂旬栒楯橓殉洵淳珣盾瞬筍純脣舜荀蓴蕣詢諄醇錞順馴戌術述鉥崇崧�".split("");
for(j = 0; j != D[226].length; ++j) if(D[226][j].charCodeAt(0) !== 0xFFFD) { e[D[226][j]] = 57856 + j; d[57856 + j] = D[226][j];}
D[227] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������嵩瑟膝蝨濕拾習褶襲丞乘僧勝升承昇繩蠅陞侍匙嘶始媤尸屎屍市弑恃施是時枾柴猜矢示翅蒔蓍視試詩諡豕豺埴寔式息拭植殖湜熄篒蝕識軾食飾伸侁信呻娠宸愼新晨燼申神紳腎臣莘薪藎蜃訊身辛辰迅失室實悉審尋心沁�".split("");
for(j = 0; j != D[227].length; ++j) if(D[227][j].charCodeAt(0) !== 0xFFFD) { e[D[227][j]] = 58112 + j; d[58112 + j] = D[227][j];}
D[228] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������沈深瀋甚芯諶什十拾雙氏亞俄兒啞娥峨我牙芽莪蛾衙訝阿雅餓鴉鵝堊岳嶽幄惡愕握樂渥鄂鍔顎鰐齷安岸按晏案眼雁鞍顔鮟斡謁軋閼唵岩巖庵暗癌菴闇壓押狎鴨仰央怏昻殃秧鴦厓哀埃崖愛曖涯碍艾隘靄厄扼掖液縊腋額�".split("");
for(j = 0; j != D[228].length; ++j) if(D[228][j].charCodeAt(0) !== 0xFFFD) { e[D[228][j]] = 58368 + j; d[58368 + j] = D[228][j];}
D[229] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������櫻罌鶯鸚也倻冶夜惹揶椰爺耶若野弱掠略約若葯蒻藥躍亮佯兩凉壤孃恙揚攘敭暘梁楊樣洋瀁煬痒瘍禳穰糧羊良襄諒讓釀陽量養圄御於漁瘀禦語馭魚齬億憶抑檍臆偃堰彦焉言諺孼蘖俺儼嚴奄掩淹嶪業円予余勵呂女如廬�".split("");
for(j = 0; j != D[229].length; ++j) if(D[229][j].charCodeAt(0) !== 0xFFFD) { e[D[229][j]] = 58624 + j; d[58624 + j] = D[229][j];}
D[230] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������旅歟汝濾璵礖礪與艅茹輿轝閭餘驪麗黎亦力域役易曆歷疫繹譯轢逆驛嚥堧姸娟宴年延憐戀捐挻撚椽沇沿涎涓淵演漣烟然煙煉燃燕璉硏硯秊筵緣練縯聯衍軟輦蓮連鉛鍊鳶列劣咽悅涅烈熱裂說閱厭廉念捻染殮炎焰琰艶苒�".split("");
for(j = 0; j != D[230].length; ++j) if(D[230][j].charCodeAt(0) !== 0xFFFD) { e[D[230][j]] = 58880 + j; d[58880 + j] = D[230][j];}
D[231] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������簾閻髥鹽曄獵燁葉令囹塋寧嶺嶸影怜映暎楹榮永泳渶潁濚瀛瀯煐營獰玲瑛瑩瓔盈穎纓羚聆英詠迎鈴鍈零霙靈領乂倪例刈叡曳汭濊猊睿穢芮藝蘂禮裔詣譽豫醴銳隸霓預五伍俉傲午吾吳嗚塢墺奧娛寤悟惡懊敖旿晤梧汚澳�".split("");
for(j = 0; j != D[231].length; ++j) if(D[231][j].charCodeAt(0) !== 0xFFFD) { e[D[231][j]] = 59136 + j; d[59136 + j] = D[231][j];}
D[232] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������烏熬獒筽蜈誤鰲鼇屋沃獄玉鈺溫瑥瘟穩縕蘊兀壅擁瓮甕癰翁邕雍饔渦瓦窩窪臥蛙蝸訛婉完宛梡椀浣玩琓琬碗緩翫脘腕莞豌阮頑曰往旺枉汪王倭娃歪矮外嵬巍猥畏了僚僥凹堯夭妖姚寥寮尿嶢拗搖撓擾料曜樂橈燎燿瑤療�".split("");
for(j = 0; j != D[232].length; ++j) if(D[232][j].charCodeAt(0) !== 0xFFFD) { e[D[232][j]] = 59392 + j; d[59392 + j] = D[232][j];}
D[233] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������窈窯繇繞耀腰蓼蟯要謠遙遼邀饒慾欲浴縟褥辱俑傭冗勇埇墉容庸慂榕涌湧溶熔瑢用甬聳茸蓉踊鎔鏞龍于佑偶優又友右宇寓尤愚憂旴牛玗瑀盂祐禑禹紆羽芋藕虞迂遇郵釪隅雨雩勖彧旭昱栯煜稶郁頊云暈橒殞澐熉耘芸蕓�".split("");
for(j = 0; j != D[233].length; ++j) if(D[233][j].charCodeAt(0) !== 0xFFFD) { e[D[233][j]] = 59648 + j; d[59648 + j] = D[233][j];}
D[234] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������運隕雲韻蔚鬱亐熊雄元原員圓園垣媛嫄寃怨愿援沅洹湲源爰猿瑗苑袁轅遠阮院願鴛月越鉞位偉僞危圍委威尉慰暐渭爲瑋緯胃萎葦蔿蝟衛褘謂違韋魏乳侑儒兪劉唯喩孺宥幼幽庾悠惟愈愉揄攸有杻柔柚柳楡楢油洧流游溜�".split("");
for(j = 0; j != D[234].length; ++j) if(D[234][j].charCodeAt(0) !== 0xFFFD) { e[D[234][j]] = 59904 + j; d[59904 + j] = D[234][j];}
D[235] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������濡猶猷琉瑜由留癒硫紐維臾萸裕誘諛諭踰蹂遊逾遺酉釉鍮類六堉戮毓肉育陸倫允奫尹崙淪潤玧胤贇輪鈗閏律慄栗率聿戎瀜絨融隆垠恩慇殷誾銀隱乙吟淫蔭陰音飮揖泣邑凝應膺鷹依倚儀宜意懿擬椅毅疑矣義艤薏蟻衣誼�".split("");
for(j = 0; j != D[235].length; ++j) if(D[235][j].charCodeAt(0) !== 0xFFFD) { e[D[235][j]] = 60160 + j; d[60160 + j] = D[235][j];}
D[236] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������議醫二以伊利吏夷姨履已弛彛怡易李梨泥爾珥理異痍痢移罹而耳肄苡荑裏裡貽貳邇里離飴餌匿溺瀷益翊翌翼謚人仁刃印吝咽因姻寅引忍湮燐璘絪茵藺蚓認隣靭靷鱗麟一佚佾壹日溢逸鎰馹任壬妊姙恁林淋稔臨荏賃入卄�".split("");
for(j = 0; j != D[236].length; ++j) if(D[236][j].charCodeAt(0) !== 0xFFFD) { e[D[236][j]] = 60416 + j; d[60416 + j] = D[236][j];}
D[237] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������立笠粒仍剩孕芿仔刺咨姉姿子字孜恣慈滋炙煮玆瓷疵磁紫者自茨蔗藉諮資雌作勺嚼斫昨灼炸爵綽芍酌雀鵲孱棧殘潺盞岑暫潛箴簪蠶雜丈仗匠場墻壯奬將帳庄張掌暲杖樟檣欌漿牆狀獐璋章粧腸臟臧莊葬蔣薔藏裝贓醬長�".split("");
for(j = 0; j != D[237].length; ++j) if(D[237][j].charCodeAt(0) !== 0xFFFD) { e[D[237][j]] = 60672 + j; d[60672 + j] = D[237][j];}
D[238] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������障再哉在宰才材栽梓渽滓災縡裁財載齋齎爭箏諍錚佇低儲咀姐底抵杵楮樗沮渚狙猪疽箸紵苧菹著藷詛貯躇這邸雎齟勣吊嫡寂摘敵滴狄炙的積笛籍績翟荻謫賊赤跡蹟迪迹適鏑佃佺傳全典前剪塡塼奠專展廛悛戰栓殿氈澱�".split("");
for(j = 0; j != D[238].length; ++j) if(D[238][j].charCodeAt(0) !== 0xFFFD) { e[D[238][j]] = 60928 + j; d[60928 + j] = D[238][j];}
D[239] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������煎琠田甸畑癲筌箋箭篆纏詮輾轉鈿銓錢鐫電顚顫餞切截折浙癤竊節絶占岾店漸点粘霑鮎點接摺蝶丁井亭停偵呈姃定幀庭廷征情挺政整旌晶晸柾楨檉正汀淀淨渟湞瀞炡玎珽町睛碇禎程穽精綎艇訂諪貞鄭酊釘鉦鋌錠霆靖�".split("");
for(j = 0; j != D[239].length; ++j) if(D[239][j].charCodeAt(0) !== 0xFFFD) { e[D[239][j]] = 61184 + j; d[61184 + j] = D[239][j];}
D[240] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������靜頂鼎制劑啼堤帝弟悌提梯濟祭第臍薺製諸蹄醍除際霽題齊俎兆凋助嘲弔彫措操早晁曺曹朝條棗槽漕潮照燥爪璪眺祖祚租稠窕粗糟組繰肇藻蚤詔調趙躁造遭釣阻雕鳥族簇足鏃存尊卒拙猝倧宗從悰慫棕淙琮種終綜縱腫�".split("");
for(j = 0; j != D[240].length; ++j) if(D[240][j].charCodeAt(0) !== 0xFFFD) { e[D[240][j]] = 61440 + j; d[61440 + j] = D[240][j];}
D[241] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������踪踵鍾鐘佐坐左座挫罪主住侏做姝胄呪周嗾奏宙州廚晝朱柱株注洲湊澍炷珠疇籌紂紬綢舟蛛註誅走躊輳週酎酒鑄駐竹粥俊儁准埈寯峻晙樽浚準濬焌畯竣蠢逡遵雋駿茁中仲衆重卽櫛楫汁葺增憎曾拯烝甑症繒蒸證贈之只�".split("");
for(j = 0; j != D[241].length; ++j) if(D[241][j].charCodeAt(0) !== 0xFFFD) { e[D[241][j]] = 61696 + j; d[61696 + j] = D[241][j];}
D[242] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������咫地址志持指摯支旨智枝枳止池沚漬知砥祉祗紙肢脂至芝芷蜘誌識贄趾遲直稙稷織職唇嗔塵振搢晉晋桭榛殄津溱珍瑨璡畛疹盡眞瞋秦縉縝臻蔯袗診賑軫辰進鎭陣陳震侄叱姪嫉帙桎瓆疾秩窒膣蛭質跌迭斟朕什執潗緝輯�".split("");
for(j = 0; j != D[242].length; ++j) if(D[242][j].charCodeAt(0) !== 0xFFFD) { e[D[242][j]] = 61952 + j; d[61952 + j] = D[242][j];}
D[243] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������鏶集徵懲澄且侘借叉嗟嵯差次此磋箚茶蹉車遮捉搾着窄錯鑿齪撰澯燦璨瓚竄簒纂粲纘讚贊鑽餐饌刹察擦札紮僭參塹慘慙懺斬站讒讖倉倡創唱娼廠彰愴敞昌昶暢槍滄漲猖瘡窓脹艙菖蒼債埰寀寨彩採砦綵菜蔡采釵冊柵策�".split("");
for(j = 0; j != D[243].length; ++j) if(D[243][j].charCodeAt(0) !== 0xFFFD) { e[D[243][j]] = 62208 + j; d[62208 + j] = D[243][j];}
D[244] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������責凄妻悽處倜刺剔尺慽戚拓擲斥滌瘠脊蹠陟隻仟千喘天川擅泉淺玔穿舛薦賤踐遷釧闡阡韆凸哲喆徹撤澈綴輟轍鐵僉尖沾添甛瞻簽籤詹諂堞妾帖捷牒疊睫諜貼輒廳晴淸聽菁請靑鯖切剃替涕滯締諦逮遞體初剿哨憔抄招梢�".split("");
for(j = 0; j != D[244].length; ++j) if(D[244][j].charCodeAt(0) !== 0xFFFD) { e[D[244][j]] = 62464 + j; d[62464 + j] = D[244][j];}
D[245] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������椒楚樵炒焦硝礁礎秒稍肖艸苕草蕉貂超酢醋醮促囑燭矗蜀觸寸忖村邨叢塚寵悤憁摠總聰蔥銃撮催崔最墜抽推椎楸樞湫皺秋芻萩諏趨追鄒酋醜錐錘鎚雛騶鰍丑畜祝竺筑築縮蓄蹙蹴軸逐春椿瑃出朮黜充忠沖蟲衝衷悴膵萃�".split("");
for(j = 0; j != D[245].length; ++j) if(D[245][j].charCodeAt(0) !== 0xFFFD) { e[D[245][j]] = 62720 + j; d[62720 + j] = D[245][j];}
D[246] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������贅取吹嘴娶就炊翠聚脆臭趣醉驟鷲側仄厠惻測層侈値嗤峙幟恥梔治淄熾痔痴癡稚穉緇緻置致蚩輜雉馳齒則勅飭親七柒漆侵寢枕沈浸琛砧針鍼蟄秤稱快他咤唾墮妥惰打拖朶楕舵陀馱駝倬卓啄坼度托拓擢晫柝濁濯琢琸託�".split("");
for(j = 0; j != D[246].length; ++j) if(D[246][j].charCodeAt(0) !== 0xFFFD) { e[D[246][j]] = 62976 + j; d[62976 + j] = D[246][j];}
D[247] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������鐸呑嘆坦彈憚歎灘炭綻誕奪脫探眈耽貪塔搭榻宕帑湯糖蕩兌台太怠態殆汰泰笞胎苔跆邰颱宅擇澤撑攄兎吐土討慟桶洞痛筒統通堆槌腿褪退頹偸套妬投透鬪慝特闖坡婆巴把播擺杷波派爬琶破罷芭跛頗判坂板版瓣販辦鈑�".split("");
for(j = 0; j != D[247].length; ++j) if(D[247][j].charCodeAt(0) !== 0xFFFD) { e[D[247][j]] = 63232 + j; d[63232 + j] = D[247][j];}
D[248] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������阪八叭捌佩唄悖敗沛浿牌狽稗覇貝彭澎烹膨愎便偏扁片篇編翩遍鞭騙貶坪平枰萍評吠嬖幣廢弊斃肺蔽閉陛佈包匍匏咆哺圃布怖抛抱捕暴泡浦疱砲胞脯苞葡蒲袍褒逋鋪飽鮑幅暴曝瀑爆輻俵剽彪慓杓標漂瓢票表豹飇飄驃�".split("");
for(j = 0; j != D[248].length; ++j) if(D[248][j].charCodeAt(0) !== 0xFFFD) { e[D[248][j]] = 63488 + j; d[63488 + j] = D[248][j];}
D[249] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������品稟楓諷豊風馮彼披疲皮被避陂匹弼必泌珌畢疋筆苾馝乏逼下何厦夏廈昰河瑕荷蝦賀遐霞鰕壑學虐謔鶴寒恨悍旱汗漢澣瀚罕翰閑閒限韓割轄函含咸啣喊檻涵緘艦銜陷鹹合哈盒蛤閤闔陜亢伉姮嫦巷恒抗杭桁沆港缸肛航�".split("");
for(j = 0; j != D[249].length; ++j) if(D[249][j].charCodeAt(0) !== 0xFFFD) { e[D[249][j]] = 63744 + j; d[63744 + j] = D[249][j];}
D[250] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������行降項亥偕咳垓奚孩害懈楷海瀣蟹解該諧邂駭骸劾核倖幸杏荇行享向嚮珦鄕響餉饗香噓墟虛許憲櫶獻軒歇險驗奕爀赫革俔峴弦懸晛泫炫玄玹現眩睍絃絢縣舷衒見賢鉉顯孑穴血頁嫌俠協夾峽挾浹狹脅脇莢鋏頰亨兄刑型�".split("");
for(j = 0; j != D[250].length; ++j) if(D[250][j].charCodeAt(0) !== 0xFFFD) { e[D[250][j]] = 64000 + j; d[64000 + j] = D[250][j];}
D[251] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������形泂滎瀅灐炯熒珩瑩荊螢衡逈邢鎣馨兮彗惠慧暳蕙蹊醯鞋乎互呼壕壺好岵弧戶扈昊晧毫浩淏湖滸澔濠濩灝狐琥瑚瓠皓祜糊縞胡芦葫蒿虎號蝴護豪鎬頀顥惑或酷婚昏混渾琿魂忽惚笏哄弘汞泓洪烘紅虹訌鴻化和嬅樺火畵�".split("");
for(j = 0; j != D[251].length; ++j) if(D[251][j].charCodeAt(0) !== 0xFFFD) { e[D[251][j]] = 64256 + j; d[64256 + j] = D[251][j];}
D[252] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������禍禾花華話譁貨靴廓擴攫確碻穫丸喚奐宦幻患換歡晥桓渙煥環紈還驩鰥活滑猾豁闊凰幌徨恍惶愰慌晃晄榥況湟滉潢煌璜皇篁簧荒蝗遑隍黃匯回廻徊恢悔懷晦會檜淮澮灰獪繪膾茴蛔誨賄劃獲宖橫鐄哮嚆孝效斅曉梟涍淆�".split("");
for(j = 0; j != D[252].length; ++j) if(D[252][j].charCodeAt(0) !== 0xFFFD) { e[D[252][j]] = 64512 + j; d[64512 + j] = D[252][j];}
D[253] = "�����������������������������������������������������������������������������������������������������������������������������������������������������������������爻肴酵驍侯候厚后吼喉嗅帿後朽煦珝逅勛勳塤壎焄熏燻薰訓暈薨喧暄煊萱卉喙毁彙徽揮暉煇諱輝麾休携烋畦虧恤譎鷸兇凶匈洶胸黑昕欣炘痕吃屹紇訖欠欽歆吸恰洽翕興僖凞喜噫囍姬嬉希憙憘戱晞曦熙熹熺犧禧稀羲詰�".split("");
for(j = 0; j != D[253].length; ++j) if(D[253][j].charCodeAt(0) !== 0xFFFD) { e[D[253][j]] = 64768 + j; d[64768 + j] = D[253][j];}
return {"enc": e, "dec": d }; })();
cptable[950] = (function(){ var d = [], e = {}, D = [], j;
D[0] = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[0].length; ++j) if(D[0][j].charCodeAt(0) !== 0xFFFD) { e[D[0][j]] = 0 + j; d[0 + j] = D[0][j];}
D[161] = "���������������������������������������������������������������� ,、。.‧;:?!︰…‥﹐﹑﹒·﹔﹕﹖﹗|–︱—︳╴︴﹏()︵︶{}︷︸〔〕︹︺【】︻︼《》︽︾〈〉︿﹀「」﹁﹂『』﹃﹄﹙﹚����������������������������������﹛﹜﹝﹞‘’“”〝〞‵′#&*※§〃○●△▲◎☆★◇◆□■▽▼㊣℅¯ ̄_ˍ﹉﹊﹍﹎﹋﹌﹟﹠﹡+-×÷±√<>=≦≧≠∞≒≡﹢﹣﹤﹥﹦~∩∪⊥∠∟⊿㏒㏑∫∮∵∴♀♂⊕⊙↑↓←→↖↗↙↘∥∣/�".split("");
for(j = 0; j != D[161].length; ++j) if(D[161][j].charCodeAt(0) !== 0xFFFD) { e[D[161][j]] = 41216 + j; d[41216 + j] = D[161][j];}
D[162] = "����������������������������������������������������������������\∕﹨$¥〒¢£%@℃℉﹩﹪﹫㏕㎜㎝㎞㏎㎡㎎㎏㏄°兙兛兞兝兡兣嗧瓩糎▁▂▃▄▅▆▇█▏▎▍▌▋▊▉┼┴┬┤├▔─│▕┌┐└┘╭����������������������������������╮╰╯═╞╪╡◢◣◥◤╱╲╳0123456789ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ〡〢〣〤〥〦〧〨〩十卄卅ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuv�".split("");
for(j = 0; j != D[162].length; ++j) if(D[162][j].charCodeAt(0) !== 0xFFFD) { e[D[162][j]] = 41472 + j; d[41472 + j] = D[162][j];}
D[163] = "����������������������������������������������������������������wxyzΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩαβγδεζηθικλμνξοπρστυφχψωㄅㄆㄇㄈㄉㄊㄋㄌㄍㄎㄏ����������������������������������ㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙㄚㄛㄜㄝㄞㄟㄠㄡㄢㄣㄤㄥㄦㄧㄨㄩ˙ˉˊˇˋ���������������������������������€������������������������������".split("");
for(j = 0; j != D[163].length; ++j) if(D[163][j].charCodeAt(0) !== 0xFFFD) { e[D[163][j]] = 41728 + j; d[41728 + j] = D[163][j];}
D[164] = "����������������������������������������������������������������一乙丁七乃九了二人儿入八几刀刁力匕十卜又三下丈上丫丸凡久么也乞于亡兀刃勺千叉口土士夕大女子孑孓寸小尢尸山川工己已巳巾干廾弋弓才����������������������������������丑丐不中丰丹之尹予云井互五亢仁什仃仆仇仍今介仄元允內六兮公冗凶分切刈勻勾勿化匹午升卅卞厄友及反壬天夫太夭孔少尤尺屯巴幻廿弔引心戈戶手扎支文斗斤方日曰月木欠止歹毋比毛氏水火爪父爻片牙牛犬王丙�".split("");
for(j = 0; j != D[164].length; ++j) if(D[164][j].charCodeAt(0) !== 0xFFFD) { e[D[164][j]] = 41984 + j; d[41984 + j] = D[164][j];}
D[165] = "����������������������������������������������������������������世丕且丘主乍乏乎以付仔仕他仗代令仙仞充兄冉冊冬凹出凸刊加功包匆北匝仟半卉卡占卯卮去可古右召叮叩叨叼司叵叫另只史叱台句叭叻四囚外����������������������������������央失奴奶孕它尼巨巧左市布平幼弁弘弗必戊打扔扒扑斥旦朮本未末札正母民氐永汁汀氾犯玄玉瓜瓦甘生用甩田由甲申疋白皮皿目矛矢石示禾穴立丞丟乒乓乩亙交亦亥仿伉伙伊伕伍伐休伏仲件任仰仳份企伋光兇兆先全�".split("");
for(j = 0; j != D[165].length; ++j) if(D[165][j].charCodeAt(0) !== 0xFFFD) { e[D[165][j]] = 42240 + j; d[42240 + j] = D[165][j];}
D[166] = "����������������������������������������������������������������共再冰列刑划刎刖劣匈匡匠印危吉吏同吊吐吁吋各向名合吃后吆吒因回囝圳地在圭圬圯圩夙多夷夸妄奸妃好她如妁字存宇守宅安寺尖屹州帆并年����������������������������������式弛忙忖戎戌戍成扣扛托收早旨旬旭曲曳有朽朴朱朵次此死氖汝汗汙江池汐汕污汛汍汎灰牟牝百竹米糸缶羊羽老考而耒耳聿肉肋肌臣自至臼舌舛舟艮色艾虫血行衣西阡串亨位住佇佗佞伴佛何估佐佑伽伺伸佃佔似但佣�".split("");
for(j = 0; j != D[166].length; ++j) if(D[166][j].charCodeAt(0) !== 0xFFFD) { e[D[166][j]] = 42496 + j; d[42496 + j] = D[166][j];}
D[167] = "����������������������������������������������������������������作你伯低伶余佝佈佚兌克免兵冶冷別判利刪刨劫助努劬匣即卵吝吭吞吾否呎吧呆呃吳呈呂君吩告吹吻吸吮吵吶吠吼呀吱含吟听囪困囤囫坊坑址坍����������������������������������均坎圾坐坏圻壯夾妝妒妨妞妣妙妖妍妤妓妊妥孝孜孚孛完宋宏尬局屁尿尾岐岑岔岌巫希序庇床廷弄弟彤形彷役忘忌志忍忱快忸忪戒我抄抗抖技扶抉扭把扼找批扳抒扯折扮投抓抑抆改攻攸旱更束李杏材村杜杖杞杉杆杠�".split("");
for(j = 0; j != D[167].length; ++j) if(D[167][j].charCodeAt(0) !== 0xFFFD) { e[D[167][j]] = 42752 + j; d[42752 + j] = D[167][j];}
D[168] = "����������������������������������������������������������������杓杗步每求汞沙沁沈沉沅沛汪決沐汰沌汨沖沒汽沃汲汾汴沆汶沍沔沘沂灶灼災灸牢牡牠狄狂玖甬甫男甸皂盯矣私秀禿究系罕肖肓肝肘肛肚育良芒����������������������������������芋芍見角言谷豆豕貝赤走足身車辛辰迂迆迅迄巡邑邢邪邦那酉釆里防阮阱阪阬並乖乳事些亞享京佯依侍佳使佬供例來侃佰併侈佩佻侖佾侏侑佺兔兒兕兩具其典冽函刻券刷刺到刮制剁劾劻卒協卓卑卦卷卸卹取叔受味呵�".split("");
for(j = 0; j != D[168].length; ++j) if(D[168][j].charCodeAt(0) !== 0xFFFD) { e[D[168][j]] = 43008 + j; d[43008 + j] = D[168][j];}
D[169] = "����������������������������������������������������������������咖呸咕咀呻呷咄咒咆呼咐呱呶和咚呢周咋命咎固垃坷坪坩坡坦坤坼夜奉奇奈奄奔妾妻委妹妮姑姆姐姍始姓姊妯妳姒姅孟孤季宗定官宜宙宛尚屈居����������������������������������屆岷岡岸岩岫岱岳帘帚帖帕帛帑幸庚店府底庖延弦弧弩往征彿彼忝忠忽念忿怏怔怯怵怖怪怕怡性怩怫怛或戕房戾所承拉拌拄抿拂抹拒招披拓拔拋拈抨抽押拐拙拇拍抵拚抱拘拖拗拆抬拎放斧於旺昔易昌昆昂明昀昏昕昊�".split("");
for(j = 0; j != D[169].length; ++j) if(D[169][j].charCodeAt(0) !== 0xFFFD) { e[D[169][j]] = 43264 + j; d[43264 + j] = D[169][j];}
D[170] = "����������������������������������������������������������������昇服朋杭枋枕東果杳杷枇枝林杯杰板枉松析杵枚枓杼杪杲欣武歧歿氓氛泣注泳沱泌泥河沽沾沼波沫法泓沸泄油況沮泗泅泱沿治泡泛泊沬泯泜泖泠����������������������������������炕炎炒炊炙爬爭爸版牧物狀狎狙狗狐玩玨玟玫玥甽疝疙疚的盂盲直知矽社祀祁秉秈空穹竺糾罔羌羋者肺肥肢肱股肫肩肴肪肯臥臾舍芳芝芙芭芽芟芹花芬芥芯芸芣芰芾芷虎虱初表軋迎返近邵邸邱邶采金長門阜陀阿阻附�".split("");
for(j = 0; j != D[170].length; ++j) if(D[170][j].charCodeAt(0) !== 0xFFFD) { e[D[170][j]] = 43520 + j; d[43520 + j] = D[170][j];}
D[171] = "����������������������������������������������������������������陂隹雨青非亟亭亮信侵侯便俠俑俏保促侶俘俟俊俗侮俐俄係俚俎俞侷兗冒冑冠剎剃削前剌剋則勇勉勃勁匍南卻厚叛咬哀咨哎哉咸咦咳哇哂咽咪品����������������������������������哄哈咯咫咱咻咩咧咿囿垂型垠垣垢城垮垓奕契奏奎奐姜姘姿姣姨娃姥姪姚姦威姻孩宣宦室客宥封屎屏屍屋峙峒巷帝帥帟幽庠度建弈弭彥很待徊律徇後徉怒思怠急怎怨恍恰恨恢恆恃恬恫恪恤扁拜挖按拼拭持拮拽指拱拷�".split("");
for(j = 0; j != D[171].length; ++j) if(D[171][j].charCodeAt(0) !== 0xFFFD) { e[D[171][j]] = 43776 + j; d[43776 + j] = D[171][j];}
D[172] = "����������������������������������������������������������������拯括拾拴挑挂政故斫施既春昭映昧是星昨昱昤曷柿染柱柔某柬架枯柵柩柯柄柑枴柚查枸柏柞柳枰柙柢柝柒歪殃殆段毒毗氟泉洋洲洪流津洌洱洞洗����������������������������������活洽派洶洛泵洹洧洸洩洮洵洎洫炫為炳炬炯炭炸炮炤爰牲牯牴狩狠狡玷珊玻玲珍珀玳甚甭畏界畎畋疫疤疥疢疣癸皆皇皈盈盆盃盅省盹相眉看盾盼眇矜砂研砌砍祆祉祈祇禹禺科秒秋穿突竿竽籽紂紅紀紉紇約紆缸美羿耄�".split("");
for(j = 0; j != D[172].length; ++j) if(D[172][j].charCodeAt(0) !== 0xFFFD) { e[D[172][j]] = 44032 + j; d[44032 + j] = D[172][j];}
D[173] = "����������������������������������������������������������������耐耍耑耶胖胥胚胃胄背胡胛胎胞胤胝致舢苧范茅苣苛苦茄若茂茉苒苗英茁苜苔苑苞苓苟苯茆虐虹虻虺衍衫要觔計訂訃貞負赴赳趴軍軌述迦迢迪迥����������������������������������迭迫迤迨郊郎郁郃酋酊重閂限陋陌降面革韋韭音頁風飛食首香乘亳倌倍倣俯倦倥俸倩倖倆值借倚倒們俺倀倔倨俱倡個候倘俳修倭倪俾倫倉兼冤冥冢凍凌准凋剖剜剔剛剝匪卿原厝叟哨唐唁唷哼哥哲唆哺唔哩哭員唉哮哪�".split("");
for(j = 0; j != D[173].length; ++j) if(D[173][j].charCodeAt(0) !== 0xFFFD) { e[D[173][j]] = 44288 + j; d[44288 + j] = D[173][j];}
D[174] = "����������������������������������������������������������������哦唧唇哽唏圃圄埂埔埋埃堉夏套奘奚娑娘娜娟娛娓姬娠娣娩娥娌娉孫屘宰害家宴宮宵容宸射屑展屐峭峽峻峪峨峰島崁峴差席師庫庭座弱徒徑徐恙����������������������������������恣恥恐恕恭恩息悄悟悚悍悔悌悅悖扇拳挈拿捎挾振捕捂捆捏捉挺捐挽挪挫挨捍捌效敉料旁旅時晉晏晃晒晌晅晁書朔朕朗校核案框桓根桂桔栩梳栗桌桑栽柴桐桀格桃株桅栓栘桁殊殉殷氣氧氨氦氤泰浪涕消涇浦浸海浙涓�".split("");
for(j = 0; j != D[174].length; ++j) if(D[174][j].charCodeAt(0) !== 0xFFFD) { e[D[174][j]] = 44544 + j; d[44544 + j] = D[174][j];}
D[175] = "����������������������������������������������������������������浬涉浮浚浴浩涌涊浹涅浥涔烊烘烤烙烈烏爹特狼狹狽狸狷玆班琉珮珠珪珞畔畝畜畚留疾病症疲疳疽疼疹痂疸皋皰益盍盎眩真眠眨矩砰砧砸砝破砷����������������������������������砥砭砠砟砲祕祐祠祟祖神祝祗祚秤秣秧租秦秩秘窄窈站笆笑粉紡紗紋紊素索純紐紕級紜納紙紛缺罟羔翅翁耆耘耕耙耗耽耿胱脂胰脅胭胴脆胸胳脈能脊胼胯臭臬舀舐航舫舨般芻茫荒荔荊茸荐草茵茴荏茲茹茶茗荀茱茨荃�".split("");
for(j = 0; j != D[175].length; ++j) if(D[175][j].charCodeAt(0) !== 0xFFFD) { e[D[175][j]] = 44800 + j; d[44800 + j] = D[175][j];}
D[176] = "����������������������������������������������������������������虔蚊蚪蚓蚤蚩蚌蚣蚜衰衷袁袂衽衹記訐討訌訕訊託訓訖訏訑豈豺豹財貢起躬軒軔軏辱送逆迷退迺迴逃追逅迸邕郡郝郢酒配酌釘針釗釜釙閃院陣陡����������������������������������陛陝除陘陞隻飢馬骨高鬥鬲鬼乾偺偽停假偃偌做偉健偶偎偕偵側偷偏倏偯偭兜冕凰剪副勒務勘動匐匏匙匿區匾參曼商啪啦啄啞啡啃啊唱啖問啕唯啤唸售啜唬啣唳啁啗圈國圉域堅堊堆埠埤基堂堵執培夠奢娶婁婉婦婪婀�".split("");
for(j = 0; j != D[176].length; ++j) if(D[176][j].charCodeAt(0) !== 0xFFFD) { e[D[176][j]] = 45056 + j; d[45056 + j] = D[176][j];}
D[177] = "����������������������������������������������������������������娼婢婚婆婊孰寇寅寄寂宿密尉專將屠屜屝崇崆崎崛崖崢崑崩崔崙崤崧崗巢常帶帳帷康庸庶庵庾張強彗彬彩彫得徙從徘御徠徜恿患悉悠您惋悴惦悽����������������������������������情悻悵惜悼惘惕惆惟悸惚惇戚戛扈掠控捲掖探接捷捧掘措捱掩掉掃掛捫推掄授掙採掬排掏掀捻捩捨捺敝敖救教敗啟敏敘敕敔斜斛斬族旋旌旎晝晚晤晨晦晞曹勗望梁梯梢梓梵桿桶梱梧梗械梃棄梭梆梅梔條梨梟梡梂欲殺�".split("");
for(j = 0; j != D[177].length; ++j) if(D[177][j].charCodeAt(0) !== 0xFFFD) { e[D[177][j]] = 45312 + j; d[45312 + j] = D[177][j];}
D[178] = "����������������������������������������������������������������毫毬氫涎涼淳淙液淡淌淤添淺清淇淋涯淑涮淞淹涸混淵淅淒渚涵淚淫淘淪深淮淨淆淄涪淬涿淦烹焉焊烽烯爽牽犁猜猛猖猓猙率琅琊球理現琍瓠瓶����������������������������������瓷甜產略畦畢異疏痔痕疵痊痍皎盔盒盛眷眾眼眶眸眺硫硃硎祥票祭移窒窕笠笨笛第符笙笞笮粒粗粕絆絃統紮紹紼絀細紳組累終紲紱缽羞羚翌翎習耜聊聆脯脖脣脫脩脰脤舂舵舷舶船莎莞莘荸莢莖莽莫莒莊莓莉莠荷荻荼�".split("");
for(j = 0; j != D[178].length; ++j) if(D[178][j].charCodeAt(0) !== 0xFFFD) { e[D[178][j]] = 45568 + j; d[45568 + j] = D[178][j];}
D[179] = "����������������������������������������������������������������莆莧處彪蛇蛀蚶蛄蚵蛆蛋蚱蚯蛉術袞袈被袒袖袍袋覓規訪訝訣訥許設訟訛訢豉豚販責貫貨貪貧赧赦趾趺軛軟這逍通逗連速逝逐逕逞造透逢逖逛途����������������������������������部郭都酗野釵釦釣釧釭釩閉陪陵陳陸陰陴陶陷陬雀雪雩章竟頂頃魚鳥鹵鹿麥麻傢傍傅備傑傀傖傘傚最凱割剴創剩勞勝勛博厥啻喀喧啼喊喝喘喂喜喪喔喇喋喃喳單喟唾喲喚喻喬喱啾喉喫喙圍堯堪場堤堰報堡堝堠壹壺奠�".split("");
for(j = 0; j != D[179].length; ++j) if(D[179][j].charCodeAt(0) !== 0xFFFD) { e[D[179][j]] = 45824 + j; d[45824 + j] = D[179][j];}
D[180] = "����������������������������������������������������������������婷媚婿媒媛媧孳孱寒富寓寐尊尋就嵌嵐崴嵇巽幅帽幀幃幾廊廁廂廄弼彭復循徨惑惡悲悶惠愜愣惺愕惰惻惴慨惱愎惶愉愀愒戟扉掣掌描揀揩揉揆揍����������������������������������插揣提握揖揭揮捶援揪換摒揚揹敞敦敢散斑斐斯普晰晴晶景暑智晾晷曾替期朝棺棕棠棘棗椅棟棵森棧棹棒棲棣棋棍植椒椎棉棚楮棻款欺欽殘殖殼毯氮氯氬港游湔渡渲湧湊渠渥渣減湛湘渤湖湮渭渦湯渴湍渺測湃渝渾滋�".split("");
for(j = 0; j != D[180].length; ++j) if(D[180][j].charCodeAt(0) !== 0xFFFD) { e[D[180][j]] = 46080 + j; d[46080 + j] = D[180][j];}
D[181] = "����������������������������������������������������������������溉渙湎湣湄湲湩湟焙焚焦焰無然煮焜牌犄犀猶猥猴猩琺琪琳琢琥琵琶琴琯琛琦琨甥甦畫番痢痛痣痙痘痞痠登發皖皓皴盜睏短硝硬硯稍稈程稅稀窘����������������������������������窗窖童竣等策筆筐筒答筍筋筏筑粟粥絞結絨絕紫絮絲絡給絢絰絳善翔翕耋聒肅腕腔腋腑腎脹腆脾腌腓腴舒舜菩萃菸萍菠菅萋菁華菱菴著萊菰萌菌菽菲菊萸萎萄菜萇菔菟虛蛟蛙蛭蛔蛛蛤蛐蛞街裁裂袱覃視註詠評詞証詁�".split("");
for(j = 0; j != D[181].length; ++j) if(D[181][j].charCodeAt(0) !== 0xFFFD) { e[D[181][j]] = 46336 + j; d[46336 + j] = D[181][j];}
D[182] = "����������������������������������������������������������������詔詛詐詆訴診訶詖象貂貯貼貳貽賁費賀貴買貶貿貸越超趁跎距跋跚跑跌跛跆軻軸軼辜逮逵週逸進逶鄂郵鄉郾酣酥量鈔鈕鈣鈉鈞鈍鈐鈇鈑閔閏開閑����������������������������������間閒閎隊階隋陽隅隆隍陲隄雁雅雄集雇雯雲韌項順須飧飪飯飩飲飭馮馭黃黍黑亂傭債傲傳僅傾催傷傻傯僇剿剷剽募勦勤勢勣匯嗟嗨嗓嗦嗎嗜嗇嗑嗣嗤嗯嗚嗡嗅嗆嗥嗉園圓塞塑塘塗塚塔填塌塭塊塢塒塋奧嫁嫉嫌媾媽媼�".split("");
for(j = 0; j != D[182].length; ++j) if(D[182][j].charCodeAt(0) !== 0xFFFD) { e[D[182][j]] = 46592 + j; d[46592 + j] = D[182][j];}
D[183] = "����������������������������������������������������������������媳嫂媲嵩嵯幌幹廉廈弒彙徬微愚意慈感想愛惹愁愈慎慌慄慍愾愴愧愍愆愷戡戢搓搾搞搪搭搽搬搏搜搔損搶搖搗搆敬斟新暗暉暇暈暖暄暘暍會榔業����������������������������������楚楷楠楔極椰概楊楨楫楞楓楹榆楝楣楛歇歲毀殿毓毽溢溯滓溶滂源溝滇滅溥溘溼溺溫滑準溜滄滔溪溧溴煎煙煩煤煉照煜煬煦煌煥煞煆煨煖爺牒猷獅猿猾瑯瑚瑕瑟瑞瑁琿瑙瑛瑜當畸瘀痰瘁痲痱痺痿痴痳盞盟睛睫睦睞督�".split("");
for(j = 0; j != D[183].length; ++j) if(D[183][j].charCodeAt(0) !== 0xFFFD) { e[D[183][j]] = 46848 + j; d[46848 + j] = D[183][j];}
D[184] = "����������������������������������������������������������������睹睪睬睜睥睨睢矮碎碰碗碘碌碉硼碑碓硿祺祿禁萬禽稜稚稠稔稟稞窟窠筷節筠筮筧粱粳粵經絹綑綁綏絛置罩罪署義羨群聖聘肆肄腱腰腸腥腮腳腫����������������������������������腹腺腦舅艇蒂葷落萱葵葦葫葉葬葛萼萵葡董葩葭葆虞虜號蛹蜓蜈蜇蜀蛾蛻蜂蜃蜆蜊衙裟裔裙補裘裝裡裊裕裒覜解詫該詳試詩詰誇詼詣誠話誅詭詢詮詬詹詻訾詨豢貊貉賊資賈賄貲賃賂賅跡跟跨路跳跺跪跤跦躲較載軾輊�".split("");
for(j = 0; j != D[184].length; ++j) if(D[184][j].charCodeAt(0) !== 0xFFFD) { e[D[184][j]] = 47104 + j; d[47104 + j] = D[184][j];}
D[185] = "����������������������������������������������������������������辟農運遊道遂達逼違遐遇遏過遍遑逾遁鄒鄗酬酪酩釉鈷鉗鈸鈽鉀鈾鉛鉋鉤鉑鈴鉉鉍鉅鈹鈿鉚閘隘隔隕雍雋雉雊雷電雹零靖靴靶預頑頓頊頒頌飼飴����������������������������������飽飾馳馱馴髡鳩麂鼎鼓鼠僧僮僥僖僭僚僕像僑僱僎僩兢凳劃劂匱厭嗾嘀嘛嘗嗽嘔嘆嘉嘍嘎嗷嘖嘟嘈嘐嗶團圖塵塾境墓墊塹墅塽壽夥夢夤奪奩嫡嫦嫩嫗嫖嫘嫣孵寞寧寡寥實寨寢寤察對屢嶄嶇幛幣幕幗幔廓廖弊彆彰徹慇�".split("");
for(j = 0; j != D[185].length; ++j) if(D[185][j].charCodeAt(0) !== 0xFFFD) { e[D[185][j]] = 47360 + j; d[47360 + j] = D[185][j];}
D[186] = "����������������������������������������������������������������愿態慷慢慣慟慚慘慵截撇摘摔撤摸摟摺摑摧搴摭摻敲斡旗旖暢暨暝榜榨榕槁榮槓構榛榷榻榫榴槐槍榭槌榦槃榣歉歌氳漳演滾漓滴漩漾漠漬漏漂漢����������������������������������滿滯漆漱漸漲漣漕漫漯澈漪滬漁滲滌滷熔熙煽熊熄熒爾犒犖獄獐瑤瑣瑪瑰瑭甄疑瘧瘍瘋瘉瘓盡監瞄睽睿睡磁碟碧碳碩碣禎福禍種稱窪窩竭端管箕箋筵算箝箔箏箸箇箄粹粽精綻綰綜綽綾綠緊綴網綱綺綢綿綵綸維緒緇綬�".split("");
for(j = 0; j != D[186].length; ++j) if(D[186][j].charCodeAt(0) !== 0xFFFD) { e[D[186][j]] = 47616 + j; d[47616 + j] = D[186][j];}
D[187] = "����������������������������������������������������������������罰翠翡翟聞聚肇腐膀膏膈膊腿膂臧臺與舔舞艋蓉蒿蓆蓄蒙蒞蒲蒜蓋蒸蓀蓓蒐蒼蓑蓊蜿蜜蜻蜢蜥蜴蜘蝕蜷蜩裳褂裴裹裸製裨褚裯誦誌語誣認誡誓誤����������������������������������說誥誨誘誑誚誧豪貍貌賓賑賒赫趙趕跼輔輒輕輓辣遠遘遜遣遙遞遢遝遛鄙鄘鄞酵酸酷酴鉸銀銅銘銖鉻銓銜銨鉼銑閡閨閩閣閥閤隙障際雌雒需靼鞅韶頗領颯颱餃餅餌餉駁骯骰髦魁魂鳴鳶鳳麼鼻齊億儀僻僵價儂儈儉儅凜�".split("");
for(j = 0; j != D[187].length; ++j) if(D[187][j].charCodeAt(0) !== 0xFFFD) { e[D[187][j]] = 47872 + j; d[47872 + j] = D[187][j];}
D[188] = "����������������������������������������������������������������劇劈劉劍劊勰厲嘮嘻嘹嘲嘿嘴嘩噓噎噗噴嘶嘯嘰墀墟增墳墜墮墩墦奭嬉嫻嬋嫵嬌嬈寮寬審寫層履嶝嶔幢幟幡廢廚廟廝廣廠彈影德徵慶慧慮慝慕憂����������������������������������慼慰慫慾憧憐憫憎憬憚憤憔憮戮摩摯摹撞撲撈撐撰撥撓撕撩撒撮播撫撚撬撙撢撳敵敷數暮暫暴暱樣樟槨樁樞標槽模樓樊槳樂樅槭樑歐歎殤毅毆漿潼澄潑潦潔澆潭潛潸潮澎潺潰潤澗潘滕潯潠潟熟熬熱熨牖犛獎獗瑩璋璃�".split("");
for(j = 0; j != D[188].length; ++j) if(D[188][j].charCodeAt(0) !== 0xFFFD) { e[D[188][j]] = 48128 + j; d[48128 + j] = D[188][j];}
D[189] = "����������������������������������������������������������������瑾璀畿瘠瘩瘟瘤瘦瘡瘢皚皺盤瞎瞇瞌瞑瞋磋磅確磊碾磕碼磐稿稼穀稽稷稻窯窮箭箱範箴篆篇篁箠篌糊締練緯緻緘緬緝編緣線緞緩綞緙緲緹罵罷羯����������������������������������翩耦膛膜膝膠膚膘蔗蔽蔚蓮蔬蔭蔓蔑蔣蔡蔔蓬蔥蓿蔆螂蝴蝶蝠蝦蝸蝨蝙蝗蝌蝓衛衝褐複褒褓褕褊誼諒談諄誕請諸課諉諂調誰論諍誶誹諛豌豎豬賠賞賦賤賬賭賢賣賜質賡赭趟趣踫踐踝踢踏踩踟踡踞躺輝輛輟輩輦輪輜輞�".split("");
for(j = 0; j != D[189].length; ++j) if(D[189][j].charCodeAt(0) !== 0xFFFD) { e[D[189][j]] = 48384 + j; d[48384 + j] = D[189][j];}
D[190] = "����������������������������������������������������������������輥適遮遨遭遷鄰鄭鄧鄱醇醉醋醃鋅銻銷鋪銬鋤鋁銳銼鋒鋇鋰銲閭閱霄霆震霉靠鞍鞋鞏頡頫頜颳養餓餒餘駝駐駟駛駑駕駒駙骷髮髯鬧魅魄魷魯鴆鴉����������������������������������鴃麩麾黎墨齒儒儘儔儐儕冀冪凝劑劓勳噙噫噹噩噤噸噪器噥噱噯噬噢噶壁墾壇壅奮嬝嬴學寰導彊憲憑憩憊懍憶憾懊懈戰擅擁擋撻撼據擄擇擂操撿擒擔撾整曆曉暹曄曇暸樽樸樺橙橫橘樹橄橢橡橋橇樵機橈歙歷氅濂澱澡�".split("");
for(j = 0; j != D[190].length; ++j) if(D[190][j].charCodeAt(0) !== 0xFFFD) { e[D[190][j]] = 48640 + j; d[48640 + j] = D[190][j];}
D[191] = "����������������������������������������������������������������濃澤濁澧澳激澹澶澦澠澴熾燉燐燒燈燕熹燎燙燜燃燄獨璜璣璘璟璞瓢甌甍瘴瘸瘺盧盥瞠瞞瞟瞥磨磚磬磧禦積穎穆穌穋窺篙簑築篤篛篡篩篦糕糖縊����������������������������������縑縈縛縣縞縝縉縐罹羲翰翱翮耨膳膩膨臻興艘艙蕊蕙蕈蕨蕩蕃蕉蕭蕪蕞螃螟螞螢融衡褪褲褥褫褡親覦諦諺諫諱謀諜諧諮諾謁謂諷諭諳諶諼豫豭貓賴蹄踱踴蹂踹踵輻輯輸輳辨辦遵遴選遲遼遺鄴醒錠錶鋸錳錯錢鋼錫錄錚�".split("");
for(j = 0; j != D[191].length; ++j) if(D[191][j].charCodeAt(0) !== 0xFFFD) { e[D[191][j]] = 48896 + j; d[48896 + j] = D[191][j];}
D[192] = "����������������������������������������������������������������錐錦錡錕錮錙閻隧隨險雕霎霑霖霍霓霏靛靜靦鞘頰頸頻頷頭頹頤餐館餞餛餡餚駭駢駱骸骼髻髭鬨鮑鴕鴣鴦鴨鴒鴛默黔龍龜優償儡儲勵嚎嚀嚐嚅嚇����������������������������������嚏壕壓壑壎嬰嬪嬤孺尷屨嶼嶺嶽嶸幫彌徽應懂懇懦懋戲戴擎擊擘擠擰擦擬擱擢擭斂斃曙曖檀檔檄檢檜櫛檣橾檗檐檠歜殮毚氈濘濱濟濠濛濤濫濯澀濬濡濩濕濮濰燧營燮燦燥燭燬燴燠爵牆獰獲璩環璦璨癆療癌盪瞳瞪瞰瞬�".split("");
for(j = 0; j != D[192].length; ++j) if(D[192][j].charCodeAt(0) !== 0xFFFD) { e[D[192][j]] = 49152 + j; d[49152 + j] = D[192][j];}
D[193] = "����������������������������������������������������������������瞧瞭矯磷磺磴磯礁禧禪穗窿簇簍篾篷簌篠糠糜糞糢糟糙糝縮績繆縷縲繃縫總縱繅繁縴縹繈縵縿縯罄翳翼聱聲聰聯聳臆臃膺臂臀膿膽臉膾臨舉艱薪����������������������������������薄蕾薜薑薔薯薛薇薨薊虧蟀蟑螳蟒蟆螫螻螺蟈蟋褻褶襄褸褽覬謎謗謙講謊謠謝謄謐豁谿豳賺賽購賸賻趨蹉蹋蹈蹊轄輾轂轅輿避遽還邁邂邀鄹醣醞醜鍍鎂錨鍵鍊鍥鍋錘鍾鍬鍛鍰鍚鍔闊闋闌闈闆隱隸雖霜霞鞠韓顆颶餵騁�".split("");
for(j = 0; j != D[193].length; ++j) if(D[193][j].charCodeAt(0) !== 0xFFFD) { e[D[193][j]] = 49408 + j; d[49408 + j] = D[193][j];}
D[194] = "����������������������������������������������������������������駿鮮鮫鮪鮭鴻鴿麋黏點黜黝黛鼾齋叢嚕嚮壙壘嬸彝懣戳擴擲擾攆擺擻擷斷曜朦檳檬櫃檻檸櫂檮檯歟歸殯瀉瀋濾瀆濺瀑瀏燻燼燾燸獷獵璧璿甕癖癘����������������������������������癒瞽瞿瞻瞼礎禮穡穢穠竄竅簫簧簪簞簣簡糧織繕繞繚繡繒繙罈翹翻職聶臍臏舊藏薩藍藐藉薰薺薹薦蟯蟬蟲蟠覆覲觴謨謹謬謫豐贅蹙蹣蹦蹤蹟蹕軀轉轍邇邃邈醫醬釐鎔鎊鎖鎢鎳鎮鎬鎰鎘鎚鎗闔闖闐闕離雜雙雛雞霤鞣鞦�".split("");
for(j = 0; j != D[194].length; ++j) if(D[194][j].charCodeAt(0) !== 0xFFFD) { e[D[194][j]] = 49664 + j; d[49664 + j] = D[194][j];}
D[195] = "����������������������������������������������������������������鞭韹額顏題顎顓颺餾餿餽餮馥騎髁鬃鬆魏魎魍鯊鯉鯽鯈鯀鵑鵝鵠黠鼕鼬儳嚥壞壟壢寵龐廬懲懷懶懵攀攏曠曝櫥櫝櫚櫓瀛瀟瀨瀚瀝瀕瀘爆爍牘犢獸����������������������������������獺璽瓊瓣疇疆癟癡矇礙禱穫穩簾簿簸簽簷籀繫繭繹繩繪羅繳羶羹羸臘藩藝藪藕藤藥藷蟻蠅蠍蟹蟾襠襟襖襞譁譜識證譚譎譏譆譙贈贊蹼蹲躇蹶蹬蹺蹴轔轎辭邊邋醱醮鏡鏑鏟鏃鏈鏜鏝鏖鏢鏍鏘鏤鏗鏨關隴難霪霧靡韜韻類�".split("");
for(j = 0; j != D[195].length; ++j) if(D[195][j].charCodeAt(0) !== 0xFFFD) { e[D[195][j]] = 49920 + j; d[49920 + j] = D[195][j];}
D[196] = "����������������������������������������������������������������願顛颼饅饉騖騙鬍鯨鯧鯖鯛鶉鵡鵲鵪鵬麒麗麓麴勸嚨嚷嚶嚴嚼壤孀孃孽寶巉懸懺攘攔攙曦朧櫬瀾瀰瀲爐獻瓏癢癥礦礪礬礫竇競籌籃籍糯糰辮繽繼����������������������������������纂罌耀臚艦藻藹蘑藺蘆蘋蘇蘊蠔蠕襤覺觸議譬警譯譟譫贏贍躉躁躅躂醴釋鐘鐃鏽闡霰飄饒饑馨騫騰騷騵鰓鰍鹹麵黨鼯齟齣齡儷儸囁囀囂夔屬巍懼懾攝攜斕曩櫻欄櫺殲灌爛犧瓖瓔癩矓籐纏續羼蘗蘭蘚蠣蠢蠡蠟襪襬覽譴�".split("");
for(j = 0; j != D[196].length; ++j) if(D[196][j].charCodeAt(0) !== 0xFFFD) { e[D[196][j]] = 50176 + j; d[50176 + j] = D[196][j];}
D[197] = "����������������������������������������������������������������護譽贓躊躍躋轟辯醺鐮鐳鐵鐺鐸鐲鐫闢霸霹露響顧顥饗驅驃驀騾髏魔魑鰭鰥鶯鶴鷂鶸麝黯鼙齜齦齧儼儻囈囊囉孿巔巒彎懿攤權歡灑灘玀瓤疊癮癬����������������������������������禳籠籟聾聽臟襲襯觼讀贖贗躑躓轡酈鑄鑑鑒霽霾韃韁顫饕驕驍髒鬚鱉鰱鰾鰻鷓鷗鼴齬齪龔囌巖戀攣攫攪曬欐瓚竊籤籣籥纓纖纔臢蘸蘿蠱變邐邏鑣鑠鑤靨顯饜驚驛驗髓體髑鱔鱗鱖鷥麟黴囑壩攬灞癱癲矗罐羈蠶蠹衢讓讒�".split("");
for(j = 0; j != D[197].length; ++j) if(D[197][j].charCodeAt(0) !== 0xFFFD) { e[D[197][j]] = 50432 + j; d[50432 + j] = D[197][j];}
D[198] = "����������������������������������������������������������������讖艷贛釀鑪靂靈靄韆顰驟鬢魘鱟鷹鷺鹼鹽鼇齷齲廳欖灣籬籮蠻觀躡釁鑲鑰顱饞髖鬣黌灤矚讚鑷韉驢驥纜讜躪釅鑽鑾鑼鱷鱸黷豔鑿鸚爨驪鬱鸛鸞籲���������������������������������������������������������������������������������������������������������������������������������".split("");
for(j = 0; j != D[198].length; ++j) if(D[198][j].charCodeAt(0) !== 0xFFFD) { e[D[198][j]] = 50688 + j; d[50688 + j] = D[198][j];}
D[201] = "����������������������������������������������������������������乂乜凵匚厂万丌乇亍囗兀屮彳丏冇与丮亓仂仉仈冘勼卬厹圠夃夬尐巿旡殳毌气爿丱丼仨仜仩仡仝仚刌匜卌圢圣夗夯宁宄尒尻屴屳帄庀庂忉戉扐氕����������������������������������氶汃氿氻犮犰玊禸肊阞伎优伬仵伔仱伀价伈伝伂伅伢伓伄仴伒冱刓刉刐劦匢匟卍厊吇囡囟圮圪圴夼妀奼妅奻奾奷奿孖尕尥屼屺屻屾巟幵庄异弚彴忕忔忏扜扞扤扡扦扢扙扠扚扥旯旮朾朹朸朻机朿朼朳氘汆汒汜汏汊汔汋�".split("");
for(j = 0; j != D[201].length; ++j) if(D[201][j].charCodeAt(0) !== 0xFFFD) { e[D[201][j]] = 51456 + j; d[51456 + j] = D[201][j];}
D[202] = "����������������������������������������������������������������汌灱牞犴犵玎甪癿穵网艸艼芀艽艿虍襾邙邗邘邛邔阢阤阠阣佖伻佢佉体佤伾佧佒佟佁佘伭伳伿佡冏冹刜刞刡劭劮匉卣卲厎厏吰吷吪呔呅吙吜吥吘����������������������������������吽呏呁吨吤呇囮囧囥坁坅坌坉坋坒夆奀妦妘妠妗妎妢妐妏妧妡宎宒尨尪岍岏岈岋岉岒岊岆岓岕巠帊帎庋庉庌庈庍弅弝彸彶忒忑忐忭忨忮忳忡忤忣忺忯忷忻怀忴戺抃抌抎抏抔抇扱扻扺扰抁抈扷扽扲扴攷旰旴旳旲旵杅杇�".split("");
for(j = 0; j != D[202].length; ++j) if(D[202][j].charCodeAt(0) !== 0xFFFD) { e[D[202][j]] = 51712 + j; d[51712 + j] = D[202][j];}
D[203] = "����������������������������������������������������������������杙杕杌杈杝杍杚杋毐氙氚汸汧汫沄沋沏汱汯汩沚汭沇沕沜汦汳汥汻沎灴灺牣犿犽狃狆狁犺狅玕玗玓玔玒町甹疔疕皁礽耴肕肙肐肒肜芐芏芅芎芑芓����������������������������������芊芃芄豸迉辿邟邡邥邞邧邠阰阨阯阭丳侘佼侅佽侀侇佶佴侉侄佷佌侗佪侚佹侁佸侐侜侔侞侒侂侕佫佮冞冼冾刵刲刳剆刱劼匊匋匼厒厔咇呿咁咑咂咈呫呺呾呥呬呴呦咍呯呡呠咘呣呧呤囷囹坯坲坭坫坱坰坶垀坵坻坳坴坢�".split("");
for(j = 0; j != D[203].length; ++j) if(D[203][j].charCodeAt(0) !== 0xFFFD) { e[D[203][j]] = 51968 + j; d[51968 + j] = D[203][j];}
D[204] = "����������������������������������������������������������������坨坽夌奅妵妺姏姎妲姌姁妶妼姃姖妱妽姀姈妴姇孢孥宓宕屄屇岮岤岠岵岯岨岬岟岣岭岢岪岧岝岥岶岰岦帗帔帙弨弢弣弤彔徂彾彽忞忥怭怦怙怲怋����������������������������������怴怊怗怳怚怞怬怢怍怐怮怓怑怌怉怜戔戽抭抴拑抾抪抶拊抮抳抯抻抩抰抸攽斨斻昉旼昄昒昈旻昃昋昍昅旽昑昐曶朊枅杬枎枒杶杻枘枆构杴枍枌杺枟枑枙枃杽极杸杹枔欥殀歾毞氝沓泬泫泮泙沶泔沭泧沷泐泂沺泃泆泭泲�".split("");
for(j = 0; j != D[204].length; ++j) if(D[204][j].charCodeAt(0) !== 0xFFFD) { e[D[204][j]] = 52224 + j; d[52224 + j] = D[204][j];}
D[205] = "����������������������������������������������������������������泒泝沴沊沝沀泞泀洰泍泇沰泹泏泩泑炔炘炅炓炆炄炑炖炂炚炃牪狖狋狘狉狜狒狔狚狌狑玤玡玭玦玢玠玬玝瓝瓨甿畀甾疌疘皯盳盱盰盵矸矼矹矻矺����������������������������������矷祂礿秅穸穻竻籵糽耵肏肮肣肸肵肭舠芠苀芫芚芘芛芵芧芮芼芞芺芴芨芡芩苂芤苃芶芢虰虯虭虮豖迒迋迓迍迖迕迗邲邴邯邳邰阹阽阼阺陃俍俅俓侲俉俋俁俔俜俙侻侳俛俇俖侺俀侹俬剄剉勀勂匽卼厗厖厙厘咺咡咭咥哏�".split("");
for(j = 0; j != D[205].length; ++j) if(D[205][j].charCodeAt(0) !== 0xFFFD) { e[D[205][j]] = 52480 + j; d[52480 + j] = D[205][j];}
D[206] = "����������������������������������������������������������������哃茍咷咮哖咶哅哆咠呰咼咢咾呲哞咰垵垞垟垤垌垗垝垛垔垘垏垙垥垚垕壴复奓姡姞姮娀姱姝姺姽姼姶姤姲姷姛姩姳姵姠姾姴姭宨屌峐峘峌峗峋峛����������������������������������峞峚峉峇峊峖峓峔峏峈峆峎峟峸巹帡帢帣帠帤庰庤庢庛庣庥弇弮彖徆怷怹恔恲恞恅恓恇恉恛恌恀恂恟怤恄恘恦恮扂扃拏挍挋拵挎挃拫拹挏挌拸拶挀挓挔拺挕拻拰敁敃斪斿昶昡昲昵昜昦昢昳昫昺昝昴昹昮朏朐柁柲柈枺�".split("");
for(j = 0; j != D[206].length; ++j) if(D[206][j].charCodeAt(0) !== 0xFFFD) { e[D[206][j]] = 52736 + j; d[52736 + j] = D[206][j];}
D[207] = "����������������������������������������������������������������柜枻柸柘柀枷柅柫柤柟枵柍枳柷柶柮柣柂枹柎柧柰枲柼柆柭柌枮柦柛柺柉柊柃柪柋欨殂殄殶毖毘毠氠氡洨洴洭洟洼洿洒洊泚洳洄洙洺洚洑洀洝浂����������������������������������洁洘洷洃洏浀洇洠洬洈洢洉洐炷炟炾炱炰炡炴炵炩牁牉牊牬牰牳牮狊狤狨狫狟狪狦狣玅珌珂珈珅玹玶玵玴珫玿珇玾珃珆玸珋瓬瓮甮畇畈疧疪癹盄眈眃眄眅眊盷盻盺矧矨砆砑砒砅砐砏砎砉砃砓祊祌祋祅祄秕种秏秖秎窀�".split("");
for(j = 0; j != D[207].length; ++j) if(D[207][j].charCodeAt(0) !== 0xFFFD) { e[D[207][j]] = 52992 + j; d[52992 + j] = D[207][j];}
D[208] = "����������������������������������������������������������������穾竑笀笁籺籸籹籿粀粁紃紈紁罘羑羍羾耇耎耏耔耷胘胇胠胑胈胂胐胅胣胙胜胊胕胉胏胗胦胍臿舡芔苙苾苹茇苨茀苕茺苫苖苴苬苡苲苵茌苻苶苰苪����������������������������������苤苠苺苳苭虷虴虼虳衁衎衧衪衩觓訄訇赲迣迡迮迠郱邽邿郕郅邾郇郋郈釔釓陔陏陑陓陊陎倞倅倇倓倢倰倛俵俴倳倷倬俶俷倗倜倠倧倵倯倱倎党冔冓凊凄凅凈凎剡剚剒剞剟剕剢勍匎厞唦哢唗唒哧哳哤唚哿唄唈哫唑唅哱�".split("");
for(j = 0; j != D[208].length; ++j) if(D[208][j].charCodeAt(0) !== 0xFFFD) { e[D[208][j]] = 53248 + j; d[53248 + j] = D[208][j];}
D[209] = "����������������������������������������������������������������唊哻哷哸哠唎唃唋圁圂埌堲埕埒垺埆垽垼垸垶垿埇埐垹埁夎奊娙娖娭娮娕娏娗娊娞娳孬宧宭宬尃屖屔峬峿峮峱峷崀峹帩帨庨庮庪庬弳弰彧恝恚恧����������������������������������恁悢悈悀悒悁悝悃悕悛悗悇悜悎戙扆拲挐捖挬捄捅挶捃揤挹捋捊挼挩捁挴捘捔捙挭捇挳捚捑挸捗捀捈敊敆旆旃旄旂晊晟晇晑朒朓栟栚桉栲栳栻桋桏栖栱栜栵栫栭栯桎桄栴栝栒栔栦栨栮桍栺栥栠欬欯欭欱欴歭肂殈毦毤�".split("");
for(j = 0; j != D[209].length; ++j) if(D[209][j].charCodeAt(0) !== 0xFFFD) { e[D[209][j]] = 53504 + j; d[53504 + j] = D[209][j];}
D[210] = "����������������������������������������������������������������毨毣毢毧氥浺浣浤浶洍浡涒浘浢浭浯涑涍淯浿涆浞浧浠涗浰浼浟涂涘洯浨涋浾涀涄洖涃浻浽浵涐烜烓烑烝烋缹烢烗烒烞烠烔烍烅烆烇烚烎烡牂牸����������������������������������牷牶猀狺狴狾狶狳狻猁珓珙珥珖玼珧珣珩珜珒珛珔珝珚珗珘珨瓞瓟瓴瓵甡畛畟疰痁疻痄痀疿疶疺皊盉眝眛眐眓眒眣眑眕眙眚眢眧砣砬砢砵砯砨砮砫砡砩砳砪砱祔祛祏祜祓祒祑秫秬秠秮秭秪秜秞秝窆窉窅窋窌窊窇竘笐�".split("");
for(j = 0; j != D[210].length; ++j) if(D[210][j].charCodeAt(0) !== 0xFFFD) { e[D[210][j]] = 53760 + j; d[53760 + j] = D[210][j];}
D[211] = "����������������������������������������������������������������笄笓笅笏笈笊笎笉笒粄粑粊粌粈粍粅紞紝紑紎紘紖紓紟紒紏紌罜罡罞罠罝罛羖羒翃翂翀耖耾耹胺胲胹胵脁胻脀舁舯舥茳茭荄茙荑茥荖茿荁茦茜茢����������������������������������荂荎茛茪茈茼荍茖茤茠茷茯茩荇荅荌荓茞茬荋茧荈虓虒蚢蚨蚖蚍蚑蚞蚇蚗蚆蚋蚚蚅蚥蚙蚡蚧蚕蚘蚎蚝蚐蚔衃衄衭衵衶衲袀衱衿衯袃衾衴衼訒豇豗豻貤貣赶赸趵趷趶軑軓迾迵适迿迻逄迼迶郖郠郙郚郣郟郥郘郛郗郜郤酐�".split("");
for(j = 0; j != D[211].length; ++j) if(D[211][j].charCodeAt(0) !== 0xFFFD) { e[D[211][j]] = 54016 + j; d[54016 + j] = D[211][j];}
D[212] = "����������������������������������������������������������������酎酏釕釢釚陜陟隼飣髟鬯乿偰偪偡偞偠偓偋偝偲偈偍偁偛偊偢倕偅偟偩偫偣偤偆偀偮偳偗偑凐剫剭剬剮勖勓匭厜啵啶唼啍啐唴唪啑啢唶唵唰啒啅����������������������������������唌唲啥啎唹啈唭唻啀啋圊圇埻堔埢埶埜埴堀埭埽堈埸堋埳埏堇埮埣埲埥埬埡堎埼堐埧堁堌埱埩埰堍堄奜婠婘婕婧婞娸娵婭婐婟婥婬婓婤婗婃婝婒婄婛婈媎娾婍娹婌婰婩婇婑婖婂婜孲孮寁寀屙崞崋崝崚崠崌崨崍崦崥崏�".split("");
for(j = 0; j != D[212].length; ++j) if(D[212][j].charCodeAt(0) !== 0xFFFD) { e[D[212][j]] = 54272 + j; d[54272 + j] = D[212][j];}
D[213] = "����������������������������������������������������������������崰崒崣崟崮帾帴庱庴庹庲庳弶弸徛徖徟悊悐悆悾悰悺惓惔惏惤惙惝惈悱惛悷惊悿惃惍惀挲捥掊掂捽掽掞掭掝掗掫掎捯掇掐据掯捵掜捭掮捼掤挻掟����������������������������������捸掅掁掑掍捰敓旍晥晡晛晙晜晢朘桹梇梐梜桭桮梮梫楖桯梣梬梩桵桴梲梏桷梒桼桫桲梪梀桱桾梛梖梋梠梉梤桸桻梑梌梊桽欶欳欷欸殑殏殍殎殌氪淀涫涴涳湴涬淩淢涷淶淔渀淈淠淟淖涾淥淜淝淛淴淊涽淭淰涺淕淂淏淉�".split("");
for(j = 0; j != D[213].length; ++j) if(D[213][j].charCodeAt(0) !== 0xFFFD) { e[D[213][j]] = 54528 + j; d[54528 + j] = D[213][j];}
D[214] = "����������������������������������������������������������������淐淲淓淽淗淍淣涻烺焍烷焗烴焌烰焄烳焐烼烿焆焓焀烸烶焋焂焎牾牻牼牿猝猗猇猑猘猊猈狿猏猞玈珶珸珵琄琁珽琇琀珺珼珿琌琋珴琈畤畣痎痒痏����������������������������������痋痌痑痐皏皉盓眹眯眭眱眲眴眳眽眥眻眵硈硒硉硍硊硌砦硅硐祤祧祩祪祣祫祡离秺秸秶秷窏窔窐笵筇笴笥笰笢笤笳笘笪笝笱笫笭笯笲笸笚笣粔粘粖粣紵紽紸紶紺絅紬紩絁絇紾紿絊紻紨罣羕羜羝羛翊翋翍翐翑翇翏翉耟�".split("");
for(j = 0; j != D[214].length; ++j) if(D[214][j].charCodeAt(0) !== 0xFFFD) { e[D[214][j]] = 54784 + j; d[54784 + j] = D[214][j];}
D[215] = "����������������������������������������������������������������耞耛聇聃聈脘脥脙脛脭脟脬脞脡脕脧脝脢舑舸舳舺舴舲艴莐莣莨莍荺荳莤荴莏莁莕莙荵莔莩荽莃莌莝莛莪莋荾莥莯莈莗莰荿莦莇莮荶莚虙虖蚿蚷����������������������������������蛂蛁蛅蚺蚰蛈蚹蚳蚸蛌蚴蚻蚼蛃蚽蚾衒袉袕袨袢袪袚袑袡袟袘袧袙袛袗袤袬袌袓袎覂觖觙觕訰訧訬訞谹谻豜豝豽貥赽赻赹趼跂趹趿跁軘軞軝軜軗軠軡逤逋逑逜逌逡郯郪郰郴郲郳郔郫郬郩酖酘酚酓酕釬釴釱釳釸釤釹釪�".split("");
for(j = 0; j != D[215].length; ++j) if(D[215][j].charCodeAt(0) !== 0xFFFD) { e[D[215][j]] = 55040 + j; d[55040 + j] = D[215][j];}
D[216] = "����������������������������������������������������������������釫釷釨釮镺閆閈陼陭陫陱陯隿靪頄飥馗傛傕傔傞傋傣傃傌傎傝偨傜傒傂傇兟凔匒匑厤厧喑喨喥喭啷噅喢喓喈喏喵喁喣喒喤啽喌喦啿喕喡喎圌堩堷����������������������������������堙堞堧堣堨埵塈堥堜堛堳堿堶堮堹堸堭堬堻奡媯媔媟婺媢媞婸媦婼媥媬媕媮娷媄媊媗媃媋媩婻婽媌媜媏媓媝寪寍寋寔寑寊寎尌尰崷嵃嵫嵁嵋崿崵嵑嵎嵕崳崺嵒崽崱嵙嵂崹嵉崸崼崲崶嵀嵅幄幁彘徦徥徫惉悹惌惢惎惄愔�".split("");
for(j = 0; j != D[216].length; ++j) if(D[216][j].charCodeAt(0) !== 0xFFFD) { e[D[216][j]] = 55296 + j; d[55296 + j] = D[216][j];}
D[217] = "����������������������������������������������������������������惲愊愖愅惵愓惸惼惾惁愃愘愝愐惿愄愋扊掔掱掰揎揥揨揯揃撝揳揊揠揶揕揲揵摡揟掾揝揜揄揘揓揂揇揌揋揈揰揗揙攲敧敪敤敜敨敥斌斝斞斮旐旒����������������������������������晼晬晻暀晱晹晪晲朁椌棓椄棜椪棬棪棱椏棖棷棫棤棶椓椐棳棡椇棌椈楰梴椑棯棆椔棸棐棽棼棨椋椊椗棎棈棝棞棦棴棑椆棔棩椕椥棇欹欻欿欼殔殗殙殕殽毰毲毳氰淼湆湇渟湉溈渼渽湅湢渫渿湁湝湳渜渳湋湀湑渻渃渮湞�".split("");
for(j = 0; j != D[217].length; ++j) if(D[217][j].charCodeAt(0) !== 0xFFFD) { e[D[217][j]] = 55552 + j; d[55552 + j] = D[217][j];}
D[218] = "����������������������������������������������������������������湨湜湡渱渨湠湱湫渹渢渰湓湥渧湸湤湷湕湹湒湦渵渶湚焠焞焯烻焮焱焣焥焢焲焟焨焺焛牋牚犈犉犆犅犋猒猋猰猢猱猳猧猲猭猦猣猵猌琮琬琰琫琖����������������������������������琚琡琭琱琤琣琝琩琠琲瓻甯畯畬痧痚痡痦痝痟痤痗皕皒盚睆睇睄睍睅睊睎睋睌矞矬硠硤硥硜硭硱硪确硰硩硨硞硢祴祳祲祰稂稊稃稌稄窙竦竤筊笻筄筈筌筎筀筘筅粢粞粨粡絘絯絣絓絖絧絪絏絭絜絫絒絔絩絑絟絎缾缿罥�".split("");
for(j = 0; j != D[218].length; ++j) if(D[218][j].charCodeAt(0) !== 0xFFFD) { e[D[218][j]] = 55808 + j; d[55808 + j] = D[218][j];}
D[219] = "����������������������������������������������������������������罦羢羠羡翗聑聏聐胾胔腃腊腒腏腇脽腍脺臦臮臷臸臹舄舼舽舿艵茻菏菹萣菀菨萒菧菤菼菶萐菆菈菫菣莿萁菝菥菘菿菡菋菎菖菵菉萉萏菞萑萆菂菳����������������������������������菕菺菇菑菪萓菃菬菮菄菻菗菢萛菛菾蛘蛢蛦蛓蛣蛚蛪蛝蛫蛜蛬蛩蛗蛨蛑衈衖衕袺裗袹袸裀袾袶袼袷袽袲褁裉覕覘覗觝觚觛詎詍訹詙詀詗詘詄詅詒詈詑詊詌詏豟貁貀貺貾貰貹貵趄趀趉跘跓跍跇跖跜跏跕跙跈跗跅軯軷軺�".split("");
for(j = 0; j != D[219].length; ++j) if(D[219][j].charCodeAt(0) !== 0xFFFD) { e[D[219][j]] = 56064 + j; d[56064 + j] = D[219][j];}
D[220] = "����������������������������������������������������������������軹軦軮軥軵軧軨軶軫軱軬軴軩逭逴逯鄆鄬鄄郿郼鄈郹郻鄁鄀鄇鄅鄃酡酤酟酢酠鈁鈊鈥鈃鈚鈦鈏鈌鈀鈒釿釽鈆鈄鈧鈂鈜鈤鈙鈗鈅鈖镻閍閌閐隇陾隈����������������������������������隉隃隀雂雈雃雱雰靬靰靮頇颩飫鳦黹亃亄亶傽傿僆傮僄僊傴僈僂傰僁傺傱僋僉傶傸凗剺剸剻剼嗃嗛嗌嗐嗋嗊嗝嗀嗔嗄嗩喿嗒喍嗏嗕嗢嗖嗈嗲嗍嗙嗂圔塓塨塤塏塍塉塯塕塎塝塙塥塛堽塣塱壼嫇嫄嫋媺媸媱媵媰媿嫈媻嫆�".split("");
for(j = 0; j != D[220].length; ++j) if(D[220][j].charCodeAt(0) !== 0xFFFD) { e[D[220][j]] = 56320 + j; d[56320 + j] = D[220][j];}
D[221] = "����������������������������������������������������������������媷嫀嫊媴媶嫍媹媐寖寘寙尟尳嵱嵣嵊嵥嵲嵬嵞嵨嵧嵢巰幏幎幊幍幋廅廌廆廋廇彀徯徭惷慉慊愫慅愶愲愮慆愯慏愩慀戠酨戣戥戤揅揱揫搐搒搉搠搤����������������������������������搳摃搟搕搘搹搷搢搣搌搦搰搨摁搵搯搊搚摀搥搧搋揧搛搮搡搎敯斒旓暆暌暕暐暋暊暙暔晸朠楦楟椸楎楢楱椿楅楪椹楂楗楙楺楈楉椵楬椳椽楥棰楸椴楩楀楯楄楶楘楁楴楌椻楋椷楜楏楑椲楒椯楻椼歆歅歃歂歈歁殛嗀毻毼�".split("");
for(j = 0; j != D[221].length; ++j) if(D[221][j].charCodeAt(0) !== 0xFFFD) { e[D[221][j]] = 56576 + j; d[56576 + j] = D[221][j];}
D[222] = "����������������������������������������������������������������毹毷毸溛滖滈溏滀溟溓溔溠溱溹滆滒溽滁溞滉溷溰滍溦滏溲溾滃滜滘溙溒溎溍溤溡溿溳滐滊溗溮溣煇煔煒煣煠煁煝煢煲煸煪煡煂煘煃煋煰煟煐煓����������������������������������煄煍煚牏犍犌犑犐犎猼獂猻猺獀獊獉瑄瑊瑋瑒瑑瑗瑀瑏瑐瑎瑂瑆瑍瑔瓡瓿瓾瓽甝畹畷榃痯瘏瘃痷痾痼痹痸瘐痻痶痭痵痽皙皵盝睕睟睠睒睖睚睩睧睔睙睭矠碇碚碔碏碄碕碅碆碡碃硹碙碀碖硻祼禂祽祹稑稘稙稒稗稕稢稓�".split("");
for(j = 0; j != D[222].length; ++j) if(D[222][j].charCodeAt(0) !== 0xFFFD) { e[D[222][j]] = 56832 + j; d[56832 + j] = D[222][j];}
D[223] = "����������������������������������������������������������������稛稐窣窢窞竫筦筤筭筴筩筲筥筳筱筰筡筸筶筣粲粴粯綈綆綀綍絿綅絺綎絻綃絼綌綔綄絽綒罭罫罧罨罬羦羥羧翛翜耡腤腠腷腜腩腛腢腲朡腞腶腧腯����������������������������������腄腡舝艉艄艀艂艅蓱萿葖葶葹蒏蒍葥葑葀蒆葧萰葍葽葚葙葴葳葝蔇葞萷萺萴葺葃葸萲葅萩菙葋萯葂萭葟葰萹葎葌葒葯蓅蒎萻葇萶萳葨葾葄萫葠葔葮葐蜋蜄蛷蜌蛺蛖蛵蝍蛸蜎蜉蜁蛶蜍蜅裖裋裍裎裞裛裚裌裐覅覛觟觥觤�".split("");
for(j = 0; j != D[223].length; ++j) if(D[223][j].charCodeAt(0) !== 0xFFFD) { e[D[223][j]] = 57088 + j; d[57088 + j] = D[223][j];}
D[224] = "����������������������������������������������������������������觡觠觢觜触詶誆詿詡訿詷誂誄詵誃誁詴詺谼豋豊豥豤豦貆貄貅賌赨赩趑趌趎趏趍趓趔趐趒跰跠跬跱跮跐跩跣跢跧跲跫跴輆軿輁輀輅輇輈輂輋遒逿����������������������������������遄遉逽鄐鄍鄏鄑鄖鄔鄋鄎酮酯鉈鉒鈰鈺鉦鈳鉥鉞銃鈮鉊鉆鉭鉬鉏鉠鉧鉯鈶鉡鉰鈱鉔鉣鉐鉲鉎鉓鉌鉖鈲閟閜閞閛隒隓隑隗雎雺雽雸雵靳靷靸靲頏頍頎颬飶飹馯馲馰馵骭骫魛鳪鳭鳧麀黽僦僔僗僨僳僛僪僝僤僓僬僰僯僣僠�".split("");
for(j = 0; j != D[224].length; ++j) if(D[224][j].charCodeAt(0) !== 0xFFFD) { e[D[224][j]] = 57344 + j; d[57344 + j] = D[224][j];}
D[225] = "����������������������������������������������������������������凘劀劁勩勫匰厬嘧嘕嘌嘒嗼嘏嘜嘁嘓嘂嗺嘝嘄嗿嗹墉塼墐墘墆墁塿塴墋塺墇墑墎塶墂墈塻墔墏壾奫嫜嫮嫥嫕嫪嫚嫭嫫嫳嫢嫠嫛嫬嫞嫝嫙嫨嫟孷寠����������������������������������寣屣嶂嶀嵽嶆嵺嶁嵷嶊嶉嶈嵾嵼嶍嵹嵿幘幙幓廘廑廗廎廜廕廙廒廔彄彃彯徶愬愨慁慞慱慳慒慓慲慬憀慴慔慺慛慥愻慪慡慖戩戧戫搫摍摛摝摴摶摲摳摽摵摦撦摎撂摞摜摋摓摠摐摿搿摬摫摙摥摷敳斠暡暠暟朅朄朢榱榶槉�".split("");
for(j = 0; j != D[225].length; ++j) if(D[225][j].charCodeAt(0) !== 0xFFFD) { e[D[225][j]] = 57600 + j; d[57600 + j] = D[225][j];}
D[226] = "����������������������������������������������������������������榠槎榖榰榬榼榑榙榎榧榍榩榾榯榿槄榽榤槔榹槊榚槏榳榓榪榡榞槙榗榐槂榵榥槆歊歍歋殞殟殠毃毄毾滎滵滱漃漥滸漷滻漮漉潎漙漚漧漘漻漒滭漊����������������������������������漶潳滹滮漭潀漰漼漵滫漇漎潃漅滽滶漹漜滼漺漟漍漞漈漡熇熐熉熀熅熂熏煻熆熁熗牄牓犗犕犓獃獍獑獌瑢瑳瑱瑵瑲瑧瑮甀甂甃畽疐瘖瘈瘌瘕瘑瘊瘔皸瞁睼瞅瞂睮瞀睯睾瞃碲碪碴碭碨硾碫碞碥碠碬碢碤禘禊禋禖禕禔禓�".split("");
for(j = 0; j != D[226].length; ++j) if(D[226][j].charCodeAt(0) !== 0xFFFD) { e[D[226][j]] = 57856 + j; d[57856 + j] = D[226][j];}
D[227] = "����������������������������������������������������������������禗禈禒禐稫穊稰稯稨稦窨窫窬竮箈箜箊箑箐箖箍箌箛箎箅箘劄箙箤箂粻粿粼粺綧綷緂綣綪緁緀緅綝緎緄緆緋緌綯綹綖綼綟綦綮綩綡緉罳翢翣翥翞����������������������������������耤聝聜膉膆膃膇膍膌膋舕蒗蒤蒡蒟蒺蓎蓂蒬蒮蒫蒹蒴蓁蓍蒪蒚蒱蓐蒝蒧蒻蒢蒔蓇蓌蒛蒩蒯蒨蓖蒘蒶蓏蒠蓗蓔蓒蓛蒰蒑虡蜳蜣蜨蝫蝀蜮蜞蜡蜙蜛蝃蜬蝁蜾蝆蜠蜲蜪蜭蜼蜒蜺蜱蜵蝂蜦蜧蜸蜤蜚蜰蜑裷裧裱裲裺裾裮裼裶裻�".split("");
for(j = 0; j != D[227].length; ++j) if(D[227][j].charCodeAt(0) !== 0xFFFD) { e[D[227][j]] = 58112 + j; d[58112 + j] = D[227][j];}
D[228] = "����������������������������������������������������������������裰裬裫覝覡覟覞觩觫觨誫誙誋誒誏誖谽豨豩賕賏賗趖踉踂跿踍跽踊踃踇踆踅跾踀踄輐輑輎輍鄣鄜鄠鄢鄟鄝鄚鄤鄡鄛酺酲酹酳銥銤鉶銛鉺銠銔銪銍����������������������������������銦銚銫鉹銗鉿銣鋮銎銂銕銢鉽銈銡銊銆銌銙銧鉾銇銩銝銋鈭隞隡雿靘靽靺靾鞃鞀鞂靻鞄鞁靿韎韍頖颭颮餂餀餇馝馜駃馹馻馺駂馽駇骱髣髧鬾鬿魠魡魟鳱鳲鳵麧僿儃儰僸儆儇僶僾儋儌僽儊劋劌勱勯噈噂噌嘵噁噊噉噆噘�".split("");
for(j = 0; j != D[228].length; ++j) if(D[228][j].charCodeAt(0) !== 0xFFFD) { e[D[228][j]] = 58368 + j; d[58368 + j] = D[228][j];}
D[229] = "����������������������������������������������������������������噚噀嘳嘽嘬嘾嘸嘪嘺圚墫墝墱墠墣墯墬墥墡壿嫿嫴嫽嫷嫶嬃嫸嬂嫹嬁嬇嬅嬏屧嶙嶗嶟嶒嶢嶓嶕嶠嶜嶡嶚嶞幩幝幠幜緳廛廞廡彉徲憋憃慹憱憰憢憉����������������������������������憛憓憯憭憟憒憪憡憍慦憳戭摮摰撖撠撅撗撜撏撋撊撌撣撟摨撱撘敶敺敹敻斲斳暵暰暩暲暷暪暯樀樆樗槥槸樕槱槤樠槿槬槢樛樝槾樧槲槮樔槷槧橀樈槦槻樍槼槫樉樄樘樥樏槶樦樇槴樖歑殥殣殢殦氁氀毿氂潁漦潾澇濆澒�".split("");
for(j = 0; j != D[229].length; ++j) if(D[229][j].charCodeAt(0) !== 0xFFFD) { e[D[229][j]] = 58624 + j; d[58624 + j] = D[229][j];}
D[230] = "����������������������������������������������������������������澍澉澌潢潏澅潚澖潶潬澂潕潲潒潐潗澔澓潝漀潡潫潽潧澐潓澋潩潿澕潣潷潪潻熲熯熛熰熠熚熩熵熝熥熞熤熡熪熜熧熳犘犚獘獒獞獟獠獝獛獡獚獙����������������������������������獢璇璉璊璆璁瑽璅璈瑼瑹甈甇畾瘥瘞瘙瘝瘜瘣瘚瘨瘛皜皝皞皛瞍瞏瞉瞈磍碻磏磌磑磎磔磈磃磄磉禚禡禠禜禢禛歶稹窲窴窳箷篋箾箬篎箯箹篊箵糅糈糌糋緷緛緪緧緗緡縃緺緦緶緱緰緮緟罶羬羰羭翭翫翪翬翦翨聤聧膣膟�".split("");
for(j = 0; j != D[230].length; ++j) if(D[230][j].charCodeAt(0) !== 0xFFFD) { e[D[230][j]] = 58880 + j; d[58880 + j] = D[230][j];}
D[231] = "����������������������������������������������������������������膞膕膢膙膗舖艏艓艒艐艎艑蔤蔻蔏蔀蔩蔎蔉蔍蔟蔊蔧蔜蓻蔫蓺蔈蔌蓴蔪蓲蔕蓷蓫蓳蓼蔒蓪蓩蔖蓾蔨蔝蔮蔂蓽蔞蓶蔱蔦蓧蓨蓰蓯蓹蔘蔠蔰蔋蔙蔯虢����������������������������������蝖蝣蝤蝷蟡蝳蝘蝔蝛蝒蝡蝚蝑蝞蝭蝪蝐蝎蝟蝝蝯蝬蝺蝮蝜蝥蝏蝻蝵蝢蝧蝩衚褅褌褔褋褗褘褙褆褖褑褎褉覢覤覣觭觰觬諏諆誸諓諑諔諕誻諗誾諀諅諘諃誺誽諙谾豍貏賥賟賙賨賚賝賧趠趜趡趛踠踣踥踤踮踕踛踖踑踙踦踧�".split("");
for(j = 0; j != D[231].length; ++j) if(D[231][j].charCodeAt(0) !== 0xFFFD) { e[D[231][j]] = 59136 + j; d[59136 + j] = D[231][j];}
D[232] = "����������������������������������������������������������������踔踒踘踓踜踗踚輬輤輘輚輠輣輖輗遳遰遯遧遫鄯鄫鄩鄪鄲鄦鄮醅醆醊醁醂醄醀鋐鋃鋄鋀鋙銶鋏鋱鋟鋘鋩鋗鋝鋌鋯鋂鋨鋊鋈鋎鋦鋍鋕鋉鋠鋞鋧鋑鋓����������������������������������銵鋡鋆銴镼閬閫閮閰隤隢雓霅霈霂靚鞊鞎鞈韐韏頞頝頦頩頨頠頛頧颲餈飺餑餔餖餗餕駜駍駏駓駔駎駉駖駘駋駗駌骳髬髫髳髲髱魆魃魧魴魱魦魶魵魰魨魤魬鳼鳺鳽鳿鳷鴇鴀鳹鳻鴈鴅鴄麃黓鼏鼐儜儓儗儚儑凞匴叡噰噠噮�".split("");
for(j = 0; j != D[232].length; ++j) if(D[232][j].charCodeAt(0) !== 0xFFFD) { e[D[232][j]] = 59392 + j; d[59392 + j] = D[232][j];}
D[233] = "����������������������������������������������������������������噳噦噣噭噲噞噷圜圛壈墽壉墿墺壂墼壆嬗嬙嬛嬡嬔嬓嬐嬖嬨嬚嬠嬞寯嶬嶱嶩嶧嶵嶰嶮嶪嶨嶲嶭嶯嶴幧幨幦幯廩廧廦廨廥彋徼憝憨憖懅憴懆懁懌憺����������������������������������憿憸憌擗擖擐擏擉撽撉擃擛擳擙攳敿敼斢曈暾曀曊曋曏暽暻暺曌朣樴橦橉橧樲橨樾橝橭橶橛橑樨橚樻樿橁橪橤橐橏橔橯橩橠樼橞橖橕橍橎橆歕歔歖殧殪殫毈毇氄氃氆澭濋澣濇澼濎濈潞濄澽澞濊澨瀄澥澮澺澬澪濏澿澸�".split("");
for(j = 0; j != D[233].length; ++j) if(D[233][j].charCodeAt(0) !== 0xFFFD) { e[D[233][j]] = 59648 + j; d[59648 + j] = D[233][j];}
D[234] = "����������������������������������������������������������������澢濉澫濍澯澲澰燅燂熿熸燖燀燁燋燔燊燇燏熽燘熼燆燚燛犝犞獩獦獧獬獥獫獪瑿璚璠璔璒璕璡甋疀瘯瘭瘱瘽瘳瘼瘵瘲瘰皻盦瞚瞝瞡瞜瞛瞢瞣瞕瞙����������������������������������瞗磝磩磥磪磞磣磛磡磢磭磟磠禤穄穈穇窶窸窵窱窷篞篣篧篝篕篥篚篨篹篔篪篢篜篫篘篟糒糔糗糐糑縒縡縗縌縟縠縓縎縜縕縚縢縋縏縖縍縔縥縤罃罻罼罺羱翯耪耩聬膱膦膮膹膵膫膰膬膴膲膷膧臲艕艖艗蕖蕅蕫蕍蕓蕡蕘�".split("");
for(j = 0; j != D[234].length; ++j) if(D[234][j].charCodeAt(0) !== 0xFFFD) { e[D[234][j]] = 59904 + j; d[59904 + j] = D[234][j];}
D[235] = "����������������������������������������������������������������蕀蕆蕤蕁蕢蕄蕑蕇蕣蔾蕛蕱蕎蕮蕵蕕蕧蕠薌蕦蕝蕔蕥蕬虣虥虤螛螏螗螓螒螈螁螖螘蝹螇螣螅螐螑螝螄螔螜螚螉褞褦褰褭褮褧褱褢褩褣褯褬褟觱諠����������������������������������諢諲諴諵諝謔諤諟諰諈諞諡諨諿諯諻貑貒貐賵賮賱賰賳赬赮趥趧踳踾踸蹀蹅踶踼踽蹁踰踿躽輶輮輵輲輹輷輴遶遹遻邆郺鄳鄵鄶醓醐醑醍醏錧錞錈錟錆錏鍺錸錼錛錣錒錁鍆錭錎錍鋋錝鋺錥錓鋹鋷錴錂錤鋿錩錹錵錪錔錌�".split("");
for(j = 0; j != D[235].length; ++j) if(D[235][j].charCodeAt(0) !== 0xFFFD) { e[D[235][j]] = 60160 + j; d[60160 + j] = D[235][j];}
D[236] = "����������������������������������������������������������������錋鋾錉錀鋻錖閼闍閾閹閺閶閿閵閽隩雔霋霒霐鞙鞗鞔韰韸頵頯頲餤餟餧餩馞駮駬駥駤駰駣駪駩駧骹骿骴骻髶髺髹髷鬳鮀鮅鮇魼魾魻鮂鮓鮒鮐魺鮕����������������������������������魽鮈鴥鴗鴠鴞鴔鴩鴝鴘鴢鴐鴙鴟麈麆麇麮麭黕黖黺鼒鼽儦儥儢儤儠儩勴嚓嚌嚍嚆嚄嚃噾嚂噿嚁壖壔壏壒嬭嬥嬲嬣嬬嬧嬦嬯嬮孻寱寲嶷幬幪徾徻懃憵憼懧懠懥懤懨懞擯擩擣擫擤擨斁斀斶旚曒檍檖檁檥檉檟檛檡檞檇檓檎�".split("");
for(j = 0; j != D[236].length; ++j) if(D[236][j].charCodeAt(0) !== 0xFFFD) { e[D[236][j]] = 60416 + j; d[60416 + j] = D[236][j];}
D[237] = "����������������������������������������������������������������檕檃檨檤檑橿檦檚檅檌檒歛殭氉濌澩濴濔濣濜濭濧濦濞濲濝濢濨燡燱燨燲燤燰燢獳獮獯璗璲璫璐璪璭璱璥璯甐甑甒甏疄癃癈癉癇皤盩瞵瞫瞲瞷瞶����������������������������������瞴瞱瞨矰磳磽礂磻磼磲礅磹磾礄禫禨穜穛穖穘穔穚窾竀竁簅簏篲簀篿篻簎篴簋篳簂簉簃簁篸篽簆篰篱簐簊糨縭縼繂縳顈縸縪繉繀繇縩繌縰縻縶繄縺罅罿罾罽翴翲耬膻臄臌臊臅臇膼臩艛艚艜薃薀薏薧薕薠薋薣蕻薤薚薞�".split("");
for(j = 0; j != D[237].length; ++j) if(D[237][j].charCodeAt(0) !== 0xFFFD) { e[D[237][j]] = 60672 + j; d[60672 + j] = D[237][j];}
D[238] = "����������������������������������������������������������������蕷蕼薉薡蕺蕸蕗薎薖薆薍薙薝薁薢薂薈薅蕹蕶薘薐薟虨螾螪螭蟅螰螬螹螵螼螮蟉蟃蟂蟌螷螯蟄蟊螴螶螿螸螽蟞螲褵褳褼褾襁襒褷襂覭覯覮觲觳謞����������������������������������謘謖謑謅謋謢謏謒謕謇謍謈謆謜謓謚豏豰豲豱豯貕貔賹赯蹎蹍蹓蹐蹌蹇轃轀邅遾鄸醚醢醛醙醟醡醝醠鎡鎃鎯鍤鍖鍇鍼鍘鍜鍶鍉鍐鍑鍠鍭鎏鍌鍪鍹鍗鍕鍒鍏鍱鍷鍻鍡鍞鍣鍧鎀鍎鍙闇闀闉闃闅閷隮隰隬霠霟霘霝霙鞚鞡鞜�".split("");
for(j = 0; j != D[238].length; ++j) if(D[238][j].charCodeAt(0) !== 0xFFFD) { e[D[238][j]] = 60928 + j; d[60928 + j] = D[238][j];}
D[239] = "����������������������������������������������������������������鞞鞝韕韔韱顁顄顊顉顅顃餥餫餬餪餳餲餯餭餱餰馘馣馡騂駺駴駷駹駸駶駻駽駾駼騃骾髾髽鬁髼魈鮚鮨鮞鮛鮦鮡鮥鮤鮆鮢鮠鮯鴳鵁鵧鴶鴮鴯鴱鴸鴰����������������������������������鵅鵂鵃鴾鴷鵀鴽翵鴭麊麉麍麰黈黚黻黿鼤鼣鼢齔龠儱儭儮嚘嚜嚗嚚嚝嚙奰嬼屩屪巀幭幮懘懟懭懮懱懪懰懫懖懩擿攄擽擸攁攃擼斔旛曚曛曘櫅檹檽櫡櫆檺檶檷櫇檴檭歞毉氋瀇瀌瀍瀁瀅瀔瀎濿瀀濻瀦濼濷瀊爁燿燹爃燽獶�".split("");
for(j = 0; j != D[239].length; ++j) if(D[239][j].charCodeAt(0) !== 0xFFFD) { e[D[239][j]] = 61184 + j; d[61184 + j] = D[239][j];}
D[240] = "����������������������������������������������������������������璸瓀璵瓁璾璶璻瓂甔甓癜癤癙癐癓癗癚皦皽盬矂瞺磿礌礓礔礉礐礒礑禭禬穟簜簩簙簠簟簭簝簦簨簢簥簰繜繐繖繣繘繢繟繑繠繗繓羵羳翷翸聵臑臒����������������������������������臐艟艞薴藆藀藃藂薳薵薽藇藄薿藋藎藈藅薱薶藒蘤薸薷薾虩蟧蟦蟢蟛蟫蟪蟥蟟蟳蟤蟔蟜蟓蟭蟘蟣螤蟗蟙蠁蟴蟨蟝襓襋襏襌襆襐襑襉謪謧謣謳謰謵譇謯謼謾謱謥謷謦謶謮謤謻謽謺豂豵貙貘貗賾贄贂贀蹜蹢蹠蹗蹖蹞蹥蹧�".split("");
for(j = 0; j != D[240].length; ++j) if(D[240][j].charCodeAt(0) !== 0xFFFD) { e[D[240][j]] = 61440 + j; d[61440 + j] = D[240][j];}
D[241] = "����������������������������������������������������������������蹛蹚蹡蹝蹩蹔轆轇轈轋鄨鄺鄻鄾醨醥醧醯醪鎵鎌鎒鎷鎛鎝鎉鎧鎎鎪鎞鎦鎕鎈鎙鎟鎍鎱鎑鎲鎤鎨鎴鎣鎥闒闓闑隳雗雚巂雟雘雝霣霢霥鞬鞮鞨鞫鞤鞪����������������������������������鞢鞥韗韙韖韘韺顐顑顒颸饁餼餺騏騋騉騍騄騑騊騅騇騆髀髜鬈鬄鬅鬩鬵魊魌魋鯇鯆鯃鮿鯁鮵鮸鯓鮶鯄鮹鮽鵜鵓鵏鵊鵛鵋鵙鵖鵌鵗鵒鵔鵟鵘鵚麎麌黟鼁鼀鼖鼥鼫鼪鼩鼨齌齕儴儵劖勷厴嚫嚭嚦嚧嚪嚬壚壝壛夒嬽嬾嬿巃幰�".split("");
for(j = 0; j != D[241].length; ++j) if(D[241][j].charCodeAt(0) !== 0xFFFD) { e[D[241][j]] = 61696 + j; d[61696 + j] = D[241][j];}
D[242] = "����������������������������������������������������������������徿懻攇攐攍攉攌攎斄旞旝曞櫧櫠櫌櫑櫙櫋櫟櫜櫐櫫櫏櫍櫞歠殰氌瀙瀧瀠瀖瀫瀡瀢瀣瀩瀗瀤瀜瀪爌爊爇爂爅犥犦犤犣犡瓋瓅璷瓃甖癠矉矊矄矱礝礛����������������������������������礡礜礗礞禰穧穨簳簼簹簬簻糬糪繶繵繸繰繷繯繺繲繴繨罋罊羃羆羷翽翾聸臗臕艤艡艣藫藱藭藙藡藨藚藗藬藲藸藘藟藣藜藑藰藦藯藞藢蠀蟺蠃蟶蟷蠉蠌蠋蠆蟼蠈蟿蠊蠂襢襚襛襗襡襜襘襝襙覈覷覶觶譐譈譊譀譓譖譔譋譕�".split("");
for(j = 0; j != D[242].length; ++j) if(D[242][j].charCodeAt(0) !== 0xFFFD) { e[D[242][j]] = 61952 + j; d[61952 + j] = D[242][j];}
D[243] = "����������������������������������������������������������������譑譂譒譗豃豷豶貚贆贇贉趬趪趭趫蹭蹸蹳蹪蹯蹻軂轒轑轏轐轓辴酀鄿醰醭鏞鏇鏏鏂鏚鏐鏹鏬鏌鏙鎩鏦鏊鏔鏮鏣鏕鏄鏎鏀鏒鏧镽闚闛雡霩霫霬霨霦����������������������������������鞳鞷鞶韝韞韟顜顙顝顗颿颽颻颾饈饇饃馦馧騚騕騥騝騤騛騢騠騧騣騞騜騔髂鬋鬊鬎鬌鬷鯪鯫鯠鯞鯤鯦鯢鯰鯔鯗鯬鯜鯙鯥鯕鯡鯚鵷鶁鶊鶄鶈鵱鶀鵸鶆鶋鶌鵽鵫鵴鵵鵰鵩鶅鵳鵻鶂鵯鵹鵿鶇鵨麔麑黀黼鼭齀齁齍齖齗齘匷嚲�".split("");
for(j = 0; j != D[243].length; ++j) if(D[243][j].charCodeAt(0) !== 0xFFFD) { e[D[243][j]] = 62208 + j; d[62208 + j] = D[243][j];}
D[244] = "����������������������������������������������������������������嚵嚳壣孅巆巇廮廯忀忁懹攗攖攕攓旟曨曣曤櫳櫰櫪櫨櫹櫱櫮櫯瀼瀵瀯瀷瀴瀱灂瀸瀿瀺瀹灀瀻瀳灁爓爔犨獽獼璺皫皪皾盭矌矎矏矍矲礥礣礧礨礤礩����������������������������������禲穮穬穭竷籉籈籊籇籅糮繻繾纁纀羺翿聹臛臙舋艨艩蘢藿蘁藾蘛蘀藶蘄蘉蘅蘌藽蠙蠐蠑蠗蠓蠖襣襦覹觷譠譪譝譨譣譥譧譭趮躆躈躄轙轖轗轕轘轚邍酃酁醷醵醲醳鐋鐓鏻鐠鐏鐔鏾鐕鐐鐨鐙鐍鏵鐀鏷鐇鐎鐖鐒鏺鐉鏸鐊鏿�".split("");
for(j = 0; j != D[244].length; ++j) if(D[244][j].charCodeAt(0) !== 0xFFFD) { e[D[244][j]] = 62464 + j; d[62464 + j] = D[244][j];}
D[245] = "����������������������������������������������������������������鏼鐌鏶鐑鐆闞闠闟霮霯鞹鞻韽韾顠顢顣顟飁飂饐饎饙饌饋饓騲騴騱騬騪騶騩騮騸騭髇髊髆鬐鬒鬑鰋鰈鯷鰅鰒鯸鱀鰇鰎鰆鰗鰔鰉鶟鶙鶤鶝鶒鶘鶐鶛����������������������������������鶠鶔鶜鶪鶗鶡鶚鶢鶨鶞鶣鶿鶩鶖鶦鶧麙麛麚黥黤黧黦鼰鼮齛齠齞齝齙龑儺儹劘劗囃嚽嚾孈孇巋巏廱懽攛欂櫼欃櫸欀灃灄灊灈灉灅灆爝爚爙獾甗癪矐礭礱礯籔籓糲纊纇纈纋纆纍罍羻耰臝蘘蘪蘦蘟蘣蘜蘙蘧蘮蘡蘠蘩蘞蘥�".split("");
for(j = 0; j != D[245].length; ++j) if(D[245][j].charCodeAt(0) !== 0xFFFD) { e[D[245][j]] = 62720 + j; d[62720 + j] = D[245][j];}
D[246] = "����������������������������������������������������������������蠩蠝蠛蠠蠤蠜蠫衊襭襩襮襫觺譹譸譅譺譻贐贔趯躎躌轞轛轝酆酄酅醹鐿鐻鐶鐩鐽鐼鐰鐹鐪鐷鐬鑀鐱闥闤闣霵霺鞿韡顤飉飆飀饘饖騹騽驆驄驂驁騺����������������������������������騿髍鬕鬗鬘鬖鬺魒鰫鰝鰜鰬鰣鰨鰩鰤鰡鶷鶶鶼鷁鷇鷊鷏鶾鷅鷃鶻鶵鷎鶹鶺鶬鷈鶱鶭鷌鶳鷍鶲鹺麜黫黮黭鼛鼘鼚鼱齎齥齤龒亹囆囅囋奱孋孌巕巑廲攡攠攦攢欋欈欉氍灕灖灗灒爞爟犩獿瓘瓕瓙瓗癭皭礵禴穰穱籗籜籙籛籚�".split("");
for(j = 0; j != D[246].length; ++j) if(D[246][j].charCodeAt(0) !== 0xFFFD) { e[D[246][j]] = 62976 + j; d[62976 + j] = D[246][j];}
D[247] = "����������������������������������������������������������������糴糱纑罏羇臞艫蘴蘵蘳蘬蘲蘶蠬蠨蠦蠪蠥襱覿覾觻譾讄讂讆讅譿贕躕躔躚躒躐躖躗轠轢酇鑌鑐鑊鑋鑏鑇鑅鑈鑉鑆霿韣顪顩飋饔饛驎驓驔驌驏驈驊����������������������������������驉驒驐髐鬙鬫鬻魖魕鱆鱈鰿鱄鰹鰳鱁鰼鰷鰴鰲鰽鰶鷛鷒鷞鷚鷋鷐鷜鷑鷟鷩鷙鷘鷖鷵鷕鷝麶黰鼵鼳鼲齂齫龕龢儽劙壨壧奲孍巘蠯彏戁戃戄攩攥斖曫欑欒欏毊灛灚爢玂玁玃癰矔籧籦纕艬蘺虀蘹蘼蘱蘻蘾蠰蠲蠮蠳襶襴襳觾�".split("");
for(j = 0; j != D[247].length; ++j) if(D[247][j].charCodeAt(0) !== 0xFFFD) { e[D[247][j]] = 63232 + j; d[63232 + j] = D[247][j];}
D[248] = "����������������������������������������������������������������讌讎讋讈豅贙躘轤轣醼鑢鑕鑝鑗鑞韄韅頀驖驙鬞鬟鬠鱒鱘鱐鱊鱍鱋鱕鱙鱌鱎鷻鷷鷯鷣鷫鷸鷤鷶鷡鷮鷦鷲鷰鷢鷬鷴鷳鷨鷭黂黐黲黳鼆鼜鼸鼷鼶齃齏����������������������������������齱齰齮齯囓囍孎屭攭曭曮欓灟灡灝灠爣瓛瓥矕礸禷禶籪纗羉艭虃蠸蠷蠵衋讔讕躞躟躠躝醾醽釂鑫鑨鑩雥靆靃靇韇韥驞髕魙鱣鱧鱦鱢鱞鱠鸂鷾鸇鸃鸆鸅鸀鸁鸉鷿鷽鸄麠鼞齆齴齵齶囔攮斸欘欙欗欚灢爦犪矘矙礹籩籫糶纚�".split("");
for(j = 0; j != D[248].length; ++j) if(D[248][j].charCodeAt(0) !== 0xFFFD) { e[D[248][j]] = 63488 + j; d[63488 + j] = D[248][j];}
D[249] = "����������������������������������������������������������������纘纛纙臠臡虆虇虈襹襺襼襻觿讘讙躥躤躣鑮鑭鑯鑱鑳靉顲饟鱨鱮鱭鸋鸍鸐鸏鸒鸑麡黵鼉齇齸齻齺齹圞灦籯蠼趲躦釃鑴鑸鑶鑵驠鱴鱳鱱鱵鸔鸓黶鼊����������������������������������龤灨灥糷虪蠾蠽蠿讞貜躩軉靋顳顴飌饡馫驤驦驧鬤鸕鸗齈戇欞爧虌躨钂钀钁驩驨鬮鸙爩虋讟钃鱹麷癵驫鱺鸝灩灪麤齾齉龘碁銹裏墻恒粧嫺╔╦╗╠╬╣╚╩╝╒╤╕╞╪╡╘╧╛╓╥╖╟╫╢╙╨╜║═╭╮╰╯▓�".split("");
for(j = 0; j != D[249].length; ++j) if(D[249][j].charCodeAt(0) !== 0xFFFD) { e[D[249][j]] = 63744 + j; d[63744 + j] = D[249][j];}
return {"enc": e, "dec": d }; })();
cptable[1250] = (function(){ var d = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚�„…†‡�‰Š‹ŚŤŽŹ�‘’“”•–—�™š›śťžź ˇ˘Ł¤Ą¦§¨©Ş«¬­®Ż°±˛ł´µ¶·¸ąş»Ľ˝ľżŔÁÂĂÄĹĆÇČÉĘËĚÍÎĎĐŃŇÓÔŐÖ×ŘŮÚŰÜÝŢßŕáâăäĺćçčéęëěíîďđńňóôőö÷řůúűüýţ˙", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {"enc": e, "dec": D }; })();
cptable[1251] = (function(){ var d = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ЂЃ‚ѓ„…†‡€‰Љ‹ЊЌЋЏђ‘’“”•–—�™љ›њќћџ ЎўЈ¤Ґ¦§Ё©Є«¬­®Ї°±Ііґµ¶·ё№є»јЅѕїАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {"enc": e, "dec": D }; })();
cptable[1252] = (function(){ var d = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡ˆ‰Š‹Œ�Ž��‘’“”•–—˜™š›œ�žŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {"enc": e, "dec": D }; })();
cptable[1253] = (function(){ var d = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡�‰�‹�����‘’“”•–—�™�›���� ΅Ά£¤¥¦§¨©�«¬­®―°±²³΄µ¶·ΈΉΊ»Ό½ΎΏΐΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡ�ΣΤΥΦΧΨΩΪΫάέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώ�", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {"enc": e, "dec": D }; })();
cptable[1254] = (function(){ var d = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡ˆ‰Š‹Œ����‘’“”•–—˜™š›œ��Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏĞÑÒÓÔÕÖרÙÚÛÜİŞßàáâãäåæçèéêëìíîïğñòóôõö÷øùúûüışÿ", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {"enc": e, "dec": D }; })();
cptable[1255] = (function(){ var d = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡ˆ‰�‹�����‘’“”•–—˜™�›���� ¡¢£₪¥¦§¨©×«¬­®¯°±²³´µ¶·¸¹÷»¼½¾¿ְֱֲֳִֵֶַָֹ�ֻּֽ־ֿ׀ׁׂ׃װױײ׳״�������אבגדהוזחטיךכלםמןנסעףפץצקרשת��‎‏�", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {"enc": e, "dec": D }; })();
cptable[1256] = (function(){ var d = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€پ‚ƒ„…†‡ˆ‰ٹ‹Œچژڈگ‘’“”•–—ک™ڑ›œ‌‍ں ،¢£¤¥¦§¨©ھ«¬­®¯°±²³´µ¶·¸¹؛»¼½¾؟ہءآأؤإئابةتثجحخدذرزسشصض×طظعغـفقكàلâمنهوçèéêëىيîïًٌٍَôُِ÷ّùْûü‎‏ے", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {"enc": e, "dec": D }; })();
cptable[1257] = (function(){ var d = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚�„…†‡�‰�‹�¨ˇ¸�‘’“”•–—�™�›�¯˛� �¢£¤�¦§Ø©Ŗ«¬­®Æ°±²³´µ¶·ø¹ŗ»¼½¾æĄĮĀĆÄÅĘĒČÉŹĖĢĶĪĻŠŃŅÓŌÕÖ×ŲŁŚŪÜŻŽßąįāćäåęēčéźėģķīļšńņóōõö÷ųłśūüżž˙", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {"enc": e, "dec": D }; })();
cptable[1258] = (function(){ var d = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡ˆ‰�‹Œ����‘’“”•–—˜™�›œ��Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂĂÄÅÆÇÈÉÊË̀ÍÎÏĐÑ̉ÓÔƠÖרÙÚÛÜỮßàáâăäåæçèéêë́íîïđṇ̃óôơö÷øùúûüư₫ÿ", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {"enc": e, "dec": D }; })();
cptable[10000] = (function(){ var d = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤‹›fifl‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {"enc": e, "dec": D }; })();
cptable[10006] = (function(){ var d = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~Ĺ²É³ÖÜ΅àâä΄¨çéèê룙î‰ôö¦­ùûü†ΓΔΘΛΞΠß®©ΣΪ§≠°·Α±≤≥¥ΒΕΖΗΙΚΜΦΫΨΩάΝ¬ΟΡ≈Τ«»… ΥΧΆΈœ–―“”‘’÷ΉΊΌΎέήίόΏύαβψδεφγηιξκλμνοπώρστθωςχυζϊϋΐΰ�", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {"enc": e, "dec": D }; })();
cptable[10007] = (function(){ var d = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ†°¢£§•¶І®©™Ђђ≠Ѓѓ∞±≤≥іµ∂ЈЄєЇїЉљЊњјЅ¬√ƒ≈∆«»… ЋћЌќѕ–—“”‘’÷„ЎўЏџ№Ёёяабвгдежзийклмнопрстуфхцчшщъыьэю¤", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {"enc": e, "dec": D }; })();
cptable[10029] = (function(){ var d = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄĀāÉĄÖÜáąČäčĆć鏟ĎíďĒēĖóėôöõúĚěü†°Ę£§•¶ß®©™ę¨≠ģĮįĪ≤≥īĶ∂∑łĻļĽľĹĺŅņѬ√ńŇ∆«»… ňŐÕőŌ–—“”‘’÷◊ōŔŕŘ‹›řŖŗŠ‚„šŚśÁŤťÍŽžŪÓÔūŮÚůŰűŲųÝýķŻŁżĢˇ", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {"enc": e, "dec": D }; })();
cptable[10079] = (function(){ var d = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûüݰ¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤ÐðÞþý·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {"enc": e, "dec": D }; })();
cptable[10081] = (function(){ var d = "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007\b\t\n\u000b\f\r\u000e\u000f\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017\u0018\u0019\u001a\u001b\u001c\u001d\u001e\u001f !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸĞğİıŞş‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙ�ˆ˜¯˘˙˚¸˝˛ˇ", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {"enc": e, "dec": D }; })();
if (typeof module !== 'undefined' && module.exports) module.exports = cptable;
/* cputils.js (C) 2013-2014 SheetJS -- http://sheetjs.com */
/*jshint newcap: false */
(function(root, factory){
  "use strict";
  if(typeof cptable === "undefined") {
    if(typeof require !== "undefined"){
      var cpt = require('./cpt' + 'able');
      if (typeof module !== 'undefined' && module.exports) module.exports = factory(cpt);
      else root.cptable = factory(cpt);
    } else throw new Error("cptable not found");
  } else cptable = factory(cptable);
}(this, function(cpt){
  "use strict";
  var magic = {
    "1200":"utf16le",
    "1201":"utf16be",
    "12000":"utf32le",
    "12001":"utf32be",
    "16969":"utf64le",
    "20127":"ascii",
    "65000":"utf7",
    "65001":"utf8"
  };
  var sbcs_cache = [874,1250,1251,1252,1253,1254,1255,1256,10000];
  var dbcs_cache = [932,936,949,950];
  var magic_cache = [65001];
  var magic_decode = {};
  var magic_encode = {};
  var cpecache = {};
  var cpdcache = {};
  var sfcc = function sfcc(x) { return String.fromCharCode(x); };
  var cca = function cca(x){ return x.charCodeAt(0); };
  var has_buf = (typeof Buffer !== 'undefined');
  if(has_buf) {
    var mdl = 1024, mdb = new Buffer(mdl);
    var make_EE = function make_EE(E){
      var EE = new Buffer(65536);
      for(var i = 0; i < 65536;++i) EE[i] = 0;
      var keys = Object.keys(E), len = keys.length;
      for(var ee = 0, e = keys[ee]; ee < len; ++ee) {
        if(!(e = keys[ee])) continue;
        EE[e.charCodeAt(0)] = E[e];
      }
      return EE;
    };
    var sbcs_encode = function make_sbcs_encode(cp) {
      var EE = make_EE(cpt[cp].enc);
      return function sbcs_e(data, ofmt) {
        var len = data.length;
        var out, i, j, D, w;
        if(typeof data === 'string') {
          out = Buffer(len);
          for(i = 0; i < len; ++i) out[i] = EE[data.charCodeAt(i)];
        } else if(Buffer.isBuffer(data)) {
          out = Buffer(2*len);
          j = 0;
          for(i = 0; i < len; ++i) {
            D = data[i];
            if(D < 128) out[j++] = EE[D];
            else if(D < 224) { out[j++] = EE[((D&31)<<6)+(data[i+1]&63)]; ++i; }
            else if(D < 240) { out[j++] = EE[((D&15)<<12)+((data[i+1]&63)<<6)+(data[i+2]&63)]; i+=2; }
            else {
              w = ((D&7)<<18)+((data[i+1]&63)<<12)+((data[i+2]&63)<<6)+(data[i+3]&63); i+=3;
              if(w < 65536) out[j++] = EE[w];
              else { w -= 65536; out[j++] = EE[0xD800 + ((w>>10)&1023)]; out[j++] = EE[0xDC00 + (w&1023)]; }
            }
          }
          out.length = j;
          out = out.slice(0,j);
        } else {
          out = Buffer(len);
          for(i = 0; i < len; ++i) out[i] = EE[data[i].charCodeAt(0)];
        }
        if(ofmt === undefined || ofmt === 'buf') return out;
        if(ofmt !== 'arr') return out.toString('binary');
        return [].slice.call(out);
      };
    };
    var sbcs_decode = function make_sbcs_decode(cp) {
      var D = cpt[cp].dec;
      var DD = new Buffer(131072), d=0, c;
      for(d=0;d<D.length;++d) {
        if(!(c=D[d])) continue;
        var w = c.charCodeAt(0);
        DD[2*d] = w&255; DD[2*d+1] = w>>8;
      }
      return function sbcs_d(data) {
        var len = data.length, i=0, j;
        if(2 * len > mdl) { mdl = 2 * len; mdb = new Buffer(mdl); }
        if(Buffer.isBuffer(data)) {
          for(i = 0; i < len; i++) {
            j = 2*data[i];
            mdb[2*i] = DD[j]; mdb[2*i+1] = DD[j+1];
          }
        } else if(typeof data === "string") {
          for(i = 0; i < len; i++) {
            j = 2*data.charCodeAt(i);
            mdb[2*i] = DD[j]; mdb[2*i+1] = DD[j+1];
          }
        } else {
          for(i = 0; i < len; i++) {
            j = 2*data[i];
            mdb[2*i] = DD[j]; mdb[2*i+1] = DD[j+1];
          }
        }
        mdb.length = 2 * len;
        return mdb.toString('ucs2');
      };
    };
    var dbcs_encode = function make_dbcs_encode(cp) {
      var E = cpt[cp].enc;
      var EE = new Buffer(131072);
      for(var i = 0; i < 131072; ++i) EE[i] = 0;
      var keys = Object.keys(E);
      for(var ee = 0, e = keys[ee]; ee < keys.length; ++ee) {
        if(!(e = keys[ee])) continue;
        var f = e.charCodeAt(0);
        EE[2*f] = E[e] & 255; EE[2*f+1] = E[e]>>8;
      }
      return function dbcs_e(data, ofmt) {
        var len = data.length, out = new Buffer(2*len), i, j, jj, k, D;
        if(typeof data === 'string') {
          for(i = k = 0; i < len; ++i) {
            j = data.charCodeAt(i)*2;
            out[k++] = EE[j+1] || EE[j]; if(EE[j+1] > 0) out[k++] = EE[j];
          }
          out.length = k;
          out = out.slice(0,k);
        } else if(Buffer.isBuffer(data)) {
          for(i = k = 0; i < len; ++i) {
            D = data[i];
            if(D < 128) j = D;
            else if(D < 224) { j = ((D&31)<<6)+(data[i+1]&63); ++i; }
            else if(D < 240) { j = ((D&15)<<12)+((data[i+1]&63)<<6)+(data[i+2]&63); i+=2; }
            else { j = ((D&7)<<18)+((data[i+1]&63)<<12)+((data[i+2]&63)<<6)+(data[i+3]&63); i+=3; }
            if(j<65536) { j*=2; out[k++] = EE[j+1] || EE[j]; if(EE[j+1] > 0) out[k++] = EE[j]; }
            else { jj = j-65536;
              j=2*(0xD800 + ((jj>>10)&1023)); out[k++] = EE[j+1] || EE[j]; if(EE[j+1] > 0) out[k++] = EE[j];
              j=2*(0xDC00 + (jj&1023)); out[k++] = EE[j+1] || EE[j]; if(EE[j+1] > 0) out[k++] = EE[j];
            }
          }
          out.length = k;
          out = out.slice(0,k);
        } else {
          for(i = k = 0; i < len; i++) {
            j = data[i].charCodeAt(0)*2;
            out[k++] = EE[j+1] || EE[j]; if(EE[j+1] > 0) out[k++] = EE[j];
          }
        }
        if(ofmt === undefined || ofmt === 'buf') return out;
        if(ofmt !== 'arr') return out.toString('binary');
        return [].slice.call(out);
      };
    };
    var dbcs_decode = function make_dbcs_decode(cp) {
      var D = cpt[cp].dec;
      var DD = new Buffer(131072), d=0, c, w=0, j=0, i=0;
      for(i = 0; i < 65536; ++i) { DD[2*i] = 0xFF; DD[2*i+1] = 0xFD;}
      for(d = 0; d < D.length; ++d) {
        if(!(c=D[d])) continue;
        w = c.charCodeAt(0);
        j = 2*d;
        DD[j] = w&255; DD[j+1] = w>>8;
      }
      return function dbcs_d(data) {
        var len = data.length, out = new Buffer(2*len), i, j, k=0;
        if(Buffer.isBuffer(data)) {
          for(i = 0; i < len; i++) {
            j = 2*data[i];
            if(DD[j]===0xFF && DD[j+1]===0xFD) { j=2*((data[i]<<8)+data[i+1]); ++i; }
            out[k++] = DD[j]; out[k++] = DD[j+1];
          }
        } else if(typeof data === "string") {
          for(i = 0; i < len; i++) {
            j = 2*data.charCodeAt(i);
            if(DD[j]===0xFF && DD[j+1]===0xFD) { j=2*((data.charCodeAt(i)<<8)+data.charCodeAt(i+1)); ++i; }
            out[k++] = DD[j]; out[k++] = DD[j+1];
          }
        } else {
          for(i = 0; i < len; i++) {
            j = 2*data[i];
            if(DD[j]===0xFF && DD[j+1]===0xFD) { j=2*((data[i]<<8)+data[i+1]); ++i; }
            out[k++] = DD[j]; out[k++] = DD[j+1];
          }
        }
        out.length = k;
        return out.toString('ucs2');
      };
    };
    magic_decode[65001] = function utf8_d(data) {
      var len = data.length, w = 0, ww = 0;
      if(4 * len > mdl) { mdl = 4 * len; mdb = new Buffer(mdl); }
      mdb.length = 0;
      var i = 0;
      if(len >= 3 && data[0] == 0xEF) if(data[1] == 0xBB && data[2] == 0xBF) i = 3;
      for(var j = 1, k = 0, D = 0; i < len; i+=j) {
        j = 1; D = data[i];
        if(D < 128) w = D;
        else if(D < 224) { w=(D&31)*64+(data[i+1]&63); j=2; }
        else if(D < 240) { w=((D&15)<<12)+(data[i+1]&63)*64+(data[i+2]&63); j=3; }
        else { w=(D&7)*262144+((data[i+1]&63)<<12)+(data[i+2]&63)*64+(data[i+3]&63); j=4; }
        if(w < 65536) { mdb[k++] = w&255; mdb[k++] = w>>8; }
        else {
          w -= 65536; ww = 0xD800 + ((w>>10)&1023); w = 0xDC00 + (w&1023);
          mdb[k++] = ww&255; mdb[k++] = ww>>>8; mdb[k++] = w&255; mdb[k++] = (w>>>8)&255;
        }
      }
      mdb.length = k;
      return mdb.toString('ucs2');
    };
    magic_encode[65001] = function utf8_e(data, ofmt) {
      var len = data.length, w = 0, ww = 0, j = 0;
      var direct = typeof data === "string";
      if(4 * len > mdl) { mdl = 4 * len; mdb = new Buffer(mdl); }
      for(var i = 0; i < len; ++i) {
        w = direct ? data.charCodeAt(i) : data[i].charCodeAt(0);
        if(w <= 0x007F) mdb[j++] = w;
        else if(w <= 0x07FF) {
          mdb[j++] = 192 + (w >> 6);
          mdb[j++] = 128 + (w&63);
        } else if(w >= 0xD800 && w <= 0xDFFF) {
          w -= 0xD800; ++i;
          ww = (direct ? data.charCodeAt(i) : data[i].charCodeAt(0)) - 0xDC00 + (w << 10);
          mdb[j++] = 240 + ((ww>>>18) & 0x07);
          mdb[j++] = 144 + ((ww>>>12) & 0x3F);
          mdb[j++] = 128 + ((ww>>>6) & 0x3F);
          mdb[j++] = 128 + (ww & 0x3F);
        } else {
          mdb[j++] = 224 + (w >> 12);
          mdb[j++] = 128 + ((w >> 6)&63);
          mdb[j++] = 128 + (w&63);
        }
      }
      mdb.length = j;
      if(ofmt === undefined || ofmt === 'buf') return mdb;
      if(ofmt !== 'arr') return mdb.toString('binary');
      return [].slice.call(mdb);
    };
  }
  var encache = function encache() {
    if(has_buf) {
      if(cpdcache[sbcs_cache[0]]) return;
      var i, s;
      for(i = 0; i < sbcs_cache.length; ++i) {
        s = sbcs_cache[i];
        if(cpt[s]) {
          cpdcache[s] = sbcs_decode(s);
          cpecache[s] = sbcs_encode(s);
        }
      }
      for(i = 0; i < dbcs_cache.length; ++i) {
        s = dbcs_cache[i];
        if(cpt[s]) {
          cpdcache[s] = dbcs_decode(s);
          cpecache[s] = dbcs_encode(s);
        }
      }
      for(i = 0; i < magic_cache.length; ++i) {
        s = magic_cache[i];
        if(magic_decode[s]) cpdcache[s] = magic_decode[s];
        if(magic_encode[s]) cpecache[s] = magic_encode[s];
      }
    }
  };
  var cp_decache = function cp_decache(cp) { cpdcache[cp] = cpecache[cp] = undefined; };
  var decache = function decache() {
    if(has_buf) {
      if(!cpdcache[sbcs_cache[0]]) return;
      sbcs_cache.forEach(cp_decache);
      dbcs_cache.forEach(cp_decache);
      magic_cache.forEach(cp_decache);
    }
    last_enc = last_cp = undefined;
  };
  var cache = {
    encache: encache,
    decache: decache,
    sbcs: sbcs_cache,
    dbcs: dbcs_cache
  };
  encache();
  var BM = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
  var SetD = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'(),-./:?";
  var last_enc, last_cp;
  var encode = function encode(cp, data, ofmt) {
    if(cp === last_cp) { return last_enc(data, ofmt); }
    if(cpecache[cp] !== undefined) { last_enc = cpecache[last_cp=cp]; return last_enc(data, ofmt); }
    if(has_buf && Buffer.isBuffer(data)) data = data.toString('utf8');
    var len = data.length;
    var out = has_buf ? new Buffer(4*len) : [], w, i, j = 0, c, tt, ww;
    var C = cpt[cp], E, M;
    if(C && (E=C.enc)) for(i = 0; i < len; ++i, ++j) {
      w = E[data[i]];
      out[j] = w&255;
      if(w > 255) {
        out[j] = w>>8;
        out[++j] = w&255;
      }
    }
    else if((M=magic[cp])) switch(M) {
      case "utf8":
        if(has_buf && typeof data === "string") { out = new Buffer(data, M); j = out.length; break; }
        for(i = 0; i < len; ++i, ++j) {
          w = data[i].charCodeAt(0);
          if(w <= 0x007F) out[j] = w;
          else if(w <= 0x07FF) {
            out[j]   = 192 + (w >> 6);
            out[++j] = 128 + (w&63);
          } else if(w >= 0xD800 && w <= 0xDFFF) {
            w -= 0xD800;
            ww = data[++i].charCodeAt(0) - 0xDC00 + (w << 10);
            out[j]   = 240 + ((ww>>>18) & 0x07);
            out[++j] = 144 + ((ww>>>12) & 0x3F);
            out[++j] = 128 + ((ww>>>6) & 0x3F);
            out[++j] = 128 + (ww & 0x3F);
          } else {
            out[j]   = 224 + (w >> 12);
            out[++j] = 128 + ((w >> 6)&63);
            out[++j] = 128 + (w&63);
          }
        }
        break;
      case "ascii":
        if(has_buf && typeof data === "string") { out = new Buffer(data, M); j = out.length; break; }
        for(i = 0; i < len; ++i, ++j) {
          w = data[i].charCodeAt(0);
          if(w <= 0x007F) out[j] = w;
          else throw new Error("bad ascii " + w);
        }
        break;
      case "utf16le":
        if(has_buf && typeof data === "string") { out = new Buffer(data, M); j = out.length; break; }
        for(i = 0; i < len; ++i) {
          w = data[i].charCodeAt(0);
          out[j++] = w&255;
          out[j++] = w>>8;
        }
        break;
      case "utf16be":
        for(i = 0; i < len; ++i) {
          w = data[i].charCodeAt(0);
          out[j++] = w>>8;
          out[j++] = w&255;
        }
        break;
      case "utf32le":
        for(i = 0; i < len; ++i) {
          w = data[i].charCodeAt(0);
          if(w >= 0xD800 && w <= 0xDFFF) w = 0x10000 + ((w - 0xD800) << 10) + (data[++i].charCodeAt(0) - 0xDC00);
          out[j++] = w&255; w >>= 8;
          out[j++] = w&255; w >>= 8;
          out[j++] = w&255; w >>= 8;
          out[j++] = w&255;
        }
        break;
      case "utf32be":
        for(i = 0; i < len; ++i) {
          w = data[i].charCodeAt(0);
          if(w >= 0xD800 && w <= 0xDFFF) w = 0x10000 + ((w - 0xD800) << 10) + (data[++i].charCodeAt(0) - 0xDC00);
          out[j+3] = w&255; w >>= 8;
          out[j+2] = w&255; w >>= 8;
          out[j+1] = w&255; w >>= 8;
          out[j] = w&255; w >>= 8;
          j+=4;
        }
        break;
      case "utf7":
        for(i = 0; i < len; i++) {
          c = data[i];
          if(c === "+") { out[j++] = 0x2b; out[j++] = 0x2d; continue; }
          if(SetD.indexOf(c) > -1) { out[j++] = c.charCodeAt(0); continue; }
          tt = encode(1201, c);
          out[j++] = 0x2b;
          out[j++] = BM.charCodeAt(tt[0]>>2);
          out[j++] = BM.charCodeAt(((tt[0]&0x03)<<4) + ((tt[1]||0)>>4));
          out[j++] = BM.charCodeAt(((tt[1]&0x0F)<<2) + ((tt[2]||0)>>6));
          out[j++] = 0x2d;
        }
        break;
      default: throw new Error("Unsupported magic: " + cp + " " + magic[cp]);
    }
    else throw new Error("Unrecognized CP: " + cp);
    out.length = j;
    out = out.slice(0,j);
    if(typeof Buffer === 'undefined') return (ofmt == 'str') ? out.map(sfcc).join("") : out;
    if(ofmt === undefined || ofmt === 'buf') return out;
    if(ofmt !== 'arr') return out.toString('binary');
    return [].slice.call(out);
  };
  var decode = function decode(cp, data) {
    var F; if((F=cpdcache[cp])) return F(data);
    var len = data.length, out = new Array(len), w, i, j = 1, k = 0, ww;
    var C = cpt[cp], D, M;
    if(C && (D=C.dec)) {
      if(typeof data === "string") data = data.split("").map(cca);
      for(i = 0; i < len; i+=j) {
        j = 2;
        w = D[(data[i]<<8)+ data[i+1]];
        if(!w) {
          j = 1;
          w = D[data[i]];
        }
        if(!w) throw new Error('Unrecognized code: ' + data[i] + ' ' + data[i+j-1] + ' ' + i + ' ' + j + ' ' + D[data[i]]);
        out[k++] = w;
      }
    }
    else if((M=magic[cp])) switch(M) {
      case "utf8":
        i = 0;
        if(len >= 3 && data[0] == 0xEF) if(data[1] == 0xBB && data[2] == 0xBF) i = 3;
        for(; i < len; i+=j) {
          j = 1;
          if(data[i] < 128) w = data[i];
          else if(data[i] < 224) { w=(data[i]&31)*64+(data[i+1]&63); j=2; }
          else if(data[i] < 240) { w=((data[i]&15)<<12)+(data[i+1]&63)*64+(data[i+2]&63); j=3; }
          else { w=(data[i]&7)*262144+((data[i+1]&63)<<12)+(data[i+2]&63)*64+(data[i+3]&63); j=4; }
          if(w < 65536) { out[k++] = String.fromCharCode(w); }
          else {
            w -= 65536; ww = 0xD800 + ((w>>10)&1023); w = 0xDC00 + (w&1023);
            out[k++] = String.fromCharCode(ww); out[k++] = String.fromCharCode(w);
          }
        }
        break;
      case "ascii":
        if(has_buf && Buffer.isBuffer(data)) return data.toString(M);
        for(i = 0; i < len; i++) out[i] = String.fromCharCode(data[i]);
        k = len; break;
      case "utf16le":
        i = 0;
        if(len >= 2 && data[0] == 0xFF) if(data[1] == 0xFE) i = 2;
        if(has_buf && Buffer.isBuffer(data)) return data.toString(M);
        j = 2;
        for(; i < len; i+=j) {
          out[k++] = String.fromCharCode((data[i+1]<<8) + data[i]);
        }
        break;
      case "utf16be":
        i = 0;
        if(len >= 2 && data[0] == 0xFE) if(data[1] == 0xFF) i = 2;
        j = 2;
        for(; i < len; i+=j) {
          out[k++] = String.fromCharCode((data[i]<<8) + data[i+1]);
        }
        break;
      case "utf32le":
        i = 0;
        if(len >= 4 && data[0] == 0xFF) if(data[1] == 0xFE && data[2] == 0 && data[3] == 0) i = 4;
        j = 4;
        for(; i < len; i+=j) {
          w = (data[i+3]<<24) + (data[i+2]<<16) + (data[i+1]<<8) + (data[i]);
          if(w > 0xFFFF) {
            w -= 0x10000;
            out[k++] = String.fromCharCode(0xD800 + ((w >> 10) & 0x3FF));
            out[k++] = String.fromCharCode(0xDC00 + (w & 0x3FF));
          }
          else out[k++] = String.fromCharCode(w);
        }
        break;
      case "utf32be":
        i = 0;
        if(len >= 4 && data[3] == 0xFF) if(data[2] == 0xFE && data[1] == 0 && data[0] == 0) i = 4;
        j = 4;
        for(; i < len; i+=j) {
          w = (data[i]<<24) + (data[i+1]<<16) + (data[i+2]<<8) + (data[i+3]);
          if(w > 0xFFFF) {
            w -= 0x10000;
            out[k++] = String.fromCharCode(0xD800 + ((w >> 10) & 0x3FF));
            out[k++] = String.fromCharCode(0xDC00 + (w & 0x3FF));
          }
          else out[k++] = String.fromCharCode(w);
        }
        break;
      case "utf7":
        i = 0;
        if(len >= 4 && data[0] == 0x2B && data[1] == 0x2F && data[2] == 0x76) {
          if(len >= 5 && data[3] == 0x38 && data[4] == 0x2D) i = 5;
          else if(data[3] == 0x38 || data[3] == 0x39 || data[3] == 0x2B || data[3] == 0x2F) i = 4;
        }
        for(; i < len; i+=j) {
          if(data[i] !== 0x2b) { j=1; out[k++] = String.fromCharCode(data[i]); continue; }
          j=1;
          if(data[i+1] === 0x2d) { j = 2; out[k++] = "+"; continue; }
          while(String.fromCharCode(data[i+j]).match(/[A-Za-z0-9+\/]/)) j++;
          var dash = 0;
          if(data[i+j] === 0x2d) { ++j; dash=1; }
          var tt = [];
          var o64;
          var c1, c2, c3;
          var e1, e2, e3, e4;
          for(var l = 1; l < j - dash;) {
            e1 = BM.indexOf(String.fromCharCode(data[i+l++]));
            e2 = BM.indexOf(String.fromCharCode(data[i+l++]));
            c1 = e1 << 2 | e2 >> 4;
            tt.push(c1);
            e3 = BM.indexOf(String.fromCharCode(data[i+l++]));
            if(e3 === -1) break;
            c2 = (e2 & 15) << 4 | e3 >> 2;
            tt.push(c2);
            e4 = BM.indexOf(String.fromCharCode(data[i+l++]));
            if(e4 === -1) break;
            c3 = (e3 & 3) << 6 | e4;
            if(e4 < 64) tt.push(c3);
          }
          if((tt.length & 1) === 1) tt.length--;
          o64 = decode(1201, tt);
          for(l = 0; l < o64.length; ++l) out[k++] = o64[l];
        }
        break;
      default: throw new Error("Unsupported magic: " + cp + " " + magic[cp]);
    }
    else throw new Error("Unrecognized CP: " + cp);
    out.length = k;
    return out.join("");
  };
  var hascp = function hascp(cp) { return cpt[cp] || magic[cp]; };
  cpt.utils = { decode: decode, encode: encode, hascp: hascp, magic: magic, cache:cache };
  return cpt;
}));
Source/UBCS-WEB/src/config/js-xlsx-master/dist/jszip.js
¶Ô±ÈÐÂÎļþ
ÎļþÌ«´ó
Source/UBCS-WEB/src/config/js-xlsx-master/dist/ods.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,414 @@
/* ods.js (C) 2014 SheetJS -- http://sheetjs.com */
/* vim: set ts=2: */
/*jshint -W041 */
var ODS = {};
(function make_ods(ODS) {
/* Open Document Format for Office Applications (OpenDocument) Version 1.2 */
var get_utils = function() {
    if(typeof XLSX !== 'undefined') return XLSX.utils;
    if(typeof module !== "undefined" && typeof require !== 'undefined') try {
        return require('../' + 'xlsx').utils;
    } catch(e) {
        try { return require('./' + 'xlsx').utils; }
        catch(ee) { return require('xl' + 'sx').utils; }
    }
    throw new Error("Cannot find XLSX utils");
};
var has_buf = (typeof Buffer !== 'undefined');
function cc2str(arr) {
    var o = "";
    for(var i = 0; i != arr.length; ++i) o += String.fromCharCode(arr[i]);
    return o;
}
function getdata(data) {
    if(!data) return null;
    if(data.data) return data.data;
    if(data.asNodeBuffer && has_buf) return data.asNodeBuffer().toString('binary');
    if(data.asBinary) return data.asBinary();
    if(data._data && data._data.getContent) return cc2str(Array.prototype.slice.call(data._data.getContent(),0));
    return null;
}
function safegetzipfile(zip, file) {
    var f = file; if(zip.files[f]) return zip.files[f];
    f = file.toLowerCase(); if(zip.files[f]) return zip.files[f];
    f = f.replace(/\//g,'\\'); if(zip.files[f]) return zip.files[f];
    return null;
}
function getzipfile(zip, file) {
    var o = safegetzipfile(zip, file);
    if(o == null) throw new Error("Cannot find file " + file + " in zip");
    return o;
}
function getzipdata(zip, file, safe) {
    if(!safe) return getdata(getzipfile(zip, file));
    if(!file) return null;
    try { return getzipdata(zip, file); } catch(e) { return null; }
}
var _fs, jszip;
if(typeof JSZip !== 'undefined') jszip = JSZip;
if (typeof exports !== 'undefined') {
    if (typeof module !== 'undefined' && module.exports) {
        if(has_buf && typeof jszip === 'undefined') jszip = require('js'+'zip');
        if(typeof jszip === 'undefined') jszip = require('./js'+'zip').JSZip;
        _fs = require('f'+'s');
    }
}
var attregexg=/\b[\w:-]+=["'][^"]*['"]/g;
var tagregex=/<[^>]*>/g;
var nsregex=/<\w*:/, nsregex2 = /<(\/?)\w+:/;
function parsexmltag(tag, skip_root) {
    var z = [];
    var eq = 0, c = 0;
    for(; eq !== tag.length; ++eq) if((c = tag.charCodeAt(eq)) === 32 || c === 10 || c === 13) break;
    if(!skip_root) z[0] = tag.substr(0, eq);
    if(eq === tag.length) return z;
    var m = tag.match(attregexg), j=0, w="", v="", i=0, q="", cc="";
    if(m) for(i = 0; i != m.length; ++i) {
        cc = m[i];
        for(c=0; c != cc.length; ++c) if(cc.charCodeAt(c) === 61) break;
        q = cc.substr(0,c); v = cc.substring(c+2, cc.length-1);
        for(j=0;j!=q.length;++j) if(q.charCodeAt(j) === 58) break;
        if(j===q.length) z[q] = v;
        else z[(j===5 && q.substr(0,5)==="xmlns"?"xmlns":"")+q.substr(j+1)] = v;
    }
    return z;
}
function strip_ns(x) { return x.replace(nsregex2, "<$1"); }
var encodings = {
    '&quot;': '"',
    '&apos;': "'",
    '&gt;': '>',
    '&lt;': '<',
    '&amp;': '&'
};
var rencoding = {
    '"': '&quot;',
    "'": '&apos;',
    '>': '&gt;',
    '<': '&lt;',
    '&': '&amp;'
};
var rencstr = "&<>'\"".split("");
// TODO: CP remap (need to read file version to determine OS)
var encregex = /&[a-z]*;/g, coderegex = /_x([\da-fA-F]+)_/g;
function unescapexml(text){
    var s = text + '';
    return s.replace(encregex, function($$) { return encodings[$$]; }).replace(coderegex,function(m,c) {return String.fromCharCode(parseInt(c,16));});
}
var decregex=/[&<>'"]/g, charegex = /[\u0000-\u0008\u000b-\u001f]/g;
function escapexml(text){
    var s = text + '';
    return s.replace(decregex, function(y) { return rencoding[y]; }).replace(charegex,function(s) { return "_x" + ("000"+s.charCodeAt(0).toString(16)).substr(-4) + "_";});
}
function parsexmlbool(value, tag) {
    switch(value) {
        case '1': case 'true': case 'TRUE': return true;
        /* case '0': case 'false': case 'FALSE':*/
        default: return false;
    }
}
function datenum(v) {
    var epoch = Date.parse(v);
    return (epoch + 2209161600000) / (24 * 60 * 60 * 1000);
}
/* ISO 8601 Duration */
function parse_isodur(s) {
    var sec = 0, mt = 0, time = false;
    var m = s.match(/P([0-9\.]+Y)?([0-9\.]+M)?([0-9\.]+D)?T([0-9\.]+H)?([0-9\.]+M)?([0-9\.]+S)?/);
    if(!m) throw new Error("|" + s + "| is not an ISO8601 Duration");
    for(var i = 1; i != m.length; ++i) {
        if(!m[i]) continue;
        mt = 1;
        if(i > 3) time = true;
        switch(m[i].substr(m[i].length-1)) {
            case 'Y':
                throw new Error("Unsupported ISO Duration Field: " + m[i].substr(m[i].length-1));
            case 'D': mt *= 24;
                /* falls through */
            case 'H': mt *= 60;
                /* falls through */
            case 'M':
                if(!time) throw new Error("Unsupported ISO Duration Field: M");
                else mt *= 60;
                /* falls through */
            case 'S': break;
        }
        sec += mt * parseInt(m[i], 10);
    }
    return sec;
}
/* copied from js-xls (C) SheetJS Apache2 license */
function xlml_normalize(d) {
    if(has_buf && Buffer.isBuffer(d)) return d.toString('utf8');
    if(typeof d === 'string') return d;
    throw "badf";
}
var xlmlregex = /<(\/?)([a-z0-9]*:|)([\w-]+)[^>]*>/mg;
/* Part 3 Section 4 Manifest File */
var CT_ODS = "application/vnd.oasis.opendocument.spreadsheet";
var parse_manifest = function(d, opts) {
    var str = xlml_normalize(d);
    var Rn;
    var FEtag;
    while((Rn = xlmlregex.exec(str))) switch(Rn[3]) {
        case 'manifest': break; // 4.2 <manifest:manifest>
        case 'file-entry': // 4.3 <manifest:file-entry>
            FEtag = parsexmltag(Rn[0]);
            if(FEtag.path == '/' && FEtag.type !== CT_ODS) throw new Error("This OpenDocument is not a spreadsheet");
            break;
        case 'encryption-data': // 4.4 <manifest:encryption-data>
        case 'algorithm': // 4.5 <manifest:algorithm>
        case 'start-key-generation': // 4.6 <manifest:start-key-generation>
        case 'key-derivation': // 4.7 <manifest:key-derivation>
            throw new Error("Unsupported ODS Encryption");
        default: throw Rn;
    }
};
var parse_text_p = function(text, tag) {
    return utf8read(text.replace(/<text:s\/>/g," ").replace(/<[^>]*>/g,""));
};
var utf8read = function utf8reada(orig) {
    var out = "", i = 0, c = 0, d = 0, e = 0, f = 0, w = 0;
    while (i < orig.length) {
        c = orig.charCodeAt(i++);
        if (c < 128) { out += String.fromCharCode(c); continue; }
        d = orig.charCodeAt(i++);
        if (c>191 && c<224) { out += String.fromCharCode(((c & 31) << 6) | (d & 63)); continue; }
        e = orig.charCodeAt(i++);
        if (c < 240) { out += String.fromCharCode(((c & 15) << 12) | ((d & 63) << 6) | (e & 63)); continue; }
        f = orig.charCodeAt(i++);
        w = (((c & 7) << 18) | ((d & 63) << 12) | ((e & 63) << 6) | (f & 63))-65536;
        out += String.fromCharCode(0xD800 + ((w>>>10)&1023));
        out += String.fromCharCode(0xDC00 + (w&1023));
    }
    return out;
};
var parse_content_xml = (function() {
    var number_formats = {
        /* ods name: [short ssf fmt, long ssf fmt] */
        day: ["d", "dd"],
        month: ["m", "mm"],
        year: ["y", "yy"],
        hours: ["h", "hh"],
        minutes: ["m", "mm"],
        seconds: ["s", "ss"],
        "am-pm": ["A/P", "AM/PM"],
        "day-of-week": ["ddd", "dddd"]
    };
    return function pcx(d, opts) {
        var str = xlml_normalize(d);
        var state = [], tmp;
        var tag;
        var NFtag, NF, pidx;
        var sheetag;
        var Sheets = {}, SheetNames = [], ws = {};
        var Rn, q;
        var ctag;
        var textp, textpidx, textptag;
        var R, C, range = {s: {r:1000000,c:10000000}, e: {r:0, c:0}};
        var number_format_map = {};
        var merges = [], mrange = {}, mR = 0, mC = 0;
        while((Rn = xlmlregex.exec(str))) switch(Rn[3]) {
            case 'table': // 9.1.2 <table:table>
                if(Rn[1]==='/') {
                    if(range.e.c >= range.s.c && range.e.r >= range.s.r) ws['!ref'] = get_utils().encode_range(range);
                    if(merges.length) ws['!merges'] = merges;
                    SheetNames.push(sheetag.name);
                    Sheets[sheetag.name] = ws;
                }
                else if(Rn[0].charAt(Rn[0].length-2) !== '/') {
                    sheetag = parsexmltag(Rn[0]);
                    R = C = -1;
                    range.s.r = range.s.c = 10000000; range.e.r = range.e.c = 0;
                    ws = {}; merges = [];
                }
                break;
            case 'table-row': // 9.1.3 <table:table-row>
                if(Rn[1] === '/') break;
                ++R; C = -1; break;
            case 'covered-table-cell': // 9.1.5 table:covered-table-cell
                ++C; break; /* stub */
            case 'table-cell':
                if(Rn[0].charAt(Rn[0].length-2) === '/') {
                    ctag = parsexmltag(Rn[0]);
                    if(ctag['number-columns-repeated']) C+= parseInt(ctag['number-columns-repeated'], 10);
                    else ++C;
                }
                else if(Rn[1]!=='/') {
                    ++C;
                    if(C > range.e.c) range.e.c = C;
                    if(R > range.e.r) range.e.r = R;
                    if(C < range.s.c) range.s.c = C;
                    if(R < range.s.r) range.s.r = R;
                    ctag = parsexmltag(Rn[0]);
                    q = {t:ctag['value-type'], v:null};
                    if(ctag['number-columns-spanned'] || ctag['number-rows-spanned']) {
                        mR = parseInt(ctag['number-rows-spanned'],10) || 0;
                        mC = parseInt(ctag['number-columns-spanned'],10) || 0;
                        mrange = {s: {r:R,c:C}, e:{r:R + mR-1,c:C + mC-1}};
                        merges.push(mrange);
                    }
                    /* 19.385 office:value-type */
                    switch(q.t) {
                        case 'boolean': q.t = 'b'; q.v = parsexmlbool(ctag['boolean-value']); break;
                        case 'float': q.t = 'n'; q.v = parseFloat(ctag.value); break;
                        case 'percentage': q.t = 'n'; q.v = parseFloat(ctag.value); break;
                        case 'currency': q.t = 'n'; q.v = parseFloat(ctag.value); break;
                        case 'date': q.t = 'n'; q.v = datenum(ctag['date-value']); q.z = 'm/d/yy'; break;
                        case 'time': q.t = 'n'; q.v = parse_isodur(ctag['time-value'])/86400; break;
                        case 'string': q.t = 's'; break;
                        default: throw new Error('Unsupported value type ' + q.t);
                    }
                } else {
                    if(q.t === 's') q.v = textp;
                    if(textp) q.w = textp;
                    if(!(opts.sheetRows && opts.sheetRows < R)) ws[get_utils().encode_cell({r:R,c:C})] = q;
                    q = null;
                }
                break; // 9.1.4 <table:table-cell>
            /* pure state */
            case 'document-content': // 3.1.3.2 <office:document-content>
            case 'spreadsheet': // 3.7 <office:spreadsheet>
            case 'scripts': // 3.12 <office:scripts>
            case 'font-face-decls': // 3.14 <office:font-face-decls>
                if(Rn[1]==='/'){if((tmp=state.pop())[0]!==Rn[3]) throw "Bad state: "+tmp;}
                else if(Rn[0].charAt(Rn[0].length-2) !== '/') state.push([Rn[3], true]);
                break;
            /* ignore state */
            case 'shapes': // 9.2.8 <table:shapes>
            case 'frame': // 10.4.2 <draw:frame>
                if(Rn[1]==='/'){if((tmp=state.pop())[0]!==Rn[3]) throw "Bad state: "+tmp;}
                else if(Rn[0].charAt(Rn[0].length-2) !== '/') state.push([Rn[3], false]);
                break;
            case 'number-style': // 16.27.2 <number:number-style>
            case 'percentage-style': // 16.27.9 <number:percentage-style>
            case 'date-style': // 16.27.10 <number:date-style>
            case 'time-style': // 16.27.18 <number:time-style>
                if(Rn[1]==='/'){
                    number_format_map[NFtag.name] = NF;
                    if((tmp=state.pop())[0]!==Rn[3]) throw "Bad state: "+tmp;
                } else if(Rn[0].charAt(Rn[0].length-2) !== '/') {
                    NF = "";
                    NFtag = parsexmltag(Rn[0]);
                    state.push([Rn[3], true]);
                } break;
            case 'script': break; // 3.13 <office:script>
            case 'automatic-styles': break; // 3.15.3 <office:automatic-styles>
            case 'style': break; // 16.2 <style:style>
            case 'font-face': break; // 16.21 <style:font-face>
            case 'paragraph-properties': break; // 17.6 <style:paragraph-properties>
            case 'table-properties': break; // 17.15 <style:table-properties>
            case 'table-column-properties': break; // 17.16 <style:table-column-properties>
            case 'table-row-properties': break; // 17.17 <style:table-row-properties>
            case 'table-cell-properties': break; // 17.18 <style:table-cell-properties>
            case 'number': // 16.27.3 <number:number>
                switch(state[state.length-1][0]) {
                    case 'time-style':
                    case 'date-style':
                        tag = parsexmltag(Rn[0]);
                        NF += number_formats[Rn[3]][tag.style==='long'?1:0]; break;
                } break;
            case 'day': // 16.27.11 <number:day>
            case 'month': // 16.27.12 <number:month>
            case 'year': // 16.27.13 <number:year>
            case 'era': // 16.27.14 <number:era>
            case 'day-of-week': // 16.27.15 <number:day-of-week>
            case 'week-of-year': // 16.27.16 <number:week-of-year>
            case 'quarter': // 16.27.17 <number:quarter>
            case 'hours': // 16.27.19 <number:hours>
            case 'minutes': // 16.27.20 <number:minutes>
            case 'seconds': // 16.27.21 <number:seconds>
            case 'am-pm': // 16.27.22 <number:am-pm>
                switch(state[state.length-1][0]) {
                    case 'time-style':
                    case 'date-style':
                        tag = parsexmltag(Rn[0]);
                        NF += number_formats[Rn[3]][tag.style==='long'?1:0]; break;
                } break;
            case 'boolean-style': break; // 16.27.23 <number:boolean-style>
            case 'boolean': break; // 16.27.24 <number:boolean>
            case 'text-style': break; // 16.27.25 <number:text-style>
            case 'text': // 16.27.26 <number:text>
                if(Rn[0].substr(-2) === "/>") break;
                else if(Rn[1]==="/") switch(state[state.length-1][0]) {
                    case 'number-style':
                    case 'date-style':
                    case 'time-style':
                        NF += str.slice(pidx, Rn.index);
                        break;
                }
                else pidx = Rn.index + Rn[0].length;
                break;
            case 'text-content': break; // 16.27.27 <number:text-content>
            case 'text-properties': break; // 16.27.27 <style:text-properties>
            case 'body': break; // 3.3 16.9.6 19.726.3
            case 'forms': break; // 12.25.2 13.2
            case 'table-column': break; // 9.1.6 <table:table-column>
            case 'graphic-properties': break;
            case 'calculation-settings': break; // 9.4.1 <table:calculation-settings>
            case 'named-expressions': break; // 9.4.11 <table:named-expressions>
            case 'named-range': break; // 9.4.11 <table:named-range>
            case 'span': break; // <text:span>
            case 'p':
                if(Rn[1]==='/') textp = parse_text_p(str.slice(textpidx,Rn.index), textptag);
                else { textptag = parsexmltag(Rn[0]); textpidx = Rn.index + Rn[0].length; }
                break; // <text:p>
            case 's': break; // <text:s>
            case 'date': break; // <*:date>
            case 'annotation': break;
            case 'object': break; // 10.4.6.2 <draw:object>
            case 'title': break; // <*:title>
            case 'desc': break; // <*:desc>
            case 'database-ranges': break; // 9.4.14 <table:database-ranges>
            case 'database-range': break; // 9.4.15 <table:database-range>
            case 'filter': break; // 9.5.2 <table:filter>
            case 'filter-and': break; // 9.5.3 <table:filter-and>
            case 'filter-or': break; // 9.5.4 <table:filter-or>
            case 'filter-condition': break; // 9.5.5 <table:filter-condition>
            default: if(opts.WTF) throw Rn;
        }
        var out = {
            Sheets: Sheets,
            SheetNames: SheetNames
        };
        return out;
    };
})();
/* Part 3: Packages */
var parse_ods = function(zip, opts) {
    //var manifest = parse_manifest(getzipdata(zip, 'META-INF/manifest.xml'));
    return parse_content_xml(getzipdata(zip, 'content.xml'), opts);
};
ODS.parse_ods = parse_ods;
})(typeof exports !== 'undefined' ? exports : ODS);
Source/UBCS-WEB/src/config/js-xlsx-master/dist/xlsx.core.min.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,15 @@
/* xlsx.js (C) 2013-2015 SheetJS -- http://sheetjs.com */
!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var f;"undefined"!=typeof window?f=window:"undefined"!=typeof global?f=global:"undefined"!=typeof self&&(f=self),f.JSZip=e()}}(function(){var define,module,exports;return function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);throw new Error("Cannot find module '"+o+"'")}var f=n[o]={exports:{}};t[o][0].call(f.exports,function(e){var n=t[o][1][e];return s(n?n:e)},f,f.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s}({1:[function(_dereq_,module,exports){"use strict";var _keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";exports.encode=function(input,utf8){var output="";var chr1,chr2,chr3,enc1,enc2,enc3,enc4;var i=0;while(i<input.length){chr1=input.charCodeAt(i++);chr2=input.charCodeAt(i++);chr3=input.charCodeAt(i++);enc1=chr1>>2;enc2=(chr1&3)<<4|chr2>>4;enc3=(chr2&15)<<2|chr3>>6;enc4=chr3&63;if(isNaN(chr2)){enc3=enc4=64}else if(isNaN(chr3)){enc4=64}output=output+_keyStr.charAt(enc1)+_keyStr.charAt(enc2)+_keyStr.charAt(enc3)+_keyStr.charAt(enc4)}return output};exports.decode=function(input,utf8){var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");while(i<input.length){enc1=_keyStr.indexOf(input.charAt(i++));enc2=_keyStr.indexOf(input.charAt(i++));enc3=_keyStr.indexOf(input.charAt(i++));enc4=_keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!=64){output=output+String.fromCharCode(chr2)}if(enc4!=64){output=output+String.fromCharCode(chr3)}}return output}},{}],2:[function(_dereq_,module,exports){"use strict";function CompressedObject(){this.compressedSize=0;this.uncompressedSize=0;this.crc32=0;this.compressionMethod=null;this.compressedContent=null}CompressedObject.prototype={getContent:function(){return null},getCompressedContent:function(){return null}};module.exports=CompressedObject},{}],3:[function(_dereq_,module,exports){"use strict";exports.STORE={magic:"\0\0",compress:function(content){return content},uncompress:function(content){return content},compressInputType:null,uncompressInputType:null};exports.DEFLATE=_dereq_("./flate")},{"./flate":8}],4:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("./utils");var table=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];module.exports=function crc32(input,crc){if(typeof input==="undefined"||!input.length){return 0}var isArray=utils.getTypeOf(input)!=="string";if(typeof crc=="undefined"){crc=0}var x=0;var y=0;var b=0;crc=crc^-1;for(var i=0,iTop=input.length;i<iTop;i++){b=isArray?input[i]:input.charCodeAt(i);y=(crc^b)&255;x=table[y];crc=crc>>>8^x}return crc^-1}},{"./utils":21}],5:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("./utils");function DataReader(data){this.data=null;this.length=0;this.index=0}DataReader.prototype={checkOffset:function(offset){this.checkIndex(this.index+offset)},checkIndex:function(newIndex){if(this.length<newIndex||newIndex<0){throw new Error("End of data reached (data length = "+this.length+", asked index = "+newIndex+"). Corrupted zip ?")}},setIndex:function(newIndex){this.checkIndex(newIndex);this.index=newIndex},skip:function(n){this.setIndex(this.index+n)},byteAt:function(i){},readInt:function(size){var result=0,i;this.checkOffset(size);for(i=this.index+size-1;i>=this.index;i--){result=(result<<8)+this.byteAt(i)}this.index+=size;return result},readString:function(size){return utils.transformTo("string",this.readData(size))},readData:function(size){},lastIndexOfSignature:function(sig){},readDate:function(){var dostime=this.readInt(4);return new Date((dostime>>25&127)+1980,(dostime>>21&15)-1,dostime>>16&31,dostime>>11&31,dostime>>5&63,(dostime&31)<<1)}};module.exports=DataReader},{"./utils":21}],6:[function(_dereq_,module,exports){"use strict";exports.base64=false;exports.binary=false;exports.dir=false;exports.createFolders=false;exports.date=null;exports.compression=null;exports.comment=null},{}],7:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("./utils");exports.string2binary=function(str){return utils.string2binary(str)};exports.string2Uint8Array=function(str){return utils.transformTo("uint8array",str)};exports.uint8Array2String=function(array){return utils.transformTo("string",array)};exports.string2Blob=function(str){var buffer=utils.transformTo("arraybuffer",str);return utils.arrayBuffer2Blob(buffer)};exports.arrayBuffer2Blob=function(buffer){return utils.arrayBuffer2Blob(buffer)};exports.transformTo=function(outputType,input){return utils.transformTo(outputType,input)};exports.getTypeOf=function(input){return utils.getTypeOf(input)};exports.checkSupport=function(type){return utils.checkSupport(type)};exports.MAX_VALUE_16BITS=utils.MAX_VALUE_16BITS;exports.MAX_VALUE_32BITS=utils.MAX_VALUE_32BITS;exports.pretty=function(str){return utils.pretty(str)};exports.findCompression=function(compressionMethod){return utils.findCompression(compressionMethod)};exports.isRegExp=function(object){return utils.isRegExp(object)}},{"./utils":21}],8:[function(_dereq_,module,exports){"use strict";var USE_TYPEDARRAY=typeof Uint8Array!=="undefined"&&typeof Uint16Array!=="undefined"&&typeof Uint32Array!=="undefined";var pako=_dereq_("pako");exports.uncompressInputType=USE_TYPEDARRAY?"uint8array":"array";exports.compressInputType=USE_TYPEDARRAY?"uint8array":"array";exports.magic="\b\0";exports.compress=function(input){return pako.deflateRaw(input)};exports.uncompress=function(input){return pako.inflateRaw(input)}},{pako:24}],9:[function(_dereq_,module,exports){"use strict";var base64=_dereq_("./base64");function JSZip(data,options){if(!(this instanceof JSZip))return new JSZip(data,options);this.files={};this.comment=null;this.root="";if(data){this.load(data,options)}this.clone=function(){var newObj=new JSZip;for(var i in this){if(typeof this[i]!=="function"){newObj[i]=this[i]}}return newObj}}JSZip.prototype=_dereq_("./object");JSZip.prototype.load=_dereq_("./load");JSZip.support=_dereq_("./support");JSZip.defaults=_dereq_("./defaults");JSZip.utils=_dereq_("./deprecatedPublicUtils");JSZip.base64={encode:function(input){return base64.encode(input)},decode:function(input){return base64.decode(input)}};JSZip.compressions=_dereq_("./compressions");module.exports=JSZip},{"./base64":1,"./compressions":3,"./defaults":6,"./deprecatedPublicUtils":7,"./load":10,"./object":13,"./support":17}],10:[function(_dereq_,module,exports){"use strict";var base64=_dereq_("./base64");var ZipEntries=_dereq_("./zipEntries");module.exports=function(data,options){var files,zipEntries,i,input;options=options||{};if(options.base64){data=base64.decode(data)}zipEntries=new ZipEntries(data,options);files=zipEntries.files;for(i=0;i<files.length;i++){input=files[i];this.file(input.fileName,input.decompressed,{binary:true,optimizedBinaryString:true,date:input.date,dir:input.dir,comment:input.fileComment.length?input.fileComment:null,createFolders:options.createFolders})}if(zipEntries.zipComment.length){this.comment=zipEntries.zipComment}return this}},{"./base64":1,"./zipEntries":22}],11:[function(_dereq_,module,exports){(function(Buffer){"use strict";module.exports=function(data,encoding){return new Buffer(data,encoding)};module.exports.test=function(b){return Buffer.isBuffer(b)}}).call(this,typeof Buffer!=="undefined"?Buffer:undefined)},{}],12:[function(_dereq_,module,exports){"use strict";var Uint8ArrayReader=_dereq_("./uint8ArrayReader");function NodeBufferReader(data){this.data=data;this.length=this.data.length;this.index=0}NodeBufferReader.prototype=new Uint8ArrayReader;NodeBufferReader.prototype.readData=function(size){this.checkOffset(size);var result=this.data.slice(this.index,this.index+size);this.index+=size;return result};module.exports=NodeBufferReader},{"./uint8ArrayReader":18}],13:[function(_dereq_,module,exports){"use strict";var support=_dereq_("./support");var utils=_dereq_("./utils");var crc32=_dereq_("./crc32");var signature=_dereq_("./signature");var defaults=_dereq_("./defaults");var base64=_dereq_("./base64");var compressions=_dereq_("./compressions");var CompressedObject=_dereq_("./compressedObject");var nodeBuffer=_dereq_("./nodeBuffer");var utf8=_dereq_("./utf8");var StringWriter=_dereq_("./stringWriter");var Uint8ArrayWriter=_dereq_("./uint8ArrayWriter");var getRawData=function(file){if(file._data instanceof CompressedObject){file._data=file._data.getContent();file.options.binary=true;file.options.base64=false;if(utils.getTypeOf(file._data)==="uint8array"){var copy=file._data;file._data=new Uint8Array(copy.length);if(copy.length!==0){file._data.set(copy,0)}}}return file._data};var getBinaryData=function(file){var result=getRawData(file),type=utils.getTypeOf(result);if(type==="string"){if(!file.options.binary){if(support.nodebuffer){return nodeBuffer(result,"utf-8")}}return file.asBinary()}return result};var dataToString=function(asUTF8){var result=getRawData(this);if(result===null||typeof result==="undefined"){return""}if(this.options.base64){result=base64.decode(result)}if(asUTF8&&this.options.binary){result=out.utf8decode(result)}else{result=utils.transformTo("string",result)}if(!asUTF8&&!this.options.binary){result=utils.transformTo("string",out.utf8encode(result))}return result};var ZipObject=function(name,data,options){this.name=name;this.dir=options.dir;this.date=options.date;this.comment=options.comment;this._data=data;this.options=options;this._initialMetadata={dir:options.dir,date:options.date}};ZipObject.prototype={asText:function(){return dataToString.call(this,true)},asBinary:function(){return dataToString.call(this,false)},asNodeBuffer:function(){var result=getBinaryData(this);return utils.transformTo("nodebuffer",result)},asUint8Array:function(){var result=getBinaryData(this);return utils.transformTo("uint8array",result)},asArrayBuffer:function(){return this.asUint8Array().buffer}};var decToHex=function(dec,bytes){var hex="",i;for(i=0;i<bytes;i++){hex+=String.fromCharCode(dec&255);dec=dec>>>8}return hex};var extend=function(){var result={},i,attr;for(i=0;i<arguments.length;i++){for(attr in arguments[i]){if(arguments[i].hasOwnProperty(attr)&&typeof result[attr]==="undefined"){result[attr]=arguments[i][attr]}}}return result};var prepareFileAttrs=function(o){o=o||{};if(o.base64===true&&(o.binary===null||o.binary===undefined)){o.binary=true}o=extend(o,defaults);o.date=o.date||new Date;if(o.compression!==null)o.compression=o.compression.toUpperCase();return o};var fileAdd=function(name,data,o){var dataType=utils.getTypeOf(data),parent;o=prepareFileAttrs(o);if(o.createFolders&&(parent=parentFolder(name))){folderAdd.call(this,parent,true)}if(o.dir||data===null||typeof data==="undefined"){o.base64=false;o.binary=false;data=null}else if(dataType==="string"){if(o.binary&&!o.base64){if(o.optimizedBinaryString!==true){data=utils.string2binary(data)}}}else{o.base64=false;o.binary=true;if(!dataType&&!(data instanceof CompressedObject)){throw new Error("The data of '"+name+"' is in an unsupported format !")}if(dataType==="arraybuffer"){data=utils.transformTo("uint8array",data)}}var object=new ZipObject(name,data,o);this.files[name]=object;return object};var parentFolder=function(path){if(path.slice(-1)=="/"){path=path.substring(0,path.length-1)}var lastSlash=path.lastIndexOf("/");return lastSlash>0?path.substring(0,lastSlash):""};var folderAdd=function(name,createFolders){if(name.slice(-1)!="/"){name+="/"}createFolders=typeof createFolders!=="undefined"?createFolders:false;if(!this.files[name]){fileAdd.call(this,name,null,{dir:true,createFolders:createFolders})}return this.files[name]};var generateCompressedObjectFrom=function(file,compression){var result=new CompressedObject,content;if(file._data instanceof CompressedObject){result.uncompressedSize=file._data.uncompressedSize;result.crc32=file._data.crc32;if(result.uncompressedSize===0||file.dir){compression=compressions["STORE"];result.compressedContent="";result.crc32=0}else if(file._data.compressionMethod===compression.magic){result.compressedContent=file._data.getCompressedContent()}else{content=file._data.getContent();result.compressedContent=compression.compress(utils.transformTo(compression.compressInputType,content))}}else{content=getBinaryData(file);if(!content||content.length===0||file.dir){compression=compressions["STORE"];content=""}result.uncompressedSize=content.length;result.crc32=crc32(content);result.compressedContent=compression.compress(utils.transformTo(compression.compressInputType,content))}result.compressedSize=result.compressedContent.length;result.compressionMethod=compression.magic;return result};var generateZipParts=function(name,file,compressedObject,offset){var data=compressedObject.compressedContent,utfEncodedFileName=utils.transformTo("string",utf8.utf8encode(file.name)),comment=file.comment||"",utfEncodedComment=utils.transformTo("string",utf8.utf8encode(comment)),useUTF8ForFileName=utfEncodedFileName.length!==file.name.length,useUTF8ForComment=utfEncodedComment.length!==comment.length,o=file.options,dosTime,dosDate,extraFields="",unicodePathExtraField="",unicodeCommentExtraField="",dir,date;if(file._initialMetadata.dir!==file.dir){dir=file.dir}else{dir=o.dir}if(file._initialMetadata.date!==file.date){date=file.date}else{date=o.date}dosTime=date.getHours();dosTime=dosTime<<6;dosTime=dosTime|date.getMinutes();dosTime=dosTime<<5;dosTime=dosTime|date.getSeconds()/2;dosDate=date.getFullYear()-1980;dosDate=dosDate<<4;dosDate=dosDate|date.getMonth()+1;dosDate=dosDate<<5;dosDate=dosDate|date.getDate();if(useUTF8ForFileName){unicodePathExtraField=decToHex(1,1)+decToHex(crc32(utfEncodedFileName),4)+utfEncodedFileName;extraFields+="up"+decToHex(unicodePathExtraField.length,2)+unicodePathExtraField}if(useUTF8ForComment){unicodeCommentExtraField=decToHex(1,1)+decToHex(this.crc32(utfEncodedComment),4)+utfEncodedComment;extraFields+="uc"+decToHex(unicodeCommentExtraField.length,2)+unicodeCommentExtraField}var header="";header+="\n\0";header+=useUTF8ForFileName||useUTF8ForComment?"\0\b":"\0\0";header+=compressedObject.compressionMethod;header+=decToHex(dosTime,2);header+=decToHex(dosDate,2);header+=decToHex(compressedObject.crc32,4);header+=decToHex(compressedObject.compressedSize,4);header+=decToHex(compressedObject.uncompressedSize,4);header+=decToHex(utfEncodedFileName.length,2);header+=decToHex(extraFields.length,2);var fileRecord=signature.LOCAL_FILE_HEADER+header+utfEncodedFileName+extraFields;var dirRecord=signature.CENTRAL_FILE_HEADER+"\0"+header+decToHex(utfEncodedComment.length,2)+"\0\0"+"\0\0"+(dir===true?"\0\0\0":"\0\0\0\0")+decToHex(offset,4)+utfEncodedFileName+extraFields+utfEncodedComment;return{fileRecord:fileRecord,dirRecord:dirRecord,compressedObject:compressedObject}};var out={load:function(stream,options){throw new Error("Load method is not defined. Is the file jszip-load.js included ?")},filter:function(search){var result=[],filename,relativePath,file,fileClone;for(filename in this.files){if(!this.files.hasOwnProperty(filename)){continue}file=this.files[filename];fileClone=new ZipObject(file.name,file._data,extend(file.options));relativePath=filename.slice(this.root.length,filename.length);if(filename.slice(0,this.root.length)===this.root&&search(relativePath,fileClone)){result.push(fileClone)}}return result},file:function(name,data,o){if(arguments.length===1){if(utils.isRegExp(name)){var regexp=name;return this.filter(function(relativePath,file){return!file.dir&&regexp.test(relativePath)})}else{return this.filter(function(relativePath,file){return!file.dir&&relativePath===name})[0]||null}}else{name=this.root+name;fileAdd.call(this,name,data,o)}return this},folder:function(arg){if(!arg){return this}if(utils.isRegExp(arg)){return this.filter(function(relativePath,file){return file.dir&&arg.test(relativePath)})}var name=this.root+arg;var newFolder=folderAdd.call(this,name);var ret=this.clone();ret.root=newFolder.name;return ret},remove:function(name){name=this.root+name;var file=this.files[name];if(!file){if(name.slice(-1)!="/"){name+="/"}file=this.files[name]}if(file&&!file.dir){delete this.files[name]}else{var kids=this.filter(function(relativePath,file){return file.name.slice(0,name.length)===name});for(var i=0;i<kids.length;i++){delete this.files[kids[i].name]}}return this},generate:function(options){options=extend(options||{},{base64:true,compression:"STORE",type:"base64",comment:null});utils.checkSupport(options.type);var zipData=[],localDirLength=0,centralDirLength=0,writer,i,utfEncodedComment=utils.transformTo("string",this.utf8encode(options.comment||this.comment||""));for(var name in this.files){if(!this.files.hasOwnProperty(name)){continue}var file=this.files[name];var compressionName=file.options.compression||options.compression.toUpperCase();var compression=compressions[compressionName];if(!compression){throw new Error(compressionName+" is not a valid compression method !")}var compressedObject=generateCompressedObjectFrom.call(this,file,compression);var zipPart=generateZipParts.call(this,name,file,compressedObject,localDirLength);localDirLength+=zipPart.fileRecord.length+compressedObject.compressedSize;centralDirLength+=zipPart.dirRecord.length;zipData.push(zipPart)}var dirEnd="";dirEnd=signature.CENTRAL_DIRECTORY_END+"\0\0"+"\0\0"+decToHex(zipData.length,2)+decToHex(zipData.length,2)+decToHex(centralDirLength,4)+decToHex(localDirLength,4)+decToHex(utfEncodedComment.length,2)+utfEncodedComment;var typeName=options.type.toLowerCase();if(typeName==="uint8array"||typeName==="arraybuffer"||typeName==="blob"||typeName==="nodebuffer"){writer=new Uint8ArrayWriter(localDirLength+centralDirLength+dirEnd.length)}else{writer=new StringWriter(localDirLength+centralDirLength+dirEnd.length)}for(i=0;i<zipData.length;i++){writer.append(zipData[i].fileRecord);writer.append(zipData[i].compressedObject.compressedContent)}for(i=0;i<zipData.length;i++){writer.append(zipData[i].dirRecord)}writer.append(dirEnd);var zip=writer.finalize();switch(options.type.toLowerCase()){case"uint8array":case"arraybuffer":case"nodebuffer":return utils.transformTo(options.type.toLowerCase(),zip);case"blob":return utils.arrayBuffer2Blob(utils.transformTo("arraybuffer",zip));case"base64":return options.base64?base64.encode(zip):zip;default:return zip}},crc32:function(input,crc){return crc32(input,crc)},utf8encode:function(string){return utils.transformTo("string",utf8.utf8encode(string))},utf8decode:function(input){return utf8.utf8decode(input)}};module.exports=out},{"./base64":1,"./compressedObject":2,"./compressions":3,"./crc32":4,"./defaults":6,"./nodeBuffer":11,"./signature":14,"./stringWriter":16,"./support":17,"./uint8ArrayWriter":19,"./utf8":20,"./utils":21}],14:[function(_dereq_,module,exports){"use strict";exports.LOCAL_FILE_HEADER="PK";exports.CENTRAL_FILE_HEADER="PK";exports.CENTRAL_DIRECTORY_END="PK";exports.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK";exports.ZIP64_CENTRAL_DIRECTORY_END="PK";exports.DATA_DESCRIPTOR="PK\b"},{}],15:[function(_dereq_,module,exports){"use strict";var DataReader=_dereq_("./dataReader");var utils=_dereq_("./utils");function StringReader(data,optimizedBinaryString){this.data=data;if(!optimizedBinaryString){this.data=utils.string2binary(this.data)}this.length=this.data.length;this.index=0}StringReader.prototype=new DataReader;StringReader.prototype.byteAt=function(i){return this.data.charCodeAt(i)};StringReader.prototype.lastIndexOfSignature=function(sig){return this.data.lastIndexOf(sig)};StringReader.prototype.readData=function(size){this.checkOffset(size);var result=this.data.slice(this.index,this.index+size);this.index+=size;return result};module.exports=StringReader},{"./dataReader":5,"./utils":21}],16:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("./utils");var StringWriter=function(){this.data=[]};StringWriter.prototype={append:function(input){input=utils.transformTo("string",input);this.data.push(input)},finalize:function(){return this.data.join("")}};module.exports=StringWriter},{"./utils":21}],17:[function(_dereq_,module,exports){(function(Buffer){"use strict";exports.base64=true;exports.array=true;exports.string=true;exports.arraybuffer=typeof ArrayBuffer!=="undefined"&&typeof Uint8Array!=="undefined";exports.nodebuffer=typeof Buffer!=="undefined";exports.uint8array=typeof Uint8Array!=="undefined";if(typeof ArrayBuffer==="undefined"){exports.blob=false}else{var buffer=new ArrayBuffer(0);try{exports.blob=new Blob([buffer],{type:"application/zip"}).size===0}catch(e){try{var Builder=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder;var builder=new Builder;builder.append(buffer);exports.blob=builder.getBlob("application/zip").size===0}catch(e){exports.blob=false}}}}).call(this,typeof Buffer!=="undefined"?Buffer:undefined)},{}],18:[function(_dereq_,module,exports){"use strict";var DataReader=_dereq_("./dataReader");function Uint8ArrayReader(data){if(data){this.data=data;this.length=this.data.length;this.index=0}}Uint8ArrayReader.prototype=new DataReader;Uint8ArrayReader.prototype.byteAt=function(i){return this.data[i]};Uint8ArrayReader.prototype.lastIndexOfSignature=function(sig){var sig0=sig.charCodeAt(0),sig1=sig.charCodeAt(1),sig2=sig.charCodeAt(2),sig3=sig.charCodeAt(3);for(var i=this.length-4;i>=0;--i){if(this.data[i]===sig0&&this.data[i+1]===sig1&&this.data[i+2]===sig2&&this.data[i+3]===sig3){return i}}return-1};Uint8ArrayReader.prototype.readData=function(size){this.checkOffset(size);if(size===0){return new Uint8Array(0)}var result=this.data.subarray(this.index,this.index+size);this.index+=size;return result};module.exports=Uint8ArrayReader},{"./dataReader":5}],19:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("./utils");var Uint8ArrayWriter=function(length){this.data=new Uint8Array(length);this.index=0};Uint8ArrayWriter.prototype={append:function(input){if(input.length!==0){input=utils.transformTo("uint8array",input);this.data.set(input,this.index);this.index+=input.length}},finalize:function(){return this.data}};module.exports=Uint8ArrayWriter},{"./utils":21}],20:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("./utils");var support=_dereq_("./support");var nodeBuffer=_dereq_("./nodeBuffer");var _utf8len=new Array(256);for(var i=0;i<256;i++){_utf8len[i]=i>=252?6:i>=248?5:i>=240?4:i>=224?3:i>=192?2:1}_utf8len[254]=_utf8len[254]=1;var string2buf=function(str){var buf,c,c2,m_pos,i,str_len=str.length,buf_len=0;for(m_pos=0;m_pos<str_len;m_pos++){c=str.charCodeAt(m_pos);if((c&64512)===55296&&m_pos+1<str_len){c2=str.charCodeAt(m_pos+1);if((c2&64512)===56320){c=65536+(c-55296<<10)+(c2-56320);m_pos++}}buf_len+=c<128?1:c<2048?2:c<65536?3:4}if(support.uint8array){buf=new Uint8Array(buf_len)}else{buf=new Array(buf_len)}for(i=0,m_pos=0;i<buf_len;m_pos++){c=str.charCodeAt(m_pos);if((c&64512)===55296&&m_pos+1<str_len){c2=str.charCodeAt(m_pos+1);if((c2&64512)===56320){c=65536+(c-55296<<10)+(c2-56320);m_pos++}}if(c<128){buf[i++]=c}else if(c<2048){buf[i++]=192|c>>>6;buf[i++]=128|c&63}else if(c<65536){buf[i++]=224|c>>>12;buf[i++]=128|c>>>6&63;buf[i++]=128|c&63}else{buf[i++]=240|c>>>18;buf[i++]=128|c>>>12&63;buf[i++]=128|c>>>6&63;buf[i++]=128|c&63}}return buf};var utf8border=function(buf,max){var pos;max=max||buf.length;if(max>buf.length){max=buf.length}pos=max-1;while(pos>=0&&(buf[pos]&192)===128){pos--}if(pos<0){return max}if(pos===0){return max}return pos+_utf8len[buf[pos]]>max?pos:max};var buf2string=function(buf){var str,i,out,c,c_len;var len=buf.length;var utf16buf=new Array(len*2);for(out=0,i=0;i<len;){c=buf[i++];if(c<128){utf16buf[out++]=c;continue}c_len=_utf8len[c];if(c_len>4){utf16buf[out++]=65533;i+=c_len-1;continue}c&=c_len===2?31:c_len===3?15:7;while(c_len>1&&i<len){c=c<<6|buf[i++]&63;c_len--}if(c_len>1){utf16buf[out++]=65533;continue}if(c<65536){utf16buf[out++]=c}else{c-=65536;utf16buf[out++]=55296|c>>10&1023;utf16buf[out++]=56320|c&1023}}if(utf16buf.length!==out){if(utf16buf.subarray){utf16buf=utf16buf.subarray(0,out)}else{utf16buf.length=out}}return utils.applyFromCharCode(utf16buf)};exports.utf8encode=function utf8encode(str){if(support.nodebuffer){return nodeBuffer(str,"utf-8")}return string2buf(str)};exports.utf8decode=function utf8decode(buf){if(support.nodebuffer){return utils.transformTo("nodebuffer",buf).toString("utf-8")}buf=utils.transformTo(support.uint8array?"uint8array":"array",buf);var result=[],k=0,len=buf.length,chunk=65536;while(k<len){var nextBoundary=utf8border(buf,Math.min(k+chunk,len));if(support.uint8array){result.push(buf2string(buf.subarray(k,nextBoundary)))}else{result.push(buf2string(buf.slice(k,nextBoundary)))}k=nextBoundary}return result.join("")}},{"./nodeBuffer":11,"./support":17,"./utils":21}],21:[function(_dereq_,module,exports){"use strict";var support=_dereq_("./support");var compressions=_dereq_("./compressions");var nodeBuffer=_dereq_("./nodeBuffer");exports.string2binary=function(str){var result="";for(var i=0;i<str.length;i++){result+=String.fromCharCode(str.charCodeAt(i)&255)}return result};exports.arrayBuffer2Blob=function(buffer){exports.checkSupport("blob");try{return new Blob([buffer],{type:"application/zip"})}catch(e){try{var Builder=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder;var builder=new Builder;builder.append(buffer);return builder.getBlob("application/zip")}catch(e){throw new Error("Bug : can't construct the Blob.")}}};function identity(input){return input}function stringToArrayLike(str,array){for(var i=0;i<str.length;++i){array[i]=str.charCodeAt(i)&255}return array}function arrayLikeToString(array){var chunk=65536;var result=[],len=array.length,type=exports.getTypeOf(array),k=0,canUseApply=true;try{switch(type){case"uint8array":String.fromCharCode.apply(null,new Uint8Array(0));break;case"nodebuffer":String.fromCharCode.apply(null,nodeBuffer(0));break}}catch(e){canUseApply=false}if(!canUseApply){var resultStr="";for(var i=0;i<array.length;i++){resultStr+=String.fromCharCode(array[i])}return resultStr}while(k<len&&chunk>1){try{if(type==="array"||type==="nodebuffer"){result.push(String.fromCharCode.apply(null,array.slice(k,Math.min(k+chunk,len))))}else{result.push(String.fromCharCode.apply(null,array.subarray(k,Math.min(k+chunk,len))))}k+=chunk}catch(e){chunk=Math.floor(chunk/2)}}return result.join("")}exports.applyFromCharCode=arrayLikeToString;function arrayLikeToArrayLike(arrayFrom,arrayTo){for(var i=0;i<arrayFrom.length;i++){arrayTo[i]=arrayFrom[i]}return arrayTo}var transform={};transform["string"]={string:identity,array:function(input){return stringToArrayLike(input,new Array(input.length))},arraybuffer:function(input){return transform["string"]["uint8array"](input).buffer},uint8array:function(input){return stringToArrayLike(input,new Uint8Array(input.length))},nodebuffer:function(input){return stringToArrayLike(input,nodeBuffer(input.length))}};transform["array"]={string:arrayLikeToString,array:identity,arraybuffer:function(input){return new Uint8Array(input).buffer},uint8array:function(input){return new Uint8Array(input)},nodebuffer:function(input){return nodeBuffer(input)}};transform["arraybuffer"]={string:function(input){return arrayLikeToString(new Uint8Array(input))},array:function(input){return arrayLikeToArrayLike(new Uint8Array(input),new Array(input.byteLength))},arraybuffer:identity,uint8array:function(input){return new Uint8Array(input)},nodebuffer:function(input){return nodeBuffer(new Uint8Array(input))}};transform["uint8array"]={string:arrayLikeToString,array:function(input){return arrayLikeToArrayLike(input,new Array(input.length))},arraybuffer:function(input){return input.buffer},uint8array:identity,nodebuffer:function(input){return nodeBuffer(input)}};transform["nodebuffer"]={string:arrayLikeToString,array:function(input){return arrayLikeToArrayLike(input,new Array(input.length))},arraybuffer:function(input){return transform["nodebuffer"]["uint8array"](input).buffer},uint8array:function(input){return arrayLikeToArrayLike(input,new Uint8Array(input.length))},nodebuffer:identity};exports.transformTo=function(outputType,input){if(!input){input=""}if(!outputType){return input}exports.checkSupport(outputType);var inputType=exports.getTypeOf(input);var result=transform[inputType][outputType](input);return result};exports.getTypeOf=function(input){if(typeof input==="string"){return"string"}if(Object.prototype.toString.call(input)==="[object Array]"){return"array"}if(support.nodebuffer&&nodeBuffer.test(input)){return"nodebuffer"}if(support.uint8array&&input instanceof Uint8Array){return"uint8array"}if(support.arraybuffer&&input instanceof ArrayBuffer){return"arraybuffer"}};exports.checkSupport=function(type){var supported=support[type.toLowerCase()];if(!supported){throw new Error(type+" is not supported by this browser")}};exports.MAX_VALUE_16BITS=65535;exports.MAX_VALUE_32BITS=-1;exports.pretty=function(str){var res="",code,i;for(i=0;i<(str||"").length;i++){code=str.charCodeAt(i);res+="\\x"+(code<16?"0":"")+code.toString(16).toUpperCase()}return res;
};exports.findCompression=function(compressionMethod){for(var method in compressions){if(!compressions.hasOwnProperty(method)){continue}if(compressions[method].magic===compressionMethod){return compressions[method]}}return null};exports.isRegExp=function(object){return Object.prototype.toString.call(object)==="[object RegExp]"}},{"./compressions":3,"./nodeBuffer":11,"./support":17}],22:[function(_dereq_,module,exports){"use strict";var StringReader=_dereq_("./stringReader");var NodeBufferReader=_dereq_("./nodeBufferReader");var Uint8ArrayReader=_dereq_("./uint8ArrayReader");var utils=_dereq_("./utils");var sig=_dereq_("./signature");var ZipEntry=_dereq_("./zipEntry");var support=_dereq_("./support");var jszipProto=_dereq_("./object");function ZipEntries(data,loadOptions){this.files=[];this.loadOptions=loadOptions;if(data){this.load(data)}}ZipEntries.prototype={checkSignature:function(expectedSignature){var signature=this.reader.readString(4);if(signature!==expectedSignature){throw new Error("Corrupted zip or bug : unexpected signature "+"("+utils.pretty(signature)+", expected "+utils.pretty(expectedSignature)+")")}},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2);this.diskWithCentralDirStart=this.reader.readInt(2);this.centralDirRecordsOnThisDisk=this.reader.readInt(2);this.centralDirRecords=this.reader.readInt(2);this.centralDirSize=this.reader.readInt(4);this.centralDirOffset=this.reader.readInt(4);this.zipCommentLength=this.reader.readInt(2);this.zipComment=this.reader.readString(this.zipCommentLength);this.zipComment=jszipProto.utf8decode(this.zipComment)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8);this.versionMadeBy=this.reader.readString(2);this.versionNeeded=this.reader.readInt(2);this.diskNumber=this.reader.readInt(4);this.diskWithCentralDirStart=this.reader.readInt(4);this.centralDirRecordsOnThisDisk=this.reader.readInt(8);this.centralDirRecords=this.reader.readInt(8);this.centralDirSize=this.reader.readInt(8);this.centralDirOffset=this.reader.readInt(8);this.zip64ExtensibleData={};var extraDataSize=this.zip64EndOfCentralSize-44,index=0,extraFieldId,extraFieldLength,extraFieldValue;while(index<extraDataSize){extraFieldId=this.reader.readInt(2);extraFieldLength=this.reader.readInt(4);extraFieldValue=this.reader.readString(extraFieldLength);this.zip64ExtensibleData[extraFieldId]={id:extraFieldId,length:extraFieldLength,value:extraFieldValue}}},readBlockZip64EndOfCentralLocator:function(){this.diskWithZip64CentralDirStart=this.reader.readInt(4);this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8);this.disksCount=this.reader.readInt(4);if(this.disksCount>1){throw new Error("Multi-volumes zip are not supported")}},readLocalFiles:function(){var i,file;for(i=0;i<this.files.length;i++){file=this.files[i];this.reader.setIndex(file.localHeaderOffset);this.checkSignature(sig.LOCAL_FILE_HEADER);file.readLocalPart(this.reader);file.handleUTF8()}},readCentralDir:function(){var file;this.reader.setIndex(this.centralDirOffset);while(this.reader.readString(4)===sig.CENTRAL_FILE_HEADER){file=new ZipEntry({zip64:this.zip64},this.loadOptions);file.readCentralPart(this.reader);this.files.push(file)}},readEndOfCentral:function(){var offset=this.reader.lastIndexOfSignature(sig.CENTRAL_DIRECTORY_END);if(offset===-1){throw new Error("Corrupted zip : can't find end of central directory")}this.reader.setIndex(offset);this.checkSignature(sig.CENTRAL_DIRECTORY_END);this.readBlockEndOfCentral();if(this.diskNumber===utils.MAX_VALUE_16BITS||this.diskWithCentralDirStart===utils.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===utils.MAX_VALUE_16BITS||this.centralDirRecords===utils.MAX_VALUE_16BITS||this.centralDirSize===utils.MAX_VALUE_32BITS||this.centralDirOffset===utils.MAX_VALUE_32BITS){this.zip64=true;offset=this.reader.lastIndexOfSignature(sig.ZIP64_CENTRAL_DIRECTORY_LOCATOR);if(offset===-1){throw new Error("Corrupted zip : can't find the ZIP64 end of central directory locator")}this.reader.setIndex(offset);this.checkSignature(sig.ZIP64_CENTRAL_DIRECTORY_LOCATOR);this.readBlockZip64EndOfCentralLocator();this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir);this.checkSignature(sig.ZIP64_CENTRAL_DIRECTORY_END);this.readBlockZip64EndOfCentral()}},prepareReader:function(data){var type=utils.getTypeOf(data);if(type==="string"&&!support.uint8array){this.reader=new StringReader(data,this.loadOptions.optimizedBinaryString)}else if(type==="nodebuffer"){this.reader=new NodeBufferReader(data)}else{this.reader=new Uint8ArrayReader(utils.transformTo("uint8array",data))}},load:function(data){this.prepareReader(data);this.readEndOfCentral();this.readCentralDir();this.readLocalFiles()}};module.exports=ZipEntries},{"./nodeBufferReader":12,"./object":13,"./signature":14,"./stringReader":15,"./support":17,"./uint8ArrayReader":18,"./utils":21,"./zipEntry":23}],23:[function(_dereq_,module,exports){"use strict";var StringReader=_dereq_("./stringReader");var utils=_dereq_("./utils");var CompressedObject=_dereq_("./compressedObject");var jszipProto=_dereq_("./object");function ZipEntry(options,loadOptions){this.options=options;this.loadOptions=loadOptions}ZipEntry.prototype={isEncrypted:function(){return(this.bitFlag&1)===1},useUTF8:function(){return(this.bitFlag&2048)===2048},prepareCompressedContent:function(reader,from,length){return function(){var previousIndex=reader.index;reader.setIndex(from);var compressedFileData=reader.readData(length);reader.setIndex(previousIndex);return compressedFileData}},prepareContent:function(reader,from,length,compression,uncompressedSize){return function(){var compressedFileData=utils.transformTo(compression.uncompressInputType,this.getCompressedContent());var uncompressedFileData=compression.uncompress(compressedFileData);if(uncompressedFileData.length!==uncompressedSize){throw new Error("Bug : uncompressed data size mismatch")}return uncompressedFileData}},readLocalPart:function(reader){var compression,localExtraFieldsLength;reader.skip(22);this.fileNameLength=reader.readInt(2);localExtraFieldsLength=reader.readInt(2);this.fileName=reader.readString(this.fileNameLength);reader.skip(localExtraFieldsLength);if(this.compressedSize==-1||this.uncompressedSize==-1){throw new Error("Bug or corrupted zip : didn't get enough informations from the central directory "+"(compressedSize == -1 || uncompressedSize == -1)")}compression=utils.findCompression(this.compressionMethod);if(compression===null){throw new Error("Corrupted zip : compression "+utils.pretty(this.compressionMethod)+" unknown (inner file : "+this.fileName+")")}this.decompressed=new CompressedObject;this.decompressed.compressedSize=this.compressedSize;this.decompressed.uncompressedSize=this.uncompressedSize;this.decompressed.crc32=this.crc32;this.decompressed.compressionMethod=this.compressionMethod;this.decompressed.getCompressedContent=this.prepareCompressedContent(reader,reader.index,this.compressedSize,compression);this.decompressed.getContent=this.prepareContent(reader,reader.index,this.compressedSize,compression,this.uncompressedSize);if(this.loadOptions.checkCRC32){this.decompressed=utils.transformTo("string",this.decompressed.getContent());if(jszipProto.crc32(this.decompressed)!==this.crc32){throw new Error("Corrupted zip : CRC32 mismatch")}}},readCentralPart:function(reader){this.versionMadeBy=reader.readString(2);this.versionNeeded=reader.readInt(2);this.bitFlag=reader.readInt(2);this.compressionMethod=reader.readString(2);this.date=reader.readDate();this.crc32=reader.readInt(4);this.compressedSize=reader.readInt(4);this.uncompressedSize=reader.readInt(4);this.fileNameLength=reader.readInt(2);this.extraFieldsLength=reader.readInt(2);this.fileCommentLength=reader.readInt(2);this.diskNumberStart=reader.readInt(2);this.internalFileAttributes=reader.readInt(2);this.externalFileAttributes=reader.readInt(4);this.localHeaderOffset=reader.readInt(4);if(this.isEncrypted()){throw new Error("Encrypted zip are not supported")}this.fileName=reader.readString(this.fileNameLength);this.readExtraFields(reader);this.parseZIP64ExtraField(reader);this.fileComment=reader.readString(this.fileCommentLength);this.dir=this.externalFileAttributes&16?true:false},parseZIP64ExtraField:function(reader){if(!this.extraFields[1]){return}var extraReader=new StringReader(this.extraFields[1].value);if(this.uncompressedSize===utils.MAX_VALUE_32BITS){this.uncompressedSize=extraReader.readInt(8)}if(this.compressedSize===utils.MAX_VALUE_32BITS){this.compressedSize=extraReader.readInt(8)}if(this.localHeaderOffset===utils.MAX_VALUE_32BITS){this.localHeaderOffset=extraReader.readInt(8)}if(this.diskNumberStart===utils.MAX_VALUE_32BITS){this.diskNumberStart=extraReader.readInt(4)}},readExtraFields:function(reader){var start=reader.index,extraFieldId,extraFieldLength,extraFieldValue;this.extraFields=this.extraFields||{};while(reader.index<start+this.extraFieldsLength){extraFieldId=reader.readInt(2);extraFieldLength=reader.readInt(2);extraFieldValue=reader.readString(extraFieldLength);this.extraFields[extraFieldId]={id:extraFieldId,length:extraFieldLength,value:extraFieldValue}}},handleUTF8:function(){if(this.useUTF8()){this.fileName=jszipProto.utf8decode(this.fileName);this.fileComment=jszipProto.utf8decode(this.fileComment)}else{var upath=this.findExtraFieldUnicodePath();if(upath!==null){this.fileName=upath}var ucomment=this.findExtraFieldUnicodeComment();if(ucomment!==null){this.fileComment=ucomment}}},findExtraFieldUnicodePath:function(){var upathField=this.extraFields[28789];if(upathField){var extraReader=new StringReader(upathField.value);if(extraReader.readInt(1)!==1){return null}if(jszipProto.crc32(this.fileName)!==extraReader.readInt(4)){return null}return jszipProto.utf8decode(extraReader.readString(upathField.length-5))}return null},findExtraFieldUnicodeComment:function(){var ucommentField=this.extraFields[25461];if(ucommentField){var extraReader=new StringReader(ucommentField.value);if(extraReader.readInt(1)!==1){return null}if(jszipProto.crc32(this.fileComment)!==extraReader.readInt(4)){return null}return jszipProto.utf8decode(extraReader.readString(ucommentField.length-5))}return null}};module.exports=ZipEntry},{"./compressedObject":2,"./object":13,"./stringReader":15,"./utils":21}],24:[function(_dereq_,module,exports){"use strict";var assign=_dereq_("./lib/utils/common").assign;var deflate=_dereq_("./lib/deflate");var inflate=_dereq_("./lib/inflate");var constants=_dereq_("./lib/zlib/constants");var pako={};assign(pako,deflate,inflate,constants);module.exports=pako},{"./lib/deflate":25,"./lib/inflate":26,"./lib/utils/common":27,"./lib/zlib/constants":30}],25:[function(_dereq_,module,exports){"use strict";var zlib_deflate=_dereq_("./zlib/deflate.js");var utils=_dereq_("./utils/common");var strings=_dereq_("./utils/strings");var msg=_dereq_("./zlib/messages");var zstream=_dereq_("./zlib/zstream");var Z_NO_FLUSH=0;var Z_FINISH=4;var Z_OK=0;var Z_STREAM_END=1;var Z_DEFAULT_COMPRESSION=-1;var Z_DEFAULT_STRATEGY=0;var Z_DEFLATED=8;var Deflate=function(options){this.options=utils.assign({level:Z_DEFAULT_COMPRESSION,method:Z_DEFLATED,chunkSize:16384,windowBits:15,memLevel:8,strategy:Z_DEFAULT_STRATEGY,to:""},options||{});var opt=this.options;if(opt.raw&&opt.windowBits>0){opt.windowBits=-opt.windowBits}else if(opt.gzip&&opt.windowBits>0&&opt.windowBits<16){opt.windowBits+=16}this.err=0;this.msg="";this.ended=false;this.chunks=[];this.strm=new zstream;this.strm.avail_out=0;var status=zlib_deflate.deflateInit2(this.strm,opt.level,opt.method,opt.windowBits,opt.memLevel,opt.strategy);if(status!==Z_OK){throw new Error(msg[status])}if(opt.header){zlib_deflate.deflateSetHeader(this.strm,opt.header)}};Deflate.prototype.push=function(data,mode){var strm=this.strm;var chunkSize=this.options.chunkSize;var status,_mode;if(this.ended){return false}_mode=mode===~~mode?mode:mode===true?Z_FINISH:Z_NO_FLUSH;if(typeof data==="string"){strm.input=strings.string2buf(data)}else{strm.input=data}strm.next_in=0;strm.avail_in=strm.input.length;do{if(strm.avail_out===0){strm.output=new utils.Buf8(chunkSize);strm.next_out=0;strm.avail_out=chunkSize}status=zlib_deflate.deflate(strm,_mode);if(status!==Z_STREAM_END&&status!==Z_OK){this.onEnd(status);this.ended=true;return false}if(strm.avail_out===0||strm.avail_in===0&&_mode===Z_FINISH){if(this.options.to==="string"){this.onData(strings.buf2binstring(utils.shrinkBuf(strm.output,strm.next_out)))}else{this.onData(utils.shrinkBuf(strm.output,strm.next_out))}}}while((strm.avail_in>0||strm.avail_out===0)&&status!==Z_STREAM_END);if(_mode===Z_FINISH){status=zlib_deflate.deflateEnd(this.strm);this.onEnd(status);this.ended=true;return status===Z_OK}return true};Deflate.prototype.onData=function(chunk){this.chunks.push(chunk)};Deflate.prototype.onEnd=function(status){if(status===Z_OK){if(this.options.to==="string"){this.result=this.chunks.join("")}else{this.result=utils.flattenChunks(this.chunks)}}this.chunks=[];this.err=status;this.msg=this.strm.msg};function deflate(input,options){var deflator=new Deflate(options);deflator.push(input,true);if(deflator.err){throw deflator.msg}return deflator.result}function deflateRaw(input,options){options=options||{};options.raw=true;return deflate(input,options)}function gzip(input,options){options=options||{};options.gzip=true;return deflate(input,options)}exports.Deflate=Deflate;exports.deflate=deflate;exports.deflateRaw=deflateRaw;exports.gzip=gzip},{"./utils/common":27,"./utils/strings":28,"./zlib/deflate.js":32,"./zlib/messages":37,"./zlib/zstream":39}],26:[function(_dereq_,module,exports){"use strict";var zlib_inflate=_dereq_("./zlib/inflate.js");var utils=_dereq_("./utils/common");var strings=_dereq_("./utils/strings");var c=_dereq_("./zlib/constants");var msg=_dereq_("./zlib/messages");var zstream=_dereq_("./zlib/zstream");var gzheader=_dereq_("./zlib/gzheader");var Inflate=function(options){this.options=utils.assign({chunkSize:16384,windowBits:0,to:""},options||{});var opt=this.options;if(opt.raw&&opt.windowBits>=0&&opt.windowBits<16){opt.windowBits=-opt.windowBits;if(opt.windowBits===0){opt.windowBits=-15}}if(opt.windowBits>=0&&opt.windowBits<16&&!(options&&options.windowBits)){opt.windowBits+=32}if(opt.windowBits>15&&opt.windowBits<48){if((opt.windowBits&15)===0){opt.windowBits|=15}}this.err=0;this.msg="";this.ended=false;this.chunks=[];this.strm=new zstream;this.strm.avail_out=0;var status=zlib_inflate.inflateInit2(this.strm,opt.windowBits);if(status!==c.Z_OK){throw new Error(msg[status])}this.header=new gzheader;zlib_inflate.inflateGetHeader(this.strm,this.header)};Inflate.prototype.push=function(data,mode){var strm=this.strm;var chunkSize=this.options.chunkSize;var status,_mode;var next_out_utf8,tail,utf8str;if(this.ended){return false}_mode=mode===~~mode?mode:mode===true?c.Z_FINISH:c.Z_NO_FLUSH;if(typeof data==="string"){strm.input=strings.binstring2buf(data)}else{strm.input=data}strm.next_in=0;strm.avail_in=strm.input.length;do{if(strm.avail_out===0){strm.output=new utils.Buf8(chunkSize);strm.next_out=0;strm.avail_out=chunkSize}status=zlib_inflate.inflate(strm,c.Z_NO_FLUSH);if(status!==c.Z_STREAM_END&&status!==c.Z_OK){this.onEnd(status);this.ended=true;return false}if(strm.next_out){if(strm.avail_out===0||status===c.Z_STREAM_END||strm.avail_in===0&&_mode===c.Z_FINISH){if(this.options.to==="string"){next_out_utf8=strings.utf8border(strm.output,strm.next_out);tail=strm.next_out-next_out_utf8;utf8str=strings.buf2string(strm.output,next_out_utf8);strm.next_out=tail;strm.avail_out=chunkSize-tail;if(tail){utils.arraySet(strm.output,strm.output,next_out_utf8,tail,0)}this.onData(utf8str)}else{this.onData(utils.shrinkBuf(strm.output,strm.next_out))}}}}while(strm.avail_in>0&&status!==c.Z_STREAM_END);if(status===c.Z_STREAM_END){_mode=c.Z_FINISH}if(_mode===c.Z_FINISH){status=zlib_inflate.inflateEnd(this.strm);this.onEnd(status);this.ended=true;return status===c.Z_OK}return true};Inflate.prototype.onData=function(chunk){this.chunks.push(chunk)};Inflate.prototype.onEnd=function(status){if(status===c.Z_OK){if(this.options.to==="string"){this.result=this.chunks.join("")}else{this.result=utils.flattenChunks(this.chunks)}}this.chunks=[];this.err=status;this.msg=this.strm.msg};function inflate(input,options){var inflator=new Inflate(options);inflator.push(input,true);if(inflator.err){throw inflator.msg}return inflator.result}function inflateRaw(input,options){options=options||{};options.raw=true;return inflate(input,options)}exports.Inflate=Inflate;exports.inflate=inflate;exports.inflateRaw=inflateRaw;exports.ungzip=inflate},{"./utils/common":27,"./utils/strings":28,"./zlib/constants":30,"./zlib/gzheader":33,"./zlib/inflate.js":35,"./zlib/messages":37,"./zlib/zstream":39}],27:[function(_dereq_,module,exports){"use strict";var TYPED_OK=typeof Uint8Array!=="undefined"&&typeof Uint16Array!=="undefined"&&typeof Int32Array!=="undefined";exports.assign=function(obj){var sources=Array.prototype.slice.call(arguments,1);while(sources.length){var source=sources.shift();if(!source){continue}if(typeof source!=="object"){throw new TypeError(source+"must be non-object")}for(var p in source){if(source.hasOwnProperty(p)){obj[p]=source[p]}}}return obj};exports.shrinkBuf=function(buf,size){if(buf.length===size){return buf}if(buf.subarray){return buf.subarray(0,size)}buf.length=size;return buf};var fnTyped={arraySet:function(dest,src,src_offs,len,dest_offs){if(src.subarray&&dest.subarray){dest.set(src.subarray(src_offs,src_offs+len),dest_offs);return}for(var i=0;i<len;i++){dest[dest_offs+i]=src[src_offs+i]}},flattenChunks:function(chunks){var i,l,len,pos,chunk,result;len=0;for(i=0,l=chunks.length;i<l;i++){len+=chunks[i].length}result=new Uint8Array(len);pos=0;for(i=0,l=chunks.length;i<l;i++){chunk=chunks[i];result.set(chunk,pos);pos+=chunk.length}return result}};var fnUntyped={arraySet:function(dest,src,src_offs,len,dest_offs){for(var i=0;i<len;i++){dest[dest_offs+i]=src[src_offs+i]}},flattenChunks:function(chunks){return[].concat.apply([],chunks)}};exports.setTyped=function(on){if(on){exports.Buf8=Uint8Array;exports.Buf16=Uint16Array;exports.Buf32=Int32Array;exports.assign(exports,fnTyped)}else{exports.Buf8=Array;exports.Buf16=Array;exports.Buf32=Array;exports.assign(exports,fnUntyped)}};exports.setTyped(TYPED_OK)},{}],28:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("./common");var STR_APPLY_OK=true;var STR_APPLY_UIA_OK=true;try{String.fromCharCode.apply(null,[0])}catch(__){STR_APPLY_OK=false}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(__){STR_APPLY_UIA_OK=false}var _utf8len=new utils.Buf8(256);for(var i=0;i<256;i++){_utf8len[i]=i>=252?6:i>=248?5:i>=240?4:i>=224?3:i>=192?2:1}_utf8len[254]=_utf8len[254]=1;exports.string2buf=function(str){var buf,c,c2,m_pos,i,str_len=str.length,buf_len=0;for(m_pos=0;m_pos<str_len;m_pos++){c=str.charCodeAt(m_pos);if((c&64512)===55296&&m_pos+1<str_len){c2=str.charCodeAt(m_pos+1);if((c2&64512)===56320){c=65536+(c-55296<<10)+(c2-56320);m_pos++}}buf_len+=c<128?1:c<2048?2:c<65536?3:4}buf=new utils.Buf8(buf_len);for(i=0,m_pos=0;i<buf_len;m_pos++){c=str.charCodeAt(m_pos);if((c&64512)===55296&&m_pos+1<str_len){c2=str.charCodeAt(m_pos+1);if((c2&64512)===56320){c=65536+(c-55296<<10)+(c2-56320);m_pos++}}if(c<128){buf[i++]=c}else if(c<2048){buf[i++]=192|c>>>6;buf[i++]=128|c&63}else if(c<65536){buf[i++]=224|c>>>12;buf[i++]=128|c>>>6&63;buf[i++]=128|c&63}else{buf[i++]=240|c>>>18;buf[i++]=128|c>>>12&63;buf[i++]=128|c>>>6&63;buf[i++]=128|c&63}}return buf};function buf2binstring(buf,len){if(len<65537){if(buf.subarray&&STR_APPLY_UIA_OK||!buf.subarray&&STR_APPLY_OK){return String.fromCharCode.apply(null,utils.shrinkBuf(buf,len))}}var result="";for(var i=0;i<len;i++){result+=String.fromCharCode(buf[i])}return result}exports.buf2binstring=function(buf){return buf2binstring(buf,buf.length)};exports.binstring2buf=function(str){var buf=new utils.Buf8(str.length);for(var i=0,len=buf.length;i<len;i++){buf[i]=str.charCodeAt(i)}return buf};exports.buf2string=function(buf,max){var i,out,c,c_len;var len=max||buf.length;var utf16buf=new Array(len*2);for(out=0,i=0;i<len;){c=buf[i++];if(c<128){utf16buf[out++]=c;continue}c_len=_utf8len[c];if(c_len>4){utf16buf[out++]=65533;i+=c_len-1;continue}c&=c_len===2?31:c_len===3?15:7;while(c_len>1&&i<len){c=c<<6|buf[i++]&63;c_len--}if(c_len>1){utf16buf[out++]=65533;continue}if(c<65536){utf16buf[out++]=c}else{c-=65536;utf16buf[out++]=55296|c>>10&1023;utf16buf[out++]=56320|c&1023}}return buf2binstring(utf16buf,out)};exports.utf8border=function(buf,max){var pos;max=max||buf.length;if(max>buf.length){max=buf.length}pos=max-1;while(pos>=0&&(buf[pos]&192)===128){pos--}if(pos<0){return max}if(pos===0){return max}return pos+_utf8len[buf[pos]]>max?pos:max}},{"./common":27}],29:[function(_dereq_,module,exports){"use strict";function adler32(adler,buf,len,pos){var s1=adler&65535|0,s2=adler>>>16&65535|0,n=0;while(len!==0){n=len>2e3?2e3:len;len-=n;do{s1=s1+buf[pos++]|0;s2=s2+s1|0}while(--n);s1%=65521;s2%=65521}return s1|s2<<16|0}module.exports=adler32},{}],30:[function(_dereq_,module,exports){module.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],31:[function(_dereq_,module,exports){"use strict";function makeTable(){var c,table=[];for(var n=0;n<256;n++){c=n;for(var k=0;k<8;k++){c=c&1?3988292384^c>>>1:c>>>1}table[n]=c}return table}var crcTable=makeTable();function crc32(crc,buf,len,pos){var t=crcTable,end=pos+len;crc=crc^-1;for(var i=pos;i<end;i++){crc=crc>>>8^t[(crc^buf[i])&255]}return crc^-1}module.exports=crc32},{}],32:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("../utils/common");var trees=_dereq_("./trees");var adler32=_dereq_("./adler32");var crc32=_dereq_("./crc32");var msg=_dereq_("./messages");var Z_NO_FLUSH=0;var Z_PARTIAL_FLUSH=1;var Z_FULL_FLUSH=3;var Z_FINISH=4;var Z_BLOCK=5;var Z_OK=0;var Z_STREAM_END=1;var Z_STREAM_ERROR=-2;var Z_DATA_ERROR=-3;var Z_BUF_ERROR=-5;var Z_DEFAULT_COMPRESSION=-1;var Z_FILTERED=1;var Z_HUFFMAN_ONLY=2;var Z_RLE=3;var Z_FIXED=4;var Z_DEFAULT_STRATEGY=0;var Z_UNKNOWN=2;var Z_DEFLATED=8;var MAX_MEM_LEVEL=9;var MAX_WBITS=15;var DEF_MEM_LEVEL=8;var LENGTH_CODES=29;var LITERALS=256;var L_CODES=LITERALS+1+LENGTH_CODES;var D_CODES=30;var BL_CODES=19;var HEAP_SIZE=2*L_CODES+1;var MAX_BITS=15;var MIN_MATCH=3;var MAX_MATCH=258;var MIN_LOOKAHEAD=MAX_MATCH+MIN_MATCH+1;var PRESET_DICT=32;var INIT_STATE=42;var EXTRA_STATE=69;var NAME_STATE=73;var COMMENT_STATE=91;var HCRC_STATE=103;var BUSY_STATE=113;var FINISH_STATE=666;var BS_NEED_MORE=1;var BS_BLOCK_DONE=2;var BS_FINISH_STARTED=3;var BS_FINISH_DONE=4;var OS_CODE=3;function err(strm,errorCode){strm.msg=msg[errorCode];return errorCode}function rank(f){return(f<<1)-(f>4?9:0)}function zero(buf){var len=buf.length;while(--len>=0){buf[len]=0}}function flush_pending(strm){var s=strm.state;var len=s.pending;if(len>strm.avail_out){len=strm.avail_out}if(len===0){return}utils.arraySet(strm.output,s.pending_buf,s.pending_out,len,strm.next_out);strm.next_out+=len;s.pending_out+=len;strm.total_out+=len;strm.avail_out-=len;s.pending-=len;if(s.pending===0){s.pending_out=0}}function flush_block_only(s,last){trees._tr_flush_block(s,s.block_start>=0?s.block_start:-1,s.strstart-s.block_start,last);s.block_start=s.strstart;flush_pending(s.strm)}function put_byte(s,b){s.pending_buf[s.pending++]=b}function putShortMSB(s,b){s.pending_buf[s.pending++]=b>>>8&255;s.pending_buf[s.pending++]=b&255}function read_buf(strm,buf,start,size){var len=strm.avail_in;if(len>size){len=size}if(len===0){return 0}strm.avail_in-=len;utils.arraySet(buf,strm.input,strm.next_in,len,start);if(strm.state.wrap===1){strm.adler=adler32(strm.adler,buf,len,start)}else if(strm.state.wrap===2){strm.adler=crc32(strm.adler,buf,len,start)}strm.next_in+=len;strm.total_in+=len;return len}function longest_match(s,cur_match){var chain_length=s.max_chain_length;var scan=s.strstart;var match;var len;var best_len=s.prev_length;var nice_match=s.nice_match;var limit=s.strstart>s.w_size-MIN_LOOKAHEAD?s.strstart-(s.w_size-MIN_LOOKAHEAD):0;var _win=s.window;var wmask=s.w_mask;var prev=s.prev;var strend=s.strstart+MAX_MATCH;var scan_end1=_win[scan+best_len-1];var scan_end=_win[scan+best_len];if(s.prev_length>=s.good_match){chain_length>>=2}if(nice_match>s.lookahead){nice_match=s.lookahead}do{match=cur_match;if(_win[match+best_len]!==scan_end||_win[match+best_len-1]!==scan_end1||_win[match]!==_win[scan]||_win[++match]!==_win[scan+1]){continue}scan+=2;match++;do{}while(_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&scan<strend);len=MAX_MATCH-(strend-scan);scan=strend-MAX_MATCH;if(len>best_len){s.match_start=cur_match;best_len=len;if(len>=nice_match){break}scan_end1=_win[scan+best_len-1];scan_end=_win[scan+best_len]}}while((cur_match=prev[cur_match&wmask])>limit&&--chain_length!==0);if(best_len<=s.lookahead){return best_len}return s.lookahead}function fill_window(s){var _w_size=s.w_size;var p,n,m,more,str;do{more=s.window_size-s.lookahead-s.strstart;if(s.strstart>=_w_size+(_w_size-MIN_LOOKAHEAD)){utils.arraySet(s.window,s.window,_w_size,_w_size,0);s.match_start-=_w_size;s.strstart-=_w_size;s.block_start-=_w_size;n=s.hash_size;p=n;do{m=s.head[--p];s.head[p]=m>=_w_size?m-_w_size:0}while(--n);n=_w_size;p=n;do{m=s.prev[--p];s.prev[p]=m>=_w_size?m-_w_size:0}while(--n);more+=_w_size}if(s.strm.avail_in===0){break}n=read_buf(s.strm,s.window,s.strstart+s.lookahead,more);s.lookahead+=n;if(s.lookahead+s.insert>=MIN_MATCH){str=s.strstart-s.insert;s.ins_h=s.window[str];s.ins_h=(s.ins_h<<s.hash_shift^s.window[str+1])&s.hash_mask;while(s.insert){s.ins_h=(s.ins_h<<s.hash_shift^s.window[str+MIN_MATCH-1])&s.hash_mask;s.prev[str&s.w_mask]=s.head[s.ins_h];s.head[s.ins_h]=str;str++;s.insert--;if(s.lookahead+s.insert<MIN_MATCH){break}}}}while(s.lookahead<MIN_LOOKAHEAD&&s.strm.avail_in!==0)}function deflate_stored(s,flush){var max_block_size=65535;if(max_block_size>s.pending_buf_size-5){max_block_size=s.pending_buf_size-5}for(;;){if(s.lookahead<=1){fill_window(s);if(s.lookahead===0&&flush===Z_NO_FLUSH){return BS_NEED_MORE}if(s.lookahead===0){break}}s.strstart+=s.lookahead;s.lookahead=0;var max_start=s.block_start+max_block_size;if(s.strstart===0||s.strstart>=max_start){s.lookahead=s.strstart-max_start;s.strstart=max_start;flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}if(s.strstart-s.block_start>=s.w_size-MIN_LOOKAHEAD){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}}s.insert=0;if(flush===Z_FINISH){flush_block_only(s,true);if(s.strm.avail_out===0){return BS_FINISH_STARTED}return BS_FINISH_DONE}if(s.strstart>s.block_start){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}return BS_NEED_MORE}function deflate_fast(s,flush){var hash_head;var bflush;for(;;){if(s.lookahead<MIN_LOOKAHEAD){fill_window(s);if(s.lookahead<MIN_LOOKAHEAD&&flush===Z_NO_FLUSH){return BS_NEED_MORE}if(s.lookahead===0){break}}hash_head=0;if(s.lookahead>=MIN_MATCH){s.ins_h=(s.ins_h<<s.hash_shift^s.window[s.strstart+MIN_MATCH-1])&s.hash_mask;hash_head=s.prev[s.strstart&s.w_mask]=s.head[s.ins_h];s.head[s.ins_h]=s.strstart}if(hash_head!==0&&s.strstart-hash_head<=s.w_size-MIN_LOOKAHEAD){s.match_length=longest_match(s,hash_head)}if(s.match_length>=MIN_MATCH){bflush=trees._tr_tally(s,s.strstart-s.match_start,s.match_length-MIN_MATCH);s.lookahead-=s.match_length;if(s.match_length<=s.max_lazy_match&&s.lookahead>=MIN_MATCH){s.match_length--;do{s.strstart++;s.ins_h=(s.ins_h<<s.hash_shift^s.window[s.strstart+MIN_MATCH-1])&s.hash_mask;hash_head=s.prev[s.strstart&s.w_mask]=s.head[s.ins_h];s.head[s.ins_h]=s.strstart}while(--s.match_length!==0);s.strstart++}else{s.strstart+=s.match_length;s.match_length=0;s.ins_h=s.window[s.strstart];s.ins_h=(s.ins_h<<s.hash_shift^s.window[s.strstart+1])&s.hash_mask}}else{bflush=trees._tr_tally(s,0,s.window[s.strstart]);s.lookahead--;s.strstart++}if(bflush){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}}s.insert=s.strstart<MIN_MATCH-1?s.strstart:MIN_MATCH-1;if(flush===Z_FINISH){flush_block_only(s,true);if(s.strm.avail_out===0){return BS_FINISH_STARTED}return BS_FINISH_DONE}if(s.last_lit){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}return BS_BLOCK_DONE}function deflate_slow(s,flush){var hash_head;var bflush;var max_insert;for(;;){if(s.lookahead<MIN_LOOKAHEAD){fill_window(s);if(s.lookahead<MIN_LOOKAHEAD&&flush===Z_NO_FLUSH){return BS_NEED_MORE}if(s.lookahead===0){break}}hash_head=0;if(s.lookahead>=MIN_MATCH){s.ins_h=(s.ins_h<<s.hash_shift^s.window[s.strstart+MIN_MATCH-1])&s.hash_mask;hash_head=s.prev[s.strstart&s.w_mask]=s.head[s.ins_h];s.head[s.ins_h]=s.strstart}s.prev_length=s.match_length;s.prev_match=s.match_start;s.match_length=MIN_MATCH-1;if(hash_head!==0&&s.prev_length<s.max_lazy_match&&s.strstart-hash_head<=s.w_size-MIN_LOOKAHEAD){s.match_length=longest_match(s,hash_head);if(s.match_length<=5&&(s.strategy===Z_FILTERED||s.match_length===MIN_MATCH&&s.strstart-s.match_start>4096)){s.match_length=MIN_MATCH-1}}if(s.prev_length>=MIN_MATCH&&s.match_length<=s.prev_length){max_insert=s.strstart+s.lookahead-MIN_MATCH;bflush=trees._tr_tally(s,s.strstart-1-s.prev_match,s.prev_length-MIN_MATCH);s.lookahead-=s.prev_length-1;s.prev_length-=2;do{if(++s.strstart<=max_insert){s.ins_h=(s.ins_h<<s.hash_shift^s.window[s.strstart+MIN_MATCH-1])&s.hash_mask;hash_head=s.prev[s.strstart&s.w_mask]=s.head[s.ins_h];s.head[s.ins_h]=s.strstart}}while(--s.prev_length!==0);s.match_available=0;s.match_length=MIN_MATCH-1;s.strstart++;if(bflush){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}}else if(s.match_available){bflush=trees._tr_tally(s,0,s.window[s.strstart-1]);if(bflush){flush_block_only(s,false)}s.strstart++;s.lookahead--;if(s.strm.avail_out===0){return BS_NEED_MORE}}else{s.match_available=1;s.strstart++;s.lookahead--}}if(s.match_available){bflush=trees._tr_tally(s,0,s.window[s.strstart-1]);s.match_available=0}s.insert=s.strstart<MIN_MATCH-1?s.strstart:MIN_MATCH-1;if(flush===Z_FINISH){flush_block_only(s,true);if(s.strm.avail_out===0){return BS_FINISH_STARTED}return BS_FINISH_DONE}if(s.last_lit){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}return BS_BLOCK_DONE}function deflate_rle(s,flush){var bflush;var prev;var scan,strend;var _win=s.window;for(;;){if(s.lookahead<=MAX_MATCH){fill_window(s);if(s.lookahead<=MAX_MATCH&&flush===Z_NO_FLUSH){return BS_NEED_MORE}if(s.lookahead===0){break}}s.match_length=0;if(s.lookahead>=MIN_MATCH&&s.strstart>0){scan=s.strstart-1;prev=_win[scan];if(prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]){strend=s.strstart+MAX_MATCH;do{}while(prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]&&scan<strend);s.match_length=MAX_MATCH-(strend-scan);if(s.match_length>s.lookahead){s.match_length=s.lookahead}}}if(s.match_length>=MIN_MATCH){bflush=trees._tr_tally(s,1,s.match_length-MIN_MATCH);s.lookahead-=s.match_length;s.strstart+=s.match_length;s.match_length=0}else{bflush=trees._tr_tally(s,0,s.window[s.strstart]);s.lookahead--;s.strstart++}if(bflush){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}}s.insert=0;if(flush===Z_FINISH){flush_block_only(s,true);if(s.strm.avail_out===0){return BS_FINISH_STARTED}return BS_FINISH_DONE}if(s.last_lit){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}return BS_BLOCK_DONE}function deflate_huff(s,flush){
var bflush;for(;;){if(s.lookahead===0){fill_window(s);if(s.lookahead===0){if(flush===Z_NO_FLUSH){return BS_NEED_MORE}break}}s.match_length=0;bflush=trees._tr_tally(s,0,s.window[s.strstart]);s.lookahead--;s.strstart++;if(bflush){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}}s.insert=0;if(flush===Z_FINISH){flush_block_only(s,true);if(s.strm.avail_out===0){return BS_FINISH_STARTED}return BS_FINISH_DONE}if(s.last_lit){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}return BS_BLOCK_DONE}var Config=function(good_length,max_lazy,nice_length,max_chain,func){this.good_length=good_length;this.max_lazy=max_lazy;this.nice_length=nice_length;this.max_chain=max_chain;this.func=func};var configuration_table;configuration_table=[new Config(0,0,0,0,deflate_stored),new Config(4,4,8,4,deflate_fast),new Config(4,5,16,8,deflate_fast),new Config(4,6,32,32,deflate_fast),new Config(4,4,16,16,deflate_slow),new Config(8,16,32,32,deflate_slow),new Config(8,16,128,128,deflate_slow),new Config(8,32,128,256,deflate_slow),new Config(32,128,258,1024,deflate_slow),new Config(32,258,258,4096,deflate_slow)];function lm_init(s){s.window_size=2*s.w_size;zero(s.head);s.max_lazy_match=configuration_table[s.level].max_lazy;s.good_match=configuration_table[s.level].good_length;s.nice_match=configuration_table[s.level].nice_length;s.max_chain_length=configuration_table[s.level].max_chain;s.strstart=0;s.block_start=0;s.lookahead=0;s.insert=0;s.match_length=s.prev_length=MIN_MATCH-1;s.match_available=0;s.ins_h=0}function DeflateState(){this.strm=null;this.status=0;this.pending_buf=null;this.pending_buf_size=0;this.pending_out=0;this.pending=0;this.wrap=0;this.gzhead=null;this.gzindex=0;this.method=Z_DEFLATED;this.last_flush=-1;this.w_size=0;this.w_bits=0;this.w_mask=0;this.window=null;this.window_size=0;this.prev=null;this.head=null;this.ins_h=0;this.hash_size=0;this.hash_bits=0;this.hash_mask=0;this.hash_shift=0;this.block_start=0;this.match_length=0;this.prev_match=0;this.match_available=0;this.strstart=0;this.match_start=0;this.lookahead=0;this.prev_length=0;this.max_chain_length=0;this.max_lazy_match=0;this.level=0;this.strategy=0;this.good_match=0;this.nice_match=0;this.dyn_ltree=new utils.Buf16(HEAP_SIZE*2);this.dyn_dtree=new utils.Buf16((2*D_CODES+1)*2);this.bl_tree=new utils.Buf16((2*BL_CODES+1)*2);zero(this.dyn_ltree);zero(this.dyn_dtree);zero(this.bl_tree);this.l_desc=null;this.d_desc=null;this.bl_desc=null;this.bl_count=new utils.Buf16(MAX_BITS+1);this.heap=new utils.Buf16(2*L_CODES+1);zero(this.heap);this.heap_len=0;this.heap_max=0;this.depth=new utils.Buf16(2*L_CODES+1);zero(this.depth);this.l_buf=0;this.lit_bufsize=0;this.last_lit=0;this.d_buf=0;this.opt_len=0;this.static_len=0;this.matches=0;this.insert=0;this.bi_buf=0;this.bi_valid=0}function deflateResetKeep(strm){var s;if(!strm||!strm.state){return err(strm,Z_STREAM_ERROR)}strm.total_in=strm.total_out=0;strm.data_type=Z_UNKNOWN;s=strm.state;s.pending=0;s.pending_out=0;if(s.wrap<0){s.wrap=-s.wrap}s.status=s.wrap?INIT_STATE:BUSY_STATE;strm.adler=s.wrap===2?0:1;s.last_flush=Z_NO_FLUSH;trees._tr_init(s);return Z_OK}function deflateReset(strm){var ret=deflateResetKeep(strm);if(ret===Z_OK){lm_init(strm.state)}return ret}function deflateSetHeader(strm,head){if(!strm||!strm.state){return Z_STREAM_ERROR}if(strm.state.wrap!==2){return Z_STREAM_ERROR}strm.state.gzhead=head;return Z_OK}function deflateInit2(strm,level,method,windowBits,memLevel,strategy){if(!strm){return Z_STREAM_ERROR}var wrap=1;if(level===Z_DEFAULT_COMPRESSION){level=6}if(windowBits<0){wrap=0;windowBits=-windowBits}else if(windowBits>15){wrap=2;windowBits-=16}if(memLevel<1||memLevel>MAX_MEM_LEVEL||method!==Z_DEFLATED||windowBits<8||windowBits>15||level<0||level>9||strategy<0||strategy>Z_FIXED){return err(strm,Z_STREAM_ERROR)}if(windowBits===8){windowBits=9}var s=new DeflateState;strm.state=s;s.strm=strm;s.wrap=wrap;s.gzhead=null;s.w_bits=windowBits;s.w_size=1<<s.w_bits;s.w_mask=s.w_size-1;s.hash_bits=memLevel+7;s.hash_size=1<<s.hash_bits;s.hash_mask=s.hash_size-1;s.hash_shift=~~((s.hash_bits+MIN_MATCH-1)/MIN_MATCH);s.window=new utils.Buf8(s.w_size*2);s.head=new utils.Buf16(s.hash_size);s.prev=new utils.Buf16(s.w_size);s.lit_bufsize=1<<memLevel+6;s.pending_buf_size=s.lit_bufsize*4;s.pending_buf=new utils.Buf8(s.pending_buf_size);s.d_buf=s.lit_bufsize>>1;s.l_buf=(1+2)*s.lit_bufsize;s.level=level;s.strategy=strategy;s.method=method;return deflateReset(strm)}function deflateInit(strm,level){return deflateInit2(strm,level,Z_DEFLATED,MAX_WBITS,DEF_MEM_LEVEL,Z_DEFAULT_STRATEGY)}function deflate(strm,flush){var old_flush,s;var beg,val;if(!strm||!strm.state||flush>Z_BLOCK||flush<0){return strm?err(strm,Z_STREAM_ERROR):Z_STREAM_ERROR}s=strm.state;if(!strm.output||!strm.input&&strm.avail_in!==0||s.status===FINISH_STATE&&flush!==Z_FINISH){return err(strm,strm.avail_out===0?Z_BUF_ERROR:Z_STREAM_ERROR)}s.strm=strm;old_flush=s.last_flush;s.last_flush=flush;if(s.status===INIT_STATE){if(s.wrap===2){strm.adler=0;put_byte(s,31);put_byte(s,139);put_byte(s,8);if(!s.gzhead){put_byte(s,0);put_byte(s,0);put_byte(s,0);put_byte(s,0);put_byte(s,0);put_byte(s,s.level===9?2:s.strategy>=Z_HUFFMAN_ONLY||s.level<2?4:0);put_byte(s,OS_CODE);s.status=BUSY_STATE}else{put_byte(s,(s.gzhead.text?1:0)+(s.gzhead.hcrc?2:0)+(!s.gzhead.extra?0:4)+(!s.gzhead.name?0:8)+(!s.gzhead.comment?0:16));put_byte(s,s.gzhead.time&255);put_byte(s,s.gzhead.time>>8&255);put_byte(s,s.gzhead.time>>16&255);put_byte(s,s.gzhead.time>>24&255);put_byte(s,s.level===9?2:s.strategy>=Z_HUFFMAN_ONLY||s.level<2?4:0);put_byte(s,s.gzhead.os&255);if(s.gzhead.extra&&s.gzhead.extra.length){put_byte(s,s.gzhead.extra.length&255);put_byte(s,s.gzhead.extra.length>>8&255)}if(s.gzhead.hcrc){strm.adler=crc32(strm.adler,s.pending_buf,s.pending,0)}s.gzindex=0;s.status=EXTRA_STATE}}else{var header=Z_DEFLATED+(s.w_bits-8<<4)<<8;var level_flags=-1;if(s.strategy>=Z_HUFFMAN_ONLY||s.level<2){level_flags=0}else if(s.level<6){level_flags=1}else if(s.level===6){level_flags=2}else{level_flags=3}header|=level_flags<<6;if(s.strstart!==0){header|=PRESET_DICT}header+=31-header%31;s.status=BUSY_STATE;putShortMSB(s,header);if(s.strstart!==0){putShortMSB(s,strm.adler>>>16);putShortMSB(s,strm.adler&65535)}strm.adler=1}}if(s.status===EXTRA_STATE){if(s.gzhead.extra){beg=s.pending;while(s.gzindex<(s.gzhead.extra.length&65535)){if(s.pending===s.pending_buf_size){if(s.gzhead.hcrc&&s.pending>beg){strm.adler=crc32(strm.adler,s.pending_buf,s.pending-beg,beg)}flush_pending(strm);beg=s.pending;if(s.pending===s.pending_buf_size){break}}put_byte(s,s.gzhead.extra[s.gzindex]&255);s.gzindex++}if(s.gzhead.hcrc&&s.pending>beg){strm.adler=crc32(strm.adler,s.pending_buf,s.pending-beg,beg)}if(s.gzindex===s.gzhead.extra.length){s.gzindex=0;s.status=NAME_STATE}}else{s.status=NAME_STATE}}if(s.status===NAME_STATE){if(s.gzhead.name){beg=s.pending;do{if(s.pending===s.pending_buf_size){if(s.gzhead.hcrc&&s.pending>beg){strm.adler=crc32(strm.adler,s.pending_buf,s.pending-beg,beg)}flush_pending(strm);beg=s.pending;if(s.pending===s.pending_buf_size){val=1;break}}if(s.gzindex<s.gzhead.name.length){val=s.gzhead.name.charCodeAt(s.gzindex++)&255}else{val=0}put_byte(s,val)}while(val!==0);if(s.gzhead.hcrc&&s.pending>beg){strm.adler=crc32(strm.adler,s.pending_buf,s.pending-beg,beg)}if(val===0){s.gzindex=0;s.status=COMMENT_STATE}}else{s.status=COMMENT_STATE}}if(s.status===COMMENT_STATE){if(s.gzhead.comment){beg=s.pending;do{if(s.pending===s.pending_buf_size){if(s.gzhead.hcrc&&s.pending>beg){strm.adler=crc32(strm.adler,s.pending_buf,s.pending-beg,beg)}flush_pending(strm);beg=s.pending;if(s.pending===s.pending_buf_size){val=1;break}}if(s.gzindex<s.gzhead.comment.length){val=s.gzhead.comment.charCodeAt(s.gzindex++)&255}else{val=0}put_byte(s,val)}while(val!==0);if(s.gzhead.hcrc&&s.pending>beg){strm.adler=crc32(strm.adler,s.pending_buf,s.pending-beg,beg)}if(val===0){s.status=HCRC_STATE}}else{s.status=HCRC_STATE}}if(s.status===HCRC_STATE){if(s.gzhead.hcrc){if(s.pending+2>s.pending_buf_size){flush_pending(strm)}if(s.pending+2<=s.pending_buf_size){put_byte(s,strm.adler&255);put_byte(s,strm.adler>>8&255);strm.adler=0;s.status=BUSY_STATE}}else{s.status=BUSY_STATE}}if(s.pending!==0){flush_pending(strm);if(strm.avail_out===0){s.last_flush=-1;return Z_OK}}else if(strm.avail_in===0&&rank(flush)<=rank(old_flush)&&flush!==Z_FINISH){return err(strm,Z_BUF_ERROR)}if(s.status===FINISH_STATE&&strm.avail_in!==0){return err(strm,Z_BUF_ERROR)}if(strm.avail_in!==0||s.lookahead!==0||flush!==Z_NO_FLUSH&&s.status!==FINISH_STATE){var bstate=s.strategy===Z_HUFFMAN_ONLY?deflate_huff(s,flush):s.strategy===Z_RLE?deflate_rle(s,flush):configuration_table[s.level].func(s,flush);if(bstate===BS_FINISH_STARTED||bstate===BS_FINISH_DONE){s.status=FINISH_STATE}if(bstate===BS_NEED_MORE||bstate===BS_FINISH_STARTED){if(strm.avail_out===0){s.last_flush=-1}return Z_OK}if(bstate===BS_BLOCK_DONE){if(flush===Z_PARTIAL_FLUSH){trees._tr_align(s)}else if(flush!==Z_BLOCK){trees._tr_stored_block(s,0,0,false);if(flush===Z_FULL_FLUSH){zero(s.head);if(s.lookahead===0){s.strstart=0;s.block_start=0;s.insert=0}}}flush_pending(strm);if(strm.avail_out===0){s.last_flush=-1;return Z_OK}}}if(flush!==Z_FINISH){return Z_OK}if(s.wrap<=0){return Z_STREAM_END}if(s.wrap===2){put_byte(s,strm.adler&255);put_byte(s,strm.adler>>8&255);put_byte(s,strm.adler>>16&255);put_byte(s,strm.adler>>24&255);put_byte(s,strm.total_in&255);put_byte(s,strm.total_in>>8&255);put_byte(s,strm.total_in>>16&255);put_byte(s,strm.total_in>>24&255)}else{putShortMSB(s,strm.adler>>>16);putShortMSB(s,strm.adler&65535)}flush_pending(strm);if(s.wrap>0){s.wrap=-s.wrap}return s.pending!==0?Z_OK:Z_STREAM_END}function deflateEnd(strm){var status;if(!strm||!strm.state){return Z_STREAM_ERROR}status=strm.state.status;if(status!==INIT_STATE&&status!==EXTRA_STATE&&status!==NAME_STATE&&status!==COMMENT_STATE&&status!==HCRC_STATE&&status!==BUSY_STATE&&status!==FINISH_STATE){return err(strm,Z_STREAM_ERROR)}strm.state=null;return status===BUSY_STATE?err(strm,Z_DATA_ERROR):Z_OK}exports.deflateInit=deflateInit;exports.deflateInit2=deflateInit2;exports.deflateReset=deflateReset;exports.deflateResetKeep=deflateResetKeep;exports.deflateSetHeader=deflateSetHeader;exports.deflate=deflate;exports.deflateEnd=deflateEnd;exports.deflateInfo="pako deflate (from Nodeca project)"},{"../utils/common":27,"./adler32":29,"./crc32":31,"./messages":37,"./trees":38}],33:[function(_dereq_,module,exports){"use strict";function GZheader(){this.text=0;this.time=0;this.xflags=0;this.os=0;this.extra=null;this.extra_len=0;this.name="";this.comment="";this.hcrc=0;this.done=false}module.exports=GZheader},{}],34:[function(_dereq_,module,exports){"use strict";var BAD=30;var TYPE=12;module.exports=function inflate_fast(strm,start){var state;var _in;var last;var _out;var beg;var end;var dmax;var wsize;var whave;var wnext;var window;var hold;var bits;var lcode;var dcode;var lmask;var dmask;var here;var op;var len;var dist;var from;var from_source;var input,output;state=strm.state;_in=strm.next_in;input=strm.input;last=_in+(strm.avail_in-5);_out=strm.next_out;output=strm.output;beg=_out-(start-strm.avail_out);end=_out+(strm.avail_out-257);dmax=state.dmax;wsize=state.wsize;whave=state.whave;wnext=state.wnext;window=state.window;hold=state.hold;bits=state.bits;lcode=state.lencode;dcode=state.distcode;lmask=(1<<state.lenbits)-1;dmask=(1<<state.distbits)-1;top:do{if(bits<15){hold+=input[_in++]<<bits;bits+=8;hold+=input[_in++]<<bits;bits+=8}here=lcode[hold&lmask];dolen:for(;;){op=here>>>24;hold>>>=op;bits-=op;op=here>>>16&255;if(op===0){output[_out++]=here&65535}else if(op&16){len=here&65535;op&=15;if(op){if(bits<op){hold+=input[_in++]<<bits;bits+=8}len+=hold&(1<<op)-1;hold>>>=op;bits-=op}if(bits<15){hold+=input[_in++]<<bits;bits+=8;hold+=input[_in++]<<bits;bits+=8}here=dcode[hold&dmask];dodist:for(;;){op=here>>>24;hold>>>=op;bits-=op;op=here>>>16&255;if(op&16){dist=here&65535;op&=15;if(bits<op){hold+=input[_in++]<<bits;bits+=8;if(bits<op){hold+=input[_in++]<<bits;bits+=8}}dist+=hold&(1<<op)-1;if(dist>dmax){strm.msg="invalid distance too far back";state.mode=BAD;break top}hold>>>=op;bits-=op;op=_out-beg;if(dist>op){op=dist-op;if(op>whave){if(state.sane){strm.msg="invalid distance too far back";state.mode=BAD;break top}}from=0;from_source=window;if(wnext===0){from+=wsize-op;if(op<len){len-=op;do{output[_out++]=window[from++]}while(--op);from=_out-dist;from_source=output}}else if(wnext<op){from+=wsize+wnext-op;op-=wnext;if(op<len){len-=op;do{output[_out++]=window[from++]}while(--op);from=0;if(wnext<len){op=wnext;len-=op;do{output[_out++]=window[from++]}while(--op);from=_out-dist;from_source=output}}}else{from+=wnext-op;if(op<len){len-=op;do{output[_out++]=window[from++]}while(--op);from=_out-dist;from_source=output}}while(len>2){output[_out++]=from_source[from++];output[_out++]=from_source[from++];output[_out++]=from_source[from++];len-=3}if(len){output[_out++]=from_source[from++];if(len>1){output[_out++]=from_source[from++]}}}else{from=_out-dist;do{output[_out++]=output[from++];output[_out++]=output[from++];output[_out++]=output[from++];len-=3}while(len>2);if(len){output[_out++]=output[from++];if(len>1){output[_out++]=output[from++]}}}}else if((op&64)===0){here=dcode[(here&65535)+(hold&(1<<op)-1)];continue dodist}else{strm.msg="invalid distance code";state.mode=BAD;break top}break}}else if((op&64)===0){here=lcode[(here&65535)+(hold&(1<<op)-1)];continue dolen}else if(op&32){state.mode=TYPE;break top}else{strm.msg="invalid literal/length code";state.mode=BAD;break top}break}}while(_in<last&&_out<end);len=bits>>3;_in-=len;bits-=len<<3;hold&=(1<<bits)-1;strm.next_in=_in;strm.next_out=_out;strm.avail_in=_in<last?5+(last-_in):5-(_in-last);strm.avail_out=_out<end?257+(end-_out):257-(_out-end);state.hold=hold;state.bits=bits;return}},{}],35:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("../utils/common");var adler32=_dereq_("./adler32");var crc32=_dereq_("./crc32");var inflate_fast=_dereq_("./inffast");var inflate_table=_dereq_("./inftrees");var CODES=0;var LENS=1;var DISTS=2;var Z_FINISH=4;var Z_BLOCK=5;var Z_TREES=6;var Z_OK=0;var Z_STREAM_END=1;var Z_NEED_DICT=2;var Z_STREAM_ERROR=-2;var Z_DATA_ERROR=-3;var Z_MEM_ERROR=-4;var Z_BUF_ERROR=-5;var Z_DEFLATED=8;var HEAD=1;var FLAGS=2;var TIME=3;var OS=4;var EXLEN=5;var EXTRA=6;var NAME=7;var COMMENT=8;var HCRC=9;var DICTID=10;var DICT=11;var TYPE=12;var TYPEDO=13;var STORED=14;var COPY_=15;var COPY=16;var TABLE=17;var LENLENS=18;var CODELENS=19;var LEN_=20;var LEN=21;var LENEXT=22;var DIST=23;var DISTEXT=24;var MATCH=25;var LIT=26;var CHECK=27;var LENGTH=28;var DONE=29;var BAD=30;var MEM=31;var SYNC=32;var ENOUGH_LENS=852;var ENOUGH_DISTS=592;var MAX_WBITS=15;var DEF_WBITS=MAX_WBITS;function ZSWAP32(q){return(q>>>24&255)+(q>>>8&65280)+((q&65280)<<8)+((q&255)<<24)}function InflateState(){this.mode=0;this.last=false;this.wrap=0;this.havedict=false;this.flags=0;this.dmax=0;this.check=0;this.total=0;this.head=null;this.wbits=0;this.wsize=0;this.whave=0;this.wnext=0;this.window=null;this.hold=0;this.bits=0;this.length=0;this.offset=0;this.extra=0;this.lencode=null;this.distcode=null;this.lenbits=0;this.distbits=0;this.ncode=0;this.nlen=0;this.ndist=0;this.have=0;this.next=null;this.lens=new utils.Buf16(320);this.work=new utils.Buf16(288);this.lendyn=null;this.distdyn=null;this.sane=0;this.back=0;this.was=0}function inflateResetKeep(strm){var state;if(!strm||!strm.state){return Z_STREAM_ERROR}state=strm.state;strm.total_in=strm.total_out=state.total=0;strm.msg="";if(state.wrap){strm.adler=state.wrap&1}state.mode=HEAD;state.last=0;state.havedict=0;state.dmax=32768;state.head=null;state.hold=0;state.bits=0;state.lencode=state.lendyn=new utils.Buf32(ENOUGH_LENS);state.distcode=state.distdyn=new utils.Buf32(ENOUGH_DISTS);state.sane=1;state.back=-1;return Z_OK}function inflateReset(strm){var state;if(!strm||!strm.state){return Z_STREAM_ERROR}state=strm.state;state.wsize=0;state.whave=0;state.wnext=0;return inflateResetKeep(strm)}function inflateReset2(strm,windowBits){var wrap;var state;if(!strm||!strm.state){return Z_STREAM_ERROR}state=strm.state;if(windowBits<0){wrap=0;windowBits=-windowBits}else{wrap=(windowBits>>4)+1;if(windowBits<48){windowBits&=15}}if(windowBits&&(windowBits<8||windowBits>15)){return Z_STREAM_ERROR}if(state.window!==null&&state.wbits!==windowBits){state.window=null}state.wrap=wrap;state.wbits=windowBits;return inflateReset(strm)}function inflateInit2(strm,windowBits){var ret;var state;if(!strm){return Z_STREAM_ERROR}state=new InflateState;strm.state=state;state.window=null;ret=inflateReset2(strm,windowBits);if(ret!==Z_OK){strm.state=null}return ret}function inflateInit(strm){return inflateInit2(strm,DEF_WBITS)}var virgin=true;var lenfix,distfix;function fixedtables(state){if(virgin){var sym;lenfix=new utils.Buf32(512);distfix=new utils.Buf32(32);sym=0;while(sym<144){state.lens[sym++]=8}while(sym<256){state.lens[sym++]=9}while(sym<280){state.lens[sym++]=7}while(sym<288){state.lens[sym++]=8}inflate_table(LENS,state.lens,0,288,lenfix,0,state.work,{bits:9});sym=0;while(sym<32){state.lens[sym++]=5}inflate_table(DISTS,state.lens,0,32,distfix,0,state.work,{bits:5});virgin=false}state.lencode=lenfix;state.lenbits=9;state.distcode=distfix;state.distbits=5}function updatewindow(strm,src,end,copy){var dist;var state=strm.state;if(state.window===null){state.wsize=1<<state.wbits;state.wnext=0;state.whave=0;state.window=new utils.Buf8(state.wsize)}if(copy>=state.wsize){utils.arraySet(state.window,src,end-state.wsize,state.wsize,0);state.wnext=0;state.whave=state.wsize}else{dist=state.wsize-state.wnext;if(dist>copy){dist=copy}utils.arraySet(state.window,src,end-copy,dist,state.wnext);copy-=dist;if(copy){utils.arraySet(state.window,src,end-copy,copy,0);state.wnext=copy;state.whave=state.wsize}else{state.wnext+=dist;if(state.wnext===state.wsize){state.wnext=0}if(state.whave<state.wsize){state.whave+=dist}}}return 0}function inflate(strm,flush){var state;var input,output;var next;var put;var have,left;var hold;var bits;var _in,_out;var copy;var from;var from_source;var here=0;var here_bits,here_op,here_val;var last_bits,last_op,last_val;var len;var ret;var hbuf=new utils.Buf8(4);var opts;var n;var order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!strm||!strm.state||!strm.output||!strm.input&&strm.avail_in!==0){return Z_STREAM_ERROR}state=strm.state;if(state.mode===TYPE){state.mode=TYPEDO}put=strm.next_out;output=strm.output;left=strm.avail_out;next=strm.next_in;input=strm.input;have=strm.avail_in;hold=state.hold;bits=state.bits;_in=have;_out=left;ret=Z_OK;inf_leave:for(;;){switch(state.mode){case HEAD:if(state.wrap===0){state.mode=TYPEDO;break}while(bits<16){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}if(state.wrap&2&&hold===35615){state.check=0;hbuf[0]=hold&255;hbuf[1]=hold>>>8&255;state.check=crc32(state.check,hbuf,2,0);hold=0;bits=0;state.mode=FLAGS;break}state.flags=0;if(state.head){state.head.done=false}if(!(state.wrap&1)||(((hold&255)<<8)+(hold>>8))%31){strm.msg="incorrect header check";state.mode=BAD;break}if((hold&15)!==Z_DEFLATED){strm.msg="unknown compression method";state.mode=BAD;break}hold>>>=4;bits-=4;len=(hold&15)+8;if(state.wbits===0){state.wbits=len}else if(len>state.wbits){strm.msg="invalid window size";state.mode=BAD;break}state.dmax=1<<len;strm.adler=state.check=1;state.mode=hold&512?DICTID:TYPE;hold=0;bits=0;break;case FLAGS:while(bits<16){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}state.flags=hold;if((state.flags&255)!==Z_DEFLATED){strm.msg="unknown compression method";state.mode=BAD;break}if(state.flags&57344){strm.msg="unknown header flags set";state.mode=BAD;break}if(state.head){state.head.text=hold>>8&1}if(state.flags&512){hbuf[0]=hold&255;hbuf[1]=hold>>>8&255;state.check=crc32(state.check,hbuf,2,0)}hold=0;bits=0;state.mode=TIME;case TIME:while(bits<32){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}if(state.head){state.head.time=hold}if(state.flags&512){hbuf[0]=hold&255;hbuf[1]=hold>>>8&255;hbuf[2]=hold>>>16&255;hbuf[3]=hold>>>24&255;state.check=crc32(state.check,hbuf,4,0)}hold=0;bits=0;state.mode=OS;case OS:while(bits<16){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}if(state.head){state.head.xflags=hold&255;state.head.os=hold>>8}if(state.flags&512){hbuf[0]=hold&255;hbuf[1]=hold>>>8&255;state.check=crc32(state.check,hbuf,2,0)}hold=0;bits=0;state.mode=EXLEN;case EXLEN:if(state.flags&1024){while(bits<16){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}state.length=hold;if(state.head){state.head.extra_len=hold}if(state.flags&512){hbuf[0]=hold&255;hbuf[1]=hold>>>8&255;state.check=crc32(state.check,hbuf,2,0)}hold=0;bits=0}else if(state.head){state.head.extra=null}state.mode=EXTRA;case EXTRA:if(state.flags&1024){copy=state.length;if(copy>have){copy=have}if(copy){if(state.head){len=state.head.extra_len-state.length;if(!state.head.extra){state.head.extra=new Array(state.head.extra_len)}utils.arraySet(state.head.extra,input,next,copy,len)}if(state.flags&512){state.check=crc32(state.check,input,copy,next)}have-=copy;next+=copy;state.length-=copy}if(state.length){break inf_leave}}state.length=0;state.mode=NAME;case NAME:if(state.flags&2048){if(have===0){break inf_leave}copy=0;do{len=input[next+copy++];if(state.head&&len&&state.length<65536){state.head.name+=String.fromCharCode(len)}}while(len&&copy<have);if(state.flags&512){state.check=crc32(state.check,input,copy,next)}have-=copy;next+=copy;if(len){break inf_leave}}else if(state.head){state.head.name=null}state.length=0;state.mode=COMMENT;case COMMENT:if(state.flags&4096){if(have===0){break inf_leave}copy=0;do{len=input[next+copy++];if(state.head&&len&&state.length<65536){state.head.comment+=String.fromCharCode(len)}}while(len&&copy<have);if(state.flags&512){state.check=crc32(state.check,input,copy,next)}have-=copy;next+=copy;if(len){break inf_leave}}else if(state.head){state.head.comment=null}state.mode=HCRC;case HCRC:if(state.flags&512){while(bits<16){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}if(hold!==(state.check&65535)){strm.msg="header crc mismatch";state.mode=BAD;break}hold=0;bits=0}if(state.head){state.head.hcrc=state.flags>>9&1;state.head.done=true}strm.adler=state.check=0;state.mode=TYPE;break;case DICTID:while(bits<32){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}strm.adler=state.check=ZSWAP32(hold);hold=0;bits=0;state.mode=DICT;case DICT:if(state.havedict===0){strm.next_out=put;strm.avail_out=left;strm.next_in=next;strm.avail_in=have;state.hold=hold;state.bits=bits;return Z_NEED_DICT}strm.adler=state.check=1;state.mode=TYPE;case TYPE:if(flush===Z_BLOCK||flush===Z_TREES){break inf_leave}case TYPEDO:if(state.last){hold>>>=bits&7;bits-=bits&7;state.mode=CHECK;break}while(bits<3){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}state.last=hold&1;hold>>>=1;bits-=1;switch(hold&3){case 0:state.mode=STORED;break;case 1:fixedtables(state);state.mode=LEN_;if(flush===Z_TREES){hold>>>=2;bits-=2;break inf_leave}break;case 2:state.mode=TABLE;break;case 3:strm.msg="invalid block type";state.mode=BAD}hold>>>=2;bits-=2;break;case STORED:hold>>>=bits&7;bits-=bits&7;while(bits<32){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}if((hold&65535)!==(hold>>>16^65535)){strm.msg="invalid stored block lengths";state.mode=BAD;break}state.length=hold&65535;hold=0;bits=0;state.mode=COPY_;if(flush===Z_TREES){break inf_leave}case COPY_:state.mode=COPY;case COPY:copy=state.length;if(copy){if(copy>have){copy=have}if(copy>left){copy=left}if(copy===0){break inf_leave}utils.arraySet(output,input,next,copy,put);have-=copy;next+=copy;left-=copy;put+=copy;state.length-=copy;break}state.mode=TYPE;break;case TABLE:while(bits<14){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}state.nlen=(hold&31)+257;hold>>>=5;bits-=5;state.ndist=(hold&31)+1;hold>>>=5;bits-=5;state.ncode=(hold&15)+4;hold>>>=4;bits-=4;if(state.nlen>286||state.ndist>30){strm.msg="too many length or distance symbols";state.mode=BAD;break}state.have=0;state.mode=LENLENS;case LENLENS:while(state.have<state.ncode){while(bits<3){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}state.lens[order[state.have++]]=hold&7;hold>>>=3;bits-=3}while(state.have<19){state.lens[order[state.have++]]=0}state.lencode=state.lendyn;state.lenbits=7;opts={bits:state.lenbits};ret=inflate_table(CODES,state.lens,0,19,state.lencode,0,state.work,opts);state.lenbits=opts.bits;if(ret){strm.msg="invalid code lengths set";state.mode=BAD;break}state.have=0;state.mode=CODELENS;case CODELENS:while(state.have<state.nlen+state.ndist){for(;;){here=state.lencode[hold&(1<<state.lenbits)-1];here_bits=here>>>24;here_op=here>>>16&255;here_val=here&65535;if(here_bits<=bits){break}if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}if(here_val<16){hold>>>=here_bits;bits-=here_bits;state.lens[state.have++]=here_val}else{if(here_val===16){n=here_bits+2;while(bits<n){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}hold>>>=here_bits;bits-=here_bits;if(state.have===0){strm.msg="invalid bit length repeat";state.mode=BAD;break}len=state.lens[state.have-1];copy=3+(hold&3);hold>>>=2;bits-=2}else if(here_val===17){n=here_bits+3;while(bits<n){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}hold>>>=here_bits;bits-=here_bits;len=0;copy=3+(hold&7);hold>>>=3;bits-=3}else{n=here_bits+7;while(bits<n){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}hold>>>=here_bits;bits-=here_bits;len=0;copy=11+(hold&127);hold>>>=7;bits-=7}if(state.have+copy>state.nlen+state.ndist){strm.msg="invalid bit length repeat";state.mode=BAD;break}while(copy--){state.lens[state.have++]=len}}}if(state.mode===BAD){break}if(state.lens[256]===0){strm.msg="invalid code -- missing end-of-block";state.mode=BAD;break}state.lenbits=9;opts={bits:state.lenbits};ret=inflate_table(LENS,state.lens,0,state.nlen,state.lencode,0,state.work,opts);state.lenbits=opts.bits;if(ret){strm.msg="invalid literal/lengths set";state.mode=BAD;break}state.distbits=6;state.distcode=state.distdyn;opts={bits:state.distbits};ret=inflate_table(DISTS,state.lens,state.nlen,state.ndist,state.distcode,0,state.work,opts);state.distbits=opts.bits;if(ret){strm.msg="invalid distances set";state.mode=BAD;break}state.mode=LEN_;if(flush===Z_TREES){break inf_leave}case LEN_:state.mode=LEN;case LEN:if(have>=6&&left>=258){strm.next_out=put;strm.avail_out=left;strm.next_in=next;strm.avail_in=have;state.hold=hold;state.bits=bits;inflate_fast(strm,_out);put=strm.next_out;output=strm.output;left=strm.avail_out;next=strm.next_in;input=strm.input;have=strm.avail_in;hold=state.hold;bits=state.bits;if(state.mode===TYPE){state.back=-1}break}state.back=0;for(;;){here=state.lencode[hold&(1<<state.lenbits)-1];here_bits=here>>>24;here_op=here>>>16&255;here_val=here&65535;if(here_bits<=bits){break}if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}if(here_op&&(here_op&240)===0){last_bits=here_bits;last_op=here_op;last_val=here_val;for(;;){here=state.lencode[last_val+((hold&(1<<last_bits+last_op)-1)>>last_bits)];here_bits=here>>>24;here_op=here>>>16&255;here_val=here&65535;if(last_bits+here_bits<=bits){break}if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}hold>>>=last_bits;bits-=last_bits;state.back+=last_bits}hold>>>=here_bits;bits-=here_bits;state.back+=here_bits;state.length=here_val;if(here_op===0){state.mode=LIT;break}if(here_op&32){state.back=-1;state.mode=TYPE;break}if(here_op&64){strm.msg="invalid literal/length code";state.mode=BAD;break}state.extra=here_op&15;state.mode=LENEXT;case LENEXT:if(state.extra){n=state.extra;while(bits<n){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}state.length+=hold&(1<<state.extra)-1;hold>>>=state.extra;bits-=state.extra;state.back+=state.extra}state.was=state.length;state.mode=DIST;case DIST:for(;;){here=state.distcode[hold&(1<<state.distbits)-1];here_bits=here>>>24;here_op=here>>>16&255;here_val=here&65535;if(here_bits<=bits){break}if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}if((here_op&240)===0){last_bits=here_bits;last_op=here_op;last_val=here_val;for(;;){here=state.distcode[last_val+((hold&(1<<last_bits+last_op)-1)>>last_bits)];here_bits=here>>>24;here_op=here>>>16&255;here_val=here&65535;if(last_bits+here_bits<=bits){break}if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}hold>>>=last_bits;bits-=last_bits;state.back+=last_bits}hold>>>=here_bits;bits-=here_bits;state.back+=here_bits;if(here_op&64){strm.msg="invalid distance code";state.mode=BAD;break}state.offset=here_val;state.extra=here_op&15;state.mode=DISTEXT;case DISTEXT:if(state.extra){n=state.extra;while(bits<n){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}state.offset+=hold&(1<<state.extra)-1;hold>>>=state.extra;bits-=state.extra;state.back+=state.extra}if(state.offset>state.dmax){strm.msg="invalid distance too far back";state.mode=BAD;break}state.mode=MATCH;case MATCH:if(left===0){break inf_leave}copy=_out-left;if(state.offset>copy){copy=state.offset-copy;if(copy>state.whave){if(state.sane){strm.msg="invalid distance too far back";state.mode=BAD;break}}if(copy>state.wnext){copy-=state.wnext;from=state.wsize-copy}else{from=state.wnext-copy}if(copy>state.length){copy=state.length}from_source=state.window}else{from_source=output;from=put-state.offset;copy=state.length}if(copy>left){copy=left}left-=copy;state.length-=copy;do{output[put++]=from_source[from++]}while(--copy);if(state.length===0){state.mode=LEN}break;case LIT:if(left===0){break inf_leave}output[put++]=state.length;left--;state.mode=LEN;break;case CHECK:if(state.wrap){while(bits<32){if(have===0){break inf_leave}have--;hold|=input[next++]<<bits;bits+=8}_out-=left;strm.total_out+=_out;state.total+=_out;if(_out){strm.adler=state.check=state.flags?crc32(state.check,output,_out,put-_out):adler32(state.check,output,_out,put-_out)}_out=left;if((state.flags?hold:ZSWAP32(hold))!==state.check){strm.msg="incorrect data check";state.mode=BAD;break}hold=0;bits=0}state.mode=LENGTH;case LENGTH:if(state.wrap&&state.flags){while(bits<32){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}if(hold!==(state.total&4294967295)){strm.msg="incorrect length check";state.mode=BAD;break}hold=0;bits=0}state.mode=DONE;case DONE:ret=Z_STREAM_END;break inf_leave;case BAD:ret=Z_DATA_ERROR;break inf_leave;case MEM:return Z_MEM_ERROR;case SYNC:default:return Z_STREAM_ERROR}}strm.next_out=put;strm.avail_out=left;strm.next_in=next;strm.avail_in=have;state.hold=hold;state.bits=bits;if(state.wsize||_out!==strm.avail_out&&state.mode<BAD&&(state.mode<CHECK||flush!==Z_FINISH)){if(updatewindow(strm,strm.output,strm.next_out,_out-strm.avail_out)){state.mode=MEM;return Z_MEM_ERROR}}_in-=strm.avail_in;_out-=strm.avail_out;strm.total_in+=_in;strm.total_out+=_out;state.total+=_out;if(state.wrap&&_out){strm.adler=state.check=state.flags?crc32(state.check,output,_out,strm.next_out-_out):adler32(state.check,output,_out,strm.next_out-_out)}strm.data_type=state.bits+(state.last?64:0)+(state.mode===TYPE?128:0)+(state.mode===LEN_||state.mode===COPY_?256:0);if((_in===0&&_out===0||flush===Z_FINISH)&&ret===Z_OK){ret=Z_BUF_ERROR}return ret}function inflateEnd(strm){if(!strm||!strm.state){return Z_STREAM_ERROR}var state=strm.state;if(state.window){state.window=null}strm.state=null;return Z_OK}function inflateGetHeader(strm,head){var state;if(!strm||!strm.state){return Z_STREAM_ERROR}state=strm.state;if((state.wrap&2)===0){return Z_STREAM_ERROR}state.head=head;head.done=false;return Z_OK}exports.inflateReset=inflateReset;exports.inflateReset2=inflateReset2;exports.inflateResetKeep=inflateResetKeep;exports.inflateInit=inflateInit;exports.inflateInit2=inflateInit2;exports.inflate=inflate;exports.inflateEnd=inflateEnd;exports.inflateGetHeader=inflateGetHeader;
exports.inflateInfo="pako inflate (from Nodeca project)"},{"../utils/common":27,"./adler32":29,"./crc32":31,"./inffast":34,"./inftrees":36}],36:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("../utils/common");var MAXBITS=15;var ENOUGH_LENS=852;var ENOUGH_DISTS=592;var CODES=0;var LENS=1;var DISTS=2;var lbase=[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,0,0];var lext=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78];var dbase=[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,0,0];var dext=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];module.exports=function inflate_table(type,lens,lens_index,codes,table,table_index,work,opts){var bits=opts.bits;var len=0;var sym=0;var min=0,max=0;var root=0;var curr=0;var drop=0;var left=0;var used=0;var huff=0;var incr;var fill;var low;var mask;var next;var base=null;var base_index=0;var end;var count=new utils.Buf16(MAXBITS+1);var offs=new utils.Buf16(MAXBITS+1);var extra=null;var extra_index=0;var here_bits,here_op,here_val;for(len=0;len<=MAXBITS;len++){count[len]=0}for(sym=0;sym<codes;sym++){count[lens[lens_index+sym]]++}root=bits;for(max=MAXBITS;max>=1;max--){if(count[max]!==0){break}}if(root>max){root=max}if(max===0){table[table_index++]=1<<24|64<<16|0;table[table_index++]=1<<24|64<<16|0;opts.bits=1;return 0}for(min=1;min<max;min++){if(count[min]!==0){break}}if(root<min){root=min}left=1;for(len=1;len<=MAXBITS;len++){left<<=1;left-=count[len];if(left<0){return-1}}if(left>0&&(type===CODES||max!==1)){return-1}offs[1]=0;for(len=1;len<MAXBITS;len++){offs[len+1]=offs[len]+count[len]}for(sym=0;sym<codes;sym++){if(lens[lens_index+sym]!==0){work[offs[lens[lens_index+sym]]++]=sym}}if(type===CODES){base=extra=work;end=19}else if(type===LENS){base=lbase;base_index-=257;extra=lext;extra_index-=257;end=256}else{base=dbase;extra=dext;end=-1}huff=0;sym=0;len=min;next=table_index;curr=root;drop=0;low=-1;used=1<<root;mask=used-1;if(type===LENS&&used>ENOUGH_LENS||type===DISTS&&used>ENOUGH_DISTS){return 1}var i=0;for(;;){i++;here_bits=len-drop;if(work[sym]<end){here_op=0;here_val=work[sym]}else if(work[sym]>end){here_op=extra[extra_index+work[sym]];here_val=base[base_index+work[sym]]}else{here_op=32+64;here_val=0}incr=1<<len-drop;fill=1<<curr;min=fill;do{fill-=incr;table[next+(huff>>drop)+fill]=here_bits<<24|here_op<<16|here_val|0}while(fill!==0);incr=1<<len-1;while(huff&incr){incr>>=1}if(incr!==0){huff&=incr-1;huff+=incr}else{huff=0}sym++;if(--count[len]===0){if(len===max){break}len=lens[lens_index+work[sym]]}if(len>root&&(huff&mask)!==low){if(drop===0){drop=root}next+=min;curr=len-drop;left=1<<curr;while(curr+drop<max){left-=count[curr+drop];if(left<=0){break}curr++;left<<=1}used+=1<<curr;if(type===LENS&&used>ENOUGH_LENS||type===DISTS&&used>ENOUGH_DISTS){return 1}low=huff&mask;table[low]=root<<24|curr<<16|next-table_index|0}}if(huff!==0){table[next+huff]=len-drop<<24|64<<16|0}opts.bits=root;return 0}},{"../utils/common":27}],37:[function(_dereq_,module,exports){"use strict";module.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],38:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("../utils/common");var Z_FIXED=4;var Z_BINARY=0;var Z_TEXT=1;var Z_UNKNOWN=2;function zero(buf){var len=buf.length;while(--len>=0){buf[len]=0}}var STORED_BLOCK=0;var STATIC_TREES=1;var DYN_TREES=2;var MIN_MATCH=3;var MAX_MATCH=258;var LENGTH_CODES=29;var LITERALS=256;var L_CODES=LITERALS+1+LENGTH_CODES;var D_CODES=30;var BL_CODES=19;var HEAP_SIZE=2*L_CODES+1;var MAX_BITS=15;var Buf_size=16;var MAX_BL_BITS=7;var END_BLOCK=256;var REP_3_6=16;var REPZ_3_10=17;var REPZ_11_138=18;var extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0];var extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];var extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7];var bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];var DIST_CODE_LEN=512;var static_ltree=new Array((L_CODES+2)*2);zero(static_ltree);var static_dtree=new Array(D_CODES*2);zero(static_dtree);var _dist_code=new Array(DIST_CODE_LEN);zero(_dist_code);var _length_code=new Array(MAX_MATCH-MIN_MATCH+1);zero(_length_code);var base_length=new Array(LENGTH_CODES);zero(base_length);var base_dist=new Array(D_CODES);zero(base_dist);var StaticTreeDesc=function(static_tree,extra_bits,extra_base,elems,max_length){this.static_tree=static_tree;this.extra_bits=extra_bits;this.extra_base=extra_base;this.elems=elems;this.max_length=max_length;this.has_stree=static_tree&&static_tree.length};var static_l_desc;var static_d_desc;var static_bl_desc;var TreeDesc=function(dyn_tree,stat_desc){this.dyn_tree=dyn_tree;this.max_code=0;this.stat_desc=stat_desc};function d_code(dist){return dist<256?_dist_code[dist]:_dist_code[256+(dist>>>7)]}function put_short(s,w){s.pending_buf[s.pending++]=w&255;s.pending_buf[s.pending++]=w>>>8&255}function send_bits(s,value,length){if(s.bi_valid>Buf_size-length){s.bi_buf|=value<<s.bi_valid&65535;put_short(s,s.bi_buf);s.bi_buf=value>>Buf_size-s.bi_valid;s.bi_valid+=length-Buf_size}else{s.bi_buf|=value<<s.bi_valid&65535;s.bi_valid+=length}}function send_code(s,c,tree){send_bits(s,tree[c*2],tree[c*2+1])}function bi_reverse(code,len){var res=0;do{res|=code&1;code>>>=1;res<<=1}while(--len>0);return res>>>1}function bi_flush(s){if(s.bi_valid===16){put_short(s,s.bi_buf);s.bi_buf=0;s.bi_valid=0}else if(s.bi_valid>=8){s.pending_buf[s.pending++]=s.bi_buf&255;s.bi_buf>>=8;s.bi_valid-=8}}function gen_bitlen(s,desc){var tree=desc.dyn_tree;var max_code=desc.max_code;var stree=desc.stat_desc.static_tree;var has_stree=desc.stat_desc.has_stree;var extra=desc.stat_desc.extra_bits;var base=desc.stat_desc.extra_base;var max_length=desc.stat_desc.max_length;var h;var n,m;var bits;var xbits;var f;var overflow=0;for(bits=0;bits<=MAX_BITS;bits++){s.bl_count[bits]=0}tree[s.heap[s.heap_max]*2+1]=0;for(h=s.heap_max+1;h<HEAP_SIZE;h++){n=s.heap[h];bits=tree[tree[n*2+1]*2+1]+1;if(bits>max_length){bits=max_length;overflow++}tree[n*2+1]=bits;if(n>max_code){continue}s.bl_count[bits]++;xbits=0;if(n>=base){xbits=extra[n-base]}f=tree[n*2];s.opt_len+=f*(bits+xbits);if(has_stree){s.static_len+=f*(stree[n*2+1]+xbits)}}if(overflow===0){return}do{bits=max_length-1;while(s.bl_count[bits]===0){bits--}s.bl_count[bits]--;s.bl_count[bits+1]+=2;s.bl_count[max_length]--;overflow-=2}while(overflow>0);for(bits=max_length;bits!==0;bits--){n=s.bl_count[bits];while(n!==0){m=s.heap[--h];if(m>max_code){continue}if(tree[m*2+1]!==bits){s.opt_len+=(bits-tree[m*2+1])*tree[m*2];tree[m*2+1]=bits}n--}}}function gen_codes(tree,max_code,bl_count){var next_code=new Array(MAX_BITS+1);var code=0;var bits;var n;for(bits=1;bits<=MAX_BITS;bits++){next_code[bits]=code=code+bl_count[bits-1]<<1}for(n=0;n<=max_code;n++){var len=tree[n*2+1];if(len===0){continue}tree[n*2]=bi_reverse(next_code[len]++,len)}}function tr_static_init(){var n;var bits;var length;var code;var dist;var bl_count=new Array(MAX_BITS+1);length=0;for(code=0;code<LENGTH_CODES-1;code++){base_length[code]=length;for(n=0;n<1<<extra_lbits[code];n++){_length_code[length++]=code}}_length_code[length-1]=code;dist=0;for(code=0;code<16;code++){base_dist[code]=dist;for(n=0;n<1<<extra_dbits[code];n++){_dist_code[dist++]=code}}dist>>=7;for(;code<D_CODES;code++){base_dist[code]=dist<<7;for(n=0;n<1<<extra_dbits[code]-7;n++){_dist_code[256+dist++]=code}}for(bits=0;bits<=MAX_BITS;bits++){bl_count[bits]=0}n=0;while(n<=143){static_ltree[n*2+1]=8;n++;bl_count[8]++}while(n<=255){static_ltree[n*2+1]=9;n++;bl_count[9]++}while(n<=279){static_ltree[n*2+1]=7;n++;bl_count[7]++}while(n<=287){static_ltree[n*2+1]=8;n++;bl_count[8]++}gen_codes(static_ltree,L_CODES+1,bl_count);for(n=0;n<D_CODES;n++){static_dtree[n*2+1]=5;static_dtree[n*2]=bi_reverse(n,5)}static_l_desc=new StaticTreeDesc(static_ltree,extra_lbits,LITERALS+1,L_CODES,MAX_BITS);static_d_desc=new StaticTreeDesc(static_dtree,extra_dbits,0,D_CODES,MAX_BITS);static_bl_desc=new StaticTreeDesc(new Array(0),extra_blbits,0,BL_CODES,MAX_BL_BITS)}function init_block(s){var n;for(n=0;n<L_CODES;n++){s.dyn_ltree[n*2]=0}for(n=0;n<D_CODES;n++){s.dyn_dtree[n*2]=0}for(n=0;n<BL_CODES;n++){s.bl_tree[n*2]=0}s.dyn_ltree[END_BLOCK*2]=1;s.opt_len=s.static_len=0;s.last_lit=s.matches=0}function bi_windup(s){if(s.bi_valid>8){put_short(s,s.bi_buf)}else if(s.bi_valid>0){s.pending_buf[s.pending++]=s.bi_buf}s.bi_buf=0;s.bi_valid=0}function copy_block(s,buf,len,header){bi_windup(s);if(header){put_short(s,len);put_short(s,~len)}utils.arraySet(s.pending_buf,s.window,buf,len,s.pending);s.pending+=len}function smaller(tree,n,m,depth){var _n2=n*2;var _m2=m*2;return tree[_n2]<tree[_m2]||tree[_n2]===tree[_m2]&&depth[n]<=depth[m]}function pqdownheap(s,tree,k){var v=s.heap[k];var j=k<<1;while(j<=s.heap_len){if(j<s.heap_len&&smaller(tree,s.heap[j+1],s.heap[j],s.depth)){j++}if(smaller(tree,v,s.heap[j],s.depth)){break}s.heap[k]=s.heap[j];k=j;j<<=1}s.heap[k]=v}function compress_block(s,ltree,dtree){var dist;var lc;var lx=0;var code;var extra;if(s.last_lit!==0){do{dist=s.pending_buf[s.d_buf+lx*2]<<8|s.pending_buf[s.d_buf+lx*2+1];lc=s.pending_buf[s.l_buf+lx];lx++;if(dist===0){send_code(s,lc,ltree)}else{code=_length_code[lc];send_code(s,code+LITERALS+1,ltree);extra=extra_lbits[code];if(extra!==0){lc-=base_length[code];send_bits(s,lc,extra)}dist--;code=d_code(dist);send_code(s,code,dtree);extra=extra_dbits[code];if(extra!==0){dist-=base_dist[code];send_bits(s,dist,extra)}}}while(lx<s.last_lit)}send_code(s,END_BLOCK,ltree)}function build_tree(s,desc){var tree=desc.dyn_tree;var stree=desc.stat_desc.static_tree;var has_stree=desc.stat_desc.has_stree;var elems=desc.stat_desc.elems;var n,m;var max_code=-1;var node;s.heap_len=0;s.heap_max=HEAP_SIZE;for(n=0;n<elems;n++){if(tree[n*2]!==0){s.heap[++s.heap_len]=max_code=n;s.depth[n]=0}else{tree[n*2+1]=0}}while(s.heap_len<2){node=s.heap[++s.heap_len]=max_code<2?++max_code:0;tree[node*2]=1;s.depth[node]=0;s.opt_len--;if(has_stree){s.static_len-=stree[node*2+1]}}desc.max_code=max_code;for(n=s.heap_len>>1;n>=1;n--){pqdownheap(s,tree,n)}node=elems;do{n=s.heap[1];s.heap[1]=s.heap[s.heap_len--];pqdownheap(s,tree,1);m=s.heap[1];s.heap[--s.heap_max]=n;s.heap[--s.heap_max]=m;tree[node*2]=tree[n*2]+tree[m*2];s.depth[node]=(s.depth[n]>=s.depth[m]?s.depth[n]:s.depth[m])+1;tree[n*2+1]=tree[m*2+1]=node;s.heap[1]=node++;pqdownheap(s,tree,1)}while(s.heap_len>=2);s.heap[--s.heap_max]=s.heap[1];gen_bitlen(s,desc);gen_codes(tree,max_code,s.bl_count)}function scan_tree(s,tree,max_code){var n;var prevlen=-1;var curlen;var nextlen=tree[0*2+1];var count=0;var max_count=7;var min_count=4;if(nextlen===0){max_count=138;min_count=3}tree[(max_code+1)*2+1]=65535;for(n=0;n<=max_code;n++){curlen=nextlen;nextlen=tree[(n+1)*2+1];if(++count<max_count&&curlen===nextlen){continue}else if(count<min_count){s.bl_tree[curlen*2]+=count}else if(curlen!==0){if(curlen!==prevlen){s.bl_tree[curlen*2]++}s.bl_tree[REP_3_6*2]++}else if(count<=10){s.bl_tree[REPZ_3_10*2]++}else{s.bl_tree[REPZ_11_138*2]++}count=0;prevlen=curlen;if(nextlen===0){max_count=138;min_count=3}else if(curlen===nextlen){max_count=6;min_count=3}else{max_count=7;min_count=4}}}function send_tree(s,tree,max_code){var n;var prevlen=-1;var curlen;var nextlen=tree[0*2+1];var count=0;var max_count=7;var min_count=4;if(nextlen===0){max_count=138;min_count=3}for(n=0;n<=max_code;n++){curlen=nextlen;nextlen=tree[(n+1)*2+1];if(++count<max_count&&curlen===nextlen){continue}else if(count<min_count){do{send_code(s,curlen,s.bl_tree)}while(--count!==0)}else if(curlen!==0){if(curlen!==prevlen){send_code(s,curlen,s.bl_tree);count--}send_code(s,REP_3_6,s.bl_tree);send_bits(s,count-3,2)}else if(count<=10){send_code(s,REPZ_3_10,s.bl_tree);send_bits(s,count-3,3)}else{send_code(s,REPZ_11_138,s.bl_tree);send_bits(s,count-11,7)}count=0;prevlen=curlen;if(nextlen===0){max_count=138;min_count=3}else if(curlen===nextlen){max_count=6;min_count=3}else{max_count=7;min_count=4}}}function build_bl_tree(s){var max_blindex;scan_tree(s,s.dyn_ltree,s.l_desc.max_code);scan_tree(s,s.dyn_dtree,s.d_desc.max_code);build_tree(s,s.bl_desc);for(max_blindex=BL_CODES-1;max_blindex>=3;max_blindex--){if(s.bl_tree[bl_order[max_blindex]*2+1]!==0){break}}s.opt_len+=3*(max_blindex+1)+5+5+4;return max_blindex}function send_all_trees(s,lcodes,dcodes,blcodes){var rank;send_bits(s,lcodes-257,5);send_bits(s,dcodes-1,5);send_bits(s,blcodes-4,4);for(rank=0;rank<blcodes;rank++){send_bits(s,s.bl_tree[bl_order[rank]*2+1],3)}send_tree(s,s.dyn_ltree,lcodes-1);send_tree(s,s.dyn_dtree,dcodes-1)}function detect_data_type(s){var black_mask=4093624447;var n;for(n=0;n<=31;n++,black_mask>>>=1){if(black_mask&1&&s.dyn_ltree[n*2]!==0){return Z_BINARY}}if(s.dyn_ltree[9*2]!==0||s.dyn_ltree[10*2]!==0||s.dyn_ltree[13*2]!==0){return Z_TEXT}for(n=32;n<LITERALS;n++){if(s.dyn_ltree[n*2]!==0){return Z_TEXT}}return Z_BINARY}var static_init_done=false;function _tr_init(s){if(!static_init_done){tr_static_init();static_init_done=true}s.l_desc=new TreeDesc(s.dyn_ltree,static_l_desc);s.d_desc=new TreeDesc(s.dyn_dtree,static_d_desc);s.bl_desc=new TreeDesc(s.bl_tree,static_bl_desc);s.bi_buf=0;s.bi_valid=0;init_block(s)}function _tr_stored_block(s,buf,stored_len,last){send_bits(s,(STORED_BLOCK<<1)+(last?1:0),3);copy_block(s,buf,stored_len,true)}function _tr_align(s){send_bits(s,STATIC_TREES<<1,3);send_code(s,END_BLOCK,static_ltree);bi_flush(s)}function _tr_flush_block(s,buf,stored_len,last){var opt_lenb,static_lenb;var max_blindex=0;if(s.level>0){if(s.strm.data_type===Z_UNKNOWN){s.strm.data_type=detect_data_type(s)}build_tree(s,s.l_desc);build_tree(s,s.d_desc);max_blindex=build_bl_tree(s);opt_lenb=s.opt_len+3+7>>>3;static_lenb=s.static_len+3+7>>>3;if(static_lenb<=opt_lenb){opt_lenb=static_lenb}}else{opt_lenb=static_lenb=stored_len+5}if(stored_len+4<=opt_lenb&&buf!==-1){_tr_stored_block(s,buf,stored_len,last)}else if(s.strategy===Z_FIXED||static_lenb===opt_lenb){send_bits(s,(STATIC_TREES<<1)+(last?1:0),3);compress_block(s,static_ltree,static_dtree)}else{send_bits(s,(DYN_TREES<<1)+(last?1:0),3);send_all_trees(s,s.l_desc.max_code+1,s.d_desc.max_code+1,max_blindex+1);compress_block(s,s.dyn_ltree,s.dyn_dtree)}init_block(s);if(last){bi_windup(s)}}function _tr_tally(s,dist,lc){s.pending_buf[s.d_buf+s.last_lit*2]=dist>>>8&255;s.pending_buf[s.d_buf+s.last_lit*2+1]=dist&255;s.pending_buf[s.l_buf+s.last_lit]=lc&255;s.last_lit++;if(dist===0){s.dyn_ltree[lc*2]++}else{s.matches++;dist--;s.dyn_ltree[(_length_code[lc]+LITERALS+1)*2]++;s.dyn_dtree[d_code(dist)*2]++}return s.last_lit===s.lit_bufsize-1}exports._tr_init=_tr_init;exports._tr_stored_block=_tr_stored_block;exports._tr_flush_block=_tr_flush_block;exports._tr_tally=_tr_tally;exports._tr_align=_tr_align},{"../utils/common":27}],39:[function(_dereq_,module,exports){"use strict";function ZStream(){this.input=null;this.next_in=0;this.avail_in=0;this.total_in=0;this.output=null;this.next_out=0;this.avail_out=0;this.total_out=0;this.msg="";this.state=null;this.data_type=2;this.adler=0}module.exports=ZStream},{}]},{},[9])(9)});var XLSX={};(function make_xlsx(XLSX){XLSX.version="0.8.20";var current_codepage=1200,current_cptable;if(typeof module!=="undefined"&&typeof require!=="undefined"){if(typeof cptable==="undefined")cptable=require("./dist/cpexcel");current_cptable=cptable[current_codepage]}function reset_cp(){set_cp(1200)}var set_cp=function(cp){current_codepage=cp};function char_codes(data){var o=[];for(var i=0,len=data.length;i<len;++i)o[i]=data.charCodeAt(i);return o}var debom_xml=function(data){return data};var _getchar=function _gc1(x){return String.fromCharCode(x)};if(typeof cptable!=="undefined"){set_cp=function(cp){current_codepage=cp;current_cptable=cptable[cp]};debom_xml=function(data){if(data.charCodeAt(0)===255&&data.charCodeAt(1)===254){return cptable.utils.decode(1200,char_codes(data.substr(2)))}return data};_getchar=function _gc2(x){if(current_codepage===1200)return String.fromCharCode(x);return cptable.utils.decode(current_codepage,[x&255,x>>8])[0]}}var Base64=function make_b64(){var map="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";return{encode:function(input,utf8){var o="";var c1,c2,c3,e1,e2,e3,e4;for(var i=0;i<input.length;){c1=input.charCodeAt(i++);c2=input.charCodeAt(i++);c3=input.charCodeAt(i++);e1=c1>>2;e2=(c1&3)<<4|c2>>4;e3=(c2&15)<<2|c3>>6;e4=c3&63;if(isNaN(c2)){e3=e4=64}else if(isNaN(c3)){e4=64}o+=map.charAt(e1)+map.charAt(e2)+map.charAt(e3)+map.charAt(e4)}return o},decode:function b64_decode(input,utf8){var o="";var c1,c2,c3;var e1,e2,e3,e4;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var i=0;i<input.length;){e1=map.indexOf(input.charAt(i++));e2=map.indexOf(input.charAt(i++));e3=map.indexOf(input.charAt(i++));e4=map.indexOf(input.charAt(i++));c1=e1<<2|e2>>4;c2=(e2&15)<<4|e3>>2;c3=(e3&3)<<6|e4;o+=String.fromCharCode(c1);if(e3!=64){o+=String.fromCharCode(c2)}if(e4!=64){o+=String.fromCharCode(c3)}}return o}}}();var has_buf=typeof Buffer!=="undefined";function new_raw_buf(len){return new(has_buf?Buffer:Array)(len)}function s2a(s){if(has_buf)return new Buffer(s,"binary");return s.split("").map(function(x){return x.charCodeAt(0)&255})}var bconcat=function(bufs){return[].concat.apply([],bufs)};var chr0=/\u0000/g,chr1=/[\u0001-\u0006]/;var SSF={};var make_ssf=function make_ssf(SSF){SSF.version="0.8.1";function _strrev(x){var o="",i=x.length-1;while(i>=0)o+=x.charAt(i--);return o}function fill(c,l){var o="";while(o.length<l)o+=c;return o}function pad0(v,d){var t=""+v;return t.length>=d?t:fill("0",d-t.length)+t}function pad_(v,d){var t=""+v;return t.length>=d?t:fill(" ",d-t.length)+t}function rpad_(v,d){var t=""+v;return t.length>=d?t:t+fill(" ",d-t.length)}function pad0r1(v,d){var t=""+Math.round(v);return t.length>=d?t:fill("0",d-t.length)+t}function pad0r2(v,d){var t=""+v;return t.length>=d?t:fill("0",d-t.length)+t}var p2_32=Math.pow(2,32);function pad0r(v,d){if(v>p2_32||v<-p2_32)return pad0r1(v,d);var i=Math.round(v);return pad0r2(i,d)}function isgeneral(s,i){return s.length>=7+i&&(s.charCodeAt(i)|32)===103&&(s.charCodeAt(i+1)|32)===101&&(s.charCodeAt(i+2)|32)===110&&(s.charCodeAt(i+3)|32)===101&&(s.charCodeAt(i+4)|32)===114&&(s.charCodeAt(i+5)|32)===97&&(s.charCodeAt(i+6)|32)===108}var opts_fmt=[["date1904",0],["output",""],["WTF",false]];function fixopts(o){for(var y=0;y!=opts_fmt.length;++y)if(o[opts_fmt[y][0]]===undefined)o[opts_fmt[y][0]]=opts_fmt[y][1]}SSF.opts=opts_fmt;var table_fmt={0:"General",1:"0",2:"0.00",3:"#,##0",4:"#,##0.00",9:"0%",10:"0.00%",11:"0.00E+00",12:"# ?/?",13:"# ??/??",14:"m/d/yy",15:"d-mmm-yy",16:"d-mmm",17:"mmm-yy",18:"h:mm AM/PM",19:"h:mm:ss AM/PM",20:"h:mm",21:"h:mm:ss",22:"m/d/yy h:mm",37:"#,##0 ;(#,##0)",38:"#,##0 ;[Red](#,##0)",39:"#,##0.00;(#,##0.00)",40:"#,##0.00;[Red](#,##0.00)",45:"mm:ss",46:"[h]:mm:ss",47:"mmss.0",48:"##0.0E+0",49:"@",56:'"上午/下午 "hh"時"mm"分"ss"秒 "',65535:"General"};var days=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]];var months=[["J","Jan","January"],["F","Feb","February"],["M","Mar","March"],["A","Apr","April"],["M","May","May"],["J","Jun","June"],["J","Jul","July"],["A","Aug","August"],["S","Sep","September"],["O","Oct","October"],["N","Nov","November"],["D","Dec","December"]];function frac(x,D,mixed){var sgn=x<0?-1:1;var B=x*sgn;var P_2=0,P_1=1,P=0;var Q_2=1,Q_1=0,Q=0;var A=Math.floor(B);while(Q_1<D){A=Math.floor(B);P=A*P_1+P_2;Q=A*Q_1+Q_2;if(B-A<5e-10)break;B=1/(B-A);P_2=P_1;P_1=P;Q_2=Q_1;Q_1=Q}if(Q>D){Q=Q_1;P=P_1}if(Q>D){Q=Q_2;P=P_2}if(!mixed)return[0,sgn*P,Q];if(Q===0)throw"Unexpected state: "+P+" "+P_1+" "+P_2+" "+Q+" "+Q_1+" "+Q_2;var q=Math.floor(sgn*P/Q);return[q,sgn*P-q*Q,Q]}function general_fmt_int(v,opts){return""+v}SSF._general_int=general_fmt_int;var general_fmt_num=function make_general_fmt_num(){var gnr1=/\.(\d*[1-9])0+$/,gnr2=/\.0*$/,gnr4=/\.(\d*[1-9])0+/,gnr5=/\.0*[Ee]/,gnr6=/(E[+-])(\d)$/;function gfn2(v){var w=v<0?12:11;var o=gfn5(v.toFixed(12));if(o.length<=w)return o;o=v.toPrecision(10);if(o.length<=w)return o;return v.toExponential(5)}function gfn3(v){var o=v.toFixed(11).replace(gnr1,".$1");if(o.length>(v<0?12:11))o=v.toPrecision(6);return o}function gfn4(o){for(var i=0;i!=o.length;++i)if((o.charCodeAt(i)|32)===101)return o.replace(gnr4,".$1").replace(gnr5,"E").replace("e","E").replace(gnr6,"$10$2");return o}function gfn5(o){return o.indexOf(".")>-1?o.replace(gnr2,"").replace(gnr1,".$1"):o}return function general_fmt_num(v,opts){var V=Math.floor(Math.log(Math.abs(v))*Math.LOG10E),o;if(V>=-4&&V<=-1)o=v.toPrecision(10+V);else if(Math.abs(V)<=9)o=gfn2(v);else if(V===10)o=v.toFixed(10).substr(0,12);else o=gfn3(v);return gfn5(gfn4(o))}}();SSF._general_num=general_fmt_num;function general_fmt(v,opts){switch(typeof v){case"string":return v;case"boolean":return v?"TRUE":"FALSE";case"number":return(v|0)===v?general_fmt_int(v,opts):general_fmt_num(v,opts)}throw new Error("unsupported value in General format: "+v)}SSF._general=general_fmt;function fix_hijri(date,o){return 0}function parse_date_code(v,opts,b2){if(v>2958465||v<0)return null;var date=v|0,time=Math.floor(86400*(v-date)),dow=0;var dout=[];var out={D:date,T:time,u:86400*(v-date)-time,y:0,m:0,d:0,H:0,M:0,S:0,q:0};if(Math.abs(out.u)<1e-6)out.u=0;fixopts(opts!=null?opts:opts=[]);if(opts.date1904)date+=1462;if(out.u>.999){out.u=0;if(++time==86400){time=0;++date}}if(date===60){dout=b2?[1317,10,29]:[1900,2,29];dow=3}else if(date===0){dout=b2?[1317,8,29]:[1900,1,0];dow=6}else{if(date>60)--date;var d=new Date(1900,0,1);d.setDate(d.getDate()+date-1);dout=[d.getFullYear(),d.getMonth()+1,d.getDate()];dow=d.getDay();if(date<60)dow=(dow+6)%7;if(b2)dow=fix_hijri(d,dout)}out.y=dout[0];out.m=dout[1];out.d=dout[2];out.S=time%60;time=Math.floor(time/60);out.M=time%60;time=Math.floor(time/60);out.H=time;out.q=dow;return out}SSF.parse_date_code=parse_date_code;function write_date(type,fmt,val,ss0){var o="",ss=0,tt=0,y=val.y,out,outl=0;switch(type){case 98:y=val.y+543;case 121:switch(fmt.length){case 1:case 2:out=y%100;outl=2;break;default:out=y%1e4;outl=4;break}break;case 109:switch(fmt.length){case 1:case 2:out=val.m;outl=fmt.length;break;case 3:return months[val.m-1][1];case 5:return months[val.m-1][0];default:return months[val.m-1][2]}break;case 100:switch(fmt.length){case 1:case 2:out=val.d;outl=fmt.length;break;case 3:return days[val.q][0];default:return days[val.q][1]}break;case 104:switch(fmt.length){case 1:case 2:out=1+(val.H+11)%12;outl=fmt.length;break;default:throw"bad hour format: "+fmt}break;case 72:switch(fmt.length){case 1:case 2:out=val.H;outl=fmt.length;break;default:throw"bad hour format: "+fmt}break;case 77:switch(fmt.length){case 1:case 2:out=val.M;outl=fmt.length;break;default:throw"bad minute format: "+fmt}break;case 115:if(val.u===0)switch(fmt){case"s":case"ss":return pad0(val.S,fmt.length);case".0":case".00":case".000":}switch(fmt){case"s":case"ss":case".0":case".00":case".000":if(ss0>=2)tt=ss0===3?1e3:100;else tt=ss0===1?10:1;ss=Math.round(tt*(val.S+val.u));if(ss>=60*tt)ss=0;if(fmt==="s")return ss===0?"0":""+ss/tt;o=pad0(ss,2+ss0);if(fmt==="ss")return o.substr(0,2);return"."+o.substr(2,fmt.length-1);default:throw"bad second format: "+fmt}case 90:switch(fmt){case"[h]":case"[hh]":out=val.D*24+val.H;break;case"[m]":case"[mm]":out=(val.D*24+val.H)*60+val.M;break;case"[s]":case"[ss]":out=((val.D*24+val.H)*60+val.M)*60+Math.round(val.S+val.u);break;default:throw"bad abstime format: "+fmt}outl=fmt.length===3?1:2;break;case 101:out=y;outl=1}if(outl>0)return pad0(out,outl);else return""}function commaify(s){if(s.length<=3)return s;var j=s.length%3,o=s.substr(0,j);for(;j!=s.length;j+=3)o+=(o.length>0?",":"")+s.substr(j,3);return o}var write_num=function make_write_num(){var pct1=/%/g;function write_num_pct(type,fmt,val){var sfmt=fmt.replace(pct1,""),mul=fmt.length-sfmt.length;return write_num(type,sfmt,val*Math.pow(10,2*mul))+fill("%",mul)}function write_num_cm(type,fmt,val){var idx=fmt.length-1;while(fmt.charCodeAt(idx-1)===44)--idx;return write_num(type,fmt.substr(0,idx),val/Math.pow(10,3*(fmt.length-idx)))}function write_num_exp(fmt,val){var o;var idx=fmt.indexOf("E")-fmt.indexOf(".")-1;if(fmt.match(/^#+0.0E\+0$/)){var period=fmt.indexOf(".");if(period===-1)period=fmt.indexOf("E");var ee=Math.floor(Math.log(Math.abs(val))*Math.LOG10E)%period;if(ee<0)ee+=period;o=(val/Math.pow(10,ee)).toPrecision(idx+1+(period+ee)%period);if(o.indexOf("e")===-1){var fakee=Math.floor(Math.log(Math.abs(val))*Math.LOG10E);if(o.indexOf(".")===-1)o=o[0]+"."+o.substr(1)+"E+"+(fakee-o.length+ee);else o+="E+"+(fakee-ee);while(o.substr(0,2)==="0."){o=o[0]+o.substr(2,period)+"."+o.substr(2+period);o=o.replace(/^0+([1-9])/,"$1").replace(/^0+\./,"0.")}o=o.replace(/\+-/,"-")}o=o.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,function($$,$1,$2,$3){return $1+$2+$3.substr(0,(period+ee)%period)+"."+$3.substr(ee)+"E"})}else o=val.toExponential(idx);if(fmt.match(/E\+00$/)&&o.match(/e[+-]\d$/))o=o.substr(0,o.length-1)+"0"+o[o.length-1];if(fmt.match(/E\-/)&&o.match(/e\+/))o=o.replace(/e\+/,"e");return o.replace("e","E")}var frac1=/# (\?+)( ?)\/( ?)(\d+)/;function write_num_f1(r,aval,sign){var den=parseInt(r[4]),rr=Math.round(aval*den),base=Math.floor(rr/den);var myn=rr-base*den,myd=den;return sign+(base===0?"":""+base)+" "+(myn===0?fill(" ",r[1].length+1+r[4].length):pad_(myn,r[1].length)+r[2]+"/"+r[3]+pad0(myd,r[4].length))}function write_num_f2(r,aval,sign){return sign+(aval===0?"":""+aval)+fill(" ",r[1].length+2+r[4].length)}var dec1=/^#*0*\.(0+)/;var closeparen=/\).*[0#]/;var phone=/\(###\) ###\\?-####/;function hashq(str){var o="",cc;for(var i=0;i!=str.length;++i)switch(cc=str.charCodeAt(i)){case 35:break;case 63:o+=" ";break;case 48:o+="0";break;default:o+=String.fromCharCode(cc)}return o}function rnd(val,d){var dd=Math.pow(10,d);return""+Math.round(val*dd)/dd}function dec(val,d){return Math.round((val-Math.floor(val))*Math.pow(10,d))}function flr(val){if(val<2147483647&&val>-2147483648)return""+(val>=0?val|0:val-1|0);return""+Math.floor(val)}function write_num_flt(type,fmt,val){if(type.charCodeAt(0)===40&&!fmt.match(closeparen)){var ffmt=fmt.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(val>=0)return write_num_flt("n",ffmt,val);return"("+write_num_flt("n",ffmt,-val)+")"}if(fmt.charCodeAt(fmt.length-1)===44)return write_num_cm(type,fmt,val);if(fmt.indexOf("%")!==-1)return write_num_pct(type,fmt,val);if(fmt.indexOf("E")!==-1)return write_num_exp(fmt,val);if(fmt.charCodeAt(0)===36)return"$"+write_num_flt(type,fmt.substr(fmt[1]==" "?2:1),val);var o,oo;var r,ri,ff,aval=Math.abs(val),sign=val<0?"-":"";if(fmt.match(/^00+$/))return sign+pad0r(aval,fmt.length);if(fmt.match(/^[#?]+$/)){o=pad0r(val,0);if(o==="0")o="";return o.length>fmt.length?o:hashq(fmt.substr(0,fmt.length-o.length))+o}if((r=fmt.match(frac1))!==null)return write_num_f1(r,aval,sign);if(fmt.match(/^#+0+$/)!==null)return sign+pad0r(aval,fmt.length-fmt.indexOf("0"));if((r=fmt.match(dec1))!==null){o=rnd(val,r[1].length).replace(/^([^\.]+)$/,"$1."+r[1]).replace(/\.$/,"."+r[1]).replace(/\.(\d*)$/,function($$,$1){return"."+$1+fill("0",r[1].length-$1.length)});return fmt.indexOf("0.")!==-1?o:o.replace(/^0\./,".")}fmt=fmt.replace(/^#+([0.])/,"$1");if((r=fmt.match(/^(0*)\.(#*)$/))!==null){return sign+rnd(aval,r[2].length).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,r[1].length?"0.":".")}if((r=fmt.match(/^#,##0(\.?)$/))!==null)return sign+commaify(pad0r(aval,0));if((r=fmt.match(/^#,##0\.([#0]*0)$/))!==null){return val<0?"-"+write_num_flt(type,fmt,-val):commaify(""+Math.floor(val))+"."+pad0(dec(val,r[1].length),r[1].length)}if((r=fmt.match(/^#,#*,#0/))!==null)return write_num_flt(type,fmt.replace(/^#,#*,/,""),val);if((r=fmt.match(/^([0#]+)(\\?-([0#]+))+$/))!==null){o=_strrev(write_num_flt(type,fmt.replace(/[\\-]/g,""),val));ri=0;return _strrev(_strrev(fmt.replace(/\\/g,"")).replace(/[0#]/g,function(x){return ri<o.length?o[ri++]:x==="0"?"0":""}))}if(fmt.match(phone)!==null){o=write_num_flt(type,"##########",val);return"("+o.substr(0,3)+") "+o.substr(3,3)+"-"+o.substr(6)}var oa="";if((r=fmt.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))!==null){ri=Math.min(r[4].length,7);ff=frac(aval,Math.pow(10,ri)-1,false);o=""+sign;oa=write_num("n",r[1],ff[1]);if(oa[oa.length-1]==" ")oa=oa.substr(0,oa.length-1)+"0";o+=oa+r[2]+"/"+r[3];oa=rpad_(ff[2],ri);if(oa.length<r[4].length)oa=hashq(r[4].substr(r[4].length-oa.length))+oa;o+=oa;return o}if((r=fmt.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))!==null){ri=Math.min(Math.max(r[1].length,r[4].length),7);ff=frac(aval,Math.pow(10,ri)-1,true);return sign+(ff[0]||(ff[1]?"":"0"))+" "+(ff[1]?pad_(ff[1],ri)+r[2]+"/"+r[3]+rpad_(ff[2],ri):fill(" ",2*ri+1+r[2].length+r[3].length))}if((r=fmt.match(/^[#0?]+$/))!==null){o=pad0r(val,0);if(fmt.length<=o.length)return o;return hashq(fmt.substr(0,fmt.length-o.length))+o}if((r=fmt.match(/^([#0?]+)\.([#0]+)$/))!==null){o=""+val.toFixed(Math.min(r[2].length,10)).replace(/([^0])0+$/,"$1");ri=o.indexOf(".");var lres=fmt.indexOf(".")-ri,rres=fmt.length-o.length-lres;return hashq(fmt.substr(0,lres)+o+fmt.substr(fmt.length-rres))}if((r=fmt.match(/^00,000\.([#0]*0)$/))!==null){ri=dec(val,r[1].length);return val<0?"-"+write_num_flt(type,fmt,-val):commaify(flr(val)).replace(/^\d,\d{3}$/,"0$&").replace(/^\d*$/,function($$){return"00,"+($$.length<3?pad0(0,3-$$.length):"")+$$})+"."+pad0(ri,r[1].length)}switch(fmt){case"#,###":var x=commaify(pad0r(aval,0));return x!=="0"?sign+x:"";default:}throw new Error("unsupported format |"+fmt+"|")}function write_num_cm2(type,fmt,val){var idx=fmt.length-1;while(fmt.charCodeAt(idx-1)===44)--idx;return write_num(type,fmt.substr(0,idx),val/Math.pow(10,3*(fmt.length-idx)))}function write_num_pct2(type,fmt,val){var sfmt=fmt.replace(pct1,""),mul=fmt.length-sfmt.length;return write_num(type,sfmt,val*Math.pow(10,2*mul))+fill("%",mul)}function write_num_exp2(fmt,val){var o;var idx=fmt.indexOf("E")-fmt.indexOf(".")-1;if(fmt.match(/^#+0.0E\+0$/)){var period=fmt.indexOf(".");if(period===-1)period=fmt.indexOf("E");var ee=Math.floor(Math.log(Math.abs(val))*Math.LOG10E)%period;if(ee<0)ee+=period;o=(val/Math.pow(10,ee)).toPrecision(idx+1+(period+ee)%period);if(!o.match(/[Ee]/)){var fakee=Math.floor(Math.log(Math.abs(val))*Math.LOG10E);if(o.indexOf(".")===-1)o=o[0]+"."+o.substr(1)+"E+"+(fakee-o.length+ee);else o+="E+"+(fakee-ee);o=o.replace(/\+-/,"-")}o=o.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,function($$,$1,$2,$3){return $1+$2+$3.substr(0,(period+ee)%period)+"."+$3.substr(ee)+"E"})}else o=val.toExponential(idx);if(fmt.match(/E\+00$/)&&o.match(/e[+-]\d$/))o=o.substr(0,o.length-1)+"0"+o[o.length-1];if(fmt.match(/E\-/)&&o.match(/e\+/))o=o.replace(/e\+/,"e");return o.replace("e","E")}function write_num_int(type,fmt,val){if(type.charCodeAt(0)===40&&!fmt.match(closeparen)){var ffmt=fmt.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(val>=0)return write_num_int("n",ffmt,val);return"("+write_num_int("n",ffmt,-val)+")"}if(fmt.charCodeAt(fmt.length-1)===44)return write_num_cm2(type,fmt,val);if(fmt.indexOf("%")!==-1)return write_num_pct2(type,fmt,val);if(fmt.indexOf("E")!==-1)return write_num_exp2(fmt,val);if(fmt.charCodeAt(0)===36)return"$"+write_num_int(type,fmt.substr(fmt[1]==" "?2:1),val);var o;var r,ri,ff,aval=Math.abs(val),sign=val<0?"-":"";if(fmt.match(/^00+$/))return sign+pad0(aval,fmt.length);if(fmt.match(/^[#?]+$/)){o=""+val;if(val===0)o="";return o.length>fmt.length?o:hashq(fmt.substr(0,fmt.length-o.length))+o}if((r=fmt.match(frac1))!==null)return write_num_f2(r,aval,sign);if(fmt.match(/^#+0+$/)!==null)return sign+pad0(aval,fmt.length-fmt.indexOf("0"));if((r=fmt.match(dec1))!==null){o=(""+val).replace(/^([^\.]+)$/,"$1."+r[1]).replace(/\.$/,"."+r[1]).replace(/\.(\d*)$/,function($$,$1){return"."+$1+fill("0",r[1].length-$1.length)});return fmt.indexOf("0.")!==-1?o:o.replace(/^0\./,".");
}fmt=fmt.replace(/^#+([0.])/,"$1");if((r=fmt.match(/^(0*)\.(#*)$/))!==null){return sign+(""+aval).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,r[1].length?"0.":".")}if((r=fmt.match(/^#,##0(\.?)$/))!==null)return sign+commaify(""+aval);if((r=fmt.match(/^#,##0\.([#0]*0)$/))!==null){return val<0?"-"+write_num_int(type,fmt,-val):commaify(""+val)+"."+fill("0",r[1].length)}if((r=fmt.match(/^#,#*,#0/))!==null)return write_num_int(type,fmt.replace(/^#,#*,/,""),val);if((r=fmt.match(/^([0#]+)(\\?-([0#]+))+$/))!==null){o=_strrev(write_num_int(type,fmt.replace(/[\\-]/g,""),val));ri=0;return _strrev(_strrev(fmt.replace(/\\/g,"")).replace(/[0#]/g,function(x){return ri<o.length?o[ri++]:x==="0"?"0":""}))}if(fmt.match(phone)!==null){o=write_num_int(type,"##########",val);return"("+o.substr(0,3)+") "+o.substr(3,3)+"-"+o.substr(6)}var oa="";if((r=fmt.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))!==null){ri=Math.min(r[4].length,7);ff=frac(aval,Math.pow(10,ri)-1,false);o=""+sign;oa=write_num("n",r[1],ff[1]);if(oa[oa.length-1]==" ")oa=oa.substr(0,oa.length-1)+"0";o+=oa+r[2]+"/"+r[3];oa=rpad_(ff[2],ri);if(oa.length<r[4].length)oa=hashq(r[4].substr(r[4].length-oa.length))+oa;o+=oa;return o}if((r=fmt.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))!==null){ri=Math.min(Math.max(r[1].length,r[4].length),7);ff=frac(aval,Math.pow(10,ri)-1,true);return sign+(ff[0]||(ff[1]?"":"0"))+" "+(ff[1]?pad_(ff[1],ri)+r[2]+"/"+r[3]+rpad_(ff[2],ri):fill(" ",2*ri+1+r[2].length+r[3].length))}if((r=fmt.match(/^[#0?]+$/))!==null){o=""+val;if(fmt.length<=o.length)return o;return hashq(fmt.substr(0,fmt.length-o.length))+o}if((r=fmt.match(/^([#0]+)\.([#0]+)$/))!==null){o=""+val.toFixed(Math.min(r[2].length,10)).replace(/([^0])0+$/,"$1");ri=o.indexOf(".");var lres=fmt.indexOf(".")-ri,rres=fmt.length-o.length-lres;return hashq(fmt.substr(0,lres)+o+fmt.substr(fmt.length-rres))}if((r=fmt.match(/^00,000\.([#0]*0)$/))!==null){return val<0?"-"+write_num_int(type,fmt,-val):commaify(""+val).replace(/^\d,\d{3}$/,"0$&").replace(/^\d*$/,function($$){return"00,"+($$.length<3?pad0(0,3-$$.length):"")+$$})+"."+pad0(0,r[1].length)}switch(fmt){case"#,###":var x=commaify(""+aval);return x!=="0"?sign+x:"";default:}throw new Error("unsupported format |"+fmt+"|")}return function write_num(type,fmt,val){return(val|0)===val?write_num_int(type,fmt,val):write_num_flt(type,fmt,val)}}();function split_fmt(fmt){var out=[];var in_str=false,cc;for(var i=0,j=0;i<fmt.length;++i)switch(cc=fmt.charCodeAt(i)){case 34:in_str=!in_str;break;case 95:case 42:case 92:++i;break;case 59:out[out.length]=fmt.substr(j,i-j);j=i+1}out[out.length]=fmt.substr(j);if(in_str===true)throw new Error("Format |"+fmt+"| unterminated string ");return out}SSF._split=split_fmt;var abstime=/\[[HhMmSs]*\]/;function eval_fmt(fmt,v,opts,flen){var out=[],o="",i=0,c="",lst="t",q,dt,j,cc;var hr="H";while(i<fmt.length){switch(c=fmt[i]){case"G":if(!isgeneral(fmt,i))throw new Error("unrecognized character "+c+" in "+fmt);out[out.length]={t:"G",v:"General"};i+=7;break;case'"':for(o="";(cc=fmt.charCodeAt(++i))!==34&&i<fmt.length;)o+=String.fromCharCode(cc);out[out.length]={t:"t",v:o};++i;break;case"\\":var w=fmt[++i],t=w==="("||w===")"?w:"t";out[out.length]={t:t,v:w};++i;break;case"_":out[out.length]={t:"t",v:" "};i+=2;break;case"@":out[out.length]={t:"T",v:v};++i;break;case"B":case"b":if(fmt[i+1]==="1"||fmt[i+1]==="2"){if(dt==null){dt=parse_date_code(v,opts,fmt[i+1]==="2");if(dt==null)return""}out[out.length]={t:"X",v:fmt.substr(i,2)};lst=c;i+=2;break}case"M":case"D":case"Y":case"H":case"S":case"E":c=c.toLowerCase();case"m":case"d":case"y":case"h":case"s":case"e":case"g":if(v<0)return"";if(dt==null){dt=parse_date_code(v,opts);if(dt==null)return""}o=c;while(++i<fmt.length&&fmt[i].toLowerCase()===c)o+=c;if(c==="m"&&lst.toLowerCase()==="h")c="M";if(c==="h")c=hr;out[out.length]={t:c,v:o};lst=c;break;case"A":q={t:c,v:"A"};if(dt==null)dt=parse_date_code(v,opts);if(fmt.substr(i,3)==="A/P"){if(dt!=null)q.v=dt.H>=12?"P":"A";q.t="T";hr="h";i+=3}else if(fmt.substr(i,5)==="AM/PM"){if(dt!=null)q.v=dt.H>=12?"PM":"AM";q.t="T";i+=5;hr="h"}else{q.t="t";++i}if(dt==null&&q.t==="T")return"";out[out.length]=q;lst=c;break;case"[":o=c;while(fmt[i++]!=="]"&&i<fmt.length)o+=fmt[i];if(o.substr(-1)!=="]")throw'unterminated "[" block: |'+o+"|";if(o.match(abstime)){if(dt==null){dt=parse_date_code(v,opts);if(dt==null)return""}out[out.length]={t:"Z",v:o.toLowerCase()}}else{o=""}break;case".":if(dt!=null){o=c;while((c=fmt[++i])==="0")o+=c;out[out.length]={t:"s",v:o};break}case"0":case"#":o=c;while("0#?.,E+-%".indexOf(c=fmt[++i])>-1||c=="\\"&&fmt[i+1]=="-"&&"0#".indexOf(fmt[i+2])>-1)o+=c;out[out.length]={t:"n",v:o};break;case"?":o=c;while(fmt[++i]===c)o+=c;q={t:c,v:o};out[out.length]=q;lst=c;break;case"*":++i;if(fmt[i]==" "||fmt[i]=="*")++i;break;case"(":case")":out[out.length]={t:flen===1?"t":c,v:c};++i;break;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":o=c;while("0123456789".indexOf(fmt[++i])>-1)o+=fmt[i];out[out.length]={t:"D",v:o};break;case" ":out[out.length]={t:c,v:c};++i;break;default:if(",$-+/():!^&'~{}<>=€acfijklopqrtuvwxz".indexOf(c)===-1)throw new Error("unrecognized character "+c+" in "+fmt);out[out.length]={t:"t",v:c};++i;break}}var bt=0,ss0=0,ssm;for(i=out.length-1,lst="t";i>=0;--i){switch(out[i].t){case"h":case"H":out[i].t=hr;lst="h";if(bt<1)bt=1;break;case"s":if(ssm=out[i].v.match(/\.0+$/))ss0=Math.max(ss0,ssm[0].length-1);if(bt<3)bt=3;case"d":case"y":case"M":case"e":lst=out[i].t;break;case"m":if(lst==="s"){out[i].t="M";if(bt<2)bt=2}break;case"X":if(out[i].v==="B2");break;case"Z":if(bt<1&&out[i].v.match(/[Hh]/))bt=1;if(bt<2&&out[i].v.match(/[Mm]/))bt=2;if(bt<3&&out[i].v.match(/[Ss]/))bt=3}}switch(bt){case 0:break;case 1:if(dt.u>=.5){dt.u=0;++dt.S}if(dt.S>=60){dt.S=0;++dt.M}if(dt.M>=60){dt.M=0;++dt.H}break;case 2:if(dt.u>=.5){dt.u=0;++dt.S}if(dt.S>=60){dt.S=0;++dt.M}break}var nstr="",jj;for(i=0;i<out.length;++i){switch(out[i].t){case"t":case"T":case" ":case"D":break;case"X":out[i]=undefined;break;case"d":case"m":case"y":case"h":case"H":case"M":case"s":case"e":case"b":case"Z":out[i].v=write_date(out[i].t.charCodeAt(0),out[i].v,dt,ss0);out[i].t="t";break;case"n":case"(":case"?":jj=i+1;while(out[jj]!=null&&((c=out[jj].t)==="?"||c==="D"||(c===" "||c==="t")&&out[jj+1]!=null&&(out[jj+1].t==="?"||out[jj+1].t==="t"&&out[jj+1].v==="/")||out[i].t==="("&&(c===" "||c==="n"||c===")")||c==="t"&&(out[jj].v==="/"||"$€".indexOf(out[jj].v)>-1||out[jj].v===" "&&out[jj+1]!=null&&out[jj+1].t=="?"))){out[i].v+=out[jj].v;out[jj]=undefined;++jj}nstr+=out[i].v;i=jj-1;break;case"G":out[i].t="t";out[i].v=general_fmt(v,opts);break}}var vv="",myv,ostr;if(nstr.length>0){myv=v<0&&nstr.charCodeAt(0)===45?-v:v;ostr=write_num(nstr.charCodeAt(0)===40?"(":"n",nstr,myv);jj=ostr.length-1;var decpt=out.length;for(i=0;i<out.length;++i)if(out[i]!=null&&out[i].v.indexOf(".")>-1){decpt=i;break}var lasti=out.length;if(decpt===out.length&&ostr.indexOf("E")===-1){for(i=out.length-1;i>=0;--i){if(out[i]==null||"n?(".indexOf(out[i].t)===-1)continue;if(jj>=out[i].v.length-1){jj-=out[i].v.length;out[i].v=ostr.substr(jj+1,out[i].v.length)}else if(jj<0)out[i].v="";else{out[i].v=ostr.substr(0,jj+1);jj=-1}out[i].t="t";lasti=i}if(jj>=0&&lasti<out.length)out[lasti].v=ostr.substr(0,jj+1)+out[lasti].v}else if(decpt!==out.length&&ostr.indexOf("E")===-1){jj=ostr.indexOf(".")-1;for(i=decpt;i>=0;--i){if(out[i]==null||"n?(".indexOf(out[i].t)===-1)continue;j=out[i].v.indexOf(".")>-1&&i===decpt?out[i].v.indexOf(".")-1:out[i].v.length-1;vv=out[i].v.substr(j+1);for(;j>=0;--j){if(jj>=0&&(out[i].v[j]==="0"||out[i].v[j]==="#"))vv=ostr[jj--]+vv}out[i].v=vv;out[i].t="t";lasti=i}if(jj>=0&&lasti<out.length)out[lasti].v=ostr.substr(0,jj+1)+out[lasti].v;jj=ostr.indexOf(".")+1;for(i=decpt;i<out.length;++i){if(out[i]==null||"n?(".indexOf(out[i].t)===-1&&i!==decpt)continue;j=out[i].v.indexOf(".")>-1&&i===decpt?out[i].v.indexOf(".")+1:0;vv=out[i].v.substr(0,j);for(;j<out[i].v.length;++j){if(jj<ostr.length)vv+=ostr[jj++]}out[i].v=vv;out[i].t="t";lasti=i}}}for(i=0;i<out.length;++i)if(out[i]!=null&&"n(?".indexOf(out[i].t)>-1){myv=flen>1&&v<0&&i>0&&out[i-1].v==="-"?-v:v;out[i].v=write_num(out[i].t,out[i].v,myv);out[i].t="t"}var retval="";for(i=0;i!==out.length;++i)if(out[i]!=null)retval+=out[i].v;return retval}SSF._eval=eval_fmt;var cfregex=/\[[=<>]/;var cfregex2=/\[([=<>]*)(-?\d+\.?\d*)\]/;function chkcond(v,rr){if(rr==null)return false;var thresh=parseFloat(rr[2]);switch(rr[1]){case"=":if(v==thresh)return true;break;case">":if(v>thresh)return true;break;case"<":if(v<thresh)return true;break;case"<>":if(v!=thresh)return true;break;case">=":if(v>=thresh)return true;break;case"<=":if(v<=thresh)return true;break}return false}function choose_fmt(f,v){var fmt=split_fmt(f);var l=fmt.length,lat=fmt[l-1].indexOf("@");if(l<4&&lat>-1)--l;if(fmt.length>4)throw"cannot find right format for |"+fmt+"|";if(typeof v!=="number")return[4,fmt.length===4||lat>-1?fmt[fmt.length-1]:"@"];switch(fmt.length){case 1:fmt=lat>-1?["General","General","General",fmt[0]]:[fmt[0],fmt[0],fmt[0],"@"];break;case 2:fmt=lat>-1?[fmt[0],fmt[0],fmt[0],fmt[1]]:[fmt[0],fmt[1],fmt[0],"@"];break;case 3:fmt=lat>-1?[fmt[0],fmt[1],fmt[0],fmt[2]]:[fmt[0],fmt[1],fmt[2],"@"];break;case 4:break}var ff=v>0?fmt[0]:v<0?fmt[1]:fmt[2];if(fmt[0].indexOf("[")===-1&&fmt[1].indexOf("[")===-1)return[l,ff];if(fmt[0].match(cfregex)!=null||fmt[1].match(cfregex)!=null){var m1=fmt[0].match(cfregex2);var m2=fmt[1].match(cfregex2);return chkcond(v,m1)?[l,fmt[0]]:chkcond(v,m2)?[l,fmt[1]]:[l,fmt[m1!=null&&m2!=null?2:1]]}return[l,ff]}function format(fmt,v,o){fixopts(o!=null?o:o=[]);var sfmt="";switch(typeof fmt){case"string":sfmt=fmt;break;case"number":sfmt=(o.table!=null?o.table:table_fmt)[fmt];break}if(isgeneral(sfmt,0))return general_fmt(v,o);var f=choose_fmt(sfmt,v);if(isgeneral(f[1]))return general_fmt(v,o);if(v===true)v="TRUE";else if(v===false)v="FALSE";else if(v===""||v==null)return"";return eval_fmt(f[1],v,o,f[0])}SSF._table=table_fmt;SSF.load=function load_entry(fmt,idx){table_fmt[idx]=fmt};SSF.format=format;SSF.get_table=function get_table(){return table_fmt};SSF.load_table=function load_table(tbl){for(var i=0;i!=392;++i)if(tbl[i]!==undefined)SSF.load(tbl[i],i)}};make_ssf(SSF);var XLMLFormatMap={"General Number":"General","General Date":SSF._table[22],"Long Date":"dddd, mmmm dd, yyyy","Medium Date":SSF._table[15],"Short Date":SSF._table[14],"Long Time":SSF._table[19],"Medium Time":SSF._table[18],"Short Time":SSF._table[20],Currency:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',Fixed:SSF._table[2],Standard:SSF._table[4],Percent:SSF._table[10],Scientific:SSF._table[11],"Yes/No":'"Yes";"Yes";"No";@',"True/False":'"True";"True";"False";@',"On/Off":'"Yes";"Yes";"No";@'};var DO_NOT_EXPORT_CFB=true;var CFB=function _CFB(){var exports={};exports.version="0.10.2";function parse(file){var mver=3;var ssz=512;var nmfs=0;var ndfs=0;var dir_start=0;var minifat_start=0;var difat_start=0;var fat_addrs=[];var blob=file.slice(0,512);prep_blob(blob,0);var mv=check_get_mver(blob);mver=mv[0];switch(mver){case 3:ssz=512;break;case 4:ssz=4096;break;default:throw"Major Version: Expected 3 or 4 saw "+mver}if(ssz!==512){blob=file.slice(0,ssz);prep_blob(blob,28)}var header=file.slice(0,ssz);check_shifts(blob,mver);var nds=blob.read_shift(4,"i");if(mver===3&&nds!==0)throw"# Directory Sectors: Expected 0 saw "+nds;blob.l+=4;dir_start=blob.read_shift(4,"i");blob.l+=4;blob.chk("00100000","Mini Stream Cutoff Size: ");minifat_start=blob.read_shift(4,"i");nmfs=blob.read_shift(4,"i");difat_start=blob.read_shift(4,"i");ndfs=blob.read_shift(4,"i");for(var q,j=0;j<109;++j){q=blob.read_shift(4,"i");if(q<0)break;fat_addrs[j]=q}var sectors=sectorify(file,ssz);sleuth_fat(difat_start,ndfs,sectors,ssz,fat_addrs);var sector_list=make_sector_list(sectors,dir_start,fat_addrs,ssz);sector_list[dir_start].name="!Directory";if(nmfs>0&&minifat_start!==ENDOFCHAIN)sector_list[minifat_start].name="!MiniFAT";sector_list[fat_addrs[0]].name="!FAT";sector_list.fat_addrs=fat_addrs;sector_list.ssz=ssz;var files={},Paths=[],FileIndex=[],FullPaths=[],FullPathDir={};read_directory(dir_start,sector_list,sectors,Paths,nmfs,files,FileIndex);build_full_paths(FileIndex,FullPathDir,FullPaths,Paths);var root_name=Paths.shift();Paths.root=root_name;var find_path=make_find_path(FullPaths,Paths,FileIndex,files,root_name);return{raw:{header:header,sectors:sectors},FileIndex:FileIndex,FullPaths:FullPaths,FullPathDir:FullPathDir,find:find_path}}function check_get_mver(blob){blob.chk(HEADER_SIGNATURE,"Header Signature: ");blob.chk(HEADER_CLSID,"CLSID: ");var mver=blob.read_shift(2,"u");return[blob.read_shift(2,"u"),mver]}function check_shifts(blob,mver){var shift=9;blob.chk("feff","Byte Order: ");switch(shift=blob.read_shift(2)){case 9:if(mver!==3)throw"MajorVersion/SectorShift Mismatch";break;case 12:if(mver!==4)throw"MajorVersion/SectorShift Mismatch";break;default:throw"Sector Shift: Expected 9 or 12 saw "+shift}blob.chk("0600","Mini Sector Shift: ");blob.chk("000000000000","Reserved: ")}function sectorify(file,ssz){var nsectors=Math.ceil(file.length/ssz)-1;var sectors=new Array(nsectors);for(var i=1;i<nsectors;++i)sectors[i-1]=file.slice(i*ssz,(i+1)*ssz);sectors[nsectors-1]=file.slice(nsectors*ssz);return sectors}function build_full_paths(FI,FPD,FP,Paths){var i=0,L=0,R=0,C=0,j=0,pl=Paths.length;var dad=new Array(pl),q=new Array(pl);for(;i<pl;++i){dad[i]=q[i]=i;FP[i]=Paths[i]}for(;j<q.length;++j){i=q[j];L=FI[i].L;R=FI[i].R;C=FI[i].C;if(dad[i]===i){if(L!==-1&&dad[L]!==L)dad[i]=dad[L];if(R!==-1&&dad[R]!==R)dad[i]=dad[R]}if(C!==-1)dad[C]=i;if(L!==-1){dad[L]=dad[i];q.push(L)}if(R!==-1){dad[R]=dad[i];q.push(R)}}for(i=1;i!==pl;++i)if(dad[i]===i){if(R!==-1&&dad[R]!==R)dad[i]=dad[R];else if(L!==-1&&dad[L]!==L)dad[i]=dad[L]}for(i=1;i<pl;++i){if(FI[i].type===0)continue;j=dad[i];if(j===0)FP[i]=FP[0]+"/"+FP[i];else while(j!==0){FP[i]=FP[j]+"/"+FP[i];j=dad[j]}dad[i]=0}FP[0]+="/";for(i=1;i<pl;++i){if(FI[i].type!==2)FP[i]+="/";FPD[FP[i]]=FI[i]}}function make_find_path(FullPaths,Paths,FileIndex,files,root_name){var UCFullPaths=new Array(FullPaths.length);var UCPaths=new Array(Paths.length),i;for(i=0;i<FullPaths.length;++i)UCFullPaths[i]=FullPaths[i].toUpperCase().replace(chr0,"").replace(chr1,"!");for(i=0;i<Paths.length;++i)UCPaths[i]=Paths[i].toUpperCase().replace(chr0,"").replace(chr1,"!");return function find_path(path){var k;if(path.charCodeAt(0)===47){k=true;path=root_name+path}else k=path.indexOf("/")!==-1;var UCPath=path.toUpperCase().replace(chr0,"").replace(chr1,"!");var w=k===true?UCFullPaths.indexOf(UCPath):UCPaths.indexOf(UCPath);if(w===-1)return null;return k===true?FileIndex[w]:files[Paths[w]]}}function sleuth_fat(idx,cnt,sectors,ssz,fat_addrs){var q;if(idx===ENDOFCHAIN){if(cnt!==0)throw"DIFAT chain shorter than expected"}else if(idx!==-1){var sector=sectors[idx],m=(ssz>>>2)-1;for(var i=0;i<m;++i){if((q=__readInt32LE(sector,i*4))===ENDOFCHAIN)break;fat_addrs.push(q)}sleuth_fat(__readInt32LE(sector,ssz-4),cnt-1,sectors,ssz,fat_addrs)}}function get_sector_list(sectors,start,fat_addrs,ssz,chkd){var sl=sectors.length;var buf,buf_chain;if(!chkd)chkd=new Array(sl);var modulus=ssz-1,j,jj;buf=[];buf_chain=[];for(j=start;j>=0;){chkd[j]=true;buf[buf.length]=j;buf_chain.push(sectors[j]);var addr=fat_addrs[Math.floor(j*4/ssz)];jj=j*4&modulus;if(ssz<4+jj)throw"FAT boundary crossed: "+j+" 4 "+ssz;j=__readInt32LE(sectors[addr],jj)}return{nodes:buf,data:__toBuffer([buf_chain])}}function make_sector_list(sectors,dir_start,fat_addrs,ssz){var sl=sectors.length,sector_list=new Array(sl);var chkd=new Array(sl),buf,buf_chain;var modulus=ssz-1,i,j,k,jj;for(i=0;i<sl;++i){buf=[];k=i+dir_start;if(k>=sl)k-=sl;if(chkd[k]===true)continue;buf_chain=[];for(j=k;j>=0;){chkd[j]=true;buf[buf.length]=j;buf_chain.push(sectors[j]);var addr=fat_addrs[Math.floor(j*4/ssz)];jj=j*4&modulus;if(ssz<4+jj)throw"FAT boundary crossed: "+j+" 4 "+ssz;j=__readInt32LE(sectors[addr],jj)}sector_list[k]={nodes:buf,data:__toBuffer([buf_chain])}}return sector_list}function read_directory(dir_start,sector_list,sectors,Paths,nmfs,files,FileIndex){var blob;var minifat_store=0,pl=Paths.length?2:0;var sector=sector_list[dir_start].data;var i=0,namelen=0,name,o,ctime,mtime;for(;i<sector.length;i+=128){blob=sector.slice(i,i+128);prep_blob(blob,64);namelen=blob.read_shift(2);if(namelen===0)continue;name=__utf16le(blob,0,namelen-pl);Paths.push(name);o={name:name,type:blob.read_shift(1),color:blob.read_shift(1),L:blob.read_shift(4,"i"),R:blob.read_shift(4,"i"),C:blob.read_shift(4,"i"),clsid:blob.read_shift(16),state:blob.read_shift(4,"i")};ctime=blob.read_shift(2)+blob.read_shift(2)+blob.read_shift(2)+blob.read_shift(2);if(ctime!==0){o.ctime=ctime;o.ct=read_date(blob,blob.l-8)}mtime=blob.read_shift(2)+blob.read_shift(2)+blob.read_shift(2)+blob.read_shift(2);if(mtime!==0){o.mtime=mtime;o.mt=read_date(blob,blob.l-8)}o.start=blob.read_shift(4,"i");o.size=blob.read_shift(4,"i");if(o.type===5){minifat_store=o.start;if(nmfs>0&&minifat_store!==ENDOFCHAIN)sector_list[minifat_store].name="!StreamData"}else if(o.size>=4096){o.storage="fat";if(sector_list[o.start]===undefined)sector_list[o.start]=get_sector_list(sectors,o.start,sector_list.fat_addrs,sector_list.ssz);sector_list[o.start].name=o.name;o.content=sector_list[o.start].data.slice(0,o.size);prep_blob(o.content,0)}else{o.storage="minifat";if(minifat_store!==ENDOFCHAIN&&o.start!==ENDOFCHAIN){o.content=sector_list[minifat_store].data.slice(o.start*MSSZ,o.start*MSSZ+o.size);prep_blob(o.content,0)}}files[name]=o;FileIndex.push(o)}}function read_date(blob,offset){return new Date((__readUInt32LE(blob,offset+4)/1e7*Math.pow(2,32)+__readUInt32LE(blob,offset)/1e7-11644473600)*1e3)}var fs;function readFileSync(filename,options){if(fs===undefined)fs=require("fs");return parse(fs.readFileSync(filename),options)}function readSync(blob,options){switch(options!==undefined&&options.type!==undefined?options.type:"base64"){case"file":return readFileSync(blob,options);case"base64":return parse(s2a(Base64.decode(blob)),options);case"binary":return parse(s2a(blob),options)}return parse(blob)}var MSSZ=64;var ENDOFCHAIN=-2;var HEADER_SIGNATURE="d0cf11e0a1b11ae1";var HEADER_CLSID="00000000000000000000000000000000";var consts={MAXREGSECT:-6,DIFSECT:-4,FATSECT:-3,ENDOFCHAIN:ENDOFCHAIN,FREESECT:-1,HEADER_SIGNATURE:HEADER_SIGNATURE,HEADER_MINOR_VERSION:"3e00",MAXREGSID:-6,NOSTREAM:-1,HEADER_CLSID:HEADER_CLSID,EntryTypes:["unknown","storage","stream","lockbytes","property","root"]};exports.read=readSync;exports.parse=parse;exports.utils={ReadShift:ReadShift,CheckField:CheckField,prep_blob:prep_blob,bconcat:bconcat,consts:consts};return exports}();if(typeof require!=="undefined"&&typeof module!=="undefined"&&typeof DO_NOT_EXPORT_CFB==="undefined"){module.exports=CFB}function isval(x){return x!==undefined&&x!==null}function keys(o){return Object.keys(o)}function evert_key(obj,key){var o=[],K=keys(obj);for(var i=0;i!==K.length;++i)o[obj[K[i]][key]]=K[i];return o}function evert(obj){var o=[],K=keys(obj);for(var i=0;i!==K.length;++i)o[obj[K[i]]]=K[i];return o}function evert_num(obj){var o=[],K=keys(obj);for(var i=0;i!==K.length;++i)o[obj[K[i]]]=parseInt(K[i],10);return o}function evert_arr(obj){var o=[],K=keys(obj);for(var i=0;i!==K.length;++i){if(o[obj[K[i]]]==null)o[obj[K[i]]]=[];o[obj[K[i]]].push(K[i])}return o}function datenum(v,date1904){if(date1904)v+=1462;var epoch=Date.parse(v);return(epoch+22091616e5)/(24*60*60*1e3)}function cc2str(arr){var o="";for(var i=0;i!=arr.length;++i)o+=String.fromCharCode(arr[i]);return o}function getdata(data){if(!data)return null;if(data.name.substr(-4)===".bin"){if(data.data)return char_codes(data.data);if(data.asNodeBuffer&&has_buf)return data.asNodeBuffer();if(data._data&&data._data.getContent)return Array.prototype.slice.call(data._data.getContent())}else{if(data.data)return data.name.substr(-4)!==".bin"?debom_xml(data.data):char_codes(data.data);if(data.asNodeBuffer&&has_buf)return debom_xml(data.asNodeBuffer().toString("binary"));if(data.asBinary)return debom_xml(data.asBinary());if(data._data&&data._data.getContent)return debom_xml(cc2str(Array.prototype.slice.call(data._data.getContent(),0)))}return null}function safegetzipfile(zip,file){var f=file;if(zip.files[f])return zip.files[f];var lowerCaseFiles={};for(var key in zip.files){lowerCaseFiles[key.toLowerCase()]=zip.files[key]}f=file.toLowerCase();if(lowerCaseFiles[f])return lowerCaseFiles[f];f=f.replace(/\//g,"\\");if(lowerCaseFiles[f])return lowerCaseFiles[f];return null}function getzipfile(zip,file){var o=safegetzipfile(zip,file);if(o==null)throw new Error("Cannot find file "+file+" in zip");return o}function getzipdata(zip,file,safe){if(!safe)return getdata(getzipfile(zip,file));if(!file)return null;try{return getzipdata(zip,file)}catch(e){return null}}var _fs,jszip;if(typeof JSZip!=="undefined")jszip=JSZip;if(typeof exports!=="undefined"){if(typeof module!=="undefined"&&module.exports){if(has_buf&&typeof jszip==="undefined")jszip=require("js"+"zip");if(typeof jszip==="undefined")jszip=require("./js"+"zip").JSZip;_fs=require("f"+"s")}}var attregexg=/([\w:]+)=((?:")([^"]*)(?:")|(?:')([^']*)(?:'))/g;var tagregex=/<[^>]*>/g;var nsregex=/<\w*:/,nsregex2=/<(\/?)\w+:/;function parsexmltag(tag,skip_root){var z=[];var eq=0,c=0;for(;eq!==tag.length;++eq)if((c=tag.charCodeAt(eq))===32||c===10||c===13)break;if(!skip_root)z[0]=tag.substr(0,eq);if(eq===tag.length)return z;var m=tag.match(attregexg),j=0,w="",v="",i=0,q="",cc="";if(m)for(i=0;i!=m.length;++i){cc=m[i];for(c=0;c!=cc.length;++c)if(cc.charCodeAt(c)===61)break;q=cc.substr(0,c);v=cc.substring(c+2,cc.length-1);for(j=0;j!=q.length;++j)if(q.charCodeAt(j)===58)break;if(j===q.length)z[q]=v;else z[(j===5&&q.substr(0,5)==="xmlns"?"xmlns":"")+q.substr(j+1)]=v}return z}function strip_ns(x){return x.replace(nsregex2,"<$1")}var encodings={"&quot;":'"',"&apos;":"'","&gt;":">","&lt;":"<","&amp;":"&"};var rencoding=evert(encodings);var rencstr="&<>'\"".split("");var unescapexml=function(){var encregex=/&[a-z]*;/g,coderegex=/_x([\da-fA-F]+)_/g;return function unescapexml(text){var s=text+"";return s.replace(encregex,function($$){return encodings[$$]}).replace(coderegex,function(m,c){return String.fromCharCode(parseInt(c,16))})}}();var decregex=/[&<>'"]/g,charegex=/[\u0000-\u0008\u000b-\u001f]/g;function escapexml(text){var s=text+"";return s.replace(decregex,function(y){return rencoding[y]}).replace(charegex,function(s){return"_x"+("000"+s.charCodeAt(0).toString(16)).substr(-4)+"_"})}var xlml_fixstr=function(){var entregex=/&#(\d+);/g;function entrepl($$,$1){return String.fromCharCode(parseInt($1,10))}return function xlml_fixstr(str){return str.replace(entregex,entrepl)}}();function parsexmlbool(value,tag){switch(value){case"1":case"true":case"TRUE":return true;default:return false}}var utf8read=function utf8reada(orig){var out="",i=0,c=0,d=0,e=0,f=0,w=0;while(i<orig.length){c=orig.charCodeAt(i++);if(c<128){out+=String.fromCharCode(c);continue}d=orig.charCodeAt(i++);if(c>191&&c<224){out+=String.fromCharCode((c&31)<<6|d&63);continue}e=orig.charCodeAt(i++);if(c<240){out+=String.fromCharCode((c&15)<<12|(d&63)<<6|e&63);continue}f=orig.charCodeAt(i++);w=((c&7)<<18|(d&63)<<12|(e&63)<<6|f&63)-65536;out+=String.fromCharCode(55296+(w>>>10&1023));out+=String.fromCharCode(56320+(w&1023))}return out};if(has_buf){var utf8readb=function utf8readb(data){var out=new Buffer(2*data.length),w,i,j=1,k=0,ww=0,c;for(i=0;i<data.length;i+=j){j=1;if((c=data.charCodeAt(i))<128)w=c;else if(c<224){w=(c&31)*64+(data.charCodeAt(i+1)&63);j=2}else if(c<240){w=(c&15)*4096+(data.charCodeAt(i+1)&63)*64+(data.charCodeAt(i+2)&63);j=3}else{j=4;w=(c&7)*262144+(data.charCodeAt(i+1)&63)*4096+(data.charCodeAt(i+2)&63)*64+(data.charCodeAt(i+3)&63);w-=65536;ww=55296+(w>>>10&1023);w=56320+(w&1023)}if(ww!==0){out[k++]=ww&255;out[k++]=ww>>>8;ww=0}out[k++]=w%256;out[k++]=w>>>8}out.length=k;return out.toString("ucs2")};var corpus="foo bar baz☃🍣";if(utf8read(corpus)==utf8readb(corpus))utf8read=utf8readb;var utf8readc=function utf8readc(data){return Buffer(data,"binary").toString("utf8")};if(utf8read(corpus)==utf8readc(corpus))utf8read=utf8readc}var matchtag=function(){var mtcache={};return function matchtag(f,g){var t=f+"|"+g;if(mtcache[t]!==undefined)return mtcache[t];return mtcache[t]=new RegExp("<(?:\\w+:)?"+f+'(?: xml:space="preserve")?(?:[^>]*)>([^☃]*)</(?:\\w+:)?'+f+">",g||"")}}();var vtregex=function(){var vt_cache={};return function vt_regex(bt){if(vt_cache[bt]!==undefined)return vt_cache[bt];return vt_cache[bt]=new RegExp("<vt:"+bt+">(.*?)</vt:"+bt+">","g")}}();var vtvregex=/<\/?vt:variant>/g,vtmregex=/<vt:([^>]*)>(.*)</;function parseVector(data){var h=parsexmltag(data);var matches=data.match(vtregex(h.baseType))||[];if(matches.length!=h.size)throw"unexpected vector length "+matches.length+" != "+h.size;var res=[];matches.forEach(function(x){var v=x.replace(vtvregex,"").match(vtmregex);res.push({v:v[2],t:v[1]})});return res}var wtregex=/(^\s|\s$|\n)/;function writetag(f,g){return"<"+f+(g.match(wtregex)?' xml:space="preserve"':"")+">"+g+"</"+f+">"}function wxt_helper(h){return keys(h).map(function(k){return" "+k+'="'+h[k]+'"'}).join("")}function writextag(f,g,h){return"<"+f+(isval(h)?wxt_helper(h):"")+(isval(g)?(g.match(wtregex)?' xml:space="preserve"':"")+">"+g+"</"+f:"/")+">"}function write_w3cdtf(d,t){try{return d.toISOString().replace(/\.\d*/,"")}catch(e){if(t)throw e}}function write_vt(s){switch(typeof s){case"string":return writextag("vt:lpwstr",s);case"number":return writextag((s|0)==s?"vt:i4":"vt:r8",String(s));case"boolean":return writextag("vt:bool",s?"true":"false")}if(s instanceof Date)return writextag("vt:filetime",write_w3cdtf(s));throw new Error("Unable to serialize "+s)}var XML_HEADER='<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r\n';var XMLNS={dc:"http://purl.org/dc/elements/1.1/",dcterms:"http://purl.org/dc/terms/",dcmitype:"http://purl.org/dc/dcmitype/",mx:"http://schemas.microsoft.com/office/mac/excel/2008/main",r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships",sjs:"http://schemas.openxmlformats.org/package/2006/sheetjs/core-properties",vt:"http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes",xsi:"http://www.w3.org/2001/XMLSchema-instance",xsd:"http://www.w3.org/2001/XMLSchema"};XMLNS.main=["http://schemas.openxmlformats.org/spreadsheetml/2006/main","http://purl.oclc.org/ooxml/spreadsheetml/main","http://schemas.microsoft.com/office/excel/2006/main","http://schemas.microsoft.com/office/excel/2006/2"];function readIEEE754(buf,idx,isLE,nl,ml){if(isLE===undefined)isLE=true;if(!nl)nl=8;if(!ml&&nl===8)ml=52;var e,m,el=nl*8-ml-1,eMax=(1<<el)-1,eBias=eMax>>1;var bits=-7,d=isLE?-1:1,i=isLE?nl-1:0,s=buf[idx+i];i+=d;e=s&(1<<-bits)-1;s>>>=-bits;bits+=el;for(;bits>0;e=e*256+buf[idx+i],i+=d,bits-=8);m=e&(1<<-bits)-1;e>>>=-bits;bits+=ml;for(;bits>0;m=m*256+buf[idx+i],i+=d,bits-=8);if(e===eMax)return m?NaN:(s?-1:1)*Infinity;else if(e===0)e=1-eBias;else{m=m+Math.pow(2,ml);e=e-eBias}return(s?-1:1)*m*Math.pow(2,e-ml)}var __toBuffer,___toBuffer;__toBuffer=___toBuffer=function toBuffer_(bufs){var x=[];for(var i=0;i<bufs[0].length;++i){x.push.apply(x,bufs[0][i])}return x};var __utf16le,___utf16le;__utf16le=___utf16le=function utf16le_(b,s,e){var ss=[];for(var i=s;i<e;i+=2)ss.push(String.fromCharCode(__readUInt16LE(b,i)));return ss.join("")};var __hexlify,___hexlify;__hexlify=___hexlify=function hexlify_(b,s,l){return b.slice(s,s+l).map(function(x){return(x<16?"0":"")+x.toString(16)}).join("")};var __utf8,___utf8;__utf8=___utf8=function(b,s,e){var ss=[];for(var i=s;i<e;i++)ss.push(String.fromCharCode(__readUInt8(b,i)));return ss.join("")};var __lpstr,___lpstr;__lpstr=___lpstr=function lpstr_(b,i){var len=__readUInt32LE(b,i);return len>0?__utf8(b,i+4,i+4+len-1):""};var __lpwstr,___lpwstr;__lpwstr=___lpwstr=function lpwstr_(b,i){var len=2*__readUInt32LE(b,i);return len>0?__utf8(b,i+4,i+4+len-1):""};var __double,___double;__double=___double=function(b,idx){return readIEEE754(b,idx)};var is_buf=function is_buf_a(a){return Array.isArray(a)};if(has_buf){__utf16le=function utf16le_b(b,s,e){if(!Buffer.isBuffer(b))return ___utf16le(b,s,e);return b.toString("utf16le",s,e)};__hexlify=function(b,s,l){return Buffer.isBuffer(b)?b.toString("hex",s,s+l):___hexlify(b,s,l)};__lpstr=function lpstr_b(b,i){if(!Buffer.isBuffer(b))return ___lpstr(b,i);var len=b.readUInt32LE(i);return len>0?b.toString("utf8",i+4,i+4+len-1):""};__lpwstr=function lpwstr_b(b,i){if(!Buffer.isBuffer(b))return ___lpwstr(b,i);var len=2*b.readUInt32LE(i);return b.toString("utf16le",i+4,i+4+len-1)};__utf8=function utf8_b(s,e){return this.toString("utf8",s,e)};__toBuffer=function(bufs){return bufs[0].length>0&&Buffer.isBuffer(bufs[0][0])?Buffer.concat(bufs[0]):___toBuffer(bufs)};bconcat=function(bufs){return Buffer.isBuffer(bufs[0])?Buffer.concat(bufs):[].concat.apply([],bufs)};__double=function double_(b,i){if(Buffer.isBuffer(b))return b.readDoubleLE(i);return ___double(b,i)};is_buf=function is_buf_b(a){return Buffer.isBuffer(a)||Array.isArray(a)}}if(typeof cptable!=="undefined"){__utf16le=function(b,s,e){return cptable.utils.decode(1200,b.slice(s,e))};__utf8=function(b,s,e){return cptable.utils.decode(65001,b.slice(s,e))};__lpstr=function(b,i){var len=__readUInt32LE(b,i);return len>0?cptable.utils.decode(current_codepage,b.slice(i+4,i+4+len-1)):""};__lpwstr=function(b,i){var len=2*__readUInt32LE(b,i);return len>0?cptable.utils.decode(1200,b.slice(i+4,i+4+len-1)):""}}var __readUInt8=function(b,idx){return b[idx]};var __readUInt16LE=function(b,idx){return b[idx+1]*(1<<8)+b[idx]};var __readInt16LE=function(b,idx){var u=b[idx+1]*(1<<8)+b[idx];return u<32768?u:(65535-u+1)*-1};var __readUInt32LE=function(b,idx){return b[idx+3]*(1<<24)+(b[idx+2]<<16)+(b[idx+1]<<8)+b[idx]};var __readInt32LE=function(b,idx){return b[idx+3]<<24|b[idx+2]<<16|b[idx+1]<<8|b[idx]};var ___unhexlify=function(s){return s.match(/../g).map(function(x){return parseInt(x,16)})};var __unhexlify=typeof Buffer!=="undefined"?function(s){return Buffer.isBuffer(s)?new Buffer(s,"hex"):___unhexlify(s)}:___unhexlify;function ReadShift(size,t){var o="",oI,oR,oo=[],w,vv,i,loc;switch(t){case"dbcs":loc=this.l;if(has_buf&&Buffer.isBuffer(this))o=this.slice(this.l,this.l+2*size).toString("utf16le");else for(i=0;i!=size;++i){o+=String.fromCharCode(__readUInt16LE(this,loc));loc+=2}size*=2;break;case"utf8":o=__utf8(this,this.l,this.l+size);break;case"utf16le":size*=2;o=__utf16le(this,this.l,this.l+size);break;case"lpstr":o=__lpstr(this,this.l);size=5+o.length;break;case"lpwstr":o=__lpwstr(this,this.l);size=5+o.length;if(o[o.length-1]=="\0")size+=2;break;case"cstr":size=0;o="";while((w=__readUInt8(this,this.l+size++))!==0)oo.push(_getchar(w));o=oo.join("");break;case"wstr":size=0;o="";while((w=__readUInt16LE(this,this.l+size))!==0){oo.push(_getchar(w));size+=2}size+=2;o=oo.join("");break;case"dbcs-cont":o="";loc=this.l;for(i=0;i!=size;++i){if(this.lens&&this.lens.indexOf(loc)!==-1){w=__readUInt8(this,loc);this.l=loc+1;vv=ReadShift.call(this,size-i,w?"dbcs-cont":"sbcs-cont");return oo.join("")+vv}oo.push(_getchar(__readUInt16LE(this,loc)));loc+=2}o=oo.join("");size*=2;break;case"sbcs-cont":o="";loc=this.l;for(i=0;i!=size;++i){if(this.lens&&this.lens.indexOf(loc)!==-1){w=__readUInt8(this,loc);this.l=loc+1;vv=ReadShift.call(this,size-i,w?"dbcs-cont":"sbcs-cont");return oo.join("")+vv}oo.push(_getchar(__readUInt8(this,loc)));loc+=1}o=oo.join("");break;default:switch(size){case 1:oI=__readUInt8(this,this.l);this.l++;return oI;case 2:oI=(t==="i"?__readInt16LE:__readUInt16LE)(this,this.l);this.l+=2;return oI;case 4:if(t==="i"||(this[this.l+3]&128)===0){oI=__readInt32LE(this,this.l);this.l+=4;return oI}else{oR=__readUInt32LE(this,this.l);this.l+=4;return oR}break;case 8:if(t==="f"){oR=__double(this,this.l);this.l+=8;return oR}case 16:o=__hexlify(this,this.l,size);break}}this.l+=size;return o}function WriteShift(t,val,f){var size,i;if(f==="dbcs"){for(i=0;i!=val.length;++i)this.writeUInt16LE(val.charCodeAt(i),this.l+2*i);size=2*val.length;
}else switch(t){case 1:size=1;this[this.l]=val&255;break;case 3:size=3;this[this.l+2]=val&255;val>>>=8;this[this.l+1]=val&255;val>>>=8;this[this.l]=val&255;break;case 4:size=4;this.writeUInt32LE(val,this.l);break;case 8:size=8;if(f==="f"){this.writeDoubleLE(val,this.l);break}case 16:break;case-4:size=4;this.writeInt32LE(val,this.l);break}this.l+=size;return this}function CheckField(hexstr,fld){var m=__hexlify(this,this.l,hexstr.length>>1);if(m!==hexstr)throw fld+"Expected "+hexstr+" saw "+m;this.l+=hexstr.length>>1}function prep_blob(blob,pos){blob.l=pos;blob.read_shift=ReadShift;blob.chk=CheckField;blob.write_shift=WriteShift}function parsenoop(blob,length){blob.l+=length}function writenoop(blob,length){blob.l+=length}function new_buf(sz){var o=new_raw_buf(sz);prep_blob(o,0);return o}function recordhopper(data,cb,opts){var tmpbyte,cntbyte,length;prep_blob(data,data.l||0);while(data.l<data.length){var RT=data.read_shift(1);if(RT&128)RT=(RT&127)+((data.read_shift(1)&127)<<7);var R=XLSBRecordEnum[RT]||XLSBRecordEnum[65535];tmpbyte=data.read_shift(1);length=tmpbyte&127;for(cntbyte=1;cntbyte<4&&tmpbyte&128;++cntbyte)length+=((tmpbyte=data.read_shift(1))&127)<<7*cntbyte;var d=R.f(data,length,opts);if(cb(d,R,RT))return}}function buf_array(){var bufs=[],blksz=2048;var newblk=function ba_newblk(sz){var o=new_buf(sz);prep_blob(o,0);return o};var curbuf=newblk(blksz);var endbuf=function ba_endbuf(){curbuf.length=curbuf.l;if(curbuf.length>0)bufs.push(curbuf);curbuf=null};var next=function ba_next(sz){if(sz<curbuf.length-curbuf.l)return curbuf;endbuf();return curbuf=newblk(Math.max(sz+1,blksz))};var end=function ba_end(){endbuf();return __toBuffer([bufs])};var push=function ba_push(buf){endbuf();curbuf=buf;next(blksz)};return{next:next,push:push,end:end,_bufs:bufs}}function write_record(ba,type,payload,length){var t=evert_RE[type],l;if(!length)length=XLSBRecordEnum[t].p||(payload||[]).length||0;l=1+(t>=128?1:0)+1+length;if(length>=128)++l;if(length>=16384)++l;if(length>=2097152)++l;var o=ba.next(l);if(t<=127)o.write_shift(1,t);else{o.write_shift(1,(t&127)+128);o.write_shift(1,t>>7)}for(var i=0;i!=4;++i){if(length>=128){o.write_shift(1,(length&127)+128);length>>=7}else{o.write_shift(1,length);break}}if(length>0&&is_buf(payload))ba.push(payload)}function shift_cell_xls(cell,tgt){if(tgt.s){if(cell.cRel)cell.c+=tgt.s.c;if(cell.rRel)cell.r+=tgt.s.r}else{cell.c+=tgt.c;cell.r+=tgt.r}cell.cRel=cell.rRel=0;while(cell.c>=256)cell.c-=256;while(cell.r>=65536)cell.r-=65536;return cell}function shift_range_xls(cell,range){cell.s=shift_cell_xls(cell.s,range.s);cell.e=shift_cell_xls(cell.e,range.s);return cell}var OFFCRYPTO={};var make_offcrypto=function(O,_crypto){var crypto;if(typeof _crypto!=="undefined")crypto=_crypto;else if(typeof require!=="undefined"){try{crypto=require("cry"+"pto")}catch(e){crypto=null}}O.rc4=function(key,data){var S=new Array(256);var c=0,i=0,j=0,t=0;for(i=0;i!=256;++i)S[i]=i;for(i=0;i!=256;++i){j=j+S[i]+key[i%key.length].charCodeAt(0)&255;t=S[i];S[i]=S[j];S[j]=t}i=j=0;out=Buffer(data.length);for(c=0;c!=data.length;++c){i=i+1&255;j=(j+S[i])%256;t=S[i];S[i]=S[j];S[j]=t;out[c]=data[c]^S[S[i]+S[j]&255]}return out};if(crypto){O.md5=function(hex){return crypto.createHash("md5").update(hex).digest("hex")}}else{O.md5=function(hex){throw"unimplemented"}}};make_offcrypto(OFFCRYPTO,typeof crypto!=="undefined"?crypto:undefined);function parse_StrRun(data,length){return{ich:data.read_shift(2),ifnt:data.read_shift(2)}}function parse_RichStr(data,length){var start=data.l;var flags=data.read_shift(1);var str=parse_XLWideString(data);var rgsStrRun=[];var z={t:str,h:str};if((flags&1)!==0){var dwSizeStrRun=data.read_shift(4);for(var i=0;i!=dwSizeStrRun;++i)rgsStrRun.push(parse_StrRun(data));z.r=rgsStrRun}else z.r="<t>"+escapexml(str)+"</t>";if((flags&2)!==0){}data.l=start+length;return z}function write_RichStr(str,o){if(o==null)o=new_buf(5+2*str.t.length);o.write_shift(1,0);write_XLWideString(str.t,o);return o}function parse_XLSBCell(data){var col=data.read_shift(4);var iStyleRef=data.read_shift(2);iStyleRef+=data.read_shift(1)<<16;var fPhShow=data.read_shift(1);return{c:col,iStyleRef:iStyleRef}}function write_XLSBCell(cell,o){if(o==null)o=new_buf(8);o.write_shift(-4,cell.c);o.write_shift(3,cell.iStyleRef===undefined?cell.iStyleRef:cell.s);o.write_shift(1,0);return o}function parse_XLSBCodeName(data,length){return parse_XLWideString(data,length)}function parse_XLNullableWideString(data){var cchCharacters=data.read_shift(4);return cchCharacters===0||cchCharacters===4294967295?"":data.read_shift(cchCharacters,"dbcs")}function write_XLNullableWideString(data,o){if(!o)o=new_buf(127);o.write_shift(4,data.length>0?data.length:4294967295);if(data.length>0)o.write_shift(0,data,"dbcs");return o}function parse_XLWideString(data){var cchCharacters=data.read_shift(4);return cchCharacters===0?"":data.read_shift(cchCharacters,"dbcs")}function write_XLWideString(data,o){if(o==null)o=new_buf(4+2*data.length);o.write_shift(4,data.length);if(data.length>0)o.write_shift(0,data,"dbcs");return o}var parse_RelID=parse_XLNullableWideString;var write_RelID=write_XLNullableWideString;function parse_RkNumber(data){var b=data.slice(data.l,data.l+4);var fX100=b[0]&1,fInt=b[0]&2;data.l+=4;b[0]&=252;var RK=fInt===0?__double([0,0,0,0,b[0],b[1],b[2],b[3]],0):__readInt32LE(b,0)>>2;return fX100?RK/100:RK}function parse_UncheckedRfX(data){var cell={s:{},e:{}};cell.s.r=data.read_shift(4);cell.e.r=data.read_shift(4);cell.s.c=data.read_shift(4);cell.e.c=data.read_shift(4);return cell}function write_UncheckedRfX(r,o){if(!o)o=new_buf(16);o.write_shift(4,r.s.r);o.write_shift(4,r.e.r);o.write_shift(4,r.s.c);o.write_shift(4,r.e.c);return o}function parse_Xnum(data,length){return data.read_shift(8,"f")}function write_Xnum(data,o){return(o||new_buf(8)).write_shift(8,"f",data)}var BErr={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"};var RBErr=evert_num(BErr);function parse_BrtColor(data,length){var out={};var d=data.read_shift(1);out.fValidRGB=d&1;out.xColorType=d>>>1;out.index=data.read_shift(1);out.nTintAndShade=data.read_shift(2,"i");out.bRed=data.read_shift(1);out.bGreen=data.read_shift(1);out.bBlue=data.read_shift(1);out.bAlpha=data.read_shift(1)}function parse_FontFlags(data,length){var d=data.read_shift(1);data.l++;var out={fItalic:d&2,fStrikeout:d&8,fOutline:d&16,fShadow:d&32,fCondense:d&64,fExtend:d&128};return out}{var VT_EMPTY=0;var VT_NULL=1;var VT_I2=2;var VT_I4=3;var VT_R4=4;var VT_R8=5;var VT_CY=6;var VT_DATE=7;var VT_BSTR=8;var VT_ERROR=10;var VT_BOOL=11;var VT_VARIANT=12;var VT_DECIMAL=14;var VT_I1=16;var VT_UI1=17;var VT_UI2=18;var VT_UI4=19;var VT_I8=20;var VT_UI8=21;var VT_INT=22;var VT_UINT=23;var VT_LPSTR=30;var VT_LPWSTR=31;var VT_FILETIME=64;var VT_BLOB=65;var VT_STREAM=66;var VT_STORAGE=67;var VT_STREAMED_Object=68;var VT_STORED_Object=69;var VT_BLOB_Object=70;var VT_CF=71;var VT_CLSID=72;var VT_VERSIONED_STREAM=73;var VT_VECTOR=4096;var VT_ARRAY=8192;var VT_STRING=80;var VT_USTR=81;var VT_CUSTOM=[VT_STRING,VT_USTR]}var DocSummaryPIDDSI={1:{n:"CodePage",t:VT_I2},2:{n:"Category",t:VT_STRING},3:{n:"PresentationFormat",t:VT_STRING},4:{n:"ByteCount",t:VT_I4},5:{n:"LineCount",t:VT_I4},6:{n:"ParagraphCount",t:VT_I4},7:{n:"SlideCount",t:VT_I4},8:{n:"NoteCount",t:VT_I4},9:{n:"HiddenCount",t:VT_I4},10:{n:"MultimediaClipCount",t:VT_I4},11:{n:"Scale",t:VT_BOOL},12:{n:"HeadingPair",t:VT_VECTOR|VT_VARIANT},13:{n:"DocParts",t:VT_VECTOR|VT_LPSTR},14:{n:"Manager",t:VT_STRING},15:{n:"Company",t:VT_STRING},16:{n:"LinksDirty",t:VT_BOOL},17:{n:"CharacterCount",t:VT_I4},19:{n:"SharedDoc",t:VT_BOOL},22:{n:"HLinksChanged",t:VT_BOOL},23:{n:"AppVersion",t:VT_I4,p:"version"},26:{n:"ContentType",t:VT_STRING},27:{n:"ContentStatus",t:VT_STRING},28:{n:"Language",t:VT_STRING},29:{n:"Version",t:VT_STRING},255:{}};var SummaryPIDSI={1:{n:"CodePage",t:VT_I2},2:{n:"Title",t:VT_STRING},3:{n:"Subject",t:VT_STRING},4:{n:"Author",t:VT_STRING},5:{n:"Keywords",t:VT_STRING},6:{n:"Comments",t:VT_STRING},7:{n:"Template",t:VT_STRING},8:{n:"LastAuthor",t:VT_STRING},9:{n:"RevNumber",t:VT_STRING},10:{n:"EditTime",t:VT_FILETIME},11:{n:"LastPrinted",t:VT_FILETIME},12:{n:"CreatedDate",t:VT_FILETIME},13:{n:"ModifiedDate",t:VT_FILETIME},14:{n:"PageCount",t:VT_I4},15:{n:"WordCount",t:VT_I4},16:{n:"CharCount",t:VT_I4},17:{n:"Thumbnail",t:VT_CF},18:{n:"ApplicationName",t:VT_LPSTR},19:{n:"DocumentSecurity",t:VT_I4},255:{}};var SpecialProperties={2147483648:{n:"Locale",t:VT_UI4},2147483651:{n:"Behavior",t:VT_UI4},1919054434:{}};(function(){for(var y in SpecialProperties)if(SpecialProperties.hasOwnProperty(y))DocSummaryPIDDSI[y]=SummaryPIDSI[y]=SpecialProperties[y]})();var CountryEnum={1:"US",2:"CA",3:"",7:"RU",20:"EG",30:"GR",31:"NL",32:"BE",33:"FR",34:"ES",36:"HU",39:"IT",41:"CH",43:"AT",44:"GB",45:"DK",46:"SE",47:"NO",48:"PL",49:"DE",52:"MX",55:"BR",61:"AU",64:"NZ",66:"TH",81:"JP",82:"KR",84:"VN",86:"CN",90:"TR",105:"JS",213:"DZ",216:"MA",218:"LY",351:"PT",354:"IS",358:"FI",420:"CZ",886:"TW",961:"LB",962:"JO",963:"SY",964:"IQ",965:"KW",966:"SA",971:"AE",972:"IL",974:"QA",981:"IR",65535:"US"};var XLSFillPattern=[null,"solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];function rgbify(arr){return arr.map(function(x){return[x>>16&255,x>>8&255,x&255]})}var XLSIcv=rgbify([0,16777215,16711680,65280,255,16776960,16711935,65535,0,16777215,16711680,65280,255,16776960,16711935,65535,8388608,32768,128,8421376,8388736,32896,12632256,8421504,10066431,10040166,16777164,13434879,6684774,16744576,26316,13421823,128,16711935,16776960,65535,8388736,8388608,32896,255,52479,13434879,13434828,16777113,10079487,16751052,13408767,16764057,3368703,3394764,10079232,16763904,16750848,16737792,6710937,9868950,13158,3381606,13056,3355392,10040064,10040166,3355545,3355443,16777215,0]);var ct2type={"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":"workbooks","application/vnd.ms-excel.binIndexWs":"TODO","application/vnd.ms-excel.chartsheet":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":"TODO","application/vnd.ms-excel.dialogsheet":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":"TODO","application/vnd.ms-excel.macrosheet":"TODO","application/vnd.ms-excel.macrosheet+xml":"TODO","application/vnd.ms-excel.intlmacrosheet":"TODO","application/vnd.ms-excel.binIndexMs":"TODO","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.ms-excel.comments":"comments","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":"comments","application/vnd.ms-excel.pivotTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+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":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml":"TODO","application/vnd.ms-excel.sheetMetadata":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml":"TODO","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.ms-excel.Timeline+xml":"TODO","application/vnd.ms-excel.TimelineCache+xml":"TODO","application/vnd.ms-office.vbaProject":"vba","application/vnd.ms-office.vbaProjectSignature":"vba","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":"TODO","application/vnd.openxmlformats-officedocument.drawingml.chart+xml":"TODO","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",sheet:"js"};var CT_LIST=function(){var o={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",xltx:"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml"},strs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml",xlsb:"application/vnd.ms-excel.sharedStrings"},sheets:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",xlsb:"application/vnd.ms-excel.worksheet"},styles:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml",xlsb:"application/vnd.ms-excel.styles"}};keys(o).forEach(function(k){if(!o[k].xlsm)o[k].xlsm=o[k].xlsx});keys(o).forEach(function(k){keys(o[k]).forEach(function(v){ct2type[o[k][v]]=k})});return o}();var type2ct=evert_arr(ct2type);XMLNS.CT="http://schemas.openxmlformats.org/package/2006/content-types";function parse_ct(data,opts){var ctext={};if(!data||!data.match)return data;var ct={workbooks:[],sheets:[],calcchains:[],themes:[],styles:[],coreprops:[],extprops:[],custprops:[],strs:[],comments:[],vba:[],TODO:[],rels:[],xmlns:""};(data.match(tagregex)||[]).forEach(function(x){var y=parsexmltag(x);switch(y[0].replace(nsregex,"<")){case"<?xml":break;case"<Types":ct.xmlns=y["xmlns"+(y[0].match(/<(\w+):/)||["",""])[1]];break;case"<Default":ctext[y.Extension]=y.ContentType;break;case"<Override":if(ct[ct2type[y.ContentType]]!==undefined)ct[ct2type[y.ContentType]].push(y.PartName);else if(opts.WTF)console.error(y);break}});if(ct.xmlns!==XMLNS.CT)throw new Error("Unknown Namespace: "+ct.xmlns);ct.calcchain=ct.calcchains.length>0?ct.calcchains[0]:"";ct.sst=ct.strs.length>0?ct.strs[0]:"";ct.style=ct.styles.length>0?ct.styles[0]:"";ct.defaults=ctext;delete ct.calcchains;return ct}var CTYPE_XML_ROOT=writextag("Types",null,{xmlns:XMLNS.CT,"xmlns:xsd":XMLNS.xsd,"xmlns:xsi":XMLNS.xsi});var CTYPE_DEFAULTS=[["xml","application/xml"],["bin","application/vnd.ms-excel.sheet.binary.macroEnabled.main"],["rels",type2ct.rels[0]]].map(function(x){return writextag("Default",null,{Extension:x[0],ContentType:x[1]})});function write_ct(ct,opts){var o=[],v;o[o.length]=XML_HEADER;o[o.length]=CTYPE_XML_ROOT;o=o.concat(CTYPE_DEFAULTS);var f1=function(w){if(ct[w]&&ct[w].length>0){v=ct[w][0];o[o.length]=writextag("Override",null,{PartName:(v[0]=="/"?"":"/")+v,ContentType:CT_LIST[w][opts.bookType||"xlsx"]})}};var f2=function(w){ct[w].forEach(function(v){o[o.length]=writextag("Override",null,{PartName:(v[0]=="/"?"":"/")+v,ContentType:CT_LIST[w][opts.bookType||"xlsx"]})})};var f3=function(t){(ct[t]||[]).forEach(function(v){o[o.length]=writextag("Override",null,{PartName:(v[0]=="/"?"":"/")+v,ContentType:type2ct[t][0]})})};f1("workbooks");f2("sheets");f3("themes");["strs","styles"].forEach(f1);["coreprops","extprops","custprops"].forEach(f3);if(o.length>2){o[o.length]="</Types>";o[1]=o[1].replace("/>",">")}return o.join("")}var RELS={WB:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",SHEET:"http://sheetjs.openxmlformats.org/officeDocument/2006/relationships/officeDocument"};function parse_rels(data,currentFilePath){if(!data)return data;if(currentFilePath.charAt(0)!=="/"){currentFilePath="/"+currentFilePath}var rels={};var hash={};var resolveRelativePathIntoAbsolute=function(to){var toksFrom=currentFilePath.split("/");toksFrom.pop();var toksTo=to.split("/");var reversed=[];while(toksTo.length!==0){var tokTo=toksTo.shift();if(tokTo===".."){toksFrom.pop()}else if(tokTo!=="."){toksFrom.push(tokTo)}}return toksFrom.join("/")};data.match(tagregex).forEach(function(x){var y=parsexmltag(x);if(y[0]==="<Relationship"){var rel={};rel.Type=y.Type;rel.Target=y.Target;rel.Id=y.Id;rel.TargetMode=y.TargetMode;var canonictarget=y.TargetMode==="External"?y.Target:resolveRelativePathIntoAbsolute(y.Target);rels[canonictarget]=rel;hash[y.Id]=rel}});rels["!id"]=hash;return rels}XMLNS.RELS="http://schemas.openxmlformats.org/package/2006/relationships";var RELS_ROOT=writextag("Relationships",null,{xmlns:XMLNS.RELS});function write_rels(rels){var o=[];o[o.length]=XML_HEADER;o[o.length]=RELS_ROOT;keys(rels["!id"]).forEach(function(rid){var rel=rels["!id"][rid];o[o.length]=writextag("Relationship",null,rel)});if(o.length>2){o[o.length]="</Relationships>";o[1]=o[1].replace("/>",">")}return o.join("")}var CORE_PROPS=[["cp:category","Category"],["cp:contentStatus","ContentStatus"],["cp:keywords","Keywords"],["cp:lastModifiedBy","LastAuthor"],["cp:lastPrinted","LastPrinted"],["cp:revision","RevNumber"],["cp:version","Version"],["dc:creator","Author"],["dc:description","Comments"],["dc:identifier","Identifier"],["dc:language","Language"],["dc:subject","Subject"],["dc:title","Title"],["dcterms:created","CreatedDate","date"],["dcterms:modified","ModifiedDate","date"]];XMLNS.CORE_PROPS="http://schemas.openxmlformats.org/package/2006/metadata/core-properties";RELS.CORE_PROPS="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties";var CORE_PROPS_REGEX=function(){var r=new Array(CORE_PROPS.length);for(var i=0;i<CORE_PROPS.length;++i){var f=CORE_PROPS[i];var g="(?:"+f[0].substr(0,f[0].indexOf(":"))+":)"+f[0].substr(f[0].indexOf(":")+1);r[i]=new RegExp("<"+g+"[^>]*>(.*)</"+g+">")}return r}();function parse_core_props(data){var p={};for(var i=0;i<CORE_PROPS.length;++i){var f=CORE_PROPS[i],cur=data.match(CORE_PROPS_REGEX[i]);if(cur!=null&&cur.length>0)p[f[1]]=cur[1];if(f[2]==="date"&&p[f[1]])p[f[1]]=new Date(p[f[1]])}return p}var CORE_PROPS_XML_ROOT=writextag("cp:coreProperties",null,{"xmlns:cp":XMLNS.CORE_PROPS,"xmlns:dc":XMLNS.dc,"xmlns:dcterms":XMLNS.dcterms,"xmlns:dcmitype":XMLNS.dcmitype,"xmlns:xsi":XMLNS.xsi});function cp_doit(f,g,h,o,p){if(p[f]!=null||g==null||g==="")return;p[f]=g;o[o.length]=h?writextag(f,g,h):writetag(f,g)}function write_core_props(cp,opts){var o=[XML_HEADER,CORE_PROPS_XML_ROOT],p={};if(opts&&opts.Props){if(opts.Props.title)o[o.length]="<dc:title>"+opts.Props.title+"</dc:title>";if(opts.Props.subject)o[o.length]="<dc:subject>"+opts.Props.subject+"</dc:subject>";if(opts.Props.creator)o[o.length]="<dc:creator>"+opts.Props.creator+"</dc:creator>";if(opts.Props.keywords)o[o.length]="<cp:keywords>"+opts.Props.keywords+"</cp:keywords>";if(opts.Props.description)o[o.length]="<dc:description>"+opts.Props.description+"</dc:description>"}if(cp){if(cp.CreatedDate!=null)cp_doit("dcterms:created",typeof cp.CreatedDate==="string"?cp.CreatedDate:write_w3cdtf(cp.CreatedDate,opts.WTF),{"xsi:type":"dcterms:W3CDTF"},o,p);if(cp.ModifiedDate!=null)cp_doit("dcterms:modified",typeof cp.ModifiedDate==="string"?cp.ModifiedDate:write_w3cdtf(cp.ModifiedDate,opts.WTF),{"xsi:type":"dcterms:W3CDTF"},o,p);for(var i=0;i!=CORE_PROPS.length;++i){var f=CORE_PROPS[i];cp_doit(f[0],cp[f[1]],null,o,p)}}if(o.length>2){o[o.length]="</cp:coreProperties>";o[1]=o[1].replace("/>",">")}return o.join("")}var EXT_PROPS=[["Application","Application","string"],["AppVersion","AppVersion","string"],["Company","Company","string"],["DocSecurity","DocSecurity","string"],["Manager","Manager","string"],["HyperlinksChanged","HyperlinksChanged","bool"],["SharedDoc","SharedDoc","bool"],["LinksUpToDate","LinksUpToDate","bool"],["ScaleCrop","ScaleCrop","bool"],["HeadingPairs","HeadingPairs","raw"],["TitlesOfParts","TitlesOfParts","raw"]];XMLNS.EXT_PROPS="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties";RELS.EXT_PROPS="http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties";function parse_ext_props(data,p){var q={};if(!p)p={};EXT_PROPS.forEach(function(f){switch(f[2]){case"string":p[f[1]]=(data.match(matchtag(f[0]))||[])[1];break;case"bool":p[f[1]]=(data.match(matchtag(f[0]))||[])[1]==="true";break;case"raw":var cur=data.match(new RegExp("<"+f[0]+"[^>]*>(.*)</"+f[0]+">"));if(cur&&cur.length>0)q[f[1]]=cur[1];break}});if(q.HeadingPairs&&q.TitlesOfParts){var v=parseVector(q.HeadingPairs);var j=0,widx=0;for(var i=0;i!==v.length;++i){switch(v[i].v){case"Worksheets":widx=j;p.Worksheets=+v[++i].v;break;case"Named Ranges":++i;break}}var parts=parseVector(q.TitlesOfParts).map(function(x){return utf8read(x.v)});p.SheetNames=parts.slice(widx,widx+p.Worksheets)}return p}var EXT_PROPS_XML_ROOT=writextag("Properties",null,{xmlns:XMLNS.EXT_PROPS,"xmlns:vt":XMLNS.vt});function write_ext_props(cp,opts){var o=[],p={},W=writextag;if(!cp)cp={};cp.Application="SheetJS";o[o.length]=XML_HEADER;o[o.length]=EXT_PROPS_XML_ROOT;EXT_PROPS.forEach(function(f){if(cp[f[1]]===undefined)return;var v;switch(f[2]){case"string":v=cp[f[1]];break;case"bool":v=cp[f[1]]?"true":"false";break}if(v!==undefined)o[o.length]=W(f[0],v)});o[o.length]=W("HeadingPairs",W("vt:vector",W("vt:variant","<vt:lpstr>Worksheets</vt:lpstr>")+W("vt:variant",W("vt:i4",String(cp.Worksheets))),{size:2,baseType:"variant"}));o[o.length]=W("TitlesOfParts",W("vt:vector",cp.SheetNames.map(function(s){return"<vt:lpstr>"+s+"</vt:lpstr>"}).join(""),{size:cp.Worksheets,baseType:"lpstr"}));if(o.length>2){o[o.length]="</Properties>";o[1]=o[1].replace("/>",">")}return o.join("")}XMLNS.CUST_PROPS="http://schemas.openxmlformats.org/officeDocument/2006/custom-properties";RELS.CUST_PROPS="http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties";var custregex=/<[^>]+>[^<]*/g;function parse_cust_props(data,opts){var p={},name;var m=data.match(custregex);if(m)for(var i=0;i!=m.length;++i){var x=m[i],y=parsexmltag(x);switch(y[0]){case"<?xml":break;case"<Properties":if(y.xmlns!==XMLNS.CUST_PROPS)throw"unrecognized xmlns "+y.xmlns;if(y.xmlnsvt&&y.xmlnsvt!==XMLNS.vt)throw"unrecognized vt "+y.xmlnsvt;break;case"<property":name=y.name;break;case"</property>":name=null;break;default:if(x.indexOf("<vt:")===0){var toks=x.split(">");var type=toks[0].substring(4),text=toks[1];switch(type){case"lpstr":case"lpwstr":case"bstr":case"lpwstr":p[name]=unescapexml(text);break;case"bool":p[name]=parsexmlbool(text,"<vt:bool>");break;case"i1":case"i2":case"i4":case"i8":case"int":case"uint":p[name]=parseInt(text,10);break;case"r4":case"r8":case"decimal":p[name]=parseFloat(text);break;case"filetime":case"date":p[name]=new Date(text);break;case"cy":case"error":p[name]=unescapexml(text);break;default:if(typeof console!=="undefined")console.warn("Unexpected",x,type,toks)}}else if(x.substr(0,2)==="</"){}else if(opts.WTF)throw new Error(x)}}return p}var CUST_PROPS_XML_ROOT=writextag("Properties",null,{xmlns:XMLNS.CUST_PROPS,"xmlns:vt":XMLNS.vt});function write_cust_props(cp,opts){var o=[XML_HEADER,CUST_PROPS_XML_ROOT];if(!cp)return o.join("");var pid=1;keys(cp).forEach(function custprop(k){++pid;o[o.length]=writextag("property",write_vt(cp[k]),{fmtid:"{D5CDD505-2E9C-101B-9397-08002B2CF9AE}",pid:pid,name:k})});if(o.length>2){o[o.length]="</Properties>";o[1]=o[1].replace("/>",">")}return o.join("")}function xlml_set_prop(Props,tag,val){switch(tag){case"Description":tag="Comments";break}Props[tag]=val}function parse_FILETIME(blob){var dwLowDateTime=blob.read_shift(4),dwHighDateTime=blob.read_shift(4);return new Date((dwHighDateTime/1e7*Math.pow(2,32)+dwLowDateTime/1e7-11644473600)*1e3).toISOString().replace(/\.000/,"")}function parse_lpstr(blob,type,pad){var str=blob.read_shift(0,"lpstr");if(pad)blob.l+=4-(str.length+1&3)&3;return str}function parse_lpwstr(blob,type,pad){var str=blob.read_shift(0,"lpwstr");if(pad)blob.l+=4-(str.length+1&3)&3;return str}function parse_VtStringBase(blob,stringType,pad){if(stringType===31)return parse_lpwstr(blob);return parse_lpstr(blob,stringType,pad)}function parse_VtString(blob,t,pad){return parse_VtStringBase(blob,t,pad===false?0:4)}function parse_VtUnalignedString(blob,t){if(!t)throw new Error("dafuq?");return parse_VtStringBase(blob,t,0)}function parse_VtVecUnalignedLpstrValue(blob){var length=blob.read_shift(4);var ret=[];for(var i=0;i!=length;++i)ret[i]=blob.read_shift(0,"lpstr");return ret}function parse_VtVecUnalignedLpstr(blob){return parse_VtVecUnalignedLpstrValue(blob)}function parse_VtHeadingPair(blob){var headingString=parse_TypedPropertyValue(blob,VT_USTR);var headerParts=parse_TypedPropertyValue(blob,VT_I4);return[headingString,headerParts]}function parse_VtVecHeadingPairValue(blob){var cElements=blob.read_shift(4);var out=[];for(var i=0;i!=cElements/2;++i)out.push(parse_VtHeadingPair(blob));return out}function parse_VtVecHeadingPair(blob){return parse_VtVecHeadingPairValue(blob)}function parse_dictionary(blob,CodePage){var cnt=blob.read_shift(4);var dict={};for(var j=0;j!=cnt;++j){var pid=blob.read_shift(4);var len=blob.read_shift(4);dict[pid]=blob.read_shift(len,CodePage===1200?"utf16le":"utf8").replace(chr0,"").replace(chr1,"!")}if(blob.l&3)blob.l=blob.l>>2+1<<2;return dict}function parse_BLOB(blob){var size=blob.read_shift(4);var bytes=blob.slice(blob.l,blob.l+size);if(size&3>0)blob.l+=4-(size&3)&3;return bytes}function parse_ClipboardData(blob){var o={};o.Size=blob.read_shift(4);blob.l+=o.Size;return o}function parse_VtVector(blob,cb){}function parse_TypedPropertyValue(blob,type,_opts){var t=blob.read_shift(2),ret,opts=_opts||{};blob.l+=2;if(type!==VT_VARIANT)if(t!==type&&VT_CUSTOM.indexOf(type)===-1)throw new Error("Expected type "+type+" saw "+t);switch(type===VT_VARIANT?t:type){case 2:ret=blob.read_shift(2,"i");if(!opts.raw)blob.l+=2;return ret;case 3:ret=blob.read_shift(4,"i");return ret;case 11:return blob.read_shift(4)!==0;case 19:ret=blob.read_shift(4);return ret;case 30:return parse_lpstr(blob,t,4).replace(chr0,"");case 31:return parse_lpwstr(blob);case 64:return parse_FILETIME(blob);case 65:return parse_BLOB(blob);case 71:return parse_ClipboardData(blob);case 80:return parse_VtString(blob,t,!opts.raw&&4).replace(chr0,"");case 81:return parse_VtUnalignedString(blob,t,4).replace(chr0,"");case 4108:return parse_VtVecHeadingPair(blob);case 4126:return parse_VtVecUnalignedLpstr(blob);default:throw new Error("TypedPropertyValue unrecognized type "+type+" "+t)}}function parse_PropertySet(blob,PIDSI){var start_addr=blob.l;var size=blob.read_shift(4);var NumProps=blob.read_shift(4);var Props=[],i=0;var CodePage=0;var Dictionary=-1,DictObj;for(i=0;i!=NumProps;++i){var PropID=blob.read_shift(4);var Offset=blob.read_shift(4);Props[i]=[PropID,Offset+start_addr]}var PropH={};for(i=0;i!=NumProps;++i){if(blob.l!==Props[i][1]){var fail=true;if(i>0&&PIDSI)switch(PIDSI[Props[i-1][0]].t){case 2:if(blob.l+2===Props[i][1]){blob.l+=2;fail=false}break;case 80:if(blob.l<=Props[i][1]){blob.l=Props[i][1];fail=false}break;case 4108:if(blob.l<=Props[i][1]){blob.l=Props[i][1];fail=false}break}if(!PIDSI&&blob.l<=Props[i][1]){fail=false;blob.l=Props[i][1]}if(fail)throw new Error("Read Error: Expected address "+Props[i][1]+" at "+blob.l+" :"+i)}if(PIDSI){var piddsi=PIDSI[Props[i][0]];PropH[piddsi.n]=parse_TypedPropertyValue(blob,piddsi.t,{raw:true});if(piddsi.p==="version")PropH[piddsi.n]=String(PropH[piddsi.n]>>16)+"."+String(PropH[piddsi.n]&65535);if(piddsi.n=="CodePage")switch(PropH[piddsi.n]){case 0:PropH[piddsi.n]=1252;case 1e4:case 1252:case 874:case 1250:case 1251:case 1253:case 1254:case 1255:case 1256:case 1257:case 1258:case 932:case 936:case 949:case 950:case 1200:case 1201:case 65e3:case-536:case 65001:case-535:set_cp(CodePage=PropH[piddsi.n]);break;default:throw new Error("Unsupported CodePage: "+PropH[piddsi.n])}}else{if(Props[i][0]===1){CodePage=PropH.CodePage=parse_TypedPropertyValue(blob,VT_I2);set_cp(CodePage);if(Dictionary!==-1){var oldpos=blob.l;blob.l=Props[Dictionary][1];DictObj=parse_dictionary(blob,CodePage);blob.l=oldpos}}else if(Props[i][0]===0){if(CodePage===0){Dictionary=i;blob.l=Props[i+1][1];continue}DictObj=parse_dictionary(blob,CodePage)}else{var name=DictObj[Props[i][0]];var val;switch(blob[blob.l]){case 65:blob.l+=4;val=parse_BLOB(blob);break;case 30:blob.l+=4;val=parse_VtString(blob,blob[blob.l-4]);break;case 31:blob.l+=4;val=parse_VtString(blob,blob[blob.l-4]);break;case 3:blob.l+=4;val=blob.read_shift(4,"i");break;case 19:blob.l+=4;val=blob.read_shift(4);break;case 5:blob.l+=4;val=blob.read_shift(8,"f");break;case 11:blob.l+=4;val=parsebool(blob,4);break;case 64:blob.l+=4;val=new Date(parse_FILETIME(blob));break;default:throw new Error("unparsed value: "+blob[blob.l])}PropH[name]=val}}}blob.l=start_addr+size;return PropH}function parse_PropertySetStream(file,PIDSI){var blob=file.content;prep_blob(blob,0);var NumSets,FMTID0,FMTID1,Offset0,Offset1;blob.chk("feff","Byte Order: ");var vers=blob.read_shift(2);var SystemIdentifier=blob.read_shift(4);blob.chk(CFB.utils.consts.HEADER_CLSID,"CLSID: ");NumSets=blob.read_shift(4);if(NumSets!==1&&NumSets!==2)throw"Unrecognized #Sets: "+NumSets;FMTID0=blob.read_shift(16);Offset0=blob.read_shift(4);if(NumSets===1&&Offset0!==blob.l)throw"Length mismatch";else if(NumSets===2){FMTID1=blob.read_shift(16);Offset1=blob.read_shift(4)}var PSet0=parse_PropertySet(blob,PIDSI);var rval={SystemIdentifier:SystemIdentifier};for(var y in PSet0)rval[y]=PSet0[y];rval.FMTID=FMTID0;if(NumSets===1)return rval;if(blob.l!==Offset1)throw"Length mismatch 2: "+blob.l+" !== "+Offset1;var PSet1;try{PSet1=parse_PropertySet(blob,null)}catch(e){}for(y in PSet1)rval[y]=PSet1[y];rval.FMTID=[FMTID0,FMTID1];return rval}function parsenoop2(blob,length){blob.read_shift(length);return null}function parslurp(blob,length,cb){var arr=[],target=blob.l+length;while(blob.l<target)arr.push(cb(blob,target-blob.l));if(target!==blob.l)throw new Error("Slurp error");
return arr}function parslurp2(blob,length,cb){var arr=[],target=blob.l+length,len=blob.read_shift(2);while(len--!==0)arr.push(cb(blob,target-blob.l));if(target!==blob.l)throw new Error("Slurp error");return arr}function parsebool(blob,length){return blob.read_shift(length)===1}function parseuint16(blob){return blob.read_shift(2,"u")}function parseuint16a(blob,length){return parslurp(blob,length,parseuint16)}var parse_Boolean=parsebool;function parse_Bes(blob){var v=blob.read_shift(1),t=blob.read_shift(1);return t===1?v:v===1}function parse_ShortXLUnicodeString(blob,length,opts){var cch=blob.read_shift(1);var width=1,encoding="sbcs-cont";var cp=current_codepage;if(opts&&opts.biff>=8)current_codepage=1200;if(opts===undefined||opts.biff!==5){var fHighByte=blob.read_shift(1);if(fHighByte){width=2;encoding="dbcs-cont"}}var o=cch?blob.read_shift(cch,encoding):"";current_codepage=cp;return o}function parse_XLUnicodeRichExtendedString(blob){var cp=current_codepage;current_codepage=1200;var cch=blob.read_shift(2),flags=blob.read_shift(1);var fHighByte=flags&1,fExtSt=flags&4,fRichSt=flags&8;var width=1+(flags&1);var cRun,cbExtRst;var z={};if(fRichSt)cRun=blob.read_shift(2);if(fExtSt)cbExtRst=blob.read_shift(4);var encoding=flags&1?"dbcs-cont":"sbcs-cont";var msg=cch===0?"":blob.read_shift(cch,encoding);if(fRichSt)blob.l+=4*cRun;if(fExtSt)blob.l+=cbExtRst;z.t=msg;if(!fRichSt){z.raw="<t>"+z.t+"</t>";z.r=z.t}current_codepage=cp;return z}function parse_XLUnicodeStringNoCch(blob,cch,opts){var retval;var fHighByte=blob.read_shift(1);if(fHighByte===0){retval=blob.read_shift(cch,"sbcs-cont")}else{retval=blob.read_shift(cch,"dbcs-cont")}return retval}function parse_XLUnicodeString(blob,length,opts){var cch=blob.read_shift(opts!==undefined&&opts.biff>0&&opts.biff<8?1:2);if(cch===0){blob.l++;return""}return parse_XLUnicodeStringNoCch(blob,cch,opts)}function parse_XLUnicodeString2(blob,length,opts){if(opts.biff!==5&&opts.biff!==2)return parse_XLUnicodeString(blob,length,opts);var cch=blob.read_shift(1);if(cch===0){blob.l++;return""}return blob.read_shift(cch,"sbcs-cont")}var parse_ControlInfo=parsenoop;var parse_URLMoniker=function(blob,length){var len=blob.read_shift(4),start=blob.l;var extra=false;if(len>24){blob.l+=len-24;if(blob.read_shift(16)==="795881f43b1d7f48af2c825dc4852763")extra=true;blob.l=start}var url=blob.read_shift((extra?len-24:len)>>1,"utf16le").replace(chr0,"");if(extra)blob.l+=24;return url};var parse_FileMoniker=function(blob,length){var cAnti=blob.read_shift(2);var ansiLength=blob.read_shift(4);var ansiPath=blob.read_shift(ansiLength,"cstr");var endServer=blob.read_shift(2);var versionNumber=blob.read_shift(2);var cbUnicodePathSize=blob.read_shift(4);if(cbUnicodePathSize===0)return ansiPath.replace(/\\/g,"/");var cbUnicodePathBytes=blob.read_shift(4);var usKeyValue=blob.read_shift(2);var unicodePath=blob.read_shift(cbUnicodePathBytes>>1,"utf16le").replace(chr0,"");return unicodePath};var parse_HyperlinkMoniker=function(blob,length){var clsid=blob.read_shift(16);length-=16;switch(clsid){case"e0c9ea79f9bace118c8200aa004ba90b":return parse_URLMoniker(blob,length);case"0303000000000000c000000000000046":return parse_FileMoniker(blob,length);default:throw"unsupported moniker "+clsid}};var parse_HyperlinkString=function(blob,length){var len=blob.read_shift(4);var o=blob.read_shift(len,"utf16le").replace(chr0,"");return o};var parse_Hyperlink=function(blob,length){var end=blob.l+length;var sVer=blob.read_shift(4);if(sVer!==2)throw new Error("Unrecognized streamVersion: "+sVer);var flags=blob.read_shift(2);blob.l+=2;var displayName,targetFrameName,moniker,oleMoniker,location,guid,fileTime;if(flags&16)displayName=parse_HyperlinkString(blob,end-blob.l);if(flags&128)targetFrameName=parse_HyperlinkString(blob,end-blob.l);if((flags&257)===257)moniker=parse_HyperlinkString(blob,end-blob.l);if((flags&257)===1)oleMoniker=parse_HyperlinkMoniker(blob,end-blob.l);if(flags&8)location=parse_HyperlinkString(blob,end-blob.l);if(flags&32)guid=blob.read_shift(16);if(flags&64)fileTime=parse_FILETIME(blob,8);blob.l=end;var target=targetFrameName||moniker||oleMoniker;if(location)target+="#"+location;return{Target:target}};function parse_LongRGBA(blob,length){var r=blob.read_shift(1),g=blob.read_shift(1),b=blob.read_shift(1),a=blob.read_shift(1);return[r,g,b,a]}function parse_LongRGB(blob,length){var x=parse_LongRGBA(blob,length);x[3]=0;return x}function parse_XLSCell(blob,length){var rw=blob.read_shift(2);var col=blob.read_shift(2);var ixfe=blob.read_shift(2);return{r:rw,c:col,ixfe:ixfe}}function parse_frtHeader(blob){var rt=blob.read_shift(2);var flags=blob.read_shift(2);blob.l+=8;return{type:rt,flags:flags}}function parse_OptXLUnicodeString(blob,length,opts){return length===0?"":parse_XLUnicodeString2(blob,length,opts)}var HIDEOBJENUM=["SHOWALL","SHOWPLACEHOLDER","HIDEALL"];var parse_HideObjEnum=parseuint16;function parse_XTI(blob,length){var iSupBook=blob.read_shift(2),itabFirst=blob.read_shift(2,"i"),itabLast=blob.read_shift(2,"i");return[iSupBook,itabFirst,itabLast]}function parse_RkRec(blob,length){var ixfe=blob.read_shift(2);var RK=parse_RkNumber(blob);return[ixfe,RK]}function parse_AddinUdf(blob,length){blob.l+=4;length-=4;var l=blob.l+length;var udfName=parse_ShortXLUnicodeString(blob,length);var cb=blob.read_shift(2);l-=blob.l;if(cb!==l)throw"Malformed AddinUdf: padding = "+l+" != "+cb;blob.l+=cb;return udfName}function parse_Ref8U(blob,length){var rwFirst=blob.read_shift(2);var rwLast=blob.read_shift(2);var colFirst=blob.read_shift(2);var colLast=blob.read_shift(2);return{s:{c:colFirst,r:rwFirst},e:{c:colLast,r:rwLast}}}function parse_RefU(blob,length){var rwFirst=blob.read_shift(2);var rwLast=blob.read_shift(2);var colFirst=blob.read_shift(1);var colLast=blob.read_shift(1);return{s:{c:colFirst,r:rwFirst},e:{c:colLast,r:rwLast}}}var parse_Ref=parse_RefU;function parse_FtCmo(blob,length){blob.l+=4;var ot=blob.read_shift(2);var id=blob.read_shift(2);var flags=blob.read_shift(2);blob.l+=12;return[id,ot,flags]}function parse_FtNts(blob,length){var out={};blob.l+=4;blob.l+=16;out.fSharedNote=blob.read_shift(2);blob.l+=4;return out}function parse_FtCf(blob,length){var out={};blob.l+=4;blob.cf=blob.read_shift(2);return out}var FtTab={21:parse_FtCmo,19:parsenoop,18:function(blob,length){blob.l+=12},17:function(blob,length){blob.l+=8},16:parsenoop,15:parsenoop,13:parse_FtNts,12:function(blob,length){blob.l+=24},11:function(blob,length){blob.l+=10},10:function(blob,length){blob.l+=16},9:parsenoop,8:function(blob,length){blob.l+=6},7:parse_FtCf,6:function(blob,length){blob.l+=6},4:parsenoop,0:function(blob,length){blob.l+=4}};function parse_FtArray(blob,length,ot){var s=blob.l;var fts=[];while(blob.l<s+length){var ft=blob.read_shift(2);blob.l-=2;try{fts.push(FtTab[ft](blob,s+length-blob.l))}catch(e){blob.l=s+length;return fts}}if(blob.l!=s+length)blob.l=s+length;return fts}var parse_FontIndex=parseuint16;function parse_BOF(blob,length){var o={};o.BIFFVer=blob.read_shift(2);length-=2;switch(o.BIFFVer){case 1536:case 1280:case 2:case 7:break;default:throw"Unexpected BIFF Ver "+o.BIFFVer}blob.read_shift(length);return o}function parse_InterfaceHdr(blob,length){if(length===0)return 1200;var q;if((q=blob.read_shift(2))!==1200)throw"InterfaceHdr codePage "+q;return 1200}function parse_WriteAccess(blob,length,opts){if(opts.enc){blob.l+=length;return""}var l=blob.l;var UserName=parse_XLUnicodeString(blob,0,opts);blob.read_shift(length+l-blob.l);return UserName}function parse_BoundSheet8(blob,length,opts){var pos=blob.read_shift(4);var hidden=blob.read_shift(1)>>6;var dt=blob.read_shift(1);switch(dt){case 0:dt="Worksheet";break;case 1:dt="Macrosheet";break;case 2:dt="Chartsheet";break;case 6:dt="VBAModule";break}var name=parse_ShortXLUnicodeString(blob,0,opts);if(name.length===0)name="Sheet1";return{pos:pos,hs:hidden,dt:dt,name:name}}function parse_SST(blob,length){var cnt=blob.read_shift(4);var ucnt=blob.read_shift(4);var strs=[];for(var i=0;i!=ucnt;++i){strs.push(parse_XLUnicodeRichExtendedString(blob))}strs.Count=cnt;strs.Unique=ucnt;return strs}function parse_ExtSST(blob,length){var extsst={};extsst.dsst=blob.read_shift(2);blob.l+=length-2;return extsst}function parse_Row(blob,length){var rw=blob.read_shift(2),col=blob.read_shift(2),Col=blob.read_shift(2),rht=blob.read_shift(2);blob.read_shift(4);var flags=blob.read_shift(1);blob.read_shift(1);blob.read_shift(2);return{r:rw,c:col,cnt:Col-col}}function parse_ForceFullCalculation(blob,length){var header=parse_frtHeader(blob);if(header.type!=2211)throw"Invalid Future Record "+header.type;var fullcalc=blob.read_shift(4);return fullcalc!==0}var parse_CompressPictures=parsenoop2;function parse_RecalcId(blob,length){blob.read_shift(2);return blob.read_shift(4)}function parse_DefaultRowHeight(blob,length){var f=blob.read_shift(2),miyRw;miyRw=blob.read_shift(2);var fl={Unsynced:f&1,DyZero:(f&2)>>1,ExAsc:(f&4)>>2,ExDsc:(f&8)>>3};return[fl,miyRw]}function parse_Window1(blob,length){var xWn=blob.read_shift(2),yWn=blob.read_shift(2),dxWn=blob.read_shift(2),dyWn=blob.read_shift(2);var flags=blob.read_shift(2),iTabCur=blob.read_shift(2),iTabFirst=blob.read_shift(2);var ctabSel=blob.read_shift(2),wTabRatio=blob.read_shift(2);return{Pos:[xWn,yWn],Dim:[dxWn,dyWn],Flags:flags,CurTab:iTabCur,FirstTab:iTabFirst,Selected:ctabSel,TabRatio:wTabRatio}}function parse_Font(blob,length,opts){blob.l+=14;var name=parse_ShortXLUnicodeString(blob,0,opts);return name}function parse_LabelSst(blob,length){var cell=parse_XLSCell(blob);cell.isst=blob.read_shift(4);return cell}function parse_Label(blob,length,opts){var cell=parse_XLSCell(blob,6);var str=parse_XLUnicodeString(blob,length-6,opts);cell.val=str;return cell}function parse_Format(blob,length,opts){var ifmt=blob.read_shift(2);var fmtstr=parse_XLUnicodeString2(blob,0,opts);return[ifmt,fmtstr]}function parse_Dimensions(blob,length){var w=length===10?2:4;var r=blob.read_shift(w),R=blob.read_shift(w),c=blob.read_shift(2),C=blob.read_shift(2);blob.l+=2;return{s:{r:r,c:c},e:{r:R,c:C}}}function parse_RK(blob,length){var rw=blob.read_shift(2),col=blob.read_shift(2);var rkrec=parse_RkRec(blob);return{r:rw,c:col,ixfe:rkrec[0],rknum:rkrec[1]}}function parse_MulRk(blob,length){var target=blob.l+length-2;var rw=blob.read_shift(2),col=blob.read_shift(2);var rkrecs=[];while(blob.l<target)rkrecs.push(parse_RkRec(blob));if(blob.l!==target)throw"MulRK read error";var lastcol=blob.read_shift(2);if(rkrecs.length!=lastcol-col+1)throw"MulRK length mismatch";return{r:rw,c:col,C:lastcol,rkrec:rkrecs}}function parse_CellStyleXF(blob,length,style){var o={};var a=blob.read_shift(4),b=blob.read_shift(4);var c=blob.read_shift(4),d=blob.read_shift(2);o.patternType=XLSFillPattern[c>>26];o.icvFore=d&127;o.icvBack=d>>7&127;return o}function parse_CellXF(blob,length){return parse_CellStyleXF(blob,length,0)}function parse_StyleXF(blob,length){return parse_CellStyleXF(blob,length,1)}function parse_XF(blob,length){var o={};o.ifnt=blob.read_shift(2);o.ifmt=blob.read_shift(2);o.flags=blob.read_shift(2);o.fStyle=o.flags>>2&1;length-=6;o.data=parse_CellStyleXF(blob,length,o.fStyle);return o}function parse_Guts(blob,length){blob.l+=4;var out=[blob.read_shift(2),blob.read_shift(2)];if(out[0]!==0)out[0]--;if(out[1]!==0)out[1]--;if(out[0]>7||out[1]>7)throw"Bad Gutters: "+out;return out}function parse_BoolErr(blob,length){var cell=parse_XLSCell(blob,6);var val=parse_Bes(blob,2);cell.val=val;cell.t=val===true||val===false?"b":"e";return cell}function parse_Number(blob,length){var cell=parse_XLSCell(blob,6);var xnum=parse_Xnum(blob,8);cell.val=xnum;return cell}var parse_XLHeaderFooter=parse_OptXLUnicodeString;function parse_SupBook(blob,length,opts){var end=blob.l+length;var ctab=blob.read_shift(2);var cch=blob.read_shift(2);var virtPath;if(cch>=1&&cch<=255)virtPath=parse_XLUnicodeStringNoCch(blob,cch);var rgst=blob.read_shift(end-blob.l);opts.sbcch=cch;return[cch,ctab,virtPath,rgst]}function parse_ExternName(blob,length,opts){var flags=blob.read_shift(2);var body;var o={fBuiltIn:flags&1,fWantAdvise:flags>>>1&1,fWantPict:flags>>>2&1,fOle:flags>>>3&1,fOleLink:flags>>>4&1,cf:flags>>>5&1023,fIcon:flags>>>15&1};if(opts.sbcch===14849)body=parse_AddinUdf(blob,length-2);o.body=body||blob.read_shift(length-2);return o}function parse_Lbl(blob,length,opts){if(opts.biff<8)return parse_Label(blob,length,opts);var target=blob.l+length;var flags=blob.read_shift(2);var chKey=blob.read_shift(1);var cch=blob.read_shift(1);var cce=blob.read_shift(2);blob.l+=2;var itab=blob.read_shift(2);blob.l+=4;var name=parse_XLUnicodeStringNoCch(blob,cch,opts);var rgce=parse_NameParsedFormula(blob,target-blob.l,opts,cce);return{chKey:chKey,Name:name,rgce:rgce}}function parse_ExternSheet(blob,length,opts){if(opts.biff<8)return parse_ShortXLUnicodeString(blob,length,opts);var o=parslurp2(blob,length,parse_XTI);var oo=[];if(opts.sbcch===1025){for(var i=0;i!=o.length;++i)oo.push(opts.snames[o[i][1]]);return oo}else return o}function parse_ShrFmla(blob,length,opts){var ref=parse_RefU(blob,6);blob.l++;var cUse=blob.read_shift(1);length-=8;return[parse_SharedParsedFormula(blob,length,opts),cUse]}function parse_Array(blob,length,opts){var ref=parse_Ref(blob,6);blob.l+=6;length-=12;return[ref,parse_ArrayParsedFormula(blob,length,opts,ref)]}function parse_MTRSettings(blob,length){var fMTREnabled=blob.read_shift(4)!==0;var fUserSetThreadCount=blob.read_shift(4)!==0;var cUserThreadCount=blob.read_shift(4);return[fMTREnabled,fUserSetThreadCount,cUserThreadCount]}function parse_NoteSh(blob,length,opts){if(opts.biff<8)return;var row=blob.read_shift(2),col=blob.read_shift(2);var flags=blob.read_shift(2),idObj=blob.read_shift(2);var stAuthor=parse_XLUnicodeString2(blob,0,opts);if(opts.biff<8)blob.read_shift(1);return[{r:row,c:col},stAuthor,idObj,flags]}function parse_Note(blob,length,opts){return parse_NoteSh(blob,length,opts)}function parse_MergeCells(blob,length){var merges=[];var cmcs=blob.read_shift(2);while(cmcs--)merges.push(parse_Ref8U(blob,length));return merges}function parse_Obj(blob,length){var cmo=parse_FtCmo(blob,22);var fts=parse_FtArray(blob,length-22,cmo[1]);return{cmo:cmo,ft:fts}}function parse_TxO(blob,length,opts){var s=blob.l;try{blob.l+=4;var ot=(opts.lastobj||{cmo:[0,0]}).cmo[1];var controlInfo;if([0,5,7,11,12,14].indexOf(ot)==-1)blob.l+=6;else controlInfo=parse_ControlInfo(blob,6,opts);var cchText=blob.read_shift(2);var cbRuns=blob.read_shift(2);var ifntEmpty=parse_FontIndex(blob,2);var len=blob.read_shift(2);blob.l+=len;var texts="";for(var i=1;i<blob.lens.length-1;++i){if(blob.l-s!=blob.lens[i])throw"TxO: bad continue record";var hdr=blob[blob.l];var t=parse_XLUnicodeStringNoCch(blob,blob.lens[i+1]-blob.lens[i]-1);texts+=t;if(texts.length>=(hdr?cchText:2*cchText))break}if(texts.length!==cchText&&texts.length!==cchText*2){throw"cchText: "+cchText+" != "+texts.length}blob.l=s+length;return{t:texts}}catch(e){blob.l=s+length;return{t:texts||""}}}var parse_HLink=function(blob,length){var ref=parse_Ref8U(blob,8);blob.l+=16;var hlink=parse_Hyperlink(blob,length-24);return[ref,hlink]};var parse_HLinkTooltip=function(blob,length){var end=blob.l+length;blob.read_shift(2);var ref=parse_Ref8U(blob,8);var wzTooltip=blob.read_shift((length-10)/2,"dbcs-cont");wzTooltip=wzTooltip.replace(chr0,"");return[ref,wzTooltip]};function parse_Country(blob,length){var o=[],d;d=blob.read_shift(2);o[0]=CountryEnum[d]||d;d=blob.read_shift(2);o[1]=CountryEnum[d]||d;return o}function parse_ClrtClient(blob,length){var ccv=blob.read_shift(2);var o=[];while(ccv-- >0)o.push(parse_LongRGB(blob,8));return o}function parse_Palette(blob,length){var ccv=blob.read_shift(2);var o=[];while(ccv-- >0)o.push(parse_LongRGB(blob,8));return o}function parse_XFCRC(blob,length){blob.l+=2;var o={cxfs:0,crc:0};o.cxfs=blob.read_shift(2);o.crc=blob.read_shift(4);return o}var parse_Style=parsenoop;var parse_StyleExt=parsenoop;var parse_ColInfo=parsenoop;var parse_Window2=parsenoop;var parse_Backup=parsebool;var parse_Blank=parse_XLSCell;var parse_BottomMargin=parse_Xnum;var parse_BuiltInFnGroupCount=parseuint16;var parse_CalcCount=parseuint16;var parse_CalcDelta=parse_Xnum;var parse_CalcIter=parsebool;var parse_CalcMode=parseuint16;var parse_CalcPrecision=parsebool;var parse_CalcRefMode=parsenoop2;var parse_CalcSaveRecalc=parsebool;var parse_CodePage=parseuint16;var parse_Compat12=parsebool;var parse_Date1904=parsebool;var parse_DefColWidth=parseuint16;var parse_DSF=parsenoop2;var parse_EntExU2=parsenoop2;var parse_EOF=parsenoop2;var parse_Excel9File=parsenoop2;var parse_FeatHdr=parsenoop2;var parse_FontX=parseuint16;var parse_Footer=parse_XLHeaderFooter;var parse_GridSet=parseuint16;var parse_HCenter=parsebool;var parse_Header=parse_XLHeaderFooter;var parse_HideObj=parse_HideObjEnum;var parse_InterfaceEnd=parsenoop2;var parse_LeftMargin=parse_Xnum;var parse_Mms=parsenoop2;var parse_ObjProtect=parsebool;var parse_Password=parseuint16;var parse_PrintGrid=parsebool;var parse_PrintRowCol=parsebool;var parse_PrintSize=parseuint16;var parse_Prot4Rev=parsebool;var parse_Prot4RevPass=parseuint16;var parse_Protect=parsebool;var parse_RefreshAll=parsebool;var parse_RightMargin=parse_Xnum;var parse_RRTabId=parseuint16a;var parse_ScenarioProtect=parsebool;var parse_Scl=parseuint16a;var parse_String=parse_XLUnicodeString;var parse_SxBool=parsebool;var parse_TopMargin=parse_Xnum;var parse_UsesELFs=parsebool;var parse_VCenter=parsebool;var parse_WinProtect=parsebool;var parse_WriteProtect=parsenoop;var parse_VerticalPageBreaks=parsenoop;var parse_HorizontalPageBreaks=parsenoop;var parse_Selection=parsenoop;var parse_Continue=parsenoop;var parse_Pane=parsenoop;var parse_Pls=parsenoop;var parse_DCon=parsenoop;var parse_DConRef=parsenoop;var parse_DConName=parsenoop;var parse_XCT=parsenoop;var parse_CRN=parsenoop;var parse_FileSharing=parsenoop;var parse_Uncalced=parsenoop;var parse_Template=parsenoop;var parse_Intl=parsenoop;var parse_WsBool=parsenoop;var parse_Sort=parsenoop;var parse_Sync=parsenoop;var parse_LPr=parsenoop;var parse_DxGCol=parsenoop;var parse_FnGroupName=parsenoop;var parse_FilterMode=parsenoop;var parse_AutoFilterInfo=parsenoop;var parse_AutoFilter=parsenoop;var parse_Setup=parsenoop;var parse_ScenMan=parsenoop;var parse_SCENARIO=parsenoop;var parse_SxView=parsenoop;var parse_Sxvd=parsenoop;var parse_SXVI=parsenoop;var parse_SxIvd=parsenoop;var parse_SXLI=parsenoop;var parse_SXPI=parsenoop;var parse_DocRoute=parsenoop;var parse_RecipName=parsenoop;var parse_MulBlank=parsenoop;var parse_SXDI=parsenoop;var parse_SXDB=parsenoop;var parse_SXFDB=parsenoop;var parse_SXDBB=parsenoop;var parse_SXNum=parsenoop;var parse_SxErr=parsenoop;var parse_SXInt=parsenoop;var parse_SXString=parsenoop;var parse_SXDtr=parsenoop;var parse_SxNil=parsenoop;var parse_SXTbl=parsenoop;var parse_SXTBRGIITM=parsenoop;var parse_SxTbpg=parsenoop;var parse_ObProj=parsenoop;var parse_SXStreamID=parsenoop;var parse_DBCell=parsenoop;var parse_SXRng=parsenoop;var parse_SxIsxoper=parsenoop;var parse_BookBool=parsenoop;var parse_DbOrParamQry=parsenoop;var parse_OleObjectSize=parsenoop;var parse_SXVS=parsenoop;var parse_BkHim=parsenoop;var parse_MsoDrawingGroup=parsenoop;var parse_MsoDrawing=parsenoop;var parse_MsoDrawingSelection=parsenoop;var parse_PhoneticInfo=parsenoop;var parse_SxRule=parsenoop;var parse_SXEx=parsenoop;var parse_SxFilt=parsenoop;var parse_SxDXF=parsenoop;var parse_SxItm=parsenoop;var parse_SxName=parsenoop;var parse_SxSelect=parsenoop;var parse_SXPair=parsenoop;var parse_SxFmla=parsenoop;var parse_SxFormat=parsenoop;var parse_SXVDEx=parsenoop;var parse_SXFormula=parsenoop;var parse_SXDBEx=parsenoop;var parse_RRDInsDel=parsenoop;var parse_RRDHead=parsenoop;var parse_RRDChgCell=parsenoop;var parse_RRDRenSheet=parsenoop;var parse_RRSort=parsenoop;var parse_RRDMove=parsenoop;var parse_RRFormat=parsenoop;var parse_RRAutoFmt=parsenoop;var parse_RRInsertSh=parsenoop;var parse_RRDMoveBegin=parsenoop;var parse_RRDMoveEnd=parsenoop;var parse_RRDInsDelBegin=parsenoop;var parse_RRDInsDelEnd=parsenoop;var parse_RRDConflict=parsenoop;var parse_RRDDefName=parsenoop;var parse_RRDRstEtxp=parsenoop;var parse_LRng=parsenoop;var parse_CUsr=parsenoop;var parse_CbUsr=parsenoop;var parse_UsrInfo=parsenoop;var parse_UsrExcl=parsenoop;var parse_FileLock=parsenoop;var parse_RRDInfo=parsenoop;var parse_BCUsrs=parsenoop;var parse_UsrChk=parsenoop;var parse_UserBView=parsenoop;var parse_UserSViewBegin=parsenoop;var parse_UserSViewEnd=parsenoop;var parse_RRDUserView=parsenoop;var parse_Qsi=parsenoop;var parse_CondFmt=parsenoop;var parse_CF=parsenoop;var parse_DVal=parsenoop;var parse_DConBin=parsenoop;var parse_Lel=parsenoop;var parse_XLSCodeName=parse_XLUnicodeString;var parse_SXFDBType=parsenoop;var parse_ObNoMacros=parsenoop;var parse_Dv=parsenoop;var parse_Index=parsenoop;var parse_Table=parsenoop;var parse_BigName=parsenoop;var parse_ContinueBigName=parsenoop;var parse_WebPub=parsenoop;var parse_QsiSXTag=parsenoop;var parse_DBQueryExt=parsenoop;var parse_ExtString=parsenoop;var parse_TxtQry=parsenoop;var parse_Qsir=parsenoop;var parse_Qsif=parsenoop;var parse_RRDTQSIF=parsenoop;var parse_OleDbConn=parsenoop;var parse_WOpt=parsenoop;var parse_SXViewEx=parsenoop;var parse_SXTH=parsenoop;var parse_SXPIEx=parsenoop;var parse_SXVDTEx=parsenoop;var parse_SXViewEx9=parsenoop;var parse_ContinueFrt=parsenoop;var parse_RealTimeData=parsenoop;var parse_ChartFrtInfo=parsenoop;var parse_FrtWrapper=parsenoop;var parse_StartBlock=parsenoop;var parse_EndBlock=parsenoop;var parse_StartObject=parsenoop;var parse_EndObject=parsenoop;var parse_CatLab=parsenoop;var parse_YMult=parsenoop;var parse_SXViewLink=parsenoop;var parse_PivotChartBits=parsenoop;var parse_FrtFontList=parsenoop;var parse_SheetExt=parsenoop;var parse_BookExt=parsenoop;var parse_SXAddl=parsenoop;var parse_CrErr=parsenoop;var parse_HFPicture=parsenoop;var parse_Feat=parsenoop;var parse_DataLabExt=parsenoop;var parse_DataLabExtContents=parsenoop;var parse_CellWatch=parsenoop;var parse_FeatHdr11=parsenoop;var parse_Feature11=parsenoop;var parse_DropDownObjIds=parsenoop;var parse_ContinueFrt11=parsenoop;var parse_DConn=parsenoop;var parse_List12=parsenoop;var parse_Feature12=parsenoop;var parse_CondFmt12=parsenoop;var parse_CF12=parsenoop;var parse_CFEx=parsenoop;var parse_AutoFilter12=parsenoop;var parse_ContinueFrt12=parsenoop;var parse_MDTInfo=parsenoop;var parse_MDXStr=parsenoop;var parse_MDXTuple=parsenoop;var parse_MDXSet=parsenoop;var parse_MDXProp=parsenoop;var parse_MDXKPI=parsenoop;var parse_MDB=parsenoop;var parse_PLV=parsenoop;var parse_DXF=parsenoop;var parse_TableStyles=parsenoop;var parse_TableStyle=parsenoop;var parse_TableStyleElement=parsenoop;var parse_NamePublish=parsenoop;var parse_NameCmt=parsenoop;var parse_SortData=parsenoop;var parse_GUIDTypeLib=parsenoop;var parse_FnGrp12=parsenoop;var parse_NameFnGrp12=parsenoop;var parse_HeaderFooter=parsenoop;var parse_CrtLayout12=parsenoop;var parse_CrtMlFrt=parsenoop;var parse_CrtMlFrtContinue=parsenoop;var parse_ShapePropsStream=parsenoop;var parse_TextPropsStream=parsenoop;var parse_RichTextStream=parsenoop;var parse_CrtLayout12A=parsenoop;var parse_Units=parsenoop;var parse_Chart=parsenoop;var parse_Series=parsenoop;var parse_DataFormat=parsenoop;var parse_LineFormat=parsenoop;var parse_MarkerFormat=parsenoop;var parse_AreaFormat=parsenoop;var parse_PieFormat=parsenoop;var parse_AttachedLabel=parsenoop;var parse_SeriesText=parsenoop;var parse_ChartFormat=parsenoop;var parse_Legend=parsenoop;var parse_SeriesList=parsenoop;var parse_Bar=parsenoop;var parse_Line=parsenoop;var parse_Pie=parsenoop;var parse_Area=parsenoop;var parse_Scatter=parsenoop;var parse_CrtLine=parsenoop;var parse_Axis=parsenoop;var parse_Tick=parsenoop;var parse_ValueRange=parsenoop;var parse_CatSerRange=parsenoop;var parse_AxisLine=parsenoop;var parse_CrtLink=parsenoop;var parse_DefaultText=parsenoop;var parse_Text=parsenoop;var parse_ObjectLink=parsenoop;var parse_Frame=parsenoop;var parse_Begin=parsenoop;var parse_End=parsenoop;var parse_PlotArea=parsenoop;var parse_Chart3d=parsenoop;var parse_PicF=parsenoop;var parse_DropBar=parsenoop;var parse_Radar=parsenoop;var parse_Surf=parsenoop;var parse_RadarArea=parsenoop;var parse_AxisParent=parsenoop;var parse_LegendException=parsenoop;var parse_ShtProps=parsenoop;var parse_SerToCrt=parsenoop;var parse_AxesUsed=parsenoop;var parse_SBaseRef=parsenoop;var parse_SerParent=parsenoop;var parse_SerAuxTrend=parsenoop;var parse_IFmtRecord=parsenoop;var parse_Pos=parsenoop;var parse_AlRuns=parsenoop;var parse_BRAI=parsenoop;var parse_SerAuxErrBar=parsenoop;var parse_SerFmt=parsenoop;var parse_Chart3DBarShape=parsenoop;var parse_Fbi=parsenoop;var parse_BopPop=parsenoop;var parse_AxcExt=parsenoop;var parse_Dat=parsenoop;var parse_PlotGrowth=parsenoop;var parse_SIIndex=parsenoop;var parse_GelFrame=parsenoop;var parse_BopPopCustom=parsenoop;var parse_Fbi2=parsenoop;function parse_BIFF5String(blob){var len=blob.read_shift(1);return blob.read_shift(len,"sbcs-cont")}function parse_BIFF2STR(blob,length,opts){var cell=parse_XLSCell(blob,6);++blob.l;var str=parse_XLUnicodeString2(blob,length-7,opts);cell.val=str;return cell}function parse_BIFF2NUM(blob,length,opts){var cell=parse_XLSCell(blob,6);++blob.l;var num=parse_Xnum(blob,8);cell.val=num;return cell}var CS2CP={0:1252,1:65001,2:65001,77:1e4,128:932,129:949,130:1361,134:936,136:950,161:1253,162:1254,163:1258,177:1255,178:1256,186:1257,204:1251,222:874,238:1250,255:1252,69:6969};var parse_rs=function parse_rs_factory(){var tregex=matchtag("t"),rpregex=matchtag("rPr"),rregex=/<r>/g,rend=/<\/r>/,nlregex=/\r\n/g;var parse_rpr=function parse_rpr(rpr,intro,outro){var font={},cp=65001;var m=rpr.match(tagregex),i=0;if(m)for(;i!=m.length;++i){var y=parsexmltag(m[i]);switch(y[0]){case"<condense":break;case"<extend":break;case"<shadow":case"<shadow/>":break;case"<charset":if(y.val=="1")break;cp=CS2CP[parseInt(y.val,10)];break;case"<outline":case"<outline/>":break;case"<rFont":font.name=y.val;break;case"<sz":font.sz=y.val;break;case"<strike":if(!y.val)break;case"<strike/>":font.strike=1;break;case"</strike>":break;case"<u":if(!y.val)break;case"<u/>":font.u=1;break;case"</u>":break;case"<b":if(!y.val)break;case"<b/>":font.b=1;break;case"</b>":break;case"<i":if(!y.val)break;case"<i/>":font.i=1;break;case"</i>":break;case"<color":if(y.rgb)font.color=y.rgb.substr(2,6);break;case"<family":font.family=y.val;break;case"<vertAlign":break;case"<scheme":break;default:if(y[0].charCodeAt(1)!==47)throw"Unrecognized rich format "+y[0]}}var style=[];if(font.b)style.push("font-weight: bold;");if(font.i)style.push("font-style: italic;");intro.push('<span style="'+style.join("")+'">');outro.push("</span>");return cp};function parse_r(r){var terms=[[],"",[]];var t=r.match(tregex),cp=65001;if(!isval(t))return"";terms[1]=t[1];var rpr=r.match(rpregex);if(isval(rpr))cp=parse_rpr(rpr[1],terms[0],terms[2]);return terms[0].join("")+terms[1].replace(nlregex,"<br/>")+terms[2].join("")}return function parse_rs(rs){return rs.replace(rregex,"").split(rend).map(parse_r).join("")}}();var sitregex=/<t[^>]*>([^<]*)<\/t>/g,sirregex=/<r>/;function parse_si(x,opts){var html=opts?opts.cellHTML:true;var z={};if(!x)return null;var y;if(x.charCodeAt(1)===116){z.t=utf8read(unescapexml(x.substr(x.indexOf(">")+1).split(/<\/t>/)[0]));z.r=x;if(html)z.h=z.t}else if(y=x.match(sirregex)){z.r=x;z.t=utf8read(unescapexml(x.match(sitregex).join("").replace(tagregex,"")));if(html)z.h=parse_rs(x)}return z}var sstr0=/<sst([^>]*)>([\s\S]*)<\/sst>/;var sstr1=/<(?:si|sstItem)>/g;var sstr2=/<\/(?:si|sstItem)>/;function parse_sst_xml(data,opts){var s=[],ss;var sst=data.match(sstr0);if(isval(sst)){ss=sst[2].replace(sstr1,"").split(sstr2);for(var i=0;i!=ss.length;++i){var o=parse_si(ss[i],opts);if(o!=null)s[s.length]=o}sst=parsexmltag(sst[1]);s.Count=sst.count;s.Unique=sst.uniqueCount}return s}RELS.SST="http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings";var straywsregex=/^\s|\s$|[\t\n\r]/;function write_sst_xml(sst,opts){if(!opts.bookSST)return"";var o=[XML_HEADER];o[o.length]=writextag("sst",null,{xmlns:XMLNS.main[0],count:sst.Count,uniqueCount:sst.Unique});for(var i=0;i!=sst.length;++i){if(sst[i]==null)continue;var s=sst[i];var sitag="<si>";if(s.r)sitag+=s.r;else{sitag+="<t";if(s.t.match(straywsregex))sitag+=' xml:space="preserve"';sitag+=">"+escapexml(s.t)+"</t>"}sitag+="</si>";o[o.length]=sitag}if(o.length>2){o[o.length]="</sst>";o[1]=o[1].replace("/>",">")}return o.join("")}function parse_BrtBeginSst(data,length){return[data.read_shift(4),data.read_shift(4)]}function parse_sst_bin(data,opts){var s=[];var pass=false;recordhopper(data,function hopper_sst(val,R,RT){switch(R.n){case"BrtBeginSst":s.Count=val[0];s.Unique=val[1];break;case"BrtSSTItem":s.push(val);break;case"BrtEndSst":return true;case"BrtFRTBegin":pass=true;break;case"BrtFRTEnd":pass=false;break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+RT+" "+R.n)}});return s}function write_BrtBeginSst(sst,o){if(!o)o=new_buf(8);o.write_shift(4,sst.Count);o.write_shift(4,sst.Unique);return o}var write_BrtSSTItem=write_RichStr;function write_sst_bin(sst,opts){var ba=buf_array();write_record(ba,"BrtBeginSst",write_BrtBeginSst(sst));for(var i=0;i<sst.length;++i)write_record(ba,"BrtSSTItem",write_BrtSSTItem(sst[i]));write_record(ba,"BrtEndSst");return ba.end()}function _JS2ANSI(str){if(typeof cptable!=="undefined")return cptable.utils.encode(1252,str);return str.split("").map(function(x){return x.charCodeAt(0)})}function parse_Version(blob,length){var o={};o.Major=blob.read_shift(2);o.Minor=blob.read_shift(2);return o}function parse_EncryptionHeader(blob,length){var o={};o.Flags=blob.read_shift(4);var tmp=blob.read_shift(4);if(tmp!==0)throw"Unrecognized SizeExtra: "+tmp;o.AlgID=blob.read_shift(4);switch(o.AlgID){case 0:case 26625:case 26126:case 26127:case 26128:break;default:throw"Unrecognized encryption algorithm: "+o.AlgID}parsenoop(blob,length-12);return o}function parse_EncryptionVerifier(blob,length){return parsenoop(blob,length)}function parse_RC4CryptoHeader(blob,length){var o={};var vers=o.EncryptionVersionInfo=parse_Version(blob,4);length-=4;if(vers.Minor!=2)throw"unrecognized minor version code: "+vers.Minor;if(vers.Major>4||vers.Major<2)throw"unrecognized major version code: "+vers.Major;o.Flags=blob.read_shift(4);length-=4;var sz=blob.read_shift(4);length-=4;o.EncryptionHeader=parse_EncryptionHeader(blob,sz);length-=sz;o.EncryptionVerifier=parse_EncryptionVerifier(blob,length);return o}function parse_RC4Header(blob,length){var o={};var vers=o.EncryptionVersionInfo=parse_Version(blob,4);length-=4;if(vers.Major!=1||vers.Minor!=1)throw"unrecognized version code "+vers.Major+" : "+vers.Minor;o.Salt=blob.read_shift(16);o.EncryptedVerifier=blob.read_shift(16);o.EncryptedVerifierHash=blob.read_shift(16);return o}function crypto_CreatePasswordVerifier_Method1(Password){var Verifier=0,PasswordArray;var PasswordDecoded=_JS2ANSI(Password);var len=PasswordDecoded.length+1,i,PasswordByte;var Intermediate1,Intermediate2,Intermediate3;PasswordArray=new_raw_buf(len);PasswordArray[0]=PasswordDecoded.length;for(i=1;i!=len;++i)PasswordArray[i]=PasswordDecoded[i-1];for(i=len-1;i>=0;--i){PasswordByte=PasswordArray[i];Intermediate1=(Verifier&16384)===0?0:1;Intermediate2=Verifier<<1&32767;Intermediate3=Intermediate1|Intermediate2;Verifier=Intermediate3^PasswordByte}return Verifier^52811}var crypto_CreateXorArray_Method1=function(){var PadArray=[187,255,255,186,255,255,185,128,0,190,15,0,191,15,0];var InitialCode=[57840,7439,52380,33984,4364,3600,61902,12606,6258,57657,54287,34041,10252,43370,20163];var XorMatrix=[44796,19929,39858,10053,20106,40212,10761,31585,63170,64933,60267,50935,40399,11199,17763,35526,1453,2906,5812,11624,23248,885,1770,3540,7080,14160,28320,56640,55369,41139,20807,41614,21821,43642,17621,28485,56970,44341,19019,38038,14605,29210,60195,50791,40175,10751,21502,43004,24537,18387,36774,3949,7898,15796,31592,63184,47201,24803,49606,37805,14203,28406,56812,17824,35648,1697,3394,6788,13576,27152,43601,17539,35078,557,1114,2228,4456,30388,60776,51953,34243,7079,14158,28316,14128,28256,56512,43425,17251,34502,7597,13105,26210,52420,35241,883,1766,3532,4129,8258,16516,33032,4657,9314,18628];
var Ror=function(Byte){return(Byte/2|Byte*128)&255};var XorRor=function(byte1,byte2){return Ror(byte1^byte2)};var CreateXorKey_Method1=function(Password){var XorKey=InitialCode[Password.length-1];var CurrentElement=104;for(var i=Password.length-1;i>=0;--i){var Char=Password[i];for(var j=0;j!=7;++j){if(Char&64)XorKey^=XorMatrix[CurrentElement];Char*=2;--CurrentElement}}return XorKey};return function(password){var Password=_JS2ANSI(password);var XorKey=CreateXorKey_Method1(Password);var Index=Password.length;var ObfuscationArray=new_raw_buf(16);for(var i=0;i!=16;++i)ObfuscationArray[i]=0;var Temp,PasswordLastChar,PadIndex;if((Index&1)===1){Temp=XorKey>>8;ObfuscationArray[Index]=XorRor(PadArray[0],Temp);--Index;Temp=XorKey&255;PasswordLastChar=Password[Password.length-1];ObfuscationArray[Index]=XorRor(PasswordLastChar,Temp)}while(Index>0){--Index;Temp=XorKey>>8;ObfuscationArray[Index]=XorRor(Password[Index],Temp);--Index;Temp=XorKey&255;ObfuscationArray[Index]=XorRor(Password[Index],Temp)}Index=15;PadIndex=15-Password.length;while(PadIndex>0){Temp=XorKey>>8;ObfuscationArray[Index]=XorRor(PadArray[PadIndex],Temp);--Index;--PadIndex;Temp=XorKey&255;ObfuscationArray[Index]=XorRor(Password[Index],Temp);--Index;--PadIndex}return ObfuscationArray}}();var crypto_DecryptData_Method1=function(password,Data,XorArrayIndex,XorArray,O){if(!O)O=Data;if(!XorArray)XorArray=crypto_CreateXorArray_Method1(password);var Index,Value;for(Index=0;Index!=Data.length;++Index){Value=Data[Index];Value^=XorArray[XorArrayIndex];Value=(Value>>5|Value<<3)&255;O[Index]=Value;++XorArrayIndex}return[O,XorArrayIndex,XorArray]};var crypto_MakeXorDecryptor=function(password){var XorArrayIndex=0,XorArray=crypto_CreateXorArray_Method1(password);return function(Data){var O=crypto_DecryptData_Method1(null,Data,XorArrayIndex,XorArray);XorArrayIndex=O[1];return O[0]}};function parse_XORObfuscation(blob,length,opts,out){var o={key:parseuint16(blob),verificationBytes:parseuint16(blob)};if(opts.password)o.verifier=crypto_CreatePasswordVerifier_Method1(opts.password);out.valid=o.verificationBytes===o.verifier;if(out.valid)out.insitu_decrypt=crypto_MakeXorDecryptor(opts.password);return o}function parse_FilePassHeader(blob,length,oo){var o=oo||{};o.Info=blob.read_shift(2);blob.l-=2;if(o.Info===1)o.Data=parse_RC4Header(blob,length);else o.Data=parse_RC4CryptoHeader(blob,length);return o}function parse_FilePass(blob,length,opts){var o={Type:blob.read_shift(2)};if(o.Type)parse_FilePassHeader(blob,length-2,o);else parse_XORObfuscation(blob,length-2,opts,o);return o}function hex2RGB(h){var o=h.substr(h[0]==="#"?1:0,6);return[parseInt(o.substr(0,2),16),parseInt(o.substr(2,2),16),parseInt(o.substr(4,2),16)]}function rgb2Hex(rgb){for(var i=0,o=1;i!=3;++i)o=o*256+(rgb[i]>255?255:rgb[i]<0?0:rgb[i]);return o.toString(16).toUpperCase().substr(1)}function rgb2HSL(rgb){var R=rgb[0]/255,G=rgb[1]/255,B=rgb[2]/255;var M=Math.max(R,G,B),m=Math.min(R,G,B),C=M-m;if(C===0)return[0,0,R];var H6=0,S=0,L2=M+m;S=C/(L2>1?2-L2:L2);switch(M){case R:H6=((G-B)/C+6)%6;break;case G:H6=(B-R)/C+2;break;case B:H6=(R-G)/C+4;break}return[H6/6,S,L2/2]}function hsl2RGB(hsl){var H=hsl[0],S=hsl[1],L=hsl[2];var C=S*2*(L<.5?L:1-L),m=L-C/2;var rgb=[m,m,m],h6=6*H;var X;if(S!==0)switch(h6|0){case 0:case 6:X=C*h6;rgb[0]+=C;rgb[1]+=X;break;case 1:X=C*(2-h6);rgb[0]+=X;rgb[1]+=C;break;case 2:X=C*(h6-2);rgb[1]+=C;rgb[2]+=X;break;case 3:X=C*(4-h6);rgb[1]+=X;rgb[2]+=C;break;case 4:X=C*(h6-4);rgb[2]+=C;rgb[0]+=X;break;case 5:X=C*(6-h6);rgb[2]+=X;rgb[0]+=C;break}for(var i=0;i!=3;++i)rgb[i]=Math.round(rgb[i]*255);return rgb}function rgb_tint(hex,tint){if(tint==0)return hex;var hsl=rgb2HSL(hex2RGB(hex));if(tint<0)hsl[2]=hsl[2]*(1+tint);else hsl[2]=1-(1-hsl[2])*(1-tint);var rev=rgb2Hex(hsl2RGB(hsl));return rev}var DEF_MDW=7,MAX_MDW=15,MIN_MDW=1,MDW=DEF_MDW;function width2px(width){return(width+(128/MDW|0)/256)*MDW|0}function px2char(px){return((px-5)/MDW*100+.5|0)/100}function char2width(chr){return((chr*MDW+5)/MDW*256|0)/256}function cycle_width(collw){return char2width(px2char(width2px(collw)))}function find_mdw(collw,coll){if(cycle_width(collw)!=collw){for(MDW=DEF_MDW;MDW>MIN_MDW;--MDW)if(cycle_width(collw)===collw)break;if(MDW===MIN_MDW)for(MDW=DEF_MDW+1;MDW<MAX_MDW;++MDW)if(cycle_width(collw)===collw)break;if(MDW===MAX_MDW)MDW=DEF_MDW}}var XLMLPatternTypeMap={None:"none",Solid:"solid",Gray50:"mediumGray",Gray75:"darkGray",Gray25:"lightGray",HorzStripe:"darkHorizontal",VertStripe:"darkVertical",ReverseDiagStripe:"darkDown",DiagStripe:"darkUp",DiagCross:"darkGrid",ThickDiagCross:"darkTrellis",ThinHorzStripe:"lightHorizontal",ThinVertStripe:"lightVertical",ThinReverseDiagStripe:"lightDown",ThinHorzCross:"lightGrid"};var styles={};var themes={};function parse_fills(t,opts){styles.Fills=[];var fill={};t[0].match(tagregex).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<fills":case"<fills>":case"</fills>":break;case"<fill>":break;case"</fill>":styles.Fills.push(fill);fill={};break;case"<patternFill":if(y.patternType)fill.patternType=y.patternType;break;case"<patternFill/>":case"</patternFill>":break;case"<bgColor":if(!fill.bgColor)fill.bgColor={};if(y.indexed)fill.bgColor.indexed=parseInt(y.indexed,10);if(y.theme)fill.bgColor.theme=parseInt(y.theme,10);if(y.tint)fill.bgColor.tint=parseFloat(y.tint);if(y.theme&&themes.themeElements&&themes.themeElements.clrScheme){fill.bgColor.rgb=rgb_tint(themes.themeElements.clrScheme[fill.bgColor.theme].rgb,fill.bgColor.tint||0);if(opts.WTF)fill.bgColor.raw_rgb=rgb_tint(themes.themeElements.clrScheme[fill.bgColor.theme].rgb,0)}if(y.rgb)fill.bgColor.rgb=y.rgb;break;case"<bgColor/>":case"</bgColor>":break;case"<fgColor":if(!fill.fgColor)fill.fgColor={};if(y.theme)fill.fgColor.theme=parseInt(y.theme,10);if(y.tint)fill.fgColor.tint=parseFloat(y.tint);if(y.theme&&themes.themeElements&&themes.themeElements.clrScheme){fill.fgColor.rgb=rgb_tint(themes.themeElements.clrScheme[fill.fgColor.theme].rgb,fill.fgColor.tint||0);if(opts.WTF)fill.fgColor.raw_rgb=rgb_tint(themes.themeElements.clrScheme[fill.fgColor.theme].rgb,0)}if(y.rgb)fill.fgColor.rgb=y.rgb;break;case"<fgColor/>":case"</fgColor>":break;default:if(opts.WTF)throw"unrecognized "+y[0]+" in fills"}})}function parse_fonts(t,opts){styles.Fonts=[];var font={};t[0].match(tagregex).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<fonts":case"<fonts>":case"</fonts>":break;case"<font":break;case"</font>":styles.Fonts.push(font);font={};break;case"<name":if(y.val)font.name=y.val;break;case"<name/>":case"</name>":break;case"<b/>":font.bold=true;break;case"<u/>":font.underline=true;break;case"<i/>":font.italic=true;break;case"<strike/>":font.strike=true;break;case"<outline/>":font.outline=true;break;case"<shadow/>":font.shadow=true;break;case"<sz":if(y.val)font.sz=y.val;break;case"<sz/>":case"</sz>":break;case"<vertAlign":if(y.val)font.vertAlign=y.val;break;case"<vertAlign/>":case"</vertAlign>":break;case"<color":if(!font.color)font.color={};if(y.theme)font.color.theme=y.theme;if(y.tint)font.color.tint=y.tint;if(y.theme&&themes.themeElements&&themes.themeElements.clrScheme){font.color.rgb=rgb_tint(themes.themeElements.clrScheme[font.color.theme].rgb,font.color.tint||0)}if(y.rgb)font.color.rgb=y.rgb;break;case"<color/>":case"</color>":break}})}function parse_borders(t,opts){styles.Borders=[];var border={},sub_border={};t[0].match(tagregex).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<borders":case"<borders>":case"</borders>":break;case"<border":case"<border>":border={};if(y.diagonalUp){border.diagonalUp=y.diagonalUp}if(y.diagonalDown){border.diagonalDown=y.diagonalDown}styles.Borders.push(border);break;break;case"</border>":break;case"<left":sub_border=border.left={};if(y.style){sub_border.style=y.style}break;case"<right":sub_border=border.right={};if(y.style){sub_border.style=y.style}break;case"<top":sub_border=border.top={};if(y.style){sub_border.style=y.style}break;case"<bottom":sub_border=border.bottom={};if(y.style){sub_border.style=y.style}break;case"<diagonal":sub_border=border.diagonal={};if(y.style){sub_border.style=y.style}break;case"<color":sub_border.color={};if(y.theme)sub_border.color.theme=y.theme;if(y.theme&&themes.themeElements&&themes.themeElements.clrScheme){sub_border.color.rgb=rgb_tint(themes.themeElements.clrScheme[sub_border.color.theme].rgb,sub_border.color.tint||0)}if(y.tint)sub_border.color.tint=y.tint;if(y.rgb)sub_border.color.rgb=y.rgb;if(y.auto)sub_border.color.auto=y.auto;break;case"<name/>":case"</name>":break;default:break}})}function parse_numFmts(t,opts){styles.NumberFmt=[];var k=keys(SSF._table);for(var i=0;i<k.length;++i)styles.NumberFmt[k[i]]=SSF._table[k[i]];var m=t[0].match(tagregex);for(i=0;i<m.length;++i){var y=parsexmltag(m[i]);switch(y[0]){case"<numFmts":case"</numFmts>":case"<numFmts/>":case"<numFmts>":break;case"<numFmt":{var f=unescapexml(utf8read(y.formatCode)),j=parseInt(y.numFmtId,10);styles.NumberFmt[j]=f;if(j>0)SSF.load(f,j)}break;default:if(opts.WTF)throw"unrecognized "+y[0]+" in numFmts"}}}function write_numFmts(NF,opts){var o=["<numFmts>"];[[5,8],[23,26],[41,44],[63,66],[164,392]].forEach(function(r){for(var i=r[0];i<=r[1];++i)if(NF[i]!==undefined)o[o.length]=writextag("numFmt",null,{numFmtId:i,formatCode:escapexml(NF[i])})});if(o.length===1)return"";o[o.length]="</numFmts>";o[0]=writextag("numFmts",null,{count:o.length-2}).replace("/>",">");return o.join("")}function parse_cellXfs(t,opts){styles.CellXf=[];var xf;t[0].match(tagregex).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<cellXfs":case"<cellXfs>":case"<cellXfs/>":case"</cellXfs>":break;case"<xf":xf=y;delete xf[0];delete y[0];if(xf.numFmtId)xf.numFmtId=parseInt(xf.numFmtId,10);if(xf.fillId)xf.fillId=parseInt(xf.fillId,10);styles.CellXf.push(xf);break;case"</xf>":break;case"<alignment":case"<alignment/>":var alignment={};if(y.vertical){alignment.vertical=y.vertical}if(y.horizontal){alignment.horizontal=y.horizontal}if(y.textRotation!=undefined){alignment.textRotation=y.textRotation}if(y.indent){alignment.indent=y.indent}if(y.wrapText){alignment.wrapText=y.wrapText}xf.alignment=alignment;break;case"<protection":case"</protection>":case"<protection/>":break;case"<extLst":case"</extLst>":break;case"<ext":break;default:if(opts.WTF)throw"unrecognized "+y[0]+" in cellXfs"}})}function write_cellXfs(cellXfs){var o=[];o[o.length]=writextag("cellXfs",null);cellXfs.forEach(function(c){o[o.length]=writextag("xf",null,c)});o[o.length]="</cellXfs>";if(o.length===2)return"";o[0]=writextag("cellXfs",null,{count:o.length-2}).replace("/>",">");return o.join("")}var parse_sty_xml=function make_pstyx(){var numFmtRegex=/<numFmts([^>]*)>.*<\/numFmts>/;var cellXfRegex=/<cellXfs([^>]*)>.*<\/cellXfs>/;var fillsRegex=/<fills([^>]*)>.*<\/fills>/;var bordersRegex=/<borders([^>]*)>.*<\/borders>/;return function parse_sty_xml(data,opts){var t;if(t=data.match(numFmtRegex))parse_numFmts(t,opts);if(t=data.match(/<fonts([^>]*)>.*<\/fonts>/))parse_fonts(t,opts);if(t=data.match(fillsRegex))parse_fills(t,opts);if(t=data.match(bordersRegex))parse_borders(t,opts);if(t=data.match(cellXfRegex))parse_cellXfs(t,opts);return styles}}();var STYLES_XML_ROOT=writextag("styleSheet",null,{xmlns:XMLNS.main[0],"xmlns:vt":XMLNS.vt});RELS.STY="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles";function write_sty_xml(wb,opts){if(typeof style_builder!="undefined"&&typeof"require"!="undefined"){return style_builder.toXml()}var o=[XML_HEADER,STYLES_XML_ROOT],w;if((w=write_numFmts(wb.SSF))!=null)o[o.length]=w;o[o.length]='<fonts count="1"><font><sz val="12"/><color theme="1"/><name val="Calibri"/><family val="2"/><scheme val="minor"/></font></fonts>';o[o.length]='<fills count="2"><fill><patternFill patternType="none"/></fill><fill><patternFill patternType="gray125"/></fill></fills>';o[o.length]='<borders count="1"><border><left/><right/><top/><bottom/><diagonal/></border></borders>';o[o.length]='<cellStyleXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0"/></cellStyleXfs>';if(w=write_cellXfs(opts.cellXfs))o[o.length]=w;o[o.length]='<cellStyles count="1"><cellStyle name="Normal" xfId="0" builtinId="0"/></cellStyles>';o[o.length]='<dxfs count="0"/>';o[o.length]='<tableStyles count="0" defaultTableStyle="TableStyleMedium9" defaultPivotStyle="PivotStyleMedium4"/>';if(o.length>2){o[o.length]="</styleSheet>";o[1]=o[1].replace("/>",">")}return o.join("")}function parse_BrtFmt(data,length){var ifmt=data.read_shift(2);var stFmtCode=parse_XLWideString(data,length-2);return[ifmt,stFmtCode]}function parse_BrtFont(data,length){var out={flags:{}};out.dyHeight=data.read_shift(2);out.grbit=parse_FontFlags(data,2);out.bls=data.read_shift(2);out.sss=data.read_shift(2);out.uls=data.read_shift(1);out.bFamily=data.read_shift(1);out.bCharSet=data.read_shift(1);data.l++;out.brtColor=parse_BrtColor(data,8);out.bFontScheme=data.read_shift(1);out.name=parse_XLWideString(data,length-21);out.flags.Bold=out.bls===700;out.flags.Italic=out.grbit.fItalic;out.flags.Strikeout=out.grbit.fStrikeout;out.flags.Outline=out.grbit.fOutline;out.flags.Shadow=out.grbit.fShadow;out.flags.Condense=out.grbit.fCondense;out.flags.Extend=out.grbit.fExtend;out.flags.Sub=out.sss&2;out.flags.Sup=out.sss&1;return out}function parse_BrtXF(data,length){var ixfeParent=data.read_shift(2);var ifmt=data.read_shift(2);parsenoop(data,length-4);return{ixfe:ixfeParent,ifmt:ifmt}}function parse_sty_bin(data,opts){styles.NumberFmt=[];for(var y in SSF._table)styles.NumberFmt[y]=SSF._table[y];styles.CellXf=[];var state="";var pass=false;recordhopper(data,function hopper_sty(val,R,RT){switch(R.n){case"BrtFmt":styles.NumberFmt[val[0]]=val[1];SSF.load(val[1],val[0]);break;case"BrtFont":break;case"BrtKnownFonts":break;case"BrtFill":break;case"BrtBorder":break;case"BrtXF":if(state==="CELLXFS"){styles.CellXf.push(val)}break;case"BrtStyle":break;case"BrtDXF":break;case"BrtMRUColor":break;case"BrtIndexedColor":break;case"BrtBeginStyleSheet":break;case"BrtEndStyleSheet":break;case"BrtBeginTableStyle":break;case"BrtTableStyleElement":break;case"BrtEndTableStyle":break;case"BrtBeginFmts":state="FMTS";break;case"BrtEndFmts":state="";break;case"BrtBeginFonts":state="FONTS";break;case"BrtEndFonts":state="";break;case"BrtACBegin":state="ACFONTS";break;case"BrtACEnd":state="";break;case"BrtBeginFills":state="FILLS";break;case"BrtEndFills":state="";break;case"BrtBeginBorders":state="BORDERS";break;case"BrtEndBorders":state="";break;case"BrtBeginCellStyleXFs":state="CELLSTYLEXFS";break;case"BrtEndCellStyleXFs":state="";break;case"BrtBeginCellXFs":state="CELLXFS";break;case"BrtEndCellXFs":state="";break;case"BrtBeginStyles":state="STYLES";break;case"BrtEndStyles":state="";break;case"BrtBeginDXFs":state="DXFS";break;case"BrtEndDXFs":state="";break;case"BrtBeginTableStyles":state="TABLESTYLES";break;case"BrtEndTableStyles":state="";break;case"BrtBeginColorPalette":state="COLORPALETTE";break;case"BrtEndColorPalette":state="";break;case"BrtBeginIndexedColors":state="INDEXEDCOLORS";break;case"BrtEndIndexedColors":state="";break;case"BrtBeginMRUColors":state="MRUCOLORS";break;case"BrtEndMRUColors":state="";break;case"BrtFRTBegin":pass=true;break;case"BrtFRTEnd":pass=false;break;case"BrtBeginStyleSheetExt14":break;case"BrtBeginSlicerStyles":break;case"BrtEndSlicerStyles":break;case"BrtBeginTimelineStylesheetExt15":break;case"BrtEndTimelineStylesheetExt15":break;case"BrtBeginTimelineStyles":break;case"BrtEndTimelineStyles":break;case"BrtEndStyleSheetExt14":break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+RT+" "+R.n)}});return styles}function write_sty_bin(data,opts){var ba=buf_array();write_record(ba,"BrtBeginStyleSheet");write_record(ba,"BrtEndStyleSheet");return ba.end()}RELS.THEME="http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme";function parse_clrScheme(t,opts){themes.themeElements.clrScheme=[];var color={};t[0].match(tagregex).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<a:clrScheme":case"</a:clrScheme>":break;case"<a:srgbClr":color.rgb=y.val;break;case"<a:sysClr":color.rgb=y.lastClr;break;case"<a:dk1>":case"</a:dk1>":case"<a:dk2>":case"</a:dk2>":case"<a:lt1>":case"</a:lt1>":case"<a:lt2>":case"</a:lt2>":case"<a:accent1>":case"</a:accent1>":case"<a:accent2>":case"</a:accent2>":case"<a:accent3>":case"</a:accent3>":case"<a:accent4>":case"</a:accent4>":case"<a:accent5>":case"</a:accent5>":case"<a:accent6>":case"</a:accent6>":case"<a:hlink>":case"</a:hlink>":case"<a:folHlink>":case"</a:folHlink>":if(y[0][1]==="/"){themes.themeElements.clrScheme.push(color);color={}}else{color.name=y[0].substring(3,y[0].length-1)}break;default:if(opts.WTF)throw"unrecognized "+y[0]+" in clrScheme"}})}function parse_fontScheme(t,opts){}function parse_fmtScheme(t,opts){}var clrsregex=/<a:clrScheme([^>]*)>[^\u2603]*<\/a:clrScheme>/;var fntsregex=/<a:fontScheme([^>]*)>[^\u2603]*<\/a:fontScheme>/;var fmtsregex=/<a:fmtScheme([^>]*)>[^\u2603]*<\/a:fmtScheme>/;function parse_themeElements(data,opts){themes.themeElements={};var t;[["clrScheme",clrsregex,parse_clrScheme],["fontScheme",fntsregex,parse_fontScheme],["fmtScheme",fmtsregex,parse_fmtScheme]].forEach(function(m){if(!(t=data.match(m[1])))throw m[0]+" not found in themeElements";m[2](t,opts)})}var themeltregex=/<a:themeElements([^>]*)>[^\u2603]*<\/a:themeElements>/;function parse_theme_xml(data,opts){if(!data||data.length===0)return themes;var t;if(!(t=data.match(themeltregex)))throw"themeElements not found in theme";parse_themeElements(t[0],opts);return themes}function write_theme(opts){if(opts.themeXml){return opts.themeXml}return'<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"><a:themeElements><a:clrScheme name="Office"><a:dk1><a:sysClr val="windowText" lastClr="000000"/></a:dk1><a:lt1><a:sysClr val="window" lastClr="FFFFFF"/></a:lt1><a:dk2><a:srgbClr val="1F497D"/></a:dk2><a:lt2><a:srgbClr val="EEECE1"/></a:lt2><a:accent1><a:srgbClr val="4F81BD"/></a:accent1><a:accent2><a:srgbClr val="C0504D"/></a:accent2><a:accent3><a:srgbClr val="9BBB59"/></a:accent3><a:accent4><a:srgbClr val="8064A2"/></a:accent4><a:accent5><a:srgbClr val="4BACC6"/></a:accent5><a:accent6><a:srgbClr val="F79646"/></a:accent6><a:hlink><a:srgbClr val="0000FF"/></a:hlink><a:folHlink><a:srgbClr val="800080"/></a:folHlink></a:clrScheme><a:fontScheme name="Office"><a:majorFont><a:latin typeface="Cambria"/><a:ea typeface=""/><a:cs typeface=""/><a:font script="Jpan" typeface="ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯"/><a:font script="Hang" typeface="맑은 ê³ ë”•"/><a:font script="Hans" typeface="宋体"/><a:font script="Hant" typeface="新細明體"/><a:font script="Arab" typeface="Times New Roman"/><a:font script="Hebr" typeface="Times New Roman"/><a:font script="Thai" typeface="Tahoma"/><a:font script="Ethi" typeface="Nyala"/><a:font script="Beng" typeface="Vrinda"/><a:font script="Gujr" typeface="Shruti"/><a:font script="Khmr" typeface="MoolBoran"/><a:font script="Knda" typeface="Tunga"/><a:font script="Guru" typeface="Raavi"/><a:font script="Cans" typeface="Euphemia"/><a:font script="Cher" typeface="Plantagenet Cherokee"/><a:font script="Yiii" typeface="Microsoft Yi Baiti"/><a:font script="Tibt" typeface="Microsoft Himalaya"/><a:font script="Thaa" typeface="MV Boli"/><a:font script="Deva" typeface="Mangal"/><a:font script="Telu" typeface="Gautami"/><a:font script="Taml" typeface="Latha"/><a:font script="Syrc" typeface="Estrangelo Edessa"/><a:font script="Orya" typeface="Kalinga"/><a:font script="Mlym" typeface="Kartika"/><a:font script="Laoo" typeface="DokChampa"/><a:font script="Sinh" typeface="Iskoola Pota"/><a:font script="Mong" typeface="Mongolian Baiti"/><a:font script="Viet" typeface="Times New Roman"/><a:font script="Uigh" typeface="Microsoft Uighur"/><a:font script="Geor" typeface="Sylfaen"/></a:majorFont><a:minorFont><a:latin typeface="Calibri"/><a:ea typeface=""/><a:cs typeface=""/><a:font script="Jpan" typeface="ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯"/><a:font script="Hang" typeface="맑은 ê³ ë”•"/><a:font script="Hans" typeface="宋体"/><a:font script="Hant" typeface="新細明體"/><a:font script="Arab" typeface="Arial"/><a:font script="Hebr" typeface="Arial"/><a:font script="Thai" typeface="Tahoma"/><a:font script="Ethi" typeface="Nyala"/><a:font script="Beng" typeface="Vrinda"/><a:font script="Gujr" typeface="Shruti"/><a:font script="Khmr" typeface="DaunPenh"/><a:font script="Knda" typeface="Tunga"/><a:font script="Guru" typeface="Raavi"/><a:font script="Cans" typeface="Euphemia"/><a:font script="Cher" typeface="Plantagenet Cherokee"/><a:font script="Yiii" typeface="Microsoft Yi Baiti"/><a:font script="Tibt" typeface="Microsoft Himalaya"/><a:font script="Thaa" typeface="MV Boli"/><a:font script="Deva" typeface="Mangal"/><a:font script="Telu" typeface="Gautami"/><a:font script="Taml" typeface="Latha"/><a:font script="Syrc" typeface="Estrangelo Edessa"/><a:font script="Orya" typeface="Kalinga"/><a:font script="Mlym" typeface="Kartika"/><a:font script="Laoo" typeface="DokChampa"/><a:font script="Sinh" typeface="Iskoola Pota"/><a:font script="Mong" typeface="Mongolian Baiti"/><a:font script="Viet" typeface="Arial"/><a:font script="Uigh" typeface="Microsoft Uighur"/><a:font script="Geor" typeface="Sylfaen"/></a:minorFont></a:fontScheme><a:fmtScheme name="Office"><a:fillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="50000"/><a:satMod val="300000"/></a:schemeClr></a:gs><a:gs pos="35000"><a:schemeClr val="phClr"><a:tint val="37000"/><a:satMod val="300000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="15000"/><a:satMod val="350000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="16200000" scaled="1"/></a:gradFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="100000"/><a:shade val="100000"/><a:satMod val="130000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="50000"/><a:shade val="100000"/><a:satMod val="350000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="16200000" scaled="0"/></a:gradFill></a:fillStyleLst><a:lnStyleLst><a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"><a:shade val="95000"/><a:satMod val="105000"/></a:schemeClr></a:solidFill><a:prstDash val="solid"/></a:ln><a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln><a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln></a:lnStyleLst><a:effectStyleLst><a:effectStyle><a:effectLst><a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="38000"/></a:srgbClr></a:outerShdw></a:effectLst></a:effectStyle><a:effectStyle><a:effectLst><a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw></a:effectLst></a:effectStyle><a:effectStyle><a:effectLst><a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw></a:effectLst><a:scene3d><a:camera prst="orthographicFront"><a:rot lat="0" lon="0" rev="0"/></a:camera><a:lightRig rig="threePt" dir="t"><a:rot lat="0" lon="0" rev="1200000"/></a:lightRig></a:scene3d><a:sp3d><a:bevelT w="63500" h="25400"/></a:sp3d></a:effectStyle></a:effectStyleLst><a:bgFillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="40000"/><a:satMod val="350000"/></a:schemeClr></a:gs><a:gs pos="40000"><a:schemeClr val="phClr"><a:tint val="45000"/><a:shade val="99000"/><a:satMod val="350000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="20000"/><a:satMod val="255000"/></a:schemeClr></a:gs></a:gsLst><a:path path="circle"><a:fillToRect l="50000" t="-80000" r="50000" b="180000"/></a:path></a:gradFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="80000"/><a:satMod val="300000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="30000"/><a:satMod val="200000"/></a:schemeClr></a:gs></a:gsLst><a:path path="circle"><a:fillToRect l="50000" t="50000" r="50000" b="50000"/></a:path></a:gradFill></a:bgFillStyleLst></a:fmtScheme></a:themeElements><a:objectDefaults><a:spDef><a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="1"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="3"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="2"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="lt1"/></a:fontRef></a:style></a:spDef><a:lnDef><a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="2"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="0"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="1"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="tx1"/></a:fontRef></a:style></a:lnDef></a:objectDefaults><a:extraClrSchemeLst/></a:theme>'}function parse_Theme(blob,length){var dwThemeVersion=blob.read_shift(4);if(dwThemeVersion===124226)return;blob.l+=length-4}function parse_ColorTheme(blob,length){return blob.read_shift(4)}function parse_FullColorExt(blob,length){var o={};o.xclrType=blob.read_shift(2);o.nTintShade=blob.read_shift(2);switch(o.xclrType){case 0:blob.l+=4;break;case 1:o.xclrValue=parse_IcvXF(blob,4);break;case 2:o.xclrValue=parse_LongRGBA(blob,4);break;case 3:o.xclrValue=parse_ColorTheme(blob,4);break;case 4:blob.l+=4;break}blob.l+=8;return o}function parse_IcvXF(blob,length){return parsenoop(blob,length)}function parse_XFExtGradient(blob,length){return parsenoop(blob,length)}function parse_ExtProp(blob,length){var extType=blob.read_shift(2);var cb=blob.read_shift(2);var o=[extType];switch(extType){case 4:case 5:case 7:case 8:case 9:case 10:case 11:case 13:o[1]=parse_FullColorExt(blob,cb);break;case 6:o[1]=parse_XFExtGradient(blob,cb);break;case 14:case 15:o[1]=blob.read_shift(cb===5?1:2);break;default:throw new Error("Unrecognized ExtProp type: "+extType+" "+cb)}return o}function parse_XFExt(blob,length){var end=blob.l+length;blob.l+=2;var ixfe=blob.read_shift(2);blob.l+=2;var cexts=blob.read_shift(2);var ext=[];while(cexts-- >0)ext.push(parse_ExtProp(blob,end-blob.l));return{ixfe:ixfe,ext:ext}}function update_xfext(xf,xfext){xfext.forEach(function(xfe){switch(xfe[0]){case 4:break;case 5:break;case 7:case 8:case 9:case 10:break;case 13:break;case 14:break;default:throw"bafuq"+xfe[0].toString(16)}})}function parse_cc_xml(data,opts){var d=[];var l=0,i=1;(data.match(tagregex)||[]).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<?xml":break;case"<calcChain":case"<calcChain>":case"</calcChain>":break;case"<c":delete y[0];if(y.i)i=y.i;else y.i=i;d.push(y);break}});return d}function write_cc_xml(data,opts){}function parse_BrtCalcChainItem$(data,length){var out={};out.i=data.read_shift(4);var cell={};cell.r=data.read_shift(4);cell.c=data.read_shift(4);out.r=encode_cell(cell);var flags=data.read_shift(1);if(flags&2)out.l="1";if(flags&8)out.a="1";return out}function parse_cc_bin(data,opts){var out=[];var pass=false;recordhopper(data,function hopper_cc(val,R,RT){switch(R.n){case"BrtCalcChainItem$":out.push(val);break;case"BrtBeginCalcChain$":break;case"BrtEndCalcChain$":break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+RT+" "+R.n)}});return out}function write_cc_bin(data,opts){}function parse_comments(zip,dirComments,sheets,sheetRels,opts){for(var i=0;i!=dirComments.length;++i){var canonicalpath=dirComments[i];var comments=parse_cmnt(getzipdata(zip,canonicalpath.replace(/^\//,""),true),canonicalpath,opts);if(!comments||!comments.length)continue;var sheetNames=keys(sheets);for(var j=0;j!=sheetNames.length;++j){var sheetName=sheetNames[j];var rels=sheetRels[sheetName];if(rels){var rel=rels[canonicalpath];if(rel)insertCommentsIntoSheet(sheetName,sheets[sheetName],comments)}}}}function insertCommentsIntoSheet(sheetName,sheet,comments){comments.forEach(function(comment){var cell=sheet[comment.ref];if(!cell){cell={};sheet[comment.ref]=cell;var range=safe_decode_range(sheet["!ref"]||"BDWGO1000001:A1");var thisCell=decode_cell(comment.ref);if(range.s.r>thisCell.r)range.s.r=thisCell.r;if(range.e.r<thisCell.r)range.e.r=thisCell.r;if(range.s.c>thisCell.c)range.s.c=thisCell.c;if(range.e.c<thisCell.c)range.e.c=thisCell.c;var encoded=encode_range(range);if(encoded!==sheet["!ref"])sheet["!ref"]=encoded}if(!cell.c)cell.c=[];var o={a:comment.author,t:comment.t,r:comment.r};if(comment.h)o.h=comment.h;cell.c.push(o)})}function parse_comments_xml(data,opts){if(data.match(/<(?:\w+:)?comments *\/>/))return[];var authors=[];var commentList=[];data.match(/<(?:\w+:)?authors>([^\u2603]*)<\/(?:\w+:)?authors>/)[1].split(/<\/\w*:?author>/).forEach(function(x){if(x===""||x.trim()==="")return;authors.push(x.match(/<(?:\w+:)?author[^>]*>(.*)/)[1])});(data.match(/<(?:\w+:)?commentList>([^\u2603]*)<\/(?:\w+:)?commentList>/)||["",""])[1].split(/<\/\w*:?comment>/).forEach(function(x,index){if(x===""||x.trim()==="")return;var y=parsexmltag(x.match(/<(?:\w+:)?comment[^>]*>/)[0]);var comment={author:y.authorId&&authors[y.authorId]?authors[y.authorId]:undefined,ref:y.ref,guid:y.guid};var cell=decode_cell(y.ref);if(opts.sheetRows&&opts.sheetRows<=cell.r)return;var textMatch=x.match(/<text>([^\u2603]*)<\/text>/);if(!textMatch||!textMatch[1])return;var rt=parse_si(textMatch[1]);comment.r=rt.r;comment.t=rt.t;if(opts.cellHTML)comment.h=rt.h;commentList.push(comment)});return commentList}function write_comments_xml(data,opts){}function parse_BrtBeginComment(data,length){var out={};out.iauthor=data.read_shift(4);var rfx=parse_UncheckedRfX(data,16);out.rfx=rfx.s;out.ref=encode_cell(rfx.s);data.l+=16;return out}var parse_BrtCommentAuthor=parse_XLWideString;var parse_BrtCommentText=parse_RichStr;function parse_comments_bin(data,opts){var out=[];var authors=[];var c={};var pass=false;recordhopper(data,function hopper_cmnt(val,R,RT){switch(R.n){case"BrtCommentAuthor":authors.push(val);break;case"BrtBeginComment":c=val;break;case"BrtCommentText":c.t=val.t;c.h=val.h;c.r=val.r;break;case"BrtEndComment":c.author=authors[c.iauthor];delete c.iauthor;if(opts.sheetRows&&opts.sheetRows<=c.rfx.r)break;delete c.rfx;out.push(c);break;case"BrtBeginComments":break;case"BrtEndComments":break;case"BrtBeginCommentAuthors":break;case"BrtEndCommentAuthors":break;case"BrtBeginCommentList":break;case"BrtEndCommentList":break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+RT+" "+R.n)}});return out}function write_comments_bin(data,opts){}var rc_to_a1=function(){var rcregex=/(^|[^A-Za-z])R(\[?)(-?\d+|)\]?C(\[?)(-?\d+|)\]?/g;var rcbase;function rcfunc($$,$1,$2,$3,$4,$5){var R=$3.length>0?parseInt($3,10)|0:0,C=$5.length>0?parseInt($5,10)|0:0;if(C<0&&$4.length===0)C=0;if($4.length>0)C+=rcbase.c;if($2.length>0)R+=rcbase.r;return $1+encode_col(C)+encode_row(R)}return function rc_to_a1(fstr,base){rcbase=base;return fstr.replace(rcregex,rcfunc)}}();function parseread(l){return function(blob,length){blob.l+=l;return}}function parseread1(blob,length){blob.l+=1;return}function parse_ColRelU(blob,length){var c=blob.read_shift(2);return[c&16383,c>>14&1,c>>15&1]}function parse_RgceArea(blob,length){var r=blob.read_shift(2),R=blob.read_shift(2);var c=parse_ColRelU(blob,2);var C=parse_ColRelU(blob,2);return{s:{r:r,c:c[0],cRel:c[1],rRel:c[2]},e:{r:R,c:C[0],cRel:C[1],rRel:C[2]}}}function parse_RgceAreaRel(blob,length){var r=blob.read_shift(2),R=blob.read_shift(2);var c=parse_ColRelU(blob,2);var C=parse_ColRelU(blob,2);return{s:{r:r,c:c[0],cRel:c[1],rRel:c[2]},e:{r:R,c:C[0],cRel:C[1],rRel:C[2]}}}function parse_RgceLoc(blob,length){var r=blob.read_shift(2);var c=parse_ColRelU(blob,2);return{r:r,c:c[0],cRel:c[1],rRel:c[2]}}function parse_RgceLocRel(blob,length){var r=blob.read_shift(2);var cl=blob.read_shift(2);
var cRel=(cl&32768)>>15,rRel=(cl&16384)>>14;cl&=16383;if(cRel!==0)while(cl>=256)cl-=256;return{r:r,c:cl,cRel:cRel,rRel:rRel}}function parse_PtgArea(blob,length){var type=(blob[blob.l++]&96)>>5;var area=parse_RgceArea(blob,8);return[type,area]}function parse_PtgArea3d(blob,length){var type=(blob[blob.l++]&96)>>5;var ixti=blob.read_shift(2);var area=parse_RgceArea(blob,8);return[type,ixti,area]}function parse_PtgAreaErr(blob,length){var type=(blob[blob.l++]&96)>>5;blob.l+=8;return[type]}function parse_PtgAreaErr3d(blob,length){var type=(blob[blob.l++]&96)>>5;var ixti=blob.read_shift(2);blob.l+=8;return[type,ixti]}function parse_PtgAreaN(blob,length){var type=(blob[blob.l++]&96)>>5;var area=parse_RgceAreaRel(blob,8);return[type,area]}function parse_PtgArray(blob,length){var type=(blob[blob.l++]&96)>>5;blob.l+=7;return[type]}function parse_PtgAttrBaxcel(blob,length){var bitSemi=blob[blob.l+1]&1;var bitBaxcel=1;blob.l+=4;return[bitSemi,bitBaxcel]}function parse_PtgAttrChoose(blob,length){blob.l+=2;var offset=blob.read_shift(2);var o=[];for(var i=0;i<=offset;++i)o.push(blob.read_shift(2));return o}function parse_PtgAttrGoto(blob,length){var bitGoto=blob[blob.l+1]&255?1:0;blob.l+=2;return[bitGoto,blob.read_shift(2)]}function parse_PtgAttrIf(blob,length){var bitIf=blob[blob.l+1]&255?1:0;blob.l+=2;return[bitIf,blob.read_shift(2)]}function parse_PtgAttrSemi(blob,length){var bitSemi=blob[blob.l+1]&255?1:0;blob.l+=4;return[bitSemi]}function parse_PtgAttrSpaceType(blob,length){var type=blob.read_shift(1),cch=blob.read_shift(1);return[type,cch]}function parse_PtgAttrSpace(blob,length){blob.read_shift(2);return parse_PtgAttrSpaceType(blob,2)}function parse_PtgAttrSpaceSemi(blob,length){blob.read_shift(2);return parse_PtgAttrSpaceType(blob,2)}function parse_PtgRef(blob,length){var ptg=blob[blob.l]&31;var type=(blob[blob.l]&96)>>5;blob.l+=1;var loc=parse_RgceLoc(blob,4);return[type,loc]}function parse_PtgRefN(blob,length){var ptg=blob[blob.l]&31;var type=(blob[blob.l]&96)>>5;blob.l+=1;var loc=parse_RgceLocRel(blob,4);return[type,loc]}function parse_PtgRef3d(blob,length){var ptg=blob[blob.l]&31;var type=(blob[blob.l]&96)>>5;blob.l+=1;var ixti=blob.read_shift(2);var loc=parse_RgceLoc(blob,4);return[type,ixti,loc]}function parse_PtgFunc(blob,length){var ptg=blob[blob.l]&31;var type=(blob[blob.l]&96)>>5;blob.l+=1;var iftab=blob.read_shift(2);return[FtabArgc[iftab],Ftab[iftab]]}function parse_PtgFuncVar(blob,length){blob.l++;var cparams=blob.read_shift(1),tab=parsetab(blob);return[cparams,(tab[0]===0?Ftab:Cetab)[tab[1]]]}function parsetab(blob,length){return[blob[blob.l+1]>>7,blob.read_shift(2)&32767]}var parse_PtgAttrSum=parseread(4);var parse_PtgConcat=parseread1;function parse_PtgExp(blob,length){blob.l++;var row=blob.read_shift(2);var col=blob.read_shift(2);return[row,col]}function parse_PtgErr(blob,length){blob.l++;return BErr[blob.read_shift(1)]}function parse_PtgInt(blob,length){blob.l++;return blob.read_shift(2)}function parse_PtgBool(blob,length){blob.l++;return blob.read_shift(1)!==0}function parse_PtgNum(blob,length){blob.l++;return parse_Xnum(blob,8)}function parse_PtgStr(blob,length){blob.l++;return parse_ShortXLUnicodeString(blob)}function parse_SerAr(blob){var val=[];switch(val[0]=blob.read_shift(1)){case 4:val[1]=parsebool(blob,1)?"TRUE":"FALSE";blob.l+=7;break;case 16:val[1]=BErr[blob[blob.l]];blob.l+=8;break;case 0:blob.l+=8;break;case 1:val[1]=parse_Xnum(blob,8);break;case 2:val[1]=parse_XLUnicodeString(blob);break}return val}function parse_PtgExtraMem(blob,cce){var count=blob.read_shift(2);var out=[];for(var i=0;i!=count;++i)out.push(parse_Ref8U(blob,8));return out}function parse_PtgExtraArray(blob){var cols=1+blob.read_shift(1);var rows=1+blob.read_shift(2);for(var i=0,o=[];i!=rows&&(o[i]=[]);++i)for(var j=0;j!=cols;++j)o[i][j]=parse_SerAr(blob);return o}function parse_PtgName(blob,length){var type=blob.read_shift(1)>>>5&3;var nameindex=blob.read_shift(4);return[type,0,nameindex]}function parse_PtgNameX(blob,length){var type=blob.read_shift(1)>>>5&3;var ixti=blob.read_shift(2);var nameindex=blob.read_shift(4);return[type,ixti,nameindex]}function parse_PtgMemArea(blob,length){var type=blob.read_shift(1)>>>5&3;blob.l+=4;var cce=blob.read_shift(2);return[type,cce]}function parse_PtgMemFunc(blob,length){var type=blob.read_shift(1)>>>5&3;var cce=blob.read_shift(2);return[type,cce]}function parse_PtgRefErr(blob,length){var type=blob.read_shift(1)>>>5&3;blob.l+=4;return[type]}var parse_PtgAdd=parseread1;var parse_PtgDiv=parseread1;var parse_PtgEq=parseread1;var parse_PtgGe=parseread1;var parse_PtgGt=parseread1;var parse_PtgIsect=parseread1;var parse_PtgLe=parseread1;var parse_PtgLt=parseread1;var parse_PtgMissArg=parseread1;var parse_PtgMul=parseread1;var parse_PtgNe=parseread1;var parse_PtgParen=parseread1;var parse_PtgPercent=parseread1;var parse_PtgPower=parseread1;var parse_PtgRange=parseread1;var parse_PtgSub=parseread1;var parse_PtgUminus=parseread1;var parse_PtgUnion=parseread1;var parse_PtgUplus=parseread1;var parse_PtgMemErr=parsenoop;var parse_PtgMemNoMem=parsenoop;var parse_PtgRefErr3d=parsenoop;var parse_PtgTbl=parsenoop;var PtgTypes={1:{n:"PtgExp",f:parse_PtgExp},2:{n:"PtgTbl",f:parse_PtgTbl},3:{n:"PtgAdd",f:parse_PtgAdd},4:{n:"PtgSub",f:parse_PtgSub},5:{n:"PtgMul",f:parse_PtgMul},6:{n:"PtgDiv",f:parse_PtgDiv},7:{n:"PtgPower",f:parse_PtgPower},8:{n:"PtgConcat",f:parse_PtgConcat},9:{n:"PtgLt",f:parse_PtgLt},10:{n:"PtgLe",f:parse_PtgLe},11:{n:"PtgEq",f:parse_PtgEq},12:{n:"PtgGe",f:parse_PtgGe},13:{n:"PtgGt",f:parse_PtgGt},14:{n:"PtgNe",f:parse_PtgNe},15:{n:"PtgIsect",f:parse_PtgIsect},16:{n:"PtgUnion",f:parse_PtgUnion},17:{n:"PtgRange",f:parse_PtgRange},18:{n:"PtgUplus",f:parse_PtgUplus},19:{n:"PtgUminus",f:parse_PtgUminus},20:{n:"PtgPercent",f:parse_PtgPercent},21:{n:"PtgParen",f:parse_PtgParen},22:{n:"PtgMissArg",f:parse_PtgMissArg},23:{n:"PtgStr",f:parse_PtgStr},28:{n:"PtgErr",f:parse_PtgErr},29:{n:"PtgBool",f:parse_PtgBool},30:{n:"PtgInt",f:parse_PtgInt},31:{n:"PtgNum",f:parse_PtgNum},32:{n:"PtgArray",f:parse_PtgArray},33:{n:"PtgFunc",f:parse_PtgFunc},34:{n:"PtgFuncVar",f:parse_PtgFuncVar},35:{n:"PtgName",f:parse_PtgName},36:{n:"PtgRef",f:parse_PtgRef},37:{n:"PtgArea",f:parse_PtgArea},38:{n:"PtgMemArea",f:parse_PtgMemArea},39:{n:"PtgMemErr",f:parse_PtgMemErr},40:{n:"PtgMemNoMem",f:parse_PtgMemNoMem},41:{n:"PtgMemFunc",f:parse_PtgMemFunc},42:{n:"PtgRefErr",f:parse_PtgRefErr},43:{n:"PtgAreaErr",f:parse_PtgAreaErr},44:{n:"PtgRefN",f:parse_PtgRefN},45:{n:"PtgAreaN",f:parse_PtgAreaN},57:{n:"PtgNameX",f:parse_PtgNameX},58:{n:"PtgRef3d",f:parse_PtgRef3d},59:{n:"PtgArea3d",f:parse_PtgArea3d},60:{n:"PtgRefErr3d",f:parse_PtgRefErr3d},61:{n:"PtgAreaErr3d",f:parse_PtgAreaErr3d},255:{}};var PtgDupes={64:32,96:32,65:33,97:33,66:34,98:34,67:35,99:35,68:36,100:36,69:37,101:37,70:38,102:38,71:39,103:39,72:40,104:40,73:41,105:41,74:42,106:42,75:43,107:43,76:44,108:44,77:45,109:45,89:57,121:57,90:58,122:58,91:59,123:59,92:60,124:60,93:61,125:61};(function(){for(var y in PtgDupes)PtgTypes[y]=PtgTypes[PtgDupes[y]]})();var Ptg18={};var Ptg19={1:{n:"PtgAttrSemi",f:parse_PtgAttrSemi},2:{n:"PtgAttrIf",f:parse_PtgAttrIf},4:{n:"PtgAttrChoose",f:parse_PtgAttrChoose},8:{n:"PtgAttrGoto",f:parse_PtgAttrGoto},16:{n:"PtgAttrSum",f:parse_PtgAttrSum},32:{n:"PtgAttrBaxcel",f:parse_PtgAttrBaxcel},64:{n:"PtgAttrSpace",f:parse_PtgAttrSpace},65:{n:"PtgAttrSpaceSemi",f:parse_PtgAttrSpaceSemi},255:{}};function parse_Formula(blob,length,opts){var cell=parse_XLSCell(blob,6);var val=parse_FormulaValue(blob,8);var flags=blob.read_shift(1);blob.read_shift(1);var chn=blob.read_shift(4);var cbf="";if(opts.biff===5)blob.l+=length-20;else cbf=parse_XLSCellParsedFormula(blob,length-20,opts);return{cell:cell,val:val[0],formula:cbf,shared:flags>>3&1,tt:val[1]}}function parse_FormulaValue(blob){var b;if(__readUInt16LE(blob,blob.l+6)!==65535)return[parse_Xnum(blob),"n"];switch(blob[blob.l]){case 0:blob.l+=8;return["String","s"];case 1:b=blob[blob.l+2]===1;blob.l+=8;return[b,"b"];case 2:b=blob[blob.l+2];blob.l+=8;return[b,"e"];case 3:blob.l+=8;return["","s"]}}function parse_RgbExtra(blob,length,rgce,opts){if(opts.biff<8)return parsenoop(blob,length);var target=blob.l+length;var o=[];for(var i=0;i!==rgce.length;++i){switch(rgce[i][0]){case"PtgArray":rgce[i][1]=parse_PtgExtraArray(blob);o.push(rgce[i][1]);break;case"PtgMemArea":rgce[i][2]=parse_PtgExtraMem(blob,rgce[i][1]);o.push(rgce[i][2]);break;default:break}}length=target-blob.l;if(length!==0)o.push(parsenoop(blob,length));return o}function parse_NameParsedFormula(blob,length,opts,cce){var target=blob.l+length;var rgce=parse_Rgce(blob,cce);var rgcb;if(target!==blob.l)rgcb=parse_RgbExtra(blob,target-blob.l,rgce,opts);return[rgce,rgcb]}function parse_XLSCellParsedFormula(blob,length,opts){var target=blob.l+length;var rgcb,cce=blob.read_shift(2);if(cce==65535)return[[],parsenoop(blob,length-2)];var rgce=parse_Rgce(blob,cce);if(length!==cce+2)rgcb=parse_RgbExtra(blob,length-cce-2,rgce,opts);return[rgce,rgcb]}function parse_SharedParsedFormula(blob,length,opts){var target=blob.l+length;var rgcb,cce=blob.read_shift(2);var rgce=parse_Rgce(blob,cce);if(cce==65535)return[[],parsenoop(blob,length-2)];if(length!==cce+2)rgcb=parse_RgbExtra(blob,target-cce-2,rgce,opts);return[rgce,rgcb]}function parse_ArrayParsedFormula(blob,length,opts,ref){var target=blob.l+length;var rgcb,cce=blob.read_shift(2);if(cce==65535)return[[],parsenoop(blob,length-2)];var rgce=parse_Rgce(blob,cce);if(length!==cce+2)rgcb=parse_RgbExtra(blob,target-cce-2,rgce,opts);return[rgce,rgcb]}function parse_Rgce(blob,length){var target=blob.l+length;var R,id,ptgs=[];while(target!=blob.l){length=target-blob.l;id=blob[blob.l];R=PtgTypes[id];if(id===24||id===25){id=blob[blob.l+1];R=(id===24?Ptg18:Ptg19)[id]}if(!R||!R.f){ptgs.push(parsenoop(blob,length))}else{ptgs.push([R.n,R.f(blob,length)])}}return ptgs}function mapper(x){return x.map(function f2(y){return y[1]}).join(",")}function stringify_formula(formula,range,cell,supbooks,opts){if(opts!==undefined&&opts.biff===5)return"BIFF5??";var _range=range!==undefined?range:{s:{c:0,r:0}};var stack=[],e1,e2,type,c,ixti,nameidx,r;if(!formula[0]||!formula[0][0])return"";for(var ff=0,fflen=formula[0].length;ff<fflen;++ff){var f=formula[0][ff];switch(f[0]){case"PtgUminus":stack.push("-"+stack.pop());break;case"PtgUplus":stack.push("+"+stack.pop());break;case"PtgPercent":stack.push(stack.pop()+"%");break;case"PtgAdd":e1=stack.pop();e2=stack.pop();stack.push(e2+"+"+e1);break;case"PtgSub":e1=stack.pop();e2=stack.pop();stack.push(e2+"-"+e1);break;case"PtgMul":e1=stack.pop();e2=stack.pop();stack.push(e2+"*"+e1);break;case"PtgDiv":e1=stack.pop();e2=stack.pop();stack.push(e2+"/"+e1);break;case"PtgPower":e1=stack.pop();e2=stack.pop();stack.push(e2+"^"+e1);break;case"PtgConcat":e1=stack.pop();e2=stack.pop();stack.push(e2+"&"+e1);break;case"PtgLt":e1=stack.pop();e2=stack.pop();stack.push(e2+"<"+e1);break;case"PtgLe":e1=stack.pop();e2=stack.pop();stack.push(e2+"<="+e1);break;case"PtgEq":e1=stack.pop();e2=stack.pop();stack.push(e2+"="+e1);break;case"PtgGe":e1=stack.pop();e2=stack.pop();stack.push(e2+">="+e1);break;case"PtgGt":e1=stack.pop();e2=stack.pop();stack.push(e2+">"+e1);break;case"PtgNe":e1=stack.pop();e2=stack.pop();stack.push(e2+"<>"+e1);break;case"PtgIsect":e1=stack.pop();e2=stack.pop();stack.push(e2+" "+e1);break;case"PtgUnion":e1=stack.pop();e2=stack.pop();stack.push(e2+","+e1);break;case"PtgRange":break;case"PtgAttrChoose":break;case"PtgAttrGoto":break;case"PtgAttrIf":break;case"PtgRef":type=f[1][0];c=shift_cell_xls(decode_cell(encode_cell(f[1][1])),_range);stack.push(encode_cell(c));break;case"PtgRefN":type=f[1][0];c=shift_cell_xls(decode_cell(encode_cell(f[1][1])),cell);stack.push(encode_cell(c));break;case"PtgRef3d":type=f[1][0];ixti=f[1][1];c=shift_cell_xls(f[1][2],_range);stack.push(supbooks[1][ixti+1]+"!"+encode_cell(c));break;case"PtgFunc":case"PtgFuncVar":var argc=f[1][0],func=f[1][1];if(!argc)argc=0;var args=stack.slice(-argc);stack.length-=argc;if(func==="User")func=args.shift();stack.push(func+"("+args.join(",")+")");break;case"PtgBool":stack.push(f[1]?"TRUE":"FALSE");break;case"PtgInt":stack.push(f[1]);break;case"PtgNum":stack.push(String(f[1]));break;case"PtgStr":stack.push('"'+f[1]+'"');break;case"PtgErr":stack.push(f[1]);break;case"PtgArea":type=f[1][0];r=shift_range_xls(f[1][1],_range);stack.push(encode_range(r));break;case"PtgArea3d":type=f[1][0];ixti=f[1][1];r=f[1][2];stack.push(supbooks[1][ixti+1]+"!"+encode_range(r));break;case"PtgAttrSum":stack.push("SUM("+stack.pop()+")");break;case"PtgAttrSemi":break;case"PtgName":nameidx=f[1][2];var lbl=supbooks[0][nameidx];var name=lbl.Name;if(name in XLSXFutureFunctions)name=XLSXFutureFunctions[name];stack.push(name);break;case"PtgNameX":var bookidx=f[1][1];nameidx=f[1][2];var externbook;if(supbooks[bookidx+1])externbook=supbooks[bookidx+1][nameidx];else if(supbooks[bookidx-1])externbook=supbooks[bookidx-1][nameidx];if(!externbook)externbook={body:"??NAMEX??"};stack.push(externbook.body);break;case"PtgParen":stack.push("("+stack.pop()+")");break;case"PtgRefErr":stack.push("#REF!");break;case"PtgExp":c={c:f[1][1],r:f[1][0]};var q={c:cell.c,r:cell.r};if(supbooks.sharedf[encode_cell(c)]){var parsedf=supbooks.sharedf[encode_cell(c)];stack.push(stringify_formula(parsedf,_range,q,supbooks,opts))}else{var fnd=false;for(e1=0;e1!=supbooks.arrayf.length;++e1){e2=supbooks.arrayf[e1];if(c.c<e2[0].s.c||c.c>e2[0].e.c)continue;if(c.r<e2[0].s.r||c.r>e2[0].e.r)continue;stack.push(stringify_formula(e2[1],_range,q,supbooks,opts))}if(!fnd)stack.push(f[1])}break;case"PtgArray":stack.push("{"+f[1].map(mapper).join(";")+"}");break;case"PtgMemArea":break;case"PtgAttrSpace":break;case"PtgTbl":break;case"PtgMemErr":break;case"PtgMissArg":stack.push("");break;case"PtgAreaErr":break;case"PtgAreaN":stack.push("");break;case"PtgRefErr3d":break;case"PtgMemFunc":break;default:throw"Unrecognized Formula Token: "+f}}return stack[0]}function parse_XLSBCellParsedFormula(data,length){var cce=data.read_shift(4);return parsenoop(data,length-4)}var PtgDataType={1:"REFERENCE",2:"VALUE",3:"ARRAY"};var Cetab={0:"BEEP",1:"OPEN",2:"OPEN.LINKS",3:"CLOSE.ALL",4:"SAVE",5:"SAVE.AS",6:"FILE.DELETE",7:"PAGE.SETUP",8:"PRINT",9:"PRINTER.SETUP",10:"QUIT",11:"NEW.WINDOW",12:"ARRANGE.ALL",13:"WINDOW.SIZE",14:"WINDOW.MOVE",15:"FULL",16:"CLOSE",17:"RUN",22:"SET.PRINT.AREA",23:"SET.PRINT.TITLES",24:"SET.PAGE.BREAK",25:"REMOVE.PAGE.BREAK",26:"FONT",27:"DISPLAY",28:"PROTECT.DOCUMENT",29:"PRECISION",30:"A1.R1C1",31:"CALCULATE.NOW",32:"CALCULATION",34:"DATA.FIND",35:"EXTRACT",36:"DATA.DELETE",37:"SET.DATABASE",38:"SET.CRITERIA",39:"SORT",40:"DATA.SERIES",41:"TABLE",42:"FORMAT.NUMBER",43:"ALIGNMENT",44:"STYLE",45:"BORDER",46:"CELL.PROTECTION",47:"COLUMN.WIDTH",48:"UNDO",49:"CUT",50:"COPY",51:"PASTE",52:"CLEAR",53:"PASTE.SPECIAL",54:"EDIT.DELETE",55:"INSERT",56:"FILL.RIGHT",57:"FILL.DOWN",61:"DEFINE.NAME",62:"CREATE.NAMES",63:"FORMULA.GOTO",64:"FORMULA.FIND",65:"SELECT.LAST.CELL",66:"SHOW.ACTIVE.CELL",67:"GALLERY.AREA",68:"GALLERY.BAR",69:"GALLERY.COLUMN",70:"GALLERY.LINE",71:"GALLERY.PIE",72:"GALLERY.SCATTER",73:"COMBINATION",74:"PREFERRED",75:"ADD.OVERLAY",76:"GRIDLINES",77:"SET.PREFERRED",78:"AXES",79:"LEGEND",80:"ATTACH.TEXT",81:"ADD.ARROW",82:"SELECT.CHART",83:"SELECT.PLOT.AREA",84:"PATTERNS",85:"MAIN.CHART",86:"OVERLAY",87:"SCALE",88:"FORMAT.LEGEND",89:"FORMAT.TEXT",90:"EDIT.REPEAT",91:"PARSE",92:"JUSTIFY",93:"HIDE",94:"UNHIDE",95:"WORKSPACE",96:"FORMULA",97:"FORMULA.FILL",98:"FORMULA.ARRAY",99:"DATA.FIND.NEXT",100:"DATA.FIND.PREV",101:"FORMULA.FIND.NEXT",102:"FORMULA.FIND.PREV",103:"ACTIVATE",104:"ACTIVATE.NEXT",105:"ACTIVATE.PREV",106:"UNLOCKED.NEXT",107:"UNLOCKED.PREV",108:"COPY.PICTURE",109:"SELECT",110:"DELETE.NAME",111:"DELETE.FORMAT",112:"VLINE",113:"HLINE",114:"VPAGE",115:"HPAGE",116:"VSCROLL",117:"HSCROLL",118:"ALERT",119:"NEW",120:"CANCEL.COPY",121:"SHOW.CLIPBOARD",122:"MESSAGE",124:"PASTE.LINK",125:"APP.ACTIVATE",126:"DELETE.ARROW",127:"ROW.HEIGHT",128:"FORMAT.MOVE",129:"FORMAT.SIZE",130:"FORMULA.REPLACE",131:"SEND.KEYS",132:"SELECT.SPECIAL",133:"APPLY.NAMES",134:"REPLACE.FONT",135:"FREEZE.PANES",136:"SHOW.INFO",137:"SPLIT",138:"ON.WINDOW",139:"ON.DATA",140:"DISABLE.INPUT",142:"OUTLINE",143:"LIST.NAMES",144:"FILE.CLOSE",145:"SAVE.WORKBOOK",146:"DATA.FORM",147:"COPY.CHART",148:"ON.TIME",149:"WAIT",150:"FORMAT.FONT",151:"FILL.UP",152:"FILL.LEFT",153:"DELETE.OVERLAY",155:"SHORT.MENUS",159:"SET.UPDATE.STATUS",161:"COLOR.PALETTE",162:"DELETE.STYLE",163:"WINDOW.RESTORE",164:"WINDOW.MAXIMIZE",166:"CHANGE.LINK",167:"CALCULATE.DOCUMENT",168:"ON.KEY",169:"APP.RESTORE",170:"APP.MOVE",171:"APP.SIZE",172:"APP.MINIMIZE",173:"APP.MAXIMIZE",174:"BRING.TO.FRONT",175:"SEND.TO.BACK",185:"MAIN.CHART.TYPE",186:"OVERLAY.CHART.TYPE",187:"SELECT.END",188:"OPEN.MAIL",189:"SEND.MAIL",190:"STANDARD.FONT",191:"CONSOLIDATE",192:"SORT.SPECIAL",193:"GALLERY.3D.AREA",194:"GALLERY.3D.COLUMN",195:"GALLERY.3D.LINE",196:"GALLERY.3D.PIE",197:"VIEW.3D",198:"GOAL.SEEK",199:"WORKGROUP",200:"FILL.GROUP",201:"UPDATE.LINK",202:"PROMOTE",203:"DEMOTE",204:"SHOW.DETAIL",206:"UNGROUP",207:"OBJECT.PROPERTIES",208:"SAVE.NEW.OBJECT",209:"SHARE",210:"SHARE.NAME",211:"DUPLICATE",212:"APPLY.STYLE",213:"ASSIGN.TO.OBJECT",214:"OBJECT.PROTECTION",215:"HIDE.OBJECT",216:"SET.EXTRACT",217:"CREATE.PUBLISHER",218:"SUBSCRIBE.TO",219:"ATTRIBUTES",220:"SHOW.TOOLBAR",222:"PRINT.PREVIEW",223:"EDIT.COLOR",224:"SHOW.LEVELS",225:"FORMAT.MAIN",226:"FORMAT.OVERLAY",227:"ON.RECALC",228:"EDIT.SERIES",229:"DEFINE.STYLE",240:"LINE.PRINT",243:"ENTER.DATA",249:"GALLERY.RADAR",250:"MERGE.STYLES",251:"EDITION.OPTIONS",252:"PASTE.PICTURE",253:"PASTE.PICTURE.LINK",254:"SPELLING",256:"ZOOM",259:"INSERT.OBJECT",260:"WINDOW.MINIMIZE",265:"SOUND.NOTE",266:"SOUND.PLAY",267:"FORMAT.SHAPE",268:"EXTEND.POLYGON",269:"FORMAT.AUTO",272:"GALLERY.3D.BAR",273:"GALLERY.3D.SURFACE",274:"FILL.AUTO",276:"CUSTOMIZE.TOOLBAR",277:"ADD.TOOL",278:"EDIT.OBJECT",279:"ON.DOUBLECLICK",280:"ON.ENTRY",281:"WORKBOOK.ADD",282:"WORKBOOK.MOVE",283:"WORKBOOK.COPY",284:"WORKBOOK.OPTIONS",285:"SAVE.WORKSPACE",288:"CHART.WIZARD",289:"DELETE.TOOL",290:"MOVE.TOOL",291:"WORKBOOK.SELECT",292:"WORKBOOK.ACTIVATE",293:"ASSIGN.TO.TOOL",295:"COPY.TOOL",296:"RESET.TOOL",297:"CONSTRAIN.NUMERIC",298:"PASTE.TOOL",302:"WORKBOOK.NEW",305:"SCENARIO.CELLS",306:"SCENARIO.DELETE",307:"SCENARIO.ADD",308:"SCENARIO.EDIT",309:"SCENARIO.SHOW",310:"SCENARIO.SHOW.NEXT",311:"SCENARIO.SUMMARY",312:"PIVOT.TABLE.WIZARD",313:"PIVOT.FIELD.PROPERTIES",314:"PIVOT.FIELD",315:"PIVOT.ITEM",316:"PIVOT.ADD.FIELDS",318:"OPTIONS.CALCULATION",319:"OPTIONS.EDIT",320:"OPTIONS.VIEW",321:"ADDIN.MANAGER",322:"MENU.EDITOR",323:"ATTACH.TOOLBARS",324:"VBAActivate",325:"OPTIONS.CHART",328:"VBA.INSERT.FILE",330:"VBA.PROCEDURE.DEFINITION",336:"ROUTING.SLIP",338:"ROUTE.DOCUMENT",339:"MAIL.LOGON",342:"INSERT.PICTURE",343:"EDIT.TOOL",344:"GALLERY.DOUGHNUT",350:"CHART.TREND",352:"PIVOT.ITEM.PROPERTIES",354:"WORKBOOK.INSERT",355:"OPTIONS.TRANSITION",356:"OPTIONS.GENERAL",370:"FILTER.ADVANCED",373:"MAIL.ADD.MAILER",374:"MAIL.DELETE.MAILER",375:"MAIL.REPLY",376:"MAIL.REPLY.ALL",377:"MAIL.FORWARD",378:"MAIL.NEXT.LETTER",379:"DATA.LABEL",380:"INSERT.TITLE",381:"FONT.PROPERTIES",382:"MACRO.OPTIONS",383:"WORKBOOK.HIDE",384:"WORKBOOK.UNHIDE",385:"WORKBOOK.DELETE",386:"WORKBOOK.NAME",388:"GALLERY.CUSTOM",390:"ADD.CHART.AUTOFORMAT",391:"DELETE.CHART.AUTOFORMAT",392:"CHART.ADD.DATA",393:"AUTO.OUTLINE",394:"TAB.ORDER",395:"SHOW.DIALOG",396:"SELECT.ALL",397:"UNGROUP.SHEETS",398:"SUBTOTAL.CREATE",399:"SUBTOTAL.REMOVE",400:"RENAME.OBJECT",412:"WORKBOOK.SCROLL",413:"WORKBOOK.NEXT",414:"WORKBOOK.PREV",415:"WORKBOOK.TAB.SPLIT",416:"FULL.SCREEN",417:"WORKBOOK.PROTECT",420:"SCROLLBAR.PROPERTIES",421:"PIVOT.SHOW.PAGES",422:"TEXT.TO.COLUMNS",423:"FORMAT.CHARTTYPE",424:"LINK.FORMAT",425:"TRACER.DISPLAY",430:"TRACER.NAVIGATE",431:"TRACER.CLEAR",432:"TRACER.ERROR",433:"PIVOT.FIELD.GROUP",434:"PIVOT.FIELD.UNGROUP",435:"CHECKBOX.PROPERTIES",436:"LABEL.PROPERTIES",437:"LISTBOX.PROPERTIES",438:"EDITBOX.PROPERTIES",439:"PIVOT.REFRESH",440:"LINK.COMBO",441:"OPEN.TEXT",442:"HIDE.DIALOG",443:"SET.DIALOG.FOCUS",444:"ENABLE.OBJECT",445:"PUSHBUTTON.PROPERTIES",446:"SET.DIALOG.DEFAULT",447:"FILTER",448:"FILTER.SHOW.ALL",449:"CLEAR.OUTLINE",450:"FUNCTION.WIZARD",451:"ADD.LIST.ITEM",452:"SET.LIST.ITEM",453:"REMOVE.LIST.ITEM",454:"SELECT.LIST.ITEM",455:"SET.CONTROL.VALUE",456:"SAVE.COPY.AS",458:"OPTIONS.LISTS.ADD",459:"OPTIONS.LISTS.DELETE",460:"SERIES.AXES",461:"SERIES.X",462:"SERIES.Y",463:"ERRORBAR.X",464:"ERRORBAR.Y",465:"FORMAT.CHART",466:"SERIES.ORDER",467:"MAIL.LOGOFF",468:"CLEAR.ROUTING.SLIP",469:"APP.ACTIVATE.MICROSOFT",470:"MAIL.EDIT.MAILER",471:"ON.SHEET",472:"STANDARD.WIDTH",473:"SCENARIO.MERGE",474:"SUMMARY.INFO",475:"FIND.FILE",476:"ACTIVE.CELL.FONT",477:"ENABLE.TIPWIZARD",478:"VBA.MAKE.ADDIN",480:"INSERTDATATABLE",481:"WORKGROUP.OPTIONS",482:"MAIL.SEND.MAILER",485:"AUTOCORRECT",489:"POST.DOCUMENT",491:"PICKLIST",493:"VIEW.SHOW",494:"VIEW.DEFINE",495:"VIEW.DELETE",509:"SHEET.BACKGROUND",510:"INSERT.MAP.OBJECT",511:"OPTIONS.MENONO",517:"MSOCHECKS",518:"NORMAL",519:"LAYOUT",520:"RM.PRINT.AREA",521:"CLEAR.PRINT.AREA",522:"ADD.PRINT.AREA",523:"MOVE.BRK",545:"HIDECURR.NOTE",546:"HIDEALL.NOTES",547:"DELETE.NOTE",548:"TRAVERSE.NOTES",549:"ACTIVATE.NOTES",620:"PROTECT.REVISIONS",621:"UNPROTECT.REVISIONS",647:"OPTIONS.ME",653:"WEB.PUBLISH",667:"NEWWEBQUERY",673:"PIVOT.TABLE.CHART",753:"OPTIONS.SAVE",755:"OPTIONS.SPELL",808:"HIDEALL.INKANNOTS"};var Ftab={0:"COUNT",1:"IF",2:"ISNA",3:"ISERROR",4:"SUM",5:"AVERAGE",6:"MIN",7:"MAX",8:"ROW",9:"COLUMN",10:"NA",11:"NPV",12:"STDEV",13:"DOLLAR",14:"FIXED",15:"SIN",16:"COS",17:"TAN",18:"ATAN",19:"PI",20:"SQRT",21:"EXP",22:"LN",23:"LOG10",24:"ABS",25:"INT",26:"SIGN",27:"ROUND",28:"LOOKUP",29:"INDEX",30:"REPT",31:"MID",32:"LEN",33:"VALUE",34:"TRUE",35:"FALSE",36:"AND",37:"OR",38:"NOT",39:"MOD",40:"DCOUNT",41:"DSUM",42:"DAVERAGE",43:"DMIN",44:"DMAX",45:"DSTDEV",46:"VAR",47:"DVAR",48:"TEXT",49:"LINEST",50:"TREND",51:"LOGEST",52:"GROWTH",53:"GOTO",54:"HALT",55:"RETURN",56:"PV",57:"FV",58:"NPER",59:"PMT",60:"RATE",61:"MIRR",62:"IRR",63:"RAND",64:"MATCH",65:"DATE",66:"TIME",67:"DAY",68:"MONTH",69:"YEAR",70:"WEEKDAY",71:"HOUR",72:"MINUTE",73:"SECOND",74:"NOW",75:"AREAS",76:"ROWS",77:"COLUMNS",78:"OFFSET",79:"ABSREF",80:"RELREF",81:"ARGUMENT",82:"SEARCH",83:"TRANSPOSE",84:"ERROR",85:"STEP",86:"TYPE",87:"ECHO",88:"SET.NAME",89:"CALLER",90:"DEREF",91:"WINDOWS",92:"SERIES",93:"DOCUMENTS",94:"ACTIVE.CELL",95:"SELECTION",96:"RESULT",97:"ATAN2",98:"ASIN",99:"ACOS",100:"CHOOSE",101:"HLOOKUP",102:"VLOOKUP",103:"LINKS",104:"INPUT",105:"ISREF",106:"GET.FORMULA",107:"GET.NAME",108:"SET.VALUE",109:"LOG",110:"EXEC",111:"CHAR",112:"LOWER",113:"UPPER",114:"PROPER",115:"LEFT",116:"RIGHT",117:"EXACT",118:"TRIM",119:"REPLACE",120:"SUBSTITUTE",121:"CODE",122:"NAMES",123:"DIRECTORY",124:"FIND",125:"CELL",126:"ISERR",127:"ISTEXT",128:"ISNUMBER",129:"ISBLANK",130:"T",131:"N",132:"FOPEN",133:"FCLOSE",134:"FSIZE",135:"FREADLN",136:"FREAD",137:"FWRITELN",138:"FWRITE",139:"FPOS",140:"DATEVALUE",141:"TIMEVALUE",142:"SLN",143:"SYD",144:"DDB",145:"GET.DEF",146:"REFTEXT",147:"TEXTREF",148:"INDIRECT",149:"REGISTER",150:"CALL",151:"ADD.BAR",152:"ADD.MENU",153:"ADD.COMMAND",154:"ENABLE.COMMAND",155:"CHECK.COMMAND",156:"RENAME.COMMAND",157:"SHOW.BAR",158:"DELETE.MENU",159:"DELETE.COMMAND",160:"GET.CHART.ITEM",161:"DIALOG.BOX",162:"CLEAN",163:"MDETERM",164:"MINVERSE",165:"MMULT",166:"FILES",167:"IPMT",168:"PPMT",169:"COUNTA",170:"CANCEL.KEY",171:"FOR",172:"WHILE",173:"BREAK",174:"NEXT",175:"INITIATE",176:"REQUEST",177:"POKE",178:"EXECUTE",179:"TERMINATE",180:"RESTART",181:"HELP",182:"GET.BAR",183:"PRODUCT",184:"FACT",185:"GET.CELL",186:"GET.WORKSPACE",187:"GET.WINDOW",188:"GET.DOCUMENT",189:"DPRODUCT",190:"ISNONTEXT",191:"GET.NOTE",192:"NOTE",193:"STDEVP",194:"VARP",195:"DSTDEVP",196:"DVARP",197:"TRUNC",198:"ISLOGICAL",199:"DCOUNTA",200:"DELETE.BAR",201:"UNREGISTER",204:"USDOLLAR",205:"FINDB",206:"SEARCHB",207:"REPLACEB",208:"LEFTB",209:"RIGHTB",210:"MIDB",211:"LENB",212:"ROUNDUP",213:"ROUNDDOWN",214:"ASC",215:"DBCS",216:"RANK",219:"ADDRESS",220:"DAYS360",221:"TODAY",222:"VDB",223:"ELSE",224:"ELSE.IF",225:"END.IF",226:"FOR.CELL",227:"MEDIAN",228:"SUMPRODUCT",229:"SINH",230:"COSH",231:"TANH",232:"ASINH",233:"ACOSH",234:"ATANH",235:"DGET",236:"CREATE.OBJECT",237:"VOLATILE",238:"LAST.ERROR",239:"CUSTOM.UNDO",240:"CUSTOM.REPEAT",241:"FORMULA.CONVERT",242:"GET.LINK.INFO",243:"TEXT.BOX",244:"INFO",245:"GROUP",246:"GET.OBJECT",247:"DB",248:"PAUSE",251:"RESUME",252:"FREQUENCY",253:"ADD.TOOLBAR",254:"DELETE.TOOLBAR",255:"User",256:"RESET.TOOLBAR",257:"EVALUATE",258:"GET.TOOLBAR",259:"GET.TOOL",260:"SPELLING.CHECK",261:"ERROR.TYPE",262:"APP.TITLE",263:"WINDOW.TITLE",264:"SAVE.TOOLBAR",265:"ENABLE.TOOL",266:"PRESS.TOOL",267:"REGISTER.ID",268:"GET.WORKBOOK",269:"AVEDEV",270:"BETADIST",271:"GAMMALN",272:"BETAINV",273:"BINOMDIST",274:"CHIDIST",275:"CHIINV",276:"COMBIN",277:"CONFIDENCE",278:"CRITBINOM",279:"EVEN",280:"EXPONDIST",281:"FDIST",282:"FINV",283:"FISHER",284:"FISHERINV",285:"FLOOR",286:"GAMMADIST",287:"GAMMAINV",288:"CEILING",289:"HYPGEOMDIST",290:"LOGNORMDIST",291:"LOGINV",292:"NEGBINOMDIST",293:"NORMDIST",294:"NORMSDIST",295:"NORMINV",296:"NORMSINV",297:"STANDARDIZE",298:"ODD",299:"PERMUT",300:"POISSON",301:"TDIST",302:"WEIBULL",303:"SUMXMY2",304:"SUMX2MY2",305:"SUMX2PY2",306:"CHITEST",307:"CORREL",308:"COVAR",309:"FORECAST",310:"FTEST",311:"INTERCEPT",312:"PEARSON",313:"RSQ",314:"STEYX",315:"SLOPE",316:"TTEST",317:"PROB",318:"DEVSQ",319:"GEOMEAN",320:"HARMEAN",321:"SUMSQ",322:"KURT",323:"SKEW",324:"ZTEST",325:"LARGE",326:"SMALL",327:"QUARTILE",328:"PERCENTILE",329:"PERCENTRANK",330:"MODE",331:"TRIMMEAN",332:"TINV",334:"MOVIE.COMMAND",335:"GET.MOVIE",336:"CONCATENATE",337:"POWER",338:"PIVOT.ADD.DATA",339:"GET.PIVOT.TABLE",340:"GET.PIVOT.FIELD",341:"GET.PIVOT.ITEM",342:"RADIANS",343:"DEGREES",344:"SUBTOTAL",345:"SUMIF",346:"COUNTIF",347:"COUNTBLANK",348:"SCENARIO.GET",349:"OPTIONS.LISTS.GET",350:"ISPMT",351:"DATEDIF",352:"DATESTRING",353:"NUMBERSTRING",354:"ROMAN",355:"OPEN.DIALOG",356:"SAVE.DIALOG",357:"VIEW.GET",358:"GETPIVOTDATA",359:"HYPERLINK",360:"PHONETIC",361:"AVERAGEA",362:"MAXA",363:"MINA",364:"STDEVPA",365:"VARPA",366:"STDEVA",367:"VARA",368:"BAHTTEXT",369:"THAIDAYOFWEEK",370:"THAIDIGIT",371:"THAIMONTHOFYEAR",372:"THAINUMSOUND",373:"THAINUMSTRING",374:"THAISTRINGLENGTH",375:"ISTHAIDIGIT",376:"ROUNDBAHTDOWN",377:"ROUNDBAHTUP",378:"THAIYEAR",379:"RTD"};var FtabArgc={2:1,3:1,15:1,16:1,17:1,18:1,20:1,21:1,22:1,23:1,24:1,25:1,26:1,27:2,30:2,31:3,32:1,33:1,38:1,39:2,40:3,41:3,42:3,43:3,44:3,45:3,47:3,48:2,53:1,61:3,65:3,66:3,67:1,68:1,69:1,71:1,72:1,73:1,75:1,76:1,77:1,79:2,80:2,83:1,86:1,90:1,97:2,98:1,99:1,105:1,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,162:1,163:1,164:1,165:2,172:1,175:2,176:2,177:3,178:2,179:1,184:1,189:3,190:1,195:3,196:3,198:1,199:3,201:1,207:4,210:3,211:1,212:2,213:2,214:1,215:1,229:1,230:1,231:1,232:1,233:1,234:1,235:3,244:1,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,65535:0};var XLSXFutureFunctions={"_xlfn.ACOT":"ACOT","_xlfn.ACOTH":"ACOTH","_xlfn.AGGREGATE":"AGGREGATE","_xlfn.ARABIC":"ARABIC","_xlfn.AVERAGEIF":"AVERAGEIF","_xlfn.AVERAGEIFS":"AVERAGEIFS","_xlfn.BASE":"BASE","_xlfn.BETA.DIST":"BETA.DIST","_xlfn.BETA.INV":"BETA.INV","_xlfn.BINOM.DIST":"BINOM.DIST","_xlfn.BINOM.DIST.RANGE":"BINOM.DIST.RANGE","_xlfn.BINOM.INV":"BINOM.INV","_xlfn.BITAND":"BITAND","_xlfn.BITLSHIFT":"BITLSHIFT","_xlfn.BITOR":"BITOR","_xlfn.BITRSHIFT":"BITRSHIFT","_xlfn.BITXOR":"BITXOR","_xlfn.CEILING.MATH":"CEILING.MATH","_xlfn.CEILING.PRECISE":"CEILING.PRECISE","_xlfn.CHISQ.DIST":"CHISQ.DIST","_xlfn.CHISQ.DIST.RT":"CHISQ.DIST.RT","_xlfn.CHISQ.INV":"CHISQ.INV","_xlfn.CHISQ.INV.RT":"CHISQ.INV.RT","_xlfn.CHISQ.TEST":"CHISQ.TEST","_xlfn.COMBINA":"COMBINA","_xlfn.CONFIDENCE.NORM":"CONFIDENCE.NORM","_xlfn.CONFIDENCE.T":"CONFIDENCE.T","_xlfn.COT":"COT","_xlfn.COTH":"COTH","_xlfn.COUNTIFS":"COUNTIFS","_xlfn.COVARIANCE.P":"COVARIANCE.P","_xlfn.COVARIANCE.S":"COVARIANCE.S","_xlfn.CSC":"CSC","_xlfn.CSCH":"CSCH","_xlfn.DAYS":"DAYS","_xlfn.DECIMAL":"DECIMAL","_xlfn.ECMA.CEILING":"ECMA.CEILING","_xlfn.ERF.PRECISE":"ERF.PRECISE","_xlfn.ERFC.PRECISE":"ERFC.PRECISE","_xlfn.EXPON.DIST":"EXPON.DIST","_xlfn.F.DIST":"F.DIST","_xlfn.F.DIST.RT":"F.DIST.RT","_xlfn.F.INV":"F.INV","_xlfn.F.INV.RT":"F.INV.RT","_xlfn.F.TEST":"F.TEST","_xlfn.FILTERXML":"FILTERXML","_xlfn.FLOOR.MATH":"FLOOR.MATH","_xlfn.FLOOR.PRECISE":"FLOOR.PRECISE","_xlfn.FORMULATEXT":"FORMULATEXT","_xlfn.GAMMA":"GAMMA","_xlfn.GAMMA.DIST":"GAMMA.DIST","_xlfn.GAMMA.INV":"GAMMA.INV","_xlfn.GAMMALN.PRECISE":"GAMMALN.PRECISE","_xlfn.GAUSS":"GAUSS","_xlfn.HYPGEOM.DIST":"HYPGEOM.DIST","_xlfn.IFNA":"IFNA","_xlfn.IFERROR":"IFERROR","_xlfn.IMCOSH":"IMCOSH","_xlfn.IMCOT":"IMCOT","_xlfn.IMCSC":"IMCSC","_xlfn.IMCSCH":"IMCSCH","_xlfn.IMSEC":"IMSEC","_xlfn.IMSECH":"IMSECH","_xlfn.IMSINH":"IMSINH","_xlfn.IMTAN":"IMTAN","_xlfn.ISFORMULA":"ISFORMULA","_xlfn.ISO.CEILING":"ISO.CEILING","_xlfn.ISOWEEKNUM":"ISOWEEKNUM","_xlfn.LOGNORM.DIST":"LOGNORM.DIST","_xlfn.LOGNORM.INV":"LOGNORM.INV","_xlfn.MODE.MULT":"MODE.MULT","_xlfn.MODE.SNGL":"MODE.SNGL","_xlfn.MUNIT":"MUNIT","_xlfn.NEGBINOM.DIST":"NEGBINOM.DIST","_xlfn.NETWORKDAYS.INTL":"NETWORKDAYS.INTL","_xlfn.NIGBINOM":"NIGBINOM","_xlfn.NORM.DIST":"NORM.DIST","_xlfn.NORM.INV":"NORM.INV","_xlfn.NORM.S.DIST":"NORM.S.DIST","_xlfn.NORM.S.INV":"NORM.S.INV","_xlfn.NUMBERVALUE":"NUMBERVALUE","_xlfn.PDURATION":"PDURATION","_xlfn.PERCENTILE.EXC":"PERCENTILE.EXC","_xlfn.PERCENTILE.INC":"PERCENTILE.INC","_xlfn.PERCENTRANK.EXC":"PERCENTRANK.EXC","_xlfn.PERCENTRANK.INC":"PERCENTRANK.INC","_xlfn.PERMUTATIONA":"PERMUTATIONA","_xlfn.PHI":"PHI","_xlfn.POISSON.DIST":"POISSON.DIST","_xlfn.QUARTILE.EXC":"QUARTILE.EXC","_xlfn.QUARTILE.INC":"QUARTILE.INC","_xlfn.QUERYSTRING":"QUERYSTRING","_xlfn.RANK.AVG":"RANK.AVG","_xlfn.RANK.EQ":"RANK.EQ","_xlfn.RRI":"RRI","_xlfn.SEC":"SEC","_xlfn.SECH":"SECH","_xlfn.SHEET":"SHEET","_xlfn.SHEETS":"SHEETS","_xlfn.SKEW.P":"SKEW.P","_xlfn.STDEV.P":"STDEV.P","_xlfn.STDEV.S":"STDEV.S","_xlfn.SUMIFS":"SUMIFS","_xlfn.T.DIST":"T.DIST","_xlfn.T.DIST.2T":"T.DIST.2T","_xlfn.T.DIST.RT":"T.DIST.RT","_xlfn.T.INV":"T.INV","_xlfn.T.INV.2T":"T.INV.2T","_xlfn.T.TEST":"T.TEST","_xlfn.UNICHAR":"UNICHAR","_xlfn.UNICODE":"UNICODE","_xlfn.VAR.P":"VAR.P","_xlfn.VAR.S":"VAR.S","_xlfn.WEBSERVICE":"WEBSERVICE","_xlfn.WEIBULL.DIST":"WEIBULL.DIST","_xlfn.WORKDAY.INTL":"WORKDAY.INTL","_xlfn.XOR":"XOR","_xlfn.Z.TEST":"Z.TEST"};var strs={};var _ssfopts={};RELS.WS="http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet";function get_sst_id(sst,str){for(var i=0,len=sst.length;i<len;++i)if(sst[i].t===str){sst.Count++;return i}sst[len]={t:str};sst.Count++;sst.Unique++;return len}function get_cell_style(styles,cell,opts){if(typeof style_builder!="undefined"){if(/^\d+$/.exec(cell.s)){return cell.s}if(cell.s&&cell.s==+cell.s){return cell.s}var s=cell.s||{};if(cell.z)s.numFmt=cell.z;return style_builder.addStyle(s)}else{var z=opts.revssf[cell.z!=null?cell.z:"General"];for(var i=0,len=styles.length;i!=len;++i)if(styles[i].numFmtId===z)return i;styles[len]={numFmtId:z,fontId:0,fillId:0,borderId:0,xfId:0,applyNumberFormat:1};return len}}function get_cell_style_csf(cellXf){if(cellXf){var s={};if(typeof cellXf.numFmtId!=undefined){s.numFmt=SSF._table[cellXf.numFmtId]}if(cellXf.fillId){s.fill=styles.Fills[cellXf.fillId]}if(cellXf.fontId){s.font=styles.Fonts[cellXf.fontId]}if(cellXf.borderId){s.border=styles.Borders[cellXf.borderId];
}if(cellXf.applyAlignment==1){s.alignment=cellXf.alignment}return JSON.parse(JSON.stringify(s))}return null}function safe_format(p,fmtid,fillid,opts){try{if(p.t==="e")p.w=p.w||BErr[p.v];else if(fmtid===0){if(p.t==="n"){if((p.v|0)===p.v)p.w=SSF._general_int(p.v,_ssfopts);else p.w=SSF._general_num(p.v,_ssfopts)}else if(p.t==="d"){var dd=datenum(p.v);if((dd|0)===dd)p.w=SSF._general_int(dd,_ssfopts);else p.w=SSF._general_num(dd,_ssfopts)}else if(p.v===undefined)return"";else p.w=SSF._general(p.v,_ssfopts)}else if(p.t==="d")p.w=SSF.format(fmtid,datenum(p.v),_ssfopts);else p.w=SSF.format(fmtid,p.v,_ssfopts);if(opts.cellNF)p.z=SSF._table[fmtid]}catch(e){if(opts.WTF)throw e}}function parse_ws_xml_dim(ws,s){var d=safe_decode_range(s);if(d.s.r<=d.e.r&&d.s.c<=d.e.c&&d.s.r>=0&&d.s.c>=0)ws["!ref"]=encode_range(d)}var mergecregex=/<mergeCell ref="[A-Z0-9:]+"\s*\/>/g;var sheetdataregex=/<(?:\w+:)?sheetData>([^\u2603]*)<\/(?:\w+:)?sheetData>/;var hlinkregex=/<hyperlink[^>]*\/>/g;var dimregex=/"(\w*:\w*)"/;var colregex=/<col[^>]*\/>/g;function parse_ws_xml(data,opts,rels){if(!data)return data;var s={};var ridx=data.indexOf("<dimension");if(ridx>0){var ref=data.substr(ridx,50).match(dimregex);if(ref!=null)parse_ws_xml_dim(s,ref[1])}var mergecells=[];if(data.indexOf("</mergeCells>")!==-1){var merges=data.match(mergecregex);for(ridx=0;ridx!=merges.length;++ridx)mergecells[ridx]=safe_decode_range(merges[ridx].substr(merges[ridx].indexOf('"')+1))}var columns=[];if(opts.cellStyles&&data.indexOf("</cols>")!==-1){var cols=data.match(colregex);parse_ws_xml_cols(columns,cols)}var refguess={s:{r:1e6,c:1e6},e:{r:0,c:0}};var mtch=data.match(sheetdataregex);if(mtch)parse_ws_xml_data(mtch[1],s,opts,refguess);if(data.indexOf("</hyperlinks>")!==-1)parse_ws_xml_hlinks(s,data.match(hlinkregex),rels);if(!s["!ref"]&&refguess.e.c>=refguess.s.c&&refguess.e.r>=refguess.s.r)s["!ref"]=encode_range(refguess);if(opts.sheetRows>0&&s["!ref"]){var tmpref=safe_decode_range(s["!ref"]);if(opts.sheetRows<+tmpref.e.r){tmpref.e.r=opts.sheetRows-1;if(tmpref.e.r>refguess.e.r)tmpref.e.r=refguess.e.r;if(tmpref.e.r<tmpref.s.r)tmpref.s.r=tmpref.e.r;if(tmpref.e.c>refguess.e.c)tmpref.e.c=refguess.e.c;if(tmpref.e.c<tmpref.s.c)tmpref.s.c=tmpref.e.c;s["!fullref"]=s["!ref"];s["!ref"]=encode_range(tmpref)}}if(mergecells.length>0)s["!merges"]=mergecells;if(columns.length>0)s["!cols"]=columns;return s}function write_ws_xml_merges(merges){if(merges.length==0)return"";var o='<mergeCells count="'+merges.length+'">';for(var i=0;i!=merges.length;++i)o+='<mergeCell ref="'+encode_range(merges[i])+'"/>';return o+"</mergeCells>"}function write_ws_xml_pagesetup(setup){var pageSetup=writextag("pageSetup",null,{scale:setup.scale||"100",orientation:setup.orientation||"portrait",horizontalDpi:setup.horizontalDpi||"4294967292",verticalDpi:setup.verticalDpi||"4294967292"});return pageSetup}function parse_ws_xml_hlinks(s,data,rels){for(var i=0;i!=data.length;++i){var val=parsexmltag(data[i],true);if(!val.ref)return;var rel=rels?rels["!id"][val.id]:null;if(rel){val.Target=rel.Target;if(val.location)val.Target+="#"+val.location;val.Rel=rel}else{val.Target=val.location;rel={Target:val.location,TargetMode:"Internal"};val.Rel=rel}var rng=safe_decode_range(val.ref);for(var R=rng.s.r;R<=rng.e.r;++R)for(var C=rng.s.c;C<=rng.e.c;++C){var addr=encode_cell({c:C,r:R});if(!s[addr])s[addr]={t:"stub",v:undefined};s[addr].l=val}}}function parse_ws_xml_cols(columns,cols){var seencol=false;for(var coli=0;coli!=cols.length;++coli){var coll=parsexmltag(cols[coli],true);var colm=parseInt(coll.min,10)-1,colM=parseInt(coll.max,10)-1;delete coll.min;delete coll.max;if(!seencol&&coll.width){seencol=true;find_mdw(+coll.width,coll)}if(coll.width){coll.wpx=width2px(+coll.width);coll.wch=px2char(coll.wpx);coll.MDW=MDW}while(colm<=colM)columns[colm++]=coll}}function write_ws_xml_cols(ws,cols){var o=["<cols>"],col,width;for(var i=0;i!=cols.length;++i){if(!(col=cols[i]))continue;var p={min:i+1,max:i+1};width=-1;if(col.wpx)width=px2char(col.wpx);else if(col.wch)width=col.wch;if(width>-1){p.width=char2width(width);p.customWidth=1}o[o.length]=writextag("col",null,p)}o[o.length]="</cols>";return o.join("")}function write_ws_xml_cell(cell,ref,ws,opts,idx,wb){if(cell.v===undefined&&cell.s===undefined)return"";var vv="";var oldt=cell.t,oldv=cell.v;switch(cell.t){case"b":vv=cell.v?"1":"0";break;case"n":vv=""+cell.v;break;case"e":vv=BErr[cell.v];break;case"d":if(opts.cellDates)vv=new Date(cell.v).toISOString();else{cell.t="n";vv=""+(cell.v=datenum(cell.v));if(typeof cell.z==="undefined")cell.z=SSF._table[14]}break;default:vv=cell.v;break}var v=writetag("v",escapexml(vv)),o={r:ref};var os=get_cell_style(opts.cellXfs,cell,opts);if(os!==0)o.s=os;switch(cell.t){case"n":break;case"d":o.t="d";break;case"b":o.t="b";break;case"e":o.t="e";break;default:if(opts.bookSST){v=writetag("v",""+get_sst_id(opts.Strings,cell.v));o.t="s";break}o.t="str";break}if(cell.t!=oldt){cell.t=oldt;cell.v=oldv}return writextag("c",v,o)}var parse_ws_xml_data=function parse_ws_xml_data_factory(){var cellregex=/<(?:\w+:)?c[ >]/,rowregex=/<\/(?:\w+:)?row>/;var rregex=/r=["']([^"']*)["']/,isregex=/<is>([\S\s]*?)<\/is>/;var match_v=matchtag("v"),match_f=matchtag("f");return function parse_ws_xml_data(sdata,s,opts,guess){var ri=0,x="",cells=[],cref=[],idx=0,i=0,cc=0,d="",p;var tag,tagr=0,tagc=0;var sstr;var fmtid=0,fillid=0,do_format=Array.isArray(styles.CellXf),cf;for(var marr=sdata.split(rowregex),mt=0,marrlen=marr.length;mt!=marrlen;++mt){x=marr[mt].trim();var xlen=x.length;if(xlen===0)continue;for(ri=0;ri<xlen;++ri)if(x.charCodeAt(ri)===62)break;++ri;tag=parsexmltag(x.substr(0,ri),true);tagr=typeof tag.r!=="undefined"?parseInt(tag.r,10):tagr+1;tagc=-1;if(opts.sheetRows&&opts.sheetRows<tagr)continue;if(guess.s.r>tagr-1)guess.s.r=tagr-1;if(guess.e.r<tagr-1)guess.e.r=tagr-1;cells=x.substr(ri).split(cellregex);for(ri=typeof tag.r==="undefined"?0:1;ri!=cells.length;++ri){x=cells[ri].trim();if(x.length===0)continue;cref=x.match(rregex);idx=ri;i=0;cc=0;x="<c "+(x.substr(0,1)=="<"?">":"")+x;if(cref!==null&&cref.length===2){idx=0;d=cref[1];for(i=0;i!=d.length;++i){if((cc=d.charCodeAt(i)-64)<1||cc>26)break;idx=26*idx+cc}--idx;tagc=idx}else++tagc;for(i=0;i!=x.length;++i)if(x.charCodeAt(i)===62)break;++i;tag=parsexmltag(x.substr(0,i),true);if(!tag.r)tag.r=utils.encode_cell({r:tagr-1,c:tagc});d=x.substr(i);p={t:""};if((cref=d.match(match_v))!==null&&cref[1]!=="")p.v=unescapexml(cref[1]);if(opts.cellFormula&&(cref=d.match(match_f))!==null)p.f=unescapexml(cref[1]);if(tag.t===undefined&&tag.s===undefined&&p.v===undefined){if(!opts.sheetStubs)continue;p.t="stub"}else p.t=tag.t||"n";if(guess.s.c>idx)guess.s.c=idx;if(guess.e.c<idx)guess.e.c=idx;switch(p.t){case"n":p.v=parseFloat(p.v);if(isNaN(p.v))p.v="";break;case"s":sstr=strs[parseInt(p.v,10)];p.v=sstr.t;p.r=sstr.r;if(opts.cellHTML)p.h=sstr.h;break;case"str":p.t="s";p.v=p.v!=null?utf8read(p.v):"";if(opts.cellHTML)p.h=p.v;break;case"inlineStr":cref=d.match(isregex);p.t="s";if(cref!==null){sstr=parse_si(cref[1]);p.v=sstr.t}else p.v="";break;case"b":p.v=parsexmlbool(p.v);break;case"d":if(!opts.cellDates){p.v=datenum(p.v);p.t="n"}break;case"e":p.w=p.v;p.v=RBErr[p.v];break}fmtid=fillid=0;if(do_format&&tag.s!==undefined){cf=styles.CellXf[tag.s];if(opts.cellStyles){p.s=get_cell_style_csf(cf)}if(cf!=null){if(cf.numFmtId!=null)fmtid=cf.numFmtId;if(opts.cellStyles&&cf.fillId!=null)fillid=cf.fillId}}safe_format(p,fmtid,fillid,opts);s[tag.r]=p}}}}();function write_ws_xml_data(ws,opts,idx,wb){var o=[],r=[],range=safe_decode_range(ws["!ref"]),cell,ref,rr="",cols=[],R,C;for(C=range.s.c;C<=range.e.c;++C)cols[C]=encode_col(C);for(R=range.s.r;R<=range.e.r;++R){r=[];rr=encode_row(R);for(C=range.s.c;C<=range.e.c;++C){ref=cols[C]+rr;if(ws[ref]===undefined)continue;if((cell=write_ws_xml_cell(ws[ref],ref,ws,opts,idx,wb))!=null)r.push(cell)}if(r.length>0)o[o.length]=writextag("row",r.join(""),{r:rr})}return o.join("")}var WS_XML_ROOT=writextag("worksheet",null,{xmlns:XMLNS.main[0],"xmlns:r":XMLNS.r});function write_ws_xml(idx,opts,wb){var o=[XML_HEADER,WS_XML_ROOT];var s=wb.SheetNames[idx],sidx=0,rdata="";var ws=wb.Sheets[s];if(ws===undefined)ws={};var ref=ws["!ref"];if(ref===undefined)ref="A1";o[o.length]=writextag("dimension",null,{ref:ref});var kids=[];if(ws["!freeze"]){var pane="";pane=writextag("pane",null,ws["!freeze"]);kids.push(pane);var selection=writextag("selection",null,{pane:"topLeft"});kids.push(selection);var selection=writextag("selection",null,{pane:"bottomLeft"});kids.push(selection);var selection=writextag("selection",null,{pane:"bottomRight",activeCell:ws["!freeze"],sqref:ws["!freeze"]});kids.push(selection)}var sheetView=writextag("sheetView",kids.join("")||undefined,{showGridLines:opts.showGridLines==false?"0":"1",tabSelected:opts.tabSelected===undefined?"0":opts.tabSelected,workbookViewId:opts.workbookViewId===undefined?"0":opts.workbookViewId});o[o.length]=writextag("sheetViews",sheetView);if(ws["!cols"]!==undefined&&ws["!cols"].length>0)o[o.length]=write_ws_xml_cols(ws,ws["!cols"]);o[sidx=o.length]="<sheetData/>";if(ws["!ref"]!==undefined){rdata=write_ws_xml_data(ws,opts,idx,wb);if(rdata.length>0)o[o.length]=rdata}if(o.length>sidx+1){o[o.length]="</sheetData>";o[sidx]=o[sidx].replace("/>",">")}if(ws["!merges"]!==undefined&&ws["!merges"].length>0)o[o.length]=write_ws_xml_merges(ws["!merges"]);if(ws["!pageSetup"]!==undefined)o[o.length]=write_ws_xml_pagesetup(ws["!pageSetup"]);if(ws["!rowBreaks"]!==undefined)o[o.length]=write_ws_xml_row_breaks(ws["!rowBreaks"]);if(ws["!colBreaks"]!==undefined)o[o.length]=write_ws_xml_col_breaks(ws["!colBreaks"]);if(o.length>2){o[o.length]="</worksheet>";o[1]=o[1].replace("/>",">")}return o.join("")}function write_ws_xml_row_breaks(breaks){var brk=[];for(var i=0;i<breaks.length;i++){var thisBreak=""+breaks[i];var nextBreak=""+(breaks[i+1]||"16383");brk.push(writextag("brk",null,{id:thisBreak,max:nextBreak,man:"1"}))}return writextag("rowBreaks",brk.join(" "),{count:brk.length,manualBreakCount:brk.length})}function write_ws_xml_col_breaks(breaks){var brk=[];for(var i=0;i<breaks.length;i++){var thisBreak=""+breaks[i];var nextBreak=""+(breaks[i+1]||"1048575");brk.push(writextag("brk",null,{id:thisBreak,max:nextBreak,man:"1"}))}return writextag("colBreaks",brk.join(" "),{count:brk.length,manualBreakCount:brk.length})}function parse_BrtRowHdr(data,length){var z=[];z.r=data.read_shift(4);data.l+=length-4;return z}var parse_BrtWsDim=parse_UncheckedRfX;var write_BrtWsDim=write_UncheckedRfX;function parse_BrtWsProp(data,length){var z={};data.l+=19;z.name=parse_XLSBCodeName(data,length-19);return z}function parse_BrtCellBlank(data,length){var cell=parse_XLSBCell(data);return[cell]}function write_BrtCellBlank(cell,val,o){if(o==null)o=new_buf(8);return write_XLSBCell(val,o)}function parse_BrtCellBool(data,length){var cell=parse_XLSBCell(data);var fBool=data.read_shift(1);return[cell,fBool,"b"]}function parse_BrtCellError(data,length){var cell=parse_XLSBCell(data);var fBool=data.read_shift(1);return[cell,fBool,"e"]}function parse_BrtCellIsst(data,length){var cell=parse_XLSBCell(data);var isst=data.read_shift(4);return[cell,isst,"s"]}function parse_BrtCellReal(data,length){var cell=parse_XLSBCell(data);var value=parse_Xnum(data);return[cell,value,"n"]}function parse_BrtCellRk(data,length){var cell=parse_XLSBCell(data);var value=parse_RkNumber(data);return[cell,value,"n"]}function parse_BrtCellSt(data,length){var cell=parse_XLSBCell(data);var value=parse_XLWideString(data);return[cell,value,"str"]}function parse_BrtFmlaBool(data,length,opts){var cell=parse_XLSBCell(data);var value=data.read_shift(1);var o=[cell,value,"b"];if(opts.cellFormula){var formula=parse_XLSBCellParsedFormula(data,length-9);o[3]=""}else data.l+=length-9;return o}function parse_BrtFmlaError(data,length,opts){var cell=parse_XLSBCell(data);var value=data.read_shift(1);var o=[cell,value,"e"];if(opts.cellFormula){var formula=parse_XLSBCellParsedFormula(data,length-9);o[3]=""}else data.l+=length-9;return o}function parse_BrtFmlaNum(data,length,opts){var cell=parse_XLSBCell(data);var value=parse_Xnum(data);var o=[cell,value,"n"];if(opts.cellFormula){var formula=parse_XLSBCellParsedFormula(data,length-16);o[3]=""}else data.l+=length-16;return o}function parse_BrtFmlaString(data,length,opts){var start=data.l;var cell=parse_XLSBCell(data);var value=parse_XLWideString(data);var o=[cell,value,"str"];if(opts.cellFormula){var formula=parse_XLSBCellParsedFormula(data,start+length-data.l)}else data.l=start+length;return o}var parse_BrtMergeCell=parse_UncheckedRfX;function parse_BrtHLink(data,length,opts){var end=data.l+length;var rfx=parse_UncheckedRfX(data,16);var relId=parse_XLNullableWideString(data);var loc=parse_XLWideString(data);var tooltip=parse_XLWideString(data);var display=parse_XLWideString(data);data.l=end;return{rfx:rfx,relId:relId,loc:loc,tooltip:tooltip,display:display}}function parse_ws_bin(data,opts,rels){if(!data)return data;if(!rels)rels={"!id":{}};var s={};var ref;var refguess={s:{r:1e6,c:1e6},e:{r:0,c:0}};var pass=false,end=false;var row,p,cf,R,C,addr,sstr,rr;var mergecells=[];recordhopper(data,function ws_parse(val,R){if(end)return;switch(R.n){case"BrtWsDim":ref=val;break;case"BrtRowHdr":row=val;if(opts.sheetRows&&opts.sheetRows<=row.r)end=true;rr=encode_row(row.r);break;case"BrtFmlaBool":case"BrtFmlaError":case"BrtFmlaNum":case"BrtFmlaString":case"BrtCellBool":case"BrtCellError":case"BrtCellIsst":case"BrtCellReal":case"BrtCellRk":case"BrtCellSt":p={t:val[2]};switch(val[2]){case"n":p.v=val[1];break;case"s":sstr=strs[val[1]];p.v=sstr.t;p.r=sstr.r;break;case"b":p.v=val[1]?true:false;break;case"e":p.v=val[1];p.w=BErr[p.v];break;case"str":p.t="s";p.v=utf8read(val[1]);break}if(opts.cellFormula&&val.length>3)p.f=val[3];if(cf=styles.CellXf[val[0].iStyleRef])safe_format(p,cf.ifmt,null,opts);s[encode_col(C=val[0].c)+rr]=p;if(refguess.s.r>row.r)refguess.s.r=row.r;if(refguess.s.c>C)refguess.s.c=C;if(refguess.e.r<row.r)refguess.e.r=row.r;if(refguess.e.c<C)refguess.e.c=C;break;case"BrtCellBlank":if(!opts.sheetStubs)break;p={t:"s",v:undefined};s[encode_col(C=val[0].c)+rr]=p;if(refguess.s.r>row.r)refguess.s.r=row.r;if(refguess.s.c>C)refguess.s.c=C;if(refguess.e.r<row.r)refguess.e.r=row.r;if(refguess.e.c<C)refguess.e.c=C;break;case"BrtBeginMergeCells":break;case"BrtEndMergeCells":break;case"BrtMergeCell":mergecells.push(val);break;case"BrtHLink":var rel=rels["!id"][val.relId];if(rel){val.Target=rel.Target;if(val.loc)val.Target+="#"+val.loc;val.Rel=rel}for(R=val.rfx.s.r;R<=val.rfx.e.r;++R)for(C=val.rfx.s.c;C<=val.rfx.e.c;++C){addr=encode_cell({c:C,r:R});if(!s[addr])s[addr]={t:"s",v:undefined};s[addr].l=val}break;case"BrtArrFmla":break;case"BrtShrFmla":break;case"BrtBeginSheet":break;case"BrtWsProp":break;case"BrtSheetCalcProp":break;case"BrtBeginWsViews":break;case"BrtBeginWsView":break;case"BrtPane":break;case"BrtSel":break;case"BrtEndWsView":break;case"BrtEndWsViews":break;case"BrtACBegin":break;case"BrtRwDescent":break;case"BrtACEnd":break;case"BrtWsFmtInfoEx14":break;case"BrtWsFmtInfo":break;case"BrtBeginColInfos":break;case"BrtColInfo":break;case"BrtEndColInfos":break;case"BrtBeginSheetData":break;case"BrtEndSheetData":break;case"BrtSheetProtection":break;case"BrtPrintOptions":break;case"BrtMargins":break;case"BrtPageSetup":break;case"BrtFRTBegin":pass=true;break;case"BrtFRTEnd":pass=false;break;case"BrtEndSheet":break;case"BrtDrawing":break;case"BrtLegacyDrawing":break;case"BrtLegacyDrawingHF":break;case"BrtPhoneticInfo":break;case"BrtBeginHeaderFooter":break;case"BrtEndHeaderFooter":break;case"BrtBrk":break;case"BrtBeginRwBrk":break;case"BrtEndRwBrk":break;case"BrtBeginColBrk":break;case"BrtEndColBrk":break;case"BrtBeginUserShViews":break;case"BrtBeginUserShView":break;case"BrtEndUserShView":break;case"BrtEndUserShViews":break;case"BrtBkHim":break;case"BrtBeginOleObjects":break;case"BrtOleObject":break;case"BrtEndOleObjects":break;case"BrtBeginListParts":break;case"BrtListPart":break;case"BrtEndListParts":break;case"BrtBeginSortState":break;case"BrtBeginSortCond":break;case"BrtEndSortCond":break;case"BrtEndSortState":break;case"BrtBeginConditionalFormatting":break;case"BrtEndConditionalFormatting":break;case"BrtBeginCFRule":break;case"BrtEndCFRule":break;case"BrtBeginDVals":break;case"BrtDVal":break;case"BrtEndDVals":break;case"BrtRangeProtection":break;case"BrtBeginDCon":break;case"BrtEndDCon":break;case"BrtBeginDRefs":break;case"BrtDRef":break;case"BrtEndDRefs":break;case"BrtBeginActiveXControls":break;case"BrtActiveX":break;case"BrtEndActiveXControls":break;case"BrtBeginAFilter":break;case"BrtEndAFilter":break;case"BrtBeginFilterColumn":break;case"BrtBeginFilters":break;case"BrtFilter":break;case"BrtEndFilters":break;case"BrtEndFilterColumn":break;case"BrtDynamicFilter":break;case"BrtTop10Filter":break;case"BrtBeginCustomFilters":break;case"BrtCustomFilter":break;case"BrtEndCustomFilters":break;case"BrtBeginSmartTags":break;case"BrtBeginCellSmartTags":break;case"BrtBeginCellSmartTag":break;case"BrtCellSmartTagProperty":break;case"BrtEndCellSmartTag":break;case"BrtEndCellSmartTags":break;case"BrtEndSmartTags":break;case"BrtBeginCellWatches":break;case"BrtCellWatch":break;case"BrtEndCellWatches":break;case"BrtTable":break;case"BrtBeginCellIgnoreECs":break;case"BrtCellIgnoreEC":break;case"BrtEndCellIgnoreECs":break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+R.n)}},opts);if(!s["!ref"]&&(refguess.s.r<1e6||ref.e.r>0||ref.e.c>0||ref.s.r>0||ref.s.c>0))s["!ref"]=encode_range(ref);if(opts.sheetRows&&s["!ref"]){var tmpref=safe_decode_range(s["!ref"]);if(opts.sheetRows<+tmpref.e.r){tmpref.e.r=opts.sheetRows-1;if(tmpref.e.r>refguess.e.r)tmpref.e.r=refguess.e.r;if(tmpref.e.r<tmpref.s.r)tmpref.s.r=tmpref.e.r;if(tmpref.e.c>refguess.e.c)tmpref.e.c=refguess.e.c;if(tmpref.e.c<tmpref.s.c)tmpref.s.c=tmpref.e.c;s["!fullref"]=s["!ref"];s["!ref"]=encode_range(tmpref)}}if(mergecells.length>0)s["!merges"]=mergecells;return s}function write_ws_bin_cell(ba,cell,R,C,opts){if(cell.v===undefined)return"";var vv="";switch(cell.t){case"b":vv=cell.v?"1":"0";break;case"n":case"e":vv=""+cell.v;break;default:vv=cell.v;break}var o={r:R,c:C};o.s=get_cell_style(opts.cellXfs,cell,opts);switch(cell.t){case"s":case"str":if(opts.bookSST){vv=get_sst_id(opts.Strings,cell.v);o.t="s";break}o.t="str";break;case"n":break;case"b":o.t="b";break;case"e":o.t="e";break}write_record(ba,"BrtCellBlank",write_BrtCellBlank(cell,o))}function write_CELLTABLE(ba,ws,idx,opts,wb){var range=safe_decode_range(ws["!ref"]||"A1"),ref,rr="",cols=[];write_record(ba,"BrtBeginSheetData");for(var R=range.s.r;R<=range.e.r;++R){rr=encode_row(R);for(var C=range.s.c;C<=range.e.c;++C){if(R===range.s.r)cols[C]=encode_col(C);ref=cols[C]+rr;if(!ws[ref])continue;write_ws_bin_cell(ba,ws[ref],R,C,opts)}}write_record(ba,"BrtEndSheetData")}function write_ws_bin(idx,opts,wb){var ba=buf_array();var s=wb.SheetNames[idx],ws=wb.Sheets[s]||{};var r=safe_decode_range(ws["!ref"]||"A1");write_record(ba,"BrtBeginSheet");write_record(ba,"BrtWsDim",write_BrtWsDim(r));write_CELLTABLE(ba,ws,idx,opts,wb);write_record(ba,"BrtEndSheet");return ba.end()}var WBPropsDef=[["allowRefreshQuery","0"],["autoCompressPictures","1"],["backupFile","0"],["checkCompatibility","0"],["codeName",""],["date1904","0"],["dateCompatibility","1"],["filterPrivacy","0"],["hidePivotFieldList","0"],["promptedSolutions","0"],["publishItems","0"],["refreshAllConnections",false],["saveExternalLinkValues","1"],["showBorderUnselectedTables","1"],["showInkAnnotation","1"],["showObjects","all"],["showPivotChartFilter","0"]];var WBViewDef=[["activeTab","0"],["autoFilterDateGrouping","1"],["firstSheet","0"],["minimized","0"],["showHorizontalScroll","1"],["showSheetTabs","1"],["showVerticalScroll","1"],["tabRatio","600"],["visibility","visible"]];var SheetDef=[["state","visible"]];var CalcPrDef=[["calcCompleted","true"],["calcMode","auto"],["calcOnSave","true"],["concurrentCalc","true"],["fullCalcOnLoad","false"],["fullPrecision","true"],["iterate","false"],["iterateCount","100"],["iterateDelta","0.001"],["refMode","A1"]];var CustomWBViewDef=[["autoUpdate","false"],["changesSavedWin","false"],["includeHiddenRowCol","true"],["includePrintSettings","true"],["maximized","false"],["minimized","false"],["onlySync","false"],["personalView","false"],["showComments","commIndicator"],["showFormulaBar","true"],["showHorizontalScroll","true"],["showObjects","all"],["showSheetTabs","true"],["showStatusbar","true"],["showVerticalScroll","true"],["tabRatio","600"],["xWindow","0"],["yWindow","0"]];function push_defaults_array(target,defaults){for(var j=0;j!=target.length;++j){var w=target[j];for(var i=0;i!=defaults.length;++i){var z=defaults[i];if(w[z[0]]==null)w[z[0]]=z[1]}}}function push_defaults(target,defaults){for(var i=0;i!=defaults.length;++i){var z=defaults[i];if(target[z[0]]==null)target[z[0]]=z[1]}}function parse_wb_defaults(wb){push_defaults(wb.WBProps,WBPropsDef);push_defaults(wb.CalcPr,CalcPrDef);push_defaults_array(wb.WBView,WBViewDef);push_defaults_array(wb.Sheets,SheetDef);_ssfopts.date1904=parsexmlbool(wb.WBProps.date1904,"date1904")}var wbnsregex=/<\w+:workbook/;function parse_wb_xml(data,opts){var wb={AppVersion:{},WBProps:{},WBView:[],Sheets:[],CalcPr:{},xmlns:""};var pass=false,xmlns="xmlns";data.match(tagregex).forEach(function xml_wb(x){var y=parsexmltag(x);switch(strip_ns(y[0])){case"<?xml":break;case"<workbook":if(x.match(wbnsregex))xmlns="xmlns"+x.match(/<(\w+):/)[1];wb.xmlns=y[xmlns];break;case"</workbook>":break;case"<fileVersion":delete y[0];wb.AppVersion=y;break;case"<fileVersion/>":break;case"<fileSharing":case"<fileSharing/>":break;case"<workbookPr":delete y[0];wb.WBProps=y;break;case"<workbookPr/>":delete y[0];wb.WBProps=y;break;case"<workbookProtection":break;case"<workbookProtection/>":break;case"<bookViews>":case"</bookViews>":break;case"<workbookView":delete y[0];wb.WBView.push(y);break;case"<sheets>":case"</sheets>":break;case"<sheet":delete y[0];y.name=utf8read(y.name);wb.Sheets.push(y);break;case"<functionGroups":case"<functionGroups/>":break;case"<functionGroup":break;case"<externalReferences":case"</externalReferences>":case"<externalReferences>":break;case"<externalReference":break;case"<definedNames/>":break;case"<definedNames>":case"<definedNames":pass=true;break;case"</definedNames>":pass=false;break;case"<definedName":case"<definedName/>":case"</definedName>":break;case"<calcPr":delete y[0];wb.CalcPr=y;break;case"<calcPr/>":delete y[0];wb.CalcPr=y;break;case"<oleSize":break;case"<customWorkbookViews>":case"</customWorkbookViews>":case"<customWorkbookViews":break;case"<customWorkbookView":case"</customWorkbookView>":break;case"<pivotCaches>":case"</pivotCaches>":case"<pivotCaches":break;case"<pivotCache":break;case"<smartTagPr":case"<smartTagPr/>":break;case"<smartTagTypes":case"<smartTagTypes>":case"</smartTagTypes>":break;case"<smartTagType":break;case"<webPublishing":case"<webPublishing/>":break;case"<fileRecoveryPr":case"<fileRecoveryPr/>":break;case"<webPublishObjects>":case"<webPublishObjects":case"</webPublishObjects>":break;case"<webPublishObject":break;case"<extLst>":case"</extLst>":case"<extLst/>":break;case"<ext":pass=true;break;case"</ext>":pass=false;break;case"<ArchID":break;case"<AlternateContent":pass=true;break;case"</AlternateContent>":pass=false;break;default:if(!pass&&opts.WTF)throw"unrecognized "+y[0]+" in workbook"}});if(XMLNS.main.indexOf(wb.xmlns)===-1)throw new Error("Unknown Namespace: "+wb.xmlns);parse_wb_defaults(wb);return wb}var WB_XML_ROOT=writextag("workbook",null,{xmlns:XMLNS.main[0],"xmlns:r":XMLNS.r});function safe1904(wb){try{return parsexmlbool(wb.Workbook.WBProps.date1904)?"true":"false"}catch(e){return"false"}}function write_wb_xml(wb,opts){var o=[XML_HEADER];o[o.length]=WB_XML_ROOT;o[o.length]=writextag("workbookPr",null,{date1904:safe1904(wb)});o[o.length]="<sheets>";for(var i=0;i!=wb.SheetNames.length;++i)o[o.length]=writextag("sheet",null,{name:wb.SheetNames[i].substr(0,31),sheetId:""+(i+1),"r:id":"rId"+(i+1)});o[o.length]="</sheets>";var hasPrintHeaders=false;for(var i=0;i!=wb.SheetNames.length;++i){var sheetName=wb.SheetNames[i];var sheet=wb.Sheets[sheetName];if(sheet["!printHeader"]){if(sheet["!printHeader"].length!==2){throw"!printHeaders must be an array of length 2: "+sheet["!printHeader"]}hasPrintHeaders=true}}if(hasPrintHeaders){o[o.length]="<definedNames>";for(var i=0;i!=wb.SheetNames.length;++i){var sheetName=wb.SheetNames[i];var sheet=wb.Sheets[sheetName];if(sheet["!printHeader"]||sheet["!printColumns"]){var printHeader=sheet["!printHeader"];var printColumns=sheet["!printColumns"];var range="";if(printColumns)range+="'"+sheetName+"'!"+("$"+printColumns[0]+":$"+printColumns[1]);if(printColumns&&printHeader)range+=",";if(printHeader)range+="'"+sheetName+"'!"+("$"+printHeader[0]+":$"+printHeader[1]);console.log("-----------------------------");console.log(range);o[o.length]=writextag("definedName",range,{name:"_xlnm.Print_Titles",localSheetId:""+i})}}o[o.length]="</definedNames>"}if(o.length>2){o[o.length]="</workbook>";o[1]=o[1].replace("/>",">")}return o.join("")}function parse_BrtBundleSh(data,length){var z={};z.hsState=data.read_shift(4);z.iTabID=data.read_shift(4);z.strRelID=parse_RelID(data,length-8);z.name=parse_XLWideString(data);return z}function write_BrtBundleSh(data,o){if(!o)o=new_buf(127);o.write_shift(4,data.hsState);o.write_shift(4,data.iTabID);write_RelID(data.strRelID,o);write_XLWideString(data.name.substr(0,31),o);return o}function parse_BrtWbProp(data,length){data.read_shift(4);var dwThemeVersion=data.read_shift(4);var strName=length>8?parse_XLWideString(data):"";return[dwThemeVersion,strName]}function write_BrtWbProp(data,o){if(!o)o=new_buf(8);o.write_shift(4,0);o.write_shift(4,0);return o}function parse_BrtFRTArchID$(data,length){var o={};data.read_shift(4);o.ArchID=data.read_shift(4);data.l+=length-8;return o}function parse_wb_bin(data,opts){var wb={AppVersion:{},WBProps:{},WBView:[],Sheets:[],CalcPr:{},xmlns:""};var pass=false,z;recordhopper(data,function hopper_wb(val,R){switch(R.n){case"BrtBundleSh":wb.Sheets.push(val);break;case"BrtBeginBook":break;case"BrtFileVersion":break;case"BrtWbProp":break;case"BrtACBegin":break;case"BrtAbsPath15":break;case"BrtACEnd":break;case"BrtWbFactoid":break;case"BrtBookProtection":break;case"BrtBeginBookViews":break;case"BrtBookView":break;case"BrtEndBookViews":break;case"BrtBeginBundleShs":break;case"BrtEndBundleShs":break;case"BrtBeginFnGroup":break;case"BrtEndFnGroup":break;case"BrtBeginExternals":break;case"BrtSupSelf":break;case"BrtSupBookSrc":break;case"BrtExternSheet":break;case"BrtEndExternals":break;case"BrtName":break;case"BrtCalcProp":break;case"BrtUserBookView":break;case"BrtBeginPivotCacheIDs":break;case"BrtBeginPivotCacheID":break;case"BrtEndPivotCacheID":break;case"BrtEndPivotCacheIDs":break;case"BrtWebOpt":break;case"BrtFileRecover":break;case"BrtFileSharing":break;case"BrtBeginSmartTagTypes":break;case"BrtSmartTagType":break;case"BrtEndSmartTagTypes":break;case"BrtFRTBegin":pass=true;break;case"BrtFRTArchID$":break;case"BrtWorkBookPr15":break;case"BrtFRTEnd":pass=false;break;case"BrtEndBook":break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+R.n)}});parse_wb_defaults(wb);return wb}function write_BUNDLESHS(ba,wb,opts){write_record(ba,"BrtBeginBundleShs");for(var idx=0;idx!=wb.SheetNames.length;++idx){var d={hsState:0,iTabID:idx+1,strRelID:"rId"+(idx+1),name:wb.SheetNames[idx]};write_record(ba,"BrtBundleSh",write_BrtBundleSh(d))}write_record(ba,"BrtEndBundleShs")}function write_BrtFileVersion(data,o){if(!o)o=new_buf(127);for(var i=0;i!=4;++i)o.write_shift(4,0);write_XLWideString("SheetJS",o);write_XLWideString(XLSX.version,o);write_XLWideString(XLSX.version,o);write_XLWideString("7262",o);o.length=o.l;return o}function write_BOOKVIEWS(ba,wb,opts){write_record(ba,"BrtBeginBookViews");write_record(ba,"BrtEndBookViews")}function write_BrtCalcProp(data,o){if(!o)o=new_buf(26);o.write_shift(4,0);o.write_shift(4,1);o.write_shift(4,0);write_Xnum(0,o);o.write_shift(-4,1023);o.write_shift(1,51);o.write_shift(1,0);return o}function write_BrtFileRecover(data,o){if(!o)o=new_buf(1);o.write_shift(1,0);return o}function write_wb_bin(wb,opts){var ba=buf_array();write_record(ba,"BrtBeginBook");write_record(ba,"BrtFileVersion",write_BrtFileVersion());write_record(ba,"BrtWbProp",write_BrtWbProp());write_BOOKVIEWS(ba,wb,opts);write_BUNDLESHS(ba,wb,opts);write_record(ba,"BrtCalcProp",write_BrtCalcProp());write_record(ba,"BrtFileRecover",write_BrtFileRecover());write_record(ba,"BrtEndBook");return ba.end()}function parse_wb(data,name,opts){return(name.substr(-4)===".bin"?parse_wb_bin:parse_wb_xml)(data,opts)}function parse_ws(data,name,opts,rels){return(name.substr(-4)===".bin"?parse_ws_bin:parse_ws_xml)(data,opts,rels)}function parse_sty(data,name,opts){return(name.substr(-4)===".bin"?parse_sty_bin:parse_sty_xml)(data,opts)}function parse_theme(data,name,opts){return parse_theme_xml(data,opts)}function parse_sst(data,name,opts){return(name.substr(-4)===".bin"?parse_sst_bin:parse_sst_xml)(data,opts)}function parse_cmnt(data,name,opts){return(name.substr(-4)===".bin"?parse_comments_bin:parse_comments_xml)(data,opts)}function parse_cc(data,name,opts){return(name.substr(-4)===".bin"?parse_cc_bin:parse_cc_xml)(data,opts)}function write_wb(wb,name,opts){return(name.substr(-4)===".bin"?write_wb_bin:write_wb_xml)(wb,opts)}function write_ws(data,name,opts,wb){return(name.substr(-4)===".bin"?write_ws_bin:write_ws_xml)(data,opts,wb)}function write_sty(data,name,opts){return(name.substr(-4)===".bin"?write_sty_bin:write_sty_xml)(data,opts)}function write_sst(data,name,opts){return(name.substr(-4)===".bin"?write_sst_bin:write_sst_xml)(data,opts)}var attregexg2=/([\w:]+)=((?:")([^"]*)(?:")|(?:')([^']*)(?:'))/g;var attregex2=/([\w:]+)=((?:")(?:[^"]*)(?:")|(?:')(?:[^']*)(?:'))/;var _chr=function(c){return String.fromCharCode(c)};function xlml_parsexmltag(tag,skip_root){var words=tag.split(/\s+/);var z=[];if(!skip_root)z[0]=words[0];if(words.length===1)return z;var m=tag.match(attregexg2),y,j,w,i;if(m)for(i=0;i!=m.length;++i){y=m[i].match(attregex2);if((j=y[1].indexOf(":"))===-1)z[y[1]]=y[2].substr(1,y[2].length-2);else{if(y[1].substr(0,6)==="xmlns:")w="xmlns"+y[1].substr(6);else w=y[1].substr(j+1);z[w]=y[2].substr(1,y[2].length-2)}}return z}function xlml_parsexmltagobj(tag){var words=tag.split(/\s+/);var z={};if(words.length===1)return z;var m=tag.match(attregexg2),y,j,w,i;if(m)for(i=0;i!=m.length;++i){y=m[i].match(attregex2);if((j=y[1].indexOf(":"))===-1)z[y[1]]=y[2].substr(1,y[2].length-2);else{if(y[1].substr(0,6)==="xmlns:")w="xmlns"+y[1].substr(6);else w=y[1].substr(j+1);z[w]=y[2].substr(1,y[2].length-2)}}return z}function xlml_format(format,value){var fmt=XLMLFormatMap[format]||unescapexml(format);if(fmt==="General")return SSF._general(value);return SSF.format(fmt,value)}function xlml_set_custprop(Custprops,Rn,cp,val){switch((cp[0].match(/dt:dt="([\w.]+)"/)||["",""])[1]){case"boolean":val=parsexmlbool(val);break;case"i2":case"int":val=parseInt(val,10);break;case"r4":case"float":val=parseFloat(val);break;case"date":case"dateTime.tz":val=new Date(val);break;case"i8":case"string":case"fixed":case"uuid":case"bin.base64":break;default:throw"bad custprop:"+cp[0]}Custprops[unescapexml(Rn[3])]=val}function safe_format_xlml(cell,nf,o){try{if(cell.t==="e"){cell.w=cell.w||BErr[cell.v]}else if(nf==="General"){if(cell.t==="n"){if((cell.v|0)===cell.v)cell.w=SSF._general_int(cell.v);else cell.w=SSF._general_num(cell.v)}else cell.w=SSF._general(cell.v)}else cell.w=xlml_format(nf||"General",cell.v);if(o.cellNF)cell.z=XLMLFormatMap[nf]||nf||"General"}catch(e){if(o.WTF)throw e}}function process_style_xlml(styles,stag,opts){if(opts.cellStyles){if(stag.Interior){var I=stag.Interior;if(I.Pattern)I.patternType=XLMLPatternTypeMap[I.Pattern]||I.Pattern}}styles[stag.ID]=stag}function parse_xlml_data(xml,ss,data,cell,base,styles,csty,row,o){var nf="General",sid=cell.StyleID,S={};o=o||{};var interiors=[];if(sid===undefined&&row)sid=row.StyleID;
if(sid===undefined&&csty)sid=csty.StyleID;while(styles[sid]!==undefined){if(styles[sid].nf)nf=styles[sid].nf;if(styles[sid].Interior)interiors.push(styles[sid].Interior);if(!styles[sid].Parent)break;sid=styles[sid].Parent}switch(data.Type){case"Boolean":cell.t="b";cell.v=parsexmlbool(xml);break;case"String":cell.t="s";cell.r=xlml_fixstr(unescapexml(xml));cell.v=xml.indexOf("<")>-1?ss:cell.r;break;case"DateTime":cell.v=(Date.parse(xml)-new Date(Date.UTC(1899,11,30)))/(24*60*60*1e3);if(cell.v!==cell.v)cell.v=unescapexml(xml);else if(cell.v>=1&&cell.v<60)cell.v=cell.v-1;if(!nf||nf=="General")nf="yyyy-mm-dd";case"Number":if(cell.v===undefined)cell.v=+xml;if(!cell.t)cell.t="n";break;case"Error":cell.t="e";cell.v=RBErr[xml];cell.w=xml;break;default:cell.t="s";cell.v=xlml_fixstr(ss);break}safe_format_xlml(cell,nf,o);if(o.cellFormula!=null&&cell.Formula){cell.f=rc_to_a1(unescapexml(cell.Formula),base);cell.Formula=undefined}if(o.cellStyles){interiors.forEach(function(x){if(!S.patternType&&x.patternType)S.patternType=x.patternType});cell.s=S}cell.ixfe=cell.StyleID!==undefined?cell.StyleID:"Default"}function xlml_clean_comment(comment){comment.t=comment.v;comment.v=comment.w=comment.ixfe=undefined}function xlml_normalize(d){if(has_buf&&Buffer.isBuffer(d))return d.toString("utf8");if(typeof d==="string")return d;throw"badf"}var xlmlregex=/<(\/?)([a-z0-9]*:|)(\w+)[^>]*>/gm;function parse_xlml_xml(d,opts){var str=xlml_normalize(d);var Rn;var state=[],tmp;var sheets={},sheetnames=[],cursheet={},sheetname="";var table={},cell={},row={},dtag,didx;var c=0,r=0;var refguess={s:{r:1e6,c:1e6},e:{r:0,c:0}};var styles={},stag={};var ss="",fidx=0;var mergecells=[];var Props={},Custprops={},pidx=0,cp={};var comments=[],comment={};var cstys=[],csty;xlmlregex.lastIndex=0;while(Rn=xlmlregex.exec(str))switch(Rn[3]){case"Data":if(state[state.length-1][1])break;if(Rn[1]==="/")parse_xlml_data(str.slice(didx,Rn.index),ss,dtag,state[state.length-1][0]=="Comment"?comment:cell,{c:c,r:r},styles,cstys[c],row,opts);else{ss="";dtag=xlml_parsexmltag(Rn[0]);didx=Rn.index+Rn[0].length}break;case"Cell":if(Rn[1]==="/"){if(comments.length>0)cell.c=comments;if((!opts.sheetRows||opts.sheetRows>r)&&cell.v!==undefined)cursheet[encode_col(c)+encode_row(r)]=cell;if(cell.HRef){cell.l={Target:cell.HRef,tooltip:cell.HRefScreenTip};cell.HRef=cell.HRefScreenTip=undefined}if(cell.MergeAcross||cell.MergeDown){var cc=c+(parseInt(cell.MergeAcross,10)|0);var rr=r+(parseInt(cell.MergeDown,10)|0);mergecells.push({s:{c:c,r:r},e:{c:cc,r:rr}})}++c;if(cell.MergeAcross)c+=+cell.MergeAcross}else{cell=xlml_parsexmltagobj(Rn[0]);if(cell.Index)c=+cell.Index-1;if(c<refguess.s.c)refguess.s.c=c;if(c>refguess.e.c)refguess.e.c=c;if(Rn[0].substr(-2)==="/>")++c;comments=[]}break;case"Row":if(Rn[1]==="/"||Rn[0].substr(-2)==="/>"){if(r<refguess.s.r)refguess.s.r=r;if(r>refguess.e.r)refguess.e.r=r;if(Rn[0].substr(-2)==="/>"){row=xlml_parsexmltag(Rn[0]);if(row.Index)r=+row.Index-1}c=0;++r}else{row=xlml_parsexmltag(Rn[0]);if(row.Index)r=+row.Index-1}break;case"Worksheet":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw"Bad state: "+tmp;sheetnames.push(sheetname);if(refguess.s.r<=refguess.e.r&&refguess.s.c<=refguess.e.c)cursheet["!ref"]=encode_range(refguess);if(mergecells.length)cursheet["!merges"]=mergecells;sheets[sheetname]=cursheet}else{refguess={s:{r:1e6,c:1e6},e:{r:0,c:0}};r=c=0;state.push([Rn[3],false]);tmp=xlml_parsexmltag(Rn[0]);sheetname=tmp.Name;cursheet={};mergecells=[]}break;case"Table":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw"Bad state: "+tmp}else if(Rn[0].slice(-2)=="/>")break;else{table=xlml_parsexmltag(Rn[0]);state.push([Rn[3],false]);cstys=[]}break;case"Style":if(Rn[1]==="/")process_style_xlml(styles,stag,opts);else stag=xlml_parsexmltag(Rn[0]);break;case"NumberFormat":stag.nf=xlml_parsexmltag(Rn[0]).Format||"General";break;case"Column":if(state[state.length-1][0]!=="Table")break;csty=xlml_parsexmltag(Rn[0]);cstys[csty.Index-1||cstys.length]=csty;for(var i=0;i<+csty.Span;++i)cstys[cstys.length]=csty;break;case"NamedRange":break;case"NamedCell":break;case"B":break;case"I":break;case"U":break;case"S":break;case"Sub":break;case"Sup":break;case"Span":break;case"Border":break;case"Alignment":break;case"Borders":break;case"Font":if(Rn[0].substr(-2)==="/>")break;else if(Rn[1]==="/")ss+=str.slice(fidx,Rn.index);else fidx=Rn.index+Rn[0].length;break;case"Interior":if(!opts.cellStyles)break;stag.Interior=xlml_parsexmltag(Rn[0]);break;case"Protection":break;case"Author":case"Title":case"Description":case"Created":case"Keywords":case"Subject":case"Category":case"Company":case"LastAuthor":case"LastSaved":case"LastPrinted":case"Version":case"Revision":case"TotalTime":case"HyperlinkBase":case"Manager":if(Rn[0].substr(-2)==="/>")break;else if(Rn[1]==="/")xlml_set_prop(Props,Rn[3],str.slice(pidx,Rn.index));else pidx=Rn.index+Rn[0].length;break;case"Paragraphs":break;case"Styles":case"Workbook":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw"Bad state: "+tmp}else state.push([Rn[3],false]);break;case"Comment":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw"Bad state: "+tmp;xlml_clean_comment(comment);comments.push(comment)}else{state.push([Rn[3],false]);tmp=xlml_parsexmltag(Rn[0]);comment={a:tmp.Author}}break;case"Name":break;case"ComponentOptions":case"DocumentProperties":case"CustomDocumentProperties":case"OfficeDocumentSettings":case"PivotTable":case"PivotCache":case"Names":case"MapInfo":case"PageBreaks":case"QueryTable":case"DataValidation":case"AutoFilter":case"Sorting":case"Schema":case"data":case"ConditionalFormatting":case"SmartTagType":case"SmartTags":case"ExcelWorkbook":case"WorkbookOptions":case"WorksheetOptions":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw"Bad state: "+tmp}else if(Rn[0].charAt(Rn[0].length-2)!=="/")state.push([Rn[3],true]);break;default:var seen=true;switch(state[state.length-1][0]){case"OfficeDocumentSettings":switch(Rn[3]){case"AllowPNG":break;case"RemovePersonalInformation":break;case"DownloadComponents":break;case"LocationOfComponents":break;case"Colors":break;case"Color":break;case"Index":break;case"RGB":break;case"PixelsPerInch":break;case"TargetScreenSize":break;case"ReadOnlyRecommended":break;default:seen=false}break;case"ComponentOptions":switch(Rn[3]){case"Toolbar":break;case"HideOfficeLogo":break;case"SpreadsheetAutoFit":break;case"Label":break;case"Caption":break;case"MaxHeight":break;case"MaxWidth":break;case"NextSheetNumber":break;default:seen=false}break;case"ExcelWorkbook":switch(Rn[3]){case"WindowHeight":break;case"WindowWidth":break;case"WindowTopX":break;case"WindowTopY":break;case"TabRatio":break;case"ProtectStructure":break;case"ProtectWindows":break;case"ActiveSheet":break;case"DisplayInkNotes":break;case"FirstVisibleSheet":break;case"SupBook":break;case"SheetName":break;case"SheetIndex":break;case"SheetIndexFirst":break;case"SheetIndexLast":break;case"Dll":break;case"AcceptLabelsInFormulas":break;case"DoNotSaveLinkValues":break;case"Date1904":break;case"Iteration":break;case"MaxIterations":break;case"MaxChange":break;case"Path":break;case"Xct":break;case"Count":break;case"SelectedSheets":break;case"Calculation":break;case"Uncalced":break;case"StartupPrompt":break;case"Crn":break;case"ExternName":break;case"Formula":break;case"ColFirst":break;case"ColLast":break;case"WantAdvise":break;case"Boolean":break;case"Error":break;case"Text":break;case"OLE":break;case"NoAutoRecover":break;case"PublishObjects":break;case"DoNotCalculateBeforeSave":break;case"Number":break;case"RefModeR1C1":break;case"EmbedSaveSmartTags":break;default:seen=false}break;case"WorkbookOptions":switch(Rn[3]){case"OWCVersion":break;case"Height":break;case"Width":break;default:seen=false}break;case"WorksheetOptions":switch(Rn[3]){case"Unsynced":break;case"Visible":break;case"Print":break;case"Panes":break;case"Scale":break;case"Pane":break;case"Number":break;case"Layout":break;case"Header":break;case"Footer":break;case"PageSetup":break;case"PageMargins":break;case"Selected":break;case"ProtectObjects":break;case"EnableSelection":break;case"ProtectScenarios":break;case"ValidPrinterInfo":break;case"HorizontalResolution":break;case"VerticalResolution":break;case"NumberofCopies":break;case"ActiveRow":break;case"ActiveCol":break;case"ActivePane":break;case"TopRowVisible":break;case"TopRowBottomPane":break;case"LeftColumnVisible":break;case"LeftColumnRightPane":break;case"FitToPage":break;case"RangeSelection":break;case"PaperSizeIndex":break;case"PageLayoutZoom":break;case"PageBreakZoom":break;case"FilterOn":break;case"DoNotDisplayGridlines":break;case"SplitHorizontal":break;case"SplitVertical":break;case"FreezePanes":break;case"FrozenNoSplit":break;case"FitWidth":break;case"FitHeight":break;case"CommentsLayout":break;case"Zoom":break;case"LeftToRight":break;case"Gridlines":break;case"AllowSort":break;case"AllowFilter":break;case"AllowInsertRows":break;case"AllowDeleteRows":break;case"AllowInsertCols":break;case"AllowDeleteCols":break;case"AllowInsertHyperlinks":break;case"AllowFormatCells":break;case"AllowSizeCols":break;case"AllowSizeRows":break;case"NoSummaryRowsBelowDetail":break;case"TabColorIndex":break;case"DoNotDisplayHeadings":break;case"ShowPageLayoutZoom":break;case"NoSummaryColumnsRightDetail":break;case"BlackAndWhite":break;case"DoNotDisplayZeros":break;case"DisplayPageBreak":break;case"RowColHeadings":break;case"DoNotDisplayOutline":break;case"NoOrientation":break;case"AllowUsePivotTables":break;case"ZeroHeight":break;case"ViewableRange":break;case"Selection":break;case"ProtectContents":break;default:seen=false}break;case"PivotTable":case"PivotCache":switch(Rn[3]){case"ImmediateItemsOnDrop":break;case"ShowPageMultipleItemLabel":break;case"CompactRowIndent":break;case"Location":break;case"PivotField":break;case"Orientation":break;case"LayoutForm":break;case"LayoutSubtotalLocation":break;case"LayoutCompactRow":break;case"Position":break;case"PivotItem":break;case"DataType":break;case"DataField":break;case"SourceName":break;case"ParentField":break;case"PTLineItems":break;case"PTLineItem":break;case"CountOfSameItems":break;case"Item":break;case"ItemType":break;case"PTSource":break;case"CacheIndex":break;case"ConsolidationReference":break;case"FileName":break;case"Reference":break;case"NoColumnGrand":break;case"NoRowGrand":break;case"BlankLineAfterItems":break;case"Hidden":break;case"Subtotal":break;case"BaseField":break;case"MapChildItems":break;case"Function":break;case"RefreshOnFileOpen":break;case"PrintSetTitles":break;case"MergeLabels":break;case"DefaultVersion":break;case"RefreshName":break;case"RefreshDate":break;case"RefreshDateCopy":break;case"VersionLastRefresh":break;case"VersionLastUpdate":break;case"VersionUpdateableMin":break;case"VersionRefreshableMin":break;case"Calculation":break;default:seen=false}break;case"PageBreaks":switch(Rn[3]){case"ColBreaks":break;case"ColBreak":break;case"RowBreaks":break;case"RowBreak":break;case"ColStart":break;case"ColEnd":break;case"RowEnd":break;default:seen=false}break;case"AutoFilter":switch(Rn[3]){case"AutoFilterColumn":break;case"AutoFilterCondition":break;case"AutoFilterAnd":break;case"AutoFilterOr":break;default:seen=false}break;case"QueryTable":switch(Rn[3]){case"Id":break;case"AutoFormatFont":break;case"AutoFormatPattern":break;case"QuerySource":break;case"QueryType":break;case"EnableRedirections":break;case"RefreshedInXl9":break;case"URLString":break;case"HTMLTables":break;case"Connection":break;case"CommandText":break;case"RefreshInfo":break;case"NoTitles":break;case"NextId":break;case"ColumnInfo":break;case"OverwriteCells":break;case"DoNotPromptForFile":break;case"TextWizardSettings":break;case"Source":break;case"Number":break;case"Decimal":break;case"ThousandSeparator":break;case"TrailingMinusNumbers":break;case"FormatSettings":break;case"FieldType":break;case"Delimiters":break;case"Tab":break;case"Comma":break;case"AutoFormatName":break;case"VersionLastEdit":break;case"VersionLastRefresh":break;default:seen=false}break;case"Sorting":case"ConditionalFormatting":case"DataValidation":switch(Rn[3]){case"Range":break;case"Type":break;case"Min":break;case"Max":break;case"Sort":break;case"Descending":break;case"Order":break;case"CaseSensitive":break;case"Value":break;case"ErrorStyle":break;case"ErrorMessage":break;case"ErrorTitle":break;case"CellRangeList":break;case"InputMessage":break;case"InputTitle":break;case"ComboHide":break;case"InputHide":break;case"Condition":break;case"Qualifier":break;case"UseBlank":break;case"Value1":break;case"Value2":break;case"Format":break;default:seen=false}break;case"MapInfo":case"Schema":case"data":switch(Rn[3]){case"Map":break;case"Entry":break;case"Range":break;case"XPath":break;case"Field":break;case"XSDType":break;case"FilterOn":break;case"Aggregate":break;case"ElementType":break;case"AttributeType":break;case"schema":case"element":case"complexType":case"datatype":case"all":case"attribute":case"extends":break;case"row":break;default:seen=false}break;case"SmartTags":break;default:seen=false;break}if(seen)break;if(!state[state.length-1][1])throw"Unrecognized tag: "+Rn[3]+"|"+state.join("|");if(state[state.length-1][0]==="CustomDocumentProperties"){if(Rn[0].substr(-2)==="/>")break;else if(Rn[1]==="/")xlml_set_custprop(Custprops,Rn,cp,str.slice(pidx,Rn.index));else{cp=Rn;pidx=Rn.index+Rn[0].length}break}if(opts.WTF)throw"Unrecognized tag: "+Rn[3]+"|"+state.join("|")}var out={};if(!opts.bookSheets&&!opts.bookProps)out.Sheets=sheets;out.SheetNames=sheetnames;out.SSF=SSF.get_table();out.Props=Props;out.Custprops=Custprops;return out}function parse_xlml(data,opts){fix_read_opts(opts=opts||{});switch(opts.type||"base64"){case"base64":return parse_xlml_xml(Base64.decode(data),opts);case"binary":case"buffer":case"file":return parse_xlml_xml(data,opts);case"array":return parse_xlml_xml(data.map(_chr).join(""),opts)}}function write_xlml(wb,opts){}function parse_compobj(obj){var v={};var o=obj.content;var l=28,m;m=__lpstr(o,l);l+=4+__readUInt32LE(o,l);v.UserType=m;m=__readUInt32LE(o,l);l+=4;switch(m){case 0:break;case 4294967295:case 4294967294:l+=4;break;default:if(m>400)throw new Error("Unsupported Clipboard: "+m.toString(16));l+=m}m=__lpstr(o,l);l+=m.length===0?0:5+m.length;v.Reserved1=m;if((m=__readUInt32LE(o,l))!==1907550708)return v;throw"Unsupported Unicode Extension"}function slurp(R,blob,length,opts){var l=length;var bufs=[];var d=blob.slice(blob.l,blob.l+l);if(opts&&opts.enc&&opts.enc.insitu_decrypt)switch(R.n){case"BOF":case"FilePass":case"FileLock":case"InterfaceHdr":case"RRDInfo":case"RRDHead":case"UsrExcl":break;default:if(d.length===0)break;opts.enc.insitu_decrypt(d)}bufs.push(d);blob.l+=l;var next=XLSRecordEnum[__readUInt16LE(blob,blob.l)];while(next!=null&&next.n==="Continue"){l=__readUInt16LE(blob,blob.l+2);bufs.push(blob.slice(blob.l+4,blob.l+4+l));blob.l+=4+l;next=XLSRecordEnum[__readUInt16LE(blob,blob.l)]}var b=bconcat(bufs);prep_blob(b,0);var ll=0;b.lens=[];for(var j=0;j<bufs.length;++j){b.lens.push(ll);ll+=bufs[j].length}return R.f(b,b.length,opts)}function safe_format_xf(p,opts,date1904){if(!p.XF)return;try{var fmtid=p.XF.ifmt||0;if(p.t==="e"){p.w=p.w||BErr[p.v]}else if(fmtid===0){if(p.t==="n"){if((p.v|0)===p.v)p.w=SSF._general_int(p.v);else p.w=SSF._general_num(p.v)}else p.w=SSF._general(p.v)}else p.w=SSF.format(fmtid,p.v,{date1904:date1904||false});if(opts.cellNF)p.z=SSF._table[fmtid]}catch(e){if(opts.WTF)throw e}}function make_cell(val,ixfe,t){return{v:val,ixfe:ixfe,t:t}}function parse_workbook(blob,options){var wb={opts:{}};var Sheets={};var out={};var Directory={};var found_sheet=false;var range={};var last_formula=null;var sst=[];var cur_sheet="";var Preamble={};var lastcell,last_cell,cc,cmnt,rng,rngC,rngR;var shared_formulae={};var array_formulae=[];var temp_val;var country;var cell_valid=true;var XFs=[];var palette=[];var get_rgb=function getrgb(icv){if(icv<8)return XLSIcv[icv];if(icv<64)return palette[icv-8]||XLSIcv[icv];return XLSIcv[icv]};var process_cell_style=function pcs(cell,line){var xfd=line.XF.data;if(!xfd||!xfd.patternType)return;line.s={};line.s.patternType=xfd.patternType;var t;if(t=rgb2Hex(get_rgb(xfd.icvFore))){line.s.fgColor={rgb:t}}if(t=rgb2Hex(get_rgb(xfd.icvBack))){line.s.bgColor={rgb:t}}};var addcell=function addcell(cell,line,options){if(!cell_valid)return;if(options.cellStyles&&line.XF&&line.XF.data)process_cell_style(cell,line);lastcell=cell;last_cell=encode_cell(cell);if(range.s){if(cell.r<range.s.r)range.s.r=cell.r;if(cell.c<range.s.c)range.s.c=cell.c}if(range.e){if(cell.r+1>range.e.r)range.e.r=cell.r+1;if(cell.c+1>range.e.c)range.e.c=cell.c+1}if(options.sheetRows&&lastcell.r>=options.sheetRows)cell_valid=false;else out[last_cell]=line};var opts={enc:false,sbcch:0,snames:[],sharedf:shared_formulae,arrayf:array_formulae,rrtabid:[],lastuser:"",biff:8,codepage:0,winlocked:0,wtf:false};if(options.password)opts.password=options.password;var mergecells=[];var objects=[];var supbooks=[[]];var sbc=0,sbci=0,sbcli=0;supbooks.SheetNames=opts.snames;supbooks.sharedf=opts.sharedf;supbooks.arrayf=opts.arrayf;var last_Rn="";var file_depth=0;opts.codepage=1200;set_cp(1200);while(blob.l<blob.length-1){var s=blob.l;var RecordType=blob.read_shift(2);if(RecordType===0&&last_Rn==="EOF")break;var length=blob.l===blob.length?0:blob.read_shift(2),y;var R=XLSRecordEnum[RecordType];if(R&&R.f){if(options.bookSheets){if(last_Rn==="BoundSheet8"&&R.n!=="BoundSheet8")break}last_Rn=R.n;if(R.r===2||R.r==12){var rt=blob.read_shift(2);length-=2;if(!opts.enc&&rt!==RecordType)throw"rt mismatch";if(R.r==12){blob.l+=10;length-=10}}var val;if(R.n==="EOF")val=R.f(blob,length,opts);else val=slurp(R,blob,length,opts);var Rn=R.n;if(opts.biff===5||opts.biff===2)switch(Rn){case"Lbl":Rn="Label";break}switch(Rn){case"Date1904":wb.opts.Date1904=val;break;case"WriteProtect":wb.opts.WriteProtect=true;break;case"FilePass":if(!opts.enc)blob.l=0;opts.enc=val;if(opts.WTF)console.error(val);if(!options.password)throw new Error("File is password-protected");if(val.Type!==0)throw new Error("Encryption scheme unsupported");if(!val.valid)throw new Error("Password is incorrect");break;case"WriteAccess":opts.lastuser=val;break;case"FileSharing":break;case"CodePage":if(val===21010)val=1200;else if(val===32769)val=1252;opts.codepage=val;set_cp(val);break;case"RRTabId":opts.rrtabid=val;break;case"WinProtect":opts.winlocked=val;break;case"Template":break;case"RefreshAll":wb.opts.RefreshAll=val;break;case"BookBool":break;case"UsesELFs":break;case"MTRSettings":{if(val[0]&&val[1])throw"Unsupported threads: "+val}break;case"CalcCount":wb.opts.CalcCount=val;break;case"CalcDelta":wb.opts.CalcDelta=val;break;case"CalcIter":wb.opts.CalcIter=val;break;case"CalcMode":wb.opts.CalcMode=val;break;case"CalcPrecision":wb.opts.CalcPrecision=val;break;case"CalcSaveRecalc":wb.opts.CalcSaveRecalc=val;break;case"CalcRefMode":opts.CalcRefMode=val;break;case"Uncalced":break;case"ForceFullCalculation":wb.opts.FullCalc=val;break;case"WsBool":break;case"XF":XFs.push(val);break;case"ExtSST":break;case"BookExt":break;case"RichTextStream":break;case"BkHim":break;case"SupBook":supbooks[++sbc]=[val];sbci=0;break;case"ExternName":supbooks[sbc][++sbci]=val;break;case"Index":break;case"Lbl":supbooks[0][++sbcli]=val;break;case"ExternSheet":supbooks[sbc]=supbooks[sbc].concat(val);sbci+=val.length;break;case"Protect":out["!protect"]=val;break;case"Password":if(val!==0&&opts.WTF)console.error("Password verifier: "+val);break;case"Prot4Rev":case"Prot4RevPass":break;case"BoundSheet8":{Directory[val.pos]=val;opts.snames.push(val.name)}break;case"EOF":{if(--file_depth)break;if(range.e){out["!range"]=range;if(range.e.r>0&&range.e.c>0){range.e.r--;range.e.c--;out["!ref"]=encode_range(range);range.e.r++;range.e.c++}if(mergecells.length>0)out["!merges"]=mergecells;if(objects.length>0)out["!objects"]=objects}if(cur_sheet==="")Preamble=out;else Sheets[cur_sheet]=out;out={}}break;case"BOF":{if(opts.biff!==8);else if(val.BIFFVer===1280)opts.biff=5;else if(val.BIFFVer===2)opts.biff=2;else if(val.BIFFVer===7)opts.biff=2;if(file_depth++)break;cell_valid=true;out={};if(opts.biff===2){if(cur_sheet==="")cur_sheet="Sheet1";range={s:{r:0,c:0},e:{r:0,c:0}}}else cur_sheet=(Directory[s]||{name:""}).name;mergecells=[];objects=[]}break;case"Number":case"BIFF2NUM":{temp_val={ixfe:val.ixfe,XF:XFs[val.ixfe],v:val.val,t:"n"};if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell({c:val.c,r:val.r},temp_val,options)}break;case"BoolErr":{temp_val={ixfe:val.ixfe,XF:XFs[val.ixfe],v:val.val,t:val.t};if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell({c:val.c,r:val.r},temp_val,options)}break;case"RK":{temp_val={ixfe:val.ixfe,XF:XFs[val.ixfe],v:val.rknum,t:"n"};if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell({c:val.c,r:val.r},temp_val,options)}break;case"MulRk":{for(var j=val.c;j<=val.C;++j){var ixfe=val.rkrec[j-val.c][0];temp_val={ixfe:ixfe,XF:XFs[ixfe],v:val.rkrec[j-val.c][1],t:"n"};if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell({c:j,r:val.r},temp_val,options)}}break;case"Formula":{switch(val.val){case"String":last_formula=val;break;case"Array Formula":throw"Array Formula unsupported";default:temp_val={v:val.val,ixfe:val.cell.ixfe,t:val.tt};temp_val.XF=XFs[temp_val.ixfe];if(options.cellFormula)temp_val.f="="+stringify_formula(val.formula,range,val.cell,supbooks,opts);if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell(val.cell,temp_val,options);last_formula=val}}break;case"String":{if(last_formula){last_formula.val=val;temp_val={v:last_formula.val,ixfe:last_formula.cell.ixfe,t:"s"};temp_val.XF=XFs[temp_val.ixfe];if(options.cellFormula)temp_val.f="="+stringify_formula(last_formula.formula,range,last_formula.cell,supbooks,opts);if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell(last_formula.cell,temp_val,options);last_formula=null}}break;case"Array":{array_formulae.push(val)}break;case"ShrFmla":{if(!cell_valid)break;shared_formulae[encode_cell(last_formula.cell)]=val[0]}break;case"LabelSst":temp_val=make_cell(sst[val.isst].t,val.ixfe,"s");temp_val.XF=XFs[temp_val.ixfe];if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell({c:val.c,r:val.r},temp_val,options);break;case"Label":case"BIFF2STR":temp_val=make_cell(val.val,val.ixfe,"s");temp_val.XF=XFs[temp_val.ixfe];if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell({c:val.c,r:val.r},temp_val,options);break;case"Dimensions":{if(file_depth===1)range=val}break;case"SST":{sst=val}break;case"Format":{SSF.load(val[1],val[0])}break;case"MergeCells":mergecells=mergecells.concat(val);break;case"Obj":objects[val.cmo[0]]=opts.lastobj=val;break;case"TxO":opts.lastobj.TxO=val;break;case"HLink":{for(rngR=val[0].s.r;rngR<=val[0].e.r;++rngR)for(rngC=val[0].s.c;rngC<=val[0].e.c;++rngC)if(out[encode_cell({c:rngC,r:rngR})])out[encode_cell({c:rngC,r:rngR})].l=val[1]}break;case"HLinkTooltip":{for(rngR=val[0].s.r;rngR<=val[0].e.r;++rngR)for(rngC=val[0].s.c;rngC<=val[0].e.c;++rngC)if(out[encode_cell({c:rngC,r:rngR})])out[encode_cell({c:rngC,r:rngR})].l.tooltip=val[1]}break;case"Note":{if(opts.biff<=5&&opts.biff>=2)break;cc=out[encode_cell(val[0])];var noteobj=objects[val[2]];if(!cc)break;if(!cc.c)cc.c=[];cmnt={a:val[1],t:noteobj.TxO.t};cc.c.push(cmnt)}break;default:switch(R.n){case"ClrtClient":break;case"XFExt":update_xfext(XFs[val.ixfe],val.ext);break;case"NameCmt":break;case"Header":break;case"Footer":break;case"HCenter":break;case"VCenter":break;case"Pls":break;case"Setup":break;case"DefColWidth":break;case"GCW":break;case"LHRecord":break;case"ColInfo":break;case"Row":break;case"DBCell":break;case"MulBlank":break;case"EntExU2":break;case"SxView":break;case"Sxvd":break;case"SXVI":break;case"SXVDEx":break;case"SxIvd":break;case"SXDI":break;case"SXLI":break;case"SXEx":break;case"QsiSXTag":break;case"Selection":break;case"Feat":break;case"FeatHdr":case"FeatHdr11":break;case"Feature11":case"Feature12":case"List12":break;case"Blank":break;case"Country":country=val;break;case"RecalcId":break;case"DefaultRowHeight":case"DxGCol":break;case"Fbi":case"Fbi2":case"GelFrame":break;case"Font":break;case"XFCRC":break;case"Style":break;case"StyleExt":break;case"Palette":palette=val;break;case"Theme":break;case"ScenarioProtect":break;case"ObjProtect":break;case"CondFmt12":break;case"Table":break;case"TableStyles":break;case"TableStyle":break;case"TableStyleElement":break;case"SXStreamID":break;case"SXVS":break;case"DConRef":break;case"SXAddl":break;case"DConBin":break;case"DConName":break;case"SXPI":break;case"SxFormat":break;case"SxSelect":break;case"SxRule":break;case"SxFilt":break;case"SxItm":break;case"SxDXF":break;case"ScenMan":break;case"DCon":break;case"CellWatch":break;case"PrintRowCol":break;case"PrintGrid":break;case"PrintSize":break;case"XCT":break;case"CRN":break;case"Scl":{}break;case"SheetExt":{}break;case"SheetExtOptional":{}break;case"ObNoMacros":{}break;case"ObProj":{}break;case"CodeName":{}break;case"GUIDTypeLib":{}break;case"WOpt":break;case"PhoneticInfo":break;case"OleObjectSize":break;case"DXF":case"DXFN":case"DXFN12":case"DXFN12List":case"DXFN12NoCB":break;case"Dv":case"DVal":break;case"BRAI":case"Series":case"SeriesText":break;case"DConn":break;case"DbOrParamQry":break;case"DBQueryExt":break;case"IFmtRecord":break;case"CondFmt":case"CF":case"CF12":case"CFEx":break;case"Excel9File":break;case"Units":break;case"InterfaceHdr":case"Mms":case"InterfaceEnd":case"DSF":case"BuiltInFnGroupCount":case"Window1":case"Window2":case"HideObj":case"GridSet":case"Guts":case"UserBView":case"UserSViewBegin":case"UserSViewEnd":case"Pane":break;default:switch(R.n){case"Dat":case"Begin":case"End":case"StartBlock":case"EndBlock":case"Frame":case"Area":case"Axis":case"AxisLine":case"Tick":break;case"AxesUsed":case"CrtLayout12":case"CrtLayout12A":case"CrtLink":case"CrtLine":case"CrtMlFrt":case"CrtMlFrtContinue":break;case"LineFormat":case"AreaFormat":case"Chart":case"Chart3d":case"Chart3DBarShape":case"ChartFormat":case"ChartFrtInfo":break;case"PlotArea":case"PlotGrowth":break;case"SeriesList":case"SerParent":case"SerAuxTrend":break;case"DataFormat":case"SerToCrt":case"FontX":break;case"CatSerRange":case"AxcExt":case"SerFmt":break;case"ShtProps":break;case"DefaultText":case"Text":case"CatLab":break;case"DataLabExtContents":break;case"Legend":case"LegendException":break;case"Pie":case"Scatter":break;case"PieFormat":case"MarkerFormat":break;case"StartObject":case"EndObject":break;case"AlRuns":case"ObjectLink":break;case"SIIndex":break;case"AttachedLabel":case"YMult":break;case"Line":case"Bar":break;case"Surf":break;case"AxisParent":break;case"Pos":break;case"ValueRange":break;case"SXViewEx9":break;case"SXViewLink":break;case"PivotChartBits":break;case"SBaseRef":break;case"TextPropsStream":break;case"LnExt":break;case"MkrExt":break;case"CrtCoopt":break;case"Qsi":case"Qsif":case"Qsir":case"QsiSXTag":break;case"TxtQry":break;case"FilterMode":break;case"AutoFilter":case"AutoFilterInfo":break;case"AutoFilter12":break;case"DropDownObjIds":break;case"Sort":break;case"SortData":break;case"ShapePropsStream":break;case"MsoDrawing":case"MsoDrawingGroup":case"MsoDrawingSelection":break;case"ImData":break;case"WebPub":case"AutoWebPub":case"RightMargin":case"LeftMargin":case"TopMargin":case"BottomMargin":case"HeaderFooter":case"HFPicture":case"PLV":case"HorizontalPageBreaks":case"VerticalPageBreaks":case"Backup":case"CompressPictures":case"Compat12":break;case"Continue":case"ContinueFrt12":break;case"FrtFontList":case"FrtWrapper":break;case"ExternCount":break;case"RString":break;case"TabIdConf":case"Radar":case"RadarArea":case"DropBar":case"Intl":case"CoordList":case"SerAuxErrBar":break;default:switch(R.n){case"SCENARIO":case"DConBin":case"PicF":case"DataLabExt":case"Lel":case"BopPop":case"BopPopCustom":case"RealTimeData":case"Name":break;default:if(options.WTF)throw"Unrecognized Record "+R.n}}}}}else blob.l+=length}var sheetnamesraw=opts.biff===2?["Sheet1"]:Object.keys(Directory).sort(function(a,b){return Number(a)-Number(b)}).map(function(x){return Directory[x].name});var sheetnames=sheetnamesraw.slice();wb.Directory=sheetnamesraw;wb.SheetNames=sheetnamesraw;if(!options.bookSheets)wb.Sheets=Sheets;wb.Preamble=Preamble;wb.Strings=sst;wb.SSF=SSF.get_table();if(opts.enc)wb.Encryption=opts.enc;wb.Metadata={};if(country!==undefined)wb.Metadata.Country=country;return wb}function parse_xlscfb(cfb,options){if(!options)options={};fix_read_opts(options);reset_cp();var CompObj,Summary,Workbook;if(cfb.find){CompObj=cfb.find("!CompObj");Summary=cfb.find("!SummaryInformation");Workbook=cfb.find("/Workbook")}else{prep_blob(cfb,0);Workbook={content:cfb}}if(!Workbook)Workbook=cfb.find("/Book");var CompObjP,SummaryP,WorkbookP;if(CompObj)CompObjP=parse_compobj(CompObj);if(options.bookProps&&!options.bookSheets)WorkbookP={};else{if(Workbook)WorkbookP=parse_workbook(Workbook.content,options,!!Workbook.find);else throw new Error("Cannot find Workbook stream")}if(cfb.find)parse_props(cfb);var props={};for(var y in cfb.Summary)props[y]=cfb.Summary[y];for(y in cfb.DocSummary)props[y]=cfb.DocSummary[y];WorkbookP.Props=WorkbookP.Custprops=props;if(options.bookFiles)WorkbookP.cfb=cfb;WorkbookP.CompObjP=CompObjP;return WorkbookP}function parse_props(cfb){var DSI=cfb.find("!DocumentSummaryInformation");if(DSI)try{cfb.DocSummary=parse_PropertySetStream(DSI,DocSummaryPIDDSI)}catch(e){}var SI=cfb.find("!SummaryInformation");if(SI)try{cfb.Summary=parse_PropertySetStream(SI,SummaryPIDSI)}catch(e){}}var XLSBRecordEnum={0:{n:"BrtRowHdr",f:parse_BrtRowHdr},1:{n:"BrtCellBlank",f:parse_BrtCellBlank},2:{n:"BrtCellRk",f:parse_BrtCellRk},3:{n:"BrtCellError",f:parse_BrtCellError},4:{n:"BrtCellBool",f:parse_BrtCellBool},5:{n:"BrtCellReal",f:parse_BrtCellReal},6:{n:"BrtCellSt",f:parse_BrtCellSt},7:{n:"BrtCellIsst",f:parse_BrtCellIsst},8:{n:"BrtFmlaString",f:parse_BrtFmlaString},9:{n:"BrtFmlaNum",f:parse_BrtFmlaNum},10:{n:"BrtFmlaBool",f:parse_BrtFmlaBool},11:{n:"BrtFmlaError",f:parse_BrtFmlaError},16:{n:"BrtFRTArchID$",f:parse_BrtFRTArchID$},19:{n:"BrtSSTItem",f:parse_RichStr},20:{n:"BrtPCDIMissing",f:parsenoop},21:{n:"BrtPCDINumber",f:parsenoop},22:{n:"BrtPCDIBoolean",f:parsenoop},23:{n:"BrtPCDIError",f:parsenoop},24:{n:"BrtPCDIString",f:parsenoop},25:{n:"BrtPCDIDatetime",f:parsenoop},26:{n:"BrtPCDIIndex",f:parsenoop},27:{n:"BrtPCDIAMissing",f:parsenoop},28:{n:"BrtPCDIANumber",f:parsenoop},29:{n:"BrtPCDIABoolean",f:parsenoop},30:{n:"BrtPCDIAError",f:parsenoop},31:{n:"BrtPCDIAString",f:parsenoop},32:{n:"BrtPCDIADatetime",f:parsenoop},33:{n:"BrtPCRRecord",f:parsenoop},34:{n:"BrtPCRRecordDt",f:parsenoop},35:{n:"BrtFRTBegin",f:parsenoop},36:{n:"BrtFRTEnd",f:parsenoop},37:{n:"BrtACBegin",f:parsenoop},38:{n:"BrtACEnd",f:parsenoop},39:{n:"BrtName",f:parsenoop},40:{n:"BrtIndexRowBlock",f:parsenoop},42:{n:"BrtIndexBlock",f:parsenoop},43:{n:"BrtFont",f:parse_BrtFont},44:{n:"BrtFmt",f:parse_BrtFmt},45:{n:"BrtFill",f:parsenoop},46:{n:"BrtBorder",f:parsenoop},47:{n:"BrtXF",f:parse_BrtXF},48:{n:"BrtStyle",f:parsenoop},49:{n:"BrtCellMeta",f:parsenoop},50:{n:"BrtValueMeta",f:parsenoop},51:{n:"BrtMdb",f:parsenoop},52:{n:"BrtBeginFmd",f:parsenoop},53:{n:"BrtEndFmd",f:parsenoop},54:{n:"BrtBeginMdx",f:parsenoop},55:{n:"BrtEndMdx",f:parsenoop},56:{n:"BrtBeginMdxTuple",f:parsenoop},57:{n:"BrtEndMdxTuple",f:parsenoop},58:{n:"BrtMdxMbrIstr",f:parsenoop},59:{n:"BrtStr",f:parsenoop},60:{n:"BrtColInfo",f:parsenoop},62:{n:"BrtCellRString",f:parsenoop},63:{n:"BrtCalcChainItem$",f:parse_BrtCalcChainItem$},64:{n:"BrtDVal",f:parsenoop},65:{n:"BrtSxvcellNum",f:parsenoop},66:{n:"BrtSxvcellStr",f:parsenoop},67:{n:"BrtSxvcellBool",f:parsenoop},68:{n:"BrtSxvcellErr",f:parsenoop},69:{n:"BrtSxvcellDate",f:parsenoop},70:{n:"BrtSxvcellNil",f:parsenoop},128:{n:"BrtFileVersion",f:parsenoop},129:{n:"BrtBeginSheet",f:parsenoop},130:{n:"BrtEndSheet",f:parsenoop},131:{n:"BrtBeginBook",f:parsenoop,p:0},132:{n:"BrtEndBook",f:parsenoop},133:{n:"BrtBeginWsViews",f:parsenoop},134:{n:"BrtEndWsViews",f:parsenoop},135:{n:"BrtBeginBookViews",f:parsenoop
},136:{n:"BrtEndBookViews",f:parsenoop},137:{n:"BrtBeginWsView",f:parsenoop},138:{n:"BrtEndWsView",f:parsenoop},139:{n:"BrtBeginCsViews",f:parsenoop},140:{n:"BrtEndCsViews",f:parsenoop},141:{n:"BrtBeginCsView",f:parsenoop},142:{n:"BrtEndCsView",f:parsenoop},143:{n:"BrtBeginBundleShs",f:parsenoop},144:{n:"BrtEndBundleShs",f:parsenoop},145:{n:"BrtBeginSheetData",f:parsenoop},146:{n:"BrtEndSheetData",f:parsenoop},147:{n:"BrtWsProp",f:parse_BrtWsProp},148:{n:"BrtWsDim",f:parse_BrtWsDim,p:16},151:{n:"BrtPane",f:parsenoop},152:{n:"BrtSel",f:parsenoop},153:{n:"BrtWbProp",f:parse_BrtWbProp},154:{n:"BrtWbFactoid",f:parsenoop},155:{n:"BrtFileRecover",f:parsenoop},156:{n:"BrtBundleSh",f:parse_BrtBundleSh},157:{n:"BrtCalcProp",f:parsenoop},158:{n:"BrtBookView",f:parsenoop},159:{n:"BrtBeginSst",f:parse_BrtBeginSst},160:{n:"BrtEndSst",f:parsenoop},161:{n:"BrtBeginAFilter",f:parsenoop},162:{n:"BrtEndAFilter",f:parsenoop},163:{n:"BrtBeginFilterColumn",f:parsenoop},164:{n:"BrtEndFilterColumn",f:parsenoop},165:{n:"BrtBeginFilters",f:parsenoop},166:{n:"BrtEndFilters",f:parsenoop},167:{n:"BrtFilter",f:parsenoop},168:{n:"BrtColorFilter",f:parsenoop},169:{n:"BrtIconFilter",f:parsenoop},170:{n:"BrtTop10Filter",f:parsenoop},171:{n:"BrtDynamicFilter",f:parsenoop},172:{n:"BrtBeginCustomFilters",f:parsenoop},173:{n:"BrtEndCustomFilters",f:parsenoop},174:{n:"BrtCustomFilter",f:parsenoop},175:{n:"BrtAFilterDateGroupItem",f:parsenoop},176:{n:"BrtMergeCell",f:parse_BrtMergeCell},177:{n:"BrtBeginMergeCells",f:parsenoop},178:{n:"BrtEndMergeCells",f:parsenoop},179:{n:"BrtBeginPivotCacheDef",f:parsenoop},180:{n:"BrtEndPivotCacheDef",f:parsenoop},181:{n:"BrtBeginPCDFields",f:parsenoop},182:{n:"BrtEndPCDFields",f:parsenoop},183:{n:"BrtBeginPCDField",f:parsenoop},184:{n:"BrtEndPCDField",f:parsenoop},185:{n:"BrtBeginPCDSource",f:parsenoop},186:{n:"BrtEndPCDSource",f:parsenoop},187:{n:"BrtBeginPCDSRange",f:parsenoop},188:{n:"BrtEndPCDSRange",f:parsenoop},189:{n:"BrtBeginPCDFAtbl",f:parsenoop},190:{n:"BrtEndPCDFAtbl",f:parsenoop},191:{n:"BrtBeginPCDIRun",f:parsenoop},192:{n:"BrtEndPCDIRun",f:parsenoop},193:{n:"BrtBeginPivotCacheRecords",f:parsenoop},194:{n:"BrtEndPivotCacheRecords",f:parsenoop},195:{n:"BrtBeginPCDHierarchies",f:parsenoop},196:{n:"BrtEndPCDHierarchies",f:parsenoop},197:{n:"BrtBeginPCDHierarchy",f:parsenoop},198:{n:"BrtEndPCDHierarchy",f:parsenoop},199:{n:"BrtBeginPCDHFieldsUsage",f:parsenoop},200:{n:"BrtEndPCDHFieldsUsage",f:parsenoop},201:{n:"BrtBeginExtConnection",f:parsenoop},202:{n:"BrtEndExtConnection",f:parsenoop},203:{n:"BrtBeginECDbProps",f:parsenoop},204:{n:"BrtEndECDbProps",f:parsenoop},205:{n:"BrtBeginECOlapProps",f:parsenoop},206:{n:"BrtEndECOlapProps",f:parsenoop},207:{n:"BrtBeginPCDSConsol",f:parsenoop},208:{n:"BrtEndPCDSConsol",f:parsenoop},209:{n:"BrtBeginPCDSCPages",f:parsenoop},210:{n:"BrtEndPCDSCPages",f:parsenoop},211:{n:"BrtBeginPCDSCPage",f:parsenoop},212:{n:"BrtEndPCDSCPage",f:parsenoop},213:{n:"BrtBeginPCDSCPItem",f:parsenoop},214:{n:"BrtEndPCDSCPItem",f:parsenoop},215:{n:"BrtBeginPCDSCSets",f:parsenoop},216:{n:"BrtEndPCDSCSets",f:parsenoop},217:{n:"BrtBeginPCDSCSet",f:parsenoop},218:{n:"BrtEndPCDSCSet",f:parsenoop},219:{n:"BrtBeginPCDFGroup",f:parsenoop},220:{n:"BrtEndPCDFGroup",f:parsenoop},221:{n:"BrtBeginPCDFGItems",f:parsenoop},222:{n:"BrtEndPCDFGItems",f:parsenoop},223:{n:"BrtBeginPCDFGRange",f:parsenoop},224:{n:"BrtEndPCDFGRange",f:parsenoop},225:{n:"BrtBeginPCDFGDiscrete",f:parsenoop},226:{n:"BrtEndPCDFGDiscrete",f:parsenoop},227:{n:"BrtBeginPCDSDTupleCache",f:parsenoop},228:{n:"BrtEndPCDSDTupleCache",f:parsenoop},229:{n:"BrtBeginPCDSDTCEntries",f:parsenoop},230:{n:"BrtEndPCDSDTCEntries",f:parsenoop},231:{n:"BrtBeginPCDSDTCEMembers",f:parsenoop},232:{n:"BrtEndPCDSDTCEMembers",f:parsenoop},233:{n:"BrtBeginPCDSDTCEMember",f:parsenoop},234:{n:"BrtEndPCDSDTCEMember",f:parsenoop},235:{n:"BrtBeginPCDSDTCQueries",f:parsenoop},236:{n:"BrtEndPCDSDTCQueries",f:parsenoop},237:{n:"BrtBeginPCDSDTCQuery",f:parsenoop},238:{n:"BrtEndPCDSDTCQuery",f:parsenoop},239:{n:"BrtBeginPCDSDTCSets",f:parsenoop},240:{n:"BrtEndPCDSDTCSets",f:parsenoop},241:{n:"BrtBeginPCDSDTCSet",f:parsenoop},242:{n:"BrtEndPCDSDTCSet",f:parsenoop},243:{n:"BrtBeginPCDCalcItems",f:parsenoop},244:{n:"BrtEndPCDCalcItems",f:parsenoop},245:{n:"BrtBeginPCDCalcItem",f:parsenoop},246:{n:"BrtEndPCDCalcItem",f:parsenoop},247:{n:"BrtBeginPRule",f:parsenoop},248:{n:"BrtEndPRule",f:parsenoop},249:{n:"BrtBeginPRFilters",f:parsenoop},250:{n:"BrtEndPRFilters",f:parsenoop},251:{n:"BrtBeginPRFilter",f:parsenoop},252:{n:"BrtEndPRFilter",f:parsenoop},253:{n:"BrtBeginPNames",f:parsenoop},254:{n:"BrtEndPNames",f:parsenoop},255:{n:"BrtBeginPName",f:parsenoop},256:{n:"BrtEndPName",f:parsenoop},257:{n:"BrtBeginPNPairs",f:parsenoop},258:{n:"BrtEndPNPairs",f:parsenoop},259:{n:"BrtBeginPNPair",f:parsenoop},260:{n:"BrtEndPNPair",f:parsenoop},261:{n:"BrtBeginECWebProps",f:parsenoop},262:{n:"BrtEndECWebProps",f:parsenoop},263:{n:"BrtBeginEcWpTables",f:parsenoop},264:{n:"BrtEndECWPTables",f:parsenoop},265:{n:"BrtBeginECParams",f:parsenoop},266:{n:"BrtEndECParams",f:parsenoop},267:{n:"BrtBeginECParam",f:parsenoop},268:{n:"BrtEndECParam",f:parsenoop},269:{n:"BrtBeginPCDKPIs",f:parsenoop},270:{n:"BrtEndPCDKPIs",f:parsenoop},271:{n:"BrtBeginPCDKPI",f:parsenoop},272:{n:"BrtEndPCDKPI",f:parsenoop},273:{n:"BrtBeginDims",f:parsenoop},274:{n:"BrtEndDims",f:parsenoop},275:{n:"BrtBeginDim",f:parsenoop},276:{n:"BrtEndDim",f:parsenoop},277:{n:"BrtIndexPartEnd",f:parsenoop},278:{n:"BrtBeginStyleSheet",f:parsenoop},279:{n:"BrtEndStyleSheet",f:parsenoop},280:{n:"BrtBeginSXView",f:parsenoop},281:{n:"BrtEndSXVI",f:parsenoop},282:{n:"BrtBeginSXVI",f:parsenoop},283:{n:"BrtBeginSXVIs",f:parsenoop},284:{n:"BrtEndSXVIs",f:parsenoop},285:{n:"BrtBeginSXVD",f:parsenoop},286:{n:"BrtEndSXVD",f:parsenoop},287:{n:"BrtBeginSXVDs",f:parsenoop},288:{n:"BrtEndSXVDs",f:parsenoop},289:{n:"BrtBeginSXPI",f:parsenoop},290:{n:"BrtEndSXPI",f:parsenoop},291:{n:"BrtBeginSXPIs",f:parsenoop},292:{n:"BrtEndSXPIs",f:parsenoop},293:{n:"BrtBeginSXDI",f:parsenoop},294:{n:"BrtEndSXDI",f:parsenoop},295:{n:"BrtBeginSXDIs",f:parsenoop},296:{n:"BrtEndSXDIs",f:parsenoop},297:{n:"BrtBeginSXLI",f:parsenoop},298:{n:"BrtEndSXLI",f:parsenoop},299:{n:"BrtBeginSXLIRws",f:parsenoop},300:{n:"BrtEndSXLIRws",f:parsenoop},301:{n:"BrtBeginSXLICols",f:parsenoop},302:{n:"BrtEndSXLICols",f:parsenoop},303:{n:"BrtBeginSXFormat",f:parsenoop},304:{n:"BrtEndSXFormat",f:parsenoop},305:{n:"BrtBeginSXFormats",f:parsenoop},306:{n:"BrtEndSxFormats",f:parsenoop},307:{n:"BrtBeginSxSelect",f:parsenoop},308:{n:"BrtEndSxSelect",f:parsenoop},309:{n:"BrtBeginISXVDRws",f:parsenoop},310:{n:"BrtEndISXVDRws",f:parsenoop},311:{n:"BrtBeginISXVDCols",f:parsenoop},312:{n:"BrtEndISXVDCols",f:parsenoop},313:{n:"BrtEndSXLocation",f:parsenoop},314:{n:"BrtBeginSXLocation",f:parsenoop},315:{n:"BrtEndSXView",f:parsenoop},316:{n:"BrtBeginSXTHs",f:parsenoop},317:{n:"BrtEndSXTHs",f:parsenoop},318:{n:"BrtBeginSXTH",f:parsenoop},319:{n:"BrtEndSXTH",f:parsenoop},320:{n:"BrtBeginISXTHRws",f:parsenoop},321:{n:"BrtEndISXTHRws",f:parsenoop},322:{n:"BrtBeginISXTHCols",f:parsenoop},323:{n:"BrtEndISXTHCols",f:parsenoop},324:{n:"BrtBeginSXTDMPS",f:parsenoop},325:{n:"BrtEndSXTDMPs",f:parsenoop},326:{n:"BrtBeginSXTDMP",f:parsenoop},327:{n:"BrtEndSXTDMP",f:parsenoop},328:{n:"BrtBeginSXTHItems",f:parsenoop},329:{n:"BrtEndSXTHItems",f:parsenoop},330:{n:"BrtBeginSXTHItem",f:parsenoop},331:{n:"BrtEndSXTHItem",f:parsenoop},332:{n:"BrtBeginMetadata",f:parsenoop},333:{n:"BrtEndMetadata",f:parsenoop},334:{n:"BrtBeginEsmdtinfo",f:parsenoop},335:{n:"BrtMdtinfo",f:parsenoop},336:{n:"BrtEndEsmdtinfo",f:parsenoop},337:{n:"BrtBeginEsmdb",f:parsenoop},338:{n:"BrtEndEsmdb",f:parsenoop},339:{n:"BrtBeginEsfmd",f:parsenoop},340:{n:"BrtEndEsfmd",f:parsenoop},341:{n:"BrtBeginSingleCells",f:parsenoop},342:{n:"BrtEndSingleCells",f:parsenoop},343:{n:"BrtBeginList",f:parsenoop},344:{n:"BrtEndList",f:parsenoop},345:{n:"BrtBeginListCols",f:parsenoop},346:{n:"BrtEndListCols",f:parsenoop},347:{n:"BrtBeginListCol",f:parsenoop},348:{n:"BrtEndListCol",f:parsenoop},349:{n:"BrtBeginListXmlCPr",f:parsenoop},350:{n:"BrtEndListXmlCPr",f:parsenoop},351:{n:"BrtListCCFmla",f:parsenoop},352:{n:"BrtListTrFmla",f:parsenoop},353:{n:"BrtBeginExternals",f:parsenoop},354:{n:"BrtEndExternals",f:parsenoop},355:{n:"BrtSupBookSrc",f:parsenoop},357:{n:"BrtSupSelf",f:parsenoop},358:{n:"BrtSupSame",f:parsenoop},359:{n:"BrtSupTabs",f:parsenoop},360:{n:"BrtBeginSupBook",f:parsenoop},361:{n:"BrtPlaceholderName",f:parsenoop},362:{n:"BrtExternSheet",f:parsenoop},363:{n:"BrtExternTableStart",f:parsenoop},364:{n:"BrtExternTableEnd",f:parsenoop},366:{n:"BrtExternRowHdr",f:parsenoop},367:{n:"BrtExternCellBlank",f:parsenoop},368:{n:"BrtExternCellReal",f:parsenoop},369:{n:"BrtExternCellBool",f:parsenoop},370:{n:"BrtExternCellError",f:parsenoop},371:{n:"BrtExternCellString",f:parsenoop},372:{n:"BrtBeginEsmdx",f:parsenoop},373:{n:"BrtEndEsmdx",f:parsenoop},374:{n:"BrtBeginMdxSet",f:parsenoop},375:{n:"BrtEndMdxSet",f:parsenoop},376:{n:"BrtBeginMdxMbrProp",f:parsenoop},377:{n:"BrtEndMdxMbrProp",f:parsenoop},378:{n:"BrtBeginMdxKPI",f:parsenoop},379:{n:"BrtEndMdxKPI",f:parsenoop},380:{n:"BrtBeginEsstr",f:parsenoop},381:{n:"BrtEndEsstr",f:parsenoop},382:{n:"BrtBeginPRFItem",f:parsenoop},383:{n:"BrtEndPRFItem",f:parsenoop},384:{n:"BrtBeginPivotCacheIDs",f:parsenoop},385:{n:"BrtEndPivotCacheIDs",f:parsenoop},386:{n:"BrtBeginPivotCacheID",f:parsenoop},387:{n:"BrtEndPivotCacheID",f:parsenoop},388:{n:"BrtBeginISXVIs",f:parsenoop},389:{n:"BrtEndISXVIs",f:parsenoop},390:{n:"BrtBeginColInfos",f:parsenoop},391:{n:"BrtEndColInfos",f:parsenoop},392:{n:"BrtBeginRwBrk",f:parsenoop},393:{n:"BrtEndRwBrk",f:parsenoop},394:{n:"BrtBeginColBrk",f:parsenoop},395:{n:"BrtEndColBrk",f:parsenoop},396:{n:"BrtBrk",f:parsenoop},397:{n:"BrtUserBookView",f:parsenoop},398:{n:"BrtInfo",f:parsenoop},399:{n:"BrtCUsr",f:parsenoop},400:{n:"BrtUsr",f:parsenoop},401:{n:"BrtBeginUsers",f:parsenoop},403:{n:"BrtEOF",f:parsenoop},404:{n:"BrtUCR",f:parsenoop},405:{n:"BrtRRInsDel",f:parsenoop},406:{n:"BrtRREndInsDel",f:parsenoop},407:{n:"BrtRRMove",f:parsenoop},408:{n:"BrtRREndMove",f:parsenoop},409:{n:"BrtRRChgCell",f:parsenoop},410:{n:"BrtRREndChgCell",f:parsenoop},411:{n:"BrtRRHeader",f:parsenoop},412:{n:"BrtRRUserView",f:parsenoop},413:{n:"BrtRRRenSheet",f:parsenoop},414:{n:"BrtRRInsertSh",f:parsenoop},415:{n:"BrtRRDefName",f:parsenoop},416:{n:"BrtRRNote",f:parsenoop},417:{n:"BrtRRConflict",f:parsenoop},418:{n:"BrtRRTQSIF",f:parsenoop},419:{n:"BrtRRFormat",f:parsenoop},420:{n:"BrtRREndFormat",f:parsenoop},421:{n:"BrtRRAutoFmt",f:parsenoop},422:{n:"BrtBeginUserShViews",f:parsenoop},423:{n:"BrtBeginUserShView",f:parsenoop},424:{n:"BrtEndUserShView",f:parsenoop},425:{n:"BrtEndUserShViews",f:parsenoop},426:{n:"BrtArrFmla",f:parsenoop},427:{n:"BrtShrFmla",f:parsenoop},428:{n:"BrtTable",f:parsenoop},429:{n:"BrtBeginExtConnections",f:parsenoop},430:{n:"BrtEndExtConnections",f:parsenoop},431:{n:"BrtBeginPCDCalcMems",f:parsenoop},432:{n:"BrtEndPCDCalcMems",f:parsenoop},433:{n:"BrtBeginPCDCalcMem",f:parsenoop},434:{n:"BrtEndPCDCalcMem",f:parsenoop},435:{n:"BrtBeginPCDHGLevels",f:parsenoop},436:{n:"BrtEndPCDHGLevels",f:parsenoop},437:{n:"BrtBeginPCDHGLevel",f:parsenoop},438:{n:"BrtEndPCDHGLevel",f:parsenoop},439:{n:"BrtBeginPCDHGLGroups",f:parsenoop},440:{n:"BrtEndPCDHGLGroups",f:parsenoop},441:{n:"BrtBeginPCDHGLGroup",f:parsenoop},442:{n:"BrtEndPCDHGLGroup",f:parsenoop},443:{n:"BrtBeginPCDHGLGMembers",f:parsenoop},444:{n:"BrtEndPCDHGLGMembers",f:parsenoop},445:{n:"BrtBeginPCDHGLGMember",f:parsenoop},446:{n:"BrtEndPCDHGLGMember",f:parsenoop},447:{n:"BrtBeginQSI",f:parsenoop},448:{n:"BrtEndQSI",f:parsenoop},449:{n:"BrtBeginQSIR",f:parsenoop},450:{n:"BrtEndQSIR",f:parsenoop},451:{n:"BrtBeginDeletedNames",f:parsenoop},452:{n:"BrtEndDeletedNames",f:parsenoop},453:{n:"BrtBeginDeletedName",f:parsenoop},454:{n:"BrtEndDeletedName",f:parsenoop},455:{n:"BrtBeginQSIFs",f:parsenoop},456:{n:"BrtEndQSIFs",f:parsenoop},457:{n:"BrtBeginQSIF",f:parsenoop},458:{n:"BrtEndQSIF",f:parsenoop},459:{n:"BrtBeginAutoSortScope",f:parsenoop},460:{n:"BrtEndAutoSortScope",f:parsenoop},461:{n:"BrtBeginConditionalFormatting",f:parsenoop},462:{n:"BrtEndConditionalFormatting",f:parsenoop},463:{n:"BrtBeginCFRule",f:parsenoop},464:{n:"BrtEndCFRule",f:parsenoop},465:{n:"BrtBeginIconSet",f:parsenoop},466:{n:"BrtEndIconSet",f:parsenoop},467:{n:"BrtBeginDatabar",f:parsenoop},468:{n:"BrtEndDatabar",f:parsenoop},469:{n:"BrtBeginColorScale",f:parsenoop},470:{n:"BrtEndColorScale",f:parsenoop},471:{n:"BrtCFVO",f:parsenoop},472:{n:"BrtExternValueMeta",f:parsenoop},473:{n:"BrtBeginColorPalette",f:parsenoop},474:{n:"BrtEndColorPalette",f:parsenoop},475:{n:"BrtIndexedColor",f:parsenoop},476:{n:"BrtMargins",f:parsenoop},477:{n:"BrtPrintOptions",f:parsenoop},478:{n:"BrtPageSetup",f:parsenoop},479:{n:"BrtBeginHeaderFooter",f:parsenoop},480:{n:"BrtEndHeaderFooter",f:parsenoop},481:{n:"BrtBeginSXCrtFormat",f:parsenoop},482:{n:"BrtEndSXCrtFormat",f:parsenoop},483:{n:"BrtBeginSXCrtFormats",f:parsenoop},484:{n:"BrtEndSXCrtFormats",f:parsenoop},485:{n:"BrtWsFmtInfo",f:parsenoop},486:{n:"BrtBeginMgs",f:parsenoop},487:{n:"BrtEndMGs",f:parsenoop},488:{n:"BrtBeginMGMaps",f:parsenoop},489:{n:"BrtEndMGMaps",f:parsenoop},490:{n:"BrtBeginMG",f:parsenoop},491:{n:"BrtEndMG",f:parsenoop},492:{n:"BrtBeginMap",f:parsenoop},493:{n:"BrtEndMap",f:parsenoop},494:{n:"BrtHLink",f:parse_BrtHLink},495:{n:"BrtBeginDCon",f:parsenoop},496:{n:"BrtEndDCon",f:parsenoop},497:{n:"BrtBeginDRefs",f:parsenoop},498:{n:"BrtEndDRefs",f:parsenoop},499:{n:"BrtDRef",f:parsenoop},500:{n:"BrtBeginScenMan",f:parsenoop},501:{n:"BrtEndScenMan",f:parsenoop},502:{n:"BrtBeginSct",f:parsenoop},503:{n:"BrtEndSct",f:parsenoop},504:{n:"BrtSlc",f:parsenoop},505:{n:"BrtBeginDXFs",f:parsenoop},506:{n:"BrtEndDXFs",f:parsenoop},507:{n:"BrtDXF",f:parsenoop},508:{n:"BrtBeginTableStyles",f:parsenoop},509:{n:"BrtEndTableStyles",f:parsenoop},510:{n:"BrtBeginTableStyle",f:parsenoop},511:{n:"BrtEndTableStyle",f:parsenoop},512:{n:"BrtTableStyleElement",f:parsenoop},513:{n:"BrtTableStyleClient",f:parsenoop},514:{n:"BrtBeginVolDeps",f:parsenoop},515:{n:"BrtEndVolDeps",f:parsenoop},516:{n:"BrtBeginVolType",f:parsenoop},517:{n:"BrtEndVolType",f:parsenoop},518:{n:"BrtBeginVolMain",f:parsenoop},519:{n:"BrtEndVolMain",f:parsenoop},520:{n:"BrtBeginVolTopic",f:parsenoop},521:{n:"BrtEndVolTopic",f:parsenoop},522:{n:"BrtVolSubtopic",f:parsenoop},523:{n:"BrtVolRef",f:parsenoop},524:{n:"BrtVolNum",f:parsenoop},525:{n:"BrtVolErr",f:parsenoop},526:{n:"BrtVolStr",f:parsenoop},527:{n:"BrtVolBool",f:parsenoop},528:{n:"BrtBeginCalcChain$",f:parsenoop},529:{n:"BrtEndCalcChain$",f:parsenoop},530:{n:"BrtBeginSortState",f:parsenoop},531:{n:"BrtEndSortState",f:parsenoop},532:{n:"BrtBeginSortCond",f:parsenoop},533:{n:"BrtEndSortCond",f:parsenoop},534:{n:"BrtBookProtection",f:parsenoop},535:{n:"BrtSheetProtection",f:parsenoop},536:{n:"BrtRangeProtection",f:parsenoop},537:{n:"BrtPhoneticInfo",f:parsenoop},538:{n:"BrtBeginECTxtWiz",f:parsenoop},539:{n:"BrtEndECTxtWiz",f:parsenoop},540:{n:"BrtBeginECTWFldInfoLst",f:parsenoop},541:{n:"BrtEndECTWFldInfoLst",f:parsenoop},542:{n:"BrtBeginECTwFldInfo",f:parsenoop},548:{n:"BrtFileSharing",f:parsenoop},549:{n:"BrtOleSize",f:parsenoop},550:{n:"BrtDrawing",f:parsenoop},551:{n:"BrtLegacyDrawing",f:parsenoop},552:{n:"BrtLegacyDrawingHF",f:parsenoop},553:{n:"BrtWebOpt",f:parsenoop},554:{n:"BrtBeginWebPubItems",f:parsenoop},555:{n:"BrtEndWebPubItems",f:parsenoop},556:{n:"BrtBeginWebPubItem",f:parsenoop},557:{n:"BrtEndWebPubItem",f:parsenoop},558:{n:"BrtBeginSXCondFmt",f:parsenoop},559:{n:"BrtEndSXCondFmt",f:parsenoop},560:{n:"BrtBeginSXCondFmts",f:parsenoop},561:{n:"BrtEndSXCondFmts",f:parsenoop},562:{n:"BrtBkHim",f:parsenoop},564:{n:"BrtColor",f:parsenoop},565:{n:"BrtBeginIndexedColors",f:parsenoop},566:{n:"BrtEndIndexedColors",f:parsenoop},569:{n:"BrtBeginMRUColors",f:parsenoop},570:{n:"BrtEndMRUColors",f:parsenoop},572:{n:"BrtMRUColor",f:parsenoop},573:{n:"BrtBeginDVals",f:parsenoop},574:{n:"BrtEndDVals",f:parsenoop},577:{n:"BrtSupNameStart",f:parsenoop},578:{n:"BrtSupNameValueStart",f:parsenoop},579:{n:"BrtSupNameValueEnd",f:parsenoop},580:{n:"BrtSupNameNum",f:parsenoop},581:{n:"BrtSupNameErr",f:parsenoop},582:{n:"BrtSupNameSt",f:parsenoop},583:{n:"BrtSupNameNil",f:parsenoop},584:{n:"BrtSupNameBool",f:parsenoop},585:{n:"BrtSupNameFmla",f:parsenoop},586:{n:"BrtSupNameBits",f:parsenoop},587:{n:"BrtSupNameEnd",f:parsenoop},588:{n:"BrtEndSupBook",f:parsenoop},589:{n:"BrtCellSmartTagProperty",f:parsenoop},590:{n:"BrtBeginCellSmartTag",f:parsenoop},591:{n:"BrtEndCellSmartTag",f:parsenoop},592:{n:"BrtBeginCellSmartTags",f:parsenoop},593:{n:"BrtEndCellSmartTags",f:parsenoop},594:{n:"BrtBeginSmartTags",f:parsenoop},595:{n:"BrtEndSmartTags",f:parsenoop},596:{n:"BrtSmartTagType",f:parsenoop},597:{n:"BrtBeginSmartTagTypes",f:parsenoop},598:{n:"BrtEndSmartTagTypes",f:parsenoop},599:{n:"BrtBeginSXFilters",f:parsenoop},600:{n:"BrtEndSXFilters",f:parsenoop},601:{n:"BrtBeginSXFILTER",f:parsenoop},602:{n:"BrtEndSXFilter",f:parsenoop},603:{n:"BrtBeginFills",f:parsenoop},604:{n:"BrtEndFills",f:parsenoop},605:{n:"BrtBeginCellWatches",f:parsenoop},606:{n:"BrtEndCellWatches",f:parsenoop},607:{n:"BrtCellWatch",f:parsenoop},608:{n:"BrtBeginCRErrs",f:parsenoop},609:{n:"BrtEndCRErrs",f:parsenoop},610:{n:"BrtCrashRecErr",f:parsenoop},611:{n:"BrtBeginFonts",f:parsenoop},612:{n:"BrtEndFonts",f:parsenoop},613:{n:"BrtBeginBorders",f:parsenoop},614:{n:"BrtEndBorders",f:parsenoop},615:{n:"BrtBeginFmts",f:parsenoop},616:{n:"BrtEndFmts",f:parsenoop},617:{n:"BrtBeginCellXFs",f:parsenoop},618:{n:"BrtEndCellXFs",f:parsenoop},619:{n:"BrtBeginStyles",f:parsenoop},620:{n:"BrtEndStyles",f:parsenoop},625:{n:"BrtBigName",f:parsenoop},626:{n:"BrtBeginCellStyleXFs",f:parsenoop},627:{n:"BrtEndCellStyleXFs",f:parsenoop},628:{n:"BrtBeginComments",f:parsenoop},629:{n:"BrtEndComments",f:parsenoop},630:{n:"BrtBeginCommentAuthors",f:parsenoop},631:{n:"BrtEndCommentAuthors",f:parsenoop},632:{n:"BrtCommentAuthor",f:parse_BrtCommentAuthor},633:{n:"BrtBeginCommentList",f:parsenoop},634:{n:"BrtEndCommentList",f:parsenoop},635:{n:"BrtBeginComment",f:parse_BrtBeginComment},636:{n:"BrtEndComment",f:parsenoop},637:{n:"BrtCommentText",f:parse_BrtCommentText},638:{n:"BrtBeginOleObjects",f:parsenoop},639:{n:"BrtOleObject",f:parsenoop},640:{n:"BrtEndOleObjects",f:parsenoop},641:{n:"BrtBeginSxrules",f:parsenoop},642:{n:"BrtEndSxRules",f:parsenoop},643:{n:"BrtBeginActiveXControls",f:parsenoop},644:{n:"BrtActiveX",f:parsenoop},645:{n:"BrtEndActiveXControls",f:parsenoop},646:{n:"BrtBeginPCDSDTCEMembersSortBy",f:parsenoop},648:{n:"BrtBeginCellIgnoreECs",f:parsenoop},649:{n:"BrtCellIgnoreEC",f:parsenoop},650:{n:"BrtEndCellIgnoreECs",f:parsenoop},651:{n:"BrtCsProp",f:parsenoop},652:{n:"BrtCsPageSetup",f:parsenoop},653:{n:"BrtBeginUserCsViews",f:parsenoop},654:{n:"BrtEndUserCsViews",f:parsenoop},655:{n:"BrtBeginUserCsView",f:parsenoop},656:{n:"BrtEndUserCsView",f:parsenoop},657:{n:"BrtBeginPcdSFCIEntries",f:parsenoop},658:{n:"BrtEndPCDSFCIEntries",f:parsenoop},659:{n:"BrtPCDSFCIEntry",f:parsenoop},660:{n:"BrtBeginListParts",f:parsenoop},661:{n:"BrtListPart",f:parsenoop},662:{n:"BrtEndListParts",f:parsenoop},663:{n:"BrtSheetCalcProp",f:parsenoop},664:{n:"BrtBeginFnGroup",f:parsenoop},665:{n:"BrtFnGroup",f:parsenoop},666:{n:"BrtEndFnGroup",f:parsenoop},667:{n:"BrtSupAddin",f:parsenoop},668:{n:"BrtSXTDMPOrder",f:parsenoop},669:{n:"BrtCsProtection",f:parsenoop},671:{n:"BrtBeginWsSortMap",f:parsenoop},672:{n:"BrtEndWsSortMap",f:parsenoop},673:{n:"BrtBeginRRSort",f:parsenoop},674:{n:"BrtEndRRSort",f:parsenoop},675:{n:"BrtRRSortItem",f:parsenoop},676:{n:"BrtFileSharingIso",f:parsenoop},677:{n:"BrtBookProtectionIso",f:parsenoop},678:{n:"BrtSheetProtectionIso",f:parsenoop},679:{n:"BrtCsProtectionIso",f:parsenoop},680:{n:"BrtRangeProtectionIso",f:parsenoop},1024:{n:"BrtRwDescent",f:parsenoop},1025:{n:"BrtKnownFonts",f:parsenoop},1026:{n:"BrtBeginSXTupleSet",f:parsenoop},1027:{n:"BrtEndSXTupleSet",f:parsenoop},1028:{n:"BrtBeginSXTupleSetHeader",f:parsenoop},1029:{n:"BrtEndSXTupleSetHeader",f:parsenoop},1030:{n:"BrtSXTupleSetHeaderItem",f:parsenoop},1031:{n:"BrtBeginSXTupleSetData",f:parsenoop},1032:{n:"BrtEndSXTupleSetData",f:parsenoop},1033:{n:"BrtBeginSXTupleSetRow",f:parsenoop},1034:{n:"BrtEndSXTupleSetRow",f:parsenoop},1035:{n:"BrtSXTupleSetRowItem",f:parsenoop},1036:{n:"BrtNameExt",f:parsenoop},1037:{n:"BrtPCDH14",f:parsenoop},1038:{n:"BrtBeginPCDCalcMem14",f:parsenoop},1039:{n:"BrtEndPCDCalcMem14",f:parsenoop},1040:{n:"BrtSXTH14",f:parsenoop},1041:{n:"BrtBeginSparklineGroup",f:parsenoop},1042:{n:"BrtEndSparklineGroup",f:parsenoop},1043:{n:"BrtSparkline",f:parsenoop},1044:{n:"BrtSXDI14",f:parsenoop},1045:{n:"BrtWsFmtInfoEx14",f:parsenoop},1046:{n:"BrtBeginConditionalFormatting14",f:parsenoop},1047:{n:"BrtEndConditionalFormatting14",f:parsenoop},1048:{n:"BrtBeginCFRule14",f:parsenoop},1049:{n:"BrtEndCFRule14",f:parsenoop},1050:{n:"BrtCFVO14",f:parsenoop},1051:{n:"BrtBeginDatabar14",f:parsenoop},1052:{n:"BrtBeginIconSet14",f:parsenoop},1053:{n:"BrtDVal14",f:parsenoop},1054:{n:"BrtBeginDVals14",f:parsenoop},1055:{n:"BrtColor14",f:parsenoop},1056:{n:"BrtBeginSparklines",f:parsenoop},1057:{n:"BrtEndSparklines",f:parsenoop},1058:{n:"BrtBeginSparklineGroups",f:parsenoop},1059:{n:"BrtEndSparklineGroups",f:parsenoop},1061:{n:"BrtSXVD14",f:parsenoop},1062:{n:"BrtBeginSxview14",f:parsenoop},1063:{n:"BrtEndSxview14",f:parsenoop},1066:{n:"BrtBeginPCD14",f:parsenoop},1067:{n:"BrtEndPCD14",f:parsenoop},1068:{n:"BrtBeginExtConn14",f:parsenoop},1069:{n:"BrtEndExtConn14",f:parsenoop},1070:{n:"BrtBeginSlicerCacheIDs",f:parsenoop},1071:{n:"BrtEndSlicerCacheIDs",f:parsenoop},1072:{n:"BrtBeginSlicerCacheID",f:parsenoop},1073:{n:"BrtEndSlicerCacheID",f:parsenoop},1075:{n:"BrtBeginSlicerCache",f:parsenoop},1076:{n:"BrtEndSlicerCache",f:parsenoop},1077:{n:"BrtBeginSlicerCacheDef",f:parsenoop},1078:{n:"BrtEndSlicerCacheDef",f:parsenoop},1079:{n:"BrtBeginSlicersEx",f:parsenoop},1080:{n:"BrtEndSlicersEx",f:parsenoop},1081:{n:"BrtBeginSlicerEx",f:parsenoop},1082:{n:"BrtEndSlicerEx",f:parsenoop},1083:{n:"BrtBeginSlicer",f:parsenoop},1084:{n:"BrtEndSlicer",f:parsenoop},1085:{n:"BrtSlicerCachePivotTables",f:parsenoop},1086:{n:"BrtBeginSlicerCacheOlapImpl",f:parsenoop},1087:{n:"BrtEndSlicerCacheOlapImpl",f:parsenoop},1088:{n:"BrtBeginSlicerCacheLevelsData",f:parsenoop},1089:{n:"BrtEndSlicerCacheLevelsData",f:parsenoop},1090:{n:"BrtBeginSlicerCacheLevelData",f:parsenoop},1091:{n:"BrtEndSlicerCacheLevelData",f:parsenoop},1092:{n:"BrtBeginSlicerCacheSiRanges",f:parsenoop},1093:{n:"BrtEndSlicerCacheSiRanges",f:parsenoop},1094:{n:"BrtBeginSlicerCacheSiRange",f:parsenoop},1095:{n:"BrtEndSlicerCacheSiRange",f:parsenoop},1096:{n:"BrtSlicerCacheOlapItem",f:parsenoop},1097:{n:"BrtBeginSlicerCacheSelections",f:parsenoop},1098:{n:"BrtSlicerCacheSelection",f:parsenoop},1099:{n:"BrtEndSlicerCacheSelections",f:parsenoop},1100:{n:"BrtBeginSlicerCacheNative",f:parsenoop},1101:{n:"BrtEndSlicerCacheNative",f:parsenoop},1102:{n:"BrtSlicerCacheNativeItem",f:parsenoop},1103:{n:"BrtRangeProtection14",f:parsenoop},1104:{n:"BrtRangeProtectionIso14",f:parsenoop},1105:{n:"BrtCellIgnoreEC14",f:parsenoop},1111:{n:"BrtList14",f:parsenoop},1112:{n:"BrtCFIcon",f:parsenoop},1113:{n:"BrtBeginSlicerCachesPivotCacheIDs",f:parsenoop},1114:{n:"BrtEndSlicerCachesPivotCacheIDs",f:parsenoop},1115:{n:"BrtBeginSlicers",f:parsenoop},1116:{n:"BrtEndSlicers",f:parsenoop},1117:{n:"BrtWbProp14",f:parsenoop},1118:{n:"BrtBeginSXEdit",f:parsenoop},1119:{n:"BrtEndSXEdit",f:parsenoop},1120:{n:"BrtBeginSXEdits",f:parsenoop},1121:{n:"BrtEndSXEdits",f:parsenoop},1122:{n:"BrtBeginSXChange",f:parsenoop},1123:{n:"BrtEndSXChange",f:parsenoop},1124:{n:"BrtBeginSXChanges",f:parsenoop},1125:{n:"BrtEndSXChanges",f:parsenoop},1126:{n:"BrtSXTupleItems",f:parsenoop},1128:{n:"BrtBeginSlicerStyle",f:parsenoop},1129:{n:"BrtEndSlicerStyle",f:parsenoop},1130:{n:"BrtSlicerStyleElement",f:parsenoop},1131:{n:"BrtBeginStyleSheetExt14",f:parsenoop},1132:{n:"BrtEndStyleSheetExt14",f:parsenoop},1133:{n:"BrtBeginSlicerCachesPivotCacheID",f:parsenoop},1134:{n:"BrtEndSlicerCachesPivotCacheID",f:parsenoop},1135:{n:"BrtBeginConditionalFormattings",f:parsenoop},1136:{n:"BrtEndConditionalFormattings",f:parsenoop},1137:{n:"BrtBeginPCDCalcMemExt",f:parsenoop},1138:{n:"BrtEndPCDCalcMemExt",f:parsenoop},1139:{n:"BrtBeginPCDCalcMemsExt",f:parsenoop},1140:{n:"BrtEndPCDCalcMemsExt",f:parsenoop},1141:{n:"BrtPCDField14",f:parsenoop},1142:{n:"BrtBeginSlicerStyles",f:parsenoop},1143:{n:"BrtEndSlicerStyles",f:parsenoop},1144:{n:"BrtBeginSlicerStyleElements",f:parsenoop},1145:{n:"BrtEndSlicerStyleElements",f:parsenoop},1146:{n:"BrtCFRuleExt",f:parsenoop},1147:{n:"BrtBeginSXCondFmt14",f:parsenoop},1148:{n:"BrtEndSXCondFmt14",f:parsenoop},1149:{n:"BrtBeginSXCondFmts14",f:parsenoop},1150:{n:"BrtEndSXCondFmts14",f:parsenoop},1152:{n:"BrtBeginSortCond14",f:parsenoop},1153:{n:"BrtEndSortCond14",f:parsenoop},1154:{n:"BrtEndDVals14",f:parsenoop},1155:{n:"BrtEndIconSet14",f:parsenoop},1156:{n:"BrtEndDatabar14",f:parsenoop},1157:{n:"BrtBeginColorScale14",f:parsenoop},1158:{n:"BrtEndColorScale14",f:parsenoop},1159:{n:"BrtBeginSxrules14",f:parsenoop},1160:{n:"BrtEndSxrules14",f:parsenoop},1161:{n:"BrtBeginPRule14",f:parsenoop},1162:{n:"BrtEndPRule14",f:parsenoop},1163:{n:"BrtBeginPRFilters14",f:parsenoop},1164:{n:"BrtEndPRFilters14",f:parsenoop},1165:{n:"BrtBeginPRFilter14",f:parsenoop},1166:{n:"BrtEndPRFilter14",f:parsenoop},1167:{n:"BrtBeginPRFItem14",f:parsenoop},1168:{n:"BrtEndPRFItem14",f:parsenoop},1169:{n:"BrtBeginCellIgnoreECs14",f:parsenoop},1170:{n:"BrtEndCellIgnoreECs14",f:parsenoop},1171:{n:"BrtDxf14",f:parsenoop},1172:{n:"BrtBeginDxF14s",f:parsenoop},1173:{n:"BrtEndDxf14s",f:parsenoop},1177:{n:"BrtFilter14",f:parsenoop},1178:{n:"BrtBeginCustomFilters14",f:parsenoop},1180:{n:"BrtCustomFilter14",f:parsenoop},1181:{n:"BrtIconFilter14",f:parsenoop},1182:{n:"BrtPivotCacheConnectionName",f:parsenoop},2048:{n:"BrtBeginDecoupledPivotCacheIDs",f:parsenoop},2049:{n:"BrtEndDecoupledPivotCacheIDs",f:parsenoop},2050:{n:"BrtDecoupledPivotCacheID",f:parsenoop},2051:{n:"BrtBeginPivotTableRefs",f:parsenoop},2052:{n:"BrtEndPivotTableRefs",f:parsenoop},2053:{n:"BrtPivotTableRef",f:parsenoop},2054:{n:"BrtSlicerCacheBookPivotTables",f:parsenoop},2055:{n:"BrtBeginSxvcells",f:parsenoop},2056:{n:"BrtEndSxvcells",f:parsenoop},2057:{n:"BrtBeginSxRow",f:parsenoop},2058:{n:"BrtEndSxRow",f:parsenoop},2060:{n:"BrtPcdCalcMem15",f:parsenoop},2067:{n:"BrtQsi15",f:parsenoop},2068:{n:"BrtBeginWebExtensions",f:parsenoop},2069:{n:"BrtEndWebExtensions",f:parsenoop},2070:{n:"BrtWebExtension",f:parsenoop},2071:{n:"BrtAbsPath15",f:parsenoop},2072:{n:"BrtBeginPivotTableUISettings",f:parsenoop},2073:{n:"BrtEndPivotTableUISettings",f:parsenoop},2075:{n:"BrtTableSlicerCacheIDs",f:parsenoop},2076:{n:"BrtTableSlicerCacheID",f:parsenoop},2077:{n:"BrtBeginTableSlicerCache",f:parsenoop},2078:{n:"BrtEndTableSlicerCache",f:parsenoop},2079:{n:"BrtSxFilter15",f:parsenoop},2080:{n:"BrtBeginTimelineCachePivotCacheIDs",f:parsenoop},2081:{n:"BrtEndTimelineCachePivotCacheIDs",f:parsenoop},2082:{n:"BrtTimelineCachePivotCacheID",f:parsenoop},2083:{n:"BrtBeginTimelineCacheIDs",f:parsenoop},2084:{n:"BrtEndTimelineCacheIDs",f:parsenoop},2085:{n:"BrtBeginTimelineCacheID",f:parsenoop},2086:{n:"BrtEndTimelineCacheID",f:parsenoop},2087:{n:"BrtBeginTimelinesEx",f:parsenoop},2088:{n:"BrtEndTimelinesEx",f:parsenoop},2089:{n:"BrtBeginTimelineEx",f:parsenoop},2090:{n:"BrtEndTimelineEx",f:parsenoop},2091:{n:"BrtWorkBookPr15",f:parsenoop},2092:{n:"BrtPCDH15",f:parsenoop},2093:{n:"BrtBeginTimelineStyle",f:parsenoop},2094:{n:"BrtEndTimelineStyle",f:parsenoop},2095:{n:"BrtTimelineStyleElement",f:parsenoop},2096:{n:"BrtBeginTimelineStylesheetExt15",f:parsenoop},2097:{n:"BrtEndTimelineStylesheetExt15",f:parsenoop},2098:{n:"BrtBeginTimelineStyles",f:parsenoop},2099:{n:"BrtEndTimelineStyles",f:parsenoop},2100:{n:"BrtBeginTimelineStyleElements",f:parsenoop},2101:{n:"BrtEndTimelineStyleElements",f:parsenoop},2102:{n:"BrtDxf15",f:parsenoop},2103:{n:"BrtBeginDxfs15",f:parsenoop},2104:{n:"brtEndDxfs15",f:parsenoop},2105:{n:"BrtSlicerCacheHideItemsWithNoData",f:parsenoop},2106:{n:"BrtBeginItemUniqueNames",f:parsenoop},2107:{n:"BrtEndItemUniqueNames",f:parsenoop},2108:{n:"BrtItemUniqueName",f:parsenoop},2109:{n:"BrtBeginExtConn15",f:parsenoop},2110:{n:"BrtEndExtConn15",f:parsenoop},2111:{n:"BrtBeginOledbPr15",f:parsenoop},2112:{n:"BrtEndOledbPr15",f:parsenoop},2113:{n:"BrtBeginDataFeedPr15",f:parsenoop},2114:{n:"BrtEndDataFeedPr15",f:parsenoop},2115:{n:"BrtTextPr15",f:parsenoop},2116:{n:"BrtRangePr15",f:parsenoop},2117:{n:"BrtDbCommand15",f:parsenoop},2118:{n:"BrtBeginDbTables15",f:parsenoop},2119:{n:"BrtEndDbTables15",f:parsenoop},2120:{n:"BrtDbTable15",f:parsenoop},2121:{n:"BrtBeginDataModel",f:parsenoop},2122:{n:"BrtEndDataModel",f:parsenoop},2123:{n:"BrtBeginModelTables",f:parsenoop},2124:{n:"BrtEndModelTables",f:parsenoop},2125:{n:"BrtModelTable",f:parsenoop},2126:{n:"BrtBeginModelRelationships",f:parsenoop},2127:{n:"BrtEndModelRelationships",f:parsenoop},2128:{n:"BrtModelRelationship",f:parsenoop},2129:{n:"BrtBeginECTxtWiz15",f:parsenoop},2130:{n:"BrtEndECTxtWiz15",f:parsenoop},2131:{n:"BrtBeginECTWFldInfoLst15",f:parsenoop},2132:{n:"BrtEndECTWFldInfoLst15",f:parsenoop},2133:{n:"BrtBeginECTWFldInfo15",f:parsenoop},2134:{n:"BrtFieldListActiveItem",f:parsenoop},2135:{n:"BrtPivotCacheIdVersion",f:parsenoop},2136:{n:"BrtSXDI15",f:parsenoop},65535:{n:"",f:parsenoop}};var evert_RE=evert_key(XLSBRecordEnum,"n");var XLSRecordEnum={3:{n:"BIFF2NUM",f:parse_BIFF2NUM},4:{n:"BIFF2STR",f:parse_BIFF2STR},6:{n:"Formula",f:parse_Formula},9:{n:"BOF",f:parse_BOF},10:{n:"EOF",f:parse_EOF},12:{n:"CalcCount",f:parse_CalcCount},13:{n:"CalcMode",f:parse_CalcMode},14:{n:"CalcPrecision",f:parse_CalcPrecision},15:{n:"CalcRefMode",f:parse_CalcRefMode},16:{n:"CalcDelta",f:parse_CalcDelta},17:{n:"CalcIter",f:parse_CalcIter},18:{n:"Protect",f:parse_Protect},19:{n:"Password",f:parse_Password},20:{n:"Header",f:parse_Header},21:{n:"Footer",f:parse_Footer},23:{n:"ExternSheet",f:parse_ExternSheet},24:{n:"Lbl",f:parse_Lbl},25:{n:"WinProtect",f:parse_WinProtect},26:{n:"VerticalPageBreaks",f:parse_VerticalPageBreaks},27:{n:"HorizontalPageBreaks",f:parse_HorizontalPageBreaks},28:{n:"Note",f:parse_Note},29:{n:"Selection",f:parse_Selection},34:{n:"Date1904",f:parse_Date1904},35:{n:"ExternName",f:parse_ExternName},38:{n:"LeftMargin",f:parse_LeftMargin},39:{n:"RightMargin",f:parse_RightMargin},40:{n:"TopMargin",f:parse_TopMargin},41:{n:"BottomMargin",f:parse_BottomMargin},42:{n:"PrintRowCol",f:parse_PrintRowCol},43:{n:"PrintGrid",f:parse_PrintGrid},47:{n:"FilePass",f:parse_FilePass},49:{n:"Font",f:parse_Font},51:{n:"PrintSize",f:parse_PrintSize},60:{n:"Continue",f:parse_Continue},61:{n:"Window1",f:parse_Window1},64:{n:"Backup",f:parse_Backup},65:{n:"Pane",f:parse_Pane},66:{n:"CodePage",f:parse_CodePage},77:{n:"Pls",f:parse_Pls},80:{n:"DCon",f:parse_DCon},81:{n:"DConRef",f:parse_DConRef},82:{n:"DConName",f:parse_DConName},85:{n:"DefColWidth",f:parse_DefColWidth},89:{n:"XCT",f:parse_XCT},90:{n:"CRN",f:parse_CRN},91:{n:"FileSharing",f:parse_FileSharing},92:{n:"WriteAccess",f:parse_WriteAccess},93:{n:"Obj",f:parse_Obj},94:{n:"Uncalced",f:parse_Uncalced},95:{n:"CalcSaveRecalc",f:parse_CalcSaveRecalc},96:{n:"Template",f:parse_Template},97:{n:"Intl",f:parse_Intl},99:{n:"ObjProtect",f:parse_ObjProtect},125:{n:"ColInfo",f:parse_ColInfo},128:{n:"Guts",f:parse_Guts},129:{n:"WsBool",f:parse_WsBool},130:{n:"GridSet",f:parse_GridSet},131:{n:"HCenter",f:parse_HCenter},132:{n:"VCenter",f:parse_VCenter},133:{n:"BoundSheet8",f:parse_BoundSheet8},134:{n:"WriteProtect",f:parse_WriteProtect},140:{n:"Country",f:parse_Country},141:{n:"HideObj",f:parse_HideObj},144:{n:"Sort",f:parse_Sort},146:{n:"Palette",f:parse_Palette},151:{n:"Sync",f:parse_Sync},
152:{n:"LPr",f:parse_LPr},153:{n:"DxGCol",f:parse_DxGCol},154:{n:"FnGroupName",f:parse_FnGroupName},155:{n:"FilterMode",f:parse_FilterMode},156:{n:"BuiltInFnGroupCount",f:parse_BuiltInFnGroupCount},157:{n:"AutoFilterInfo",f:parse_AutoFilterInfo},158:{n:"AutoFilter",f:parse_AutoFilter},160:{n:"Scl",f:parse_Scl},161:{n:"Setup",f:parse_Setup},174:{n:"ScenMan",f:parse_ScenMan},175:{n:"SCENARIO",f:parse_SCENARIO},176:{n:"SxView",f:parse_SxView},177:{n:"Sxvd",f:parse_Sxvd},178:{n:"SXVI",f:parse_SXVI},180:{n:"SxIvd",f:parse_SxIvd},181:{n:"SXLI",f:parse_SXLI},182:{n:"SXPI",f:parse_SXPI},184:{n:"DocRoute",f:parse_DocRoute},185:{n:"RecipName",f:parse_RecipName},189:{n:"MulRk",f:parse_MulRk},190:{n:"MulBlank",f:parse_MulBlank},193:{n:"Mms",f:parse_Mms},197:{n:"SXDI",f:parse_SXDI},198:{n:"SXDB",f:parse_SXDB},199:{n:"SXFDB",f:parse_SXFDB},200:{n:"SXDBB",f:parse_SXDBB},201:{n:"SXNum",f:parse_SXNum},202:{n:"SxBool",f:parse_SxBool},203:{n:"SxErr",f:parse_SxErr},204:{n:"SXInt",f:parse_SXInt},205:{n:"SXString",f:parse_SXString},206:{n:"SXDtr",f:parse_SXDtr},207:{n:"SxNil",f:parse_SxNil},208:{n:"SXTbl",f:parse_SXTbl},209:{n:"SXTBRGIITM",f:parse_SXTBRGIITM},210:{n:"SxTbpg",f:parse_SxTbpg},211:{n:"ObProj",f:parse_ObProj},213:{n:"SXStreamID",f:parse_SXStreamID},215:{n:"DBCell",f:parse_DBCell},216:{n:"SXRng",f:parse_SXRng},217:{n:"SxIsxoper",f:parse_SxIsxoper},218:{n:"BookBool",f:parse_BookBool},220:{n:"DbOrParamQry",f:parse_DbOrParamQry},221:{n:"ScenarioProtect",f:parse_ScenarioProtect},222:{n:"OleObjectSize",f:parse_OleObjectSize},224:{n:"XF",f:parse_XF},225:{n:"InterfaceHdr",f:parse_InterfaceHdr},226:{n:"InterfaceEnd",f:parse_InterfaceEnd},227:{n:"SXVS",f:parse_SXVS},229:{n:"MergeCells",f:parse_MergeCells},233:{n:"BkHim",f:parse_BkHim},235:{n:"MsoDrawingGroup",f:parse_MsoDrawingGroup},236:{n:"MsoDrawing",f:parse_MsoDrawing},237:{n:"MsoDrawingSelection",f:parse_MsoDrawingSelection},239:{n:"PhoneticInfo",f:parse_PhoneticInfo},240:{n:"SxRule",f:parse_SxRule},241:{n:"SXEx",f:parse_SXEx},242:{n:"SxFilt",f:parse_SxFilt},244:{n:"SxDXF",f:parse_SxDXF},245:{n:"SxItm",f:parse_SxItm},246:{n:"SxName",f:parse_SxName},247:{n:"SxSelect",f:parse_SxSelect},248:{n:"SXPair",f:parse_SXPair},249:{n:"SxFmla",f:parse_SxFmla},251:{n:"SxFormat",f:parse_SxFormat},252:{n:"SST",f:parse_SST},253:{n:"LabelSst",f:parse_LabelSst},255:{n:"ExtSST",f:parse_ExtSST},256:{n:"SXVDEx",f:parse_SXVDEx},259:{n:"SXFormula",f:parse_SXFormula},290:{n:"SXDBEx",f:parse_SXDBEx},311:{n:"RRDInsDel",f:parse_RRDInsDel},312:{n:"RRDHead",f:parse_RRDHead},315:{n:"RRDChgCell",f:parse_RRDChgCell},317:{n:"RRTabId",f:parse_RRTabId},318:{n:"RRDRenSheet",f:parse_RRDRenSheet},319:{n:"RRSort",f:parse_RRSort},320:{n:"RRDMove",f:parse_RRDMove},330:{n:"RRFormat",f:parse_RRFormat},331:{n:"RRAutoFmt",f:parse_RRAutoFmt},333:{n:"RRInsertSh",f:parse_RRInsertSh},334:{n:"RRDMoveBegin",f:parse_RRDMoveBegin},335:{n:"RRDMoveEnd",f:parse_RRDMoveEnd},336:{n:"RRDInsDelBegin",f:parse_RRDInsDelBegin},337:{n:"RRDInsDelEnd",f:parse_RRDInsDelEnd},338:{n:"RRDConflict",f:parse_RRDConflict},339:{n:"RRDDefName",f:parse_RRDDefName},340:{n:"RRDRstEtxp",f:parse_RRDRstEtxp},351:{n:"LRng",f:parse_LRng},352:{n:"UsesELFs",f:parse_UsesELFs},353:{n:"DSF",f:parse_DSF},401:{n:"CUsr",f:parse_CUsr},402:{n:"CbUsr",f:parse_CbUsr},403:{n:"UsrInfo",f:parse_UsrInfo},404:{n:"UsrExcl",f:parse_UsrExcl},405:{n:"FileLock",f:parse_FileLock},406:{n:"RRDInfo",f:parse_RRDInfo},407:{n:"BCUsrs",f:parse_BCUsrs},408:{n:"UsrChk",f:parse_UsrChk},425:{n:"UserBView",f:parse_UserBView},426:{n:"UserSViewBegin",f:parse_UserSViewBegin},427:{n:"UserSViewEnd",f:parse_UserSViewEnd},428:{n:"RRDUserView",f:parse_RRDUserView},429:{n:"Qsi",f:parse_Qsi},430:{n:"SupBook",f:parse_SupBook},431:{n:"Prot4Rev",f:parse_Prot4Rev},432:{n:"CondFmt",f:parse_CondFmt},433:{n:"CF",f:parse_CF},434:{n:"DVal",f:parse_DVal},437:{n:"DConBin",f:parse_DConBin},438:{n:"TxO",f:parse_TxO},439:{n:"RefreshAll",f:parse_RefreshAll},440:{n:"HLink",f:parse_HLink},441:{n:"Lel",f:parse_Lel},442:{n:"CodeName",f:parse_XLSCodeName},443:{n:"SXFDBType",f:parse_SXFDBType},444:{n:"Prot4RevPass",f:parse_Prot4RevPass},445:{n:"ObNoMacros",f:parse_ObNoMacros},446:{n:"Dv",f:parse_Dv},448:{n:"Excel9File",f:parse_Excel9File},449:{n:"RecalcId",f:parse_RecalcId,r:2},450:{n:"EntExU2",f:parse_EntExU2},512:{n:"Dimensions",f:parse_Dimensions},513:{n:"Blank",f:parse_Blank},515:{n:"Number",f:parse_Number},516:{n:"Label",f:parse_Label},517:{n:"BoolErr",f:parse_BoolErr},519:{n:"String",f:parse_String},520:{n:"Row",f:parse_Row},523:{n:"Index",f:parse_Index},545:{n:"Array",f:parse_Array},549:{n:"DefaultRowHeight",f:parse_DefaultRowHeight},566:{n:"Table",f:parse_Table},574:{n:"Window2",f:parse_Window2},638:{n:"RK",f:parse_RK},659:{n:"Style",f:parse_Style},1048:{n:"BigName",f:parse_BigName},1054:{n:"Format",f:parse_Format},1084:{n:"ContinueBigName",f:parse_ContinueBigName},1212:{n:"ShrFmla",f:parse_ShrFmla},2048:{n:"HLinkTooltip",f:parse_HLinkTooltip},2049:{n:"WebPub",f:parse_WebPub},2050:{n:"QsiSXTag",f:parse_QsiSXTag},2051:{n:"DBQueryExt",f:parse_DBQueryExt},2052:{n:"ExtString",f:parse_ExtString},2053:{n:"TxtQry",f:parse_TxtQry},2054:{n:"Qsir",f:parse_Qsir},2055:{n:"Qsif",f:parse_Qsif},2056:{n:"RRDTQSIF",f:parse_RRDTQSIF},2057:{n:"BOF",f:parse_BOF},2058:{n:"OleDbConn",f:parse_OleDbConn},2059:{n:"WOpt",f:parse_WOpt},2060:{n:"SXViewEx",f:parse_SXViewEx},2061:{n:"SXTH",f:parse_SXTH},2062:{n:"SXPIEx",f:parse_SXPIEx},2063:{n:"SXVDTEx",f:parse_SXVDTEx},2064:{n:"SXViewEx9",f:parse_SXViewEx9},2066:{n:"ContinueFrt",f:parse_ContinueFrt},2067:{n:"RealTimeData",f:parse_RealTimeData},2128:{n:"ChartFrtInfo",f:parse_ChartFrtInfo},2129:{n:"FrtWrapper",f:parse_FrtWrapper},2130:{n:"StartBlock",f:parse_StartBlock},2131:{n:"EndBlock",f:parse_EndBlock},2132:{n:"StartObject",f:parse_StartObject},2133:{n:"EndObject",f:parse_EndObject},2134:{n:"CatLab",f:parse_CatLab},2135:{n:"YMult",f:parse_YMult},2136:{n:"SXViewLink",f:parse_SXViewLink},2137:{n:"PivotChartBits",f:parse_PivotChartBits},2138:{n:"FrtFontList",f:parse_FrtFontList},2146:{n:"SheetExt",f:parse_SheetExt},2147:{n:"BookExt",f:parse_BookExt,r:12},2148:{n:"SXAddl",f:parse_SXAddl},2149:{n:"CrErr",f:parse_CrErr},2150:{n:"HFPicture",f:parse_HFPicture},2151:{n:"FeatHdr",f:parse_FeatHdr},2152:{n:"Feat",f:parse_Feat},2154:{n:"DataLabExt",f:parse_DataLabExt},2155:{n:"DataLabExtContents",f:parse_DataLabExtContents},2156:{n:"CellWatch",f:parse_CellWatch},2161:{n:"FeatHdr11",f:parse_FeatHdr11},2162:{n:"Feature11",f:parse_Feature11},2164:{n:"DropDownObjIds",f:parse_DropDownObjIds},2165:{n:"ContinueFrt11",f:parse_ContinueFrt11},2166:{n:"DConn",f:parse_DConn},2167:{n:"List12",f:parse_List12},2168:{n:"Feature12",f:parse_Feature12},2169:{n:"CondFmt12",f:parse_CondFmt12},2170:{n:"CF12",f:parse_CF12},2171:{n:"CFEx",f:parse_CFEx},2172:{n:"XFCRC",f:parse_XFCRC,r:12},2173:{n:"XFExt",f:parse_XFExt,r:12},2174:{n:"AutoFilter12",f:parse_AutoFilter12},2175:{n:"ContinueFrt12",f:parse_ContinueFrt12},2180:{n:"MDTInfo",f:parse_MDTInfo},2181:{n:"MDXStr",f:parse_MDXStr},2182:{n:"MDXTuple",f:parse_MDXTuple},2183:{n:"MDXSet",f:parse_MDXSet},2184:{n:"MDXProp",f:parse_MDXProp},2185:{n:"MDXKPI",f:parse_MDXKPI},2186:{n:"MDB",f:parse_MDB},2187:{n:"PLV",f:parse_PLV},2188:{n:"Compat12",f:parse_Compat12,r:12},2189:{n:"DXF",f:parse_DXF},2190:{n:"TableStyles",f:parse_TableStyles,r:12},2191:{n:"TableStyle",f:parse_TableStyle},2192:{n:"TableStyleElement",f:parse_TableStyleElement},2194:{n:"StyleExt",f:parse_StyleExt},2195:{n:"NamePublish",f:parse_NamePublish},2196:{n:"NameCmt",f:parse_NameCmt},2197:{n:"SortData",f:parse_SortData},2198:{n:"Theme",f:parse_Theme,r:12},2199:{n:"GUIDTypeLib",f:parse_GUIDTypeLib},2200:{n:"FnGrp12",f:parse_FnGrp12},2201:{n:"NameFnGrp12",f:parse_NameFnGrp12},2202:{n:"MTRSettings",f:parse_MTRSettings,r:12},2203:{n:"CompressPictures",f:parse_CompressPictures},2204:{n:"HeaderFooter",f:parse_HeaderFooter},2205:{n:"CrtLayout12",f:parse_CrtLayout12},2206:{n:"CrtMlFrt",f:parse_CrtMlFrt},2207:{n:"CrtMlFrtContinue",f:parse_CrtMlFrtContinue},2211:{n:"ForceFullCalculation",f:parse_ForceFullCalculation},2212:{n:"ShapePropsStream",f:parse_ShapePropsStream},2213:{n:"TextPropsStream",f:parse_TextPropsStream},2214:{n:"RichTextStream",f:parse_RichTextStream},2215:{n:"CrtLayout12A",f:parse_CrtLayout12A},4097:{n:"Units",f:parse_Units},4098:{n:"Chart",f:parse_Chart},4099:{n:"Series",f:parse_Series},4102:{n:"DataFormat",f:parse_DataFormat},4103:{n:"LineFormat",f:parse_LineFormat},4105:{n:"MarkerFormat",f:parse_MarkerFormat},4106:{n:"AreaFormat",f:parse_AreaFormat},4107:{n:"PieFormat",f:parse_PieFormat},4108:{n:"AttachedLabel",f:parse_AttachedLabel},4109:{n:"SeriesText",f:parse_SeriesText},4116:{n:"ChartFormat",f:parse_ChartFormat},4117:{n:"Legend",f:parse_Legend},4118:{n:"SeriesList",f:parse_SeriesList},4119:{n:"Bar",f:parse_Bar},4120:{n:"Line",f:parse_Line},4121:{n:"Pie",f:parse_Pie},4122:{n:"Area",f:parse_Area},4123:{n:"Scatter",f:parse_Scatter},4124:{n:"CrtLine",f:parse_CrtLine},4125:{n:"Axis",f:parse_Axis},4126:{n:"Tick",f:parse_Tick},4127:{n:"ValueRange",f:parse_ValueRange},4128:{n:"CatSerRange",f:parse_CatSerRange},4129:{n:"AxisLine",f:parse_AxisLine},4130:{n:"CrtLink",f:parse_CrtLink},4132:{n:"DefaultText",f:parse_DefaultText},4133:{n:"Text",f:parse_Text},4134:{n:"FontX",f:parse_FontX},4135:{n:"ObjectLink",f:parse_ObjectLink},4146:{n:"Frame",f:parse_Frame},4147:{n:"Begin",f:parse_Begin},4148:{n:"End",f:parse_End},4149:{n:"PlotArea",f:parse_PlotArea},4154:{n:"Chart3d",f:parse_Chart3d},4156:{n:"PicF",f:parse_PicF},4157:{n:"DropBar",f:parse_DropBar},4158:{n:"Radar",f:parse_Radar},4159:{n:"Surf",f:parse_Surf},4160:{n:"RadarArea",f:parse_RadarArea},4161:{n:"AxisParent",f:parse_AxisParent},4163:{n:"LegendException",f:parse_LegendException},4164:{n:"ShtProps",f:parse_ShtProps},4165:{n:"SerToCrt",f:parse_SerToCrt},4166:{n:"AxesUsed",f:parse_AxesUsed},4168:{n:"SBaseRef",f:parse_SBaseRef},4170:{n:"SerParent",f:parse_SerParent},4171:{n:"SerAuxTrend",f:parse_SerAuxTrend},4174:{n:"IFmtRecord",f:parse_IFmtRecord},4175:{n:"Pos",f:parse_Pos},4176:{n:"AlRuns",f:parse_AlRuns},4177:{n:"BRAI",f:parse_BRAI},4187:{n:"SerAuxErrBar",f:parse_SerAuxErrBar},4188:{n:"ClrtClient",f:parse_ClrtClient},4189:{n:"SerFmt",f:parse_SerFmt},4191:{n:"Chart3DBarShape",f:parse_Chart3DBarShape},4192:{n:"Fbi",f:parse_Fbi},4193:{n:"BopPop",f:parse_BopPop},4194:{n:"AxcExt",f:parse_AxcExt},4195:{n:"Dat",f:parse_Dat},4196:{n:"PlotGrowth",f:parse_PlotGrowth},4197:{n:"SIIndex",f:parse_SIIndex},4198:{n:"GelFrame",f:parse_GelFrame},4199:{n:"BopPopCustom",f:parse_BopPopCustom},4200:{n:"Fbi2",f:parse_Fbi2},22:{n:"ExternCount",f:parsenoop},126:{n:"RK",f:parsenoop},127:{n:"ImData",f:parsenoop},135:{n:"Addin",f:parsenoop},136:{n:"Edg",f:parsenoop},137:{n:"Pub",f:parsenoop},145:{n:"Sub",f:parsenoop},148:{n:"LHRecord",f:parsenoop},149:{n:"LHNGraph",f:parsenoop},150:{n:"Sound",f:parsenoop},169:{n:"CoordList",f:parsenoop},171:{n:"GCW",f:parsenoop},188:{n:"ShrFmla",f:parsenoop},194:{n:"AddMenu",f:parsenoop},195:{n:"DelMenu",f:parsenoop},214:{n:"RString",f:parsenoop},223:{n:"UDDesc",f:parsenoop},234:{n:"TabIdConf",f:parsenoop},354:{n:"XL5Modify",f:parsenoop},421:{n:"FileSharing2",f:parsenoop},536:{n:"Name",f:parsenoop},547:{n:"ExternName",f:parse_ExternName},561:{n:"Font",f:parsenoop},1030:{n:"Formula",f:parse_Formula},2157:{n:"FeatInfo",f:parsenoop},2163:{n:"FeatInfo11",f:parsenoop},2177:{n:"SXAddl12",f:parsenoop},2240:{n:"AutoWebPub",f:parsenoop},2241:{n:"ListObj",f:parsenoop},2242:{n:"ListField",f:parsenoop},2243:{n:"ListDV",f:parsenoop},2244:{n:"ListCondFmt",f:parsenoop},2245:{n:"ListCF",f:parsenoop},2246:{n:"FMQry",f:parsenoop},2247:{n:"FMSQry",f:parsenoop},2248:{n:"PLV",f:parsenoop},2249:{n:"LnExt",f:parsenoop},2250:{n:"MkrExt",f:parsenoop},2251:{n:"CrtCoopt",f:parsenoop},0:{}};function parse_ods(zip,opts){if(typeof module!=="undefined"&&typeof require!=="undefined"&&typeof ODS==="undefined")ODS=require("./od"+"s");if(typeof ODS==="undefined"||!ODS.parse_ods)throw new Error("Unsupported ODS");return ODS.parse_ods(zip,opts)}function fix_opts_func(defaults){return function fix_opts(opts){for(var i=0;i!=defaults.length;++i){var d=defaults[i];if(opts[d[0]]===undefined)opts[d[0]]=d[1];if(d[2]==="n")opts[d[0]]=Number(opts[d[0]])}}}var fix_read_opts=fix_opts_func([["cellNF",false],["cellHTML",true],["cellFormula",true],["cellStyles",false],["cellDates",false],["sheetStubs",false],["sheetRows",0,"n"],["bookDeps",false],["bookSheets",false],["bookProps",false],["bookFiles",false],["bookVBA",false],["password",""],["WTF",false]]);var fix_write_opts=fix_opts_func([["cellDates",false],["bookSST",false],["bookType","xlsx"],["WTF",false]]);function safe_parse_wbrels(wbrels,sheets){if(!wbrels)return 0;try{wbrels=sheets.map(function pwbr(w){return[w.name,wbrels["!id"][w.id].Target]})}catch(e){return null}return!wbrels||wbrels.length===0?null:wbrels}function safe_parse_ws(zip,path,relsPath,sheet,sheetRels,sheets,opts){try{sheetRels[sheet]=parse_rels(getzipdata(zip,relsPath,true),path);sheets[sheet]=parse_ws(getzipdata(zip,path),path,opts,sheetRels[sheet])}catch(e){if(opts.WTF)throw e}}var nodirs=function nodirs(x){return x.substr(-1)!="/"};function parse_zip(zip,opts){make_ssf(SSF);opts=opts||{};fix_read_opts(opts);reset_cp();if(safegetzipfile(zip,"META-INF/manifest.xml"))return parse_ods(zip,opts);var entries=keys(zip.files).filter(nodirs).sort();var dir=parse_ct(getzipdata(zip,"[Content_Types].xml"),opts);var xlsb=false;var sheets,binname;if(dir.workbooks.length===0){binname="xl/workbook.xml";if(getzipdata(zip,binname,true))dir.workbooks.push(binname)}if(dir.workbooks.length===0){binname="xl/workbook.bin";if(!getzipfile(zip,binname,true))throw new Error("Could not find workbook");dir.workbooks.push(binname);xlsb=true}if(dir.workbooks[0].substr(-3)=="bin")xlsb=true;if(xlsb)set_cp(1200);if(!opts.bookSheets&&!opts.bookProps){strs=[];if(dir.sst)strs=parse_sst(getzipdata(zip,dir.sst.replace(/^\//,"")),dir.sst,opts);themes={};if(opts.cellStyles&&dir.themes.length)themes=parse_theme(getzipdata(zip,dir.themes[0].replace(/^\//,""),true),dir.themes[0],opts);styles={};if(dir.style)styles=parse_sty(getzipdata(zip,dir.style.replace(/^\//,"")),dir.style,opts)}var wb=parse_wb(getzipdata(zip,dir.workbooks[0].replace(/^\//,"")),dir.workbooks[0],opts);var props={},propdata="";if(dir.coreprops.length!==0){propdata=getzipdata(zip,dir.coreprops[0].replace(/^\//,""),true);if(propdata)props=parse_core_props(propdata);if(dir.extprops.length!==0){propdata=getzipdata(zip,dir.extprops[0].replace(/^\//,""),true);if(propdata)parse_ext_props(propdata,props)}}var custprops={};if(!opts.bookSheets||opts.bookProps){if(dir.custprops.length!==0){propdata=getzipdata(zip,dir.custprops[0].replace(/^\//,""),true);if(propdata)custprops=parse_cust_props(propdata,opts)}}var out={};if(opts.bookSheets||opts.bookProps){if(props.Worksheets&&props.SheetNames.length>0)sheets=props.SheetNames;else if(wb.Sheets)sheets=wb.Sheets.map(function pluck(x){return x.name});if(opts.bookProps){out.Props=props;out.Custprops=custprops}if(typeof sheets!=="undefined")out.SheetNames=sheets;if(opts.bookSheets?out.SheetNames:opts.bookProps)return out}sheets={};var deps={};if(opts.bookDeps&&dir.calcchain)deps=parse_cc(getzipdata(zip,dir.calcchain.replace(/^\//,"")),dir.calcchain,opts);var i=0;var sheetRels={};var path,relsPath;if(!props.Worksheets){var wbsheets=wb.Sheets;props.Worksheets=wbsheets.length;props.SheetNames=[];for(var j=0;j!=wbsheets.length;++j){props.SheetNames[j]=wbsheets[j].name}}var wbext=xlsb?"bin":"xml";var wbrelsfile="xl/_rels/workbook."+wbext+".rels";var wbrels=parse_rels(getzipdata(zip,wbrelsfile,true),wbrelsfile);if(wbrels)wbrels=safe_parse_wbrels(wbrels,wb.Sheets);var nmode=getzipdata(zip,"xl/worksheets/sheet.xml",true)?1:0;for(i=0;i!=props.Worksheets;++i){if(wbrels)path="xl/"+wbrels[i][1].replace(/[\/]?xl\//,"");else{path="xl/worksheets/sheet"+(i+1-nmode)+"."+wbext;path=path.replace(/sheet0\./,"sheet.")}relsPath=path.replace(/^(.*)(\/)([^\/]*)$/,"$1/_rels/$3.rels");safe_parse_ws(zip,path,relsPath,props.SheetNames[i],sheetRels,sheets,opts)}if(dir.comments)parse_comments(zip,dir.comments,sheets,sheetRels,opts);out={Directory:dir,Workbook:wb,Props:props,Custprops:custprops,Deps:deps,Sheets:sheets,SheetNames:props.SheetNames,Strings:strs,Styles:styles,Themes:themes,SSF:SSF.get_table()};if(opts.bookFiles){out.keys=entries;out.files=zip.files}if(opts.bookVBA){if(dir.vba.length>0)out.vbaraw=getzipdata(zip,dir.vba[0],true);else if(dir.defaults.bin==="application/vnd.ms-office.vbaProject")out.vbaraw=getzipdata(zip,"xl/vbaProject.bin",true)}return out}function add_rels(rels,rId,f,type,relobj){if(!relobj)relobj={};if(!rels["!id"])rels["!id"]={};relobj.Id="rId"+rId;relobj.Type=type;relobj.Target=f;if(rels["!id"][relobj.Id])throw new Error("Cannot rewrite rId "+rId);rels["!id"][relobj.Id]=relobj;rels[("/"+relobj.Target).replace("//","/")]=relobj}function write_zip(wb,opts){if(wb&&!wb.SSF){wb.SSF=SSF.get_table()}if(wb&&wb.SSF){make_ssf(SSF);SSF.load_table(wb.SSF);opts.revssf=evert_num(wb.SSF);opts.revssf[wb.SSF[65535]]=0}opts.rels={};opts.wbrels={};opts.Strings=[];opts.Strings.Count=0;opts.Strings.Unique=0;var wbext=opts.bookType=="xlsb"?"bin":"xml";var ct={workbooks:[],sheets:[],calcchains:[],themes:[],styles:[],coreprops:[],extprops:[],custprops:[],strs:[],comments:[],vba:[],TODO:[],rels:[],xmlns:""};fix_write_opts(opts=opts||{});var zip=new jszip;var f="",rId=0;opts.cellXfs=[];get_cell_style(opts.cellXfs,{},{revssf:{General:0}});f="docProps/core.xml";zip.file(f,write_core_props(wb.Props,opts));ct.coreprops.push(f);add_rels(opts.rels,2,f,RELS.CORE_PROPS);f="docProps/app.xml";if(!wb.Props)wb.Props={};wb.Props.SheetNames=wb.SheetNames;wb.Props.Worksheets=wb.SheetNames.length;zip.file(f,write_ext_props(wb.Props,opts));ct.extprops.push(f);add_rels(opts.rels,3,f,RELS.EXT_PROPS);if(wb.Custprops!==wb.Props&&keys(wb.Custprops||{}).length>0){f="docProps/custom.xml";zip.file(f,write_cust_props(wb.Custprops,opts));ct.custprops.push(f);add_rels(opts.rels,4,f,RELS.CUST_PROPS)}f="xl/workbook."+wbext;zip.file(f,write_wb(wb,f,opts));ct.workbooks.push(f);add_rels(opts.rels,1,f,RELS.WB);for(rId=1;rId<=wb.SheetNames.length;++rId){f="xl/worksheets/sheet"+rId+"."+wbext;zip.file(f,write_ws(rId-1,f,opts,wb));ct.sheets.push(f);add_rels(opts.wbrels,rId,"worksheets/sheet"+rId+"."+wbext,RELS.WS)}if(opts.Strings!=null&&opts.Strings.length>0){f="xl/sharedStrings."+wbext;zip.file(f,write_sst(opts.Strings,f,opts));ct.strs.push(f);add_rels(opts.wbrels,++rId,"sharedStrings."+wbext,RELS.SST)}f="xl/theme/theme1.xml";zip.file(f,write_theme(opts));ct.themes.push(f);add_rels(opts.wbrels,++rId,"theme/theme1.xml",RELS.THEME);f="xl/styles."+wbext;zip.file(f,write_sty(wb,f,opts));ct.styles.push(f);add_rels(opts.wbrels,++rId,"styles."+wbext,RELS.STY);zip.file("[Content_Types].xml",write_ct(ct,opts));zip.file("_rels/.rels",write_rels(opts.rels));zip.file("xl/_rels/workbook."+wbext+".rels",write_rels(opts.wbrels));return zip}function firstbyte(f,o){switch((o||{}).type||"base64"){case"buffer":return f[0];case"base64":return Base64.decode(f.substr(0,12)).charCodeAt(0);case"binary":return f.charCodeAt(0);case"array":return f[0];default:throw new Error("Unrecognized type "+o.type)}}function read_zip(data,opts){var zip,d=data;var o=opts||{};if(!o.type)o.type=has_buf&&Buffer.isBuffer(data)?"buffer":"base64";switch(o.type){case"base64":zip=new jszip(d,{base64:true});break;case"binary":case"array":zip=new jszip(d,{base64:false});break;case"buffer":zip=new jszip(d);break;case"file":zip=new jszip(d=_fs.readFileSync(data));break;default:throw new Error("Unrecognized type "+o.type)}return parse_zip(zip,o)}function readSync(data,opts){var zip,d=data,isfile=false,n;var o=opts||{};if(!o.type)o.type=has_buf&&Buffer.isBuffer(data)?"buffer":"base64";if(o.type=="file"){isfile=true;o.type="buffer";d=_fs.readFileSync(data)}switch(n=firstbyte(d,o)){case 208:if(isfile)o.type="file";return parse_xlscfb(CFB.read(data,o),o);case 9:return parse_xlscfb(s2a(o.type==="base64"?Base64.decode(data):data),o);case 60:return parse_xlml(d,o);case 80:if(isfile)o.type="file";return read_zip(data,opts);default:throw new Error("Unsupported file "+n)}}function readFileSync(data,opts){var o=opts||{};o.type="file";var wb=readSync(data,o);wb.FILENAME=data;return wb}function write_zip_type(wb,opts){var o=opts||{};style_builder=new StyleBuilder(opts);var z=write_zip(wb,o);switch(o.type){case"base64":return z.generate({type:"base64"});case"binary":return z.generate({type:"string"});case"buffer":return z.generate({type:"nodebuffer"});case"file":return _fs.writeFileSync(o.file,z.generate({type:"nodebuffer"}));default:throw new Error("Unrecognized type "+o.type)}}function writeSync(wb,opts){var o=opts||{};switch(o.bookType){case"xml":return write_xlml(wb,o);default:return write_zip_type(wb,o)}}function writeFileSync(wb,filename,opts){var o=opts||{};o.type="file";o.file=filename;switch(o.file.substr(-5).toLowerCase()){case".xlsx":o.bookType="xlsx";break;case".xlsm":o.bookType="xlsm";break;case".xlsb":o.bookType="xlsb";break;default:switch(o.file.substr(-4).toLowerCase()){case".xls":o.bookType="xls";break;case".xml":o.bookType="xml";break}}return writeSync(wb,o)}function decode_row(rowstr){return parseInt(unfix_row(rowstr),10)-1}function encode_row(row){return""+(row+1)}function fix_row(cstr){return cstr.replace(/([A-Z]|^)(\d+)$/,"$1$$$2")}function unfix_row(cstr){return cstr.replace(/\$(\d+)$/,"$1")}function decode_col(colstr){var c=unfix_col(colstr),d=0,i=0;for(;i!==c.length;++i)d=26*d+c.charCodeAt(i)-64;return d-1}function encode_col(col){var s="";for(++col;col;col=Math.floor((col-1)/26))s=String.fromCharCode((col-1)%26+65)+s;return s}function fix_col(cstr){return cstr.replace(/^([A-Z])/,"$$$1")}function unfix_col(cstr){return cstr.replace(/^\$([A-Z])/,"$1")}function split_cell(cstr){return cstr.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(",")}function decode_cell(cstr){var splt=split_cell(cstr);return{c:decode_col(splt[0]),r:decode_row(splt[1])}}function encode_cell(cell){return encode_col(cell.c)+encode_row(cell.r)}function fix_cell(cstr){return fix_col(fix_row(cstr))}function unfix_cell(cstr){return unfix_col(unfix_row(cstr))}function decode_range(range){var x=range.split(":").map(decode_cell);return{s:x[0],e:x[x.length-1]}}function encode_range(cs,ce){if(ce===undefined||typeof ce==="number")return encode_range(cs.s,cs.e);if(typeof cs!=="string")cs=encode_cell(cs);if(typeof ce!=="string")ce=encode_cell(ce);return cs==ce?cs:cs+":"+ce}function safe_decode_range(range){var o={s:{c:0,r:0},e:{c:0,r:0}};var idx=0,i=0,cc=0;var len=range.length;for(idx=0;i<len;++i){if((cc=range.charCodeAt(i)-64)<1||cc>26)break;idx=26*idx+cc}o.s.c=--idx;for(idx=0;i<len;++i){if((cc=range.charCodeAt(i)-48)<0||cc>9)break;idx=10*idx+cc}o.s.r=--idx;if(i===len||range.charCodeAt(++i)===58){o.e.c=o.s.c;o.e.r=o.s.r;return o}for(idx=0;i!=len;++i){if((cc=range.charCodeAt(i)-64)<1||cc>26)break;idx=26*idx+cc}o.e.c=--idx;for(idx=0;i!=len;++i){if((cc=range.charCodeAt(i)-48)<0||cc>9)break;idx=10*idx+cc}o.e.r=--idx;return o}function safe_format_cell(cell,v){if(cell.z!==undefined)try{return cell.w=SSF.format(cell.z,v)}catch(e){}if(!cell.XF)return v;try{return cell.w=SSF.format(cell.XF.ifmt||0,v)}catch(e){return""+v}}function format_cell(cell,v){if(cell==null||cell.t==null)return"";if(cell.w!==undefined)return cell.w;if(v===undefined)return safe_format_cell(cell,cell.v);return safe_format_cell(cell,v)}function sheet_to_json(sheet,opts){var val,row,range,header=0,offset=1,r,hdr=[],isempty,R,C,v;var o=opts!=null?opts:{};var raw=o.raw;if(sheet==null||sheet["!ref"]==null)return[];range=o.range!==undefined?o.range:sheet["!ref"];if(o.header===1)header=1;else if(o.header==="A")header=2;else if(Array.isArray(o.header))header=3;switch(typeof range){case"string":r=safe_decode_range(range);break;case"number":r=safe_decode_range(sheet["!ref"]);r.s.r=range;break;default:r=range}if(header>0)offset=0;var rr=encode_row(r.s.r);var cols=new Array(r.e.c-r.s.c+1);var out=new Array(r.e.r-r.s.r-offset+1);var outi=0;for(C=r.s.c;C<=r.e.c;++C){cols[C]=encode_col(C);val=sheet[cols[C]+rr];switch(header){case 1:hdr[C]=C;break;case 2:hdr[C]=cols[C];break;case 3:hdr[C]=o.header[C-r.s.c];break;default:if(val===undefined)continue;hdr[C]=format_cell(val)}}for(R=r.s.r+offset;R<=r.e.r;++R){rr=encode_row(R);isempty=true;if(header===1)row=[];else{row={};if(Object.defineProperty)Object.defineProperty(row,"__rowNum__",{value:R,enumerable:false});else row.__rowNum__=R}for(C=r.s.c;C<=r.e.c;++C){val=sheet[cols[C]+rr];if(val===undefined||val.t===undefined)continue;v=val.v;switch(val.t){case"e":continue;case"s":break;case"b":case"n":break;default:throw"unrecognized type "+val.t}if(v!==undefined){row[hdr[C]]=raw?v:format_cell(val,v);isempty=false}}if(isempty===false||header===1)out[outi++]=row}out.length=outi;return out}function sheet_to_row_object_array(sheet,opts){return sheet_to_json(sheet,opts!=null?opts:{})}function sheet_to_csv(sheet,opts){var out="",txt="",qreg=/"/g;var o=opts==null?{}:opts;if(sheet==null||sheet["!ref"]==null)return"";var r=safe_decode_range(sheet["!ref"]);var FS=o.FS!==undefined?o.FS:",",fs=FS.charCodeAt(0);var RS=o.RS!==undefined?o.RS:"\n",rs=RS.charCodeAt(0);var row="",rr="",cols=[];var i=0,cc=0,val;var R=0,C=0;for(C=r.s.c;C<=r.e.c;++C)cols[C]=encode_col(C);for(R=r.s.r;R<=r.e.r;++R){row="";rr=encode_row(R);for(C=r.s.c;C<=r.e.c;++C){val=sheet[cols[C]+rr];txt=val!==undefined?""+format_cell(val):"";for(i=0,cc=0;i!==txt.length;++i)if((cc=txt.charCodeAt(i))===fs||cc===rs||cc===34){txt='"'+txt.replace(qreg,'""')+'"';break}row+=(C===r.s.c?"":FS)+txt}out+=row+RS}return out}var make_csv=sheet_to_csv;function sheet_to_formulae(sheet){var cmds,y="",x,val="";if(sheet==null||sheet["!ref"]==null)return"";var r=safe_decode_range(sheet["!ref"]),rr="",cols=[],C;cmds=new Array((r.e.r-r.s.r+1)*(r.e.c-r.s.c+1));var i=0;for(C=r.s.c;C<=r.e.c;++C)cols[C]=encode_col(C);for(var R=r.s.r;R<=r.e.r;++R){rr=encode_row(R);for(C=r.s.c;C<=r.e.c;++C){y=cols[C]+rr;x=sheet[y];val="";if(x===undefined)continue;if(x.f!=null)val=x.f;else if(x.w!==undefined)val="'"+x.w;else if(x.v===undefined)continue;else val=""+x.v;cmds[i++]=y+"="+val}}cmds.length=i;return cmds}var utils={encode_col:encode_col,encode_row:encode_row,encode_cell:encode_cell,encode_range:encode_range,decode_col:decode_col,decode_row:decode_row,split_cell:split_cell,decode_cell:decode_cell,decode_range:decode_range,format_cell:format_cell,get_formulae:sheet_to_formulae,make_csv:sheet_to_csv,make_json:sheet_to_json,make_formulae:sheet_to_formulae,sheet_to_csv:sheet_to_csv,sheet_to_json:sheet_to_json,sheet_to_formulae:sheet_to_formulae,sheet_to_row_object_array:sheet_to_row_object_array};var XmlNode=function(){function XmlNode(tagName,attributes,children){if(!(this instanceof XmlNode)){return new XmlNode(tagName,attributes,children)}this.tagName=tagName;this._attributes=attributes||{};this._children=children||[];this._prefix="";return this}XmlNode.prototype.createElement=function(){return new XmlNode(arguments)};XmlNode.prototype.children=function(){return this._children};XmlNode.prototype.append=function(node){this._children.push(node);return this};XmlNode.prototype.prefix=function(prefix){if(arguments.length==0){return this._prefix}this._prefix=prefix;return this};XmlNode.prototype.attr=function(attr,value){if(value==undefined){delete this._attributes[attr];return this}if(arguments.length==0){return this._attributes}else if(typeof attr=="string"&&arguments.length==1){return this._attributes.attr[attr]}if(typeof attr=="object"&&arguments.length==1){for(var key in attr){this._attributes[key]=attr[key]}}else if(arguments.length==2&&typeof attr=="string"){this._attributes[attr]=value}return this};var APOS="'";QUOTE='"';var ESCAPED_QUOTE={};ESCAPED_QUOTE[QUOTE]="&quot;";ESCAPED_QUOTE[APOS]="&apos;";XmlNode.prototype.escapeAttributeValue=function(att_value){return'"'+att_value.replace(/\"/g,"&quot;")+'"'};XmlNode.prototype.toXml=function(node){if(!node)node=this;var xml=node._prefix;xml+="<"+node.tagName;if(node._attributes){for(var key in node._attributes){xml+=" "+key+"="+this.escapeAttributeValue(""+node._attributes[key])+""}}if(node._children&&node._children.length>0){xml+=">";for(var i=0;i<node._children.length;i++){xml+=this.toXml(node._children[i])}xml+="</"+node.tagName+">"}else{xml+="/>"}return xml};return XmlNode}();var StyleBuilder=function(options){var customNumFmtId=164;var table_fmt={0:"General",1:"0",2:"0.00",3:"#,##0",4:"#,##0.00",9:"0%",10:"0.00%",11:"0.00E+00",12:"# ?/?",13:"# ??/??",14:"m/d/yy",15:"d-mmm-yy",16:"d-mmm",17:"mmm-yy",18:"h:mm AM/PM",19:"h:mm:ss AM/PM",20:"h:mm",21:"h:mm:ss",22:"m/d/yy h:mm",37:"#,##0 ;(#,##0)",38:"#,##0 ;[Red](#,##0)",39:"#,##0.00;(#,##0.00)",40:"#,##0.00;[Red](#,##0.00)",45:"mm:ss",46:"[h]:mm:ss",47:"mmss.0",48:"##0.0E+0",49:"@",56:'"上午/下午 "hh"時"mm"分"ss"秒 "'};var fmt_table={};for(var idx in table_fmt){fmt_table[table_fmt[idx]]=idx}_hashIndex={};_listIndex=[];return{initialize:function(options){this.$fonts=XmlNode("fonts").attr("count",0).attr("x14ac:knownFonts","1");this.$fills=XmlNode("fills").attr("count",0);this.$borders=XmlNode("borders").attr("count",0);this.$numFmts=XmlNode("numFmts").attr("count",0);this.$cellStyleXfs=XmlNode("cellStyleXfs");this.$xf=XmlNode("xf").attr("numFmtId",0).attr("fontId",0).attr("fillId",0).attr("borderId",0);this.$cellXfs=XmlNode("cellXfs").attr("count",0);this.$cellStyles=XmlNode("cellStyles").append(XmlNode("cellStyle").attr("name","Normal").attr("xfId",0).attr("builtinId",0));this.$dxfs=XmlNode("dxfs").attr("count","0");this.$tableStyles=XmlNode("tableStyles").attr("count","0").attr("defaultTableStyle","TableStyleMedium9").attr("defaultPivotStyle","PivotStyleMedium4");this.$styles=XmlNode("styleSheet").attr("xmlns:mc","http://schemas.openxmlformats.org/markup-compatibility/2006").attr("xmlns:x14ac","http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac").attr("xmlns","http://schemas.openxmlformats.org/spreadsheetml/2006/main").attr("mc:Ignorable","x14ac").prefix('<?xml version="1.0" encoding="UTF-8" standalone="yes"?>').append(this.$numFmts).append(this.$fonts).append(this.$fills).append(this.$borders).append(this.$cellStyleXfs.append(this.$xf)).append(this.$cellXfs).append(this.$cellStyles).append(this.$dxfs).append(this.$tableStyles);var defaultStyle=options.defaultCellStyle||{};if(!defaultStyle.font)defaultStyle.font={name:"Calibri",sz:"12"};if(!defaultStyle.font.name)defaultStyle.font.name="Calibri";if(!defaultStyle.font.sz)defaultStyle.font.sz=11;if(!defaultStyle.fill)defaultStyle.fill={patternType:"none",fgColor:{}};if(!defaultStyle.border)defaultStyle.border={};if(!defaultStyle.numFmt)defaultStyle.numFmt=0;this.defaultStyle=defaultStyle;var gray125Style=JSON.parse(JSON.stringify(defaultStyle));gray125Style.fill={patternType:"gray125",fgColor:{}};this.addStyles([defaultStyle,gray125Style]);return this},addStyle:function(attributes){var hashKey=JSON.stringify(attributes);var index=_hashIndex[hashKey];if(index==undefined){index=this._addXf(attributes);_hashIndex[hashKey]=index}else{index=_hashIndex[hashKey]}return index},addStyles:function(styles){var self=this;return styles.map(function(style){return self.addStyle(style)})},_duckTypeStyle:function(attributes){if(typeof attributes=="object"&&(attributes.patternFill||attributes.fgColor)){return{fill:attributes}}else if(attributes.font||attributes.numFmt||attributes.border||attributes.fill){return attributes}else{return this._getStyleCSS(attributes)}},_getStyleCSS:function(css){return css},_addXf:function(attributes){var fontId=this._addFont(attributes.font);var fillId=this._addFill(attributes.fill);var borderId=this._addBorder(attributes.border);var numFmtId=this._addNumFmt(attributes.numFmt);var $xf=XmlNode("xf").attr("numFmtId",numFmtId).attr("fontId",fontId).attr("fillId",fillId).attr("borderId",borderId).attr("xfId","0");if(fontId>0){$xf.attr("applyFont","1")}if(fillId>0){$xf.attr("applyFill","1")}if(borderId>0){$xf.attr("applyBorder","1")}if(numFmtId>0){$xf.attr("applyNumberFormat","1")}if(attributes.alignment){
var $alignment=XmlNode("alignment");if(attributes.alignment.horizontal){$alignment.attr("horizontal",attributes.alignment.horizontal)}if(attributes.alignment.vertical){$alignment.attr("vertical",attributes.alignment.vertical)}if(attributes.alignment.indent){$alignment.attr("indent",attributes.alignment.indent)}if(attributes.alignment.readingOrder){$alignment.attr("readingOrder",attributes.alignment.readingOrder)}if(attributes.alignment.wrapText){$alignment.attr("wrapText",attributes.alignment.wrapText)}if(attributes.alignment.textRotation!=undefined){$alignment.attr("textRotation",attributes.alignment.textRotation)}$xf.append($alignment).attr("applyAlignment",1)}this.$cellXfs.append($xf);var count=+this.$cellXfs.children().length;this.$cellXfs.attr("count",count);return count-1},_addFont:function(attributes){if(!attributes){return 0}var $font=XmlNode("font").append(XmlNode("sz").attr("val",attributes.sz||this.defaultStyle.font.sz)).append(XmlNode("name").attr("val",attributes.name||this.defaultStyle.font.name));if(attributes.bold)$font.append(XmlNode("b"));if(attributes.underline)$font.append(XmlNode("u"));if(attributes.italic)$font.append(XmlNode("i"));if(attributes.strike)$font.append(XmlNode("strike"));if(attributes.outline)$font.append(XmlNode("outline"));if(attributes.shadow)$font.append(XmlNode("shadow"));if(attributes.vertAlign){$font.append(XmlNode("vertAlign").attr("val",attributes.vertAlign))}if(attributes.color){if(attributes.color.theme){$font.append(XmlNode("color").attr("theme",attributes.color.theme));if(attributes.color.tint){$font.append(XmlNode("tint").attr("theme",attributes.color.tint))}}else if(attributes.color.rgb){$font.append(XmlNode("color").attr("rgb",attributes.color.rgb))}}this.$fonts.append($font);var count=this.$fonts.children().length;this.$fonts.attr("count",count);return count-1},_addNumFmt:function(numFmt){if(!numFmt){return 0}if(typeof numFmt=="string"){var numFmtIdx=fmt_table[numFmt];if(numFmtIdx>=0){return numFmtIdx}}if(/^[0-9]+$/.exec(numFmt)){return numFmt}numFmt=numFmt.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;");var $numFmt=XmlNode("numFmt").attr("numFmtId",++customNumFmtId).attr("formatCode",numFmt);this.$numFmts.append($numFmt);var count=this.$numFmts.children().length;this.$numFmts.attr("count",count);return customNumFmtId},_addFill:function(attributes){if(!attributes){return 0}var $patternFill=XmlNode("patternFill").attr("patternType",attributes.patternType||"solid");if(attributes.fgColor){var $fgColor=XmlNode("fgColor");if(attributes.fgColor.rgb){if(attributes.fgColor.rgb.length==6){attributes.fgColor.rgb="FF"+attributes.fgColor.rgb}$fgColor.attr("rgb",attributes.fgColor.rgb);$patternFill.append($fgColor)}else if(attributes.fgColor.theme){$fgColor.attr("theme",attributes.fgColor.theme);if(attributes.fgColor.tint){$fgColor.attr("tint",attributes.fgColor.tint)}$patternFill.append($fgColor)}if(!attributes.bgColor){attributes.bgColor={indexed:"64"}}}if(attributes.bgColor){var $bgColor=XmlNode("bgColor").attr(attributes.bgColor);$patternFill.append($bgColor)}var $fill=XmlNode("fill").append($patternFill);this.$fills.append($fill);var count=this.$fills.children().length;this.$fills.attr("count",count);return count-1},_getSubBorder:function(direction,spec){var $direction=XmlNode(direction);if(spec){if(spec.style)$direction.attr("style",spec.style);if(spec.color){var $color=XmlNode("color");if(spec.color.auto){$color.attr("auto",spec.color.auto)}else if(spec.color.rgb){$color.attr("rgb",spec.color.rgb)}else if(spec.color.theme||spec.color.tint){$color.attr("theme",spec.color.theme||"1");$color.attr("tint",spec.color.tint||"0")}$direction.append($color)}}return $direction},_addBorder:function(attributes){if(!attributes){return 0}var self=this;var $border=XmlNode("border").attr("diagonalUp",attributes.diagonalUp).attr("diagonalDown",attributes.diagonalDown);var directions=["left","right","top","bottom","diagonal"];directions.forEach(function(direction){$border.append(self._getSubBorder(direction,attributes[direction]))});this.$borders.append($border);var count=this.$borders.children().length;this.$borders.attr("count",count);return count-1},toXml:function(){return this.$styles.toXml()}}.initialize(options||{})};XLSX.parse_xlscfb=parse_xlscfb;XLSX.parse_zip=parse_zip;XLSX.read=readSync;XLSX.readFile=readFileSync;XLSX.readFileSync=readFileSync;XLSX.write=writeSync;XLSX.writeFile=writeFileSync;XLSX.writeFileSync=writeFileSync;XLSX.utils=utils;XLSX.CFB=CFB;XLSX.SSF=SSF})(typeof exports!=="undefined"?exports:XLSX);var XLS=XLSX;
Source/UBCS-WEB/src/config/js-xlsx-master/dist/xlsx.core.min.map
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
{"version":3,"sources":["jszip.js","xlsx.js"],"names":["e","exports","module","define","amd","f","window","global","self","JSZip","t","n","r","s","o","u","a","require","i","Error","call","length","1","_dereq_","_keyStr","encode","input","utf8","output","chr1","chr2","chr3","enc1","enc2","enc3","enc4","charCodeAt","isNaN","charAt","decode","replace","indexOf","String","fromCharCode","2","CompressedObject","this","compressedSize","uncompressedSize","crc32","compressionMethod","compressedContent","prototype","getContent","getCompressedContent","3","STORE","magic","compress","content","uncompress","compressInputType","uncompressInputType","DEFLATE","./flate","4","utils","table","crc","isArray","getTypeOf","x","y","b","iTop","./utils","5","DataReader","data","index","checkOffset","offset","checkIndex","newIndex","setIndex","skip","byteAt","readInt","size","result","readString","transformTo","readData","lastIndexOfSignature","sig","readDate","dostime","Date","6","base64","binary","dir","createFolders","date","compression","comment","7","string2binary","str","string2Uint8Array","uint8Array2String","array","string2Blob","buffer","arrayBuffer2Blob","outputType","checkSupport","type","MAX_VALUE_16BITS","MAX_VALUE_32BITS","pretty","findCompression","isRegExp","object","8","USE_TYPEDARRAY","Uint8Array","Uint16Array","Uint32Array","pako","deflateRaw","inflateRaw","9","options","files","root","load","clone","newObj","support","defaults","compressions","./base64","./compressions","./defaults","./deprecatedPublicUtils","./load","./object","./support","10","ZipEntries","zipEntries","file","fileName","decompressed","optimizedBinaryString","fileComment","zipComment","./zipEntries","11","Buffer","encoding","test","isBuffer","undefined","12","Uint8ArrayReader","NodeBufferReader","slice","./uint8ArrayReader","13","signature","nodeBuffer","StringWriter","Uint8ArrayWriter","getRawData","_data","copy","set","getBinaryData","nodebuffer","asBinary","dataToString","asUTF8","out","utf8decode","utf8encode","ZipObject","name","_initialMetadata","asText","asNodeBuffer","asUint8Array","asArrayBuffer","decToHex","dec","bytes","hex","extend","attr","arguments","hasOwnProperty","prepareFileAttrs","toUpperCase","fileAdd","dataType","parent","parentFolder","folderAdd","path","substring","lastSlash","lastIndexOf","generateCompressedObjectFrom","generateZipParts","compressedObject","utfEncodedFileName","utfEncodedComment","useUTF8ForFileName","useUTF8ForComment","dosTime","dosDate","extraFields","unicodePathExtraField","unicodeCommentExtraField","getHours","getMinutes","getSeconds","getFullYear","getMonth","getDate","header","fileRecord","LOCAL_FILE_HEADER","dirRecord","CENTRAL_FILE_HEADER","stream","filter","search","filename","relativePath","fileClone","push","regexp","folder","arg","newFolder","ret","remove","kids","generate","zipData","localDirLength","centralDirLength","writer","compressionName","zipPart","dirEnd","CENTRAL_DIRECTORY_END","typeName","toLowerCase","append","zip","finalize","string","./compressedObject","./crc32","./nodeBuffer","./signature","./stringWriter","./uint8ArrayWriter","./utf8","14","ZIP64_CENTRAL_DIRECTORY_LOCATOR","ZIP64_CENTRAL_DIRECTORY_END","DATA_DESCRIPTOR","15","StringReader","./dataReader","16","join","17","arraybuffer","ArrayBuffer","uint8array","blob","Blob","Builder","BlobBuilder","WebKitBlobBuilder","MozBlobBuilder","MSBlobBuilder","builder","getBlob","18","sig0","sig1","sig2","sig3","subarray","19","20","_utf8len","Array","string2buf","buf","c","c2","m_pos","str_len","buf_len","utf8border","max","pos","buf2string","c_len","len","utf16buf","applyFromCharCode","toString","k","chunk","nextBoundary","Math","min","21","identity","stringToArrayLike","arrayLikeToString","canUseApply","apply","resultStr","floor","arrayLikeToArrayLike","arrayFrom","arrayTo","transform","byteLength","inputType","Object","supported","res","code","method","22","ZipEntry","jszipProto","loadOptions","checkSignature","expectedSignature","reader","readBlockEndOfCentral","diskNumber","diskWithCentralDirStart","centralDirRecordsOnThisDisk","centralDirRecords","centralDirSize","centralDirOffset","zipCommentLength","readBlockZip64EndOfCentral","zip64EndOfCentralSize","versionMadeBy","versionNeeded","zip64ExtensibleData","extraDataSize","extraFieldId","extraFieldLength","extraFieldValue","id","value","readBlockZip64EndOfCentralLocator","diskWithZip64CentralDirStart","relativeOffsetEndOfZip64CentralDir","disksCount","readLocalFiles","localHeaderOffset","readLocalPart","handleUTF8","readCentralDir","zip64","readCentralPart","readEndOfCentral","prepareReader","./nodeBufferReader","./stringReader","./zipEntry","23","isEncrypted","bitFlag","useUTF8","prepareCompressedContent","from","previousIndex","compressedFileData","prepareContent","uncompressedFileData","localExtraFieldsLength","fileNameLength","checkCRC32","extraFieldsLength","fileCommentLength","diskNumberStart","internalFileAttributes","externalFileAttributes","readExtraFields","parseZIP64ExtraField","extraReader","start","upath","findExtraFieldUnicodePath","ucomment","findExtraFieldUnicodeComment","upathField","ucommentField","24","assign","deflate","inflate","constants","./lib/deflate","./lib/inflate","./lib/utils/common","./lib/zlib/constants","25","zlib_deflate","strings","msg","zstream","Z_NO_FLUSH","Z_FINISH","Z_OK","Z_STREAM_END","Z_DEFAULT_COMPRESSION","Z_DEFAULT_STRATEGY","Z_DEFLATED","Deflate","level","chunkSize","windowBits","memLevel","strategy","to","opt","raw","gzip","err","ended","chunks","strm","avail_out","status","deflateInit2","deflateSetHeader","mode","_mode","next_in","avail_in","Buf8","next_out","onEnd","onData","buf2binstring","shrinkBuf","deflateEnd","flattenChunks","deflator","./utils/common","./utils/strings","./zlib/deflate.js","./zlib/messages","./zlib/zstream","26","zlib_inflate","gzheader","Inflate","inflateInit2","inflateGetHeader","next_out_utf8","tail","utf8str","binstring2buf","arraySet","inflateEnd","inflator","ungzip","./zlib/constants","./zlib/gzheader","./zlib/inflate.js","27","TYPED_OK","Int32Array","obj","sources","source","shift","TypeError","p","fnTyped","dest","src","src_offs","dest_offs","l","fnUntyped","concat","setTyped","on","Buf16","Buf32","28","STR_APPLY_OK","STR_APPLY_UIA_OK","__","./common","29","adler32","adler","s1","s2","30","Z_PARTIAL_FLUSH","Z_SYNC_FLUSH","Z_FULL_FLUSH","Z_BLOCK","Z_TREES","Z_NEED_DICT","Z_ERRNO","Z_STREAM_ERROR","Z_DATA_ERROR","Z_BUF_ERROR","Z_NO_COMPRESSION","Z_BEST_SPEED","Z_BEST_COMPRESSION","Z_FILTERED","Z_HUFFMAN_ONLY","Z_RLE","Z_FIXED","Z_BINARY","Z_TEXT","Z_UNKNOWN","31","makeTable","crcTable","end","32","trees","MAX_MEM_LEVEL","MAX_WBITS","DEF_MEM_LEVEL","LENGTH_CODES","LITERALS","L_CODES","D_CODES","BL_CODES","HEAP_SIZE","MAX_BITS","MIN_MATCH","MAX_MATCH","MIN_LOOKAHEAD","PRESET_DICT","INIT_STATE","EXTRA_STATE","NAME_STATE","COMMENT_STATE","HCRC_STATE","BUSY_STATE","FINISH_STATE","BS_NEED_MORE","BS_BLOCK_DONE","BS_FINISH_STARTED","BS_FINISH_DONE","OS_CODE","errorCode","rank","zero","flush_pending","state","pending","pending_buf","pending_out","total_out","flush_block_only","last","_tr_flush_block","block_start","strstart","put_byte","putShortMSB","read_buf","wrap","total_in","longest_match","cur_match","chain_length","max_chain_length","scan","match","best_len","prev_length","nice_match","limit","w_size","_win","wmask","w_mask","prev","strend","scan_end1","scan_end","good_match","lookahead","match_start","fill_window","_w_size","m","more","window_size","hash_size","head","insert","ins_h","hash_shift","hash_mask","deflate_stored","flush","max_block_size","pending_buf_size","max_start","deflate_fast","hash_head","bflush","match_length","_tr_tally","max_lazy_match","last_lit","deflate_slow","max_insert","prev_match","match_available","deflate_rle","deflate_huff","Config","good_length","max_lazy","nice_length","max_chain","func","configuration_table","lm_init","DeflateState","gzhead","gzindex","last_flush","w_bits","hash_bits","dyn_ltree","dyn_dtree","bl_tree","l_desc","d_desc","bl_desc","bl_count","heap","heap_len","heap_max","depth","l_buf","lit_bufsize","d_buf","opt_len","static_len","matches","bi_buf","bi_valid","deflateResetKeep","data_type","_tr_init","deflateReset","deflateInit","old_flush","beg","val","text","hcrc","extra","time","os","level_flags","bstate","_tr_align","_tr_stored_block","deflateInfo","../utils/common","./adler32","./messages","./trees","33","GZheader","xflags","extra_len","done","34","BAD","TYPE","inflate_fast","_in","_out","dmax","wsize","whave","wnext","hold","bits","lcode","dcode","lmask","dmask","here","op","dist","from_source","lencode","distcode","lenbits","distbits","top","dolen","dodist","sane","35","inflate_table","CODES","LENS","DISTS","Z_MEM_ERROR","HEAD","FLAGS","TIME","OS","EXLEN","EXTRA","NAME","COMMENT","HCRC","DICTID","DICT","TYPEDO","STORED","COPY_","COPY","TABLE","LENLENS","CODELENS","LEN_","LEN","LENEXT","DIST","DISTEXT","MATCH","LIT","CHECK","LENGTH","DONE","MEM","SYNC","ENOUGH_LENS","ENOUGH_DISTS","DEF_WBITS","ZSWAP32","q","InflateState","havedict","flags","check","total","wbits","ncode","nlen","ndist","have","next","lens","work","lendyn","distdyn","back","was","inflateResetKeep","inflateReset","inflateReset2","inflateInit","virgin","lenfix","distfix","fixedtables","sym","updatewindow","put","left","here_bits","here_op","here_val","last_bits","last_op","last_val","hbuf","opts","order","inf_leave","inflateInfo","./inffast","./inftrees","36","MAXBITS","lbase","lext","dbase","dext","lens_index","codes","table_index","curr","drop","used","huff","incr","fill","low","mask","base","base_index","count","offs","extra_index","37","0","-1","-2","-3","-4","-5","-6","38","STORED_BLOCK","STATIC_TREES","DYN_TREES","Buf_size","MAX_BL_BITS","END_BLOCK","REP_3_6","REPZ_3_10","REPZ_11_138","extra_lbits","extra_dbits","extra_blbits","bl_order","DIST_CODE_LEN","static_ltree","static_dtree","_dist_code","_length_code","base_length","base_dist","StaticTreeDesc","static_tree","extra_bits","extra_base","elems","max_length","has_stree","static_l_desc","static_d_desc","static_bl_desc","TreeDesc","dyn_tree","stat_desc","max_code","d_code","put_short","w","send_bits","send_code","tree","bi_reverse","bi_flush","gen_bitlen","desc","stree","h","xbits","overflow","gen_codes","next_code","tr_static_init","init_block","bi_windup","copy_block","smaller","_n2","_m2","pqdownheap","v","j","compress_block","ltree","dtree","lc","lx","build_tree","node","scan_tree","prevlen","curlen","nextlen","max_count","min_count","send_tree","build_bl_tree","max_blindex","send_all_trees","lcodes","dcodes","blcodes","detect_data_type","black_mask","static_init_done","stored_len","opt_lenb","static_lenb","39","ZStream","XLSX","make_xlsx","version","current_codepage","current_cptable","cptable","reset_cp","set_cp","cp","char_codes","debom_xml","_getchar","_gc1","substr","_gc2","Base64","make_b64","map","c1","c3","e1","e2","e3","e4","b64_decode","has_buf","new_raw_buf","s2a","split","bconcat","bufs","chr0","SSF","make_ssf","_strrev","pad0","d","pad_","rpad_","pad0r1","round","pad0r2","p2_32","pow","pad0r","isgeneral","opts_fmt","fixopts","table_fmt","40","45","46","47","48","49","56","65535","days","months","frac","D","mixed","sgn","B","P_2","P_1","P","Q_2","Q_1","Q","A","general_fmt_int","_general_int","general_fmt_num","make_general_fmt_num","gnr1","gnr2","gnr4","gnr5","gnr6","gfn2","gfn5","toFixed","toPrecision","toExponential","gfn3","gfn4","V","log","abs","LOG10E","_general_num","general_fmt","_general","fix_hijri","parse_date_code","b2","dow","dout","T","H","M","S","date1904","setDate","getDay","write_date","fmt","ss0","ss","tt","outl","commaify","write_num","make_write_num","pct1","write_num_pct","sfmt","mul","write_num_cm","idx","write_num_exp","period","ee","fakee","$$","$1","$2","$3","frac1","write_num_f1","aval","sign","den","parseInt","rr","myn","myd","write_num_f2","dec1","closeparen","phone","hashq","cc","rnd","dd","flr","write_num_flt","ffmt","oo","ri","ff","oa","lres","rres","write_num_cm2","write_num_pct2","write_num_exp2","write_num_int","split_fmt","in_str","_split","abstime","eval_fmt","flen","lst","dt","hr","bt","ssm","nstr","jj","vv","myv","ostr","decpt","lasti","retval","_eval","cfregex","cfregex2","chkcond","thresh","parseFloat","choose_fmt","lat","m1","m2","format","_table","load_entry","get_table","load_table","tbl","XLMLFormatMap","General Number","General Date","Long Date","Medium Date","Short Date","Long Time","Medium Time","Short Time","Currency","Fixed","Standard","Percent","Scientific","Yes/No","True/False","On/Off","DO_NOT_EXPORT_CFB","CFB","_CFB","parse","mver","ssz","nmfs","ndfs","dir_start","minifat_start","difat_start","fat_addrs","prep_blob","mv","check_get_mver","check_shifts","nds","read_shift","chk","sectors","sectorify","sleuth_fat","sector_list","make_sector_list","ENDOFCHAIN","Paths","FileIndex","FullPaths","FullPathDir","read_directory","build_full_paths","root_name","find_path","make_find_path","find","HEADER_SIGNATURE","HEADER_CLSID","nsectors","ceil","FI","FPD","FP","L","R","C","pl","dad","UCFullPaths","UCPaths","UCPath","cnt","sector","__readInt32LE","get_sector_list","chkd","sl","buf_chain","modulus","addr","nodes","__toBuffer","minifat_store","namelen","ctime","mtime","__utf16le","color","clsid","ct","read_date","mt","storage","MSSZ","__readUInt32LE","fs","readFileSync","readSync","consts","MAXREGSECT","DIFSECT","FATSECT","FREESECT","HEADER_MINOR_VERSION","MAXREGSID","NOSTREAM","EntryTypes","read","ReadShift","CheckField","isval","keys","evert_key","key","K","evert","evert_num","evert_arr","datenum","epoch","cc2str","arr","getdata","safegetzipfile","lowerCaseFiles","getzipfile","getzipdata","safe","_fs","jszip","attregexg","tagregex","nsregex","nsregex2","parsexmltag","tag","skip_root","z","eq","strip_ns","encodings","&quot;","&apos;","&gt;","&lt;","&amp;","rencoding","rencstr","unescapexml","encregex","coderegex","decregex","charegex","escapexml","xlml_fixstr","entregex","entrepl","parsexmlbool","utf8read","utf8reada","orig","utf8readb","ww","corpus","utf8readc","matchtag","mtcache","g","RegExp","vtregex","vt_cache","vt_regex","vtvregex","vtmregex","parseVector","baseType","forEach","wtregex","writetag","wxt_helper","writextag","write_w3cdtf","toISOString","write_vt","XML_HEADER","XMLNS","dc","dcterms","dcmitype","mx","sjs","vt","xsi","xsd","main","readIEEE754","isLE","nl","ml","el","eMax","eBias","NaN","Infinity","___toBuffer","toBuffer_","___utf16le","utf16le_","__readUInt16LE","__hexlify","___hexlify","hexlify_","__utf8","___utf8","__readUInt8","__lpstr","___lpstr","lpstr_","__lpwstr","___lpwstr","lpwstr_","__double","___double","is_buf","is_buf_a","utf16le_b","lpstr_b","readUInt32LE","lpwstr_b","utf8_b","double_","readDoubleLE","is_buf_b","__readInt16LE","___unhexlify","__unhexlify","oI","oR","loc","WriteShift","writeUInt16LE","writeUInt32LE","writeDoubleLE","writeInt32LE","hexstr","fld","write_shift","parsenoop","writenoop","new_buf","sz","recordhopper","cb","tmpbyte","cntbyte","RT","XLSBRecordEnum","buf_array","blksz","newblk","ba_newblk","curbuf","endbuf","ba_endbuf","ba_next","ba_end","ba_push","_bufs","write_record","ba","payload","evert_RE","shift_cell_xls","cell","tgt","cRel","rRel","shift_range_xls","range","OFFCRYPTO","make_offcrypto","O","_crypto","crypto","rc4","md5","createHash","update","digest","parse_StrRun","ich","ifnt","parse_RichStr","parse_XLWideString","rgsStrRun","dwSizeStrRun","write_RichStr","write_XLWideString","parse_XLSBCell","col","iStyleRef","fPhShow","write_XLSBCell","parse_XLSBCodeName","parse_XLNullableWideString","cchCharacters","write_XLNullableWideString","parse_RelID","write_RelID","parse_RkNumber","fX100","fInt","RK","parse_UncheckedRfX","write_UncheckedRfX","parse_Xnum","write_Xnum","BErr","42","43","255","RBErr","parse_BrtColor","fValidRGB","xColorType","nTintAndShade","bRed","bGreen","bBlue","bAlpha","parse_FontFlags","fItalic","fStrikeout","fOutline","fShadow","fCondense","fExtend","VT_EMPTY","VT_NULL","VT_I2","VT_I4","VT_R4","VT_R8","VT_CY","VT_DATE","VT_BSTR","VT_ERROR","VT_BOOL","VT_VARIANT","VT_DECIMAL","VT_I1","VT_UI1","VT_UI2","VT_UI4","VT_I8","VT_UI8","VT_INT","VT_UINT","VT_LPSTR","VT_LPWSTR","VT_FILETIME","VT_BLOB","VT_STREAM","VT_STORAGE","VT_STREAMED_Object","VT_STORED_Object","VT_BLOB_Object","VT_CF","VT_CLSID","VT_VERSIONED_STREAM","VT_VECTOR","VT_ARRAY","VT_STRING","VT_USTR","VT_CUSTOM","DocSummaryPIDDSI","SummaryPIDSI","SpecialProperties","2147483648","2147483651","1919054434","CountryEnum","41","44","52","55","61","64","66","81","82","84","86","90","105","213","216","218","351","354","358","420","886","961","962","963","964","965","966","971","972","974","981","XLSFillPattern","rgbify","XLSIcv","ct2type","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml","application/vnd.ms-excel.binIndexWs","application/vnd.ms-excel.chartsheet","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml","application/vnd.ms-excel.dialogsheet","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml","application/vnd.ms-excel.macrosheet","application/vnd.ms-excel.macrosheet+xml","application/vnd.ms-excel.intlmacrosheet","application/vnd.ms-excel.binIndexMs","application/vnd.openxmlformats-package.core-properties+xml","application/vnd.openxmlformats-officedocument.custom-properties+xml","application/vnd.openxmlformats-officedocument.extended-properties+xml","application/vnd.openxmlformats-officedocument.customXmlProperties+xml","application/vnd.ms-excel.comments","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml","application/vnd.ms-excel.pivotTable","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml","application/vnd.ms-excel.calcChain","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings","application/vnd.ms-office.activeX","application/vnd.ms-office.activeX+xml","application/vnd.ms-excel.attachedToolbars","application/vnd.ms-excel.connections","application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml","application/vnd.ms-excel.externalLink","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml","application/vnd.ms-excel.sheetMetadata","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml","application/vnd.ms-excel.pivotCacheDefinition","application/vnd.ms-excel.pivotCacheRecords","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml","application/vnd.ms-excel.queryTable","application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml","application/vnd.ms-excel.userNames","application/vnd.ms-excel.revisionHeaders","application/vnd.ms-excel.revisionLog","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml","application/vnd.ms-excel.tableSingleCells","application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml","application/vnd.ms-excel.slicer","application/vnd.ms-excel.slicerCache","application/vnd.ms-excel.slicer+xml","application/vnd.ms-excel.slicerCache+xml","application/vnd.ms-excel.wsSortMap","application/vnd.ms-excel.table","application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml","application/vnd.openxmlformats-officedocument.theme+xml","application/vnd.ms-excel.Timeline+xml","application/vnd.ms-excel.TimelineCache+xml","application/vnd.ms-office.vbaProject","application/vnd.ms-office.vbaProjectSignature","application/vnd.ms-office.volatileDependencies","application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml","application/vnd.ms-excel.controlproperties+xml","application/vnd.openxmlformats-officedocument.model+data","application/vnd.ms-excel.Survey+xml","application/vnd.openxmlformats-officedocument.drawing+xml","application/vnd.openxmlformats-officedocument.drawingml.chart+xml","application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml","application/vnd.openxmlformats-officedocument.vmlDrawing","application/vnd.openxmlformats-package.relationships+xml","application/vnd.openxmlformats-officedocument.oleObject","sheet","CT_LIST","workbooks","xlsx","xlsm","xlsb","xltx","strs","sheets","styles","type2ct","CT","parse_ct","ctext","calcchains","themes","coreprops","extprops","custprops","comments","vba","TODO","rels","xmlns","Extension","ContentType","PartName","WTF","console","error","calcchain","sst","style","CTYPE_XML_ROOT","xmlns:xsd","xmlns:xsi","CTYPE_DEFAULTS","write_ct","f1","bookType","f2","f3","RELS","WB","SHEET","parse_rels","currentFilePath","hash","resolveRelativePathIntoAbsolute","toksFrom","pop","toksTo","reversed","tokTo","rel","Type","Target","Id","TargetMode","canonictarget","RELS_ROOT","write_rels","rid","CORE_PROPS","CORE_PROPS_REGEX","parse_core_props","cur","CORE_PROPS_XML_ROOT","xmlns:cp","xmlns:dc","xmlns:dcterms","xmlns:dcmitype","cp_doit","write_core_props","Props","title","subject","creator","keywords","description","CreatedDate","xsi:type","ModifiedDate","EXT_PROPS","parse_ext_props","HeadingPairs","TitlesOfParts","widx","Worksheets","parts","SheetNames","EXT_PROPS_XML_ROOT","xmlns:vt","write_ext_props","W","Application","CUST_PROPS","custregex","parse_cust_props","xmlnsvt","toks","warn","CUST_PROPS_XML_ROOT","write_cust_props","pid","custprop","fmtid","xlml_set_prop","parse_FILETIME","dwLowDateTime","dwHighDateTime","parse_lpstr","pad","parse_lpwstr","parse_VtStringBase","stringType","parse_VtString","parse_VtUnalignedString","parse_VtVecUnalignedLpstrValue","parse_VtVecUnalignedLpstr","parse_VtHeadingPair","headingString","parse_TypedPropertyValue","headerParts","parse_VtVecHeadingPairValue","cElements","parse_VtVecHeadingPair","parse_dictionary","CodePage","dict","parse_BLOB","parse_ClipboardData","Size","parse_VtVector","_opts","parse_PropertySet","PIDSI","start_addr","NumProps","Dictionary","DictObj","PropID","Offset","PropH","fail","piddsi","oldpos","parsebool","parse_PropertySetStream","NumSets","FMTID0","FMTID1","Offset0","Offset1","vers","SystemIdentifier","PSet0","rval","FMTID","PSet1","parsenoop2","parslurp","target","parslurp2","parseuint16","parseuint16a","parse_Boolean","parse_Bes","parse_ShortXLUnicodeString","cch","width","biff","fHighByte","parse_XLUnicodeRichExtendedString","fExtSt","fRichSt","cRun","cbExtRst","parse_XLUnicodeStringNoCch","parse_XLUnicodeString","parse_XLUnicodeString2","parse_ControlInfo","parse_URLMoniker","url","parse_FileMoniker","cAnti","ansiLength","ansiPath","endServer","versionNumber","cbUnicodePathSize","cbUnicodePathBytes","usKeyValue","unicodePath","parse_HyperlinkMoniker","parse_HyperlinkString","parse_Hyperlink","sVer","displayName","targetFrameName","moniker","oleMoniker","location","guid","fileTime","parse_LongRGBA","parse_LongRGB","parse_XLSCell","rw","ixfe","parse_frtHeader","rt","parse_OptXLUnicodeString","HIDEOBJENUM","parse_HideObjEnum","parse_XTI","iSupBook","itabFirst","itabLast","parse_RkRec","parse_AddinUdf","udfName","parse_Ref8U","rwFirst","rwLast","colFirst","colLast","parse_RefU","parse_Ref","parse_FtCmo","ot","parse_FtNts","fSharedNote","parse_FtCf","cf","FtTab","parse_FtArray","fts","ft","parse_FontIndex","parse_BOF","BIFFVer","parse_InterfaceHdr","parse_WriteAccess","enc","UserName","parse_BoundSheet8","hidden","hs","parse_SST","ucnt","Count","Unique","parse_ExtSST","extsst","dsst","parse_Row","Col","rht","parse_ForceFullCalculation","fullcalc","parse_CompressPictures","parse_RecalcId","parse_DefaultRowHeight","miyRw","fl","Unsynced","DyZero","ExAsc","ExDsc","parse_Window1","xWn","yWn","dxWn","dyWn","iTabCur","iTabFirst","ctabSel","wTabRatio","Pos","Dim","Flags","CurTab","FirstTab","Selected","TabRatio","parse_Font","parse_LabelSst","isst","parse_Label","parse_Format","ifmt","fmtstr","parse_Dimensions","parse_RK","rkrec","rknum","parse_MulRk","rkrecs","lastcol","parse_CellStyleXF","patternType","icvFore","icvBack","parse_CellXF","parse_StyleXF","parse_XF","fStyle","parse_Guts","parse_BoolErr","parse_Number","xnum","parse_XLHeaderFooter","parse_SupBook","ctab","virtPath","rgst","sbcch","parse_ExternName","body","fBuiltIn","fWantAdvise","fWantPict","fOle","fOleLink","fIcon","parse_Lbl","chKey","cce","itab","rgce","parse_NameParsedFormula","Name","parse_ExternSheet","snames","parse_ShrFmla","ref","cUse","parse_SharedParsedFormula","parse_Array","parse_ArrayParsedFormula","parse_MTRSettings","fMTREnabled","fUserSetThreadCount","cUserThreadCount","parse_NoteSh","row","idObj","stAuthor","parse_Note","parse_MergeCells","merges","cmcs","parse_Obj","cmo","parse_TxO","lastobj","controlInfo","cchText","cbRuns","ifntEmpty","texts","hdr","parse_HLink","hlink","parse_HLinkTooltip","wzTooltip","parse_Country","parse_ClrtClient","ccv","parse_Palette","parse_XFCRC","cxfs","parse_Style","parse_StyleExt","parse_ColInfo","parse_Window2","parse_Backup","parse_Blank","parse_BottomMargin","parse_BuiltInFnGroupCount","parse_CalcCount","parse_CalcDelta","parse_CalcIter","parse_CalcMode","parse_CalcPrecision","parse_CalcRefMode","parse_CalcSaveRecalc","parse_CodePage","parse_Compat12","parse_Date1904","parse_DefColWidth","parse_DSF","parse_EntExU2","parse_EOF","parse_Excel9File","parse_FeatHdr","parse_FontX","parse_Footer","parse_GridSet","parse_HCenter","parse_Header","parse_HideObj","parse_InterfaceEnd","parse_LeftMargin","parse_Mms","parse_ObjProtect","parse_Password","parse_PrintGrid","parse_PrintRowCol","parse_PrintSize","parse_Prot4Rev","parse_Prot4RevPass","parse_Protect","parse_RefreshAll","parse_RightMargin","parse_RRTabId","parse_ScenarioProtect","parse_Scl","parse_String","parse_SxBool","parse_TopMargin","parse_UsesELFs","parse_VCenter","parse_WinProtect","parse_WriteProtect","parse_VerticalPageBreaks","parse_HorizontalPageBreaks","parse_Selection","parse_Continue","parse_Pane","parse_Pls","parse_DCon","parse_DConRef","parse_DConName","parse_XCT","parse_CRN","parse_FileSharing","parse_Uncalced","parse_Template","parse_Intl","parse_WsBool","parse_Sort","parse_Sync","parse_LPr","parse_DxGCol","parse_FnGroupName","parse_FilterMode","parse_AutoFilterInfo","parse_AutoFilter","parse_Setup","parse_ScenMan","parse_SCENARIO","parse_SxView","parse_Sxvd","parse_SXVI","parse_SxIvd","parse_SXLI","parse_SXPI","parse_DocRoute","parse_RecipName","parse_MulBlank","parse_SXDI","parse_SXDB","parse_SXFDB","parse_SXDBB","parse_SXNum","parse_SxErr","parse_SXInt","parse_SXString","parse_SXDtr","parse_SxNil","parse_SXTbl","parse_SXTBRGIITM","parse_SxTbpg","parse_ObProj","parse_SXStreamID","parse_DBCell","parse_SXRng","parse_SxIsxoper","parse_BookBool","parse_DbOrParamQry","parse_OleObjectSize","parse_SXVS","parse_BkHim","parse_MsoDrawingGroup","parse_MsoDrawing","parse_MsoDrawingSelection","parse_PhoneticInfo","parse_SxRule","parse_SXEx","parse_SxFilt","parse_SxDXF","parse_SxItm","parse_SxName","parse_SxSelect","parse_SXPair","parse_SxFmla","parse_SxFormat","parse_SXVDEx","parse_SXFormula","parse_SXDBEx","parse_RRDInsDel","parse_RRDHead","parse_RRDChgCell","parse_RRDRenSheet","parse_RRSort","parse_RRDMove","parse_RRFormat","parse_RRAutoFmt","parse_RRInsertSh","parse_RRDMoveBegin","parse_RRDMoveEnd","parse_RRDInsDelBegin","parse_RRDInsDelEnd","parse_RRDConflict","parse_RRDDefName","parse_RRDRstEtxp","parse_LRng","parse_CUsr","parse_CbUsr","parse_UsrInfo","parse_UsrExcl","parse_FileLock","parse_RRDInfo","parse_BCUsrs","parse_UsrChk","parse_UserBView","parse_UserSViewBegin","parse_UserSViewEnd","parse_RRDUserView","parse_Qsi","parse_CondFmt","parse_CF","parse_DVal","parse_DConBin","parse_Lel","parse_XLSCodeName","parse_SXFDBType","parse_ObNoMacros","parse_Dv","parse_Index","parse_Table","parse_BigName","parse_ContinueBigName","parse_WebPub","parse_QsiSXTag","parse_DBQueryExt","parse_ExtString","parse_TxtQry","parse_Qsir","parse_Qsif","parse_RRDTQSIF","parse_OleDbConn","parse_WOpt","parse_SXViewEx","parse_SXTH","parse_SXPIEx","parse_SXVDTEx","parse_SXViewEx9","parse_ContinueFrt","parse_RealTimeData","parse_ChartFrtInfo","parse_FrtWrapper","parse_StartBlock","parse_EndBlock","parse_StartObject","parse_EndObject","parse_CatLab","parse_YMult","parse_SXViewLink","parse_PivotChartBits","parse_FrtFontList","parse_SheetExt","parse_BookExt","parse_SXAddl","parse_CrErr","parse_HFPicture","parse_Feat","parse_DataLabExt","parse_DataLabExtContents","parse_CellWatch","parse_FeatHdr11","parse_Feature11","parse_DropDownObjIds","parse_ContinueFrt11","parse_DConn","parse_List12","parse_Feature12","parse_CondFmt12","parse_CF12","parse_CFEx","parse_AutoFilter12","parse_ContinueFrt12","parse_MDTInfo","parse_MDXStr","parse_MDXTuple","parse_MDXSet","parse_MDXProp","parse_MDXKPI","parse_MDB","parse_PLV","parse_DXF","parse_TableStyles","parse_TableStyle","parse_TableStyleElement","parse_NamePublish","parse_NameCmt","parse_SortData","parse_GUIDTypeLib","parse_FnGrp12","parse_NameFnGrp12","parse_HeaderFooter","parse_CrtLayout12","parse_CrtMlFrt","parse_CrtMlFrtContinue","parse_ShapePropsStream","parse_TextPropsStream","parse_RichTextStream","parse_CrtLayout12A","parse_Units","parse_Chart","parse_Series","parse_DataFormat","parse_LineFormat","parse_MarkerFormat","parse_AreaFormat","parse_PieFormat","parse_AttachedLabel","parse_SeriesText","parse_ChartFormat","parse_Legend","parse_SeriesList","parse_Bar","parse_Line","parse_Pie","parse_Area","parse_Scatter","parse_CrtLine","parse_Axis","parse_Tick","parse_ValueRange","parse_CatSerRange","parse_AxisLine","parse_CrtLink","parse_DefaultText","parse_Text","parse_ObjectLink","parse_Frame","parse_Begin","parse_End","parse_PlotArea","parse_Chart3d","parse_PicF","parse_DropBar","parse_Radar","parse_Surf","parse_RadarArea","parse_AxisParent","parse_LegendException","parse_ShtProps","parse_SerToCrt","parse_AxesUsed","parse_SBaseRef","parse_SerParent","parse_SerAuxTrend","parse_IFmtRecord","parse_Pos","parse_AlRuns","parse_BRAI","parse_SerAuxErrBar","parse_SerFmt","parse_Chart3DBarShape","parse_Fbi","parse_BopPop","parse_AxcExt","parse_Dat","parse_PlotGrowth","parse_SIIndex","parse_GelFrame","parse_BopPopCustom","parse_Fbi2","parse_BIFF5String","parse_BIFF2STR","parse_BIFF2NUM","num","CS2CP","77","128","129","130","134","136","161","162","163","177","178","186","204","222","238","69","parse_rs","parse_rs_factory","tregex","rpregex","rregex","rend","nlregex","parse_rpr","rpr","intro","outro","font","strike","rgb","family","parse_r","terms","rs","sitregex","sirregex","parse_si","html","cellHTML","sstr0","sstr1","sstr2","parse_sst_xml","uniqueCount","SST","straywsregex","write_sst_xml","bookSST","sitag","parse_BrtBeginSst","parse_sst_bin","pass","hopper_sst","write_BrtBeginSst","write_BrtSSTItem","write_sst_bin","_JS2ANSI","parse_Version","Major","Minor","parse_EncryptionHeader","tmp","AlgID","parse_EncryptionVerifier","parse_RC4CryptoHeader","EncryptionVersionInfo","EncryptionHeader","EncryptionVerifier","parse_RC4Header","Salt","EncryptedVerifier","EncryptedVerifierHash","crypto_CreatePasswordVerifier_Method1","Password","Verifier","PasswordArray","PasswordDecoded","PasswordByte","Intermediate1","Intermediate2","Intermediate3","crypto_CreateXorArray_Method1","PadArray","InitialCode","XorMatrix","Ror","Byte","XorRor","byte1","byte2","CreateXorKey_Method1","XorKey","CurrentElement","Char","password","Index","ObfuscationArray","Temp","PasswordLastChar","PadIndex","crypto_DecryptData_Method1","Data","XorArrayIndex","XorArray","Value","crypto_MakeXorDecryptor","parse_XORObfuscation","verificationBytes","verifier","valid","insitu_decrypt","parse_FilePassHeader","Info","parse_FilePass","hex2RGB","rgb2Hex","rgb2HSL","G","H6","L2","hsl2RGB","hsl","h6","X","rgb_tint","tint","rev","DEF_MDW","MAX_MDW","MIN_MDW","MDW","width2px","px2char","px","char2width","chr","cycle_width","collw","find_mdw","coll","XLMLPatternTypeMap","None","Solid","Gray50","Gray75","Gray25","HorzStripe","VertStripe","ReverseDiagStripe","DiagStripe","DiagCross","ThickDiagCross","ThinHorzStripe","ThinVertStripe","ThinReverseDiagStripe","ThinHorzCross","parse_fills","Fills","bgColor","indexed","theme","themeElements","clrScheme","raw_rgb","fgColor","parse_fonts","Fonts","bold","underline","italic","outline","shadow","vertAlign","parse_borders","Borders","border","sub_border","diagonalUp","diagonalDown","right","bottom","diagonal","auto","parse_numFmts","NumberFmt","formatCode","numFmtId","write_numFmts","NF","parse_cellXfs","CellXf","xf","fillId","alignment","vertical","horizontal","textRotation","indent","wrapText","write_cellXfs","cellXfs","parse_sty_xml","make_pstyx","numFmtRegex","cellXfRegex","fillsRegex","bordersRegex","STYLES_XML_ROOT","STY","write_sty_xml","wb","style_builder","toXml","parse_BrtFmt","stFmtCode","parse_BrtFont","dyHeight","grbit","bls","sss","uls","bFamily","bCharSet","brtColor","bFontScheme","Bold","Italic","Strikeout","Outline","Shadow","Condense","Extend","Sub","Sup","parse_BrtXF","ixfeParent","parse_sty_bin","hopper_sty","write_sty_bin","THEME","parse_clrScheme","lastClr","parse_fontScheme","parse_fmtScheme","clrsregex","fntsregex","fmtsregex","parse_themeElements","themeltregex","parse_theme_xml","write_theme","themeXml","parse_Theme","dwThemeVersion","parse_ColorTheme","parse_FullColorExt","xclrType","nTintShade","xclrValue","parse_IcvXF","parse_XFExtGradient","parse_ExtProp","extType","parse_XFExt","cexts","ext","update_xfext","xfext","xfe","parse_cc_xml","write_cc_xml","parse_BrtCalcChainItem$","encode_cell","parse_cc_bin","hopper_cc","write_cc_bin","parse_comments","dirComments","sheetRels","canonicalpath","parse_cmnt","sheetNames","sheetName","insertCommentsIntoSheet","safe_decode_range","thisCell","decode_cell","encoded","encode_range","author","parse_comments_xml","authors","commentList","trim","authorId","sheetRows","textMatch","write_comments_xml","parse_BrtBeginComment","iauthor","rfx","parse_BrtCommentAuthor","parse_BrtCommentText","parse_comments_bin","hopper_cmnt","write_comments_bin","rc_to_a1","rcregex","rcbase","rcfunc","$4","$5","encode_col","encode_row","fstr","parseread","parseread1","parse_ColRelU","parse_RgceArea","parse_RgceAreaRel","parse_RgceLoc","parse_RgceLocRel","cl","parse_PtgArea","area","parse_PtgArea3d","ixti","parse_PtgAreaErr","parse_PtgAreaErr3d","parse_PtgAreaN","parse_PtgArray","parse_PtgAttrBaxcel","bitSemi","bitBaxcel","parse_PtgAttrChoose","parse_PtgAttrGoto","bitGoto","parse_PtgAttrIf","bitIf","parse_PtgAttrSemi","parse_PtgAttrSpaceType","parse_PtgAttrSpace","parse_PtgAttrSpaceSemi","parse_PtgRef","ptg","parse_PtgRefN","parse_PtgRef3d","parse_PtgFunc","iftab","FtabArgc","Ftab","parse_PtgFuncVar","cparams","tab","parsetab","Cetab","parse_PtgAttrSum","parse_PtgConcat","parse_PtgExp","parse_PtgErr","parse_PtgInt","parse_PtgBool","parse_PtgNum","parse_PtgStr","parse_SerAr","parse_PtgExtraMem","parse_PtgExtraArray","cols","rows","parse_PtgName","nameindex","parse_PtgNameX","parse_PtgMemArea","parse_PtgMemFunc","parse_PtgRefErr","parse_PtgAdd","parse_PtgDiv","parse_PtgEq","parse_PtgGe","parse_PtgGt","parse_PtgIsect","parse_PtgLe","parse_PtgLt","parse_PtgMissArg","parse_PtgMul","parse_PtgNe","parse_PtgParen","parse_PtgPercent","parse_PtgPower","parse_PtgRange","parse_PtgSub","parse_PtgUminus","parse_PtgUnion","parse_PtgUplus","parse_PtgMemErr","parse_PtgMemNoMem","parse_PtgRefErr3d","parse_PtgTbl","PtgTypes","57","58","59","60","PtgDupes","96","65","97","98","67","99","68","100","101","70","102","71","103","72","104","73","74","106","75","107","76","108","109","89","121","122","91","123","92","124","93","125","Ptg18","Ptg19","parse_Formula","parse_FormulaValue","chn","cbf","parse_XLSCellParsedFormula","formula","shared","parse_RgbExtra","parse_Rgce","rgcb","ptgs","mapper","stringify_formula","supbooks","_range","stack","nameidx","fflen","argc","args","lbl","XLSXFutureFunctions","bookidx","externbook","sharedf","parsedf","fnd","arrayf","parse_XLSBCellParsedFormula","PtgDataType","50","51","53","54","62","63","78","79","80","83","85","87","88","94","95","110","111","112","113","114","115","116","117","118","119","120","126","127","131","132","133","135","137","138","139","140","142","143","144","145","146","147","148","149","150","151","152","153","155","159","164","166","167","168","169","170","171","172","173","174","175","185","187","188","189","190","191","192","193","194","195","196","197","198","199","200","201","202","203","206","207","208","209","210","211","212","214","215","217","219","220","223","224","225","226","227","228","229","240","243","249","250","251","252","253","254","256","259","260","265","266","267","268","269","272","273","274","276","277","278","279","280","281","282","283","284","285","288","289","290","291","292","293","295","296","297","298","302","305","306","307","308","309","310","311","312","313","314","315","316","318","319","320","321","322","323","324","325","328","330","336","338","339","342","343","344","350","352","355","356","370","373","374","375","376","377","378","379","380","381","382","383","384","385","386","388","390","391","392","393","394","395","396","397","398","399","400","412","413","414","415","416","417","421","422","423","424","425","430","431","432","433","434","435","436","437","438","439","440","441","442","443","444","445","446","447","448","449","450","451","452","453","454","455","456","458","459","460","461","462","463","464","465","466","467","468","469","470","471","472","473","474","475","476","477","478","480","481","482","485","489","491","493","494","495","509","510","511","517","518","519","520","521","522","523","545","546","547","548","549","620","621","647","653","667","673","753","755","808","141","154","156","157","158","160","165","176","179","180","181","182","183","184","205","221","230","231","232","233","234","235","236","237","239","241","242","244","245","246","247","248","257","258","261","262","263","264","270","271","275","286","287","294","299","300","301","303","304","317","326","327","329","331","332","334","335","337","340","341","345","346","347","348","349","353","357","359","360","361","362","363","364","365","366","367","368","369","371","372","_xlfn.ACOT","_xlfn.ACOTH","_xlfn.AGGREGATE","_xlfn.ARABIC","_xlfn.AVERAGEIF","_xlfn.AVERAGEIFS","_xlfn.BASE","_xlfn.BETA.DIST","_xlfn.BETA.INV","_xlfn.BINOM.DIST","_xlfn.BINOM.DIST.RANGE","_xlfn.BINOM.INV","_xlfn.BITAND","_xlfn.BITLSHIFT","_xlfn.BITOR","_xlfn.BITRSHIFT","_xlfn.BITXOR","_xlfn.CEILING.MATH","_xlfn.CEILING.PRECISE","_xlfn.CHISQ.DIST","_xlfn.CHISQ.DIST.RT","_xlfn.CHISQ.INV","_xlfn.CHISQ.INV.RT","_xlfn.CHISQ.TEST","_xlfn.COMBINA","_xlfn.CONFIDENCE.NORM","_xlfn.CONFIDENCE.T","_xlfn.COT","_xlfn.COTH","_xlfn.COUNTIFS","_xlfn.COVARIANCE.P","_xlfn.COVARIANCE.S","_xlfn.CSC","_xlfn.CSCH","_xlfn.DAYS","_xlfn.DECIMAL","_xlfn.ECMA.CEILING","_xlfn.ERF.PRECISE","_xlfn.ERFC.PRECISE","_xlfn.EXPON.DIST","_xlfn.F.DIST","_xlfn.F.DIST.RT","_xlfn.F.INV","_xlfn.F.INV.RT","_xlfn.F.TEST","_xlfn.FILTERXML","_xlfn.FLOOR.MATH","_xlfn.FLOOR.PRECISE","_xlfn.FORMULATEXT","_xlfn.GAMMA","_xlfn.GAMMA.DIST","_xlfn.GAMMA.INV","_xlfn.GAMMALN.PRECISE","_xlfn.GAUSS","_xlfn.HYPGEOM.DIST","_xlfn.IFNA","_xlfn.IFERROR","_xlfn.IMCOSH","_xlfn.IMCOT","_xlfn.IMCSC","_xlfn.IMCSCH","_xlfn.IMSEC","_xlfn.IMSECH","_xlfn.IMSINH","_xlfn.IMTAN","_xlfn.ISFORMULA","_xlfn.ISO.CEILING","_xlfn.ISOWEEKNUM","_xlfn.LOGNORM.DIST","_xlfn.LOGNORM.INV","_xlfn.MODE.MULT","_xlfn.MODE.SNGL","_xlfn.MUNIT","_xlfn.NEGBINOM.DIST","_xlfn.NETWORKDAYS.INTL","_xlfn.NIGBINOM","_xlfn.NORM.DIST","_xlfn.NORM.INV","_xlfn.NORM.S.DIST","_xlfn.NORM.S.INV","_xlfn.NUMBERVALUE","_xlfn.PDURATION","_xlfn.PERCENTILE.EXC","_xlfn.PERCENTILE.INC","_xlfn.PERCENTRANK.EXC","_xlfn.PERCENTRANK.INC","_xlfn.PERMUTATIONA","_xlfn.PHI","_xlfn.POISSON.DIST","_xlfn.QUARTILE.EXC","_xlfn.QUARTILE.INC","_xlfn.QUERYSTRING","_xlfn.RANK.AVG","_xlfn.RANK.EQ","_xlfn.RRI","_xlfn.SEC","_xlfn.SECH","_xlfn.SHEET","_xlfn.SHEETS","_xlfn.SKEW.P","_xlfn.STDEV.P","_xlfn.STDEV.S","_xlfn.SUMIFS","_xlfn.T.DIST","_xlfn.T.DIST.2T","_xlfn.T.DIST.RT","_xlfn.T.INV","_xlfn.T.INV.2T","_xlfn.T.TEST","_xlfn.UNICHAR","_xlfn.UNICODE","_xlfn.VAR.P","_xlfn.VAR.S","_xlfn.WEBSERVICE","_xlfn.WEIBULL.DIST","_xlfn.WORKDAY.INTL","_xlfn.XOR","_xlfn.Z.TEST","_ssfopts","WS","get_sst_id","get_cell_style","exec","numFmt","addStyle","revssf","fontId","borderId","xfId","applyNumberFormat","get_cell_style_csf","cellXf","applyAlignment","JSON","stringify","safe_format","fillid","cellNF","parse_ws_xml_dim","ws","mergecregex","sheetdataregex","hlinkregex","dimregex","colregex","parse_ws_xml","ridx","mergecells","columns","cellStyles","parse_ws_xml_cols","refguess","mtch","parse_ws_xml_data","parse_ws_xml_hlinks","tmpref","write_ws_xml_merges","write_ws_xml_pagesetup","setup","pageSetup","scale","orientation","horizontalDpi","verticalDpi","Rel","rng","seencol","coli","colm","colM","wpx","wch","write_ws_xml_cols","customWidth","write_ws_xml_cell","oldt","oldv","cellDates","Strings","parse_ws_xml_data_factory","cellregex","rowregex","isregex","match_v","match_f","sdata","guess","cells","cref","tagr","tagc","sstr","do_format","marr","marrlen","xlen","cellFormula","sheetStubs","write_ws_xml_data","WS_XML_ROOT","xmlns:r","write_ws_xml","sidx","rdata","Sheets","pane","selection","activeCell","sqref","sheetView","showGridLines","tabSelected","workbookViewId","write_ws_xml_row_breaks","write_ws_xml_col_breaks","breaks","brk","thisBreak","nextBreak","man","manualBreakCount","parse_BrtRowHdr","parse_BrtWsDim","write_BrtWsDim","parse_BrtWsProp","parse_BrtCellBlank","write_BrtCellBlank","parse_BrtCellBool","fBool","parse_BrtCellError","parse_BrtCellIsst","parse_BrtCellReal","parse_BrtCellRk","parse_BrtCellSt","parse_BrtFmlaBool","parse_BrtFmlaError","parse_BrtFmlaNum","parse_BrtFmlaString","parse_BrtMergeCell","parse_BrtHLink","relId","tooltip","display","parse_ws_bin","!id","ws_parse","write_ws_bin_cell","write_CELLTABLE","write_ws_bin","WBPropsDef","WBViewDef","SheetDef","CalcPrDef","CustomWBViewDef","push_defaults_array","push_defaults","parse_wb_defaults","WBProps","CalcPr","WBView","wbnsregex","parse_wb_xml","AppVersion","xml_wb","WB_XML_ROOT","safe1904","Workbook","write_wb_xml","sheetId","r:id","hasPrintHeaders","printHeader","printColumns","localSheetId","parse_BrtBundleSh","hsState","iTabID","strRelID","write_BrtBundleSh","parse_BrtWbProp","strName","write_BrtWbProp","parse_BrtFRTArchID$","ArchID","parse_wb_bin","hopper_wb","write_BUNDLESHS","write_BrtFileVersion","write_BOOKVIEWS","write_BrtCalcProp","write_BrtFileRecover","write_wb_bin","parse_wb","parse_ws","parse_sty","parse_theme","parse_sst","parse_cc","write_wb","write_ws","write_sty","write_sst","attregexg2","attregex2","_chr","xlml_parsexmltag","words","xlml_parsexmltagobj","xlml_format","xlml_set_custprop","Custprops","Rn","safe_format_xlml","nf","process_style_xlml","stag","Interior","I","Pattern","ID","parse_xlml_data","xml","csty","sid","StyleID","interiors","Parent","UTC","Formula","xlml_clean_comment","xlml_normalize","xlmlregex","parse_xlml_xml","sheetnames","cursheet","sheetname","dtag","didx","fidx","pidx","cstys","lastIndex","HRef","HRefScreenTip","MergeAcross","MergeDown","Format","Span","Author","seen","bookSheets","bookProps","parse_xlml","fix_read_opts","write_xlml","parse_compobj","UserType","Reserved1","slurp","XLSRecordEnum","ll","safe_format_xf","XF","make_cell","parse_workbook","Directory","found_sheet","last_formula","cur_sheet","Preamble","lastcell","last_cell","cmnt","rngC","rngR","shared_formulae","array_formulae","temp_val","country","cell_valid","XFs","palette","get_rgb","getrgb","icv","process_cell_style","pcs","line","xfd","addcell","rrtabid","lastuser","codepage","winlocked","wtf","objects","sbc","sbci","sbcli","last_Rn","file_depth","RecordType","Date1904","WriteProtect","RefreshAll","CalcCount","CalcDelta","CalcIter","CalcMode","CalcPrecision","CalcSaveRecalc","CalcRefMode","FullCalc","TxO","noteobj","sheetnamesraw","sort","Number","Encryption","Metadata","Country","parse_xlscfb","cfb","CompObj","Summary","CompObjP","SummaryP","WorkbookP","parse_props","props","DocSummary","bookFiles","DSI","SI","333","387","389","401","403","404","405","406","407","408","409","410","411","418","419","426","427","428","429","457","479","483","484","486","487","488","490","492","496","497","498","499","500","501","502","503","504","505","506","507","508","512","513","514","515","516","524","525","526","527","528","529","530","531","532","533","534","535","536","537","538","539","540","541","542","550","551","552","553","554","555","556","557","558","559","560","561","562","564","565","566","569","570","572","573","574","577","578","579","580","581","582","583","584","585","586","587","588","589","590","591","592","593","594","595","596","597","598","599","600","601","602","603","604","605","606","607","608","609","610","611","612","613","614","615","616","617","618","619","625","626","627","628","629","630","631","632","633","634","635","636","637","638","639","640","641","642","643","644","645","646","648","649","650","651","652","654","655","656","657","658","659","660","661","662","663","664","665","666","668","669","671","672","674","675","676","677","678","679","680","1024","1025","1026","1027","1028","1029","1030","1031","1032","1033","1034","1035","1036","1037","1038","1039","1040","1041","1042","1043","1044","1045","1046","1047","1048","1049","1050","1051","1052","1053","1054","1055","1056","1057","1058","1059","1061","1062","1063","1066","1067","1068","1069","1070","1071","1072","1073","1075","1076","1077","1078","1079","1080","1081","1082","1083","1084","1085","1086","1087","1088","1089","1090","1091","1092","1093","1094","1095","1096","1097","1098","1099","1100","1101","1102","1103","1104","1105","1111","1112","1113","1114","1115","1116","1117","1118","1119","1120","1121","1122","1123","1124","1125","1126","1128","1129","1130","1131","1132","1133","1134","1135","1136","1137","1138","1139","1140","1141","1142","1143","1144","1145","1146","1147","1148","1149","1150","1152","1153","1154","1155","1156","1157","1158","1159","1160","1161","1162","1163","1164","1165","1166","1167","1168","1169","1170","1171","1172","1173","1177","1178","1180","1181","1182","2048","2049","2050","2051","2052","2053","2054","2055","2056","2057","2058","2060","2067","2068","2069","2070","2071","2072","2073","2075","2076","2077","2078","2079","2080","2081","2082","2083","2084","2085","2086","2087","2088","2089","2090","2091","2092","2093","2094","2095","2096","2097","2098","2099","2100","2101","2102","2103","2104","2105","2106","2107","2108","2109","2110","2111","2112","2113","2114","2115","2116","2117","2118","2119","2120","2121","2122","2123","2124","2125","2126","2127","2128","2129","2130","2131","2132","2133","2134","2135","2136","402","1212","2059","2061","2062","2063","2064","2066","2137","2138","2146","2147","2148","2149","2150","2151","2152","2154","2155","2156","2161","2162","2164","2165","2166","2167","2168","2169","2170","2171","2172","2173","2174","2175","2180","2181","2182","2183","2184","2185","2186","2187","2188","2189","2190","2191","2192","2194","2195","2196","2197","2198","2199","2200","2201","2202","2203","2204","2205","2206","2207","2211","2212","2213","2214","2215","4097","4098","4099","4102","4103","4105","4106","4107","4108","4109","4116","4117","4118","4119","4120","4121","4122","4123","4124","4125","4126","4127","4128","4129","4130","4132","4133","4134","4135","4146","4147","4148","4149","4154","4156","4157","4158","4159","4160","4161","4163","4164","4165","4166","4168","4170","4171","4174","4175","4176","4177","4187","4188","4189","4191","4192","4193","4194","4195","4196","4197","4198","4199","4200","2157","2163","2177","2240","2241","2242","2243","2244","2245","2246","2247","2248","2249","2250","2251","parse_ods","ODS","fix_opts_func","fix_opts","fix_write_opts","safe_parse_wbrels","wbrels","pwbr","safe_parse_ws","relsPath","nodirs","parse_zip","entries","binname","propdata","pluck","deps","bookDeps","wbsheets","wbext","wbrelsfile","nmode","Deps","Styles","Themes","bookVBA","vbaraw","bin","add_rels","rId","relobj","write_zip","General","firstbyte","read_zip","isfile","FILENAME","write_zip_type","StyleBuilder","writeFileSync","writeSync","decode_row","rowstr","unfix_row","fix_row","cstr","decode_col","colstr","unfix_col","fix_col","split_cell","splt","fix_cell","unfix_cell","decode_range","cs","ce","safe_format_cell","format_cell","sheet_to_json","isempty","outi","defineProperty","enumerable","__rowNum__","sheet_to_row_object_array","sheet_to_csv","txt","qreg","FS","RS","make_csv","sheet_to_formulae","cmds","get_formulae","make_json","make_formulae","XmlNode","tagName","attributes","children","_attributes","_children","_prefix","createElement","prefix","APOS","QUOTE","ESCAPED_QUOTE","escapeAttributeValue","att_value","customNumFmtId","fmt_table","_hashIndex","_listIndex","initialize","$fonts","$fills","$borders","$numFmts","$cellStyleXfs","$xf","$cellXfs","$cellStyles","$dxfs","$tableStyles","$styles","defaultStyle","defaultCellStyle","gray125Style","addStyles","hashKey","_addXf","_duckTypeStyle","patternFill","_getStyleCSS","css","_addFont","_addFill","_addBorder","_addNumFmt","$alignment","readingOrder","$font","numFmtIdx","$numFmt","$patternFill","$fgColor","$bgColor","$fill","_getSubBorder","direction","spec","$direction","$color","$border","directions","readFile","write","writeFile","XLS"],"mappings":"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AAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,WAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,WAAY,SAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,WAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,WAAY,SAAY,WACpC,WAAY,WAAY,SAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,WAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,WAAY,SACpC,WAAY,WAAY,WAAY,SACpC,WAAY,WAAY,WAAY,UACpC,WAAY,WAAY,WAAY,UACpC,WAAY,WAAY,WAAY,UACpC,WAAY,WAAY,WAAY,UACpC,WAAY,WAAY,WAAY,UACpC,WAAY,WAAY,WAAY,UACpC,WAAY,WAAY,WAAY,UACpC,WAAY,WAAY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","file":"dist/xlsx.core.min.js"}
Source/UBCS-WEB/src/config/js-xlsx-master/dist/xlsx.full.min.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
/* xlsx.js (C) 2013-2015 SheetJS -- http://sheetjs.com */
!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var f;"undefined"!=typeof window?f=window:"undefined"!=typeof global?f=global:"undefined"!=typeof self&&(f=self),f.JSZip=e()}}(function(){var define,module,exports;return function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);throw new Error("Cannot find module '"+o+"'")}var f=n[o]={exports:{}};t[o][0].call(f.exports,function(e){var n=t[o][1][e];return s(n?n:e)},f,f.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s}({1:[function(_dereq_,module,exports){"use strict";var _keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";exports.encode=function(input,utf8){var output="";var chr1,chr2,chr3,enc1,enc2,enc3,enc4;var i=0;while(i<input.length){chr1=input.charCodeAt(i++);chr2=input.charCodeAt(i++);chr3=input.charCodeAt(i++);enc1=chr1>>2;enc2=(chr1&3)<<4|chr2>>4;enc3=(chr2&15)<<2|chr3>>6;enc4=chr3&63;if(isNaN(chr2)){enc3=enc4=64}else if(isNaN(chr3)){enc4=64}output=output+_keyStr.charAt(enc1)+_keyStr.charAt(enc2)+_keyStr.charAt(enc3)+_keyStr.charAt(enc4)}return output};exports.decode=function(input,utf8){var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");while(i<input.length){enc1=_keyStr.indexOf(input.charAt(i++));enc2=_keyStr.indexOf(input.charAt(i++));enc3=_keyStr.indexOf(input.charAt(i++));enc4=_keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!=64){output=output+String.fromCharCode(chr2)}if(enc4!=64){output=output+String.fromCharCode(chr3)}}return output}},{}],2:[function(_dereq_,module,exports){"use strict";function CompressedObject(){this.compressedSize=0;this.uncompressedSize=0;this.crc32=0;this.compressionMethod=null;this.compressedContent=null}CompressedObject.prototype={getContent:function(){return null},getCompressedContent:function(){return null}};module.exports=CompressedObject},{}],3:[function(_dereq_,module,exports){"use strict";exports.STORE={magic:"\0\0",compress:function(content){return content},uncompress:function(content){return content},compressInputType:null,uncompressInputType:null};exports.DEFLATE=_dereq_("./flate")},{"./flate":8}],4:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("./utils");var table=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];module.exports=function crc32(input,crc){if(typeof input==="undefined"||!input.length){return 0}var isArray=utils.getTypeOf(input)!=="string";if(typeof crc=="undefined"){crc=0}var x=0;var y=0;var b=0;crc=crc^-1;for(var i=0,iTop=input.length;i<iTop;i++){b=isArray?input[i]:input.charCodeAt(i);y=(crc^b)&255;x=table[y];crc=crc>>>8^x}return crc^-1}},{"./utils":21}],5:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("./utils");function DataReader(data){this.data=null;this.length=0;this.index=0}DataReader.prototype={checkOffset:function(offset){this.checkIndex(this.index+offset)},checkIndex:function(newIndex){if(this.length<newIndex||newIndex<0){throw new Error("End of data reached (data length = "+this.length+", asked index = "+newIndex+"). Corrupted zip ?")}},setIndex:function(newIndex){this.checkIndex(newIndex);this.index=newIndex},skip:function(n){this.setIndex(this.index+n)},byteAt:function(i){},readInt:function(size){var result=0,i;this.checkOffset(size);for(i=this.index+size-1;i>=this.index;i--){result=(result<<8)+this.byteAt(i)}this.index+=size;return result},readString:function(size){return utils.transformTo("string",this.readData(size))},readData:function(size){},lastIndexOfSignature:function(sig){},readDate:function(){var dostime=this.readInt(4);return new Date((dostime>>25&127)+1980,(dostime>>21&15)-1,dostime>>16&31,dostime>>11&31,dostime>>5&63,(dostime&31)<<1)}};module.exports=DataReader},{"./utils":21}],6:[function(_dereq_,module,exports){"use strict";exports.base64=false;exports.binary=false;exports.dir=false;exports.createFolders=false;exports.date=null;exports.compression=null;exports.comment=null},{}],7:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("./utils");exports.string2binary=function(str){return utils.string2binary(str)};exports.string2Uint8Array=function(str){return utils.transformTo("uint8array",str)};exports.uint8Array2String=function(array){return utils.transformTo("string",array)};exports.string2Blob=function(str){var buffer=utils.transformTo("arraybuffer",str);return utils.arrayBuffer2Blob(buffer)};exports.arrayBuffer2Blob=function(buffer){return utils.arrayBuffer2Blob(buffer)};exports.transformTo=function(outputType,input){return utils.transformTo(outputType,input)};exports.getTypeOf=function(input){return utils.getTypeOf(input)};exports.checkSupport=function(type){return utils.checkSupport(type)};exports.MAX_VALUE_16BITS=utils.MAX_VALUE_16BITS;exports.MAX_VALUE_32BITS=utils.MAX_VALUE_32BITS;exports.pretty=function(str){return utils.pretty(str)};exports.findCompression=function(compressionMethod){return utils.findCompression(compressionMethod)};exports.isRegExp=function(object){return utils.isRegExp(object)}},{"./utils":21}],8:[function(_dereq_,module,exports){"use strict";var USE_TYPEDARRAY=typeof Uint8Array!=="undefined"&&typeof Uint16Array!=="undefined"&&typeof Uint32Array!=="undefined";var pako=_dereq_("pako");exports.uncompressInputType=USE_TYPEDARRAY?"uint8array":"array";exports.compressInputType=USE_TYPEDARRAY?"uint8array":"array";exports.magic="\b\0";exports.compress=function(input){return pako.deflateRaw(input)};exports.uncompress=function(input){return pako.inflateRaw(input)}},{pako:24}],9:[function(_dereq_,module,exports){"use strict";var base64=_dereq_("./base64");function JSZip(data,options){if(!(this instanceof JSZip))return new JSZip(data,options);this.files={};this.comment=null;this.root="";if(data){this.load(data,options)}this.clone=function(){var newObj=new JSZip;for(var i in this){if(typeof this[i]!=="function"){newObj[i]=this[i]}}return newObj}}JSZip.prototype=_dereq_("./object");JSZip.prototype.load=_dereq_("./load");JSZip.support=_dereq_("./support");JSZip.defaults=_dereq_("./defaults");JSZip.utils=_dereq_("./deprecatedPublicUtils");JSZip.base64={encode:function(input){return base64.encode(input)},decode:function(input){return base64.decode(input)}};JSZip.compressions=_dereq_("./compressions");module.exports=JSZip},{"./base64":1,"./compressions":3,"./defaults":6,"./deprecatedPublicUtils":7,"./load":10,"./object":13,"./support":17}],10:[function(_dereq_,module,exports){"use strict";var base64=_dereq_("./base64");var ZipEntries=_dereq_("./zipEntries");module.exports=function(data,options){var files,zipEntries,i,input;options=options||{};if(options.base64){data=base64.decode(data)}zipEntries=new ZipEntries(data,options);files=zipEntries.files;for(i=0;i<files.length;i++){input=files[i];this.file(input.fileName,input.decompressed,{binary:true,optimizedBinaryString:true,date:input.date,dir:input.dir,comment:input.fileComment.length?input.fileComment:null,createFolders:options.createFolders})}if(zipEntries.zipComment.length){this.comment=zipEntries.zipComment}return this}},{"./base64":1,"./zipEntries":22}],11:[function(_dereq_,module,exports){(function(Buffer){"use strict";module.exports=function(data,encoding){return new Buffer(data,encoding)};module.exports.test=function(b){return Buffer.isBuffer(b)}}).call(this,typeof Buffer!=="undefined"?Buffer:undefined)},{}],12:[function(_dereq_,module,exports){"use strict";var Uint8ArrayReader=_dereq_("./uint8ArrayReader");function NodeBufferReader(data){this.data=data;this.length=this.data.length;this.index=0}NodeBufferReader.prototype=new Uint8ArrayReader;NodeBufferReader.prototype.readData=function(size){this.checkOffset(size);var result=this.data.slice(this.index,this.index+size);this.index+=size;return result};module.exports=NodeBufferReader},{"./uint8ArrayReader":18}],13:[function(_dereq_,module,exports){"use strict";var support=_dereq_("./support");var utils=_dereq_("./utils");var crc32=_dereq_("./crc32");var signature=_dereq_("./signature");var defaults=_dereq_("./defaults");var base64=_dereq_("./base64");var compressions=_dereq_("./compressions");var CompressedObject=_dereq_("./compressedObject");var nodeBuffer=_dereq_("./nodeBuffer");var utf8=_dereq_("./utf8");var StringWriter=_dereq_("./stringWriter");var Uint8ArrayWriter=_dereq_("./uint8ArrayWriter");var getRawData=function(file){if(file._data instanceof CompressedObject){file._data=file._data.getContent();file.options.binary=true;file.options.base64=false;if(utils.getTypeOf(file._data)==="uint8array"){var copy=file._data;file._data=new Uint8Array(copy.length);if(copy.length!==0){file._data.set(copy,0)}}}return file._data};var getBinaryData=function(file){var result=getRawData(file),type=utils.getTypeOf(result);if(type==="string"){if(!file.options.binary){if(support.nodebuffer){return nodeBuffer(result,"utf-8")}}return file.asBinary()}return result};var dataToString=function(asUTF8){var result=getRawData(this);if(result===null||typeof result==="undefined"){return""}if(this.options.base64){result=base64.decode(result)}if(asUTF8&&this.options.binary){result=out.utf8decode(result)}else{result=utils.transformTo("string",result)}if(!asUTF8&&!this.options.binary){result=utils.transformTo("string",out.utf8encode(result))}return result};var ZipObject=function(name,data,options){this.name=name;this.dir=options.dir;this.date=options.date;this.comment=options.comment;this._data=data;this.options=options;this._initialMetadata={dir:options.dir,date:options.date}};ZipObject.prototype={asText:function(){return dataToString.call(this,true)},asBinary:function(){return dataToString.call(this,false)},asNodeBuffer:function(){var result=getBinaryData(this);return utils.transformTo("nodebuffer",result)},asUint8Array:function(){var result=getBinaryData(this);return utils.transformTo("uint8array",result)},asArrayBuffer:function(){return this.asUint8Array().buffer}};var decToHex=function(dec,bytes){var hex="",i;for(i=0;i<bytes;i++){hex+=String.fromCharCode(dec&255);dec=dec>>>8}return hex};var extend=function(){var result={},i,attr;for(i=0;i<arguments.length;i++){for(attr in arguments[i]){if(arguments[i].hasOwnProperty(attr)&&typeof result[attr]==="undefined"){result[attr]=arguments[i][attr]}}}return result};var prepareFileAttrs=function(o){o=o||{};if(o.base64===true&&(o.binary===null||o.binary===undefined)){o.binary=true}o=extend(o,defaults);o.date=o.date||new Date;if(o.compression!==null)o.compression=o.compression.toUpperCase();return o};var fileAdd=function(name,data,o){var dataType=utils.getTypeOf(data),parent;o=prepareFileAttrs(o);if(o.createFolders&&(parent=parentFolder(name))){folderAdd.call(this,parent,true)}if(o.dir||data===null||typeof data==="undefined"){o.base64=false;o.binary=false;data=null}else if(dataType==="string"){if(o.binary&&!o.base64){if(o.optimizedBinaryString!==true){data=utils.string2binary(data)}}}else{o.base64=false;o.binary=true;if(!dataType&&!(data instanceof CompressedObject)){throw new Error("The data of '"+name+"' is in an unsupported format !")}if(dataType==="arraybuffer"){data=utils.transformTo("uint8array",data)}}var object=new ZipObject(name,data,o);this.files[name]=object;return object};var parentFolder=function(path){if(path.slice(-1)=="/"){path=path.substring(0,path.length-1)}var lastSlash=path.lastIndexOf("/");return lastSlash>0?path.substring(0,lastSlash):""};var folderAdd=function(name,createFolders){if(name.slice(-1)!="/"){name+="/"}createFolders=typeof createFolders!=="undefined"?createFolders:false;if(!this.files[name]){fileAdd.call(this,name,null,{dir:true,createFolders:createFolders})}return this.files[name]};var generateCompressedObjectFrom=function(file,compression){var result=new CompressedObject,content;if(file._data instanceof CompressedObject){result.uncompressedSize=file._data.uncompressedSize;result.crc32=file._data.crc32;if(result.uncompressedSize===0||file.dir){compression=compressions["STORE"];result.compressedContent="";result.crc32=0}else if(file._data.compressionMethod===compression.magic){result.compressedContent=file._data.getCompressedContent()}else{content=file._data.getContent();result.compressedContent=compression.compress(utils.transformTo(compression.compressInputType,content))}}else{content=getBinaryData(file);if(!content||content.length===0||file.dir){compression=compressions["STORE"];content=""}result.uncompressedSize=content.length;result.crc32=crc32(content);result.compressedContent=compression.compress(utils.transformTo(compression.compressInputType,content))}result.compressedSize=result.compressedContent.length;result.compressionMethod=compression.magic;return result};var generateZipParts=function(name,file,compressedObject,offset){var data=compressedObject.compressedContent,utfEncodedFileName=utils.transformTo("string",utf8.utf8encode(file.name)),comment=file.comment||"",utfEncodedComment=utils.transformTo("string",utf8.utf8encode(comment)),useUTF8ForFileName=utfEncodedFileName.length!==file.name.length,useUTF8ForComment=utfEncodedComment.length!==comment.length,o=file.options,dosTime,dosDate,extraFields="",unicodePathExtraField="",unicodeCommentExtraField="",dir,date;if(file._initialMetadata.dir!==file.dir){dir=file.dir}else{dir=o.dir}if(file._initialMetadata.date!==file.date){date=file.date}else{date=o.date}dosTime=date.getHours();dosTime=dosTime<<6;dosTime=dosTime|date.getMinutes();dosTime=dosTime<<5;dosTime=dosTime|date.getSeconds()/2;dosDate=date.getFullYear()-1980;dosDate=dosDate<<4;dosDate=dosDate|date.getMonth()+1;dosDate=dosDate<<5;dosDate=dosDate|date.getDate();if(useUTF8ForFileName){unicodePathExtraField=decToHex(1,1)+decToHex(crc32(utfEncodedFileName),4)+utfEncodedFileName;extraFields+="up"+decToHex(unicodePathExtraField.length,2)+unicodePathExtraField}if(useUTF8ForComment){unicodeCommentExtraField=decToHex(1,1)+decToHex(this.crc32(utfEncodedComment),4)+utfEncodedComment;extraFields+="uc"+decToHex(unicodeCommentExtraField.length,2)+unicodeCommentExtraField}var header="";header+="\n\0";header+=useUTF8ForFileName||useUTF8ForComment?"\0\b":"\0\0";header+=compressedObject.compressionMethod;header+=decToHex(dosTime,2);header+=decToHex(dosDate,2);header+=decToHex(compressedObject.crc32,4);header+=decToHex(compressedObject.compressedSize,4);header+=decToHex(compressedObject.uncompressedSize,4);header+=decToHex(utfEncodedFileName.length,2);header+=decToHex(extraFields.length,2);var fileRecord=signature.LOCAL_FILE_HEADER+header+utfEncodedFileName+extraFields;var dirRecord=signature.CENTRAL_FILE_HEADER+"\0"+header+decToHex(utfEncodedComment.length,2)+"\0\0"+"\0\0"+(dir===true?"\0\0\0":"\0\0\0\0")+decToHex(offset,4)+utfEncodedFileName+extraFields+utfEncodedComment;return{fileRecord:fileRecord,dirRecord:dirRecord,compressedObject:compressedObject}};var out={load:function(stream,options){throw new Error("Load method is not defined. Is the file jszip-load.js included ?")},filter:function(search){var result=[],filename,relativePath,file,fileClone;for(filename in this.files){if(!this.files.hasOwnProperty(filename)){continue}file=this.files[filename];fileClone=new ZipObject(file.name,file._data,extend(file.options));relativePath=filename.slice(this.root.length,filename.length);if(filename.slice(0,this.root.length)===this.root&&search(relativePath,fileClone)){result.push(fileClone)}}return result},file:function(name,data,o){if(arguments.length===1){if(utils.isRegExp(name)){var regexp=name;return this.filter(function(relativePath,file){return!file.dir&&regexp.test(relativePath)})}else{return this.filter(function(relativePath,file){return!file.dir&&relativePath===name})[0]||null}}else{name=this.root+name;fileAdd.call(this,name,data,o)}return this},folder:function(arg){if(!arg){return this}if(utils.isRegExp(arg)){return this.filter(function(relativePath,file){return file.dir&&arg.test(relativePath)})}var name=this.root+arg;var newFolder=folderAdd.call(this,name);var ret=this.clone();ret.root=newFolder.name;return ret},remove:function(name){name=this.root+name;var file=this.files[name];if(!file){if(name.slice(-1)!="/"){name+="/"}file=this.files[name]}if(file&&!file.dir){delete this.files[name]}else{var kids=this.filter(function(relativePath,file){return file.name.slice(0,name.length)===name});for(var i=0;i<kids.length;i++){delete this.files[kids[i].name]}}return this},generate:function(options){options=extend(options||{},{base64:true,compression:"STORE",type:"base64",comment:null});utils.checkSupport(options.type);var zipData=[],localDirLength=0,centralDirLength=0,writer,i,utfEncodedComment=utils.transformTo("string",this.utf8encode(options.comment||this.comment||""));for(var name in this.files){if(!this.files.hasOwnProperty(name)){continue}var file=this.files[name];var compressionName=file.options.compression||options.compression.toUpperCase();var compression=compressions[compressionName];if(!compression){throw new Error(compressionName+" is not a valid compression method !")}var compressedObject=generateCompressedObjectFrom.call(this,file,compression);var zipPart=generateZipParts.call(this,name,file,compressedObject,localDirLength);localDirLength+=zipPart.fileRecord.length+compressedObject.compressedSize;centralDirLength+=zipPart.dirRecord.length;zipData.push(zipPart)}var dirEnd="";dirEnd=signature.CENTRAL_DIRECTORY_END+"\0\0"+"\0\0"+decToHex(zipData.length,2)+decToHex(zipData.length,2)+decToHex(centralDirLength,4)+decToHex(localDirLength,4)+decToHex(utfEncodedComment.length,2)+utfEncodedComment;var typeName=options.type.toLowerCase();if(typeName==="uint8array"||typeName==="arraybuffer"||typeName==="blob"||typeName==="nodebuffer"){writer=new Uint8ArrayWriter(localDirLength+centralDirLength+dirEnd.length)}else{writer=new StringWriter(localDirLength+centralDirLength+dirEnd.length)}for(i=0;i<zipData.length;i++){writer.append(zipData[i].fileRecord);writer.append(zipData[i].compressedObject.compressedContent)}for(i=0;i<zipData.length;i++){writer.append(zipData[i].dirRecord)}writer.append(dirEnd);var zip=writer.finalize();switch(options.type.toLowerCase()){case"uint8array":case"arraybuffer":case"nodebuffer":return utils.transformTo(options.type.toLowerCase(),zip);case"blob":return utils.arrayBuffer2Blob(utils.transformTo("arraybuffer",zip));case"base64":return options.base64?base64.encode(zip):zip;default:return zip}},crc32:function(input,crc){return crc32(input,crc)},utf8encode:function(string){return utils.transformTo("string",utf8.utf8encode(string))},utf8decode:function(input){return utf8.utf8decode(input)}};module.exports=out},{"./base64":1,"./compressedObject":2,"./compressions":3,"./crc32":4,"./defaults":6,"./nodeBuffer":11,"./signature":14,"./stringWriter":16,"./support":17,"./uint8ArrayWriter":19,"./utf8":20,"./utils":21}],14:[function(_dereq_,module,exports){"use strict";exports.LOCAL_FILE_HEADER="PK";exports.CENTRAL_FILE_HEADER="PK";exports.CENTRAL_DIRECTORY_END="PK";exports.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK";exports.ZIP64_CENTRAL_DIRECTORY_END="PK";exports.DATA_DESCRIPTOR="PK\b"},{}],15:[function(_dereq_,module,exports){"use strict";var DataReader=_dereq_("./dataReader");var utils=_dereq_("./utils");function StringReader(data,optimizedBinaryString){this.data=data;if(!optimizedBinaryString){this.data=utils.string2binary(this.data)}this.length=this.data.length;this.index=0}StringReader.prototype=new DataReader;StringReader.prototype.byteAt=function(i){return this.data.charCodeAt(i)};StringReader.prototype.lastIndexOfSignature=function(sig){return this.data.lastIndexOf(sig)};StringReader.prototype.readData=function(size){this.checkOffset(size);var result=this.data.slice(this.index,this.index+size);this.index+=size;return result};module.exports=StringReader},{"./dataReader":5,"./utils":21}],16:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("./utils");var StringWriter=function(){this.data=[]};StringWriter.prototype={append:function(input){input=utils.transformTo("string",input);this.data.push(input)},finalize:function(){return this.data.join("")}};module.exports=StringWriter},{"./utils":21}],17:[function(_dereq_,module,exports){(function(Buffer){"use strict";exports.base64=true;exports.array=true;exports.string=true;exports.arraybuffer=typeof ArrayBuffer!=="undefined"&&typeof Uint8Array!=="undefined";exports.nodebuffer=typeof Buffer!=="undefined";exports.uint8array=typeof Uint8Array!=="undefined";if(typeof ArrayBuffer==="undefined"){exports.blob=false}else{var buffer=new ArrayBuffer(0);try{exports.blob=new Blob([buffer],{type:"application/zip"}).size===0}catch(e){try{var Builder=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder;var builder=new Builder;builder.append(buffer);exports.blob=builder.getBlob("application/zip").size===0}catch(e){exports.blob=false}}}}).call(this,typeof Buffer!=="undefined"?Buffer:undefined)},{}],18:[function(_dereq_,module,exports){"use strict";var DataReader=_dereq_("./dataReader");function Uint8ArrayReader(data){if(data){this.data=data;this.length=this.data.length;this.index=0}}Uint8ArrayReader.prototype=new DataReader;Uint8ArrayReader.prototype.byteAt=function(i){return this.data[i]};Uint8ArrayReader.prototype.lastIndexOfSignature=function(sig){var sig0=sig.charCodeAt(0),sig1=sig.charCodeAt(1),sig2=sig.charCodeAt(2),sig3=sig.charCodeAt(3);for(var i=this.length-4;i>=0;--i){if(this.data[i]===sig0&&this.data[i+1]===sig1&&this.data[i+2]===sig2&&this.data[i+3]===sig3){return i}}return-1};Uint8ArrayReader.prototype.readData=function(size){this.checkOffset(size);if(size===0){return new Uint8Array(0)}var result=this.data.subarray(this.index,this.index+size);this.index+=size;return result};module.exports=Uint8ArrayReader},{"./dataReader":5}],19:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("./utils");var Uint8ArrayWriter=function(length){this.data=new Uint8Array(length);this.index=0};Uint8ArrayWriter.prototype={append:function(input){if(input.length!==0){input=utils.transformTo("uint8array",input);this.data.set(input,this.index);this.index+=input.length}},finalize:function(){return this.data}};module.exports=Uint8ArrayWriter},{"./utils":21}],20:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("./utils");var support=_dereq_("./support");var nodeBuffer=_dereq_("./nodeBuffer");var _utf8len=new Array(256);for(var i=0;i<256;i++){_utf8len[i]=i>=252?6:i>=248?5:i>=240?4:i>=224?3:i>=192?2:1}_utf8len[254]=_utf8len[254]=1;var string2buf=function(str){var buf,c,c2,m_pos,i,str_len=str.length,buf_len=0;for(m_pos=0;m_pos<str_len;m_pos++){c=str.charCodeAt(m_pos);if((c&64512)===55296&&m_pos+1<str_len){c2=str.charCodeAt(m_pos+1);if((c2&64512)===56320){c=65536+(c-55296<<10)+(c2-56320);m_pos++}}buf_len+=c<128?1:c<2048?2:c<65536?3:4}if(support.uint8array){buf=new Uint8Array(buf_len)}else{buf=new Array(buf_len)}for(i=0,m_pos=0;i<buf_len;m_pos++){c=str.charCodeAt(m_pos);if((c&64512)===55296&&m_pos+1<str_len){c2=str.charCodeAt(m_pos+1);if((c2&64512)===56320){c=65536+(c-55296<<10)+(c2-56320);m_pos++}}if(c<128){buf[i++]=c}else if(c<2048){buf[i++]=192|c>>>6;buf[i++]=128|c&63}else if(c<65536){buf[i++]=224|c>>>12;buf[i++]=128|c>>>6&63;buf[i++]=128|c&63}else{buf[i++]=240|c>>>18;buf[i++]=128|c>>>12&63;buf[i++]=128|c>>>6&63;buf[i++]=128|c&63}}return buf};var utf8border=function(buf,max){var pos;max=max||buf.length;if(max>buf.length){max=buf.length}pos=max-1;while(pos>=0&&(buf[pos]&192)===128){pos--}if(pos<0){return max}if(pos===0){return max}return pos+_utf8len[buf[pos]]>max?pos:max};var buf2string=function(buf){var str,i,out,c,c_len;var len=buf.length;var utf16buf=new Array(len*2);for(out=0,i=0;i<len;){c=buf[i++];if(c<128){utf16buf[out++]=c;continue}c_len=_utf8len[c];if(c_len>4){utf16buf[out++]=65533;i+=c_len-1;continue}c&=c_len===2?31:c_len===3?15:7;while(c_len>1&&i<len){c=c<<6|buf[i++]&63;c_len--}if(c_len>1){utf16buf[out++]=65533;continue}if(c<65536){utf16buf[out++]=c}else{c-=65536;utf16buf[out++]=55296|c>>10&1023;utf16buf[out++]=56320|c&1023}}if(utf16buf.length!==out){if(utf16buf.subarray){utf16buf=utf16buf.subarray(0,out)}else{utf16buf.length=out}}return utils.applyFromCharCode(utf16buf)};exports.utf8encode=function utf8encode(str){if(support.nodebuffer){return nodeBuffer(str,"utf-8")}return string2buf(str)};exports.utf8decode=function utf8decode(buf){if(support.nodebuffer){return utils.transformTo("nodebuffer",buf).toString("utf-8")}buf=utils.transformTo(support.uint8array?"uint8array":"array",buf);var result=[],k=0,len=buf.length,chunk=65536;while(k<len){var nextBoundary=utf8border(buf,Math.min(k+chunk,len));if(support.uint8array){result.push(buf2string(buf.subarray(k,nextBoundary)))}else{result.push(buf2string(buf.slice(k,nextBoundary)))}k=nextBoundary}return result.join("")}},{"./nodeBuffer":11,"./support":17,"./utils":21}],21:[function(_dereq_,module,exports){"use strict";var support=_dereq_("./support");var compressions=_dereq_("./compressions");var nodeBuffer=_dereq_("./nodeBuffer");exports.string2binary=function(str){var result="";for(var i=0;i<str.length;i++){result+=String.fromCharCode(str.charCodeAt(i)&255)}return result};exports.arrayBuffer2Blob=function(buffer){exports.checkSupport("blob");try{return new Blob([buffer],{type:"application/zip"})}catch(e){try{var Builder=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder;var builder=new Builder;builder.append(buffer);return builder.getBlob("application/zip")}catch(e){throw new Error("Bug : can't construct the Blob.")}}};function identity(input){return input}function stringToArrayLike(str,array){for(var i=0;i<str.length;++i){array[i]=str.charCodeAt(i)&255}return array}function arrayLikeToString(array){var chunk=65536;var result=[],len=array.length,type=exports.getTypeOf(array),k=0,canUseApply=true;try{switch(type){case"uint8array":String.fromCharCode.apply(null,new Uint8Array(0));break;case"nodebuffer":String.fromCharCode.apply(null,nodeBuffer(0));break}}catch(e){canUseApply=false}if(!canUseApply){var resultStr="";for(var i=0;i<array.length;i++){resultStr+=String.fromCharCode(array[i])}return resultStr}while(k<len&&chunk>1){try{if(type==="array"||type==="nodebuffer"){result.push(String.fromCharCode.apply(null,array.slice(k,Math.min(k+chunk,len))))}else{result.push(String.fromCharCode.apply(null,array.subarray(k,Math.min(k+chunk,len))))}k+=chunk}catch(e){chunk=Math.floor(chunk/2)}}return result.join("")}exports.applyFromCharCode=arrayLikeToString;function arrayLikeToArrayLike(arrayFrom,arrayTo){for(var i=0;i<arrayFrom.length;i++){arrayTo[i]=arrayFrom[i]}return arrayTo}var transform={};transform["string"]={string:identity,array:function(input){return stringToArrayLike(input,new Array(input.length))},arraybuffer:function(input){return transform["string"]["uint8array"](input).buffer},uint8array:function(input){return stringToArrayLike(input,new Uint8Array(input.length))},nodebuffer:function(input){return stringToArrayLike(input,nodeBuffer(input.length))}};transform["array"]={string:arrayLikeToString,array:identity,arraybuffer:function(input){return new Uint8Array(input).buffer},uint8array:function(input){return new Uint8Array(input)},nodebuffer:function(input){return nodeBuffer(input)}};transform["arraybuffer"]={string:function(input){return arrayLikeToString(new Uint8Array(input))},array:function(input){return arrayLikeToArrayLike(new Uint8Array(input),new Array(input.byteLength))},arraybuffer:identity,uint8array:function(input){return new Uint8Array(input)},nodebuffer:function(input){return nodeBuffer(new Uint8Array(input))}};transform["uint8array"]={string:arrayLikeToString,array:function(input){return arrayLikeToArrayLike(input,new Array(input.length))},arraybuffer:function(input){return input.buffer},uint8array:identity,nodebuffer:function(input){return nodeBuffer(input)}};transform["nodebuffer"]={string:arrayLikeToString,array:function(input){return arrayLikeToArrayLike(input,new Array(input.length))},arraybuffer:function(input){return transform["nodebuffer"]["uint8array"](input).buffer},uint8array:function(input){return arrayLikeToArrayLike(input,new Uint8Array(input.length))},nodebuffer:identity};exports.transformTo=function(outputType,input){if(!input){input=""}if(!outputType){return input}exports.checkSupport(outputType);var inputType=exports.getTypeOf(input);var result=transform[inputType][outputType](input);return result};exports.getTypeOf=function(input){if(typeof input==="string"){return"string"}if(Object.prototype.toString.call(input)==="[object Array]"){return"array"}if(support.nodebuffer&&nodeBuffer.test(input)){return"nodebuffer"}if(support.uint8array&&input instanceof Uint8Array){return"uint8array"}if(support.arraybuffer&&input instanceof ArrayBuffer){return"arraybuffer"}};exports.checkSupport=function(type){var supported=support[type.toLowerCase()];if(!supported){throw new Error(type+" is not supported by this browser")}};exports.MAX_VALUE_16BITS=65535;exports.MAX_VALUE_32BITS=-1;exports.pretty=function(str){var res="",code,i;for(i=0;i<(str||"").length;i++){code=str.charCodeAt(i);res+="\\x"+(code<16?"0":"")+code.toString(16).toUpperCase()}return res;
};exports.findCompression=function(compressionMethod){for(var method in compressions){if(!compressions.hasOwnProperty(method)){continue}if(compressions[method].magic===compressionMethod){return compressions[method]}}return null};exports.isRegExp=function(object){return Object.prototype.toString.call(object)==="[object RegExp]"}},{"./compressions":3,"./nodeBuffer":11,"./support":17}],22:[function(_dereq_,module,exports){"use strict";var StringReader=_dereq_("./stringReader");var NodeBufferReader=_dereq_("./nodeBufferReader");var Uint8ArrayReader=_dereq_("./uint8ArrayReader");var utils=_dereq_("./utils");var sig=_dereq_("./signature");var ZipEntry=_dereq_("./zipEntry");var support=_dereq_("./support");var jszipProto=_dereq_("./object");function ZipEntries(data,loadOptions){this.files=[];this.loadOptions=loadOptions;if(data){this.load(data)}}ZipEntries.prototype={checkSignature:function(expectedSignature){var signature=this.reader.readString(4);if(signature!==expectedSignature){throw new Error("Corrupted zip or bug : unexpected signature "+"("+utils.pretty(signature)+", expected "+utils.pretty(expectedSignature)+")")}},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2);this.diskWithCentralDirStart=this.reader.readInt(2);this.centralDirRecordsOnThisDisk=this.reader.readInt(2);this.centralDirRecords=this.reader.readInt(2);this.centralDirSize=this.reader.readInt(4);this.centralDirOffset=this.reader.readInt(4);this.zipCommentLength=this.reader.readInt(2);this.zipComment=this.reader.readString(this.zipCommentLength);this.zipComment=jszipProto.utf8decode(this.zipComment)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8);this.versionMadeBy=this.reader.readString(2);this.versionNeeded=this.reader.readInt(2);this.diskNumber=this.reader.readInt(4);this.diskWithCentralDirStart=this.reader.readInt(4);this.centralDirRecordsOnThisDisk=this.reader.readInt(8);this.centralDirRecords=this.reader.readInt(8);this.centralDirSize=this.reader.readInt(8);this.centralDirOffset=this.reader.readInt(8);this.zip64ExtensibleData={};var extraDataSize=this.zip64EndOfCentralSize-44,index=0,extraFieldId,extraFieldLength,extraFieldValue;while(index<extraDataSize){extraFieldId=this.reader.readInt(2);extraFieldLength=this.reader.readInt(4);extraFieldValue=this.reader.readString(extraFieldLength);this.zip64ExtensibleData[extraFieldId]={id:extraFieldId,length:extraFieldLength,value:extraFieldValue}}},readBlockZip64EndOfCentralLocator:function(){this.diskWithZip64CentralDirStart=this.reader.readInt(4);this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8);this.disksCount=this.reader.readInt(4);if(this.disksCount>1){throw new Error("Multi-volumes zip are not supported")}},readLocalFiles:function(){var i,file;for(i=0;i<this.files.length;i++){file=this.files[i];this.reader.setIndex(file.localHeaderOffset);this.checkSignature(sig.LOCAL_FILE_HEADER);file.readLocalPart(this.reader);file.handleUTF8()}},readCentralDir:function(){var file;this.reader.setIndex(this.centralDirOffset);while(this.reader.readString(4)===sig.CENTRAL_FILE_HEADER){file=new ZipEntry({zip64:this.zip64},this.loadOptions);file.readCentralPart(this.reader);this.files.push(file)}},readEndOfCentral:function(){var offset=this.reader.lastIndexOfSignature(sig.CENTRAL_DIRECTORY_END);if(offset===-1){throw new Error("Corrupted zip : can't find end of central directory")}this.reader.setIndex(offset);this.checkSignature(sig.CENTRAL_DIRECTORY_END);this.readBlockEndOfCentral();if(this.diskNumber===utils.MAX_VALUE_16BITS||this.diskWithCentralDirStart===utils.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===utils.MAX_VALUE_16BITS||this.centralDirRecords===utils.MAX_VALUE_16BITS||this.centralDirSize===utils.MAX_VALUE_32BITS||this.centralDirOffset===utils.MAX_VALUE_32BITS){this.zip64=true;offset=this.reader.lastIndexOfSignature(sig.ZIP64_CENTRAL_DIRECTORY_LOCATOR);if(offset===-1){throw new Error("Corrupted zip : can't find the ZIP64 end of central directory locator")}this.reader.setIndex(offset);this.checkSignature(sig.ZIP64_CENTRAL_DIRECTORY_LOCATOR);this.readBlockZip64EndOfCentralLocator();this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir);this.checkSignature(sig.ZIP64_CENTRAL_DIRECTORY_END);this.readBlockZip64EndOfCentral()}},prepareReader:function(data){var type=utils.getTypeOf(data);if(type==="string"&&!support.uint8array){this.reader=new StringReader(data,this.loadOptions.optimizedBinaryString)}else if(type==="nodebuffer"){this.reader=new NodeBufferReader(data)}else{this.reader=new Uint8ArrayReader(utils.transformTo("uint8array",data))}},load:function(data){this.prepareReader(data);this.readEndOfCentral();this.readCentralDir();this.readLocalFiles()}};module.exports=ZipEntries},{"./nodeBufferReader":12,"./object":13,"./signature":14,"./stringReader":15,"./support":17,"./uint8ArrayReader":18,"./utils":21,"./zipEntry":23}],23:[function(_dereq_,module,exports){"use strict";var StringReader=_dereq_("./stringReader");var utils=_dereq_("./utils");var CompressedObject=_dereq_("./compressedObject");var jszipProto=_dereq_("./object");function ZipEntry(options,loadOptions){this.options=options;this.loadOptions=loadOptions}ZipEntry.prototype={isEncrypted:function(){return(this.bitFlag&1)===1},useUTF8:function(){return(this.bitFlag&2048)===2048},prepareCompressedContent:function(reader,from,length){return function(){var previousIndex=reader.index;reader.setIndex(from);var compressedFileData=reader.readData(length);reader.setIndex(previousIndex);return compressedFileData}},prepareContent:function(reader,from,length,compression,uncompressedSize){return function(){var compressedFileData=utils.transformTo(compression.uncompressInputType,this.getCompressedContent());var uncompressedFileData=compression.uncompress(compressedFileData);if(uncompressedFileData.length!==uncompressedSize){throw new Error("Bug : uncompressed data size mismatch")}return uncompressedFileData}},readLocalPart:function(reader){var compression,localExtraFieldsLength;reader.skip(22);this.fileNameLength=reader.readInt(2);localExtraFieldsLength=reader.readInt(2);this.fileName=reader.readString(this.fileNameLength);reader.skip(localExtraFieldsLength);if(this.compressedSize==-1||this.uncompressedSize==-1){throw new Error("Bug or corrupted zip : didn't get enough informations from the central directory "+"(compressedSize == -1 || uncompressedSize == -1)")}compression=utils.findCompression(this.compressionMethod);if(compression===null){throw new Error("Corrupted zip : compression "+utils.pretty(this.compressionMethod)+" unknown (inner file : "+this.fileName+")")}this.decompressed=new CompressedObject;this.decompressed.compressedSize=this.compressedSize;this.decompressed.uncompressedSize=this.uncompressedSize;this.decompressed.crc32=this.crc32;this.decompressed.compressionMethod=this.compressionMethod;this.decompressed.getCompressedContent=this.prepareCompressedContent(reader,reader.index,this.compressedSize,compression);this.decompressed.getContent=this.prepareContent(reader,reader.index,this.compressedSize,compression,this.uncompressedSize);if(this.loadOptions.checkCRC32){this.decompressed=utils.transformTo("string",this.decompressed.getContent());if(jszipProto.crc32(this.decompressed)!==this.crc32){throw new Error("Corrupted zip : CRC32 mismatch")}}},readCentralPart:function(reader){this.versionMadeBy=reader.readString(2);this.versionNeeded=reader.readInt(2);this.bitFlag=reader.readInt(2);this.compressionMethod=reader.readString(2);this.date=reader.readDate();this.crc32=reader.readInt(4);this.compressedSize=reader.readInt(4);this.uncompressedSize=reader.readInt(4);this.fileNameLength=reader.readInt(2);this.extraFieldsLength=reader.readInt(2);this.fileCommentLength=reader.readInt(2);this.diskNumberStart=reader.readInt(2);this.internalFileAttributes=reader.readInt(2);this.externalFileAttributes=reader.readInt(4);this.localHeaderOffset=reader.readInt(4);if(this.isEncrypted()){throw new Error("Encrypted zip are not supported")}this.fileName=reader.readString(this.fileNameLength);this.readExtraFields(reader);this.parseZIP64ExtraField(reader);this.fileComment=reader.readString(this.fileCommentLength);this.dir=this.externalFileAttributes&16?true:false},parseZIP64ExtraField:function(reader){if(!this.extraFields[1]){return}var extraReader=new StringReader(this.extraFields[1].value);if(this.uncompressedSize===utils.MAX_VALUE_32BITS){this.uncompressedSize=extraReader.readInt(8)}if(this.compressedSize===utils.MAX_VALUE_32BITS){this.compressedSize=extraReader.readInt(8)}if(this.localHeaderOffset===utils.MAX_VALUE_32BITS){this.localHeaderOffset=extraReader.readInt(8)}if(this.diskNumberStart===utils.MAX_VALUE_32BITS){this.diskNumberStart=extraReader.readInt(4)}},readExtraFields:function(reader){var start=reader.index,extraFieldId,extraFieldLength,extraFieldValue;this.extraFields=this.extraFields||{};while(reader.index<start+this.extraFieldsLength){extraFieldId=reader.readInt(2);extraFieldLength=reader.readInt(2);extraFieldValue=reader.readString(extraFieldLength);this.extraFields[extraFieldId]={id:extraFieldId,length:extraFieldLength,value:extraFieldValue}}},handleUTF8:function(){if(this.useUTF8()){this.fileName=jszipProto.utf8decode(this.fileName);this.fileComment=jszipProto.utf8decode(this.fileComment)}else{var upath=this.findExtraFieldUnicodePath();if(upath!==null){this.fileName=upath}var ucomment=this.findExtraFieldUnicodeComment();if(ucomment!==null){this.fileComment=ucomment}}},findExtraFieldUnicodePath:function(){var upathField=this.extraFields[28789];if(upathField){var extraReader=new StringReader(upathField.value);if(extraReader.readInt(1)!==1){return null}if(jszipProto.crc32(this.fileName)!==extraReader.readInt(4)){return null}return jszipProto.utf8decode(extraReader.readString(upathField.length-5))}return null},findExtraFieldUnicodeComment:function(){var ucommentField=this.extraFields[25461];if(ucommentField){var extraReader=new StringReader(ucommentField.value);if(extraReader.readInt(1)!==1){return null}if(jszipProto.crc32(this.fileComment)!==extraReader.readInt(4)){return null}return jszipProto.utf8decode(extraReader.readString(ucommentField.length-5))}return null}};module.exports=ZipEntry},{"./compressedObject":2,"./object":13,"./stringReader":15,"./utils":21}],24:[function(_dereq_,module,exports){"use strict";var assign=_dereq_("./lib/utils/common").assign;var deflate=_dereq_("./lib/deflate");var inflate=_dereq_("./lib/inflate");var constants=_dereq_("./lib/zlib/constants");var pako={};assign(pako,deflate,inflate,constants);module.exports=pako},{"./lib/deflate":25,"./lib/inflate":26,"./lib/utils/common":27,"./lib/zlib/constants":30}],25:[function(_dereq_,module,exports){"use strict";var zlib_deflate=_dereq_("./zlib/deflate.js");var utils=_dereq_("./utils/common");var strings=_dereq_("./utils/strings");var msg=_dereq_("./zlib/messages");var zstream=_dereq_("./zlib/zstream");var Z_NO_FLUSH=0;var Z_FINISH=4;var Z_OK=0;var Z_STREAM_END=1;var Z_DEFAULT_COMPRESSION=-1;var Z_DEFAULT_STRATEGY=0;var Z_DEFLATED=8;var Deflate=function(options){this.options=utils.assign({level:Z_DEFAULT_COMPRESSION,method:Z_DEFLATED,chunkSize:16384,windowBits:15,memLevel:8,strategy:Z_DEFAULT_STRATEGY,to:""},options||{});var opt=this.options;if(opt.raw&&opt.windowBits>0){opt.windowBits=-opt.windowBits}else if(opt.gzip&&opt.windowBits>0&&opt.windowBits<16){opt.windowBits+=16}this.err=0;this.msg="";this.ended=false;this.chunks=[];this.strm=new zstream;this.strm.avail_out=0;var status=zlib_deflate.deflateInit2(this.strm,opt.level,opt.method,opt.windowBits,opt.memLevel,opt.strategy);if(status!==Z_OK){throw new Error(msg[status])}if(opt.header){zlib_deflate.deflateSetHeader(this.strm,opt.header)}};Deflate.prototype.push=function(data,mode){var strm=this.strm;var chunkSize=this.options.chunkSize;var status,_mode;if(this.ended){return false}_mode=mode===~~mode?mode:mode===true?Z_FINISH:Z_NO_FLUSH;if(typeof data==="string"){strm.input=strings.string2buf(data)}else{strm.input=data}strm.next_in=0;strm.avail_in=strm.input.length;do{if(strm.avail_out===0){strm.output=new utils.Buf8(chunkSize);strm.next_out=0;strm.avail_out=chunkSize}status=zlib_deflate.deflate(strm,_mode);if(status!==Z_STREAM_END&&status!==Z_OK){this.onEnd(status);this.ended=true;return false}if(strm.avail_out===0||strm.avail_in===0&&_mode===Z_FINISH){if(this.options.to==="string"){this.onData(strings.buf2binstring(utils.shrinkBuf(strm.output,strm.next_out)))}else{this.onData(utils.shrinkBuf(strm.output,strm.next_out))}}}while((strm.avail_in>0||strm.avail_out===0)&&status!==Z_STREAM_END);if(_mode===Z_FINISH){status=zlib_deflate.deflateEnd(this.strm);this.onEnd(status);this.ended=true;return status===Z_OK}return true};Deflate.prototype.onData=function(chunk){this.chunks.push(chunk)};Deflate.prototype.onEnd=function(status){if(status===Z_OK){if(this.options.to==="string"){this.result=this.chunks.join("")}else{this.result=utils.flattenChunks(this.chunks)}}this.chunks=[];this.err=status;this.msg=this.strm.msg};function deflate(input,options){var deflator=new Deflate(options);deflator.push(input,true);if(deflator.err){throw deflator.msg}return deflator.result}function deflateRaw(input,options){options=options||{};options.raw=true;return deflate(input,options)}function gzip(input,options){options=options||{};options.gzip=true;return deflate(input,options)}exports.Deflate=Deflate;exports.deflate=deflate;exports.deflateRaw=deflateRaw;exports.gzip=gzip},{"./utils/common":27,"./utils/strings":28,"./zlib/deflate.js":32,"./zlib/messages":37,"./zlib/zstream":39}],26:[function(_dereq_,module,exports){"use strict";var zlib_inflate=_dereq_("./zlib/inflate.js");var utils=_dereq_("./utils/common");var strings=_dereq_("./utils/strings");var c=_dereq_("./zlib/constants");var msg=_dereq_("./zlib/messages");var zstream=_dereq_("./zlib/zstream");var gzheader=_dereq_("./zlib/gzheader");var Inflate=function(options){this.options=utils.assign({chunkSize:16384,windowBits:0,to:""},options||{});var opt=this.options;if(opt.raw&&opt.windowBits>=0&&opt.windowBits<16){opt.windowBits=-opt.windowBits;if(opt.windowBits===0){opt.windowBits=-15}}if(opt.windowBits>=0&&opt.windowBits<16&&!(options&&options.windowBits)){opt.windowBits+=32}if(opt.windowBits>15&&opt.windowBits<48){if((opt.windowBits&15)===0){opt.windowBits|=15}}this.err=0;this.msg="";this.ended=false;this.chunks=[];this.strm=new zstream;this.strm.avail_out=0;var status=zlib_inflate.inflateInit2(this.strm,opt.windowBits);if(status!==c.Z_OK){throw new Error(msg[status])}this.header=new gzheader;zlib_inflate.inflateGetHeader(this.strm,this.header)};Inflate.prototype.push=function(data,mode){var strm=this.strm;var chunkSize=this.options.chunkSize;var status,_mode;var next_out_utf8,tail,utf8str;if(this.ended){return false}_mode=mode===~~mode?mode:mode===true?c.Z_FINISH:c.Z_NO_FLUSH;if(typeof data==="string"){strm.input=strings.binstring2buf(data)}else{strm.input=data}strm.next_in=0;strm.avail_in=strm.input.length;do{if(strm.avail_out===0){strm.output=new utils.Buf8(chunkSize);strm.next_out=0;strm.avail_out=chunkSize}status=zlib_inflate.inflate(strm,c.Z_NO_FLUSH);if(status!==c.Z_STREAM_END&&status!==c.Z_OK){this.onEnd(status);this.ended=true;return false}if(strm.next_out){if(strm.avail_out===0||status===c.Z_STREAM_END||strm.avail_in===0&&_mode===c.Z_FINISH){if(this.options.to==="string"){next_out_utf8=strings.utf8border(strm.output,strm.next_out);tail=strm.next_out-next_out_utf8;utf8str=strings.buf2string(strm.output,next_out_utf8);strm.next_out=tail;strm.avail_out=chunkSize-tail;if(tail){utils.arraySet(strm.output,strm.output,next_out_utf8,tail,0)}this.onData(utf8str)}else{this.onData(utils.shrinkBuf(strm.output,strm.next_out))}}}}while(strm.avail_in>0&&status!==c.Z_STREAM_END);if(status===c.Z_STREAM_END){_mode=c.Z_FINISH}if(_mode===c.Z_FINISH){status=zlib_inflate.inflateEnd(this.strm);this.onEnd(status);this.ended=true;return status===c.Z_OK}return true};Inflate.prototype.onData=function(chunk){this.chunks.push(chunk)};Inflate.prototype.onEnd=function(status){if(status===c.Z_OK){if(this.options.to==="string"){this.result=this.chunks.join("")}else{this.result=utils.flattenChunks(this.chunks)}}this.chunks=[];this.err=status;this.msg=this.strm.msg};function inflate(input,options){var inflator=new Inflate(options);inflator.push(input,true);if(inflator.err){throw inflator.msg}return inflator.result}function inflateRaw(input,options){options=options||{};options.raw=true;return inflate(input,options)}exports.Inflate=Inflate;exports.inflate=inflate;exports.inflateRaw=inflateRaw;exports.ungzip=inflate},{"./utils/common":27,"./utils/strings":28,"./zlib/constants":30,"./zlib/gzheader":33,"./zlib/inflate.js":35,"./zlib/messages":37,"./zlib/zstream":39}],27:[function(_dereq_,module,exports){"use strict";var TYPED_OK=typeof Uint8Array!=="undefined"&&typeof Uint16Array!=="undefined"&&typeof Int32Array!=="undefined";exports.assign=function(obj){var sources=Array.prototype.slice.call(arguments,1);while(sources.length){var source=sources.shift();if(!source){continue}if(typeof source!=="object"){throw new TypeError(source+"must be non-object")}for(var p in source){if(source.hasOwnProperty(p)){obj[p]=source[p]}}}return obj};exports.shrinkBuf=function(buf,size){if(buf.length===size){return buf}if(buf.subarray){return buf.subarray(0,size)}buf.length=size;return buf};var fnTyped={arraySet:function(dest,src,src_offs,len,dest_offs){if(src.subarray&&dest.subarray){dest.set(src.subarray(src_offs,src_offs+len),dest_offs);return}for(var i=0;i<len;i++){dest[dest_offs+i]=src[src_offs+i]}},flattenChunks:function(chunks){var i,l,len,pos,chunk,result;len=0;for(i=0,l=chunks.length;i<l;i++){len+=chunks[i].length}result=new Uint8Array(len);pos=0;for(i=0,l=chunks.length;i<l;i++){chunk=chunks[i];result.set(chunk,pos);pos+=chunk.length}return result}};var fnUntyped={arraySet:function(dest,src,src_offs,len,dest_offs){for(var i=0;i<len;i++){dest[dest_offs+i]=src[src_offs+i]}},flattenChunks:function(chunks){return[].concat.apply([],chunks)}};exports.setTyped=function(on){if(on){exports.Buf8=Uint8Array;exports.Buf16=Uint16Array;exports.Buf32=Int32Array;exports.assign(exports,fnTyped)}else{exports.Buf8=Array;exports.Buf16=Array;exports.Buf32=Array;exports.assign(exports,fnUntyped)}};exports.setTyped(TYPED_OK)},{}],28:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("./common");var STR_APPLY_OK=true;var STR_APPLY_UIA_OK=true;try{String.fromCharCode.apply(null,[0])}catch(__){STR_APPLY_OK=false}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(__){STR_APPLY_UIA_OK=false}var _utf8len=new utils.Buf8(256);for(var i=0;i<256;i++){_utf8len[i]=i>=252?6:i>=248?5:i>=240?4:i>=224?3:i>=192?2:1}_utf8len[254]=_utf8len[254]=1;exports.string2buf=function(str){var buf,c,c2,m_pos,i,str_len=str.length,buf_len=0;for(m_pos=0;m_pos<str_len;m_pos++){c=str.charCodeAt(m_pos);if((c&64512)===55296&&m_pos+1<str_len){c2=str.charCodeAt(m_pos+1);if((c2&64512)===56320){c=65536+(c-55296<<10)+(c2-56320);m_pos++}}buf_len+=c<128?1:c<2048?2:c<65536?3:4}buf=new utils.Buf8(buf_len);for(i=0,m_pos=0;i<buf_len;m_pos++){c=str.charCodeAt(m_pos);if((c&64512)===55296&&m_pos+1<str_len){c2=str.charCodeAt(m_pos+1);if((c2&64512)===56320){c=65536+(c-55296<<10)+(c2-56320);m_pos++}}if(c<128){buf[i++]=c}else if(c<2048){buf[i++]=192|c>>>6;buf[i++]=128|c&63}else if(c<65536){buf[i++]=224|c>>>12;buf[i++]=128|c>>>6&63;buf[i++]=128|c&63}else{buf[i++]=240|c>>>18;buf[i++]=128|c>>>12&63;buf[i++]=128|c>>>6&63;buf[i++]=128|c&63}}return buf};function buf2binstring(buf,len){if(len<65537){if(buf.subarray&&STR_APPLY_UIA_OK||!buf.subarray&&STR_APPLY_OK){return String.fromCharCode.apply(null,utils.shrinkBuf(buf,len))}}var result="";for(var i=0;i<len;i++){result+=String.fromCharCode(buf[i])}return result}exports.buf2binstring=function(buf){return buf2binstring(buf,buf.length)};exports.binstring2buf=function(str){var buf=new utils.Buf8(str.length);for(var i=0,len=buf.length;i<len;i++){buf[i]=str.charCodeAt(i)}return buf};exports.buf2string=function(buf,max){var i,out,c,c_len;var len=max||buf.length;var utf16buf=new Array(len*2);for(out=0,i=0;i<len;){c=buf[i++];if(c<128){utf16buf[out++]=c;continue}c_len=_utf8len[c];if(c_len>4){utf16buf[out++]=65533;i+=c_len-1;continue}c&=c_len===2?31:c_len===3?15:7;while(c_len>1&&i<len){c=c<<6|buf[i++]&63;c_len--}if(c_len>1){utf16buf[out++]=65533;continue}if(c<65536){utf16buf[out++]=c}else{c-=65536;utf16buf[out++]=55296|c>>10&1023;utf16buf[out++]=56320|c&1023}}return buf2binstring(utf16buf,out)};exports.utf8border=function(buf,max){var pos;max=max||buf.length;if(max>buf.length){max=buf.length}pos=max-1;while(pos>=0&&(buf[pos]&192)===128){pos--}if(pos<0){return max}if(pos===0){return max}return pos+_utf8len[buf[pos]]>max?pos:max}},{"./common":27}],29:[function(_dereq_,module,exports){"use strict";function adler32(adler,buf,len,pos){var s1=adler&65535|0,s2=adler>>>16&65535|0,n=0;while(len!==0){n=len>2e3?2e3:len;len-=n;do{s1=s1+buf[pos++]|0;s2=s2+s1|0}while(--n);s1%=65521;s2%=65521}return s1|s2<<16|0}module.exports=adler32},{}],30:[function(_dereq_,module,exports){module.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],31:[function(_dereq_,module,exports){"use strict";function makeTable(){var c,table=[];for(var n=0;n<256;n++){c=n;for(var k=0;k<8;k++){c=c&1?3988292384^c>>>1:c>>>1}table[n]=c}return table}var crcTable=makeTable();function crc32(crc,buf,len,pos){var t=crcTable,end=pos+len;crc=crc^-1;for(var i=pos;i<end;i++){crc=crc>>>8^t[(crc^buf[i])&255]}return crc^-1}module.exports=crc32},{}],32:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("../utils/common");var trees=_dereq_("./trees");var adler32=_dereq_("./adler32");var crc32=_dereq_("./crc32");var msg=_dereq_("./messages");var Z_NO_FLUSH=0;var Z_PARTIAL_FLUSH=1;var Z_FULL_FLUSH=3;var Z_FINISH=4;var Z_BLOCK=5;var Z_OK=0;var Z_STREAM_END=1;var Z_STREAM_ERROR=-2;var Z_DATA_ERROR=-3;var Z_BUF_ERROR=-5;var Z_DEFAULT_COMPRESSION=-1;var Z_FILTERED=1;var Z_HUFFMAN_ONLY=2;var Z_RLE=3;var Z_FIXED=4;var Z_DEFAULT_STRATEGY=0;var Z_UNKNOWN=2;var Z_DEFLATED=8;var MAX_MEM_LEVEL=9;var MAX_WBITS=15;var DEF_MEM_LEVEL=8;var LENGTH_CODES=29;var LITERALS=256;var L_CODES=LITERALS+1+LENGTH_CODES;var D_CODES=30;var BL_CODES=19;var HEAP_SIZE=2*L_CODES+1;var MAX_BITS=15;var MIN_MATCH=3;var MAX_MATCH=258;var MIN_LOOKAHEAD=MAX_MATCH+MIN_MATCH+1;var PRESET_DICT=32;var INIT_STATE=42;var EXTRA_STATE=69;var NAME_STATE=73;var COMMENT_STATE=91;var HCRC_STATE=103;var BUSY_STATE=113;var FINISH_STATE=666;var BS_NEED_MORE=1;var BS_BLOCK_DONE=2;var BS_FINISH_STARTED=3;var BS_FINISH_DONE=4;var OS_CODE=3;function err(strm,errorCode){strm.msg=msg[errorCode];return errorCode}function rank(f){return(f<<1)-(f>4?9:0)}function zero(buf){var len=buf.length;while(--len>=0){buf[len]=0}}function flush_pending(strm){var s=strm.state;var len=s.pending;if(len>strm.avail_out){len=strm.avail_out}if(len===0){return}utils.arraySet(strm.output,s.pending_buf,s.pending_out,len,strm.next_out);strm.next_out+=len;s.pending_out+=len;strm.total_out+=len;strm.avail_out-=len;s.pending-=len;if(s.pending===0){s.pending_out=0}}function flush_block_only(s,last){trees._tr_flush_block(s,s.block_start>=0?s.block_start:-1,s.strstart-s.block_start,last);s.block_start=s.strstart;flush_pending(s.strm)}function put_byte(s,b){s.pending_buf[s.pending++]=b}function putShortMSB(s,b){s.pending_buf[s.pending++]=b>>>8&255;s.pending_buf[s.pending++]=b&255}function read_buf(strm,buf,start,size){var len=strm.avail_in;if(len>size){len=size}if(len===0){return 0}strm.avail_in-=len;utils.arraySet(buf,strm.input,strm.next_in,len,start);if(strm.state.wrap===1){strm.adler=adler32(strm.adler,buf,len,start)}else if(strm.state.wrap===2){strm.adler=crc32(strm.adler,buf,len,start)}strm.next_in+=len;strm.total_in+=len;return len}function longest_match(s,cur_match){var chain_length=s.max_chain_length;var scan=s.strstart;var match;var len;var best_len=s.prev_length;var nice_match=s.nice_match;var limit=s.strstart>s.w_size-MIN_LOOKAHEAD?s.strstart-(s.w_size-MIN_LOOKAHEAD):0;var _win=s.window;var wmask=s.w_mask;var prev=s.prev;var strend=s.strstart+MAX_MATCH;var scan_end1=_win[scan+best_len-1];var scan_end=_win[scan+best_len];if(s.prev_length>=s.good_match){chain_length>>=2}if(nice_match>s.lookahead){nice_match=s.lookahead}do{match=cur_match;if(_win[match+best_len]!==scan_end||_win[match+best_len-1]!==scan_end1||_win[match]!==_win[scan]||_win[++match]!==_win[scan+1]){continue}scan+=2;match++;do{}while(_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&scan<strend);len=MAX_MATCH-(strend-scan);scan=strend-MAX_MATCH;if(len>best_len){s.match_start=cur_match;best_len=len;if(len>=nice_match){break}scan_end1=_win[scan+best_len-1];scan_end=_win[scan+best_len]}}while((cur_match=prev[cur_match&wmask])>limit&&--chain_length!==0);if(best_len<=s.lookahead){return best_len}return s.lookahead}function fill_window(s){var _w_size=s.w_size;var p,n,m,more,str;do{more=s.window_size-s.lookahead-s.strstart;if(s.strstart>=_w_size+(_w_size-MIN_LOOKAHEAD)){utils.arraySet(s.window,s.window,_w_size,_w_size,0);s.match_start-=_w_size;s.strstart-=_w_size;s.block_start-=_w_size;n=s.hash_size;p=n;do{m=s.head[--p];s.head[p]=m>=_w_size?m-_w_size:0}while(--n);n=_w_size;p=n;do{m=s.prev[--p];s.prev[p]=m>=_w_size?m-_w_size:0}while(--n);more+=_w_size}if(s.strm.avail_in===0){break}n=read_buf(s.strm,s.window,s.strstart+s.lookahead,more);s.lookahead+=n;if(s.lookahead+s.insert>=MIN_MATCH){str=s.strstart-s.insert;s.ins_h=s.window[str];s.ins_h=(s.ins_h<<s.hash_shift^s.window[str+1])&s.hash_mask;while(s.insert){s.ins_h=(s.ins_h<<s.hash_shift^s.window[str+MIN_MATCH-1])&s.hash_mask;s.prev[str&s.w_mask]=s.head[s.ins_h];s.head[s.ins_h]=str;str++;s.insert--;if(s.lookahead+s.insert<MIN_MATCH){break}}}}while(s.lookahead<MIN_LOOKAHEAD&&s.strm.avail_in!==0)}function deflate_stored(s,flush){var max_block_size=65535;if(max_block_size>s.pending_buf_size-5){max_block_size=s.pending_buf_size-5}for(;;){if(s.lookahead<=1){fill_window(s);if(s.lookahead===0&&flush===Z_NO_FLUSH){return BS_NEED_MORE}if(s.lookahead===0){break}}s.strstart+=s.lookahead;s.lookahead=0;var max_start=s.block_start+max_block_size;if(s.strstart===0||s.strstart>=max_start){s.lookahead=s.strstart-max_start;s.strstart=max_start;flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}if(s.strstart-s.block_start>=s.w_size-MIN_LOOKAHEAD){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}}s.insert=0;if(flush===Z_FINISH){flush_block_only(s,true);if(s.strm.avail_out===0){return BS_FINISH_STARTED}return BS_FINISH_DONE}if(s.strstart>s.block_start){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}return BS_NEED_MORE}function deflate_fast(s,flush){var hash_head;var bflush;for(;;){if(s.lookahead<MIN_LOOKAHEAD){fill_window(s);if(s.lookahead<MIN_LOOKAHEAD&&flush===Z_NO_FLUSH){return BS_NEED_MORE}if(s.lookahead===0){break}}hash_head=0;if(s.lookahead>=MIN_MATCH){s.ins_h=(s.ins_h<<s.hash_shift^s.window[s.strstart+MIN_MATCH-1])&s.hash_mask;hash_head=s.prev[s.strstart&s.w_mask]=s.head[s.ins_h];s.head[s.ins_h]=s.strstart}if(hash_head!==0&&s.strstart-hash_head<=s.w_size-MIN_LOOKAHEAD){s.match_length=longest_match(s,hash_head)}if(s.match_length>=MIN_MATCH){bflush=trees._tr_tally(s,s.strstart-s.match_start,s.match_length-MIN_MATCH);s.lookahead-=s.match_length;if(s.match_length<=s.max_lazy_match&&s.lookahead>=MIN_MATCH){s.match_length--;do{s.strstart++;s.ins_h=(s.ins_h<<s.hash_shift^s.window[s.strstart+MIN_MATCH-1])&s.hash_mask;hash_head=s.prev[s.strstart&s.w_mask]=s.head[s.ins_h];s.head[s.ins_h]=s.strstart}while(--s.match_length!==0);s.strstart++}else{s.strstart+=s.match_length;s.match_length=0;s.ins_h=s.window[s.strstart];s.ins_h=(s.ins_h<<s.hash_shift^s.window[s.strstart+1])&s.hash_mask}}else{bflush=trees._tr_tally(s,0,s.window[s.strstart]);s.lookahead--;s.strstart++}if(bflush){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}}s.insert=s.strstart<MIN_MATCH-1?s.strstart:MIN_MATCH-1;if(flush===Z_FINISH){flush_block_only(s,true);if(s.strm.avail_out===0){return BS_FINISH_STARTED}return BS_FINISH_DONE}if(s.last_lit){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}return BS_BLOCK_DONE}function deflate_slow(s,flush){var hash_head;var bflush;var max_insert;for(;;){if(s.lookahead<MIN_LOOKAHEAD){fill_window(s);if(s.lookahead<MIN_LOOKAHEAD&&flush===Z_NO_FLUSH){return BS_NEED_MORE}if(s.lookahead===0){break}}hash_head=0;if(s.lookahead>=MIN_MATCH){s.ins_h=(s.ins_h<<s.hash_shift^s.window[s.strstart+MIN_MATCH-1])&s.hash_mask;hash_head=s.prev[s.strstart&s.w_mask]=s.head[s.ins_h];s.head[s.ins_h]=s.strstart}s.prev_length=s.match_length;s.prev_match=s.match_start;s.match_length=MIN_MATCH-1;if(hash_head!==0&&s.prev_length<s.max_lazy_match&&s.strstart-hash_head<=s.w_size-MIN_LOOKAHEAD){s.match_length=longest_match(s,hash_head);if(s.match_length<=5&&(s.strategy===Z_FILTERED||s.match_length===MIN_MATCH&&s.strstart-s.match_start>4096)){s.match_length=MIN_MATCH-1}}if(s.prev_length>=MIN_MATCH&&s.match_length<=s.prev_length){max_insert=s.strstart+s.lookahead-MIN_MATCH;bflush=trees._tr_tally(s,s.strstart-1-s.prev_match,s.prev_length-MIN_MATCH);s.lookahead-=s.prev_length-1;s.prev_length-=2;do{if(++s.strstart<=max_insert){s.ins_h=(s.ins_h<<s.hash_shift^s.window[s.strstart+MIN_MATCH-1])&s.hash_mask;hash_head=s.prev[s.strstart&s.w_mask]=s.head[s.ins_h];s.head[s.ins_h]=s.strstart}}while(--s.prev_length!==0);s.match_available=0;s.match_length=MIN_MATCH-1;s.strstart++;if(bflush){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}}else if(s.match_available){bflush=trees._tr_tally(s,0,s.window[s.strstart-1]);if(bflush){flush_block_only(s,false)}s.strstart++;s.lookahead--;if(s.strm.avail_out===0){return BS_NEED_MORE}}else{s.match_available=1;s.strstart++;s.lookahead--}}if(s.match_available){bflush=trees._tr_tally(s,0,s.window[s.strstart-1]);s.match_available=0}s.insert=s.strstart<MIN_MATCH-1?s.strstart:MIN_MATCH-1;if(flush===Z_FINISH){flush_block_only(s,true);if(s.strm.avail_out===0){return BS_FINISH_STARTED}return BS_FINISH_DONE}if(s.last_lit){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}return BS_BLOCK_DONE}function deflate_rle(s,flush){var bflush;var prev;var scan,strend;var _win=s.window;for(;;){if(s.lookahead<=MAX_MATCH){fill_window(s);if(s.lookahead<=MAX_MATCH&&flush===Z_NO_FLUSH){return BS_NEED_MORE}if(s.lookahead===0){break}}s.match_length=0;if(s.lookahead>=MIN_MATCH&&s.strstart>0){scan=s.strstart-1;prev=_win[scan];if(prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]){strend=s.strstart+MAX_MATCH;do{}while(prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]&&scan<strend);s.match_length=MAX_MATCH-(strend-scan);if(s.match_length>s.lookahead){s.match_length=s.lookahead}}}if(s.match_length>=MIN_MATCH){bflush=trees._tr_tally(s,1,s.match_length-MIN_MATCH);s.lookahead-=s.match_length;s.strstart+=s.match_length;s.match_length=0}else{bflush=trees._tr_tally(s,0,s.window[s.strstart]);s.lookahead--;s.strstart++}if(bflush){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}}s.insert=0;if(flush===Z_FINISH){flush_block_only(s,true);if(s.strm.avail_out===0){return BS_FINISH_STARTED}return BS_FINISH_DONE}if(s.last_lit){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}return BS_BLOCK_DONE}function deflate_huff(s,flush){
var bflush;for(;;){if(s.lookahead===0){fill_window(s);if(s.lookahead===0){if(flush===Z_NO_FLUSH){return BS_NEED_MORE}break}}s.match_length=0;bflush=trees._tr_tally(s,0,s.window[s.strstart]);s.lookahead--;s.strstart++;if(bflush){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}}s.insert=0;if(flush===Z_FINISH){flush_block_only(s,true);if(s.strm.avail_out===0){return BS_FINISH_STARTED}return BS_FINISH_DONE}if(s.last_lit){flush_block_only(s,false);if(s.strm.avail_out===0){return BS_NEED_MORE}}return BS_BLOCK_DONE}var Config=function(good_length,max_lazy,nice_length,max_chain,func){this.good_length=good_length;this.max_lazy=max_lazy;this.nice_length=nice_length;this.max_chain=max_chain;this.func=func};var configuration_table;configuration_table=[new Config(0,0,0,0,deflate_stored),new Config(4,4,8,4,deflate_fast),new Config(4,5,16,8,deflate_fast),new Config(4,6,32,32,deflate_fast),new Config(4,4,16,16,deflate_slow),new Config(8,16,32,32,deflate_slow),new Config(8,16,128,128,deflate_slow),new Config(8,32,128,256,deflate_slow),new Config(32,128,258,1024,deflate_slow),new Config(32,258,258,4096,deflate_slow)];function lm_init(s){s.window_size=2*s.w_size;zero(s.head);s.max_lazy_match=configuration_table[s.level].max_lazy;s.good_match=configuration_table[s.level].good_length;s.nice_match=configuration_table[s.level].nice_length;s.max_chain_length=configuration_table[s.level].max_chain;s.strstart=0;s.block_start=0;s.lookahead=0;s.insert=0;s.match_length=s.prev_length=MIN_MATCH-1;s.match_available=0;s.ins_h=0}function DeflateState(){this.strm=null;this.status=0;this.pending_buf=null;this.pending_buf_size=0;this.pending_out=0;this.pending=0;this.wrap=0;this.gzhead=null;this.gzindex=0;this.method=Z_DEFLATED;this.last_flush=-1;this.w_size=0;this.w_bits=0;this.w_mask=0;this.window=null;this.window_size=0;this.prev=null;this.head=null;this.ins_h=0;this.hash_size=0;this.hash_bits=0;this.hash_mask=0;this.hash_shift=0;this.block_start=0;this.match_length=0;this.prev_match=0;this.match_available=0;this.strstart=0;this.match_start=0;this.lookahead=0;this.prev_length=0;this.max_chain_length=0;this.max_lazy_match=0;this.level=0;this.strategy=0;this.good_match=0;this.nice_match=0;this.dyn_ltree=new utils.Buf16(HEAP_SIZE*2);this.dyn_dtree=new utils.Buf16((2*D_CODES+1)*2);this.bl_tree=new utils.Buf16((2*BL_CODES+1)*2);zero(this.dyn_ltree);zero(this.dyn_dtree);zero(this.bl_tree);this.l_desc=null;this.d_desc=null;this.bl_desc=null;this.bl_count=new utils.Buf16(MAX_BITS+1);this.heap=new utils.Buf16(2*L_CODES+1);zero(this.heap);this.heap_len=0;this.heap_max=0;this.depth=new utils.Buf16(2*L_CODES+1);zero(this.depth);this.l_buf=0;this.lit_bufsize=0;this.last_lit=0;this.d_buf=0;this.opt_len=0;this.static_len=0;this.matches=0;this.insert=0;this.bi_buf=0;this.bi_valid=0}function deflateResetKeep(strm){var s;if(!strm||!strm.state){return err(strm,Z_STREAM_ERROR)}strm.total_in=strm.total_out=0;strm.data_type=Z_UNKNOWN;s=strm.state;s.pending=0;s.pending_out=0;if(s.wrap<0){s.wrap=-s.wrap}s.status=s.wrap?INIT_STATE:BUSY_STATE;strm.adler=s.wrap===2?0:1;s.last_flush=Z_NO_FLUSH;trees._tr_init(s);return Z_OK}function deflateReset(strm){var ret=deflateResetKeep(strm);if(ret===Z_OK){lm_init(strm.state)}return ret}function deflateSetHeader(strm,head){if(!strm||!strm.state){return Z_STREAM_ERROR}if(strm.state.wrap!==2){return Z_STREAM_ERROR}strm.state.gzhead=head;return Z_OK}function deflateInit2(strm,level,method,windowBits,memLevel,strategy){if(!strm){return Z_STREAM_ERROR}var wrap=1;if(level===Z_DEFAULT_COMPRESSION){level=6}if(windowBits<0){wrap=0;windowBits=-windowBits}else if(windowBits>15){wrap=2;windowBits-=16}if(memLevel<1||memLevel>MAX_MEM_LEVEL||method!==Z_DEFLATED||windowBits<8||windowBits>15||level<0||level>9||strategy<0||strategy>Z_FIXED){return err(strm,Z_STREAM_ERROR)}if(windowBits===8){windowBits=9}var s=new DeflateState;strm.state=s;s.strm=strm;s.wrap=wrap;s.gzhead=null;s.w_bits=windowBits;s.w_size=1<<s.w_bits;s.w_mask=s.w_size-1;s.hash_bits=memLevel+7;s.hash_size=1<<s.hash_bits;s.hash_mask=s.hash_size-1;s.hash_shift=~~((s.hash_bits+MIN_MATCH-1)/MIN_MATCH);s.window=new utils.Buf8(s.w_size*2);s.head=new utils.Buf16(s.hash_size);s.prev=new utils.Buf16(s.w_size);s.lit_bufsize=1<<memLevel+6;s.pending_buf_size=s.lit_bufsize*4;s.pending_buf=new utils.Buf8(s.pending_buf_size);s.d_buf=s.lit_bufsize>>1;s.l_buf=(1+2)*s.lit_bufsize;s.level=level;s.strategy=strategy;s.method=method;return deflateReset(strm)}function deflateInit(strm,level){return deflateInit2(strm,level,Z_DEFLATED,MAX_WBITS,DEF_MEM_LEVEL,Z_DEFAULT_STRATEGY)}function deflate(strm,flush){var old_flush,s;var beg,val;if(!strm||!strm.state||flush>Z_BLOCK||flush<0){return strm?err(strm,Z_STREAM_ERROR):Z_STREAM_ERROR}s=strm.state;if(!strm.output||!strm.input&&strm.avail_in!==0||s.status===FINISH_STATE&&flush!==Z_FINISH){return err(strm,strm.avail_out===0?Z_BUF_ERROR:Z_STREAM_ERROR)}s.strm=strm;old_flush=s.last_flush;s.last_flush=flush;if(s.status===INIT_STATE){if(s.wrap===2){strm.adler=0;put_byte(s,31);put_byte(s,139);put_byte(s,8);if(!s.gzhead){put_byte(s,0);put_byte(s,0);put_byte(s,0);put_byte(s,0);put_byte(s,0);put_byte(s,s.level===9?2:s.strategy>=Z_HUFFMAN_ONLY||s.level<2?4:0);put_byte(s,OS_CODE);s.status=BUSY_STATE}else{put_byte(s,(s.gzhead.text?1:0)+(s.gzhead.hcrc?2:0)+(!s.gzhead.extra?0:4)+(!s.gzhead.name?0:8)+(!s.gzhead.comment?0:16));put_byte(s,s.gzhead.time&255);put_byte(s,s.gzhead.time>>8&255);put_byte(s,s.gzhead.time>>16&255);put_byte(s,s.gzhead.time>>24&255);put_byte(s,s.level===9?2:s.strategy>=Z_HUFFMAN_ONLY||s.level<2?4:0);put_byte(s,s.gzhead.os&255);if(s.gzhead.extra&&s.gzhead.extra.length){put_byte(s,s.gzhead.extra.length&255);put_byte(s,s.gzhead.extra.length>>8&255)}if(s.gzhead.hcrc){strm.adler=crc32(strm.adler,s.pending_buf,s.pending,0)}s.gzindex=0;s.status=EXTRA_STATE}}else{var header=Z_DEFLATED+(s.w_bits-8<<4)<<8;var level_flags=-1;if(s.strategy>=Z_HUFFMAN_ONLY||s.level<2){level_flags=0}else if(s.level<6){level_flags=1}else if(s.level===6){level_flags=2}else{level_flags=3}header|=level_flags<<6;if(s.strstart!==0){header|=PRESET_DICT}header+=31-header%31;s.status=BUSY_STATE;putShortMSB(s,header);if(s.strstart!==0){putShortMSB(s,strm.adler>>>16);putShortMSB(s,strm.adler&65535)}strm.adler=1}}if(s.status===EXTRA_STATE){if(s.gzhead.extra){beg=s.pending;while(s.gzindex<(s.gzhead.extra.length&65535)){if(s.pending===s.pending_buf_size){if(s.gzhead.hcrc&&s.pending>beg){strm.adler=crc32(strm.adler,s.pending_buf,s.pending-beg,beg)}flush_pending(strm);beg=s.pending;if(s.pending===s.pending_buf_size){break}}put_byte(s,s.gzhead.extra[s.gzindex]&255);s.gzindex++}if(s.gzhead.hcrc&&s.pending>beg){strm.adler=crc32(strm.adler,s.pending_buf,s.pending-beg,beg)}if(s.gzindex===s.gzhead.extra.length){s.gzindex=0;s.status=NAME_STATE}}else{s.status=NAME_STATE}}if(s.status===NAME_STATE){if(s.gzhead.name){beg=s.pending;do{if(s.pending===s.pending_buf_size){if(s.gzhead.hcrc&&s.pending>beg){strm.adler=crc32(strm.adler,s.pending_buf,s.pending-beg,beg)}flush_pending(strm);beg=s.pending;if(s.pending===s.pending_buf_size){val=1;break}}if(s.gzindex<s.gzhead.name.length){val=s.gzhead.name.charCodeAt(s.gzindex++)&255}else{val=0}put_byte(s,val)}while(val!==0);if(s.gzhead.hcrc&&s.pending>beg){strm.adler=crc32(strm.adler,s.pending_buf,s.pending-beg,beg)}if(val===0){s.gzindex=0;s.status=COMMENT_STATE}}else{s.status=COMMENT_STATE}}if(s.status===COMMENT_STATE){if(s.gzhead.comment){beg=s.pending;do{if(s.pending===s.pending_buf_size){if(s.gzhead.hcrc&&s.pending>beg){strm.adler=crc32(strm.adler,s.pending_buf,s.pending-beg,beg)}flush_pending(strm);beg=s.pending;if(s.pending===s.pending_buf_size){val=1;break}}if(s.gzindex<s.gzhead.comment.length){val=s.gzhead.comment.charCodeAt(s.gzindex++)&255}else{val=0}put_byte(s,val)}while(val!==0);if(s.gzhead.hcrc&&s.pending>beg){strm.adler=crc32(strm.adler,s.pending_buf,s.pending-beg,beg)}if(val===0){s.status=HCRC_STATE}}else{s.status=HCRC_STATE}}if(s.status===HCRC_STATE){if(s.gzhead.hcrc){if(s.pending+2>s.pending_buf_size){flush_pending(strm)}if(s.pending+2<=s.pending_buf_size){put_byte(s,strm.adler&255);put_byte(s,strm.adler>>8&255);strm.adler=0;s.status=BUSY_STATE}}else{s.status=BUSY_STATE}}if(s.pending!==0){flush_pending(strm);if(strm.avail_out===0){s.last_flush=-1;return Z_OK}}else if(strm.avail_in===0&&rank(flush)<=rank(old_flush)&&flush!==Z_FINISH){return err(strm,Z_BUF_ERROR)}if(s.status===FINISH_STATE&&strm.avail_in!==0){return err(strm,Z_BUF_ERROR)}if(strm.avail_in!==0||s.lookahead!==0||flush!==Z_NO_FLUSH&&s.status!==FINISH_STATE){var bstate=s.strategy===Z_HUFFMAN_ONLY?deflate_huff(s,flush):s.strategy===Z_RLE?deflate_rle(s,flush):configuration_table[s.level].func(s,flush);if(bstate===BS_FINISH_STARTED||bstate===BS_FINISH_DONE){s.status=FINISH_STATE}if(bstate===BS_NEED_MORE||bstate===BS_FINISH_STARTED){if(strm.avail_out===0){s.last_flush=-1}return Z_OK}if(bstate===BS_BLOCK_DONE){if(flush===Z_PARTIAL_FLUSH){trees._tr_align(s)}else if(flush!==Z_BLOCK){trees._tr_stored_block(s,0,0,false);if(flush===Z_FULL_FLUSH){zero(s.head);if(s.lookahead===0){s.strstart=0;s.block_start=0;s.insert=0}}}flush_pending(strm);if(strm.avail_out===0){s.last_flush=-1;return Z_OK}}}if(flush!==Z_FINISH){return Z_OK}if(s.wrap<=0){return Z_STREAM_END}if(s.wrap===2){put_byte(s,strm.adler&255);put_byte(s,strm.adler>>8&255);put_byte(s,strm.adler>>16&255);put_byte(s,strm.adler>>24&255);put_byte(s,strm.total_in&255);put_byte(s,strm.total_in>>8&255);put_byte(s,strm.total_in>>16&255);put_byte(s,strm.total_in>>24&255)}else{putShortMSB(s,strm.adler>>>16);putShortMSB(s,strm.adler&65535)}flush_pending(strm);if(s.wrap>0){s.wrap=-s.wrap}return s.pending!==0?Z_OK:Z_STREAM_END}function deflateEnd(strm){var status;if(!strm||!strm.state){return Z_STREAM_ERROR}status=strm.state.status;if(status!==INIT_STATE&&status!==EXTRA_STATE&&status!==NAME_STATE&&status!==COMMENT_STATE&&status!==HCRC_STATE&&status!==BUSY_STATE&&status!==FINISH_STATE){return err(strm,Z_STREAM_ERROR)}strm.state=null;return status===BUSY_STATE?err(strm,Z_DATA_ERROR):Z_OK}exports.deflateInit=deflateInit;exports.deflateInit2=deflateInit2;exports.deflateReset=deflateReset;exports.deflateResetKeep=deflateResetKeep;exports.deflateSetHeader=deflateSetHeader;exports.deflate=deflate;exports.deflateEnd=deflateEnd;exports.deflateInfo="pako deflate (from Nodeca project)"},{"../utils/common":27,"./adler32":29,"./crc32":31,"./messages":37,"./trees":38}],33:[function(_dereq_,module,exports){"use strict";function GZheader(){this.text=0;this.time=0;this.xflags=0;this.os=0;this.extra=null;this.extra_len=0;this.name="";this.comment="";this.hcrc=0;this.done=false}module.exports=GZheader},{}],34:[function(_dereq_,module,exports){"use strict";var BAD=30;var TYPE=12;module.exports=function inflate_fast(strm,start){var state;var _in;var last;var _out;var beg;var end;var dmax;var wsize;var whave;var wnext;var window;var hold;var bits;var lcode;var dcode;var lmask;var dmask;var here;var op;var len;var dist;var from;var from_source;var input,output;state=strm.state;_in=strm.next_in;input=strm.input;last=_in+(strm.avail_in-5);_out=strm.next_out;output=strm.output;beg=_out-(start-strm.avail_out);end=_out+(strm.avail_out-257);dmax=state.dmax;wsize=state.wsize;whave=state.whave;wnext=state.wnext;window=state.window;hold=state.hold;bits=state.bits;lcode=state.lencode;dcode=state.distcode;lmask=(1<<state.lenbits)-1;dmask=(1<<state.distbits)-1;top:do{if(bits<15){hold+=input[_in++]<<bits;bits+=8;hold+=input[_in++]<<bits;bits+=8}here=lcode[hold&lmask];dolen:for(;;){op=here>>>24;hold>>>=op;bits-=op;op=here>>>16&255;if(op===0){output[_out++]=here&65535}else if(op&16){len=here&65535;op&=15;if(op){if(bits<op){hold+=input[_in++]<<bits;bits+=8}len+=hold&(1<<op)-1;hold>>>=op;bits-=op}if(bits<15){hold+=input[_in++]<<bits;bits+=8;hold+=input[_in++]<<bits;bits+=8}here=dcode[hold&dmask];dodist:for(;;){op=here>>>24;hold>>>=op;bits-=op;op=here>>>16&255;if(op&16){dist=here&65535;op&=15;if(bits<op){hold+=input[_in++]<<bits;bits+=8;if(bits<op){hold+=input[_in++]<<bits;bits+=8}}dist+=hold&(1<<op)-1;if(dist>dmax){strm.msg="invalid distance too far back";state.mode=BAD;break top}hold>>>=op;bits-=op;op=_out-beg;if(dist>op){op=dist-op;if(op>whave){if(state.sane){strm.msg="invalid distance too far back";state.mode=BAD;break top}}from=0;from_source=window;if(wnext===0){from+=wsize-op;if(op<len){len-=op;do{output[_out++]=window[from++]}while(--op);from=_out-dist;from_source=output}}else if(wnext<op){from+=wsize+wnext-op;op-=wnext;if(op<len){len-=op;do{output[_out++]=window[from++]}while(--op);from=0;if(wnext<len){op=wnext;len-=op;do{output[_out++]=window[from++]}while(--op);from=_out-dist;from_source=output}}}else{from+=wnext-op;if(op<len){len-=op;do{output[_out++]=window[from++]}while(--op);from=_out-dist;from_source=output}}while(len>2){output[_out++]=from_source[from++];output[_out++]=from_source[from++];output[_out++]=from_source[from++];len-=3}if(len){output[_out++]=from_source[from++];if(len>1){output[_out++]=from_source[from++]}}}else{from=_out-dist;do{output[_out++]=output[from++];output[_out++]=output[from++];output[_out++]=output[from++];len-=3}while(len>2);if(len){output[_out++]=output[from++];if(len>1){output[_out++]=output[from++]}}}}else if((op&64)===0){here=dcode[(here&65535)+(hold&(1<<op)-1)];continue dodist}else{strm.msg="invalid distance code";state.mode=BAD;break top}break}}else if((op&64)===0){here=lcode[(here&65535)+(hold&(1<<op)-1)];continue dolen}else if(op&32){state.mode=TYPE;break top}else{strm.msg="invalid literal/length code";state.mode=BAD;break top}break}}while(_in<last&&_out<end);len=bits>>3;_in-=len;bits-=len<<3;hold&=(1<<bits)-1;strm.next_in=_in;strm.next_out=_out;strm.avail_in=_in<last?5+(last-_in):5-(_in-last);strm.avail_out=_out<end?257+(end-_out):257-(_out-end);state.hold=hold;state.bits=bits;return}},{}],35:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("../utils/common");var adler32=_dereq_("./adler32");var crc32=_dereq_("./crc32");var inflate_fast=_dereq_("./inffast");var inflate_table=_dereq_("./inftrees");var CODES=0;var LENS=1;var DISTS=2;var Z_FINISH=4;var Z_BLOCK=5;var Z_TREES=6;var Z_OK=0;var Z_STREAM_END=1;var Z_NEED_DICT=2;var Z_STREAM_ERROR=-2;var Z_DATA_ERROR=-3;var Z_MEM_ERROR=-4;var Z_BUF_ERROR=-5;var Z_DEFLATED=8;var HEAD=1;var FLAGS=2;var TIME=3;var OS=4;var EXLEN=5;var EXTRA=6;var NAME=7;var COMMENT=8;var HCRC=9;var DICTID=10;var DICT=11;var TYPE=12;var TYPEDO=13;var STORED=14;var COPY_=15;var COPY=16;var TABLE=17;var LENLENS=18;var CODELENS=19;var LEN_=20;var LEN=21;var LENEXT=22;var DIST=23;var DISTEXT=24;var MATCH=25;var LIT=26;var CHECK=27;var LENGTH=28;var DONE=29;var BAD=30;var MEM=31;var SYNC=32;var ENOUGH_LENS=852;var ENOUGH_DISTS=592;var MAX_WBITS=15;var DEF_WBITS=MAX_WBITS;function ZSWAP32(q){return(q>>>24&255)+(q>>>8&65280)+((q&65280)<<8)+((q&255)<<24)}function InflateState(){this.mode=0;this.last=false;this.wrap=0;this.havedict=false;this.flags=0;this.dmax=0;this.check=0;this.total=0;this.head=null;this.wbits=0;this.wsize=0;this.whave=0;this.wnext=0;this.window=null;this.hold=0;this.bits=0;this.length=0;this.offset=0;this.extra=0;this.lencode=null;this.distcode=null;this.lenbits=0;this.distbits=0;this.ncode=0;this.nlen=0;this.ndist=0;this.have=0;this.next=null;this.lens=new utils.Buf16(320);this.work=new utils.Buf16(288);this.lendyn=null;this.distdyn=null;this.sane=0;this.back=0;this.was=0}function inflateResetKeep(strm){var state;if(!strm||!strm.state){return Z_STREAM_ERROR}state=strm.state;strm.total_in=strm.total_out=state.total=0;strm.msg="";if(state.wrap){strm.adler=state.wrap&1}state.mode=HEAD;state.last=0;state.havedict=0;state.dmax=32768;state.head=null;state.hold=0;state.bits=0;state.lencode=state.lendyn=new utils.Buf32(ENOUGH_LENS);state.distcode=state.distdyn=new utils.Buf32(ENOUGH_DISTS);state.sane=1;state.back=-1;return Z_OK}function inflateReset(strm){var state;if(!strm||!strm.state){return Z_STREAM_ERROR}state=strm.state;state.wsize=0;state.whave=0;state.wnext=0;return inflateResetKeep(strm)}function inflateReset2(strm,windowBits){var wrap;var state;if(!strm||!strm.state){return Z_STREAM_ERROR}state=strm.state;if(windowBits<0){wrap=0;windowBits=-windowBits}else{wrap=(windowBits>>4)+1;if(windowBits<48){windowBits&=15}}if(windowBits&&(windowBits<8||windowBits>15)){return Z_STREAM_ERROR}if(state.window!==null&&state.wbits!==windowBits){state.window=null}state.wrap=wrap;state.wbits=windowBits;return inflateReset(strm)}function inflateInit2(strm,windowBits){var ret;var state;if(!strm){return Z_STREAM_ERROR}state=new InflateState;strm.state=state;state.window=null;ret=inflateReset2(strm,windowBits);if(ret!==Z_OK){strm.state=null}return ret}function inflateInit(strm){return inflateInit2(strm,DEF_WBITS)}var virgin=true;var lenfix,distfix;function fixedtables(state){if(virgin){var sym;lenfix=new utils.Buf32(512);distfix=new utils.Buf32(32);sym=0;while(sym<144){state.lens[sym++]=8}while(sym<256){state.lens[sym++]=9}while(sym<280){state.lens[sym++]=7}while(sym<288){state.lens[sym++]=8}inflate_table(LENS,state.lens,0,288,lenfix,0,state.work,{bits:9});sym=0;while(sym<32){state.lens[sym++]=5}inflate_table(DISTS,state.lens,0,32,distfix,0,state.work,{bits:5});virgin=false}state.lencode=lenfix;state.lenbits=9;state.distcode=distfix;state.distbits=5}function updatewindow(strm,src,end,copy){var dist;var state=strm.state;if(state.window===null){state.wsize=1<<state.wbits;state.wnext=0;state.whave=0;state.window=new utils.Buf8(state.wsize)}if(copy>=state.wsize){utils.arraySet(state.window,src,end-state.wsize,state.wsize,0);state.wnext=0;state.whave=state.wsize}else{dist=state.wsize-state.wnext;if(dist>copy){dist=copy}utils.arraySet(state.window,src,end-copy,dist,state.wnext);copy-=dist;if(copy){utils.arraySet(state.window,src,end-copy,copy,0);state.wnext=copy;state.whave=state.wsize}else{state.wnext+=dist;if(state.wnext===state.wsize){state.wnext=0}if(state.whave<state.wsize){state.whave+=dist}}}return 0}function inflate(strm,flush){var state;var input,output;var next;var put;var have,left;var hold;var bits;var _in,_out;var copy;var from;var from_source;var here=0;var here_bits,here_op,here_val;var last_bits,last_op,last_val;var len;var ret;var hbuf=new utils.Buf8(4);var opts;var n;var order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!strm||!strm.state||!strm.output||!strm.input&&strm.avail_in!==0){return Z_STREAM_ERROR}state=strm.state;if(state.mode===TYPE){state.mode=TYPEDO}put=strm.next_out;output=strm.output;left=strm.avail_out;next=strm.next_in;input=strm.input;have=strm.avail_in;hold=state.hold;bits=state.bits;_in=have;_out=left;ret=Z_OK;inf_leave:for(;;){switch(state.mode){case HEAD:if(state.wrap===0){state.mode=TYPEDO;break}while(bits<16){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}if(state.wrap&2&&hold===35615){state.check=0;hbuf[0]=hold&255;hbuf[1]=hold>>>8&255;state.check=crc32(state.check,hbuf,2,0);hold=0;bits=0;state.mode=FLAGS;break}state.flags=0;if(state.head){state.head.done=false}if(!(state.wrap&1)||(((hold&255)<<8)+(hold>>8))%31){strm.msg="incorrect header check";state.mode=BAD;break}if((hold&15)!==Z_DEFLATED){strm.msg="unknown compression method";state.mode=BAD;break}hold>>>=4;bits-=4;len=(hold&15)+8;if(state.wbits===0){state.wbits=len}else if(len>state.wbits){strm.msg="invalid window size";state.mode=BAD;break}state.dmax=1<<len;strm.adler=state.check=1;state.mode=hold&512?DICTID:TYPE;hold=0;bits=0;break;case FLAGS:while(bits<16){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}state.flags=hold;if((state.flags&255)!==Z_DEFLATED){strm.msg="unknown compression method";state.mode=BAD;break}if(state.flags&57344){strm.msg="unknown header flags set";state.mode=BAD;break}if(state.head){state.head.text=hold>>8&1}if(state.flags&512){hbuf[0]=hold&255;hbuf[1]=hold>>>8&255;state.check=crc32(state.check,hbuf,2,0)}hold=0;bits=0;state.mode=TIME;case TIME:while(bits<32){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}if(state.head){state.head.time=hold}if(state.flags&512){hbuf[0]=hold&255;hbuf[1]=hold>>>8&255;hbuf[2]=hold>>>16&255;hbuf[3]=hold>>>24&255;state.check=crc32(state.check,hbuf,4,0)}hold=0;bits=0;state.mode=OS;case OS:while(bits<16){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}if(state.head){state.head.xflags=hold&255;state.head.os=hold>>8}if(state.flags&512){hbuf[0]=hold&255;hbuf[1]=hold>>>8&255;state.check=crc32(state.check,hbuf,2,0)}hold=0;bits=0;state.mode=EXLEN;case EXLEN:if(state.flags&1024){while(bits<16){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}state.length=hold;if(state.head){state.head.extra_len=hold}if(state.flags&512){hbuf[0]=hold&255;hbuf[1]=hold>>>8&255;state.check=crc32(state.check,hbuf,2,0)}hold=0;bits=0}else if(state.head){state.head.extra=null}state.mode=EXTRA;case EXTRA:if(state.flags&1024){copy=state.length;if(copy>have){copy=have}if(copy){if(state.head){len=state.head.extra_len-state.length;if(!state.head.extra){state.head.extra=new Array(state.head.extra_len)}utils.arraySet(state.head.extra,input,next,copy,len)}if(state.flags&512){state.check=crc32(state.check,input,copy,next)}have-=copy;next+=copy;state.length-=copy}if(state.length){break inf_leave}}state.length=0;state.mode=NAME;case NAME:if(state.flags&2048){if(have===0){break inf_leave}copy=0;do{len=input[next+copy++];if(state.head&&len&&state.length<65536){state.head.name+=String.fromCharCode(len)}}while(len&&copy<have);if(state.flags&512){state.check=crc32(state.check,input,copy,next)}have-=copy;next+=copy;if(len){break inf_leave}}else if(state.head){state.head.name=null}state.length=0;state.mode=COMMENT;case COMMENT:if(state.flags&4096){if(have===0){break inf_leave}copy=0;do{len=input[next+copy++];if(state.head&&len&&state.length<65536){state.head.comment+=String.fromCharCode(len)}}while(len&&copy<have);if(state.flags&512){state.check=crc32(state.check,input,copy,next)}have-=copy;next+=copy;if(len){break inf_leave}}else if(state.head){state.head.comment=null}state.mode=HCRC;case HCRC:if(state.flags&512){while(bits<16){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}if(hold!==(state.check&65535)){strm.msg="header crc mismatch";state.mode=BAD;break}hold=0;bits=0}if(state.head){state.head.hcrc=state.flags>>9&1;state.head.done=true}strm.adler=state.check=0;state.mode=TYPE;break;case DICTID:while(bits<32){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}strm.adler=state.check=ZSWAP32(hold);hold=0;bits=0;state.mode=DICT;case DICT:if(state.havedict===0){strm.next_out=put;strm.avail_out=left;strm.next_in=next;strm.avail_in=have;state.hold=hold;state.bits=bits;return Z_NEED_DICT}strm.adler=state.check=1;state.mode=TYPE;case TYPE:if(flush===Z_BLOCK||flush===Z_TREES){break inf_leave}case TYPEDO:if(state.last){hold>>>=bits&7;bits-=bits&7;state.mode=CHECK;break}while(bits<3){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}state.last=hold&1;hold>>>=1;bits-=1;switch(hold&3){case 0:state.mode=STORED;break;case 1:fixedtables(state);state.mode=LEN_;if(flush===Z_TREES){hold>>>=2;bits-=2;break inf_leave}break;case 2:state.mode=TABLE;break;case 3:strm.msg="invalid block type";state.mode=BAD}hold>>>=2;bits-=2;break;case STORED:hold>>>=bits&7;bits-=bits&7;while(bits<32){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}if((hold&65535)!==(hold>>>16^65535)){strm.msg="invalid stored block lengths";state.mode=BAD;break}state.length=hold&65535;hold=0;bits=0;state.mode=COPY_;if(flush===Z_TREES){break inf_leave}case COPY_:state.mode=COPY;case COPY:copy=state.length;if(copy){if(copy>have){copy=have}if(copy>left){copy=left}if(copy===0){break inf_leave}utils.arraySet(output,input,next,copy,put);have-=copy;next+=copy;left-=copy;put+=copy;state.length-=copy;break}state.mode=TYPE;break;case TABLE:while(bits<14){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}state.nlen=(hold&31)+257;hold>>>=5;bits-=5;state.ndist=(hold&31)+1;hold>>>=5;bits-=5;state.ncode=(hold&15)+4;hold>>>=4;bits-=4;if(state.nlen>286||state.ndist>30){strm.msg="too many length or distance symbols";state.mode=BAD;break}state.have=0;state.mode=LENLENS;case LENLENS:while(state.have<state.ncode){while(bits<3){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}state.lens[order[state.have++]]=hold&7;hold>>>=3;bits-=3}while(state.have<19){state.lens[order[state.have++]]=0}state.lencode=state.lendyn;state.lenbits=7;opts={bits:state.lenbits};ret=inflate_table(CODES,state.lens,0,19,state.lencode,0,state.work,opts);state.lenbits=opts.bits;if(ret){strm.msg="invalid code lengths set";state.mode=BAD;break}state.have=0;state.mode=CODELENS;case CODELENS:while(state.have<state.nlen+state.ndist){for(;;){here=state.lencode[hold&(1<<state.lenbits)-1];here_bits=here>>>24;here_op=here>>>16&255;here_val=here&65535;if(here_bits<=bits){break}if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}if(here_val<16){hold>>>=here_bits;bits-=here_bits;state.lens[state.have++]=here_val}else{if(here_val===16){n=here_bits+2;while(bits<n){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}hold>>>=here_bits;bits-=here_bits;if(state.have===0){strm.msg="invalid bit length repeat";state.mode=BAD;break}len=state.lens[state.have-1];copy=3+(hold&3);hold>>>=2;bits-=2}else if(here_val===17){n=here_bits+3;while(bits<n){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}hold>>>=here_bits;bits-=here_bits;len=0;copy=3+(hold&7);hold>>>=3;bits-=3}else{n=here_bits+7;while(bits<n){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}hold>>>=here_bits;bits-=here_bits;len=0;copy=11+(hold&127);hold>>>=7;bits-=7}if(state.have+copy>state.nlen+state.ndist){strm.msg="invalid bit length repeat";state.mode=BAD;break}while(copy--){state.lens[state.have++]=len}}}if(state.mode===BAD){break}if(state.lens[256]===0){strm.msg="invalid code -- missing end-of-block";state.mode=BAD;break}state.lenbits=9;opts={bits:state.lenbits};ret=inflate_table(LENS,state.lens,0,state.nlen,state.lencode,0,state.work,opts);state.lenbits=opts.bits;if(ret){strm.msg="invalid literal/lengths set";state.mode=BAD;break}state.distbits=6;state.distcode=state.distdyn;opts={bits:state.distbits};ret=inflate_table(DISTS,state.lens,state.nlen,state.ndist,state.distcode,0,state.work,opts);state.distbits=opts.bits;if(ret){strm.msg="invalid distances set";state.mode=BAD;break}state.mode=LEN_;if(flush===Z_TREES){break inf_leave}case LEN_:state.mode=LEN;case LEN:if(have>=6&&left>=258){strm.next_out=put;strm.avail_out=left;strm.next_in=next;strm.avail_in=have;state.hold=hold;state.bits=bits;inflate_fast(strm,_out);put=strm.next_out;output=strm.output;left=strm.avail_out;next=strm.next_in;input=strm.input;have=strm.avail_in;hold=state.hold;bits=state.bits;if(state.mode===TYPE){state.back=-1}break}state.back=0;for(;;){here=state.lencode[hold&(1<<state.lenbits)-1];here_bits=here>>>24;here_op=here>>>16&255;here_val=here&65535;if(here_bits<=bits){break}if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}if(here_op&&(here_op&240)===0){last_bits=here_bits;last_op=here_op;last_val=here_val;for(;;){here=state.lencode[last_val+((hold&(1<<last_bits+last_op)-1)>>last_bits)];here_bits=here>>>24;here_op=here>>>16&255;here_val=here&65535;if(last_bits+here_bits<=bits){break}if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}hold>>>=last_bits;bits-=last_bits;state.back+=last_bits}hold>>>=here_bits;bits-=here_bits;state.back+=here_bits;state.length=here_val;if(here_op===0){state.mode=LIT;break}if(here_op&32){state.back=-1;state.mode=TYPE;break}if(here_op&64){strm.msg="invalid literal/length code";state.mode=BAD;break}state.extra=here_op&15;state.mode=LENEXT;case LENEXT:if(state.extra){n=state.extra;while(bits<n){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}state.length+=hold&(1<<state.extra)-1;hold>>>=state.extra;bits-=state.extra;state.back+=state.extra}state.was=state.length;state.mode=DIST;case DIST:for(;;){here=state.distcode[hold&(1<<state.distbits)-1];here_bits=here>>>24;here_op=here>>>16&255;here_val=here&65535;if(here_bits<=bits){break}if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}if((here_op&240)===0){last_bits=here_bits;last_op=here_op;last_val=here_val;for(;;){here=state.distcode[last_val+((hold&(1<<last_bits+last_op)-1)>>last_bits)];here_bits=here>>>24;here_op=here>>>16&255;here_val=here&65535;if(last_bits+here_bits<=bits){break}if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}hold>>>=last_bits;bits-=last_bits;state.back+=last_bits}hold>>>=here_bits;bits-=here_bits;state.back+=here_bits;if(here_op&64){strm.msg="invalid distance code";state.mode=BAD;break}state.offset=here_val;state.extra=here_op&15;state.mode=DISTEXT;case DISTEXT:if(state.extra){n=state.extra;while(bits<n){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}state.offset+=hold&(1<<state.extra)-1;hold>>>=state.extra;bits-=state.extra;state.back+=state.extra}if(state.offset>state.dmax){strm.msg="invalid distance too far back";state.mode=BAD;break}state.mode=MATCH;case MATCH:if(left===0){break inf_leave}copy=_out-left;if(state.offset>copy){copy=state.offset-copy;if(copy>state.whave){if(state.sane){strm.msg="invalid distance too far back";state.mode=BAD;break}}if(copy>state.wnext){copy-=state.wnext;from=state.wsize-copy}else{from=state.wnext-copy}if(copy>state.length){copy=state.length}from_source=state.window}else{from_source=output;from=put-state.offset;copy=state.length}if(copy>left){copy=left}left-=copy;state.length-=copy;do{output[put++]=from_source[from++]}while(--copy);if(state.length===0){state.mode=LEN}break;case LIT:if(left===0){break inf_leave}output[put++]=state.length;left--;state.mode=LEN;break;case CHECK:if(state.wrap){while(bits<32){if(have===0){break inf_leave}have--;hold|=input[next++]<<bits;bits+=8}_out-=left;strm.total_out+=_out;state.total+=_out;if(_out){strm.adler=state.check=state.flags?crc32(state.check,output,_out,put-_out):adler32(state.check,output,_out,put-_out)}_out=left;if((state.flags?hold:ZSWAP32(hold))!==state.check){strm.msg="incorrect data check";state.mode=BAD;break}hold=0;bits=0}state.mode=LENGTH;case LENGTH:if(state.wrap&&state.flags){while(bits<32){if(have===0){break inf_leave}have--;hold+=input[next++]<<bits;bits+=8}if(hold!==(state.total&4294967295)){strm.msg="incorrect length check";state.mode=BAD;break}hold=0;bits=0}state.mode=DONE;case DONE:ret=Z_STREAM_END;break inf_leave;case BAD:ret=Z_DATA_ERROR;break inf_leave;case MEM:return Z_MEM_ERROR;case SYNC:default:return Z_STREAM_ERROR}}strm.next_out=put;strm.avail_out=left;strm.next_in=next;strm.avail_in=have;state.hold=hold;state.bits=bits;if(state.wsize||_out!==strm.avail_out&&state.mode<BAD&&(state.mode<CHECK||flush!==Z_FINISH)){if(updatewindow(strm,strm.output,strm.next_out,_out-strm.avail_out)){state.mode=MEM;return Z_MEM_ERROR}}_in-=strm.avail_in;_out-=strm.avail_out;strm.total_in+=_in;strm.total_out+=_out;state.total+=_out;if(state.wrap&&_out){strm.adler=state.check=state.flags?crc32(state.check,output,_out,strm.next_out-_out):adler32(state.check,output,_out,strm.next_out-_out)}strm.data_type=state.bits+(state.last?64:0)+(state.mode===TYPE?128:0)+(state.mode===LEN_||state.mode===COPY_?256:0);if((_in===0&&_out===0||flush===Z_FINISH)&&ret===Z_OK){ret=Z_BUF_ERROR}return ret}function inflateEnd(strm){if(!strm||!strm.state){return Z_STREAM_ERROR}var state=strm.state;if(state.window){state.window=null}strm.state=null;return Z_OK}function inflateGetHeader(strm,head){var state;if(!strm||!strm.state){return Z_STREAM_ERROR}state=strm.state;if((state.wrap&2)===0){return Z_STREAM_ERROR}state.head=head;head.done=false;return Z_OK}exports.inflateReset=inflateReset;exports.inflateReset2=inflateReset2;exports.inflateResetKeep=inflateResetKeep;exports.inflateInit=inflateInit;exports.inflateInit2=inflateInit2;exports.inflate=inflate;exports.inflateEnd=inflateEnd;exports.inflateGetHeader=inflateGetHeader;
exports.inflateInfo="pako inflate (from Nodeca project)"},{"../utils/common":27,"./adler32":29,"./crc32":31,"./inffast":34,"./inftrees":36}],36:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("../utils/common");var MAXBITS=15;var ENOUGH_LENS=852;var ENOUGH_DISTS=592;var CODES=0;var LENS=1;var DISTS=2;var lbase=[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,0,0];var lext=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78];var dbase=[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,0,0];var dext=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];module.exports=function inflate_table(type,lens,lens_index,codes,table,table_index,work,opts){var bits=opts.bits;var len=0;var sym=0;var min=0,max=0;var root=0;var curr=0;var drop=0;var left=0;var used=0;var huff=0;var incr;var fill;var low;var mask;var next;var base=null;var base_index=0;var end;var count=new utils.Buf16(MAXBITS+1);var offs=new utils.Buf16(MAXBITS+1);var extra=null;var extra_index=0;var here_bits,here_op,here_val;for(len=0;len<=MAXBITS;len++){count[len]=0}for(sym=0;sym<codes;sym++){count[lens[lens_index+sym]]++}root=bits;for(max=MAXBITS;max>=1;max--){if(count[max]!==0){break}}if(root>max){root=max}if(max===0){table[table_index++]=1<<24|64<<16|0;table[table_index++]=1<<24|64<<16|0;opts.bits=1;return 0}for(min=1;min<max;min++){if(count[min]!==0){break}}if(root<min){root=min}left=1;for(len=1;len<=MAXBITS;len++){left<<=1;left-=count[len];if(left<0){return-1}}if(left>0&&(type===CODES||max!==1)){return-1}offs[1]=0;for(len=1;len<MAXBITS;len++){offs[len+1]=offs[len]+count[len]}for(sym=0;sym<codes;sym++){if(lens[lens_index+sym]!==0){work[offs[lens[lens_index+sym]]++]=sym}}if(type===CODES){base=extra=work;end=19}else if(type===LENS){base=lbase;base_index-=257;extra=lext;extra_index-=257;end=256}else{base=dbase;extra=dext;end=-1}huff=0;sym=0;len=min;next=table_index;curr=root;drop=0;low=-1;used=1<<root;mask=used-1;if(type===LENS&&used>ENOUGH_LENS||type===DISTS&&used>ENOUGH_DISTS){return 1}var i=0;for(;;){i++;here_bits=len-drop;if(work[sym]<end){here_op=0;here_val=work[sym]}else if(work[sym]>end){here_op=extra[extra_index+work[sym]];here_val=base[base_index+work[sym]]}else{here_op=32+64;here_val=0}incr=1<<len-drop;fill=1<<curr;min=fill;do{fill-=incr;table[next+(huff>>drop)+fill]=here_bits<<24|here_op<<16|here_val|0}while(fill!==0);incr=1<<len-1;while(huff&incr){incr>>=1}if(incr!==0){huff&=incr-1;huff+=incr}else{huff=0}sym++;if(--count[len]===0){if(len===max){break}len=lens[lens_index+work[sym]]}if(len>root&&(huff&mask)!==low){if(drop===0){drop=root}next+=min;curr=len-drop;left=1<<curr;while(curr+drop<max){left-=count[curr+drop];if(left<=0){break}curr++;left<<=1}used+=1<<curr;if(type===LENS&&used>ENOUGH_LENS||type===DISTS&&used>ENOUGH_DISTS){return 1}low=huff&mask;table[low]=root<<24|curr<<16|next-table_index|0}}if(huff!==0){table[next+huff]=len-drop<<24|64<<16|0}opts.bits=root;return 0}},{"../utils/common":27}],37:[function(_dereq_,module,exports){"use strict";module.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],38:[function(_dereq_,module,exports){"use strict";var utils=_dereq_("../utils/common");var Z_FIXED=4;var Z_BINARY=0;var Z_TEXT=1;var Z_UNKNOWN=2;function zero(buf){var len=buf.length;while(--len>=0){buf[len]=0}}var STORED_BLOCK=0;var STATIC_TREES=1;var DYN_TREES=2;var MIN_MATCH=3;var MAX_MATCH=258;var LENGTH_CODES=29;var LITERALS=256;var L_CODES=LITERALS+1+LENGTH_CODES;var D_CODES=30;var BL_CODES=19;var HEAP_SIZE=2*L_CODES+1;var MAX_BITS=15;var Buf_size=16;var MAX_BL_BITS=7;var END_BLOCK=256;var REP_3_6=16;var REPZ_3_10=17;var REPZ_11_138=18;var extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0];var extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];var extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7];var bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];var DIST_CODE_LEN=512;var static_ltree=new Array((L_CODES+2)*2);zero(static_ltree);var static_dtree=new Array(D_CODES*2);zero(static_dtree);var _dist_code=new Array(DIST_CODE_LEN);zero(_dist_code);var _length_code=new Array(MAX_MATCH-MIN_MATCH+1);zero(_length_code);var base_length=new Array(LENGTH_CODES);zero(base_length);var base_dist=new Array(D_CODES);zero(base_dist);var StaticTreeDesc=function(static_tree,extra_bits,extra_base,elems,max_length){this.static_tree=static_tree;this.extra_bits=extra_bits;this.extra_base=extra_base;this.elems=elems;this.max_length=max_length;this.has_stree=static_tree&&static_tree.length};var static_l_desc;var static_d_desc;var static_bl_desc;var TreeDesc=function(dyn_tree,stat_desc){this.dyn_tree=dyn_tree;this.max_code=0;this.stat_desc=stat_desc};function d_code(dist){return dist<256?_dist_code[dist]:_dist_code[256+(dist>>>7)]}function put_short(s,w){s.pending_buf[s.pending++]=w&255;s.pending_buf[s.pending++]=w>>>8&255}function send_bits(s,value,length){if(s.bi_valid>Buf_size-length){s.bi_buf|=value<<s.bi_valid&65535;put_short(s,s.bi_buf);s.bi_buf=value>>Buf_size-s.bi_valid;s.bi_valid+=length-Buf_size}else{s.bi_buf|=value<<s.bi_valid&65535;s.bi_valid+=length}}function send_code(s,c,tree){send_bits(s,tree[c*2],tree[c*2+1])}function bi_reverse(code,len){var res=0;do{res|=code&1;code>>>=1;res<<=1}while(--len>0);return res>>>1}function bi_flush(s){if(s.bi_valid===16){put_short(s,s.bi_buf);s.bi_buf=0;s.bi_valid=0}else if(s.bi_valid>=8){s.pending_buf[s.pending++]=s.bi_buf&255;s.bi_buf>>=8;s.bi_valid-=8}}function gen_bitlen(s,desc){var tree=desc.dyn_tree;var max_code=desc.max_code;var stree=desc.stat_desc.static_tree;var has_stree=desc.stat_desc.has_stree;var extra=desc.stat_desc.extra_bits;var base=desc.stat_desc.extra_base;var max_length=desc.stat_desc.max_length;var h;var n,m;var bits;var xbits;var f;var overflow=0;for(bits=0;bits<=MAX_BITS;bits++){s.bl_count[bits]=0}tree[s.heap[s.heap_max]*2+1]=0;for(h=s.heap_max+1;h<HEAP_SIZE;h++){n=s.heap[h];bits=tree[tree[n*2+1]*2+1]+1;if(bits>max_length){bits=max_length;overflow++}tree[n*2+1]=bits;if(n>max_code){continue}s.bl_count[bits]++;xbits=0;if(n>=base){xbits=extra[n-base]}f=tree[n*2];s.opt_len+=f*(bits+xbits);if(has_stree){s.static_len+=f*(stree[n*2+1]+xbits)}}if(overflow===0){return}do{bits=max_length-1;while(s.bl_count[bits]===0){bits--}s.bl_count[bits]--;s.bl_count[bits+1]+=2;s.bl_count[max_length]--;overflow-=2}while(overflow>0);for(bits=max_length;bits!==0;bits--){n=s.bl_count[bits];while(n!==0){m=s.heap[--h];if(m>max_code){continue}if(tree[m*2+1]!==bits){s.opt_len+=(bits-tree[m*2+1])*tree[m*2];tree[m*2+1]=bits}n--}}}function gen_codes(tree,max_code,bl_count){var next_code=new Array(MAX_BITS+1);var code=0;var bits;var n;for(bits=1;bits<=MAX_BITS;bits++){next_code[bits]=code=code+bl_count[bits-1]<<1}for(n=0;n<=max_code;n++){var len=tree[n*2+1];if(len===0){continue}tree[n*2]=bi_reverse(next_code[len]++,len)}}function tr_static_init(){var n;var bits;var length;var code;var dist;var bl_count=new Array(MAX_BITS+1);length=0;for(code=0;code<LENGTH_CODES-1;code++){base_length[code]=length;for(n=0;n<1<<extra_lbits[code];n++){_length_code[length++]=code}}_length_code[length-1]=code;dist=0;for(code=0;code<16;code++){base_dist[code]=dist;for(n=0;n<1<<extra_dbits[code];n++){_dist_code[dist++]=code}}dist>>=7;for(;code<D_CODES;code++){base_dist[code]=dist<<7;for(n=0;n<1<<extra_dbits[code]-7;n++){_dist_code[256+dist++]=code}}for(bits=0;bits<=MAX_BITS;bits++){bl_count[bits]=0}n=0;while(n<=143){static_ltree[n*2+1]=8;n++;bl_count[8]++}while(n<=255){static_ltree[n*2+1]=9;n++;bl_count[9]++}while(n<=279){static_ltree[n*2+1]=7;n++;bl_count[7]++}while(n<=287){static_ltree[n*2+1]=8;n++;bl_count[8]++}gen_codes(static_ltree,L_CODES+1,bl_count);for(n=0;n<D_CODES;n++){static_dtree[n*2+1]=5;static_dtree[n*2]=bi_reverse(n,5)}static_l_desc=new StaticTreeDesc(static_ltree,extra_lbits,LITERALS+1,L_CODES,MAX_BITS);static_d_desc=new StaticTreeDesc(static_dtree,extra_dbits,0,D_CODES,MAX_BITS);static_bl_desc=new StaticTreeDesc(new Array(0),extra_blbits,0,BL_CODES,MAX_BL_BITS)}function init_block(s){var n;for(n=0;n<L_CODES;n++){s.dyn_ltree[n*2]=0}for(n=0;n<D_CODES;n++){s.dyn_dtree[n*2]=0}for(n=0;n<BL_CODES;n++){s.bl_tree[n*2]=0}s.dyn_ltree[END_BLOCK*2]=1;s.opt_len=s.static_len=0;s.last_lit=s.matches=0}function bi_windup(s){if(s.bi_valid>8){put_short(s,s.bi_buf)}else if(s.bi_valid>0){s.pending_buf[s.pending++]=s.bi_buf}s.bi_buf=0;s.bi_valid=0}function copy_block(s,buf,len,header){bi_windup(s);if(header){put_short(s,len);put_short(s,~len)}utils.arraySet(s.pending_buf,s.window,buf,len,s.pending);s.pending+=len}function smaller(tree,n,m,depth){var _n2=n*2;var _m2=m*2;return tree[_n2]<tree[_m2]||tree[_n2]===tree[_m2]&&depth[n]<=depth[m]}function pqdownheap(s,tree,k){var v=s.heap[k];var j=k<<1;while(j<=s.heap_len){if(j<s.heap_len&&smaller(tree,s.heap[j+1],s.heap[j],s.depth)){j++}if(smaller(tree,v,s.heap[j],s.depth)){break}s.heap[k]=s.heap[j];k=j;j<<=1}s.heap[k]=v}function compress_block(s,ltree,dtree){var dist;var lc;var lx=0;var code;var extra;if(s.last_lit!==0){do{dist=s.pending_buf[s.d_buf+lx*2]<<8|s.pending_buf[s.d_buf+lx*2+1];lc=s.pending_buf[s.l_buf+lx];lx++;if(dist===0){send_code(s,lc,ltree)}else{code=_length_code[lc];send_code(s,code+LITERALS+1,ltree);extra=extra_lbits[code];if(extra!==0){lc-=base_length[code];send_bits(s,lc,extra)}dist--;code=d_code(dist);send_code(s,code,dtree);extra=extra_dbits[code];if(extra!==0){dist-=base_dist[code];send_bits(s,dist,extra)}}}while(lx<s.last_lit)}send_code(s,END_BLOCK,ltree)}function build_tree(s,desc){var tree=desc.dyn_tree;var stree=desc.stat_desc.static_tree;var has_stree=desc.stat_desc.has_stree;var elems=desc.stat_desc.elems;var n,m;var max_code=-1;var node;s.heap_len=0;s.heap_max=HEAP_SIZE;for(n=0;n<elems;n++){if(tree[n*2]!==0){s.heap[++s.heap_len]=max_code=n;s.depth[n]=0}else{tree[n*2+1]=0}}while(s.heap_len<2){node=s.heap[++s.heap_len]=max_code<2?++max_code:0;tree[node*2]=1;s.depth[node]=0;s.opt_len--;if(has_stree){s.static_len-=stree[node*2+1]}}desc.max_code=max_code;for(n=s.heap_len>>1;n>=1;n--){pqdownheap(s,tree,n)}node=elems;do{n=s.heap[1];s.heap[1]=s.heap[s.heap_len--];pqdownheap(s,tree,1);m=s.heap[1];s.heap[--s.heap_max]=n;s.heap[--s.heap_max]=m;tree[node*2]=tree[n*2]+tree[m*2];s.depth[node]=(s.depth[n]>=s.depth[m]?s.depth[n]:s.depth[m])+1;tree[n*2+1]=tree[m*2+1]=node;s.heap[1]=node++;pqdownheap(s,tree,1)}while(s.heap_len>=2);s.heap[--s.heap_max]=s.heap[1];gen_bitlen(s,desc);gen_codes(tree,max_code,s.bl_count)}function scan_tree(s,tree,max_code){var n;var prevlen=-1;var curlen;var nextlen=tree[0*2+1];var count=0;var max_count=7;var min_count=4;if(nextlen===0){max_count=138;min_count=3}tree[(max_code+1)*2+1]=65535;for(n=0;n<=max_code;n++){curlen=nextlen;nextlen=tree[(n+1)*2+1];if(++count<max_count&&curlen===nextlen){continue}else if(count<min_count){s.bl_tree[curlen*2]+=count}else if(curlen!==0){if(curlen!==prevlen){s.bl_tree[curlen*2]++}s.bl_tree[REP_3_6*2]++}else if(count<=10){s.bl_tree[REPZ_3_10*2]++}else{s.bl_tree[REPZ_11_138*2]++}count=0;prevlen=curlen;if(nextlen===0){max_count=138;min_count=3}else if(curlen===nextlen){max_count=6;min_count=3}else{max_count=7;min_count=4}}}function send_tree(s,tree,max_code){var n;var prevlen=-1;var curlen;var nextlen=tree[0*2+1];var count=0;var max_count=7;var min_count=4;if(nextlen===0){max_count=138;min_count=3}for(n=0;n<=max_code;n++){curlen=nextlen;nextlen=tree[(n+1)*2+1];if(++count<max_count&&curlen===nextlen){continue}else if(count<min_count){do{send_code(s,curlen,s.bl_tree)}while(--count!==0)}else if(curlen!==0){if(curlen!==prevlen){send_code(s,curlen,s.bl_tree);count--}send_code(s,REP_3_6,s.bl_tree);send_bits(s,count-3,2)}else if(count<=10){send_code(s,REPZ_3_10,s.bl_tree);send_bits(s,count-3,3)}else{send_code(s,REPZ_11_138,s.bl_tree);send_bits(s,count-11,7)}count=0;prevlen=curlen;if(nextlen===0){max_count=138;min_count=3}else if(curlen===nextlen){max_count=6;min_count=3}else{max_count=7;min_count=4}}}function build_bl_tree(s){var max_blindex;scan_tree(s,s.dyn_ltree,s.l_desc.max_code);scan_tree(s,s.dyn_dtree,s.d_desc.max_code);build_tree(s,s.bl_desc);for(max_blindex=BL_CODES-1;max_blindex>=3;max_blindex--){if(s.bl_tree[bl_order[max_blindex]*2+1]!==0){break}}s.opt_len+=3*(max_blindex+1)+5+5+4;return max_blindex}function send_all_trees(s,lcodes,dcodes,blcodes){var rank;send_bits(s,lcodes-257,5);send_bits(s,dcodes-1,5);send_bits(s,blcodes-4,4);for(rank=0;rank<blcodes;rank++){send_bits(s,s.bl_tree[bl_order[rank]*2+1],3)}send_tree(s,s.dyn_ltree,lcodes-1);send_tree(s,s.dyn_dtree,dcodes-1)}function detect_data_type(s){var black_mask=4093624447;var n;for(n=0;n<=31;n++,black_mask>>>=1){if(black_mask&1&&s.dyn_ltree[n*2]!==0){return Z_BINARY}}if(s.dyn_ltree[9*2]!==0||s.dyn_ltree[10*2]!==0||s.dyn_ltree[13*2]!==0){return Z_TEXT}for(n=32;n<LITERALS;n++){if(s.dyn_ltree[n*2]!==0){return Z_TEXT}}return Z_BINARY}var static_init_done=false;function _tr_init(s){if(!static_init_done){tr_static_init();static_init_done=true}s.l_desc=new TreeDesc(s.dyn_ltree,static_l_desc);s.d_desc=new TreeDesc(s.dyn_dtree,static_d_desc);s.bl_desc=new TreeDesc(s.bl_tree,static_bl_desc);s.bi_buf=0;s.bi_valid=0;init_block(s)}function _tr_stored_block(s,buf,stored_len,last){send_bits(s,(STORED_BLOCK<<1)+(last?1:0),3);copy_block(s,buf,stored_len,true)}function _tr_align(s){send_bits(s,STATIC_TREES<<1,3);send_code(s,END_BLOCK,static_ltree);bi_flush(s)}function _tr_flush_block(s,buf,stored_len,last){var opt_lenb,static_lenb;var max_blindex=0;if(s.level>0){if(s.strm.data_type===Z_UNKNOWN){s.strm.data_type=detect_data_type(s)}build_tree(s,s.l_desc);build_tree(s,s.d_desc);max_blindex=build_bl_tree(s);opt_lenb=s.opt_len+3+7>>>3;static_lenb=s.static_len+3+7>>>3;if(static_lenb<=opt_lenb){opt_lenb=static_lenb}}else{opt_lenb=static_lenb=stored_len+5}if(stored_len+4<=opt_lenb&&buf!==-1){_tr_stored_block(s,buf,stored_len,last)}else if(s.strategy===Z_FIXED||static_lenb===opt_lenb){send_bits(s,(STATIC_TREES<<1)+(last?1:0),3);compress_block(s,static_ltree,static_dtree)}else{send_bits(s,(DYN_TREES<<1)+(last?1:0),3);send_all_trees(s,s.l_desc.max_code+1,s.d_desc.max_code+1,max_blindex+1);compress_block(s,s.dyn_ltree,s.dyn_dtree)}init_block(s);if(last){bi_windup(s)}}function _tr_tally(s,dist,lc){s.pending_buf[s.d_buf+s.last_lit*2]=dist>>>8&255;s.pending_buf[s.d_buf+s.last_lit*2+1]=dist&255;s.pending_buf[s.l_buf+s.last_lit]=lc&255;s.last_lit++;if(dist===0){s.dyn_ltree[lc*2]++}else{s.matches++;dist--;s.dyn_ltree[(_length_code[lc]+LITERALS+1)*2]++;s.dyn_dtree[d_code(dist)*2]++}return s.last_lit===s.lit_bufsize-1}exports._tr_init=_tr_init;exports._tr_stored_block=_tr_stored_block;exports._tr_flush_block=_tr_flush_block;exports._tr_tally=_tr_tally;exports._tr_align=_tr_align},{"../utils/common":27}],39:[function(_dereq_,module,exports){"use strict";function ZStream(){this.input=null;this.next_in=0;this.avail_in=0;this.total_in=0;this.output=null;this.next_out=0;this.avail_out=0;this.total_out=0;this.msg="";this.state=null;this.data_type=2;this.adler=0}module.exports=ZStream},{}]},{},[9])(9)});var cptable={version:"1.3.7"};cptable[874]=function(){var d="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€����…�����������‘’“”•–—�������� กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู����฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛����",D=[],e={};for(var i=0;i!=d.length;++i){if(d.charCodeAt(i)!==65533)e[d[i]]=i;D[i]=d.charAt(i)}return{enc:e,dec:D}}();cptable[932]=function(){var d=[],e={},D=[],j;D[0]="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~���������������������������������。「」、・ヲァィゥェォャュョッーアイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワン゙゚��������������������������������".split("");for(j=0;j!=D[0].length;++j)if(D[0][j].charCodeAt(0)!==65533){e[D[0][j]]=0+j;d[0+j]=D[0][j]}D[129]="���������������������������������������������������������������� 、。,.・:;?!゛゜´`¨^ ̄_ヽヾゝゞ〃仝々〆〇ー―‐/\~∥|…‥‘’“”()〔〕[]{}〈〉《》「」『』【】+-±×�÷=≠<>≦≧∞∴♂♀°′″℃¥$¢£%#&*@§☆★○●◎◇◆□■△▲▽▼※〒→←↑↓〓�����������∈∋⊆⊇⊂⊃∪∩��������∧∨¬⇒⇔∀∃�����������∠⊥⌒∂∇≡≒≪≫√∽∝∵∫∬�������ʼn♯♭♪†‡¶����◯���".split("");for(j=0;j!=D[129].length;++j)if(D[129][j].charCodeAt(0)!==65533){e[D[129][j]]=33024+j;d[33024+j]=D[129][j]}D[130]="�������������������������������������������������������������������������������0123456789�������ABCDEFGHIJKLMNOPQRSTUVWXYZ�������abcdefghijklmnopqrstuvwxyz����ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん��������������".split("");for(j=0;j!=D[130].length;++j)if(D[130][j].charCodeAt(0)!==65533){e[D[130][j]]=33280+j;d[33280+j]=D[130][j]}D[131]="����������������������������������������������������������������ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミ�ムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ��������ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ��������αβγδεζηθικλμνξοπρστυφχψω�����������������������������������������".split("");for(j=0;j!=D[131].length;++j)if(D[131][j].charCodeAt(0)!==65533){e[D[131][j]]=33536+j;d[33536+j]=D[131][j]}D[132]="����������������������������������������������������������������АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ���������������абвгдеёжзийклмн�опрстуфхцчшщъыьэюя�������������─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂�����������������������������������������������������������������".split("");for(j=0;j!=D[132].length;++j)if(D[132][j].charCodeAt(0)!==65533){e[D[132][j]]=33792+j;d[33792+j]=D[132][j]}D[135]="����������������������������������������������������������������①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ�㍉㌔㌢㍍㌘㌧㌃㌶㍑㍗㌍㌦㌣㌫㍊㌻㎜㎝㎞㎎㎏㏄㎡��������㍻�〝〟№㏍℡㊤㊥㊦㊧㊨㈱㈲㈹㍾㍽㍼≒≡∫∮∑√⊥∠∟⊿∵∩∪���������������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[135].length;++j)if(D[135][j].charCodeAt(0)!==65533){e[D[135][j]]=34560+j;d[34560+j]=D[135][j]}D[136]="���������������������������������������������������������������������������������������������������������������������������������������������������������������亜唖娃阿哀愛挨姶逢葵茜穐悪握渥旭葦芦鯵梓圧斡扱宛姐虻飴絢綾鮎或粟袷安庵按暗案闇鞍杏以伊位依偉囲夷委威尉惟意慰易椅為畏異移維緯胃萎衣謂違遺医井亥域育郁磯一壱溢逸稲茨芋鰯允印咽員因姻引飲淫胤蔭���".split("");for(j=0;j!=D[136].length;++j)if(D[136][j].charCodeAt(0)!==65533){e[D[136][j]]=34816+j;d[34816+j]=D[136][j]}D[137]="����������������������������������������������������������������院陰隠韻吋右宇烏羽迂雨卯鵜窺丑碓臼渦嘘唄欝蔚鰻姥厩浦瓜閏噂云運雲荏餌叡営嬰影映曳栄永泳洩瑛盈穎頴英衛詠鋭液疫益駅悦謁越閲榎厭円�園堰奄宴延怨掩援沿演炎焔煙燕猿縁艶苑薗遠鉛鴛塩於汚甥凹央奥往応押旺横欧殴王翁襖鴬鴎黄岡沖荻億屋憶臆桶牡乙俺卸恩温穏音下化仮何伽価佳加可嘉夏嫁家寡科暇果架歌河火珂禍禾稼箇花苛茄荷華菓蝦課嘩貨迦過霞蚊俄峨我牙画臥芽蛾賀雅餓駕介会解回塊壊廻快怪悔恢懐戒拐改���".split("");for(j=0;j!=D[137].length;++j)if(D[137][j].charCodeAt(0)!==65533){e[D[137][j]]=35072+j;d[35072+j]=D[137][j]}D[138]="����������������������������������������������������������������魁晦械海灰界皆絵芥蟹開階貝凱劾外咳害崖慨概涯碍蓋街該鎧骸浬馨蛙垣柿蛎鈎劃嚇各廓拡撹格核殻獲確穫覚角赫較郭閣隔革学岳楽額顎掛笠樫�橿梶鰍潟割喝恰括活渇滑葛褐轄且鰹叶椛樺鞄株兜竃蒲釜鎌噛鴨栢茅萱粥刈苅瓦乾侃冠寒刊勘勧巻喚堪姦完官寛干幹患感慣憾換敢柑桓棺款歓汗漢澗潅環甘監看竿管簡緩缶翰肝艦莞観諌貫還鑑間閑関陥韓館舘丸含岸巌玩癌眼岩翫贋雁頑顔願企伎危喜器基奇嬉寄岐希幾忌揮机旗既期棋棄���".split("");for(j=0;j!=D[138].length;++j)if(D[138][j].charCodeAt(0)!==65533){e[D[138][j]]=35328+j;d[35328+j]=D[138][j]}D[139]="����������������������������������������������������������������機帰毅気汽畿祈季稀紀徽規記貴起軌輝飢騎鬼亀偽儀妓宜戯技擬欺犠疑祇義蟻誼議掬菊鞠吉吃喫桔橘詰砧杵黍却客脚虐逆丘久仇休及吸宮弓急救�朽求汲泣灸球究窮笈級糾給旧牛去居巨拒拠挙渠虚許距鋸漁禦魚亨享京供侠僑兇競共凶協匡卿叫喬境峡強彊怯恐恭挟教橋況狂狭矯胸脅興蕎郷鏡響饗驚仰凝尭暁業局曲極玉桐粁僅勤均巾錦斤欣欽琴禁禽筋緊芹菌衿襟謹近金吟銀九倶句区狗玖矩苦躯駆駈駒具愚虞喰空偶寓遇隅串櫛釧屑屈���".split("");for(j=0;j!=D[139].length;++j)if(D[139][j].charCodeAt(0)!==65533){e[D[139][j]]=35584+j;d[35584+j]=D[139][j]}D[140]="����������������������������������������������������������������掘窟沓靴轡窪熊隈粂栗繰桑鍬勲君薫訓群軍郡卦袈祁係傾刑兄啓圭珪型契形径恵慶慧憩掲携敬景桂渓畦稽系経継繋罫茎荊蛍計詣警軽頚鶏芸迎鯨�劇戟撃激隙桁傑欠決潔穴結血訣月件倹倦健兼券剣喧圏堅嫌建憲懸拳捲検権牽犬献研硯絹県肩見謙賢軒遣鍵険顕験鹸元原厳幻弦減源玄現絃舷言諺限乎個古呼固姑孤己庫弧戸故枯湖狐糊袴股胡菰虎誇跨鈷雇顧鼓五互伍午呉吾娯後御悟梧檎瑚碁語誤護醐乞鯉交佼侯候倖光公功効勾厚口向���".split("");for(j=0;j!=D[140].length;++j)if(D[140][j].charCodeAt(0)!==65533){e[D[140][j]]=35840+j;d[35840+j]=D[140][j]}D[141]="����������������������������������������������������������������后喉坑垢好孔孝宏工巧巷幸広庚康弘恒慌抗拘控攻昂晃更杭校梗構江洪浩港溝甲皇硬稿糠紅紘絞綱耕考肯肱腔膏航荒行衡講貢購郊酵鉱砿鋼閤降�項香高鴻剛劫号合壕拷濠豪轟麹克刻告国穀酷鵠黒獄漉腰甑忽惚骨狛込此頃今困坤墾婚恨懇昏昆根梱混痕紺艮魂些佐叉唆嵯左差査沙瑳砂詐鎖裟坐座挫債催再最哉塞妻宰彩才採栽歳済災采犀砕砦祭斎細菜裁載際剤在材罪財冴坂阪堺榊肴咲崎埼碕鷺作削咋搾昨朔柵窄策索錯桜鮭笹匙冊刷���".split("");for(j=0;j!=D[141].length;++j)if(D[141][j].charCodeAt(0)!==65533){e[D[141][j]]=36096+j;d[36096+j]=D[141][j]}D[142]="����������������������������������������������������������������察拶撮擦札殺薩雑皐鯖捌錆鮫皿晒三傘参山惨撒散桟燦珊産算纂蚕讃賛酸餐斬暫残仕仔伺使刺司史嗣四士始姉姿子屍市師志思指支孜斯施旨枝止�死氏獅祉私糸紙紫肢脂至視詞詩試誌諮資賜雌飼歯事似侍児字寺慈持時次滋治爾璽痔磁示而耳自蒔辞汐鹿式識鴫竺軸宍雫七叱執失嫉室悉湿漆疾質実蔀篠偲柴芝屡蕊縞舎写射捨赦斜煮社紗者謝車遮蛇邪借勺尺杓灼爵酌釈錫若寂弱惹主取守手朱殊狩珠種腫趣酒首儒受呪寿授樹綬需囚収周���".split("");for(j=0;j!=D[142].length;++j)if(D[142][j].charCodeAt(0)!==65533){e[D[142][j]]=36352+j;d[36352+j]=D[142][j]}D[143]="����������������������������������������������������������������宗就州修愁拾洲秀秋終繍習臭舟蒐衆襲讐蹴輯週酋酬集醜什住充十従戎柔汁渋獣縦重銃叔夙宿淑祝縮粛塾熟出術述俊峻春瞬竣舜駿准循旬楯殉淳�準潤盾純巡遵醇順処初所暑曙渚庶緒署書薯藷諸助叙女序徐恕鋤除傷償勝匠升召哨商唱嘗奨妾娼宵将小少尚庄床廠彰承抄招掌捷昇昌昭晶松梢樟樵沼消渉湘焼焦照症省硝礁祥称章笑粧紹肖菖蒋蕉衝裳訟証詔詳象賞醤鉦鍾鐘障鞘上丈丞乗冗剰城場壌嬢常情擾条杖浄状畳穣蒸譲醸錠嘱埴飾���".split("");for(j=0;j!=D[143].length;++j)if(D[143][j].charCodeAt(0)!==65533){e[D[143][j]]=36608+j;d[36608+j]=D[143][j]}D[144]="����������������������������������������������������������������拭植殖燭織職色触食蝕辱尻伸信侵唇娠寝審心慎振新晋森榛浸深申疹真神秦紳臣芯薪親診身辛進針震人仁刃塵壬尋甚尽腎訊迅陣靭笥諏須酢図厨�逗吹垂帥推水炊睡粋翠衰遂酔錐錘随瑞髄崇嵩数枢趨雛据杉椙菅頗雀裾澄摺寸世瀬畝是凄制勢姓征性成政整星晴棲栖正清牲生盛精聖声製西誠誓請逝醒青静斉税脆隻席惜戚斥昔析石積籍績脊責赤跡蹟碩切拙接摂折設窃節説雪絶舌蝉仙先千占宣専尖川戦扇撰栓栴泉浅洗染潜煎煽旋穿箭線���".split("");for(j=0;j!=D[144].length;++j)if(D[144][j].charCodeAt(0)!==65533){e[D[144][j]]=36864+j;d[36864+j]=D[144][j]}D[145]="����������������������������������������������������������������繊羨腺舛船薦詮賎践選遷銭銑閃鮮前善漸然全禅繕膳糎噌塑岨措曾曽楚狙疏疎礎祖租粗素組蘇訴阻遡鼠僧創双叢倉喪壮奏爽宋層匝惣想捜掃挿掻�操早曹巣槍槽漕燥争痩相窓糟総綜聡草荘葬蒼藻装走送遭鎗霜騒像増憎臓蔵贈造促側則即息捉束測足速俗属賊族続卒袖其揃存孫尊損村遜他多太汰詑唾堕妥惰打柁舵楕陀駄騨体堆対耐岱帯待怠態戴替泰滞胎腿苔袋貸退逮隊黛鯛代台大第醍題鷹滝瀧卓啄宅托択拓沢濯琢託鐸濁諾茸凧蛸只���".split("");for(j=0;j!=D[145].length;++j)if(D[145][j].charCodeAt(0)!==65533){e[D[145][j]]=37120+j;d[37120+j]=D[145][j]}D[146]="����������������������������������������������������������������叩但達辰奪脱巽竪辿棚谷狸鱈樽誰丹単嘆坦担探旦歎淡湛炭短端箪綻耽胆蛋誕鍛団壇弾断暖檀段男談値知地弛恥智池痴稚置致蜘遅馳築畜竹筑蓄�逐秩窒茶嫡着中仲宙忠抽昼柱注虫衷註酎鋳駐樗瀦猪苧著貯丁兆凋喋寵帖帳庁弔張彫徴懲挑暢朝潮牒町眺聴脹腸蝶調諜超跳銚長頂鳥勅捗直朕沈珍賃鎮陳津墜椎槌追鎚痛通塚栂掴槻佃漬柘辻蔦綴鍔椿潰坪壷嬬紬爪吊釣鶴亭低停偵剃貞呈堤定帝底庭廷弟悌抵挺提梯汀碇禎程締艇訂諦蹄逓���".split("");for(j=0;j!=D[146].length;++j)if(D[146][j].charCodeAt(0)!==65533){e[D[146][j]]=37376+j;d[37376+j]=D[146][j]}D[147]="����������������������������������������������������������������邸鄭釘鼎泥摘擢敵滴的笛適鏑溺哲徹撤轍迭鉄典填天展店添纏甜貼転顛点伝殿澱田電兎吐堵塗妬屠徒斗杜渡登菟賭途都鍍砥砺努度土奴怒倒党冬�凍刀唐塔塘套宕島嶋悼投搭東桃梼棟盗淘湯涛灯燈当痘祷等答筒糖統到董蕩藤討謄豆踏逃透鐙陶頭騰闘働動同堂導憧撞洞瞳童胴萄道銅峠鴇匿得徳涜特督禿篤毒独読栃橡凸突椴届鳶苫寅酉瀞噸屯惇敦沌豚遁頓呑曇鈍奈那内乍凪薙謎灘捺鍋楢馴縄畷南楠軟難汝二尼弐迩匂賑肉虹廿日乳入���".split("");for(j=0;j!=D[147].length;++j)if(D[147][j].charCodeAt(0)!==65533){e[D[147][j]]=37632+j;d[37632+j]=D[147][j]}D[148]="����������������������������������������������������������������如尿韮任妊忍認濡禰祢寧葱猫熱年念捻撚燃粘乃廼之埜嚢悩濃納能脳膿農覗蚤巴把播覇杷波派琶破婆罵芭馬俳廃拝排敗杯盃牌背肺輩配倍培媒梅�楳煤狽買売賠陪這蝿秤矧萩伯剥博拍柏泊白箔粕舶薄迫曝漠爆縛莫駁麦函箱硲箸肇筈櫨幡肌畑畠八鉢溌発醗髪伐罰抜筏閥鳩噺塙蛤隼伴判半反叛帆搬斑板氾汎版犯班畔繁般藩販範釆煩頒飯挽晩番盤磐蕃蛮匪卑否妃庇彼悲扉批披斐比泌疲皮碑秘緋罷肥被誹費避非飛樋簸備尾微枇毘琵眉美���".split("");for(j=0;j!=D[148].length;++j)if(D[148][j].charCodeAt(0)!==65533){e[D[148][j]]=37888+j;d[37888+j]=D[148][j]}D[149]="����������������������������������������������������������������鼻柊稗匹疋髭彦膝菱肘弼必畢筆逼桧姫媛紐百謬俵彪標氷漂瓢票表評豹廟描病秒苗錨鋲蒜蛭鰭品彬斌浜瀕貧賓頻敏瓶不付埠夫婦富冨布府怖扶敷�斧普浮父符腐膚芙譜負賦赴阜附侮撫武舞葡蕪部封楓風葺蕗伏副復幅服福腹複覆淵弗払沸仏物鮒分吻噴墳憤扮焚奮粉糞紛雰文聞丙併兵塀幣平弊柄並蔽閉陛米頁僻壁癖碧別瞥蔑箆偏変片篇編辺返遍便勉娩弁鞭保舗鋪圃捕歩甫補輔穂募墓慕戊暮母簿菩倣俸包呆報奉宝峰峯崩庖抱捧放方朋���".split("");for(j=0;j!=D[149].length;++j)if(D[149][j].charCodeAt(0)!==65533){e[D[149][j]]=38144+j;d[38144+j]=D[149][j]}D[150]="����������������������������������������������������������������法泡烹砲縫胞芳萌蓬蜂褒訪豊邦鋒飽鳳鵬乏亡傍剖坊妨帽忘忙房暴望某棒冒紡肪膨謀貌貿鉾防吠頬北僕卜墨撲朴牧睦穆釦勃没殆堀幌奔本翻凡盆�摩磨魔麻埋妹昧枚毎哩槙幕膜枕鮪柾鱒桝亦俣又抹末沫迄侭繭麿万慢満漫蔓味未魅巳箕岬密蜜湊蓑稔脈妙粍民眠務夢無牟矛霧鵡椋婿娘冥名命明盟迷銘鳴姪牝滅免棉綿緬面麺摸模茂妄孟毛猛盲網耗蒙儲木黙目杢勿餅尤戻籾貰問悶紋門匁也冶夜爺耶野弥矢厄役約薬訳躍靖柳薮鑓愉愈油癒���".split("");for(j=0;j!=D[150].length;++j)if(D[150][j].charCodeAt(0)!==65533){e[D[150][j]]=38400+j;d[38400+j]=D[150][j]}D[151]="����������������������������������������������������������������諭輸唯佑優勇友宥幽悠憂揖有柚湧涌猶猷由祐裕誘遊邑郵雄融夕予余与誉輿預傭幼妖容庸揚揺擁曜楊様洋溶熔用窯羊耀葉蓉要謡踊遥陽養慾抑欲�沃浴翌翼淀羅螺裸来莱頼雷洛絡落酪乱卵嵐欄濫藍蘭覧利吏履李梨理璃痢裏裡里離陸律率立葎掠略劉流溜琉留硫粒隆竜龍侶慮旅虜了亮僚両凌寮料梁涼猟療瞭稜糧良諒遼量陵領力緑倫厘林淋燐琳臨輪隣鱗麟瑠塁涙累類令伶例冷励嶺怜玲礼苓鈴隷零霊麗齢暦歴列劣烈裂廉恋憐漣煉簾練聯���".split("");for(j=0;j!=D[151].length;++j)if(D[151][j].charCodeAt(0)!==65533){e[D[151][j]]=38656+j;d[38656+j]=D[151][j]}D[152]="����������������������������������������������������������������蓮連錬呂魯櫓炉賂路露労婁廊弄朗楼榔浪漏牢狼篭老聾蝋郎六麓禄肋録論倭和話歪賄脇惑枠鷲亙亘鰐詫藁蕨椀湾碗腕��������������������������������������������弌丐丕个丱丶丼丿乂乖乘亂亅豫亊舒弍于亞亟亠亢亰亳亶从仍仄仆仂仗仞仭仟价伉佚估佛佝佗佇佶侈侏侘佻佩佰侑佯來侖儘俔俟俎俘俛俑俚俐俤俥倚倨倔倪倥倅伜俶倡倩倬俾俯們倆偃假會偕偐偈做偖偬偸傀傚傅傴傲���".split("");for(j=0;j!=D[152].length;++j)if(D[152][j].charCodeAt(0)!==65533){e[D[152][j]]=38912+j;d[38912+j]=D[152][j]}D[153]="����������������������������������������������������������������僉僊傳僂僖僞僥僭僣僮價僵儉儁儂儖儕儔儚儡儺儷儼儻儿兀兒兌兔兢竸兩兪兮冀冂囘册冉冏冑冓冕冖冤冦冢冩冪冫决冱冲冰况冽凅凉凛几處凩凭�凰凵凾刄刋刔刎刧刪刮刳刹剏剄剋剌剞剔剪剴剩剳剿剽劍劔劒剱劈劑辨辧劬劭劼劵勁勍勗勞勣勦飭勠勳勵勸勹匆匈甸匍匐匏匕匚匣匯匱匳匸區卆卅丗卉卍凖卞卩卮夘卻卷厂厖厠厦厥厮厰厶參簒雙叟曼燮叮叨叭叺吁吽呀听吭吼吮吶吩吝呎咏呵咎呟呱呷呰咒呻咀呶咄咐咆哇咢咸咥咬哄哈咨���".split("");for(j=0;j!=D[153].length;++j)if(D[153][j].charCodeAt(0)!==65533){e[D[153][j]]=39168+j;d[39168+j]=D[153][j]}D[154]="����������������������������������������������������������������咫哂咤咾咼哘哥哦唏唔哽哮哭哺哢唹啀啣啌售啜啅啖啗唸唳啝喙喀咯喊喟啻啾喘喞單啼喃喩喇喨嗚嗅嗟嗄嗜嗤嗔嘔嗷嘖嗾嗽嘛嗹噎噐營嘴嘶嘲嘸�噫噤嘯噬噪嚆嚀嚊嚠嚔嚏嚥嚮嚶嚴囂嚼囁囃囀囈囎囑囓囗囮囹圀囿圄圉圈國圍圓團圖嗇圜圦圷圸坎圻址坏坩埀垈坡坿垉垓垠垳垤垪垰埃埆埔埒埓堊埖埣堋堙堝塲堡塢塋塰毀塒堽塹墅墹墟墫墺壞墻墸墮壅壓壑壗壙壘壥壜壤壟壯壺壹壻壼壽夂夊夐夛梦夥夬夭夲夸夾竒奕奐奎奚奘奢奠奧奬奩���".split("");for(j=0;j!=D[154].length;++j)if(D[154][j].charCodeAt(0)!==65533){e[D[154][j]]=39424+j;d[39424+j]=D[154][j]}D[155]="����������������������������������������������������������������奸妁妝佞侫妣妲姆姨姜妍姙姚娥娟娑娜娉娚婀婬婉娵娶婢婪媚媼媾嫋嫂媽嫣嫗嫦嫩嫖嫺嫻嬌嬋嬖嬲嫐嬪嬶嬾孃孅孀孑孕孚孛孥孩孰孳孵學斈孺宀�它宦宸寃寇寉寔寐寤實寢寞寥寫寰寶寳尅將專對尓尠尢尨尸尹屁屆屎屓屐屏孱屬屮乢屶屹岌岑岔妛岫岻岶岼岷峅岾峇峙峩峽峺峭嶌峪崋崕崗嵜崟崛崑崔崢崚崙崘嵌嵒嵎嵋嵬嵳嵶嶇嶄嶂嶢嶝嶬嶮嶽嶐嶷嶼巉巍巓巒巖巛巫已巵帋帚帙帑帛帶帷幄幃幀幎幗幔幟幢幤幇幵并幺麼广庠廁廂廈廐廏���".split("");for(j=0;j!=D[155].length;++j)if(D[155][j].charCodeAt(0)!==65533){e[D[155][j]]=39680+j;d[39680+j]=D[155][j]}D[156]="����������������������������������������������������������������廖廣廝廚廛廢廡廨廩廬廱廳廰廴廸廾弃弉彝彜弋弑弖弩弭弸彁彈彌彎弯彑彖彗彙彡彭彳彷徃徂彿徊很徑徇從徙徘徠徨徭徼忖忻忤忸忱忝悳忿怡恠�怙怐怩怎怱怛怕怫怦怏怺恚恁恪恷恟恊恆恍恣恃恤恂恬恫恙悁悍惧悃悚悄悛悖悗悒悧悋惡悸惠惓悴忰悽惆悵惘慍愕愆惶惷愀惴惺愃愡惻惱愍愎慇愾愨愧慊愿愼愬愴愽慂慄慳慷慘慙慚慫慴慯慥慱慟慝慓慵憙憖憇憬憔憚憊憑憫憮懌懊應懷懈懃懆憺懋罹懍懦懣懶懺懴懿懽懼懾戀戈戉戍戌戔戛���".split("");for(j=0;j!=D[156].length;++j)if(D[156][j].charCodeAt(0)!==65533){e[D[156][j]]=39936+j;d[39936+j]=D[156][j]}D[157]="����������������������������������������������������������������戞戡截戮戰戲戳扁扎扞扣扛扠扨扼抂抉找抒抓抖拔抃抔拗拑抻拏拿拆擔拈拜拌拊拂拇抛拉挌拮拱挧挂挈拯拵捐挾捍搜捏掖掎掀掫捶掣掏掉掟掵捫�捩掾揩揀揆揣揉插揶揄搖搴搆搓搦搶攝搗搨搏摧摯摶摎攪撕撓撥撩撈撼據擒擅擇撻擘擂擱擧舉擠擡抬擣擯攬擶擴擲擺攀擽攘攜攅攤攣攫攴攵攷收攸畋效敖敕敍敘敞敝敲數斂斃變斛斟斫斷旃旆旁旄旌旒旛旙无旡旱杲昊昃旻杳昵昶昴昜晏晄晉晁晞晝晤晧晨晟晢晰暃暈暎暉暄暘暝曁暹曉暾暼���".split("");for(j=0;j!=D[157].length;++j)if(D[157][j].charCodeAt(0)!==65533){e[D[157][j]]=40192+j;d[40192+j]=D[157][j]}D[158]="����������������������������������������������������������������曄暸曖曚曠昿曦曩曰曵曷朏朖朞朦朧霸朮朿朶杁朸朷杆杞杠杙杣杤枉杰枩杼杪枌枋枦枡枅枷柯枴柬枳柩枸柤柞柝柢柮枹柎柆柧檜栞框栩桀桍栲桎�梳栫桙档桷桿梟梏梭梔條梛梃檮梹桴梵梠梺椏梍桾椁棊椈棘椢椦棡椌棍棔棧棕椶椒椄棗棣椥棹棠棯椨椪椚椣椡棆楹楷楜楸楫楔楾楮椹楴椽楙椰楡楞楝榁楪榲榮槐榿槁槓榾槎寨槊槝榻槃榧樮榑榠榜榕榴槞槨樂樛槿權槹槲槧樅榱樞槭樔槫樊樒櫁樣樓橄樌橲樶橸橇橢橙橦橈樸樢檐檍檠檄檢檣���".split("");for(j=0;j!=D[158].length;++j)if(D[158][j].charCodeAt(0)!==65533){e[D[158][j]]=40448+j;d[40448+j]=D[158][j]}D[159]="����������������������������������������������������������������檗蘗檻櫃櫂檸檳檬櫞櫑櫟檪櫚櫪櫻欅蘖櫺欒欖鬱欟欸欷盜欹飮歇歃歉歐歙歔歛歟歡歸歹歿殀殄殃殍殘殕殞殤殪殫殯殲殱殳殷殼毆毋毓毟毬毫毳毯�麾氈氓气氛氤氣汞汕汢汪沂沍沚沁沛汾汨汳沒沐泄泱泓沽泗泅泝沮沱沾沺泛泯泙泪洟衍洶洫洽洸洙洵洳洒洌浣涓浤浚浹浙涎涕濤涅淹渕渊涵淇淦涸淆淬淞淌淨淒淅淺淙淤淕淪淮渭湮渮渙湲湟渾渣湫渫湶湍渟湃渺湎渤滿渝游溂溪溘滉溷滓溽溯滄溲滔滕溏溥滂溟潁漑灌滬滸滾漿滲漱滯漲滌���".split("");for(j=0;j!=D[159].length;++j)if(D[159][j].charCodeAt(0)!==65533){e[D[159][j]]=40704+j;d[40704+j]=D[159][j]}D[224]="����������������������������������������������������������������漾漓滷澆潺潸澁澀潯潛濳潭澂潼潘澎澑濂潦澳澣澡澤澹濆澪濟濕濬濔濘濱濮濛瀉瀋濺瀑瀁瀏濾瀛瀚潴瀝瀘瀟瀰瀾瀲灑灣炙炒炯烱炬炸炳炮烟烋烝�烙焉烽焜焙煥煕熈煦煢煌煖煬熏燻熄熕熨熬燗熹熾燒燉燔燎燠燬燧燵燼燹燿爍爐爛爨爭爬爰爲爻爼爿牀牆牋牘牴牾犂犁犇犒犖犢犧犹犲狃狆狄狎狒狢狠狡狹狷倏猗猊猜猖猝猴猯猩猥猾獎獏默獗獪獨獰獸獵獻獺珈玳珎玻珀珥珮珞璢琅瑯琥珸琲琺瑕琿瑟瑙瑁瑜瑩瑰瑣瑪瑶瑾璋璞璧瓊瓏瓔珱���".split("");for(j=0;j!=D[224].length;++j)if(D[224][j].charCodeAt(0)!==65533){e[D[224][j]]=57344+j;d[57344+j]=D[224][j]}D[225]="����������������������������������������������������������������瓠瓣瓧瓩瓮瓲瓰瓱瓸瓷甄甃甅甌甎甍甕甓甞甦甬甼畄畍畊畉畛畆畚畩畤畧畫畭畸當疆疇畴疊疉疂疔疚疝疥疣痂疳痃疵疽疸疼疱痍痊痒痙痣痞痾痿�痼瘁痰痺痲痳瘋瘍瘉瘟瘧瘠瘡瘢瘤瘴瘰瘻癇癈癆癜癘癡癢癨癩癪癧癬癰癲癶癸發皀皃皈皋皎皖皓皙皚皰皴皸皹皺盂盍盖盒盞盡盥盧盪蘯盻眈眇眄眩眤眞眥眦眛眷眸睇睚睨睫睛睥睿睾睹瞎瞋瞑瞠瞞瞰瞶瞹瞿瞼瞽瞻矇矍矗矚矜矣矮矼砌砒礦砠礪硅碎硴碆硼碚碌碣碵碪碯磑磆磋磔碾碼磅磊磬���".split("");for(j=0;j!=D[225].length;++j)if(D[225][j].charCodeAt(0)!==65533){e[D[225][j]]=57600+j;d[57600+j]=D[225][j]}D[226]="����������������������������������������������������������������磧磚磽磴礇礒礑礙礬礫祀祠祗祟祚祕祓祺祿禊禝禧齋禪禮禳禹禺秉秕秧秬秡秣稈稍稘稙稠稟禀稱稻稾稷穃穗穉穡穢穩龝穰穹穽窈窗窕窘窖窩竈窰�窶竅竄窿邃竇竊竍竏竕竓站竚竝竡竢竦竭竰笂笏笊笆笳笘笙笞笵笨笶筐筺笄筍笋筌筅筵筥筴筧筰筱筬筮箝箘箟箍箜箚箋箒箏筝箙篋篁篌篏箴篆篝篩簑簔篦篥籠簀簇簓篳篷簗簍篶簣簧簪簟簷簫簽籌籃籔籏籀籐籘籟籤籖籥籬籵粃粐粤粭粢粫粡粨粳粲粱粮粹粽糀糅糂糘糒糜糢鬻糯糲糴糶糺紆���".split("");for(j=0;j!=D[226].length;++j)if(D[226][j].charCodeAt(0)!==65533){e[D[226][j]]=57856+j;d[57856+j]=D[226][j]}D[227]="����������������������������������������������������������������紂紜紕紊絅絋紮紲紿紵絆絳絖絎絲絨絮絏絣經綉絛綏絽綛綺綮綣綵緇綽綫總綢綯緜綸綟綰緘緝緤緞緻緲緡縅縊縣縡縒縱縟縉縋縢繆繦縻縵縹繃縷�縲縺繧繝繖繞繙繚繹繪繩繼繻纃緕繽辮繿纈纉續纒纐纓纔纖纎纛纜缸缺罅罌罍罎罐网罕罔罘罟罠罨罩罧罸羂羆羃羈羇羌羔羞羝羚羣羯羲羹羮羶羸譱翅翆翊翕翔翡翦翩翳翹飜耆耄耋耒耘耙耜耡耨耿耻聊聆聒聘聚聟聢聨聳聲聰聶聹聽聿肄肆肅肛肓肚肭冐肬胛胥胙胝胄胚胖脉胯胱脛脩脣脯腋���".split("");for(j=0;j!=D[227].length;++j)if(D[227][j].charCodeAt(0)!==65533){e[D[227][j]]=58112+j;d[58112+j]=D[227][j]}D[228]="����������������������������������������������������������������隋腆脾腓腑胼腱腮腥腦腴膃膈膊膀膂膠膕膤膣腟膓膩膰膵膾膸膽臀臂膺臉臍臑臙臘臈臚臟臠臧臺臻臾舁舂舅與舊舍舐舖舩舫舸舳艀艙艘艝艚艟艤�艢艨艪艫舮艱艷艸艾芍芒芫芟芻芬苡苣苟苒苴苳苺莓范苻苹苞茆苜茉苙茵茴茖茲茱荀茹荐荅茯茫茗茘莅莚莪莟莢莖茣莎莇莊荼莵荳荵莠莉莨菴萓菫菎菽萃菘萋菁菷萇菠菲萍萢萠莽萸蔆菻葭萪萼蕚蒄葷葫蒭葮蒂葩葆萬葯葹萵蓊葢蒹蒿蒟蓙蓍蒻蓚蓐蓁蓆蓖蒡蔡蓿蓴蔗蔘蔬蔟蔕蔔蓼蕀蕣蕘蕈���".split("");for(j=0;j!=D[228].length;++j)if(D[228][j].charCodeAt(0)!==65533){e[D[228][j]]=58368+j;d[58368+j]=D[228][j]}D[229]="����������������������������������������������������������������蕁蘂蕋蕕薀薤薈薑薊薨蕭薔薛藪薇薜蕷蕾薐藉薺藏薹藐藕藝藥藜藹蘊蘓蘋藾藺蘆蘢蘚蘰蘿虍乕虔號虧虱蚓蚣蚩蚪蚋蚌蚶蚯蛄蛆蚰蛉蠣蚫蛔蛞蛩蛬�蛟蛛蛯蜒蜆蜈蜀蜃蛻蜑蜉蜍蛹蜊蜴蜿蜷蜻蜥蜩蜚蝠蝟蝸蝌蝎蝴蝗蝨蝮蝙蝓蝣蝪蠅螢螟螂螯蟋螽蟀蟐雖螫蟄螳蟇蟆螻蟯蟲蟠蠏蠍蟾蟶蟷蠎蟒蠑蠖蠕蠢蠡蠱蠶蠹蠧蠻衄衂衒衙衞衢衫袁衾袞衵衽袵衲袂袗袒袮袙袢袍袤袰袿袱裃裄裔裘裙裝裹褂裼裴裨裲褄褌褊褓襃褞褥褪褫襁襄褻褶褸襌褝襠襞���".split("");for(j=0;j!=D[229].length;++j)if(D[229][j].charCodeAt(0)!==65533){e[D[229][j]]=58624+j;d[58624+j]=D[229][j]}D[230]="����������������������������������������������������������������襦襤襭襪襯襴襷襾覃覈覊覓覘覡覩覦覬覯覲覺覽覿觀觚觜觝觧觴觸訃訖訐訌訛訝訥訶詁詛詒詆詈詼詭詬詢誅誂誄誨誡誑誥誦誚誣諄諍諂諚諫諳諧�諤諱謔諠諢諷諞諛謌謇謚諡謖謐謗謠謳鞫謦謫謾謨譁譌譏譎證譖譛譚譫譟譬譯譴譽讀讌讎讒讓讖讙讚谺豁谿豈豌豎豐豕豢豬豸豺貂貉貅貊貍貎貔豼貘戝貭貪貽貲貳貮貶賈賁賤賣賚賽賺賻贄贅贊贇贏贍贐齎贓賍贔贖赧赭赱赳趁趙跂趾趺跏跚跖跌跛跋跪跫跟跣跼踈踉跿踝踞踐踟蹂踵踰踴蹊���".split("");for(j=0;j!=D[230].length;++j)if(D[230][j].charCodeAt(0)!==65533){e[D[230][j]]=58880+j;d[58880+j]=D[230][j]}D[231]="����������������������������������������������������������������蹇蹉蹌蹐蹈蹙蹤蹠踪蹣蹕蹶蹲蹼躁躇躅躄躋躊躓躑躔躙躪躡躬躰軆躱躾軅軈軋軛軣軼軻軫軾輊輅輕輒輙輓輜輟輛輌輦輳輻輹轅轂輾轌轉轆轎轗轜�轢轣轤辜辟辣辭辯辷迚迥迢迪迯邇迴逅迹迺逑逕逡逍逞逖逋逧逶逵逹迸遏遐遑遒逎遉逾遖遘遞遨遯遶隨遲邂遽邁邀邊邉邏邨邯邱邵郢郤扈郛鄂鄒鄙鄲鄰酊酖酘酣酥酩酳酲醋醉醂醢醫醯醪醵醴醺釀釁釉釋釐釖釟釡釛釼釵釶鈞釿鈔鈬鈕鈑鉞鉗鉅鉉鉤鉈銕鈿鉋鉐銜銖銓銛鉚鋏銹銷鋩錏鋺鍄錮���".split("");for(j=0;j!=D[231].length;++j)if(D[231][j].charCodeAt(0)!==65533){e[D[231][j]]=59136+j;d[59136+j]=D[231][j]}D[232]="����������������������������������������������������������������錙錢錚錣錺錵錻鍜鍠鍼鍮鍖鎰鎬鎭鎔鎹鏖鏗鏨鏥鏘鏃鏝鏐鏈鏤鐚鐔鐓鐃鐇鐐鐶鐫鐵鐡鐺鑁鑒鑄鑛鑠鑢鑞鑪鈩鑰鑵鑷鑽鑚鑼鑾钁鑿閂閇閊閔閖閘閙�閠閨閧閭閼閻閹閾闊濶闃闍闌闕闔闖關闡闥闢阡阨阮阯陂陌陏陋陷陜陞陝陟陦陲陬隍隘隕隗險隧隱隲隰隴隶隸隹雎雋雉雍襍雜霍雕雹霄霆霈霓霎霑霏霖霙霤霪霰霹霽霾靄靆靈靂靉靜靠靤靦靨勒靫靱靹鞅靼鞁靺鞆鞋鞏鞐鞜鞨鞦鞣鞳鞴韃韆韈韋韜韭齏韲竟韶韵頏頌頸頤頡頷頽顆顏顋顫顯顰���".split("");for(j=0;j!=D[232].length;++j)if(D[232][j].charCodeAt(0)!==65533){e[D[232][j]]=59392+j;d[59392+j]=D[232][j]}D[233]="����������������������������������������������������������������顱顴顳颪颯颱颶飄飃飆飩飫餃餉餒餔餘餡餝餞餤餠餬餮餽餾饂饉饅饐饋饑饒饌饕馗馘馥馭馮馼駟駛駝駘駑駭駮駱駲駻駸騁騏騅駢騙騫騷驅驂驀驃�騾驕驍驛驗驟驢驥驤驩驫驪骭骰骼髀髏髑髓體髞髟髢髣髦髯髫髮髴髱髷髻鬆鬘鬚鬟鬢鬣鬥鬧鬨鬩鬪鬮鬯鬲魄魃魏魍魎魑魘魴鮓鮃鮑鮖鮗鮟鮠鮨鮴鯀鯊鮹鯆鯏鯑鯒鯣鯢鯤鯔鯡鰺鯲鯱鯰鰕鰔鰉鰓鰌鰆鰈鰒鰊鰄鰮鰛鰥鰤鰡鰰鱇鰲鱆鰾鱚鱠鱧鱶鱸鳧鳬鳰鴉鴈鳫鴃鴆鴪鴦鶯鴣鴟鵄鴕鴒鵁鴿鴾鵆鵈���".split("");for(j=0;j!=D[233].length;++j)if(D[233][j].charCodeAt(0)!==65533){e[D[233][j]]=59648+j;d[59648+j]=D[233][j]}D[234]="����������������������������������������������������������������鵝鵞鵤鵑鵐鵙鵲鶉鶇鶫鵯鵺鶚鶤鶩鶲鷄鷁鶻鶸鶺鷆鷏鷂鷙鷓鷸鷦鷭鷯鷽鸚鸛鸞鹵鹹鹽麁麈麋麌麒麕麑麝麥麩麸麪麭靡黌黎黏黐黔黜點黝黠黥黨黯�黴黶黷黹黻黼黽鼇鼈皷鼕鼡鼬鼾齊齒齔齣齟齠齡齦齧齬齪齷齲齶龕龜龠堯槇遙瑤凜熙�������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[234].length;++j)if(D[234][j].charCodeAt(0)!==65533){e[D[234][j]]=59904+j;d[59904+j]=D[234][j]}D[237]="����������������������������������������������������������������纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏�塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱���".split("");for(j=0;j!=D[237].length;++j)if(D[237][j].charCodeAt(0)!==65533){e[D[237][j]]=60672+j;d[60672+j]=D[237][j]}D[238]="����������������������������������������������������������������犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙�蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑��ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹ¬¦'"���".split("");
for(j=0;j!=D[238].length;++j)if(D[238][j].charCodeAt(0)!==65533){e[D[238][j]]=60928+j;d[60928+j]=D[238][j]}D[250]="����������������������������������������������������������������ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ¬¦'"㈱№℡∵纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊�兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯���".split("");for(j=0;j!=D[250].length;++j)if(D[250][j].charCodeAt(0)!==65533){e[D[250][j]]=64e3+j;d[64e3+j]=D[250][j]}D[251]="����������������������������������������������������������������涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神�祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙���".split("");for(j=0;j!=D[251].length;++j)if(D[251][j].charCodeAt(0)!==65533){e[D[251][j]]=64256+j;d[64256+j]=D[251][j]}D[252]="����������������������������������������������������������������髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[252].length;++j)if(D[252][j].charCodeAt(0)!==65533){e[D[252][j]]=64512+j;d[64512+j]=D[252][j]}return{enc:e,dec:d}}();cptable[936]=function(){var d=[],e={},D=[],j;D[0]="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�������������������������������������������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[0].length;++j)if(D[0][j].charCodeAt(0)!==65533){e[D[0][j]]=0+j;d[0+j]=D[0][j]}D[129]="����������������������������������������������������������������丂丄丅丆丏丒丗丟丠両丣並丩丮丯丱丳丵丷丼乀乁乂乄乆乊乑乕乗乚乛乢乣乤乥乧乨乪乫乬乭乮乯乲乴乵乶乷乸乹乺乻乼乽乿亀亁亂亃亄亅亇亊�亐亖亗亙亜亝亞亣亪亯亰亱亴亶亷亸亹亼亽亾仈仌仏仐仒仚仛仜仠仢仦仧仩仭仮仯仱仴仸仹仺仼仾伀伂伃伄伅伆伇伈伋伌伒伓伔伕伖伜伝伡伣伨伩伬伭伮伱伳伵伷伹伻伾伿佀佁佂佄佅佇佈佉佊佋佌佒佔佖佡佢佦佨佪佫佭佮佱佲併佷佸佹佺佽侀侁侂侅來侇侊侌侎侐侒侓侕侖侘侙侚侜侞侟価侢�".split("");for(j=0;j!=D[129].length;++j)if(D[129][j].charCodeAt(0)!==65533){e[D[129][j]]=33024+j;d[33024+j]=D[129][j]}D[130]="����������������������������������������������������������������侤侫侭侰侱侲侳侴侶侷侸侹侺侻侼侽侾俀俁係俆俇俈俉俋俌俍俒俓俔俕俖俙俛俠俢俤俥俧俫俬俰俲俴俵俶俷俹俻俼俽俿倀倁倂倃倄倅倆倇倈倉倊�個倎倐們倓倕倖倗倛倝倞倠倢倣値倧倫倯倰倱倲倳倴倵倶倷倸倹倻倽倿偀偁偂偄偅偆偉偊偋偍偐偑偒偓偔偖偗偘偙偛偝偞偟偠偡偢偣偤偦偧偨偩偪偫偭偮偯偰偱偲偳側偵偸偹偺偼偽傁傂傃傄傆傇傉傊傋傌傎傏傐傑傒傓傔傕傖傗傘備傚傛傜傝傞傟傠傡傢傤傦傪傫傭傮傯傰傱傳傴債傶傷傸傹傼�".split("");for(j=0;j!=D[130].length;++j)if(D[130][j].charCodeAt(0)!==65533){e[D[130][j]]=33280+j;d[33280+j]=D[130][j]}D[131]="����������������������������������������������������������������傽傾傿僀僁僂僃僄僅僆僇僈僉僊僋僌働僎僐僑僒僓僔僕僗僘僙僛僜僝僞僟僠僡僢僣僤僥僨僩僪僫僯僰僱僲僴僶僷僸價僺僼僽僾僿儀儁儂儃億儅儈�儉儊儌儍儎儏儐儑儓儔儕儖儗儘儙儚儛儜儝儞償儠儢儣儤儥儦儧儨儩優儫儬儭儮儯儰儱儲儳儴儵儶儷儸儹儺儻儼儽儾兂兇兊兌兎兏児兒兓兗兘兙兛兝兞兟兠兡兣兤兦內兩兪兯兲兺兾兿冃冄円冇冊冋冎冏冐冑冓冔冘冚冝冞冟冡冣冦冧冨冩冪冭冮冴冸冹冺冾冿凁凂凃凅凈凊凍凎凐凒凓凔凕凖凗�".split("");for(j=0;j!=D[131].length;++j)if(D[131][j].charCodeAt(0)!==65533){e[D[131][j]]=33536+j;d[33536+j]=D[131][j]}D[132]="����������������������������������������������������������������凘凙凚凜凞凟凢凣凥処凧凨凩凪凬凮凱凲凴凷凾刄刅刉刋刌刏刐刓刔刕刜刞刟刡刢刣別刦刧刪刬刯刱刲刴刵刼刾剄剅剆則剈剉剋剎剏剒剓剕剗剘�剙剚剛剝剟剠剢剣剤剦剨剫剬剭剮剰剱剳剴創剶剷剸剹剺剻剼剾劀劃劄劅劆劇劉劊劋劌劍劎劏劑劒劔劕劖劗劘劙劚劜劤劥劦劧劮劯劰労劵劶劷劸効劺劻劼劽勀勁勂勄勅勆勈勊勌勍勎勏勑勓勔動勗務勚勛勜勝勞勠勡勢勣勥勦勧勨勩勪勫勬勭勮勯勱勲勳勴勵勶勷勸勻勼勽匁匂匃匄匇匉匊匋匌匎�".split("");for(j=0;j!=D[132].length;++j)if(D[132][j].charCodeAt(0)!==65533){e[D[132][j]]=33792+j;d[33792+j]=D[132][j]}D[133]="����������������������������������������������������������������匑匒匓匔匘匛匜匞匟匢匤匥匧匨匩匫匬匭匯匰匱匲匳匴匵匶匷匸匼匽區卂卄卆卋卌卍卐協単卙卛卝卥卨卪卬卭卲卶卹卻卼卽卾厀厁厃厇厈厊厎厏�厐厑厒厓厔厖厗厙厛厜厞厠厡厤厧厪厫厬厭厯厰厱厲厳厴厵厷厸厹厺厼厽厾叀參叄叅叆叇収叏叐叒叓叕叚叜叝叞叡叢叧叴叺叾叿吀吂吅吇吋吔吘吙吚吜吢吤吥吪吰吳吶吷吺吽吿呁呂呄呅呇呉呌呍呎呏呑呚呝呞呟呠呡呣呥呧呩呪呫呬呭呮呯呰呴呹呺呾呿咁咃咅咇咈咉咊咍咑咓咗咘咜咞咟咠咡�".split("");for(j=0;j!=D[133].length;++j)if(D[133][j].charCodeAt(0)!==65533){e[D[133][j]]=34048+j;d[34048+j]=D[133][j]}D[134]="����������������������������������������������������������������咢咥咮咰咲咵咶咷咹咺咼咾哃哅哊哋哖哘哛哠員哢哣哤哫哬哯哰哱哴哵哶哷哸哹哻哾唀唂唃唄唅唈唊唋唌唍唎唒唓唕唖唗唘唙唚唜唝唞唟唡唥唦�唨唩唫唭唲唴唵唶唸唹唺唻唽啀啂啅啇啈啋啌啍啎問啑啒啓啔啗啘啙啚啛啝啞啟啠啢啣啨啩啫啯啰啱啲啳啴啹啺啽啿喅喆喌喍喎喐喒喓喕喖喗喚喛喞喠喡喢喣喤喥喦喨喩喪喫喬喭單喯喰喲喴営喸喺喼喿嗀嗁嗂嗃嗆嗇嗈嗊嗋嗎嗏嗐嗕嗗嗘嗙嗚嗛嗞嗠嗢嗧嗩嗭嗮嗰嗱嗴嗶嗸嗹嗺嗻嗼嗿嘂嘃嘄嘅�".split("");for(j=0;j!=D[134].length;++j)if(D[134][j].charCodeAt(0)!==65533){e[D[134][j]]=34304+j;d[34304+j]=D[134][j]}D[135]="����������������������������������������������������������������嘆嘇嘊嘋嘍嘐嘑嘒嘓嘔嘕嘖嘗嘙嘚嘜嘝嘠嘡嘢嘥嘦嘨嘩嘪嘫嘮嘯嘰嘳嘵嘷嘸嘺嘼嘽嘾噀噁噂噃噄噅噆噇噈噉噊噋噏噐噑噒噓噕噖噚噛噝噞噟噠噡�噣噥噦噧噭噮噯噰噲噳噴噵噷噸噹噺噽噾噿嚀嚁嚂嚃嚄嚇嚈嚉嚊嚋嚌嚍嚐嚑嚒嚔嚕嚖嚗嚘嚙嚚嚛嚜嚝嚞嚟嚠嚡嚢嚤嚥嚦嚧嚨嚩嚪嚫嚬嚭嚮嚰嚱嚲嚳嚴嚵嚶嚸嚹嚺嚻嚽嚾嚿囀囁囂囃囄囅囆囇囈囉囋囌囍囎囏囐囑囒囓囕囖囘囙囜団囥囦囧囨囩囪囬囮囯囲図囶囷囸囻囼圀圁圂圅圇國圌圍圎圏圐圑�".split("");for(j=0;j!=D[135].length;++j)if(D[135][j].charCodeAt(0)!==65533){e[D[135][j]]=34560+j;d[34560+j]=D[135][j]}D[136]="����������������������������������������������������������������園圓圔圕圖圗團圙圚圛圝圞圠圡圢圤圥圦圧圫圱圲圴圵圶圷圸圼圽圿坁坃坄坅坆坈坉坋坒坓坔坕坖坘坙坢坣坥坧坬坮坰坱坲坴坵坸坹坺坽坾坿垀�垁垇垈垉垊垍垎垏垐垑垔垕垖垗垘垙垚垜垝垞垟垥垨垪垬垯垰垱垳垵垶垷垹垺垻垼垽垾垿埀埁埄埅埆埇埈埉埊埌埍埐埑埓埖埗埛埜埞埡埢埣埥埦埧埨埩埪埫埬埮埰埱埲埳埵埶執埻埼埾埿堁堃堄堅堈堉堊堌堎堏堐堒堓堔堖堗堘堚堛堜堝堟堢堣堥堦堧堨堩堫堬堭堮堯報堲堳場堶堷堸堹堺堻堼堽�".split("");for(j=0;j!=D[136].length;++j)if(D[136][j].charCodeAt(0)!==65533){e[D[136][j]]=34816+j;d[34816+j]=D[136][j]}D[137]="����������������������������������������������������������������堾堿塀塁塂塃塅塆塇塈塉塊塋塎塏塐塒塓塕塖塗塙塚塛塜塝塟塠塡塢塣塤塦塧塨塩塪塭塮塯塰塱塲塳塴塵塶塷塸塹塺塻塼塽塿墂墄墆墇墈墊墋墌�墍墎墏墐墑墔墕墖増墘墛墜墝墠墡墢墣墤墥墦墧墪墫墬墭墮墯墰墱墲墳墴墵墶墷墸墹墺墻墽墾墿壀壂壃壄壆壇壈壉壊壋壌壍壎壏壐壒壓壔壖壗壘壙壚壛壜壝壞壟壠壡壢壣壥壦壧壨壩壪壭壯壱売壴壵壷壸壺壻壼壽壾壿夀夁夃夅夆夈変夊夋夌夎夐夑夒夓夗夘夛夝夞夠夡夢夣夦夨夬夰夲夳夵夶夻�".split("");for(j=0;j!=D[137].length;++j)if(D[137][j].charCodeAt(0)!==65533){e[D[137][j]]=35072+j;d[35072+j]=D[137][j]}D[138]="����������������������������������������������������������������夽夾夿奀奃奅奆奊奌奍奐奒奓奙奛奜奝奞奟奡奣奤奦奧奨奩奪奫奬奭奮奯奰奱奲奵奷奺奻奼奾奿妀妅妉妋妌妎妏妐妑妔妕妘妚妛妜妝妟妠妡妢妦�妧妬妭妰妱妳妴妵妶妷妸妺妼妽妿姀姁姂姃姄姅姇姈姉姌姍姎姏姕姖姙姛姞姟姠姡姢姤姦姧姩姪姫姭姮姯姰姱姲姳姴姵姶姷姸姺姼姽姾娀娂娊娋娍娎娏娐娒娔娕娖娗娙娚娛娝娞娡娢娤娦娧娨娪娫娬娭娮娯娰娳娵娷娸娹娺娻娽娾娿婁婂婃婄婅婇婈婋婌婍婎婏婐婑婒婓婔婖婗婘婙婛婜婝婞婟婠�".split("");for(j=0;j!=D[138].length;++j)if(D[138][j].charCodeAt(0)!==65533){e[D[138][j]]=35328+j;d[35328+j]=D[138][j]}D[139]="����������������������������������������������������������������婡婣婤婥婦婨婩婫婬婭婮婯婰婱婲婳婸婹婻婼婽婾媀媁媂媃媄媅媆媇媈媉媊媋媌媍媎媏媐媑媓媔媕媖媗媘媙媜媝媞媟媠媡媢媣媤媥媦媧媨媩媫媬�媭媮媯媰媱媴媶媷媹媺媻媼媽媿嫀嫃嫄嫅嫆嫇嫈嫊嫋嫍嫎嫏嫐嫑嫓嫕嫗嫙嫚嫛嫝嫞嫟嫢嫤嫥嫧嫨嫪嫬嫭嫮嫯嫰嫲嫳嫴嫵嫶嫷嫸嫹嫺嫻嫼嫽嫾嫿嬀嬁嬂嬃嬄嬅嬆嬇嬈嬊嬋嬌嬍嬎嬏嬐嬑嬒嬓嬔嬕嬘嬙嬚嬛嬜嬝嬞嬟嬠嬡嬢嬣嬤嬥嬦嬧嬨嬩嬪嬫嬬嬭嬮嬯嬰嬱嬳嬵嬶嬸嬹嬺嬻嬼嬽嬾嬿孁孂孃孄孅孆孇�".split("");for(j=0;j!=D[139].length;++j)if(D[139][j].charCodeAt(0)!==65533){e[D[139][j]]=35584+j;d[35584+j]=D[139][j]}D[140]="����������������������������������������������������������������孈孉孊孋孌孍孎孏孒孖孞孠孡孧孨孫孭孮孯孲孴孶孷學孹孻孼孾孿宂宆宊宍宎宐宑宒宔宖実宧宨宩宬宭宮宯宱宲宷宺宻宼寀寁寃寈寉寊寋寍寎寏�寑寔寕寖寗寘寙寚寛寜寠寢寣實寧審寪寫寬寭寯寱寲寳寴寵寶寷寽対尀専尃尅將專尋尌對導尐尒尓尗尙尛尞尟尠尡尣尦尨尩尪尫尭尮尯尰尲尳尵尶尷屃屄屆屇屌屍屒屓屔屖屗屘屚屛屜屝屟屢層屧屨屩屪屫屬屭屰屲屳屴屵屶屷屸屻屼屽屾岀岃岄岅岆岇岉岊岋岎岏岒岓岕岝岞岟岠岡岤岥岦岧岨�".split("");for(j=0;j!=D[140].length;++j)if(D[140][j].charCodeAt(0)!==65533){e[D[140][j]]=35840+j;d[35840+j]=D[140][j]}D[141]="����������������������������������������������������������������岪岮岯岰岲岴岶岹岺岻岼岾峀峂峃峅峆峇峈峉峊峌峍峎峏峐峑峓峔峕峖峗峘峚峛峜峝峞峟峠峢峣峧峩峫峬峮峯峱峲峳峴峵島峷峸峹峺峼峽峾峿崀�崁崄崅崈崉崊崋崌崍崏崐崑崒崓崕崗崘崙崚崜崝崟崠崡崢崣崥崨崪崫崬崯崰崱崲崳崵崶崷崸崹崺崻崼崿嵀嵁嵂嵃嵄嵅嵆嵈嵉嵍嵎嵏嵐嵑嵒嵓嵔嵕嵖嵗嵙嵚嵜嵞嵟嵠嵡嵢嵣嵤嵥嵦嵧嵨嵪嵭嵮嵰嵱嵲嵳嵵嵶嵷嵸嵹嵺嵻嵼嵽嵾嵿嶀嶁嶃嶄嶅嶆嶇嶈嶉嶊嶋嶌嶍嶎嶏嶐嶑嶒嶓嶔嶕嶖嶗嶘嶚嶛嶜嶞嶟嶠�".split("");for(j=0;j!=D[141].length;++j)if(D[141][j].charCodeAt(0)!==65533){e[D[141][j]]=36096+j;d[36096+j]=D[141][j]}D[142]="����������������������������������������������������������������嶡嶢嶣嶤嶥嶦嶧嶨嶩嶪嶫嶬嶭嶮嶯嶰嶱嶲嶳嶴嶵嶶嶸嶹嶺嶻嶼嶽嶾嶿巀巁巂巃巄巆巇巈巉巊巋巌巎巏巐巑巒巓巔巕巖巗巘巙巚巜巟巠巣巤巪巬巭�巰巵巶巸巹巺巻巼巿帀帄帇帉帊帋帍帎帒帓帗帞帟帠帡帢帣帤帥帨帩帪師帬帯帰帲帳帴帵帶帹帺帾帿幀幁幃幆幇幈幉幊幋幍幎幏幐幑幒幓幖幗幘幙幚幜幝幟幠幣幤幥幦幧幨幩幪幫幬幭幮幯幰幱幵幷幹幾庁庂広庅庈庉庌庍庎庒庘庛庝庡庢庣庤庨庩庪庫庬庮庯庰庱庲庴庺庻庼庽庿廀廁廂廃廄廅�".split("");for(j=0;j!=D[142].length;++j)if(D[142][j].charCodeAt(0)!==65533){e[D[142][j]]=36352+j;d[36352+j]=D[142][j]}D[143]="����������������������������������������������������������������廆廇廈廋廌廍廎廏廐廔廕廗廘廙廚廜廝廞廟廠廡廢廣廤廥廦廧廩廫廬廭廮廯廰廱廲廳廵廸廹廻廼廽弅弆弇弉弌弍弎弐弒弔弖弙弚弜弝弞弡弢弣弤�弨弫弬弮弰弲弳弴張弶強弸弻弽弾弿彁彂彃彄彅彆彇彈彉彊彋彌彍彎彏彑彔彙彚彛彜彞彟彠彣彥彧彨彫彮彯彲彴彵彶彸彺彽彾彿徃徆徍徎徏徑従徔徖徚徛徝從徟徠徢徣徤徥徦徧復徫徬徯徰徱徲徳徴徶徸徹徺徻徾徿忀忁忂忇忈忊忋忎忓忔忕忚忛応忞忟忢忣忥忦忨忩忬忯忰忲忳忴忶忷忹忺忼怇�".split("");for(j=0;j!=D[143].length;++j)if(D[143][j].charCodeAt(0)!==65533){e[D[143][j]]=36608+j;d[36608+j]=D[143][j]}D[144]="����������������������������������������������������������������怈怉怋怌怐怑怓怗怘怚怞怟怢怣怤怬怭怮怰怱怲怳怴怶怷怸怹怺怽怾恀恄恅恆恇恈恉恊恌恎恏恑恓恔恖恗恘恛恜恞恟恠恡恥恦恮恱恲恴恵恷恾悀�悁悂悅悆悇悈悊悋悎悏悐悑悓悕悗悘悙悜悞悡悢悤悥悧悩悪悮悰悳悵悶悷悹悺悽悾悿惀惁惂惃惄惇惈惉惌惍惎惏惐惒惓惔惖惗惙惛惞惡惢惣惤惥惪惱惲惵惷惸惻惼惽惾惿愂愃愄愅愇愊愋愌愐愑愒愓愔愖愗愘愙愛愜愝愞愡愢愥愨愩愪愬愭愮愯愰愱愲愳愴愵愶愷愸愹愺愻愼愽愾慀慁慂慃慄慅慆�".split("");for(j=0;j!=D[144].length;++j)if(D[144][j].charCodeAt(0)!==65533){e[D[144][j]]=36864+j;d[36864+j]=D[144][j]}D[145]="����������������������������������������������������������������慇慉態慍慏慐慒慓慔慖慗慘慙慚慛慜慞慟慠慡慣慤慥慦慩慪慫慬慭慮慯慱慲慳慴慶慸慹慺慻慼慽慾慿憀憁憂憃憄憅憆憇憈憉憊憌憍憏憐憑憒憓憕�憖憗憘憙憚憛憜憞憟憠憡憢憣憤憥憦憪憫憭憮憯憰憱憲憳憴憵憶憸憹憺憻憼憽憿懀懁懃懄懅懆懇應懌懍懎懏懐懓懕懖懗懘懙懚懛懜懝懞懟懠懡懢懣懤懥懧懨懩懪懫懬懭懮懯懰懱懲懳懴懶懷懸懹懺懻懼懽懾戀戁戂戃戄戅戇戉戓戔戙戜戝戞戠戣戦戧戨戩戫戭戯戰戱戲戵戶戸戹戺戻戼扂扄扅扆扊�".split("");for(j=0;j!=D[145].length;++j)if(D[145][j].charCodeAt(0)!==65533){e[D[145][j]]=37120+j;d[37120+j]=D[145][j]}D[146]="����������������������������������������������������������������扏扐払扖扗扙扚扜扝扞扟扠扡扢扤扥扨扱扲扴扵扷扸扺扻扽抁抂抃抅抆抇抈抋抌抍抎抏抐抔抙抜抝択抣抦抧抩抪抭抮抯抰抲抳抴抶抷抸抺抾拀拁�拃拋拏拑拕拝拞拠拡拤拪拫拰拲拵拸拹拺拻挀挃挄挅挆挊挋挌挍挏挐挒挓挔挕挗挘挙挜挦挧挩挬挭挮挰挱挳挴挵挶挷挸挻挼挾挿捀捁捄捇捈捊捑捒捓捔捖捗捘捙捚捛捜捝捠捤捥捦捨捪捫捬捯捰捲捳捴捵捸捹捼捽捾捿掁掃掄掅掆掋掍掑掓掔掕掗掙掚掛掜掝掞掟採掤掦掫掯掱掲掵掶掹掻掽掿揀�".split("");for(j=0;j!=D[146].length;++j)if(D[146][j].charCodeAt(0)!==65533){e[D[146][j]]=37376+j;d[37376+j]=D[146][j]}D[147]="����������������������������������������������������������������揁揂揃揅揇揈揊揋揌揑揓揔揕揗揘揙揚換揜揝揟揢揤揥揦揧揨揫揬揮揯揰揱揳揵揷揹揺揻揼揾搃搄搆搇搈搉搊損搎搑搒搕搖搗搘搙搚搝搟搢搣搤�搥搧搨搩搫搮搯搰搱搲搳搵搶搷搸搹搻搼搾摀摂摃摉摋摌摍摎摏摐摑摓摕摖摗摙摚摛摜摝摟摠摡摢摣摤摥摦摨摪摫摬摮摯摰摱摲摳摴摵摶摷摻摼摽摾摿撀撁撃撆撈撉撊撋撌撍撎撏撐撓撔撗撘撚撛撜撝撟撠撡撢撣撥撦撧撨撪撫撯撱撲撳撴撶撹撻撽撾撿擁擃擄擆擇擈擉擊擋擌擏擑擓擔擕擖擙據�".split("");for(j=0;j!=D[147].length;++j)if(D[147][j].charCodeAt(0)!==65533){e[D[147][j]]=37632+j;d[37632+j]=D[147][j]}D[148]="����������������������������������������������������������������擛擜擝擟擠擡擣擥擧擨擩擪擫擬擭擮擯擰擱擲擳擴擵擶擷擸擹擺擻擼擽擾擿攁攂攃攄攅攆攇攈攊攋攌攍攎攏攐攑攓攔攕攖攗攙攚攛攜攝攞攟攠攡�攢攣攤攦攧攨攩攪攬攭攰攱攲攳攷攺攼攽敀敁敂敃敄敆敇敊敋敍敎敐敒敓敔敗敘敚敜敟敠敡敤敥敧敨敩敪敭敮敯敱敳敵敶數敹敺敻敼敽敾敿斀斁斂斃斄斅斆斈斉斊斍斎斏斒斔斕斖斘斚斝斞斠斢斣斦斨斪斬斮斱斲斳斴斵斶斷斸斺斻斾斿旀旂旇旈旉旊旍旐旑旓旔旕旘旙旚旛旜旝旞旟旡旣旤旪旫�".split("");for(j=0;j!=D[148].length;++j)if(D[148][j].charCodeAt(0)!==65533){e[D[148][j]]=37888+j;d[37888+j]=D[148][j]}D[149]="����������������������������������������������������������������旲旳旴旵旸旹旻旼旽旾旿昁昄昅昇昈昉昋昍昐昑昒昖昗昘昚昛昜昞昡昢昣昤昦昩昪昫昬昮昰昲昳昷昸昹昺昻昽昿晀時晄晅晆晇晈晉晊晍晎晐晑晘�晙晛晜晝晞晠晢晣晥晧晩晪晫晬晭晱晲晳晵晸晹晻晼晽晿暀暁暃暅暆暈暉暊暋暍暎暏暐暒暓暔暕暘暙暚暛暜暞暟暠暡暢暣暤暥暦暩暪暫暬暭暯暰暱暲暳暵暶暷暸暺暻暼暽暿曀曁曂曃曄曅曆曇曈曉曊曋曌曍曎曏曐曑曒曓曔曕曖曗曘曚曞曟曠曡曢曣曤曥曧曨曪曫曬曭曮曯曱曵曶書曺曻曽朁朂會�".split("");for(j=0;j!=D[149].length;++j)if(D[149][j].charCodeAt(0)!==65533){e[D[149][j]]=38144+j;d[38144+j]=D[149][j]}D[150]="����������������������������������������������������������������朄朅朆朇朌朎朏朑朒朓朖朘朙朚朜朞朠朡朢朣朤朥朧朩朮朰朲朳朶朷朸朹朻朼朾朿杁杄杅杇杊杋杍杒杔杕杗杘杙杚杛杝杢杣杤杦杧杫杬杮東杴杶�杸杹杺杻杽枀枂枃枅枆枈枊枌枍枎枏枑枒枓枔枖枙枛枟枠枡枤枦枩枬枮枱枲枴枹枺枻枼枽枾枿柀柂柅柆柇柈柉柊柋柌柍柎柕柖柗柛柟柡柣柤柦柧柨柪柫柭柮柲柵柶柷柸柹柺査柼柾栁栂栃栄栆栍栐栒栔栕栘栙栚栛栜栞栟栠栢栣栤栥栦栧栨栫栬栭栮栯栰栱栴栵栶栺栻栿桇桋桍桏桒桖桗桘桙桚桛�".split("");for(j=0;j!=D[150].length;++j)if(D[150][j].charCodeAt(0)!==65533){e[D[150][j]]=38400+j;d[38400+j]=D[150][j]}D[151]="����������������������������������������������������������������桜桝桞桟桪桬桭桮桯桰桱桲桳桵桸桹桺桻桼桽桾桿梀梂梄梇梈梉梊梋梌梍梎梐梑梒梔梕梖梘梙梚梛梜條梞梟梠梡梣梤梥梩梪梫梬梮梱梲梴梶梷梸�梹梺梻梼梽梾梿棁棃棄棅棆棇棈棊棌棎棏棐棑棓棔棖棗棙棛棜棝棞棟棡棢棤棥棦棧棨棩棪棫棬棭棯棲棳棴棶棷棸棻棽棾棿椀椂椃椄椆椇椈椉椊椌椏椑椓椔椕椖椗椘椙椚椛検椝椞椡椢椣椥椦椧椨椩椪椫椬椮椯椱椲椳椵椶椷椸椺椻椼椾楀楁楃楄楅楆楇楈楉楊楋楌楍楎楏楐楑楒楓楕楖楘楙楛楜楟�".split("");for(j=0;j!=D[151].length;++j)if(D[151][j].charCodeAt(0)!==65533){e[D[151][j]]=38656+j;d[38656+j]=D[151][j]}D[152]="����������������������������������������������������������������楡楢楤楥楧楨楩楪楬業楯楰楲楳楴極楶楺楻楽楾楿榁榃榅榊榋榌榎榏榐榑榒榓榖榗榙榚榝榞榟榠榡榢榣榤榥榦榩榪榬榮榯榰榲榳榵榶榸榹榺榼榽�榾榿槀槂槃槄槅槆槇槈槉構槍槏槑槒槓槕槖槗様槙槚槜槝槞槡槢槣槤槥槦槧槨槩槪槫槬槮槯槰槱槳槴槵槶槷槸槹槺槻槼槾樀樁樂樃樄樅樆樇樈樉樋樌樍樎樏樐樑樒樓樔樕樖標樚樛樜樝樞樠樢樣樤樥樦樧権樫樬樭樮樰樲樳樴樶樷樸樹樺樻樼樿橀橁橂橃橅橆橈橉橊橋橌橍橎橏橑橒橓橔橕橖橗橚�".split("");for(j=0;j!=D[152].length;++j)if(D[152][j].charCodeAt(0)!==65533){e[D[152][j]]=38912+j;d[38912+j]=D[152][j]}D[153]="����������������������������������������������������������������橜橝橞機橠橢橣橤橦橧橨橩橪橫橬橭橮橯橰橲橳橴橵橶橷橸橺橻橽橾橿檁檂檃檅檆檇檈檉檊檋檌檍檏檒檓檔檕檖檘檙檚檛檜檝檞檟檡檢檣檤檥檦�檧檨檪檭檮檯檰檱檲檳檴檵檶檷檸檹檺檻檼檽檾檿櫀櫁櫂櫃櫄櫅櫆櫇櫈櫉櫊櫋櫌櫍櫎櫏櫐櫑櫒櫓櫔櫕櫖櫗櫘櫙櫚櫛櫜櫝櫞櫟櫠櫡櫢櫣櫤櫥櫦櫧櫨櫩櫪櫫櫬櫭櫮櫯櫰櫱櫲櫳櫴櫵櫶櫷櫸櫹櫺櫻櫼櫽櫾櫿欀欁欂欃欄欅欆欇欈欉權欋欌欍欎欏欐欑欒欓欔欕欖欗欘欙欚欛欜欝欞欟欥欦欨欩欪欫欬欭欮�".split("");for(j=0;j!=D[153].length;++j)if(D[153][j].charCodeAt(0)!==65533){e[D[153][j]]=39168+j;d[39168+j]=D[153][j]}D[154]="����������������������������������������������������������������欯欰欱欳欴欵欶欸欻欼欽欿歀歁歂歄歅歈歊歋歍歎歏歐歑歒歓歔歕歖歗歘歚歛歜歝歞歟歠歡歨歩歫歬歭歮歯歰歱歲歳歴歵歶歷歸歺歽歾歿殀殅殈�殌殎殏殐殑殔殕殗殘殙殜殝殞殟殠殢殣殤殥殦殧殨殩殫殬殭殮殯殰殱殲殶殸殹殺殻殼殽殾毀毃毄毆毇毈毉毊毌毎毐毑毘毚毜毝毞毟毠毢毣毤毥毦毧毨毩毬毭毮毰毱毲毴毶毷毸毺毻毼毾毿氀氁氂氃氄氈氉氊氋氌氎氒気氜氝氞氠氣氥氫氬氭氱氳氶氷氹氺氻氼氾氿汃汄汅汈汋汌汍汎汏汑汒汓汖汘�".split("");for(j=0;j!=D[154].length;++j)if(D[154][j].charCodeAt(0)!==65533){e[D[154][j]]=39424+j;d[39424+j]=D[154][j]}D[155]="����������������������������������������������������������������汙汚汢汣汥汦汧汫汬汭汮汯汱汳汵汷汸決汻汼汿沀沄沇沊沋沍沎沑沒沕沖沗沘沚沜沝沞沠沢沨沬沯沰沴沵沶沷沺泀況泂泃泆泇泈泋泍泎泏泑泒泘�泙泚泜泝泟泤泦泧泩泬泭泲泴泹泿洀洂洃洅洆洈洉洊洍洏洐洑洓洔洕洖洘洜洝洟洠洡洢洣洤洦洨洩洬洭洯洰洴洶洷洸洺洿浀浂浄浉浌浐浕浖浗浘浛浝浟浡浢浤浥浧浨浫浬浭浰浱浲浳浵浶浹浺浻浽浾浿涀涁涃涄涆涇涊涋涍涏涐涒涖涗涘涙涚涜涢涥涬涭涰涱涳涴涶涷涹涺涻涼涽涾淁淂淃淈淉淊�".split("");for(j=0;j!=D[155].length;++j)if(D[155][j].charCodeAt(0)!==65533){e[D[155][j]]=39680+j;d[39680+j]=D[155][j]}D[156]="����������������������������������������������������������������淍淎淏淐淒淓淔淕淗淚淛淜淟淢淣淥淧淨淩淪淭淯淰淲淴淵淶淸淺淽淾淿渀渁渂渃渄渆渇済渉渋渏渒渓渕渘渙減渜渞渟渢渦渧渨渪測渮渰渱渳渵�渶渷渹渻渼渽渾渿湀湁湂湅湆湇湈湉湊湋湌湏湐湑湒湕湗湙湚湜湝湞湠湡湢湣湤湥湦湧湨湩湪湬湭湯湰湱湲湳湴湵湶湷湸湹湺湻湼湽満溁溂溄溇溈溊溋溌溍溎溑溒溓溔溕準溗溙溚溛溝溞溠溡溣溤溦溨溩溫溬溭溮溰溳溵溸溹溼溾溿滀滃滄滅滆滈滉滊滌滍滎滐滒滖滘滙滛滜滝滣滧滪滫滬滭滮滯�".split("");for(j=0;j!=D[156].length;++j)if(D[156][j].charCodeAt(0)!==65533){e[D[156][j]]=39936+j;d[39936+j]=D[156][j]}D[157]="����������������������������������������������������������������滰滱滲滳滵滶滷滸滺滻滼滽滾滿漀漁漃漄漅漇漈漊漋漌漍漎漐漑漒漖漗漘漙漚漛漜漝漞漟漡漢漣漥漦漧漨漬漮漰漲漴漵漷漸漹漺漻漼漽漿潀潁潂�潃潄潅潈潉潊潌潎潏潐潑潒潓潔潕潖潗潙潚潛潝潟潠潡潣潤潥潧潨潩潪潫潬潯潰潱潳潵潶潷潹潻潽潾潿澀澁澂澃澅澆澇澊澋澏澐澑澒澓澔澕澖澗澘澙澚澛澝澞澟澠澢澣澤澥澦澨澩澪澫澬澭澮澯澰澱澲澴澵澷澸澺澻澼澽澾澿濁濃濄濅濆濇濈濊濋濌濍濎濏濐濓濔濕濖濗濘濙濚濛濜濝濟濢濣濤濥�".split("");for(j=0;j!=D[157].length;++j)if(D[157][j].charCodeAt(0)!==65533){e[D[157][j]]=40192+j;d[40192+j]=D[157][j]}D[158]="����������������������������������������������������������������濦濧濨濩濪濫濬濭濰濱濲濳濴濵濶濷濸濹濺濻濼濽濾濿瀀瀁瀂瀃瀄瀅瀆瀇瀈瀉瀊瀋瀌瀍瀎瀏瀐瀒瀓瀔瀕瀖瀗瀘瀙瀜瀝瀞瀟瀠瀡瀢瀤瀥瀦瀧瀨瀩瀪�瀫瀬瀭瀮瀯瀰瀱瀲瀳瀴瀶瀷瀸瀺瀻瀼瀽瀾瀿灀灁灂灃灄灅灆灇灈灉灊灋灍灎灐灑灒灓灔灕灖灗灘灙灚灛灜灝灟灠灡灢灣灤灥灦灧灨灩灪灮灱灲灳灴灷灹灺灻災炁炂炃炄炆炇炈炋炌炍炏炐炑炓炗炘炚炛炞炟炠炡炢炣炤炥炦炧炨炩炪炰炲炴炵炶為炾炿烄烅烆烇烉烋烌烍烎烏烐烑烒烓烔烕烖烗烚�".split("");for(j=0;j!=D[158].length;++j)if(D[158][j].charCodeAt(0)!==65533){e[D[158][j]]=40448+j;d[40448+j]=D[158][j]}D[159]="����������������������������������������������������������������烜烝烞烠烡烢烣烥烪烮烰烱烲烳烴烵烶烸烺烻烼烾烿焀焁焂焃焄焅焆焇焈焋焌焍焎焏焑焒焔焗焛焜焝焞焟焠無焢焣焤焥焧焨焩焪焫焬焭焮焲焳焴�焵焷焸焹焺焻焼焽焾焿煀煁煂煃煄煆煇煈煉煋煍煏煐煑煒煓煔煕煖煗煘煙煚煛煝煟煠煡煢煣煥煩煪煫煬煭煯煰煱煴煵煶煷煹煻煼煾煿熀熁熂熃熅熆熇熈熉熋熌熍熎熐熑熒熓熕熖熗熚熛熜熝熞熡熢熣熤熥熦熧熩熪熫熭熮熯熰熱熲熴熶熷熸熺熻熼熽熾熿燀燁燂燄燅燆燇燈燉燊燋燌燍燏燐燑燒燓�".split("");for(j=0;j!=D[159].length;++j)if(D[159][j].charCodeAt(0)!==65533){e[D[159][j]]=40704+j;d[40704+j]=D[159][j]}D[160]="����������������������������������������������������������������燖燗燘燙燚燛燜燝燞營燡燢燣燤燦燨燩燪燫燬燭燯燰燱燲燳燴燵燶燷燸燺燻燼燽燾燿爀爁爂爃爄爅爇爈爉爊爋爌爍爎爏爐爑爒爓爔爕爖爗爘爙爚�爛爜爞爟爠爡爢爣爤爥爦爧爩爫爭爮爯爲爳爴爺爼爾牀牁牂牃牄牅牆牉牊牋牎牏牐牑牓牔牕牗牘牚牜牞牠牣牤牥牨牪牫牬牭牰牱牳牴牶牷牸牻牼牽犂犃犅犆犇犈犉犌犎犐犑犓犔犕犖犗犘犙犚犛犜犝犞犠犡犢犣犤犥犦犧犨犩犪犫犮犱犲犳犵犺犻犼犽犾犿狀狅狆狇狉狊狋狌狏狑狓狔狕狖狘狚狛�".split("");for(j=0;j!=D[160].length;++j)if(D[160][j].charCodeAt(0)!==65533){e[D[160][j]]=40960+j;d[40960+j]=D[160][j]}D[161]="����������������������������������������������������������������������������������������������������������������������������������������������������������������� 、。·ˉˇ¨〃々—~‖…‘’“”〔〕〈〉《》「」『』〖〗【】±×÷∶∧∨∑∏∪∩∈∷√⊥∥∠⌒⊙∫∮≡≌≈∽∝≠≮≯≤≥∞∵∴♂♀°′″℃$¤¢£‰§№☆★○●◎◇◆□■△▲※→←↑↓〓�".split("");for(j=0;j!=D[161].length;++j)if(D[161][j].charCodeAt(0)!==65533){e[D[161][j]]=41216+j;d[41216+j]=D[161][j]}D[162]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹ������⒈⒉⒊⒋⒌⒍⒎⒏⒐⒑⒒⒓⒔⒕⒖⒗⒘⒙⒚⒛⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂⒃⒄⒅⒆⒇①②③④⑤⑥⑦⑧⑨⑩��㈠㈡㈢㈣㈤㈥㈦㈧㈨㈩��ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩⅪⅫ���".split("");for(j=0;j!=D[162].length;++j)if(D[162][j].charCodeAt(0)!==65533){e[D[162][j]]=41472+j;d[41472+j]=D[162][j]}D[163]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������!"#¥%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|} ̄�".split("");for(j=0;j!=D[163].length;++j)if(D[163][j].charCodeAt(0)!==65533){e[D[163][j]]=41728+j;d[41728+j]=D[163][j]}D[164]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん������������".split("");for(j=0;j!=D[164].length;++j)if(D[164][j].charCodeAt(0)!==65533){e[D[164][j]]=41984+j;d[41984+j]=D[164][j]}D[165]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ���������".split("");for(j=0;j!=D[165].length;++j)if(D[165][j].charCodeAt(0)!==65533){e[D[165][j]]=42240+j;d[42240+j]=D[165][j]}D[166]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ��������αβγδεζηθικλμνξοπρστυφχψω�������︵︶︹︺︿﹀︽︾﹁﹂﹃﹄��︻︼︷︸︱�︳︴����������".split("");for(j=0;j!=D[166].length;++j)if(D[166][j].charCodeAt(0)!==65533){e[D[166][j]]=42496+j;d[42496+j]=D[166][j]}D[167]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ���������������абвгдеёжзийклмнопрстуфхцчшщъыьэюя��������������".split("");for(j=0;j!=D[167].length;++j)if(D[167][j].charCodeAt(0)!==65533){e[D[167][j]]=42752+j;d[42752+j]=D[167][j]}D[168]="����������������������������������������������������������������ˊˋ˙–―‥‵℅℉↖↗↘↙∕∟∣≒≦≧⊿═║╒╓╔╕╖╗╘╙╚╛╜╝╞╟╠╡╢╣╤╥╦╧╨╩╪╫╬╭╮╯╰╱╲╳▁▂▃▄▅▆▇�█▉▊▋▌▍▎▏▓▔▕▼▽◢◣◤◥☉⊕〒〝〞�����������āáǎàēéěèīíǐìōóǒòūúǔùǖǘǚǜüêɑ�ńň�ɡ����ㄅㄆㄇㄈㄉㄊㄋㄌㄍㄎㄏㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙㄚㄛㄜㄝㄞㄟㄠㄡㄢㄣㄤㄥㄦㄧㄨㄩ����������������������".split("");for(j=0;j!=D[168].length;++j)if(D[168][j].charCodeAt(0)!==65533){e[D[168][j]]=43008+j;d[43008+j]=D[168][j]}D[169]="����������������������������������������������������������������〡〢〣〤〥〦〧〨〩㊣㎎㎏㎜㎝㎞㎡㏄㏎㏑㏒㏕︰¬¦�℡㈱�‐���ー゛゜ヽヾ〆ゝゞ﹉﹊﹋﹌﹍﹎﹏﹐﹑﹒﹔﹕﹖﹗﹙﹚﹛﹜﹝﹞﹟﹠﹡�﹢﹣﹤﹥﹦﹨﹩﹪﹫�������������〇�������������─━│┃┄┅┆┇┈┉┊┋┌┍┎┏┐┑┒┓└┕┖┗┘┙┚┛├┝┞┟┠┡┢┣┤┥┦┧┨┩┪┫┬┭┮┯┰┱┲┳┴┵┶┷┸┹┺┻┼┽┾┿╀╁╂╃╄╅╆╇╈╉╊╋����������������".split("");for(j=0;j!=D[169].length;++j)if(D[169][j].charCodeAt(0)!==65533){e[D[169][j]]=43264+j;d[43264+j]=D[169][j]}D[170]="����������������������������������������������������������������狜狝狟狢狣狤狥狦狧狪狫狵狶狹狽狾狿猀猂猄猅猆猇猈猉猋猌猍猏猐猑猒猔猘猙猚猟猠猣猤猦猧猨猭猯猰猲猳猵猶猺猻猼猽獀獁獂獃獄獅獆獇獈�獉獊獋獌獎獏獑獓獔獕獖獘獙獚獛獜獝獞獟獡獢獣獤獥獦獧獨獩獪獫獮獰獱�����������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[170].length;++j)if(D[170][j].charCodeAt(0)!==65533){e[D[170][j]]=43520+j;d[43520+j]=D[170][j]}D[171]="����������������������������������������������������������������獲獳獴獵獶獷獸獹獺獻獼獽獿玀玁玂玃玅玆玈玊玌玍玏玐玒玓玔玕玗玘玙玚玜玝玞玠玡玣玤玥玦玧玨玪玬玭玱玴玵玶玸玹玼玽玾玿珁珃珄珅珆珇�珋珌珎珒珓珔珕珖珗珘珚珛珜珝珟珡珢珣珤珦珨珪珫珬珮珯珰珱珳珴珵珶珷�����������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[171].length;++j)if(D[171][j].charCodeAt(0)!==65533){e[D[171][j]]=43776+j;d[43776+j]=D[171][j]}D[172]="����������������������������������������������������������������珸珹珺珻珼珽現珿琀琁琂琄琇琈琋琌琍琎琑琒琓琔琕琖琗琘琙琜琝琞琟琠琡琣琤琧琩琫琭琯琱琲琷琸琹琺琻琽琾琿瑀瑂瑃瑄瑅瑆瑇瑈瑉瑊瑋瑌瑍�瑎瑏瑐瑑瑒瑓瑔瑖瑘瑝瑠瑡瑢瑣瑤瑥瑦瑧瑨瑩瑪瑫瑬瑮瑯瑱瑲瑳瑴瑵瑸瑹瑺�����������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[172].length;++j)if(D[172][j].charCodeAt(0)!==65533){e[D[172][j]]=44032+j;d[44032+j]=D[172][j]}D[173]="����������������������������������������������������������������瑻瑼瑽瑿璂璄璅璆璈璉璊璌璍璏璑璒璓璔璕璖璗璘璙璚璛璝璟璠璡璢璣璤璥璦璪璫璬璭璮璯環璱璲璳璴璵璶璷璸璹璻璼璽璾璿瓀瓁瓂瓃瓄瓅瓆瓇�瓈瓉瓊瓋瓌瓍瓎瓏瓐瓑瓓瓔瓕瓖瓗瓘瓙瓚瓛瓝瓟瓡瓥瓧瓨瓩瓪瓫瓬瓭瓰瓱瓲�����������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[173].length;++j)if(D[173][j].charCodeAt(0)!==65533){e[D[173][j]]=44288+j;d[44288+j]=D[173][j]}D[174]="����������������������������������������������������������������瓳瓵瓸瓹瓺瓻瓼瓽瓾甀甁甂甃甅甆甇甈甉甊甋甌甎甐甒甔甕甖甗甛甝甞甠甡產産甤甦甧甪甮甴甶甹甼甽甿畁畂畃畄畆畇畉畊畍畐畑畒畓畕畖畗畘�畝畞畟畠畡畢畣畤畧畨畩畫畬畭畮畯異畱畳畵當畷畺畻畼畽畾疀疁疂疄疅疇�����������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[174].length;++j)if(D[174][j].charCodeAt(0)!==65533){e[D[174][j]]=44544+j;d[44544+j]=D[174][j]}D[175]="����������������������������������������������������������������疈疉疊疌疍疎疐疓疕疘疛疜疞疢疦疧疨疩疪疭疶疷疺疻疿痀痁痆痋痌痎痏痐痑痓痗痙痚痜痝痟痠痡痥痩痬痭痮痯痲痳痵痶痷痸痺痻痽痾瘂瘄瘆瘇�瘈瘉瘋瘍瘎瘏瘑瘒瘓瘔瘖瘚瘜瘝瘞瘡瘣瘧瘨瘬瘮瘯瘱瘲瘶瘷瘹瘺瘻瘽癁療癄�����������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[175].length;++j)if(D[175][j].charCodeAt(0)!==65533){e[D[175][j]]=44800+j;d[44800+j]=D[175][j]}D[176]="����������������������������������������������������������������癅癆癇癈癉癊癋癎癏癐癑癒癓癕癗癘癙癚癛癝癟癠癡癢癤癥癦癧癨癩癪癬癭癮癰癱癲癳癴癵癶癷癹発發癿皀皁皃皅皉皊皌皍皏皐皒皔皕皗皘皚皛�皜皝皞皟皠皡皢皣皥皦皧皨皩皪皫皬皭皯皰皳皵皶皷皸皹皺皻皼皽皾盀盁盃啊阿埃挨哎唉哀皑癌蔼矮艾碍爱隘鞍氨安俺按暗岸胺案肮昂盎凹敖熬翱袄傲奥懊澳芭捌扒叭吧笆八疤巴拔跋靶把耙坝霸罢爸白柏百摆佰败拜稗斑班搬扳般颁板版扮拌伴瓣半办绊邦帮梆榜膀绑棒磅蚌镑傍谤苞胞包褒剥�".split("");for(j=0;j!=D[176].length;++j)if(D[176][j].charCodeAt(0)!==65533){e[D[176][j]]=45056+j;d[45056+j]=D[176][j]}D[177]="����������������������������������������������������������������盄盇盉盋盌盓盕盙盚盜盝盞盠盡盢監盤盦盧盨盩盪盫盬盭盰盳盵盶盷盺盻盽盿眀眂眃眅眆眊県眎眏眐眑眒眓眔眕眖眗眘眛眜眝眞眡眣眤眥眧眪眫�眬眮眰眱眲眳眴眹眻眽眾眿睂睄睅睆睈睉睊睋睌睍睎睏睒睓睔睕睖睗睘睙睜薄雹保堡饱宝抱报暴豹鲍爆杯碑悲卑北辈背贝钡倍狈备惫焙被奔苯本笨崩绷甭泵蹦迸逼鼻比鄙笔彼碧蓖蔽毕毙毖币庇痹闭敝弊必辟壁臂避陛鞭边编贬扁便变卞辨辩辫遍标彪膘表鳖憋别瘪彬斌濒滨宾摈兵冰柄丙秉饼炳�".split("");for(j=0;j!=D[177].length;++j)if(D[177][j].charCodeAt(0)!==65533){e[D[177][j]]=45312+j;d[45312+j]=D[177][j]}D[178]="����������������������������������������������������������������睝睞睟睠睤睧睩睪睭睮睯睰睱睲睳睴睵睶睷睸睺睻睼瞁瞂瞃瞆瞇瞈瞉瞊瞋瞏瞐瞓瞔瞕瞖瞗瞘瞙瞚瞛瞜瞝瞞瞡瞣瞤瞦瞨瞫瞭瞮瞯瞱瞲瞴瞶瞷瞸瞹瞺�瞼瞾矀矁矂矃矄矅矆矇矈矉矊矋矌矎矏矐矑矒矓矔矕矖矘矙矚矝矞矟矠矡矤病并玻菠播拨钵波博勃搏铂箔伯帛舶脖膊渤泊驳捕卜哺补埠不布步簿部怖擦猜裁材才财睬踩采彩菜蔡餐参蚕残惭惨灿苍舱仓沧藏操糙槽曹草厕策侧册测层蹭插叉茬茶查碴搽察岔差诧拆柴豺搀掺蝉馋谗缠铲产阐颤昌猖�".split("");for(j=0;j!=D[178].length;++j)if(D[178][j].charCodeAt(0)!==65533){e[D[178][j]]=45568+j;d[45568+j]=D[178][j]}D[179]="����������������������������������������������������������������矦矨矪矯矰矱矲矴矵矷矹矺矻矼砃砄砅砆砇砈砊砋砎砏砐砓砕砙砛砞砠砡砢砤砨砪砫砮砯砱砲砳砵砶砽砿硁硂硃硄硆硈硉硊硋硍硏硑硓硔硘硙硚�硛硜硞硟硠硡硢硣硤硥硦硧硨硩硯硰硱硲硳硴硵硶硸硹硺硻硽硾硿碀碁碂碃场尝常长偿肠厂敞畅唱倡超抄钞朝嘲潮巢吵炒车扯撤掣彻澈郴臣辰尘晨忱沉陈趁衬撑称城橙成呈乘程惩澄诚承逞骋秤吃痴持匙池迟弛驰耻齿侈尺赤翅斥炽充冲虫崇宠抽酬畴踌稠愁筹仇绸瞅丑臭初出橱厨躇锄雏滁除楚�".split("");for(j=0;j!=D[179].length;++j)if(D[179][j].charCodeAt(0)!==65533){e[D[179][j]]=45824+j;d[45824+j]=D[179][j]}D[180]="����������������������������������������������������������������碄碅碆碈碊碋碏碐碒碔碕碖碙碝碞碠碢碤碦碨碩碪碫碬碭碮碯碵碶碷碸確碻碼碽碿磀磂磃磄磆磇磈磌磍磎磏磑磒磓磖磗磘磚磛磜磝磞磟磠磡磢磣�磤磥磦磧磩磪磫磭磮磯磰磱磳磵磶磸磹磻磼磽磾磿礀礂礃礄礆礇礈礉礊礋礌础储矗搐触处揣川穿椽传船喘串疮窗幢床闯创吹炊捶锤垂春椿醇唇淳纯蠢戳绰疵茨磁雌辞慈瓷词此刺赐次聪葱囱匆从丛凑粗醋簇促蹿篡窜摧崔催脆瘁粹淬翠村存寸磋撮搓措挫错搭达答瘩打大呆歹傣戴带殆代贷袋待逮�".split("");for(j=0;j!=D[180].length;++j)if(D[180][j].charCodeAt(0)!==65533){e[D[180][j]]=46080+j;d[46080+j]=D[180][j]}D[181]="����������������������������������������������������������������礍礎礏礐礑礒礔礕礖礗礘礙礚礛礜礝礟礠礡礢礣礥礦礧礨礩礪礫礬礭礮礯礰礱礲礳礵礶礷礸礹礽礿祂祃祄祅祇祊祋祌祍祎祏祐祑祒祔祕祘祙祡祣�祤祦祩祪祫祬祮祰祱祲祳祴祵祶祹祻祼祽祾祿禂禃禆禇禈禉禋禌禍禎禐禑禒怠耽担丹单郸掸胆旦氮但惮淡诞弹蛋当挡党荡档刀捣蹈倒岛祷导到稻悼道盗德得的蹬灯登等瞪凳邓堤低滴迪敌笛狄涤翟嫡抵底地蒂第帝弟递缔颠掂滇碘点典靛垫电佃甸店惦奠淀殿碉叼雕凋刁掉吊钓调跌爹碟蝶迭谍叠�".split("");for(j=0;j!=D[181].length;++j)if(D[181][j].charCodeAt(0)!==65533){e[D[181][j]]=46336+j;d[46336+j]=D[181][j]}D[182]="����������������������������������������������������������������禓禔禕禖禗禘禙禛禜禝禞禟禠禡禢禣禤禥禦禨禩禪禫禬禭禮禯禰禱禲禴禵禶禷禸禼禿秂秄秅秇秈秊秌秎秏秐秓秔秖秗秙秚秛秜秝秞秠秡秢秥秨秪�秬秮秱秲秳秴秵秶秷秹秺秼秾秿稁稄稅稇稈稉稊稌稏稐稑稒稓稕稖稘稙稛稜丁盯叮钉顶鼎锭定订丢东冬董懂动栋侗恫冻洞兜抖斗陡豆逗痘都督毒犊独读堵睹赌杜镀肚度渡妒端短锻段断缎堆兑队对墩吨蹲敦顿囤钝盾遁掇哆多夺垛躲朵跺舵剁惰堕蛾峨鹅俄额讹娥恶厄扼遏鄂饿恩而儿耳尔饵洱二�".split("");for(j=0;j!=D[182].length;++j)if(D[182][j].charCodeAt(0)!==65533){e[D[182][j]]=46592+j;d[46592+j]=D[182][j]}D[183]="����������������������������������������������������������������稝稟稡稢稤稥稦稧稨稩稪稫稬稭種稯稰稱稲稴稵稶稸稺稾穀穁穂穃穄穅穇穈穉穊穋穌積穎穏穐穒穓穔穕穖穘穙穚穛穜穝穞穟穠穡穢穣穤穥穦穧穨�穩穪穫穬穭穮穯穱穲穳穵穻穼穽穾窂窅窇窉窊窋窌窎窏窐窓窔窙窚窛窞窡窢贰发罚筏伐乏阀法珐藩帆番翻樊矾钒繁凡烦反返范贩犯饭泛坊芳方肪房防妨仿访纺放菲非啡飞肥匪诽吠肺废沸费芬酚吩氛分纷坟焚汾粉奋份忿愤粪丰封枫蜂峰锋风疯烽逢冯缝讽奉凤佛否夫敷肤孵扶拂辐幅氟符伏俘服�".split("");for(j=0;j!=D[183].length;++j)if(D[183][j].charCodeAt(0)!==65533){e[D[183][j]]=46848+j;d[46848+j]=D[183][j]}D[184]="����������������������������������������������������������������窣窤窧窩窪窫窮窯窰窱窲窴窵窶窷窸窹窺窻窼窽窾竀竁竂竃竄竅竆竇竈竉竊竌竍竎竏竐竑竒竓竔竕竗竘竚竛竜竝竡竢竤竧竨竩竪竫竬竮竰竱竲竳�竴竵競竷竸竻竼竾笀笁笂笅笇笉笌笍笎笐笒笓笖笗笘笚笜笝笟笡笢笣笧笩笭浮涪福袱弗甫抚辅俯釜斧脯腑府腐赴副覆赋复傅付阜父腹负富讣附妇缚咐噶嘎该改概钙盖溉干甘杆柑竿肝赶感秆敢赣冈刚钢缸肛纲岗港杠篙皋高膏羔糕搞镐稿告哥歌搁戈鸽胳疙割革葛格蛤阁隔铬个各给根跟耕更庚羹�".split("");for(j=0;j!=D[184].length;++j)if(D[184][j].charCodeAt(0)!==65533){e[D[184][j]]=47104+j;d[47104+j]=D[184][j]}D[185]="����������������������������������������������������������������笯笰笲笴笵笶笷笹笻笽笿筀筁筂筃筄筆筈筊筍筎筓筕筗筙筜筞筟筡筣筤筥筦筧筨筩筪筫筬筭筯筰筳筴筶筸筺筼筽筿箁箂箃箄箆箇箈箉箊箋箌箎箏�箑箒箓箖箘箙箚箛箞箟箠箣箤箥箮箯箰箲箳箵箶箷箹箺箻箼箽箾箿節篂篃範埂耿梗工攻功恭龚供躬公宫弓巩汞拱贡共钩勾沟苟狗垢构购够辜菇咕箍估沽孤姑鼓古蛊骨谷股故顾固雇刮瓜剐寡挂褂乖拐怪棺关官冠观管馆罐惯灌贯光广逛瑰规圭硅归龟闺轨鬼诡癸桂柜跪贵刽辊滚棍锅郭国果裹过哈�".split("");for(j=0;j!=D[185].length;++j)if(D[185][j].charCodeAt(0)!==65533){e[D[185][j]]=47360+j;d[47360+j]=D[185][j]}D[186]="����������������������������������������������������������������篅篈築篊篋篍篎篏篐篒篔篕篖篗篘篛篜篞篟篠篢篣篤篧篨篩篫篬篭篯篰篲篳篴篵篶篸篹篺篻篽篿簀簁簂簃簄簅簆簈簉簊簍簎簐簑簒簓簔簕簗簘簙�簚簛簜簝簞簠簡簢簣簤簥簨簩簫簬簭簮簯簰簱簲簳簴簵簶簷簹簺簻簼簽簾籂骸孩海氦亥害骇酣憨邯韩含涵寒函喊罕翰撼捍旱憾悍焊汗汉夯杭航壕嚎豪毫郝好耗号浩呵喝荷菏核禾和何合盒貉阂河涸赫褐鹤贺嘿黑痕很狠恨哼亨横衡恒轰哄烘虹鸿洪宏弘红喉侯猴吼厚候后呼乎忽瑚壶葫胡蝴狐糊湖�".split("");for(j=0;j!=D[186].length;++j)if(D[186][j].charCodeAt(0)!==65533){e[D[186][j]]=47616+j;d[47616+j]=D[186][j]}D[187]="����������������������������������������������������������������籃籄籅籆籇籈籉籊籋籌籎籏籐籑籒籓籔籕籖籗籘籙籚籛籜籝籞籟籠籡籢籣籤籥籦籧籨籩籪籫籬籭籮籯籰籱籲籵籶籷籸籹籺籾籿粀粁粂粃粄粅粆粇�粈粊粋粌粍粎粏粐粓粔粖粙粚粛粠粡粣粦粧粨粩粫粬粭粯粰粴粵粶粷粸粺粻弧虎唬护互沪户花哗华猾滑画划化话槐徊怀淮坏欢环桓还缓换患唤痪豢焕涣宦幻荒慌黄磺蝗簧皇凰惶煌晃幌恍谎灰挥辉徽恢蛔回毁悔慧卉惠晦贿秽会烩汇讳诲绘荤昏婚魂浑混豁活伙火获或惑霍货祸击圾基机畸稽积箕�".split("");for(j=0;j!=D[187].length;++j)if(D[187][j].charCodeAt(0)!==65533){e[D[187][j]]=47872+j;d[47872+j]=D[187][j]}D[188]="����������������������������������������������������������������粿糀糂糃糄糆糉糋糎糏糐糑糒糓糔糘糚糛糝糞糡糢糣糤糥糦糧糩糪糫糬糭糮糰糱糲糳糴糵糶糷糹糺糼糽糾糿紀紁紂紃約紅紆紇紈紉紋紌納紎紏紐�紑紒紓純紕紖紗紘紙級紛紜紝紞紟紡紣紤紥紦紨紩紪紬紭紮細紱紲紳紴紵紶肌饥迹激讥鸡姬绩缉吉极棘辑籍集及急疾汲即嫉级挤几脊己蓟技冀季伎祭剂悸济寄寂计记既忌际妓继纪嘉枷夹佳家加荚颊贾甲钾假稼价架驾嫁歼监坚尖笺间煎兼肩艰奸缄茧检柬碱硷拣捡简俭剪减荐槛鉴践贱见键箭件�".split("");for(j=0;j!=D[188].length;++j)if(D[188][j].charCodeAt(0)!==65533){e[D[188][j]]=48128+j;d[48128+j]=D[188][j]}D[189]="����������������������������������������������������������������紷紸紹紺紻紼紽紾紿絀絁終絃組絅絆絇絈絉絊絋経絍絎絏結絑絒絓絔絕絖絗絘絙絚絛絜絝絞絟絠絡絢絣絤絥給絧絨絩絪絫絬絭絯絰統絲絳絴絵絶�絸絹絺絻絼絽絾絿綀綁綂綃綄綅綆綇綈綉綊綋綌綍綎綏綐綑綒經綔綕綖綗綘健舰剑饯渐溅涧建僵姜将浆江疆蒋桨奖讲匠酱降蕉椒礁焦胶交郊浇骄娇嚼搅铰矫侥脚狡角饺缴绞剿教酵轿较叫窖揭接皆秸街阶截劫节桔杰捷睫竭洁结解姐戒藉芥界借介疥诫届巾筋斤金今津襟紧锦仅谨进靳晋禁近烬浸�".split("");for(j=0;j!=D[189].length;++j)if(D[189][j].charCodeAt(0)!==65533){e[D[189][j]]=48384+j;d[48384+j]=D[189][j]}D[190]="����������������������������������������������������������������継続綛綜綝綞綟綠綡綢綣綤綥綧綨綩綪綫綬維綯綰綱網綳綴綵綶綷綸綹綺綻綼綽綾綿緀緁緂緃緄緅緆緇緈緉緊緋緌緍緎総緐緑緒緓緔緕緖緗緘緙�線緛緜緝緞緟締緡緢緣緤緥緦緧編緩緪緫緬緭緮緯緰緱緲緳練緵緶緷緸緹緺尽劲荆兢茎睛晶鲸京惊精粳经井警景颈静境敬镜径痉靖竟竞净炯窘揪究纠玖韭久灸九酒厩救旧臼舅咎就疚鞠拘狙疽居驹菊局咀矩举沮聚拒据巨具距踞锯俱句惧炬剧捐鹃娟倦眷卷绢撅攫抉掘倔爵觉决诀绝均菌钧军君峻�".split("");for(j=0;j!=D[190].length;++j)if(D[190][j].charCodeAt(0)!==65533){e[D[190][j]]=48640+j;d[48640+j]=D[190][j]}D[191]="����������������������������������������������������������������緻緼緽緾緿縀縁縂縃縄縅縆縇縈縉縊縋縌縍縎縏縐縑縒縓縔縕縖縗縘縙縚縛縜縝縞縟縠縡縢縣縤縥縦縧縨縩縪縫縬縭縮縯縰縱縲縳縴縵縶縷縸縹�縺縼總績縿繀繂繃繄繅繆繈繉繊繋繌繍繎繏繐繑繒繓織繕繖繗繘繙繚繛繜繝俊竣浚郡骏喀咖卡咯开揩楷凯慨刊堪勘坎砍看康慷糠扛抗亢炕考拷烤靠坷苛柯棵磕颗科壳咳可渴克刻客课肯啃垦恳坑吭空恐孔控抠口扣寇枯哭窟苦酷库裤夸垮挎跨胯块筷侩快宽款匡筐狂框矿眶旷况亏盔岿窥葵奎魁傀�".split("");for(j=0;j!=D[191].length;++j)if(D[191][j].charCodeAt(0)!==65533){e[D[191][j]]=48896+j;d[48896+j]=D[191][j]}D[192]="����������������������������������������������������������������繞繟繠繡繢繣繤繥繦繧繨繩繪繫繬繭繮繯繰繱繲繳繴繵繶繷繸繹繺繻繼繽繾繿纀纁纃纄纅纆纇纈纉纊纋續纍纎纏纐纑纒纓纔纕纖纗纘纙纚纜纝纞�纮纴纻纼绖绤绬绹缊缐缞缷缹缻缼缽缾缿罀罁罃罆罇罈罉罊罋罌罍罎罏罒罓馈愧溃坤昆捆困括扩廓阔垃拉喇蜡腊辣啦莱来赖蓝婪栏拦篮阑兰澜谰揽览懒缆烂滥琅榔狼廊郎朗浪捞劳牢老佬姥酪烙涝勒乐雷镭蕾磊累儡垒擂肋类泪棱楞冷厘梨犁黎篱狸离漓理李里鲤礼莉荔吏栗丽厉励砾历利傈例俐�".split("");for(j=0;j!=D[192].length;++j)if(D[192][j].charCodeAt(0)!==65533){e[D[192][j]]=49152+j;d[49152+j]=D[192][j]}D[193]="����������������������������������������������������������������罖罙罛罜罝罞罠罣罤罥罦罧罫罬罭罯罰罳罵罶罷罸罺罻罼罽罿羀羂羃羄羅羆羇羈羉羋羍羏羐羑羒羓羕羖羗羘羙羛羜羠羢羣羥羦羨義羪羫羬羭羮羱�羳羴羵羶羷羺羻羾翀翂翃翄翆翇翈翉翋翍翏翐翑習翓翖翗翙翚翛翜翝翞翢翣痢立粒沥隶力璃哩俩联莲连镰廉怜涟帘敛脸链恋炼练粮凉梁粱良两辆量晾亮谅撩聊僚疗燎寥辽潦了撂镣廖料列裂烈劣猎琳林磷霖临邻鳞淋凛赁吝拎玲菱零龄铃伶羚凌灵陵岭领另令溜琉榴硫馏留刘瘤流柳六龙聋咙笼窿�".split("");for(j=0;j!=D[193].length;++j)if(D[193][j].charCodeAt(0)!==65533){e[D[193][j]]=49408+j;d[49408+j]=D[193][j]}D[194]="����������������������������������������������������������������翤翧翨翪翫翬翭翯翲翴翵翶翷翸翹翺翽翾翿耂耇耈耉耊耎耏耑耓耚耛耝耞耟耡耣耤耫耬耭耮耯耰耲耴耹耺耼耾聀聁聄聅聇聈聉聎聏聐聑聓聕聖聗�聙聛聜聝聞聟聠聡聢聣聤聥聦聧聨聫聬聭聮聯聰聲聳聴聵聶職聸聹聺聻聼聽隆垄拢陇楼娄搂篓漏陋芦卢颅庐炉掳卤虏鲁麓碌露路赂鹿潞禄录陆戮驴吕铝侣旅履屡缕虑氯律率滤绿峦挛孪滦卵乱掠略抡轮伦仑沦纶论萝螺罗逻锣箩骡裸落洛骆络妈麻玛码蚂马骂嘛吗埋买麦卖迈脉瞒馒蛮满蔓曼慢漫�".split("");for(j=0;j!=D[194].length;++j)if(D[194][j].charCodeAt(0)!==65533){e[D[194][j]]=49664+j;d[49664+j]=D[194][j]}D[195]="����������������������������������������������������������������聾肁肂肅肈肊肍肎肏肐肑肒肔肕肗肙肞肣肦肧肨肬肰肳肵肶肸肹肻胅胇胈胉胊胋胏胐胑胒胓胔胕胘胟胠胢胣胦胮胵胷胹胻胾胿脀脁脃脄脅脇脈脋�脌脕脗脙脛脜脝脟脠脡脢脣脤脥脦脧脨脩脪脫脭脮脰脳脴脵脷脹脺脻脼脽脿谩芒茫盲氓忙莽猫茅锚毛矛铆卯茂冒帽貌贸么玫枚梅酶霉煤没眉媒镁每美昧寐妹媚门闷们萌蒙檬盟锰猛梦孟眯醚靡糜迷谜弥米秘觅泌蜜密幂棉眠绵冕免勉娩缅面苗描瞄藐秒渺庙妙蔑灭民抿皿敏悯闽明螟鸣铭名命谬摸�".split("");for(j=0;j!=D[195].length;++j)if(D[195][j].charCodeAt(0)!==65533){e[D[195][j]]=49920+j;d[49920+j]=D[195][j]}D[196]="����������������������������������������������������������������腀腁腂腃腄腅腇腉腍腎腏腒腖腗腘腛腜腝腞腟腡腢腣腤腦腨腪腫腬腯腲腳腵腶腷腸膁膃膄膅膆膇膉膋膌膍膎膐膒膓膔膕膖膗膙膚膞膟膠膡膢膤膥�膧膩膫膬膭膮膯膰膱膲膴膵膶膷膸膹膼膽膾膿臄臅臇臈臉臋臍臎臏臐臑臒臓摹蘑模膜磨摩魔抹末莫墨默沫漠寞陌谋牟某拇牡亩姆母墓暮幕募慕木目睦牧穆拿哪呐钠那娜纳氖乃奶耐奈南男难囊挠脑恼闹淖呢馁内嫩能妮霓倪泥尼拟你匿腻逆溺蔫拈年碾撵捻念娘酿鸟尿捏聂孽啮镊镍涅您柠狞凝宁�".split("");for(j=0;j!=D[196].length;++j)if(D[196][j].charCodeAt(0)!==65533){e[D[196][j]]=50176+j;d[50176+j]=D[196][j]}D[197]="����������������������������������������������������������������臔臕臖臗臘臙臚臛臜臝臞臟臠臡臢臤臥臦臨臩臫臮臯臰臱臲臵臶臷臸臹臺臽臿舃與興舉舊舋舎舏舑舓舕舖舗舘舙舚舝舠舤舥舦舧舩舮舲舺舼舽舿�艀艁艂艃艅艆艈艊艌艍艎艐艑艒艓艔艕艖艗艙艛艜艝艞艠艡艢艣艤艥艦艧艩拧泞牛扭钮纽脓浓农弄奴努怒女暖虐疟挪懦糯诺哦欧鸥殴藕呕偶沤啪趴爬帕怕琶拍排牌徘湃派攀潘盘磐盼畔判叛乓庞旁耪胖抛咆刨炮袍跑泡呸胚培裴赔陪配佩沛喷盆砰抨烹澎彭蓬棚硼篷膨朋鹏捧碰坯砒霹批披劈琵毗�".split("");for(j=0;j!=D[197].length;++j)if(D[197][j].charCodeAt(0)!==65533){e[D[197][j]]=50432+j;d[50432+j]=D[197][j]}D[198]="����������������������������������������������������������������艪艫艬艭艱艵艶艷艸艻艼芀芁芃芅芆芇芉芌芐芓芔芕芖芚芛芞芠芢芣芧芲芵芶芺芻芼芿苀苂苃苅苆苉苐苖苙苚苝苢苧苨苩苪苬苭苮苰苲苳苵苶苸�苺苼苽苾苿茀茊茋茍茐茒茓茖茘茙茝茞茟茠茡茢茣茤茥茦茩茪茮茰茲茷茻茽啤脾疲皮匹痞僻屁譬篇偏片骗飘漂瓢票撇瞥拼频贫品聘乒坪苹萍平凭瓶评屏坡泼颇婆破魄迫粕剖扑铺仆莆葡菩蒲埔朴圃普浦谱曝瀑期欺栖戚妻七凄漆柒沏其棋奇歧畦崎脐齐旗祈祁骑起岂乞企启契砌器气迄弃汽泣讫掐�".split("");for(j=0;j!=D[198].length;++j)if(D[198][j].charCodeAt(0)!==65533){e[D[198][j]]=50688+j;d[50688+j]=D[198][j]}D[199]="����������������������������������������������������������������茾茿荁荂荄荅荈荊荋荌荍荎荓荕荖荗荘荙荝荢荰荱荲荳荴荵荶荹荺荾荿莀莁莂莃莄莇莈莊莋莌莍莏莐莑莔莕莖莗莙莚莝莟莡莢莣莤莥莦莧莬莭莮�莯莵莻莾莿菂菃菄菆菈菉菋菍菎菐菑菒菓菕菗菙菚菛菞菢菣菤菦菧菨菫菬菭恰洽牵扦钎铅千迁签仟谦乾黔钱钳前潜遣浅谴堑嵌欠歉枪呛腔羌墙蔷强抢橇锹敲悄桥瞧乔侨巧鞘撬翘峭俏窍切茄且怯窃钦侵亲秦琴勤芹擒禽寝沁青轻氢倾卿清擎晴氰情顷请庆琼穷秋丘邱球求囚酋泅趋区蛆曲躯屈驱渠�".split("");for(j=0;j!=D[199].length;++j)if(D[199][j].charCodeAt(0)!==65533){e[D[199][j]]=50944+j;d[50944+j]=D[199][j]}D[200]="����������������������������������������������������������������菮華菳菴菵菶菷菺菻菼菾菿萀萂萅萇萈萉萊萐萒萓萔萕萖萗萙萚萛萞萟萠萡萢萣萩萪萫萬萭萮萯萰萲萳萴萵萶萷萹萺萻萾萿葀葁葂葃葄葅葇葈葉�葊葋葌葍葎葏葐葒葓葔葕葖葘葝葞葟葠葢葤葥葦葧葨葪葮葯葰葲葴葷葹葻葼取娶龋趣去圈颧权醛泉全痊拳犬券劝缺炔瘸却鹊榷确雀裙群然燃冉染瓤壤攘嚷让饶扰绕惹热壬仁人忍韧任认刃妊纫扔仍日戎茸蓉荣融熔溶容绒冗揉柔肉茹蠕儒孺如辱乳汝入褥软阮蕊瑞锐闰润若弱撒洒萨腮鳃塞赛三叁�".split("");for(j=0;j!=D[200].length;++j)if(D[200][j].charCodeAt(0)!==65533){e[D[200][j]]=51200+j;d[51200+j]=D[200][j]}D[201]="����������������������������������������������������������������葽葾葿蒀蒁蒃蒄蒅蒆蒊蒍蒏蒐蒑蒒蒓蒔蒕蒖蒘蒚蒛蒝蒞蒟蒠蒢蒣蒤蒥蒦蒧蒨蒩蒪蒫蒬蒭蒮蒰蒱蒳蒵蒶蒷蒻蒼蒾蓀蓂蓃蓅蓆蓇蓈蓋蓌蓎蓏蓒蓔蓕蓗�蓘蓙蓚蓛蓜蓞蓡蓢蓤蓧蓨蓩蓪蓫蓭蓮蓯蓱蓲蓳蓴蓵蓶蓷蓸蓹蓺蓻蓽蓾蔀蔁蔂伞散桑嗓丧搔骚扫嫂瑟色涩森僧莎砂杀刹沙纱傻啥煞筛晒珊苫杉山删煽衫闪陕擅赡膳善汕扇缮墒伤商赏晌上尚裳梢捎稍烧芍勺韶少哨邵绍奢赊蛇舌舍赦摄射慑涉社设砷申呻伸身深娠绅神沈审婶甚肾慎渗声生甥牲升绳�".split("");for(j=0;j!=D[201].length;++j)if(D[201][j].charCodeAt(0)!==65533){e[D[201][j]]=51456+j;d[51456+j]=D[201][j]}D[202]="����������������������������������������������������������������蔃蔄蔅蔆蔇蔈蔉蔊蔋蔍蔎蔏蔐蔒蔔蔕蔖蔘蔙蔛蔜蔝蔞蔠蔢蔣蔤蔥蔦蔧蔨蔩蔪蔭蔮蔯蔰蔱蔲蔳蔴蔵蔶蔾蔿蕀蕁蕂蕄蕅蕆蕇蕋蕌蕍蕎蕏蕐蕑蕒蕓蕔蕕�蕗蕘蕚蕛蕜蕝蕟蕠蕡蕢蕣蕥蕦蕧蕩蕪蕫蕬蕭蕮蕯蕰蕱蕳蕵蕶蕷蕸蕼蕽蕿薀薁省盛剩胜圣师失狮施湿诗尸虱十石拾时什食蚀实识史矢使屎驶始式示士世柿事拭誓逝势是嗜噬适仕侍释饰氏市恃室视试收手首守寿授售受瘦兽蔬枢梳殊抒输叔舒淑疏书赎孰熟薯暑曙署蜀黍鼠属术述树束戍竖墅庶数漱�".split("");for(j=0;j!=D[202].length;++j)if(D[202][j].charCodeAt(0)!==65533){e[D[202][j]]=51712+j;d[51712+j]=D[202][j]}D[203]="����������������������������������������������������������������薂薃薆薈薉薊薋薌薍薎薐薑薒薓薔薕薖薗薘薙薚薝薞薟薠薡薢薣薥薦薧薩薫薬薭薱薲薳薴薵薶薸薺薻薼薽薾薿藀藂藃藄藅藆藇藈藊藋藌藍藎藑藒�藔藖藗藘藙藚藛藝藞藟藠藡藢藣藥藦藧藨藪藫藬藭藮藯藰藱藲藳藴藵藶藷藸恕刷耍摔衰甩帅栓拴霜双爽谁水睡税吮瞬顺舜说硕朔烁斯撕嘶思私司丝死肆寺嗣四伺似饲巳松耸怂颂送宋讼诵搜艘擞嗽苏酥俗素速粟僳塑溯宿诉肃酸蒜算虽隋随绥髓碎岁穗遂隧祟孙损笋蓑梭唆缩琐索锁所塌他它她塔�".split("");for(j=0;j!=D[203].length;++j)if(D[203][j].charCodeAt(0)!==65533){e[D[203][j]]=51968+j;d[51968+j]=D[203][j]}D[204]="����������������������������������������������������������������藹藺藼藽藾蘀蘁蘂蘃蘄蘆蘇蘈蘉蘊蘋蘌蘍蘎蘏蘐蘒蘓蘔蘕蘗蘘蘙蘚蘛蘜蘝蘞蘟蘠蘡蘢蘣蘤蘥蘦蘨蘪蘫蘬蘭蘮蘯蘰蘱蘲蘳蘴蘵蘶蘷蘹蘺蘻蘽蘾蘿虀�虁虂虃虄虅虆虇虈虉虊虋虌虒虓處虖虗虘虙虛虜虝號虠虡虣虤虥虦虧虨虩虪獭挞蹋踏胎苔抬台泰酞太态汰坍摊贪瘫滩坛檀痰潭谭谈坦毯袒碳探叹炭汤塘搪堂棠膛唐糖倘躺淌趟烫掏涛滔绦萄桃逃淘陶讨套特藤腾疼誊梯剔踢锑提题蹄啼体替嚏惕涕剃屉天添填田甜恬舔腆挑条迢眺跳贴铁帖厅听烃�".split("");for(j=0;j!=D[204].length;++j)if(D[204][j].charCodeAt(0)!==65533){e[D[204][j]]=52224+j;d[52224+j]=D[204][j]}D[205]="����������������������������������������������������������������虭虯虰虲虳虴虵虶虷虸蚃蚄蚅蚆蚇蚈蚉蚎蚏蚐蚑蚒蚔蚖蚗蚘蚙蚚蚛蚞蚟蚠蚡蚢蚥蚦蚫蚭蚮蚲蚳蚷蚸蚹蚻蚼蚽蚾蚿蛁蛂蛃蛅蛈蛌蛍蛒蛓蛕蛖蛗蛚蛜�蛝蛠蛡蛢蛣蛥蛦蛧蛨蛪蛫蛬蛯蛵蛶蛷蛺蛻蛼蛽蛿蜁蜄蜅蜆蜋蜌蜎蜏蜐蜑蜔蜖汀廷停亭庭挺艇通桐酮瞳同铜彤童桶捅筒统痛偷投头透凸秃突图徒途涂屠土吐兔湍团推颓腿蜕褪退吞屯臀拖托脱鸵陀驮驼椭妥拓唾挖哇蛙洼娃瓦袜歪外豌弯湾玩顽丸烷完碗挽晚皖惋宛婉万腕汪王亡枉网往旺望忘妄威�".split("");for(j=0;j!=D[205].length;++j)if(D[205][j].charCodeAt(0)!==65533){e[D[205][j]]=52480+j;d[52480+j]=D[205][j]}D[206]="����������������������������������������������������������������蜙蜛蜝蜟蜠蜤蜦蜧蜨蜪蜫蜬蜭蜯蜰蜲蜳蜵蜶蜸蜹蜺蜼蜽蝀蝁蝂蝃蝄蝅蝆蝊蝋蝍蝏蝐蝑蝒蝔蝕蝖蝘蝚蝛蝜蝝蝞蝟蝡蝢蝦蝧蝨蝩蝪蝫蝬蝭蝯蝱蝲蝳蝵�蝷蝸蝹蝺蝿螀螁螄螆螇螉螊螌螎螏螐螑螒螔螕螖螘螙螚螛螜螝螞螠螡螢螣螤巍微危韦违桅围唯惟为潍维苇萎委伟伪尾纬未蔚味畏胃喂魏位渭谓尉慰卫瘟温蚊文闻纹吻稳紊问嗡翁瓮挝蜗涡窝我斡卧握沃巫呜钨乌污诬屋无芜梧吾吴毋武五捂午舞伍侮坞戊雾晤物勿务悟误昔熙析西硒矽晰嘻吸锡牺�".split("");for(j=0;j!=D[206].length;++j)if(D[206][j].charCodeAt(0)!==65533){e[D[206][j]]=52736+j;d[52736+j]=D[206][j]}D[207]="����������������������������������������������������������������螥螦螧螩螪螮螰螱螲螴螶螷螸螹螻螼螾螿蟁蟂蟃蟄蟅蟇蟈蟉蟌蟍蟎蟏蟐蟔蟕蟖蟗蟘蟙蟚蟜蟝蟞蟟蟡蟢蟣蟤蟦蟧蟨蟩蟫蟬蟭蟯蟰蟱蟲蟳蟴蟵蟶蟷蟸�蟺蟻蟼蟽蟿蠀蠁蠂蠄蠅蠆蠇蠈蠉蠋蠌蠍蠎蠏蠐蠑蠒蠔蠗蠘蠙蠚蠜蠝蠞蠟蠠蠣稀息希悉膝夕惜熄烯溪汐犀檄袭席习媳喜铣洗系隙戏细瞎虾匣霞辖暇峡侠狭下厦夏吓掀锨先仙鲜纤咸贤衔舷闲涎弦嫌显险现献县腺馅羡宪陷限线相厢镶香箱襄湘乡翔祥详想响享项巷橡像向象萧硝霄削哮嚣销消宵淆晓�".split("");for(j=0;j!=D[207].length;++j)if(D[207][j].charCodeAt(0)!==65533){e[D[207][j]]=52992+j;d[52992+j]=D[207][j]}D[208]="����������������������������������������������������������������蠤蠥蠦蠧蠨蠩蠪蠫蠬蠭蠮蠯蠰蠱蠳蠴蠵蠶蠷蠸蠺蠻蠽蠾蠿衁衂衃衆衇衈衉衊衋衎衏衐衑衒術衕衖衘衚衛衜衝衞衟衠衦衧衪衭衯衱衳衴衵衶衸衹衺�衻衼袀袃袆袇袉袊袌袎袏袐袑袓袔袕袗袘袙袚袛袝袞袟袠袡袣袥袦袧袨袩袪小孝校肖啸笑效楔些歇蝎鞋协挟携邪斜胁谐写械卸蟹懈泄泻谢屑薪芯锌欣辛新忻心信衅星腥猩惺兴刑型形邢行醒幸杏性姓兄凶胸匈汹雄熊休修羞朽嗅锈秀袖绣墟戌需虚嘘须徐许蓄酗叙旭序畜恤絮婿绪续轩喧宣悬旋玄�".split("");
for(j=0;j!=D[208].length;++j)if(D[208][j].charCodeAt(0)!==65533){e[D[208][j]]=53248+j;d[53248+j]=D[208][j]}D[209]="����������������������������������������������������������������袬袮袯袰袲袳袴袵袶袸袹袺袻袽袾袿裀裃裄裇裈裊裋裌裍裏裐裑裓裖裗裚裛補裝裞裠裡裦裧裩裪裫裬裭裮裯裲裵裶裷裺裻製裿褀褁褃褄褅褆複褈�褉褋褌褍褎褏褑褔褕褖褗褘褜褝褞褟褠褢褣褤褦褧褨褩褬褭褮褯褱褲褳褵褷选癣眩绚靴薛学穴雪血勋熏循旬询寻驯巡殉汛训讯逊迅压押鸦鸭呀丫芽牙蚜崖衙涯雅哑亚讶焉咽阉烟淹盐严研蜒岩延言颜阎炎沿奄掩眼衍演艳堰燕厌砚雁唁彦焰宴谚验殃央鸯秧杨扬佯疡羊洋阳氧仰痒养样漾邀腰妖瑶�".split("");for(j=0;j!=D[209].length;++j)if(D[209][j].charCodeAt(0)!==65533){e[D[209][j]]=53504+j;d[53504+j]=D[209][j]}D[210]="����������������������������������������������������������������褸褹褺褻褼褽褾褿襀襂襃襅襆襇襈襉襊襋襌襍襎襏襐襑襒襓襔襕襖襗襘襙襚襛襜襝襠襡襢襣襤襥襧襨襩襪襫襬襭襮襯襰襱襲襳襴襵襶襷襸襹襺襼�襽襾覀覂覄覅覇覈覉覊見覌覍覎規覐覑覒覓覔覕視覗覘覙覚覛覜覝覞覟覠覡摇尧遥窑谣姚咬舀药要耀椰噎耶爷野冶也页掖业叶曳腋夜液一壹医揖铱依伊衣颐夷遗移仪胰疑沂宜姨彝椅蚁倚已乙矣以艺抑易邑屹亿役臆逸肄疫亦裔意毅忆义益溢诣议谊译异翼翌绎茵荫因殷音阴姻吟银淫寅饮尹引隐�".split("");for(j=0;j!=D[210].length;++j)if(D[210][j].charCodeAt(0)!==65533){e[D[210][j]]=53760+j;d[53760+j]=D[210][j]}D[211]="����������������������������������������������������������������覢覣覤覥覦覧覨覩親覫覬覭覮覯覰覱覲観覴覵覶覷覸覹覺覻覼覽覾覿觀觃觍觓觔觕觗觘觙觛觝觟觠觡觢觤觧觨觩觪觬觭觮觰觱觲觴觵觶觷觸觹觺�觻觼觽觾觿訁訂訃訄訅訆計訉訊訋訌訍討訏訐訑訒訓訔訕訖託記訙訚訛訜訝印英樱婴鹰应缨莹萤营荧蝇迎赢盈影颖硬映哟拥佣臃痈庸雍踊蛹咏泳涌永恿勇用幽优悠忧尤由邮铀犹油游酉有友右佑釉诱又幼迂淤于盂榆虞愚舆余俞逾鱼愉渝渔隅予娱雨与屿禹宇语羽玉域芋郁吁遇喻峪御愈欲狱育誉�".split("");for(j=0;j!=D[211].length;++j)if(D[211][j].charCodeAt(0)!==65533){e[D[211][j]]=54016+j;d[54016+j]=D[211][j]}D[212]="����������������������������������������������������������������訞訟訠訡訢訣訤訥訦訧訨訩訪訫訬設訮訯訰許訲訳訴訵訶訷訸訹診註証訽訿詀詁詂詃詄詅詆詇詉詊詋詌詍詎詏詐詑詒詓詔評詖詗詘詙詚詛詜詝詞�詟詠詡詢詣詤詥試詧詨詩詪詫詬詭詮詯詰話該詳詴詵詶詷詸詺詻詼詽詾詿誀浴寓裕预豫驭鸳渊冤元垣袁原援辕园员圆猿源缘远苑愿怨院曰约越跃钥岳粤月悦阅耘云郧匀陨允运蕴酝晕韵孕匝砸杂栽哉灾宰载再在咱攒暂赞赃脏葬遭糟凿藻枣早澡蚤躁噪造皂灶燥责择则泽贼怎增憎曾赠扎喳渣札轧�".split("");for(j=0;j!=D[212].length;++j)if(D[212][j].charCodeAt(0)!==65533){e[D[212][j]]=54272+j;d[54272+j]=D[212][j]}D[213]="����������������������������������������������������������������誁誂誃誄誅誆誇誈誋誌認誎誏誐誑誒誔誕誖誗誘誙誚誛誜誝語誟誠誡誢誣誤誥誦誧誨誩說誫説読誮誯誰誱課誳誴誵誶誷誸誹誺誻誼誽誾調諀諁諂�諃諄諅諆談諈諉諊請諌諍諎諏諐諑諒諓諔諕論諗諘諙諚諛諜諝諞諟諠諡諢諣铡闸眨栅榨咋乍炸诈摘斋宅窄债寨瞻毡詹粘沾盏斩辗崭展蘸栈占战站湛绽樟章彰漳张掌涨杖丈帐账仗胀瘴障招昭找沼赵照罩兆肇召遮折哲蛰辙者锗蔗这浙珍斟真甄砧臻贞针侦枕疹诊震振镇阵蒸挣睁征狰争怔整拯正政�".split("");for(j=0;j!=D[213].length;++j)if(D[213][j].charCodeAt(0)!==65533){e[D[213][j]]=54528+j;d[54528+j]=D[213][j]}D[214]="����������������������������������������������������������������諤諥諦諧諨諩諪諫諬諭諮諯諰諱諲諳諴諵諶諷諸諹諺諻諼諽諾諿謀謁謂謃謄謅謆謈謉謊謋謌謍謎謏謐謑謒謓謔謕謖謗謘謙謚講謜謝謞謟謠謡謢謣�謤謥謧謨謩謪謫謬謭謮謯謰謱謲謳謴謵謶謷謸謹謺謻謼謽謾謿譀譁譂譃譄譅帧症郑证芝枝支吱蜘知肢脂汁之织职直植殖执值侄址指止趾只旨纸志挚掷至致置帜峙制智秩稚质炙痔滞治窒中盅忠钟衷终种肿重仲众舟周州洲诌粥轴肘帚咒皱宙昼骤珠株蛛朱猪诸诛逐竹烛煮拄瞩嘱主著柱助蛀贮铸筑�".split("");for(j=0;j!=D[214].length;++j)if(D[214][j].charCodeAt(0)!==65533){e[D[214][j]]=54784+j;d[54784+j]=D[214][j]}D[215]="����������������������������������������������������������������譆譇譈證譊譋譌譍譎譏譐譑譒譓譔譕譖譗識譙譚譛譜譝譞譟譠譡譢譣譤譥譧譨譩譪譫譭譮譯議譱譲譳譴譵譶護譸譹譺譻譼譽譾譿讀讁讂讃讄讅讆�讇讈讉變讋讌讍讎讏讐讑讒讓讔讕讖讗讘讙讚讛讜讝讞讟讬讱讻诇诐诪谉谞住注祝驻抓爪拽专砖转撰赚篆桩庄装妆撞壮状椎锥追赘坠缀谆准捉拙卓桌琢茁酌啄着灼浊兹咨资姿滋淄孜紫仔籽滓子自渍字鬃棕踪宗综总纵邹走奏揍租足卒族祖诅阻组钻纂嘴醉最罪尊遵昨左佐柞做作坐座������".split("");for(j=0;j!=D[215].length;++j)if(D[215][j].charCodeAt(0)!==65533){e[D[215][j]]=55040+j;d[55040+j]=D[215][j]}D[216]="����������������������������������������������������������������谸谹谺谻谼谽谾谿豀豂豃豄豅豈豊豋豍豎豏豐豑豒豓豔豖豗豘豙豛豜豝豞豟豠豣豤豥豦豧豨豩豬豭豮豯豰豱豲豴豵豶豷豻豼豽豾豿貀貁貃貄貆貇�貈貋貍貎貏貐貑貒貓貕貖貗貙貚貛貜貝貞貟負財貢貣貤貥貦貧貨販貪貫責貭亍丌兀丐廿卅丕亘丞鬲孬噩丨禺丿匕乇夭爻卮氐囟胤馗毓睾鼗丶亟鼐乜乩亓芈孛啬嘏仄厍厝厣厥厮靥赝匚叵匦匮匾赜卦卣刂刈刎刭刳刿剀剌剞剡剜蒯剽劂劁劐劓冂罔亻仃仉仂仨仡仫仞伛仳伢佤仵伥伧伉伫佞佧攸佚佝�".split("");for(j=0;j!=D[216].length;++j)if(D[216][j].charCodeAt(0)!==65533){e[D[216][j]]=55296+j;d[55296+j]=D[216][j]}D[217]="����������������������������������������������������������������貮貯貰貱貲貳貴貵貶買貸貹貺費貼貽貾貿賀賁賂賃賄賅賆資賈賉賊賋賌賍賎賏賐賑賒賓賔賕賖賗賘賙賚賛賜賝賞賟賠賡賢賣賤賥賦賧賨賩質賫賬�賭賮賯賰賱賲賳賴賵賶賷賸賹賺賻購賽賾賿贀贁贂贃贄贅贆贇贈贉贊贋贌贍佟佗伲伽佶佴侑侉侃侏佾佻侪佼侬侔俦俨俪俅俚俣俜俑俟俸倩偌俳倬倏倮倭俾倜倌倥倨偾偃偕偈偎偬偻傥傧傩傺僖儆僭僬僦僮儇儋仝氽佘佥俎龠汆籴兮巽黉馘冁夔勹匍訇匐凫夙兕亠兖亳衮袤亵脔裒禀嬴蠃羸冫冱冽冼�".split("");for(j=0;j!=D[217].length;++j)if(D[217][j].charCodeAt(0)!==65533){e[D[217][j]]=55552+j;d[55552+j]=D[217][j]}D[218]="����������������������������������������������������������������贎贏贐贑贒贓贔贕贖贗贘贙贚贛贜贠赑赒赗赟赥赨赩赪赬赮赯赱赲赸赹赺赻赼赽赾赿趀趂趃趆趇趈趉趌趍趎趏趐趒趓趕趖趗趘趙趚趛趜趝趞趠趡�趢趤趥趦趧趨趩趪趫趬趭趮趯趰趲趶趷趹趻趽跀跁跂跅跇跈跉跊跍跐跒跓跔凇冖冢冥讠讦讧讪讴讵讷诂诃诋诏诎诒诓诔诖诘诙诜诟诠诤诨诩诮诰诳诶诹诼诿谀谂谄谇谌谏谑谒谔谕谖谙谛谘谝谟谠谡谥谧谪谫谮谯谲谳谵谶卩卺阝阢阡阱阪阽阼陂陉陔陟陧陬陲陴隈隍隗隰邗邛邝邙邬邡邴邳邶邺�".split("");for(j=0;j!=D[218].length;++j)if(D[218][j].charCodeAt(0)!==65533){e[D[218][j]]=55808+j;d[55808+j]=D[218][j]}D[219]="����������������������������������������������������������������跕跘跙跜跠跡跢跥跦跧跩跭跮跰跱跲跴跶跼跾跿踀踁踂踃踄踆踇踈踋踍踎踐踑踒踓踕踖踗踘踙踚踛踜踠踡踤踥踦踧踨踫踭踰踲踳踴踶踷踸踻踼踾�踿蹃蹅蹆蹌蹍蹎蹏蹐蹓蹔蹕蹖蹗蹘蹚蹛蹜蹝蹞蹟蹠蹡蹢蹣蹤蹥蹧蹨蹪蹫蹮蹱邸邰郏郅邾郐郄郇郓郦郢郜郗郛郫郯郾鄄鄢鄞鄣鄱鄯鄹酃酆刍奂劢劬劭劾哿勐勖勰叟燮矍廴凵凼鬯厶弁畚巯坌垩垡塾墼壅壑圩圬圪圳圹圮圯坜圻坂坩垅坫垆坼坻坨坭坶坳垭垤垌垲埏垧垴垓垠埕埘埚埙埒垸埴埯埸埤埝�".split("");for(j=0;j!=D[219].length;++j)if(D[219][j].charCodeAt(0)!==65533){e[D[219][j]]=56064+j;d[56064+j]=D[219][j]}D[220]="����������������������������������������������������������������蹳蹵蹷蹸蹹蹺蹻蹽蹾躀躂躃躄躆躈躉躊躋躌躍躎躑躒躓躕躖躗躘躙躚躛躝躟躠躡躢躣躤躥躦躧躨躩躪躭躮躰躱躳躴躵躶躷躸躹躻躼躽躾躿軀軁軂�軃軄軅軆軇軈軉車軋軌軍軏軐軑軒軓軔軕軖軗軘軙軚軛軜軝軞軟軠軡転軣軤堋堍埽埭堀堞堙塄堠塥塬墁墉墚墀馨鼙懿艹艽艿芏芊芨芄芎芑芗芙芫芸芾芰苈苊苣芘芷芮苋苌苁芩芴芡芪芟苄苎芤苡茉苷苤茏茇苜苴苒苘茌苻苓茑茚茆茔茕苠苕茜荑荛荜茈莒茼茴茱莛荞茯荏荇荃荟荀茗荠茭茺茳荦荥�".split("");for(j=0;j!=D[220].length;++j)if(D[220][j].charCodeAt(0)!==65533){e[D[220][j]]=56320+j;d[56320+j]=D[220][j]}D[221]="����������������������������������������������������������������軥軦軧軨軩軪軫軬軭軮軯軰軱軲軳軴軵軶軷軸軹軺軻軼軽軾軿輀輁輂較輄輅輆輇輈載輊輋輌輍輎輏輐輑輒輓輔輕輖輗輘輙輚輛輜輝輞輟輠輡輢輣�輤輥輦輧輨輩輪輫輬輭輮輯輰輱輲輳輴輵輶輷輸輹輺輻輼輽輾輿轀轁轂轃轄荨茛荩荬荪荭荮莰荸莳莴莠莪莓莜莅荼莶莩荽莸荻莘莞莨莺莼菁萁菥菘堇萘萋菝菽菖萜萸萑萆菔菟萏萃菸菹菪菅菀萦菰菡葜葑葚葙葳蒇蒈葺蒉葸萼葆葩葶蒌蒎萱葭蓁蓍蓐蓦蒽蓓蓊蒿蒺蓠蒡蒹蒴蒗蓥蓣蔌甍蔸蓰蔹蔟蔺�".split("");for(j=0;j!=D[221].length;++j)if(D[221][j].charCodeAt(0)!==65533){e[D[221][j]]=56576+j;d[56576+j]=D[221][j]}D[222]="����������������������������������������������������������������轅轆轇轈轉轊轋轌轍轎轏轐轑轒轓轔轕轖轗轘轙轚轛轜轝轞轟轠轡轢轣轤轥轪辀辌辒辝辠辡辢辤辥辦辧辪辬辭辮辯農辳辴辵辷辸辺辻込辿迀迃迆�迉迊迋迌迍迏迒迖迗迚迠迡迣迧迬迯迱迲迴迵迶迺迻迼迾迿逇逈逌逎逓逕逘蕖蔻蓿蓼蕙蕈蕨蕤蕞蕺瞢蕃蕲蕻薤薨薇薏蕹薮薜薅薹薷薰藓藁藜藿蘧蘅蘩蘖蘼廾弈夼奁耷奕奚奘匏尢尥尬尴扌扪抟抻拊拚拗拮挢拶挹捋捃掭揶捱捺掎掴捭掬掊捩掮掼揲揸揠揿揄揞揎摒揆掾摅摁搋搛搠搌搦搡摞撄摭撖�".split("");for(j=0;j!=D[222].length;++j)if(D[222][j].charCodeAt(0)!==65533){e[D[222][j]]=56832+j;d[56832+j]=D[222][j]}D[223]="����������������������������������������������������������������這逜連逤逥逧逨逩逪逫逬逰週進逳逴逷逹逺逽逿遀遃遅遆遈遉遊運遌過達違遖遙遚遜遝遞遟遠遡遤遦遧適遪遫遬遯遰遱遲遳遶遷選遹遺遻遼遾邁�還邅邆邇邉邊邌邍邎邏邐邒邔邖邘邚邜邞邟邠邤邥邧邨邩邫邭邲邷邼邽邿郀摺撷撸撙撺擀擐擗擤擢攉攥攮弋忒甙弑卟叱叽叩叨叻吒吖吆呋呒呓呔呖呃吡呗呙吣吲咂咔呷呱呤咚咛咄呶呦咝哐咭哂咴哒咧咦哓哔呲咣哕咻咿哌哙哚哜咩咪咤哝哏哞唛哧唠哽唔哳唢唣唏唑唧唪啧喏喵啉啭啁啕唿啐唼�".split("");for(j=0;j!=D[223].length;++j)if(D[223][j].charCodeAt(0)!==65533){e[D[223][j]]=57088+j;d[57088+j]=D[223][j]}D[224]="����������������������������������������������������������������郂郃郆郈郉郋郌郍郒郔郕郖郘郙郚郞郟郠郣郤郥郩郪郬郮郰郱郲郳郵郶郷郹郺郻郼郿鄀鄁鄃鄅鄆鄇鄈鄉鄊鄋鄌鄍鄎鄏鄐鄑鄒鄓鄔鄕鄖鄗鄘鄚鄛鄜�鄝鄟鄠鄡鄤鄥鄦鄧鄨鄩鄪鄫鄬鄭鄮鄰鄲鄳鄴鄵鄶鄷鄸鄺鄻鄼鄽鄾鄿酀酁酂酄唷啖啵啶啷唳唰啜喋嗒喃喱喹喈喁喟啾嗖喑啻嗟喽喾喔喙嗪嗷嗉嘟嗑嗫嗬嗔嗦嗝嗄嗯嗥嗲嗳嗌嗍嗨嗵嗤辔嘞嘈嘌嘁嘤嘣嗾嘀嘧嘭噘嘹噗嘬噍噢噙噜噌噔嚆噤噱噫噻噼嚅嚓嚯囔囗囝囡囵囫囹囿圄圊圉圜帏帙帔帑帱帻帼�".split("");for(j=0;j!=D[224].length;++j)if(D[224][j].charCodeAt(0)!==65533){e[D[224][j]]=57344+j;d[57344+j]=D[224][j]}D[225]="����������������������������������������������������������������酅酇酈酑酓酔酕酖酘酙酛酜酟酠酦酧酨酫酭酳酺酻酼醀醁醂醃醄醆醈醊醎醏醓醔醕醖醗醘醙醜醝醞醟醠醡醤醥醦醧醨醩醫醬醰醱醲醳醶醷醸醹醻�醼醽醾醿釀釁釂釃釄釅釆釈釋釐釒釓釔釕釖釗釘釙釚釛針釞釟釠釡釢釣釤釥帷幄幔幛幞幡岌屺岍岐岖岈岘岙岑岚岜岵岢岽岬岫岱岣峁岷峄峒峤峋峥崂崃崧崦崮崤崞崆崛嵘崾崴崽嵬嵛嵯嵝嵫嵋嵊嵩嵴嶂嶙嶝豳嶷巅彳彷徂徇徉後徕徙徜徨徭徵徼衢彡犭犰犴犷犸狃狁狎狍狒狨狯狩狲狴狷猁狳猃狺�".split("");for(j=0;j!=D[225].length;++j)if(D[225][j].charCodeAt(0)!==65533){e[D[225][j]]=57600+j;d[57600+j]=D[225][j]}D[226]="����������������������������������������������������������������釦釧釨釩釪釫釬釭釮釯釰釱釲釳釴釵釶釷釸釹釺釻釼釽釾釿鈀鈁鈂鈃鈄鈅鈆鈇鈈鈉鈊鈋鈌鈍鈎鈏鈐鈑鈒鈓鈔鈕鈖鈗鈘鈙鈚鈛鈜鈝鈞鈟鈠鈡鈢鈣鈤�鈥鈦鈧鈨鈩鈪鈫鈬鈭鈮鈯鈰鈱鈲鈳鈴鈵鈶鈷鈸鈹鈺鈻鈼鈽鈾鈿鉀鉁鉂鉃鉄鉅狻猗猓猡猊猞猝猕猢猹猥猬猸猱獐獍獗獠獬獯獾舛夥飧夤夂饣饧饨饩饪饫饬饴饷饽馀馄馇馊馍馐馑馓馔馕庀庑庋庖庥庠庹庵庾庳赓廒廑廛廨廪膺忄忉忖忏怃忮怄忡忤忾怅怆忪忭忸怙怵怦怛怏怍怩怫怊怿怡恸恹恻恺恂�".split("");for(j=0;j!=D[226].length;++j)if(D[226][j].charCodeAt(0)!==65533){e[D[226][j]]=57856+j;d[57856+j]=D[226][j]}D[227]="����������������������������������������������������������������鉆鉇鉈鉉鉊鉋鉌鉍鉎鉏鉐鉑鉒鉓鉔鉕鉖鉗鉘鉙鉚鉛鉜鉝鉞鉟鉠鉡鉢鉣鉤鉥鉦鉧鉨鉩鉪鉫鉬鉭鉮鉯鉰鉱鉲鉳鉵鉶鉷鉸鉹鉺鉻鉼鉽鉾鉿銀銁銂銃銄銅�銆銇銈銉銊銋銌銍銏銐銑銒銓銔銕銖銗銘銙銚銛銜銝銞銟銠銡銢銣銤銥銦銧恪恽悖悚悭悝悃悒悌悛惬悻悱惝惘惆惚悴愠愦愕愣惴愀愎愫慊慵憬憔憧憷懔懵忝隳闩闫闱闳闵闶闼闾阃阄阆阈阊阋阌阍阏阒阕阖阗阙阚丬爿戕氵汔汜汊沣沅沐沔沌汨汩汴汶沆沩泐泔沭泷泸泱泗沲泠泖泺泫泮沱泓泯泾�".split("");for(j=0;j!=D[227].length;++j)if(D[227][j].charCodeAt(0)!==65533){e[D[227][j]]=58112+j;d[58112+j]=D[227][j]}D[228]="����������������������������������������������������������������銨銩銪銫銬銭銯銰銱銲銳銴銵銶銷銸銹銺銻銼銽銾銿鋀鋁鋂鋃鋄鋅鋆鋇鋉鋊鋋鋌鋍鋎鋏鋐鋑鋒鋓鋔鋕鋖鋗鋘鋙鋚鋛鋜鋝鋞鋟鋠鋡鋢鋣鋤鋥鋦鋧鋨�鋩鋪鋫鋬鋭鋮鋯鋰鋱鋲鋳鋴鋵鋶鋷鋸鋹鋺鋻鋼鋽鋾鋿錀錁錂錃錄錅錆錇錈錉洹洧洌浃浈洇洄洙洎洫浍洮洵洚浏浒浔洳涑浯涞涠浞涓涔浜浠浼浣渚淇淅淞渎涿淠渑淦淝淙渖涫渌涮渫湮湎湫溲湟溆湓湔渲渥湄滟溱溘滠漭滢溥溧溽溻溷滗溴滏溏滂溟潢潆潇漤漕滹漯漶潋潴漪漉漩澉澍澌潸潲潼潺濑�".split("");for(j=0;j!=D[228].length;++j)if(D[228][j].charCodeAt(0)!==65533){e[D[228][j]]=58368+j;d[58368+j]=D[228][j]}D[229]="����������������������������������������������������������������錊錋錌錍錎錏錐錑錒錓錔錕錖錗錘錙錚錛錜錝錞錟錠錡錢錣錤錥錦錧錨錩錪錫錬錭錮錯錰錱録錳錴錵錶錷錸錹錺錻錼錽錿鍀鍁鍂鍃鍄鍅鍆鍇鍈鍉�鍊鍋鍌鍍鍎鍏鍐鍑鍒鍓鍔鍕鍖鍗鍘鍙鍚鍛鍜鍝鍞鍟鍠鍡鍢鍣鍤鍥鍦鍧鍨鍩鍫濉澧澹澶濂濡濮濞濠濯瀚瀣瀛瀹瀵灏灞宀宄宕宓宥宸甯骞搴寤寮褰寰蹇謇辶迓迕迥迮迤迩迦迳迨逅逄逋逦逑逍逖逡逵逶逭逯遄遑遒遐遨遘遢遛暹遴遽邂邈邃邋彐彗彖彘尻咫屐屙孱屣屦羼弪弩弭艴弼鬻屮妁妃妍妩妪妣�".split("");for(j=0;j!=D[229].length;++j)if(D[229][j].charCodeAt(0)!==65533){e[D[229][j]]=58624+j;d[58624+j]=D[229][j]}D[230]="����������������������������������������������������������������鍬鍭鍮鍯鍰鍱鍲鍳鍴鍵鍶鍷鍸鍹鍺鍻鍼鍽鍾鍿鎀鎁鎂鎃鎄鎅鎆鎇鎈鎉鎊鎋鎌鎍鎎鎐鎑鎒鎓鎔鎕鎖鎗鎘鎙鎚鎛鎜鎝鎞鎟鎠鎡鎢鎣鎤鎥鎦鎧鎨鎩鎪鎫�鎬鎭鎮鎯鎰鎱鎲鎳鎴鎵鎶鎷鎸鎹鎺鎻鎼鎽鎾鎿鏀鏁鏂鏃鏄鏅鏆鏇鏈鏉鏋鏌鏍妗姊妫妞妤姒妲妯姗妾娅娆姝娈姣姘姹娌娉娲娴娑娣娓婀婧婊婕娼婢婵胬媪媛婷婺媾嫫媲嫒嫔媸嫠嫣嫱嫖嫦嫘嫜嬉嬗嬖嬲嬷孀尕尜孚孥孳孑孓孢驵驷驸驺驿驽骀骁骅骈骊骐骒骓骖骘骛骜骝骟骠骢骣骥骧纟纡纣纥纨纩�".split("");for(j=0;j!=D[230].length;++j)if(D[230][j].charCodeAt(0)!==65533){e[D[230][j]]=58880+j;d[58880+j]=D[230][j]}D[231]="����������������������������������������������������������������鏎鏏鏐鏑鏒鏓鏔鏕鏗鏘鏙鏚鏛鏜鏝鏞鏟鏠鏡鏢鏣鏤鏥鏦鏧鏨鏩鏪鏫鏬鏭鏮鏯鏰鏱鏲鏳鏴鏵鏶鏷鏸鏹鏺鏻鏼鏽鏾鏿鐀鐁鐂鐃鐄鐅鐆鐇鐈鐉鐊鐋鐌鐍�鐎鐏鐐鐑鐒鐓鐔鐕鐖鐗鐘鐙鐚鐛鐜鐝鐞鐟鐠鐡鐢鐣鐤鐥鐦鐧鐨鐩鐪鐫鐬鐭鐮纭纰纾绀绁绂绉绋绌绐绔绗绛绠绡绨绫绮绯绱绲缍绶绺绻绾缁缂缃缇缈缋缌缏缑缒缗缙缜缛缟缡缢缣缤缥缦缧缪缫缬缭缯缰缱缲缳缵幺畿巛甾邕玎玑玮玢玟珏珂珑玷玳珀珉珈珥珙顼琊珩珧珞玺珲琏琪瑛琦琥琨琰琮琬�".split("");for(j=0;j!=D[231].length;++j)if(D[231][j].charCodeAt(0)!==65533){e[D[231][j]]=59136+j;d[59136+j]=D[231][j]}D[232]="����������������������������������������������������������������鐯鐰鐱鐲鐳鐴鐵鐶鐷鐸鐹鐺鐻鐼鐽鐿鑀鑁鑂鑃鑄鑅鑆鑇鑈鑉鑊鑋鑌鑍鑎鑏鑐鑑鑒鑓鑔鑕鑖鑗鑘鑙鑚鑛鑜鑝鑞鑟鑠鑡鑢鑣鑤鑥鑦鑧鑨鑩鑪鑬鑭鑮鑯�鑰鑱鑲鑳鑴鑵鑶鑷鑸鑹鑺鑻鑼鑽鑾鑿钀钁钂钃钄钑钖钘铇铏铓铔铚铦铻锜锠琛琚瑁瑜瑗瑕瑙瑷瑭瑾璜璎璀璁璇璋璞璨璩璐璧瓒璺韪韫韬杌杓杞杈杩枥枇杪杳枘枧杵枨枞枭枋杷杼柰栉柘栊柩枰栌柙枵柚枳柝栀柃枸柢栎柁柽栲栳桠桡桎桢桄桤梃栝桕桦桁桧桀栾桊桉栩梵梏桴桷梓桫棂楮棼椟椠棹�".split("");for(j=0;j!=D[232].length;++j)if(D[232][j].charCodeAt(0)!==65533){e[D[232][j]]=59392+j;d[59392+j]=D[232][j]}D[233]="����������������������������������������������������������������锧锳锽镃镈镋镕镚镠镮镴镵長镸镹镺镻镼镽镾門閁閂閃閄閅閆閇閈閉閊開閌閍閎閏閐閑閒間閔閕閖閗閘閙閚閛閜閝閞閟閠閡関閣閤閥閦閧閨閩閪�閫閬閭閮閯閰閱閲閳閴閵閶閷閸閹閺閻閼閽閾閿闀闁闂闃闄闅闆闇闈闉闊闋椤棰椋椁楗棣椐楱椹楠楂楝榄楫榀榘楸椴槌榇榈槎榉楦楣楹榛榧榻榫榭槔榱槁槊槟榕槠榍槿樯槭樗樘橥槲橄樾檠橐橛樵檎橹樽樨橘橼檑檐檩檗檫猷獒殁殂殇殄殒殓殍殚殛殡殪轫轭轱轲轳轵轶轸轷轹轺轼轾辁辂辄辇辋�".split("");for(j=0;j!=D[233].length;++j)if(D[233][j].charCodeAt(0)!==65533){e[D[233][j]]=59648+j;d[59648+j]=D[233][j]}D[234]="����������������������������������������������������������������闌闍闎闏闐闑闒闓闔闕闖闗闘闙闚闛關闝闞闟闠闡闢闣闤闥闦闧闬闿阇阓阘阛阞阠阣阤阥阦阧阨阩阫阬阭阯阰阷阸阹阺阾陁陃陊陎陏陑陒陓陖陗�陘陙陚陜陝陞陠陣陥陦陫陭陮陯陰陱陳陸陹険陻陼陽陾陿隀隁隂隃隄隇隉隊辍辎辏辘辚軎戋戗戛戟戢戡戥戤戬臧瓯瓴瓿甏甑甓攴旮旯旰昊昙杲昃昕昀炅曷昝昴昱昶昵耆晟晔晁晏晖晡晗晷暄暌暧暝暾曛曜曦曩贲贳贶贻贽赀赅赆赈赉赇赍赕赙觇觊觋觌觎觏觐觑牮犟牝牦牯牾牿犄犋犍犏犒挈挲掰�".split("");for(j=0;j!=D[234].length;++j)if(D[234][j].charCodeAt(0)!==65533){e[D[234][j]]=59904+j;d[59904+j]=D[234][j]}D[235]="����������������������������������������������������������������隌階隑隒隓隕隖隚際隝隞隟隠隡隢隣隤隥隦隨隩險隫隬隭隮隯隱隲隴隵隷隸隺隻隿雂雃雈雊雋雐雑雓雔雖雗雘雙雚雛雜雝雞雟雡離難雤雥雦雧雫�雬雭雮雰雱雲雴雵雸雺電雼雽雿霂霃霅霊霋霌霐霑霒霔霕霗霘霙霚霛霝霟霠搿擘耄毪毳毽毵毹氅氇氆氍氕氘氙氚氡氩氤氪氲攵敕敫牍牒牖爰虢刖肟肜肓肼朊肽肱肫肭肴肷胧胨胩胪胛胂胄胙胍胗朐胝胫胱胴胭脍脎胲胼朕脒豚脶脞脬脘脲腈腌腓腴腙腚腱腠腩腼腽腭腧塍媵膈膂膑滕膣膪臌朦臊膻�".split("");for(j=0;j!=D[235].length;++j)if(D[235][j].charCodeAt(0)!==65533){e[D[235][j]]=60160+j;d[60160+j]=D[235][j]}D[236]="����������������������������������������������������������������霡霢霣霤霥霦霧霨霩霫霬霮霯霱霳霴霵霶霷霺霻霼霽霿靀靁靂靃靄靅靆靇靈靉靊靋靌靍靎靏靐靑靔靕靗靘靚靜靝靟靣靤靦靧靨靪靫靬靭靮靯靰靱�靲靵靷靸靹靺靻靽靾靿鞀鞁鞂鞃鞄鞆鞇鞈鞉鞊鞌鞎鞏鞐鞓鞕鞖鞗鞙鞚鞛鞜鞝臁膦欤欷欹歃歆歙飑飒飓飕飙飚殳彀毂觳斐齑斓於旆旄旃旌旎旒旖炀炜炖炝炻烀炷炫炱烨烊焐焓焖焯焱煳煜煨煅煲煊煸煺熘熳熵熨熠燠燔燧燹爝爨灬焘煦熹戾戽扃扈扉礻祀祆祉祛祜祓祚祢祗祠祯祧祺禅禊禚禧禳忑忐�".split("");for(j=0;j!=D[236].length;++j)if(D[236][j].charCodeAt(0)!==65533){e[D[236][j]]=60416+j;d[60416+j]=D[236][j]}D[237]="����������������������������������������������������������������鞞鞟鞡鞢鞤鞥鞦鞧鞨鞩鞪鞬鞮鞰鞱鞳鞵鞶鞷鞸鞹鞺鞻鞼鞽鞾鞿韀韁韂韃韄韅韆韇韈韉韊韋韌韍韎韏韐韑韒韓韔韕韖韗韘韙韚韛韜韝韞韟韠韡韢韣�韤韥韨韮韯韰韱韲韴韷韸韹韺韻韼韽韾響頀頁頂頃頄項順頇須頉頊頋頌頍頎怼恝恚恧恁恙恣悫愆愍慝憩憝懋懑戆肀聿沓泶淼矶矸砀砉砗砘砑斫砭砜砝砹砺砻砟砼砥砬砣砩硎硭硖硗砦硐硇硌硪碛碓碚碇碜碡碣碲碹碥磔磙磉磬磲礅磴礓礤礞礴龛黹黻黼盱眄眍盹眇眈眚眢眙眭眦眵眸睐睑睇睃睚睨�".split("");for(j=0;j!=D[237].length;++j)if(D[237][j].charCodeAt(0)!==65533){e[D[237][j]]=60672+j;d[60672+j]=D[237][j]}D[238]="����������������������������������������������������������������頏預頑頒頓頔頕頖頗領頙頚頛頜頝頞頟頠頡頢頣頤頥頦頧頨頩頪頫頬頭頮頯頰頱頲頳頴頵頶頷頸頹頺頻頼頽頾頿顀顁顂顃顄顅顆顇顈顉顊顋題額�顎顏顐顑顒顓顔顕顖顗願顙顚顛顜顝類顟顠顡顢顣顤顥顦顧顨顩顪顫顬顭顮睢睥睿瞍睽瞀瞌瞑瞟瞠瞰瞵瞽町畀畎畋畈畛畲畹疃罘罡罟詈罨罴罱罹羁罾盍盥蠲钅钆钇钋钊钌钍钏钐钔钗钕钚钛钜钣钤钫钪钭钬钯钰钲钴钶钷钸钹钺钼钽钿铄铈铉铊铋铌铍铎铐铑铒铕铖铗铙铘铛铞铟铠铢铤铥铧铨铪�".split("");for(j=0;j!=D[238].length;++j)if(D[238][j].charCodeAt(0)!==65533){e[D[238][j]]=60928+j;d[60928+j]=D[238][j]}D[239]="����������������������������������������������������������������顯顰顱顲顳顴颋颎颒颕颙颣風颩颪颫颬颭颮颯颰颱颲颳颴颵颶颷颸颹颺颻颼颽颾颿飀飁飂飃飄飅飆飇飈飉飊飋飌飍飏飐飔飖飗飛飜飝飠飡飢飣飤�飥飦飩飪飫飬飭飮飯飰飱飲飳飴飵飶飷飸飹飺飻飼飽飾飿餀餁餂餃餄餅餆餇铩铫铮铯铳铴铵铷铹铼铽铿锃锂锆锇锉锊锍锎锏锒锓锔锕锖锘锛锝锞锟锢锪锫锩锬锱锲锴锶锷锸锼锾锿镂锵镄镅镆镉镌镎镏镒镓镔镖镗镘镙镛镞镟镝镡镢镤镥镦镧镨镩镪镫镬镯镱镲镳锺矧矬雉秕秭秣秫稆嵇稃稂稞稔�".split("");for(j=0;j!=D[239].length;++j)if(D[239][j].charCodeAt(0)!==65533){e[D[239][j]]=61184+j;d[61184+j]=D[239][j]}D[240]="����������������������������������������������������������������餈餉養餋餌餎餏餑餒餓餔餕餖餗餘餙餚餛餜餝餞餟餠餡餢餣餤餥餦餧館餩餪餫餬餭餯餰餱餲餳餴餵餶餷餸餹餺餻餼餽餾餿饀饁饂饃饄饅饆饇饈饉�饊饋饌饍饎饏饐饑饒饓饖饗饘饙饚饛饜饝饞饟饠饡饢饤饦饳饸饹饻饾馂馃馉稹稷穑黏馥穰皈皎皓皙皤瓞瓠甬鸠鸢鸨鸩鸪鸫鸬鸲鸱鸶鸸鸷鸹鸺鸾鹁鹂鹄鹆鹇鹈鹉鹋鹌鹎鹑鹕鹗鹚鹛鹜鹞鹣鹦鹧鹨鹩鹪鹫鹬鹱鹭鹳疒疔疖疠疝疬疣疳疴疸痄疱疰痃痂痖痍痣痨痦痤痫痧瘃痱痼痿瘐瘀瘅瘌瘗瘊瘥瘘瘕瘙�".split("");for(j=0;j!=D[240].length;++j)if(D[240][j].charCodeAt(0)!==65533){e[D[240][j]]=61440+j;d[61440+j]=D[240][j]}D[241]="����������������������������������������������������������������馌馎馚馛馜馝馞馟馠馡馢馣馤馦馧馩馪馫馬馭馮馯馰馱馲馳馴馵馶馷馸馹馺馻馼馽馾馿駀駁駂駃駄駅駆駇駈駉駊駋駌駍駎駏駐駑駒駓駔駕駖駗駘�駙駚駛駜駝駞駟駠駡駢駣駤駥駦駧駨駩駪駫駬駭駮駯駰駱駲駳駴駵駶駷駸駹瘛瘼瘢瘠癀瘭瘰瘿瘵癃瘾瘳癍癞癔癜癖癫癯翊竦穸穹窀窆窈窕窦窠窬窨窭窳衤衩衲衽衿袂袢裆袷袼裉裢裎裣裥裱褚裼裨裾裰褡褙褓褛褊褴褫褶襁襦襻疋胥皲皴矜耒耔耖耜耠耢耥耦耧耩耨耱耋耵聃聆聍聒聩聱覃顸颀颃�".split("");for(j=0;j!=D[241].length;++j)if(D[241][j].charCodeAt(0)!==65533){e[D[241][j]]=61696+j;d[61696+j]=D[241][j]}D[242]="����������������������������������������������������������������駺駻駼駽駾駿騀騁騂騃騄騅騆騇騈騉騊騋騌騍騎騏騐騑騒験騔騕騖騗騘騙騚騛騜騝騞騟騠騡騢騣騤騥騦騧騨騩騪騫騬騭騮騯騰騱騲騳騴騵騶騷騸�騹騺騻騼騽騾騿驀驁驂驃驄驅驆驇驈驉驊驋驌驍驎驏驐驑驒驓驔驕驖驗驘驙颉颌颍颏颔颚颛颞颟颡颢颥颦虍虔虬虮虿虺虼虻蚨蚍蚋蚬蚝蚧蚣蚪蚓蚩蚶蛄蚵蛎蚰蚺蚱蚯蛉蛏蚴蛩蛱蛲蛭蛳蛐蜓蛞蛴蛟蛘蛑蜃蜇蛸蜈蜊蜍蜉蜣蜻蜞蜥蜮蜚蜾蝈蜴蜱蜩蜷蜿螂蜢蝽蝾蝻蝠蝰蝌蝮螋蝓蝣蝼蝤蝙蝥螓螯螨蟒�".split("");for(j=0;j!=D[242].length;++j)if(D[242][j].charCodeAt(0)!==65533){e[D[242][j]]=61952+j;d[61952+j]=D[242][j]}D[243]="����������������������������������������������������������������驚驛驜驝驞驟驠驡驢驣驤驥驦驧驨驩驪驫驲骃骉骍骎骔骕骙骦骩骪骫骬骭骮骯骲骳骴骵骹骻骽骾骿髃髄髆髇髈髉髊髍髎髏髐髒體髕髖髗髙髚髛髜�髝髞髠髢髣髤髥髧髨髩髪髬髮髰髱髲髳髴髵髶髷髸髺髼髽髾髿鬀鬁鬂鬄鬅鬆蟆螈螅螭螗螃螫蟥螬螵螳蟋蟓螽蟑蟀蟊蟛蟪蟠蟮蠖蠓蟾蠊蠛蠡蠹蠼缶罂罄罅舐竺竽笈笃笄笕笊笫笏筇笸笪笙笮笱笠笥笤笳笾笞筘筚筅筵筌筝筠筮筻筢筲筱箐箦箧箸箬箝箨箅箪箜箢箫箴篑篁篌篝篚篥篦篪簌篾篼簏簖簋�".split("");for(j=0;j!=D[243].length;++j)if(D[243][j].charCodeAt(0)!==65533){e[D[243][j]]=62208+j;d[62208+j]=D[243][j]}D[244]="����������������������������������������������������������������鬇鬉鬊鬋鬌鬍鬎鬐鬑鬒鬔鬕鬖鬗鬘鬙鬚鬛鬜鬝鬞鬠鬡鬢鬤鬥鬦鬧鬨鬩鬪鬫鬬鬭鬮鬰鬱鬳鬴鬵鬶鬷鬸鬹鬺鬽鬾鬿魀魆魊魋魌魎魐魒魓魕魖魗魘魙魚�魛魜魝魞魟魠魡魢魣魤魥魦魧魨魩魪魫魬魭魮魯魰魱魲魳魴魵魶魷魸魹魺魻簟簪簦簸籁籀臾舁舂舄臬衄舡舢舣舭舯舨舫舸舻舳舴舾艄艉艋艏艚艟艨衾袅袈裘裟襞羝羟羧羯羰羲籼敉粑粝粜粞粢粲粼粽糁糇糌糍糈糅糗糨艮暨羿翎翕翥翡翦翩翮翳糸絷綦綮繇纛麸麴赳趄趔趑趱赧赭豇豉酊酐酎酏酤�".split("");for(j=0;j!=D[244].length;++j)if(D[244][j].charCodeAt(0)!==65533){e[D[244][j]]=62464+j;d[62464+j]=D[244][j]}D[245]="����������������������������������������������������������������魼魽魾魿鮀鮁鮂鮃鮄鮅鮆鮇鮈鮉鮊鮋鮌鮍鮎鮏鮐鮑鮒鮓鮔鮕鮖鮗鮘鮙鮚鮛鮜鮝鮞鮟鮠鮡鮢鮣鮤鮥鮦鮧鮨鮩鮪鮫鮬鮭鮮鮯鮰鮱鮲鮳鮴鮵鮶鮷鮸鮹鮺�鮻鮼鮽鮾鮿鯀鯁鯂鯃鯄鯅鯆鯇鯈鯉鯊鯋鯌鯍鯎鯏鯐鯑鯒鯓鯔鯕鯖鯗鯘鯙鯚鯛酢酡酰酩酯酽酾酲酴酹醌醅醐醍醑醢醣醪醭醮醯醵醴醺豕鹾趸跫踅蹙蹩趵趿趼趺跄跖跗跚跞跎跏跛跆跬跷跸跣跹跻跤踉跽踔踝踟踬踮踣踯踺蹀踹踵踽踱蹉蹁蹂蹑蹒蹊蹰蹶蹼蹯蹴躅躏躔躐躜躞豸貂貊貅貘貔斛觖觞觚觜�".split("");for(j=0;j!=D[245].length;++j)if(D[245][j].charCodeAt(0)!==65533){e[D[245][j]]=62720+j;d[62720+j]=D[245][j]}D[246]="����������������������������������������������������������������鯜鯝鯞鯟鯠鯡鯢鯣鯤鯥鯦鯧鯨鯩鯪鯫鯬鯭鯮鯯鯰鯱鯲鯳鯴鯵鯶鯷鯸鯹鯺鯻鯼鯽鯾鯿鰀鰁鰂鰃鰄鰅鰆鰇鰈鰉鰊鰋鰌鰍鰎鰏鰐鰑鰒鰓鰔鰕鰖鰗鰘鰙鰚�鰛鰜鰝鰞鰟鰠鰡鰢鰣鰤鰥鰦鰧鰨鰩鰪鰫鰬鰭鰮鰯鰰鰱鰲鰳鰴鰵鰶鰷鰸鰹鰺鰻觥觫觯訾謦靓雩雳雯霆霁霈霏霎霪霭霰霾龀龃龅龆龇龈龉龊龌黾鼋鼍隹隼隽雎雒瞿雠銎銮鋈錾鍪鏊鎏鐾鑫鱿鲂鲅鲆鲇鲈稣鲋鲎鲐鲑鲒鲔鲕鲚鲛鲞鲟鲠鲡鲢鲣鲥鲦鲧鲨鲩鲫鲭鲮鲰鲱鲲鲳鲴鲵鲶鲷鲺鲻鲼鲽鳄鳅鳆鳇鳊鳋�".split("");for(j=0;j!=D[246].length;++j)if(D[246][j].charCodeAt(0)!==65533){e[D[246][j]]=62976+j;d[62976+j]=D[246][j]}D[247]="����������������������������������������������������������������鰼鰽鰾鰿鱀鱁鱂鱃鱄鱅鱆鱇鱈鱉鱊鱋鱌鱍鱎鱏鱐鱑鱒鱓鱔鱕鱖鱗鱘鱙鱚鱛鱜鱝鱞鱟鱠鱡鱢鱣鱤鱥鱦鱧鱨鱩鱪鱫鱬鱭鱮鱯鱰鱱鱲鱳鱴鱵鱶鱷鱸鱹鱺�鱻鱽鱾鲀鲃鲄鲉鲊鲌鲏鲓鲖鲗鲘鲙鲝鲪鲬鲯鲹鲾鲿鳀鳁鳂鳈鳉鳑鳒鳚鳛鳠鳡鳌鳍鳎鳏鳐鳓鳔鳕鳗鳘鳙鳜鳝鳟鳢靼鞅鞑鞒鞔鞯鞫鞣鞲鞴骱骰骷鹘骶骺骼髁髀髅髂髋髌髑魅魃魇魉魈魍魑飨餍餮饕饔髟髡髦髯髫髻髭髹鬈鬏鬓鬟鬣麽麾縻麂麇麈麋麒鏖麝麟黛黜黝黠黟黢黩黧黥黪黯鼢鼬鼯鼹鼷鼽鼾齄�".split("");for(j=0;j!=D[247].length;++j)if(D[247][j].charCodeAt(0)!==65533){e[D[247][j]]=63232+j;d[63232+j]=D[247][j]}D[248]="����������������������������������������������������������������鳣鳤鳥鳦鳧鳨鳩鳪鳫鳬鳭鳮鳯鳰鳱鳲鳳鳴鳵鳶鳷鳸鳹鳺鳻鳼鳽鳾鳿鴀鴁鴂鴃鴄鴅鴆鴇鴈鴉鴊鴋鴌鴍鴎鴏鴐鴑鴒鴓鴔鴕鴖鴗鴘鴙鴚鴛鴜鴝鴞鴟鴠鴡�鴢鴣鴤鴥鴦鴧鴨鴩鴪鴫鴬鴭鴮鴯鴰鴱鴲鴳鴴鴵鴶鴷鴸鴹鴺鴻鴼鴽鴾鴿鵀鵁鵂�����������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[248].length;++j)if(D[248][j].charCodeAt(0)!==65533){e[D[248][j]]=63488+j;d[63488+j]=D[248][j]}D[249]="����������������������������������������������������������������鵃鵄鵅鵆鵇鵈鵉鵊鵋鵌鵍鵎鵏鵐鵑鵒鵓鵔鵕鵖鵗鵘鵙鵚鵛鵜鵝鵞鵟鵠鵡鵢鵣鵤鵥鵦鵧鵨鵩鵪鵫鵬鵭鵮鵯鵰鵱鵲鵳鵴鵵鵶鵷鵸鵹鵺鵻鵼鵽鵾鵿鶀鶁�鶂鶃鶄鶅鶆鶇鶈鶉鶊鶋鶌鶍鶎鶏鶐鶑鶒鶓鶔鶕鶖鶗鶘鶙鶚鶛鶜鶝鶞鶟鶠鶡鶢�����������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[249].length;++j)if(D[249][j].charCodeAt(0)!==65533){e[D[249][j]]=63744+j;d[63744+j]=D[249][j]}D[250]="����������������������������������������������������������������鶣鶤鶥鶦鶧鶨鶩鶪鶫鶬鶭鶮鶯鶰鶱鶲鶳鶴鶵鶶鶷鶸鶹鶺鶻鶼鶽鶾鶿鷀鷁鷂鷃鷄鷅鷆鷇鷈鷉鷊鷋鷌鷍鷎鷏鷐鷑鷒鷓鷔鷕鷖鷗鷘鷙鷚鷛鷜鷝鷞鷟鷠鷡�鷢鷣鷤鷥鷦鷧鷨鷩鷪鷫鷬鷭鷮鷯鷰鷱鷲鷳鷴鷵鷶鷷鷸鷹鷺鷻鷼鷽鷾鷿鸀鸁鸂�����������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[250].length;++j)if(D[250][j].charCodeAt(0)!==65533){e[D[250][j]]=64e3+j;d[64e3+j]=D[250][j]}D[251]="����������������������������������������������������������������鸃鸄鸅鸆鸇鸈鸉鸊鸋鸌鸍鸎鸏鸐鸑鸒鸓鸔鸕鸖鸗鸘鸙鸚鸛鸜鸝鸞鸤鸧鸮鸰鸴鸻鸼鹀鹍鹐鹒鹓鹔鹖鹙鹝鹟鹠鹡鹢鹥鹮鹯鹲鹴鹵鹶鹷鹸鹹鹺鹻鹼鹽麀�麁麃麄麅麆麉麊麌麍麎麏麐麑麔麕麖麗麘麙麚麛麜麞麠麡麢麣麤麥麧麨麩麪�����������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[251].length;++j)if(D[251][j].charCodeAt(0)!==65533){e[D[251][j]]=64256+j;d[64256+j]=D[251][j]}D[252]="����������������������������������������������������������������麫麬麭麮麯麰麱麲麳麵麶麷麹麺麼麿黀黁黂黃黅黆黇黈黊黋黌黐黒黓黕黖黗黙黚點黡黣黤黦黨黫黬黭黮黰黱黲黳黴黵黶黷黸黺黽黿鼀鼁鼂鼃鼄鼅�鼆鼇鼈鼉鼊鼌鼏鼑鼒鼔鼕鼖鼘鼚鼛鼜鼝鼞鼟鼡鼣鼤鼥鼦鼧鼨鼩鼪鼫鼭鼮鼰鼱�����������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[252].length;++j)if(D[252][j].charCodeAt(0)!==65533){e[D[252][j]]=64512+j;d[64512+j]=D[252][j]}D[253]="����������������������������������������������������������������鼲鼳鼴鼵鼶鼸鼺鼼鼿齀齁齂齃齅齆齇齈齉齊齋齌齍齎齏齒齓齔齕齖齗齘齙齚齛齜齝齞齟齠齡齢齣齤齥齦齧齨齩齪齫齬齭齮齯齰齱齲齳齴齵齶齷齸�齹齺齻齼齽齾龁龂龍龎龏龐龑龒龓龔龕龖龗龘龜龝龞龡龢龣龤龥郎凉秊裏隣�����������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[253].length;++j)if(D[253][j].charCodeAt(0)!==65533){e[D[253][j]]=64768+j;d[64768+j]=D[253][j]}D[254]="����������������������������������������������������������������兀嗀﨎﨏﨑﨓﨔礼﨟蘒﨡﨣﨤﨧﨨﨩��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[254].length;++j)if(D[254][j].charCodeAt(0)!==65533){e[D[254][j]]=65024+j;d[65024+j]=D[254][j]}return{enc:e,dec:d}}();cptable[949]=function(){var d=[],e={},D=[],j;D[0]="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[0].length;++j)if(D[0][j].charCodeAt(0)!==65533){e[D[0][j]]=0+j;d[0+j]=D[0][j]}D[129]="�����������������������������������������������������������������갂갃갅갆갋갌갍갎갏갘갞갟갡갢갣갥갦갧갨갩갪갫갮갲갳갴������갵갶갷갺갻갽갾갿걁걂걃걄걅걆걇걈걉걊걌걎걏걐걑걒걓걕������걖걗걙걚걛걝걞걟걠걡걢걣걤걥걦걧걨걩걪걫걬걭걮걯걲걳걵걶걹걻걼걽걾걿겂겇겈겍겎겏겑겒겓겕겖겗겘겙겚겛겞겢겣겤겥겦겧겫겭겮겱겲겳겴겵겶겷겺겾겿곀곂곃곅곆곇곉곊곋곍곎곏곐곑곒곓곔곖곘곙곚곛곜곝곞곟곢곣곥곦곩곫곭곮곲곴곷곸곹곺곻곾곿괁괂괃괅괇괈괉괊괋괎괐괒괓�".split("");for(j=0;j!=D[129].length;++j)if(D[129][j].charCodeAt(0)!==65533){e[D[129][j]]=33024+j;d[33024+j]=D[129][j]}D[130]="�����������������������������������������������������������������괔괕괖괗괙괚괛괝괞괟괡괢괣괤괥괦괧괨괪괫괮괯괰괱괲괳������괶괷괹괺괻괽괾괿굀굁굂굃굆굈굊굋굌굍굎굏굑굒굓굕굖굗������굙굚굛굜굝굞굟굠굢굤굥굦굧굨굩굪굫굮굯굱굲굷굸굹굺굾궀궃궄궅궆궇궊궋궍궎궏궑궒궓궔궕궖궗궘궙궚궛궞궟궠궡궢궣궥궦궧궨궩궪궫궬궭궮궯궰궱궲궳궴궵궶궸궹궺궻궼궽궾궿귂귃귅귆귇귉귊귋귌귍귎귏귒귔귕귖귗귘귙귚귛귝귞귟귡귢귣귥귦귧귨귩귪귫귬귭귮귯귰귱귲귳귴귵귶귷�".split("");for(j=0;j!=D[130].length;++j)if(D[130][j].charCodeAt(0)!==65533){e[D[130][j]]=33280+j;d[33280+j]=D[130][j]}D[131]="�����������������������������������������������������������������귺귻귽귾긂긃긄긅긆긇긊긌긎긏긐긑긒긓긕긖긗긘긙긚긛긜������긝긞긟긠긡긢긣긤긥긦긧긨긩긪긫긬긭긮긯긲긳긵긶긹긻긼������긽긾긿깂깄깇깈깉깋깏깑깒깓깕깗깘깙깚깛깞깢깣깤깦깧깪깫깭깮깯깱깲깳깴깵깶깷깺깾깿꺀꺁꺂꺃꺆꺇꺈꺉꺊꺋꺍꺎꺏꺐꺑꺒꺓꺔꺕꺖꺗꺘꺙꺚꺛꺜꺝꺞꺟꺠꺡꺢꺣꺤꺥꺦꺧꺨꺩꺪꺫꺬꺭꺮꺯꺰꺱꺲꺳꺴꺵꺶꺷꺸꺹꺺꺻꺿껁껂껃껅껆껇껈껉껊껋껎껒껓껔껕껖껗껚껛껝껞껟껠껡껢껣껤껥�".split("");for(j=0;j!=D[131].length;++j)if(D[131][j].charCodeAt(0)!==65533){e[D[131][j]]=33536+j;d[33536+j]=D[131][j]}D[132]="�����������������������������������������������������������������껦껧껩껪껬껮껯껰껱껲껳껵껶껷껹껺껻껽껾껿꼀꼁꼂꼃꼄꼅������꼆꼉꼊꼋꼌꼎꼏꼑꼒꼓꼔꼕꼖꼗꼘꼙꼚꼛꼜꼝꼞꼟꼠꼡꼢꼣������꼤꼥꼦꼧꼨꼩꼪꼫꼮꼯꼱꼳꼵꼶꼷꼸꼹꼺꼻꼾꽀꽄꽅꽆꽇꽊꽋꽌꽍꽎꽏꽑꽒꽓꽔꽕꽖꽗꽘꽙꽚꽛꽞꽟꽠꽡꽢꽣꽦꽧꽨꽩꽪꽫꽬꽭꽮꽯꽰꽱꽲꽳꽴꽵꽶꽷꽸꽺꽻꽼꽽꽾꽿꾁꾂꾃꾅꾆꾇꾉꾊꾋꾌꾍꾎꾏꾒꾓꾔꾖꾗꾘꾙꾚꾛꾝꾞꾟꾠꾡꾢꾣꾤꾥꾦꾧꾨꾩꾪꾫꾬꾭꾮꾯꾰꾱꾲꾳꾴꾵꾶꾷꾺꾻꾽꾾�".split("");for(j=0;j!=D[132].length;++j)if(D[132][j].charCodeAt(0)!==65533){e[D[132][j]]=33792+j;d[33792+j]=D[132][j]}D[133]="�����������������������������������������������������������������꾿꿁꿂꿃꿄꿅꿆꿊꿌꿏꿐꿑꿒꿓꿕꿖꿗꿘꿙꿚꿛꿝꿞꿟꿠꿡������꿢꿣꿤꿥꿦꿧꿪꿫꿬꿭꿮꿯꿲꿳꿵꿶꿷꿹꿺꿻꿼꿽꿾꿿뀂뀃������뀅뀆뀇뀈뀉뀊뀋뀍뀎뀏뀑뀒뀓뀕뀖뀗뀘뀙뀚뀛뀞뀟뀠뀡뀢뀣뀤뀥뀦뀧뀩뀪뀫뀬뀭뀮뀯뀰뀱뀲뀳뀴뀵뀶뀷뀸뀹뀺뀻뀼뀽뀾뀿끀끁끂끃끆끇끉끋끍끏끐끑끒끖끘끚끛끜끞끟끠끡끢끣끤끥끦끧끨끩끪끫끬끭끮끯끰끱끲끳끴끵끶끷끸끹끺끻끾끿낁낂낃낅낆낇낈낉낊낋낎낐낒낓낔낕낖낗낛낝낞낣낤�".split("");for(j=0;j!=D[133].length;++j)if(D[133][j].charCodeAt(0)!==65533){e[D[133][j]]=34048+j;d[34048+j]=D[133][j]}D[134]="�����������������������������������������������������������������낥낦낧낪낰낲낶낷낹낺낻낽낾낿냀냁냂냃냆냊냋냌냍냎냏냒������냓냕냖냗냙냚냛냜냝냞냟냡냢냣냤냦냧냨냩냪냫냬냭냮냯냰������냱냲냳냴냵냶냷냸냹냺냻냼냽냾냿넀넁넂넃넄넅넆넇넊넍넎넏넑넔넕넖넗넚넞넟넠넡넢넦넧넩넪넫넭넮넯넰넱넲넳넶넺넻넼넽넾넿녂녃녅녆녇녉녊녋녌녍녎녏녒녓녖녗녙녚녛녝녞녟녡녢녣녤녥녦녧녨녩녪녫녬녭녮녯녰녱녲녳녴녵녶녷녺녻녽녾녿놁놃놄놅놆놇놊놌놎놏놐놑놕놖놗놙놚놛놝�".split("");for(j=0;j!=D[134].length;++j)if(D[134][j].charCodeAt(0)!==65533){e[D[134][j]]=34304+j;d[34304+j]=D[134][j]}D[135]="�����������������������������������������������������������������놞놟놠놡놢놣놤놥놦놧놩놪놫놬놭놮놯놰놱놲놳놴놵놶놷놸������놹놺놻놼놽놾놿뇀뇁뇂뇃뇄뇅뇆뇇뇈뇉뇊뇋뇍뇎뇏뇑뇒뇓뇕������뇖뇗뇘뇙뇚뇛뇞뇠뇡뇢뇣뇤뇥뇦뇧뇪뇫뇭뇮뇯뇱뇲뇳뇴뇵뇶뇷뇸뇺뇼뇾뇿눀눁눂눃눆눇눉눊눍눎눏눐눑눒눓눖눘눚눛눜눝눞눟눡눢눣눤눥눦눧눨눩눪눫눬눭눮눯눰눱눲눳눵눶눷눸눹눺눻눽눾눿뉀뉁뉂뉃뉄뉅뉆뉇뉈뉉뉊뉋뉌뉍뉎뉏뉐뉑뉒뉓뉔뉕뉖뉗뉙뉚뉛뉝뉞뉟뉡뉢뉣뉤뉥뉦뉧뉪뉫뉬뉭뉮�".split("");for(j=0;j!=D[135].length;++j)if(D[135][j].charCodeAt(0)!==65533){e[D[135][j]]=34560+j;d[34560+j]=D[135][j]}D[136]="�����������������������������������������������������������������뉯뉰뉱뉲뉳뉶뉷뉸뉹뉺뉻뉽뉾뉿늀늁늂늃늆늇늈늊늋늌늍늎������늏늒늓늕늖늗늛늜늝늞늟늢늤늧늨늩늫늭늮늯늱늲늳늵늶늷������늸늹늺늻늼늽늾늿닀닁닂닃닄닅닆닇닊닋닍닎닏닑닓닔닕닖닗닚닜닞닟닠닡닣닧닩닪닰닱닲닶닼닽닾댂댃댅댆댇댉댊댋댌댍댎댏댒댖댗댘댙댚댛댝댞댟댠댡댢댣댤댥댦댧댨댩댪댫댬댭댮댯댰댱댲댳댴댵댶댷댸댹댺댻댼댽댾댿덀덁덂덃덄덅덆덇덈덉덊덋덌덍덎덏덐덑덒덓덗덙덚덝덠덡덢덣�".split("");for(j=0;j!=D[136].length;++j)if(D[136][j].charCodeAt(0)!==65533){e[D[136][j]]=34816+j;d[34816+j]=D[136][j]}D[137]="�����������������������������������������������������������������덦덨덪덬덭덯덲덳덵덶덷덹덺덻덼덽덾덿뎂뎆뎇뎈뎉뎊뎋뎍������뎎뎏뎑뎒뎓뎕뎖뎗뎘뎙뎚뎛뎜뎝뎞뎟뎢뎣뎤뎥뎦뎧뎩뎪뎫뎭������뎮뎯뎰뎱뎲뎳뎴뎵뎶뎷뎸뎹뎺뎻뎼뎽뎾뎿돀돁돂돃돆돇돉돊돍돏돑돒돓돖돘돚돜돞돟돡돢돣돥돦돧돩돪돫돬돭돮돯돰돱돲돳돴돵돶돷돸돹돺돻돽돾돿됀됁됂됃됄됅됆됇됈됉됊됋됌됍됎됏됑됒됓됔됕됖됗됙됚됛됝됞됟됡됢됣됤됥됦됧됪됬됭됮됯됰됱됲됳됵됶됷됸됹됺됻됼됽됾됿둀둁둂둃둄�".split("");for(j=0;j!=D[137].length;++j)if(D[137][j].charCodeAt(0)!==65533){e[D[137][j]]=35072+j;d[35072+j]=D[137][j]}D[138]="�����������������������������������������������������������������둅둆둇둈둉둊둋둌둍둎둏둒둓둕둖둗둙둚둛둜둝둞둟둢둤둦������둧둨둩둪둫둭둮둯둰둱둲둳둴둵둶둷둸둹둺둻둼둽둾둿뒁뒂������뒃뒄뒅뒆뒇뒉뒊뒋뒌뒍뒎뒏뒐뒑뒒뒓뒔뒕뒖뒗뒘뒙뒚뒛뒜뒞뒟뒠뒡뒢뒣뒥뒦뒧뒩뒪뒫뒭뒮뒯뒰뒱뒲뒳뒴뒶뒸뒺뒻뒼뒽뒾뒿듁듂듃듅듆듇듉듊듋듌듍듎듏듑듒듓듔듖듗듘듙듚듛듞듟듡듢듥듧듨듩듪듫듮듰듲듳듴듵듶듷듹듺듻듼듽듾듿딀딁딂딃딄딅딆딇딈딉딊딋딌딍딎딏딐딑딒딓딖딗딙딚딝�".split("");for(j=0;j!=D[138].length;++j)if(D[138][j].charCodeAt(0)!==65533){e[D[138][j]]=35328+j;d[35328+j]=D[138][j]}D[139]="�����������������������������������������������������������������딞딟딠딡딢딣딦딫딬딭딮딯딲딳딵딶딷딹딺딻딼딽딾딿땂땆������땇땈땉땊땎땏땑땒땓땕땖땗땘땙땚땛땞땢땣땤땥땦땧땨땩땪������땫땬땭땮땯땰땱땲땳땴땵땶땷땸땹땺땻땼땽땾땿떀떁떂떃떄떅떆떇떈떉떊떋떌떍떎떏떐떑떒떓떔떕떖떗떘떙떚떛떜떝떞떟떢떣떥떦떧떩떬떭떮떯떲떶떷떸떹떺떾떿뗁뗂뗃뗅뗆뗇뗈뗉뗊뗋뗎뗒뗓뗔뗕뗖뗗뗙뗚뗛뗜뗝뗞뗟뗠뗡뗢뗣뗤뗥뗦뗧뗨뗩뗪뗫뗭뗮뗯뗰뗱뗲뗳뗴뗵뗶뗷뗸뗹뗺뗻뗼뗽뗾뗿�".split("");for(j=0;j!=D[139].length;++j)if(D[139][j].charCodeAt(0)!==65533){e[D[139][j]]=35584+j;d[35584+j]=D[139][j]}D[140]="�����������������������������������������������������������������똀똁똂똃똄똅똆똇똈똉똊똋똌똍똎똏똒똓똕똖똗똙똚똛똜똝������똞똟똠똡똢똣똤똦똧똨똩똪똫똭똮똯똰똱똲똳똵똶똷똸똹똺������똻똼똽똾똿뙀뙁뙂뙃뙄뙅뙆뙇뙉뙊뙋뙌뙍뙎뙏뙐뙑뙒뙓뙔뙕뙖뙗뙘뙙뙚뙛뙜뙝뙞뙟뙠뙡뙢뙣뙥뙦뙧뙩뙪뙫뙬뙭뙮뙯뙰뙱뙲뙳뙴뙵뙶뙷뙸뙹뙺뙻뙼뙽뙾뙿뚀뚁뚂뚃뚄뚅뚆뚇뚈뚉뚊뚋뚌뚍뚎뚏뚐뚑뚒뚓뚔뚕뚖뚗뚘뚙뚚뚛뚞뚟뚡뚢뚣뚥뚦뚧뚨뚩뚪뚭뚮뚯뚰뚲뚳뚴뚵뚶뚷뚸뚹뚺뚻뚼뚽뚾뚿뛀뛁뛂�".split("");for(j=0;j!=D[140].length;++j)if(D[140][j].charCodeAt(0)!==65533){e[D[140][j]]=35840+j;d[35840+j]=D[140][j]}D[141]="�����������������������������������������������������������������뛃뛄뛅뛆뛇뛈뛉뛊뛋뛌뛍뛎뛏뛐뛑뛒뛓뛕뛖뛗뛘뛙뛚뛛뛜뛝������뛞뛟뛠뛡뛢뛣뛤뛥뛦뛧뛨뛩뛪뛫뛬뛭뛮뛯뛱뛲뛳뛵뛶뛷뛹뛺������뛻뛼뛽뛾뛿뜂뜃뜄뜆뜇뜈뜉뜊뜋뜌뜍뜎뜏뜐뜑뜒뜓뜔뜕뜖뜗뜘뜙뜚뜛뜜뜝뜞뜟뜠뜡뜢뜣뜤뜥뜦뜧뜪뜫뜭뜮뜱뜲뜳뜴뜵뜶뜷뜺뜼뜽뜾뜿띀띁띂띃띅띆띇띉띊띋띍띎띏띐띑띒띓띖띗띘띙띚띛띜띝띞띟띡띢띣띥띦띧띩띪띫띬띭띮띯띲띴띶띷띸띹띺띻띾띿랁랂랃랅랆랇랈랉랊랋랎랓랔랕랚랛랝랞�".split("");for(j=0;j!=D[141].length;++j)if(D[141][j].charCodeAt(0)!==65533){e[D[141][j]]=36096+j;d[36096+j]=D[141][j]}D[142]="�����������������������������������������������������������������랟랡랢랣랤랥랦랧랪랮랯랰랱랲랳랶랷랹랺랻랼랽랾랿럀럁������럂럃럄럅럆럈럊럋럌럍럎럏럐럑럒럓럔럕럖럗럘럙럚럛럜럝������럞럟럠럡럢럣럤럥럦럧럨럩럪럫럮럯럱럲럳럵럶럷럸럹럺럻럾렂렃렄렅렆렊렋렍렎렏렑렒렓렔렕렖렗렚렜렞렟렠렡렢렣렦렧렩렪렫렭렮렯렰렱렲렳렶렺렻렼렽렾렿롁롂롃롅롆롇롈롉롊롋롌롍롎롏롐롒롔롕롖롗롘롙롚롛롞롟롡롢롣롥롦롧롨롩롪롫롮롰롲롳롴롵롶롷롹롺롻롽롾롿뢀뢁뢂뢃뢄�".split("");for(j=0;j!=D[142].length;++j)if(D[142][j].charCodeAt(0)!==65533){e[D[142][j]]=36352+j;d[36352+j]=D[142][j]}D[143]="�����������������������������������������������������������������뢅뢆뢇뢈뢉뢊뢋뢌뢎뢏뢐뢑뢒뢓뢔뢕뢖뢗뢘뢙뢚뢛뢜뢝뢞뢟������뢠뢡뢢뢣뢤뢥뢦뢧뢩뢪뢫뢬뢭뢮뢯뢱뢲뢳뢵뢶뢷뢹뢺뢻뢼뢽������뢾뢿룂룄룆룇룈룉룊룋룍룎룏룑룒룓룕룖룗룘룙룚룛룜룞룠룢룣룤룥룦룧룪룫룭룮룯룱룲룳룴룵룶룷룺룼룾룿뤀뤁뤂뤃뤅뤆뤇뤈뤉뤊뤋뤌뤍뤎뤏뤐뤑뤒뤓뤔뤕뤖뤗뤙뤚뤛뤜뤝뤞뤟뤡뤢뤣뤤뤥뤦뤧뤨뤩뤪뤫뤬뤭뤮뤯뤰뤱뤲뤳뤴뤵뤶뤷뤸뤹뤺뤻뤾뤿륁륂륃륅륆륇륈륉륊륋륍륎륐륒륓륔륕륖륗�".split("");for(j=0;j!=D[143].length;++j)if(D[143][j].charCodeAt(0)!==65533){e[D[143][j]]=36608+j;d[36608+j]=D[143][j]}D[144]="�����������������������������������������������������������������륚륛륝륞륟륡륢륣륤륥륦륧륪륬륮륯륰륱륲륳륶륷륹륺륻륽������륾륿릀릁릂릃릆릈릋릌릏릐릑릒릓릔릕릖릗릘릙릚릛릜릝릞������릟릠릡릢릣릤릥릦릧릨릩릪릫릮릯릱릲릳릵릶릷릸릹릺릻릾맀맂맃맄맅맆맇맊맋맍맓맔맕맖맗맚맜맟맠맢맦맧맩맪맫맭맮맯맰맱맲맳맶맻맼맽맾맿먂먃먄먅먆먇먉먊먋먌먍먎먏먐먑먒먓먔먖먗먘먙먚먛먜먝먞먟먠먡먢먣먤먥먦먧먨먩먪먫먬먭먮먯먰먱먲먳먴먵먶먷먺먻먽먾먿멁멃멄멅멆�".split("");for(j=0;j!=D[144].length;++j)if(D[144][j].charCodeAt(0)!==65533){e[D[144][j]]=36864+j;d[36864+j]=D[144][j]}D[145]="�����������������������������������������������������������������멇멊멌멏멐멑멒멖멗멙멚멛멝멞멟멠멡멢멣멦멪멫멬멭멮멯������멲멳멵멶멷멹멺멻멼멽멾멿몀몁몂몆몈몉몊몋몍몎몏몐몑몒������몓몔몕몖몗몘몙몚몛몜몝몞몟몠몡몢몣몤몥몦몧몪몭몮몯몱몳몴몵몶몷몺몼몾몿뫀뫁뫂뫃뫅뫆뫇뫉뫊뫋뫌뫍뫎뫏뫐뫑뫒뫓뫔뫕뫖뫗뫚뫛뫜뫝뫞뫟뫠뫡뫢뫣뫤뫥뫦뫧뫨뫩뫪뫫뫬뫭뫮뫯뫰뫱뫲뫳뫴뫵뫶뫷뫸뫹뫺뫻뫽뫾뫿묁묂묃묅묆묇묈묉묊묋묌묎묐묒묓묔묕묖묗묙묚묛묝묞묟묡묢묣묤묥묦묧�".split("");for(j=0;j!=D[145].length;++j)if(D[145][j].charCodeAt(0)!==65533){e[D[145][j]]=37120+j;d[37120+j]=D[145][j]}D[146]="�����������������������������������������������������������������묨묪묬묭묮묯묰묱묲묳묷묹묺묿뭀뭁뭂뭃뭆뭈뭊뭋뭌뭎뭑뭒������뭓뭕뭖뭗뭙뭚뭛뭜뭝뭞뭟뭠뭢뭤뭥뭦뭧뭨뭩뭪뭫뭭뭮뭯뭰뭱������뭲뭳뭴뭵뭶뭷뭸뭹뭺뭻뭼뭽뭾뭿뮀뮁뮂뮃뮄뮅뮆뮇뮉뮊뮋뮍뮎뮏뮑뮒뮓뮔뮕뮖뮗뮘뮙뮚뮛뮜뮝뮞뮟뮠뮡뮢뮣뮥뮦뮧뮩뮪뮫뮭뮮뮯뮰뮱뮲뮳뮵뮶뮸뮹뮺뮻뮼뮽뮾뮿믁믂믃믅믆믇믉믊믋믌믍믎믏믑믒믔믕믖믗믘믙믚믛믜믝믞믟믠믡믢믣믤믥믦믧믨믩믪믫믬믭믮믯믰믱믲믳믴믵믶믷믺믻믽믾밁�".split("");for(j=0;j!=D[146].length;++j)if(D[146][j].charCodeAt(0)!==65533){e[D[146][j]]=37376+j;d[37376+j]=D[146][j]}D[147]="�����������������������������������������������������������������밃밄밅밆밇밊밎밐밒밓밙밚밠밡밢밣밦밨밪밫밬밮밯밲밳밵������밶밷밹밺밻밼밽밾밿뱂뱆뱇뱈뱊뱋뱎뱏뱑뱒뱓뱔뱕뱖뱗뱘뱙������뱚뱛뱜뱞뱟뱠뱡뱢뱣뱤뱥뱦뱧뱨뱩뱪뱫뱬뱭뱮뱯뱰뱱뱲뱳뱴뱵뱶뱷뱸뱹뱺뱻뱼뱽뱾뱿벀벁벂벃벆벇벉벊벍벏벐벑벒벓벖벘벛벜벝벞벟벢벣벥벦벩벪벫벬벭벮벯벲벶벷벸벹벺벻벾벿볁볂볃볅볆볇볈볉볊볋볌볎볒볓볔볖볗볙볚볛볝볞볟볠볡볢볣볤볥볦볧볨볩볪볫볬볭볮볯볰볱볲볳볷볹볺볻볽�".split("");for(j=0;j!=D[147].length;++j)if(D[147][j].charCodeAt(0)!==65533){e[D[147][j]]=37632+j;d[37632+j]=D[147][j]}D[148]="�����������������������������������������������������������������볾볿봀봁봂봃봆봈봊봋봌봍봎봏봑봒봓봕봖봗봘봙봚봛봜봝������봞봟봠봡봢봣봥봦봧봨봩봪봫봭봮봯봰봱봲봳봴봵봶봷봸봹������봺봻봼봽봾봿뵁뵂뵃뵄뵅뵆뵇뵊뵋뵍뵎뵏뵑뵒뵓뵔뵕뵖뵗뵚뵛뵜뵝뵞뵟뵠뵡뵢뵣뵥뵦뵧뵩뵪뵫뵬뵭뵮뵯뵰뵱뵲뵳뵴뵵뵶뵷뵸뵹뵺뵻뵼뵽뵾뵿붂붃붅붆붋붌붍붎붏붒붔붖붗붘붛붝붞붟붠붡붢붣붥붦붧붨붩붪붫붬붭붮붯붱붲붳붴붵붶붷붹붺붻붼붽붾붿뷀뷁뷂뷃뷄뷅뷆뷇뷈뷉뷊뷋뷌뷍뷎뷏뷐뷑�".split("");for(j=0;j!=D[148].length;++j)if(D[148][j].charCodeAt(0)!==65533){e[D[148][j]]=37888+j;d[37888+j]=D[148][j]}D[149]="�����������������������������������������������������������������뷒뷓뷖뷗뷙뷚뷛뷝뷞뷟뷠뷡뷢뷣뷤뷥뷦뷧뷨뷪뷫뷬뷭뷮뷯뷱������뷲뷳뷵뷶뷷뷹뷺뷻뷼뷽뷾뷿븁븂븄븆븇븈븉븊븋븎븏븑븒븓������븕븖븗븘븙븚븛븞븠븡븢븣븤븥븦븧븨븩븪븫븬븭븮븯븰븱븲븳븴븵븶븷븸븹븺븻븼븽븾븿빀빁빂빃빆빇빉빊빋빍빏빐빑빒빓빖빘빜빝빞빟빢빣빥빦빧빩빫빬빭빮빯빲빶빷빸빹빺빾빿뺁뺂뺃뺅뺆뺇뺈뺉뺊뺋뺎뺒뺓뺔뺕뺖뺗뺚뺛뺜뺝뺞뺟뺠뺡뺢뺣뺤뺥뺦뺧뺩뺪뺫뺬뺭뺮뺯뺰뺱뺲뺳뺴뺵뺶뺷�".split("");for(j=0;j!=D[149].length;++j)if(D[149][j].charCodeAt(0)!==65533){e[D[149][j]]=38144+j;d[38144+j]=D[149][j]}D[150]="�����������������������������������������������������������������뺸뺹뺺뺻뺼뺽뺾뺿뻀뻁뻂뻃뻄뻅뻆뻇뻈뻉뻊뻋뻌뻍뻎뻏뻒뻓������뻕뻖뻙뻚뻛뻜뻝뻞뻟뻡뻢뻦뻧뻨뻩뻪뻫뻭뻮뻯뻰뻱뻲뻳뻴뻵������뻶뻷뻸뻹뻺뻻뻼뻽뻾뻿뼀뼂뼃뼄뼅뼆뼇뼊뼋뼌뼍뼎뼏뼐뼑뼒뼓뼔뼕뼖뼗뼚뼞뼟뼠뼡뼢뼣뼤뼥뼦뼧뼨뼩뼪뼫뼬뼭뼮뼯뼰뼱뼲뼳뼴뼵뼶뼷뼸뼹뼺뼻뼼뼽뼾뼿뽂뽃뽅뽆뽇뽉뽊뽋뽌뽍뽎뽏뽒뽓뽔뽖뽗뽘뽙뽚뽛뽜뽝뽞뽟뽠뽡뽢뽣뽤뽥뽦뽧뽨뽩뽪뽫뽬뽭뽮뽯뽰뽱뽲뽳뽴뽵뽶뽷뽸뽹뽺뽻뽼뽽뽾뽿뾀뾁뾂�".split("");for(j=0;j!=D[150].length;++j)if(D[150][j].charCodeAt(0)!==65533){e[D[150][j]]=38400+j;d[38400+j]=D[150][j]}D[151]="�����������������������������������������������������������������뾃뾄뾅뾆뾇뾈뾉뾊뾋뾌뾍뾎뾏뾐뾑뾒뾓뾕뾖뾗뾘뾙뾚뾛뾜뾝������뾞뾟뾠뾡뾢뾣뾤뾥뾦뾧뾨뾩뾪뾫뾬뾭뾮뾯뾱뾲뾳뾴뾵뾶뾷뾸������뾹뾺뾻뾼뾽뾾뾿뿀뿁뿂뿃뿄뿆뿇뿈뿉뿊뿋뿎뿏뿑뿒뿓뿕뿖뿗뿘뿙뿚뿛뿝뿞뿠뿢뿣뿤뿥뿦뿧뿨뿩뿪뿫뿬뿭뿮뿯뿰뿱뿲뿳뿴뿵뿶뿷뿸뿹뿺뿻뿼뿽뿾뿿쀀쀁쀂쀃쀄쀅쀆쀇쀈쀉쀊쀋쀌쀍쀎쀏쀐쀑쀒쀓쀔쀕쀖쀗쀘쀙쀚쀛쀜쀝쀞쀟쀠쀡쀢쀣쀤쀥쀦쀧쀨쀩쀪쀫쀬쀭쀮쀯쀰쀱쀲쀳쀴쀵쀶쀷쀸쀹쀺쀻쀽쀾쀿�".split("");for(j=0;j!=D[151].length;++j)if(D[151][j].charCodeAt(0)!==65533){e[D[151][j]]=38656+j;d[38656+j]=D[151][j]}D[152]="�����������������������������������������������������������������쁀쁁쁂쁃쁄쁅쁆쁇쁈쁉쁊쁋쁌쁍쁎쁏쁐쁒쁓쁔쁕쁖쁗쁙쁚쁛������쁝쁞쁟쁡쁢쁣쁤쁥쁦쁧쁪쁫쁬쁭쁮쁯쁰쁱쁲쁳쁴쁵쁶쁷쁸쁹������쁺쁻쁼쁽쁾쁿삀삁삂삃삄삅삆삇삈삉삊삋삌삍삎삏삒삓삕삖삗삙삚삛삜삝삞삟삢삤삦삧삨삩삪삫삮삱삲삷삸삹삺삻삾샂샃샄샆샇샊샋샍샎샏샑샒샓샔샕샖샗샚샞샟샠샡샢샣샦샧샩샪샫샭샮샯샰샱샲샳샶샸샺샻샼샽샾샿섁섂섃섅섆섇섉섊섋섌섍섎섏섑섒섓섔섖섗섘섙섚섛섡섢섥섨섩섪섫섮�".split("");for(j=0;j!=D[152].length;++j)if(D[152][j].charCodeAt(0)!==65533){e[D[152][j]]=38912+j;d[38912+j]=D[152][j]}D[153]="�����������������������������������������������������������������섲섳섴섵섷섺섻섽섾섿셁셂셃셄셅셆셇셊셎셏셐셑셒셓셖셗������셙셚셛셝셞셟셠셡셢셣셦셪셫셬셭셮셯셱셲셳셵셶셷셹셺셻������셼셽셾셿솀솁솂솃솄솆솇솈솉솊솋솏솑솒솓솕솗솘솙솚솛솞솠솢솣솤솦솧솪솫솭솮솯솱솲솳솴솵솶솷솸솹솺솻솼솾솿쇀쇁쇂쇃쇅쇆쇇쇉쇊쇋쇍쇎쇏쇐쇑쇒쇓쇕쇖쇙쇚쇛쇜쇝쇞쇟쇡쇢쇣쇥쇦쇧쇩쇪쇫쇬쇭쇮쇯쇲쇴쇵쇶쇷쇸쇹쇺쇻쇾쇿숁숂숃숅숆숇숈숉숊숋숎숐숒숓숔숕숖숗숚숛숝숞숡숢숣�".split("");for(j=0;j!=D[153].length;++j)if(D[153][j].charCodeAt(0)!==65533){e[D[153][j]]=39168+j;d[39168+j]=D[153][j]}D[154]="�����������������������������������������������������������������숤숥숦숧숪숬숮숰숳숵숶숷숸숹숺숻숼숽숾숿쉀쉁쉂쉃쉄쉅������쉆쉇쉉쉊쉋쉌쉍쉎쉏쉒쉓쉕쉖쉗쉙쉚쉛쉜쉝쉞쉟쉡쉢쉣쉤쉦������쉧쉨쉩쉪쉫쉮쉯쉱쉲쉳쉵쉶쉷쉸쉹쉺쉻쉾슀슂슃슄슅슆슇슊슋슌슍슎슏슑슒슓슔슕슖슗슙슚슜슞슟슠슡슢슣슦슧슩슪슫슮슯슰슱슲슳슶슸슺슻슼슽슾슿싀싁싂싃싄싅싆싇싈싉싊싋싌싍싎싏싐싑싒싓싔싕싖싗싘싙싚싛싞싟싡싢싥싦싧싨싩싪싮싰싲싳싴싵싷싺싽싾싿쌁쌂쌃쌄쌅쌆쌇쌊쌋쌎쌏�".split("");for(j=0;j!=D[154].length;++j)if(D[154][j].charCodeAt(0)!==65533){e[D[154][j]]=39424+j;d[39424+j]=D[154][j]}D[155]="�����������������������������������������������������������������쌐쌑쌒쌖쌗쌙쌚쌛쌝쌞쌟쌠쌡쌢쌣쌦쌧쌪쌫쌬쌭쌮쌯쌰쌱쌲������쌳쌴쌵쌶쌷쌸쌹쌺쌻쌼쌽쌾쌿썀썁썂썃썄썆썇썈썉썊썋썌썍������썎썏썐썑썒썓썔썕썖썗썘썙썚썛썜썝썞썟썠썡썢썣썤썥썦썧썪썫썭썮썯썱썳썴썵썶썷썺썻썾썿쎀쎁쎂쎃쎅쎆쎇쎉쎊쎋쎍쎎쎏쎐쎑쎒쎓쎔쎕쎖쎗쎘쎙쎚쎛쎜쎝쎞쎟쎠쎡쎢쎣쎤쎥쎦쎧쎨쎩쎪쎫쎬쎭쎮쎯쎰쎱쎲쎳쎴쎵쎶쎷쎸쎹쎺쎻쎼쎽쎾쎿쏁쏂쏃쏄쏅쏆쏇쏈쏉쏊쏋쏌쏍쏎쏏쏐쏑쏒쏓쏔쏕쏖쏗쏚�".split("");for(j=0;j!=D[155].length;++j)if(D[155][j].charCodeAt(0)!==65533){e[D[155][j]]=39680+j;d[39680+j]=D[155][j]}D[156]="�����������������������������������������������������������������쏛쏝쏞쏡쏣쏤쏥쏦쏧쏪쏫쏬쏮쏯쏰쏱쏲쏳쏶쏷쏹쏺쏻쏼쏽쏾������쏿쐀쐁쐂쐃쐄쐅쐆쐇쐉쐊쐋쐌쐍쐎쐏쐑쐒쐓쐔쐕쐖쐗쐘쐙쐚������쐛쐜쐝쐞쐟쐠쐡쐢쐣쐥쐦쐧쐨쐩쐪쐫쐭쐮쐯쐱쐲쐳쐵쐶쐷쐸쐹쐺쐻쐾쐿쑀쑁쑂쑃쑄쑅쑆쑇쑉쑊쑋쑌쑍쑎쑏쑐쑑쑒쑓쑔쑕쑖쑗쑘쑙쑚쑛쑜쑝쑞쑟쑠쑡쑢쑣쑦쑧쑩쑪쑫쑭쑮쑯쑰쑱쑲쑳쑶쑷쑸쑺쑻쑼쑽쑾쑿쒁쒂쒃쒄쒅쒆쒇쒈쒉쒊쒋쒌쒍쒎쒏쒐쒑쒒쒓쒕쒖쒗쒘쒙쒚쒛쒝쒞쒟쒠쒡쒢쒣쒤쒥쒦쒧쒨쒩�".split("");for(j=0;j!=D[156].length;++j)if(D[156][j].charCodeAt(0)!==65533){e[D[156][j]]=39936+j;d[39936+j]=D[156][j]}D[157]="�����������������������������������������������������������������쒪쒫쒬쒭쒮쒯쒰쒱쒲쒳쒴쒵쒶쒷쒹쒺쒻쒽쒾쒿쓀쓁쓂쓃쓄쓅������쓆쓇쓈쓉쓊쓋쓌쓍쓎쓏쓐쓑쓒쓓쓔쓕쓖쓗쓘쓙쓚쓛쓜쓝쓞쓟������쓠쓡쓢쓣쓤쓥쓦쓧쓨쓪쓫쓬쓭쓮쓯쓲쓳쓵쓶쓷쓹쓻쓼쓽쓾씂씃씄씅씆씇씈씉씊씋씍씎씏씑씒씓씕씖씗씘씙씚씛씝씞씟씠씡씢씣씤씥씦씧씪씫씭씮씯씱씲씳씴씵씶씷씺씼씾씿앀앁앂앃앆앇앋앏앐앑앒앖앚앛앜앟앢앣앥앦앧앩앪앫앬앭앮앯앲앶앷앸앹앺앻앾앿얁얂얃얅얆얈얉얊얋얎얐얒얓얔�".split("");for(j=0;j!=D[157].length;++j)if(D[157][j].charCodeAt(0)!==65533){e[D[157][j]]=40192+j;d[40192+j]=D[157][j]}D[158]="�����������������������������������������������������������������얖얙얚얛얝얞얟얡얢얣얤얥얦얧얨얪얫얬얭얮얯얰얱얲얳얶������얷얺얿엀엁엂엃엋엍엏엒엓엕엖엗엙엚엛엜엝엞엟엢엤엦엧������엨엩엪엫엯엱엲엳엵엸엹엺엻옂옃옄옉옊옋옍옎옏옑옒옓옔옕옖옗옚옝옞옟옠옡옢옣옦옧옩옪옫옯옱옲옶옸옺옼옽옾옿왂왃왅왆왇왉왊왋왌왍왎왏왒왖왗왘왙왚왛왞왟왡왢왣왤왥왦왧왨왩왪왫왭왮왰왲왳왴왵왶왷왺왻왽왾왿욁욂욃욄욅욆욇욊욌욎욏욐욑욒욓욖욗욙욚욛욝욞욟욠욡욢욣욦�".split("");for(j=0;j!=D[158].length;++j)if(D[158][j].charCodeAt(0)!==65533){e[D[158][j]]=40448+j;d[40448+j]=D[158][j]}D[159]="�����������������������������������������������������������������욨욪욫욬욭욮욯욲욳욵욶욷욻욼욽욾욿웂웄웆웇웈웉웊웋웎������웏웑웒웓웕웖웗웘웙웚웛웞웟웢웣웤웥웦웧웪웫웭웮웯웱웲������웳웴웵웶웷웺웻웼웾웿윀윁윂윃윆윇윉윊윋윍윎윏윐윑윒윓윖윘윚윛윜윝윞윟윢윣윥윦윧윩윪윫윬윭윮윯윲윴윶윸윹윺윻윾윿읁읂읃읅읆읇읈읉읋읎읐읙읚읛읝읞읟읡읢읣읤읥읦읧읩읪읬읭읮읯읰읱읲읳읶읷읹읺읻읿잀잁잂잆잋잌잍잏잒잓잕잙잛잜잝잞잟잢잧잨잩잪잫잮잯잱잲잳잵잶잷�".split("");for(j=0;j!=D[159].length;++j)if(D[159][j].charCodeAt(0)!==65533){e[D[159][j]]=40704+j;d[40704+j]=D[159][j]}D[160]="�����������������������������������������������������������������잸잹잺잻잾쟂쟃쟄쟅쟆쟇쟊쟋쟍쟏쟑쟒쟓쟔쟕쟖쟗쟙쟚쟛쟜������쟞쟟쟠쟡쟢쟣쟥쟦쟧쟩쟪쟫쟭쟮쟯쟰쟱쟲쟳쟴쟵쟶쟷쟸쟹쟺������쟻쟼쟽쟾쟿젂젃젅젆젇젉젋젌젍젎젏젒젔젗젘젙젚젛젞젟젡젢젣젥젦젧젨젩젪젫젮젰젲젳젴젵젶젷젹젺젻젽젾젿졁졂졃졄졅졆졇졊졋졎졏졐졑졒졓졕졖졗졘졙졚졛졜졝졞졟졠졡졢졣졤졥졦졧졨졩졪졫졬졭졮졯졲졳졵졶졷졹졻졼졽졾졿좂좄좈좉좊좎좏좐좑좒좓좕좖좗좘좙좚좛좜좞좠좢좣좤�".split("");for(j=0;j!=D[160].length;++j)if(D[160][j].charCodeAt(0)!==65533){e[D[160][j]]=40960+j;d[40960+j]=D[160][j]}D[161]="�����������������������������������������������������������������좥좦좧좩좪좫좬좭좮좯좰좱좲좳좴좵좶좷좸좹좺좻좾좿죀죁������죂죃죅죆죇죉죊죋죍죎죏죐죑죒죓죖죘죚죛죜죝죞죟죢죣죥������죦죧죨죩죪죫죬죭죮죯죰죱죲죳죴죶죷죸죹죺죻죾죿줁줂줃줇줈줉줊줋줎 、。·‥…¨〃­―∥\∼‘’“”〔〕〈〉《》「」『』【】±×÷≠≤≥∞∴°′″℃Å¢£¥♂♀∠⊥⌒∂∇≡≒§※☆★○●◎◇◆□■△▲▽▼→←↑↓↔〓≪≫√∽∝∵∫∬∈∋⊆⊇⊂⊃∪∩∧∨¬�".split("");for(j=0;j!=D[161].length;++j)if(D[161][j].charCodeAt(0)!==65533){e[D[161][j]]=41216+j;d[41216+j]=D[161][j]}D[162]="�����������������������������������������������������������������줐줒줓줔줕줖줗줙줚줛줜줝줞줟줠줡줢줣줤줥줦줧줨줩줪줫������줭줮줯줰줱줲줳줵줶줷줸줹줺줻줼줽줾줿쥀쥁쥂쥃쥄쥅쥆쥇������쥈쥉쥊쥋쥌쥍쥎쥏쥒쥓쥕쥖쥗쥙쥚쥛쥜쥝쥞쥟쥢쥤쥥쥦쥧쥨쥩쥪쥫쥭쥮쥯⇒⇔∀∃´~ˇ˘˝˚˙¸˛¡¿ː∮∑∏¤℉‰◁◀▷▶♤♠♡♥♧♣⊙◈▣◐◑▒▤▥▨▧▦▩♨☏☎☜☞¶†‡↕↗↙↖↘♭♩♪♬㉿㈜№㏇™㏂㏘℡€®������������������������".split("");for(j=0;j!=D[162].length;++j)if(D[162][j].charCodeAt(0)!==65533){e[D[162][j]]=41472+j;d[41472+j]=D[162][j]}D[163]="�����������������������������������������������������������������쥱쥲쥳쥵쥶쥷쥸쥹쥺쥻쥽쥾쥿즀즁즂즃즄즅즆즇즊즋즍즎즏������즑즒즓즔즕즖즗즚즜즞즟즠즡즢즣즤즥즦즧즨즩즪즫즬즭즮������즯즰즱즲즳즴즵즶즷즸즹즺즻즼즽즾즿짂짃짅짆짉짋짌짍짎짏짒짔짗짘짛!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[₩]^_`abcdefghijklmnopqrstuvwxyz{|} ̄�".split("");for(j=0;j!=D[163].length;++j)if(D[163][j].charCodeAt(0)!==65533){e[D[163][j]]=41728+j;d[41728+j]=D[163][j]}D[164]="�����������������������������������������������������������������짞짟짡짣짥짦짨짩짪짫짮짲짳짴짵짶짷짺짻짽짾짿쨁쨂쨃쨄������쨅쨆쨇쨊쨎쨏쨐쨑쨒쨓쨕쨖쨗쨙쨚쨛쨜쨝쨞쨟쨠쨡쨢쨣쨤쨥������쨦쨧쨨쨪쨫쨬쨭쨮쨯쨰쨱쨲쨳쨴쨵쨶쨷쨸쨹쨺쨻쨼쨽쨾쨿쩀쩁쩂쩃쩄쩅쩆ㄱㄲㄳㄴㄵㄶㄷㄸㄹㄺㄻㄼㄽㄾㄿㅀㅁㅂㅃㅄㅅㅆㅇㅈㅉㅊㅋㅌㅍㅎㅏㅐㅑㅒㅓㅔㅕㅖㅗㅘㅙㅚㅛㅜㅝㅞㅟㅠㅡㅢㅣㅤㅥㅦㅧㅨㅩㅪㅫㅬㅭㅮㅯㅰㅱㅲㅳㅴㅵㅶㅷㅸㅹㅺㅻㅼㅽㅾㅿㆀㆁㆂㆃㆄㆅㆆㆇㆈㆉㆊㆋㆌㆍㆎ�".split("");for(j=0;j!=D[164].length;++j)if(D[164][j].charCodeAt(0)!==65533){e[D[164][j]]=41984+j;d[41984+j]=D[164][j]}D[165]="�����������������������������������������������������������������쩇쩈쩉쩊쩋쩎쩏쩑쩒쩓쩕쩖쩗쩘쩙쩚쩛쩞쩢쩣쩤쩥쩦쩧쩩쩪������쩫쩬쩭쩮쩯쩰쩱쩲쩳쩴쩵쩶쩷쩸쩹쩺쩻쩼쩾쩿쪀쪁쪂쪃쪅쪆������쪇쪈쪉쪊쪋쪌쪍쪎쪏쪐쪑쪒쪓쪔쪕쪖쪗쪙쪚쪛쪜쪝쪞쪟쪠쪡쪢쪣쪤쪥쪦쪧ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹ�����ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ�������ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ��������αβγδεζηθικλμνξοπρστυφχψω�������".split("");
for(j=0;j!=D[165].length;++j)if(D[165][j].charCodeAt(0)!==65533){e[D[165][j]]=42240+j;d[42240+j]=D[165][j]}D[166]="�����������������������������������������������������������������쪨쪩쪪쪫쪬쪭쪮쪯쪰쪱쪲쪳쪴쪵쪶쪷쪸쪹쪺쪻쪾쪿쫁쫂쫃쫅������쫆쫇쫈쫉쫊쫋쫎쫐쫒쫔쫕쫖쫗쫚쫛쫜쫝쫞쫟쫡쫢쫣쫤쫥쫦쫧������쫨쫩쫪쫫쫭쫮쫯쫰쫱쫲쫳쫵쫶쫷쫸쫹쫺쫻쫼쫽쫾쫿쬀쬁쬂쬃쬄쬅쬆쬇쬉쬊─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂┒┑┚┙┖┕┎┍┞┟┡┢┦┧┩┪┭┮┱┲┵┶┹┺┽┾╀╁╃╄╅╆╇╈╉╊���������������������������".split("");for(j=0;j!=D[166].length;++j)if(D[166][j].charCodeAt(0)!==65533){e[D[166][j]]=42496+j;d[42496+j]=D[166][j]}D[167]="�����������������������������������������������������������������쬋쬌쬍쬎쬏쬑쬒쬓쬕쬖쬗쬙쬚쬛쬜쬝쬞쬟쬢쬣쬤쬥쬦쬧쬨쬩������쬪쬫쬬쬭쬮쬯쬰쬱쬲쬳쬴쬵쬶쬷쬸쬹쬺쬻쬼쬽쬾쬿쭀쭂쭃쭄������쭅쭆쭇쭊쭋쭍쭎쭏쭑쭒쭓쭔쭕쭖쭗쭚쭛쭜쭞쭟쭠쭡쭢쭣쭥쭦쭧쭨쭩쭪쭫쭬㎕㎖㎗ℓ㎘㏄㎣㎤㎥㎦㎙㎚㎛㎜㎝㎞㎟㎠㎡㎢㏊㎍㎎㎏㏏㎈㎉㏈㎧㎨㎰㎱㎲㎳㎴㎵㎶㎷㎸㎹㎀㎁㎂㎃㎄㎺㎻㎼㎽㎾㎿㎐㎑㎒㎓㎔Ω㏀㏁㎊㎋㎌㏖㏅㎭㎮㎯㏛㎩㎪㎫㎬㏝㏐㏓㏃㏉㏜㏆����������������".split("");for(j=0;j!=D[167].length;++j)if(D[167][j].charCodeAt(0)!==65533){e[D[167][j]]=42752+j;d[42752+j]=D[167][j]}D[168]="�����������������������������������������������������������������쭭쭮쭯쭰쭱쭲쭳쭴쭵쭶쭷쭺쭻쭼쭽쭾쭿쮀쮁쮂쮃쮄쮅쮆쮇쮈������쮉쮊쮋쮌쮍쮎쮏쮐쮑쮒쮓쮔쮕쮖쮗쮘쮙쮚쮛쮝쮞쮟쮠쮡쮢쮣������쮤쮥쮦쮧쮨쮩쮪쮫쮬쮭쮮쮯쮰쮱쮲쮳쮴쮵쮶쮷쮹쮺쮻쮼쮽쮾쮿쯀쯁쯂쯃쯄ÆÐªĦ�IJ�ĿŁØŒºÞŦŊ�㉠㉡㉢㉣㉤㉥㉦㉧㉨㉩㉪㉫㉬㉭㉮㉯㉰㉱㉲㉳㉴㉵㉶㉷㉸㉹㉺㉻ⓐⓑⓒⓓⓔⓕⓖⓗⓘⓙⓚⓛⓜⓝⓞⓟⓠⓡⓢⓣⓤⓥⓦⓧⓨⓩ①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮½⅓⅔¼¾⅛⅜⅝⅞�".split("");for(j=0;j!=D[168].length;++j)if(D[168][j].charCodeAt(0)!==65533){e[D[168][j]]=43008+j;d[43008+j]=D[168][j]}D[169]="�����������������������������������������������������������������쯅쯆쯇쯈쯉쯊쯋쯌쯍쯎쯏쯐쯑쯒쯓쯕쯖쯗쯘쯙쯚쯛쯜쯝쯞쯟������쯠쯡쯢쯣쯥쯦쯨쯪쯫쯬쯭쯮쯯쯰쯱쯲쯳쯴쯵쯶쯷쯸쯹쯺쯻쯼������쯽쯾쯿찀찁찂찃찄찅찆찇찈찉찊찋찎찏찑찒찓찕찖찗찘찙찚찛찞찟찠찣찤æđðħıijĸŀłøœßþŧŋʼn㈀㈁㈂㈃㈄㈅㈆㈇㈈㈉㈊㈋㈌㈍㈎㈏㈐㈑㈒㈓㈔㈕㈖㈗㈘㈙㈚㈛⒜⒝⒞⒟⒠⒡⒢⒣⒤⒥⒦⒧⒨⒩⒪⒫⒬⒭⒮⒯⒰⒱⒲⒳⒴⒵⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂¹²³⁴ⁿ₁₂₃₄�".split("");for(j=0;j!=D[169].length;++j)if(D[169][j].charCodeAt(0)!==65533){e[D[169][j]]=43264+j;d[43264+j]=D[169][j]}D[170]="�����������������������������������������������������������������찥찦찪찫찭찯찱찲찳찴찵찶찷찺찿챀챁챂챃챆챇챉챊챋챍챎������챏챐챑챒챓챖챚챛챜챝챞챟챡챢챣챥챧챩챪챫챬챭챮챯챱챲������챳챴챶챷챸챹챺챻챼챽챾챿첀첁첂첃첄첅첆첇첈첉첊첋첌첍첎첏첐첑첒첓ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん������������".split("");for(j=0;j!=D[170].length;++j)if(D[170][j].charCodeAt(0)!==65533){e[D[170][j]]=43520+j;d[43520+j]=D[170][j]}D[171]="�����������������������������������������������������������������첔첕첖첗첚첛첝첞첟첡첢첣첤첥첦첧첪첮첯첰첱첲첳첶첷첹������첺첻첽첾첿쳀쳁쳂쳃쳆쳈쳊쳋쳌쳍쳎쳏쳑쳒쳓쳕쳖쳗쳘쳙쳚������쳛쳜쳝쳞쳟쳠쳡쳢쳣쳥쳦쳧쳨쳩쳪쳫쳭쳮쳯쳱쳲쳳쳴쳵쳶쳷쳸쳹쳺쳻쳼쳽ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ���������".split("");for(j=0;j!=D[171].length;++j)if(D[171][j].charCodeAt(0)!==65533){e[D[171][j]]=43776+j;d[43776+j]=D[171][j]}D[172]="�����������������������������������������������������������������쳾쳿촀촂촃촄촅촆촇촊촋촍촎촏촑촒촓촔촕촖촗촚촜촞촟촠������촡촢촣촥촦촧촩촪촫촭촮촯촰촱촲촳촴촵촶촷촸촺촻촼촽촾������촿쵀쵁쵂쵃쵄쵅쵆쵇쵈쵉쵊쵋쵌쵍쵎쵏쵐쵑쵒쵓쵔쵕쵖쵗쵘쵙쵚쵛쵝쵞쵟АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ���������������абвгдеёжзийклмнопрстуфхцчшщъыьэюя��������������".split("");for(j=0;j!=D[172].length;++j)if(D[172][j].charCodeAt(0)!==65533){e[D[172][j]]=44032+j;d[44032+j]=D[172][j]}D[173]="�����������������������������������������������������������������쵡쵢쵣쵥쵦쵧쵨쵩쵪쵫쵮쵰쵲쵳쵴쵵쵶쵷쵹쵺쵻쵼쵽쵾쵿춀������춁춂춃춄춅춆춇춉춊춋춌춍춎춏춐춑춒춓춖춗춙춚춛춝춞춟������춠춡춢춣춦춨춪춫춬춭춮춯춱춲춳춴춵춶춷춸춹춺춻춼춽춾춿췀췁췂췃췅�����������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[173].length;++j)if(D[173][j].charCodeAt(0)!==65533){e[D[173][j]]=44288+j;d[44288+j]=D[173][j]}D[174]="�����������������������������������������������������������������췆췇췈췉췊췋췍췎췏췑췒췓췔췕췖췗췘췙췚췛췜췝췞췟췠췡������췢췣췤췥췦췧췩췪췫췭췮췯췱췲췳췴췵췶췷췺췼췾췿츀츁츂������츃츅츆츇츉츊츋츍츎츏츐츑츒츓츕츖츗츘츚츛츜츝츞츟츢츣츥츦츧츩츪츫�����������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[174].length;++j)if(D[174][j].charCodeAt(0)!==65533){e[D[174][j]]=44544+j;d[44544+j]=D[174][j]}D[175]="�����������������������������������������������������������������츬츭츮츯츲츴츶츷츸츹츺츻츼츽츾츿칀칁칂칃칄칅칆칇칈칉������칊칋칌칍칎칏칐칑칒칓칔칕칖칗칚칛칝칞칢칣칤칥칦칧칪칬������칮칯칰칱칲칳칶칷칹칺칻칽칾칿캀캁캂캃캆캈캊캋캌캍캎캏캒캓캕캖캗캙�����������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[175].length;++j)if(D[175][j].charCodeAt(0)!==65533){e[D[175][j]]=44800+j;d[44800+j]=D[175][j]}D[176]="�����������������������������������������������������������������캚캛캜캝캞캟캢캦캧캨캩캪캫캮캯캰캱캲캳캴캵캶캷캸캹캺������캻캼캽캾캿컀컂컃컄컅컆컇컈컉컊컋컌컍컎컏컐컑컒컓컔컕������컖컗컘컙컚컛컜컝컞컟컠컡컢컣컦컧컩컪컭컮컯컰컱컲컳컶컺컻컼컽컾컿가각간갇갈갉갊감갑값갓갔강갖갗같갚갛개객갠갤갬갭갯갰갱갸갹갼걀걋걍걔걘걜거걱건걷걸걺검겁것겄겅겆겉겊겋게겐겔겜겝겟겠겡겨격겪견겯결겸겹겻겼경곁계곈곌곕곗고곡곤곧골곪곬곯곰곱곳공곶과곽관괄괆�".split("");for(j=0;j!=D[176].length;++j)if(D[176][j].charCodeAt(0)!==65533){e[D[176][j]]=45056+j;d[45056+j]=D[176][j]}D[177]="�����������������������������������������������������������������켂켃켅켆켇켉켊켋켌켍켎켏켒켔켖켗켘켙켚켛켝켞켟켡켢켣������켥켦켧켨켩켪켫켮켲켳켴켵켶켷켹켺켻켼켽켾켿콀콁콂콃콄������콅콆콇콈콉콊콋콌콍콎콏콐콑콒콓콖콗콙콚콛콝콞콟콠콡콢콣콦콨콪콫콬괌괍괏광괘괜괠괩괬괭괴괵괸괼굄굅굇굉교굔굘굡굣구국군굳굴굵굶굻굼굽굿궁궂궈궉권궐궜궝궤궷귀귁귄귈귐귑귓규균귤그극근귿글긁금급긋긍긔기긱긴긷길긺김깁깃깅깆깊까깍깎깐깔깖깜깝깟깠깡깥깨깩깬깰깸�".split("");for(j=0;j!=D[177].length;++j)if(D[177][j].charCodeAt(0)!==65533){e[D[177][j]]=45312+j;d[45312+j]=D[177][j]}D[178]="�����������������������������������������������������������������콭콮콯콲콳콵콶콷콹콺콻콼콽콾콿쾁쾂쾃쾄쾆쾇쾈쾉쾊쾋쾍������쾎쾏쾐쾑쾒쾓쾔쾕쾖쾗쾘쾙쾚쾛쾜쾝쾞쾟쾠쾢쾣쾤쾥쾦쾧쾩������쾪쾫쾬쾭쾮쾯쾱쾲쾳쾴쾵쾶쾷쾸쾹쾺쾻쾼쾽쾾쾿쿀쿁쿂쿃쿅쿆쿇쿈쿉쿊쿋깹깻깼깽꺄꺅꺌꺼꺽꺾껀껄껌껍껏껐껑께껙껜껨껫껭껴껸껼꼇꼈꼍꼐꼬꼭꼰꼲꼴꼼꼽꼿꽁꽂꽃꽈꽉꽐꽜꽝꽤꽥꽹꾀꾄꾈꾐꾑꾕꾜꾸꾹꾼꿀꿇꿈꿉꿋꿍꿎꿔꿜꿨꿩꿰꿱꿴꿸뀀뀁뀄뀌뀐뀔뀜뀝뀨끄끅끈끊끌끎끓끔끕끗끙�".split("");for(j=0;j!=D[178].length;++j)if(D[178][j].charCodeAt(0)!==65533){e[D[178][j]]=45568+j;d[45568+j]=D[178][j]}D[179]="�����������������������������������������������������������������쿌쿍쿎쿏쿐쿑쿒쿓쿔쿕쿖쿗쿘쿙쿚쿛쿜쿝쿞쿟쿢쿣쿥쿦쿧쿩������쿪쿫쿬쿭쿮쿯쿲쿴쿶쿷쿸쿹쿺쿻쿽쿾쿿퀁퀂퀃퀅퀆퀇퀈퀉퀊������퀋퀌퀍퀎퀏퀐퀒퀓퀔퀕퀖퀗퀙퀚퀛퀜퀝퀞퀟퀠퀡퀢퀣퀤퀥퀦퀧퀨퀩퀪퀫퀬끝끼끽낀낄낌낍낏낑나낙낚난낟날낡낢남납낫났낭낮낯낱낳내낵낸낼냄냅냇냈냉냐냑냔냘냠냥너넉넋넌널넒넓넘넙넛넜넝넣네넥넨넬넴넵넷넸넹녀녁년녈념녑녔녕녘녜녠노녹논놀놂놈놉놋농높놓놔놘놜놨뇌뇐뇔뇜뇝�".split("");for(j=0;j!=D[179].length;++j)if(D[179][j].charCodeAt(0)!==65533){e[D[179][j]]=45824+j;d[45824+j]=D[179][j]}D[180]="�����������������������������������������������������������������퀮퀯퀰퀱퀲퀳퀶퀷퀹퀺퀻퀽퀾퀿큀큁큂큃큆큈큊큋큌큍큎큏������큑큒큓큕큖큗큙큚큛큜큝큞큟큡큢큣큤큥큦큧큨큩큪큫큮큯������큱큲큳큵큶큷큸큹큺큻큾큿킀킂킃킄킅킆킇킈킉킊킋킌킍킎킏킐킑킒킓킔뇟뇨뇩뇬뇰뇹뇻뇽누눅눈눋눌눔눕눗눙눠눴눼뉘뉜뉠뉨뉩뉴뉵뉼늄늅늉느늑는늘늙늚늠늡늣능늦늪늬늰늴니닉닌닐닒님닙닛닝닢다닥닦단닫달닭닮닯닳담답닷닸당닺닻닿대댁댄댈댐댑댓댔댕댜더덕덖던덛덜덞덟덤덥�".split("");for(j=0;j!=D[180].length;++j)if(D[180][j].charCodeAt(0)!==65533){e[D[180][j]]=46080+j;d[46080+j]=D[180][j]}D[181]="�����������������������������������������������������������������킕킖킗킘킙킚킛킜킝킞킟킠킡킢킣킦킧킩킪킫킭킮킯킰킱킲������킳킶킸킺킻킼킽킾킿탂탃탅탆탇탊탋탌탍탎탏탒탖탗탘탙탚������탛탞탟탡탢탣탥탦탧탨탩탪탫탮탲탳탴탵탶탷탹탺탻탼탽탾탿턀턁턂턃턄덧덩덫덮데덱덴델뎀뎁뎃뎄뎅뎌뎐뎔뎠뎡뎨뎬도독돈돋돌돎돐돔돕돗동돛돝돠돤돨돼됐되된될됨됩됫됴두둑둔둘둠둡둣둥둬뒀뒈뒝뒤뒨뒬뒵뒷뒹듀듄듈듐듕드득든듣들듦듬듭듯등듸디딕딘딛딜딤딥딧딨딩딪따딱딴딸�".split("");for(j=0;j!=D[181].length;++j)if(D[181][j].charCodeAt(0)!==65533){e[D[181][j]]=46336+j;d[46336+j]=D[181][j]}D[182]="�����������������������������������������������������������������턅턆턇턈턉턊턋턌턎턏턐턑턒턓턔턕턖턗턘턙턚턛턜턝턞턟������턠턡턢턣턤턥턦턧턨턩턪턫턬턭턮턯턲턳턵턶턷턹턻턼턽턾������턿텂텆텇텈텉텊텋텎텏텑텒텓텕텖텗텘텙텚텛텞텠텢텣텤텥텦텧텩텪텫텭땀땁땃땄땅땋때땍땐땔땜땝땟땠땡떠떡떤떨떪떫떰떱떳떴떵떻떼떽뗀뗄뗌뗍뗏뗐뗑뗘뗬또똑똔똘똥똬똴뙈뙤뙨뚜뚝뚠뚤뚫뚬뚱뛔뛰뛴뛸뜀뜁뜅뜨뜩뜬뜯뜰뜸뜹뜻띄띈띌띔띕띠띤띨띰띱띳띵라락란랄람랍랏랐랑랒랖랗�".split("");for(j=0;j!=D[182].length;++j)if(D[182][j].charCodeAt(0)!==65533){e[D[182][j]]=46592+j;d[46592+j]=D[182][j]}D[183]="�����������������������������������������������������������������텮텯텰텱텲텳텴텵텶텷텸텹텺텻텽텾텿톀톁톂톃톅톆톇톉톊������톋톌톍톎톏톐톑톒톓톔톕톖톗톘톙톚톛톜톝톞톟톢톣톥톦톧������톩톪톫톬톭톮톯톲톴톶톷톸톹톻톽톾톿퇁퇂퇃퇄퇅퇆퇇퇈퇉퇊퇋퇌퇍퇎퇏래랙랜랠램랩랫랬랭랴략랸럇량러럭런럴럼럽럿렀렁렇레렉렌렐렘렙렛렝려력련렬렴렵렷렸령례롄롑롓로록론롤롬롭롯롱롸롼뢍뢨뢰뢴뢸룀룁룃룅료룐룔룝룟룡루룩룬룰룸룹룻룽뤄뤘뤠뤼뤽륀륄륌륏륑류륙륜률륨륩�".split("");for(j=0;j!=D[183].length;++j)if(D[183][j].charCodeAt(0)!==65533){e[D[183][j]]=46848+j;d[46848+j]=D[183][j]}D[184]="�����������������������������������������������������������������퇐퇑퇒퇓퇔퇕퇖퇗퇙퇚퇛퇜퇝퇞퇟퇠퇡퇢퇣퇤퇥퇦퇧퇨퇩퇪������퇫퇬퇭퇮퇯퇰퇱퇲퇳퇵퇶퇷퇹퇺퇻퇼퇽퇾퇿툀툁툂툃툄툅툆������툈툊툋툌툍툎툏툑툒툓툔툕툖툗툘툙툚툛툜툝툞툟툠툡툢툣툤툥툦툧툨툩륫륭르륵른를름릅릇릉릊릍릎리릭린릴림립릿링마막만많맏말맑맒맘맙맛망맞맡맣매맥맨맬맴맵맷맸맹맺먀먁먈먕머먹먼멀멂멈멉멋멍멎멓메멕멘멜멤멥멧멨멩며멱면멸몃몄명몇몌모목몫몬몰몲몸몹못몽뫄뫈뫘뫙뫼�".split("");for(j=0;j!=D[184].length;++j)if(D[184][j].charCodeAt(0)!==65533){e[D[184][j]]=47104+j;d[47104+j]=D[184][j]}D[185]="�����������������������������������������������������������������툪툫툮툯툱툲툳툵툶툷툸툹툺툻툾퉀퉂퉃퉄퉅퉆퉇퉉퉊퉋퉌������퉍퉎퉏퉐퉑퉒퉓퉔퉕퉖퉗퉘퉙퉚퉛퉝퉞퉟퉠퉡퉢퉣퉥퉦퉧퉨������퉩퉪퉫퉬퉭퉮퉯퉰퉱퉲퉳퉴퉵퉶퉷퉸퉹퉺퉻퉼퉽퉾퉿튂튃튅튆튇튉튊튋튌묀묄묍묏묑묘묜묠묩묫무묵묶문묻물묽묾뭄뭅뭇뭉뭍뭏뭐뭔뭘뭡뭣뭬뮈뮌뮐뮤뮨뮬뮴뮷므믄믈믐믓미믹민믿밀밂밈밉밋밌밍및밑바박밖밗반받발밝밞밟밤밥밧방밭배백밴밸뱀뱁뱃뱄뱅뱉뱌뱍뱐뱝버벅번벋벌벎범법벗�".split("");for(j=0;j!=D[185].length;++j)if(D[185][j].charCodeAt(0)!==65533){e[D[185][j]]=47360+j;d[47360+j]=D[185][j]}D[186]="�����������������������������������������������������������������튍튎튏튒튓튔튖튗튘튙튚튛튝튞튟튡튢튣튥튦튧튨튩튪튫튭������튮튯튰튲튳튴튵튶튷튺튻튽튾틁틃틄틅틆틇틊틌틍틎틏틐틑������틒틓틕틖틗틙틚틛틝틞틟틠틡틢틣틦틧틨틩틪틫틬틭틮틯틲틳틵틶틷틹틺벙벚베벡벤벧벨벰벱벳벴벵벼벽변별볍볏볐병볕볘볜보복볶본볼봄봅봇봉봐봔봤봬뵀뵈뵉뵌뵐뵘뵙뵤뵨부북분붇불붉붊붐붑붓붕붙붚붜붤붰붸뷔뷕뷘뷜뷩뷰뷴뷸븀븃븅브븍븐블븜븝븟비빅빈빌빎빔빕빗빙빚빛빠빡빤�".split("");for(j=0;j!=D[186].length;++j)if(D[186][j].charCodeAt(0)!==65533){e[D[186][j]]=47616+j;d[47616+j]=D[186][j]}D[187]="�����������������������������������������������������������������틻틼틽틾틿팂팄팆팇팈팉팊팋팏팑팒팓팕팗팘팙팚팛팞팢팣������팤팦팧팪팫팭팮팯팱팲팳팴팵팶팷팺팾팿퍀퍁퍂퍃퍆퍇퍈퍉������퍊퍋퍌퍍퍎퍏퍐퍑퍒퍓퍔퍕퍖퍗퍘퍙퍚퍛퍜퍝퍞퍟퍠퍡퍢퍣퍤퍥퍦퍧퍨퍩빨빪빰빱빳빴빵빻빼빽뺀뺄뺌뺍뺏뺐뺑뺘뺙뺨뻐뻑뻔뻗뻘뻠뻣뻤뻥뻬뼁뼈뼉뼘뼙뼛뼜뼝뽀뽁뽄뽈뽐뽑뽕뾔뾰뿅뿌뿍뿐뿔뿜뿟뿡쀼쁑쁘쁜쁠쁨쁩삐삑삔삘삠삡삣삥사삭삯산삳살삵삶삼삽삿샀상샅새색샌샐샘샙샛샜생샤�".split("");for(j=0;j!=D[187].length;++j)if(D[187][j].charCodeAt(0)!==65533){e[D[187][j]]=47872+j;d[47872+j]=D[187][j]}D[188]="�����������������������������������������������������������������퍪퍫퍬퍭퍮퍯퍰퍱퍲퍳퍴퍵퍶퍷퍸퍹퍺퍻퍾퍿펁펂펃펅펆펇������펈펉펊펋펎펒펓펔펕펖펗펚펛펝펞펟펡펢펣펤펥펦펧펪펬펮������펯펰펱펲펳펵펶펷펹펺펻펽펾펿폀폁폂폃폆폇폊폋폌폍폎폏폑폒폓폔폕폖샥샨샬샴샵샷샹섀섄섈섐섕서석섞섟선섣설섦섧섬섭섯섰성섶세섹센셀셈셉셋셌셍셔셕션셜셤셥셧셨셩셰셴셸솅소속솎손솔솖솜솝솟송솥솨솩솬솰솽쇄쇈쇌쇔쇗쇘쇠쇤쇨쇰쇱쇳쇼쇽숀숄숌숍숏숑수숙순숟술숨숩숫숭�".split("");for(j=0;j!=D[188].length;++j)if(D[188][j].charCodeAt(0)!==65533){e[D[188][j]]=48128+j;d[48128+j]=D[188][j]}D[189]="�����������������������������������������������������������������폗폙폚폛폜폝폞폟폠폢폤폥폦폧폨폩폪폫폮폯폱폲폳폵폶폷������폸폹폺폻폾퐀퐂퐃퐄퐅퐆퐇퐉퐊퐋퐌퐍퐎퐏퐐퐑퐒퐓퐔퐕퐖������퐗퐘퐙퐚퐛퐜퐞퐟퐠퐡퐢퐣퐤퐥퐦퐧퐨퐩퐪퐫퐬퐭퐮퐯퐰퐱퐲퐳퐴퐵퐶퐷숯숱숲숴쉈쉐쉑쉔쉘쉠쉥쉬쉭쉰쉴쉼쉽쉿슁슈슉슐슘슛슝스슥슨슬슭슴습슷승시식신싣실싫심십싯싱싶싸싹싻싼쌀쌈쌉쌌쌍쌓쌔쌕쌘쌜쌤쌥쌨쌩썅써썩썬썰썲썸썹썼썽쎄쎈쎌쏀쏘쏙쏜쏟쏠쏢쏨쏩쏭쏴쏵쏸쐈쐐쐤쐬쐰�".split("");for(j=0;j!=D[189].length;++j)if(D[189][j].charCodeAt(0)!==65533){e[D[189][j]]=48384+j;d[48384+j]=D[189][j]}D[190]="�����������������������������������������������������������������퐸퐹퐺퐻퐼퐽퐾퐿푁푂푃푅푆푇푈푉푊푋푌푍푎푏푐푑푒푓������푔푕푖푗푘푙푚푛푝푞푟푡푢푣푥푦푧푨푩푪푫푬푮푰푱푲������푳푴푵푶푷푺푻푽푾풁풃풄풅풆풇풊풌풎풏풐풑풒풓풕풖풗풘풙풚풛풜풝쐴쐼쐽쑈쑤쑥쑨쑬쑴쑵쑹쒀쒔쒜쒸쒼쓩쓰쓱쓴쓸쓺쓿씀씁씌씐씔씜씨씩씬씰씸씹씻씽아악안앉않알앍앎앓암압앗았앙앝앞애액앤앨앰앱앳앴앵야약얀얄얇얌얍얏양얕얗얘얜얠얩어억언얹얻얼얽얾엄업없엇었엉엊엌엎�".split("");for(j=0;j!=D[190].length;++j)if(D[190][j].charCodeAt(0)!==65533){e[D[190][j]]=48640+j;d[48640+j]=D[190][j]}D[191]="�����������������������������������������������������������������풞풟풠풡풢풣풤풥풦풧풨풪풫풬풭풮풯풰풱풲풳풴풵풶풷풸������풹풺풻풼풽풾풿퓀퓁퓂퓃퓄퓅퓆퓇퓈퓉퓊퓋퓍퓎퓏퓑퓒퓓퓕������퓖퓗퓘퓙퓚퓛퓝퓞퓠퓡퓢퓣퓤퓥퓦퓧퓩퓪퓫퓭퓮퓯퓱퓲퓳퓴퓵퓶퓷퓹퓺퓼에엑엔엘엠엡엣엥여역엮연열엶엷염엽엾엿였영옅옆옇예옌옐옘옙옛옜오옥온올옭옮옰옳옴옵옷옹옻와왁완왈왐왑왓왔왕왜왝왠왬왯왱외왹왼욀욈욉욋욍요욕욘욜욤욥욧용우욱운울욹욺움웁웃웅워웍원월웜웝웠웡웨�".split("");for(j=0;j!=D[191].length;++j)if(D[191][j].charCodeAt(0)!==65533){e[D[191][j]]=48896+j;d[48896+j]=D[191][j]}D[192]="�����������������������������������������������������������������퓾퓿픀픁픂픃픅픆픇픉픊픋픍픎픏픐픑픒픓픖픘픙픚픛픜픝������픞픟픠픡픢픣픤픥픦픧픨픩픪픫픬픭픮픯픰픱픲픳픴픵픶픷������픸픹픺픻픾픿핁핂핃핅핆핇핈핉핊핋핎핐핒핓핔핕핖핗핚핛핝핞핟핡핢핣웩웬웰웸웹웽위윅윈윌윔윕윗윙유육윤율윰윱윳융윷으윽은을읊음읍읏응읒읓읔읕읖읗의읜읠읨읫이익인일읽읾잃임입잇있잉잊잎자작잔잖잗잘잚잠잡잣잤장잦재잭잰잴잼잽잿쟀쟁쟈쟉쟌쟎쟐쟘쟝쟤쟨쟬저적전절젊�".split("");for(j=0;j!=D[192].length;++j)if(D[192][j].charCodeAt(0)!==65533){e[D[192][j]]=49152+j;d[49152+j]=D[192][j]}D[193]="�����������������������������������������������������������������핤핦핧핪핬핮핯핰핱핲핳핶핷핹핺핻핽핾핿햀햁햂햃햆햊햋������햌햍햎햏햑햒햓햔햕햖햗햘햙햚햛햜햝햞햟햠햡햢햣햤햦햧������햨햩햪햫햬햭햮햯햰햱햲햳햴햵햶햷햸햹햺햻햼햽햾햿헀헁헂헃헄헅헆헇점접젓정젖제젝젠젤젬젭젯젱져젼졀졈졉졌졍졔조족존졸졺좀좁좃종좆좇좋좌좍좔좝좟좡좨좼좽죄죈죌죔죕죗죙죠죡죤죵주죽준줄줅줆줌줍줏중줘줬줴쥐쥑쥔쥘쥠쥡쥣쥬쥰쥴쥼즈즉즌즐즘즙즛증지직진짇질짊짐집짓�".split("");for(j=0;j!=D[193].length;++j)if(D[193][j].charCodeAt(0)!==65533){e[D[193][j]]=49408+j;d[49408+j]=D[193][j]}D[194]="�����������������������������������������������������������������헊헋헍헎헏헑헓헔헕헖헗헚헜헞헟헠헡헢헣헦헧헩헪헫헭헮������헯헰헱헲헳헶헸헺헻헼헽헾헿혂혃혅혆혇혉혊혋혌혍혎혏혒������혖혗혘혙혚혛혝혞혟혡혢혣혥혦혧혨혩혪혫혬혮혯혰혱혲혳혴혵혶혷혺혻징짖짙짚짜짝짠짢짤짧짬짭짯짰짱째짹짼쨀쨈쨉쨋쨌쨍쨔쨘쨩쩌쩍쩐쩔쩜쩝쩟쩠쩡쩨쩽쪄쪘쪼쪽쫀쫄쫌쫍쫏쫑쫓쫘쫙쫠쫬쫴쬈쬐쬔쬘쬠쬡쭁쭈쭉쭌쭐쭘쭙쭝쭤쭸쭹쮜쮸쯔쯤쯧쯩찌찍찐찔찜찝찡찢찧차착찬찮찰참찹찻�".split("");for(j=0;j!=D[194].length;++j)if(D[194][j].charCodeAt(0)!==65533){e[D[194][j]]=49664+j;d[49664+j]=D[194][j]}D[195]="�����������������������������������������������������������������혽혾혿홁홂홃홄홆홇홊홌홎홏홐홒홓홖홗홙홚홛홝홞홟홠홡������홢홣홤홥홦홨홪홫홬홭홮홯홲홳홵홶홷홸홹홺홻홼홽홾홿횀������횁횂횄횆횇횈횉횊횋횎횏횑횒횓횕횖횗횘횙횚횛횜횞횠횢횣횤횥횦횧횩횪찼창찾채책챈챌챔챕챗챘챙챠챤챦챨챰챵처척천철첨첩첫첬청체첵첸첼쳄쳅쳇쳉쳐쳔쳤쳬쳰촁초촉촌촐촘촙촛총촤촨촬촹최쵠쵤쵬쵭쵯쵱쵸춈추축춘출춤춥춧충춰췄췌췐취췬췰췸췹췻췽츄츈츌츔츙츠측츤츨츰츱츳층�".split("");for(j=0;j!=D[195].length;++j)if(D[195][j].charCodeAt(0)!==65533){e[D[195][j]]=49920+j;d[49920+j]=D[195][j]}D[196]="�����������������������������������������������������������������횫횭횮횯횱횲횳횴횵횶횷횸횺횼횽횾횿훀훁훂훃훆훇훉훊훋������훍훎훏훐훒훓훕훖훘훚훛훜훝훞훟훡훢훣훥훦훧훩훪훫훬훭������훮훯훱훲훳훴훶훷훸훹훺훻훾훿휁휂휃휅휆휇휈휉휊휋휌휍휎휏휐휒휓휔치칙친칟칠칡침칩칫칭카칵칸칼캄캅캇캉캐캑캔캘캠캡캣캤캥캬캭컁커컥컨컫컬컴컵컷컸컹케켁켄켈켐켑켓켕켜켠켤켬켭켯켰켱켸코콕콘콜콤콥콧콩콰콱콴콸쾀쾅쾌쾡쾨쾰쿄쿠쿡쿤쿨쿰쿱쿳쿵쿼퀀퀄퀑퀘퀭퀴퀵퀸퀼�".split("");for(j=0;j!=D[196].length;++j)if(D[196][j].charCodeAt(0)!==65533){e[D[196][j]]=50176+j;d[50176+j]=D[196][j]}D[197]="�����������������������������������������������������������������휕휖휗휚휛휝휞휟휡휢휣휤휥휦휧휪휬휮휯휰휱휲휳휶휷휹������휺휻휽휾휿흀흁흂흃흅흆흈흊흋흌흍흎흏흒흓흕흚흛흜흝흞������흟흢흤흦흧흨흪흫흭흮흯흱흲흳흵흶흷흸흹흺흻흾흿힀힂힃힄힅힆힇힊힋큄큅큇큉큐큔큘큠크큭큰클큼큽킁키킥킨킬킴킵킷킹타탁탄탈탉탐탑탓탔탕태택탠탤탬탭탯탰탱탸턍터턱턴털턺텀텁텃텄텅테텍텐텔템텝텟텡텨텬텼톄톈토톡톤톨톰톱톳통톺톼퇀퇘퇴퇸툇툉툐투툭툰툴툼툽툿퉁퉈퉜�".split("");for(j=0;j!=D[197].length;++j)if(D[197][j].charCodeAt(0)!==65533){e[D[197][j]]=50432+j;d[50432+j]=D[197][j]}D[198]="�����������������������������������������������������������������힍힎힏힑힒힓힔힕힖힗힚힜힞힟힠힡힢힣������������������������������������������������������������������������������퉤튀튁튄튈튐튑튕튜튠튤튬튱트특튼튿틀틂틈틉틋틔틘틜틤틥티틱틴틸팀팁팃팅파팍팎판팔팖팜팝팟팠팡팥패팩팬팰팸팹팻팼팽퍄퍅퍼퍽펀펄펌펍펏펐펑페펙펜펠펨펩펫펭펴편펼폄폅폈평폐폘폡폣포폭폰폴폼폽폿퐁�".split("");for(j=0;j!=D[198].length;++j)if(D[198][j].charCodeAt(0)!==65533){e[D[198][j]]=50688+j;d[50688+j]=D[198][j]}D[199]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������퐈퐝푀푄표푠푤푭푯푸푹푼푿풀풂품풉풋풍풔풩퓌퓐퓔퓜퓟퓨퓬퓰퓸퓻퓽프픈플픔픕픗피픽핀필핌핍핏핑하학한할핥함합핫항해핵핸핼햄햅햇했행햐향허헉헌헐헒험헙헛헝헤헥헨헬헴헵헷헹혀혁현혈혐협혓혔형혜혠�".split("");for(j=0;j!=D[199].length;++j)if(D[199][j].charCodeAt(0)!==65533){e[D[199][j]]=50944+j;d[50944+j]=D[199][j]}D[200]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������혤혭호혹혼홀홅홈홉홋홍홑화확환활홧황홰홱홴횃횅회획횐횔횝횟횡효횬횰횹횻후훅훈훌훑훔훗훙훠훤훨훰훵훼훽휀휄휑휘휙휜휠휨휩휫휭휴휵휸휼흄흇흉흐흑흔흖흗흘흙흠흡흣흥흩희흰흴흼흽힁히힉힌힐힘힙힛힝�".split("");for(j=0;j!=D[200].length;++j)if(D[200][j].charCodeAt(0)!==65533){e[D[200][j]]=51200+j;d[51200+j]=D[200][j]}D[202]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������伽佳假價加可呵哥嘉嫁家暇架枷柯歌珂痂稼苛茄街袈訶賈跏軻迦駕刻却各恪慤殼珏脚覺角閣侃刊墾奸姦干幹懇揀杆柬桿澗癎看磵稈竿簡肝艮艱諫間乫喝曷渴碣竭葛褐蝎鞨勘坎堪嵌感憾戡敢柑橄減甘疳監瞰紺邯鑑鑒龕�".split("");for(j=0;j!=D[202].length;++j)if(D[202][j].charCodeAt(0)!==65533){e[D[202][j]]=51712+j;d[51712+j]=D[202][j]}D[203]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������匣岬甲胛鉀閘剛堈姜岡崗康强彊慷江畺疆糠絳綱羌腔舡薑襁講鋼降鱇介价個凱塏愷愾慨改槪漑疥皆盖箇芥蓋豈鎧開喀客坑更粳羹醵倨去居巨拒据據擧渠炬祛距踞車遽鉅鋸乾件健巾建愆楗腱虔蹇鍵騫乞傑杰桀儉劍劒檢�".split("");for(j=0;j!=D[203].length;++j)if(D[203][j].charCodeAt(0)!==65533){e[D[203][j]]=51968+j;d[51968+j]=D[203][j]}D[204]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������瞼鈐黔劫怯迲偈憩揭擊格檄激膈覡隔堅牽犬甄絹繭肩見譴遣鵑抉決潔結缺訣兼慊箝謙鉗鎌京俓倞傾儆勁勍卿坰境庚徑慶憬擎敬景暻更梗涇炅烱璟璥瓊痙硬磬竟競絅經耕耿脛莖警輕逕鏡頃頸驚鯨係啓堺契季屆悸戒桂械�".split("");for(j=0;j!=D[204].length;++j)if(D[204][j].charCodeAt(0)!==65533){e[D[204][j]]=52224+j;d[52224+j]=D[204][j]}D[205]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������棨溪界癸磎稽系繫繼計誡谿階鷄古叩告呱固姑孤尻庫拷攷故敲暠枯槁沽痼皐睾稿羔考股膏苦苽菰藁蠱袴誥賈辜錮雇顧高鼓哭斛曲梏穀谷鵠困坤崑昆梱棍滾琨袞鯤汨滑骨供公共功孔工恐恭拱控攻珙空蚣貢鞏串寡戈果瓜�".split("");for(j=0;j!=D[205].length;++j)if(D[205][j].charCodeAt(0)!==65533){e[D[205][j]]=52480+j;d[52480+j]=D[205][j]}D[206]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������科菓誇課跨過鍋顆廓槨藿郭串冠官寬慣棺款灌琯瓘管罐菅觀貫關館刮恝括适侊光匡壙廣曠洸炚狂珖筐胱鑛卦掛罫乖傀塊壞怪愧拐槐魁宏紘肱轟交僑咬喬嬌嶠巧攪敎校橋狡皎矯絞翹膠蕎蛟較轎郊餃驕鮫丘久九仇俱具勾�".split("");for(j=0;j!=D[206].length;++j)if(D[206][j].charCodeAt(0)!==65533){e[D[206][j]]=52736+j;d[52736+j]=D[206][j]}D[207]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������區口句咎嘔坵垢寇嶇廐懼拘救枸柩構歐毆毬求溝灸狗玖球瞿矩究絿耉臼舅舊苟衢謳購軀逑邱鉤銶駒驅鳩鷗龜國局菊鞠鞫麴君窘群裙軍郡堀屈掘窟宮弓穹窮芎躬倦券勸卷圈拳捲權淃眷厥獗蕨蹶闕机櫃潰詭軌饋句晷歸貴�".split("");for(j=0;j!=D[207].length;++j)if(D[207][j].charCodeAt(0)!==65533){e[D[207][j]]=52992+j;d[52992+j]=D[207][j]}D[208]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������鬼龜叫圭奎揆槻珪硅窺竅糾葵規赳逵閨勻均畇筠菌鈞龜橘克剋劇戟棘極隙僅劤勤懃斤根槿瑾筋芹菫覲謹近饉契今妗擒昑檎琴禁禽芩衾衿襟金錦伋及急扱汲級給亘兢矜肯企伎其冀嗜器圻基埼夔奇妓寄岐崎己幾忌技旗旣�".split("");for(j=0;j!=D[208].length;++j)if(D[208][j].charCodeAt(0)!==65533){e[D[208][j]]=53248+j;d[53248+j]=D[208][j]}D[209]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������朞期杞棋棄機欺氣汽沂淇玘琦琪璂璣畸畿碁磯祁祇祈祺箕紀綺羈耆耭肌記譏豈起錡錤飢饑騎騏驥麒緊佶吉拮桔金喫儺喇奈娜懦懶拏拿癩羅蘿螺裸邏那樂洛烙珞落諾酪駱亂卵暖欄煖爛蘭難鸞捏捺南嵐枏楠湳濫男藍襤拉�".split("");for(j=0;j!=D[209].length;++j)if(D[209][j].charCodeAt(0)!==65533){e[D[209][j]]=53504+j;d[53504+j]=D[209][j]}D[210]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������納臘蠟衲囊娘廊朗浪狼郎乃來內奈柰耐冷女年撚秊念恬拈捻寧寗努勞奴弩怒擄櫓爐瑙盧老蘆虜路露駑魯鷺碌祿綠菉錄鹿論壟弄濃籠聾膿農惱牢磊腦賂雷尿壘屢樓淚漏累縷陋嫩訥杻紐勒肋凜凌稜綾能菱陵尼泥匿溺多茶�".split("");for(j=0;j!=D[210].length;++j)if(D[210][j].charCodeAt(0)!==65533){e[D[210][j]]=53760+j;d[53760+j]=D[210][j]}D[211]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������丹亶但單團壇彖斷旦檀段湍短端簞緞蛋袒鄲鍛撻澾獺疸達啖坍憺擔曇淡湛潭澹痰聃膽蕁覃談譚錟沓畓答踏遝唐堂塘幢戇撞棠當糖螳黨代垈坮大對岱帶待戴擡玳臺袋貸隊黛宅德悳倒刀到圖堵塗導屠島嶋度徒悼挑掉搗桃�".split("");for(j=0;j!=D[211].length;++j)if(D[211][j].charCodeAt(0)!==65533){e[D[211][j]]=54016+j;d[54016+j]=D[211][j]}D[212]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������棹櫂淘渡滔濤燾盜睹禱稻萄覩賭跳蹈逃途道都鍍陶韜毒瀆牘犢獨督禿篤纛讀墩惇敦旽暾沌焞燉豚頓乭突仝冬凍動同憧東桐棟洞潼疼瞳童胴董銅兜斗杜枓痘竇荳讀豆逗頭屯臀芚遁遯鈍得嶝橙燈登等藤謄鄧騰喇懶拏癩羅�".split("");for(j=0;j!=D[212].length;++j)if(D[212][j].charCodeAt(0)!==65533){e[D[212][j]]=54272+j;d[54272+j]=D[212][j]}D[213]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������蘿螺裸邏樂洛烙珞絡落諾酪駱丹亂卵欄欒瀾爛蘭鸞剌辣嵐擥攬欖濫籃纜藍襤覽拉臘蠟廊朗浪狼琅瑯螂郞來崍徠萊冷掠略亮倆兩凉梁樑粮粱糧良諒輛量侶儷勵呂廬慮戾旅櫚濾礪藜蠣閭驢驪麗黎力曆歷瀝礫轢靂憐戀攣漣�".split("");for(j=0;j!=D[213].length;++j)if(D[213][j].charCodeAt(0)!==65533){e[D[213][j]]=54528+j;d[54528+j]=D[213][j]}D[214]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������煉璉練聯蓮輦連鍊冽列劣洌烈裂廉斂殮濂簾獵令伶囹寧岺嶺怜玲笭羚翎聆逞鈴零靈領齡例澧禮醴隷勞怒撈擄櫓潞瀘爐盧老蘆虜路輅露魯鷺鹵碌祿綠菉錄鹿麓論壟弄朧瀧瓏籠聾儡瀨牢磊賂賚賴雷了僚寮廖料燎療瞭聊蓼�".split("");for(j=0;j!=D[214].length;++j)if(D[214][j].charCodeAt(0)!==65533){e[D[214][j]]=54784+j;d[54784+j]=D[214][j]}D[215]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������遼鬧龍壘婁屢樓淚漏瘻累縷蔞褸鏤陋劉旒柳榴流溜瀏琉瑠留瘤硫謬類六戮陸侖倫崙淪綸輪律慄栗率隆勒肋凜凌楞稜綾菱陵俚利厘吏唎履悧李梨浬犁狸理璃異痢籬罹羸莉裏裡里釐離鯉吝潾燐璘藺躪隣鱗麟林淋琳臨霖砬�".split("");for(j=0;j!=D[215].length;++j)if(D[215][j].charCodeAt(0)!==65533){e[D[215][j]]=55040+j;d[55040+j]=D[215][j]}D[216]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������立笠粒摩瑪痲碼磨馬魔麻寞幕漠膜莫邈万卍娩巒彎慢挽晩曼滿漫灣瞞萬蔓蠻輓饅鰻唜抹末沫茉襪靺亡妄忘忙望網罔芒茫莽輞邙埋妹媒寐昧枚梅每煤罵買賣邁魅脈貊陌驀麥孟氓猛盲盟萌冪覓免冕勉棉沔眄眠綿緬面麵滅�".split("");for(j=0;j!=D[216].length;++j)if(D[216][j].charCodeAt(0)!==65533){e[D[216][j]]=55296+j;d[55296+j]=D[216][j]}D[217]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������蔑冥名命明暝椧溟皿瞑茗蓂螟酩銘鳴袂侮冒募姆帽慕摸摹暮某模母毛牟牡瑁眸矛耗芼茅謀謨貌木沐牧目睦穆鶩歿沒夢朦蒙卯墓妙廟描昴杳渺猫竗苗錨務巫憮懋戊拇撫无楙武毋無珷畝繆舞茂蕪誣貿霧鵡墨默們刎吻問文�".split("");for(j=0;j!=D[217].length;++j)if(D[217][j].charCodeAt(0)!==65533){e[D[217][j]]=55552+j;d[55552+j]=D[217][j]}D[218]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������汶紊紋聞蚊門雯勿沕物味媚尾嵋彌微未梶楣渼湄眉米美薇謎迷靡黴岷悶愍憫敏旻旼民泯玟珉緡閔密蜜謐剝博拍搏撲朴樸泊珀璞箔粕縛膊舶薄迫雹駁伴半反叛拌搬攀斑槃泮潘班畔瘢盤盼磐磻礬絆般蟠返頒飯勃拔撥渤潑�".split("");for(j=0;j!=D[218].length;++j)if(D[218][j].charCodeAt(0)!==65533){e[D[218][j]]=55808+j;d[55808+j]=D[218][j]}D[219]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������發跋醱鉢髮魃倣傍坊妨尨幇彷房放方旁昉枋榜滂磅紡肪膀舫芳蒡蚌訪謗邦防龐倍俳北培徘拜排杯湃焙盃背胚裴裵褙賠輩配陪伯佰帛柏栢白百魄幡樊煩燔番磻繁蕃藩飜伐筏罰閥凡帆梵氾汎泛犯範范法琺僻劈壁擘檗璧癖�".split("");for(j=0;j!=D[219].length;++j)if(D[219][j].charCodeAt(0)!==65533){e[D[219][j]]=56064+j;d[56064+j]=D[219][j]}D[220]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������碧蘗闢霹便卞弁變辨辯邊別瞥鱉鼈丙倂兵屛幷昞昺柄棅炳甁病秉竝輧餠騈保堡報寶普步洑湺潽珤甫菩補褓譜輔伏僕匐卜宓復服福腹茯蔔複覆輹輻馥鰒本乶俸奉封峯峰捧棒烽熢琫縫蓬蜂逢鋒鳳不付俯傅剖副否咐埠夫婦�".split("");for(j=0;j!=D[220].length;++j)if(D[220][j].charCodeAt(0)!==65533){e[D[220][j]]=56320+j;d[56320+j]=D[220][j]}D[221]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������孚孵富府復扶敷斧浮溥父符簿缶腐腑膚艀芙莩訃負賦賻赴趺部釜阜附駙鳧北分吩噴墳奔奮忿憤扮昐汾焚盆粉糞紛芬賁雰不佛弗彿拂崩朋棚硼繃鵬丕備匕匪卑妃婢庇悲憊扉批斐枇榧比毖毗毘沸泌琵痺砒碑秕秘粃緋翡肥�".split("");for(j=0;j!=D[221].length;++j)if(D[221][j].charCodeAt(0)!==65533){e[D[221][j]]=56576+j;d[56576+j]=D[221][j]}D[222]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������脾臂菲蜚裨誹譬費鄙非飛鼻嚬嬪彬斌檳殯浜濱瀕牝玭貧賓頻憑氷聘騁乍事些仕伺似使俟僿史司唆嗣四士奢娑寫寺射巳師徙思捨斜斯柶査梭死沙泗渣瀉獅砂社祀祠私篩紗絲肆舍莎蓑蛇裟詐詞謝賜赦辭邪飼駟麝削數朔索�".split("");for(j=0;j!=D[222].length;++j)if(D[222][j].charCodeAt(0)!==65533){e[D[222][j]]=56832+j;d[56832+j]=D[222][j]}D[223]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������傘刪山散汕珊産疝算蒜酸霰乷撒殺煞薩三參杉森渗芟蔘衫揷澁鈒颯上傷像償商喪嘗孀尙峠常床庠廂想桑橡湘爽牀狀相祥箱翔裳觴詳象賞霜塞璽賽嗇塞穡索色牲生甥省笙墅壻嶼序庶徐恕抒捿敍暑曙書栖棲犀瑞筮絮緖署�".split("");for(j=0;j!=D[223].length;++j)if(D[223][j].charCodeAt(0)!==65533){e[D[223][j]]=57088+j;d[57088+j]=D[223][j]}D[224]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������胥舒薯西誓逝鋤黍鼠夕奭席惜昔晳析汐淅潟石碩蓆釋錫仙僊先善嬋宣扇敾旋渲煽琁瑄璇璿癬禪線繕羨腺膳船蘚蟬詵跣選銑鐥饍鮮卨屑楔泄洩渫舌薛褻設說雪齧剡暹殲纖蟾贍閃陝攝涉燮葉城姓宬性惺成星晟猩珹盛省筬�".split("");for(j=0;j!=D[224].length;++j)if(D[224][j].charCodeAt(0)!==65533){e[D[224][j]]=57344+j;d[57344+j]=D[224][j]}D[225]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������聖聲腥誠醒世勢歲洗稅笹細說貰召嘯塑宵小少巢所掃搔昭梳沼消溯瀟炤燒甦疏疎瘙笑篠簫素紹蔬蕭蘇訴逍遡邵銷韶騷俗屬束涑粟續謖贖速孫巽損蓀遜飡率宋悚松淞訟誦送頌刷殺灑碎鎖衰釗修受嗽囚垂壽嫂守岫峀帥愁�".split("");for(j=0;j!=D[225].length;++j)if(D[225][j].charCodeAt(0)!==65533){e[D[225][j]]=57600+j;d[57600+j]=D[225][j]}D[226]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������戍手授搜收數樹殊水洙漱燧狩獸琇璲瘦睡秀穗竪粹綏綬繡羞脩茱蒐蓚藪袖誰讐輸遂邃酬銖銹隋隧隨雖需須首髓鬚叔塾夙孰宿淑潚熟琡璹肅菽巡徇循恂旬栒楯橓殉洵淳珣盾瞬筍純脣舜荀蓴蕣詢諄醇錞順馴戌術述鉥崇崧�".split("");for(j=0;j!=D[226].length;++j)if(D[226][j].charCodeAt(0)!==65533){e[D[226][j]]=57856+j;d[57856+j]=D[226][j]}D[227]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������嵩瑟膝蝨濕拾習褶襲丞乘僧勝升承昇繩蠅陞侍匙嘶始媤尸屎屍市弑恃施是時枾柴猜矢示翅蒔蓍視試詩諡豕豺埴寔式息拭植殖湜熄篒蝕識軾食飾伸侁信呻娠宸愼新晨燼申神紳腎臣莘薪藎蜃訊身辛辰迅失室實悉審尋心沁�".split("");for(j=0;j!=D[227].length;++j)if(D[227][j].charCodeAt(0)!==65533){e[D[227][j]]=58112+j;d[58112+j]=D[227][j]}D[228]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������沈深瀋甚芯諶什十拾雙氏亞俄兒啞娥峨我牙芽莪蛾衙訝阿雅餓鴉鵝堊岳嶽幄惡愕握樂渥鄂鍔顎鰐齷安岸按晏案眼雁鞍顔鮟斡謁軋閼唵岩巖庵暗癌菴闇壓押狎鴨仰央怏昻殃秧鴦厓哀埃崖愛曖涯碍艾隘靄厄扼掖液縊腋額�".split("");for(j=0;j!=D[228].length;++j)if(D[228][j].charCodeAt(0)!==65533){e[D[228][j]]=58368+j;d[58368+j]=D[228][j]}D[229]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������櫻罌鶯鸚也倻冶夜惹揶椰爺耶若野弱掠略約若葯蒻藥躍亮佯兩凉壤孃恙揚攘敭暘梁楊樣洋瀁煬痒瘍禳穰糧羊良襄諒讓釀陽量養圄御於漁瘀禦語馭魚齬億憶抑檍臆偃堰彦焉言諺孼蘖俺儼嚴奄掩淹嶪業円予余勵呂女如廬�".split("");for(j=0;j!=D[229].length;++j)if(D[229][j].charCodeAt(0)!==65533){e[D[229][j]]=58624+j;d[58624+j]=D[229][j]}D[230]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������旅歟汝濾璵礖礪與艅茹輿轝閭餘驪麗黎亦力域役易曆歷疫繹譯轢逆驛嚥堧姸娟宴年延憐戀捐挻撚椽沇沿涎涓淵演漣烟然煙煉燃燕璉硏硯秊筵緣練縯聯衍軟輦蓮連鉛鍊鳶列劣咽悅涅烈熱裂說閱厭廉念捻染殮炎焰琰艶苒�".split("");for(j=0;j!=D[230].length;++j)if(D[230][j].charCodeAt(0)!==65533){e[D[230][j]]=58880+j;d[58880+j]=D[230][j]}D[231]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������簾閻髥鹽曄獵燁葉令囹塋寧嶺嶸影怜映暎楹榮永泳渶潁濚瀛瀯煐營獰玲瑛瑩瓔盈穎纓羚聆英詠迎鈴鍈零霙靈領乂倪例刈叡曳汭濊猊睿穢芮藝蘂禮裔詣譽豫醴銳隸霓預五伍俉傲午吾吳嗚塢墺奧娛寤悟惡懊敖旿晤梧汚澳�".split("");for(j=0;j!=D[231].length;++j)if(D[231][j].charCodeAt(0)!==65533){e[D[231][j]]=59136+j;d[59136+j]=D[231][j]}D[232]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������烏熬獒筽蜈誤鰲鼇屋沃獄玉鈺溫瑥瘟穩縕蘊兀壅擁瓮甕癰翁邕雍饔渦瓦窩窪臥蛙蝸訛婉完宛梡椀浣玩琓琬碗緩翫脘腕莞豌阮頑曰往旺枉汪王倭娃歪矮外嵬巍猥畏了僚僥凹堯夭妖姚寥寮尿嶢拗搖撓擾料曜樂橈燎燿瑤療�".split("");for(j=0;j!=D[232].length;++j)if(D[232][j].charCodeAt(0)!==65533){e[D[232][j]]=59392+j;d[59392+j]=D[232][j]}D[233]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������窈窯繇繞耀腰蓼蟯要謠遙遼邀饒慾欲浴縟褥辱俑傭冗勇埇墉容庸慂榕涌湧溶熔瑢用甬聳茸蓉踊鎔鏞龍于佑偶優又友右宇寓尤愚憂旴牛玗瑀盂祐禑禹紆羽芋藕虞迂遇郵釪隅雨雩勖彧旭昱栯煜稶郁頊云暈橒殞澐熉耘芸蕓�".split("");for(j=0;j!=D[233].length;++j)if(D[233][j].charCodeAt(0)!==65533){e[D[233][j]]=59648+j;d[59648+j]=D[233][j]}D[234]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������運隕雲韻蔚鬱亐熊雄元原員圓園垣媛嫄寃怨愿援沅洹湲源爰猿瑗苑袁轅遠阮院願鴛月越鉞位偉僞危圍委威尉慰暐渭爲瑋緯胃萎葦蔿蝟衛褘謂違韋魏乳侑儒兪劉唯喩孺宥幼幽庾悠惟愈愉揄攸有杻柔柚柳楡楢油洧流游溜�".split("");for(j=0;j!=D[234].length;++j)if(D[234][j].charCodeAt(0)!==65533){e[D[234][j]]=59904+j;d[59904+j]=D[234][j]}D[235]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������濡猶猷琉瑜由留癒硫紐維臾萸裕誘諛諭踰蹂遊逾遺酉釉鍮類六堉戮毓肉育陸倫允奫尹崙淪潤玧胤贇輪鈗閏律慄栗率聿戎瀜絨融隆垠恩慇殷誾銀隱乙吟淫蔭陰音飮揖泣邑凝應膺鷹依倚儀宜意懿擬椅毅疑矣義艤薏蟻衣誼�".split("");for(j=0;j!=D[235].length;++j)if(D[235][j].charCodeAt(0)!==65533){e[D[235][j]]=60160+j;d[60160+j]=D[235][j]}D[236]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������議醫二以伊利吏夷姨履已弛彛怡易李梨泥爾珥理異痍痢移罹而耳肄苡荑裏裡貽貳邇里離飴餌匿溺瀷益翊翌翼謚人仁刃印吝咽因姻寅引忍湮燐璘絪茵藺蚓認隣靭靷鱗麟一佚佾壹日溢逸鎰馹任壬妊姙恁林淋稔臨荏賃入卄�".split("");for(j=0;j!=D[236].length;++j)if(D[236][j].charCodeAt(0)!==65533){e[D[236][j]]=60416+j;d[60416+j]=D[236][j]}D[237]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������立笠粒仍剩孕芿仔刺咨姉姿子字孜恣慈滋炙煮玆瓷疵磁紫者自茨蔗藉諮資雌作勺嚼斫昨灼炸爵綽芍酌雀鵲孱棧殘潺盞岑暫潛箴簪蠶雜丈仗匠場墻壯奬將帳庄張掌暲杖樟檣欌漿牆狀獐璋章粧腸臟臧莊葬蔣薔藏裝贓醬長�".split("");for(j=0;j!=D[237].length;++j)if(D[237][j].charCodeAt(0)!==65533){e[D[237][j]]=60672+j;d[60672+j]=D[237][j]}D[238]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������障再哉在宰才材栽梓渽滓災縡裁財載齋齎爭箏諍錚佇低儲咀姐底抵杵楮樗沮渚狙猪疽箸紵苧菹著藷詛貯躇這邸雎齟勣吊嫡寂摘敵滴狄炙的積笛籍績翟荻謫賊赤跡蹟迪迹適鏑佃佺傳全典前剪塡塼奠專展廛悛戰栓殿氈澱�".split("");for(j=0;j!=D[238].length;++j)if(D[238][j].charCodeAt(0)!==65533){e[D[238][j]]=60928+j;d[60928+j]=D[238][j]}D[239]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������煎琠田甸畑癲筌箋箭篆纏詮輾轉鈿銓錢鐫電顚顫餞切截折浙癤竊節絶占岾店漸点粘霑鮎點接摺蝶丁井亭停偵呈姃定幀庭廷征情挺政整旌晶晸柾楨檉正汀淀淨渟湞瀞炡玎珽町睛碇禎程穽精綎艇訂諪貞鄭酊釘鉦鋌錠霆靖�".split("");for(j=0;j!=D[239].length;++j)if(D[239][j].charCodeAt(0)!==65533){e[D[239][j]]=61184+j;d[61184+j]=D[239][j]}D[240]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������靜頂鼎制劑啼堤帝弟悌提梯濟祭第臍薺製諸蹄醍除際霽題齊俎兆凋助嘲弔彫措操早晁曺曹朝條棗槽漕潮照燥爪璪眺祖祚租稠窕粗糟組繰肇藻蚤詔調趙躁造遭釣阻雕鳥族簇足鏃存尊卒拙猝倧宗從悰慫棕淙琮種終綜縱腫�".split("");for(j=0;j!=D[240].length;++j)if(D[240][j].charCodeAt(0)!==65533){e[D[240][j]]=61440+j;d[61440+j]=D[240][j]}D[241]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������踪踵鍾鐘佐坐左座挫罪主住侏做姝胄呪周嗾奏宙州廚晝朱柱株注洲湊澍炷珠疇籌紂紬綢舟蛛註誅走躊輳週酎酒鑄駐竹粥俊儁准埈寯峻晙樽浚準濬焌畯竣蠢逡遵雋駿茁中仲衆重卽櫛楫汁葺增憎曾拯烝甑症繒蒸證贈之只�".split("");for(j=0;j!=D[241].length;++j)if(D[241][j].charCodeAt(0)!==65533){e[D[241][j]]=61696+j;d[61696+j]=D[241][j]}D[242]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������咫地址志持指摯支旨智枝枳止池沚漬知砥祉祗紙肢脂至芝芷蜘誌識贄趾遲直稙稷織職唇嗔塵振搢晉晋桭榛殄津溱珍瑨璡畛疹盡眞瞋秦縉縝臻蔯袗診賑軫辰進鎭陣陳震侄叱姪嫉帙桎瓆疾秩窒膣蛭質跌迭斟朕什執潗緝輯�".split("");for(j=0;j!=D[242].length;++j)if(D[242][j].charCodeAt(0)!==65533){e[D[242][j]]=61952+j;d[61952+j]=D[242][j]}D[243]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������鏶集徵懲澄且侘借叉嗟嵯差次此磋箚茶蹉車遮捉搾着窄錯鑿齪撰澯燦璨瓚竄簒纂粲纘讚贊鑽餐饌刹察擦札紮僭參塹慘慙懺斬站讒讖倉倡創唱娼廠彰愴敞昌昶暢槍滄漲猖瘡窓脹艙菖蒼債埰寀寨彩採砦綵菜蔡采釵冊柵策�".split("");for(j=0;j!=D[243].length;++j)if(D[243][j].charCodeAt(0)!==65533){e[D[243][j]]=62208+j;d[62208+j]=D[243][j]}D[244]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������責凄妻悽處倜刺剔尺慽戚拓擲斥滌瘠脊蹠陟隻仟千喘天川擅泉淺玔穿舛薦賤踐遷釧闡阡韆凸哲喆徹撤澈綴輟轍鐵僉尖沾添甛瞻簽籤詹諂堞妾帖捷牒疊睫諜貼輒廳晴淸聽菁請靑鯖切剃替涕滯締諦逮遞體初剿哨憔抄招梢�".split("");for(j=0;j!=D[244].length;++j)if(D[244][j].charCodeAt(0)!==65533){e[D[244][j]]=62464+j;d[62464+j]=D[244][j]}D[245]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������椒楚樵炒焦硝礁礎秒稍肖艸苕草蕉貂超酢醋醮促囑燭矗蜀觸寸忖村邨叢塚寵悤憁摠總聰蔥銃撮催崔最墜抽推椎楸樞湫皺秋芻萩諏趨追鄒酋醜錐錘鎚雛騶鰍丑畜祝竺筑築縮蓄蹙蹴軸逐春椿瑃出朮黜充忠沖蟲衝衷悴膵萃�".split("");for(j=0;j!=D[245].length;++j)if(D[245][j].charCodeAt(0)!==65533){e[D[245][j]]=62720+j;d[62720+j]=D[245][j]}D[246]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������贅取吹嘴娶就炊翠聚脆臭趣醉驟鷲側仄厠惻測層侈値嗤峙幟恥梔治淄熾痔痴癡稚穉緇緻置致蚩輜雉馳齒則勅飭親七柒漆侵寢枕沈浸琛砧針鍼蟄秤稱快他咤唾墮妥惰打拖朶楕舵陀馱駝倬卓啄坼度托拓擢晫柝濁濯琢琸託�".split("");for(j=0;j!=D[246].length;++j)if(D[246][j].charCodeAt(0)!==65533){e[D[246][j]]=62976+j;d[62976+j]=D[246][j]}D[247]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������鐸呑嘆坦彈憚歎灘炭綻誕奪脫探眈耽貪塔搭榻宕帑湯糖蕩兌台太怠態殆汰泰笞胎苔跆邰颱宅擇澤撑攄兎吐土討慟桶洞痛筒統通堆槌腿褪退頹偸套妬投透鬪慝特闖坡婆巴把播擺杷波派爬琶破罷芭跛頗判坂板版瓣販辦鈑�".split("");for(j=0;j!=D[247].length;++j)if(D[247][j].charCodeAt(0)!==65533){e[D[247][j]]=63232+j;d[63232+j]=D[247][j]}D[248]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������阪八叭捌佩唄悖敗沛浿牌狽稗覇貝彭澎烹膨愎便偏扁片篇編翩遍鞭騙貶坪平枰萍評吠嬖幣廢弊斃肺蔽閉陛佈包匍匏咆哺圃布怖抛抱捕暴泡浦疱砲胞脯苞葡蒲袍褒逋鋪飽鮑幅暴曝瀑爆輻俵剽彪慓杓標漂瓢票表豹飇飄驃�".split("");for(j=0;j!=D[248].length;++j)if(D[248][j].charCodeAt(0)!==65533){e[D[248][j]]=63488+j;d[63488+j]=D[248][j]}D[249]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������品稟楓諷豊風馮彼披疲皮被避陂匹弼必泌珌畢疋筆苾馝乏逼下何厦夏廈昰河瑕荷蝦賀遐霞鰕壑學虐謔鶴寒恨悍旱汗漢澣瀚罕翰閑閒限韓割轄函含咸啣喊檻涵緘艦銜陷鹹合哈盒蛤閤闔陜亢伉姮嫦巷恒抗杭桁沆港缸肛航�".split("");for(j=0;j!=D[249].length;++j)if(D[249][j].charCodeAt(0)!==65533){e[D[249][j]]=63744+j;d[63744+j]=D[249][j]}D[250]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������行降項亥偕咳垓奚孩害懈楷海瀣蟹解該諧邂駭骸劾核倖幸杏荇行享向嚮珦鄕響餉饗香噓墟虛許憲櫶獻軒歇險驗奕爀赫革俔峴弦懸晛泫炫玄玹現眩睍絃絢縣舷衒見賢鉉顯孑穴血頁嫌俠協夾峽挾浹狹脅脇莢鋏頰亨兄刑型�".split("");
for(j=0;j!=D[250].length;++j)if(D[250][j].charCodeAt(0)!==65533){e[D[250][j]]=64e3+j;d[64e3+j]=D[250][j]}D[251]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������形泂滎瀅灐炯熒珩瑩荊螢衡逈邢鎣馨兮彗惠慧暳蕙蹊醯鞋乎互呼壕壺好岵弧戶扈昊晧毫浩淏湖滸澔濠濩灝狐琥瑚瓠皓祜糊縞胡芦葫蒿虎號蝴護豪鎬頀顥惑或酷婚昏混渾琿魂忽惚笏哄弘汞泓洪烘紅虹訌鴻化和嬅樺火畵�".split("");for(j=0;j!=D[251].length;++j)if(D[251][j].charCodeAt(0)!==65533){e[D[251][j]]=64256+j;d[64256+j]=D[251][j]}D[252]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������禍禾花華話譁貨靴廓擴攫確碻穫丸喚奐宦幻患換歡晥桓渙煥環紈還驩鰥活滑猾豁闊凰幌徨恍惶愰慌晃晄榥況湟滉潢煌璜皇篁簧荒蝗遑隍黃匯回廻徊恢悔懷晦會檜淮澮灰獪繪膾茴蛔誨賄劃獲宖橫鐄哮嚆孝效斅曉梟涍淆�".split("");for(j=0;j!=D[252].length;++j)if(D[252][j].charCodeAt(0)!==65533){e[D[252][j]]=64512+j;d[64512+j]=D[252][j]}D[253]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������爻肴酵驍侯候厚后吼喉嗅帿後朽煦珝逅勛勳塤壎焄熏燻薰訓暈薨喧暄煊萱卉喙毁彙徽揮暉煇諱輝麾休携烋畦虧恤譎鷸兇凶匈洶胸黑昕欣炘痕吃屹紇訖欠欽歆吸恰洽翕興僖凞喜噫囍姬嬉希憙憘戱晞曦熙熹熺犧禧稀羲詰�".split("");for(j=0;j!=D[253].length;++j)if(D[253][j].charCodeAt(0)!==65533){e[D[253][j]]=64768+j;d[64768+j]=D[253][j]}return{enc:e,dec:d}}();cptable[950]=function(){var d=[],e={},D=[],j;D[0]="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[0].length;++j)if(D[0][j].charCodeAt(0)!==65533){e[D[0][j]]=0+j;d[0+j]=D[0][j]}D[161]="���������������������������������������������������������������� ,、。.‧;:?!︰…‥﹐﹑﹒·﹔﹕﹖﹗|–︱—︳╴︴﹏()︵︶{}︷︸〔〕︹︺【】︻︼《》︽︾〈〉︿﹀「」﹁﹂『』﹃﹄﹙﹚����������������������������������﹛﹜﹝﹞‘’“”〝〞‵′#&*※§〃○●△▲◎☆★◇◆□■▽▼㊣℅¯ ̄_ˍ﹉﹊﹍﹎﹋﹌﹟﹠﹡+-×÷±√<>=≦≧≠∞≒≡﹢﹣﹤﹥﹦~∩∪⊥∠∟⊿㏒㏑∫∮∵∴♀♂⊕⊙↑↓←→↖↗↙↘∥∣/�".split("");for(j=0;j!=D[161].length;++j)if(D[161][j].charCodeAt(0)!==65533){e[D[161][j]]=41216+j;d[41216+j]=D[161][j]}D[162]="����������������������������������������������������������������\∕﹨$¥〒¢£%@℃℉﹩﹪﹫㏕㎜㎝㎞㏎㎡㎎㎏㏄°兙兛兞兝兡兣嗧瓩糎▁▂▃▄▅▆▇█▏▎▍▌▋▊▉┼┴┬┤├▔─│▕┌┐└┘╭����������������������������������╮╰╯═╞╪╡◢◣◥◤╱╲╳0123456789ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ〡〢〣〤〥〦〧〨〩十卄卅ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuv�".split("");for(j=0;j!=D[162].length;++j)if(D[162][j].charCodeAt(0)!==65533){e[D[162][j]]=41472+j;d[41472+j]=D[162][j]}D[163]="����������������������������������������������������������������wxyzΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩαβγδεζηθικλμνξοπρστυφχψωㄅㄆㄇㄈㄉㄊㄋㄌㄍㄎㄏ����������������������������������ㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙㄚㄛㄜㄝㄞㄟㄠㄡㄢㄣㄤㄥㄦㄧㄨㄩ˙ˉˊˇˋ���������������������������������€������������������������������".split("");for(j=0;j!=D[163].length;++j)if(D[163][j].charCodeAt(0)!==65533){e[D[163][j]]=41728+j;d[41728+j]=D[163][j]}D[164]="����������������������������������������������������������������一乙丁七乃九了二人儿入八几刀刁力匕十卜又三下丈上丫丸凡久么也乞于亡兀刃勺千叉口土士夕大女子孑孓寸小尢尸山川工己已巳巾干廾弋弓才����������������������������������丑丐不中丰丹之尹予云井互五亢仁什仃仆仇仍今介仄元允內六兮公冗凶分切刈勻勾勿化匹午升卅卞厄友及反壬天夫太夭孔少尤尺屯巴幻廿弔引心戈戶手扎支文斗斤方日曰月木欠止歹毋比毛氏水火爪父爻片牙牛犬王丙�".split("");for(j=0;j!=D[164].length;++j)if(D[164][j].charCodeAt(0)!==65533){e[D[164][j]]=41984+j;d[41984+j]=D[164][j]}D[165]="����������������������������������������������������������������世丕且丘主乍乏乎以付仔仕他仗代令仙仞充兄冉冊冬凹出凸刊加功包匆北匝仟半卉卡占卯卮去可古右召叮叩叨叼司叵叫另只史叱台句叭叻四囚外����������������������������������央失奴奶孕它尼巨巧左市布平幼弁弘弗必戊打扔扒扑斥旦朮本未末札正母民氐永汁汀氾犯玄玉瓜瓦甘生用甩田由甲申疋白皮皿目矛矢石示禾穴立丞丟乒乓乩亙交亦亥仿伉伙伊伕伍伐休伏仲件任仰仳份企伋光兇兆先全�".split("");for(j=0;j!=D[165].length;++j)if(D[165][j].charCodeAt(0)!==65533){e[D[165][j]]=42240+j;d[42240+j]=D[165][j]}D[166]="����������������������������������������������������������������共再冰列刑划刎刖劣匈匡匠印危吉吏同吊吐吁吋各向名合吃后吆吒因回囝圳地在圭圬圯圩夙多夷夸妄奸妃好她如妁字存宇守宅安寺尖屹州帆并年����������������������������������式弛忙忖戎戌戍成扣扛托收早旨旬旭曲曳有朽朴朱朵次此死氖汝汗汙江池汐汕污汛汍汎灰牟牝百竹米糸缶羊羽老考而耒耳聿肉肋肌臣自至臼舌舛舟艮色艾虫血行衣西阡串亨位住佇佗佞伴佛何估佐佑伽伺伸佃佔似但佣�".split("");for(j=0;j!=D[166].length;++j)if(D[166][j].charCodeAt(0)!==65533){e[D[166][j]]=42496+j;d[42496+j]=D[166][j]}D[167]="����������������������������������������������������������������作你伯低伶余佝佈佚兌克免兵冶冷別判利刪刨劫助努劬匣即卵吝吭吞吾否呎吧呆呃吳呈呂君吩告吹吻吸吮吵吶吠吼呀吱含吟听囪困囤囫坊坑址坍����������������������������������均坎圾坐坏圻壯夾妝妒妨妞妣妙妖妍妤妓妊妥孝孜孚孛完宋宏尬局屁尿尾岐岑岔岌巫希序庇床廷弄弟彤形彷役忘忌志忍忱快忸忪戒我抄抗抖技扶抉扭把扼找批扳抒扯折扮投抓抑抆改攻攸旱更束李杏材村杜杖杞杉杆杠�".split("");for(j=0;j!=D[167].length;++j)if(D[167][j].charCodeAt(0)!==65533){e[D[167][j]]=42752+j;d[42752+j]=D[167][j]}D[168]="����������������������������������������������������������������杓杗步每求汞沙沁沈沉沅沛汪決沐汰沌汨沖沒汽沃汲汾汴沆汶沍沔沘沂灶灼災灸牢牡牠狄狂玖甬甫男甸皂盯矣私秀禿究系罕肖肓肝肘肛肚育良芒����������������������������������芋芍見角言谷豆豕貝赤走足身車辛辰迂迆迅迄巡邑邢邪邦那酉釆里防阮阱阪阬並乖乳事些亞享京佯依侍佳使佬供例來侃佰併侈佩佻侖佾侏侑佺兔兒兕兩具其典冽函刻券刷刺到刮制剁劾劻卒協卓卑卦卷卸卹取叔受味呵�".split("");for(j=0;j!=D[168].length;++j)if(D[168][j].charCodeAt(0)!==65533){e[D[168][j]]=43008+j;d[43008+j]=D[168][j]}D[169]="����������������������������������������������������������������咖呸咕咀呻呷咄咒咆呼咐呱呶和咚呢周咋命咎固垃坷坪坩坡坦坤坼夜奉奇奈奄奔妾妻委妹妮姑姆姐姍始姓姊妯妳姒姅孟孤季宗定官宜宙宛尚屈居����������������������������������屆岷岡岸岩岫岱岳帘帚帖帕帛帑幸庚店府底庖延弦弧弩往征彿彼忝忠忽念忿怏怔怯怵怖怪怕怡性怩怫怛或戕房戾所承拉拌拄抿拂抹拒招披拓拔拋拈抨抽押拐拙拇拍抵拚抱拘拖拗拆抬拎放斧於旺昔易昌昆昂明昀昏昕昊�".split("");for(j=0;j!=D[169].length;++j)if(D[169][j].charCodeAt(0)!==65533){e[D[169][j]]=43264+j;d[43264+j]=D[169][j]}D[170]="����������������������������������������������������������������昇服朋杭枋枕東果杳杷枇枝林杯杰板枉松析杵枚枓杼杪杲欣武歧歿氓氛泣注泳沱泌泥河沽沾沼波沫法泓沸泄油況沮泗泅泱沿治泡泛泊沬泯泜泖泠����������������������������������炕炎炒炊炙爬爭爸版牧物狀狎狙狗狐玩玨玟玫玥甽疝疙疚的盂盲直知矽社祀祁秉秈空穹竺糾罔羌羋者肺肥肢肱股肫肩肴肪肯臥臾舍芳芝芙芭芽芟芹花芬芥芯芸芣芰芾芷虎虱初表軋迎返近邵邸邱邶采金長門阜陀阿阻附�".split("");for(j=0;j!=D[170].length;++j)if(D[170][j].charCodeAt(0)!==65533){e[D[170][j]]=43520+j;d[43520+j]=D[170][j]}D[171]="����������������������������������������������������������������陂隹雨青非亟亭亮信侵侯便俠俑俏保促侶俘俟俊俗侮俐俄係俚俎俞侷兗冒冑冠剎剃削前剌剋則勇勉勃勁匍南卻厚叛咬哀咨哎哉咸咦咳哇哂咽咪品����������������������������������哄哈咯咫咱咻咩咧咿囿垂型垠垣垢城垮垓奕契奏奎奐姜姘姿姣姨娃姥姪姚姦威姻孩宣宦室客宥封屎屏屍屋峙峒巷帝帥帟幽庠度建弈弭彥很待徊律徇後徉怒思怠急怎怨恍恰恨恢恆恃恬恫恪恤扁拜挖按拼拭持拮拽指拱拷�".split("");for(j=0;j!=D[171].length;++j)if(D[171][j].charCodeAt(0)!==65533){e[D[171][j]]=43776+j;d[43776+j]=D[171][j]}D[172]="����������������������������������������������������������������拯括拾拴挑挂政故斫施既春昭映昧是星昨昱昤曷柿染柱柔某柬架枯柵柩柯柄柑枴柚查枸柏柞柳枰柙柢柝柒歪殃殆段毒毗氟泉洋洲洪流津洌洱洞洗����������������������������������活洽派洶洛泵洹洧洸洩洮洵洎洫炫為炳炬炯炭炸炮炤爰牲牯牴狩狠狡玷珊玻玲珍珀玳甚甭畏界畎畋疫疤疥疢疣癸皆皇皈盈盆盃盅省盹相眉看盾盼眇矜砂研砌砍祆祉祈祇禹禺科秒秋穿突竿竽籽紂紅紀紉紇約紆缸美羿耄�".split("");for(j=0;j!=D[172].length;++j)if(D[172][j].charCodeAt(0)!==65533){e[D[172][j]]=44032+j;d[44032+j]=D[172][j]}D[173]="����������������������������������������������������������������耐耍耑耶胖胥胚胃胄背胡胛胎胞胤胝致舢苧范茅苣苛苦茄若茂茉苒苗英茁苜苔苑苞苓苟苯茆虐虹虻虺衍衫要觔計訂訃貞負赴赳趴軍軌述迦迢迪迥����������������������������������迭迫迤迨郊郎郁郃酋酊重閂限陋陌降面革韋韭音頁風飛食首香乘亳倌倍倣俯倦倥俸倩倖倆值借倚倒們俺倀倔倨俱倡個候倘俳修倭倪俾倫倉兼冤冥冢凍凌准凋剖剜剔剛剝匪卿原厝叟哨唐唁唷哼哥哲唆哺唔哩哭員唉哮哪�".split("");for(j=0;j!=D[173].length;++j)if(D[173][j].charCodeAt(0)!==65533){e[D[173][j]]=44288+j;d[44288+j]=D[173][j]}D[174]="����������������������������������������������������������������哦唧唇哽唏圃圄埂埔埋埃堉夏套奘奚娑娘娜娟娛娓姬娠娣娩娥娌娉孫屘宰害家宴宮宵容宸射屑展屐峭峽峻峪峨峰島崁峴差席師庫庭座弱徒徑徐恙����������������������������������恣恥恐恕恭恩息悄悟悚悍悔悌悅悖扇拳挈拿捎挾振捕捂捆捏捉挺捐挽挪挫挨捍捌效敉料旁旅時晉晏晃晒晌晅晁書朔朕朗校核案框桓根桂桔栩梳栗桌桑栽柴桐桀格桃株桅栓栘桁殊殉殷氣氧氨氦氤泰浪涕消涇浦浸海浙涓�".split("");for(j=0;j!=D[174].length;++j)if(D[174][j].charCodeAt(0)!==65533){e[D[174][j]]=44544+j;d[44544+j]=D[174][j]}D[175]="����������������������������������������������������������������浬涉浮浚浴浩涌涊浹涅浥涔烊烘烤烙烈烏爹特狼狹狽狸狷玆班琉珮珠珪珞畔畝畜畚留疾病症疲疳疽疼疹痂疸皋皰益盍盎眩真眠眨矩砰砧砸砝破砷����������������������������������砥砭砠砟砲祕祐祠祟祖神祝祗祚秤秣秧租秦秩秘窄窈站笆笑粉紡紗紋紊素索純紐紕級紜納紙紛缺罟羔翅翁耆耘耕耙耗耽耿胱脂胰脅胭胴脆胸胳脈能脊胼胯臭臬舀舐航舫舨般芻茫荒荔荊茸荐草茵茴荏茲茹茶茗荀茱茨荃�".split("");for(j=0;j!=D[175].length;++j)if(D[175][j].charCodeAt(0)!==65533){e[D[175][j]]=44800+j;d[44800+j]=D[175][j]}D[176]="����������������������������������������������������������������虔蚊蚪蚓蚤蚩蚌蚣蚜衰衷袁袂衽衹記訐討訌訕訊託訓訖訏訑豈豺豹財貢起躬軒軔軏辱送逆迷退迺迴逃追逅迸邕郡郝郢酒配酌釘針釗釜釙閃院陣陡����������������������������������陛陝除陘陞隻飢馬骨高鬥鬲鬼乾偺偽停假偃偌做偉健偶偎偕偵側偷偏倏偯偭兜冕凰剪副勒務勘動匐匏匙匿區匾參曼商啪啦啄啞啡啃啊唱啖問啕唯啤唸售啜唬啣唳啁啗圈國圉域堅堊堆埠埤基堂堵執培夠奢娶婁婉婦婪婀�".split("");for(j=0;j!=D[176].length;++j)if(D[176][j].charCodeAt(0)!==65533){e[D[176][j]]=45056+j;d[45056+j]=D[176][j]}D[177]="����������������������������������������������������������������娼婢婚婆婊孰寇寅寄寂宿密尉專將屠屜屝崇崆崎崛崖崢崑崩崔崙崤崧崗巢常帶帳帷康庸庶庵庾張強彗彬彩彫得徙從徘御徠徜恿患悉悠您惋悴惦悽����������������������������������情悻悵惜悼惘惕惆惟悸惚惇戚戛扈掠控捲掖探接捷捧掘措捱掩掉掃掛捫推掄授掙採掬排掏掀捻捩捨捺敝敖救教敗啟敏敘敕敔斜斛斬族旋旌旎晝晚晤晨晦晞曹勗望梁梯梢梓梵桿桶梱梧梗械梃棄梭梆梅梔條梨梟梡梂欲殺�".split("");for(j=0;j!=D[177].length;++j)if(D[177][j].charCodeAt(0)!==65533){e[D[177][j]]=45312+j;d[45312+j]=D[177][j]}D[178]="����������������������������������������������������������������毫毬氫涎涼淳淙液淡淌淤添淺清淇淋涯淑涮淞淹涸混淵淅淒渚涵淚淫淘淪深淮淨淆淄涪淬涿淦烹焉焊烽烯爽牽犁猜猛猖猓猙率琅琊球理現琍瓠瓶����������������������������������瓷甜產略畦畢異疏痔痕疵痊痍皎盔盒盛眷眾眼眶眸眺硫硃硎祥票祭移窒窕笠笨笛第符笙笞笮粒粗粕絆絃統紮紹紼絀細紳組累終紲紱缽羞羚翌翎習耜聊聆脯脖脣脫脩脰脤舂舵舷舶船莎莞莘荸莢莖莽莫莒莊莓莉莠荷荻荼�".split("");for(j=0;j!=D[178].length;++j)if(D[178][j].charCodeAt(0)!==65533){e[D[178][j]]=45568+j;d[45568+j]=D[178][j]}D[179]="����������������������������������������������������������������莆莧處彪蛇蛀蚶蛄蚵蛆蛋蚱蚯蛉術袞袈被袒袖袍袋覓規訪訝訣訥許設訟訛訢豉豚販責貫貨貪貧赧赦趾趺軛軟這逍通逗連速逝逐逕逞造透逢逖逛途����������������������������������部郭都酗野釵釦釣釧釭釩閉陪陵陳陸陰陴陶陷陬雀雪雩章竟頂頃魚鳥鹵鹿麥麻傢傍傅備傑傀傖傘傚最凱割剴創剩勞勝勛博厥啻喀喧啼喊喝喘喂喜喪喔喇喋喃喳單喟唾喲喚喻喬喱啾喉喫喙圍堯堪場堤堰報堡堝堠壹壺奠�".split("");for(j=0;j!=D[179].length;++j)if(D[179][j].charCodeAt(0)!==65533){e[D[179][j]]=45824+j;d[45824+j]=D[179][j]}D[180]="����������������������������������������������������������������婷媚婿媒媛媧孳孱寒富寓寐尊尋就嵌嵐崴嵇巽幅帽幀幃幾廊廁廂廄弼彭復循徨惑惡悲悶惠愜愣惺愕惰惻惴慨惱愎惶愉愀愒戟扉掣掌描揀揩揉揆揍����������������������������������插揣提握揖揭揮捶援揪換摒揚揹敞敦敢散斑斐斯普晰晴晶景暑智晾晷曾替期朝棺棕棠棘棗椅棟棵森棧棹棒棲棣棋棍植椒椎棉棚楮棻款欺欽殘殖殼毯氮氯氬港游湔渡渲湧湊渠渥渣減湛湘渤湖湮渭渦湯渴湍渺測湃渝渾滋�".split("");for(j=0;j!=D[180].length;++j)if(D[180][j].charCodeAt(0)!==65533){e[D[180][j]]=46080+j;d[46080+j]=D[180][j]}D[181]="����������������������������������������������������������������溉渙湎湣湄湲湩湟焙焚焦焰無然煮焜牌犄犀猶猥猴猩琺琪琳琢琥琵琶琴琯琛琦琨甥甦畫番痢痛痣痙痘痞痠登發皖皓皴盜睏短硝硬硯稍稈程稅稀窘����������������������������������窗窖童竣等策筆筐筒答筍筋筏筑粟粥絞結絨絕紫絮絲絡給絢絰絳善翔翕耋聒肅腕腔腋腑腎脹腆脾腌腓腴舒舜菩萃菸萍菠菅萋菁華菱菴著萊菰萌菌菽菲菊萸萎萄菜萇菔菟虛蛟蛙蛭蛔蛛蛤蛐蛞街裁裂袱覃視註詠評詞証詁�".split("");for(j=0;j!=D[181].length;++j)if(D[181][j].charCodeAt(0)!==65533){e[D[181][j]]=46336+j;d[46336+j]=D[181][j]}D[182]="����������������������������������������������������������������詔詛詐詆訴診訶詖象貂貯貼貳貽賁費賀貴買貶貿貸越超趁跎距跋跚跑跌跛跆軻軸軼辜逮逵週逸進逶鄂郵鄉郾酣酥量鈔鈕鈣鈉鈞鈍鈐鈇鈑閔閏開閑����������������������������������間閒閎隊階隋陽隅隆隍陲隄雁雅雄集雇雯雲韌項順須飧飪飯飩飲飭馮馭黃黍黑亂傭債傲傳僅傾催傷傻傯僇剿剷剽募勦勤勢勣匯嗟嗨嗓嗦嗎嗜嗇嗑嗣嗤嗯嗚嗡嗅嗆嗥嗉園圓塞塑塘塗塚塔填塌塭塊塢塒塋奧嫁嫉嫌媾媽媼�".split("");for(j=0;j!=D[182].length;++j)if(D[182][j].charCodeAt(0)!==65533){e[D[182][j]]=46592+j;d[46592+j]=D[182][j]}D[183]="����������������������������������������������������������������媳嫂媲嵩嵯幌幹廉廈弒彙徬微愚意慈感想愛惹愁愈慎慌慄慍愾愴愧愍愆愷戡戢搓搾搞搪搭搽搬搏搜搔損搶搖搗搆敬斟新暗暉暇暈暖暄暘暍會榔業����������������������������������楚楷楠楔極椰概楊楨楫楞楓楹榆楝楣楛歇歲毀殿毓毽溢溯滓溶滂源溝滇滅溥溘溼溺溫滑準溜滄滔溪溧溴煎煙煩煤煉照煜煬煦煌煥煞煆煨煖爺牒猷獅猿猾瑯瑚瑕瑟瑞瑁琿瑙瑛瑜當畸瘀痰瘁痲痱痺痿痴痳盞盟睛睫睦睞督�".split("");for(j=0;j!=D[183].length;++j)if(D[183][j].charCodeAt(0)!==65533){e[D[183][j]]=46848+j;d[46848+j]=D[183][j]}D[184]="����������������������������������������������������������������睹睪睬睜睥睨睢矮碎碰碗碘碌碉硼碑碓硿祺祿禁萬禽稜稚稠稔稟稞窟窠筷節筠筮筧粱粳粵經絹綑綁綏絛置罩罪署義羨群聖聘肆肄腱腰腸腥腮腳腫����������������������������������腹腺腦舅艇蒂葷落萱葵葦葫葉葬葛萼萵葡董葩葭葆虞虜號蛹蜓蜈蜇蜀蛾蛻蜂蜃蜆蜊衙裟裔裙補裘裝裡裊裕裒覜解詫該詳試詩詰誇詼詣誠話誅詭詢詮詬詹詻訾詨豢貊貉賊資賈賄貲賃賂賅跡跟跨路跳跺跪跤跦躲較載軾輊�".split("");for(j=0;j!=D[184].length;++j)if(D[184][j].charCodeAt(0)!==65533){e[D[184][j]]=47104+j;d[47104+j]=D[184][j]}D[185]="����������������������������������������������������������������辟農運遊道遂達逼違遐遇遏過遍遑逾遁鄒鄗酬酪酩釉鈷鉗鈸鈽鉀鈾鉛鉋鉤鉑鈴鉉鉍鉅鈹鈿鉚閘隘隔隕雍雋雉雊雷電雹零靖靴靶預頑頓頊頒頌飼飴����������������������������������飽飾馳馱馴髡鳩麂鼎鼓鼠僧僮僥僖僭僚僕像僑僱僎僩兢凳劃劂匱厭嗾嘀嘛嘗嗽嘔嘆嘉嘍嘎嗷嘖嘟嘈嘐嗶團圖塵塾境墓墊塹墅塽壽夥夢夤奪奩嫡嫦嫩嫗嫖嫘嫣孵寞寧寡寥實寨寢寤察對屢嶄嶇幛幣幕幗幔廓廖弊彆彰徹慇�".split("");for(j=0;j!=D[185].length;++j)if(D[185][j].charCodeAt(0)!==65533){e[D[185][j]]=47360+j;d[47360+j]=D[185][j]}D[186]="����������������������������������������������������������������愿態慷慢慣慟慚慘慵截撇摘摔撤摸摟摺摑摧搴摭摻敲斡旗旖暢暨暝榜榨榕槁榮槓構榛榷榻榫榴槐槍榭槌榦槃榣歉歌氳漳演滾漓滴漩漾漠漬漏漂漢����������������������������������滿滯漆漱漸漲漣漕漫漯澈漪滬漁滲滌滷熔熙煽熊熄熒爾犒犖獄獐瑤瑣瑪瑰瑭甄疑瘧瘍瘋瘉瘓盡監瞄睽睿睡磁碟碧碳碩碣禎福禍種稱窪窩竭端管箕箋筵算箝箔箏箸箇箄粹粽精綻綰綜綽綾綠緊綴網綱綺綢綿綵綸維緒緇綬�".split("");for(j=0;j!=D[186].length;++j)if(D[186][j].charCodeAt(0)!==65533){e[D[186][j]]=47616+j;d[47616+j]=D[186][j]}D[187]="����������������������������������������������������������������罰翠翡翟聞聚肇腐膀膏膈膊腿膂臧臺與舔舞艋蓉蒿蓆蓄蒙蒞蒲蒜蓋蒸蓀蓓蒐蒼蓑蓊蜿蜜蜻蜢蜥蜴蜘蝕蜷蜩裳褂裴裹裸製裨褚裯誦誌語誣認誡誓誤����������������������������������說誥誨誘誑誚誧豪貍貌賓賑賒赫趙趕跼輔輒輕輓辣遠遘遜遣遙遞遢遝遛鄙鄘鄞酵酸酷酴鉸銀銅銘銖鉻銓銜銨鉼銑閡閨閩閣閥閤隙障際雌雒需靼鞅韶頗領颯颱餃餅餌餉駁骯骰髦魁魂鳴鳶鳳麼鼻齊億儀僻僵價儂儈儉儅凜�".split("");for(j=0;j!=D[187].length;++j)if(D[187][j].charCodeAt(0)!==65533){e[D[187][j]]=47872+j;d[47872+j]=D[187][j]}D[188]="����������������������������������������������������������������劇劈劉劍劊勰厲嘮嘻嘹嘲嘿嘴嘩噓噎噗噴嘶嘯嘰墀墟增墳墜墮墩墦奭嬉嫻嬋嫵嬌嬈寮寬審寫層履嶝嶔幢幟幡廢廚廟廝廣廠彈影德徵慶慧慮慝慕憂����������������������������������慼慰慫慾憧憐憫憎憬憚憤憔憮戮摩摯摹撞撲撈撐撰撥撓撕撩撒撮播撫撚撬撙撢撳敵敷數暮暫暴暱樣樟槨樁樞標槽模樓樊槳樂樅槭樑歐歎殤毅毆漿潼澄潑潦潔澆潭潛潸潮澎潺潰潤澗潘滕潯潠潟熟熬熱熨牖犛獎獗瑩璋璃�".split("");for(j=0;j!=D[188].length;++j)if(D[188][j].charCodeAt(0)!==65533){e[D[188][j]]=48128+j;d[48128+j]=D[188][j]}D[189]="����������������������������������������������������������������瑾璀畿瘠瘩瘟瘤瘦瘡瘢皚皺盤瞎瞇瞌瞑瞋磋磅確磊碾磕碼磐稿稼穀稽稷稻窯窮箭箱範箴篆篇篁箠篌糊締練緯緻緘緬緝編緣線緞緩綞緙緲緹罵罷羯����������������������������������翩耦膛膜膝膠膚膘蔗蔽蔚蓮蔬蔭蔓蔑蔣蔡蔔蓬蔥蓿蔆螂蝴蝶蝠蝦蝸蝨蝙蝗蝌蝓衛衝褐複褒褓褕褊誼諒談諄誕請諸課諉諂調誰論諍誶誹諛豌豎豬賠賞賦賤賬賭賢賣賜質賡赭趟趣踫踐踝踢踏踩踟踡踞躺輝輛輟輩輦輪輜輞�".split("");for(j=0;j!=D[189].length;++j)if(D[189][j].charCodeAt(0)!==65533){e[D[189][j]]=48384+j;d[48384+j]=D[189][j]}D[190]="����������������������������������������������������������������輥適遮遨遭遷鄰鄭鄧鄱醇醉醋醃鋅銻銷鋪銬鋤鋁銳銼鋒鋇鋰銲閭閱霄霆震霉靠鞍鞋鞏頡頫頜颳養餓餒餘駝駐駟駛駑駕駒駙骷髮髯鬧魅魄魷魯鴆鴉����������������������������������鴃麩麾黎墨齒儒儘儔儐儕冀冪凝劑劓勳噙噫噹噩噤噸噪器噥噱噯噬噢噶壁墾壇壅奮嬝嬴學寰導彊憲憑憩憊懍憶憾懊懈戰擅擁擋撻撼據擄擇擂操撿擒擔撾整曆曉暹曄曇暸樽樸樺橙橫橘樹橄橢橡橋橇樵機橈歙歷氅濂澱澡�".split("");for(j=0;j!=D[190].length;++j)if(D[190][j].charCodeAt(0)!==65533){e[D[190][j]]=48640+j;d[48640+j]=D[190][j]}D[191]="����������������������������������������������������������������濃澤濁澧澳激澹澶澦澠澴熾燉燐燒燈燕熹燎燙燜燃燄獨璜璣璘璟璞瓢甌甍瘴瘸瘺盧盥瞠瞞瞟瞥磨磚磬磧禦積穎穆穌穋窺篙簑築篤篛篡篩篦糕糖縊����������������������������������縑縈縛縣縞縝縉縐罹羲翰翱翮耨膳膩膨臻興艘艙蕊蕙蕈蕨蕩蕃蕉蕭蕪蕞螃螟螞螢融衡褪褲褥褫褡親覦諦諺諫諱謀諜諧諮諾謁謂諷諭諳諶諼豫豭貓賴蹄踱踴蹂踹踵輻輯輸輳辨辦遵遴選遲遼遺鄴醒錠錶鋸錳錯錢鋼錫錄錚�".split("");for(j=0;j!=D[191].length;++j)if(D[191][j].charCodeAt(0)!==65533){e[D[191][j]]=48896+j;d[48896+j]=D[191][j]}D[192]="����������������������������������������������������������������錐錦錡錕錮錙閻隧隨險雕霎霑霖霍霓霏靛靜靦鞘頰頸頻頷頭頹頤餐館餞餛餡餚駭駢駱骸骼髻髭鬨鮑鴕鴣鴦鴨鴒鴛默黔龍龜優償儡儲勵嚎嚀嚐嚅嚇����������������������������������嚏壕壓壑壎嬰嬪嬤孺尷屨嶼嶺嶽嶸幫彌徽應懂懇懦懋戲戴擎擊擘擠擰擦擬擱擢擭斂斃曙曖檀檔檄檢檜櫛檣橾檗檐檠歜殮毚氈濘濱濟濠濛濤濫濯澀濬濡濩濕濮濰燧營燮燦燥燭燬燴燠爵牆獰獲璩環璦璨癆療癌盪瞳瞪瞰瞬�".split("");for(j=0;j!=D[192].length;++j)if(D[192][j].charCodeAt(0)!==65533){e[D[192][j]]=49152+j;d[49152+j]=D[192][j]}D[193]="����������������������������������������������������������������瞧瞭矯磷磺磴磯礁禧禪穗窿簇簍篾篷簌篠糠糜糞糢糟糙糝縮績繆縷縲繃縫總縱繅繁縴縹繈縵縿縯罄翳翼聱聲聰聯聳臆臃膺臂臀膿膽臉膾臨舉艱薪����������������������������������薄蕾薜薑薔薯薛薇薨薊虧蟀蟑螳蟒蟆螫螻螺蟈蟋褻褶襄褸褽覬謎謗謙講謊謠謝謄謐豁谿豳賺賽購賸賻趨蹉蹋蹈蹊轄輾轂轅輿避遽還邁邂邀鄹醣醞醜鍍鎂錨鍵鍊鍥鍋錘鍾鍬鍛鍰鍚鍔闊闋闌闈闆隱隸雖霜霞鞠韓顆颶餵騁�".split("");for(j=0;j!=D[193].length;++j)if(D[193][j].charCodeAt(0)!==65533){e[D[193][j]]=49408+j;d[49408+j]=D[193][j]}D[194]="����������������������������������������������������������������駿鮮鮫鮪鮭鴻鴿麋黏點黜黝黛鼾齋叢嚕嚮壙壘嬸彝懣戳擴擲擾攆擺擻擷斷曜朦檳檬櫃檻檸櫂檮檯歟歸殯瀉瀋濾瀆濺瀑瀏燻燼燾燸獷獵璧璿甕癖癘����������������������������������癒瞽瞿瞻瞼礎禮穡穢穠竄竅簫簧簪簞簣簡糧織繕繞繚繡繒繙罈翹翻職聶臍臏舊藏薩藍藐藉薰薺薹薦蟯蟬蟲蟠覆覲觴謨謹謬謫豐贅蹙蹣蹦蹤蹟蹕軀轉轍邇邃邈醫醬釐鎔鎊鎖鎢鎳鎮鎬鎰鎘鎚鎗闔闖闐闕離雜雙雛雞霤鞣鞦�".split("");for(j=0;j!=D[194].length;++j)if(D[194][j].charCodeAt(0)!==65533){e[D[194][j]]=49664+j;d[49664+j]=D[194][j]}D[195]="����������������������������������������������������������������鞭韹額顏題顎顓颺餾餿餽餮馥騎髁鬃鬆魏魎魍鯊鯉鯽鯈鯀鵑鵝鵠黠鼕鼬儳嚥壞壟壢寵龐廬懲懷懶懵攀攏曠曝櫥櫝櫚櫓瀛瀟瀨瀚瀝瀕瀘爆爍牘犢獸����������������������������������獺璽瓊瓣疇疆癟癡矇礙禱穫穩簾簿簸簽簷籀繫繭繹繩繪羅繳羶羹羸臘藩藝藪藕藤藥藷蟻蠅蠍蟹蟾襠襟襖襞譁譜識證譚譎譏譆譙贈贊蹼蹲躇蹶蹬蹺蹴轔轎辭邊邋醱醮鏡鏑鏟鏃鏈鏜鏝鏖鏢鏍鏘鏤鏗鏨關隴難霪霧靡韜韻類�".split("");for(j=0;j!=D[195].length;++j)if(D[195][j].charCodeAt(0)!==65533){e[D[195][j]]=49920+j;d[49920+j]=D[195][j]}D[196]="����������������������������������������������������������������願顛颼饅饉騖騙鬍鯨鯧鯖鯛鶉鵡鵲鵪鵬麒麗麓麴勸嚨嚷嚶嚴嚼壤孀孃孽寶巉懸懺攘攔攙曦朧櫬瀾瀰瀲爐獻瓏癢癥礦礪礬礫竇競籌籃籍糯糰辮繽繼����������������������������������纂罌耀臚艦藻藹蘑藺蘆蘋蘇蘊蠔蠕襤覺觸議譬警譯譟譫贏贍躉躁躅躂醴釋鐘鐃鏽闡霰飄饒饑馨騫騰騷騵鰓鰍鹹麵黨鼯齟齣齡儷儸囁囀囂夔屬巍懼懾攝攜斕曩櫻欄櫺殲灌爛犧瓖瓔癩矓籐纏續羼蘗蘭蘚蠣蠢蠡蠟襪襬覽譴�".split("");for(j=0;j!=D[196].length;++j)if(D[196][j].charCodeAt(0)!==65533){e[D[196][j]]=50176+j;d[50176+j]=D[196][j]}D[197]="����������������������������������������������������������������護譽贓躊躍躋轟辯醺鐮鐳鐵鐺鐸鐲鐫闢霸霹露響顧顥饗驅驃驀騾髏魔魑鰭鰥鶯鶴鷂鶸麝黯鼙齜齦齧儼儻囈囊囉孿巔巒彎懿攤權歡灑灘玀瓤疊癮癬����������������������������������禳籠籟聾聽臟襲襯觼讀贖贗躑躓轡酈鑄鑑鑒霽霾韃韁顫饕驕驍髒鬚鱉鰱鰾鰻鷓鷗鼴齬齪龔囌巖戀攣攫攪曬欐瓚竊籤籣籥纓纖纔臢蘸蘿蠱變邐邏鑣鑠鑤靨顯饜驚驛驗髓體髑鱔鱗鱖鷥麟黴囑壩攬灞癱癲矗罐羈蠶蠹衢讓讒�".split("");for(j=0;j!=D[197].length;++j)if(D[197][j].charCodeAt(0)!==65533){e[D[197][j]]=50432+j;d[50432+j]=D[197][j]}D[198]="����������������������������������������������������������������讖艷贛釀鑪靂靈靄韆顰驟鬢魘鱟鷹鷺鹼鹽鼇齷齲廳欖灣籬籮蠻觀躡釁鑲鑰顱饞髖鬣黌灤矚讚鑷韉驢驥纜讜躪釅鑽鑾鑼鱷鱸黷豔鑿鸚爨驪鬱鸛鸞籲���������������������������������������������������������������������������������������������������������������������������������".split("");for(j=0;j!=D[198].length;++j)if(D[198][j].charCodeAt(0)!==65533){e[D[198][j]]=50688+j;d[50688+j]=D[198][j]}D[201]="����������������������������������������������������������������乂乜凵匚厂万丌乇亍囗兀屮彳丏冇与丮亓仂仉仈冘勼卬厹圠夃夬尐巿旡殳毌气爿丱丼仨仜仩仡仝仚刌匜卌圢圣夗夯宁宄尒尻屴屳帄庀庂忉戉扐氕����������������������������������氶汃氿氻犮犰玊禸肊阞伎优伬仵伔仱伀价伈伝伂伅伢伓伄仴伒冱刓刉刐劦匢匟卍厊吇囡囟圮圪圴夼妀奼妅奻奾奷奿孖尕尥屼屺屻屾巟幵庄异弚彴忕忔忏扜扞扤扡扦扢扙扠扚扥旯旮朾朹朸朻机朿朼朳氘汆汒汜汏汊汔汋�".split("");for(j=0;j!=D[201].length;++j)if(D[201][j].charCodeAt(0)!==65533){e[D[201][j]]=51456+j;d[51456+j]=D[201][j]}D[202]="����������������������������������������������������������������汌灱牞犴犵玎甪癿穵网艸艼芀艽艿虍襾邙邗邘邛邔阢阤阠阣佖伻佢佉体佤伾佧佒佟佁佘伭伳伿佡冏冹刜刞刡劭劮匉卣卲厎厏吰吷吪呔呅吙吜吥吘����������������������������������吽呏呁吨吤呇囮囧囥坁坅坌坉坋坒夆奀妦妘妠妗妎妢妐妏妧妡宎宒尨尪岍岏岈岋岉岒岊岆岓岕巠帊帎庋庉庌庈庍弅弝彸彶忒忑忐忭忨忮忳忡忤忣忺忯忷忻怀忴戺抃抌抎抏抔抇扱扻扺扰抁抈扷扽扲扴攷旰旴旳旲旵杅杇�".split("");for(j=0;j!=D[202].length;++j)if(D[202][j].charCodeAt(0)!==65533){e[D[202][j]]=51712+j;d[51712+j]=D[202][j]}D[203]="����������������������������������������������������������������杙杕杌杈杝杍杚杋毐氙氚汸汧汫沄沋沏汱汯汩沚汭沇沕沜汦汳汥汻沎灴灺牣犿犽狃狆狁犺狅玕玗玓玔玒町甹疔疕皁礽耴肕肙肐肒肜芐芏芅芎芑芓����������������������������������芊芃芄豸迉辿邟邡邥邞邧邠阰阨阯阭丳侘佼侅佽侀侇佶佴侉侄佷佌侗佪侚佹侁佸侐侜侔侞侒侂侕佫佮冞冼冾刵刲刳剆刱劼匊匋匼厒厔咇呿咁咑咂咈呫呺呾呥呬呴呦咍呯呡呠咘呣呧呤囷囹坯坲坭坫坱坰坶垀坵坻坳坴坢�".split("");for(j=0;j!=D[203].length;++j)if(D[203][j].charCodeAt(0)!==65533){e[D[203][j]]=51968+j;d[51968+j]=D[203][j]}D[204]="����������������������������������������������������������������坨坽夌奅妵妺姏姎妲姌姁妶妼姃姖妱妽姀姈妴姇孢孥宓宕屄屇岮岤岠岵岯岨岬岟岣岭岢岪岧岝岥岶岰岦帗帔帙弨弢弣弤彔徂彾彽忞忥怭怦怙怲怋����������������������������������怴怊怗怳怚怞怬怢怍怐怮怓怑怌怉怜戔戽抭抴拑抾抪抶拊抮抳抯抻抩抰抸攽斨斻昉旼昄昒昈旻昃昋昍昅旽昑昐曶朊枅杬枎枒杶杻枘枆构杴枍枌杺枟枑枙枃杽极杸杹枔欥殀歾毞氝沓泬泫泮泙沶泔沭泧沷泐泂沺泃泆泭泲�".split("");for(j=0;j!=D[204].length;++j)if(D[204][j].charCodeAt(0)!==65533){e[D[204][j]]=52224+j;d[52224+j]=D[204][j]}D[205]="����������������������������������������������������������������泒泝沴沊沝沀泞泀洰泍泇沰泹泏泩泑炔炘炅炓炆炄炑炖炂炚炃牪狖狋狘狉狜狒狔狚狌狑玤玡玭玦玢玠玬玝瓝瓨甿畀甾疌疘皯盳盱盰盵矸矼矹矻矺����������������������������������矷祂礿秅穸穻竻籵糽耵肏肮肣肸肵肭舠芠苀芫芚芘芛芵芧芮芼芞芺芴芨芡芩苂芤苃芶芢虰虯虭虮豖迒迋迓迍迖迕迗邲邴邯邳邰阹阽阼阺陃俍俅俓侲俉俋俁俔俜俙侻侳俛俇俖侺俀侹俬剄剉勀勂匽卼厗厖厙厘咺咡咭咥哏�".split("");for(j=0;j!=D[205].length;++j)if(D[205][j].charCodeAt(0)!==65533){e[D[205][j]]=52480+j;d[52480+j]=D[205][j]}D[206]="����������������������������������������������������������������哃茍咷咮哖咶哅哆咠呰咼咢咾呲哞咰垵垞垟垤垌垗垝垛垔垘垏垙垥垚垕壴复奓姡姞姮娀姱姝姺姽姼姶姤姲姷姛姩姳姵姠姾姴姭宨屌峐峘峌峗峋峛����������������������������������峞峚峉峇峊峖峓峔峏峈峆峎峟峸巹帡帢帣帠帤庰庤庢庛庣庥弇弮彖徆怷怹恔恲恞恅恓恇恉恛恌恀恂恟怤恄恘恦恮扂扃拏挍挋拵挎挃拫拹挏挌拸拶挀挓挔拺挕拻拰敁敃斪斿昶昡昲昵昜昦昢昳昫昺昝昴昹昮朏朐柁柲柈枺�".split("");for(j=0;j!=D[206].length;++j)if(D[206][j].charCodeAt(0)!==65533){e[D[206][j]]=52736+j;d[52736+j]=D[206][j]}D[207]="����������������������������������������������������������������柜枻柸柘柀枷柅柫柤柟枵柍枳柷柶柮柣柂枹柎柧柰枲柼柆柭柌枮柦柛柺柉柊柃柪柋欨殂殄殶毖毘毠氠氡洨洴洭洟洼洿洒洊泚洳洄洙洺洚洑洀洝浂����������������������������������洁洘洷洃洏浀洇洠洬洈洢洉洐炷炟炾炱炰炡炴炵炩牁牉牊牬牰牳牮狊狤狨狫狟狪狦狣玅珌珂珈珅玹玶玵玴珫玿珇玾珃珆玸珋瓬瓮甮畇畈疧疪癹盄眈眃眄眅眊盷盻盺矧矨砆砑砒砅砐砏砎砉砃砓祊祌祋祅祄秕种秏秖秎窀�".split("");for(j=0;j!=D[207].length;++j)if(D[207][j].charCodeAt(0)!==65533){e[D[207][j]]=52992+j;d[52992+j]=D[207][j]}D[208]="����������������������������������������������������������������穾竑笀笁籺籸籹籿粀粁紃紈紁罘羑羍羾耇耎耏耔耷胘胇胠胑胈胂胐胅胣胙胜胊胕胉胏胗胦胍臿舡芔苙苾苹茇苨茀苕茺苫苖苴苬苡苲苵茌苻苶苰苪����������������������������������苤苠苺苳苭虷虴虼虳衁衎衧衪衩觓訄訇赲迣迡迮迠郱邽邿郕郅邾郇郋郈釔釓陔陏陑陓陊陎倞倅倇倓倢倰倛俵俴倳倷倬俶俷倗倜倠倧倵倯倱倎党冔冓凊凄凅凈凎剡剚剒剞剟剕剢勍匎厞唦哢唗唒哧哳哤唚哿唄唈哫唑唅哱�".split("");for(j=0;j!=D[208].length;++j)if(D[208][j].charCodeAt(0)!==65533){e[D[208][j]]=53248+j;d[53248+j]=D[208][j]}D[209]="����������������������������������������������������������������唊哻哷哸哠唎唃唋圁圂埌堲埕埒垺埆垽垼垸垶垿埇埐垹埁夎奊娙娖娭娮娕娏娗娊娞娳孬宧宭宬尃屖屔峬峿峮峱峷崀峹帩帨庨庮庪庬弳弰彧恝恚恧����������������������������������恁悢悈悀悒悁悝悃悕悛悗悇悜悎戙扆拲挐捖挬捄捅挶捃揤挹捋捊挼挩捁挴捘捔捙挭捇挳捚捑挸捗捀捈敊敆旆旃旄旂晊晟晇晑朒朓栟栚桉栲栳栻桋桏栖栱栜栵栫栭栯桎桄栴栝栒栔栦栨栮桍栺栥栠欬欯欭欱欴歭肂殈毦毤�".split("");for(j=0;j!=D[209].length;++j)if(D[209][j].charCodeAt(0)!==65533){e[D[209][j]]=53504+j;d[53504+j]=D[209][j]}D[210]="����������������������������������������������������������������毨毣毢毧氥浺浣浤浶洍浡涒浘浢浭浯涑涍淯浿涆浞浧浠涗浰浼浟涂涘洯浨涋浾涀涄洖涃浻浽浵涐烜烓烑烝烋缹烢烗烒烞烠烔烍烅烆烇烚烎烡牂牸����������������������������������牷牶猀狺狴狾狶狳狻猁珓珙珥珖玼珧珣珩珜珒珛珔珝珚珗珘珨瓞瓟瓴瓵甡畛畟疰痁疻痄痀疿疶疺皊盉眝眛眐眓眒眣眑眕眙眚眢眧砣砬砢砵砯砨砮砫砡砩砳砪砱祔祛祏祜祓祒祑秫秬秠秮秭秪秜秞秝窆窉窅窋窌窊窇竘笐�".split("");for(j=0;j!=D[210].length;++j)if(D[210][j].charCodeAt(0)!==65533){e[D[210][j]]=53760+j;d[53760+j]=D[210][j]}D[211]="����������������������������������������������������������������笄笓笅笏笈笊笎笉笒粄粑粊粌粈粍粅紞紝紑紎紘紖紓紟紒紏紌罜罡罞罠罝罛羖羒翃翂翀耖耾耹胺胲胹胵脁胻脀舁舯舥茳茭荄茙荑茥荖茿荁茦茜茢����������������������������������荂荎茛茪茈茼荍茖茤茠茷茯茩荇荅荌荓茞茬荋茧荈虓虒蚢蚨蚖蚍蚑蚞蚇蚗蚆蚋蚚蚅蚥蚙蚡蚧蚕蚘蚎蚝蚐蚔衃衄衭衵衶衲袀衱衿衯袃衾衴衼訒豇豗豻貤貣赶赸趵趷趶軑軓迾迵适迿迻逄迼迶郖郠郙郚郣郟郥郘郛郗郜郤酐�".split("");for(j=0;j!=D[211].length;++j)if(D[211][j].charCodeAt(0)!==65533){e[D[211][j]]=54016+j;d[54016+j]=D[211][j]}D[212]="����������������������������������������������������������������酎酏釕釢釚陜陟隼飣髟鬯乿偰偪偡偞偠偓偋偝偲偈偍偁偛偊偢倕偅偟偩偫偣偤偆偀偮偳偗偑凐剫剭剬剮勖勓匭厜啵啶唼啍啐唴唪啑啢唶唵唰啒啅����������������������������������唌唲啥啎唹啈唭唻啀啋圊圇埻堔埢埶埜埴堀埭埽堈埸堋埳埏堇埮埣埲埥埬埡堎埼堐埧堁堌埱埩埰堍堄奜婠婘婕婧婞娸娵婭婐婟婥婬婓婤婗婃婝婒婄婛婈媎娾婍娹婌婰婩婇婑婖婂婜孲孮寁寀屙崞崋崝崚崠崌崨崍崦崥崏�".split("");for(j=0;j!=D[212].length;++j)if(D[212][j].charCodeAt(0)!==65533){e[D[212][j]]=54272+j;d[54272+j]=D[212][j]}D[213]="����������������������������������������������������������������崰崒崣崟崮帾帴庱庴庹庲庳弶弸徛徖徟悊悐悆悾悰悺惓惔惏惤惙惝惈悱惛悷惊悿惃惍惀挲捥掊掂捽掽掞掭掝掗掫掎捯掇掐据掯捵掜捭掮捼掤挻掟����������������������������������捸掅掁掑掍捰敓旍晥晡晛晙晜晢朘桹梇梐梜桭桮梮梫楖桯梣梬梩桵桴梲梏桷梒桼桫桲梪梀桱桾梛梖梋梠梉梤桸桻梑梌梊桽欶欳欷欸殑殏殍殎殌氪淀涫涴涳湴涬淩淢涷淶淔渀淈淠淟淖涾淥淜淝淛淴淊涽淭淰涺淕淂淏淉�".split("");for(j=0;j!=D[213].length;++j)if(D[213][j].charCodeAt(0)!==65533){e[D[213][j]]=54528+j;d[54528+j]=D[213][j]}D[214]="����������������������������������������������������������������淐淲淓淽淗淍淣涻烺焍烷焗烴焌烰焄烳焐烼烿焆焓焀烸烶焋焂焎牾牻牼牿猝猗猇猑猘猊猈狿猏猞玈珶珸珵琄琁珽琇琀珺珼珿琌琋珴琈畤畣痎痒痏����������������������������������痋痌痑痐皏皉盓眹眯眭眱眲眴眳眽眥眻眵硈硒硉硍硊硌砦硅硐祤祧祩祪祣祫祡离秺秸秶秷窏窔窐笵筇笴笥笰笢笤笳笘笪笝笱笫笭笯笲笸笚笣粔粘粖粣紵紽紸紶紺絅紬紩絁絇紾紿絊紻紨罣羕羜羝羛翊翋翍翐翑翇翏翉耟�".split("");for(j=0;j!=D[214].length;++j)if(D[214][j].charCodeAt(0)!==65533){e[D[214][j]]=54784+j;d[54784+j]=D[214][j]}D[215]="����������������������������������������������������������������耞耛聇聃聈脘脥脙脛脭脟脬脞脡脕脧脝脢舑舸舳舺舴舲艴莐莣莨莍荺荳莤荴莏莁莕莙荵莔莩荽莃莌莝莛莪莋荾莥莯莈莗莰荿莦莇莮荶莚虙虖蚿蚷����������������������������������蛂蛁蛅蚺蚰蛈蚹蚳蚸蛌蚴蚻蚼蛃蚽蚾衒袉袕袨袢袪袚袑袡袟袘袧袙袛袗袤袬袌袓袎覂觖觙觕訰訧訬訞谹谻豜豝豽貥赽赻赹趼跂趹趿跁軘軞軝軜軗軠軡逤逋逑逜逌逡郯郪郰郴郲郳郔郫郬郩酖酘酚酓酕釬釴釱釳釸釤釹釪�".split("");for(j=0;j!=D[215].length;++j)if(D[215][j].charCodeAt(0)!==65533){e[D[215][j]]=55040+j;d[55040+j]=D[215][j]}D[216]="����������������������������������������������������������������釫釷釨釮镺閆閈陼陭陫陱陯隿靪頄飥馗傛傕傔傞傋傣傃傌傎傝偨傜傒傂傇兟凔匒匑厤厧喑喨喥喭啷噅喢喓喈喏喵喁喣喒喤啽喌喦啿喕喡喎圌堩堷����������������������������������堙堞堧堣堨埵塈堥堜堛堳堿堶堮堹堸堭堬堻奡媯媔媟婺媢媞婸媦婼媥媬媕媮娷媄媊媗媃媋媩婻婽媌媜媏媓媝寪寍寋寔寑寊寎尌尰崷嵃嵫嵁嵋崿崵嵑嵎嵕崳崺嵒崽崱嵙嵂崹嵉崸崼崲崶嵀嵅幄幁彘徦徥徫惉悹惌惢惎惄愔�".split("");for(j=0;j!=D[216].length;++j)if(D[216][j].charCodeAt(0)!==65533){e[D[216][j]]=55296+j;d[55296+j]=D[216][j]}D[217]="����������������������������������������������������������������惲愊愖愅惵愓惸惼惾惁愃愘愝愐惿愄愋扊掔掱掰揎揥揨揯揃撝揳揊揠揶揕揲揵摡揟掾揝揜揄揘揓揂揇揌揋揈揰揗揙攲敧敪敤敜敨敥斌斝斞斮旐旒����������������������������������晼晬晻暀晱晹晪晲朁椌棓椄棜椪棬棪棱椏棖棷棫棤棶椓椐棳棡椇棌椈楰梴椑棯棆椔棸棐棽棼棨椋椊椗棎棈棝棞棦棴棑椆棔棩椕椥棇欹欻欿欼殔殗殙殕殽毰毲毳氰淼湆湇渟湉溈渼渽湅湢渫渿湁湝湳渜渳湋湀湑渻渃渮湞�".split("");for(j=0;j!=D[217].length;++j)if(D[217][j].charCodeAt(0)!==65533){e[D[217][j]]=55552+j;d[55552+j]=D[217][j]}D[218]="����������������������������������������������������������������湨湜湡渱渨湠湱湫渹渢渰湓湥渧湸湤湷湕湹湒湦渵渶湚焠焞焯烻焮焱焣焥焢焲焟焨焺焛牋牚犈犉犆犅犋猒猋猰猢猱猳猧猲猭猦猣猵猌琮琬琰琫琖����������������������������������琚琡琭琱琤琣琝琩琠琲瓻甯畯畬痧痚痡痦痝痟痤痗皕皒盚睆睇睄睍睅睊睎睋睌矞矬硠硤硥硜硭硱硪确硰硩硨硞硢祴祳祲祰稂稊稃稌稄窙竦竤筊笻筄筈筌筎筀筘筅粢粞粨粡絘絯絣絓絖絧絪絏絭絜絫絒絔絩絑絟絎缾缿罥�".split("");for(j=0;j!=D[218].length;++j)if(D[218][j].charCodeAt(0)!==65533){e[D[218][j]]=55808+j;d[55808+j]=D[218][j]}D[219]="����������������������������������������������������������������罦羢羠羡翗聑聏聐胾胔腃腊腒腏腇脽腍脺臦臮臷臸臹舄舼舽舿艵茻菏菹萣菀菨萒菧菤菼菶萐菆菈菫菣莿萁菝菥菘菿菡菋菎菖菵菉萉萏菞萑萆菂菳����������������������������������菕菺菇菑菪萓菃菬菮菄菻菗菢萛菛菾蛘蛢蛦蛓蛣蛚蛪蛝蛫蛜蛬蛩蛗蛨蛑衈衖衕袺裗袹袸裀袾袶袼袷袽袲褁裉覕覘覗觝觚觛詎詍訹詙詀詗詘詄詅詒詈詑詊詌詏豟貁貀貺貾貰貹貵趄趀趉跘跓跍跇跖跜跏跕跙跈跗跅軯軷軺�".split("");for(j=0;j!=D[219].length;++j)if(D[219][j].charCodeAt(0)!==65533){e[D[219][j]]=56064+j;d[56064+j]=D[219][j]}D[220]="����������������������������������������������������������������軹軦軮軥軵軧軨軶軫軱軬軴軩逭逴逯鄆鄬鄄郿郼鄈郹郻鄁鄀鄇鄅鄃酡酤酟酢酠鈁鈊鈥鈃鈚鈦鈏鈌鈀鈒釿釽鈆鈄鈧鈂鈜鈤鈙鈗鈅鈖镻閍閌閐隇陾隈����������������������������������隉隃隀雂雈雃雱雰靬靰靮頇颩飫鳦黹亃亄亶傽傿僆傮僄僊傴僈僂傰僁傺傱僋僉傶傸凗剺剸剻剼嗃嗛嗌嗐嗋嗊嗝嗀嗔嗄嗩喿嗒喍嗏嗕嗢嗖嗈嗲嗍嗙嗂圔塓塨塤塏塍塉塯塕塎塝塙塥塛堽塣塱壼嫇嫄嫋媺媸媱媵媰媿嫈媻嫆�".split("");for(j=0;j!=D[220].length;++j)if(D[220][j].charCodeAt(0)!==65533){e[D[220][j]]=56320+j;d[56320+j]=D[220][j]}D[221]="����������������������������������������������������������������媷嫀嫊媴媶嫍媹媐寖寘寙尟尳嵱嵣嵊嵥嵲嵬嵞嵨嵧嵢巰幏幎幊幍幋廅廌廆廋廇彀徯徭惷慉慊愫慅愶愲愮慆愯慏愩慀戠酨戣戥戤揅揱揫搐搒搉搠搤����������������������������������搳摃搟搕搘搹搷搢搣搌搦搰搨摁搵搯搊搚摀搥搧搋揧搛搮搡搎敯斒旓暆暌暕暐暋暊暙暔晸朠楦楟椸楎楢楱椿楅楪椹楂楗楙楺楈楉椵楬椳椽楥棰楸椴楩楀楯楄楶楘楁楴楌椻楋椷楜楏楑椲楒椯楻椼歆歅歃歂歈歁殛嗀毻毼�".split("");for(j=0;j!=D[221].length;++j)if(D[221][j].charCodeAt(0)!==65533){e[D[221][j]]=56576+j;d[56576+j]=D[221][j]}D[222]="����������������������������������������������������������������毹毷毸溛滖滈溏滀溟溓溔溠溱溹滆滒溽滁溞滉溷溰滍溦滏溲溾滃滜滘溙溒溎溍溤溡溿溳滐滊溗溮溣煇煔煒煣煠煁煝煢煲煸煪煡煂煘煃煋煰煟煐煓����������������������������������煄煍煚牏犍犌犑犐犎猼獂猻猺獀獊獉瑄瑊瑋瑒瑑瑗瑀瑏瑐瑎瑂瑆瑍瑔瓡瓿瓾瓽甝畹畷榃痯瘏瘃痷痾痼痹痸瘐痻痶痭痵痽皙皵盝睕睟睠睒睖睚睩睧睔睙睭矠碇碚碔碏碄碕碅碆碡碃硹碙碀碖硻祼禂祽祹稑稘稙稒稗稕稢稓�".split("");for(j=0;j!=D[222].length;++j)if(D[222][j].charCodeAt(0)!==65533){e[D[222][j]]=56832+j;d[56832+j]=D[222][j]}D[223]="����������������������������������������������������������������稛稐窣窢窞竫筦筤筭筴筩筲筥筳筱筰筡筸筶筣粲粴粯綈綆綀綍絿綅絺綎絻綃絼綌綔綄絽綒罭罫罧罨罬羦羥羧翛翜耡腤腠腷腜腩腛腢腲朡腞腶腧腯����������������������������������腄腡舝艉艄艀艂艅蓱萿葖葶葹蒏蒍葥葑葀蒆葧萰葍葽葚葙葴葳葝蔇葞萷萺萴葺葃葸萲葅萩菙葋萯葂萭葟葰萹葎葌葒葯蓅蒎萻葇萶萳葨葾葄萫葠葔葮葐蜋蜄蛷蜌蛺蛖蛵蝍蛸蜎蜉蜁蛶蜍蜅裖裋裍裎裞裛裚裌裐覅覛觟觥觤�".split("");for(j=0;j!=D[223].length;++j)if(D[223][j].charCodeAt(0)!==65533){e[D[223][j]]=57088+j;d[57088+j]=D[223][j]}D[224]="����������������������������������������������������������������觡觠觢觜触詶誆詿詡訿詷誂誄詵誃誁詴詺谼豋豊豥豤豦貆貄貅賌赨赩趑趌趎趏趍趓趔趐趒跰跠跬跱跮跐跩跣跢跧跲跫跴輆軿輁輀輅輇輈輂輋遒逿����������������������������������遄遉逽鄐鄍鄏鄑鄖鄔鄋鄎酮酯鉈鉒鈰鈺鉦鈳鉥鉞銃鈮鉊鉆鉭鉬鉏鉠鉧鉯鈶鉡鉰鈱鉔鉣鉐鉲鉎鉓鉌鉖鈲閟閜閞閛隒隓隑隗雎雺雽雸雵靳靷靸靲頏頍頎颬飶飹馯馲馰馵骭骫魛鳪鳭鳧麀黽僦僔僗僨僳僛僪僝僤僓僬僰僯僣僠�".split("");for(j=0;j!=D[224].length;++j)if(D[224][j].charCodeAt(0)!==65533){e[D[224][j]]=57344+j;d[57344+j]=D[224][j]}D[225]="����������������������������������������������������������������凘劀劁勩勫匰厬嘧嘕嘌嘒嗼嘏嘜嘁嘓嘂嗺嘝嘄嗿嗹墉塼墐墘墆墁塿塴墋塺墇墑墎塶墂墈塻墔墏壾奫嫜嫮嫥嫕嫪嫚嫭嫫嫳嫢嫠嫛嫬嫞嫝嫙嫨嫟孷寠����������������������������������寣屣嶂嶀嵽嶆嵺嶁嵷嶊嶉嶈嵾嵼嶍嵹嵿幘幙幓廘廑廗廎廜廕廙廒廔彄彃彯徶愬愨慁慞慱慳慒慓慲慬憀慴慔慺慛慥愻慪慡慖戩戧戫搫摍摛摝摴摶摲摳摽摵摦撦摎撂摞摜摋摓摠摐摿搿摬摫摙摥摷敳斠暡暠暟朅朄朢榱榶槉�".split("");for(j=0;j!=D[225].length;++j)if(D[225][j].charCodeAt(0)!==65533){e[D[225][j]]=57600+j;d[57600+j]=D[225][j]}D[226]="����������������������������������������������������������������榠槎榖榰榬榼榑榙榎榧榍榩榾榯榿槄榽榤槔榹槊榚槏榳榓榪榡榞槙榗榐槂榵榥槆歊歍歋殞殟殠毃毄毾滎滵滱漃漥滸漷滻漮漉潎漙漚漧漘漻漒滭漊����������������������������������漶潳滹滮漭潀漰漼漵滫漇漎潃漅滽滶漹漜滼漺漟漍漞漈漡熇熐熉熀熅熂熏煻熆熁熗牄牓犗犕犓獃獍獑獌瑢瑳瑱瑵瑲瑧瑮甀甂甃畽疐瘖瘈瘌瘕瘑瘊瘔皸瞁睼瞅瞂睮瞀睯睾瞃碲碪碴碭碨硾碫碞碥碠碬碢碤禘禊禋禖禕禔禓�".split("");for(j=0;j!=D[226].length;++j)if(D[226][j].charCodeAt(0)!==65533){e[D[226][j]]=57856+j;d[57856+j]=D[226][j]}D[227]="����������������������������������������������������������������禗禈禒禐稫穊稰稯稨稦窨窫窬竮箈箜箊箑箐箖箍箌箛箎箅箘劄箙箤箂粻粿粼粺綧綷緂綣綪緁緀緅綝緎緄緆緋緌綯綹綖綼綟綦綮綩綡緉罳翢翣翥翞����������������������������������耤聝聜膉膆膃膇膍膌膋舕蒗蒤蒡蒟蒺蓎蓂蒬蒮蒫蒹蒴蓁蓍蒪蒚蒱蓐蒝蒧蒻蒢蒔蓇蓌蒛蒩蒯蒨蓖蒘蒶蓏蒠蓗蓔蓒蓛蒰蒑虡蜳蜣蜨蝫蝀蜮蜞蜡蜙蜛蝃蜬蝁蜾蝆蜠蜲蜪蜭蜼蜒蜺蜱蜵蝂蜦蜧蜸蜤蜚蜰蜑裷裧裱裲裺裾裮裼裶裻�".split("");for(j=0;j!=D[227].length;++j)if(D[227][j].charCodeAt(0)!==65533){e[D[227][j]]=58112+j;d[58112+j]=D[227][j]}D[228]="����������������������������������������������������������������裰裬裫覝覡覟覞觩觫觨誫誙誋誒誏誖谽豨豩賕賏賗趖踉踂跿踍跽踊踃踇踆踅跾踀踄輐輑輎輍鄣鄜鄠鄢鄟鄝鄚鄤鄡鄛酺酲酹酳銥銤鉶銛鉺銠銔銪銍����������������������������������銦銚銫鉹銗鉿銣鋮銎銂銕銢鉽銈銡銊銆銌銙銧鉾銇銩銝銋鈭隞隡雿靘靽靺靾鞃鞀鞂靻鞄鞁靿韎韍頖颭颮餂餀餇馝馜駃馹馻馺駂馽駇骱髣髧鬾鬿魠魡魟鳱鳲鳵麧僿儃儰僸儆儇僶僾儋儌僽儊劋劌勱勯噈噂噌嘵噁噊噉噆噘�".split("");for(j=0;j!=D[228].length;++j)if(D[228][j].charCodeAt(0)!==65533){e[D[228][j]]=58368+j;d[58368+j]=D[228][j]}D[229]="����������������������������������������������������������������噚噀嘳嘽嘬嘾嘸嘪嘺圚墫墝墱墠墣墯墬墥墡壿嫿嫴嫽嫷嫶嬃嫸嬂嫹嬁嬇嬅嬏屧嶙嶗嶟嶒嶢嶓嶕嶠嶜嶡嶚嶞幩幝幠幜緳廛廞廡彉徲憋憃慹憱憰憢憉����������������������������������憛憓憯憭憟憒憪憡憍慦憳戭摮摰撖撠撅撗撜撏撋撊撌撣撟摨撱撘敶敺敹敻斲斳暵暰暩暲暷暪暯樀樆樗槥槸樕槱槤樠槿槬槢樛樝槾樧槲槮樔槷槧橀樈槦槻樍槼槫樉樄樘樥樏槶樦樇槴樖歑殥殣殢殦氁氀毿氂潁漦潾澇濆澒�".split("");for(j=0;j!=D[229].length;++j)if(D[229][j].charCodeAt(0)!==65533){e[D[229][j]]=58624+j;d[58624+j]=D[229][j]}D[230]="����������������������������������������������������������������澍澉澌潢潏澅潚澖潶潬澂潕潲潒潐潗澔澓潝漀潡潫潽潧澐潓澋潩潿澕潣潷潪潻熲熯熛熰熠熚熩熵熝熥熞熤熡熪熜熧熳犘犚獘獒獞獟獠獝獛獡獚獙����������������������������������獢璇璉璊璆璁瑽璅璈瑼瑹甈甇畾瘥瘞瘙瘝瘜瘣瘚瘨瘛皜皝皞皛瞍瞏瞉瞈磍碻磏磌磑磎磔磈磃磄磉禚禡禠禜禢禛歶稹窲窴窳箷篋箾箬篎箯箹篊箵糅糈糌糋緷緛緪緧緗緡縃緺緦緶緱緰緮緟罶羬羰羭翭翫翪翬翦翨聤聧膣膟�".split("");for(j=0;j!=D[230].length;++j)if(D[230][j].charCodeAt(0)!==65533){e[D[230][j]]=58880+j;d[58880+j]=D[230][j]}D[231]="����������������������������������������������������������������膞膕膢膙膗舖艏艓艒艐艎艑蔤蔻蔏蔀蔩蔎蔉蔍蔟蔊蔧蔜蓻蔫蓺蔈蔌蓴蔪蓲蔕蓷蓫蓳蓼蔒蓪蓩蔖蓾蔨蔝蔮蔂蓽蔞蓶蔱蔦蓧蓨蓰蓯蓹蔘蔠蔰蔋蔙蔯虢����������������������������������蝖蝣蝤蝷蟡蝳蝘蝔蝛蝒蝡蝚蝑蝞蝭蝪蝐蝎蝟蝝蝯蝬蝺蝮蝜蝥蝏蝻蝵蝢蝧蝩衚褅褌褔褋褗褘褙褆褖褑褎褉覢覤覣觭觰觬諏諆誸諓諑諔諕誻諗誾諀諅諘諃誺誽諙谾豍貏賥賟賙賨賚賝賧趠趜趡趛踠踣踥踤踮踕踛踖踑踙踦踧�".split("");for(j=0;j!=D[231].length;++j)if(D[231][j].charCodeAt(0)!==65533){e[D[231][j]]=59136+j;d[59136+j]=D[231][j]}D[232]="����������������������������������������������������������������踔踒踘踓踜踗踚輬輤輘輚輠輣輖輗遳遰遯遧遫鄯鄫鄩鄪鄲鄦鄮醅醆醊醁醂醄醀鋐鋃鋄鋀鋙銶鋏鋱鋟鋘鋩鋗鋝鋌鋯鋂鋨鋊鋈鋎鋦鋍鋕鋉鋠鋞鋧鋑鋓����������������������������������銵鋡鋆銴镼閬閫閮閰隤隢雓霅霈霂靚鞊鞎鞈韐韏頞頝頦頩頨頠頛頧颲餈飺餑餔餖餗餕駜駍駏駓駔駎駉駖駘駋駗駌骳髬髫髳髲髱魆魃魧魴魱魦魶魵魰魨魤魬鳼鳺鳽鳿鳷鴇鴀鳹鳻鴈鴅鴄麃黓鼏鼐儜儓儗儚儑凞匴叡噰噠噮�".split("");for(j=0;j!=D[232].length;++j)if(D[232][j].charCodeAt(0)!==65533){e[D[232][j]]=59392+j;d[59392+j]=D[232][j]}D[233]="����������������������������������������������������������������噳噦噣噭噲噞噷圜圛壈墽壉墿墺壂墼壆嬗嬙嬛嬡嬔嬓嬐嬖嬨嬚嬠嬞寯嶬嶱嶩嶧嶵嶰嶮嶪嶨嶲嶭嶯嶴幧幨幦幯廩廧廦廨廥彋徼憝憨憖懅憴懆懁懌憺����������������������������������憿憸憌擗擖擐擏擉撽撉擃擛擳擙攳敿敼斢曈暾曀曊曋曏暽暻暺曌朣樴橦橉橧樲橨樾橝橭橶橛橑樨橚樻樿橁橪橤橐橏橔橯橩橠樼橞橖橕橍橎橆歕歔歖殧殪殫毈毇氄氃氆澭濋澣濇澼濎濈潞濄澽澞濊澨瀄澥澮澺澬澪濏澿澸�".split("");for(j=0;j!=D[233].length;++j)if(D[233][j].charCodeAt(0)!==65533){e[D[233][j]]=59648+j;d[59648+j]=D[233][j]}D[234]="����������������������������������������������������������������澢濉澫濍澯澲澰燅燂熿熸燖燀燁燋燔燊燇燏熽燘熼燆燚燛犝犞獩獦獧獬獥獫獪瑿璚璠璔璒璕璡甋疀瘯瘭瘱瘽瘳瘼瘵瘲瘰皻盦瞚瞝瞡瞜瞛瞢瞣瞕瞙����������������������������������瞗磝磩磥磪磞磣磛磡磢磭磟磠禤穄穈穇窶窸窵窱窷篞篣篧篝篕篥篚篨篹篔篪篢篜篫篘篟糒糔糗糐糑縒縡縗縌縟縠縓縎縜縕縚縢縋縏縖縍縔縥縤罃罻罼罺羱翯耪耩聬膱膦膮膹膵膫膰膬膴膲膷膧臲艕艖艗蕖蕅蕫蕍蕓蕡蕘�".split("");for(j=0;j!=D[234].length;++j)if(D[234][j].charCodeAt(0)!==65533){e[D[234][j]]=59904+j;d[59904+j]=D[234][j]}D[235]="����������������������������������������������������������������蕀蕆蕤蕁蕢蕄蕑蕇蕣蔾蕛蕱蕎蕮蕵蕕蕧蕠薌蕦蕝蕔蕥蕬虣虥虤螛螏螗螓螒螈螁螖螘蝹螇螣螅螐螑螝螄螔螜螚螉褞褦褰褭褮褧褱褢褩褣褯褬褟觱諠����������������������������������諢諲諴諵諝謔諤諟諰諈諞諡諨諿諯諻貑貒貐賵賮賱賰賳赬赮趥趧踳踾踸蹀蹅踶踼踽蹁踰踿躽輶輮輵輲輹輷輴遶遹遻邆郺鄳鄵鄶醓醐醑醍醏錧錞錈錟錆錏鍺錸錼錛錣錒錁鍆錭錎錍鋋錝鋺錥錓鋹鋷錴錂錤鋿錩錹錵錪錔錌�".split("");for(j=0;j!=D[235].length;++j)if(D[235][j].charCodeAt(0)!==65533){e[D[235][j]]=60160+j;d[60160+j]=D[235][j]}D[236]="����������������������������������������������������������������錋鋾錉錀鋻錖閼闍閾閹閺閶閿閵閽隩雔霋霒霐鞙鞗鞔韰韸頵頯頲餤餟餧餩馞駮駬駥駤駰駣駪駩駧骹骿骴骻髶髺髹髷鬳鮀鮅鮇魼魾魻鮂鮓鮒鮐魺鮕����������������������������������魽鮈鴥鴗鴠鴞鴔鴩鴝鴘鴢鴐鴙鴟麈麆麇麮麭黕黖黺鼒鼽儦儥儢儤儠儩勴嚓嚌嚍嚆嚄嚃噾嚂噿嚁壖壔壏壒嬭嬥嬲嬣嬬嬧嬦嬯嬮孻寱寲嶷幬幪徾徻懃憵憼懧懠懥懤懨懞擯擩擣擫擤擨斁斀斶旚曒檍檖檁檥檉檟檛檡檞檇檓檎�".split("");for(j=0;j!=D[236].length;++j)if(D[236][j].charCodeAt(0)!==65533){e[D[236][j]]=60416+j;d[60416+j]=D[236][j]}D[237]="����������������������������������������������������������������檕檃檨檤檑橿檦檚檅檌檒歛殭氉濌澩濴濔濣濜濭濧濦濞濲濝濢濨燡燱燨燲燤燰燢獳獮獯璗璲璫璐璪璭璱璥璯甐甑甒甏疄癃癈癉癇皤盩瞵瞫瞲瞷瞶����������������������������������瞴瞱瞨矰磳磽礂磻磼磲礅磹磾礄禫禨穜穛穖穘穔穚窾竀竁簅簏篲簀篿篻簎篴簋篳簂簉簃簁篸篽簆篰篱簐簊糨縭縼繂縳顈縸縪繉繀繇縩繌縰縻縶繄縺罅罿罾罽翴翲耬膻臄臌臊臅臇膼臩艛艚艜薃薀薏薧薕薠薋薣蕻薤薚薞�".split("");for(j=0;j!=D[237].length;++j)if(D[237][j].charCodeAt(0)!==65533){e[D[237][j]]=60672+j;d[60672+j]=D[237][j]}D[238]="����������������������������������������������������������������蕷蕼薉薡蕺蕸蕗薎薖薆薍薙薝薁薢薂薈薅蕹蕶薘薐薟虨螾螪螭蟅螰螬螹螵螼螮蟉蟃蟂蟌螷螯蟄蟊螴螶螿螸螽蟞螲褵褳褼褾襁襒褷襂覭覯覮觲觳謞����������������������������������謘謖謑謅謋謢謏謒謕謇謍謈謆謜謓謚豏豰豲豱豯貕貔賹赯蹎蹍蹓蹐蹌蹇轃轀邅遾鄸醚醢醛醙醟醡醝醠鎡鎃鎯鍤鍖鍇鍼鍘鍜鍶鍉鍐鍑鍠鍭鎏鍌鍪鍹鍗鍕鍒鍏鍱鍷鍻鍡鍞鍣鍧鎀鍎鍙闇闀闉闃闅閷隮隰隬霠霟霘霝霙鞚鞡鞜�".split("");for(j=0;j!=D[238].length;++j)if(D[238][j].charCodeAt(0)!==65533){e[D[238][j]]=60928+j;d[60928+j]=D[238][j]}D[239]="����������������������������������������������������������������鞞鞝韕韔韱顁顄顊顉顅顃餥餫餬餪餳餲餯餭餱餰馘馣馡騂駺駴駷駹駸駶駻駽駾駼騃骾髾髽鬁髼魈鮚鮨鮞鮛鮦鮡鮥鮤鮆鮢鮠鮯鴳鵁鵧鴶鴮鴯鴱鴸鴰����������������������������������鵅鵂鵃鴾鴷鵀鴽翵鴭麊麉麍麰黈黚黻黿鼤鼣鼢齔龠儱儭儮嚘嚜嚗嚚嚝嚙奰嬼屩屪巀幭幮懘懟懭懮懱懪懰懫懖懩擿攄擽擸攁攃擼斔旛曚曛曘櫅檹檽櫡櫆檺檶檷櫇檴檭歞毉氋瀇瀌瀍瀁瀅瀔瀎濿瀀濻瀦濼濷瀊爁燿燹爃燽獶�".split("");for(j=0;j!=D[239].length;++j)if(D[239][j].charCodeAt(0)!==65533){e[D[239][j]]=61184+j;d[61184+j]=D[239][j]}D[240]="����������������������������������������������������������������璸瓀璵瓁璾璶璻瓂甔甓癜癤癙癐癓癗癚皦皽盬矂瞺磿礌礓礔礉礐礒礑禭禬穟簜簩簙簠簟簭簝簦簨簢簥簰繜繐繖繣繘繢繟繑繠繗繓羵羳翷翸聵臑臒����������������������������������臐艟艞薴藆藀藃藂薳薵薽藇藄薿藋藎藈藅薱薶藒蘤薸薷薾虩蟧蟦蟢蟛蟫蟪蟥蟟蟳蟤蟔蟜蟓蟭蟘蟣螤蟗蟙蠁蟴蟨蟝襓襋襏襌襆襐襑襉謪謧謣謳謰謵譇謯謼謾謱謥謷謦謶謮謤謻謽謺豂豵貙貘貗賾贄贂贀蹜蹢蹠蹗蹖蹞蹥蹧�".split("");for(j=0;j!=D[240].length;++j)if(D[240][j].charCodeAt(0)!==65533){e[D[240][j]]=61440+j;d[61440+j]=D[240][j]}D[241]="����������������������������������������������������������������蹛蹚蹡蹝蹩蹔轆轇轈轋鄨鄺鄻鄾醨醥醧醯醪鎵鎌鎒鎷鎛鎝鎉鎧鎎鎪鎞鎦鎕鎈鎙鎟鎍鎱鎑鎲鎤鎨鎴鎣鎥闒闓闑隳雗雚巂雟雘雝霣霢霥鞬鞮鞨鞫鞤鞪����������������������������������鞢鞥韗韙韖韘韺顐顑顒颸饁餼餺騏騋騉騍騄騑騊騅騇騆髀髜鬈鬄鬅鬩鬵魊魌魋鯇鯆鯃鮿鯁鮵鮸鯓鮶鯄鮹鮽鵜鵓鵏鵊鵛鵋鵙鵖鵌鵗鵒鵔鵟鵘鵚麎麌黟鼁鼀鼖鼥鼫鼪鼩鼨齌齕儴儵劖勷厴嚫嚭嚦嚧嚪嚬壚壝壛夒嬽嬾嬿巃幰�".split("");for(j=0;j!=D[241].length;++j)if(D[241][j].charCodeAt(0)!==65533){e[D[241][j]]=61696+j;d[61696+j]=D[241][j]}D[242]="����������������������������������������������������������������徿懻攇攐攍攉攌攎斄旞旝曞櫧櫠櫌櫑櫙櫋櫟櫜櫐櫫櫏櫍櫞歠殰氌瀙瀧瀠瀖瀫瀡瀢瀣瀩瀗瀤瀜瀪爌爊爇爂爅犥犦犤犣犡瓋瓅璷瓃甖癠矉矊矄矱礝礛����������������������������������礡礜礗礞禰穧穨簳簼簹簬簻糬糪繶繵繸繰繷繯繺繲繴繨罋罊羃羆羷翽翾聸臗臕艤艡艣藫藱藭藙藡藨藚藗藬藲藸藘藟藣藜藑藰藦藯藞藢蠀蟺蠃蟶蟷蠉蠌蠋蠆蟼蠈蟿蠊蠂襢襚襛襗襡襜襘襝襙覈覷覶觶譐譈譊譀譓譖譔譋譕�".split("");
for(j=0;j!=D[242].length;++j)if(D[242][j].charCodeAt(0)!==65533){e[D[242][j]]=61952+j;d[61952+j]=D[242][j]}D[243]="����������������������������������������������������������������譑譂譒譗豃豷豶貚贆贇贉趬趪趭趫蹭蹸蹳蹪蹯蹻軂轒轑轏轐轓辴酀鄿醰醭鏞鏇鏏鏂鏚鏐鏹鏬鏌鏙鎩鏦鏊鏔鏮鏣鏕鏄鏎鏀鏒鏧镽闚闛雡霩霫霬霨霦����������������������������������鞳鞷鞶韝韞韟顜顙顝顗颿颽颻颾饈饇饃馦馧騚騕騥騝騤騛騢騠騧騣騞騜騔髂鬋鬊鬎鬌鬷鯪鯫鯠鯞鯤鯦鯢鯰鯔鯗鯬鯜鯙鯥鯕鯡鯚鵷鶁鶊鶄鶈鵱鶀鵸鶆鶋鶌鵽鵫鵴鵵鵰鵩鶅鵳鵻鶂鵯鵹鵿鶇鵨麔麑黀黼鼭齀齁齍齖齗齘匷嚲�".split("");for(j=0;j!=D[243].length;++j)if(D[243][j].charCodeAt(0)!==65533){e[D[243][j]]=62208+j;d[62208+j]=D[243][j]}D[244]="����������������������������������������������������������������嚵嚳壣孅巆巇廮廯忀忁懹攗攖攕攓旟曨曣曤櫳櫰櫪櫨櫹櫱櫮櫯瀼瀵瀯瀷瀴瀱灂瀸瀿瀺瀹灀瀻瀳灁爓爔犨獽獼璺皫皪皾盭矌矎矏矍矲礥礣礧礨礤礩����������������������������������禲穮穬穭竷籉籈籊籇籅糮繻繾纁纀羺翿聹臛臙舋艨艩蘢藿蘁藾蘛蘀藶蘄蘉蘅蘌藽蠙蠐蠑蠗蠓蠖襣襦覹觷譠譪譝譨譣譥譧譭趮躆躈躄轙轖轗轕轘轚邍酃酁醷醵醲醳鐋鐓鏻鐠鐏鐔鏾鐕鐐鐨鐙鐍鏵鐀鏷鐇鐎鐖鐒鏺鐉鏸鐊鏿�".split("");for(j=0;j!=D[244].length;++j)if(D[244][j].charCodeAt(0)!==65533){e[D[244][j]]=62464+j;d[62464+j]=D[244][j]}D[245]="����������������������������������������������������������������鏼鐌鏶鐑鐆闞闠闟霮霯鞹鞻韽韾顠顢顣顟飁飂饐饎饙饌饋饓騲騴騱騬騪騶騩騮騸騭髇髊髆鬐鬒鬑鰋鰈鯷鰅鰒鯸鱀鰇鰎鰆鰗鰔鰉鶟鶙鶤鶝鶒鶘鶐鶛����������������������������������鶠鶔鶜鶪鶗鶡鶚鶢鶨鶞鶣鶿鶩鶖鶦鶧麙麛麚黥黤黧黦鼰鼮齛齠齞齝齙龑儺儹劘劗囃嚽嚾孈孇巋巏廱懽攛欂櫼欃櫸欀灃灄灊灈灉灅灆爝爚爙獾甗癪矐礭礱礯籔籓糲纊纇纈纋纆纍罍羻耰臝蘘蘪蘦蘟蘣蘜蘙蘧蘮蘡蘠蘩蘞蘥�".split("");for(j=0;j!=D[245].length;++j)if(D[245][j].charCodeAt(0)!==65533){e[D[245][j]]=62720+j;d[62720+j]=D[245][j]}D[246]="����������������������������������������������������������������蠩蠝蠛蠠蠤蠜蠫衊襭襩襮襫觺譹譸譅譺譻贐贔趯躎躌轞轛轝酆酄酅醹鐿鐻鐶鐩鐽鐼鐰鐹鐪鐷鐬鑀鐱闥闤闣霵霺鞿韡顤飉飆飀饘饖騹騽驆驄驂驁騺����������������������������������騿髍鬕鬗鬘鬖鬺魒鰫鰝鰜鰬鰣鰨鰩鰤鰡鶷鶶鶼鷁鷇鷊鷏鶾鷅鷃鶻鶵鷎鶹鶺鶬鷈鶱鶭鷌鶳鷍鶲鹺麜黫黮黭鼛鼘鼚鼱齎齥齤龒亹囆囅囋奱孋孌巕巑廲攡攠攦攢欋欈欉氍灕灖灗灒爞爟犩獿瓘瓕瓙瓗癭皭礵禴穰穱籗籜籙籛籚�".split("");for(j=0;j!=D[246].length;++j)if(D[246][j].charCodeAt(0)!==65533){e[D[246][j]]=62976+j;d[62976+j]=D[246][j]}D[247]="����������������������������������������������������������������糴糱纑罏羇臞艫蘴蘵蘳蘬蘲蘶蠬蠨蠦蠪蠥襱覿覾觻譾讄讂讆讅譿贕躕躔躚躒躐躖躗轠轢酇鑌鑐鑊鑋鑏鑇鑅鑈鑉鑆霿韣顪顩飋饔饛驎驓驔驌驏驈驊����������������������������������驉驒驐髐鬙鬫鬻魖魕鱆鱈鰿鱄鰹鰳鱁鰼鰷鰴鰲鰽鰶鷛鷒鷞鷚鷋鷐鷜鷑鷟鷩鷙鷘鷖鷵鷕鷝麶黰鼵鼳鼲齂齫龕龢儽劙壨壧奲孍巘蠯彏戁戃戄攩攥斖曫欑欒欏毊灛灚爢玂玁玃癰矔籧籦纕艬蘺虀蘹蘼蘱蘻蘾蠰蠲蠮蠳襶襴襳觾�".split("");for(j=0;j!=D[247].length;++j)if(D[247][j].charCodeAt(0)!==65533){e[D[247][j]]=63232+j;d[63232+j]=D[247][j]}D[248]="����������������������������������������������������������������讌讎讋讈豅贙躘轤轣醼鑢鑕鑝鑗鑞韄韅頀驖驙鬞鬟鬠鱒鱘鱐鱊鱍鱋鱕鱙鱌鱎鷻鷷鷯鷣鷫鷸鷤鷶鷡鷮鷦鷲鷰鷢鷬鷴鷳鷨鷭黂黐黲黳鼆鼜鼸鼷鼶齃齏����������������������������������齱齰齮齯囓囍孎屭攭曭曮欓灟灡灝灠爣瓛瓥矕礸禷禶籪纗羉艭虃蠸蠷蠵衋讔讕躞躟躠躝醾醽釂鑫鑨鑩雥靆靃靇韇韥驞髕魙鱣鱧鱦鱢鱞鱠鸂鷾鸇鸃鸆鸅鸀鸁鸉鷿鷽鸄麠鼞齆齴齵齶囔攮斸欘欙欗欚灢爦犪矘矙礹籩籫糶纚�".split("");for(j=0;j!=D[248].length;++j)if(D[248][j].charCodeAt(0)!==65533){e[D[248][j]]=63488+j;d[63488+j]=D[248][j]}D[249]="����������������������������������������������������������������纘纛纙臠臡虆虇虈襹襺襼襻觿讘讙躥躤躣鑮鑭鑯鑱鑳靉顲饟鱨鱮鱭鸋鸍鸐鸏鸒鸑麡黵鼉齇齸齻齺齹圞灦籯蠼趲躦釃鑴鑸鑶鑵驠鱴鱳鱱鱵鸔鸓黶鼊����������������������������������龤灨灥糷虪蠾蠽蠿讞貜躩軉靋顳顴飌饡馫驤驦驧鬤鸕鸗齈戇欞爧虌躨钂钀钁驩驨鬮鸙爩虋讟钃鱹麷癵驫鱺鸝灩灪麤齾齉龘碁銹裏墻恒粧嫺╔╦╗╠╬╣╚╩╝╒╤╕╞╪╡╘╧╛╓╥╖╟╫╢╙╨╜║═╭╮╰╯▓�".split("");for(j=0;j!=D[249].length;++j)if(D[249][j].charCodeAt(0)!==65533){e[D[249][j]]=63744+j;d[63744+j]=D[249][j]}return{enc:e,dec:d}}();cptable[1250]=function(){var d="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚�„…†‡�‰Š‹ŚŤŽŹ�‘’“”•–—�™š›śťžź ˇ˘Ł¤Ą¦§¨©Ş«¬­®Ż°±˛ł´µ¶·¸ąş»Ľ˝ľżŔÁÂĂÄĹĆÇČÉĘËĚÍÎĎĐŃŇÓÔŐÖ×ŘŮÚŰÜÝŢßŕáâăäĺćçčéęëěíîďđńňóôőö÷řůúűüýţ˙",D=[],e={};for(var i=0;i!=d.length;++i){if(d.charCodeAt(i)!==65533)e[d[i]]=i;D[i]=d.charAt(i)}return{enc:e,dec:D}}();cptable[1251]=function(){var d="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ЂЃ‚ѓ„…†‡€‰Љ‹ЊЌЋЏђ‘’“”•–—�™љ›њќћџ ЎўЈ¤Ґ¦§Ё©Є«¬­®Ї°±Ііґµ¶·ё№є»јЅѕїАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя",D=[],e={};for(var i=0;i!=d.length;++i){if(d.charCodeAt(i)!==65533)e[d[i]]=i;D[i]=d.charAt(i)}return{enc:e,dec:D}}();cptable[1252]=function(){var d="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡ˆ‰Š‹Œ�Ž��‘’“”•–—˜™š›œ�žŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ",D=[],e={};for(var i=0;i!=d.length;++i){if(d.charCodeAt(i)!==65533)e[d[i]]=i;D[i]=d.charAt(i)}return{enc:e,dec:D}}();cptable[1253]=function(){var d="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡�‰�‹�����‘’“”•–—�™�›���� ΅Ά£¤¥¦§¨©�«¬­®―°±²³΄µ¶·ΈΉΊ»Ό½ΎΏΐΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡ�ΣΤΥΦΧΨΩΪΫάέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώ�",D=[],e={};for(var i=0;i!=d.length;++i){if(d.charCodeAt(i)!==65533)e[d[i]]=i;D[i]=d.charAt(i)}return{enc:e,dec:D}}();cptable[1254]=function(){var d="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡ˆ‰Š‹Œ����‘’“”•–—˜™š›œ��Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏĞÑÒÓÔÕÖרÙÚÛÜİŞßàáâãäåæçèéêëìíîïğñòóôõö÷øùúûüışÿ",D=[],e={};for(var i=0;i!=d.length;++i){if(d.charCodeAt(i)!==65533)e[d[i]]=i;D[i]=d.charAt(i)}return{enc:e,dec:D}}();cptable[1255]=function(){var d="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡ˆ‰�‹�����‘’“”•–—˜™�›���� ¡¢£₪¥¦§¨©×«¬­®¯°±²³´µ¶·¸¹÷»¼½¾¿ְֱֲֳִֵֶַָֹ�ֻּֽ־ֿ׀ׁׂ׃װױײ׳״�������אבגדהוזחטיךכלםמןנסעףפץצקרשת��‎‏�",D=[],e={};for(var i=0;i!=d.length;++i){if(d.charCodeAt(i)!==65533)e[d[i]]=i;D[i]=d.charAt(i)}return{enc:e,dec:D}}();cptable[1256]=function(){var d="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€پ‚ƒ„…†‡ˆ‰ٹ‹Œچژڈگ‘’“”•–—ک™ڑ›œ‌‍ں ،¢£¤¥¦§¨©ھ«¬­®¯°±²³´µ¶·¸¹؛»¼½¾؟ہءآأؤإئابةتثجحخدذرزسشصض×طظعغـفقكàلâمنهوçèéêëىيîïًٌٍَôُِ÷ّùْûü‎‏ے",D=[],e={};for(var i=0;i!=d.length;++i){if(d.charCodeAt(i)!==65533)e[d[i]]=i;D[i]=d.charAt(i)}return{enc:e,dec:D}}();cptable[1257]=function(){var d="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚�„…†‡�‰�‹�¨ˇ¸�‘’“”•–—�™�›�¯˛� �¢£¤�¦§Ø©Ŗ«¬­®Æ°±²³´µ¶·ø¹ŗ»¼½¾æĄĮĀĆÄÅĘĒČÉŹĖĢĶĪĻŠŃŅÓŌÕÖ×ŲŁŚŪÜŻŽßąįāćäåęēčéźėģķīļšńņóōõö÷ųłśūüżž˙",D=[],e={};for(var i=0;i!=d.length;++i){if(d.charCodeAt(i)!==65533)e[d[i]]=i;D[i]=d.charAt(i)}return{enc:e,dec:D}}();cptable[1258]=function(){var d="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡ˆ‰�‹Œ����‘’“”•–—˜™�›œ��Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂĂÄÅÆÇÈÉÊË̀ÍÎÏĐÑ̉ÓÔƠÖרÙÚÛÜỮßàáâăäåæçèéêë́íîïđṇ̃óôơö÷øùúûüư₫ÿ",D=[],e={};for(var i=0;i!=d.length;++i){if(d.charCodeAt(i)!==65533)e[d[i]]=i;D[i]=d.charAt(i)}return{enc:e,dec:D}}();cptable[1e4]=function(){var d="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤‹›fifl‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ",D=[],e={};for(var i=0;i!=d.length;++i){if(d.charCodeAt(i)!==65533)e[d[i]]=i;D[i]=d.charAt(i)}return{enc:e,dec:D}}();cptable[10006]=function(){var d="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~Ĺ²É³ÖÜ΅àâä΄¨çéèê룙î‰ôö¦­ùûü†ΓΔΘΛΞΠß®©ΣΪ§≠°·Α±≤≥¥ΒΕΖΗΙΚΜΦΫΨΩάΝ¬ΟΡ≈Τ«»… ΥΧΆΈœ–―“”‘’÷ΉΊΌΎέήίόΏύαβψδεφγηιξκλμνοπώρστθωςχυζϊϋΐΰ�",D=[],e={};for(var i=0;i!=d.length;++i){if(d.charCodeAt(i)!==65533)e[d[i]]=i;D[i]=d.charAt(i)}return{enc:e,dec:D}}();cptable[10007]=function(){var d="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ†°¢£§•¶І®©™Ђђ≠Ѓѓ∞±≤≥іµ∂ЈЄєЇїЉљЊњјЅ¬√ƒ≈∆«»… ЋћЌќѕ–—“”‘’÷„ЎўЏџ№Ёёяабвгдежзийклмнопрстуфхцчшщъыьэю¤",D=[],e={};for(var i=0;i!=d.length;++i){if(d.charCodeAt(i)!==65533)e[d[i]]=i;D[i]=d.charAt(i)}return{enc:e,dec:D}}();cptable[10029]=function(){var d="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄĀāÉĄÖÜáąČäčĆć鏟ĎíďĒēĖóėôöõúĚěü†°Ę£§•¶ß®©™ę¨≠ģĮįĪ≤≥īĶ∂∑łĻļĽľĹĺŅņѬ√ńŇ∆«»… ňŐÕőŌ–—“”‘’÷◊ōŔŕŘ‹›řŖŗŠ‚„šŚśÁŤťÍŽžŪÓÔūŮÚůŰűŲųÝýķŻŁżĢˇ",D=[],e={};for(var i=0;i!=d.length;++i){if(d.charCodeAt(i)!==65533)e[d[i]]=i;D[i]=d.charAt(i)}return{enc:e,dec:D}}();cptable[10079]=function(){var d="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûüݰ¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤ÐðÞþý·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ",D=[],e={};for(var i=0;i!=d.length;++i){if(d.charCodeAt(i)!==65533)e[d[i]]=i;D[i]=d.charAt(i)}return{enc:e,dec:D}}();cptable[10081]=function(){var d="\0\b\t\n\v\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸĞğİıŞş‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙ�ˆ˜¯˘˙˚¸˝˛ˇ",D=[],e={};for(var i=0;i!=d.length;++i){if(d.charCodeAt(i)!==65533)e[d[i]]=i;D[i]=d.charAt(i)}return{enc:e,dec:D}}();if(typeof module!=="undefined"&&module.exports)module.exports=cptable;(function(root,factory){"use strict";if(typeof cptable==="undefined"){if(typeof require!=="undefined"){var cpt=require("./cpt"+"able");if(typeof module!=="undefined"&&module.exports)module.exports=factory(cpt);else root.cptable=factory(cpt)}else throw new Error("cptable not found")}else cptable=factory(cptable)})(this,function(cpt){"use strict";var magic={1200:"utf16le",1201:"utf16be",12000:"utf32le",12001:"utf32be",16969:"utf64le",20127:"ascii",65000:"utf7",65001:"utf8"};var sbcs_cache=[874,1250,1251,1252,1253,1254,1255,1256,1e4];var dbcs_cache=[932,936,949,950];var magic_cache=[65001];var magic_decode={};var magic_encode={};var cpecache={};var cpdcache={};var sfcc=function sfcc(x){return String.fromCharCode(x)};var cca=function cca(x){return x.charCodeAt(0)};var has_buf=typeof Buffer!=="undefined";if(has_buf){var mdl=1024,mdb=new Buffer(mdl);var make_EE=function make_EE(E){var EE=new Buffer(65536);for(var i=0;i<65536;++i)EE[i]=0;var keys=Object.keys(E),len=keys.length;for(var ee=0,e=keys[ee];ee<len;++ee){if(!(e=keys[ee]))continue;EE[e.charCodeAt(0)]=E[e]}return EE};var sbcs_encode=function make_sbcs_encode(cp){var EE=make_EE(cpt[cp].enc);return function sbcs_e(data,ofmt){var len=data.length;var out,i,j,D,w;if(typeof data==="string"){out=Buffer(len);for(i=0;i<len;++i)out[i]=EE[data.charCodeAt(i)]}else if(Buffer.isBuffer(data)){out=Buffer(2*len);j=0;for(i=0;i<len;++i){D=data[i];if(D<128)out[j++]=EE[D];else if(D<224){out[j++]=EE[((D&31)<<6)+(data[i+1]&63)];++i}else if(D<240){out[j++]=EE[((D&15)<<12)+((data[i+1]&63)<<6)+(data[i+2]&63)];i+=2}else{w=((D&7)<<18)+((data[i+1]&63)<<12)+((data[i+2]&63)<<6)+(data[i+3]&63);i+=3;if(w<65536)out[j++]=EE[w];else{w-=65536;out[j++]=EE[55296+(w>>10&1023)];out[j++]=EE[56320+(w&1023)]}}}out.length=j;out=out.slice(0,j)}else{out=Buffer(len);for(i=0;i<len;++i)out[i]=EE[data[i].charCodeAt(0)]}if(ofmt===undefined||ofmt==="buf")return out;if(ofmt!=="arr")return out.toString("binary");return[].slice.call(out)}};var sbcs_decode=function make_sbcs_decode(cp){var D=cpt[cp].dec;var DD=new Buffer(131072),d=0,c;for(d=0;d<D.length;++d){if(!(c=D[d]))continue;var w=c.charCodeAt(0);DD[2*d]=w&255;DD[2*d+1]=w>>8}return function sbcs_d(data){var len=data.length,i=0,j;if(2*len>mdl){mdl=2*len;mdb=new Buffer(mdl)}if(Buffer.isBuffer(data)){for(i=0;i<len;i++){j=2*data[i];mdb[2*i]=DD[j];mdb[2*i+1]=DD[j+1]}}else if(typeof data==="string"){for(i=0;i<len;i++){j=2*data.charCodeAt(i);mdb[2*i]=DD[j];mdb[2*i+1]=DD[j+1]}}else{for(i=0;i<len;i++){j=2*data[i];mdb[2*i]=DD[j];mdb[2*i+1]=DD[j+1]}}mdb.length=2*len;return mdb.toString("ucs2")}};var dbcs_encode=function make_dbcs_encode(cp){var E=cpt[cp].enc;var EE=new Buffer(131072);for(var i=0;i<131072;++i)EE[i]=0;var keys=Object.keys(E);for(var ee=0,e=keys[ee];ee<keys.length;++ee){if(!(e=keys[ee]))continue;var f=e.charCodeAt(0);EE[2*f]=E[e]&255;EE[2*f+1]=E[e]>>8}return function dbcs_e(data,ofmt){var len=data.length,out=new Buffer(2*len),i,j,jj,k,D;if(typeof data==="string"){for(i=k=0;i<len;++i){j=data.charCodeAt(i)*2;out[k++]=EE[j+1]||EE[j];if(EE[j+1]>0)out[k++]=EE[j]}out.length=k;out=out.slice(0,k)}else if(Buffer.isBuffer(data)){for(i=k=0;i<len;++i){D=data[i];if(D<128)j=D;else if(D<224){j=((D&31)<<6)+(data[i+1]&63);++i}else if(D<240){j=((D&15)<<12)+((data[i+1]&63)<<6)+(data[i+2]&63);i+=2}else{j=((D&7)<<18)+((data[i+1]&63)<<12)+((data[i+2]&63)<<6)+(data[i+3]&63);i+=3}if(j<65536){j*=2;out[k++]=EE[j+1]||EE[j];if(EE[j+1]>0)out[k++]=EE[j]}else{jj=j-65536;j=2*(55296+(jj>>10&1023));out[k++]=EE[j+1]||EE[j];if(EE[j+1]>0)out[k++]=EE[j];j=2*(56320+(jj&1023));out[k++]=EE[j+1]||EE[j];if(EE[j+1]>0)out[k++]=EE[j]}}out.length=k;out=out.slice(0,k)}else{for(i=k=0;i<len;i++){j=data[i].charCodeAt(0)*2;out[k++]=EE[j+1]||EE[j];if(EE[j+1]>0)out[k++]=EE[j]}}if(ofmt===undefined||ofmt==="buf")return out;if(ofmt!=="arr")return out.toString("binary");return[].slice.call(out)}};var dbcs_decode=function make_dbcs_decode(cp){var D=cpt[cp].dec;var DD=new Buffer(131072),d=0,c,w=0,j=0,i=0;for(i=0;i<65536;++i){DD[2*i]=255;DD[2*i+1]=253}for(d=0;d<D.length;++d){if(!(c=D[d]))continue;w=c.charCodeAt(0);j=2*d;DD[j]=w&255;DD[j+1]=w>>8}return function dbcs_d(data){var len=data.length,out=new Buffer(2*len),i,j,k=0;if(Buffer.isBuffer(data)){for(i=0;i<len;i++){j=2*data[i];if(DD[j]===255&&DD[j+1]===253){j=2*((data[i]<<8)+data[i+1]);++i}out[k++]=DD[j];out[k++]=DD[j+1]}}else if(typeof data==="string"){for(i=0;i<len;i++){j=2*data.charCodeAt(i);if(DD[j]===255&&DD[j+1]===253){j=2*((data.charCodeAt(i)<<8)+data.charCodeAt(i+1));++i}out[k++]=DD[j];out[k++]=DD[j+1]}}else{for(i=0;i<len;i++){j=2*data[i];if(DD[j]===255&&DD[j+1]===253){j=2*((data[i]<<8)+data[i+1]);++i}out[k++]=DD[j];out[k++]=DD[j+1]}}out.length=k;return out.toString("ucs2")}};magic_decode[65001]=function utf8_d(data){var len=data.length,w=0,ww=0;if(4*len>mdl){mdl=4*len;mdb=new Buffer(mdl)}mdb.length=0;var i=0;if(len>=3&&data[0]==239)if(data[1]==187&&data[2]==191)i=3;for(var j=1,k=0,D=0;i<len;i+=j){j=1;D=data[i];if(D<128)w=D;else if(D<224){w=(D&31)*64+(data[i+1]&63);j=2}else if(D<240){w=((D&15)<<12)+(data[i+1]&63)*64+(data[i+2]&63);j=3}else{w=(D&7)*262144+((data[i+1]&63)<<12)+(data[i+2]&63)*64+(data[i+3]&63);j=4}if(w<65536){mdb[k++]=w&255;mdb[k++]=w>>8}else{w-=65536;ww=55296+(w>>10&1023);w=56320+(w&1023);mdb[k++]=ww&255;mdb[k++]=ww>>>8;mdb[k++]=w&255;mdb[k++]=w>>>8&255}}mdb.length=k;return mdb.toString("ucs2")};magic_encode[65001]=function utf8_e(data,ofmt){var len=data.length,w=0,ww=0,j=0;var direct=typeof data==="string";if(4*len>mdl){mdl=4*len;mdb=new Buffer(mdl)}for(var i=0;i<len;++i){w=direct?data.charCodeAt(i):data[i].charCodeAt(0);if(w<=127)mdb[j++]=w;else if(w<=2047){mdb[j++]=192+(w>>6);mdb[j++]=128+(w&63)}else if(w>=55296&&w<=57343){w-=55296;++i;ww=(direct?data.charCodeAt(i):data[i].charCodeAt(0))-56320+(w<<10);mdb[j++]=240+(ww>>>18&7);mdb[j++]=144+(ww>>>12&63);mdb[j++]=128+(ww>>>6&63);mdb[j++]=128+(ww&63)}else{mdb[j++]=224+(w>>12);mdb[j++]=128+(w>>6&63);mdb[j++]=128+(w&63)}}mdb.length=j;if(ofmt===undefined||ofmt==="buf")return mdb;if(ofmt!=="arr")return mdb.toString("binary");return[].slice.call(mdb)}}var encache=function encache(){if(has_buf){if(cpdcache[sbcs_cache[0]])return;var i,s;for(i=0;i<sbcs_cache.length;++i){s=sbcs_cache[i];if(cpt[s]){cpdcache[s]=sbcs_decode(s);cpecache[s]=sbcs_encode(s)}}for(i=0;i<dbcs_cache.length;++i){s=dbcs_cache[i];if(cpt[s]){cpdcache[s]=dbcs_decode(s);cpecache[s]=dbcs_encode(s)}}for(i=0;i<magic_cache.length;++i){s=magic_cache[i];if(magic_decode[s])cpdcache[s]=magic_decode[s];if(magic_encode[s])cpecache[s]=magic_encode[s]}}};var cp_decache=function cp_decache(cp){cpdcache[cp]=cpecache[cp]=undefined};var decache=function decache(){if(has_buf){if(!cpdcache[sbcs_cache[0]])return;sbcs_cache.forEach(cp_decache);dbcs_cache.forEach(cp_decache);magic_cache.forEach(cp_decache)}last_enc=last_cp=undefined};var cache={encache:encache,decache:decache,sbcs:sbcs_cache,dbcs:dbcs_cache};encache();var BM="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var SetD="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'(),-./:?";var last_enc,last_cp;var encode=function encode(cp,data,ofmt){if(cp===last_cp){return last_enc(data,ofmt)}if(cpecache[cp]!==undefined){last_enc=cpecache[last_cp=cp];return last_enc(data,ofmt)}if(has_buf&&Buffer.isBuffer(data))data=data.toString("utf8");var len=data.length;var out=has_buf?new Buffer(4*len):[],w,i,j=0,c,tt,ww;var C=cpt[cp],E,M;if(C&&(E=C.enc))for(i=0;i<len;++i,++j){w=E[data[i]];out[j]=w&255;if(w>255){out[j]=w>>8;out[++j]=w&255}}else if(M=magic[cp])switch(M){case"utf8":if(has_buf&&typeof data==="string"){out=new Buffer(data,M);j=out.length;break}for(i=0;i<len;++i,++j){w=data[i].charCodeAt(0);if(w<=127)out[j]=w;else if(w<=2047){out[j]=192+(w>>6);out[++j]=128+(w&63)}else if(w>=55296&&w<=57343){w-=55296;ww=data[++i].charCodeAt(0)-56320+(w<<10);out[j]=240+(ww>>>18&7);out[++j]=144+(ww>>>12&63);out[++j]=128+(ww>>>6&63);out[++j]=128+(ww&63)}else{out[j]=224+(w>>12);out[++j]=128+(w>>6&63);out[++j]=128+(w&63)}}break;case"ascii":if(has_buf&&typeof data==="string"){out=new Buffer(data,M);j=out.length;break}for(i=0;i<len;++i,++j){w=data[i].charCodeAt(0);if(w<=127)out[j]=w;else throw new Error("bad ascii "+w)}break;case"utf16le":if(has_buf&&typeof data==="string"){out=new Buffer(data,M);j=out.length;break}for(i=0;i<len;++i){w=data[i].charCodeAt(0);out[j++]=w&255;out[j++]=w>>8}break;case"utf16be":for(i=0;i<len;++i){w=data[i].charCodeAt(0);out[j++]=w>>8;out[j++]=w&255}break;case"utf32le":for(i=0;i<len;++i){w=data[i].charCodeAt(0);if(w>=55296&&w<=57343)w=65536+(w-55296<<10)+(data[++i].charCodeAt(0)-56320);out[j++]=w&255;w>>=8;out[j++]=w&255;w>>=8;out[j++]=w&255;w>>=8;out[j++]=w&255}break;case"utf32be":for(i=0;i<len;++i){w=data[i].charCodeAt(0);if(w>=55296&&w<=57343)w=65536+(w-55296<<10)+(data[++i].charCodeAt(0)-56320);out[j+3]=w&255;w>>=8;out[j+2]=w&255;w>>=8;out[j+1]=w&255;w>>=8;out[j]=w&255;w>>=8;j+=4}break;case"utf7":for(i=0;i<len;i++){c=data[i];if(c==="+"){out[j++]=43;out[j++]=45;continue}if(SetD.indexOf(c)>-1){out[j++]=c.charCodeAt(0);continue}tt=encode(1201,c);out[j++]=43;out[j++]=BM.charCodeAt(tt[0]>>2);out[j++]=BM.charCodeAt(((tt[0]&3)<<4)+((tt[1]||0)>>4));out[j++]=BM.charCodeAt(((tt[1]&15)<<2)+((tt[2]||0)>>6));out[j++]=45}break;default:throw new Error("Unsupported magic: "+cp+" "+magic[cp])}else throw new Error("Unrecognized CP: "+cp);out.length=j;out=out.slice(0,j);if(typeof Buffer==="undefined")return ofmt=="str"?out.map(sfcc).join(""):out;if(ofmt===undefined||ofmt==="buf")return out;if(ofmt!=="arr")return out.toString("binary");return[].slice.call(out)};var decode=function decode(cp,data){var F;if(F=cpdcache[cp])return F(data);var len=data.length,out=new Array(len),w,i,j=1,k=0,ww;var C=cpt[cp],D,M;if(C&&(D=C.dec)){if(typeof data==="string")data=data.split("").map(cca);for(i=0;i<len;i+=j){j=2;w=D[(data[i]<<8)+data[i+1]];if(!w){j=1;w=D[data[i]]}if(!w)throw new Error("Unrecognized code: "+data[i]+" "+data[i+j-1]+" "+i+" "+j+" "+D[data[i]]);out[k++]=w}}else if(M=magic[cp])switch(M){case"utf8":i=0;if(len>=3&&data[0]==239)if(data[1]==187&&data[2]==191)i=3;for(;i<len;i+=j){j=1;if(data[i]<128)w=data[i];else if(data[i]<224){w=(data[i]&31)*64+(data[i+1]&63);j=2}else if(data[i]<240){w=((data[i]&15)<<12)+(data[i+1]&63)*64+(data[i+2]&63);j=3}else{w=(data[i]&7)*262144+((data[i+1]&63)<<12)+(data[i+2]&63)*64+(data[i+3]&63);j=4}if(w<65536){out[k++]=String.fromCharCode(w)}else{w-=65536;ww=55296+(w>>10&1023);w=56320+(w&1023);out[k++]=String.fromCharCode(ww);out[k++]=String.fromCharCode(w)}}break;case"ascii":if(has_buf&&Buffer.isBuffer(data))return data.toString(M);for(i=0;i<len;i++)out[i]=String.fromCharCode(data[i]);k=len;break;case"utf16le":i=0;if(len>=2&&data[0]==255)if(data[1]==254)i=2;if(has_buf&&Buffer.isBuffer(data))return data.toString(M);j=2;for(;i<len;i+=j){out[k++]=String.fromCharCode((data[i+1]<<8)+data[i])}break;case"utf16be":i=0;if(len>=2&&data[0]==254)if(data[1]==255)i=2;j=2;for(;i<len;i+=j){out[k++]=String.fromCharCode((data[i]<<8)+data[i+1])}break;case"utf32le":i=0;if(len>=4&&data[0]==255)if(data[1]==254&&data[2]==0&&data[3]==0)i=4;j=4;for(;i<len;i+=j){w=(data[i+3]<<24)+(data[i+2]<<16)+(data[i+1]<<8)+data[i];if(w>65535){w-=65536;out[k++]=String.fromCharCode(55296+(w>>10&1023));out[k++]=String.fromCharCode(56320+(w&1023))}else out[k++]=String.fromCharCode(w)}break;case"utf32be":i=0;if(len>=4&&data[3]==255)if(data[2]==254&&data[1]==0&&data[0]==0)i=4;j=4;for(;i<len;i+=j){w=(data[i]<<24)+(data[i+1]<<16)+(data[i+2]<<8)+data[i+3];if(w>65535){w-=65536;out[k++]=String.fromCharCode(55296+(w>>10&1023));out[k++]=String.fromCharCode(56320+(w&1023))}else out[k++]=String.fromCharCode(w)}break;case"utf7":i=0;if(len>=4&&data[0]==43&&data[1]==47&&data[2]==118){if(len>=5&&data[3]==56&&data[4]==45)i=5;else if(data[3]==56||data[3]==57||data[3]==43||data[3]==47)i=4}for(;i<len;i+=j){if(data[i]!==43){j=1;out[k++]=String.fromCharCode(data[i]);continue}j=1;if(data[i+1]===45){j=2;out[k++]="+";continue}while(String.fromCharCode(data[i+j]).match(/[A-Za-z0-9+\/]/))j++;var dash=0;if(data[i+j]===45){++j;dash=1}var tt=[];var o64;var c1,c2,c3;var e1,e2,e3,e4;for(var l=1;l<j-dash;){e1=BM.indexOf(String.fromCharCode(data[i+l++]));e2=BM.indexOf(String.fromCharCode(data[i+l++]));c1=e1<<2|e2>>4;tt.push(c1);e3=BM.indexOf(String.fromCharCode(data[i+l++]));if(e3===-1)break;c2=(e2&15)<<4|e3>>2;tt.push(c2);e4=BM.indexOf(String.fromCharCode(data[i+l++]));if(e4===-1)break;c3=(e3&3)<<6|e4;if(e4<64)tt.push(c3)}if((tt.length&1)===1)tt.length--;o64=decode(1201,tt);for(l=0;l<o64.length;++l)out[k++]=o64[l]}break;default:throw new Error("Unsupported magic: "+cp+" "+magic[cp])}else throw new Error("Unrecognized CP: "+cp);out.length=k;return out.join("")};var hascp=function hascp(cp){return cpt[cp]||magic[cp]};cpt.utils={decode:decode,encode:encode,hascp:hascp,magic:magic,cache:cache};return cpt});var XLSX={};(function make_xlsx(XLSX){XLSX.version="0.8.20";var current_codepage=1200,current_cptable;if(typeof module!=="undefined"&&typeof require!=="undefined"){if(typeof cptable==="undefined")cptable=require("./dist/cpexcel");current_cptable=cptable[current_codepage]}function reset_cp(){set_cp(1200)}var set_cp=function(cp){current_codepage=cp};function char_codes(data){var o=[];for(var i=0,len=data.length;i<len;++i)o[i]=data.charCodeAt(i);return o}var debom_xml=function(data){return data};var _getchar=function _gc1(x){return String.fromCharCode(x)};if(typeof cptable!=="undefined"){set_cp=function(cp){current_codepage=cp;current_cptable=cptable[cp]};debom_xml=function(data){if(data.charCodeAt(0)===255&&data.charCodeAt(1)===254){return cptable.utils.decode(1200,char_codes(data.substr(2)))}return data};_getchar=function _gc2(x){if(current_codepage===1200)return String.fromCharCode(x);return cptable.utils.decode(current_codepage,[x&255,x>>8])[0]}}var Base64=function make_b64(){var map="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";return{encode:function(input,utf8){var o="";var c1,c2,c3,e1,e2,e3,e4;for(var i=0;i<input.length;){c1=input.charCodeAt(i++);c2=input.charCodeAt(i++);c3=input.charCodeAt(i++);e1=c1>>2;e2=(c1&3)<<4|c2>>4;e3=(c2&15)<<2|c3>>6;e4=c3&63;if(isNaN(c2)){e3=e4=64}else if(isNaN(c3)){e4=64}o+=map.charAt(e1)+map.charAt(e2)+map.charAt(e3)+map.charAt(e4)}return o},decode:function b64_decode(input,utf8){var o="";var c1,c2,c3;var e1,e2,e3,e4;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var i=0;i<input.length;){e1=map.indexOf(input.charAt(i++));e2=map.indexOf(input.charAt(i++));e3=map.indexOf(input.charAt(i++));e4=map.indexOf(input.charAt(i++));c1=e1<<2|e2>>4;c2=(e2&15)<<4|e3>>2;c3=(e3&3)<<6|e4;o+=String.fromCharCode(c1);if(e3!=64){o+=String.fromCharCode(c2)}if(e4!=64){o+=String.fromCharCode(c3)}}return o}}}();var has_buf=typeof Buffer!=="undefined";function new_raw_buf(len){return new(has_buf?Buffer:Array)(len)}function s2a(s){if(has_buf)return new Buffer(s,"binary");return s.split("").map(function(x){return x.charCodeAt(0)&255})}var bconcat=function(bufs){return[].concat.apply([],bufs)};var chr0=/\u0000/g,chr1=/[\u0001-\u0006]/;var SSF={};var make_ssf=function make_ssf(SSF){SSF.version="0.8.1";function _strrev(x){var o="",i=x.length-1;while(i>=0)o+=x.charAt(i--);return o}function fill(c,l){var o="";while(o.length<l)o+=c;return o}function pad0(v,d){var t=""+v;return t.length>=d?t:fill("0",d-t.length)+t}function pad_(v,d){var t=""+v;return t.length>=d?t:fill(" ",d-t.length)+t}function rpad_(v,d){var t=""+v;return t.length>=d?t:t+fill(" ",d-t.length)}function pad0r1(v,d){var t=""+Math.round(v);return t.length>=d?t:fill("0",d-t.length)+t}function pad0r2(v,d){var t=""+v;return t.length>=d?t:fill("0",d-t.length)+t}var p2_32=Math.pow(2,32);function pad0r(v,d){if(v>p2_32||v<-p2_32)return pad0r1(v,d);var i=Math.round(v);return pad0r2(i,d)}function isgeneral(s,i){return s.length>=7+i&&(s.charCodeAt(i)|32)===103&&(s.charCodeAt(i+1)|32)===101&&(s.charCodeAt(i+2)|32)===110&&(s.charCodeAt(i+3)|32)===101&&(s.charCodeAt(i+4)|32)===114&&(s.charCodeAt(i+5)|32)===97&&(s.charCodeAt(i+6)|32)===108}var opts_fmt=[["date1904",0],["output",""],["WTF",false]];function fixopts(o){for(var y=0;y!=opts_fmt.length;++y)if(o[opts_fmt[y][0]]===undefined)o[opts_fmt[y][0]]=opts_fmt[y][1]}SSF.opts=opts_fmt;var table_fmt={0:"General",1:"0",2:"0.00",3:"#,##0",4:"#,##0.00",9:"0%",10:"0.00%",11:"0.00E+00",12:"# ?/?",13:"# ??/??",14:"m/d/yy",15:"d-mmm-yy",16:"d-mmm",17:"mmm-yy",18:"h:mm AM/PM",19:"h:mm:ss AM/PM",20:"h:mm",21:"h:mm:ss",22:"m/d/yy h:mm",37:"#,##0 ;(#,##0)",38:"#,##0 ;[Red](#,##0)",39:"#,##0.00;(#,##0.00)",40:"#,##0.00;[Red](#,##0.00)",45:"mm:ss",46:"[h]:mm:ss",47:"mmss.0",48:"##0.0E+0",49:"@",56:'"上午/下午 "hh"時"mm"分"ss"秒 "',65535:"General"};var days=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]];var months=[["J","Jan","January"],["F","Feb","February"],["M","Mar","March"],["A","Apr","April"],["M","May","May"],["J","Jun","June"],["J","Jul","July"],["A","Aug","August"],["S","Sep","September"],["O","Oct","October"],["N","Nov","November"],["D","Dec","December"]];function frac(x,D,mixed){var sgn=x<0?-1:1;var B=x*sgn;var P_2=0,P_1=1,P=0;var Q_2=1,Q_1=0,Q=0;var A=Math.floor(B);while(Q_1<D){A=Math.floor(B);P=A*P_1+P_2;Q=A*Q_1+Q_2;if(B-A<5e-10)break;B=1/(B-A);P_2=P_1;P_1=P;Q_2=Q_1;Q_1=Q}if(Q>D){Q=Q_1;P=P_1}if(Q>D){Q=Q_2;P=P_2}if(!mixed)return[0,sgn*P,Q];if(Q===0)throw"Unexpected state: "+P+" "+P_1+" "+P_2+" "+Q+" "+Q_1+" "+Q_2;var q=Math.floor(sgn*P/Q);return[q,sgn*P-q*Q,Q]}function general_fmt_int(v,opts){return""+v}SSF._general_int=general_fmt_int;var general_fmt_num=function make_general_fmt_num(){var gnr1=/\.(\d*[1-9])0+$/,gnr2=/\.0*$/,gnr4=/\.(\d*[1-9])0+/,gnr5=/\.0*[Ee]/,gnr6=/(E[+-])(\d)$/;function gfn2(v){var w=v<0?12:11;var o=gfn5(v.toFixed(12));if(o.length<=w)return o;o=v.toPrecision(10);if(o.length<=w)return o;return v.toExponential(5)}function gfn3(v){var o=v.toFixed(11).replace(gnr1,".$1");if(o.length>(v<0?12:11))o=v.toPrecision(6);return o}function gfn4(o){for(var i=0;i!=o.length;++i)if((o.charCodeAt(i)|32)===101)return o.replace(gnr4,".$1").replace(gnr5,"E").replace("e","E").replace(gnr6,"$10$2");return o}function gfn5(o){return o.indexOf(".")>-1?o.replace(gnr2,"").replace(gnr1,".$1"):o}return function general_fmt_num(v,opts){var V=Math.floor(Math.log(Math.abs(v))*Math.LOG10E),o;if(V>=-4&&V<=-1)o=v.toPrecision(10+V);else if(Math.abs(V)<=9)o=gfn2(v);else if(V===10)o=v.toFixed(10).substr(0,12);else o=gfn3(v);return gfn5(gfn4(o))}}();SSF._general_num=general_fmt_num;function general_fmt(v,opts){switch(typeof v){case"string":return v;case"boolean":return v?"TRUE":"FALSE";case"number":return(v|0)===v?general_fmt_int(v,opts):general_fmt_num(v,opts)}throw new Error("unsupported value in General format: "+v)}SSF._general=general_fmt;function fix_hijri(date,o){return 0}function parse_date_code(v,opts,b2){if(v>2958465||v<0)return null;var date=v|0,time=Math.floor(86400*(v-date)),dow=0;var dout=[];var out={D:date,T:time,u:86400*(v-date)-time,y:0,m:0,d:0,H:0,M:0,S:0,q:0};if(Math.abs(out.u)<1e-6)out.u=0;fixopts(opts!=null?opts:opts=[]);if(opts.date1904)date+=1462;if(out.u>.999){out.u=0;if(++time==86400){time=0;++date}}if(date===60){dout=b2?[1317,10,29]:[1900,2,29];dow=3}else if(date===0){dout=b2?[1317,8,29]:[1900,1,0];dow=6}else{if(date>60)--date;var d=new Date(1900,0,1);d.setDate(d.getDate()+date-1);dout=[d.getFullYear(),d.getMonth()+1,d.getDate()];dow=d.getDay();if(date<60)dow=(dow+6)%7;if(b2)dow=fix_hijri(d,dout)}out.y=dout[0];out.m=dout[1];out.d=dout[2];out.S=time%60;time=Math.floor(time/60);out.M=time%60;time=Math.floor(time/60);out.H=time;out.q=dow;return out}SSF.parse_date_code=parse_date_code;function write_date(type,fmt,val,ss0){var o="",ss=0,tt=0,y=val.y,out,outl=0;switch(type){case 98:y=val.y+543;case 121:switch(fmt.length){case 1:case 2:out=y%100;outl=2;break;default:out=y%1e4;outl=4;break}break;case 109:switch(fmt.length){case 1:case 2:out=val.m;outl=fmt.length;break;case 3:return months[val.m-1][1];case 5:return months[val.m-1][0];default:return months[val.m-1][2]}break;case 100:switch(fmt.length){case 1:case 2:out=val.d;outl=fmt.length;break;case 3:return days[val.q][0];default:return days[val.q][1]}break;case 104:switch(fmt.length){case 1:case 2:out=1+(val.H+11)%12;outl=fmt.length;break;default:throw"bad hour format: "+fmt}break;case 72:switch(fmt.length){case 1:case 2:out=val.H;outl=fmt.length;break;default:throw"bad hour format: "+fmt}break;case 77:switch(fmt.length){case 1:case 2:out=val.M;outl=fmt.length;break;default:throw"bad minute format: "+fmt}break;case 115:if(val.u===0)switch(fmt){case"s":case"ss":return pad0(val.S,fmt.length);case".0":case".00":case".000":}switch(fmt){case"s":case"ss":case".0":case".00":case".000":if(ss0>=2)tt=ss0===3?1e3:100;else tt=ss0===1?10:1;ss=Math.round(tt*(val.S+val.u));if(ss>=60*tt)ss=0;if(fmt==="s")return ss===0?"0":""+ss/tt;o=pad0(ss,2+ss0);if(fmt==="ss")return o.substr(0,2);return"."+o.substr(2,fmt.length-1);default:throw"bad second format: "+fmt}case 90:switch(fmt){case"[h]":case"[hh]":out=val.D*24+val.H;break;case"[m]":case"[mm]":out=(val.D*24+val.H)*60+val.M;break;case"[s]":case"[ss]":out=((val.D*24+val.H)*60+val.M)*60+Math.round(val.S+val.u);break;default:throw"bad abstime format: "+fmt}outl=fmt.length===3?1:2;break;case 101:out=y;outl=1}if(outl>0)return pad0(out,outl);else return""}function commaify(s){if(s.length<=3)return s;var j=s.length%3,o=s.substr(0,j);for(;j!=s.length;j+=3)o+=(o.length>0?",":"")+s.substr(j,3);return o}var write_num=function make_write_num(){var pct1=/%/g;function write_num_pct(type,fmt,val){var sfmt=fmt.replace(pct1,""),mul=fmt.length-sfmt.length;return write_num(type,sfmt,val*Math.pow(10,2*mul))+fill("%",mul)}function write_num_cm(type,fmt,val){var idx=fmt.length-1;while(fmt.charCodeAt(idx-1)===44)--idx;return write_num(type,fmt.substr(0,idx),val/Math.pow(10,3*(fmt.length-idx)))}function write_num_exp(fmt,val){var o;var idx=fmt.indexOf("E")-fmt.indexOf(".")-1;if(fmt.match(/^#+0.0E\+0$/)){var period=fmt.indexOf(".");if(period===-1)period=fmt.indexOf("E");var ee=Math.floor(Math.log(Math.abs(val))*Math.LOG10E)%period;if(ee<0)ee+=period;o=(val/Math.pow(10,ee)).toPrecision(idx+1+(period+ee)%period);if(o.indexOf("e")===-1){var fakee=Math.floor(Math.log(Math.abs(val))*Math.LOG10E);if(o.indexOf(".")===-1)o=o[0]+"."+o.substr(1)+"E+"+(fakee-o.length+ee);else o+="E+"+(fakee-ee);while(o.substr(0,2)==="0."){o=o[0]+o.substr(2,period)+"."+o.substr(2+period);o=o.replace(/^0+([1-9])/,"$1").replace(/^0+\./,"0.")}o=o.replace(/\+-/,"-")}o=o.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,function($$,$1,$2,$3){return $1+$2+$3.substr(0,(period+ee)%period)+"."+$3.substr(ee)+"E"})}else o=val.toExponential(idx);if(fmt.match(/E\+00$/)&&o.match(/e[+-]\d$/))o=o.substr(0,o.length-1)+"0"+o[o.length-1];if(fmt.match(/E\-/)&&o.match(/e\+/))o=o.replace(/e\+/,"e");return o.replace("e","E")}var frac1=/# (\?+)( ?)\/( ?)(\d+)/;function write_num_f1(r,aval,sign){var den=parseInt(r[4]),rr=Math.round(aval*den),base=Math.floor(rr/den);
var myn=rr-base*den,myd=den;return sign+(base===0?"":""+base)+" "+(myn===0?fill(" ",r[1].length+1+r[4].length):pad_(myn,r[1].length)+r[2]+"/"+r[3]+pad0(myd,r[4].length))}function write_num_f2(r,aval,sign){return sign+(aval===0?"":""+aval)+fill(" ",r[1].length+2+r[4].length)}var dec1=/^#*0*\.(0+)/;var closeparen=/\).*[0#]/;var phone=/\(###\) ###\\?-####/;function hashq(str){var o="",cc;for(var i=0;i!=str.length;++i)switch(cc=str.charCodeAt(i)){case 35:break;case 63:o+=" ";break;case 48:o+="0";break;default:o+=String.fromCharCode(cc)}return o}function rnd(val,d){var dd=Math.pow(10,d);return""+Math.round(val*dd)/dd}function dec(val,d){return Math.round((val-Math.floor(val))*Math.pow(10,d))}function flr(val){if(val<2147483647&&val>-2147483648)return""+(val>=0?val|0:val-1|0);return""+Math.floor(val)}function write_num_flt(type,fmt,val){if(type.charCodeAt(0)===40&&!fmt.match(closeparen)){var ffmt=fmt.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(val>=0)return write_num_flt("n",ffmt,val);return"("+write_num_flt("n",ffmt,-val)+")"}if(fmt.charCodeAt(fmt.length-1)===44)return write_num_cm(type,fmt,val);if(fmt.indexOf("%")!==-1)return write_num_pct(type,fmt,val);if(fmt.indexOf("E")!==-1)return write_num_exp(fmt,val);if(fmt.charCodeAt(0)===36)return"$"+write_num_flt(type,fmt.substr(fmt[1]==" "?2:1),val);var o,oo;var r,ri,ff,aval=Math.abs(val),sign=val<0?"-":"";if(fmt.match(/^00+$/))return sign+pad0r(aval,fmt.length);if(fmt.match(/^[#?]+$/)){o=pad0r(val,0);if(o==="0")o="";return o.length>fmt.length?o:hashq(fmt.substr(0,fmt.length-o.length))+o}if((r=fmt.match(frac1))!==null)return write_num_f1(r,aval,sign);if(fmt.match(/^#+0+$/)!==null)return sign+pad0r(aval,fmt.length-fmt.indexOf("0"));if((r=fmt.match(dec1))!==null){o=rnd(val,r[1].length).replace(/^([^\.]+)$/,"$1."+r[1]).replace(/\.$/,"."+r[1]).replace(/\.(\d*)$/,function($$,$1){return"."+$1+fill("0",r[1].length-$1.length)});return fmt.indexOf("0.")!==-1?o:o.replace(/^0\./,".")}fmt=fmt.replace(/^#+([0.])/,"$1");if((r=fmt.match(/^(0*)\.(#*)$/))!==null){return sign+rnd(aval,r[2].length).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,r[1].length?"0.":".")}if((r=fmt.match(/^#,##0(\.?)$/))!==null)return sign+commaify(pad0r(aval,0));if((r=fmt.match(/^#,##0\.([#0]*0)$/))!==null){return val<0?"-"+write_num_flt(type,fmt,-val):commaify(""+Math.floor(val))+"."+pad0(dec(val,r[1].length),r[1].length)}if((r=fmt.match(/^#,#*,#0/))!==null)return write_num_flt(type,fmt.replace(/^#,#*,/,""),val);if((r=fmt.match(/^([0#]+)(\\?-([0#]+))+$/))!==null){o=_strrev(write_num_flt(type,fmt.replace(/[\\-]/g,""),val));ri=0;return _strrev(_strrev(fmt.replace(/\\/g,"")).replace(/[0#]/g,function(x){return ri<o.length?o[ri++]:x==="0"?"0":""}))}if(fmt.match(phone)!==null){o=write_num_flt(type,"##########",val);return"("+o.substr(0,3)+") "+o.substr(3,3)+"-"+o.substr(6)}var oa="";if((r=fmt.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))!==null){ri=Math.min(r[4].length,7);ff=frac(aval,Math.pow(10,ri)-1,false);o=""+sign;oa=write_num("n",r[1],ff[1]);if(oa[oa.length-1]==" ")oa=oa.substr(0,oa.length-1)+"0";o+=oa+r[2]+"/"+r[3];oa=rpad_(ff[2],ri);if(oa.length<r[4].length)oa=hashq(r[4].substr(r[4].length-oa.length))+oa;o+=oa;return o}if((r=fmt.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))!==null){ri=Math.min(Math.max(r[1].length,r[4].length),7);ff=frac(aval,Math.pow(10,ri)-1,true);return sign+(ff[0]||(ff[1]?"":"0"))+" "+(ff[1]?pad_(ff[1],ri)+r[2]+"/"+r[3]+rpad_(ff[2],ri):fill(" ",2*ri+1+r[2].length+r[3].length))}if((r=fmt.match(/^[#0?]+$/))!==null){o=pad0r(val,0);if(fmt.length<=o.length)return o;return hashq(fmt.substr(0,fmt.length-o.length))+o}if((r=fmt.match(/^([#0?]+)\.([#0]+)$/))!==null){o=""+val.toFixed(Math.min(r[2].length,10)).replace(/([^0])0+$/,"$1");ri=o.indexOf(".");var lres=fmt.indexOf(".")-ri,rres=fmt.length-o.length-lres;return hashq(fmt.substr(0,lres)+o+fmt.substr(fmt.length-rres))}if((r=fmt.match(/^00,000\.([#0]*0)$/))!==null){ri=dec(val,r[1].length);return val<0?"-"+write_num_flt(type,fmt,-val):commaify(flr(val)).replace(/^\d,\d{3}$/,"0$&").replace(/^\d*$/,function($$){return"00,"+($$.length<3?pad0(0,3-$$.length):"")+$$})+"."+pad0(ri,r[1].length)}switch(fmt){case"#,###":var x=commaify(pad0r(aval,0));return x!=="0"?sign+x:"";default:}throw new Error("unsupported format |"+fmt+"|")}function write_num_cm2(type,fmt,val){var idx=fmt.length-1;while(fmt.charCodeAt(idx-1)===44)--idx;return write_num(type,fmt.substr(0,idx),val/Math.pow(10,3*(fmt.length-idx)))}function write_num_pct2(type,fmt,val){var sfmt=fmt.replace(pct1,""),mul=fmt.length-sfmt.length;return write_num(type,sfmt,val*Math.pow(10,2*mul))+fill("%",mul)}function write_num_exp2(fmt,val){var o;var idx=fmt.indexOf("E")-fmt.indexOf(".")-1;if(fmt.match(/^#+0.0E\+0$/)){var period=fmt.indexOf(".");if(period===-1)period=fmt.indexOf("E");var ee=Math.floor(Math.log(Math.abs(val))*Math.LOG10E)%period;if(ee<0)ee+=period;o=(val/Math.pow(10,ee)).toPrecision(idx+1+(period+ee)%period);if(!o.match(/[Ee]/)){var fakee=Math.floor(Math.log(Math.abs(val))*Math.LOG10E);if(o.indexOf(".")===-1)o=o[0]+"."+o.substr(1)+"E+"+(fakee-o.length+ee);else o+="E+"+(fakee-ee);o=o.replace(/\+-/,"-")}o=o.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,function($$,$1,$2,$3){return $1+$2+$3.substr(0,(period+ee)%period)+"."+$3.substr(ee)+"E"})}else o=val.toExponential(idx);if(fmt.match(/E\+00$/)&&o.match(/e[+-]\d$/))o=o.substr(0,o.length-1)+"0"+o[o.length-1];if(fmt.match(/E\-/)&&o.match(/e\+/))o=o.replace(/e\+/,"e");return o.replace("e","E")}function write_num_int(type,fmt,val){if(type.charCodeAt(0)===40&&!fmt.match(closeparen)){var ffmt=fmt.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(val>=0)return write_num_int("n",ffmt,val);return"("+write_num_int("n",ffmt,-val)+")"}if(fmt.charCodeAt(fmt.length-1)===44)return write_num_cm2(type,fmt,val);if(fmt.indexOf("%")!==-1)return write_num_pct2(type,fmt,val);if(fmt.indexOf("E")!==-1)return write_num_exp2(fmt,val);if(fmt.charCodeAt(0)===36)return"$"+write_num_int(type,fmt.substr(fmt[1]==" "?2:1),val);var o;var r,ri,ff,aval=Math.abs(val),sign=val<0?"-":"";if(fmt.match(/^00+$/))return sign+pad0(aval,fmt.length);if(fmt.match(/^[#?]+$/)){o=""+val;if(val===0)o="";return o.length>fmt.length?o:hashq(fmt.substr(0,fmt.length-o.length))+o}if((r=fmt.match(frac1))!==null)return write_num_f2(r,aval,sign);if(fmt.match(/^#+0+$/)!==null)return sign+pad0(aval,fmt.length-fmt.indexOf("0"));if((r=fmt.match(dec1))!==null){o=(""+val).replace(/^([^\.]+)$/,"$1."+r[1]).replace(/\.$/,"."+r[1]).replace(/\.(\d*)$/,function($$,$1){return"."+$1+fill("0",r[1].length-$1.length)});return fmt.indexOf("0.")!==-1?o:o.replace(/^0\./,".")}fmt=fmt.replace(/^#+([0.])/,"$1");if((r=fmt.match(/^(0*)\.(#*)$/))!==null){return sign+(""+aval).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,r[1].length?"0.":".")}if((r=fmt.match(/^#,##0(\.?)$/))!==null)return sign+commaify(""+aval);if((r=fmt.match(/^#,##0\.([#0]*0)$/))!==null){return val<0?"-"+write_num_int(type,fmt,-val):commaify(""+val)+"."+fill("0",r[1].length)}if((r=fmt.match(/^#,#*,#0/))!==null)return write_num_int(type,fmt.replace(/^#,#*,/,""),val);if((r=fmt.match(/^([0#]+)(\\?-([0#]+))+$/))!==null){o=_strrev(write_num_int(type,fmt.replace(/[\\-]/g,""),val));ri=0;return _strrev(_strrev(fmt.replace(/\\/g,"")).replace(/[0#]/g,function(x){return ri<o.length?o[ri++]:x==="0"?"0":""}))}if(fmt.match(phone)!==null){o=write_num_int(type,"##########",val);return"("+o.substr(0,3)+") "+o.substr(3,3)+"-"+o.substr(6)}var oa="";if((r=fmt.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))!==null){ri=Math.min(r[4].length,7);ff=frac(aval,Math.pow(10,ri)-1,false);o=""+sign;oa=write_num("n",r[1],ff[1]);if(oa[oa.length-1]==" ")oa=oa.substr(0,oa.length-1)+"0";o+=oa+r[2]+"/"+r[3];oa=rpad_(ff[2],ri);if(oa.length<r[4].length)oa=hashq(r[4].substr(r[4].length-oa.length))+oa;o+=oa;return o}if((r=fmt.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))!==null){ri=Math.min(Math.max(r[1].length,r[4].length),7);ff=frac(aval,Math.pow(10,ri)-1,true);return sign+(ff[0]||(ff[1]?"":"0"))+" "+(ff[1]?pad_(ff[1],ri)+r[2]+"/"+r[3]+rpad_(ff[2],ri):fill(" ",2*ri+1+r[2].length+r[3].length))}if((r=fmt.match(/^[#0?]+$/))!==null){o=""+val;if(fmt.length<=o.length)return o;return hashq(fmt.substr(0,fmt.length-o.length))+o}if((r=fmt.match(/^([#0]+)\.([#0]+)$/))!==null){o=""+val.toFixed(Math.min(r[2].length,10)).replace(/([^0])0+$/,"$1");ri=o.indexOf(".");var lres=fmt.indexOf(".")-ri,rres=fmt.length-o.length-lres;return hashq(fmt.substr(0,lres)+o+fmt.substr(fmt.length-rres))}if((r=fmt.match(/^00,000\.([#0]*0)$/))!==null){return val<0?"-"+write_num_int(type,fmt,-val):commaify(""+val).replace(/^\d,\d{3}$/,"0$&").replace(/^\d*$/,function($$){return"00,"+($$.length<3?pad0(0,3-$$.length):"")+$$})+"."+pad0(0,r[1].length)}switch(fmt){case"#,###":var x=commaify(""+aval);return x!=="0"?sign+x:"";default:}throw new Error("unsupported format |"+fmt+"|")}return function write_num(type,fmt,val){return(val|0)===val?write_num_int(type,fmt,val):write_num_flt(type,fmt,val)}}();function split_fmt(fmt){var out=[];var in_str=false,cc;for(var i=0,j=0;i<fmt.length;++i)switch(cc=fmt.charCodeAt(i)){case 34:in_str=!in_str;break;case 95:case 42:case 92:++i;break;case 59:out[out.length]=fmt.substr(j,i-j);j=i+1}out[out.length]=fmt.substr(j);if(in_str===true)throw new Error("Format |"+fmt+"| unterminated string ");return out}SSF._split=split_fmt;var abstime=/\[[HhMmSs]*\]/;function eval_fmt(fmt,v,opts,flen){var out=[],o="",i=0,c="",lst="t",q,dt,j,cc;var hr="H";while(i<fmt.length){switch(c=fmt[i]){case"G":if(!isgeneral(fmt,i))throw new Error("unrecognized character "+c+" in "+fmt);out[out.length]={t:"G",v:"General"};i+=7;break;case'"':for(o="";(cc=fmt.charCodeAt(++i))!==34&&i<fmt.length;)o+=String.fromCharCode(cc);out[out.length]={t:"t",v:o};++i;break;case"\\":var w=fmt[++i],t=w==="("||w===")"?w:"t";out[out.length]={t:t,v:w};++i;break;case"_":out[out.length]={t:"t",v:" "};i+=2;break;case"@":out[out.length]={t:"T",v:v};++i;break;case"B":case"b":if(fmt[i+1]==="1"||fmt[i+1]==="2"){if(dt==null){dt=parse_date_code(v,opts,fmt[i+1]==="2");if(dt==null)return""}out[out.length]={t:"X",v:fmt.substr(i,2)};lst=c;i+=2;break}case"M":case"D":case"Y":case"H":case"S":case"E":c=c.toLowerCase();case"m":case"d":case"y":case"h":case"s":case"e":case"g":if(v<0)return"";if(dt==null){dt=parse_date_code(v,opts);if(dt==null)return""}o=c;while(++i<fmt.length&&fmt[i].toLowerCase()===c)o+=c;if(c==="m"&&lst.toLowerCase()==="h")c="M";if(c==="h")c=hr;out[out.length]={t:c,v:o};lst=c;break;case"A":q={t:c,v:"A"};if(dt==null)dt=parse_date_code(v,opts);if(fmt.substr(i,3)==="A/P"){if(dt!=null)q.v=dt.H>=12?"P":"A";q.t="T";hr="h";i+=3}else if(fmt.substr(i,5)==="AM/PM"){if(dt!=null)q.v=dt.H>=12?"PM":"AM";q.t="T";i+=5;hr="h"}else{q.t="t";++i}if(dt==null&&q.t==="T")return"";out[out.length]=q;lst=c;break;case"[":o=c;while(fmt[i++]!=="]"&&i<fmt.length)o+=fmt[i];if(o.substr(-1)!=="]")throw'unterminated "[" block: |'+o+"|";if(o.match(abstime)){if(dt==null){dt=parse_date_code(v,opts);if(dt==null)return""}out[out.length]={t:"Z",v:o.toLowerCase()}}else{o=""}break;case".":if(dt!=null){o=c;while((c=fmt[++i])==="0")o+=c;out[out.length]={t:"s",v:o};break}case"0":case"#":o=c;while("0#?.,E+-%".indexOf(c=fmt[++i])>-1||c=="\\"&&fmt[i+1]=="-"&&"0#".indexOf(fmt[i+2])>-1)o+=c;out[out.length]={t:"n",v:o};break;case"?":o=c;while(fmt[++i]===c)o+=c;q={t:c,v:o};out[out.length]=q;lst=c;break;case"*":++i;if(fmt[i]==" "||fmt[i]=="*")++i;break;case"(":case")":out[out.length]={t:flen===1?"t":c,v:c};++i;break;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":o=c;while("0123456789".indexOf(fmt[++i])>-1)o+=fmt[i];out[out.length]={t:"D",v:o};break;case" ":out[out.length]={t:c,v:c};++i;break;default:if(",$-+/():!^&'~{}<>=€acfijklopqrtuvwxz".indexOf(c)===-1)throw new Error("unrecognized character "+c+" in "+fmt);out[out.length]={t:"t",v:c};++i;break}}var bt=0,ss0=0,ssm;for(i=out.length-1,lst="t";i>=0;--i){switch(out[i].t){case"h":case"H":out[i].t=hr;lst="h";if(bt<1)bt=1;break;case"s":if(ssm=out[i].v.match(/\.0+$/))ss0=Math.max(ss0,ssm[0].length-1);if(bt<3)bt=3;case"d":case"y":case"M":case"e":lst=out[i].t;break;case"m":if(lst==="s"){out[i].t="M";if(bt<2)bt=2}break;case"X":if(out[i].v==="B2");break;case"Z":if(bt<1&&out[i].v.match(/[Hh]/))bt=1;if(bt<2&&out[i].v.match(/[Mm]/))bt=2;if(bt<3&&out[i].v.match(/[Ss]/))bt=3}}switch(bt){case 0:break;case 1:if(dt.u>=.5){dt.u=0;++dt.S}if(dt.S>=60){dt.S=0;++dt.M}if(dt.M>=60){dt.M=0;++dt.H}break;case 2:if(dt.u>=.5){dt.u=0;++dt.S}if(dt.S>=60){dt.S=0;++dt.M}break}var nstr="",jj;for(i=0;i<out.length;++i){switch(out[i].t){case"t":case"T":case" ":case"D":break;case"X":out[i]=undefined;break;case"d":case"m":case"y":case"h":case"H":case"M":case"s":case"e":case"b":case"Z":out[i].v=write_date(out[i].t.charCodeAt(0),out[i].v,dt,ss0);out[i].t="t";break;case"n":case"(":case"?":jj=i+1;while(out[jj]!=null&&((c=out[jj].t)==="?"||c==="D"||(c===" "||c==="t")&&out[jj+1]!=null&&(out[jj+1].t==="?"||out[jj+1].t==="t"&&out[jj+1].v==="/")||out[i].t==="("&&(c===" "||c==="n"||c===")")||c==="t"&&(out[jj].v==="/"||"$€".indexOf(out[jj].v)>-1||out[jj].v===" "&&out[jj+1]!=null&&out[jj+1].t=="?"))){out[i].v+=out[jj].v;out[jj]=undefined;++jj}nstr+=out[i].v;i=jj-1;break;case"G":out[i].t="t";out[i].v=general_fmt(v,opts);break}}var vv="",myv,ostr;if(nstr.length>0){myv=v<0&&nstr.charCodeAt(0)===45?-v:v;ostr=write_num(nstr.charCodeAt(0)===40?"(":"n",nstr,myv);jj=ostr.length-1;var decpt=out.length;for(i=0;i<out.length;++i)if(out[i]!=null&&out[i].v.indexOf(".")>-1){decpt=i;break}var lasti=out.length;if(decpt===out.length&&ostr.indexOf("E")===-1){for(i=out.length-1;i>=0;--i){if(out[i]==null||"n?(".indexOf(out[i].t)===-1)continue;if(jj>=out[i].v.length-1){jj-=out[i].v.length;out[i].v=ostr.substr(jj+1,out[i].v.length)}else if(jj<0)out[i].v="";else{out[i].v=ostr.substr(0,jj+1);jj=-1}out[i].t="t";lasti=i}if(jj>=0&&lasti<out.length)out[lasti].v=ostr.substr(0,jj+1)+out[lasti].v}else if(decpt!==out.length&&ostr.indexOf("E")===-1){jj=ostr.indexOf(".")-1;for(i=decpt;i>=0;--i){if(out[i]==null||"n?(".indexOf(out[i].t)===-1)continue;j=out[i].v.indexOf(".")>-1&&i===decpt?out[i].v.indexOf(".")-1:out[i].v.length-1;vv=out[i].v.substr(j+1);for(;j>=0;--j){if(jj>=0&&(out[i].v[j]==="0"||out[i].v[j]==="#"))vv=ostr[jj--]+vv}out[i].v=vv;out[i].t="t";lasti=i}if(jj>=0&&lasti<out.length)out[lasti].v=ostr.substr(0,jj+1)+out[lasti].v;jj=ostr.indexOf(".")+1;for(i=decpt;i<out.length;++i){if(out[i]==null||"n?(".indexOf(out[i].t)===-1&&i!==decpt)continue;j=out[i].v.indexOf(".")>-1&&i===decpt?out[i].v.indexOf(".")+1:0;vv=out[i].v.substr(0,j);for(;j<out[i].v.length;++j){if(jj<ostr.length)vv+=ostr[jj++]}out[i].v=vv;out[i].t="t";lasti=i}}}for(i=0;i<out.length;++i)if(out[i]!=null&&"n(?".indexOf(out[i].t)>-1){myv=flen>1&&v<0&&i>0&&out[i-1].v==="-"?-v:v;out[i].v=write_num(out[i].t,out[i].v,myv);out[i].t="t"}var retval="";for(i=0;i!==out.length;++i)if(out[i]!=null)retval+=out[i].v;return retval}SSF._eval=eval_fmt;var cfregex=/\[[=<>]/;var cfregex2=/\[([=<>]*)(-?\d+\.?\d*)\]/;function chkcond(v,rr){if(rr==null)return false;var thresh=parseFloat(rr[2]);switch(rr[1]){case"=":if(v==thresh)return true;break;case">":if(v>thresh)return true;break;case"<":if(v<thresh)return true;break;case"<>":if(v!=thresh)return true;break;case">=":if(v>=thresh)return true;break;case"<=":if(v<=thresh)return true;break}return false}function choose_fmt(f,v){var fmt=split_fmt(f);var l=fmt.length,lat=fmt[l-1].indexOf("@");if(l<4&&lat>-1)--l;if(fmt.length>4)throw"cannot find right format for |"+fmt+"|";if(typeof v!=="number")return[4,fmt.length===4||lat>-1?fmt[fmt.length-1]:"@"];switch(fmt.length){case 1:fmt=lat>-1?["General","General","General",fmt[0]]:[fmt[0],fmt[0],fmt[0],"@"];break;case 2:fmt=lat>-1?[fmt[0],fmt[0],fmt[0],fmt[1]]:[fmt[0],fmt[1],fmt[0],"@"];break;case 3:fmt=lat>-1?[fmt[0],fmt[1],fmt[0],fmt[2]]:[fmt[0],fmt[1],fmt[2],"@"];break;case 4:break}var ff=v>0?fmt[0]:v<0?fmt[1]:fmt[2];if(fmt[0].indexOf("[")===-1&&fmt[1].indexOf("[")===-1)return[l,ff];if(fmt[0].match(cfregex)!=null||fmt[1].match(cfregex)!=null){var m1=fmt[0].match(cfregex2);var m2=fmt[1].match(cfregex2);return chkcond(v,m1)?[l,fmt[0]]:chkcond(v,m2)?[l,fmt[1]]:[l,fmt[m1!=null&&m2!=null?2:1]]}return[l,ff]}function format(fmt,v,o){fixopts(o!=null?o:o=[]);var sfmt="";switch(typeof fmt){case"string":sfmt=fmt;break;case"number":sfmt=(o.table!=null?o.table:table_fmt)[fmt];break}if(isgeneral(sfmt,0))return general_fmt(v,o);var f=choose_fmt(sfmt,v);if(isgeneral(f[1]))return general_fmt(v,o);if(v===true)v="TRUE";else if(v===false)v="FALSE";else if(v===""||v==null)return"";return eval_fmt(f[1],v,o,f[0])}SSF._table=table_fmt;SSF.load=function load_entry(fmt,idx){table_fmt[idx]=fmt};SSF.format=format;SSF.get_table=function get_table(){return table_fmt};SSF.load_table=function load_table(tbl){for(var i=0;i!=392;++i)if(tbl[i]!==undefined)SSF.load(tbl[i],i)}};make_ssf(SSF);var XLMLFormatMap={"General Number":"General","General Date":SSF._table[22],"Long Date":"dddd, mmmm dd, yyyy","Medium Date":SSF._table[15],"Short Date":SSF._table[14],"Long Time":SSF._table[19],"Medium Time":SSF._table[18],"Short Time":SSF._table[20],Currency:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',Fixed:SSF._table[2],Standard:SSF._table[4],Percent:SSF._table[10],Scientific:SSF._table[11],"Yes/No":'"Yes";"Yes";"No";@',"True/False":'"True";"True";"False";@',"On/Off":'"Yes";"Yes";"No";@'};var DO_NOT_EXPORT_CFB=true;var CFB=function _CFB(){var exports={};exports.version="0.10.2";function parse(file){var mver=3;var ssz=512;var nmfs=0;var ndfs=0;var dir_start=0;var minifat_start=0;var difat_start=0;var fat_addrs=[];var blob=file.slice(0,512);prep_blob(blob,0);var mv=check_get_mver(blob);mver=mv[0];switch(mver){case 3:ssz=512;break;case 4:ssz=4096;break;default:throw"Major Version: Expected 3 or 4 saw "+mver}if(ssz!==512){blob=file.slice(0,ssz);prep_blob(blob,28)}var header=file.slice(0,ssz);check_shifts(blob,mver);var nds=blob.read_shift(4,"i");if(mver===3&&nds!==0)throw"# Directory Sectors: Expected 0 saw "+nds;blob.l+=4;dir_start=blob.read_shift(4,"i");blob.l+=4;blob.chk("00100000","Mini Stream Cutoff Size: ");minifat_start=blob.read_shift(4,"i");nmfs=blob.read_shift(4,"i");difat_start=blob.read_shift(4,"i");ndfs=blob.read_shift(4,"i");for(var q,j=0;j<109;++j){q=blob.read_shift(4,"i");if(q<0)break;fat_addrs[j]=q}var sectors=sectorify(file,ssz);sleuth_fat(difat_start,ndfs,sectors,ssz,fat_addrs);var sector_list=make_sector_list(sectors,dir_start,fat_addrs,ssz);sector_list[dir_start].name="!Directory";if(nmfs>0&&minifat_start!==ENDOFCHAIN)sector_list[minifat_start].name="!MiniFAT";sector_list[fat_addrs[0]].name="!FAT";sector_list.fat_addrs=fat_addrs;sector_list.ssz=ssz;var files={},Paths=[],FileIndex=[],FullPaths=[],FullPathDir={};read_directory(dir_start,sector_list,sectors,Paths,nmfs,files,FileIndex);build_full_paths(FileIndex,FullPathDir,FullPaths,Paths);var root_name=Paths.shift();Paths.root=root_name;var find_path=make_find_path(FullPaths,Paths,FileIndex,files,root_name);return{raw:{header:header,sectors:sectors},FileIndex:FileIndex,FullPaths:FullPaths,FullPathDir:FullPathDir,find:find_path}}function check_get_mver(blob){blob.chk(HEADER_SIGNATURE,"Header Signature: ");blob.chk(HEADER_CLSID,"CLSID: ");var mver=blob.read_shift(2,"u");return[blob.read_shift(2,"u"),mver]}function check_shifts(blob,mver){var shift=9;blob.chk("feff","Byte Order: ");switch(shift=blob.read_shift(2)){case 9:if(mver!==3)throw"MajorVersion/SectorShift Mismatch";break;case 12:if(mver!==4)throw"MajorVersion/SectorShift Mismatch";break;default:throw"Sector Shift: Expected 9 or 12 saw "+shift}blob.chk("0600","Mini Sector Shift: ");blob.chk("000000000000","Reserved: ")}function sectorify(file,ssz){var nsectors=Math.ceil(file.length/ssz)-1;var sectors=new Array(nsectors);for(var i=1;i<nsectors;++i)sectors[i-1]=file.slice(i*ssz,(i+1)*ssz);sectors[nsectors-1]=file.slice(nsectors*ssz);return sectors}function build_full_paths(FI,FPD,FP,Paths){var i=0,L=0,R=0,C=0,j=0,pl=Paths.length;var dad=new Array(pl),q=new Array(pl);for(;i<pl;++i){dad[i]=q[i]=i;FP[i]=Paths[i]}for(;j<q.length;++j){i=q[j];L=FI[i].L;R=FI[i].R;C=FI[i].C;if(dad[i]===i){if(L!==-1&&dad[L]!==L)dad[i]=dad[L];if(R!==-1&&dad[R]!==R)dad[i]=dad[R]}if(C!==-1)dad[C]=i;if(L!==-1){dad[L]=dad[i];q.push(L)}if(R!==-1){dad[R]=dad[i];q.push(R)}}for(i=1;i!==pl;++i)if(dad[i]===i){if(R!==-1&&dad[R]!==R)dad[i]=dad[R];else if(L!==-1&&dad[L]!==L)dad[i]=dad[L]}for(i=1;i<pl;++i){if(FI[i].type===0)continue;j=dad[i];if(j===0)FP[i]=FP[0]+"/"+FP[i];else while(j!==0){FP[i]=FP[j]+"/"+FP[i];j=dad[j]}dad[i]=0}FP[0]+="/";for(i=1;i<pl;++i){if(FI[i].type!==2)FP[i]+="/";FPD[FP[i]]=FI[i]}}function make_find_path(FullPaths,Paths,FileIndex,files,root_name){var UCFullPaths=new Array(FullPaths.length);var UCPaths=new Array(Paths.length),i;for(i=0;i<FullPaths.length;++i)UCFullPaths[i]=FullPaths[i].toUpperCase().replace(chr0,"").replace(chr1,"!");for(i=0;i<Paths.length;++i)UCPaths[i]=Paths[i].toUpperCase().replace(chr0,"").replace(chr1,"!");return function find_path(path){var k;if(path.charCodeAt(0)===47){k=true;path=root_name+path}else k=path.indexOf("/")!==-1;var UCPath=path.toUpperCase().replace(chr0,"").replace(chr1,"!");var w=k===true?UCFullPaths.indexOf(UCPath):UCPaths.indexOf(UCPath);if(w===-1)return null;return k===true?FileIndex[w]:files[Paths[w]]}}function sleuth_fat(idx,cnt,sectors,ssz,fat_addrs){var q;if(idx===ENDOFCHAIN){if(cnt!==0)throw"DIFAT chain shorter than expected"}else if(idx!==-1){var sector=sectors[idx],m=(ssz>>>2)-1;for(var i=0;i<m;++i){if((q=__readInt32LE(sector,i*4))===ENDOFCHAIN)break;fat_addrs.push(q)}sleuth_fat(__readInt32LE(sector,ssz-4),cnt-1,sectors,ssz,fat_addrs)}}function get_sector_list(sectors,start,fat_addrs,ssz,chkd){var sl=sectors.length;var buf,buf_chain;if(!chkd)chkd=new Array(sl);var modulus=ssz-1,j,jj;buf=[];buf_chain=[];for(j=start;j>=0;){chkd[j]=true;buf[buf.length]=j;buf_chain.push(sectors[j]);var addr=fat_addrs[Math.floor(j*4/ssz)];jj=j*4&modulus;if(ssz<4+jj)throw"FAT boundary crossed: "+j+" 4 "+ssz;j=__readInt32LE(sectors[addr],jj)}return{nodes:buf,data:__toBuffer([buf_chain])}}function make_sector_list(sectors,dir_start,fat_addrs,ssz){var sl=sectors.length,sector_list=new Array(sl);var chkd=new Array(sl),buf,buf_chain;var modulus=ssz-1,i,j,k,jj;for(i=0;i<sl;++i){buf=[];k=i+dir_start;if(k>=sl)k-=sl;if(chkd[k]===true)continue;buf_chain=[];for(j=k;j>=0;){chkd[j]=true;buf[buf.length]=j;buf_chain.push(sectors[j]);var addr=fat_addrs[Math.floor(j*4/ssz)];jj=j*4&modulus;if(ssz<4+jj)throw"FAT boundary crossed: "+j+" 4 "+ssz;j=__readInt32LE(sectors[addr],jj)}sector_list[k]={nodes:buf,data:__toBuffer([buf_chain])}}return sector_list}function read_directory(dir_start,sector_list,sectors,Paths,nmfs,files,FileIndex){var blob;var minifat_store=0,pl=Paths.length?2:0;var sector=sector_list[dir_start].data;var i=0,namelen=0,name,o,ctime,mtime;for(;i<sector.length;i+=128){blob=sector.slice(i,i+128);prep_blob(blob,64);namelen=blob.read_shift(2);if(namelen===0)continue;name=__utf16le(blob,0,namelen-pl);Paths.push(name);o={name:name,type:blob.read_shift(1),color:blob.read_shift(1),L:blob.read_shift(4,"i"),R:blob.read_shift(4,"i"),C:blob.read_shift(4,"i"),clsid:blob.read_shift(16),state:blob.read_shift(4,"i")};ctime=blob.read_shift(2)+blob.read_shift(2)+blob.read_shift(2)+blob.read_shift(2);if(ctime!==0){o.ctime=ctime;o.ct=read_date(blob,blob.l-8)}mtime=blob.read_shift(2)+blob.read_shift(2)+blob.read_shift(2)+blob.read_shift(2);if(mtime!==0){o.mtime=mtime;o.mt=read_date(blob,blob.l-8)}o.start=blob.read_shift(4,"i");o.size=blob.read_shift(4,"i");if(o.type===5){minifat_store=o.start;if(nmfs>0&&minifat_store!==ENDOFCHAIN)sector_list[minifat_store].name="!StreamData"}else if(o.size>=4096){o.storage="fat";if(sector_list[o.start]===undefined)sector_list[o.start]=get_sector_list(sectors,o.start,sector_list.fat_addrs,sector_list.ssz);sector_list[o.start].name=o.name;o.content=sector_list[o.start].data.slice(0,o.size);prep_blob(o.content,0)}else{o.storage="minifat";if(minifat_store!==ENDOFCHAIN&&o.start!==ENDOFCHAIN){o.content=sector_list[minifat_store].data.slice(o.start*MSSZ,o.start*MSSZ+o.size);prep_blob(o.content,0)}}files[name]=o;FileIndex.push(o)}}function read_date(blob,offset){return new Date((__readUInt32LE(blob,offset+4)/1e7*Math.pow(2,32)+__readUInt32LE(blob,offset)/1e7-11644473600)*1e3)}var fs;function readFileSync(filename,options){if(fs===undefined)fs=require("fs");return parse(fs.readFileSync(filename),options)}function readSync(blob,options){switch(options!==undefined&&options.type!==undefined?options.type:"base64"){case"file":return readFileSync(blob,options);case"base64":return parse(s2a(Base64.decode(blob)),options);case"binary":return parse(s2a(blob),options)}return parse(blob)}var MSSZ=64;var ENDOFCHAIN=-2;var HEADER_SIGNATURE="d0cf11e0a1b11ae1";var HEADER_CLSID="00000000000000000000000000000000";var consts={MAXREGSECT:-6,DIFSECT:-4,FATSECT:-3,ENDOFCHAIN:ENDOFCHAIN,FREESECT:-1,HEADER_SIGNATURE:HEADER_SIGNATURE,HEADER_MINOR_VERSION:"3e00",MAXREGSID:-6,NOSTREAM:-1,HEADER_CLSID:HEADER_CLSID,EntryTypes:["unknown","storage","stream","lockbytes","property","root"]};exports.read=readSync;exports.parse=parse;exports.utils={ReadShift:ReadShift,CheckField:CheckField,prep_blob:prep_blob,bconcat:bconcat,consts:consts};return exports}();if(typeof require!=="undefined"&&typeof module!=="undefined"&&typeof DO_NOT_EXPORT_CFB==="undefined"){module.exports=CFB}function isval(x){return x!==undefined&&x!==null}function keys(o){return Object.keys(o)}function evert_key(obj,key){var o=[],K=keys(obj);for(var i=0;i!==K.length;++i)o[obj[K[i]][key]]=K[i];return o}function evert(obj){var o=[],K=keys(obj);for(var i=0;i!==K.length;++i)o[obj[K[i]]]=K[i];return o}function evert_num(obj){var o=[],K=keys(obj);for(var i=0;i!==K.length;++i)o[obj[K[i]]]=parseInt(K[i],10);return o}function evert_arr(obj){var o=[],K=keys(obj);for(var i=0;i!==K.length;++i){if(o[obj[K[i]]]==null)o[obj[K[i]]]=[];o[obj[K[i]]].push(K[i])}return o}function datenum(v,date1904){if(date1904)v+=1462;var epoch=Date.parse(v);return(epoch+22091616e5)/(24*60*60*1e3)}function cc2str(arr){var o="";for(var i=0;i!=arr.length;++i)o+=String.fromCharCode(arr[i]);return o}function getdata(data){if(!data)return null;if(data.name.substr(-4)===".bin"){if(data.data)return char_codes(data.data);if(data.asNodeBuffer&&has_buf)return data.asNodeBuffer();if(data._data&&data._data.getContent)return Array.prototype.slice.call(data._data.getContent())}else{if(data.data)return data.name.substr(-4)!==".bin"?debom_xml(data.data):char_codes(data.data);if(data.asNodeBuffer&&has_buf)return debom_xml(data.asNodeBuffer().toString("binary"));if(data.asBinary)return debom_xml(data.asBinary());if(data._data&&data._data.getContent)return debom_xml(cc2str(Array.prototype.slice.call(data._data.getContent(),0)))}return null}function safegetzipfile(zip,file){var f=file;if(zip.files[f])return zip.files[f];var lowerCaseFiles={};for(var key in zip.files){lowerCaseFiles[key.toLowerCase()]=zip.files[key]}f=file.toLowerCase();if(lowerCaseFiles[f])return lowerCaseFiles[f];f=f.replace(/\//g,"\\");if(lowerCaseFiles[f])return lowerCaseFiles[f];return null}function getzipfile(zip,file){var o=safegetzipfile(zip,file);if(o==null)throw new Error("Cannot find file "+file+" in zip");return o}function getzipdata(zip,file,safe){if(!safe)return getdata(getzipfile(zip,file));if(!file)return null;try{return getzipdata(zip,file)}catch(e){return null}}var _fs,jszip;if(typeof JSZip!=="undefined")jszip=JSZip;if(typeof exports!=="undefined"){if(typeof module!=="undefined"&&module.exports){if(has_buf&&typeof jszip==="undefined")jszip=require("js"+"zip");if(typeof jszip==="undefined")jszip=require("./js"+"zip").JSZip;_fs=require("f"+"s")}}var attregexg=/([\w:]+)=((?:")([^"]*)(?:")|(?:')([^']*)(?:'))/g;var tagregex=/<[^>]*>/g;var nsregex=/<\w*:/,nsregex2=/<(\/?)\w+:/;function parsexmltag(tag,skip_root){var z=[];var eq=0,c=0;for(;eq!==tag.length;++eq)if((c=tag.charCodeAt(eq))===32||c===10||c===13)break;if(!skip_root)z[0]=tag.substr(0,eq);if(eq===tag.length)return z;var m=tag.match(attregexg),j=0,w="",v="",i=0,q="",cc="";if(m)for(i=0;i!=m.length;++i){cc=m[i];for(c=0;c!=cc.length;++c)if(cc.charCodeAt(c)===61)break;q=cc.substr(0,c);v=cc.substring(c+2,cc.length-1);for(j=0;j!=q.length;++j)if(q.charCodeAt(j)===58)break;if(j===q.length)z[q]=v;else z[(j===5&&q.substr(0,5)==="xmlns"?"xmlns":"")+q.substr(j+1)]=v}return z}function strip_ns(x){return x.replace(nsregex2,"<$1")}var encodings={"&quot;":'"',"&apos;":"'","&gt;":">","&lt;":"<","&amp;":"&"};var rencoding=evert(encodings);var rencstr="&<>'\"".split("");var unescapexml=function(){var encregex=/&[a-z]*;/g,coderegex=/_x([\da-fA-F]+)_/g;return function unescapexml(text){var s=text+"";return s.replace(encregex,function($$){return encodings[$$]}).replace(coderegex,function(m,c){return String.fromCharCode(parseInt(c,16))})}}();var decregex=/[&<>'"]/g,charegex=/[\u0000-\u0008\u000b-\u001f]/g;function escapexml(text){var s=text+"";return s.replace(decregex,function(y){return rencoding[y]}).replace(charegex,function(s){return"_x"+("000"+s.charCodeAt(0).toString(16)).substr(-4)+"_"})}var xlml_fixstr=function(){var entregex=/&#(\d+);/g;function entrepl($$,$1){return String.fromCharCode(parseInt($1,10))}return function xlml_fixstr(str){return str.replace(entregex,entrepl)}}();function parsexmlbool(value,tag){switch(value){case"1":case"true":case"TRUE":return true;default:return false}}var utf8read=function utf8reada(orig){var out="",i=0,c=0,d=0,e=0,f=0,w=0;while(i<orig.length){c=orig.charCodeAt(i++);if(c<128){out+=String.fromCharCode(c);continue}d=orig.charCodeAt(i++);if(c>191&&c<224){out+=String.fromCharCode((c&31)<<6|d&63);continue}e=orig.charCodeAt(i++);if(c<240){out+=String.fromCharCode((c&15)<<12|(d&63)<<6|e&63);continue}f=orig.charCodeAt(i++);w=((c&7)<<18|(d&63)<<12|(e&63)<<6|f&63)-65536;out+=String.fromCharCode(55296+(w>>>10&1023));out+=String.fromCharCode(56320+(w&1023))}return out};if(has_buf){var utf8readb=function utf8readb(data){var out=new Buffer(2*data.length),w,i,j=1,k=0,ww=0,c;for(i=0;i<data.length;i+=j){j=1;if((c=data.charCodeAt(i))<128)w=c;else if(c<224){w=(c&31)*64+(data.charCodeAt(i+1)&63);j=2}else if(c<240){w=(c&15)*4096+(data.charCodeAt(i+1)&63)*64+(data.charCodeAt(i+2)&63);j=3}else{j=4;w=(c&7)*262144+(data.charCodeAt(i+1)&63)*4096+(data.charCodeAt(i+2)&63)*64+(data.charCodeAt(i+3)&63);w-=65536;ww=55296+(w>>>10&1023);w=56320+(w&1023)}if(ww!==0){out[k++]=ww&255;out[k++]=ww>>>8;ww=0}out[k++]=w%256;out[k++]=w>>>8}out.length=k;return out.toString("ucs2")};var corpus="foo bar baz☃🍣";if(utf8read(corpus)==utf8readb(corpus))utf8read=utf8readb;var utf8readc=function utf8readc(data){return Buffer(data,"binary").toString("utf8")};if(utf8read(corpus)==utf8readc(corpus))utf8read=utf8readc}var matchtag=function(){var mtcache={};return function matchtag(f,g){var t=f+"|"+g;if(mtcache[t]!==undefined)return mtcache[t];return mtcache[t]=new RegExp("<(?:\\w+:)?"+f+'(?: xml:space="preserve")?(?:[^>]*)>([^☃]*)</(?:\\w+:)?'+f+">",g||"")}}();var vtregex=function(){var vt_cache={};return function vt_regex(bt){if(vt_cache[bt]!==undefined)return vt_cache[bt];return vt_cache[bt]=new RegExp("<vt:"+bt+">(.*?)</vt:"+bt+">","g")}}();var vtvregex=/<\/?vt:variant>/g,vtmregex=/<vt:([^>]*)>(.*)</;function parseVector(data){var h=parsexmltag(data);var matches=data.match(vtregex(h.baseType))||[];if(matches.length!=h.size)throw"unexpected vector length "+matches.length+" != "+h.size;var res=[];matches.forEach(function(x){var v=x.replace(vtvregex,"").match(vtmregex);res.push({v:v[2],t:v[1]})});return res}var wtregex=/(^\s|\s$|\n)/;function writetag(f,g){return"<"+f+(g.match(wtregex)?' xml:space="preserve"':"")+">"+g+"</"+f+">"}function wxt_helper(h){return keys(h).map(function(k){return" "+k+'="'+h[k]+'"'}).join("")}function writextag(f,g,h){return"<"+f+(isval(h)?wxt_helper(h):"")+(isval(g)?(g.match(wtregex)?' xml:space="preserve"':"")+">"+g+"</"+f:"/")+">"}function write_w3cdtf(d,t){try{return d.toISOString().replace(/\.\d*/,"")}catch(e){if(t)throw e}}function write_vt(s){
switch(typeof s){case"string":return writextag("vt:lpwstr",s);case"number":return writextag((s|0)==s?"vt:i4":"vt:r8",String(s));case"boolean":return writextag("vt:bool",s?"true":"false")}if(s instanceof Date)return writextag("vt:filetime",write_w3cdtf(s));throw new Error("Unable to serialize "+s)}var XML_HEADER='<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r\n';var XMLNS={dc:"http://purl.org/dc/elements/1.1/",dcterms:"http://purl.org/dc/terms/",dcmitype:"http://purl.org/dc/dcmitype/",mx:"http://schemas.microsoft.com/office/mac/excel/2008/main",r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships",sjs:"http://schemas.openxmlformats.org/package/2006/sheetjs/core-properties",vt:"http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes",xsi:"http://www.w3.org/2001/XMLSchema-instance",xsd:"http://www.w3.org/2001/XMLSchema"};XMLNS.main=["http://schemas.openxmlformats.org/spreadsheetml/2006/main","http://purl.oclc.org/ooxml/spreadsheetml/main","http://schemas.microsoft.com/office/excel/2006/main","http://schemas.microsoft.com/office/excel/2006/2"];function readIEEE754(buf,idx,isLE,nl,ml){if(isLE===undefined)isLE=true;if(!nl)nl=8;if(!ml&&nl===8)ml=52;var e,m,el=nl*8-ml-1,eMax=(1<<el)-1,eBias=eMax>>1;var bits=-7,d=isLE?-1:1,i=isLE?nl-1:0,s=buf[idx+i];i+=d;e=s&(1<<-bits)-1;s>>>=-bits;bits+=el;for(;bits>0;e=e*256+buf[idx+i],i+=d,bits-=8);m=e&(1<<-bits)-1;e>>>=-bits;bits+=ml;for(;bits>0;m=m*256+buf[idx+i],i+=d,bits-=8);if(e===eMax)return m?NaN:(s?-1:1)*Infinity;else if(e===0)e=1-eBias;else{m=m+Math.pow(2,ml);e=e-eBias}return(s?-1:1)*m*Math.pow(2,e-ml)}var __toBuffer,___toBuffer;__toBuffer=___toBuffer=function toBuffer_(bufs){var x=[];for(var i=0;i<bufs[0].length;++i){x.push.apply(x,bufs[0][i])}return x};var __utf16le,___utf16le;__utf16le=___utf16le=function utf16le_(b,s,e){var ss=[];for(var i=s;i<e;i+=2)ss.push(String.fromCharCode(__readUInt16LE(b,i)));return ss.join("")};var __hexlify,___hexlify;__hexlify=___hexlify=function hexlify_(b,s,l){return b.slice(s,s+l).map(function(x){return(x<16?"0":"")+x.toString(16)}).join("")};var __utf8,___utf8;__utf8=___utf8=function(b,s,e){var ss=[];for(var i=s;i<e;i++)ss.push(String.fromCharCode(__readUInt8(b,i)));return ss.join("")};var __lpstr,___lpstr;__lpstr=___lpstr=function lpstr_(b,i){var len=__readUInt32LE(b,i);return len>0?__utf8(b,i+4,i+4+len-1):""};var __lpwstr,___lpwstr;__lpwstr=___lpwstr=function lpwstr_(b,i){var len=2*__readUInt32LE(b,i);return len>0?__utf8(b,i+4,i+4+len-1):""};var __double,___double;__double=___double=function(b,idx){return readIEEE754(b,idx)};var is_buf=function is_buf_a(a){return Array.isArray(a)};if(has_buf){__utf16le=function utf16le_b(b,s,e){if(!Buffer.isBuffer(b))return ___utf16le(b,s,e);return b.toString("utf16le",s,e)};__hexlify=function(b,s,l){return Buffer.isBuffer(b)?b.toString("hex",s,s+l):___hexlify(b,s,l)};__lpstr=function lpstr_b(b,i){if(!Buffer.isBuffer(b))return ___lpstr(b,i);var len=b.readUInt32LE(i);return len>0?b.toString("utf8",i+4,i+4+len-1):""};__lpwstr=function lpwstr_b(b,i){if(!Buffer.isBuffer(b))return ___lpwstr(b,i);var len=2*b.readUInt32LE(i);return b.toString("utf16le",i+4,i+4+len-1)};__utf8=function utf8_b(s,e){return this.toString("utf8",s,e)};__toBuffer=function(bufs){return bufs[0].length>0&&Buffer.isBuffer(bufs[0][0])?Buffer.concat(bufs[0]):___toBuffer(bufs)};bconcat=function(bufs){return Buffer.isBuffer(bufs[0])?Buffer.concat(bufs):[].concat.apply([],bufs)};__double=function double_(b,i){if(Buffer.isBuffer(b))return b.readDoubleLE(i);return ___double(b,i)};is_buf=function is_buf_b(a){return Buffer.isBuffer(a)||Array.isArray(a)}}if(typeof cptable!=="undefined"){__utf16le=function(b,s,e){return cptable.utils.decode(1200,b.slice(s,e))};__utf8=function(b,s,e){return cptable.utils.decode(65001,b.slice(s,e))};__lpstr=function(b,i){var len=__readUInt32LE(b,i);return len>0?cptable.utils.decode(current_codepage,b.slice(i+4,i+4+len-1)):""};__lpwstr=function(b,i){var len=2*__readUInt32LE(b,i);return len>0?cptable.utils.decode(1200,b.slice(i+4,i+4+len-1)):""}}var __readUInt8=function(b,idx){return b[idx]};var __readUInt16LE=function(b,idx){return b[idx+1]*(1<<8)+b[idx]};var __readInt16LE=function(b,idx){var u=b[idx+1]*(1<<8)+b[idx];return u<32768?u:(65535-u+1)*-1};var __readUInt32LE=function(b,idx){return b[idx+3]*(1<<24)+(b[idx+2]<<16)+(b[idx+1]<<8)+b[idx]};var __readInt32LE=function(b,idx){return b[idx+3]<<24|b[idx+2]<<16|b[idx+1]<<8|b[idx]};var ___unhexlify=function(s){return s.match(/../g).map(function(x){return parseInt(x,16)})};var __unhexlify=typeof Buffer!=="undefined"?function(s){return Buffer.isBuffer(s)?new Buffer(s,"hex"):___unhexlify(s)}:___unhexlify;function ReadShift(size,t){var o="",oI,oR,oo=[],w,vv,i,loc;switch(t){case"dbcs":loc=this.l;if(has_buf&&Buffer.isBuffer(this))o=this.slice(this.l,this.l+2*size).toString("utf16le");else for(i=0;i!=size;++i){o+=String.fromCharCode(__readUInt16LE(this,loc));loc+=2}size*=2;break;case"utf8":o=__utf8(this,this.l,this.l+size);break;case"utf16le":size*=2;o=__utf16le(this,this.l,this.l+size);break;case"lpstr":o=__lpstr(this,this.l);size=5+o.length;break;case"lpwstr":o=__lpwstr(this,this.l);size=5+o.length;if(o[o.length-1]=="\0")size+=2;break;case"cstr":size=0;o="";while((w=__readUInt8(this,this.l+size++))!==0)oo.push(_getchar(w));o=oo.join("");break;case"wstr":size=0;o="";while((w=__readUInt16LE(this,this.l+size))!==0){oo.push(_getchar(w));size+=2}size+=2;o=oo.join("");break;case"dbcs-cont":o="";loc=this.l;for(i=0;i!=size;++i){if(this.lens&&this.lens.indexOf(loc)!==-1){w=__readUInt8(this,loc);this.l=loc+1;vv=ReadShift.call(this,size-i,w?"dbcs-cont":"sbcs-cont");return oo.join("")+vv}oo.push(_getchar(__readUInt16LE(this,loc)));loc+=2}o=oo.join("");size*=2;break;case"sbcs-cont":o="";loc=this.l;for(i=0;i!=size;++i){if(this.lens&&this.lens.indexOf(loc)!==-1){w=__readUInt8(this,loc);this.l=loc+1;vv=ReadShift.call(this,size-i,w?"dbcs-cont":"sbcs-cont");return oo.join("")+vv}oo.push(_getchar(__readUInt8(this,loc)));loc+=1}o=oo.join("");break;default:switch(size){case 1:oI=__readUInt8(this,this.l);this.l++;return oI;case 2:oI=(t==="i"?__readInt16LE:__readUInt16LE)(this,this.l);this.l+=2;return oI;case 4:if(t==="i"||(this[this.l+3]&128)===0){oI=__readInt32LE(this,this.l);this.l+=4;return oI}else{oR=__readUInt32LE(this,this.l);this.l+=4;return oR}break;case 8:if(t==="f"){oR=__double(this,this.l);this.l+=8;return oR}case 16:o=__hexlify(this,this.l,size);break}}this.l+=size;return o}function WriteShift(t,val,f){var size,i;if(f==="dbcs"){for(i=0;i!=val.length;++i)this.writeUInt16LE(val.charCodeAt(i),this.l+2*i);size=2*val.length}else switch(t){case 1:size=1;this[this.l]=val&255;break;case 3:size=3;this[this.l+2]=val&255;val>>>=8;this[this.l+1]=val&255;val>>>=8;this[this.l]=val&255;break;case 4:size=4;this.writeUInt32LE(val,this.l);break;case 8:size=8;if(f==="f"){this.writeDoubleLE(val,this.l);break}case 16:break;case-4:size=4;this.writeInt32LE(val,this.l);break}this.l+=size;return this}function CheckField(hexstr,fld){var m=__hexlify(this,this.l,hexstr.length>>1);if(m!==hexstr)throw fld+"Expected "+hexstr+" saw "+m;this.l+=hexstr.length>>1}function prep_blob(blob,pos){blob.l=pos;blob.read_shift=ReadShift;blob.chk=CheckField;blob.write_shift=WriteShift}function parsenoop(blob,length){blob.l+=length}function writenoop(blob,length){blob.l+=length}function new_buf(sz){var o=new_raw_buf(sz);prep_blob(o,0);return o}function recordhopper(data,cb,opts){var tmpbyte,cntbyte,length;prep_blob(data,data.l||0);while(data.l<data.length){var RT=data.read_shift(1);if(RT&128)RT=(RT&127)+((data.read_shift(1)&127)<<7);var R=XLSBRecordEnum[RT]||XLSBRecordEnum[65535];tmpbyte=data.read_shift(1);length=tmpbyte&127;for(cntbyte=1;cntbyte<4&&tmpbyte&128;++cntbyte)length+=((tmpbyte=data.read_shift(1))&127)<<7*cntbyte;var d=R.f(data,length,opts);if(cb(d,R,RT))return}}function buf_array(){var bufs=[],blksz=2048;var newblk=function ba_newblk(sz){var o=new_buf(sz);prep_blob(o,0);return o};var curbuf=newblk(blksz);var endbuf=function ba_endbuf(){curbuf.length=curbuf.l;if(curbuf.length>0)bufs.push(curbuf);curbuf=null};var next=function ba_next(sz){if(sz<curbuf.length-curbuf.l)return curbuf;endbuf();return curbuf=newblk(Math.max(sz+1,blksz))};var end=function ba_end(){endbuf();return __toBuffer([bufs])};var push=function ba_push(buf){endbuf();curbuf=buf;next(blksz)};return{next:next,push:push,end:end,_bufs:bufs}}function write_record(ba,type,payload,length){var t=evert_RE[type],l;if(!length)length=XLSBRecordEnum[t].p||(payload||[]).length||0;l=1+(t>=128?1:0)+1+length;if(length>=128)++l;if(length>=16384)++l;if(length>=2097152)++l;var o=ba.next(l);if(t<=127)o.write_shift(1,t);else{o.write_shift(1,(t&127)+128);o.write_shift(1,t>>7)}for(var i=0;i!=4;++i){if(length>=128){o.write_shift(1,(length&127)+128);length>>=7}else{o.write_shift(1,length);break}}if(length>0&&is_buf(payload))ba.push(payload)}function shift_cell_xls(cell,tgt){if(tgt.s){if(cell.cRel)cell.c+=tgt.s.c;if(cell.rRel)cell.r+=tgt.s.r}else{cell.c+=tgt.c;cell.r+=tgt.r}cell.cRel=cell.rRel=0;while(cell.c>=256)cell.c-=256;while(cell.r>=65536)cell.r-=65536;return cell}function shift_range_xls(cell,range){cell.s=shift_cell_xls(cell.s,range.s);cell.e=shift_cell_xls(cell.e,range.s);return cell}var OFFCRYPTO={};var make_offcrypto=function(O,_crypto){var crypto;if(typeof _crypto!=="undefined")crypto=_crypto;else if(typeof require!=="undefined"){try{crypto=require("cry"+"pto")}catch(e){crypto=null}}O.rc4=function(key,data){var S=new Array(256);var c=0,i=0,j=0,t=0;for(i=0;i!=256;++i)S[i]=i;for(i=0;i!=256;++i){j=j+S[i]+key[i%key.length].charCodeAt(0)&255;t=S[i];S[i]=S[j];S[j]=t}i=j=0;out=Buffer(data.length);for(c=0;c!=data.length;++c){i=i+1&255;j=(j+S[i])%256;t=S[i];S[i]=S[j];S[j]=t;out[c]=data[c]^S[S[i]+S[j]&255]}return out};if(crypto){O.md5=function(hex){return crypto.createHash("md5").update(hex).digest("hex")}}else{O.md5=function(hex){throw"unimplemented"}}};make_offcrypto(OFFCRYPTO,typeof crypto!=="undefined"?crypto:undefined);function parse_StrRun(data,length){return{ich:data.read_shift(2),ifnt:data.read_shift(2)}}function parse_RichStr(data,length){var start=data.l;var flags=data.read_shift(1);var str=parse_XLWideString(data);var rgsStrRun=[];var z={t:str,h:str};if((flags&1)!==0){var dwSizeStrRun=data.read_shift(4);for(var i=0;i!=dwSizeStrRun;++i)rgsStrRun.push(parse_StrRun(data));z.r=rgsStrRun}else z.r="<t>"+escapexml(str)+"</t>";if((flags&2)!==0){}data.l=start+length;return z}function write_RichStr(str,o){if(o==null)o=new_buf(5+2*str.t.length);o.write_shift(1,0);write_XLWideString(str.t,o);return o}function parse_XLSBCell(data){var col=data.read_shift(4);var iStyleRef=data.read_shift(2);iStyleRef+=data.read_shift(1)<<16;var fPhShow=data.read_shift(1);return{c:col,iStyleRef:iStyleRef}}function write_XLSBCell(cell,o){if(o==null)o=new_buf(8);o.write_shift(-4,cell.c);o.write_shift(3,cell.iStyleRef===undefined?cell.iStyleRef:cell.s);o.write_shift(1,0);return o}function parse_XLSBCodeName(data,length){return parse_XLWideString(data,length)}function parse_XLNullableWideString(data){var cchCharacters=data.read_shift(4);return cchCharacters===0||cchCharacters===4294967295?"":data.read_shift(cchCharacters,"dbcs")}function write_XLNullableWideString(data,o){if(!o)o=new_buf(127);o.write_shift(4,data.length>0?data.length:4294967295);if(data.length>0)o.write_shift(0,data,"dbcs");return o}function parse_XLWideString(data){var cchCharacters=data.read_shift(4);return cchCharacters===0?"":data.read_shift(cchCharacters,"dbcs")}function write_XLWideString(data,o){if(o==null)o=new_buf(4+2*data.length);o.write_shift(4,data.length);if(data.length>0)o.write_shift(0,data,"dbcs");return o}var parse_RelID=parse_XLNullableWideString;var write_RelID=write_XLNullableWideString;function parse_RkNumber(data){var b=data.slice(data.l,data.l+4);var fX100=b[0]&1,fInt=b[0]&2;data.l+=4;b[0]&=252;var RK=fInt===0?__double([0,0,0,0,b[0],b[1],b[2],b[3]],0):__readInt32LE(b,0)>>2;return fX100?RK/100:RK}function parse_UncheckedRfX(data){var cell={s:{},e:{}};cell.s.r=data.read_shift(4);cell.e.r=data.read_shift(4);cell.s.c=data.read_shift(4);cell.e.c=data.read_shift(4);return cell}function write_UncheckedRfX(r,o){if(!o)o=new_buf(16);o.write_shift(4,r.s.r);o.write_shift(4,r.e.r);o.write_shift(4,r.s.c);o.write_shift(4,r.e.c);return o}function parse_Xnum(data,length){return data.read_shift(8,"f")}function write_Xnum(data,o){return(o||new_buf(8)).write_shift(8,"f",data)}var BErr={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"};var RBErr=evert_num(BErr);function parse_BrtColor(data,length){var out={};var d=data.read_shift(1);out.fValidRGB=d&1;out.xColorType=d>>>1;out.index=data.read_shift(1);out.nTintAndShade=data.read_shift(2,"i");out.bRed=data.read_shift(1);out.bGreen=data.read_shift(1);out.bBlue=data.read_shift(1);out.bAlpha=data.read_shift(1)}function parse_FontFlags(data,length){var d=data.read_shift(1);data.l++;var out={fItalic:d&2,fStrikeout:d&8,fOutline:d&16,fShadow:d&32,fCondense:d&64,fExtend:d&128};return out}{var VT_EMPTY=0;var VT_NULL=1;var VT_I2=2;var VT_I4=3;var VT_R4=4;var VT_R8=5;var VT_CY=6;var VT_DATE=7;var VT_BSTR=8;var VT_ERROR=10;var VT_BOOL=11;var VT_VARIANT=12;var VT_DECIMAL=14;var VT_I1=16;var VT_UI1=17;var VT_UI2=18;var VT_UI4=19;var VT_I8=20;var VT_UI8=21;var VT_INT=22;var VT_UINT=23;var VT_LPSTR=30;var VT_LPWSTR=31;var VT_FILETIME=64;var VT_BLOB=65;var VT_STREAM=66;var VT_STORAGE=67;var VT_STREAMED_Object=68;var VT_STORED_Object=69;var VT_BLOB_Object=70;var VT_CF=71;var VT_CLSID=72;var VT_VERSIONED_STREAM=73;var VT_VECTOR=4096;var VT_ARRAY=8192;var VT_STRING=80;var VT_USTR=81;var VT_CUSTOM=[VT_STRING,VT_USTR]}var DocSummaryPIDDSI={1:{n:"CodePage",t:VT_I2},2:{n:"Category",t:VT_STRING},3:{n:"PresentationFormat",t:VT_STRING},4:{n:"ByteCount",t:VT_I4},5:{n:"LineCount",t:VT_I4},6:{n:"ParagraphCount",t:VT_I4},7:{n:"SlideCount",t:VT_I4},8:{n:"NoteCount",t:VT_I4},9:{n:"HiddenCount",t:VT_I4},10:{n:"MultimediaClipCount",t:VT_I4},11:{n:"Scale",t:VT_BOOL},12:{n:"HeadingPair",t:VT_VECTOR|VT_VARIANT},13:{n:"DocParts",t:VT_VECTOR|VT_LPSTR},14:{n:"Manager",t:VT_STRING},15:{n:"Company",t:VT_STRING},16:{n:"LinksDirty",t:VT_BOOL},17:{n:"CharacterCount",t:VT_I4},19:{n:"SharedDoc",t:VT_BOOL},22:{n:"HLinksChanged",t:VT_BOOL},23:{n:"AppVersion",t:VT_I4,p:"version"},26:{n:"ContentType",t:VT_STRING},27:{n:"ContentStatus",t:VT_STRING},28:{n:"Language",t:VT_STRING},29:{n:"Version",t:VT_STRING},255:{}};var SummaryPIDSI={1:{n:"CodePage",t:VT_I2},2:{n:"Title",t:VT_STRING},3:{n:"Subject",t:VT_STRING},4:{n:"Author",t:VT_STRING},5:{n:"Keywords",t:VT_STRING},6:{n:"Comments",t:VT_STRING},7:{n:"Template",t:VT_STRING},8:{n:"LastAuthor",t:VT_STRING},9:{n:"RevNumber",t:VT_STRING},10:{n:"EditTime",t:VT_FILETIME},11:{n:"LastPrinted",t:VT_FILETIME},12:{n:"CreatedDate",t:VT_FILETIME},13:{n:"ModifiedDate",t:VT_FILETIME},14:{n:"PageCount",t:VT_I4},15:{n:"WordCount",t:VT_I4},16:{n:"CharCount",t:VT_I4},17:{n:"Thumbnail",t:VT_CF},18:{n:"ApplicationName",t:VT_LPSTR},19:{n:"DocumentSecurity",t:VT_I4},255:{}};var SpecialProperties={2147483648:{n:"Locale",t:VT_UI4},2147483651:{n:"Behavior",t:VT_UI4},1919054434:{}};(function(){for(var y in SpecialProperties)if(SpecialProperties.hasOwnProperty(y))DocSummaryPIDDSI[y]=SummaryPIDSI[y]=SpecialProperties[y]})();var CountryEnum={1:"US",2:"CA",3:"",7:"RU",20:"EG",30:"GR",31:"NL",32:"BE",33:"FR",34:"ES",36:"HU",39:"IT",41:"CH",43:"AT",44:"GB",45:"DK",46:"SE",47:"NO",48:"PL",49:"DE",52:"MX",55:"BR",61:"AU",64:"NZ",66:"TH",81:"JP",82:"KR",84:"VN",86:"CN",90:"TR",105:"JS",213:"DZ",216:"MA",218:"LY",351:"PT",354:"IS",358:"FI",420:"CZ",886:"TW",961:"LB",962:"JO",963:"SY",964:"IQ",965:"KW",966:"SA",971:"AE",972:"IL",974:"QA",981:"IR",65535:"US"};var XLSFillPattern=[null,"solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];function rgbify(arr){return arr.map(function(x){return[x>>16&255,x>>8&255,x&255]})}var XLSIcv=rgbify([0,16777215,16711680,65280,255,16776960,16711935,65535,0,16777215,16711680,65280,255,16776960,16711935,65535,8388608,32768,128,8421376,8388736,32896,12632256,8421504,10066431,10040166,16777164,13434879,6684774,16744576,26316,13421823,128,16711935,16776960,65535,8388736,8388608,32896,255,52479,13434879,13434828,16777113,10079487,16751052,13408767,16764057,3368703,3394764,10079232,16763904,16750848,16737792,6710937,9868950,13158,3381606,13056,3355392,10040064,10040166,3355545,3355443,16777215,0]);var ct2type={"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":"workbooks","application/vnd.ms-excel.binIndexWs":"TODO","application/vnd.ms-excel.chartsheet":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":"TODO","application/vnd.ms-excel.dialogsheet":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":"TODO","application/vnd.ms-excel.macrosheet":"TODO","application/vnd.ms-excel.macrosheet+xml":"TODO","application/vnd.ms-excel.intlmacrosheet":"TODO","application/vnd.ms-excel.binIndexMs":"TODO","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.ms-excel.comments":"comments","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":"comments","application/vnd.ms-excel.pivotTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+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":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml":"TODO","application/vnd.ms-excel.sheetMetadata":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml":"TODO","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.ms-excel.Timeline+xml":"TODO","application/vnd.ms-excel.TimelineCache+xml":"TODO","application/vnd.ms-office.vbaProject":"vba","application/vnd.ms-office.vbaProjectSignature":"vba","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":"TODO","application/vnd.openxmlformats-officedocument.drawingml.chart+xml":"TODO","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",sheet:"js"};var CT_LIST=function(){var o={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",xltx:"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml"},strs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml",xlsb:"application/vnd.ms-excel.sharedStrings"},sheets:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",xlsb:"application/vnd.ms-excel.worksheet"},styles:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml",xlsb:"application/vnd.ms-excel.styles"}};keys(o).forEach(function(k){if(!o[k].xlsm)o[k].xlsm=o[k].xlsx});keys(o).forEach(function(k){keys(o[k]).forEach(function(v){ct2type[o[k][v]]=k})});return o}();var type2ct=evert_arr(ct2type);XMLNS.CT="http://schemas.openxmlformats.org/package/2006/content-types";function parse_ct(data,opts){var ctext={};if(!data||!data.match)return data;var ct={workbooks:[],sheets:[],calcchains:[],themes:[],styles:[],coreprops:[],extprops:[],custprops:[],strs:[],comments:[],vba:[],TODO:[],rels:[],xmlns:""};(data.match(tagregex)||[]).forEach(function(x){var y=parsexmltag(x);switch(y[0].replace(nsregex,"<")){case"<?xml":break;case"<Types":ct.xmlns=y["xmlns"+(y[0].match(/<(\w+):/)||["",""])[1]];break;case"<Default":ctext[y.Extension]=y.ContentType;break;case"<Override":if(ct[ct2type[y.ContentType]]!==undefined)ct[ct2type[y.ContentType]].push(y.PartName);else if(opts.WTF)console.error(y);break}});if(ct.xmlns!==XMLNS.CT)throw new Error("Unknown Namespace: "+ct.xmlns);ct.calcchain=ct.calcchains.length>0?ct.calcchains[0]:"";ct.sst=ct.strs.length>0?ct.strs[0]:"";ct.style=ct.styles.length>0?ct.styles[0]:"";ct.defaults=ctext;delete ct.calcchains;return ct}var CTYPE_XML_ROOT=writextag("Types",null,{xmlns:XMLNS.CT,"xmlns:xsd":XMLNS.xsd,"xmlns:xsi":XMLNS.xsi});var CTYPE_DEFAULTS=[["xml","application/xml"],["bin","application/vnd.ms-excel.sheet.binary.macroEnabled.main"],["rels",type2ct.rels[0]]].map(function(x){return writextag("Default",null,{Extension:x[0],ContentType:x[1]})});function write_ct(ct,opts){var o=[],v;o[o.length]=XML_HEADER;o[o.length]=CTYPE_XML_ROOT;o=o.concat(CTYPE_DEFAULTS);var f1=function(w){if(ct[w]&&ct[w].length>0){v=ct[w][0];o[o.length]=writextag("Override",null,{PartName:(v[0]=="/"?"":"/")+v,ContentType:CT_LIST[w][opts.bookType||"xlsx"]})}};var f2=function(w){ct[w].forEach(function(v){o[o.length]=writextag("Override",null,{PartName:(v[0]=="/"?"":"/")+v,ContentType:CT_LIST[w][opts.bookType||"xlsx"]})})};var f3=function(t){(ct[t]||[]).forEach(function(v){o[o.length]=writextag("Override",null,{PartName:(v[0]=="/"?"":"/")+v,ContentType:type2ct[t][0]})})};f1("workbooks");f2("sheets");f3("themes");["strs","styles"].forEach(f1);["coreprops","extprops","custprops"].forEach(f3);if(o.length>2){o[o.length]="</Types>";o[1]=o[1].replace("/>",">")}return o.join("")}var RELS={WB:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",SHEET:"http://sheetjs.openxmlformats.org/officeDocument/2006/relationships/officeDocument"};function parse_rels(data,currentFilePath){if(!data)return data;if(currentFilePath.charAt(0)!=="/"){currentFilePath="/"+currentFilePath}var rels={};var hash={};var resolveRelativePathIntoAbsolute=function(to){var toksFrom=currentFilePath.split("/");toksFrom.pop();var toksTo=to.split("/");var reversed=[];while(toksTo.length!==0){var tokTo=toksTo.shift();if(tokTo===".."){toksFrom.pop()}else if(tokTo!=="."){toksFrom.push(tokTo)}}return toksFrom.join("/")};data.match(tagregex).forEach(function(x){var y=parsexmltag(x);if(y[0]==="<Relationship"){var rel={};rel.Type=y.Type;rel.Target=y.Target;rel.Id=y.Id;rel.TargetMode=y.TargetMode;var canonictarget=y.TargetMode==="External"?y.Target:resolveRelativePathIntoAbsolute(y.Target);rels[canonictarget]=rel;hash[y.Id]=rel}});rels["!id"]=hash;return rels}XMLNS.RELS="http://schemas.openxmlformats.org/package/2006/relationships";var RELS_ROOT=writextag("Relationships",null,{xmlns:XMLNS.RELS});function write_rels(rels){var o=[];o[o.length]=XML_HEADER;o[o.length]=RELS_ROOT;keys(rels["!id"]).forEach(function(rid){var rel=rels["!id"][rid];o[o.length]=writextag("Relationship",null,rel)});if(o.length>2){o[o.length]="</Relationships>";o[1]=o[1].replace("/>",">")}return o.join("")}var CORE_PROPS=[["cp:category","Category"],["cp:contentStatus","ContentStatus"],["cp:keywords","Keywords"],["cp:lastModifiedBy","LastAuthor"],["cp:lastPrinted","LastPrinted"],["cp:revision","RevNumber"],["cp:version","Version"],["dc:creator","Author"],["dc:description","Comments"],["dc:identifier","Identifier"],["dc:language","Language"],["dc:subject","Subject"],["dc:title","Title"],["dcterms:created","CreatedDate","date"],["dcterms:modified","ModifiedDate","date"]];XMLNS.CORE_PROPS="http://schemas.openxmlformats.org/package/2006/metadata/core-properties";RELS.CORE_PROPS="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties";var CORE_PROPS_REGEX=function(){var r=new Array(CORE_PROPS.length);for(var i=0;i<CORE_PROPS.length;++i){var f=CORE_PROPS[i];var g="(?:"+f[0].substr(0,f[0].indexOf(":"))+":)"+f[0].substr(f[0].indexOf(":")+1);r[i]=new RegExp("<"+g+"[^>]*>(.*)</"+g+">")}return r}();function parse_core_props(data){var p={};for(var i=0;i<CORE_PROPS.length;++i){var f=CORE_PROPS[i],cur=data.match(CORE_PROPS_REGEX[i]);if(cur!=null&&cur.length>0)p[f[1]]=cur[1];if(f[2]==="date"&&p[f[1]])p[f[1]]=new Date(p[f[1]])}return p}var CORE_PROPS_XML_ROOT=writextag("cp:coreProperties",null,{"xmlns:cp":XMLNS.CORE_PROPS,"xmlns:dc":XMLNS.dc,"xmlns:dcterms":XMLNS.dcterms,"xmlns:dcmitype":XMLNS.dcmitype,"xmlns:xsi":XMLNS.xsi});function cp_doit(f,g,h,o,p){if(p[f]!=null||g==null||g==="")return;p[f]=g;o[o.length]=h?writextag(f,g,h):writetag(f,g)}function write_core_props(cp,opts){var o=[XML_HEADER,CORE_PROPS_XML_ROOT],p={};if(opts&&opts.Props){if(opts.Props.title)o[o.length]="<dc:title>"+opts.Props.title+"</dc:title>";if(opts.Props.subject)o[o.length]="<dc:subject>"+opts.Props.subject+"</dc:subject>";if(opts.Props.creator)o[o.length]="<dc:creator>"+opts.Props.creator+"</dc:creator>";if(opts.Props.keywords)o[o.length]="<cp:keywords>"+opts.Props.keywords+"</cp:keywords>";if(opts.Props.description)o[o.length]="<dc:description>"+opts.Props.description+"</dc:description>"}if(cp){if(cp.CreatedDate!=null)cp_doit("dcterms:created",typeof cp.CreatedDate==="string"?cp.CreatedDate:write_w3cdtf(cp.CreatedDate,opts.WTF),{"xsi:type":"dcterms:W3CDTF"},o,p);if(cp.ModifiedDate!=null)cp_doit("dcterms:modified",typeof cp.ModifiedDate==="string"?cp.ModifiedDate:write_w3cdtf(cp.ModifiedDate,opts.WTF),{"xsi:type":"dcterms:W3CDTF"},o,p);for(var i=0;i!=CORE_PROPS.length;++i){var f=CORE_PROPS[i];cp_doit(f[0],cp[f[1]],null,o,p)}}if(o.length>2){o[o.length]="</cp:coreProperties>";o[1]=o[1].replace("/>",">")}return o.join("")}var EXT_PROPS=[["Application","Application","string"],["AppVersion","AppVersion","string"],["Company","Company","string"],["DocSecurity","DocSecurity","string"],["Manager","Manager","string"],["HyperlinksChanged","HyperlinksChanged","bool"],["SharedDoc","SharedDoc","bool"],["LinksUpToDate","LinksUpToDate","bool"],["ScaleCrop","ScaleCrop","bool"],["HeadingPairs","HeadingPairs","raw"],["TitlesOfParts","TitlesOfParts","raw"]];XMLNS.EXT_PROPS="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties";RELS.EXT_PROPS="http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties";function parse_ext_props(data,p){var q={};if(!p)p={};EXT_PROPS.forEach(function(f){switch(f[2]){case"string":p[f[1]]=(data.match(matchtag(f[0]))||[])[1];break;case"bool":p[f[1]]=(data.match(matchtag(f[0]))||[])[1]==="true";break;case"raw":var cur=data.match(new RegExp("<"+f[0]+"[^>]*>(.*)</"+f[0]+">"));if(cur&&cur.length>0)q[f[1]]=cur[1];break}});if(q.HeadingPairs&&q.TitlesOfParts){var v=parseVector(q.HeadingPairs);var j=0,widx=0;for(var i=0;i!==v.length;++i){switch(v[i].v){case"Worksheets":widx=j;p.Worksheets=+v[++i].v;break;case"Named Ranges":++i;break}}var parts=parseVector(q.TitlesOfParts).map(function(x){return utf8read(x.v)});p.SheetNames=parts.slice(widx,widx+p.Worksheets)}return p}var EXT_PROPS_XML_ROOT=writextag("Properties",null,{xmlns:XMLNS.EXT_PROPS,"xmlns:vt":XMLNS.vt});function write_ext_props(cp,opts){var o=[],p={},W=writextag;if(!cp)cp={};cp.Application="SheetJS";o[o.length]=XML_HEADER;o[o.length]=EXT_PROPS_XML_ROOT;EXT_PROPS.forEach(function(f){if(cp[f[1]]===undefined)return;var v;switch(f[2]){case"string":v=cp[f[1]];break;case"bool":v=cp[f[1]]?"true":"false";break}if(v!==undefined)o[o.length]=W(f[0],v)});o[o.length]=W("HeadingPairs",W("vt:vector",W("vt:variant","<vt:lpstr>Worksheets</vt:lpstr>")+W("vt:variant",W("vt:i4",String(cp.Worksheets))),{size:2,baseType:"variant"}));o[o.length]=W("TitlesOfParts",W("vt:vector",cp.SheetNames.map(function(s){return"<vt:lpstr>"+s+"</vt:lpstr>"}).join(""),{size:cp.Worksheets,baseType:"lpstr"}));if(o.length>2){o[o.length]="</Properties>";o[1]=o[1].replace("/>",">")}return o.join("")}XMLNS.CUST_PROPS="http://schemas.openxmlformats.org/officeDocument/2006/custom-properties";RELS.CUST_PROPS="http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties";var custregex=/<[^>]+>[^<]*/g;function parse_cust_props(data,opts){var p={},name;var m=data.match(custregex);if(m)for(var i=0;i!=m.length;++i){var x=m[i],y=parsexmltag(x);switch(y[0]){case"<?xml":break;case"<Properties":if(y.xmlns!==XMLNS.CUST_PROPS)throw"unrecognized xmlns "+y.xmlns;if(y.xmlnsvt&&y.xmlnsvt!==XMLNS.vt)throw"unrecognized vt "+y.xmlnsvt;break;case"<property":name=y.name;break;case"</property>":name=null;break;default:if(x.indexOf("<vt:")===0){var toks=x.split(">");var type=toks[0].substring(4),text=toks[1];switch(type){case"lpstr":case"lpwstr":case"bstr":case"lpwstr":p[name]=unescapexml(text);break;case"bool":p[name]=parsexmlbool(text,"<vt:bool>");break;case"i1":case"i2":case"i4":case"i8":case"int":case"uint":p[name]=parseInt(text,10);break;case"r4":case"r8":case"decimal":p[name]=parseFloat(text);break;case"filetime":case"date":p[name]=new Date(text);break;case"cy":case"error":p[name]=unescapexml(text);break;default:if(typeof console!=="undefined")console.warn("Unexpected",x,type,toks)}}else if(x.substr(0,2)==="</"){}else if(opts.WTF)throw new Error(x)}}return p}var CUST_PROPS_XML_ROOT=writextag("Properties",null,{xmlns:XMLNS.CUST_PROPS,"xmlns:vt":XMLNS.vt});function write_cust_props(cp,opts){var o=[XML_HEADER,CUST_PROPS_XML_ROOT];if(!cp)return o.join("");var pid=1;keys(cp).forEach(function custprop(k){++pid;o[o.length]=writextag("property",write_vt(cp[k]),{fmtid:"{D5CDD505-2E9C-101B-9397-08002B2CF9AE}",pid:pid,name:k})});if(o.length>2){
o[o.length]="</Properties>";o[1]=o[1].replace("/>",">")}return o.join("")}function xlml_set_prop(Props,tag,val){switch(tag){case"Description":tag="Comments";break}Props[tag]=val}function parse_FILETIME(blob){var dwLowDateTime=blob.read_shift(4),dwHighDateTime=blob.read_shift(4);return new Date((dwHighDateTime/1e7*Math.pow(2,32)+dwLowDateTime/1e7-11644473600)*1e3).toISOString().replace(/\.000/,"")}function parse_lpstr(blob,type,pad){var str=blob.read_shift(0,"lpstr");if(pad)blob.l+=4-(str.length+1&3)&3;return str}function parse_lpwstr(blob,type,pad){var str=blob.read_shift(0,"lpwstr");if(pad)blob.l+=4-(str.length+1&3)&3;return str}function parse_VtStringBase(blob,stringType,pad){if(stringType===31)return parse_lpwstr(blob);return parse_lpstr(blob,stringType,pad)}function parse_VtString(blob,t,pad){return parse_VtStringBase(blob,t,pad===false?0:4)}function parse_VtUnalignedString(blob,t){if(!t)throw new Error("dafuq?");return parse_VtStringBase(blob,t,0)}function parse_VtVecUnalignedLpstrValue(blob){var length=blob.read_shift(4);var ret=[];for(var i=0;i!=length;++i)ret[i]=blob.read_shift(0,"lpstr");return ret}function parse_VtVecUnalignedLpstr(blob){return parse_VtVecUnalignedLpstrValue(blob)}function parse_VtHeadingPair(blob){var headingString=parse_TypedPropertyValue(blob,VT_USTR);var headerParts=parse_TypedPropertyValue(blob,VT_I4);return[headingString,headerParts]}function parse_VtVecHeadingPairValue(blob){var cElements=blob.read_shift(4);var out=[];for(var i=0;i!=cElements/2;++i)out.push(parse_VtHeadingPair(blob));return out}function parse_VtVecHeadingPair(blob){return parse_VtVecHeadingPairValue(blob)}function parse_dictionary(blob,CodePage){var cnt=blob.read_shift(4);var dict={};for(var j=0;j!=cnt;++j){var pid=blob.read_shift(4);var len=blob.read_shift(4);dict[pid]=blob.read_shift(len,CodePage===1200?"utf16le":"utf8").replace(chr0,"").replace(chr1,"!")}if(blob.l&3)blob.l=blob.l>>2+1<<2;return dict}function parse_BLOB(blob){var size=blob.read_shift(4);var bytes=blob.slice(blob.l,blob.l+size);if(size&3>0)blob.l+=4-(size&3)&3;return bytes}function parse_ClipboardData(blob){var o={};o.Size=blob.read_shift(4);blob.l+=o.Size;return o}function parse_VtVector(blob,cb){}function parse_TypedPropertyValue(blob,type,_opts){var t=blob.read_shift(2),ret,opts=_opts||{};blob.l+=2;if(type!==VT_VARIANT)if(t!==type&&VT_CUSTOM.indexOf(type)===-1)throw new Error("Expected type "+type+" saw "+t);switch(type===VT_VARIANT?t:type){case 2:ret=blob.read_shift(2,"i");if(!opts.raw)blob.l+=2;return ret;case 3:ret=blob.read_shift(4,"i");return ret;case 11:return blob.read_shift(4)!==0;case 19:ret=blob.read_shift(4);return ret;case 30:return parse_lpstr(blob,t,4).replace(chr0,"");case 31:return parse_lpwstr(blob);case 64:return parse_FILETIME(blob);case 65:return parse_BLOB(blob);case 71:return parse_ClipboardData(blob);case 80:return parse_VtString(blob,t,!opts.raw&&4).replace(chr0,"");case 81:return parse_VtUnalignedString(blob,t,4).replace(chr0,"");case 4108:return parse_VtVecHeadingPair(blob);case 4126:return parse_VtVecUnalignedLpstr(blob);default:throw new Error("TypedPropertyValue unrecognized type "+type+" "+t)}}function parse_PropertySet(blob,PIDSI){var start_addr=blob.l;var size=blob.read_shift(4);var NumProps=blob.read_shift(4);var Props=[],i=0;var CodePage=0;var Dictionary=-1,DictObj;for(i=0;i!=NumProps;++i){var PropID=blob.read_shift(4);var Offset=blob.read_shift(4);Props[i]=[PropID,Offset+start_addr]}var PropH={};for(i=0;i!=NumProps;++i){if(blob.l!==Props[i][1]){var fail=true;if(i>0&&PIDSI)switch(PIDSI[Props[i-1][0]].t){case 2:if(blob.l+2===Props[i][1]){blob.l+=2;fail=false}break;case 80:if(blob.l<=Props[i][1]){blob.l=Props[i][1];fail=false}break;case 4108:if(blob.l<=Props[i][1]){blob.l=Props[i][1];fail=false}break}if(!PIDSI&&blob.l<=Props[i][1]){fail=false;blob.l=Props[i][1]}if(fail)throw new Error("Read Error: Expected address "+Props[i][1]+" at "+blob.l+" :"+i)}if(PIDSI){var piddsi=PIDSI[Props[i][0]];PropH[piddsi.n]=parse_TypedPropertyValue(blob,piddsi.t,{raw:true});if(piddsi.p==="version")PropH[piddsi.n]=String(PropH[piddsi.n]>>16)+"."+String(PropH[piddsi.n]&65535);if(piddsi.n=="CodePage")switch(PropH[piddsi.n]){case 0:PropH[piddsi.n]=1252;case 1e4:case 1252:case 874:case 1250:case 1251:case 1253:case 1254:case 1255:case 1256:case 1257:case 1258:case 932:case 936:case 949:case 950:case 1200:case 1201:case 65e3:case-536:case 65001:case-535:set_cp(CodePage=PropH[piddsi.n]);break;default:throw new Error("Unsupported CodePage: "+PropH[piddsi.n])}}else{if(Props[i][0]===1){CodePage=PropH.CodePage=parse_TypedPropertyValue(blob,VT_I2);set_cp(CodePage);if(Dictionary!==-1){var oldpos=blob.l;blob.l=Props[Dictionary][1];DictObj=parse_dictionary(blob,CodePage);blob.l=oldpos}}else if(Props[i][0]===0){if(CodePage===0){Dictionary=i;blob.l=Props[i+1][1];continue}DictObj=parse_dictionary(blob,CodePage)}else{var name=DictObj[Props[i][0]];var val;switch(blob[blob.l]){case 65:blob.l+=4;val=parse_BLOB(blob);break;case 30:blob.l+=4;val=parse_VtString(blob,blob[blob.l-4]);break;case 31:blob.l+=4;val=parse_VtString(blob,blob[blob.l-4]);break;case 3:blob.l+=4;val=blob.read_shift(4,"i");break;case 19:blob.l+=4;val=blob.read_shift(4);break;case 5:blob.l+=4;val=blob.read_shift(8,"f");break;case 11:blob.l+=4;val=parsebool(blob,4);break;case 64:blob.l+=4;val=new Date(parse_FILETIME(blob));break;default:throw new Error("unparsed value: "+blob[blob.l])}PropH[name]=val}}}blob.l=start_addr+size;return PropH}function parse_PropertySetStream(file,PIDSI){var blob=file.content;prep_blob(blob,0);var NumSets,FMTID0,FMTID1,Offset0,Offset1;blob.chk("feff","Byte Order: ");var vers=blob.read_shift(2);var SystemIdentifier=blob.read_shift(4);blob.chk(CFB.utils.consts.HEADER_CLSID,"CLSID: ");NumSets=blob.read_shift(4);if(NumSets!==1&&NumSets!==2)throw"Unrecognized #Sets: "+NumSets;FMTID0=blob.read_shift(16);Offset0=blob.read_shift(4);if(NumSets===1&&Offset0!==blob.l)throw"Length mismatch";else if(NumSets===2){FMTID1=blob.read_shift(16);Offset1=blob.read_shift(4)}var PSet0=parse_PropertySet(blob,PIDSI);var rval={SystemIdentifier:SystemIdentifier};for(var y in PSet0)rval[y]=PSet0[y];rval.FMTID=FMTID0;if(NumSets===1)return rval;if(blob.l!==Offset1)throw"Length mismatch 2: "+blob.l+" !== "+Offset1;var PSet1;try{PSet1=parse_PropertySet(blob,null)}catch(e){}for(y in PSet1)rval[y]=PSet1[y];rval.FMTID=[FMTID0,FMTID1];return rval}function parsenoop2(blob,length){blob.read_shift(length);return null}function parslurp(blob,length,cb){var arr=[],target=blob.l+length;while(blob.l<target)arr.push(cb(blob,target-blob.l));if(target!==blob.l)throw new Error("Slurp error");return arr}function parslurp2(blob,length,cb){var arr=[],target=blob.l+length,len=blob.read_shift(2);while(len--!==0)arr.push(cb(blob,target-blob.l));if(target!==blob.l)throw new Error("Slurp error");return arr}function parsebool(blob,length){return blob.read_shift(length)===1}function parseuint16(blob){return blob.read_shift(2,"u")}function parseuint16a(blob,length){return parslurp(blob,length,parseuint16)}var parse_Boolean=parsebool;function parse_Bes(blob){var v=blob.read_shift(1),t=blob.read_shift(1);return t===1?v:v===1}function parse_ShortXLUnicodeString(blob,length,opts){var cch=blob.read_shift(1);var width=1,encoding="sbcs-cont";var cp=current_codepage;if(opts&&opts.biff>=8)current_codepage=1200;if(opts===undefined||opts.biff!==5){var fHighByte=blob.read_shift(1);if(fHighByte){width=2;encoding="dbcs-cont"}}var o=cch?blob.read_shift(cch,encoding):"";current_codepage=cp;return o}function parse_XLUnicodeRichExtendedString(blob){var cp=current_codepage;current_codepage=1200;var cch=blob.read_shift(2),flags=blob.read_shift(1);var fHighByte=flags&1,fExtSt=flags&4,fRichSt=flags&8;var width=1+(flags&1);var cRun,cbExtRst;var z={};if(fRichSt)cRun=blob.read_shift(2);if(fExtSt)cbExtRst=blob.read_shift(4);var encoding=flags&1?"dbcs-cont":"sbcs-cont";var msg=cch===0?"":blob.read_shift(cch,encoding);if(fRichSt)blob.l+=4*cRun;if(fExtSt)blob.l+=cbExtRst;z.t=msg;if(!fRichSt){z.raw="<t>"+z.t+"</t>";z.r=z.t}current_codepage=cp;return z}function parse_XLUnicodeStringNoCch(blob,cch,opts){var retval;var fHighByte=blob.read_shift(1);if(fHighByte===0){retval=blob.read_shift(cch,"sbcs-cont")}else{retval=blob.read_shift(cch,"dbcs-cont")}return retval}function parse_XLUnicodeString(blob,length,opts){var cch=blob.read_shift(opts!==undefined&&opts.biff>0&&opts.biff<8?1:2);if(cch===0){blob.l++;return""}return parse_XLUnicodeStringNoCch(blob,cch,opts)}function parse_XLUnicodeString2(blob,length,opts){if(opts.biff!==5&&opts.biff!==2)return parse_XLUnicodeString(blob,length,opts);var cch=blob.read_shift(1);if(cch===0){blob.l++;return""}return blob.read_shift(cch,"sbcs-cont")}var parse_ControlInfo=parsenoop;var parse_URLMoniker=function(blob,length){var len=blob.read_shift(4),start=blob.l;var extra=false;if(len>24){blob.l+=len-24;if(blob.read_shift(16)==="795881f43b1d7f48af2c825dc4852763")extra=true;blob.l=start}var url=blob.read_shift((extra?len-24:len)>>1,"utf16le").replace(chr0,"");if(extra)blob.l+=24;return url};var parse_FileMoniker=function(blob,length){var cAnti=blob.read_shift(2);var ansiLength=blob.read_shift(4);var ansiPath=blob.read_shift(ansiLength,"cstr");var endServer=blob.read_shift(2);var versionNumber=blob.read_shift(2);var cbUnicodePathSize=blob.read_shift(4);if(cbUnicodePathSize===0)return ansiPath.replace(/\\/g,"/");var cbUnicodePathBytes=blob.read_shift(4);var usKeyValue=blob.read_shift(2);var unicodePath=blob.read_shift(cbUnicodePathBytes>>1,"utf16le").replace(chr0,"");return unicodePath};var parse_HyperlinkMoniker=function(blob,length){var clsid=blob.read_shift(16);length-=16;switch(clsid){case"e0c9ea79f9bace118c8200aa004ba90b":return parse_URLMoniker(blob,length);case"0303000000000000c000000000000046":return parse_FileMoniker(blob,length);default:throw"unsupported moniker "+clsid}};var parse_HyperlinkString=function(blob,length){var len=blob.read_shift(4);var o=blob.read_shift(len,"utf16le").replace(chr0,"");return o};var parse_Hyperlink=function(blob,length){var end=blob.l+length;var sVer=blob.read_shift(4);if(sVer!==2)throw new Error("Unrecognized streamVersion: "+sVer);var flags=blob.read_shift(2);blob.l+=2;var displayName,targetFrameName,moniker,oleMoniker,location,guid,fileTime;if(flags&16)displayName=parse_HyperlinkString(blob,end-blob.l);if(flags&128)targetFrameName=parse_HyperlinkString(blob,end-blob.l);if((flags&257)===257)moniker=parse_HyperlinkString(blob,end-blob.l);if((flags&257)===1)oleMoniker=parse_HyperlinkMoniker(blob,end-blob.l);if(flags&8)location=parse_HyperlinkString(blob,end-blob.l);if(flags&32)guid=blob.read_shift(16);if(flags&64)fileTime=parse_FILETIME(blob,8);blob.l=end;var target=targetFrameName||moniker||oleMoniker;if(location)target+="#"+location;return{Target:target}};function parse_LongRGBA(blob,length){var r=blob.read_shift(1),g=blob.read_shift(1),b=blob.read_shift(1),a=blob.read_shift(1);return[r,g,b,a]}function parse_LongRGB(blob,length){var x=parse_LongRGBA(blob,length);x[3]=0;return x}function parse_XLSCell(blob,length){var rw=blob.read_shift(2);var col=blob.read_shift(2);var ixfe=blob.read_shift(2);return{r:rw,c:col,ixfe:ixfe}}function parse_frtHeader(blob){var rt=blob.read_shift(2);var flags=blob.read_shift(2);blob.l+=8;return{type:rt,flags:flags}}function parse_OptXLUnicodeString(blob,length,opts){return length===0?"":parse_XLUnicodeString2(blob,length,opts)}var HIDEOBJENUM=["SHOWALL","SHOWPLACEHOLDER","HIDEALL"];var parse_HideObjEnum=parseuint16;function parse_XTI(blob,length){var iSupBook=blob.read_shift(2),itabFirst=blob.read_shift(2,"i"),itabLast=blob.read_shift(2,"i");return[iSupBook,itabFirst,itabLast]}function parse_RkRec(blob,length){var ixfe=blob.read_shift(2);var RK=parse_RkNumber(blob);return[ixfe,RK]}function parse_AddinUdf(blob,length){blob.l+=4;length-=4;var l=blob.l+length;var udfName=parse_ShortXLUnicodeString(blob,length);var cb=blob.read_shift(2);l-=blob.l;if(cb!==l)throw"Malformed AddinUdf: padding = "+l+" != "+cb;blob.l+=cb;return udfName}function parse_Ref8U(blob,length){var rwFirst=blob.read_shift(2);var rwLast=blob.read_shift(2);var colFirst=blob.read_shift(2);var colLast=blob.read_shift(2);return{s:{c:colFirst,r:rwFirst},e:{c:colLast,r:rwLast}}}function parse_RefU(blob,length){var rwFirst=blob.read_shift(2);var rwLast=blob.read_shift(2);var colFirst=blob.read_shift(1);var colLast=blob.read_shift(1);return{s:{c:colFirst,r:rwFirst},e:{c:colLast,r:rwLast}}}var parse_Ref=parse_RefU;function parse_FtCmo(blob,length){blob.l+=4;var ot=blob.read_shift(2);var id=blob.read_shift(2);var flags=blob.read_shift(2);blob.l+=12;return[id,ot,flags]}function parse_FtNts(blob,length){var out={};blob.l+=4;blob.l+=16;out.fSharedNote=blob.read_shift(2);blob.l+=4;return out}function parse_FtCf(blob,length){var out={};blob.l+=4;blob.cf=blob.read_shift(2);return out}var FtTab={21:parse_FtCmo,19:parsenoop,18:function(blob,length){blob.l+=12},17:function(blob,length){blob.l+=8},16:parsenoop,15:parsenoop,13:parse_FtNts,12:function(blob,length){blob.l+=24},11:function(blob,length){blob.l+=10},10:function(blob,length){blob.l+=16},9:parsenoop,8:function(blob,length){blob.l+=6},7:parse_FtCf,6:function(blob,length){blob.l+=6},4:parsenoop,0:function(blob,length){blob.l+=4}};function parse_FtArray(blob,length,ot){var s=blob.l;var fts=[];while(blob.l<s+length){var ft=blob.read_shift(2);blob.l-=2;try{fts.push(FtTab[ft](blob,s+length-blob.l))}catch(e){blob.l=s+length;return fts}}if(blob.l!=s+length)blob.l=s+length;return fts}var parse_FontIndex=parseuint16;function parse_BOF(blob,length){var o={};o.BIFFVer=blob.read_shift(2);length-=2;switch(o.BIFFVer){case 1536:case 1280:case 2:case 7:break;default:throw"Unexpected BIFF Ver "+o.BIFFVer}blob.read_shift(length);return o}function parse_InterfaceHdr(blob,length){if(length===0)return 1200;var q;if((q=blob.read_shift(2))!==1200)throw"InterfaceHdr codePage "+q;return 1200}function parse_WriteAccess(blob,length,opts){if(opts.enc){blob.l+=length;return""}var l=blob.l;var UserName=parse_XLUnicodeString(blob,0,opts);blob.read_shift(length+l-blob.l);return UserName}function parse_BoundSheet8(blob,length,opts){var pos=blob.read_shift(4);var hidden=blob.read_shift(1)>>6;var dt=blob.read_shift(1);switch(dt){case 0:dt="Worksheet";break;case 1:dt="Macrosheet";break;case 2:dt="Chartsheet";break;case 6:dt="VBAModule";break}var name=parse_ShortXLUnicodeString(blob,0,opts);if(name.length===0)name="Sheet1";return{pos:pos,hs:hidden,dt:dt,name:name}}function parse_SST(blob,length){var cnt=blob.read_shift(4);var ucnt=blob.read_shift(4);var strs=[];for(var i=0;i!=ucnt;++i){strs.push(parse_XLUnicodeRichExtendedString(blob))}strs.Count=cnt;strs.Unique=ucnt;return strs}function parse_ExtSST(blob,length){var extsst={};extsst.dsst=blob.read_shift(2);blob.l+=length-2;return extsst}function parse_Row(blob,length){var rw=blob.read_shift(2),col=blob.read_shift(2),Col=blob.read_shift(2),rht=blob.read_shift(2);blob.read_shift(4);var flags=blob.read_shift(1);blob.read_shift(1);blob.read_shift(2);return{r:rw,c:col,cnt:Col-col}}function parse_ForceFullCalculation(blob,length){var header=parse_frtHeader(blob);if(header.type!=2211)throw"Invalid Future Record "+header.type;var fullcalc=blob.read_shift(4);return fullcalc!==0}var parse_CompressPictures=parsenoop2;function parse_RecalcId(blob,length){blob.read_shift(2);return blob.read_shift(4)}function parse_DefaultRowHeight(blob,length){var f=blob.read_shift(2),miyRw;miyRw=blob.read_shift(2);var fl={Unsynced:f&1,DyZero:(f&2)>>1,ExAsc:(f&4)>>2,ExDsc:(f&8)>>3};return[fl,miyRw]}function parse_Window1(blob,length){var xWn=blob.read_shift(2),yWn=blob.read_shift(2),dxWn=blob.read_shift(2),dyWn=blob.read_shift(2);var flags=blob.read_shift(2),iTabCur=blob.read_shift(2),iTabFirst=blob.read_shift(2);var ctabSel=blob.read_shift(2),wTabRatio=blob.read_shift(2);return{Pos:[xWn,yWn],Dim:[dxWn,dyWn],Flags:flags,CurTab:iTabCur,FirstTab:iTabFirst,Selected:ctabSel,TabRatio:wTabRatio}}function parse_Font(blob,length,opts){blob.l+=14;var name=parse_ShortXLUnicodeString(blob,0,opts);return name}function parse_LabelSst(blob,length){var cell=parse_XLSCell(blob);cell.isst=blob.read_shift(4);return cell}function parse_Label(blob,length,opts){var cell=parse_XLSCell(blob,6);var str=parse_XLUnicodeString(blob,length-6,opts);cell.val=str;return cell}function parse_Format(blob,length,opts){var ifmt=blob.read_shift(2);var fmtstr=parse_XLUnicodeString2(blob,0,opts);return[ifmt,fmtstr]}function parse_Dimensions(blob,length){var w=length===10?2:4;var r=blob.read_shift(w),R=blob.read_shift(w),c=blob.read_shift(2),C=blob.read_shift(2);blob.l+=2;return{s:{r:r,c:c},e:{r:R,c:C}}}function parse_RK(blob,length){var rw=blob.read_shift(2),col=blob.read_shift(2);var rkrec=parse_RkRec(blob);return{r:rw,c:col,ixfe:rkrec[0],rknum:rkrec[1]}}function parse_MulRk(blob,length){var target=blob.l+length-2;var rw=blob.read_shift(2),col=blob.read_shift(2);var rkrecs=[];while(blob.l<target)rkrecs.push(parse_RkRec(blob));if(blob.l!==target)throw"MulRK read error";var lastcol=blob.read_shift(2);if(rkrecs.length!=lastcol-col+1)throw"MulRK length mismatch";return{r:rw,c:col,C:lastcol,rkrec:rkrecs}}function parse_CellStyleXF(blob,length,style){var o={};var a=blob.read_shift(4),b=blob.read_shift(4);var c=blob.read_shift(4),d=blob.read_shift(2);o.patternType=XLSFillPattern[c>>26];o.icvFore=d&127;o.icvBack=d>>7&127;return o}function parse_CellXF(blob,length){return parse_CellStyleXF(blob,length,0)}function parse_StyleXF(blob,length){return parse_CellStyleXF(blob,length,1)}function parse_XF(blob,length){var o={};o.ifnt=blob.read_shift(2);o.ifmt=blob.read_shift(2);o.flags=blob.read_shift(2);o.fStyle=o.flags>>2&1;length-=6;o.data=parse_CellStyleXF(blob,length,o.fStyle);return o}function parse_Guts(blob,length){blob.l+=4;var out=[blob.read_shift(2),blob.read_shift(2)];if(out[0]!==0)out[0]--;if(out[1]!==0)out[1]--;if(out[0]>7||out[1]>7)throw"Bad Gutters: "+out;return out}function parse_BoolErr(blob,length){var cell=parse_XLSCell(blob,6);var val=parse_Bes(blob,2);cell.val=val;cell.t=val===true||val===false?"b":"e";return cell}function parse_Number(blob,length){var cell=parse_XLSCell(blob,6);var xnum=parse_Xnum(blob,8);cell.val=xnum;return cell}var parse_XLHeaderFooter=parse_OptXLUnicodeString;function parse_SupBook(blob,length,opts){var end=blob.l+length;var ctab=blob.read_shift(2);var cch=blob.read_shift(2);var virtPath;if(cch>=1&&cch<=255)virtPath=parse_XLUnicodeStringNoCch(blob,cch);var rgst=blob.read_shift(end-blob.l);opts.sbcch=cch;return[cch,ctab,virtPath,rgst]}function parse_ExternName(blob,length,opts){var flags=blob.read_shift(2);var body;var o={fBuiltIn:flags&1,fWantAdvise:flags>>>1&1,fWantPict:flags>>>2&1,fOle:flags>>>3&1,fOleLink:flags>>>4&1,cf:flags>>>5&1023,fIcon:flags>>>15&1};if(opts.sbcch===14849)body=parse_AddinUdf(blob,length-2);o.body=body||blob.read_shift(length-2);return o}function parse_Lbl(blob,length,opts){if(opts.biff<8)return parse_Label(blob,length,opts);var target=blob.l+length;var flags=blob.read_shift(2);var chKey=blob.read_shift(1);var cch=blob.read_shift(1);var cce=blob.read_shift(2);blob.l+=2;var itab=blob.read_shift(2);blob.l+=4;var name=parse_XLUnicodeStringNoCch(blob,cch,opts);var rgce=parse_NameParsedFormula(blob,target-blob.l,opts,cce);return{chKey:chKey,Name:name,rgce:rgce}}function parse_ExternSheet(blob,length,opts){if(opts.biff<8)return parse_ShortXLUnicodeString(blob,length,opts);var o=parslurp2(blob,length,parse_XTI);var oo=[];if(opts.sbcch===1025){for(var i=0;i!=o.length;++i)oo.push(opts.snames[o[i][1]]);return oo}else return o}function parse_ShrFmla(blob,length,opts){var ref=parse_RefU(blob,6);blob.l++;var cUse=blob.read_shift(1);length-=8;return[parse_SharedParsedFormula(blob,length,opts),cUse]}function parse_Array(blob,length,opts){var ref=parse_Ref(blob,6);blob.l+=6;length-=12;return[ref,parse_ArrayParsedFormula(blob,length,opts,ref)]}function parse_MTRSettings(blob,length){var fMTREnabled=blob.read_shift(4)!==0;var fUserSetThreadCount=blob.read_shift(4)!==0;var cUserThreadCount=blob.read_shift(4);return[fMTREnabled,fUserSetThreadCount,cUserThreadCount]}function parse_NoteSh(blob,length,opts){if(opts.biff<8)return;var row=blob.read_shift(2),col=blob.read_shift(2);var flags=blob.read_shift(2),idObj=blob.read_shift(2);var stAuthor=parse_XLUnicodeString2(blob,0,opts);if(opts.biff<8)blob.read_shift(1);return[{r:row,c:col},stAuthor,idObj,flags]}function parse_Note(blob,length,opts){return parse_NoteSh(blob,length,opts)}function parse_MergeCells(blob,length){var merges=[];var cmcs=blob.read_shift(2);while(cmcs--)merges.push(parse_Ref8U(blob,length));return merges}function parse_Obj(blob,length){var cmo=parse_FtCmo(blob,22);var fts=parse_FtArray(blob,length-22,cmo[1]);return{cmo:cmo,ft:fts}}function parse_TxO(blob,length,opts){var s=blob.l;try{blob.l+=4;var ot=(opts.lastobj||{cmo:[0,0]}).cmo[1];var controlInfo;if([0,5,7,11,12,14].indexOf(ot)==-1)blob.l+=6;else controlInfo=parse_ControlInfo(blob,6,opts);var cchText=blob.read_shift(2);var cbRuns=blob.read_shift(2);var ifntEmpty=parse_FontIndex(blob,2);var len=blob.read_shift(2);blob.l+=len;var texts="";for(var i=1;i<blob.lens.length-1;++i){if(blob.l-s!=blob.lens[i])throw"TxO: bad continue record";var hdr=blob[blob.l];var t=parse_XLUnicodeStringNoCch(blob,blob.lens[i+1]-blob.lens[i]-1);texts+=t;if(texts.length>=(hdr?cchText:2*cchText))break}if(texts.length!==cchText&&texts.length!==cchText*2){throw"cchText: "+cchText+" != "+texts.length}blob.l=s+length;return{t:texts}}catch(e){blob.l=s+length;return{t:texts||""}}}var parse_HLink=function(blob,length){var ref=parse_Ref8U(blob,8);blob.l+=16;var hlink=parse_Hyperlink(blob,length-24);return[ref,hlink]};var parse_HLinkTooltip=function(blob,length){var end=blob.l+length;blob.read_shift(2);var ref=parse_Ref8U(blob,8);var wzTooltip=blob.read_shift((length-10)/2,"dbcs-cont");wzTooltip=wzTooltip.replace(chr0,"");return[ref,wzTooltip]};function parse_Country(blob,length){var o=[],d;d=blob.read_shift(2);o[0]=CountryEnum[d]||d;d=blob.read_shift(2);o[1]=CountryEnum[d]||d;return o}function parse_ClrtClient(blob,length){var ccv=blob.read_shift(2);var o=[];while(ccv-- >0)o.push(parse_LongRGB(blob,8));return o}function parse_Palette(blob,length){var ccv=blob.read_shift(2);var o=[];while(ccv-- >0)o.push(parse_LongRGB(blob,8));return o}function parse_XFCRC(blob,length){blob.l+=2;var o={cxfs:0,crc:0};o.cxfs=blob.read_shift(2);o.crc=blob.read_shift(4);return o}var parse_Style=parsenoop;var parse_StyleExt=parsenoop;var parse_ColInfo=parsenoop;var parse_Window2=parsenoop;var parse_Backup=parsebool;var parse_Blank=parse_XLSCell;var parse_BottomMargin=parse_Xnum;var parse_BuiltInFnGroupCount=parseuint16;var parse_CalcCount=parseuint16;var parse_CalcDelta=parse_Xnum;var parse_CalcIter=parsebool;var parse_CalcMode=parseuint16;var parse_CalcPrecision=parsebool;var parse_CalcRefMode=parsenoop2;var parse_CalcSaveRecalc=parsebool;var parse_CodePage=parseuint16;var parse_Compat12=parsebool;var parse_Date1904=parsebool;var parse_DefColWidth=parseuint16;var parse_DSF=parsenoop2;var parse_EntExU2=parsenoop2;var parse_EOF=parsenoop2;var parse_Excel9File=parsenoop2;var parse_FeatHdr=parsenoop2;var parse_FontX=parseuint16;var parse_Footer=parse_XLHeaderFooter;var parse_GridSet=parseuint16;var parse_HCenter=parsebool;var parse_Header=parse_XLHeaderFooter;var parse_HideObj=parse_HideObjEnum;var parse_InterfaceEnd=parsenoop2;var parse_LeftMargin=parse_Xnum;var parse_Mms=parsenoop2;var parse_ObjProtect=parsebool;var parse_Password=parseuint16;var parse_PrintGrid=parsebool;var parse_PrintRowCol=parsebool;var parse_PrintSize=parseuint16;var parse_Prot4Rev=parsebool;var parse_Prot4RevPass=parseuint16;var parse_Protect=parsebool;var parse_RefreshAll=parsebool;var parse_RightMargin=parse_Xnum;var parse_RRTabId=parseuint16a;var parse_ScenarioProtect=parsebool;var parse_Scl=parseuint16a;var parse_String=parse_XLUnicodeString;var parse_SxBool=parsebool;var parse_TopMargin=parse_Xnum;var parse_UsesELFs=parsebool;var parse_VCenter=parsebool;var parse_WinProtect=parsebool;var parse_WriteProtect=parsenoop;var parse_VerticalPageBreaks=parsenoop;var parse_HorizontalPageBreaks=parsenoop;var parse_Selection=parsenoop;var parse_Continue=parsenoop;var parse_Pane=parsenoop;var parse_Pls=parsenoop;var parse_DCon=parsenoop;var parse_DConRef=parsenoop;var parse_DConName=parsenoop;var parse_XCT=parsenoop;var parse_CRN=parsenoop;var parse_FileSharing=parsenoop;var parse_Uncalced=parsenoop;var parse_Template=parsenoop;var parse_Intl=parsenoop;var parse_WsBool=parsenoop;var parse_Sort=parsenoop;var parse_Sync=parsenoop;var parse_LPr=parsenoop;var parse_DxGCol=parsenoop;var parse_FnGroupName=parsenoop;var parse_FilterMode=parsenoop;var parse_AutoFilterInfo=parsenoop;var parse_AutoFilter=parsenoop;var parse_Setup=parsenoop;var parse_ScenMan=parsenoop;var parse_SCENARIO=parsenoop;var parse_SxView=parsenoop;var parse_Sxvd=parsenoop;var parse_SXVI=parsenoop;var parse_SxIvd=parsenoop;var parse_SXLI=parsenoop;var parse_SXPI=parsenoop;var parse_DocRoute=parsenoop;var parse_RecipName=parsenoop;var parse_MulBlank=parsenoop;var parse_SXDI=parsenoop;var parse_SXDB=parsenoop;var parse_SXFDB=parsenoop;var parse_SXDBB=parsenoop;var parse_SXNum=parsenoop;var parse_SxErr=parsenoop;var parse_SXInt=parsenoop;var parse_SXString=parsenoop;var parse_SXDtr=parsenoop;var parse_SxNil=parsenoop;var parse_SXTbl=parsenoop;var parse_SXTBRGIITM=parsenoop;var parse_SxTbpg=parsenoop;var parse_ObProj=parsenoop;var parse_SXStreamID=parsenoop;var parse_DBCell=parsenoop;var parse_SXRng=parsenoop;var parse_SxIsxoper=parsenoop;var parse_BookBool=parsenoop;var parse_DbOrParamQry=parsenoop;var parse_OleObjectSize=parsenoop;var parse_SXVS=parsenoop;var parse_BkHim=parsenoop;var parse_MsoDrawingGroup=parsenoop;var parse_MsoDrawing=parsenoop;var parse_MsoDrawingSelection=parsenoop;var parse_PhoneticInfo=parsenoop;var parse_SxRule=parsenoop;var parse_SXEx=parsenoop;var parse_SxFilt=parsenoop;var parse_SxDXF=parsenoop;var parse_SxItm=parsenoop;var parse_SxName=parsenoop;var parse_SxSelect=parsenoop;var parse_SXPair=parsenoop;var parse_SxFmla=parsenoop;var parse_SxFormat=parsenoop;var parse_SXVDEx=parsenoop;var parse_SXFormula=parsenoop;var parse_SXDBEx=parsenoop;var parse_RRDInsDel=parsenoop;var parse_RRDHead=parsenoop;var parse_RRDChgCell=parsenoop;var parse_RRDRenSheet=parsenoop;var parse_RRSort=parsenoop;var parse_RRDMove=parsenoop;var parse_RRFormat=parsenoop;var parse_RRAutoFmt=parsenoop;var parse_RRInsertSh=parsenoop;var parse_RRDMoveBegin=parsenoop;var parse_RRDMoveEnd=parsenoop;var parse_RRDInsDelBegin=parsenoop;var parse_RRDInsDelEnd=parsenoop;var parse_RRDConflict=parsenoop;var parse_RRDDefName=parsenoop;var parse_RRDRstEtxp=parsenoop;var parse_LRng=parsenoop;var parse_CUsr=parsenoop;var parse_CbUsr=parsenoop;var parse_UsrInfo=parsenoop;var parse_UsrExcl=parsenoop;var parse_FileLock=parsenoop;var parse_RRDInfo=parsenoop;var parse_BCUsrs=parsenoop;var parse_UsrChk=parsenoop;var parse_UserBView=parsenoop;var parse_UserSViewBegin=parsenoop;var parse_UserSViewEnd=parsenoop;var parse_RRDUserView=parsenoop;var parse_Qsi=parsenoop;var parse_CondFmt=parsenoop;var parse_CF=parsenoop;var parse_DVal=parsenoop;var parse_DConBin=parsenoop;var parse_Lel=parsenoop;var parse_XLSCodeName=parse_XLUnicodeString;var parse_SXFDBType=parsenoop;var parse_ObNoMacros=parsenoop;var parse_Dv=parsenoop;var parse_Index=parsenoop;var parse_Table=parsenoop;var parse_BigName=parsenoop;var parse_ContinueBigName=parsenoop;var parse_WebPub=parsenoop;var parse_QsiSXTag=parsenoop;var parse_DBQueryExt=parsenoop;var parse_ExtString=parsenoop;var parse_TxtQry=parsenoop;var parse_Qsir=parsenoop;var parse_Qsif=parsenoop;var parse_RRDTQSIF=parsenoop;var parse_OleDbConn=parsenoop;var parse_WOpt=parsenoop;var parse_SXViewEx=parsenoop;var parse_SXTH=parsenoop;var parse_SXPIEx=parsenoop;var parse_SXVDTEx=parsenoop;var parse_SXViewEx9=parsenoop;var parse_ContinueFrt=parsenoop;var parse_RealTimeData=parsenoop;var parse_ChartFrtInfo=parsenoop;var parse_FrtWrapper=parsenoop;var parse_StartBlock=parsenoop;var parse_EndBlock=parsenoop;var parse_StartObject=parsenoop;var parse_EndObject=parsenoop;var parse_CatLab=parsenoop;var parse_YMult=parsenoop;var parse_SXViewLink=parsenoop;var parse_PivotChartBits=parsenoop;var parse_FrtFontList=parsenoop;var parse_SheetExt=parsenoop;var parse_BookExt=parsenoop;var parse_SXAddl=parsenoop;var parse_CrErr=parsenoop;var parse_HFPicture=parsenoop;var parse_Feat=parsenoop;var parse_DataLabExt=parsenoop;var parse_DataLabExtContents=parsenoop;var parse_CellWatch=parsenoop;var parse_FeatHdr11=parsenoop;var parse_Feature11=parsenoop;var parse_DropDownObjIds=parsenoop;var parse_ContinueFrt11=parsenoop;var parse_DConn=parsenoop;var parse_List12=parsenoop;var parse_Feature12=parsenoop;var parse_CondFmt12=parsenoop;var parse_CF12=parsenoop;var parse_CFEx=parsenoop;var parse_AutoFilter12=parsenoop;var parse_ContinueFrt12=parsenoop;var parse_MDTInfo=parsenoop;var parse_MDXStr=parsenoop;var parse_MDXTuple=parsenoop;var parse_MDXSet=parsenoop;var parse_MDXProp=parsenoop;var parse_MDXKPI=parsenoop;var parse_MDB=parsenoop;var parse_PLV=parsenoop;var parse_DXF=parsenoop;var parse_TableStyles=parsenoop;var parse_TableStyle=parsenoop;var parse_TableStyleElement=parsenoop;var parse_NamePublish=parsenoop;var parse_NameCmt=parsenoop;var parse_SortData=parsenoop;var parse_GUIDTypeLib=parsenoop;var parse_FnGrp12=parsenoop;var parse_NameFnGrp12=parsenoop;var parse_HeaderFooter=parsenoop;var parse_CrtLayout12=parsenoop;var parse_CrtMlFrt=parsenoop;var parse_CrtMlFrtContinue=parsenoop;var parse_ShapePropsStream=parsenoop;var parse_TextPropsStream=parsenoop;var parse_RichTextStream=parsenoop;var parse_CrtLayout12A=parsenoop;var parse_Units=parsenoop;var parse_Chart=parsenoop;var parse_Series=parsenoop;var parse_DataFormat=parsenoop;var parse_LineFormat=parsenoop;var parse_MarkerFormat=parsenoop;var parse_AreaFormat=parsenoop;var parse_PieFormat=parsenoop;var parse_AttachedLabel=parsenoop;var parse_SeriesText=parsenoop;var parse_ChartFormat=parsenoop;var parse_Legend=parsenoop;var parse_SeriesList=parsenoop;var parse_Bar=parsenoop;var parse_Line=parsenoop;var parse_Pie=parsenoop;var parse_Area=parsenoop;var parse_Scatter=parsenoop;var parse_CrtLine=parsenoop;var parse_Axis=parsenoop;var parse_Tick=parsenoop;var parse_ValueRange=parsenoop;var parse_CatSerRange=parsenoop;var parse_AxisLine=parsenoop;var parse_CrtLink=parsenoop;var parse_DefaultText=parsenoop;var parse_Text=parsenoop;var parse_ObjectLink=parsenoop;var parse_Frame=parsenoop;var parse_Begin=parsenoop;var parse_End=parsenoop;var parse_PlotArea=parsenoop;var parse_Chart3d=parsenoop;var parse_PicF=parsenoop;var parse_DropBar=parsenoop;var parse_Radar=parsenoop;var parse_Surf=parsenoop;var parse_RadarArea=parsenoop;var parse_AxisParent=parsenoop;var parse_LegendException=parsenoop;var parse_ShtProps=parsenoop;var parse_SerToCrt=parsenoop;var parse_AxesUsed=parsenoop;var parse_SBaseRef=parsenoop;var parse_SerParent=parsenoop;var parse_SerAuxTrend=parsenoop;var parse_IFmtRecord=parsenoop;var parse_Pos=parsenoop;var parse_AlRuns=parsenoop;var parse_BRAI=parsenoop;var parse_SerAuxErrBar=parsenoop;var parse_SerFmt=parsenoop;var parse_Chart3DBarShape=parsenoop;var parse_Fbi=parsenoop;var parse_BopPop=parsenoop;var parse_AxcExt=parsenoop;var parse_Dat=parsenoop;var parse_PlotGrowth=parsenoop;var parse_SIIndex=parsenoop;var parse_GelFrame=parsenoop;var parse_BopPopCustom=parsenoop;var parse_Fbi2=parsenoop;function parse_BIFF5String(blob){var len=blob.read_shift(1);return blob.read_shift(len,"sbcs-cont")}function parse_BIFF2STR(blob,length,opts){var cell=parse_XLSCell(blob,6);++blob.l;var str=parse_XLUnicodeString2(blob,length-7,opts);cell.val=str;return cell}function parse_BIFF2NUM(blob,length,opts){var cell=parse_XLSCell(blob,6);++blob.l;var num=parse_Xnum(blob,8);cell.val=num;return cell}var CS2CP={0:1252,1:65001,2:65001,77:1e4,128:932,129:949,130:1361,134:936,136:950,161:1253,162:1254,163:1258,177:1255,178:1256,186:1257,204:1251,222:874,
238:1250,255:1252,69:6969};var parse_rs=function parse_rs_factory(){var tregex=matchtag("t"),rpregex=matchtag("rPr"),rregex=/<r>/g,rend=/<\/r>/,nlregex=/\r\n/g;var parse_rpr=function parse_rpr(rpr,intro,outro){var font={},cp=65001;var m=rpr.match(tagregex),i=0;if(m)for(;i!=m.length;++i){var y=parsexmltag(m[i]);switch(y[0]){case"<condense":break;case"<extend":break;case"<shadow":case"<shadow/>":break;case"<charset":if(y.val=="1")break;cp=CS2CP[parseInt(y.val,10)];break;case"<outline":case"<outline/>":break;case"<rFont":font.name=y.val;break;case"<sz":font.sz=y.val;break;case"<strike":if(!y.val)break;case"<strike/>":font.strike=1;break;case"</strike>":break;case"<u":if(!y.val)break;case"<u/>":font.u=1;break;case"</u>":break;case"<b":if(!y.val)break;case"<b/>":font.b=1;break;case"</b>":break;case"<i":if(!y.val)break;case"<i/>":font.i=1;break;case"</i>":break;case"<color":if(y.rgb)font.color=y.rgb.substr(2,6);break;case"<family":font.family=y.val;break;case"<vertAlign":break;case"<scheme":break;default:if(y[0].charCodeAt(1)!==47)throw"Unrecognized rich format "+y[0]}}var style=[];if(font.b)style.push("font-weight: bold;");if(font.i)style.push("font-style: italic;");intro.push('<span style="'+style.join("")+'">');outro.push("</span>");return cp};function parse_r(r){var terms=[[],"",[]];var t=r.match(tregex),cp=65001;if(!isval(t))return"";terms[1]=t[1];var rpr=r.match(rpregex);if(isval(rpr))cp=parse_rpr(rpr[1],terms[0],terms[2]);return terms[0].join("")+terms[1].replace(nlregex,"<br/>")+terms[2].join("")}return function parse_rs(rs){return rs.replace(rregex,"").split(rend).map(parse_r).join("")}}();var sitregex=/<t[^>]*>([^<]*)<\/t>/g,sirregex=/<r>/;function parse_si(x,opts){var html=opts?opts.cellHTML:true;var z={};if(!x)return null;var y;if(x.charCodeAt(1)===116){z.t=utf8read(unescapexml(x.substr(x.indexOf(">")+1).split(/<\/t>/)[0]));z.r=x;if(html)z.h=z.t}else if(y=x.match(sirregex)){z.r=x;z.t=utf8read(unescapexml(x.match(sitregex).join("").replace(tagregex,"")));if(html)z.h=parse_rs(x)}return z}var sstr0=/<sst([^>]*)>([\s\S]*)<\/sst>/;var sstr1=/<(?:si|sstItem)>/g;var sstr2=/<\/(?:si|sstItem)>/;function parse_sst_xml(data,opts){var s=[],ss;var sst=data.match(sstr0);if(isval(sst)){ss=sst[2].replace(sstr1,"").split(sstr2);for(var i=0;i!=ss.length;++i){var o=parse_si(ss[i],opts);if(o!=null)s[s.length]=o}sst=parsexmltag(sst[1]);s.Count=sst.count;s.Unique=sst.uniqueCount}return s}RELS.SST="http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings";var straywsregex=/^\s|\s$|[\t\n\r]/;function write_sst_xml(sst,opts){if(!opts.bookSST)return"";var o=[XML_HEADER];o[o.length]=writextag("sst",null,{xmlns:XMLNS.main[0],count:sst.Count,uniqueCount:sst.Unique});for(var i=0;i!=sst.length;++i){if(sst[i]==null)continue;var s=sst[i];var sitag="<si>";if(s.r)sitag+=s.r;else{sitag+="<t";if(s.t.match(straywsregex))sitag+=' xml:space="preserve"';sitag+=">"+escapexml(s.t)+"</t>"}sitag+="</si>";o[o.length]=sitag}if(o.length>2){o[o.length]="</sst>";o[1]=o[1].replace("/>",">")}return o.join("")}function parse_BrtBeginSst(data,length){return[data.read_shift(4),data.read_shift(4)]}function parse_sst_bin(data,opts){var s=[];var pass=false;recordhopper(data,function hopper_sst(val,R,RT){switch(R.n){case"BrtBeginSst":s.Count=val[0];s.Unique=val[1];break;case"BrtSSTItem":s.push(val);break;case"BrtEndSst":return true;case"BrtFRTBegin":pass=true;break;case"BrtFRTEnd":pass=false;break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+RT+" "+R.n)}});return s}function write_BrtBeginSst(sst,o){if(!o)o=new_buf(8);o.write_shift(4,sst.Count);o.write_shift(4,sst.Unique);return o}var write_BrtSSTItem=write_RichStr;function write_sst_bin(sst,opts){var ba=buf_array();write_record(ba,"BrtBeginSst",write_BrtBeginSst(sst));for(var i=0;i<sst.length;++i)write_record(ba,"BrtSSTItem",write_BrtSSTItem(sst[i]));write_record(ba,"BrtEndSst");return ba.end()}function _JS2ANSI(str){if(typeof cptable!=="undefined")return cptable.utils.encode(1252,str);return str.split("").map(function(x){return x.charCodeAt(0)})}function parse_Version(blob,length){var o={};o.Major=blob.read_shift(2);o.Minor=blob.read_shift(2);return o}function parse_EncryptionHeader(blob,length){var o={};o.Flags=blob.read_shift(4);var tmp=blob.read_shift(4);if(tmp!==0)throw"Unrecognized SizeExtra: "+tmp;o.AlgID=blob.read_shift(4);switch(o.AlgID){case 0:case 26625:case 26126:case 26127:case 26128:break;default:throw"Unrecognized encryption algorithm: "+o.AlgID}parsenoop(blob,length-12);return o}function parse_EncryptionVerifier(blob,length){return parsenoop(blob,length)}function parse_RC4CryptoHeader(blob,length){var o={};var vers=o.EncryptionVersionInfo=parse_Version(blob,4);length-=4;if(vers.Minor!=2)throw"unrecognized minor version code: "+vers.Minor;if(vers.Major>4||vers.Major<2)throw"unrecognized major version code: "+vers.Major;o.Flags=blob.read_shift(4);length-=4;var sz=blob.read_shift(4);length-=4;o.EncryptionHeader=parse_EncryptionHeader(blob,sz);length-=sz;o.EncryptionVerifier=parse_EncryptionVerifier(blob,length);return o}function parse_RC4Header(blob,length){var o={};var vers=o.EncryptionVersionInfo=parse_Version(blob,4);length-=4;if(vers.Major!=1||vers.Minor!=1)throw"unrecognized version code "+vers.Major+" : "+vers.Minor;o.Salt=blob.read_shift(16);o.EncryptedVerifier=blob.read_shift(16);o.EncryptedVerifierHash=blob.read_shift(16);return o}function crypto_CreatePasswordVerifier_Method1(Password){var Verifier=0,PasswordArray;var PasswordDecoded=_JS2ANSI(Password);var len=PasswordDecoded.length+1,i,PasswordByte;var Intermediate1,Intermediate2,Intermediate3;PasswordArray=new_raw_buf(len);PasswordArray[0]=PasswordDecoded.length;for(i=1;i!=len;++i)PasswordArray[i]=PasswordDecoded[i-1];for(i=len-1;i>=0;--i){PasswordByte=PasswordArray[i];Intermediate1=(Verifier&16384)===0?0:1;Intermediate2=Verifier<<1&32767;Intermediate3=Intermediate1|Intermediate2;Verifier=Intermediate3^PasswordByte}return Verifier^52811}var crypto_CreateXorArray_Method1=function(){var PadArray=[187,255,255,186,255,255,185,128,0,190,15,0,191,15,0];var InitialCode=[57840,7439,52380,33984,4364,3600,61902,12606,6258,57657,54287,34041,10252,43370,20163];var XorMatrix=[44796,19929,39858,10053,20106,40212,10761,31585,63170,64933,60267,50935,40399,11199,17763,35526,1453,2906,5812,11624,23248,885,1770,3540,7080,14160,28320,56640,55369,41139,20807,41614,21821,43642,17621,28485,56970,44341,19019,38038,14605,29210,60195,50791,40175,10751,21502,43004,24537,18387,36774,3949,7898,15796,31592,63184,47201,24803,49606,37805,14203,28406,56812,17824,35648,1697,3394,6788,13576,27152,43601,17539,35078,557,1114,2228,4456,30388,60776,51953,34243,7079,14158,28316,14128,28256,56512,43425,17251,34502,7597,13105,26210,52420,35241,883,1766,3532,4129,8258,16516,33032,4657,9314,18628];var Ror=function(Byte){return(Byte/2|Byte*128)&255};var XorRor=function(byte1,byte2){return Ror(byte1^byte2)};var CreateXorKey_Method1=function(Password){var XorKey=InitialCode[Password.length-1];var CurrentElement=104;for(var i=Password.length-1;i>=0;--i){var Char=Password[i];for(var j=0;j!=7;++j){if(Char&64)XorKey^=XorMatrix[CurrentElement];Char*=2;--CurrentElement}}return XorKey};return function(password){var Password=_JS2ANSI(password);var XorKey=CreateXorKey_Method1(Password);var Index=Password.length;var ObfuscationArray=new_raw_buf(16);for(var i=0;i!=16;++i)ObfuscationArray[i]=0;var Temp,PasswordLastChar,PadIndex;if((Index&1)===1){Temp=XorKey>>8;ObfuscationArray[Index]=XorRor(PadArray[0],Temp);--Index;Temp=XorKey&255;PasswordLastChar=Password[Password.length-1];ObfuscationArray[Index]=XorRor(PasswordLastChar,Temp)}while(Index>0){--Index;Temp=XorKey>>8;ObfuscationArray[Index]=XorRor(Password[Index],Temp);--Index;Temp=XorKey&255;ObfuscationArray[Index]=XorRor(Password[Index],Temp)}Index=15;PadIndex=15-Password.length;while(PadIndex>0){Temp=XorKey>>8;ObfuscationArray[Index]=XorRor(PadArray[PadIndex],Temp);--Index;--PadIndex;Temp=XorKey&255;ObfuscationArray[Index]=XorRor(Password[Index],Temp);--Index;--PadIndex}return ObfuscationArray}}();var crypto_DecryptData_Method1=function(password,Data,XorArrayIndex,XorArray,O){if(!O)O=Data;if(!XorArray)XorArray=crypto_CreateXorArray_Method1(password);var Index,Value;for(Index=0;Index!=Data.length;++Index){Value=Data[Index];Value^=XorArray[XorArrayIndex];Value=(Value>>5|Value<<3)&255;O[Index]=Value;++XorArrayIndex}return[O,XorArrayIndex,XorArray]};var crypto_MakeXorDecryptor=function(password){var XorArrayIndex=0,XorArray=crypto_CreateXorArray_Method1(password);return function(Data){var O=crypto_DecryptData_Method1(null,Data,XorArrayIndex,XorArray);XorArrayIndex=O[1];return O[0]}};function parse_XORObfuscation(blob,length,opts,out){var o={key:parseuint16(blob),verificationBytes:parseuint16(blob)};if(opts.password)o.verifier=crypto_CreatePasswordVerifier_Method1(opts.password);out.valid=o.verificationBytes===o.verifier;if(out.valid)out.insitu_decrypt=crypto_MakeXorDecryptor(opts.password);return o}function parse_FilePassHeader(blob,length,oo){var o=oo||{};o.Info=blob.read_shift(2);blob.l-=2;if(o.Info===1)o.Data=parse_RC4Header(blob,length);else o.Data=parse_RC4CryptoHeader(blob,length);return o}function parse_FilePass(blob,length,opts){var o={Type:blob.read_shift(2)};if(o.Type)parse_FilePassHeader(blob,length-2,o);else parse_XORObfuscation(blob,length-2,opts,o);return o}function hex2RGB(h){var o=h.substr(h[0]==="#"?1:0,6);return[parseInt(o.substr(0,2),16),parseInt(o.substr(2,2),16),parseInt(o.substr(4,2),16)]}function rgb2Hex(rgb){for(var i=0,o=1;i!=3;++i)o=o*256+(rgb[i]>255?255:rgb[i]<0?0:rgb[i]);return o.toString(16).toUpperCase().substr(1)}function rgb2HSL(rgb){var R=rgb[0]/255,G=rgb[1]/255,B=rgb[2]/255;var M=Math.max(R,G,B),m=Math.min(R,G,B),C=M-m;if(C===0)return[0,0,R];var H6=0,S=0,L2=M+m;S=C/(L2>1?2-L2:L2);switch(M){case R:H6=((G-B)/C+6)%6;break;case G:H6=(B-R)/C+2;break;case B:H6=(R-G)/C+4;break}return[H6/6,S,L2/2]}function hsl2RGB(hsl){var H=hsl[0],S=hsl[1],L=hsl[2];var C=S*2*(L<.5?L:1-L),m=L-C/2;var rgb=[m,m,m],h6=6*H;var X;if(S!==0)switch(h6|0){case 0:case 6:X=C*h6;rgb[0]+=C;rgb[1]+=X;break;case 1:X=C*(2-h6);rgb[0]+=X;rgb[1]+=C;break;case 2:X=C*(h6-2);rgb[1]+=C;rgb[2]+=X;break;case 3:X=C*(4-h6);rgb[1]+=X;rgb[2]+=C;break;case 4:X=C*(h6-4);rgb[2]+=C;rgb[0]+=X;break;case 5:X=C*(6-h6);rgb[2]+=X;rgb[0]+=C;break}for(var i=0;i!=3;++i)rgb[i]=Math.round(rgb[i]*255);return rgb}function rgb_tint(hex,tint){if(tint==0)return hex;var hsl=rgb2HSL(hex2RGB(hex));if(tint<0)hsl[2]=hsl[2]*(1+tint);else hsl[2]=1-(1-hsl[2])*(1-tint);var rev=rgb2Hex(hsl2RGB(hsl));return rev}var DEF_MDW=7,MAX_MDW=15,MIN_MDW=1,MDW=DEF_MDW;function width2px(width){return(width+(128/MDW|0)/256)*MDW|0}function px2char(px){return((px-5)/MDW*100+.5|0)/100}function char2width(chr){return((chr*MDW+5)/MDW*256|0)/256}function cycle_width(collw){return char2width(px2char(width2px(collw)))}function find_mdw(collw,coll){if(cycle_width(collw)!=collw){for(MDW=DEF_MDW;MDW>MIN_MDW;--MDW)if(cycle_width(collw)===collw)break;if(MDW===MIN_MDW)for(MDW=DEF_MDW+1;MDW<MAX_MDW;++MDW)if(cycle_width(collw)===collw)break;if(MDW===MAX_MDW)MDW=DEF_MDW}}var XLMLPatternTypeMap={None:"none",Solid:"solid",Gray50:"mediumGray",Gray75:"darkGray",Gray25:"lightGray",HorzStripe:"darkHorizontal",VertStripe:"darkVertical",ReverseDiagStripe:"darkDown",DiagStripe:"darkUp",DiagCross:"darkGrid",ThickDiagCross:"darkTrellis",ThinHorzStripe:"lightHorizontal",ThinVertStripe:"lightVertical",ThinReverseDiagStripe:"lightDown",ThinHorzCross:"lightGrid"};var styles={};var themes={};function parse_fills(t,opts){styles.Fills=[];var fill={};t[0].match(tagregex).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<fills":case"<fills>":case"</fills>":break;case"<fill>":break;case"</fill>":styles.Fills.push(fill);fill={};break;case"<patternFill":if(y.patternType)fill.patternType=y.patternType;break;case"<patternFill/>":case"</patternFill>":break;case"<bgColor":if(!fill.bgColor)fill.bgColor={};if(y.indexed)fill.bgColor.indexed=parseInt(y.indexed,10);if(y.theme)fill.bgColor.theme=parseInt(y.theme,10);if(y.tint)fill.bgColor.tint=parseFloat(y.tint);if(y.theme&&themes.themeElements&&themes.themeElements.clrScheme){fill.bgColor.rgb=rgb_tint(themes.themeElements.clrScheme[fill.bgColor.theme].rgb,fill.bgColor.tint||0);if(opts.WTF)fill.bgColor.raw_rgb=rgb_tint(themes.themeElements.clrScheme[fill.bgColor.theme].rgb,0)}if(y.rgb)fill.bgColor.rgb=y.rgb;break;case"<bgColor/>":case"</bgColor>":break;case"<fgColor":if(!fill.fgColor)fill.fgColor={};if(y.theme)fill.fgColor.theme=parseInt(y.theme,10);if(y.tint)fill.fgColor.tint=parseFloat(y.tint);if(y.theme&&themes.themeElements&&themes.themeElements.clrScheme){fill.fgColor.rgb=rgb_tint(themes.themeElements.clrScheme[fill.fgColor.theme].rgb,fill.fgColor.tint||0);if(opts.WTF)fill.fgColor.raw_rgb=rgb_tint(themes.themeElements.clrScheme[fill.fgColor.theme].rgb,0)}if(y.rgb)fill.fgColor.rgb=y.rgb;break;case"<fgColor/>":case"</fgColor>":break;default:if(opts.WTF)throw"unrecognized "+y[0]+" in fills"}})}function parse_fonts(t,opts){styles.Fonts=[];var font={};t[0].match(tagregex).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<fonts":case"<fonts>":case"</fonts>":break;case"<font":break;case"</font>":styles.Fonts.push(font);font={};break;case"<name":if(y.val)font.name=y.val;break;case"<name/>":case"</name>":break;case"<b/>":font.bold=true;break;case"<u/>":font.underline=true;break;case"<i/>":font.italic=true;break;case"<strike/>":font.strike=true;break;case"<outline/>":font.outline=true;break;case"<shadow/>":font.shadow=true;break;case"<sz":if(y.val)font.sz=y.val;break;case"<sz/>":case"</sz>":break;case"<vertAlign":if(y.val)font.vertAlign=y.val;break;case"<vertAlign/>":case"</vertAlign>":break;case"<color":if(!font.color)font.color={};if(y.theme)font.color.theme=y.theme;if(y.tint)font.color.tint=y.tint;if(y.theme&&themes.themeElements&&themes.themeElements.clrScheme){font.color.rgb=rgb_tint(themes.themeElements.clrScheme[font.color.theme].rgb,font.color.tint||0)}if(y.rgb)font.color.rgb=y.rgb;break;case"<color/>":case"</color>":break}})}function parse_borders(t,opts){styles.Borders=[];var border={},sub_border={};t[0].match(tagregex).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<borders":case"<borders>":case"</borders>":break;case"<border":case"<border>":border={};if(y.diagonalUp){border.diagonalUp=y.diagonalUp}if(y.diagonalDown){border.diagonalDown=y.diagonalDown}styles.Borders.push(border);break;break;case"</border>":break;case"<left":sub_border=border.left={};if(y.style){sub_border.style=y.style}break;case"<right":sub_border=border.right={};if(y.style){sub_border.style=y.style}break;case"<top":sub_border=border.top={};if(y.style){sub_border.style=y.style}break;case"<bottom":sub_border=border.bottom={};if(y.style){sub_border.style=y.style}break;case"<diagonal":sub_border=border.diagonal={};if(y.style){sub_border.style=y.style}break;case"<color":sub_border.color={};if(y.theme)sub_border.color.theme=y.theme;if(y.theme&&themes.themeElements&&themes.themeElements.clrScheme){sub_border.color.rgb=rgb_tint(themes.themeElements.clrScheme[sub_border.color.theme].rgb,sub_border.color.tint||0)}if(y.tint)sub_border.color.tint=y.tint;if(y.rgb)sub_border.color.rgb=y.rgb;if(y.auto)sub_border.color.auto=y.auto;break;case"<name/>":case"</name>":break;default:break}})}function parse_numFmts(t,opts){styles.NumberFmt=[];var k=keys(SSF._table);for(var i=0;i<k.length;++i)styles.NumberFmt[k[i]]=SSF._table[k[i]];var m=t[0].match(tagregex);for(i=0;i<m.length;++i){var y=parsexmltag(m[i]);switch(y[0]){case"<numFmts":case"</numFmts>":case"<numFmts/>":case"<numFmts>":break;case"<numFmt":{var f=unescapexml(utf8read(y.formatCode)),j=parseInt(y.numFmtId,10);styles.NumberFmt[j]=f;if(j>0)SSF.load(f,j)}break;default:if(opts.WTF)throw"unrecognized "+y[0]+" in numFmts"}}}function write_numFmts(NF,opts){var o=["<numFmts>"];[[5,8],[23,26],[41,44],[63,66],[164,392]].forEach(function(r){for(var i=r[0];i<=r[1];++i)if(NF[i]!==undefined)o[o.length]=writextag("numFmt",null,{numFmtId:i,formatCode:escapexml(NF[i])})});if(o.length===1)return"";o[o.length]="</numFmts>";o[0]=writextag("numFmts",null,{count:o.length-2}).replace("/>",">");return o.join("")}function parse_cellXfs(t,opts){styles.CellXf=[];var xf;t[0].match(tagregex).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<cellXfs":case"<cellXfs>":case"<cellXfs/>":case"</cellXfs>":break;case"<xf":xf=y;delete xf[0];delete y[0];if(xf.numFmtId)xf.numFmtId=parseInt(xf.numFmtId,10);if(xf.fillId)xf.fillId=parseInt(xf.fillId,10);styles.CellXf.push(xf);break;case"</xf>":break;case"<alignment":case"<alignment/>":var alignment={};if(y.vertical){alignment.vertical=y.vertical}if(y.horizontal){alignment.horizontal=y.horizontal}if(y.textRotation!=undefined){alignment.textRotation=y.textRotation}if(y.indent){alignment.indent=y.indent}if(y.wrapText){alignment.wrapText=y.wrapText}xf.alignment=alignment;break;case"<protection":case"</protection>":case"<protection/>":break;case"<extLst":case"</extLst>":break;case"<ext":break;default:if(opts.WTF)throw"unrecognized "+y[0]+" in cellXfs"}})}function write_cellXfs(cellXfs){var o=[];o[o.length]=writextag("cellXfs",null);cellXfs.forEach(function(c){o[o.length]=writextag("xf",null,c)});o[o.length]="</cellXfs>";if(o.length===2)return"";o[0]=writextag("cellXfs",null,{count:o.length-2}).replace("/>",">");return o.join("")}var parse_sty_xml=function make_pstyx(){var numFmtRegex=/<numFmts([^>]*)>.*<\/numFmts>/;var cellXfRegex=/<cellXfs([^>]*)>.*<\/cellXfs>/;var fillsRegex=/<fills([^>]*)>.*<\/fills>/;var bordersRegex=/<borders([^>]*)>.*<\/borders>/;return function parse_sty_xml(data,opts){var t;if(t=data.match(numFmtRegex))parse_numFmts(t,opts);if(t=data.match(/<fonts([^>]*)>.*<\/fonts>/))parse_fonts(t,opts);if(t=data.match(fillsRegex))parse_fills(t,opts);if(t=data.match(bordersRegex))parse_borders(t,opts);if(t=data.match(cellXfRegex))parse_cellXfs(t,opts);return styles}}();var STYLES_XML_ROOT=writextag("styleSheet",null,{xmlns:XMLNS.main[0],"xmlns:vt":XMLNS.vt});RELS.STY="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles";function write_sty_xml(wb,opts){if(typeof style_builder!="undefined"&&typeof"require"!="undefined"){return style_builder.toXml()}var o=[XML_HEADER,STYLES_XML_ROOT],w;if((w=write_numFmts(wb.SSF))!=null)o[o.length]=w;o[o.length]='<fonts count="1"><font><sz val="12"/><color theme="1"/><name val="Calibri"/><family val="2"/><scheme val="minor"/></font></fonts>';o[o.length]='<fills count="2"><fill><patternFill patternType="none"/></fill><fill><patternFill patternType="gray125"/></fill></fills>';o[o.length]='<borders count="1"><border><left/><right/><top/><bottom/><diagonal/></border></borders>';o[o.length]='<cellStyleXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0"/></cellStyleXfs>';if(w=write_cellXfs(opts.cellXfs))o[o.length]=w;o[o.length]='<cellStyles count="1"><cellStyle name="Normal" xfId="0" builtinId="0"/></cellStyles>';o[o.length]='<dxfs count="0"/>';o[o.length]='<tableStyles count="0" defaultTableStyle="TableStyleMedium9" defaultPivotStyle="PivotStyleMedium4"/>';if(o.length>2){o[o.length]="</styleSheet>";o[1]=o[1].replace("/>",">")}return o.join("")}function parse_BrtFmt(data,length){var ifmt=data.read_shift(2);var stFmtCode=parse_XLWideString(data,length-2);return[ifmt,stFmtCode]}function parse_BrtFont(data,length){var out={flags:{}};out.dyHeight=data.read_shift(2);out.grbit=parse_FontFlags(data,2);out.bls=data.read_shift(2);out.sss=data.read_shift(2);out.uls=data.read_shift(1);out.bFamily=data.read_shift(1);out.bCharSet=data.read_shift(1);data.l++;out.brtColor=parse_BrtColor(data,8);out.bFontScheme=data.read_shift(1);out.name=parse_XLWideString(data,length-21);out.flags.Bold=out.bls===700;out.flags.Italic=out.grbit.fItalic;out.flags.Strikeout=out.grbit.fStrikeout;out.flags.Outline=out.grbit.fOutline;out.flags.Shadow=out.grbit.fShadow;out.flags.Condense=out.grbit.fCondense;out.flags.Extend=out.grbit.fExtend;out.flags.Sub=out.sss&2;out.flags.Sup=out.sss&1;return out}function parse_BrtXF(data,length){var ixfeParent=data.read_shift(2);var ifmt=data.read_shift(2);parsenoop(data,length-4);return{ixfe:ixfeParent,ifmt:ifmt}}function parse_sty_bin(data,opts){styles.NumberFmt=[];for(var y in SSF._table)styles.NumberFmt[y]=SSF._table[y];styles.CellXf=[];var state="";var pass=false;recordhopper(data,function hopper_sty(val,R,RT){switch(R.n){case"BrtFmt":styles.NumberFmt[val[0]]=val[1];SSF.load(val[1],val[0]);break;case"BrtFont":break;case"BrtKnownFonts":break;case"BrtFill":break;case"BrtBorder":break;case"BrtXF":if(state==="CELLXFS"){styles.CellXf.push(val)}break;case"BrtStyle":break;case"BrtDXF":break;case"BrtMRUColor":break;case"BrtIndexedColor":break;case"BrtBeginStyleSheet":break;case"BrtEndStyleSheet":break;case"BrtBeginTableStyle":break;case"BrtTableStyleElement":break;case"BrtEndTableStyle":break;case"BrtBeginFmts":state="FMTS";break;case"BrtEndFmts":state="";break;case"BrtBeginFonts":state="FONTS";break;case"BrtEndFonts":state="";break;case"BrtACBegin":state="ACFONTS";break;case"BrtACEnd":state="";break;case"BrtBeginFills":state="FILLS";break;case"BrtEndFills":state="";break;case"BrtBeginBorders":state="BORDERS";break;case"BrtEndBorders":state="";break;case"BrtBeginCellStyleXFs":state="CELLSTYLEXFS";break;case"BrtEndCellStyleXFs":state="";break;case"BrtBeginCellXFs":state="CELLXFS";break;case"BrtEndCellXFs":state="";break;case"BrtBeginStyles":state="STYLES";break;case"BrtEndStyles":state="";break;case"BrtBeginDXFs":state="DXFS";break;case"BrtEndDXFs":state="";break;case"BrtBeginTableStyles":state="TABLESTYLES";break;case"BrtEndTableStyles":state="";break;case"BrtBeginColorPalette":state="COLORPALETTE";break;case"BrtEndColorPalette":state="";break;case"BrtBeginIndexedColors":state="INDEXEDCOLORS";break;case"BrtEndIndexedColors":state="";break;case"BrtBeginMRUColors":state="MRUCOLORS";break;case"BrtEndMRUColors":state="";break;case"BrtFRTBegin":pass=true;break;case"BrtFRTEnd":pass=false;break;case"BrtBeginStyleSheetExt14":break;case"BrtBeginSlicerStyles":break;case"BrtEndSlicerStyles":break;case"BrtBeginTimelineStylesheetExt15":break;case"BrtEndTimelineStylesheetExt15":break;case"BrtBeginTimelineStyles":break;case"BrtEndTimelineStyles":break;case"BrtEndStyleSheetExt14":break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+RT+" "+R.n)}});return styles}function write_sty_bin(data,opts){var ba=buf_array();write_record(ba,"BrtBeginStyleSheet");write_record(ba,"BrtEndStyleSheet");return ba.end()}RELS.THEME="http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme";function parse_clrScheme(t,opts){themes.themeElements.clrScheme=[];var color={};t[0].match(tagregex).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<a:clrScheme":case"</a:clrScheme>":break;case"<a:srgbClr":color.rgb=y.val;break;case"<a:sysClr":color.rgb=y.lastClr;break;case"<a:dk1>":case"</a:dk1>":case"<a:dk2>":case"</a:dk2>":case"<a:lt1>":case"</a:lt1>":case"<a:lt2>":case"</a:lt2>":case"<a:accent1>":case"</a:accent1>":case"<a:accent2>":case"</a:accent2>":case"<a:accent3>":case"</a:accent3>":case"<a:accent4>":case"</a:accent4>":case"<a:accent5>":case"</a:accent5>":case"<a:accent6>":case"</a:accent6>":case"<a:hlink>":case"</a:hlink>":case"<a:folHlink>":case"</a:folHlink>":if(y[0][1]==="/"){themes.themeElements.clrScheme.push(color);color={}}else{color.name=y[0].substring(3,y[0].length-1)}break;default:if(opts.WTF)throw"unrecognized "+y[0]+" in clrScheme"}})}function parse_fontScheme(t,opts){}function parse_fmtScheme(t,opts){}var clrsregex=/<a:clrScheme([^>]*)>[^\u2603]*<\/a:clrScheme>/;var fntsregex=/<a:fontScheme([^>]*)>[^\u2603]*<\/a:fontScheme>/;var fmtsregex=/<a:fmtScheme([^>]*)>[^\u2603]*<\/a:fmtScheme>/;function parse_themeElements(data,opts){themes.themeElements={};var t;[["clrScheme",clrsregex,parse_clrScheme],["fontScheme",fntsregex,parse_fontScheme],["fmtScheme",fmtsregex,parse_fmtScheme]].forEach(function(m){if(!(t=data.match(m[1])))throw m[0]+" not found in themeElements";m[2](t,opts)})}var themeltregex=/<a:themeElements([^>]*)>[^\u2603]*<\/a:themeElements>/;function parse_theme_xml(data,opts){if(!data||data.length===0)return themes;var t;if(!(t=data.match(themeltregex)))throw"themeElements not found in theme";parse_themeElements(t[0],opts);return themes}function write_theme(opts){if(opts.themeXml){return opts.themeXml}return'<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"><a:themeElements><a:clrScheme name="Office"><a:dk1><a:sysClr val="windowText" lastClr="000000"/></a:dk1><a:lt1><a:sysClr val="window" lastClr="FFFFFF"/></a:lt1><a:dk2><a:srgbClr val="1F497D"/></a:dk2><a:lt2><a:srgbClr val="EEECE1"/></a:lt2><a:accent1><a:srgbClr val="4F81BD"/></a:accent1><a:accent2><a:srgbClr val="C0504D"/></a:accent2><a:accent3><a:srgbClr val="9BBB59"/></a:accent3><a:accent4><a:srgbClr val="8064A2"/></a:accent4><a:accent5><a:srgbClr val="4BACC6"/></a:accent5><a:accent6><a:srgbClr val="F79646"/></a:accent6><a:hlink><a:srgbClr val="0000FF"/></a:hlink><a:folHlink><a:srgbClr val="800080"/></a:folHlink></a:clrScheme><a:fontScheme name="Office"><a:majorFont><a:latin typeface="Cambria"/><a:ea typeface=""/><a:cs typeface=""/><a:font script="Jpan" typeface="ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯"/><a:font script="Hang" typeface="맑은 ê³ ë”•"/><a:font script="Hans" typeface="宋体"/><a:font script="Hant" typeface="新細明體"/><a:font script="Arab" typeface="Times New Roman"/><a:font script="Hebr" typeface="Times New Roman"/><a:font script="Thai" typeface="Tahoma"/><a:font script="Ethi" typeface="Nyala"/><a:font script="Beng" typeface="Vrinda"/><a:font script="Gujr" typeface="Shruti"/><a:font script="Khmr" typeface="MoolBoran"/><a:font script="Knda" typeface="Tunga"/><a:font script="Guru" typeface="Raavi"/><a:font script="Cans" typeface="Euphemia"/><a:font script="Cher" typeface="Plantagenet Cherokee"/><a:font script="Yiii" typeface="Microsoft Yi Baiti"/><a:font script="Tibt" typeface="Microsoft Himalaya"/><a:font script="Thaa" typeface="MV Boli"/><a:font script="Deva" typeface="Mangal"/><a:font script="Telu" typeface="Gautami"/><a:font script="Taml" typeface="Latha"/><a:font script="Syrc" typeface="Estrangelo Edessa"/><a:font script="Orya" typeface="Kalinga"/><a:font script="Mlym" typeface="Kartika"/><a:font script="Laoo" typeface="DokChampa"/><a:font script="Sinh" typeface="Iskoola Pota"/><a:font script="Mong" typeface="Mongolian Baiti"/><a:font script="Viet" typeface="Times New Roman"/><a:font script="Uigh" typeface="Microsoft Uighur"/><a:font script="Geor" typeface="Sylfaen"/></a:majorFont><a:minorFont><a:latin typeface="Calibri"/><a:ea typeface=""/><a:cs typeface=""/><a:font script="Jpan" typeface="ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯"/><a:font script="Hang" typeface="맑은 ê³ ë”•"/><a:font script="Hans" typeface="宋体"/><a:font script="Hant" typeface="新細明體"/><a:font script="Arab" typeface="Arial"/><a:font script="Hebr" typeface="Arial"/><a:font script="Thai" typeface="Tahoma"/><a:font script="Ethi" typeface="Nyala"/><a:font script="Beng" typeface="Vrinda"/><a:font script="Gujr" typeface="Shruti"/><a:font script="Khmr" typeface="DaunPenh"/><a:font script="Knda" typeface="Tunga"/><a:font script="Guru" typeface="Raavi"/><a:font script="Cans" typeface="Euphemia"/><a:font script="Cher" typeface="Plantagenet Cherokee"/><a:font script="Yiii" typeface="Microsoft Yi Baiti"/><a:font script="Tibt" typeface="Microsoft Himalaya"/><a:font script="Thaa" typeface="MV Boli"/><a:font script="Deva" typeface="Mangal"/><a:font script="Telu" typeface="Gautami"/><a:font script="Taml" typeface="Latha"/><a:font script="Syrc" typeface="Estrangelo Edessa"/><a:font script="Orya" typeface="Kalinga"/><a:font script="Mlym" typeface="Kartika"/><a:font script="Laoo" typeface="DokChampa"/><a:font script="Sinh" typeface="Iskoola Pota"/><a:font script="Mong" typeface="Mongolian Baiti"/><a:font script="Viet" typeface="Arial"/><a:font script="Uigh" typeface="Microsoft Uighur"/><a:font script="Geor" typeface="Sylfaen"/></a:minorFont></a:fontScheme><a:fmtScheme name="Office"><a:fillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="50000"/><a:satMod val="300000"/></a:schemeClr></a:gs><a:gs pos="35000"><a:schemeClr val="phClr"><a:tint val="37000"/><a:satMod val="300000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="15000"/><a:satMod val="350000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="16200000" scaled="1"/></a:gradFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="100000"/><a:shade val="100000"/><a:satMod val="130000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="50000"/><a:shade val="100000"/><a:satMod val="350000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="16200000" scaled="0"/></a:gradFill></a:fillStyleLst><a:lnStyleLst><a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"><a:shade val="95000"/><a:satMod val="105000"/></a:schemeClr></a:solidFill><a:prstDash val="solid"/></a:ln><a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln><a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln></a:lnStyleLst><a:effectStyleLst><a:effectStyle><a:effectLst><a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="38000"/></a:srgbClr></a:outerShdw></a:effectLst></a:effectStyle><a:effectStyle><a:effectLst><a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw></a:effectLst></a:effectStyle><a:effectStyle><a:effectLst><a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw></a:effectLst><a:scene3d><a:camera prst="orthographicFront"><a:rot lat="0" lon="0" rev="0"/></a:camera><a:lightRig rig="threePt" dir="t"><a:rot lat="0" lon="0" rev="1200000"/></a:lightRig></a:scene3d><a:sp3d><a:bevelT w="63500" h="25400"/></a:sp3d></a:effectStyle></a:effectStyleLst><a:bgFillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="40000"/><a:satMod val="350000"/></a:schemeClr></a:gs><a:gs pos="40000"><a:schemeClr val="phClr"><a:tint val="45000"/><a:shade val="99000"/><a:satMod val="350000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="20000"/><a:satMod val="255000"/></a:schemeClr></a:gs></a:gsLst><a:path path="circle"><a:fillToRect l="50000" t="-80000" r="50000" b="180000"/></a:path></a:gradFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="80000"/><a:satMod val="300000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="30000"/><a:satMod val="200000"/></a:schemeClr></a:gs></a:gsLst><a:path path="circle"><a:fillToRect l="50000" t="50000" r="50000" b="50000"/></a:path></a:gradFill></a:bgFillStyleLst></a:fmtScheme></a:themeElements><a:objectDefaults><a:spDef><a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="1"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="3"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="2"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="lt1"/></a:fontRef></a:style></a:spDef><a:lnDef><a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="2"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="0"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="1"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="tx1"/></a:fontRef></a:style></a:lnDef></a:objectDefaults><a:extraClrSchemeLst/></a:theme>'}function parse_Theme(blob,length){var dwThemeVersion=blob.read_shift(4);
if(dwThemeVersion===124226)return;blob.l+=length-4}function parse_ColorTheme(blob,length){return blob.read_shift(4)}function parse_FullColorExt(blob,length){var o={};o.xclrType=blob.read_shift(2);o.nTintShade=blob.read_shift(2);switch(o.xclrType){case 0:blob.l+=4;break;case 1:o.xclrValue=parse_IcvXF(blob,4);break;case 2:o.xclrValue=parse_LongRGBA(blob,4);break;case 3:o.xclrValue=parse_ColorTheme(blob,4);break;case 4:blob.l+=4;break}blob.l+=8;return o}function parse_IcvXF(blob,length){return parsenoop(blob,length)}function parse_XFExtGradient(blob,length){return parsenoop(blob,length)}function parse_ExtProp(blob,length){var extType=blob.read_shift(2);var cb=blob.read_shift(2);var o=[extType];switch(extType){case 4:case 5:case 7:case 8:case 9:case 10:case 11:case 13:o[1]=parse_FullColorExt(blob,cb);break;case 6:o[1]=parse_XFExtGradient(blob,cb);break;case 14:case 15:o[1]=blob.read_shift(cb===5?1:2);break;default:throw new Error("Unrecognized ExtProp type: "+extType+" "+cb)}return o}function parse_XFExt(blob,length){var end=blob.l+length;blob.l+=2;var ixfe=blob.read_shift(2);blob.l+=2;var cexts=blob.read_shift(2);var ext=[];while(cexts-- >0)ext.push(parse_ExtProp(blob,end-blob.l));return{ixfe:ixfe,ext:ext}}function update_xfext(xf,xfext){xfext.forEach(function(xfe){switch(xfe[0]){case 4:break;case 5:break;case 7:case 8:case 9:case 10:break;case 13:break;case 14:break;default:throw"bafuq"+xfe[0].toString(16)}})}function parse_cc_xml(data,opts){var d=[];var l=0,i=1;(data.match(tagregex)||[]).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<?xml":break;case"<calcChain":case"<calcChain>":case"</calcChain>":break;case"<c":delete y[0];if(y.i)i=y.i;else y.i=i;d.push(y);break}});return d}function write_cc_xml(data,opts){}function parse_BrtCalcChainItem$(data,length){var out={};out.i=data.read_shift(4);var cell={};cell.r=data.read_shift(4);cell.c=data.read_shift(4);out.r=encode_cell(cell);var flags=data.read_shift(1);if(flags&2)out.l="1";if(flags&8)out.a="1";return out}function parse_cc_bin(data,opts){var out=[];var pass=false;recordhopper(data,function hopper_cc(val,R,RT){switch(R.n){case"BrtCalcChainItem$":out.push(val);break;case"BrtBeginCalcChain$":break;case"BrtEndCalcChain$":break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+RT+" "+R.n)}});return out}function write_cc_bin(data,opts){}function parse_comments(zip,dirComments,sheets,sheetRels,opts){for(var i=0;i!=dirComments.length;++i){var canonicalpath=dirComments[i];var comments=parse_cmnt(getzipdata(zip,canonicalpath.replace(/^\//,""),true),canonicalpath,opts);if(!comments||!comments.length)continue;var sheetNames=keys(sheets);for(var j=0;j!=sheetNames.length;++j){var sheetName=sheetNames[j];var rels=sheetRels[sheetName];if(rels){var rel=rels[canonicalpath];if(rel)insertCommentsIntoSheet(sheetName,sheets[sheetName],comments)}}}}function insertCommentsIntoSheet(sheetName,sheet,comments){comments.forEach(function(comment){var cell=sheet[comment.ref];if(!cell){cell={};sheet[comment.ref]=cell;var range=safe_decode_range(sheet["!ref"]||"BDWGO1000001:A1");var thisCell=decode_cell(comment.ref);if(range.s.r>thisCell.r)range.s.r=thisCell.r;if(range.e.r<thisCell.r)range.e.r=thisCell.r;if(range.s.c>thisCell.c)range.s.c=thisCell.c;if(range.e.c<thisCell.c)range.e.c=thisCell.c;var encoded=encode_range(range);if(encoded!==sheet["!ref"])sheet["!ref"]=encoded}if(!cell.c)cell.c=[];var o={a:comment.author,t:comment.t,r:comment.r};if(comment.h)o.h=comment.h;cell.c.push(o)})}function parse_comments_xml(data,opts){if(data.match(/<(?:\w+:)?comments *\/>/))return[];var authors=[];var commentList=[];data.match(/<(?:\w+:)?authors>([^\u2603]*)<\/(?:\w+:)?authors>/)[1].split(/<\/\w*:?author>/).forEach(function(x){if(x===""||x.trim()==="")return;authors.push(x.match(/<(?:\w+:)?author[^>]*>(.*)/)[1])});(data.match(/<(?:\w+:)?commentList>([^\u2603]*)<\/(?:\w+:)?commentList>/)||["",""])[1].split(/<\/\w*:?comment>/).forEach(function(x,index){if(x===""||x.trim()==="")return;var y=parsexmltag(x.match(/<(?:\w+:)?comment[^>]*>/)[0]);var comment={author:y.authorId&&authors[y.authorId]?authors[y.authorId]:undefined,ref:y.ref,guid:y.guid};var cell=decode_cell(y.ref);if(opts.sheetRows&&opts.sheetRows<=cell.r)return;var textMatch=x.match(/<text>([^\u2603]*)<\/text>/);if(!textMatch||!textMatch[1])return;var rt=parse_si(textMatch[1]);comment.r=rt.r;comment.t=rt.t;if(opts.cellHTML)comment.h=rt.h;commentList.push(comment)});return commentList}function write_comments_xml(data,opts){}function parse_BrtBeginComment(data,length){var out={};out.iauthor=data.read_shift(4);var rfx=parse_UncheckedRfX(data,16);out.rfx=rfx.s;out.ref=encode_cell(rfx.s);data.l+=16;return out}var parse_BrtCommentAuthor=parse_XLWideString;var parse_BrtCommentText=parse_RichStr;function parse_comments_bin(data,opts){var out=[];var authors=[];var c={};var pass=false;recordhopper(data,function hopper_cmnt(val,R,RT){switch(R.n){case"BrtCommentAuthor":authors.push(val);break;case"BrtBeginComment":c=val;break;case"BrtCommentText":c.t=val.t;c.h=val.h;c.r=val.r;break;case"BrtEndComment":c.author=authors[c.iauthor];delete c.iauthor;if(opts.sheetRows&&opts.sheetRows<=c.rfx.r)break;delete c.rfx;out.push(c);break;case"BrtBeginComments":break;case"BrtEndComments":break;case"BrtBeginCommentAuthors":break;case"BrtEndCommentAuthors":break;case"BrtBeginCommentList":break;case"BrtEndCommentList":break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+RT+" "+R.n)}});return out}function write_comments_bin(data,opts){}var rc_to_a1=function(){var rcregex=/(^|[^A-Za-z])R(\[?)(-?\d+|)\]?C(\[?)(-?\d+|)\]?/g;var rcbase;function rcfunc($$,$1,$2,$3,$4,$5){var R=$3.length>0?parseInt($3,10)|0:0,C=$5.length>0?parseInt($5,10)|0:0;if(C<0&&$4.length===0)C=0;if($4.length>0)C+=rcbase.c;if($2.length>0)R+=rcbase.r;return $1+encode_col(C)+encode_row(R)}return function rc_to_a1(fstr,base){rcbase=base;return fstr.replace(rcregex,rcfunc)}}();function parseread(l){return function(blob,length){blob.l+=l;return}}function parseread1(blob,length){blob.l+=1;return}function parse_ColRelU(blob,length){var c=blob.read_shift(2);return[c&16383,c>>14&1,c>>15&1]}function parse_RgceArea(blob,length){var r=blob.read_shift(2),R=blob.read_shift(2);var c=parse_ColRelU(blob,2);var C=parse_ColRelU(blob,2);return{s:{r:r,c:c[0],cRel:c[1],rRel:c[2]},e:{r:R,c:C[0],cRel:C[1],rRel:C[2]}}}function parse_RgceAreaRel(blob,length){var r=blob.read_shift(2),R=blob.read_shift(2);var c=parse_ColRelU(blob,2);var C=parse_ColRelU(blob,2);return{s:{r:r,c:c[0],cRel:c[1],rRel:c[2]},e:{r:R,c:C[0],cRel:C[1],rRel:C[2]}}}function parse_RgceLoc(blob,length){var r=blob.read_shift(2);var c=parse_ColRelU(blob,2);return{r:r,c:c[0],cRel:c[1],rRel:c[2]}}function parse_RgceLocRel(blob,length){var r=blob.read_shift(2);var cl=blob.read_shift(2);var cRel=(cl&32768)>>15,rRel=(cl&16384)>>14;cl&=16383;if(cRel!==0)while(cl>=256)cl-=256;return{r:r,c:cl,cRel:cRel,rRel:rRel}}function parse_PtgArea(blob,length){var type=(blob[blob.l++]&96)>>5;var area=parse_RgceArea(blob,8);return[type,area]}function parse_PtgArea3d(blob,length){var type=(blob[blob.l++]&96)>>5;var ixti=blob.read_shift(2);var area=parse_RgceArea(blob,8);return[type,ixti,area]}function parse_PtgAreaErr(blob,length){var type=(blob[blob.l++]&96)>>5;blob.l+=8;return[type]}function parse_PtgAreaErr3d(blob,length){var type=(blob[blob.l++]&96)>>5;var ixti=blob.read_shift(2);blob.l+=8;return[type,ixti]}function parse_PtgAreaN(blob,length){var type=(blob[blob.l++]&96)>>5;var area=parse_RgceAreaRel(blob,8);return[type,area]}function parse_PtgArray(blob,length){var type=(blob[blob.l++]&96)>>5;blob.l+=7;return[type]}function parse_PtgAttrBaxcel(blob,length){var bitSemi=blob[blob.l+1]&1;var bitBaxcel=1;blob.l+=4;return[bitSemi,bitBaxcel]}function parse_PtgAttrChoose(blob,length){blob.l+=2;var offset=blob.read_shift(2);var o=[];for(var i=0;i<=offset;++i)o.push(blob.read_shift(2));return o}function parse_PtgAttrGoto(blob,length){var bitGoto=blob[blob.l+1]&255?1:0;blob.l+=2;return[bitGoto,blob.read_shift(2)]}function parse_PtgAttrIf(blob,length){var bitIf=blob[blob.l+1]&255?1:0;blob.l+=2;return[bitIf,blob.read_shift(2)]}function parse_PtgAttrSemi(blob,length){var bitSemi=blob[blob.l+1]&255?1:0;blob.l+=4;return[bitSemi]}function parse_PtgAttrSpaceType(blob,length){var type=blob.read_shift(1),cch=blob.read_shift(1);return[type,cch]}function parse_PtgAttrSpace(blob,length){blob.read_shift(2);return parse_PtgAttrSpaceType(blob,2)}function parse_PtgAttrSpaceSemi(blob,length){blob.read_shift(2);return parse_PtgAttrSpaceType(blob,2)}function parse_PtgRef(blob,length){var ptg=blob[blob.l]&31;var type=(blob[blob.l]&96)>>5;blob.l+=1;var loc=parse_RgceLoc(blob,4);return[type,loc]}function parse_PtgRefN(blob,length){var ptg=blob[blob.l]&31;var type=(blob[blob.l]&96)>>5;blob.l+=1;var loc=parse_RgceLocRel(blob,4);return[type,loc]}function parse_PtgRef3d(blob,length){var ptg=blob[blob.l]&31;var type=(blob[blob.l]&96)>>5;blob.l+=1;var ixti=blob.read_shift(2);var loc=parse_RgceLoc(blob,4);return[type,ixti,loc]}function parse_PtgFunc(blob,length){var ptg=blob[blob.l]&31;var type=(blob[blob.l]&96)>>5;blob.l+=1;var iftab=blob.read_shift(2);return[FtabArgc[iftab],Ftab[iftab]]}function parse_PtgFuncVar(blob,length){blob.l++;var cparams=blob.read_shift(1),tab=parsetab(blob);return[cparams,(tab[0]===0?Ftab:Cetab)[tab[1]]]}function parsetab(blob,length){return[blob[blob.l+1]>>7,blob.read_shift(2)&32767]}var parse_PtgAttrSum=parseread(4);var parse_PtgConcat=parseread1;function parse_PtgExp(blob,length){blob.l++;var row=blob.read_shift(2);var col=blob.read_shift(2);return[row,col]}function parse_PtgErr(blob,length){blob.l++;return BErr[blob.read_shift(1)]}function parse_PtgInt(blob,length){blob.l++;return blob.read_shift(2)}function parse_PtgBool(blob,length){blob.l++;return blob.read_shift(1)!==0}function parse_PtgNum(blob,length){blob.l++;return parse_Xnum(blob,8)}function parse_PtgStr(blob,length){blob.l++;return parse_ShortXLUnicodeString(blob)}function parse_SerAr(blob){var val=[];switch(val[0]=blob.read_shift(1)){case 4:val[1]=parsebool(blob,1)?"TRUE":"FALSE";blob.l+=7;break;case 16:val[1]=BErr[blob[blob.l]];blob.l+=8;break;case 0:blob.l+=8;break;case 1:val[1]=parse_Xnum(blob,8);break;case 2:val[1]=parse_XLUnicodeString(blob);break}return val}function parse_PtgExtraMem(blob,cce){var count=blob.read_shift(2);var out=[];for(var i=0;i!=count;++i)out.push(parse_Ref8U(blob,8));return out}function parse_PtgExtraArray(blob){var cols=1+blob.read_shift(1);var rows=1+blob.read_shift(2);for(var i=0,o=[];i!=rows&&(o[i]=[]);++i)for(var j=0;j!=cols;++j)o[i][j]=parse_SerAr(blob);return o}function parse_PtgName(blob,length){var type=blob.read_shift(1)>>>5&3;var nameindex=blob.read_shift(4);return[type,0,nameindex]}function parse_PtgNameX(blob,length){var type=blob.read_shift(1)>>>5&3;var ixti=blob.read_shift(2);var nameindex=blob.read_shift(4);return[type,ixti,nameindex]}function parse_PtgMemArea(blob,length){var type=blob.read_shift(1)>>>5&3;blob.l+=4;var cce=blob.read_shift(2);return[type,cce]}function parse_PtgMemFunc(blob,length){var type=blob.read_shift(1)>>>5&3;var cce=blob.read_shift(2);return[type,cce]}function parse_PtgRefErr(blob,length){var type=blob.read_shift(1)>>>5&3;blob.l+=4;return[type]}var parse_PtgAdd=parseread1;var parse_PtgDiv=parseread1;var parse_PtgEq=parseread1;var parse_PtgGe=parseread1;var parse_PtgGt=parseread1;var parse_PtgIsect=parseread1;var parse_PtgLe=parseread1;var parse_PtgLt=parseread1;var parse_PtgMissArg=parseread1;var parse_PtgMul=parseread1;var parse_PtgNe=parseread1;var parse_PtgParen=parseread1;var parse_PtgPercent=parseread1;var parse_PtgPower=parseread1;var parse_PtgRange=parseread1;var parse_PtgSub=parseread1;var parse_PtgUminus=parseread1;var parse_PtgUnion=parseread1;var parse_PtgUplus=parseread1;var parse_PtgMemErr=parsenoop;var parse_PtgMemNoMem=parsenoop;var parse_PtgRefErr3d=parsenoop;var parse_PtgTbl=parsenoop;var PtgTypes={1:{n:"PtgExp",f:parse_PtgExp},2:{n:"PtgTbl",f:parse_PtgTbl},3:{n:"PtgAdd",f:parse_PtgAdd},4:{n:"PtgSub",f:parse_PtgSub},5:{n:"PtgMul",f:parse_PtgMul},6:{n:"PtgDiv",f:parse_PtgDiv},7:{n:"PtgPower",f:parse_PtgPower},8:{n:"PtgConcat",f:parse_PtgConcat},9:{n:"PtgLt",f:parse_PtgLt},10:{n:"PtgLe",f:parse_PtgLe},11:{n:"PtgEq",f:parse_PtgEq},12:{n:"PtgGe",f:parse_PtgGe},13:{n:"PtgGt",f:parse_PtgGt},14:{n:"PtgNe",f:parse_PtgNe},15:{n:"PtgIsect",f:parse_PtgIsect},16:{n:"PtgUnion",f:parse_PtgUnion},17:{n:"PtgRange",f:parse_PtgRange},18:{n:"PtgUplus",f:parse_PtgUplus},19:{n:"PtgUminus",f:parse_PtgUminus},20:{n:"PtgPercent",f:parse_PtgPercent},21:{n:"PtgParen",f:parse_PtgParen},22:{n:"PtgMissArg",f:parse_PtgMissArg},23:{n:"PtgStr",f:parse_PtgStr},28:{n:"PtgErr",f:parse_PtgErr},29:{n:"PtgBool",f:parse_PtgBool},30:{n:"PtgInt",f:parse_PtgInt},31:{n:"PtgNum",f:parse_PtgNum},32:{n:"PtgArray",f:parse_PtgArray},33:{n:"PtgFunc",f:parse_PtgFunc},34:{n:"PtgFuncVar",f:parse_PtgFuncVar},35:{n:"PtgName",f:parse_PtgName},36:{n:"PtgRef",f:parse_PtgRef},37:{n:"PtgArea",f:parse_PtgArea},38:{n:"PtgMemArea",f:parse_PtgMemArea},39:{n:"PtgMemErr",f:parse_PtgMemErr},40:{n:"PtgMemNoMem",f:parse_PtgMemNoMem},41:{n:"PtgMemFunc",f:parse_PtgMemFunc},42:{n:"PtgRefErr",f:parse_PtgRefErr},43:{n:"PtgAreaErr",f:parse_PtgAreaErr},44:{n:"PtgRefN",f:parse_PtgRefN},45:{n:"PtgAreaN",f:parse_PtgAreaN},57:{n:"PtgNameX",f:parse_PtgNameX},58:{n:"PtgRef3d",f:parse_PtgRef3d},59:{n:"PtgArea3d",f:parse_PtgArea3d},60:{n:"PtgRefErr3d",f:parse_PtgRefErr3d},61:{n:"PtgAreaErr3d",f:parse_PtgAreaErr3d},255:{}};var PtgDupes={64:32,96:32,65:33,97:33,66:34,98:34,67:35,99:35,68:36,100:36,69:37,101:37,70:38,102:38,71:39,103:39,72:40,104:40,73:41,105:41,74:42,106:42,75:43,107:43,76:44,108:44,77:45,109:45,89:57,121:57,90:58,122:58,91:59,123:59,92:60,124:60,93:61,125:61};(function(){for(var y in PtgDupes)PtgTypes[y]=PtgTypes[PtgDupes[y]]})();var Ptg18={};var Ptg19={1:{n:"PtgAttrSemi",f:parse_PtgAttrSemi},2:{n:"PtgAttrIf",f:parse_PtgAttrIf},4:{n:"PtgAttrChoose",f:parse_PtgAttrChoose},8:{n:"PtgAttrGoto",f:parse_PtgAttrGoto},16:{n:"PtgAttrSum",f:parse_PtgAttrSum},32:{n:"PtgAttrBaxcel",f:parse_PtgAttrBaxcel},64:{n:"PtgAttrSpace",f:parse_PtgAttrSpace},65:{n:"PtgAttrSpaceSemi",f:parse_PtgAttrSpaceSemi},255:{}};function parse_Formula(blob,length,opts){var cell=parse_XLSCell(blob,6);var val=parse_FormulaValue(blob,8);var flags=blob.read_shift(1);blob.read_shift(1);var chn=blob.read_shift(4);var cbf="";if(opts.biff===5)blob.l+=length-20;else cbf=parse_XLSCellParsedFormula(blob,length-20,opts);return{cell:cell,val:val[0],formula:cbf,shared:flags>>3&1,tt:val[1]}}function parse_FormulaValue(blob){var b;if(__readUInt16LE(blob,blob.l+6)!==65535)return[parse_Xnum(blob),"n"];switch(blob[blob.l]){case 0:blob.l+=8;return["String","s"];case 1:b=blob[blob.l+2]===1;blob.l+=8;return[b,"b"];case 2:b=blob[blob.l+2];blob.l+=8;return[b,"e"];case 3:blob.l+=8;return["","s"]}}function parse_RgbExtra(blob,length,rgce,opts){if(opts.biff<8)return parsenoop(blob,length);var target=blob.l+length;var o=[];for(var i=0;i!==rgce.length;++i){switch(rgce[i][0]){case"PtgArray":rgce[i][1]=parse_PtgExtraArray(blob);o.push(rgce[i][1]);break;case"PtgMemArea":rgce[i][2]=parse_PtgExtraMem(blob,rgce[i][1]);o.push(rgce[i][2]);break;default:break}}length=target-blob.l;if(length!==0)o.push(parsenoop(blob,length));return o}function parse_NameParsedFormula(blob,length,opts,cce){var target=blob.l+length;var rgce=parse_Rgce(blob,cce);var rgcb;if(target!==blob.l)rgcb=parse_RgbExtra(blob,target-blob.l,rgce,opts);return[rgce,rgcb]}function parse_XLSCellParsedFormula(blob,length,opts){var target=blob.l+length;var rgcb,cce=blob.read_shift(2);if(cce==65535)return[[],parsenoop(blob,length-2)];var rgce=parse_Rgce(blob,cce);if(length!==cce+2)rgcb=parse_RgbExtra(blob,length-cce-2,rgce,opts);return[rgce,rgcb]}function parse_SharedParsedFormula(blob,length,opts){var target=blob.l+length;var rgcb,cce=blob.read_shift(2);var rgce=parse_Rgce(blob,cce);if(cce==65535)return[[],parsenoop(blob,length-2)];if(length!==cce+2)rgcb=parse_RgbExtra(blob,target-cce-2,rgce,opts);return[rgce,rgcb]}function parse_ArrayParsedFormula(blob,length,opts,ref){var target=blob.l+length;var rgcb,cce=blob.read_shift(2);if(cce==65535)return[[],parsenoop(blob,length-2)];var rgce=parse_Rgce(blob,cce);if(length!==cce+2)rgcb=parse_RgbExtra(blob,target-cce-2,rgce,opts);return[rgce,rgcb]}function parse_Rgce(blob,length){var target=blob.l+length;var R,id,ptgs=[];while(target!=blob.l){length=target-blob.l;id=blob[blob.l];R=PtgTypes[id];if(id===24||id===25){id=blob[blob.l+1];R=(id===24?Ptg18:Ptg19)[id]}if(!R||!R.f){ptgs.push(parsenoop(blob,length))}else{ptgs.push([R.n,R.f(blob,length)])}}return ptgs}function mapper(x){return x.map(function f2(y){return y[1]}).join(",")}function stringify_formula(formula,range,cell,supbooks,opts){if(opts!==undefined&&opts.biff===5)return"BIFF5??";var _range=range!==undefined?range:{s:{c:0,r:0}};var stack=[],e1,e2,type,c,ixti,nameidx,r;if(!formula[0]||!formula[0][0])return"";for(var ff=0,fflen=formula[0].length;ff<fflen;++ff){var f=formula[0][ff];switch(f[0]){case"PtgUminus":stack.push("-"+stack.pop());break;case"PtgUplus":stack.push("+"+stack.pop());break;case"PtgPercent":stack.push(stack.pop()+"%");break;case"PtgAdd":e1=stack.pop();e2=stack.pop();stack.push(e2+"+"+e1);break;case"PtgSub":e1=stack.pop();e2=stack.pop();stack.push(e2+"-"+e1);break;case"PtgMul":e1=stack.pop();e2=stack.pop();stack.push(e2+"*"+e1);break;case"PtgDiv":e1=stack.pop();e2=stack.pop();stack.push(e2+"/"+e1);break;case"PtgPower":e1=stack.pop();e2=stack.pop();stack.push(e2+"^"+e1);break;case"PtgConcat":e1=stack.pop();e2=stack.pop();stack.push(e2+"&"+e1);break;case"PtgLt":e1=stack.pop();e2=stack.pop();stack.push(e2+"<"+e1);break;case"PtgLe":e1=stack.pop();e2=stack.pop();stack.push(e2+"<="+e1);break;case"PtgEq":e1=stack.pop();e2=stack.pop();stack.push(e2+"="+e1);break;case"PtgGe":e1=stack.pop();e2=stack.pop();stack.push(e2+">="+e1);break;case"PtgGt":e1=stack.pop();e2=stack.pop();stack.push(e2+">"+e1);break;case"PtgNe":e1=stack.pop();e2=stack.pop();stack.push(e2+"<>"+e1);break;case"PtgIsect":e1=stack.pop();e2=stack.pop();stack.push(e2+" "+e1);break;case"PtgUnion":e1=stack.pop();e2=stack.pop();stack.push(e2+","+e1);break;case"PtgRange":break;case"PtgAttrChoose":break;case"PtgAttrGoto":break;case"PtgAttrIf":break;case"PtgRef":type=f[1][0];c=shift_cell_xls(decode_cell(encode_cell(f[1][1])),_range);stack.push(encode_cell(c));break;case"PtgRefN":type=f[1][0];c=shift_cell_xls(decode_cell(encode_cell(f[1][1])),cell);stack.push(encode_cell(c));break;case"PtgRef3d":type=f[1][0];ixti=f[1][1];c=shift_cell_xls(f[1][2],_range);stack.push(supbooks[1][ixti+1]+"!"+encode_cell(c));break;case"PtgFunc":case"PtgFuncVar":var argc=f[1][0],func=f[1][1];if(!argc)argc=0;var args=stack.slice(-argc);stack.length-=argc;if(func==="User")func=args.shift();stack.push(func+"("+args.join(",")+")");break;case"PtgBool":stack.push(f[1]?"TRUE":"FALSE");break;case"PtgInt":stack.push(f[1]);break;case"PtgNum":stack.push(String(f[1]));break;case"PtgStr":stack.push('"'+f[1]+'"');break;case"PtgErr":stack.push(f[1]);break;case"PtgArea":type=f[1][0];r=shift_range_xls(f[1][1],_range);stack.push(encode_range(r));break;case"PtgArea3d":type=f[1][0];ixti=f[1][1];r=f[1][2];stack.push(supbooks[1][ixti+1]+"!"+encode_range(r));break;case"PtgAttrSum":stack.push("SUM("+stack.pop()+")");break;case"PtgAttrSemi":break;case"PtgName":nameidx=f[1][2];var lbl=supbooks[0][nameidx];var name=lbl.Name;if(name in XLSXFutureFunctions)name=XLSXFutureFunctions[name];stack.push(name);break;case"PtgNameX":var bookidx=f[1][1];nameidx=f[1][2];var externbook;if(supbooks[bookidx+1])externbook=supbooks[bookidx+1][nameidx];else if(supbooks[bookidx-1])externbook=supbooks[bookidx-1][nameidx];if(!externbook)externbook={body:"??NAMEX??"};stack.push(externbook.body);break;case"PtgParen":stack.push("("+stack.pop()+")");break;case"PtgRefErr":stack.push("#REF!");break;case"PtgExp":c={c:f[1][1],r:f[1][0]};var q={c:cell.c,r:cell.r};if(supbooks.sharedf[encode_cell(c)]){var parsedf=supbooks.sharedf[encode_cell(c)];stack.push(stringify_formula(parsedf,_range,q,supbooks,opts))}else{var fnd=false;for(e1=0;e1!=supbooks.arrayf.length;++e1){e2=supbooks.arrayf[e1];if(c.c<e2[0].s.c||c.c>e2[0].e.c)continue;if(c.r<e2[0].s.r||c.r>e2[0].e.r)continue;stack.push(stringify_formula(e2[1],_range,q,supbooks,opts))}if(!fnd)stack.push(f[1])}break;case"PtgArray":stack.push("{"+f[1].map(mapper).join(";")+"}");break;case"PtgMemArea":break;case"PtgAttrSpace":break;case"PtgTbl":break;case"PtgMemErr":break;case"PtgMissArg":stack.push("");break;case"PtgAreaErr":break;case"PtgAreaN":stack.push("");break;case"PtgRefErr3d":break;case"PtgMemFunc":break;default:throw"Unrecognized Formula Token: "+f}}return stack[0]}function parse_XLSBCellParsedFormula(data,length){var cce=data.read_shift(4);return parsenoop(data,length-4)}var PtgDataType={1:"REFERENCE",2:"VALUE",3:"ARRAY"};var Cetab={0:"BEEP",1:"OPEN",2:"OPEN.LINKS",3:"CLOSE.ALL",4:"SAVE",5:"SAVE.AS",6:"FILE.DELETE",7:"PAGE.SETUP",8:"PRINT",9:"PRINTER.SETUP",10:"QUIT",11:"NEW.WINDOW",12:"ARRANGE.ALL",13:"WINDOW.SIZE",14:"WINDOW.MOVE",15:"FULL",16:"CLOSE",17:"RUN",22:"SET.PRINT.AREA",23:"SET.PRINT.TITLES",24:"SET.PAGE.BREAK",25:"REMOVE.PAGE.BREAK",26:"FONT",27:"DISPLAY",28:"PROTECT.DOCUMENT",29:"PRECISION",30:"A1.R1C1",31:"CALCULATE.NOW",32:"CALCULATION",34:"DATA.FIND",35:"EXTRACT",36:"DATA.DELETE",37:"SET.DATABASE",38:"SET.CRITERIA",39:"SORT",40:"DATA.SERIES",41:"TABLE",42:"FORMAT.NUMBER",43:"ALIGNMENT",44:"STYLE",45:"BORDER",46:"CELL.PROTECTION",47:"COLUMN.WIDTH",48:"UNDO",49:"CUT",50:"COPY",51:"PASTE",52:"CLEAR",53:"PASTE.SPECIAL",54:"EDIT.DELETE",55:"INSERT",56:"FILL.RIGHT",57:"FILL.DOWN",61:"DEFINE.NAME",62:"CREATE.NAMES",63:"FORMULA.GOTO",64:"FORMULA.FIND",65:"SELECT.LAST.CELL",66:"SHOW.ACTIVE.CELL",67:"GALLERY.AREA",68:"GALLERY.BAR",69:"GALLERY.COLUMN",70:"GALLERY.LINE",71:"GALLERY.PIE",72:"GALLERY.SCATTER",73:"COMBINATION",74:"PREFERRED",75:"ADD.OVERLAY",76:"GRIDLINES",77:"SET.PREFERRED",78:"AXES",79:"LEGEND",80:"ATTACH.TEXT",81:"ADD.ARROW",82:"SELECT.CHART",83:"SELECT.PLOT.AREA",84:"PATTERNS",85:"MAIN.CHART",86:"OVERLAY",87:"SCALE",88:"FORMAT.LEGEND",89:"FORMAT.TEXT",90:"EDIT.REPEAT",91:"PARSE",92:"JUSTIFY",93:"HIDE",94:"UNHIDE",95:"WORKSPACE",96:"FORMULA",97:"FORMULA.FILL",98:"FORMULA.ARRAY",99:"DATA.FIND.NEXT",100:"DATA.FIND.PREV",101:"FORMULA.FIND.NEXT",102:"FORMULA.FIND.PREV",103:"ACTIVATE",104:"ACTIVATE.NEXT",105:"ACTIVATE.PREV",106:"UNLOCKED.NEXT",107:"UNLOCKED.PREV",108:"COPY.PICTURE",109:"SELECT",110:"DELETE.NAME",111:"DELETE.FORMAT",112:"VLINE",113:"HLINE",114:"VPAGE",115:"HPAGE",116:"VSCROLL",117:"HSCROLL",118:"ALERT",119:"NEW",120:"CANCEL.COPY",121:"SHOW.CLIPBOARD",122:"MESSAGE",124:"PASTE.LINK",125:"APP.ACTIVATE",126:"DELETE.ARROW",127:"ROW.HEIGHT",128:"FORMAT.MOVE",129:"FORMAT.SIZE",130:"FORMULA.REPLACE",131:"SEND.KEYS",132:"SELECT.SPECIAL",133:"APPLY.NAMES",134:"REPLACE.FONT",135:"FREEZE.PANES",136:"SHOW.INFO",137:"SPLIT",138:"ON.WINDOW",139:"ON.DATA",140:"DISABLE.INPUT",142:"OUTLINE",143:"LIST.NAMES",144:"FILE.CLOSE",145:"SAVE.WORKBOOK",146:"DATA.FORM",147:"COPY.CHART",148:"ON.TIME",149:"WAIT",150:"FORMAT.FONT",151:"FILL.UP",152:"FILL.LEFT",153:"DELETE.OVERLAY",155:"SHORT.MENUS",159:"SET.UPDATE.STATUS",161:"COLOR.PALETTE",162:"DELETE.STYLE",163:"WINDOW.RESTORE",164:"WINDOW.MAXIMIZE",166:"CHANGE.LINK",167:"CALCULATE.DOCUMENT",168:"ON.KEY",169:"APP.RESTORE",170:"APP.MOVE",171:"APP.SIZE",172:"APP.MINIMIZE",173:"APP.MAXIMIZE",174:"BRING.TO.FRONT",175:"SEND.TO.BACK",185:"MAIN.CHART.TYPE",186:"OVERLAY.CHART.TYPE",187:"SELECT.END",188:"OPEN.MAIL",189:"SEND.MAIL",190:"STANDARD.FONT",191:"CONSOLIDATE",192:"SORT.SPECIAL",193:"GALLERY.3D.AREA",194:"GALLERY.3D.COLUMN",195:"GALLERY.3D.LINE",196:"GALLERY.3D.PIE",197:"VIEW.3D",198:"GOAL.SEEK",199:"WORKGROUP",200:"FILL.GROUP",201:"UPDATE.LINK",202:"PROMOTE",203:"DEMOTE",204:"SHOW.DETAIL",206:"UNGROUP",207:"OBJECT.PROPERTIES",208:"SAVE.NEW.OBJECT",209:"SHARE",210:"SHARE.NAME",211:"DUPLICATE",212:"APPLY.STYLE",213:"ASSIGN.TO.OBJECT",214:"OBJECT.PROTECTION",215:"HIDE.OBJECT",216:"SET.EXTRACT",217:"CREATE.PUBLISHER",218:"SUBSCRIBE.TO",219:"ATTRIBUTES",220:"SHOW.TOOLBAR",222:"PRINT.PREVIEW",223:"EDIT.COLOR",224:"SHOW.LEVELS",225:"FORMAT.MAIN",226:"FORMAT.OVERLAY",227:"ON.RECALC",228:"EDIT.SERIES",229:"DEFINE.STYLE",240:"LINE.PRINT",243:"ENTER.DATA",249:"GALLERY.RADAR",250:"MERGE.STYLES",251:"EDITION.OPTIONS",252:"PASTE.PICTURE",253:"PASTE.PICTURE.LINK",254:"SPELLING",256:"ZOOM",259:"INSERT.OBJECT",260:"WINDOW.MINIMIZE",265:"SOUND.NOTE",266:"SOUND.PLAY",267:"FORMAT.SHAPE",268:"EXTEND.POLYGON",269:"FORMAT.AUTO",272:"GALLERY.3D.BAR",273:"GALLERY.3D.SURFACE",274:"FILL.AUTO",276:"CUSTOMIZE.TOOLBAR",277:"ADD.TOOL",278:"EDIT.OBJECT",279:"ON.DOUBLECLICK",280:"ON.ENTRY",281:"WORKBOOK.ADD",282:"WORKBOOK.MOVE",283:"WORKBOOK.COPY",284:"WORKBOOK.OPTIONS",285:"SAVE.WORKSPACE",288:"CHART.WIZARD",289:"DELETE.TOOL",290:"MOVE.TOOL",291:"WORKBOOK.SELECT",292:"WORKBOOK.ACTIVATE",293:"ASSIGN.TO.TOOL",295:"COPY.TOOL",296:"RESET.TOOL",297:"CONSTRAIN.NUMERIC",298:"PASTE.TOOL",302:"WORKBOOK.NEW",305:"SCENARIO.CELLS",306:"SCENARIO.DELETE",307:"SCENARIO.ADD",308:"SCENARIO.EDIT",309:"SCENARIO.SHOW",310:"SCENARIO.SHOW.NEXT",311:"SCENARIO.SUMMARY",312:"PIVOT.TABLE.WIZARD",313:"PIVOT.FIELD.PROPERTIES",314:"PIVOT.FIELD",315:"PIVOT.ITEM",316:"PIVOT.ADD.FIELDS",318:"OPTIONS.CALCULATION",319:"OPTIONS.EDIT",320:"OPTIONS.VIEW",321:"ADDIN.MANAGER",322:"MENU.EDITOR",323:"ATTACH.TOOLBARS",324:"VBAActivate",325:"OPTIONS.CHART",328:"VBA.INSERT.FILE",330:"VBA.PROCEDURE.DEFINITION",336:"ROUTING.SLIP",338:"ROUTE.DOCUMENT",339:"MAIL.LOGON",342:"INSERT.PICTURE",343:"EDIT.TOOL",344:"GALLERY.DOUGHNUT",350:"CHART.TREND",352:"PIVOT.ITEM.PROPERTIES",354:"WORKBOOK.INSERT",355:"OPTIONS.TRANSITION",356:"OPTIONS.GENERAL",370:"FILTER.ADVANCED",373:"MAIL.ADD.MAILER",374:"MAIL.DELETE.MAILER",375:"MAIL.REPLY",376:"MAIL.REPLY.ALL",377:"MAIL.FORWARD",378:"MAIL.NEXT.LETTER",379:"DATA.LABEL",380:"INSERT.TITLE",381:"FONT.PROPERTIES",382:"MACRO.OPTIONS",383:"WORKBOOK.HIDE",384:"WORKBOOK.UNHIDE",385:"WORKBOOK.DELETE",386:"WORKBOOK.NAME",388:"GALLERY.CUSTOM",390:"ADD.CHART.AUTOFORMAT",391:"DELETE.CHART.AUTOFORMAT",392:"CHART.ADD.DATA",393:"AUTO.OUTLINE",394:"TAB.ORDER",395:"SHOW.DIALOG",396:"SELECT.ALL",397:"UNGROUP.SHEETS",398:"SUBTOTAL.CREATE",399:"SUBTOTAL.REMOVE",400:"RENAME.OBJECT",412:"WORKBOOK.SCROLL",413:"WORKBOOK.NEXT",414:"WORKBOOK.PREV",415:"WORKBOOK.TAB.SPLIT",416:"FULL.SCREEN",417:"WORKBOOK.PROTECT",420:"SCROLLBAR.PROPERTIES",421:"PIVOT.SHOW.PAGES",422:"TEXT.TO.COLUMNS",423:"FORMAT.CHARTTYPE",424:"LINK.FORMAT",425:"TRACER.DISPLAY",430:"TRACER.NAVIGATE",431:"TRACER.CLEAR",432:"TRACER.ERROR",433:"PIVOT.FIELD.GROUP",434:"PIVOT.FIELD.UNGROUP",435:"CHECKBOX.PROPERTIES",436:"LABEL.PROPERTIES",437:"LISTBOX.PROPERTIES",438:"EDITBOX.PROPERTIES",439:"PIVOT.REFRESH",440:"LINK.COMBO",441:"OPEN.TEXT",442:"HIDE.DIALOG",443:"SET.DIALOG.FOCUS",444:"ENABLE.OBJECT",445:"PUSHBUTTON.PROPERTIES",446:"SET.DIALOG.DEFAULT",447:"FILTER",448:"FILTER.SHOW.ALL",449:"CLEAR.OUTLINE",450:"FUNCTION.WIZARD",451:"ADD.LIST.ITEM",452:"SET.LIST.ITEM",453:"REMOVE.LIST.ITEM",454:"SELECT.LIST.ITEM",455:"SET.CONTROL.VALUE",456:"SAVE.COPY.AS",458:"OPTIONS.LISTS.ADD",459:"OPTIONS.LISTS.DELETE",460:"SERIES.AXES",461:"SERIES.X",462:"SERIES.Y",463:"ERRORBAR.X",464:"ERRORBAR.Y",465:"FORMAT.CHART",466:"SERIES.ORDER",467:"MAIL.LOGOFF",468:"CLEAR.ROUTING.SLIP",469:"APP.ACTIVATE.MICROSOFT",470:"MAIL.EDIT.MAILER",471:"ON.SHEET",472:"STANDARD.WIDTH",473:"SCENARIO.MERGE",474:"SUMMARY.INFO",475:"FIND.FILE",476:"ACTIVE.CELL.FONT",477:"ENABLE.TIPWIZARD",478:"VBA.MAKE.ADDIN",480:"INSERTDATATABLE",481:"WORKGROUP.OPTIONS",482:"MAIL.SEND.MAILER",485:"AUTOCORRECT",489:"POST.DOCUMENT",491:"PICKLIST",493:"VIEW.SHOW",494:"VIEW.DEFINE",495:"VIEW.DELETE",509:"SHEET.BACKGROUND",510:"INSERT.MAP.OBJECT",511:"OPTIONS.MENONO",517:"MSOCHECKS",518:"NORMAL",519:"LAYOUT",520:"RM.PRINT.AREA",521:"CLEAR.PRINT.AREA",522:"ADD.PRINT.AREA",523:"MOVE.BRK",545:"HIDECURR.NOTE",546:"HIDEALL.NOTES",547:"DELETE.NOTE",548:"TRAVERSE.NOTES",549:"ACTIVATE.NOTES",620:"PROTECT.REVISIONS",621:"UNPROTECT.REVISIONS",647:"OPTIONS.ME",653:"WEB.PUBLISH",667:"NEWWEBQUERY",673:"PIVOT.TABLE.CHART",753:"OPTIONS.SAVE",755:"OPTIONS.SPELL",808:"HIDEALL.INKANNOTS"};var Ftab={0:"COUNT",1:"IF",2:"ISNA",3:"ISERROR",4:"SUM",5:"AVERAGE",6:"MIN",7:"MAX",8:"ROW",9:"COLUMN",10:"NA",11:"NPV",12:"STDEV",13:"DOLLAR",14:"FIXED",15:"SIN",16:"COS",17:"TAN",18:"ATAN",19:"PI",20:"SQRT",21:"EXP",22:"LN",23:"LOG10",24:"ABS",25:"INT",26:"SIGN",27:"ROUND",28:"LOOKUP",29:"INDEX",30:"REPT",31:"MID",32:"LEN",33:"VALUE",34:"TRUE",35:"FALSE",36:"AND",37:"OR",38:"NOT",39:"MOD",40:"DCOUNT",41:"DSUM",42:"DAVERAGE",43:"DMIN",44:"DMAX",45:"DSTDEV",46:"VAR",47:"DVAR",48:"TEXT",49:"LINEST",50:"TREND",51:"LOGEST",52:"GROWTH",53:"GOTO",54:"HALT",55:"RETURN",56:"PV",57:"FV",58:"NPER",59:"PMT",60:"RATE",61:"MIRR",62:"IRR",63:"RAND",64:"MATCH",65:"DATE",66:"TIME",67:"DAY",68:"MONTH",69:"YEAR",70:"WEEKDAY",71:"HOUR",72:"MINUTE",73:"SECOND",74:"NOW",75:"AREAS",76:"ROWS",77:"COLUMNS",78:"OFFSET",79:"ABSREF",80:"RELREF",81:"ARGUMENT",82:"SEARCH",83:"TRANSPOSE",84:"ERROR",85:"STEP",86:"TYPE",87:"ECHO",88:"SET.NAME",89:"CALLER",90:"DEREF",91:"WINDOWS",92:"SERIES",93:"DOCUMENTS",94:"ACTIVE.CELL",95:"SELECTION",96:"RESULT",97:"ATAN2",98:"ASIN",99:"ACOS",100:"CHOOSE",101:"HLOOKUP",102:"VLOOKUP",103:"LINKS",104:"INPUT",105:"ISREF",106:"GET.FORMULA",107:"GET.NAME",108:"SET.VALUE",109:"LOG",110:"EXEC",111:"CHAR",112:"LOWER",113:"UPPER",114:"PROPER",115:"LEFT",116:"RIGHT",117:"EXACT",118:"TRIM",119:"REPLACE",120:"SUBSTITUTE",121:"CODE",122:"NAMES",123:"DIRECTORY",124:"FIND",125:"CELL",126:"ISERR",127:"ISTEXT",128:"ISNUMBER",129:"ISBLANK",130:"T",131:"N",132:"FOPEN",133:"FCLOSE",134:"FSIZE",135:"FREADLN",136:"FREAD",137:"FWRITELN",138:"FWRITE",139:"FPOS",140:"DATEVALUE",141:"TIMEVALUE",142:"SLN",143:"SYD",144:"DDB",145:"GET.DEF",146:"REFTEXT",147:"TEXTREF",148:"INDIRECT",149:"REGISTER",150:"CALL",151:"ADD.BAR",152:"ADD.MENU",153:"ADD.COMMAND",154:"ENABLE.COMMAND",155:"CHECK.COMMAND",156:"RENAME.COMMAND",157:"SHOW.BAR",158:"DELETE.MENU",159:"DELETE.COMMAND",160:"GET.CHART.ITEM",161:"DIALOG.BOX",162:"CLEAN",163:"MDETERM",164:"MINVERSE",165:"MMULT",166:"FILES",167:"IPMT",168:"PPMT",169:"COUNTA",170:"CANCEL.KEY",171:"FOR",172:"WHILE",173:"BREAK",174:"NEXT",175:"INITIATE",176:"REQUEST",177:"POKE",178:"EXECUTE",179:"TERMINATE",180:"RESTART",181:"HELP",182:"GET.BAR",183:"PRODUCT",184:"FACT",185:"GET.CELL",186:"GET.WORKSPACE",187:"GET.WINDOW",188:"GET.DOCUMENT",189:"DPRODUCT",190:"ISNONTEXT",191:"GET.NOTE",192:"NOTE",193:"STDEVP",194:"VARP",195:"DSTDEVP",196:"DVARP",197:"TRUNC",198:"ISLOGICAL",199:"DCOUNTA",200:"DELETE.BAR",201:"UNREGISTER",204:"USDOLLAR",205:"FINDB",206:"SEARCHB",207:"REPLACEB",208:"LEFTB",209:"RIGHTB",210:"MIDB",211:"LENB",212:"ROUNDUP",213:"ROUNDDOWN",214:"ASC",215:"DBCS",216:"RANK",219:"ADDRESS",220:"DAYS360",221:"TODAY",222:"VDB",223:"ELSE",224:"ELSE.IF",225:"END.IF",226:"FOR.CELL",227:"MEDIAN",228:"SUMPRODUCT",229:"SINH",230:"COSH",231:"TANH",232:"ASINH",233:"ACOSH",234:"ATANH",235:"DGET",236:"CREATE.OBJECT",237:"VOLATILE",238:"LAST.ERROR",239:"CUSTOM.UNDO",240:"CUSTOM.REPEAT",241:"FORMULA.CONVERT",242:"GET.LINK.INFO",243:"TEXT.BOX",244:"INFO",245:"GROUP",246:"GET.OBJECT",247:"DB",248:"PAUSE",251:"RESUME",252:"FREQUENCY",253:"ADD.TOOLBAR",254:"DELETE.TOOLBAR",255:"User",256:"RESET.TOOLBAR",257:"EVALUATE",258:"GET.TOOLBAR",259:"GET.TOOL",260:"SPELLING.CHECK",261:"ERROR.TYPE",262:"APP.TITLE",263:"WINDOW.TITLE",264:"SAVE.TOOLBAR",265:"ENABLE.TOOL",266:"PRESS.TOOL",267:"REGISTER.ID",268:"GET.WORKBOOK",269:"AVEDEV",270:"BETADIST",271:"GAMMALN",272:"BETAINV",273:"BINOMDIST",274:"CHIDIST",275:"CHIINV",276:"COMBIN",277:"CONFIDENCE",278:"CRITBINOM",279:"EVEN",280:"EXPONDIST",281:"FDIST",282:"FINV",283:"FISHER",284:"FISHERINV",285:"FLOOR",286:"GAMMADIST",287:"GAMMAINV",288:"CEILING",289:"HYPGEOMDIST",290:"LOGNORMDIST",291:"LOGINV",292:"NEGBINOMDIST",293:"NORMDIST",294:"NORMSDIST",295:"NORMINV",
296:"NORMSINV",297:"STANDARDIZE",298:"ODD",299:"PERMUT",300:"POISSON",301:"TDIST",302:"WEIBULL",303:"SUMXMY2",304:"SUMX2MY2",305:"SUMX2PY2",306:"CHITEST",307:"CORREL",308:"COVAR",309:"FORECAST",310:"FTEST",311:"INTERCEPT",312:"PEARSON",313:"RSQ",314:"STEYX",315:"SLOPE",316:"TTEST",317:"PROB",318:"DEVSQ",319:"GEOMEAN",320:"HARMEAN",321:"SUMSQ",322:"KURT",323:"SKEW",324:"ZTEST",325:"LARGE",326:"SMALL",327:"QUARTILE",328:"PERCENTILE",329:"PERCENTRANK",330:"MODE",331:"TRIMMEAN",332:"TINV",334:"MOVIE.COMMAND",335:"GET.MOVIE",336:"CONCATENATE",337:"POWER",338:"PIVOT.ADD.DATA",339:"GET.PIVOT.TABLE",340:"GET.PIVOT.FIELD",341:"GET.PIVOT.ITEM",342:"RADIANS",343:"DEGREES",344:"SUBTOTAL",345:"SUMIF",346:"COUNTIF",347:"COUNTBLANK",348:"SCENARIO.GET",349:"OPTIONS.LISTS.GET",350:"ISPMT",351:"DATEDIF",352:"DATESTRING",353:"NUMBERSTRING",354:"ROMAN",355:"OPEN.DIALOG",356:"SAVE.DIALOG",357:"VIEW.GET",358:"GETPIVOTDATA",359:"HYPERLINK",360:"PHONETIC",361:"AVERAGEA",362:"MAXA",363:"MINA",364:"STDEVPA",365:"VARPA",366:"STDEVA",367:"VARA",368:"BAHTTEXT",369:"THAIDAYOFWEEK",370:"THAIDIGIT",371:"THAIMONTHOFYEAR",372:"THAINUMSOUND",373:"THAINUMSTRING",374:"THAISTRINGLENGTH",375:"ISTHAIDIGIT",376:"ROUNDBAHTDOWN",377:"ROUNDBAHTUP",378:"THAIYEAR",379:"RTD"};var FtabArgc={2:1,3:1,15:1,16:1,17:1,18:1,20:1,21:1,22:1,23:1,24:1,25:1,26:1,27:2,30:2,31:3,32:1,33:1,38:1,39:2,40:3,41:3,42:3,43:3,44:3,45:3,47:3,48:2,53:1,61:3,65:3,66:3,67:1,68:1,69:1,71:1,72:1,73:1,75:1,76:1,77:1,79:2,80:2,83:1,86:1,90:1,97:2,98:1,99:1,105:1,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,162:1,163:1,164:1,165:2,172:1,175:2,176:2,177:3,178:2,179:1,184:1,189:3,190:1,195:3,196:3,198:1,199:3,201:1,207:4,210:3,211:1,212:2,213:2,214:1,215:1,229:1,230:1,231:1,232:1,233:1,234:1,235:3,244:1,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,65535:0};var XLSXFutureFunctions={"_xlfn.ACOT":"ACOT","_xlfn.ACOTH":"ACOTH","_xlfn.AGGREGATE":"AGGREGATE","_xlfn.ARABIC":"ARABIC","_xlfn.AVERAGEIF":"AVERAGEIF","_xlfn.AVERAGEIFS":"AVERAGEIFS","_xlfn.BASE":"BASE","_xlfn.BETA.DIST":"BETA.DIST","_xlfn.BETA.INV":"BETA.INV","_xlfn.BINOM.DIST":"BINOM.DIST","_xlfn.BINOM.DIST.RANGE":"BINOM.DIST.RANGE","_xlfn.BINOM.INV":"BINOM.INV","_xlfn.BITAND":"BITAND","_xlfn.BITLSHIFT":"BITLSHIFT","_xlfn.BITOR":"BITOR","_xlfn.BITRSHIFT":"BITRSHIFT","_xlfn.BITXOR":"BITXOR","_xlfn.CEILING.MATH":"CEILING.MATH","_xlfn.CEILING.PRECISE":"CEILING.PRECISE","_xlfn.CHISQ.DIST":"CHISQ.DIST","_xlfn.CHISQ.DIST.RT":"CHISQ.DIST.RT","_xlfn.CHISQ.INV":"CHISQ.INV","_xlfn.CHISQ.INV.RT":"CHISQ.INV.RT","_xlfn.CHISQ.TEST":"CHISQ.TEST","_xlfn.COMBINA":"COMBINA","_xlfn.CONFIDENCE.NORM":"CONFIDENCE.NORM","_xlfn.CONFIDENCE.T":"CONFIDENCE.T","_xlfn.COT":"COT","_xlfn.COTH":"COTH","_xlfn.COUNTIFS":"COUNTIFS","_xlfn.COVARIANCE.P":"COVARIANCE.P","_xlfn.COVARIANCE.S":"COVARIANCE.S","_xlfn.CSC":"CSC","_xlfn.CSCH":"CSCH","_xlfn.DAYS":"DAYS","_xlfn.DECIMAL":"DECIMAL","_xlfn.ECMA.CEILING":"ECMA.CEILING","_xlfn.ERF.PRECISE":"ERF.PRECISE","_xlfn.ERFC.PRECISE":"ERFC.PRECISE","_xlfn.EXPON.DIST":"EXPON.DIST","_xlfn.F.DIST":"F.DIST","_xlfn.F.DIST.RT":"F.DIST.RT","_xlfn.F.INV":"F.INV","_xlfn.F.INV.RT":"F.INV.RT","_xlfn.F.TEST":"F.TEST","_xlfn.FILTERXML":"FILTERXML","_xlfn.FLOOR.MATH":"FLOOR.MATH","_xlfn.FLOOR.PRECISE":"FLOOR.PRECISE","_xlfn.FORMULATEXT":"FORMULATEXT","_xlfn.GAMMA":"GAMMA","_xlfn.GAMMA.DIST":"GAMMA.DIST","_xlfn.GAMMA.INV":"GAMMA.INV","_xlfn.GAMMALN.PRECISE":"GAMMALN.PRECISE","_xlfn.GAUSS":"GAUSS","_xlfn.HYPGEOM.DIST":"HYPGEOM.DIST","_xlfn.IFNA":"IFNA","_xlfn.IFERROR":"IFERROR","_xlfn.IMCOSH":"IMCOSH","_xlfn.IMCOT":"IMCOT","_xlfn.IMCSC":"IMCSC","_xlfn.IMCSCH":"IMCSCH","_xlfn.IMSEC":"IMSEC","_xlfn.IMSECH":"IMSECH","_xlfn.IMSINH":"IMSINH","_xlfn.IMTAN":"IMTAN","_xlfn.ISFORMULA":"ISFORMULA","_xlfn.ISO.CEILING":"ISO.CEILING","_xlfn.ISOWEEKNUM":"ISOWEEKNUM","_xlfn.LOGNORM.DIST":"LOGNORM.DIST","_xlfn.LOGNORM.INV":"LOGNORM.INV","_xlfn.MODE.MULT":"MODE.MULT","_xlfn.MODE.SNGL":"MODE.SNGL","_xlfn.MUNIT":"MUNIT","_xlfn.NEGBINOM.DIST":"NEGBINOM.DIST","_xlfn.NETWORKDAYS.INTL":"NETWORKDAYS.INTL","_xlfn.NIGBINOM":"NIGBINOM","_xlfn.NORM.DIST":"NORM.DIST","_xlfn.NORM.INV":"NORM.INV","_xlfn.NORM.S.DIST":"NORM.S.DIST","_xlfn.NORM.S.INV":"NORM.S.INV","_xlfn.NUMBERVALUE":"NUMBERVALUE","_xlfn.PDURATION":"PDURATION","_xlfn.PERCENTILE.EXC":"PERCENTILE.EXC","_xlfn.PERCENTILE.INC":"PERCENTILE.INC","_xlfn.PERCENTRANK.EXC":"PERCENTRANK.EXC","_xlfn.PERCENTRANK.INC":"PERCENTRANK.INC","_xlfn.PERMUTATIONA":"PERMUTATIONA","_xlfn.PHI":"PHI","_xlfn.POISSON.DIST":"POISSON.DIST","_xlfn.QUARTILE.EXC":"QUARTILE.EXC","_xlfn.QUARTILE.INC":"QUARTILE.INC","_xlfn.QUERYSTRING":"QUERYSTRING","_xlfn.RANK.AVG":"RANK.AVG","_xlfn.RANK.EQ":"RANK.EQ","_xlfn.RRI":"RRI","_xlfn.SEC":"SEC","_xlfn.SECH":"SECH","_xlfn.SHEET":"SHEET","_xlfn.SHEETS":"SHEETS","_xlfn.SKEW.P":"SKEW.P","_xlfn.STDEV.P":"STDEV.P","_xlfn.STDEV.S":"STDEV.S","_xlfn.SUMIFS":"SUMIFS","_xlfn.T.DIST":"T.DIST","_xlfn.T.DIST.2T":"T.DIST.2T","_xlfn.T.DIST.RT":"T.DIST.RT","_xlfn.T.INV":"T.INV","_xlfn.T.INV.2T":"T.INV.2T","_xlfn.T.TEST":"T.TEST","_xlfn.UNICHAR":"UNICHAR","_xlfn.UNICODE":"UNICODE","_xlfn.VAR.P":"VAR.P","_xlfn.VAR.S":"VAR.S","_xlfn.WEBSERVICE":"WEBSERVICE","_xlfn.WEIBULL.DIST":"WEIBULL.DIST","_xlfn.WORKDAY.INTL":"WORKDAY.INTL","_xlfn.XOR":"XOR","_xlfn.Z.TEST":"Z.TEST"};var strs={};var _ssfopts={};RELS.WS="http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet";function get_sst_id(sst,str){for(var i=0,len=sst.length;i<len;++i)if(sst[i].t===str){sst.Count++;return i}sst[len]={t:str};sst.Count++;sst.Unique++;return len}function get_cell_style(styles,cell,opts){if(typeof style_builder!="undefined"){if(/^\d+$/.exec(cell.s)){return cell.s}if(cell.s&&cell.s==+cell.s){return cell.s}var s=cell.s||{};if(cell.z)s.numFmt=cell.z;return style_builder.addStyle(s)}else{var z=opts.revssf[cell.z!=null?cell.z:"General"];for(var i=0,len=styles.length;i!=len;++i)if(styles[i].numFmtId===z)return i;styles[len]={numFmtId:z,fontId:0,fillId:0,borderId:0,xfId:0,applyNumberFormat:1};return len}}function get_cell_style_csf(cellXf){if(cellXf){var s={};if(typeof cellXf.numFmtId!=undefined){s.numFmt=SSF._table[cellXf.numFmtId]}if(cellXf.fillId){s.fill=styles.Fills[cellXf.fillId]}if(cellXf.fontId){s.font=styles.Fonts[cellXf.fontId]}if(cellXf.borderId){s.border=styles.Borders[cellXf.borderId]}if(cellXf.applyAlignment==1){s.alignment=cellXf.alignment}return JSON.parse(JSON.stringify(s))}return null}function safe_format(p,fmtid,fillid,opts){try{if(p.t==="e")p.w=p.w||BErr[p.v];else if(fmtid===0){if(p.t==="n"){if((p.v|0)===p.v)p.w=SSF._general_int(p.v,_ssfopts);else p.w=SSF._general_num(p.v,_ssfopts)}else if(p.t==="d"){var dd=datenum(p.v);if((dd|0)===dd)p.w=SSF._general_int(dd,_ssfopts);else p.w=SSF._general_num(dd,_ssfopts)}else if(p.v===undefined)return"";else p.w=SSF._general(p.v,_ssfopts)}else if(p.t==="d")p.w=SSF.format(fmtid,datenum(p.v),_ssfopts);else p.w=SSF.format(fmtid,p.v,_ssfopts);if(opts.cellNF)p.z=SSF._table[fmtid]}catch(e){if(opts.WTF)throw e}}function parse_ws_xml_dim(ws,s){var d=safe_decode_range(s);if(d.s.r<=d.e.r&&d.s.c<=d.e.c&&d.s.r>=0&&d.s.c>=0)ws["!ref"]=encode_range(d)}var mergecregex=/<mergeCell ref="[A-Z0-9:]+"\s*\/>/g;var sheetdataregex=/<(?:\w+:)?sheetData>([^\u2603]*)<\/(?:\w+:)?sheetData>/;var hlinkregex=/<hyperlink[^>]*\/>/g;var dimregex=/"(\w*:\w*)"/;var colregex=/<col[^>]*\/>/g;function parse_ws_xml(data,opts,rels){if(!data)return data;var s={};var ridx=data.indexOf("<dimension");if(ridx>0){var ref=data.substr(ridx,50).match(dimregex);if(ref!=null)parse_ws_xml_dim(s,ref[1])}var mergecells=[];if(data.indexOf("</mergeCells>")!==-1){var merges=data.match(mergecregex);for(ridx=0;ridx!=merges.length;++ridx)mergecells[ridx]=safe_decode_range(merges[ridx].substr(merges[ridx].indexOf('"')+1))}var columns=[];if(opts.cellStyles&&data.indexOf("</cols>")!==-1){var cols=data.match(colregex);parse_ws_xml_cols(columns,cols)}var refguess={s:{r:1e6,c:1e6},e:{r:0,c:0}};var mtch=data.match(sheetdataregex);if(mtch)parse_ws_xml_data(mtch[1],s,opts,refguess);if(data.indexOf("</hyperlinks>")!==-1)parse_ws_xml_hlinks(s,data.match(hlinkregex),rels);if(!s["!ref"]&&refguess.e.c>=refguess.s.c&&refguess.e.r>=refguess.s.r)s["!ref"]=encode_range(refguess);if(opts.sheetRows>0&&s["!ref"]){var tmpref=safe_decode_range(s["!ref"]);if(opts.sheetRows<+tmpref.e.r){tmpref.e.r=opts.sheetRows-1;if(tmpref.e.r>refguess.e.r)tmpref.e.r=refguess.e.r;if(tmpref.e.r<tmpref.s.r)tmpref.s.r=tmpref.e.r;if(tmpref.e.c>refguess.e.c)tmpref.e.c=refguess.e.c;if(tmpref.e.c<tmpref.s.c)tmpref.s.c=tmpref.e.c;s["!fullref"]=s["!ref"];s["!ref"]=encode_range(tmpref)}}if(mergecells.length>0)s["!merges"]=mergecells;if(columns.length>0)s["!cols"]=columns;return s}function write_ws_xml_merges(merges){if(merges.length==0)return"";var o='<mergeCells count="'+merges.length+'">';for(var i=0;i!=merges.length;++i)o+='<mergeCell ref="'+encode_range(merges[i])+'"/>';return o+"</mergeCells>"}function write_ws_xml_pagesetup(setup){var pageSetup=writextag("pageSetup",null,{scale:setup.scale||"100",orientation:setup.orientation||"portrait",horizontalDpi:setup.horizontalDpi||"4294967292",verticalDpi:setup.verticalDpi||"4294967292"});return pageSetup}function parse_ws_xml_hlinks(s,data,rels){for(var i=0;i!=data.length;++i){var val=parsexmltag(data[i],true);if(!val.ref)return;var rel=rels?rels["!id"][val.id]:null;if(rel){val.Target=rel.Target;if(val.location)val.Target+="#"+val.location;val.Rel=rel}else{val.Target=val.location;rel={Target:val.location,TargetMode:"Internal"};val.Rel=rel}var rng=safe_decode_range(val.ref);for(var R=rng.s.r;R<=rng.e.r;++R)for(var C=rng.s.c;C<=rng.e.c;++C){var addr=encode_cell({c:C,r:R});if(!s[addr])s[addr]={t:"stub",v:undefined};s[addr].l=val}}}function parse_ws_xml_cols(columns,cols){var seencol=false;for(var coli=0;coli!=cols.length;++coli){var coll=parsexmltag(cols[coli],true);var colm=parseInt(coll.min,10)-1,colM=parseInt(coll.max,10)-1;delete coll.min;delete coll.max;if(!seencol&&coll.width){seencol=true;find_mdw(+coll.width,coll)}if(coll.width){coll.wpx=width2px(+coll.width);coll.wch=px2char(coll.wpx);coll.MDW=MDW}while(colm<=colM)columns[colm++]=coll}}function write_ws_xml_cols(ws,cols){var o=["<cols>"],col,width;for(var i=0;i!=cols.length;++i){if(!(col=cols[i]))continue;var p={min:i+1,max:i+1};width=-1;if(col.wpx)width=px2char(col.wpx);else if(col.wch)width=col.wch;if(width>-1){p.width=char2width(width);p.customWidth=1}o[o.length]=writextag("col",null,p)}o[o.length]="</cols>";return o.join("")}function write_ws_xml_cell(cell,ref,ws,opts,idx,wb){if(cell.v===undefined&&cell.s===undefined)return"";var vv="";var oldt=cell.t,oldv=cell.v;switch(cell.t){case"b":vv=cell.v?"1":"0";break;case"n":vv=""+cell.v;break;case"e":vv=BErr[cell.v];break;case"d":if(opts.cellDates)vv=new Date(cell.v).toISOString();else{cell.t="n";vv=""+(cell.v=datenum(cell.v));if(typeof cell.z==="undefined")cell.z=SSF._table[14]}break;default:vv=cell.v;break}var v=writetag("v",escapexml(vv)),o={r:ref};var os=get_cell_style(opts.cellXfs,cell,opts);if(os!==0)o.s=os;switch(cell.t){case"n":break;case"d":o.t="d";break;case"b":o.t="b";break;case"e":o.t="e";break;default:if(opts.bookSST){v=writetag("v",""+get_sst_id(opts.Strings,cell.v));o.t="s";break}o.t="str";break}if(cell.t!=oldt){cell.t=oldt;cell.v=oldv}return writextag("c",v,o)}var parse_ws_xml_data=function parse_ws_xml_data_factory(){var cellregex=/<(?:\w+:)?c[ >]/,rowregex=/<\/(?:\w+:)?row>/;var rregex=/r=["']([^"']*)["']/,isregex=/<is>([\S\s]*?)<\/is>/;var match_v=matchtag("v"),match_f=matchtag("f");return function parse_ws_xml_data(sdata,s,opts,guess){var ri=0,x="",cells=[],cref=[],idx=0,i=0,cc=0,d="",p;var tag,tagr=0,tagc=0;var sstr;var fmtid=0,fillid=0,do_format=Array.isArray(styles.CellXf),cf;for(var marr=sdata.split(rowregex),mt=0,marrlen=marr.length;mt!=marrlen;++mt){x=marr[mt].trim();var xlen=x.length;if(xlen===0)continue;for(ri=0;ri<xlen;++ri)if(x.charCodeAt(ri)===62)break;++ri;tag=parsexmltag(x.substr(0,ri),true);tagr=typeof tag.r!=="undefined"?parseInt(tag.r,10):tagr+1;tagc=-1;if(opts.sheetRows&&opts.sheetRows<tagr)continue;if(guess.s.r>tagr-1)guess.s.r=tagr-1;if(guess.e.r<tagr-1)guess.e.r=tagr-1;cells=x.substr(ri).split(cellregex);for(ri=typeof tag.r==="undefined"?0:1;ri!=cells.length;++ri){x=cells[ri].trim();if(x.length===0)continue;cref=x.match(rregex);idx=ri;i=0;cc=0;x="<c "+(x.substr(0,1)=="<"?">":"")+x;if(cref!==null&&cref.length===2){idx=0;d=cref[1];for(i=0;i!=d.length;++i){if((cc=d.charCodeAt(i)-64)<1||cc>26)break;idx=26*idx+cc}--idx;tagc=idx}else++tagc;for(i=0;i!=x.length;++i)if(x.charCodeAt(i)===62)break;++i;tag=parsexmltag(x.substr(0,i),true);if(!tag.r)tag.r=utils.encode_cell({r:tagr-1,c:tagc});d=x.substr(i);p={t:""};if((cref=d.match(match_v))!==null&&cref[1]!=="")p.v=unescapexml(cref[1]);if(opts.cellFormula&&(cref=d.match(match_f))!==null)p.f=unescapexml(cref[1]);if(tag.t===undefined&&tag.s===undefined&&p.v===undefined){if(!opts.sheetStubs)continue;p.t="stub"}else p.t=tag.t||"n";if(guess.s.c>idx)guess.s.c=idx;if(guess.e.c<idx)guess.e.c=idx;switch(p.t){case"n":p.v=parseFloat(p.v);if(isNaN(p.v))p.v="";break;case"s":sstr=strs[parseInt(p.v,10)];p.v=sstr.t;p.r=sstr.r;if(opts.cellHTML)p.h=sstr.h;break;case"str":p.t="s";p.v=p.v!=null?utf8read(p.v):"";if(opts.cellHTML)p.h=p.v;break;case"inlineStr":cref=d.match(isregex);p.t="s";if(cref!==null){sstr=parse_si(cref[1]);p.v=sstr.t}else p.v="";break;case"b":p.v=parsexmlbool(p.v);break;case"d":if(!opts.cellDates){p.v=datenum(p.v);p.t="n"}break;case"e":p.w=p.v;p.v=RBErr[p.v];break}fmtid=fillid=0;if(do_format&&tag.s!==undefined){cf=styles.CellXf[tag.s];if(opts.cellStyles){p.s=get_cell_style_csf(cf)}if(cf!=null){if(cf.numFmtId!=null)fmtid=cf.numFmtId;if(opts.cellStyles&&cf.fillId!=null)fillid=cf.fillId}}safe_format(p,fmtid,fillid,opts);s[tag.r]=p}}}}();function write_ws_xml_data(ws,opts,idx,wb){var o=[],r=[],range=safe_decode_range(ws["!ref"]),cell,ref,rr="",cols=[],R,C;for(C=range.s.c;C<=range.e.c;++C)cols[C]=encode_col(C);for(R=range.s.r;R<=range.e.r;++R){r=[];rr=encode_row(R);for(C=range.s.c;C<=range.e.c;++C){ref=cols[C]+rr;if(ws[ref]===undefined)continue;if((cell=write_ws_xml_cell(ws[ref],ref,ws,opts,idx,wb))!=null)r.push(cell)}if(r.length>0)o[o.length]=writextag("row",r.join(""),{r:rr})}return o.join("")}var WS_XML_ROOT=writextag("worksheet",null,{xmlns:XMLNS.main[0],"xmlns:r":XMLNS.r});function write_ws_xml(idx,opts,wb){var o=[XML_HEADER,WS_XML_ROOT];var s=wb.SheetNames[idx],sidx=0,rdata="";var ws=wb.Sheets[s];if(ws===undefined)ws={};var ref=ws["!ref"];if(ref===undefined)ref="A1";o[o.length]=writextag("dimension",null,{ref:ref});var kids=[];if(ws["!freeze"]){var pane="";pane=writextag("pane",null,ws["!freeze"]);kids.push(pane);var selection=writextag("selection",null,{pane:"topLeft"});kids.push(selection);var selection=writextag("selection",null,{pane:"bottomLeft"});kids.push(selection);var selection=writextag("selection",null,{pane:"bottomRight",activeCell:ws["!freeze"],sqref:ws["!freeze"]});kids.push(selection)}var sheetView=writextag("sheetView",kids.join("")||undefined,{showGridLines:opts.showGridLines==false?"0":"1",tabSelected:opts.tabSelected===undefined?"0":opts.tabSelected,workbookViewId:opts.workbookViewId===undefined?"0":opts.workbookViewId});o[o.length]=writextag("sheetViews",sheetView);if(ws["!cols"]!==undefined&&ws["!cols"].length>0)o[o.length]=write_ws_xml_cols(ws,ws["!cols"]);o[sidx=o.length]="<sheetData/>";if(ws["!ref"]!==undefined){rdata=write_ws_xml_data(ws,opts,idx,wb);if(rdata.length>0)o[o.length]=rdata}if(o.length>sidx+1){o[o.length]="</sheetData>";o[sidx]=o[sidx].replace("/>",">")}if(ws["!merges"]!==undefined&&ws["!merges"].length>0)o[o.length]=write_ws_xml_merges(ws["!merges"]);if(ws["!pageSetup"]!==undefined)o[o.length]=write_ws_xml_pagesetup(ws["!pageSetup"]);if(ws["!rowBreaks"]!==undefined)o[o.length]=write_ws_xml_row_breaks(ws["!rowBreaks"]);if(ws["!colBreaks"]!==undefined)o[o.length]=write_ws_xml_col_breaks(ws["!colBreaks"]);if(o.length>2){o[o.length]="</worksheet>";o[1]=o[1].replace("/>",">")}return o.join("")}function write_ws_xml_row_breaks(breaks){var brk=[];for(var i=0;i<breaks.length;i++){var thisBreak=""+breaks[i];var nextBreak=""+(breaks[i+1]||"16383");brk.push(writextag("brk",null,{id:thisBreak,max:nextBreak,man:"1"}))}return writextag("rowBreaks",brk.join(" "),{count:brk.length,manualBreakCount:brk.length})}function write_ws_xml_col_breaks(breaks){var brk=[];for(var i=0;i<breaks.length;i++){var thisBreak=""+breaks[i];var nextBreak=""+(breaks[i+1]||"1048575");brk.push(writextag("brk",null,{id:thisBreak,max:nextBreak,man:"1"}))}return writextag("colBreaks",brk.join(" "),{count:brk.length,manualBreakCount:brk.length})}function parse_BrtRowHdr(data,length){var z=[];z.r=data.read_shift(4);data.l+=length-4;return z}var parse_BrtWsDim=parse_UncheckedRfX;var write_BrtWsDim=write_UncheckedRfX;function parse_BrtWsProp(data,length){var z={};data.l+=19;z.name=parse_XLSBCodeName(data,length-19);return z}function parse_BrtCellBlank(data,length){var cell=parse_XLSBCell(data);return[cell]}function write_BrtCellBlank(cell,val,o){if(o==null)o=new_buf(8);return write_XLSBCell(val,o)}function parse_BrtCellBool(data,length){var cell=parse_XLSBCell(data);var fBool=data.read_shift(1);return[cell,fBool,"b"]}function parse_BrtCellError(data,length){var cell=parse_XLSBCell(data);var fBool=data.read_shift(1);return[cell,fBool,"e"]}function parse_BrtCellIsst(data,length){var cell=parse_XLSBCell(data);var isst=data.read_shift(4);return[cell,isst,"s"]}function parse_BrtCellReal(data,length){var cell=parse_XLSBCell(data);var value=parse_Xnum(data);return[cell,value,"n"]}function parse_BrtCellRk(data,length){var cell=parse_XLSBCell(data);var value=parse_RkNumber(data);return[cell,value,"n"]}function parse_BrtCellSt(data,length){var cell=parse_XLSBCell(data);var value=parse_XLWideString(data);return[cell,value,"str"]}function parse_BrtFmlaBool(data,length,opts){var cell=parse_XLSBCell(data);var value=data.read_shift(1);var o=[cell,value,"b"];if(opts.cellFormula){var formula=parse_XLSBCellParsedFormula(data,length-9);o[3]=""}else data.l+=length-9;return o}function parse_BrtFmlaError(data,length,opts){var cell=parse_XLSBCell(data);var value=data.read_shift(1);var o=[cell,value,"e"];if(opts.cellFormula){var formula=parse_XLSBCellParsedFormula(data,length-9);o[3]=""}else data.l+=length-9;return o}function parse_BrtFmlaNum(data,length,opts){var cell=parse_XLSBCell(data);var value=parse_Xnum(data);var o=[cell,value,"n"];if(opts.cellFormula){var formula=parse_XLSBCellParsedFormula(data,length-16);o[3]=""}else data.l+=length-16;return o}function parse_BrtFmlaString(data,length,opts){var start=data.l;var cell=parse_XLSBCell(data);var value=parse_XLWideString(data);var o=[cell,value,"str"];if(opts.cellFormula){var formula=parse_XLSBCellParsedFormula(data,start+length-data.l)}else data.l=start+length;return o}var parse_BrtMergeCell=parse_UncheckedRfX;function parse_BrtHLink(data,length,opts){var end=data.l+length;var rfx=parse_UncheckedRfX(data,16);var relId=parse_XLNullableWideString(data);var loc=parse_XLWideString(data);var tooltip=parse_XLWideString(data);var display=parse_XLWideString(data);data.l=end;return{rfx:rfx,relId:relId,loc:loc,tooltip:tooltip,display:display}}function parse_ws_bin(data,opts,rels){if(!data)return data;if(!rels)rels={"!id":{}};var s={};var ref;var refguess={s:{r:1e6,c:1e6},e:{r:0,c:0}};var pass=false,end=false;var row,p,cf,R,C,addr,sstr,rr;var mergecells=[];recordhopper(data,function ws_parse(val,R){if(end)return;switch(R.n){case"BrtWsDim":ref=val;break;case"BrtRowHdr":row=val;if(opts.sheetRows&&opts.sheetRows<=row.r)end=true;rr=encode_row(row.r);break;case"BrtFmlaBool":case"BrtFmlaError":case"BrtFmlaNum":case"BrtFmlaString":case"BrtCellBool":case"BrtCellError":case"BrtCellIsst":case"BrtCellReal":case"BrtCellRk":case"BrtCellSt":p={t:val[2]};switch(val[2]){case"n":p.v=val[1];break;case"s":sstr=strs[val[1]];p.v=sstr.t;p.r=sstr.r;break;case"b":p.v=val[1]?true:false;break;case"e":p.v=val[1];p.w=BErr[p.v];break;case"str":p.t="s";p.v=utf8read(val[1]);break}if(opts.cellFormula&&val.length>3)p.f=val[3];if(cf=styles.CellXf[val[0].iStyleRef])safe_format(p,cf.ifmt,null,opts);s[encode_col(C=val[0].c)+rr]=p;if(refguess.s.r>row.r)refguess.s.r=row.r;if(refguess.s.c>C)refguess.s.c=C;if(refguess.e.r<row.r)refguess.e.r=row.r;if(refguess.e.c<C)refguess.e.c=C;break;case"BrtCellBlank":if(!opts.sheetStubs)break;p={t:"s",v:undefined};s[encode_col(C=val[0].c)+rr]=p;if(refguess.s.r>row.r)refguess.s.r=row.r;if(refguess.s.c>C)refguess.s.c=C;if(refguess.e.r<row.r)refguess.e.r=row.r;if(refguess.e.c<C)refguess.e.c=C;break;case"BrtBeginMergeCells":break;case"BrtEndMergeCells":break;case"BrtMergeCell":mergecells.push(val);break;case"BrtHLink":var rel=rels["!id"][val.relId];if(rel){val.Target=rel.Target;if(val.loc)val.Target+="#"+val.loc;val.Rel=rel}for(R=val.rfx.s.r;R<=val.rfx.e.r;++R)for(C=val.rfx.s.c;C<=val.rfx.e.c;++C){addr=encode_cell({c:C,r:R});if(!s[addr])s[addr]={t:"s",v:undefined};s[addr].l=val}break;case"BrtArrFmla":break;case"BrtShrFmla":break;case"BrtBeginSheet":break;case"BrtWsProp":break;case"BrtSheetCalcProp":break;case"BrtBeginWsViews":break;case"BrtBeginWsView":break;case"BrtPane":break;case"BrtSel":break;case"BrtEndWsView":break;case"BrtEndWsViews":break;case"BrtACBegin":break;case"BrtRwDescent":break;case"BrtACEnd":break;case"BrtWsFmtInfoEx14":break;case"BrtWsFmtInfo":break;case"BrtBeginColInfos":break;case"BrtColInfo":break;case"BrtEndColInfos":break;case"BrtBeginSheetData":break;case"BrtEndSheetData":break;case"BrtSheetProtection":break;case"BrtPrintOptions":break;case"BrtMargins":break;case"BrtPageSetup":break;case"BrtFRTBegin":pass=true;break;case"BrtFRTEnd":pass=false;break;case"BrtEndSheet":break;case"BrtDrawing":break;case"BrtLegacyDrawing":break;case"BrtLegacyDrawingHF":break;case"BrtPhoneticInfo":break;case"BrtBeginHeaderFooter":break;case"BrtEndHeaderFooter":break;case"BrtBrk":break;case"BrtBeginRwBrk":break;case"BrtEndRwBrk":break;case"BrtBeginColBrk":break;case"BrtEndColBrk":break;case"BrtBeginUserShViews":break;case"BrtBeginUserShView":break;case"BrtEndUserShView":break;case"BrtEndUserShViews":break;case"BrtBkHim":break;case"BrtBeginOleObjects":break;case"BrtOleObject":break;case"BrtEndOleObjects":break;case"BrtBeginListParts":break;case"BrtListPart":break;case"BrtEndListParts":break;case"BrtBeginSortState":break;case"BrtBeginSortCond":break;case"BrtEndSortCond":break;case"BrtEndSortState":break;case"BrtBeginConditionalFormatting":break;case"BrtEndConditionalFormatting":break;case"BrtBeginCFRule":break;case"BrtEndCFRule":break;case"BrtBeginDVals":break;case"BrtDVal":break;case"BrtEndDVals":break;case"BrtRangeProtection":break;case"BrtBeginDCon":break;case"BrtEndDCon":break;case"BrtBeginDRefs":break;case"BrtDRef":break;case"BrtEndDRefs":break;case"BrtBeginActiveXControls":break;case"BrtActiveX":break;case"BrtEndActiveXControls":break;case"BrtBeginAFilter":break;case"BrtEndAFilter":break;case"BrtBeginFilterColumn":break;case"BrtBeginFilters":break;case"BrtFilter":break;case"BrtEndFilters":break;case"BrtEndFilterColumn":break;case"BrtDynamicFilter":break;case"BrtTop10Filter":break;case"BrtBeginCustomFilters":break;case"BrtCustomFilter":break;case"BrtEndCustomFilters":break;case"BrtBeginSmartTags":break;case"BrtBeginCellSmartTags":break;case"BrtBeginCellSmartTag":break;case"BrtCellSmartTagProperty":break;case"BrtEndCellSmartTag":break;case"BrtEndCellSmartTags":break;case"BrtEndSmartTags":break;case"BrtBeginCellWatches":break;case"BrtCellWatch":break;case"BrtEndCellWatches":break;case"BrtTable":break;case"BrtBeginCellIgnoreECs":break;case"BrtCellIgnoreEC":break;case"BrtEndCellIgnoreECs":break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+R.n)}},opts);if(!s["!ref"]&&(refguess.s.r<1e6||ref.e.r>0||ref.e.c>0||ref.s.r>0||ref.s.c>0))s["!ref"]=encode_range(ref);if(opts.sheetRows&&s["!ref"]){var tmpref=safe_decode_range(s["!ref"]);if(opts.sheetRows<+tmpref.e.r){tmpref.e.r=opts.sheetRows-1;if(tmpref.e.r>refguess.e.r)tmpref.e.r=refguess.e.r;if(tmpref.e.r<tmpref.s.r)tmpref.s.r=tmpref.e.r;if(tmpref.e.c>refguess.e.c)tmpref.e.c=refguess.e.c;if(tmpref.e.c<tmpref.s.c)tmpref.s.c=tmpref.e.c;s["!fullref"]=s["!ref"];s["!ref"]=encode_range(tmpref)}}if(mergecells.length>0)s["!merges"]=mergecells;return s}function write_ws_bin_cell(ba,cell,R,C,opts){if(cell.v===undefined)return"";var vv="";switch(cell.t){case"b":vv=cell.v?"1":"0";break;case"n":case"e":vv=""+cell.v;break;default:vv=cell.v;break}var o={r:R,c:C};o.s=get_cell_style(opts.cellXfs,cell,opts);switch(cell.t){case"s":case"str":if(opts.bookSST){vv=get_sst_id(opts.Strings,cell.v);o.t="s";break}o.t="str";break;case"n":break;case"b":o.t="b";break;case"e":o.t="e";break}write_record(ba,"BrtCellBlank",write_BrtCellBlank(cell,o))}function write_CELLTABLE(ba,ws,idx,opts,wb){var range=safe_decode_range(ws["!ref"]||"A1"),ref,rr="",cols=[];write_record(ba,"BrtBeginSheetData");for(var R=range.s.r;R<=range.e.r;++R){rr=encode_row(R);for(var C=range.s.c;C<=range.e.c;++C){if(R===range.s.r)cols[C]=encode_col(C);ref=cols[C]+rr;if(!ws[ref])continue;write_ws_bin_cell(ba,ws[ref],R,C,opts)}}write_record(ba,"BrtEndSheetData")}function write_ws_bin(idx,opts,wb){var ba=buf_array();var s=wb.SheetNames[idx],ws=wb.Sheets[s]||{};var r=safe_decode_range(ws["!ref"]||"A1");write_record(ba,"BrtBeginSheet");write_record(ba,"BrtWsDim",write_BrtWsDim(r));write_CELLTABLE(ba,ws,idx,opts,wb);write_record(ba,"BrtEndSheet");return ba.end()}var WBPropsDef=[["allowRefreshQuery","0"],["autoCompressPictures","1"],["backupFile","0"],["checkCompatibility","0"],["codeName",""],["date1904","0"],["dateCompatibility","1"],["filterPrivacy","0"],["hidePivotFieldList","0"],["promptedSolutions","0"],["publishItems","0"],["refreshAllConnections",false],["saveExternalLinkValues","1"],["showBorderUnselectedTables","1"],["showInkAnnotation","1"],["showObjects","all"],["showPivotChartFilter","0"]];var WBViewDef=[["activeTab","0"],["autoFilterDateGrouping","1"],["firstSheet","0"],["minimized","0"],["showHorizontalScroll","1"],["showSheetTabs","1"],["showVerticalScroll","1"],["tabRatio","600"],["visibility","visible"]];var SheetDef=[["state","visible"]];var CalcPrDef=[["calcCompleted","true"],["calcMode","auto"],["calcOnSave","true"],["concurrentCalc","true"],["fullCalcOnLoad","false"],["fullPrecision","true"],["iterate","false"],["iterateCount","100"],["iterateDelta","0.001"],["refMode","A1"]];var CustomWBViewDef=[["autoUpdate","false"],["changesSavedWin","false"],["includeHiddenRowCol","true"],["includePrintSettings","true"],["maximized","false"],["minimized","false"],["onlySync","false"],["personalView","false"],["showComments","commIndicator"],["showFormulaBar","true"],["showHorizontalScroll","true"],["showObjects","all"],["showSheetTabs","true"],["showStatusbar","true"],["showVerticalScroll","true"],["tabRatio","600"],["xWindow","0"],["yWindow","0"]];function push_defaults_array(target,defaults){for(var j=0;j!=target.length;++j){var w=target[j];for(var i=0;i!=defaults.length;++i){var z=defaults[i];if(w[z[0]]==null)w[z[0]]=z[1]}}}function push_defaults(target,defaults){for(var i=0;i!=defaults.length;++i){var z=defaults[i];if(target[z[0]]==null)target[z[0]]=z[1]}}function parse_wb_defaults(wb){push_defaults(wb.WBProps,WBPropsDef);push_defaults(wb.CalcPr,CalcPrDef);push_defaults_array(wb.WBView,WBViewDef);push_defaults_array(wb.Sheets,SheetDef);_ssfopts.date1904=parsexmlbool(wb.WBProps.date1904,"date1904")}var wbnsregex=/<\w+:workbook/;function parse_wb_xml(data,opts){var wb={AppVersion:{},WBProps:{},WBView:[],Sheets:[],CalcPr:{},xmlns:""};var pass=false,xmlns="xmlns";data.match(tagregex).forEach(function xml_wb(x){var y=parsexmltag(x);switch(strip_ns(y[0])){case"<?xml":break;case"<workbook":if(x.match(wbnsregex))xmlns="xmlns"+x.match(/<(\w+):/)[1];wb.xmlns=y[xmlns];break;case"</workbook>":break;case"<fileVersion":delete y[0];wb.AppVersion=y;break;case"<fileVersion/>":break;case"<fileSharing":case"<fileSharing/>":break;case"<workbookPr":delete y[0];wb.WBProps=y;break;case"<workbookPr/>":delete y[0];wb.WBProps=y;break;case"<workbookProtection":break;case"<workbookProtection/>":break;case"<bookViews>":case"</bookViews>":break;case"<workbookView":delete y[0];wb.WBView.push(y);break;case"<sheets>":case"</sheets>":break;case"<sheet":delete y[0];y.name=utf8read(y.name);wb.Sheets.push(y);break;case"<functionGroups":case"<functionGroups/>":break;case"<functionGroup":break;case"<externalReferences":case"</externalReferences>":case"<externalReferences>":break;case"<externalReference":break;case"<definedNames/>":break;case"<definedNames>":case"<definedNames":pass=true;break;case"</definedNames>":pass=false;break;case"<definedName":case"<definedName/>":case"</definedName>":break;case"<calcPr":delete y[0];wb.CalcPr=y;break;case"<calcPr/>":delete y[0];wb.CalcPr=y;break;case"<oleSize":break;case"<customWorkbookViews>":case"</customWorkbookViews>":case"<customWorkbookViews":break;case"<customWorkbookView":case"</customWorkbookView>":break;case"<pivotCaches>":case"</pivotCaches>":case"<pivotCaches":break;case"<pivotCache":break;case"<smartTagPr":case"<smartTagPr/>":break;case"<smartTagTypes":case"<smartTagTypes>":case"</smartTagTypes>":break;case"<smartTagType":break;case"<webPublishing":case"<webPublishing/>":break;case"<fileRecoveryPr":case"<fileRecoveryPr/>":break;case"<webPublishObjects>":case"<webPublishObjects":case"</webPublishObjects>":break;case"<webPublishObject":break;case"<extLst>":case"</extLst>":case"<extLst/>":break;case"<ext":pass=true;break;case"</ext>":pass=false;break;case"<ArchID":break;case"<AlternateContent":pass=true;break;case"</AlternateContent>":pass=false;break;default:if(!pass&&opts.WTF)throw"unrecognized "+y[0]+" in workbook"}});if(XMLNS.main.indexOf(wb.xmlns)===-1)throw new Error("Unknown Namespace: "+wb.xmlns);parse_wb_defaults(wb);return wb}var WB_XML_ROOT=writextag("workbook",null,{xmlns:XMLNS.main[0],"xmlns:r":XMLNS.r});function safe1904(wb){try{return parsexmlbool(wb.Workbook.WBProps.date1904)?"true":"false"}catch(e){return"false"}}function write_wb_xml(wb,opts){var o=[XML_HEADER];o[o.length]=WB_XML_ROOT;o[o.length]=writextag("workbookPr",null,{date1904:safe1904(wb)});o[o.length]="<sheets>";for(var i=0;i!=wb.SheetNames.length;++i)o[o.length]=writextag("sheet",null,{name:wb.SheetNames[i].substr(0,31),sheetId:""+(i+1),"r:id":"rId"+(i+1)});o[o.length]="</sheets>";var hasPrintHeaders=false;for(var i=0;i!=wb.SheetNames.length;++i){var sheetName=wb.SheetNames[i];var sheet=wb.Sheets[sheetName];if(sheet["!printHeader"]){if(sheet["!printHeader"].length!==2){throw"!printHeaders must be an array of length 2: "+sheet["!printHeader"]}hasPrintHeaders=true}}if(hasPrintHeaders){o[o.length]="<definedNames>";for(var i=0;i!=wb.SheetNames.length;++i){var sheetName=wb.SheetNames[i];var sheet=wb.Sheets[sheetName];if(sheet["!printHeader"]||sheet["!printColumns"]){var printHeader=sheet["!printHeader"];var printColumns=sheet["!printColumns"];var range="";if(printColumns)range+="'"+sheetName+"'!"+("$"+printColumns[0]+":$"+printColumns[1]);if(printColumns&&printHeader)range+=",";if(printHeader)range+="'"+sheetName+"'!"+("$"+printHeader[0]+":$"+printHeader[1]);console.log("-----------------------------");console.log(range);o[o.length]=writextag("definedName",range,{name:"_xlnm.Print_Titles",localSheetId:""+i})}}o[o.length]="</definedNames>"}if(o.length>2){o[o.length]="</workbook>";o[1]=o[1].replace("/>",">")}return o.join("")}function parse_BrtBundleSh(data,length){var z={};z.hsState=data.read_shift(4);z.iTabID=data.read_shift(4);z.strRelID=parse_RelID(data,length-8);
z.name=parse_XLWideString(data);return z}function write_BrtBundleSh(data,o){if(!o)o=new_buf(127);o.write_shift(4,data.hsState);o.write_shift(4,data.iTabID);write_RelID(data.strRelID,o);write_XLWideString(data.name.substr(0,31),o);return o}function parse_BrtWbProp(data,length){data.read_shift(4);var dwThemeVersion=data.read_shift(4);var strName=length>8?parse_XLWideString(data):"";return[dwThemeVersion,strName]}function write_BrtWbProp(data,o){if(!o)o=new_buf(8);o.write_shift(4,0);o.write_shift(4,0);return o}function parse_BrtFRTArchID$(data,length){var o={};data.read_shift(4);o.ArchID=data.read_shift(4);data.l+=length-8;return o}function parse_wb_bin(data,opts){var wb={AppVersion:{},WBProps:{},WBView:[],Sheets:[],CalcPr:{},xmlns:""};var pass=false,z;recordhopper(data,function hopper_wb(val,R){switch(R.n){case"BrtBundleSh":wb.Sheets.push(val);break;case"BrtBeginBook":break;case"BrtFileVersion":break;case"BrtWbProp":break;case"BrtACBegin":break;case"BrtAbsPath15":break;case"BrtACEnd":break;case"BrtWbFactoid":break;case"BrtBookProtection":break;case"BrtBeginBookViews":break;case"BrtBookView":break;case"BrtEndBookViews":break;case"BrtBeginBundleShs":break;case"BrtEndBundleShs":break;case"BrtBeginFnGroup":break;case"BrtEndFnGroup":break;case"BrtBeginExternals":break;case"BrtSupSelf":break;case"BrtSupBookSrc":break;case"BrtExternSheet":break;case"BrtEndExternals":break;case"BrtName":break;case"BrtCalcProp":break;case"BrtUserBookView":break;case"BrtBeginPivotCacheIDs":break;case"BrtBeginPivotCacheID":break;case"BrtEndPivotCacheID":break;case"BrtEndPivotCacheIDs":break;case"BrtWebOpt":break;case"BrtFileRecover":break;case"BrtFileSharing":break;case"BrtBeginSmartTagTypes":break;case"BrtSmartTagType":break;case"BrtEndSmartTagTypes":break;case"BrtFRTBegin":pass=true;break;case"BrtFRTArchID$":break;case"BrtWorkBookPr15":break;case"BrtFRTEnd":pass=false;break;case"BrtEndBook":break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+R.n)}});parse_wb_defaults(wb);return wb}function write_BUNDLESHS(ba,wb,opts){write_record(ba,"BrtBeginBundleShs");for(var idx=0;idx!=wb.SheetNames.length;++idx){var d={hsState:0,iTabID:idx+1,strRelID:"rId"+(idx+1),name:wb.SheetNames[idx]};write_record(ba,"BrtBundleSh",write_BrtBundleSh(d))}write_record(ba,"BrtEndBundleShs")}function write_BrtFileVersion(data,o){if(!o)o=new_buf(127);for(var i=0;i!=4;++i)o.write_shift(4,0);write_XLWideString("SheetJS",o);write_XLWideString(XLSX.version,o);write_XLWideString(XLSX.version,o);write_XLWideString("7262",o);o.length=o.l;return o}function write_BOOKVIEWS(ba,wb,opts){write_record(ba,"BrtBeginBookViews");write_record(ba,"BrtEndBookViews")}function write_BrtCalcProp(data,o){if(!o)o=new_buf(26);o.write_shift(4,0);o.write_shift(4,1);o.write_shift(4,0);write_Xnum(0,o);o.write_shift(-4,1023);o.write_shift(1,51);o.write_shift(1,0);return o}function write_BrtFileRecover(data,o){if(!o)o=new_buf(1);o.write_shift(1,0);return o}function write_wb_bin(wb,opts){var ba=buf_array();write_record(ba,"BrtBeginBook");write_record(ba,"BrtFileVersion",write_BrtFileVersion());write_record(ba,"BrtWbProp",write_BrtWbProp());write_BOOKVIEWS(ba,wb,opts);write_BUNDLESHS(ba,wb,opts);write_record(ba,"BrtCalcProp",write_BrtCalcProp());write_record(ba,"BrtFileRecover",write_BrtFileRecover());write_record(ba,"BrtEndBook");return ba.end()}function parse_wb(data,name,opts){return(name.substr(-4)===".bin"?parse_wb_bin:parse_wb_xml)(data,opts)}function parse_ws(data,name,opts,rels){return(name.substr(-4)===".bin"?parse_ws_bin:parse_ws_xml)(data,opts,rels)}function parse_sty(data,name,opts){return(name.substr(-4)===".bin"?parse_sty_bin:parse_sty_xml)(data,opts)}function parse_theme(data,name,opts){return parse_theme_xml(data,opts)}function parse_sst(data,name,opts){return(name.substr(-4)===".bin"?parse_sst_bin:parse_sst_xml)(data,opts)}function parse_cmnt(data,name,opts){return(name.substr(-4)===".bin"?parse_comments_bin:parse_comments_xml)(data,opts)}function parse_cc(data,name,opts){return(name.substr(-4)===".bin"?parse_cc_bin:parse_cc_xml)(data,opts)}function write_wb(wb,name,opts){return(name.substr(-4)===".bin"?write_wb_bin:write_wb_xml)(wb,opts)}function write_ws(data,name,opts,wb){return(name.substr(-4)===".bin"?write_ws_bin:write_ws_xml)(data,opts,wb)}function write_sty(data,name,opts){return(name.substr(-4)===".bin"?write_sty_bin:write_sty_xml)(data,opts)}function write_sst(data,name,opts){return(name.substr(-4)===".bin"?write_sst_bin:write_sst_xml)(data,opts)}var attregexg2=/([\w:]+)=((?:")([^"]*)(?:")|(?:')([^']*)(?:'))/g;var attregex2=/([\w:]+)=((?:")(?:[^"]*)(?:")|(?:')(?:[^']*)(?:'))/;var _chr=function(c){return String.fromCharCode(c)};function xlml_parsexmltag(tag,skip_root){var words=tag.split(/\s+/);var z=[];if(!skip_root)z[0]=words[0];if(words.length===1)return z;var m=tag.match(attregexg2),y,j,w,i;if(m)for(i=0;i!=m.length;++i){y=m[i].match(attregex2);if((j=y[1].indexOf(":"))===-1)z[y[1]]=y[2].substr(1,y[2].length-2);else{if(y[1].substr(0,6)==="xmlns:")w="xmlns"+y[1].substr(6);else w=y[1].substr(j+1);z[w]=y[2].substr(1,y[2].length-2)}}return z}function xlml_parsexmltagobj(tag){var words=tag.split(/\s+/);var z={};if(words.length===1)return z;var m=tag.match(attregexg2),y,j,w,i;if(m)for(i=0;i!=m.length;++i){y=m[i].match(attregex2);if((j=y[1].indexOf(":"))===-1)z[y[1]]=y[2].substr(1,y[2].length-2);else{if(y[1].substr(0,6)==="xmlns:")w="xmlns"+y[1].substr(6);else w=y[1].substr(j+1);z[w]=y[2].substr(1,y[2].length-2)}}return z}function xlml_format(format,value){var fmt=XLMLFormatMap[format]||unescapexml(format);if(fmt==="General")return SSF._general(value);return SSF.format(fmt,value)}function xlml_set_custprop(Custprops,Rn,cp,val){switch((cp[0].match(/dt:dt="([\w.]+)"/)||["",""])[1]){case"boolean":val=parsexmlbool(val);break;case"i2":case"int":val=parseInt(val,10);break;case"r4":case"float":val=parseFloat(val);break;case"date":case"dateTime.tz":val=new Date(val);break;case"i8":case"string":case"fixed":case"uuid":case"bin.base64":break;default:throw"bad custprop:"+cp[0]}Custprops[unescapexml(Rn[3])]=val}function safe_format_xlml(cell,nf,o){try{if(cell.t==="e"){cell.w=cell.w||BErr[cell.v]}else if(nf==="General"){if(cell.t==="n"){if((cell.v|0)===cell.v)cell.w=SSF._general_int(cell.v);else cell.w=SSF._general_num(cell.v)}else cell.w=SSF._general(cell.v)}else cell.w=xlml_format(nf||"General",cell.v);if(o.cellNF)cell.z=XLMLFormatMap[nf]||nf||"General"}catch(e){if(o.WTF)throw e}}function process_style_xlml(styles,stag,opts){if(opts.cellStyles){if(stag.Interior){var I=stag.Interior;if(I.Pattern)I.patternType=XLMLPatternTypeMap[I.Pattern]||I.Pattern}}styles[stag.ID]=stag}function parse_xlml_data(xml,ss,data,cell,base,styles,csty,row,o){var nf="General",sid=cell.StyleID,S={};o=o||{};var interiors=[];if(sid===undefined&&row)sid=row.StyleID;if(sid===undefined&&csty)sid=csty.StyleID;while(styles[sid]!==undefined){if(styles[sid].nf)nf=styles[sid].nf;if(styles[sid].Interior)interiors.push(styles[sid].Interior);if(!styles[sid].Parent)break;sid=styles[sid].Parent}switch(data.Type){case"Boolean":cell.t="b";cell.v=parsexmlbool(xml);break;case"String":cell.t="s";cell.r=xlml_fixstr(unescapexml(xml));cell.v=xml.indexOf("<")>-1?ss:cell.r;break;case"DateTime":cell.v=(Date.parse(xml)-new Date(Date.UTC(1899,11,30)))/(24*60*60*1e3);if(cell.v!==cell.v)cell.v=unescapexml(xml);else if(cell.v>=1&&cell.v<60)cell.v=cell.v-1;if(!nf||nf=="General")nf="yyyy-mm-dd";case"Number":if(cell.v===undefined)cell.v=+xml;if(!cell.t)cell.t="n";break;case"Error":cell.t="e";cell.v=RBErr[xml];cell.w=xml;break;default:cell.t="s";cell.v=xlml_fixstr(ss);break}safe_format_xlml(cell,nf,o);if(o.cellFormula!=null&&cell.Formula){cell.f=rc_to_a1(unescapexml(cell.Formula),base);cell.Formula=undefined}if(o.cellStyles){interiors.forEach(function(x){if(!S.patternType&&x.patternType)S.patternType=x.patternType});cell.s=S}cell.ixfe=cell.StyleID!==undefined?cell.StyleID:"Default"}function xlml_clean_comment(comment){comment.t=comment.v;comment.v=comment.w=comment.ixfe=undefined}function xlml_normalize(d){if(has_buf&&Buffer.isBuffer(d))return d.toString("utf8");if(typeof d==="string")return d;throw"badf"}var xlmlregex=/<(\/?)([a-z0-9]*:|)(\w+)[^>]*>/gm;function parse_xlml_xml(d,opts){var str=xlml_normalize(d);var Rn;var state=[],tmp;var sheets={},sheetnames=[],cursheet={},sheetname="";var table={},cell={},row={},dtag,didx;var c=0,r=0;var refguess={s:{r:1e6,c:1e6},e:{r:0,c:0}};var styles={},stag={};var ss="",fidx=0;var mergecells=[];var Props={},Custprops={},pidx=0,cp={};var comments=[],comment={};var cstys=[],csty;xlmlregex.lastIndex=0;while(Rn=xlmlregex.exec(str))switch(Rn[3]){case"Data":if(state[state.length-1][1])break;if(Rn[1]==="/")parse_xlml_data(str.slice(didx,Rn.index),ss,dtag,state[state.length-1][0]=="Comment"?comment:cell,{c:c,r:r},styles,cstys[c],row,opts);else{ss="";dtag=xlml_parsexmltag(Rn[0]);didx=Rn.index+Rn[0].length}break;case"Cell":if(Rn[1]==="/"){if(comments.length>0)cell.c=comments;if((!opts.sheetRows||opts.sheetRows>r)&&cell.v!==undefined)cursheet[encode_col(c)+encode_row(r)]=cell;if(cell.HRef){cell.l={Target:cell.HRef,tooltip:cell.HRefScreenTip};cell.HRef=cell.HRefScreenTip=undefined}if(cell.MergeAcross||cell.MergeDown){var cc=c+(parseInt(cell.MergeAcross,10)|0);var rr=r+(parseInt(cell.MergeDown,10)|0);mergecells.push({s:{c:c,r:r},e:{c:cc,r:rr}})}++c;if(cell.MergeAcross)c+=+cell.MergeAcross}else{cell=xlml_parsexmltagobj(Rn[0]);if(cell.Index)c=+cell.Index-1;if(c<refguess.s.c)refguess.s.c=c;if(c>refguess.e.c)refguess.e.c=c;if(Rn[0].substr(-2)==="/>")++c;comments=[]}break;case"Row":if(Rn[1]==="/"||Rn[0].substr(-2)==="/>"){if(r<refguess.s.r)refguess.s.r=r;if(r>refguess.e.r)refguess.e.r=r;if(Rn[0].substr(-2)==="/>"){row=xlml_parsexmltag(Rn[0]);if(row.Index)r=+row.Index-1}c=0;++r}else{row=xlml_parsexmltag(Rn[0]);if(row.Index)r=+row.Index-1}break;case"Worksheet":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw"Bad state: "+tmp;sheetnames.push(sheetname);if(refguess.s.r<=refguess.e.r&&refguess.s.c<=refguess.e.c)cursheet["!ref"]=encode_range(refguess);if(mergecells.length)cursheet["!merges"]=mergecells;sheets[sheetname]=cursheet}else{refguess={s:{r:1e6,c:1e6},e:{r:0,c:0}};r=c=0;state.push([Rn[3],false]);tmp=xlml_parsexmltag(Rn[0]);sheetname=tmp.Name;cursheet={};mergecells=[]}break;case"Table":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw"Bad state: "+tmp}else if(Rn[0].slice(-2)=="/>")break;else{table=xlml_parsexmltag(Rn[0]);state.push([Rn[3],false]);cstys=[]}break;case"Style":if(Rn[1]==="/")process_style_xlml(styles,stag,opts);else stag=xlml_parsexmltag(Rn[0]);break;case"NumberFormat":stag.nf=xlml_parsexmltag(Rn[0]).Format||"General";break;case"Column":if(state[state.length-1][0]!=="Table")break;csty=xlml_parsexmltag(Rn[0]);cstys[csty.Index-1||cstys.length]=csty;for(var i=0;i<+csty.Span;++i)cstys[cstys.length]=csty;break;case"NamedRange":break;case"NamedCell":break;case"B":break;case"I":break;case"U":break;case"S":break;case"Sub":break;case"Sup":break;case"Span":break;case"Border":break;case"Alignment":break;case"Borders":break;case"Font":if(Rn[0].substr(-2)==="/>")break;else if(Rn[1]==="/")ss+=str.slice(fidx,Rn.index);else fidx=Rn.index+Rn[0].length;break;case"Interior":if(!opts.cellStyles)break;stag.Interior=xlml_parsexmltag(Rn[0]);break;case"Protection":break;case"Author":case"Title":case"Description":case"Created":case"Keywords":case"Subject":case"Category":case"Company":case"LastAuthor":case"LastSaved":case"LastPrinted":case"Version":case"Revision":case"TotalTime":case"HyperlinkBase":case"Manager":if(Rn[0].substr(-2)==="/>")break;else if(Rn[1]==="/")xlml_set_prop(Props,Rn[3],str.slice(pidx,Rn.index));else pidx=Rn.index+Rn[0].length;break;case"Paragraphs":break;case"Styles":case"Workbook":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw"Bad state: "+tmp}else state.push([Rn[3],false]);break;case"Comment":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw"Bad state: "+tmp;xlml_clean_comment(comment);comments.push(comment)}else{state.push([Rn[3],false]);tmp=xlml_parsexmltag(Rn[0]);comment={a:tmp.Author}}break;case"Name":break;case"ComponentOptions":case"DocumentProperties":case"CustomDocumentProperties":case"OfficeDocumentSettings":case"PivotTable":case"PivotCache":case"Names":case"MapInfo":case"PageBreaks":case"QueryTable":case"DataValidation":case"AutoFilter":case"Sorting":case"Schema":case"data":case"ConditionalFormatting":case"SmartTagType":case"SmartTags":case"ExcelWorkbook":case"WorkbookOptions":case"WorksheetOptions":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw"Bad state: "+tmp}else if(Rn[0].charAt(Rn[0].length-2)!=="/")state.push([Rn[3],true]);break;default:var seen=true;switch(state[state.length-1][0]){case"OfficeDocumentSettings":switch(Rn[3]){case"AllowPNG":break;case"RemovePersonalInformation":break;case"DownloadComponents":break;case"LocationOfComponents":break;case"Colors":break;case"Color":break;case"Index":break;case"RGB":break;case"PixelsPerInch":break;case"TargetScreenSize":break;case"ReadOnlyRecommended":break;default:seen=false}break;case"ComponentOptions":switch(Rn[3]){case"Toolbar":break;case"HideOfficeLogo":break;case"SpreadsheetAutoFit":break;case"Label":break;case"Caption":break;case"MaxHeight":break;case"MaxWidth":break;case"NextSheetNumber":break;default:seen=false}break;case"ExcelWorkbook":switch(Rn[3]){case"WindowHeight":break;case"WindowWidth":break;case"WindowTopX":break;case"WindowTopY":break;case"TabRatio":break;case"ProtectStructure":break;case"ProtectWindows":break;case"ActiveSheet":break;case"DisplayInkNotes":break;case"FirstVisibleSheet":break;case"SupBook":break;case"SheetName":break;case"SheetIndex":break;case"SheetIndexFirst":break;case"SheetIndexLast":break;case"Dll":break;case"AcceptLabelsInFormulas":break;case"DoNotSaveLinkValues":break;case"Date1904":break;case"Iteration":break;case"MaxIterations":break;case"MaxChange":break;case"Path":break;case"Xct":break;case"Count":break;case"SelectedSheets":break;case"Calculation":break;case"Uncalced":break;case"StartupPrompt":break;case"Crn":break;case"ExternName":break;case"Formula":break;case"ColFirst":break;case"ColLast":break;case"WantAdvise":break;case"Boolean":break;case"Error":break;case"Text":break;case"OLE":break;case"NoAutoRecover":break;case"PublishObjects":break;case"DoNotCalculateBeforeSave":break;case"Number":break;case"RefModeR1C1":break;case"EmbedSaveSmartTags":break;default:seen=false}break;case"WorkbookOptions":switch(Rn[3]){case"OWCVersion":break;case"Height":break;case"Width":break;default:seen=false}break;case"WorksheetOptions":switch(Rn[3]){case"Unsynced":break;case"Visible":break;case"Print":break;case"Panes":break;case"Scale":break;case"Pane":break;case"Number":break;case"Layout":break;case"Header":break;case"Footer":break;case"PageSetup":break;case"PageMargins":break;case"Selected":break;case"ProtectObjects":break;case"EnableSelection":break;case"ProtectScenarios":break;case"ValidPrinterInfo":break;case"HorizontalResolution":break;case"VerticalResolution":break;case"NumberofCopies":break;case"ActiveRow":break;case"ActiveCol":break;case"ActivePane":break;case"TopRowVisible":break;case"TopRowBottomPane":break;case"LeftColumnVisible":break;case"LeftColumnRightPane":break;case"FitToPage":break;case"RangeSelection":break;case"PaperSizeIndex":break;case"PageLayoutZoom":break;case"PageBreakZoom":break;case"FilterOn":break;case"DoNotDisplayGridlines":break;case"SplitHorizontal":break;case"SplitVertical":break;case"FreezePanes":break;case"FrozenNoSplit":break;case"FitWidth":break;case"FitHeight":break;case"CommentsLayout":break;case"Zoom":break;case"LeftToRight":break;case"Gridlines":break;case"AllowSort":break;case"AllowFilter":break;case"AllowInsertRows":break;case"AllowDeleteRows":break;case"AllowInsertCols":break;case"AllowDeleteCols":break;case"AllowInsertHyperlinks":break;case"AllowFormatCells":break;case"AllowSizeCols":break;case"AllowSizeRows":break;case"NoSummaryRowsBelowDetail":break;case"TabColorIndex":break;case"DoNotDisplayHeadings":break;case"ShowPageLayoutZoom":break;case"NoSummaryColumnsRightDetail":break;case"BlackAndWhite":break;case"DoNotDisplayZeros":break;case"DisplayPageBreak":break;case"RowColHeadings":break;case"DoNotDisplayOutline":break;case"NoOrientation":break;case"AllowUsePivotTables":break;case"ZeroHeight":break;case"ViewableRange":break;case"Selection":break;case"ProtectContents":break;default:seen=false}break;case"PivotTable":case"PivotCache":switch(Rn[3]){case"ImmediateItemsOnDrop":break;case"ShowPageMultipleItemLabel":break;case"CompactRowIndent":break;case"Location":break;case"PivotField":break;case"Orientation":break;case"LayoutForm":break;case"LayoutSubtotalLocation":break;case"LayoutCompactRow":break;case"Position":break;case"PivotItem":break;case"DataType":break;case"DataField":break;case"SourceName":break;case"ParentField":break;case"PTLineItems":break;case"PTLineItem":break;case"CountOfSameItems":break;case"Item":break;case"ItemType":break;case"PTSource":break;case"CacheIndex":break;case"ConsolidationReference":break;case"FileName":break;case"Reference":break;case"NoColumnGrand":break;case"NoRowGrand":break;case"BlankLineAfterItems":break;case"Hidden":break;case"Subtotal":break;case"BaseField":break;case"MapChildItems":break;case"Function":break;case"RefreshOnFileOpen":break;case"PrintSetTitles":break;case"MergeLabels":break;case"DefaultVersion":break;case"RefreshName":break;case"RefreshDate":break;case"RefreshDateCopy":break;case"VersionLastRefresh":break;case"VersionLastUpdate":break;case"VersionUpdateableMin":break;case"VersionRefreshableMin":break;case"Calculation":break;default:seen=false}break;case"PageBreaks":switch(Rn[3]){case"ColBreaks":break;case"ColBreak":break;case"RowBreaks":break;case"RowBreak":break;case"ColStart":break;case"ColEnd":break;case"RowEnd":break;default:seen=false}break;case"AutoFilter":switch(Rn[3]){case"AutoFilterColumn":break;case"AutoFilterCondition":break;case"AutoFilterAnd":break;case"AutoFilterOr":break;default:seen=false}break;case"QueryTable":switch(Rn[3]){case"Id":break;case"AutoFormatFont":break;case"AutoFormatPattern":break;case"QuerySource":break;case"QueryType":break;case"EnableRedirections":break;case"RefreshedInXl9":break;case"URLString":break;case"HTMLTables":break;case"Connection":break;case"CommandText":break;case"RefreshInfo":break;case"NoTitles":break;case"NextId":break;case"ColumnInfo":break;case"OverwriteCells":break;case"DoNotPromptForFile":break;case"TextWizardSettings":break;case"Source":break;case"Number":break;case"Decimal":break;case"ThousandSeparator":break;case"TrailingMinusNumbers":break;case"FormatSettings":break;case"FieldType":break;case"Delimiters":break;case"Tab":break;case"Comma":break;case"AutoFormatName":break;case"VersionLastEdit":break;case"VersionLastRefresh":break;default:seen=false}break;case"Sorting":case"ConditionalFormatting":case"DataValidation":switch(Rn[3]){case"Range":break;case"Type":break;case"Min":break;case"Max":break;case"Sort":break;case"Descending":break;case"Order":break;case"CaseSensitive":break;case"Value":break;case"ErrorStyle":break;case"ErrorMessage":break;case"ErrorTitle":break;case"CellRangeList":break;case"InputMessage":break;case"InputTitle":break;case"ComboHide":break;case"InputHide":break;case"Condition":break;case"Qualifier":break;case"UseBlank":break;case"Value1":break;case"Value2":break;case"Format":break;default:seen=false}break;case"MapInfo":case"Schema":case"data":switch(Rn[3]){case"Map":break;case"Entry":break;case"Range":break;case"XPath":break;case"Field":break;case"XSDType":break;case"FilterOn":break;case"Aggregate":break;case"ElementType":break;case"AttributeType":break;case"schema":case"element":case"complexType":case"datatype":case"all":case"attribute":case"extends":break;case"row":break;default:seen=false}break;case"SmartTags":break;default:seen=false;break}if(seen)break;if(!state[state.length-1][1])throw"Unrecognized tag: "+Rn[3]+"|"+state.join("|");if(state[state.length-1][0]==="CustomDocumentProperties"){if(Rn[0].substr(-2)==="/>")break;else if(Rn[1]==="/")xlml_set_custprop(Custprops,Rn,cp,str.slice(pidx,Rn.index));else{cp=Rn;pidx=Rn.index+Rn[0].length}break}if(opts.WTF)throw"Unrecognized tag: "+Rn[3]+"|"+state.join("|")}var out={};if(!opts.bookSheets&&!opts.bookProps)out.Sheets=sheets;out.SheetNames=sheetnames;out.SSF=SSF.get_table();out.Props=Props;out.Custprops=Custprops;return out}function parse_xlml(data,opts){fix_read_opts(opts=opts||{});switch(opts.type||"base64"){case"base64":return parse_xlml_xml(Base64.decode(data),opts);case"binary":case"buffer":case"file":return parse_xlml_xml(data,opts);case"array":return parse_xlml_xml(data.map(_chr).join(""),opts)}}function write_xlml(wb,opts){}function parse_compobj(obj){var v={};var o=obj.content;var l=28,m;m=__lpstr(o,l);l+=4+__readUInt32LE(o,l);v.UserType=m;m=__readUInt32LE(o,l);l+=4;switch(m){case 0:break;case 4294967295:case 4294967294:l+=4;break;default:if(m>400)throw new Error("Unsupported Clipboard: "+m.toString(16));l+=m}m=__lpstr(o,l);l+=m.length===0?0:5+m.length;v.Reserved1=m;if((m=__readUInt32LE(o,l))!==1907550708)return v;throw"Unsupported Unicode Extension"}function slurp(R,blob,length,opts){var l=length;var bufs=[];var d=blob.slice(blob.l,blob.l+l);if(opts&&opts.enc&&opts.enc.insitu_decrypt)switch(R.n){case"BOF":case"FilePass":case"FileLock":case"InterfaceHdr":case"RRDInfo":case"RRDHead":case"UsrExcl":break;default:if(d.length===0)break;opts.enc.insitu_decrypt(d)}bufs.push(d);blob.l+=l;var next=XLSRecordEnum[__readUInt16LE(blob,blob.l)];while(next!=null&&next.n==="Continue"){l=__readUInt16LE(blob,blob.l+2);bufs.push(blob.slice(blob.l+4,blob.l+4+l));blob.l+=4+l;next=XLSRecordEnum[__readUInt16LE(blob,blob.l)]}var b=bconcat(bufs);prep_blob(b,0);var ll=0;b.lens=[];for(var j=0;j<bufs.length;++j){b.lens.push(ll);ll+=bufs[j].length}return R.f(b,b.length,opts)}function safe_format_xf(p,opts,date1904){if(!p.XF)return;try{var fmtid=p.XF.ifmt||0;if(p.t==="e"){p.w=p.w||BErr[p.v]}else if(fmtid===0){if(p.t==="n"){if((p.v|0)===p.v)p.w=SSF._general_int(p.v);else p.w=SSF._general_num(p.v)}else p.w=SSF._general(p.v)}else p.w=SSF.format(fmtid,p.v,{date1904:date1904||false});if(opts.cellNF)p.z=SSF._table[fmtid]}catch(e){if(opts.WTF)throw e}}function make_cell(val,ixfe,t){return{v:val,ixfe:ixfe,t:t}}function parse_workbook(blob,options){var wb={opts:{}};var Sheets={};var out={};var Directory={};var found_sheet=false;var range={};var last_formula=null;var sst=[];var cur_sheet="";var Preamble={};var lastcell,last_cell,cc,cmnt,rng,rngC,rngR;var shared_formulae={};var array_formulae=[];var temp_val;var country;var cell_valid=true;var XFs=[];var palette=[];var get_rgb=function getrgb(icv){if(icv<8)return XLSIcv[icv];if(icv<64)return palette[icv-8]||XLSIcv[icv];return XLSIcv[icv]};var process_cell_style=function pcs(cell,line){var xfd=line.XF.data;if(!xfd||!xfd.patternType)return;line.s={};line.s.patternType=xfd.patternType;var t;if(t=rgb2Hex(get_rgb(xfd.icvFore))){line.s.fgColor={rgb:t}}if(t=rgb2Hex(get_rgb(xfd.icvBack))){line.s.bgColor={rgb:t}}};var addcell=function addcell(cell,line,options){if(!cell_valid)return;if(options.cellStyles&&line.XF&&line.XF.data)process_cell_style(cell,line);lastcell=cell;last_cell=encode_cell(cell);if(range.s){if(cell.r<range.s.r)range.s.r=cell.r;if(cell.c<range.s.c)range.s.c=cell.c}if(range.e){if(cell.r+1>range.e.r)range.e.r=cell.r+1;if(cell.c+1>range.e.c)range.e.c=cell.c+1}if(options.sheetRows&&lastcell.r>=options.sheetRows)cell_valid=false;else out[last_cell]=line};var opts={enc:false,sbcch:0,snames:[],sharedf:shared_formulae,arrayf:array_formulae,rrtabid:[],lastuser:"",biff:8,codepage:0,winlocked:0,wtf:false};if(options.password)opts.password=options.password;var mergecells=[];var objects=[];var supbooks=[[]];var sbc=0,sbci=0,sbcli=0;supbooks.SheetNames=opts.snames;supbooks.sharedf=opts.sharedf;supbooks.arrayf=opts.arrayf;var last_Rn="";var file_depth=0;opts.codepage=1200;set_cp(1200);while(blob.l<blob.length-1){var s=blob.l;var RecordType=blob.read_shift(2);if(RecordType===0&&last_Rn==="EOF")break;var length=blob.l===blob.length?0:blob.read_shift(2),y;var R=XLSRecordEnum[RecordType];if(R&&R.f){if(options.bookSheets){if(last_Rn==="BoundSheet8"&&R.n!=="BoundSheet8")break}last_Rn=R.n;if(R.r===2||R.r==12){var rt=blob.read_shift(2);length-=2;if(!opts.enc&&rt!==RecordType)throw"rt mismatch";if(R.r==12){blob.l+=10;length-=10}}var val;if(R.n==="EOF")val=R.f(blob,length,opts);else val=slurp(R,blob,length,opts);var Rn=R.n;if(opts.biff===5||opts.biff===2)switch(Rn){case"Lbl":Rn="Label";break}switch(Rn){case"Date1904":wb.opts.Date1904=val;break;case"WriteProtect":wb.opts.WriteProtect=true;break;case"FilePass":if(!opts.enc)blob.l=0;opts.enc=val;if(opts.WTF)console.error(val);if(!options.password)throw new Error("File is password-protected");if(val.Type!==0)throw new Error("Encryption scheme unsupported");if(!val.valid)throw new Error("Password is incorrect");break;case"WriteAccess":opts.lastuser=val;break;case"FileSharing":break;case"CodePage":if(val===21010)val=1200;else if(val===32769)val=1252;opts.codepage=val;set_cp(val);break;case"RRTabId":opts.rrtabid=val;break;case"WinProtect":opts.winlocked=val;break;case"Template":break;case"RefreshAll":wb.opts.RefreshAll=val;break;case"BookBool":break;case"UsesELFs":break;case"MTRSettings":{if(val[0]&&val[1])throw"Unsupported threads: "+val}break;case"CalcCount":wb.opts.CalcCount=val;break;case"CalcDelta":wb.opts.CalcDelta=val;break;case"CalcIter":wb.opts.CalcIter=val;break;case"CalcMode":wb.opts.CalcMode=val;break;case"CalcPrecision":wb.opts.CalcPrecision=val;break;case"CalcSaveRecalc":wb.opts.CalcSaveRecalc=val;break;case"CalcRefMode":opts.CalcRefMode=val;break;case"Uncalced":break;case"ForceFullCalculation":wb.opts.FullCalc=val;break;case"WsBool":break;case"XF":XFs.push(val);break;case"ExtSST":break;case"BookExt":break;case"RichTextStream":break;case"BkHim":break;case"SupBook":supbooks[++sbc]=[val];sbci=0;break;case"ExternName":supbooks[sbc][++sbci]=val;break;case"Index":break;case"Lbl":supbooks[0][++sbcli]=val;break;case"ExternSheet":supbooks[sbc]=supbooks[sbc].concat(val);sbci+=val.length;break;case"Protect":out["!protect"]=val;break;case"Password":if(val!==0&&opts.WTF)console.error("Password verifier: "+val);break;case"Prot4Rev":case"Prot4RevPass":break;case"BoundSheet8":{Directory[val.pos]=val;opts.snames.push(val.name)}break;case"EOF":{if(--file_depth)break;if(range.e){out["!range"]=range;if(range.e.r>0&&range.e.c>0){range.e.r--;range.e.c--;out["!ref"]=encode_range(range);range.e.r++;range.e.c++}if(mergecells.length>0)out["!merges"]=mergecells;if(objects.length>0)out["!objects"]=objects}if(cur_sheet==="")Preamble=out;else Sheets[cur_sheet]=out;out={}}break;case"BOF":{if(opts.biff!==8);else if(val.BIFFVer===1280)opts.biff=5;else if(val.BIFFVer===2)opts.biff=2;else if(val.BIFFVer===7)opts.biff=2;if(file_depth++)break;cell_valid=true;out={};if(opts.biff===2){if(cur_sheet==="")cur_sheet="Sheet1";range={s:{r:0,c:0},e:{r:0,c:0}}}else cur_sheet=(Directory[s]||{name:""}).name;mergecells=[];objects=[]}break;case"Number":case"BIFF2NUM":{temp_val={ixfe:val.ixfe,XF:XFs[val.ixfe],v:val.val,t:"n"};if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell({c:val.c,r:val.r},temp_val,options)}break;case"BoolErr":{temp_val={ixfe:val.ixfe,XF:XFs[val.ixfe],v:val.val,t:val.t};if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell({c:val.c,r:val.r},temp_val,options)}break;case"RK":{temp_val={ixfe:val.ixfe,XF:XFs[val.ixfe],v:val.rknum,t:"n"};if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell({c:val.c,r:val.r},temp_val,options)}break;case"MulRk":{for(var j=val.c;j<=val.C;++j){var ixfe=val.rkrec[j-val.c][0];temp_val={ixfe:ixfe,XF:XFs[ixfe],v:val.rkrec[j-val.c][1],t:"n"};if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell({c:j,r:val.r},temp_val,options)}}break;case"Formula":{switch(val.val){case"String":last_formula=val;break;case"Array Formula":throw"Array Formula unsupported";default:temp_val={v:val.val,ixfe:val.cell.ixfe,t:val.tt};temp_val.XF=XFs[temp_val.ixfe];if(options.cellFormula)temp_val.f="="+stringify_formula(val.formula,range,val.cell,supbooks,opts);if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell(val.cell,temp_val,options);last_formula=val}}break;case"String":{if(last_formula){last_formula.val=val;temp_val={v:last_formula.val,ixfe:last_formula.cell.ixfe,t:"s"};temp_val.XF=XFs[temp_val.ixfe];if(options.cellFormula)temp_val.f="="+stringify_formula(last_formula.formula,range,last_formula.cell,supbooks,opts);if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell(last_formula.cell,temp_val,options);last_formula=null}}break;case"Array":{array_formulae.push(val)}break;case"ShrFmla":{if(!cell_valid)break;shared_formulae[encode_cell(last_formula.cell)]=val[0]}break;case"LabelSst":temp_val=make_cell(sst[val.isst].t,val.ixfe,"s");temp_val.XF=XFs[temp_val.ixfe];if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell({c:val.c,r:val.r},temp_val,options);break;case"Label":case"BIFF2STR":temp_val=make_cell(val.val,val.ixfe,"s");temp_val.XF=XFs[temp_val.ixfe];if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell({c:val.c,r:val.r},temp_val,options);break;case"Dimensions":{if(file_depth===1)range=val}break;case"SST":{sst=val}break;case"Format":{SSF.load(val[1],val[0])}break;case"MergeCells":mergecells=mergecells.concat(val);break;case"Obj":objects[val.cmo[0]]=opts.lastobj=val;break;case"TxO":opts.lastobj.TxO=val;break;case"HLink":{for(rngR=val[0].s.r;rngR<=val[0].e.r;++rngR)for(rngC=val[0].s.c;rngC<=val[0].e.c;++rngC)if(out[encode_cell({c:rngC,r:rngR})])out[encode_cell({c:rngC,r:rngR})].l=val[1]}break;case"HLinkTooltip":{for(rngR=val[0].s.r;rngR<=val[0].e.r;++rngR)for(rngC=val[0].s.c;rngC<=val[0].e.c;++rngC)if(out[encode_cell({c:rngC,r:rngR})])out[encode_cell({c:rngC,r:rngR})].l.tooltip=val[1]}break;case"Note":{if(opts.biff<=5&&opts.biff>=2)break;cc=out[encode_cell(val[0])];var noteobj=objects[val[2]];if(!cc)break;if(!cc.c)cc.c=[];cmnt={a:val[1],t:noteobj.TxO.t};cc.c.push(cmnt)}break;default:switch(R.n){case"ClrtClient":break;case"XFExt":update_xfext(XFs[val.ixfe],val.ext);break;case"NameCmt":break;case"Header":break;case"Footer":break;case"HCenter":break;case"VCenter":break;case"Pls":break;case"Setup":break;case"DefColWidth":break;case"GCW":break;case"LHRecord":break;case"ColInfo":break;case"Row":break;case"DBCell":break;case"MulBlank":break;case"EntExU2":break;case"SxView":break;case"Sxvd":break;case"SXVI":break;case"SXVDEx":break;case"SxIvd":break;case"SXDI":break;case"SXLI":break;case"SXEx":break;case"QsiSXTag":break;case"Selection":break;case"Feat":break;case"FeatHdr":case"FeatHdr11":break;case"Feature11":case"Feature12":case"List12":break;case"Blank":break;case"Country":country=val;break;case"RecalcId":break;case"DefaultRowHeight":case"DxGCol":break;case"Fbi":case"Fbi2":case"GelFrame":break;case"Font":break;case"XFCRC":break;case"Style":break;case"StyleExt":break;case"Palette":palette=val;break;case"Theme":break;case"ScenarioProtect":break;case"ObjProtect":break;case"CondFmt12":break;case"Table":break;case"TableStyles":break;case"TableStyle":break;case"TableStyleElement":break;case"SXStreamID":break;case"SXVS":break;case"DConRef":break;case"SXAddl":break;case"DConBin":break;case"DConName":break;case"SXPI":break;case"SxFormat":break;case"SxSelect":break;case"SxRule":break;case"SxFilt":break;case"SxItm":break;case"SxDXF":break;case"ScenMan":break;case"DCon":break;case"CellWatch":break;case"PrintRowCol":break;case"PrintGrid":break;case"PrintSize":break;case"XCT":break;case"CRN":break;case"Scl":{}break;case"SheetExt":{}break;case"SheetExtOptional":{}break;case"ObNoMacros":{}break;case"ObProj":{}break;case"CodeName":{}break;case"GUIDTypeLib":{}break;case"WOpt":break;case"PhoneticInfo":break;case"OleObjectSize":break;case"DXF":case"DXFN":case"DXFN12":case"DXFN12List":case"DXFN12NoCB":break;case"Dv":case"DVal":break;case"BRAI":case"Series":case"SeriesText":break;case"DConn":break;
case"DbOrParamQry":break;case"DBQueryExt":break;case"IFmtRecord":break;case"CondFmt":case"CF":case"CF12":case"CFEx":break;case"Excel9File":break;case"Units":break;case"InterfaceHdr":case"Mms":case"InterfaceEnd":case"DSF":case"BuiltInFnGroupCount":case"Window1":case"Window2":case"HideObj":case"GridSet":case"Guts":case"UserBView":case"UserSViewBegin":case"UserSViewEnd":case"Pane":break;default:switch(R.n){case"Dat":case"Begin":case"End":case"StartBlock":case"EndBlock":case"Frame":case"Area":case"Axis":case"AxisLine":case"Tick":break;case"AxesUsed":case"CrtLayout12":case"CrtLayout12A":case"CrtLink":case"CrtLine":case"CrtMlFrt":case"CrtMlFrtContinue":break;case"LineFormat":case"AreaFormat":case"Chart":case"Chart3d":case"Chart3DBarShape":case"ChartFormat":case"ChartFrtInfo":break;case"PlotArea":case"PlotGrowth":break;case"SeriesList":case"SerParent":case"SerAuxTrend":break;case"DataFormat":case"SerToCrt":case"FontX":break;case"CatSerRange":case"AxcExt":case"SerFmt":break;case"ShtProps":break;case"DefaultText":case"Text":case"CatLab":break;case"DataLabExtContents":break;case"Legend":case"LegendException":break;case"Pie":case"Scatter":break;case"PieFormat":case"MarkerFormat":break;case"StartObject":case"EndObject":break;case"AlRuns":case"ObjectLink":break;case"SIIndex":break;case"AttachedLabel":case"YMult":break;case"Line":case"Bar":break;case"Surf":break;case"AxisParent":break;case"Pos":break;case"ValueRange":break;case"SXViewEx9":break;case"SXViewLink":break;case"PivotChartBits":break;case"SBaseRef":break;case"TextPropsStream":break;case"LnExt":break;case"MkrExt":break;case"CrtCoopt":break;case"Qsi":case"Qsif":case"Qsir":case"QsiSXTag":break;case"TxtQry":break;case"FilterMode":break;case"AutoFilter":case"AutoFilterInfo":break;case"AutoFilter12":break;case"DropDownObjIds":break;case"Sort":break;case"SortData":break;case"ShapePropsStream":break;case"MsoDrawing":case"MsoDrawingGroup":case"MsoDrawingSelection":break;case"ImData":break;case"WebPub":case"AutoWebPub":case"RightMargin":case"LeftMargin":case"TopMargin":case"BottomMargin":case"HeaderFooter":case"HFPicture":case"PLV":case"HorizontalPageBreaks":case"VerticalPageBreaks":case"Backup":case"CompressPictures":case"Compat12":break;case"Continue":case"ContinueFrt12":break;case"FrtFontList":case"FrtWrapper":break;case"ExternCount":break;case"RString":break;case"TabIdConf":case"Radar":case"RadarArea":case"DropBar":case"Intl":case"CoordList":case"SerAuxErrBar":break;default:switch(R.n){case"SCENARIO":case"DConBin":case"PicF":case"DataLabExt":case"Lel":case"BopPop":case"BopPopCustom":case"RealTimeData":case"Name":break;default:if(options.WTF)throw"Unrecognized Record "+R.n}}}}}else blob.l+=length}var sheetnamesraw=opts.biff===2?["Sheet1"]:Object.keys(Directory).sort(function(a,b){return Number(a)-Number(b)}).map(function(x){return Directory[x].name});var sheetnames=sheetnamesraw.slice();wb.Directory=sheetnamesraw;wb.SheetNames=sheetnamesraw;if(!options.bookSheets)wb.Sheets=Sheets;wb.Preamble=Preamble;wb.Strings=sst;wb.SSF=SSF.get_table();if(opts.enc)wb.Encryption=opts.enc;wb.Metadata={};if(country!==undefined)wb.Metadata.Country=country;return wb}function parse_xlscfb(cfb,options){if(!options)options={};fix_read_opts(options);reset_cp();var CompObj,Summary,Workbook;if(cfb.find){CompObj=cfb.find("!CompObj");Summary=cfb.find("!SummaryInformation");Workbook=cfb.find("/Workbook")}else{prep_blob(cfb,0);Workbook={content:cfb}}if(!Workbook)Workbook=cfb.find("/Book");var CompObjP,SummaryP,WorkbookP;if(CompObj)CompObjP=parse_compobj(CompObj);if(options.bookProps&&!options.bookSheets)WorkbookP={};else{if(Workbook)WorkbookP=parse_workbook(Workbook.content,options,!!Workbook.find);else throw new Error("Cannot find Workbook stream")}if(cfb.find)parse_props(cfb);var props={};for(var y in cfb.Summary)props[y]=cfb.Summary[y];for(y in cfb.DocSummary)props[y]=cfb.DocSummary[y];WorkbookP.Props=WorkbookP.Custprops=props;if(options.bookFiles)WorkbookP.cfb=cfb;WorkbookP.CompObjP=CompObjP;return WorkbookP}function parse_props(cfb){var DSI=cfb.find("!DocumentSummaryInformation");if(DSI)try{cfb.DocSummary=parse_PropertySetStream(DSI,DocSummaryPIDDSI)}catch(e){}var SI=cfb.find("!SummaryInformation");if(SI)try{cfb.Summary=parse_PropertySetStream(SI,SummaryPIDSI)}catch(e){}}var XLSBRecordEnum={0:{n:"BrtRowHdr",f:parse_BrtRowHdr},1:{n:"BrtCellBlank",f:parse_BrtCellBlank},2:{n:"BrtCellRk",f:parse_BrtCellRk},3:{n:"BrtCellError",f:parse_BrtCellError},4:{n:"BrtCellBool",f:parse_BrtCellBool},5:{n:"BrtCellReal",f:parse_BrtCellReal},6:{n:"BrtCellSt",f:parse_BrtCellSt},7:{n:"BrtCellIsst",f:parse_BrtCellIsst},8:{n:"BrtFmlaString",f:parse_BrtFmlaString},9:{n:"BrtFmlaNum",f:parse_BrtFmlaNum},10:{n:"BrtFmlaBool",f:parse_BrtFmlaBool},11:{n:"BrtFmlaError",f:parse_BrtFmlaError},16:{n:"BrtFRTArchID$",f:parse_BrtFRTArchID$},19:{n:"BrtSSTItem",f:parse_RichStr},20:{n:"BrtPCDIMissing",f:parsenoop},21:{n:"BrtPCDINumber",f:parsenoop},22:{n:"BrtPCDIBoolean",f:parsenoop},23:{n:"BrtPCDIError",f:parsenoop},24:{n:"BrtPCDIString",f:parsenoop},25:{n:"BrtPCDIDatetime",f:parsenoop},26:{n:"BrtPCDIIndex",f:parsenoop},27:{n:"BrtPCDIAMissing",f:parsenoop},28:{n:"BrtPCDIANumber",f:parsenoop},29:{n:"BrtPCDIABoolean",f:parsenoop},30:{n:"BrtPCDIAError",f:parsenoop},31:{n:"BrtPCDIAString",f:parsenoop},32:{n:"BrtPCDIADatetime",f:parsenoop},33:{n:"BrtPCRRecord",f:parsenoop},34:{n:"BrtPCRRecordDt",f:parsenoop},35:{n:"BrtFRTBegin",f:parsenoop},36:{n:"BrtFRTEnd",f:parsenoop},37:{n:"BrtACBegin",f:parsenoop},38:{n:"BrtACEnd",f:parsenoop},39:{n:"BrtName",f:parsenoop},40:{n:"BrtIndexRowBlock",f:parsenoop},42:{n:"BrtIndexBlock",f:parsenoop},43:{n:"BrtFont",f:parse_BrtFont},44:{n:"BrtFmt",f:parse_BrtFmt},45:{n:"BrtFill",f:parsenoop},46:{n:"BrtBorder",f:parsenoop},47:{n:"BrtXF",f:parse_BrtXF},48:{n:"BrtStyle",f:parsenoop},49:{n:"BrtCellMeta",f:parsenoop},50:{n:"BrtValueMeta",f:parsenoop},51:{n:"BrtMdb",f:parsenoop},52:{n:"BrtBeginFmd",f:parsenoop},53:{n:"BrtEndFmd",f:parsenoop},54:{n:"BrtBeginMdx",f:parsenoop},55:{n:"BrtEndMdx",f:parsenoop},56:{n:"BrtBeginMdxTuple",f:parsenoop},57:{n:"BrtEndMdxTuple",f:parsenoop},58:{n:"BrtMdxMbrIstr",f:parsenoop},59:{n:"BrtStr",f:parsenoop},60:{n:"BrtColInfo",f:parsenoop},62:{n:"BrtCellRString",f:parsenoop},63:{n:"BrtCalcChainItem$",f:parse_BrtCalcChainItem$},64:{n:"BrtDVal",f:parsenoop},65:{n:"BrtSxvcellNum",f:parsenoop},66:{n:"BrtSxvcellStr",f:parsenoop},67:{n:"BrtSxvcellBool",f:parsenoop},68:{n:"BrtSxvcellErr",f:parsenoop},69:{n:"BrtSxvcellDate",f:parsenoop},70:{n:"BrtSxvcellNil",f:parsenoop},128:{n:"BrtFileVersion",f:parsenoop},129:{n:"BrtBeginSheet",f:parsenoop},130:{n:"BrtEndSheet",f:parsenoop},131:{n:"BrtBeginBook",f:parsenoop,p:0},132:{n:"BrtEndBook",f:parsenoop},133:{n:"BrtBeginWsViews",f:parsenoop},134:{n:"BrtEndWsViews",f:parsenoop},135:{n:"BrtBeginBookViews",f:parsenoop},136:{n:"BrtEndBookViews",f:parsenoop},137:{n:"BrtBeginWsView",f:parsenoop},138:{n:"BrtEndWsView",f:parsenoop},139:{n:"BrtBeginCsViews",f:parsenoop},140:{n:"BrtEndCsViews",f:parsenoop},141:{n:"BrtBeginCsView",f:parsenoop},142:{n:"BrtEndCsView",f:parsenoop},143:{n:"BrtBeginBundleShs",f:parsenoop},144:{n:"BrtEndBundleShs",f:parsenoop},145:{n:"BrtBeginSheetData",f:parsenoop},146:{n:"BrtEndSheetData",f:parsenoop},147:{n:"BrtWsProp",f:parse_BrtWsProp},148:{n:"BrtWsDim",f:parse_BrtWsDim,p:16},151:{n:"BrtPane",f:parsenoop},152:{n:"BrtSel",f:parsenoop},153:{n:"BrtWbProp",f:parse_BrtWbProp},154:{n:"BrtWbFactoid",f:parsenoop},155:{n:"BrtFileRecover",f:parsenoop},156:{n:"BrtBundleSh",f:parse_BrtBundleSh},157:{n:"BrtCalcProp",f:parsenoop},158:{n:"BrtBookView",f:parsenoop},159:{n:"BrtBeginSst",f:parse_BrtBeginSst},160:{n:"BrtEndSst",f:parsenoop},161:{n:"BrtBeginAFilter",f:parsenoop},162:{n:"BrtEndAFilter",f:parsenoop},163:{n:"BrtBeginFilterColumn",f:parsenoop},164:{n:"BrtEndFilterColumn",f:parsenoop},165:{n:"BrtBeginFilters",f:parsenoop},166:{n:"BrtEndFilters",f:parsenoop},167:{n:"BrtFilter",f:parsenoop},168:{n:"BrtColorFilter",f:parsenoop},169:{n:"BrtIconFilter",f:parsenoop},170:{n:"BrtTop10Filter",f:parsenoop},171:{n:"BrtDynamicFilter",f:parsenoop},172:{n:"BrtBeginCustomFilters",f:parsenoop},173:{n:"BrtEndCustomFilters",f:parsenoop},174:{n:"BrtCustomFilter",f:parsenoop},175:{n:"BrtAFilterDateGroupItem",f:parsenoop},176:{n:"BrtMergeCell",f:parse_BrtMergeCell},177:{n:"BrtBeginMergeCells",f:parsenoop},178:{n:"BrtEndMergeCells",f:parsenoop},179:{n:"BrtBeginPivotCacheDef",f:parsenoop},180:{n:"BrtEndPivotCacheDef",f:parsenoop},181:{n:"BrtBeginPCDFields",f:parsenoop},182:{n:"BrtEndPCDFields",f:parsenoop},183:{n:"BrtBeginPCDField",f:parsenoop},184:{n:"BrtEndPCDField",f:parsenoop},185:{n:"BrtBeginPCDSource",f:parsenoop},186:{n:"BrtEndPCDSource",f:parsenoop},187:{n:"BrtBeginPCDSRange",f:parsenoop},188:{n:"BrtEndPCDSRange",f:parsenoop},189:{n:"BrtBeginPCDFAtbl",f:parsenoop},190:{n:"BrtEndPCDFAtbl",f:parsenoop},191:{n:"BrtBeginPCDIRun",f:parsenoop},192:{n:"BrtEndPCDIRun",f:parsenoop},193:{n:"BrtBeginPivotCacheRecords",f:parsenoop},194:{n:"BrtEndPivotCacheRecords",f:parsenoop},195:{n:"BrtBeginPCDHierarchies",f:parsenoop},196:{n:"BrtEndPCDHierarchies",f:parsenoop},197:{n:"BrtBeginPCDHierarchy",f:parsenoop},198:{n:"BrtEndPCDHierarchy",f:parsenoop},199:{n:"BrtBeginPCDHFieldsUsage",f:parsenoop},200:{n:"BrtEndPCDHFieldsUsage",f:parsenoop},201:{n:"BrtBeginExtConnection",f:parsenoop},202:{n:"BrtEndExtConnection",f:parsenoop},203:{n:"BrtBeginECDbProps",f:parsenoop},204:{n:"BrtEndECDbProps",f:parsenoop},205:{n:"BrtBeginECOlapProps",f:parsenoop},206:{n:"BrtEndECOlapProps",f:parsenoop},207:{n:"BrtBeginPCDSConsol",f:parsenoop},208:{n:"BrtEndPCDSConsol",f:parsenoop},209:{n:"BrtBeginPCDSCPages",f:parsenoop},210:{n:"BrtEndPCDSCPages",f:parsenoop},211:{n:"BrtBeginPCDSCPage",f:parsenoop},212:{n:"BrtEndPCDSCPage",f:parsenoop},213:{n:"BrtBeginPCDSCPItem",f:parsenoop},214:{n:"BrtEndPCDSCPItem",f:parsenoop},215:{n:"BrtBeginPCDSCSets",f:parsenoop},216:{n:"BrtEndPCDSCSets",f:parsenoop},217:{n:"BrtBeginPCDSCSet",f:parsenoop},218:{n:"BrtEndPCDSCSet",f:parsenoop},219:{n:"BrtBeginPCDFGroup",f:parsenoop},220:{n:"BrtEndPCDFGroup",f:parsenoop},221:{n:"BrtBeginPCDFGItems",f:parsenoop},222:{n:"BrtEndPCDFGItems",f:parsenoop},223:{n:"BrtBeginPCDFGRange",f:parsenoop},224:{n:"BrtEndPCDFGRange",f:parsenoop},225:{n:"BrtBeginPCDFGDiscrete",f:parsenoop},226:{n:"BrtEndPCDFGDiscrete",f:parsenoop},227:{n:"BrtBeginPCDSDTupleCache",f:parsenoop},228:{n:"BrtEndPCDSDTupleCache",f:parsenoop},229:{n:"BrtBeginPCDSDTCEntries",f:parsenoop},230:{n:"BrtEndPCDSDTCEntries",f:parsenoop},231:{n:"BrtBeginPCDSDTCEMembers",f:parsenoop},232:{n:"BrtEndPCDSDTCEMembers",f:parsenoop},233:{n:"BrtBeginPCDSDTCEMember",f:parsenoop},234:{n:"BrtEndPCDSDTCEMember",f:parsenoop},235:{n:"BrtBeginPCDSDTCQueries",f:parsenoop},236:{n:"BrtEndPCDSDTCQueries",f:parsenoop},237:{n:"BrtBeginPCDSDTCQuery",f:parsenoop},238:{n:"BrtEndPCDSDTCQuery",f:parsenoop},239:{n:"BrtBeginPCDSDTCSets",f:parsenoop},240:{n:"BrtEndPCDSDTCSets",f:parsenoop},241:{n:"BrtBeginPCDSDTCSet",f:parsenoop},242:{n:"BrtEndPCDSDTCSet",f:parsenoop},243:{n:"BrtBeginPCDCalcItems",f:parsenoop},244:{n:"BrtEndPCDCalcItems",f:parsenoop},245:{n:"BrtBeginPCDCalcItem",f:parsenoop},246:{n:"BrtEndPCDCalcItem",f:parsenoop},247:{n:"BrtBeginPRule",f:parsenoop},248:{n:"BrtEndPRule",f:parsenoop},249:{n:"BrtBeginPRFilters",f:parsenoop},250:{n:"BrtEndPRFilters",f:parsenoop},251:{n:"BrtBeginPRFilter",f:parsenoop},252:{n:"BrtEndPRFilter",f:parsenoop},253:{n:"BrtBeginPNames",f:parsenoop},254:{n:"BrtEndPNames",f:parsenoop},255:{n:"BrtBeginPName",f:parsenoop},256:{n:"BrtEndPName",f:parsenoop},257:{n:"BrtBeginPNPairs",f:parsenoop},258:{n:"BrtEndPNPairs",f:parsenoop},259:{n:"BrtBeginPNPair",f:parsenoop},260:{n:"BrtEndPNPair",f:parsenoop},261:{n:"BrtBeginECWebProps",f:parsenoop},262:{n:"BrtEndECWebProps",f:parsenoop},263:{n:"BrtBeginEcWpTables",f:parsenoop},264:{n:"BrtEndECWPTables",f:parsenoop},265:{n:"BrtBeginECParams",f:parsenoop},266:{n:"BrtEndECParams",f:parsenoop},267:{n:"BrtBeginECParam",f:parsenoop},268:{n:"BrtEndECParam",f:parsenoop},269:{n:"BrtBeginPCDKPIs",f:parsenoop},270:{n:"BrtEndPCDKPIs",f:parsenoop},271:{n:"BrtBeginPCDKPI",f:parsenoop},272:{n:"BrtEndPCDKPI",f:parsenoop},273:{n:"BrtBeginDims",f:parsenoop},274:{n:"BrtEndDims",f:parsenoop},275:{n:"BrtBeginDim",f:parsenoop},276:{n:"BrtEndDim",f:parsenoop},277:{n:"BrtIndexPartEnd",f:parsenoop},278:{n:"BrtBeginStyleSheet",f:parsenoop},279:{n:"BrtEndStyleSheet",f:parsenoop},280:{n:"BrtBeginSXView",f:parsenoop},281:{n:"BrtEndSXVI",f:parsenoop},282:{n:"BrtBeginSXVI",f:parsenoop},283:{n:"BrtBeginSXVIs",f:parsenoop},284:{n:"BrtEndSXVIs",f:parsenoop},285:{n:"BrtBeginSXVD",f:parsenoop},286:{n:"BrtEndSXVD",f:parsenoop},287:{n:"BrtBeginSXVDs",f:parsenoop},288:{n:"BrtEndSXVDs",f:parsenoop},289:{n:"BrtBeginSXPI",f:parsenoop},290:{n:"BrtEndSXPI",f:parsenoop},291:{n:"BrtBeginSXPIs",f:parsenoop},292:{n:"BrtEndSXPIs",f:parsenoop},293:{n:"BrtBeginSXDI",f:parsenoop},294:{n:"BrtEndSXDI",f:parsenoop},295:{n:"BrtBeginSXDIs",f:parsenoop},296:{n:"BrtEndSXDIs",f:parsenoop},297:{n:"BrtBeginSXLI",f:parsenoop},298:{n:"BrtEndSXLI",f:parsenoop},299:{n:"BrtBeginSXLIRws",f:parsenoop},300:{n:"BrtEndSXLIRws",f:parsenoop},301:{n:"BrtBeginSXLICols",f:parsenoop},302:{n:"BrtEndSXLICols",f:parsenoop},303:{n:"BrtBeginSXFormat",f:parsenoop},304:{n:"BrtEndSXFormat",f:parsenoop},305:{n:"BrtBeginSXFormats",f:parsenoop},306:{n:"BrtEndSxFormats",f:parsenoop},307:{n:"BrtBeginSxSelect",f:parsenoop},308:{n:"BrtEndSxSelect",f:parsenoop},309:{n:"BrtBeginISXVDRws",f:parsenoop},310:{n:"BrtEndISXVDRws",f:parsenoop},311:{n:"BrtBeginISXVDCols",f:parsenoop},312:{n:"BrtEndISXVDCols",f:parsenoop},313:{n:"BrtEndSXLocation",f:parsenoop},314:{n:"BrtBeginSXLocation",f:parsenoop},315:{n:"BrtEndSXView",f:parsenoop},316:{n:"BrtBeginSXTHs",f:parsenoop},317:{n:"BrtEndSXTHs",f:parsenoop},318:{n:"BrtBeginSXTH",f:parsenoop},319:{n:"BrtEndSXTH",f:parsenoop},320:{n:"BrtBeginISXTHRws",f:parsenoop},321:{n:"BrtEndISXTHRws",f:parsenoop},322:{n:"BrtBeginISXTHCols",f:parsenoop},323:{n:"BrtEndISXTHCols",f:parsenoop},324:{n:"BrtBeginSXTDMPS",f:parsenoop},325:{n:"BrtEndSXTDMPs",f:parsenoop},326:{n:"BrtBeginSXTDMP",f:parsenoop},327:{n:"BrtEndSXTDMP",f:parsenoop},328:{n:"BrtBeginSXTHItems",f:parsenoop},329:{n:"BrtEndSXTHItems",f:parsenoop},330:{n:"BrtBeginSXTHItem",f:parsenoop},331:{n:"BrtEndSXTHItem",f:parsenoop},332:{n:"BrtBeginMetadata",f:parsenoop},333:{n:"BrtEndMetadata",f:parsenoop},334:{n:"BrtBeginEsmdtinfo",f:parsenoop},335:{n:"BrtMdtinfo",f:parsenoop},336:{n:"BrtEndEsmdtinfo",f:parsenoop},337:{n:"BrtBeginEsmdb",f:parsenoop},338:{n:"BrtEndEsmdb",f:parsenoop},339:{n:"BrtBeginEsfmd",f:parsenoop},340:{n:"BrtEndEsfmd",f:parsenoop},341:{n:"BrtBeginSingleCells",f:parsenoop},342:{n:"BrtEndSingleCells",f:parsenoop},343:{n:"BrtBeginList",f:parsenoop},344:{n:"BrtEndList",f:parsenoop},345:{n:"BrtBeginListCols",f:parsenoop},346:{n:"BrtEndListCols",f:parsenoop},347:{n:"BrtBeginListCol",f:parsenoop},348:{n:"BrtEndListCol",f:parsenoop},349:{n:"BrtBeginListXmlCPr",f:parsenoop},350:{n:"BrtEndListXmlCPr",f:parsenoop},351:{n:"BrtListCCFmla",f:parsenoop},352:{n:"BrtListTrFmla",f:parsenoop},353:{n:"BrtBeginExternals",f:parsenoop},354:{n:"BrtEndExternals",f:parsenoop},355:{n:"BrtSupBookSrc",f:parsenoop},357:{n:"BrtSupSelf",f:parsenoop},358:{n:"BrtSupSame",f:parsenoop},359:{n:"BrtSupTabs",f:parsenoop},360:{n:"BrtBeginSupBook",f:parsenoop},361:{n:"BrtPlaceholderName",f:parsenoop},362:{n:"BrtExternSheet",f:parsenoop},363:{n:"BrtExternTableStart",f:parsenoop},364:{n:"BrtExternTableEnd",f:parsenoop},366:{n:"BrtExternRowHdr",f:parsenoop},367:{n:"BrtExternCellBlank",f:parsenoop},368:{n:"BrtExternCellReal",f:parsenoop},369:{n:"BrtExternCellBool",f:parsenoop},370:{n:"BrtExternCellError",f:parsenoop},371:{n:"BrtExternCellString",f:parsenoop},372:{n:"BrtBeginEsmdx",f:parsenoop},373:{n:"BrtEndEsmdx",f:parsenoop},374:{n:"BrtBeginMdxSet",f:parsenoop},375:{n:"BrtEndMdxSet",f:parsenoop},376:{n:"BrtBeginMdxMbrProp",f:parsenoop},377:{n:"BrtEndMdxMbrProp",f:parsenoop},378:{n:"BrtBeginMdxKPI",f:parsenoop},379:{n:"BrtEndMdxKPI",f:parsenoop},380:{n:"BrtBeginEsstr",f:parsenoop},381:{n:"BrtEndEsstr",f:parsenoop},382:{n:"BrtBeginPRFItem",f:parsenoop},383:{n:"BrtEndPRFItem",f:parsenoop},384:{n:"BrtBeginPivotCacheIDs",f:parsenoop},385:{n:"BrtEndPivotCacheIDs",f:parsenoop},386:{n:"BrtBeginPivotCacheID",f:parsenoop},387:{n:"BrtEndPivotCacheID",f:parsenoop},388:{n:"BrtBeginISXVIs",f:parsenoop},389:{n:"BrtEndISXVIs",f:parsenoop},390:{n:"BrtBeginColInfos",f:parsenoop},391:{n:"BrtEndColInfos",f:parsenoop},392:{n:"BrtBeginRwBrk",f:parsenoop},393:{n:"BrtEndRwBrk",f:parsenoop},394:{n:"BrtBeginColBrk",f:parsenoop},395:{n:"BrtEndColBrk",f:parsenoop},396:{n:"BrtBrk",f:parsenoop},397:{n:"BrtUserBookView",f:parsenoop},398:{n:"BrtInfo",f:parsenoop},399:{n:"BrtCUsr",f:parsenoop},400:{n:"BrtUsr",f:parsenoop},401:{n:"BrtBeginUsers",f:parsenoop},403:{n:"BrtEOF",f:parsenoop},404:{n:"BrtUCR",f:parsenoop},405:{n:"BrtRRInsDel",f:parsenoop},406:{n:"BrtRREndInsDel",f:parsenoop},407:{n:"BrtRRMove",f:parsenoop},408:{n:"BrtRREndMove",f:parsenoop},409:{n:"BrtRRChgCell",f:parsenoop},410:{n:"BrtRREndChgCell",f:parsenoop},411:{n:"BrtRRHeader",f:parsenoop},412:{n:"BrtRRUserView",f:parsenoop},413:{n:"BrtRRRenSheet",f:parsenoop},414:{n:"BrtRRInsertSh",f:parsenoop},415:{n:"BrtRRDefName",f:parsenoop},416:{n:"BrtRRNote",f:parsenoop},417:{n:"BrtRRConflict",f:parsenoop},418:{n:"BrtRRTQSIF",f:parsenoop},419:{n:"BrtRRFormat",f:parsenoop},420:{n:"BrtRREndFormat",f:parsenoop},421:{n:"BrtRRAutoFmt",f:parsenoop},422:{n:"BrtBeginUserShViews",f:parsenoop},423:{n:"BrtBeginUserShView",f:parsenoop},424:{n:"BrtEndUserShView",f:parsenoop},425:{n:"BrtEndUserShViews",f:parsenoop},426:{n:"BrtArrFmla",f:parsenoop},427:{n:"BrtShrFmla",f:parsenoop},428:{n:"BrtTable",f:parsenoop},429:{n:"BrtBeginExtConnections",f:parsenoop},430:{n:"BrtEndExtConnections",f:parsenoop},431:{n:"BrtBeginPCDCalcMems",f:parsenoop},432:{n:"BrtEndPCDCalcMems",f:parsenoop},433:{n:"BrtBeginPCDCalcMem",f:parsenoop},434:{n:"BrtEndPCDCalcMem",f:parsenoop},435:{n:"BrtBeginPCDHGLevels",f:parsenoop},436:{n:"BrtEndPCDHGLevels",f:parsenoop},437:{n:"BrtBeginPCDHGLevel",f:parsenoop},438:{n:"BrtEndPCDHGLevel",f:parsenoop},439:{n:"BrtBeginPCDHGLGroups",f:parsenoop},440:{n:"BrtEndPCDHGLGroups",f:parsenoop},441:{n:"BrtBeginPCDHGLGroup",f:parsenoop},442:{n:"BrtEndPCDHGLGroup",f:parsenoop},443:{n:"BrtBeginPCDHGLGMembers",f:parsenoop},444:{n:"BrtEndPCDHGLGMembers",f:parsenoop},445:{n:"BrtBeginPCDHGLGMember",f:parsenoop},446:{n:"BrtEndPCDHGLGMember",f:parsenoop},447:{n:"BrtBeginQSI",f:parsenoop},448:{n:"BrtEndQSI",f:parsenoop},449:{n:"BrtBeginQSIR",f:parsenoop},450:{n:"BrtEndQSIR",f:parsenoop},451:{n:"BrtBeginDeletedNames",f:parsenoop},452:{n:"BrtEndDeletedNames",f:parsenoop},453:{n:"BrtBeginDeletedName",f:parsenoop},454:{n:"BrtEndDeletedName",f:parsenoop},455:{n:"BrtBeginQSIFs",f:parsenoop},456:{n:"BrtEndQSIFs",f:parsenoop},457:{n:"BrtBeginQSIF",f:parsenoop},458:{n:"BrtEndQSIF",f:parsenoop},459:{n:"BrtBeginAutoSortScope",f:parsenoop},460:{n:"BrtEndAutoSortScope",f:parsenoop},461:{n:"BrtBeginConditionalFormatting",f:parsenoop},462:{n:"BrtEndConditionalFormatting",f:parsenoop},463:{n:"BrtBeginCFRule",f:parsenoop},464:{n:"BrtEndCFRule",f:parsenoop},465:{n:"BrtBeginIconSet",f:parsenoop},466:{n:"BrtEndIconSet",f:parsenoop},467:{n:"BrtBeginDatabar",f:parsenoop},468:{n:"BrtEndDatabar",f:parsenoop},469:{n:"BrtBeginColorScale",f:parsenoop},470:{n:"BrtEndColorScale",f:parsenoop},471:{n:"BrtCFVO",f:parsenoop},472:{n:"BrtExternValueMeta",f:parsenoop},473:{n:"BrtBeginColorPalette",f:parsenoop},474:{n:"BrtEndColorPalette",f:parsenoop},475:{n:"BrtIndexedColor",f:parsenoop},476:{n:"BrtMargins",f:parsenoop},477:{n:"BrtPrintOptions",f:parsenoop},478:{n:"BrtPageSetup",f:parsenoop},479:{n:"BrtBeginHeaderFooter",f:parsenoop},480:{n:"BrtEndHeaderFooter",f:parsenoop},481:{n:"BrtBeginSXCrtFormat",f:parsenoop},482:{n:"BrtEndSXCrtFormat",f:parsenoop},483:{n:"BrtBeginSXCrtFormats",f:parsenoop},484:{n:"BrtEndSXCrtFormats",f:parsenoop},485:{n:"BrtWsFmtInfo",f:parsenoop},486:{n:"BrtBeginMgs",f:parsenoop},487:{n:"BrtEndMGs",f:parsenoop},488:{n:"BrtBeginMGMaps",f:parsenoop},489:{n:"BrtEndMGMaps",f:parsenoop},490:{n:"BrtBeginMG",f:parsenoop},491:{n:"BrtEndMG",f:parsenoop},492:{n:"BrtBeginMap",f:parsenoop},493:{n:"BrtEndMap",f:parsenoop},494:{n:"BrtHLink",f:parse_BrtHLink},495:{n:"BrtBeginDCon",f:parsenoop},496:{n:"BrtEndDCon",f:parsenoop},497:{n:"BrtBeginDRefs",f:parsenoop},498:{n:"BrtEndDRefs",f:parsenoop},499:{n:"BrtDRef",f:parsenoop},500:{n:"BrtBeginScenMan",f:parsenoop},501:{n:"BrtEndScenMan",f:parsenoop},502:{n:"BrtBeginSct",f:parsenoop},503:{n:"BrtEndSct",f:parsenoop},504:{n:"BrtSlc",f:parsenoop},505:{n:"BrtBeginDXFs",f:parsenoop},506:{n:"BrtEndDXFs",f:parsenoop},507:{n:"BrtDXF",f:parsenoop},508:{n:"BrtBeginTableStyles",f:parsenoop},509:{n:"BrtEndTableStyles",f:parsenoop},510:{n:"BrtBeginTableStyle",f:parsenoop},511:{n:"BrtEndTableStyle",f:parsenoop},512:{n:"BrtTableStyleElement",f:parsenoop},513:{n:"BrtTableStyleClient",f:parsenoop},514:{n:"BrtBeginVolDeps",f:parsenoop},515:{n:"BrtEndVolDeps",f:parsenoop},516:{n:"BrtBeginVolType",f:parsenoop},517:{n:"BrtEndVolType",f:parsenoop},518:{n:"BrtBeginVolMain",f:parsenoop},519:{n:"BrtEndVolMain",f:parsenoop},520:{n:"BrtBeginVolTopic",f:parsenoop},521:{n:"BrtEndVolTopic",f:parsenoop},522:{n:"BrtVolSubtopic",f:parsenoop},523:{n:"BrtVolRef",f:parsenoop},524:{n:"BrtVolNum",f:parsenoop},525:{n:"BrtVolErr",f:parsenoop},526:{n:"BrtVolStr",f:parsenoop},527:{n:"BrtVolBool",f:parsenoop},528:{n:"BrtBeginCalcChain$",f:parsenoop},529:{n:"BrtEndCalcChain$",f:parsenoop},530:{n:"BrtBeginSortState",f:parsenoop},531:{n:"BrtEndSortState",f:parsenoop},532:{n:"BrtBeginSortCond",f:parsenoop},533:{n:"BrtEndSortCond",f:parsenoop},534:{n:"BrtBookProtection",f:parsenoop},535:{n:"BrtSheetProtection",f:parsenoop},536:{n:"BrtRangeProtection",f:parsenoop},537:{n:"BrtPhoneticInfo",f:parsenoop},538:{n:"BrtBeginECTxtWiz",f:parsenoop},539:{n:"BrtEndECTxtWiz",f:parsenoop},540:{n:"BrtBeginECTWFldInfoLst",f:parsenoop},541:{n:"BrtEndECTWFldInfoLst",f:parsenoop},542:{n:"BrtBeginECTwFldInfo",f:parsenoop},548:{n:"BrtFileSharing",f:parsenoop},549:{n:"BrtOleSize",f:parsenoop},550:{n:"BrtDrawing",f:parsenoop},551:{n:"BrtLegacyDrawing",f:parsenoop},552:{n:"BrtLegacyDrawingHF",f:parsenoop},553:{n:"BrtWebOpt",f:parsenoop},554:{n:"BrtBeginWebPubItems",f:parsenoop},555:{n:"BrtEndWebPubItems",f:parsenoop},556:{n:"BrtBeginWebPubItem",f:parsenoop},557:{n:"BrtEndWebPubItem",f:parsenoop},558:{n:"BrtBeginSXCondFmt",f:parsenoop},559:{n:"BrtEndSXCondFmt",f:parsenoop},560:{n:"BrtBeginSXCondFmts",f:parsenoop},561:{n:"BrtEndSXCondFmts",f:parsenoop},562:{n:"BrtBkHim",f:parsenoop},564:{n:"BrtColor",f:parsenoop},565:{n:"BrtBeginIndexedColors",f:parsenoop},566:{n:"BrtEndIndexedColors",f:parsenoop},569:{n:"BrtBeginMRUColors",f:parsenoop},570:{n:"BrtEndMRUColors",f:parsenoop},572:{n:"BrtMRUColor",f:parsenoop},573:{n:"BrtBeginDVals",f:parsenoop},574:{n:"BrtEndDVals",f:parsenoop},577:{n:"BrtSupNameStart",f:parsenoop},578:{n:"BrtSupNameValueStart",f:parsenoop},579:{n:"BrtSupNameValueEnd",f:parsenoop},580:{n:"BrtSupNameNum",f:parsenoop},581:{n:"BrtSupNameErr",f:parsenoop},582:{n:"BrtSupNameSt",f:parsenoop},583:{n:"BrtSupNameNil",f:parsenoop},584:{n:"BrtSupNameBool",f:parsenoop},585:{n:"BrtSupNameFmla",f:parsenoop},586:{n:"BrtSupNameBits",f:parsenoop},587:{n:"BrtSupNameEnd",f:parsenoop},588:{n:"BrtEndSupBook",f:parsenoop},589:{n:"BrtCellSmartTagProperty",f:parsenoop},590:{n:"BrtBeginCellSmartTag",f:parsenoop},591:{n:"BrtEndCellSmartTag",f:parsenoop},592:{n:"BrtBeginCellSmartTags",f:parsenoop},593:{n:"BrtEndCellSmartTags",f:parsenoop},594:{n:"BrtBeginSmartTags",f:parsenoop},595:{n:"BrtEndSmartTags",f:parsenoop},596:{n:"BrtSmartTagType",f:parsenoop},597:{n:"BrtBeginSmartTagTypes",f:parsenoop},598:{n:"BrtEndSmartTagTypes",f:parsenoop},599:{n:"BrtBeginSXFilters",f:parsenoop},600:{n:"BrtEndSXFilters",f:parsenoop},601:{n:"BrtBeginSXFILTER",f:parsenoop},602:{n:"BrtEndSXFilter",f:parsenoop},603:{n:"BrtBeginFills",f:parsenoop},604:{n:"BrtEndFills",f:parsenoop},605:{n:"BrtBeginCellWatches",f:parsenoop},606:{n:"BrtEndCellWatches",f:parsenoop},607:{n:"BrtCellWatch",f:parsenoop},608:{n:"BrtBeginCRErrs",f:parsenoop},609:{n:"BrtEndCRErrs",f:parsenoop},610:{n:"BrtCrashRecErr",f:parsenoop},611:{n:"BrtBeginFonts",f:parsenoop},612:{n:"BrtEndFonts",f:parsenoop},613:{n:"BrtBeginBorders",f:parsenoop},614:{n:"BrtEndBorders",f:parsenoop},615:{n:"BrtBeginFmts",f:parsenoop},616:{n:"BrtEndFmts",f:parsenoop},617:{n:"BrtBeginCellXFs",f:parsenoop},618:{n:"BrtEndCellXFs",f:parsenoop},619:{n:"BrtBeginStyles",f:parsenoop},620:{n:"BrtEndStyles",f:parsenoop},625:{n:"BrtBigName",f:parsenoop},626:{n:"BrtBeginCellStyleXFs",f:parsenoop},627:{n:"BrtEndCellStyleXFs",f:parsenoop},628:{n:"BrtBeginComments",f:parsenoop},629:{n:"BrtEndComments",f:parsenoop},630:{n:"BrtBeginCommentAuthors",f:parsenoop},631:{n:"BrtEndCommentAuthors",f:parsenoop},632:{n:"BrtCommentAuthor",f:parse_BrtCommentAuthor},633:{n:"BrtBeginCommentList",f:parsenoop},634:{n:"BrtEndCommentList",f:parsenoop},635:{n:"BrtBeginComment",f:parse_BrtBeginComment},636:{n:"BrtEndComment",f:parsenoop},637:{n:"BrtCommentText",f:parse_BrtCommentText},638:{n:"BrtBeginOleObjects",f:parsenoop},639:{n:"BrtOleObject",f:parsenoop},640:{n:"BrtEndOleObjects",f:parsenoop},641:{n:"BrtBeginSxrules",f:parsenoop},642:{n:"BrtEndSxRules",f:parsenoop},643:{n:"BrtBeginActiveXControls",f:parsenoop},644:{n:"BrtActiveX",f:parsenoop},645:{n:"BrtEndActiveXControls",f:parsenoop},646:{n:"BrtBeginPCDSDTCEMembersSortBy",f:parsenoop},648:{n:"BrtBeginCellIgnoreECs",f:parsenoop},649:{n:"BrtCellIgnoreEC",f:parsenoop},650:{n:"BrtEndCellIgnoreECs",f:parsenoop},651:{n:"BrtCsProp",f:parsenoop},652:{n:"BrtCsPageSetup",f:parsenoop},653:{n:"BrtBeginUserCsViews",f:parsenoop},654:{n:"BrtEndUserCsViews",f:parsenoop},655:{n:"BrtBeginUserCsView",f:parsenoop},656:{n:"BrtEndUserCsView",f:parsenoop},657:{n:"BrtBeginPcdSFCIEntries",f:parsenoop},658:{n:"BrtEndPCDSFCIEntries",f:parsenoop},659:{n:"BrtPCDSFCIEntry",f:parsenoop},660:{n:"BrtBeginListParts",f:parsenoop},661:{n:"BrtListPart",f:parsenoop},662:{n:"BrtEndListParts",f:parsenoop},663:{n:"BrtSheetCalcProp",f:parsenoop},664:{n:"BrtBeginFnGroup",f:parsenoop},665:{n:"BrtFnGroup",f:parsenoop},666:{n:"BrtEndFnGroup",f:parsenoop},667:{n:"BrtSupAddin",f:parsenoop},668:{n:"BrtSXTDMPOrder",f:parsenoop},669:{n:"BrtCsProtection",f:parsenoop},671:{n:"BrtBeginWsSortMap",f:parsenoop},672:{n:"BrtEndWsSortMap",f:parsenoop},673:{n:"BrtBeginRRSort",f:parsenoop},674:{n:"BrtEndRRSort",f:parsenoop},675:{n:"BrtRRSortItem",f:parsenoop},676:{n:"BrtFileSharingIso",f:parsenoop},677:{n:"BrtBookProtectionIso",f:parsenoop},678:{n:"BrtSheetProtectionIso",f:parsenoop},679:{n:"BrtCsProtectionIso",f:parsenoop},680:{n:"BrtRangeProtectionIso",f:parsenoop},1024:{n:"BrtRwDescent",f:parsenoop},1025:{n:"BrtKnownFonts",f:parsenoop},1026:{n:"BrtBeginSXTupleSet",f:parsenoop},1027:{n:"BrtEndSXTupleSet",f:parsenoop},1028:{n:"BrtBeginSXTupleSetHeader",f:parsenoop},1029:{n:"BrtEndSXTupleSetHeader",f:parsenoop},1030:{n:"BrtSXTupleSetHeaderItem",f:parsenoop},1031:{n:"BrtBeginSXTupleSetData",f:parsenoop},1032:{n:"BrtEndSXTupleSetData",f:parsenoop},1033:{n:"BrtBeginSXTupleSetRow",f:parsenoop},1034:{n:"BrtEndSXTupleSetRow",f:parsenoop},1035:{n:"BrtSXTupleSetRowItem",f:parsenoop},1036:{n:"BrtNameExt",f:parsenoop},1037:{n:"BrtPCDH14",f:parsenoop},1038:{n:"BrtBeginPCDCalcMem14",f:parsenoop},1039:{n:"BrtEndPCDCalcMem14",f:parsenoop},1040:{n:"BrtSXTH14",f:parsenoop},1041:{n:"BrtBeginSparklineGroup",f:parsenoop},1042:{n:"BrtEndSparklineGroup",f:parsenoop},1043:{n:"BrtSparkline",f:parsenoop},1044:{n:"BrtSXDI14",f:parsenoop},1045:{n:"BrtWsFmtInfoEx14",f:parsenoop},1046:{n:"BrtBeginConditionalFormatting14",f:parsenoop},1047:{n:"BrtEndConditionalFormatting14",f:parsenoop},1048:{n:"BrtBeginCFRule14",f:parsenoop},1049:{n:"BrtEndCFRule14",f:parsenoop},1050:{n:"BrtCFVO14",f:parsenoop},1051:{n:"BrtBeginDatabar14",f:parsenoop},1052:{n:"BrtBeginIconSet14",f:parsenoop},1053:{n:"BrtDVal14",f:parsenoop},1054:{n:"BrtBeginDVals14",f:parsenoop},1055:{n:"BrtColor14",f:parsenoop},1056:{n:"BrtBeginSparklines",f:parsenoop},1057:{n:"BrtEndSparklines",f:parsenoop},1058:{n:"BrtBeginSparklineGroups",f:parsenoop},1059:{n:"BrtEndSparklineGroups",f:parsenoop},1061:{n:"BrtSXVD14",f:parsenoop},1062:{n:"BrtBeginSxview14",f:parsenoop},1063:{n:"BrtEndSxview14",f:parsenoop},1066:{n:"BrtBeginPCD14",f:parsenoop},1067:{n:"BrtEndPCD14",f:parsenoop},1068:{n:"BrtBeginExtConn14",f:parsenoop},1069:{n:"BrtEndExtConn14",f:parsenoop},1070:{n:"BrtBeginSlicerCacheIDs",f:parsenoop},1071:{n:"BrtEndSlicerCacheIDs",f:parsenoop},1072:{n:"BrtBeginSlicerCacheID",f:parsenoop},1073:{n:"BrtEndSlicerCacheID",f:parsenoop},1075:{n:"BrtBeginSlicerCache",f:parsenoop},1076:{n:"BrtEndSlicerCache",f:parsenoop},1077:{n:"BrtBeginSlicerCacheDef",f:parsenoop},1078:{n:"BrtEndSlicerCacheDef",f:parsenoop},1079:{n:"BrtBeginSlicersEx",f:parsenoop},1080:{n:"BrtEndSlicersEx",f:parsenoop},1081:{n:"BrtBeginSlicerEx",f:parsenoop},1082:{n:"BrtEndSlicerEx",f:parsenoop},1083:{n:"BrtBeginSlicer",f:parsenoop},1084:{n:"BrtEndSlicer",f:parsenoop},1085:{n:"BrtSlicerCachePivotTables",f:parsenoop},1086:{n:"BrtBeginSlicerCacheOlapImpl",f:parsenoop},1087:{n:"BrtEndSlicerCacheOlapImpl",f:parsenoop},1088:{n:"BrtBeginSlicerCacheLevelsData",f:parsenoop},1089:{n:"BrtEndSlicerCacheLevelsData",f:parsenoop},1090:{n:"BrtBeginSlicerCacheLevelData",f:parsenoop},1091:{n:"BrtEndSlicerCacheLevelData",f:parsenoop},1092:{n:"BrtBeginSlicerCacheSiRanges",f:parsenoop},1093:{n:"BrtEndSlicerCacheSiRanges",f:parsenoop},1094:{n:"BrtBeginSlicerCacheSiRange",f:parsenoop},1095:{n:"BrtEndSlicerCacheSiRange",f:parsenoop},1096:{n:"BrtSlicerCacheOlapItem",f:parsenoop},1097:{n:"BrtBeginSlicerCacheSelections",f:parsenoop},1098:{n:"BrtSlicerCacheSelection",f:parsenoop},1099:{n:"BrtEndSlicerCacheSelections",f:parsenoop},1100:{n:"BrtBeginSlicerCacheNative",f:parsenoop},1101:{n:"BrtEndSlicerCacheNative",f:parsenoop},1102:{n:"BrtSlicerCacheNativeItem",f:parsenoop},1103:{n:"BrtRangeProtection14",f:parsenoop},1104:{n:"BrtRangeProtectionIso14",f:parsenoop},1105:{n:"BrtCellIgnoreEC14",f:parsenoop},1111:{n:"BrtList14",f:parsenoop},1112:{n:"BrtCFIcon",f:parsenoop},1113:{n:"BrtBeginSlicerCachesPivotCacheIDs",f:parsenoop},1114:{n:"BrtEndSlicerCachesPivotCacheIDs",f:parsenoop},1115:{n:"BrtBeginSlicers",f:parsenoop},1116:{n:"BrtEndSlicers",f:parsenoop},1117:{n:"BrtWbProp14",f:parsenoop},1118:{n:"BrtBeginSXEdit",f:parsenoop},1119:{n:"BrtEndSXEdit",f:parsenoop},1120:{n:"BrtBeginSXEdits",f:parsenoop},1121:{n:"BrtEndSXEdits",f:parsenoop},1122:{n:"BrtBeginSXChange",f:parsenoop},1123:{n:"BrtEndSXChange",f:parsenoop},1124:{n:"BrtBeginSXChanges",f:parsenoop},1125:{n:"BrtEndSXChanges",f:parsenoop},1126:{n:"BrtSXTupleItems",f:parsenoop},1128:{n:"BrtBeginSlicerStyle",f:parsenoop},1129:{n:"BrtEndSlicerStyle",f:parsenoop},1130:{n:"BrtSlicerStyleElement",f:parsenoop},1131:{n:"BrtBeginStyleSheetExt14",f:parsenoop},1132:{n:"BrtEndStyleSheetExt14",f:parsenoop},1133:{n:"BrtBeginSlicerCachesPivotCacheID",f:parsenoop},1134:{n:"BrtEndSlicerCachesPivotCacheID",f:parsenoop},1135:{n:"BrtBeginConditionalFormattings",f:parsenoop},1136:{n:"BrtEndConditionalFormattings",f:parsenoop},1137:{n:"BrtBeginPCDCalcMemExt",f:parsenoop},1138:{n:"BrtEndPCDCalcMemExt",f:parsenoop},1139:{n:"BrtBeginPCDCalcMemsExt",f:parsenoop},1140:{n:"BrtEndPCDCalcMemsExt",f:parsenoop},1141:{n:"BrtPCDField14",f:parsenoop},1142:{n:"BrtBeginSlicerStyles",f:parsenoop},1143:{n:"BrtEndSlicerStyles",f:parsenoop},1144:{n:"BrtBeginSlicerStyleElements",f:parsenoop},1145:{n:"BrtEndSlicerStyleElements",f:parsenoop},1146:{n:"BrtCFRuleExt",f:parsenoop},1147:{n:"BrtBeginSXCondFmt14",f:parsenoop},1148:{n:"BrtEndSXCondFmt14",f:parsenoop},1149:{n:"BrtBeginSXCondFmts14",f:parsenoop},1150:{n:"BrtEndSXCondFmts14",f:parsenoop},1152:{n:"BrtBeginSortCond14",f:parsenoop},1153:{n:"BrtEndSortCond14",f:parsenoop},1154:{n:"BrtEndDVals14",f:parsenoop},1155:{n:"BrtEndIconSet14",f:parsenoop},1156:{n:"BrtEndDatabar14",f:parsenoop},1157:{n:"BrtBeginColorScale14",
f:parsenoop},1158:{n:"BrtEndColorScale14",f:parsenoop},1159:{n:"BrtBeginSxrules14",f:parsenoop},1160:{n:"BrtEndSxrules14",f:parsenoop},1161:{n:"BrtBeginPRule14",f:parsenoop},1162:{n:"BrtEndPRule14",f:parsenoop},1163:{n:"BrtBeginPRFilters14",f:parsenoop},1164:{n:"BrtEndPRFilters14",f:parsenoop},1165:{n:"BrtBeginPRFilter14",f:parsenoop},1166:{n:"BrtEndPRFilter14",f:parsenoop},1167:{n:"BrtBeginPRFItem14",f:parsenoop},1168:{n:"BrtEndPRFItem14",f:parsenoop},1169:{n:"BrtBeginCellIgnoreECs14",f:parsenoop},1170:{n:"BrtEndCellIgnoreECs14",f:parsenoop},1171:{n:"BrtDxf14",f:parsenoop},1172:{n:"BrtBeginDxF14s",f:parsenoop},1173:{n:"BrtEndDxf14s",f:parsenoop},1177:{n:"BrtFilter14",f:parsenoop},1178:{n:"BrtBeginCustomFilters14",f:parsenoop},1180:{n:"BrtCustomFilter14",f:parsenoop},1181:{n:"BrtIconFilter14",f:parsenoop},1182:{n:"BrtPivotCacheConnectionName",f:parsenoop},2048:{n:"BrtBeginDecoupledPivotCacheIDs",f:parsenoop},2049:{n:"BrtEndDecoupledPivotCacheIDs",f:parsenoop},2050:{n:"BrtDecoupledPivotCacheID",f:parsenoop},2051:{n:"BrtBeginPivotTableRefs",f:parsenoop},2052:{n:"BrtEndPivotTableRefs",f:parsenoop},2053:{n:"BrtPivotTableRef",f:parsenoop},2054:{n:"BrtSlicerCacheBookPivotTables",f:parsenoop},2055:{n:"BrtBeginSxvcells",f:parsenoop},2056:{n:"BrtEndSxvcells",f:parsenoop},2057:{n:"BrtBeginSxRow",f:parsenoop},2058:{n:"BrtEndSxRow",f:parsenoop},2060:{n:"BrtPcdCalcMem15",f:parsenoop},2067:{n:"BrtQsi15",f:parsenoop},2068:{n:"BrtBeginWebExtensions",f:parsenoop},2069:{n:"BrtEndWebExtensions",f:parsenoop},2070:{n:"BrtWebExtension",f:parsenoop},2071:{n:"BrtAbsPath15",f:parsenoop},2072:{n:"BrtBeginPivotTableUISettings",f:parsenoop},2073:{n:"BrtEndPivotTableUISettings",f:parsenoop},2075:{n:"BrtTableSlicerCacheIDs",f:parsenoop},2076:{n:"BrtTableSlicerCacheID",f:parsenoop},2077:{n:"BrtBeginTableSlicerCache",f:parsenoop},2078:{n:"BrtEndTableSlicerCache",f:parsenoop},2079:{n:"BrtSxFilter15",f:parsenoop},2080:{n:"BrtBeginTimelineCachePivotCacheIDs",f:parsenoop},2081:{n:"BrtEndTimelineCachePivotCacheIDs",f:parsenoop},2082:{n:"BrtTimelineCachePivotCacheID",f:parsenoop},2083:{n:"BrtBeginTimelineCacheIDs",f:parsenoop},2084:{n:"BrtEndTimelineCacheIDs",f:parsenoop},2085:{n:"BrtBeginTimelineCacheID",f:parsenoop},2086:{n:"BrtEndTimelineCacheID",f:parsenoop},2087:{n:"BrtBeginTimelinesEx",f:parsenoop},2088:{n:"BrtEndTimelinesEx",f:parsenoop},2089:{n:"BrtBeginTimelineEx",f:parsenoop},2090:{n:"BrtEndTimelineEx",f:parsenoop},2091:{n:"BrtWorkBookPr15",f:parsenoop},2092:{n:"BrtPCDH15",f:parsenoop},2093:{n:"BrtBeginTimelineStyle",f:parsenoop},2094:{n:"BrtEndTimelineStyle",f:parsenoop},2095:{n:"BrtTimelineStyleElement",f:parsenoop},2096:{n:"BrtBeginTimelineStylesheetExt15",f:parsenoop},2097:{n:"BrtEndTimelineStylesheetExt15",f:parsenoop},2098:{n:"BrtBeginTimelineStyles",f:parsenoop},2099:{n:"BrtEndTimelineStyles",f:parsenoop},2100:{n:"BrtBeginTimelineStyleElements",f:parsenoop},2101:{n:"BrtEndTimelineStyleElements",f:parsenoop},2102:{n:"BrtDxf15",f:parsenoop},2103:{n:"BrtBeginDxfs15",f:parsenoop},2104:{n:"brtEndDxfs15",f:parsenoop},2105:{n:"BrtSlicerCacheHideItemsWithNoData",f:parsenoop},2106:{n:"BrtBeginItemUniqueNames",f:parsenoop},2107:{n:"BrtEndItemUniqueNames",f:parsenoop},2108:{n:"BrtItemUniqueName",f:parsenoop},2109:{n:"BrtBeginExtConn15",f:parsenoop},2110:{n:"BrtEndExtConn15",f:parsenoop},2111:{n:"BrtBeginOledbPr15",f:parsenoop},2112:{n:"BrtEndOledbPr15",f:parsenoop},2113:{n:"BrtBeginDataFeedPr15",f:parsenoop},2114:{n:"BrtEndDataFeedPr15",f:parsenoop},2115:{n:"BrtTextPr15",f:parsenoop},2116:{n:"BrtRangePr15",f:parsenoop},2117:{n:"BrtDbCommand15",f:parsenoop},2118:{n:"BrtBeginDbTables15",f:parsenoop},2119:{n:"BrtEndDbTables15",f:parsenoop},2120:{n:"BrtDbTable15",f:parsenoop},2121:{n:"BrtBeginDataModel",f:parsenoop},2122:{n:"BrtEndDataModel",f:parsenoop},2123:{n:"BrtBeginModelTables",f:parsenoop},2124:{n:"BrtEndModelTables",f:parsenoop},2125:{n:"BrtModelTable",f:parsenoop},2126:{n:"BrtBeginModelRelationships",f:parsenoop},2127:{n:"BrtEndModelRelationships",f:parsenoop},2128:{n:"BrtModelRelationship",f:parsenoop},2129:{n:"BrtBeginECTxtWiz15",f:parsenoop},2130:{n:"BrtEndECTxtWiz15",f:parsenoop},2131:{n:"BrtBeginECTWFldInfoLst15",f:parsenoop},2132:{n:"BrtEndECTWFldInfoLst15",f:parsenoop},2133:{n:"BrtBeginECTWFldInfo15",f:parsenoop},2134:{n:"BrtFieldListActiveItem",f:parsenoop},2135:{n:"BrtPivotCacheIdVersion",f:parsenoop},2136:{n:"BrtSXDI15",f:parsenoop},65535:{n:"",f:parsenoop}};var evert_RE=evert_key(XLSBRecordEnum,"n");var XLSRecordEnum={3:{n:"BIFF2NUM",f:parse_BIFF2NUM},4:{n:"BIFF2STR",f:parse_BIFF2STR},6:{n:"Formula",f:parse_Formula},9:{n:"BOF",f:parse_BOF},10:{n:"EOF",f:parse_EOF},12:{n:"CalcCount",f:parse_CalcCount},13:{n:"CalcMode",f:parse_CalcMode},14:{n:"CalcPrecision",f:parse_CalcPrecision},15:{n:"CalcRefMode",f:parse_CalcRefMode},16:{n:"CalcDelta",f:parse_CalcDelta},17:{n:"CalcIter",f:parse_CalcIter},18:{n:"Protect",f:parse_Protect},19:{n:"Password",f:parse_Password},20:{n:"Header",f:parse_Header},21:{n:"Footer",f:parse_Footer},23:{n:"ExternSheet",f:parse_ExternSheet},24:{n:"Lbl",f:parse_Lbl},25:{n:"WinProtect",f:parse_WinProtect},26:{n:"VerticalPageBreaks",f:parse_VerticalPageBreaks},27:{n:"HorizontalPageBreaks",f:parse_HorizontalPageBreaks},28:{n:"Note",f:parse_Note},29:{n:"Selection",f:parse_Selection},34:{n:"Date1904",f:parse_Date1904},35:{n:"ExternName",f:parse_ExternName},38:{n:"LeftMargin",f:parse_LeftMargin},39:{n:"RightMargin",f:parse_RightMargin},40:{n:"TopMargin",f:parse_TopMargin},41:{n:"BottomMargin",f:parse_BottomMargin},42:{n:"PrintRowCol",f:parse_PrintRowCol},43:{n:"PrintGrid",f:parse_PrintGrid},47:{n:"FilePass",f:parse_FilePass},49:{n:"Font",f:parse_Font},51:{n:"PrintSize",f:parse_PrintSize},60:{n:"Continue",f:parse_Continue},61:{n:"Window1",f:parse_Window1},64:{n:"Backup",f:parse_Backup},65:{n:"Pane",f:parse_Pane},66:{n:"CodePage",f:parse_CodePage},77:{n:"Pls",f:parse_Pls},80:{n:"DCon",f:parse_DCon},81:{n:"DConRef",f:parse_DConRef},82:{n:"DConName",f:parse_DConName},85:{n:"DefColWidth",f:parse_DefColWidth},89:{n:"XCT",f:parse_XCT},90:{n:"CRN",f:parse_CRN},91:{n:"FileSharing",f:parse_FileSharing},92:{n:"WriteAccess",f:parse_WriteAccess},93:{n:"Obj",f:parse_Obj},94:{n:"Uncalced",f:parse_Uncalced},95:{n:"CalcSaveRecalc",f:parse_CalcSaveRecalc},96:{n:"Template",f:parse_Template},97:{n:"Intl",f:parse_Intl},99:{n:"ObjProtect",f:parse_ObjProtect},125:{n:"ColInfo",f:parse_ColInfo},128:{n:"Guts",f:parse_Guts},129:{n:"WsBool",f:parse_WsBool},130:{n:"GridSet",f:parse_GridSet},131:{n:"HCenter",f:parse_HCenter},132:{n:"VCenter",f:parse_VCenter},133:{n:"BoundSheet8",f:parse_BoundSheet8},134:{n:"WriteProtect",f:parse_WriteProtect},140:{n:"Country",f:parse_Country},141:{n:"HideObj",f:parse_HideObj},144:{n:"Sort",f:parse_Sort},146:{n:"Palette",f:parse_Palette},151:{n:"Sync",f:parse_Sync},152:{n:"LPr",f:parse_LPr},153:{n:"DxGCol",f:parse_DxGCol},154:{n:"FnGroupName",f:parse_FnGroupName},155:{n:"FilterMode",f:parse_FilterMode},156:{n:"BuiltInFnGroupCount",f:parse_BuiltInFnGroupCount},157:{n:"AutoFilterInfo",f:parse_AutoFilterInfo},158:{n:"AutoFilter",f:parse_AutoFilter},160:{n:"Scl",f:parse_Scl},161:{n:"Setup",f:parse_Setup},174:{n:"ScenMan",f:parse_ScenMan},175:{n:"SCENARIO",f:parse_SCENARIO},176:{n:"SxView",f:parse_SxView},177:{n:"Sxvd",f:parse_Sxvd},178:{n:"SXVI",f:parse_SXVI},180:{n:"SxIvd",f:parse_SxIvd},181:{n:"SXLI",f:parse_SXLI},182:{n:"SXPI",f:parse_SXPI},184:{n:"DocRoute",f:parse_DocRoute},185:{n:"RecipName",f:parse_RecipName},189:{n:"MulRk",f:parse_MulRk},190:{n:"MulBlank",f:parse_MulBlank},193:{n:"Mms",f:parse_Mms},197:{n:"SXDI",f:parse_SXDI},198:{n:"SXDB",f:parse_SXDB},199:{n:"SXFDB",f:parse_SXFDB},200:{n:"SXDBB",f:parse_SXDBB},201:{n:"SXNum",f:parse_SXNum},202:{n:"SxBool",f:parse_SxBool},203:{n:"SxErr",f:parse_SxErr},204:{n:"SXInt",f:parse_SXInt},205:{n:"SXString",f:parse_SXString},206:{n:"SXDtr",f:parse_SXDtr},207:{n:"SxNil",f:parse_SxNil},208:{n:"SXTbl",f:parse_SXTbl},209:{n:"SXTBRGIITM",f:parse_SXTBRGIITM},210:{n:"SxTbpg",f:parse_SxTbpg},211:{n:"ObProj",f:parse_ObProj},213:{n:"SXStreamID",f:parse_SXStreamID},215:{n:"DBCell",f:parse_DBCell},216:{n:"SXRng",f:parse_SXRng},217:{n:"SxIsxoper",f:parse_SxIsxoper},218:{n:"BookBool",f:parse_BookBool},220:{n:"DbOrParamQry",f:parse_DbOrParamQry},221:{n:"ScenarioProtect",f:parse_ScenarioProtect},222:{n:"OleObjectSize",f:parse_OleObjectSize},224:{n:"XF",f:parse_XF},225:{n:"InterfaceHdr",f:parse_InterfaceHdr},226:{n:"InterfaceEnd",f:parse_InterfaceEnd},227:{n:"SXVS",f:parse_SXVS},229:{n:"MergeCells",f:parse_MergeCells},233:{n:"BkHim",f:parse_BkHim},235:{n:"MsoDrawingGroup",f:parse_MsoDrawingGroup},236:{n:"MsoDrawing",f:parse_MsoDrawing},237:{n:"MsoDrawingSelection",f:parse_MsoDrawingSelection},239:{n:"PhoneticInfo",f:parse_PhoneticInfo},240:{n:"SxRule",f:parse_SxRule},241:{n:"SXEx",f:parse_SXEx},242:{n:"SxFilt",f:parse_SxFilt},244:{n:"SxDXF",f:parse_SxDXF},245:{n:"SxItm",f:parse_SxItm},246:{n:"SxName",f:parse_SxName},247:{n:"SxSelect",f:parse_SxSelect},248:{n:"SXPair",f:parse_SXPair},249:{n:"SxFmla",f:parse_SxFmla},251:{n:"SxFormat",f:parse_SxFormat},252:{n:"SST",f:parse_SST},253:{n:"LabelSst",f:parse_LabelSst},255:{n:"ExtSST",f:parse_ExtSST},256:{n:"SXVDEx",f:parse_SXVDEx},259:{n:"SXFormula",f:parse_SXFormula},290:{n:"SXDBEx",f:parse_SXDBEx},311:{n:"RRDInsDel",f:parse_RRDInsDel},312:{n:"RRDHead",f:parse_RRDHead},315:{n:"RRDChgCell",f:parse_RRDChgCell},317:{n:"RRTabId",f:parse_RRTabId},318:{n:"RRDRenSheet",f:parse_RRDRenSheet},319:{n:"RRSort",f:parse_RRSort},320:{n:"RRDMove",f:parse_RRDMove},330:{n:"RRFormat",f:parse_RRFormat},331:{n:"RRAutoFmt",f:parse_RRAutoFmt},333:{n:"RRInsertSh",f:parse_RRInsertSh},334:{n:"RRDMoveBegin",f:parse_RRDMoveBegin},335:{n:"RRDMoveEnd",f:parse_RRDMoveEnd},336:{n:"RRDInsDelBegin",f:parse_RRDInsDelBegin},337:{n:"RRDInsDelEnd",f:parse_RRDInsDelEnd},338:{n:"RRDConflict",f:parse_RRDConflict},339:{n:"RRDDefName",f:parse_RRDDefName},340:{n:"RRDRstEtxp",f:parse_RRDRstEtxp},351:{n:"LRng",f:parse_LRng},352:{n:"UsesELFs",f:parse_UsesELFs},353:{n:"DSF",f:parse_DSF},401:{n:"CUsr",f:parse_CUsr},402:{n:"CbUsr",f:parse_CbUsr},403:{n:"UsrInfo",f:parse_UsrInfo},404:{n:"UsrExcl",f:parse_UsrExcl},405:{n:"FileLock",f:parse_FileLock},406:{n:"RRDInfo",f:parse_RRDInfo},407:{n:"BCUsrs",f:parse_BCUsrs},408:{n:"UsrChk",f:parse_UsrChk},425:{n:"UserBView",f:parse_UserBView},426:{n:"UserSViewBegin",f:parse_UserSViewBegin},427:{n:"UserSViewEnd",f:parse_UserSViewEnd},428:{n:"RRDUserView",f:parse_RRDUserView},429:{n:"Qsi",f:parse_Qsi},430:{n:"SupBook",f:parse_SupBook},431:{n:"Prot4Rev",f:parse_Prot4Rev},432:{n:"CondFmt",f:parse_CondFmt},433:{n:"CF",f:parse_CF},434:{n:"DVal",f:parse_DVal},437:{n:"DConBin",f:parse_DConBin},438:{n:"TxO",f:parse_TxO},439:{n:"RefreshAll",f:parse_RefreshAll},440:{n:"HLink",f:parse_HLink},441:{n:"Lel",f:parse_Lel},442:{n:"CodeName",f:parse_XLSCodeName},443:{n:"SXFDBType",f:parse_SXFDBType},444:{n:"Prot4RevPass",f:parse_Prot4RevPass},445:{n:"ObNoMacros",f:parse_ObNoMacros},446:{n:"Dv",f:parse_Dv},448:{n:"Excel9File",f:parse_Excel9File},449:{n:"RecalcId",f:parse_RecalcId,r:2},450:{n:"EntExU2",f:parse_EntExU2},512:{n:"Dimensions",f:parse_Dimensions},513:{n:"Blank",f:parse_Blank},515:{n:"Number",f:parse_Number},516:{n:"Label",f:parse_Label},517:{n:"BoolErr",f:parse_BoolErr},519:{n:"String",f:parse_String},520:{n:"Row",f:parse_Row},523:{n:"Index",f:parse_Index},545:{n:"Array",f:parse_Array},549:{n:"DefaultRowHeight",f:parse_DefaultRowHeight},566:{n:"Table",f:parse_Table},574:{n:"Window2",f:parse_Window2},638:{n:"RK",f:parse_RK},659:{n:"Style",f:parse_Style},1048:{n:"BigName",f:parse_BigName},1054:{n:"Format",f:parse_Format},1084:{n:"ContinueBigName",f:parse_ContinueBigName},1212:{n:"ShrFmla",f:parse_ShrFmla},2048:{n:"HLinkTooltip",f:parse_HLinkTooltip},2049:{n:"WebPub",f:parse_WebPub},2050:{n:"QsiSXTag",f:parse_QsiSXTag},2051:{n:"DBQueryExt",f:parse_DBQueryExt},2052:{n:"ExtString",f:parse_ExtString},2053:{n:"TxtQry",f:parse_TxtQry},2054:{n:"Qsir",f:parse_Qsir},2055:{n:"Qsif",f:parse_Qsif},2056:{n:"RRDTQSIF",f:parse_RRDTQSIF},2057:{n:"BOF",f:parse_BOF},2058:{n:"OleDbConn",f:parse_OleDbConn},2059:{n:"WOpt",f:parse_WOpt},2060:{n:"SXViewEx",f:parse_SXViewEx},2061:{n:"SXTH",f:parse_SXTH},2062:{n:"SXPIEx",f:parse_SXPIEx},2063:{n:"SXVDTEx",f:parse_SXVDTEx},2064:{n:"SXViewEx9",f:parse_SXViewEx9},2066:{n:"ContinueFrt",f:parse_ContinueFrt},2067:{n:"RealTimeData",f:parse_RealTimeData},2128:{n:"ChartFrtInfo",f:parse_ChartFrtInfo},2129:{n:"FrtWrapper",f:parse_FrtWrapper},2130:{n:"StartBlock",f:parse_StartBlock},2131:{n:"EndBlock",f:parse_EndBlock},2132:{n:"StartObject",f:parse_StartObject},2133:{n:"EndObject",f:parse_EndObject},2134:{n:"CatLab",f:parse_CatLab},2135:{n:"YMult",f:parse_YMult},2136:{n:"SXViewLink",f:parse_SXViewLink},2137:{n:"PivotChartBits",f:parse_PivotChartBits},2138:{n:"FrtFontList",f:parse_FrtFontList},2146:{n:"SheetExt",f:parse_SheetExt},2147:{n:"BookExt",f:parse_BookExt,r:12},2148:{n:"SXAddl",f:parse_SXAddl},2149:{n:"CrErr",f:parse_CrErr},2150:{n:"HFPicture",f:parse_HFPicture},2151:{n:"FeatHdr",f:parse_FeatHdr},2152:{n:"Feat",f:parse_Feat},2154:{n:"DataLabExt",f:parse_DataLabExt},2155:{n:"DataLabExtContents",f:parse_DataLabExtContents},2156:{n:"CellWatch",f:parse_CellWatch},2161:{n:"FeatHdr11",f:parse_FeatHdr11},2162:{n:"Feature11",f:parse_Feature11},2164:{n:"DropDownObjIds",f:parse_DropDownObjIds},2165:{n:"ContinueFrt11",f:parse_ContinueFrt11},2166:{n:"DConn",f:parse_DConn},2167:{n:"List12",f:parse_List12},2168:{n:"Feature12",f:parse_Feature12},2169:{n:"CondFmt12",f:parse_CondFmt12},2170:{n:"CF12",f:parse_CF12},2171:{n:"CFEx",f:parse_CFEx},2172:{n:"XFCRC",f:parse_XFCRC,r:12},2173:{n:"XFExt",f:parse_XFExt,r:12},2174:{n:"AutoFilter12",f:parse_AutoFilter12},2175:{n:"ContinueFrt12",f:parse_ContinueFrt12},2180:{n:"MDTInfo",f:parse_MDTInfo},2181:{n:"MDXStr",f:parse_MDXStr},2182:{n:"MDXTuple",f:parse_MDXTuple},2183:{n:"MDXSet",f:parse_MDXSet},2184:{n:"MDXProp",f:parse_MDXProp},2185:{n:"MDXKPI",f:parse_MDXKPI},2186:{n:"MDB",f:parse_MDB},2187:{n:"PLV",f:parse_PLV},2188:{n:"Compat12",f:parse_Compat12,r:12},2189:{n:"DXF",f:parse_DXF},2190:{n:"TableStyles",f:parse_TableStyles,r:12},2191:{n:"TableStyle",f:parse_TableStyle},2192:{n:"TableStyleElement",f:parse_TableStyleElement},2194:{n:"StyleExt",f:parse_StyleExt},2195:{n:"NamePublish",f:parse_NamePublish},2196:{n:"NameCmt",f:parse_NameCmt},2197:{n:"SortData",f:parse_SortData},2198:{n:"Theme",f:parse_Theme,r:12},2199:{n:"GUIDTypeLib",f:parse_GUIDTypeLib},2200:{n:"FnGrp12",f:parse_FnGrp12},2201:{n:"NameFnGrp12",f:parse_NameFnGrp12},2202:{n:"MTRSettings",f:parse_MTRSettings,r:12},2203:{n:"CompressPictures",f:parse_CompressPictures},2204:{n:"HeaderFooter",f:parse_HeaderFooter},2205:{n:"CrtLayout12",f:parse_CrtLayout12},2206:{n:"CrtMlFrt",f:parse_CrtMlFrt},2207:{n:"CrtMlFrtContinue",f:parse_CrtMlFrtContinue},2211:{n:"ForceFullCalculation",f:parse_ForceFullCalculation},2212:{n:"ShapePropsStream",f:parse_ShapePropsStream},2213:{n:"TextPropsStream",f:parse_TextPropsStream},2214:{n:"RichTextStream",f:parse_RichTextStream},2215:{n:"CrtLayout12A",f:parse_CrtLayout12A},4097:{n:"Units",f:parse_Units},4098:{n:"Chart",f:parse_Chart},4099:{n:"Series",f:parse_Series},4102:{n:"DataFormat",f:parse_DataFormat},4103:{n:"LineFormat",f:parse_LineFormat},4105:{n:"MarkerFormat",f:parse_MarkerFormat},4106:{n:"AreaFormat",f:parse_AreaFormat},4107:{n:"PieFormat",f:parse_PieFormat},4108:{n:"AttachedLabel",f:parse_AttachedLabel},4109:{n:"SeriesText",f:parse_SeriesText},4116:{n:"ChartFormat",f:parse_ChartFormat},4117:{n:"Legend",f:parse_Legend},4118:{n:"SeriesList",f:parse_SeriesList},4119:{n:"Bar",f:parse_Bar},4120:{n:"Line",f:parse_Line},4121:{n:"Pie",f:parse_Pie},4122:{n:"Area",f:parse_Area},4123:{n:"Scatter",f:parse_Scatter},4124:{n:"CrtLine",f:parse_CrtLine},4125:{n:"Axis",f:parse_Axis},4126:{n:"Tick",f:parse_Tick},4127:{n:"ValueRange",f:parse_ValueRange},4128:{n:"CatSerRange",f:parse_CatSerRange},4129:{n:"AxisLine",f:parse_AxisLine},4130:{n:"CrtLink",f:parse_CrtLink},4132:{n:"DefaultText",f:parse_DefaultText},4133:{n:"Text",f:parse_Text},4134:{n:"FontX",f:parse_FontX},4135:{n:"ObjectLink",f:parse_ObjectLink},4146:{n:"Frame",f:parse_Frame},4147:{n:"Begin",f:parse_Begin},4148:{n:"End",f:parse_End},4149:{n:"PlotArea",f:parse_PlotArea},4154:{n:"Chart3d",f:parse_Chart3d},4156:{n:"PicF",f:parse_PicF},4157:{n:"DropBar",f:parse_DropBar},4158:{n:"Radar",f:parse_Radar},4159:{n:"Surf",f:parse_Surf},4160:{n:"RadarArea",f:parse_RadarArea},4161:{n:"AxisParent",f:parse_AxisParent},4163:{n:"LegendException",f:parse_LegendException},4164:{n:"ShtProps",f:parse_ShtProps},4165:{n:"SerToCrt",f:parse_SerToCrt},4166:{n:"AxesUsed",f:parse_AxesUsed},4168:{n:"SBaseRef",f:parse_SBaseRef},4170:{n:"SerParent",f:parse_SerParent},4171:{n:"SerAuxTrend",f:parse_SerAuxTrend},4174:{n:"IFmtRecord",f:parse_IFmtRecord},4175:{n:"Pos",f:parse_Pos},4176:{n:"AlRuns",f:parse_AlRuns},4177:{n:"BRAI",f:parse_BRAI},4187:{n:"SerAuxErrBar",f:parse_SerAuxErrBar},4188:{n:"ClrtClient",f:parse_ClrtClient},4189:{n:"SerFmt",f:parse_SerFmt},4191:{n:"Chart3DBarShape",f:parse_Chart3DBarShape},4192:{n:"Fbi",f:parse_Fbi},4193:{n:"BopPop",f:parse_BopPop},4194:{n:"AxcExt",f:parse_AxcExt},4195:{n:"Dat",f:parse_Dat},4196:{n:"PlotGrowth",f:parse_PlotGrowth},4197:{n:"SIIndex",f:parse_SIIndex},4198:{n:"GelFrame",f:parse_GelFrame},4199:{n:"BopPopCustom",f:parse_BopPopCustom},4200:{n:"Fbi2",f:parse_Fbi2},22:{n:"ExternCount",f:parsenoop},126:{n:"RK",f:parsenoop},127:{n:"ImData",f:parsenoop},135:{n:"Addin",f:parsenoop},136:{n:"Edg",f:parsenoop},137:{n:"Pub",f:parsenoop},145:{n:"Sub",f:parsenoop},148:{n:"LHRecord",f:parsenoop},149:{n:"LHNGraph",f:parsenoop},150:{n:"Sound",f:parsenoop},169:{n:"CoordList",f:parsenoop},171:{n:"GCW",f:parsenoop},188:{n:"ShrFmla",f:parsenoop},194:{n:"AddMenu",f:parsenoop},195:{n:"DelMenu",f:parsenoop},214:{n:"RString",f:parsenoop},223:{n:"UDDesc",f:parsenoop},234:{n:"TabIdConf",f:parsenoop},354:{n:"XL5Modify",f:parsenoop},421:{n:"FileSharing2",f:parsenoop},536:{n:"Name",f:parsenoop},547:{n:"ExternName",f:parse_ExternName},561:{n:"Font",f:parsenoop},1030:{n:"Formula",f:parse_Formula},2157:{n:"FeatInfo",f:parsenoop},2163:{n:"FeatInfo11",f:parsenoop},2177:{n:"SXAddl12",f:parsenoop},2240:{n:"AutoWebPub",f:parsenoop},2241:{n:"ListObj",f:parsenoop},2242:{n:"ListField",f:parsenoop},2243:{n:"ListDV",f:parsenoop},2244:{n:"ListCondFmt",f:parsenoop},2245:{n:"ListCF",f:parsenoop},2246:{n:"FMQry",f:parsenoop},2247:{n:"FMSQry",f:parsenoop},2248:{n:"PLV",f:parsenoop},2249:{n:"LnExt",f:parsenoop},2250:{n:"MkrExt",f:parsenoop},2251:{n:"CrtCoopt",f:parsenoop},0:{}};function parse_ods(zip,opts){if(typeof module!=="undefined"&&typeof require!=="undefined"&&typeof ODS==="undefined")ODS=require("./od"+"s");if(typeof ODS==="undefined"||!ODS.parse_ods)throw new Error("Unsupported ODS");return ODS.parse_ods(zip,opts)}function fix_opts_func(defaults){return function fix_opts(opts){for(var i=0;i!=defaults.length;++i){var d=defaults[i];if(opts[d[0]]===undefined)opts[d[0]]=d[1];if(d[2]==="n")opts[d[0]]=Number(opts[d[0]])}}}var fix_read_opts=fix_opts_func([["cellNF",false],["cellHTML",true],["cellFormula",true],["cellStyles",false],["cellDates",false],["sheetStubs",false],["sheetRows",0,"n"],["bookDeps",false],["bookSheets",false],["bookProps",false],["bookFiles",false],["bookVBA",false],["password",""],["WTF",false]]);var fix_write_opts=fix_opts_func([["cellDates",false],["bookSST",false],["bookType","xlsx"],["WTF",false]]);function safe_parse_wbrels(wbrels,sheets){if(!wbrels)return 0;try{wbrels=sheets.map(function pwbr(w){return[w.name,wbrels["!id"][w.id].Target]})}catch(e){return null}return!wbrels||wbrels.length===0?null:wbrels}function safe_parse_ws(zip,path,relsPath,sheet,sheetRels,sheets,opts){try{sheetRels[sheet]=parse_rels(getzipdata(zip,relsPath,true),path);sheets[sheet]=parse_ws(getzipdata(zip,path),path,opts,sheetRels[sheet])}catch(e){if(opts.WTF)throw e}}var nodirs=function nodirs(x){return x.substr(-1)!="/"};function parse_zip(zip,opts){make_ssf(SSF);opts=opts||{};fix_read_opts(opts);reset_cp();if(safegetzipfile(zip,"META-INF/manifest.xml"))return parse_ods(zip,opts);var entries=keys(zip.files).filter(nodirs).sort();var dir=parse_ct(getzipdata(zip,"[Content_Types].xml"),opts);var xlsb=false;var sheets,binname;if(dir.workbooks.length===0){binname="xl/workbook.xml";if(getzipdata(zip,binname,true))dir.workbooks.push(binname)}if(dir.workbooks.length===0){binname="xl/workbook.bin";if(!getzipfile(zip,binname,true))throw new Error("Could not find workbook");dir.workbooks.push(binname);xlsb=true}if(dir.workbooks[0].substr(-3)=="bin")xlsb=true;if(xlsb)set_cp(1200);if(!opts.bookSheets&&!opts.bookProps){strs=[];if(dir.sst)strs=parse_sst(getzipdata(zip,dir.sst.replace(/^\//,"")),dir.sst,opts);themes={};if(opts.cellStyles&&dir.themes.length)themes=parse_theme(getzipdata(zip,dir.themes[0].replace(/^\//,""),true),dir.themes[0],opts);styles={};if(dir.style)styles=parse_sty(getzipdata(zip,dir.style.replace(/^\//,"")),dir.style,opts)}var wb=parse_wb(getzipdata(zip,dir.workbooks[0].replace(/^\//,"")),dir.workbooks[0],opts);var props={},propdata="";if(dir.coreprops.length!==0){propdata=getzipdata(zip,dir.coreprops[0].replace(/^\//,""),true);if(propdata)props=parse_core_props(propdata);if(dir.extprops.length!==0){propdata=getzipdata(zip,dir.extprops[0].replace(/^\//,""),true);if(propdata)parse_ext_props(propdata,props)}}var custprops={};if(!opts.bookSheets||opts.bookProps){if(dir.custprops.length!==0){propdata=getzipdata(zip,dir.custprops[0].replace(/^\//,""),true);if(propdata)custprops=parse_cust_props(propdata,opts)}}var out={};if(opts.bookSheets||opts.bookProps){if(props.Worksheets&&props.SheetNames.length>0)sheets=props.SheetNames;else if(wb.Sheets)sheets=wb.Sheets.map(function pluck(x){return x.name});if(opts.bookProps){out.Props=props;out.Custprops=custprops}if(typeof sheets!=="undefined")out.SheetNames=sheets;if(opts.bookSheets?out.SheetNames:opts.bookProps)return out}sheets={};var deps={};if(opts.bookDeps&&dir.calcchain)deps=parse_cc(getzipdata(zip,dir.calcchain.replace(/^\//,"")),dir.calcchain,opts);var i=0;var sheetRels={};var path,relsPath;if(!props.Worksheets){var wbsheets=wb.Sheets;props.Worksheets=wbsheets.length;props.SheetNames=[];for(var j=0;j!=wbsheets.length;++j){props.SheetNames[j]=wbsheets[j].name}}var wbext=xlsb?"bin":"xml";var wbrelsfile="xl/_rels/workbook."+wbext+".rels";var wbrels=parse_rels(getzipdata(zip,wbrelsfile,true),wbrelsfile);if(wbrels)wbrels=safe_parse_wbrels(wbrels,wb.Sheets);var nmode=getzipdata(zip,"xl/worksheets/sheet.xml",true)?1:0;for(i=0;i!=props.Worksheets;++i){if(wbrels)path="xl/"+wbrels[i][1].replace(/[\/]?xl\//,"");else{path="xl/worksheets/sheet"+(i+1-nmode)+"."+wbext;path=path.replace(/sheet0\./,"sheet.")}relsPath=path.replace(/^(.*)(\/)([^\/]*)$/,"$1/_rels/$3.rels");safe_parse_ws(zip,path,relsPath,props.SheetNames[i],sheetRels,sheets,opts)}if(dir.comments)parse_comments(zip,dir.comments,sheets,sheetRels,opts);out={Directory:dir,Workbook:wb,Props:props,Custprops:custprops,Deps:deps,Sheets:sheets,SheetNames:props.SheetNames,Strings:strs,Styles:styles,Themes:themes,SSF:SSF.get_table()};if(opts.bookFiles){out.keys=entries;out.files=zip.files}if(opts.bookVBA){if(dir.vba.length>0)out.vbaraw=getzipdata(zip,dir.vba[0],true);else if(dir.defaults.bin==="application/vnd.ms-office.vbaProject")out.vbaraw=getzipdata(zip,"xl/vbaProject.bin",true)}return out}function add_rels(rels,rId,f,type,relobj){if(!relobj)relobj={};if(!rels["!id"])rels["!id"]={};relobj.Id="rId"+rId;relobj.Type=type;relobj.Target=f;if(rels["!id"][relobj.Id])throw new Error("Cannot rewrite rId "+rId);rels["!id"][relobj.Id]=relobj;rels[("/"+relobj.Target).replace("//","/")]=relobj}function write_zip(wb,opts){if(wb&&!wb.SSF){wb.SSF=SSF.get_table()}if(wb&&wb.SSF){make_ssf(SSF);SSF.load_table(wb.SSF);opts.revssf=evert_num(wb.SSF);opts.revssf[wb.SSF[65535]]=0}opts.rels={};opts.wbrels={};opts.Strings=[];opts.Strings.Count=0;opts.Strings.Unique=0;var wbext=opts.bookType=="xlsb"?"bin":"xml";var ct={workbooks:[],sheets:[],calcchains:[],themes:[],styles:[],coreprops:[],extprops:[],custprops:[],strs:[],comments:[],vba:[],TODO:[],rels:[],xmlns:""};fix_write_opts(opts=opts||{});var zip=new jszip;var f="",rId=0;opts.cellXfs=[];get_cell_style(opts.cellXfs,{},{revssf:{General:0}});f="docProps/core.xml";zip.file(f,write_core_props(wb.Props,opts));ct.coreprops.push(f);add_rels(opts.rels,2,f,RELS.CORE_PROPS);f="docProps/app.xml";if(!wb.Props)wb.Props={};wb.Props.SheetNames=wb.SheetNames;wb.Props.Worksheets=wb.SheetNames.length;zip.file(f,write_ext_props(wb.Props,opts));ct.extprops.push(f);add_rels(opts.rels,3,f,RELS.EXT_PROPS);if(wb.Custprops!==wb.Props&&keys(wb.Custprops||{}).length>0){f="docProps/custom.xml";zip.file(f,write_cust_props(wb.Custprops,opts));ct.custprops.push(f);add_rels(opts.rels,4,f,RELS.CUST_PROPS)}f="xl/workbook."+wbext;zip.file(f,write_wb(wb,f,opts));ct.workbooks.push(f);add_rels(opts.rels,1,f,RELS.WB);for(rId=1;rId<=wb.SheetNames.length;++rId){f="xl/worksheets/sheet"+rId+"."+wbext;zip.file(f,write_ws(rId-1,f,opts,wb));ct.sheets.push(f);add_rels(opts.wbrels,rId,"worksheets/sheet"+rId+"."+wbext,RELS.WS)}if(opts.Strings!=null&&opts.Strings.length>0){f="xl/sharedStrings."+wbext;zip.file(f,write_sst(opts.Strings,f,opts));ct.strs.push(f);add_rels(opts.wbrels,++rId,"sharedStrings."+wbext,RELS.SST)}f="xl/theme/theme1.xml";zip.file(f,write_theme(opts));ct.themes.push(f);add_rels(opts.wbrels,++rId,"theme/theme1.xml",RELS.THEME);f="xl/styles."+wbext;zip.file(f,write_sty(wb,f,opts));ct.styles.push(f);add_rels(opts.wbrels,++rId,"styles."+wbext,RELS.STY);zip.file("[Content_Types].xml",write_ct(ct,opts));zip.file("_rels/.rels",write_rels(opts.rels));zip.file("xl/_rels/workbook."+wbext+".rels",write_rels(opts.wbrels));return zip}function firstbyte(f,o){switch((o||{}).type||"base64"){case"buffer":return f[0];case"base64":return Base64.decode(f.substr(0,12)).charCodeAt(0);case"binary":return f.charCodeAt(0);case"array":return f[0];default:throw new Error("Unrecognized type "+o.type)}}function read_zip(data,opts){var zip,d=data;var o=opts||{};if(!o.type)o.type=has_buf&&Buffer.isBuffer(data)?"buffer":"base64";switch(o.type){case"base64":zip=new jszip(d,{base64:true});break;case"binary":case"array":zip=new jszip(d,{base64:false});break;case"buffer":zip=new jszip(d);break;case"file":zip=new jszip(d=_fs.readFileSync(data));break;default:throw new Error("Unrecognized type "+o.type)}return parse_zip(zip,o)}function readSync(data,opts){var zip,d=data,isfile=false,n;var o=opts||{};if(!o.type)o.type=has_buf&&Buffer.isBuffer(data)?"buffer":"base64";if(o.type=="file"){isfile=true;o.type="buffer";d=_fs.readFileSync(data)}switch(n=firstbyte(d,o)){case 208:if(isfile)o.type="file";return parse_xlscfb(CFB.read(data,o),o);case 9:return parse_xlscfb(s2a(o.type==="base64"?Base64.decode(data):data),o);case 60:return parse_xlml(d,o);case 80:if(isfile)o.type="file";return read_zip(data,opts);default:throw new Error("Unsupported file "+n)}}function readFileSync(data,opts){var o=opts||{};o.type="file";var wb=readSync(data,o);wb.FILENAME=data;return wb}function write_zip_type(wb,opts){var o=opts||{};style_builder=new StyleBuilder(opts);var z=write_zip(wb,o);switch(o.type){case"base64":return z.generate({type:"base64"});case"binary":return z.generate({type:"string"});case"buffer":return z.generate({type:"nodebuffer"});case"file":return _fs.writeFileSync(o.file,z.generate({type:"nodebuffer"}));default:throw new Error("Unrecognized type "+o.type)}}function writeSync(wb,opts){var o=opts||{};switch(o.bookType){case"xml":return write_xlml(wb,o);default:return write_zip_type(wb,o)}}function writeFileSync(wb,filename,opts){var o=opts||{};o.type="file";o.file=filename;switch(o.file.substr(-5).toLowerCase()){case".xlsx":o.bookType="xlsx";break;case".xlsm":o.bookType="xlsm";break;case".xlsb":o.bookType="xlsb";break;default:switch(o.file.substr(-4).toLowerCase()){case".xls":o.bookType="xls";break;case".xml":o.bookType="xml";break}}return writeSync(wb,o)}function decode_row(rowstr){return parseInt(unfix_row(rowstr),10)-1}function encode_row(row){return""+(row+1)}function fix_row(cstr){return cstr.replace(/([A-Z]|^)(\d+)$/,"$1$$$2")}function unfix_row(cstr){return cstr.replace(/\$(\d+)$/,"$1")}function decode_col(colstr){var c=unfix_col(colstr),d=0,i=0;for(;i!==c.length;++i)d=26*d+c.charCodeAt(i)-64;return d-1}function encode_col(col){var s="";for(++col;col;col=Math.floor((col-1)/26))s=String.fromCharCode((col-1)%26+65)+s;return s}function fix_col(cstr){return cstr.replace(/^([A-Z])/,"$$$1")}function unfix_col(cstr){return cstr.replace(/^\$([A-Z])/,"$1")}function split_cell(cstr){return cstr.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(",")}function decode_cell(cstr){var splt=split_cell(cstr);return{c:decode_col(splt[0]),r:decode_row(splt[1])}}function encode_cell(cell){return encode_col(cell.c)+encode_row(cell.r)}function fix_cell(cstr){return fix_col(fix_row(cstr))}function unfix_cell(cstr){return unfix_col(unfix_row(cstr))}function decode_range(range){var x=range.split(":").map(decode_cell);return{s:x[0],e:x[x.length-1]}}function encode_range(cs,ce){if(ce===undefined||typeof ce==="number")return encode_range(cs.s,cs.e);if(typeof cs!=="string")cs=encode_cell(cs);if(typeof ce!=="string")ce=encode_cell(ce);return cs==ce?cs:cs+":"+ce}function safe_decode_range(range){var o={s:{c:0,r:0},e:{c:0,r:0}};var idx=0,i=0,cc=0;var len=range.length;for(idx=0;i<len;++i){if((cc=range.charCodeAt(i)-64)<1||cc>26)break;idx=26*idx+cc}o.s.c=--idx;for(idx=0;i<len;++i){if((cc=range.charCodeAt(i)-48)<0||cc>9)break;idx=10*idx+cc}o.s.r=--idx;if(i===len||range.charCodeAt(++i)===58){o.e.c=o.s.c;o.e.r=o.s.r;return o}for(idx=0;i!=len;++i){if((cc=range.charCodeAt(i)-64)<1||cc>26)break;idx=26*idx+cc}o.e.c=--idx;for(idx=0;i!=len;++i){if((cc=range.charCodeAt(i)-48)<0||cc>9)break;idx=10*idx+cc}o.e.r=--idx;return o}function safe_format_cell(cell,v){if(cell.z!==undefined)try{return cell.w=SSF.format(cell.z,v)}catch(e){}if(!cell.XF)return v;try{return cell.w=SSF.format(cell.XF.ifmt||0,v)}catch(e){return""+v}}function format_cell(cell,v){if(cell==null||cell.t==null)return"";if(cell.w!==undefined)return cell.w;if(v===undefined)return safe_format_cell(cell,cell.v);return safe_format_cell(cell,v)}function sheet_to_json(sheet,opts){var val,row,range,header=0,offset=1,r,hdr=[],isempty,R,C,v;var o=opts!=null?opts:{};var raw=o.raw;if(sheet==null||sheet["!ref"]==null)return[];range=o.range!==undefined?o.range:sheet["!ref"];if(o.header===1)header=1;else if(o.header==="A")header=2;else if(Array.isArray(o.header))header=3;switch(typeof range){case"string":r=safe_decode_range(range);break;case"number":r=safe_decode_range(sheet["!ref"]);r.s.r=range;break;default:r=range}if(header>0)offset=0;var rr=encode_row(r.s.r);var cols=new Array(r.e.c-r.s.c+1);var out=new Array(r.e.r-r.s.r-offset+1);var outi=0;for(C=r.s.c;C<=r.e.c;++C){cols[C]=encode_col(C);val=sheet[cols[C]+rr];switch(header){case 1:hdr[C]=C;break;case 2:hdr[C]=cols[C];break;case 3:hdr[C]=o.header[C-r.s.c];break;default:if(val===undefined)continue;hdr[C]=format_cell(val)}}for(R=r.s.r+offset;R<=r.e.r;++R){rr=encode_row(R);isempty=true;if(header===1)row=[];else{row={};if(Object.defineProperty)Object.defineProperty(row,"__rowNum__",{value:R,enumerable:false});else row.__rowNum__=R}for(C=r.s.c;C<=r.e.c;++C){val=sheet[cols[C]+rr];if(val===undefined||val.t===undefined)continue;v=val.v;switch(val.t){case"e":continue;case"s":break;case"b":case"n":break;default:throw"unrecognized type "+val.t}if(v!==undefined){row[hdr[C]]=raw?v:format_cell(val,v);isempty=false}}if(isempty===false||header===1)out[outi++]=row}out.length=outi;return out}function sheet_to_row_object_array(sheet,opts){return sheet_to_json(sheet,opts!=null?opts:{})}function sheet_to_csv(sheet,opts){var out="",txt="",qreg=/"/g;var o=opts==null?{}:opts;if(sheet==null||sheet["!ref"]==null)return"";var r=safe_decode_range(sheet["!ref"]);var FS=o.FS!==undefined?o.FS:",",fs=FS.charCodeAt(0);var RS=o.RS!==undefined?o.RS:"\n",rs=RS.charCodeAt(0);var row="",rr="",cols=[];var i=0,cc=0,val;var R=0,C=0;
for(C=r.s.c;C<=r.e.c;++C)cols[C]=encode_col(C);for(R=r.s.r;R<=r.e.r;++R){row="";rr=encode_row(R);for(C=r.s.c;C<=r.e.c;++C){val=sheet[cols[C]+rr];txt=val!==undefined?""+format_cell(val):"";for(i=0,cc=0;i!==txt.length;++i)if((cc=txt.charCodeAt(i))===fs||cc===rs||cc===34){txt='"'+txt.replace(qreg,'""')+'"';break}row+=(C===r.s.c?"":FS)+txt}out+=row+RS}return out}var make_csv=sheet_to_csv;function sheet_to_formulae(sheet){var cmds,y="",x,val="";if(sheet==null||sheet["!ref"]==null)return"";var r=safe_decode_range(sheet["!ref"]),rr="",cols=[],C;cmds=new Array((r.e.r-r.s.r+1)*(r.e.c-r.s.c+1));var i=0;for(C=r.s.c;C<=r.e.c;++C)cols[C]=encode_col(C);for(var R=r.s.r;R<=r.e.r;++R){rr=encode_row(R);for(C=r.s.c;C<=r.e.c;++C){y=cols[C]+rr;x=sheet[y];val="";if(x===undefined)continue;if(x.f!=null)val=x.f;else if(x.w!==undefined)val="'"+x.w;else if(x.v===undefined)continue;else val=""+x.v;cmds[i++]=y+"="+val}}cmds.length=i;return cmds}var utils={encode_col:encode_col,encode_row:encode_row,encode_cell:encode_cell,encode_range:encode_range,decode_col:decode_col,decode_row:decode_row,split_cell:split_cell,decode_cell:decode_cell,decode_range:decode_range,format_cell:format_cell,get_formulae:sheet_to_formulae,make_csv:sheet_to_csv,make_json:sheet_to_json,make_formulae:sheet_to_formulae,sheet_to_csv:sheet_to_csv,sheet_to_json:sheet_to_json,sheet_to_formulae:sheet_to_formulae,sheet_to_row_object_array:sheet_to_row_object_array};var XmlNode=function(){function XmlNode(tagName,attributes,children){if(!(this instanceof XmlNode)){return new XmlNode(tagName,attributes,children)}this.tagName=tagName;this._attributes=attributes||{};this._children=children||[];this._prefix="";return this}XmlNode.prototype.createElement=function(){return new XmlNode(arguments)};XmlNode.prototype.children=function(){return this._children};XmlNode.prototype.append=function(node){this._children.push(node);return this};XmlNode.prototype.prefix=function(prefix){if(arguments.length==0){return this._prefix}this._prefix=prefix;return this};XmlNode.prototype.attr=function(attr,value){if(value==undefined){delete this._attributes[attr];return this}if(arguments.length==0){return this._attributes}else if(typeof attr=="string"&&arguments.length==1){return this._attributes.attr[attr]}if(typeof attr=="object"&&arguments.length==1){for(var key in attr){this._attributes[key]=attr[key]}}else if(arguments.length==2&&typeof attr=="string"){this._attributes[attr]=value}return this};var APOS="'";QUOTE='"';var ESCAPED_QUOTE={};ESCAPED_QUOTE[QUOTE]="&quot;";ESCAPED_QUOTE[APOS]="&apos;";XmlNode.prototype.escapeAttributeValue=function(att_value){return'"'+att_value.replace(/\"/g,"&quot;")+'"'};XmlNode.prototype.toXml=function(node){if(!node)node=this;var xml=node._prefix;xml+="<"+node.tagName;if(node._attributes){for(var key in node._attributes){xml+=" "+key+"="+this.escapeAttributeValue(""+node._attributes[key])+""}}if(node._children&&node._children.length>0){xml+=">";for(var i=0;i<node._children.length;i++){xml+=this.toXml(node._children[i])}xml+="</"+node.tagName+">"}else{xml+="/>"}return xml};return XmlNode}();var StyleBuilder=function(options){var customNumFmtId=164;var table_fmt={0:"General",1:"0",2:"0.00",3:"#,##0",4:"#,##0.00",9:"0%",10:"0.00%",11:"0.00E+00",12:"# ?/?",13:"# ??/??",14:"m/d/yy",15:"d-mmm-yy",16:"d-mmm",17:"mmm-yy",18:"h:mm AM/PM",19:"h:mm:ss AM/PM",20:"h:mm",21:"h:mm:ss",22:"m/d/yy h:mm",37:"#,##0 ;(#,##0)",38:"#,##0 ;[Red](#,##0)",39:"#,##0.00;(#,##0.00)",40:"#,##0.00;[Red](#,##0.00)",45:"mm:ss",46:"[h]:mm:ss",47:"mmss.0",48:"##0.0E+0",49:"@",56:'"上午/下午 "hh"時"mm"分"ss"秒 "'};var fmt_table={};for(var idx in table_fmt){fmt_table[table_fmt[idx]]=idx}_hashIndex={};_listIndex=[];return{initialize:function(options){this.$fonts=XmlNode("fonts").attr("count",0).attr("x14ac:knownFonts","1");this.$fills=XmlNode("fills").attr("count",0);this.$borders=XmlNode("borders").attr("count",0);this.$numFmts=XmlNode("numFmts").attr("count",0);this.$cellStyleXfs=XmlNode("cellStyleXfs");this.$xf=XmlNode("xf").attr("numFmtId",0).attr("fontId",0).attr("fillId",0).attr("borderId",0);this.$cellXfs=XmlNode("cellXfs").attr("count",0);this.$cellStyles=XmlNode("cellStyles").append(XmlNode("cellStyle").attr("name","Normal").attr("xfId",0).attr("builtinId",0));this.$dxfs=XmlNode("dxfs").attr("count","0");this.$tableStyles=XmlNode("tableStyles").attr("count","0").attr("defaultTableStyle","TableStyleMedium9").attr("defaultPivotStyle","PivotStyleMedium4");this.$styles=XmlNode("styleSheet").attr("xmlns:mc","http://schemas.openxmlformats.org/markup-compatibility/2006").attr("xmlns:x14ac","http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac").attr("xmlns","http://schemas.openxmlformats.org/spreadsheetml/2006/main").attr("mc:Ignorable","x14ac").prefix('<?xml version="1.0" encoding="UTF-8" standalone="yes"?>').append(this.$numFmts).append(this.$fonts).append(this.$fills).append(this.$borders).append(this.$cellStyleXfs.append(this.$xf)).append(this.$cellXfs).append(this.$cellStyles).append(this.$dxfs).append(this.$tableStyles);var defaultStyle=options.defaultCellStyle||{};if(!defaultStyle.font)defaultStyle.font={name:"Calibri",sz:"12"};if(!defaultStyle.font.name)defaultStyle.font.name="Calibri";if(!defaultStyle.font.sz)defaultStyle.font.sz=11;if(!defaultStyle.fill)defaultStyle.fill={patternType:"none",fgColor:{}};if(!defaultStyle.border)defaultStyle.border={};if(!defaultStyle.numFmt)defaultStyle.numFmt=0;this.defaultStyle=defaultStyle;var gray125Style=JSON.parse(JSON.stringify(defaultStyle));gray125Style.fill={patternType:"gray125",fgColor:{}};this.addStyles([defaultStyle,gray125Style]);return this},addStyle:function(attributes){var hashKey=JSON.stringify(attributes);var index=_hashIndex[hashKey];if(index==undefined){index=this._addXf(attributes);_hashIndex[hashKey]=index}else{index=_hashIndex[hashKey]}return index},addStyles:function(styles){var self=this;return styles.map(function(style){return self.addStyle(style)})},_duckTypeStyle:function(attributes){if(typeof attributes=="object"&&(attributes.patternFill||attributes.fgColor)){return{fill:attributes}}else if(attributes.font||attributes.numFmt||attributes.border||attributes.fill){return attributes}else{return this._getStyleCSS(attributes)}},_getStyleCSS:function(css){return css},_addXf:function(attributes){var fontId=this._addFont(attributes.font);var fillId=this._addFill(attributes.fill);var borderId=this._addBorder(attributes.border);var numFmtId=this._addNumFmt(attributes.numFmt);var $xf=XmlNode("xf").attr("numFmtId",numFmtId).attr("fontId",fontId).attr("fillId",fillId).attr("borderId",borderId).attr("xfId","0");if(fontId>0){$xf.attr("applyFont","1")}if(fillId>0){$xf.attr("applyFill","1")}if(borderId>0){$xf.attr("applyBorder","1")}if(numFmtId>0){$xf.attr("applyNumberFormat","1")}if(attributes.alignment){var $alignment=XmlNode("alignment");if(attributes.alignment.horizontal){$alignment.attr("horizontal",attributes.alignment.horizontal)}if(attributes.alignment.vertical){$alignment.attr("vertical",attributes.alignment.vertical)}if(attributes.alignment.indent){$alignment.attr("indent",attributes.alignment.indent)}if(attributes.alignment.readingOrder){$alignment.attr("readingOrder",attributes.alignment.readingOrder)}if(attributes.alignment.wrapText){$alignment.attr("wrapText",attributes.alignment.wrapText)}if(attributes.alignment.textRotation!=undefined){$alignment.attr("textRotation",attributes.alignment.textRotation)}$xf.append($alignment).attr("applyAlignment",1)}this.$cellXfs.append($xf);var count=+this.$cellXfs.children().length;this.$cellXfs.attr("count",count);return count-1},_addFont:function(attributes){if(!attributes){return 0}var $font=XmlNode("font").append(XmlNode("sz").attr("val",attributes.sz||this.defaultStyle.font.sz)).append(XmlNode("name").attr("val",attributes.name||this.defaultStyle.font.name));if(attributes.bold)$font.append(XmlNode("b"));if(attributes.underline)$font.append(XmlNode("u"));if(attributes.italic)$font.append(XmlNode("i"));if(attributes.strike)$font.append(XmlNode("strike"));if(attributes.outline)$font.append(XmlNode("outline"));if(attributes.shadow)$font.append(XmlNode("shadow"));if(attributes.vertAlign){$font.append(XmlNode("vertAlign").attr("val",attributes.vertAlign))}if(attributes.color){if(attributes.color.theme){$font.append(XmlNode("color").attr("theme",attributes.color.theme));if(attributes.color.tint){$font.append(XmlNode("tint").attr("theme",attributes.color.tint))}}else if(attributes.color.rgb){$font.append(XmlNode("color").attr("rgb",attributes.color.rgb))}}this.$fonts.append($font);var count=this.$fonts.children().length;this.$fonts.attr("count",count);return count-1},_addNumFmt:function(numFmt){if(!numFmt){return 0}if(typeof numFmt=="string"){var numFmtIdx=fmt_table[numFmt];if(numFmtIdx>=0){return numFmtIdx}}if(/^[0-9]+$/.exec(numFmt)){return numFmt}numFmt=numFmt.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;");var $numFmt=XmlNode("numFmt").attr("numFmtId",++customNumFmtId).attr("formatCode",numFmt);this.$numFmts.append($numFmt);var count=this.$numFmts.children().length;this.$numFmts.attr("count",count);return customNumFmtId},_addFill:function(attributes){if(!attributes){return 0}var $patternFill=XmlNode("patternFill").attr("patternType",attributes.patternType||"solid");if(attributes.fgColor){var $fgColor=XmlNode("fgColor");if(attributes.fgColor.rgb){if(attributes.fgColor.rgb.length==6){attributes.fgColor.rgb="FF"+attributes.fgColor.rgb}$fgColor.attr("rgb",attributes.fgColor.rgb);$patternFill.append($fgColor)}else if(attributes.fgColor.theme){$fgColor.attr("theme",attributes.fgColor.theme);if(attributes.fgColor.tint){$fgColor.attr("tint",attributes.fgColor.tint)}$patternFill.append($fgColor)}if(!attributes.bgColor){attributes.bgColor={indexed:"64"}}}if(attributes.bgColor){var $bgColor=XmlNode("bgColor").attr(attributes.bgColor);$patternFill.append($bgColor)}var $fill=XmlNode("fill").append($patternFill);this.$fills.append($fill);var count=this.$fills.children().length;this.$fills.attr("count",count);return count-1},_getSubBorder:function(direction,spec){var $direction=XmlNode(direction);if(spec){if(spec.style)$direction.attr("style",spec.style);if(spec.color){var $color=XmlNode("color");if(spec.color.auto){$color.attr("auto",spec.color.auto)}else if(spec.color.rgb){$color.attr("rgb",spec.color.rgb)}else if(spec.color.theme||spec.color.tint){$color.attr("theme",spec.color.theme||"1");$color.attr("tint",spec.color.tint||"0")}$direction.append($color)}}return $direction},_addBorder:function(attributes){if(!attributes){return 0}var self=this;var $border=XmlNode("border").attr("diagonalUp",attributes.diagonalUp).attr("diagonalDown",attributes.diagonalDown);var directions=["left","right","top","bottom","diagonal"];directions.forEach(function(direction){$border.append(self._getSubBorder(direction,attributes[direction]))});this.$borders.append($border);var count=this.$borders.children().length;this.$borders.attr("count",count);return count-1},toXml:function(){return this.$styles.toXml()}}.initialize(options||{})};XLSX.parse_xlscfb=parse_xlscfb;XLSX.parse_zip=parse_zip;XLSX.read=readSync;XLSX.readFile=readFileSync;XLSX.readFileSync=readFileSync;XLSX.write=writeSync;XLSX.writeFile=writeFileSync;XLSX.writeFileSync=writeFileSync;XLSX.utils=utils;XLSX.CFB=CFB;XLSX.SSF=SSF})(typeof exports!=="undefined"?exports:XLSX);var XLS=XLSX;
Source/UBCS-WEB/src/config/js-xlsx-master/dist/xlsx.full.min.map
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
{"version":3,"sources":["jszip.js","dist/cpexcel.js","xlsx.js"],"names":["e","exports","module","define","amd","f","window","global","self","JSZip","t","n","r","s","o","u","a","require","i","Error","call","length","1","_dereq_","_keyStr","encode","input","utf8","output","chr1","chr2","chr3","enc1","enc2","enc3","enc4","charCodeAt","isNaN","charAt","decode","replace","indexOf","String","fromCharCode","2","CompressedObject","this","compressedSize","uncompressedSize","crc32","compressionMethod","compressedContent","prototype","getContent","getCompressedContent","3","STORE","magic","compress","content","uncompress","compressInputType","uncompressInputType","DEFLATE","./flate","4","utils","table","crc","isArray","getTypeOf","x","y","b","iTop","./utils","5","DataReader","data","index","checkOffset","offset","checkIndex","newIndex","setIndex","skip","byteAt","readInt","size","result","readString","transformTo","readData","lastIndexOfSignature","sig","readDate","dostime","Date","6","base64","binary","dir","createFolders","date","compression","comment","7","string2binary","str","string2Uint8Array","uint8Array2String","array","string2Blob","buffer","arrayBuffer2Blob","outputType","checkSupport","type","MAX_VALUE_16BITS","MAX_VALUE_32BITS","pretty","findCompression","isRegExp","object","8","USE_TYPEDARRAY","Uint8Array","Uint16Array","Uint32Array","pako","deflateRaw","inflateRaw","9","options","files","root","load","clone","newObj","support","defaults","compressions","./base64","./compressions","./defaults","./deprecatedPublicUtils","./load","./object","./support","10","ZipEntries","zipEntries","file","fileName","decompressed","optimizedBinaryString","fileComment","zipComment","./zipEntries","11","Buffer","encoding","test","isBuffer","undefined","12","Uint8ArrayReader","NodeBufferReader","slice","./uint8ArrayReader","13","signature","nodeBuffer","StringWriter","Uint8ArrayWriter","getRawData","_data","copy","set","getBinaryData","nodebuffer","asBinary","dataToString","asUTF8","out","utf8decode","utf8encode","ZipObject","name","_initialMetadata","asText","asNodeBuffer","asUint8Array","asArrayBuffer","decToHex","dec","bytes","hex","extend","attr","arguments","hasOwnProperty","prepareFileAttrs","toUpperCase","fileAdd","dataType","parent","parentFolder","folderAdd","path","substring","lastSlash","lastIndexOf","generateCompressedObjectFrom","generateZipParts","compressedObject","utfEncodedFileName","utfEncodedComment","useUTF8ForFileName","useUTF8ForComment","dosTime","dosDate","extraFields","unicodePathExtraField","unicodeCommentExtraField","getHours","getMinutes","getSeconds","getFullYear","getMonth","getDate","header","fileRecord","LOCAL_FILE_HEADER","dirRecord","CENTRAL_FILE_HEADER","stream","filter","search","filename","relativePath","fileClone","push","regexp","folder","arg","newFolder","ret","remove","kids","generate","zipData","localDirLength","centralDirLength","writer","compressionName","zipPart","dirEnd","CENTRAL_DIRECTORY_END","typeName","toLowerCase","append","zip","finalize","string","./compressedObject","./crc32","./nodeBuffer","./signature","./stringWriter","./uint8ArrayWriter","./utf8","14","ZIP64_CENTRAL_DIRECTORY_LOCATOR","ZIP64_CENTRAL_DIRECTORY_END","DATA_DESCRIPTOR","15","StringReader","./dataReader","16","join","17","arraybuffer","ArrayBuffer","uint8array","blob","Blob","Builder","BlobBuilder","WebKitBlobBuilder","MozBlobBuilder","MSBlobBuilder","builder","getBlob","18","sig0","sig1","sig2","sig3","subarray","19","20","_utf8len","Array","string2buf","buf","c","c2","m_pos","str_len","buf_len","utf8border","max","pos","buf2string","c_len","len","utf16buf","applyFromCharCode","toString","k","chunk","nextBoundary","Math","min","21","identity","stringToArrayLike","arrayLikeToString","canUseApply","apply","resultStr","floor","arrayLikeToArrayLike","arrayFrom","arrayTo","transform","byteLength","inputType","Object","supported","res","code","method","22","ZipEntry","jszipProto","loadOptions","checkSignature","expectedSignature","reader","readBlockEndOfCentral","diskNumber","diskWithCentralDirStart","centralDirRecordsOnThisDisk","centralDirRecords","centralDirSize","centralDirOffset","zipCommentLength","readBlockZip64EndOfCentral","zip64EndOfCentralSize","versionMadeBy","versionNeeded","zip64ExtensibleData","extraDataSize","extraFieldId","extraFieldLength","extraFieldValue","id","value","readBlockZip64EndOfCentralLocator","diskWithZip64CentralDirStart","relativeOffsetEndOfZip64CentralDir","disksCount","readLocalFiles","localHeaderOffset","readLocalPart","handleUTF8","readCentralDir","zip64","readCentralPart","readEndOfCentral","prepareReader","./nodeBufferReader","./stringReader","./zipEntry","23","isEncrypted","bitFlag","useUTF8","prepareCompressedContent","from","previousIndex","compressedFileData","prepareContent","uncompressedFileData","localExtraFieldsLength","fileNameLength","checkCRC32","extraFieldsLength","fileCommentLength","diskNumberStart","internalFileAttributes","externalFileAttributes","readExtraFields","parseZIP64ExtraField","extraReader","start","upath","findExtraFieldUnicodePath","ucomment","findExtraFieldUnicodeComment","upathField","ucommentField","24","assign","deflate","inflate","constants","./lib/deflate","./lib/inflate","./lib/utils/common","./lib/zlib/constants","25","zlib_deflate","strings","msg","zstream","Z_NO_FLUSH","Z_FINISH","Z_OK","Z_STREAM_END","Z_DEFAULT_COMPRESSION","Z_DEFAULT_STRATEGY","Z_DEFLATED","Deflate","level","chunkSize","windowBits","memLevel","strategy","to","opt","raw","gzip","err","ended","chunks","strm","avail_out","status","deflateInit2","deflateSetHeader","mode","_mode","next_in","avail_in","Buf8","next_out","onEnd","onData","buf2binstring","shrinkBuf","deflateEnd","flattenChunks","deflator","./utils/common","./utils/strings","./zlib/deflate.js","./zlib/messages","./zlib/zstream","26","zlib_inflate","gzheader","Inflate","inflateInit2","inflateGetHeader","next_out_utf8","tail","utf8str","binstring2buf","arraySet","inflateEnd","inflator","ungzip","./zlib/constants","./zlib/gzheader","./zlib/inflate.js","27","TYPED_OK","Int32Array","obj","sources","source","shift","TypeError","p","fnTyped","dest","src","src_offs","dest_offs","l","fnUntyped","concat","setTyped","on","Buf16","Buf32","28","STR_APPLY_OK","STR_APPLY_UIA_OK","__","./common","29","adler32","adler","s1","s2","30","Z_PARTIAL_FLUSH","Z_SYNC_FLUSH","Z_FULL_FLUSH","Z_BLOCK","Z_TREES","Z_NEED_DICT","Z_ERRNO","Z_STREAM_ERROR","Z_DATA_ERROR","Z_BUF_ERROR","Z_NO_COMPRESSION","Z_BEST_SPEED","Z_BEST_COMPRESSION","Z_FILTERED","Z_HUFFMAN_ONLY","Z_RLE","Z_FIXED","Z_BINARY","Z_TEXT","Z_UNKNOWN","31","makeTable","crcTable","end","32","trees","MAX_MEM_LEVEL","MAX_WBITS","DEF_MEM_LEVEL","LENGTH_CODES","LITERALS","L_CODES","D_CODES","BL_CODES","HEAP_SIZE","MAX_BITS","MIN_MATCH","MAX_MATCH","MIN_LOOKAHEAD","PRESET_DICT","INIT_STATE","EXTRA_STATE","NAME_STATE","COMMENT_STATE","HCRC_STATE","BUSY_STATE","FINISH_STATE","BS_NEED_MORE","BS_BLOCK_DONE","BS_FINISH_STARTED","BS_FINISH_DONE","OS_CODE","errorCode","rank","zero","flush_pending","state","pending","pending_buf","pending_out","total_out","flush_block_only","last","_tr_flush_block","block_start","strstart","put_byte","putShortMSB","read_buf","wrap","total_in","longest_match","cur_match","chain_length","max_chain_length","scan","match","best_len","prev_length","nice_match","limit","w_size","_win","wmask","w_mask","prev","strend","scan_end1","scan_end","good_match","lookahead","match_start","fill_window","_w_size","m","more","window_size","hash_size","head","insert","ins_h","hash_shift","hash_mask","deflate_stored","flush","max_block_size","pending_buf_size","max_start","deflate_fast","hash_head","bflush","match_length","_tr_tally","max_lazy_match","last_lit","deflate_slow","max_insert","prev_match","match_available","deflate_rle","deflate_huff","Config","good_length","max_lazy","nice_length","max_chain","func","configuration_table","lm_init","DeflateState","gzhead","gzindex","last_flush","w_bits","hash_bits","dyn_ltree","dyn_dtree","bl_tree","l_desc","d_desc","bl_desc","bl_count","heap","heap_len","heap_max","depth","l_buf","lit_bufsize","d_buf","opt_len","static_len","matches","bi_buf","bi_valid","deflateResetKeep","data_type","_tr_init","deflateReset","deflateInit","old_flush","beg","val","text","hcrc","extra","time","os","level_flags","bstate","_tr_align","_tr_stored_block","deflateInfo","../utils/common","./adler32","./messages","./trees","33","GZheader","xflags","extra_len","done","34","BAD","TYPE","inflate_fast","_in","_out","dmax","wsize","whave","wnext","hold","bits","lcode","dcode","lmask","dmask","here","op","dist","from_source","lencode","distcode","lenbits","distbits","top","dolen","dodist","sane","35","inflate_table","CODES","LENS","DISTS","Z_MEM_ERROR","HEAD","FLAGS","TIME","OS","EXLEN","EXTRA","NAME","COMMENT","HCRC","DICTID","DICT","TYPEDO","STORED","COPY_","COPY","TABLE","LENLENS","CODELENS","LEN_","LEN","LENEXT","DIST","DISTEXT","MATCH","LIT","CHECK","LENGTH","DONE","MEM","SYNC","ENOUGH_LENS","ENOUGH_DISTS","DEF_WBITS","ZSWAP32","q","InflateState","havedict","flags","check","total","wbits","ncode","nlen","ndist","have","next","lens","work","lendyn","distdyn","back","was","inflateResetKeep","inflateReset","inflateReset2","inflateInit","virgin","lenfix","distfix","fixedtables","sym","updatewindow","put","left","here_bits","here_op","here_val","last_bits","last_op","last_val","hbuf","opts","order","inf_leave","inflateInfo","./inffast","./inftrees","36","MAXBITS","lbase","lext","dbase","dext","lens_index","codes","table_index","curr","drop","used","huff","incr","fill","low","mask","base","base_index","count","offs","extra_index","37","0","-1","-2","-3","-4","-5","-6","38","STORED_BLOCK","STATIC_TREES","DYN_TREES","Buf_size","MAX_BL_BITS","END_BLOCK","REP_3_6","REPZ_3_10","REPZ_11_138","extra_lbits","extra_dbits","extra_blbits","bl_order","DIST_CODE_LEN","static_ltree","static_dtree","_dist_code","_length_code","base_length","base_dist","StaticTreeDesc","static_tree","extra_bits","extra_base","elems","max_length","has_stree","static_l_desc","static_d_desc","static_bl_desc","TreeDesc","dyn_tree","stat_desc","max_code","d_code","put_short","w","send_bits","send_code","tree","bi_reverse","bi_flush","gen_bitlen","desc","stree","h","xbits","overflow","gen_codes","next_code","tr_static_init","init_block","bi_windup","copy_block","smaller","_n2","_m2","pqdownheap","v","j","compress_block","ltree","dtree","lc","lx","build_tree","node","scan_tree","prevlen","curlen","nextlen","max_count","min_count","send_tree","build_bl_tree","max_blindex","send_all_trees","lcodes","dcodes","blcodes","detect_data_type","black_mask","static_init_done","stored_len","opt_lenb","static_lenb","39","ZStream","cptable","version","d","D","enc","split","factory","cpt","1200","1201","12000","12001","16969","20127","65000","65001","sbcs_cache","dbcs_cache","magic_cache","magic_decode","magic_encode","cpecache","cpdcache","sfcc","cca","has_buf","mdl","mdb","make_EE","E","EE","keys","ee","sbcs_encode","make_sbcs_encode","cp","sbcs_e","ofmt","sbcs_decode","make_sbcs_decode","DD","sbcs_d","dbcs_encode","make_dbcs_encode","dbcs_e","jj","dbcs_decode","make_dbcs_decode","dbcs_d","utf8_d","ww","utf8_e","direct","encache","cp_decache","decache","forEach","last_enc","last_cp","cache","sbcs","dbcs","BM","SetD","tt","C","M","map","F","dash","o64","c1","c3","e1","e2","e3","e4","hascp","XLSX","make_xlsx","current_codepage","current_cptable","reset_cp","set_cp","char_codes","debom_xml","_getchar","_gc1","substr","_gc2","Base64","make_b64","b64_decode","new_raw_buf","s2a","bconcat","bufs","chr0","SSF","make_ssf","_strrev","pad0","pad_","rpad_","pad0r1","round","pad0r2","p2_32","pow","pad0r","isgeneral","opts_fmt","fixopts","table_fmt","40","45","46","47","48","49","56","65535","days","months","frac","mixed","sgn","B","P_2","P_1","P","Q_2","Q_1","Q","A","general_fmt_int","_general_int","general_fmt_num","make_general_fmt_num","gnr1","gnr2","gnr4","gnr5","gnr6","gfn2","gfn5","toFixed","toPrecision","toExponential","gfn3","gfn4","V","log","abs","LOG10E","_general_num","general_fmt","_general","fix_hijri","parse_date_code","b2","dow","dout","T","H","S","date1904","setDate","getDay","write_date","fmt","ss0","ss","outl","commaify","write_num","make_write_num","pct1","write_num_pct","sfmt","mul","write_num_cm","idx","write_num_exp","period","fakee","$$","$1","$2","$3","frac1","write_num_f1","aval","sign","den","parseInt","rr","myn","myd","write_num_f2","dec1","closeparen","phone","hashq","cc","rnd","dd","flr","write_num_flt","ffmt","oo","ri","ff","oa","lres","rres","write_num_cm2","write_num_pct2","write_num_exp2","write_num_int","split_fmt","in_str","_split","abstime","eval_fmt","flen","lst","dt","hr","bt","ssm","nstr","vv","myv","ostr","decpt","lasti","retval","_eval","cfregex","cfregex2","chkcond","thresh","parseFloat","choose_fmt","lat","m1","m2","format","_table","load_entry","get_table","load_table","tbl","XLMLFormatMap","General Number","General Date","Long Date","Medium Date","Short Date","Long Time","Medium Time","Short Time","Currency","Fixed","Standard","Percent","Scientific","Yes/No","True/False","On/Off","DO_NOT_EXPORT_CFB","CFB","_CFB","parse","mver","ssz","nmfs","ndfs","dir_start","minifat_start","difat_start","fat_addrs","prep_blob","mv","check_get_mver","check_shifts","nds","read_shift","chk","sectors","sectorify","sleuth_fat","sector_list","make_sector_list","ENDOFCHAIN","Paths","FileIndex","FullPaths","FullPathDir","read_directory","build_full_paths","root_name","find_path","make_find_path","find","HEADER_SIGNATURE","HEADER_CLSID","nsectors","ceil","FI","FPD","FP","L","R","pl","dad","UCFullPaths","UCPaths","UCPath","cnt","sector","__readInt32LE","get_sector_list","chkd","sl","buf_chain","modulus","addr","nodes","__toBuffer","minifat_store","namelen","ctime","mtime","__utf16le","color","clsid","ct","read_date","mt","storage","MSSZ","__readUInt32LE","fs","readFileSync","readSync","consts","MAXREGSECT","DIFSECT","FATSECT","FREESECT","HEADER_MINOR_VERSION","MAXREGSID","NOSTREAM","EntryTypes","read","ReadShift","CheckField","isval","evert_key","key","K","evert","evert_num","evert_arr","datenum","epoch","cc2str","arr","getdata","safegetzipfile","lowerCaseFiles","getzipfile","getzipdata","safe","_fs","jszip","attregexg","tagregex","nsregex","nsregex2","parsexmltag","tag","skip_root","z","eq","strip_ns","encodings","&quot;","&apos;","&gt;","&lt;","&amp;","rencoding","rencstr","unescapexml","encregex","coderegex","decregex","charegex","escapexml","xlml_fixstr","entregex","entrepl","parsexmlbool","utf8read","utf8reada","orig","utf8readb","corpus","utf8readc","matchtag","mtcache","g","RegExp","vtregex","vt_cache","vt_regex","vtvregex","vtmregex","parseVector","baseType","wtregex","writetag","wxt_helper","writextag","write_w3cdtf","toISOString","write_vt","XML_HEADER","XMLNS","dc","dcterms","dcmitype","mx","sjs","vt","xsi","xsd","main","readIEEE754","isLE","nl","ml","el","eMax","eBias","NaN","Infinity","___toBuffer","toBuffer_","___utf16le","utf16le_","__readUInt16LE","__hexlify","___hexlify","hexlify_","__utf8","___utf8","__readUInt8","__lpstr","___lpstr","lpstr_","__lpwstr","___lpwstr","lpwstr_","__double","___double","is_buf","is_buf_a","utf16le_b","lpstr_b","readUInt32LE","lpwstr_b","utf8_b","double_","readDoubleLE","is_buf_b","__readInt16LE","___unhexlify","__unhexlify","oI","oR","loc","WriteShift","writeUInt16LE","writeUInt32LE","writeDoubleLE","writeInt32LE","hexstr","fld","write_shift","parsenoop","writenoop","new_buf","sz","recordhopper","cb","tmpbyte","cntbyte","RT","XLSBRecordEnum","buf_array","blksz","newblk","ba_newblk","curbuf","endbuf","ba_endbuf","ba_next","ba_end","ba_push","_bufs","write_record","ba","payload","evert_RE","shift_cell_xls","cell","tgt","cRel","rRel","shift_range_xls","range","OFFCRYPTO","make_offcrypto","O","_crypto","crypto","rc4","md5","createHash","update","digest","parse_StrRun","ich","ifnt","parse_RichStr","parse_XLWideString","rgsStrRun","dwSizeStrRun","write_RichStr","write_XLWideString","parse_XLSBCell","col","iStyleRef","fPhShow","write_XLSBCell","parse_XLSBCodeName","parse_XLNullableWideString","cchCharacters","write_XLNullableWideString","parse_RelID","write_RelID","parse_RkNumber","fX100","fInt","RK","parse_UncheckedRfX","write_UncheckedRfX","parse_Xnum","write_Xnum","BErr","42","43","255","RBErr","parse_BrtColor","fValidRGB","xColorType","nTintAndShade","bRed","bGreen","bBlue","bAlpha","parse_FontFlags","fItalic","fStrikeout","fOutline","fShadow","fCondense","fExtend","VT_EMPTY","VT_NULL","VT_I2","VT_I4","VT_R4","VT_R8","VT_CY","VT_DATE","VT_BSTR","VT_ERROR","VT_BOOL","VT_VARIANT","VT_DECIMAL","VT_I1","VT_UI1","VT_UI2","VT_UI4","VT_I8","VT_UI8","VT_INT","VT_UINT","VT_LPSTR","VT_LPWSTR","VT_FILETIME","VT_BLOB","VT_STREAM","VT_STORAGE","VT_STREAMED_Object","VT_STORED_Object","VT_BLOB_Object","VT_CF","VT_CLSID","VT_VERSIONED_STREAM","VT_VECTOR","VT_ARRAY","VT_STRING","VT_USTR","VT_CUSTOM","DocSummaryPIDDSI","SummaryPIDSI","SpecialProperties","2147483648","2147483651","1919054434","CountryEnum","41","44","52","55","61","64","66","81","82","84","86","90","105","213","216","218","351","354","358","420","886","961","962","963","964","965","966","971","972","974","981","XLSFillPattern","rgbify","XLSIcv","ct2type","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml","application/vnd.ms-excel.binIndexWs","application/vnd.ms-excel.chartsheet","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml","application/vnd.ms-excel.dialogsheet","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml","application/vnd.ms-excel.macrosheet","application/vnd.ms-excel.macrosheet+xml","application/vnd.ms-excel.intlmacrosheet","application/vnd.ms-excel.binIndexMs","application/vnd.openxmlformats-package.core-properties+xml","application/vnd.openxmlformats-officedocument.custom-properties+xml","application/vnd.openxmlformats-officedocument.extended-properties+xml","application/vnd.openxmlformats-officedocument.customXmlProperties+xml","application/vnd.ms-excel.comments","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml","application/vnd.ms-excel.pivotTable","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml","application/vnd.ms-excel.calcChain","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings","application/vnd.ms-office.activeX","application/vnd.ms-office.activeX+xml","application/vnd.ms-excel.attachedToolbars","application/vnd.ms-excel.connections","application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml","application/vnd.ms-excel.externalLink","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml","application/vnd.ms-excel.sheetMetadata","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml","application/vnd.ms-excel.pivotCacheDefinition","application/vnd.ms-excel.pivotCacheRecords","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml","application/vnd.ms-excel.queryTable","application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml","application/vnd.ms-excel.userNames","application/vnd.ms-excel.revisionHeaders","application/vnd.ms-excel.revisionLog","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml","application/vnd.ms-excel.tableSingleCells","application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml","application/vnd.ms-excel.slicer","application/vnd.ms-excel.slicerCache","application/vnd.ms-excel.slicer+xml","application/vnd.ms-excel.slicerCache+xml","application/vnd.ms-excel.wsSortMap","application/vnd.ms-excel.table","application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml","application/vnd.openxmlformats-officedocument.theme+xml","application/vnd.ms-excel.Timeline+xml","application/vnd.ms-excel.TimelineCache+xml","application/vnd.ms-office.vbaProject","application/vnd.ms-office.vbaProjectSignature","application/vnd.ms-office.volatileDependencies","application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml","application/vnd.ms-excel.controlproperties+xml","application/vnd.openxmlformats-officedocument.model+data","application/vnd.ms-excel.Survey+xml","application/vnd.openxmlformats-officedocument.drawing+xml","application/vnd.openxmlformats-officedocument.drawingml.chart+xml","application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml","application/vnd.openxmlformats-officedocument.vmlDrawing","application/vnd.openxmlformats-package.relationships+xml","application/vnd.openxmlformats-officedocument.oleObject","sheet","CT_LIST","workbooks","xlsx","xlsm","xlsb","xltx","strs","sheets","styles","type2ct","CT","parse_ct","ctext","calcchains","themes","coreprops","extprops","custprops","comments","vba","TODO","rels","xmlns","Extension","ContentType","PartName","WTF","console","error","calcchain","sst","style","CTYPE_XML_ROOT","xmlns:xsd","xmlns:xsi","CTYPE_DEFAULTS","write_ct","f1","bookType","f2","f3","RELS","WB","SHEET","parse_rels","currentFilePath","hash","resolveRelativePathIntoAbsolute","toksFrom","pop","toksTo","reversed","tokTo","rel","Type","Target","Id","TargetMode","canonictarget","RELS_ROOT","write_rels","rid","CORE_PROPS","CORE_PROPS_REGEX","parse_core_props","cur","CORE_PROPS_XML_ROOT","xmlns:cp","xmlns:dc","xmlns:dcterms","xmlns:dcmitype","cp_doit","write_core_props","Props","title","subject","creator","keywords","description","CreatedDate","xsi:type","ModifiedDate","EXT_PROPS","parse_ext_props","HeadingPairs","TitlesOfParts","widx","Worksheets","parts","SheetNames","EXT_PROPS_XML_ROOT","xmlns:vt","write_ext_props","W","Application","CUST_PROPS","custregex","parse_cust_props","xmlnsvt","toks","warn","CUST_PROPS_XML_ROOT","write_cust_props","pid","custprop","fmtid","xlml_set_prop","parse_FILETIME","dwLowDateTime","dwHighDateTime","parse_lpstr","pad","parse_lpwstr","parse_VtStringBase","stringType","parse_VtString","parse_VtUnalignedString","parse_VtVecUnalignedLpstrValue","parse_VtVecUnalignedLpstr","parse_VtHeadingPair","headingString","parse_TypedPropertyValue","headerParts","parse_VtVecHeadingPairValue","cElements","parse_VtVecHeadingPair","parse_dictionary","CodePage","dict","parse_BLOB","parse_ClipboardData","Size","parse_VtVector","_opts","parse_PropertySet","PIDSI","start_addr","NumProps","Dictionary","DictObj","PropID","Offset","PropH","fail","piddsi","oldpos","parsebool","parse_PropertySetStream","NumSets","FMTID0","FMTID1","Offset0","Offset1","vers","SystemIdentifier","PSet0","rval","FMTID","PSet1","parsenoop2","parslurp","target","parslurp2","parseuint16","parseuint16a","parse_Boolean","parse_Bes","parse_ShortXLUnicodeString","cch","width","biff","fHighByte","parse_XLUnicodeRichExtendedString","fExtSt","fRichSt","cRun","cbExtRst","parse_XLUnicodeStringNoCch","parse_XLUnicodeString","parse_XLUnicodeString2","parse_ControlInfo","parse_URLMoniker","url","parse_FileMoniker","cAnti","ansiLength","ansiPath","endServer","versionNumber","cbUnicodePathSize","cbUnicodePathBytes","usKeyValue","unicodePath","parse_HyperlinkMoniker","parse_HyperlinkString","parse_Hyperlink","sVer","displayName","targetFrameName","moniker","oleMoniker","location","guid","fileTime","parse_LongRGBA","parse_LongRGB","parse_XLSCell","rw","ixfe","parse_frtHeader","rt","parse_OptXLUnicodeString","HIDEOBJENUM","parse_HideObjEnum","parse_XTI","iSupBook","itabFirst","itabLast","parse_RkRec","parse_AddinUdf","udfName","parse_Ref8U","rwFirst","rwLast","colFirst","colLast","parse_RefU","parse_Ref","parse_FtCmo","ot","parse_FtNts","fSharedNote","parse_FtCf","cf","FtTab","parse_FtArray","fts","ft","parse_FontIndex","parse_BOF","BIFFVer","parse_InterfaceHdr","parse_WriteAccess","UserName","parse_BoundSheet8","hidden","hs","parse_SST","ucnt","Count","Unique","parse_ExtSST","extsst","dsst","parse_Row","Col","rht","parse_ForceFullCalculation","fullcalc","parse_CompressPictures","parse_RecalcId","parse_DefaultRowHeight","miyRw","fl","Unsynced","DyZero","ExAsc","ExDsc","parse_Window1","xWn","yWn","dxWn","dyWn","iTabCur","iTabFirst","ctabSel","wTabRatio","Pos","Dim","Flags","CurTab","FirstTab","Selected","TabRatio","parse_Font","parse_LabelSst","isst","parse_Label","parse_Format","ifmt","fmtstr","parse_Dimensions","parse_RK","rkrec","rknum","parse_MulRk","rkrecs","lastcol","parse_CellStyleXF","patternType","icvFore","icvBack","parse_CellXF","parse_StyleXF","parse_XF","fStyle","parse_Guts","parse_BoolErr","parse_Number","xnum","parse_XLHeaderFooter","parse_SupBook","ctab","virtPath","rgst","sbcch","parse_ExternName","body","fBuiltIn","fWantAdvise","fWantPict","fOle","fOleLink","fIcon","parse_Lbl","chKey","cce","itab","rgce","parse_NameParsedFormula","Name","parse_ExternSheet","snames","parse_ShrFmla","ref","cUse","parse_SharedParsedFormula","parse_Array","parse_ArrayParsedFormula","parse_MTRSettings","fMTREnabled","fUserSetThreadCount","cUserThreadCount","parse_NoteSh","row","idObj","stAuthor","parse_Note","parse_MergeCells","merges","cmcs","parse_Obj","cmo","parse_TxO","lastobj","controlInfo","cchText","cbRuns","ifntEmpty","texts","hdr","parse_HLink","hlink","parse_HLinkTooltip","wzTooltip","parse_Country","parse_ClrtClient","ccv","parse_Palette","parse_XFCRC","cxfs","parse_Style","parse_StyleExt","parse_ColInfo","parse_Window2","parse_Backup","parse_Blank","parse_BottomMargin","parse_BuiltInFnGroupCount","parse_CalcCount","parse_CalcDelta","parse_CalcIter","parse_CalcMode","parse_CalcPrecision","parse_CalcRefMode","parse_CalcSaveRecalc","parse_CodePage","parse_Compat12","parse_Date1904","parse_DefColWidth","parse_DSF","parse_EntExU2","parse_EOF","parse_Excel9File","parse_FeatHdr","parse_FontX","parse_Footer","parse_GridSet","parse_HCenter","parse_Header","parse_HideObj","parse_InterfaceEnd","parse_LeftMargin","parse_Mms","parse_ObjProtect","parse_Password","parse_PrintGrid","parse_PrintRowCol","parse_PrintSize","parse_Prot4Rev","parse_Prot4RevPass","parse_Protect","parse_RefreshAll","parse_RightMargin","parse_RRTabId","parse_ScenarioProtect","parse_Scl","parse_String","parse_SxBool","parse_TopMargin","parse_UsesELFs","parse_VCenter","parse_WinProtect","parse_WriteProtect","parse_VerticalPageBreaks","parse_HorizontalPageBreaks","parse_Selection","parse_Continue","parse_Pane","parse_Pls","parse_DCon","parse_DConRef","parse_DConName","parse_XCT","parse_CRN","parse_FileSharing","parse_Uncalced","parse_Template","parse_Intl","parse_WsBool","parse_Sort","parse_Sync","parse_LPr","parse_DxGCol","parse_FnGroupName","parse_FilterMode","parse_AutoFilterInfo","parse_AutoFilter","parse_Setup","parse_ScenMan","parse_SCENARIO","parse_SxView","parse_Sxvd","parse_SXVI","parse_SxIvd","parse_SXLI","parse_SXPI","parse_DocRoute","parse_RecipName","parse_MulBlank","parse_SXDI","parse_SXDB","parse_SXFDB","parse_SXDBB","parse_SXNum","parse_SxErr","parse_SXInt","parse_SXString","parse_SXDtr","parse_SxNil","parse_SXTbl","parse_SXTBRGIITM","parse_SxTbpg","parse_ObProj","parse_SXStreamID","parse_DBCell","parse_SXRng","parse_SxIsxoper","parse_BookBool","parse_DbOrParamQry","parse_OleObjectSize","parse_SXVS","parse_BkHim","parse_MsoDrawingGroup","parse_MsoDrawing","parse_MsoDrawingSelection","parse_PhoneticInfo","parse_SxRule","parse_SXEx","parse_SxFilt","parse_SxDXF","parse_SxItm","parse_SxName","parse_SxSelect","parse_SXPair","parse_SxFmla","parse_SxFormat","parse_SXVDEx","parse_SXFormula","parse_SXDBEx","parse_RRDInsDel","parse_RRDHead","parse_RRDChgCell","parse_RRDRenSheet","parse_RRSort","parse_RRDMove","parse_RRFormat","parse_RRAutoFmt","parse_RRInsertSh","parse_RRDMoveBegin","parse_RRDMoveEnd","parse_RRDInsDelBegin","parse_RRDInsDelEnd","parse_RRDConflict","parse_RRDDefName","parse_RRDRstEtxp","parse_LRng","parse_CUsr","parse_CbUsr","parse_UsrInfo","parse_UsrExcl","parse_FileLock","parse_RRDInfo","parse_BCUsrs","parse_UsrChk","parse_UserBView","parse_UserSViewBegin","parse_UserSViewEnd","parse_RRDUserView","parse_Qsi","parse_CondFmt","parse_CF","parse_DVal","parse_DConBin","parse_Lel","parse_XLSCodeName","parse_SXFDBType","parse_ObNoMacros","parse_Dv","parse_Index","parse_Table","parse_BigName","parse_ContinueBigName","parse_WebPub","parse_QsiSXTag","parse_DBQueryExt","parse_ExtString","parse_TxtQry","parse_Qsir","parse_Qsif","parse_RRDTQSIF","parse_OleDbConn","parse_WOpt","parse_SXViewEx","parse_SXTH","parse_SXPIEx","parse_SXVDTEx","parse_SXViewEx9","parse_ContinueFrt","parse_RealTimeData","parse_ChartFrtInfo","parse_FrtWrapper","parse_StartBlock","parse_EndBlock","parse_StartObject","parse_EndObject","parse_CatLab","parse_YMult","parse_SXViewLink","parse_PivotChartBits","parse_FrtFontList","parse_SheetExt","parse_BookExt","parse_SXAddl","parse_CrErr","parse_HFPicture","parse_Feat","parse_DataLabExt","parse_DataLabExtContents","parse_CellWatch","parse_FeatHdr11","parse_Feature11","parse_DropDownObjIds","parse_ContinueFrt11","parse_DConn","parse_List12","parse_Feature12","parse_CondFmt12","parse_CF12","parse_CFEx","parse_AutoFilter12","parse_ContinueFrt12","parse_MDTInfo","parse_MDXStr","parse_MDXTuple","parse_MDXSet","parse_MDXProp","parse_MDXKPI","parse_MDB","parse_PLV","parse_DXF","parse_TableStyles","parse_TableStyle","parse_TableStyleElement","parse_NamePublish","parse_NameCmt","parse_SortData","parse_GUIDTypeLib","parse_FnGrp12","parse_NameFnGrp12","parse_HeaderFooter","parse_CrtLayout12","parse_CrtMlFrt","parse_CrtMlFrtContinue","parse_ShapePropsStream","parse_TextPropsStream","parse_RichTextStream","parse_CrtLayout12A","parse_Units","parse_Chart","parse_Series","parse_DataFormat","parse_LineFormat","parse_MarkerFormat","parse_AreaFormat","parse_PieFormat","parse_AttachedLabel","parse_SeriesText","parse_ChartFormat","parse_Legend","parse_SeriesList","parse_Bar","parse_Line","parse_Pie","parse_Area","parse_Scatter","parse_CrtLine","parse_Axis","parse_Tick","parse_ValueRange","parse_CatSerRange","parse_AxisLine","parse_CrtLink","parse_DefaultText","parse_Text","parse_ObjectLink","parse_Frame","parse_Begin","parse_End","parse_PlotArea","parse_Chart3d","parse_PicF","parse_DropBar","parse_Radar","parse_Surf","parse_RadarArea","parse_AxisParent","parse_LegendException","parse_ShtProps","parse_SerToCrt","parse_AxesUsed","parse_SBaseRef","parse_SerParent","parse_SerAuxTrend","parse_IFmtRecord","parse_Pos","parse_AlRuns","parse_BRAI","parse_SerAuxErrBar","parse_SerFmt","parse_Chart3DBarShape","parse_Fbi","parse_BopPop","parse_AxcExt","parse_Dat","parse_PlotGrowth","parse_SIIndex","parse_GelFrame","parse_BopPopCustom","parse_Fbi2","parse_BIFF5String","parse_BIFF2STR","parse_BIFF2NUM","num","CS2CP","77","128","129","130","134","136","161","162","163","177","178","186","204","222","238","69","parse_rs","parse_rs_factory","tregex","rpregex","rregex","rend","nlregex","parse_rpr","rpr","intro","outro","font","strike","rgb","family","parse_r","terms","rs","sitregex","sirregex","parse_si","html","cellHTML","sstr0","sstr1","sstr2","parse_sst_xml","uniqueCount","SST","straywsregex","write_sst_xml","bookSST","sitag","parse_BrtBeginSst","parse_sst_bin","pass","hopper_sst","write_BrtBeginSst","write_BrtSSTItem","write_sst_bin","_JS2ANSI","parse_Version","Major","Minor","parse_EncryptionHeader","tmp","AlgID","parse_EncryptionVerifier","parse_RC4CryptoHeader","EncryptionVersionInfo","EncryptionHeader","EncryptionVerifier","parse_RC4Header","Salt","EncryptedVerifier","EncryptedVerifierHash","crypto_CreatePasswordVerifier_Method1","Password","Verifier","PasswordArray","PasswordDecoded","PasswordByte","Intermediate1","Intermediate2","Intermediate3","crypto_CreateXorArray_Method1","PadArray","InitialCode","XorMatrix","Ror","Byte","XorRor","byte1","byte2","CreateXorKey_Method1","XorKey","CurrentElement","Char","password","Index","ObfuscationArray","Temp","PasswordLastChar","PadIndex","crypto_DecryptData_Method1","Data","XorArrayIndex","XorArray","Value","crypto_MakeXorDecryptor","parse_XORObfuscation","verificationBytes","verifier","valid","insitu_decrypt","parse_FilePassHeader","Info","parse_FilePass","hex2RGB","rgb2Hex","rgb2HSL","G","H6","L2","hsl2RGB","hsl","h6","X","rgb_tint","tint","rev","DEF_MDW","MAX_MDW","MIN_MDW","MDW","width2px","px2char","px","char2width","chr","cycle_width","collw","find_mdw","coll","XLMLPatternTypeMap","None","Solid","Gray50","Gray75","Gray25","HorzStripe","VertStripe","ReverseDiagStripe","DiagStripe","DiagCross","ThickDiagCross","ThinHorzStripe","ThinVertStripe","ThinReverseDiagStripe","ThinHorzCross","parse_fills","Fills","bgColor","indexed","theme","themeElements","clrScheme","raw_rgb","fgColor","parse_fonts","Fonts","bold","underline","italic","outline","shadow","vertAlign","parse_borders","Borders","border","sub_border","diagonalUp","diagonalDown","right","bottom","diagonal","auto","parse_numFmts","NumberFmt","formatCode","numFmtId","write_numFmts","NF","parse_cellXfs","CellXf","xf","fillId","alignment","vertical","horizontal","textRotation","indent","wrapText","write_cellXfs","cellXfs","parse_sty_xml","make_pstyx","numFmtRegex","cellXfRegex","fillsRegex","bordersRegex","STYLES_XML_ROOT","STY","write_sty_xml","wb","style_builder","toXml","parse_BrtFmt","stFmtCode","parse_BrtFont","dyHeight","grbit","bls","sss","uls","bFamily","bCharSet","brtColor","bFontScheme","Bold","Italic","Strikeout","Outline","Shadow","Condense","Extend","Sub","Sup","parse_BrtXF","ixfeParent","parse_sty_bin","hopper_sty","write_sty_bin","THEME","parse_clrScheme","lastClr","parse_fontScheme","parse_fmtScheme","clrsregex","fntsregex","fmtsregex","parse_themeElements","themeltregex","parse_theme_xml","write_theme","themeXml","parse_Theme","dwThemeVersion","parse_ColorTheme","parse_FullColorExt","xclrType","nTintShade","xclrValue","parse_IcvXF","parse_XFExtGradient","parse_ExtProp","extType","parse_XFExt","cexts","ext","update_xfext","xfext","xfe","parse_cc_xml","write_cc_xml","parse_BrtCalcChainItem$","encode_cell","parse_cc_bin","hopper_cc","write_cc_bin","parse_comments","dirComments","sheetRels","canonicalpath","parse_cmnt","sheetNames","sheetName","insertCommentsIntoSheet","safe_decode_range","thisCell","decode_cell","encoded","encode_range","author","parse_comments_xml","authors","commentList","trim","authorId","sheetRows","textMatch","write_comments_xml","parse_BrtBeginComment","iauthor","rfx","parse_BrtCommentAuthor","parse_BrtCommentText","parse_comments_bin","hopper_cmnt","write_comments_bin","rc_to_a1","rcregex","rcbase","rcfunc","$4","$5","encode_col","encode_row","fstr","parseread","parseread1","parse_ColRelU","parse_RgceArea","parse_RgceAreaRel","parse_RgceLoc","parse_RgceLocRel","cl","parse_PtgArea","area","parse_PtgArea3d","ixti","parse_PtgAreaErr","parse_PtgAreaErr3d","parse_PtgAreaN","parse_PtgArray","parse_PtgAttrBaxcel","bitSemi","bitBaxcel","parse_PtgAttrChoose","parse_PtgAttrGoto","bitGoto","parse_PtgAttrIf","bitIf","parse_PtgAttrSemi","parse_PtgAttrSpaceType","parse_PtgAttrSpace","parse_PtgAttrSpaceSemi","parse_PtgRef","ptg","parse_PtgRefN","parse_PtgRef3d","parse_PtgFunc","iftab","FtabArgc","Ftab","parse_PtgFuncVar","cparams","tab","parsetab","Cetab","parse_PtgAttrSum","parse_PtgConcat","parse_PtgExp","parse_PtgErr","parse_PtgInt","parse_PtgBool","parse_PtgNum","parse_PtgStr","parse_SerAr","parse_PtgExtraMem","parse_PtgExtraArray","cols","rows","parse_PtgName","nameindex","parse_PtgNameX","parse_PtgMemArea","parse_PtgMemFunc","parse_PtgRefErr","parse_PtgAdd","parse_PtgDiv","parse_PtgEq","parse_PtgGe","parse_PtgGt","parse_PtgIsect","parse_PtgLe","parse_PtgLt","parse_PtgMissArg","parse_PtgMul","parse_PtgNe","parse_PtgParen","parse_PtgPercent","parse_PtgPower","parse_PtgRange","parse_PtgSub","parse_PtgUminus","parse_PtgUnion","parse_PtgUplus","parse_PtgMemErr","parse_PtgMemNoMem","parse_PtgRefErr3d","parse_PtgTbl","PtgTypes","57","58","59","60","PtgDupes","96","65","97","98","67","99","68","100","101","70","102","71","103","72","104","73","74","106","75","107","76","108","109","89","121","122","91","123","92","124","93","125","Ptg18","Ptg19","parse_Formula","parse_FormulaValue","chn","cbf","parse_XLSCellParsedFormula","formula","shared","parse_RgbExtra","parse_Rgce","rgcb","ptgs","mapper","stringify_formula","supbooks","_range","stack","nameidx","fflen","argc","args","lbl","XLSXFutureFunctions","bookidx","externbook","sharedf","parsedf","fnd","arrayf","parse_XLSBCellParsedFormula","PtgDataType","50","51","53","54","62","63","78","79","80","83","85","87","88","94","95","110","111","112","113","114","115","116","117","118","119","120","126","127","131","132","133","135","137","138","139","140","142","143","144","145","146","147","148","149","150","151","152","153","155","159","164","166","167","168","169","170","171","172","173","174","175","185","187","188","189","190","191","192","193","194","195","196","197","198","199","200","201","202","203","206","207","208","209","210","211","212","214","215","217","219","220","223","224","225","226","227","228","229","240","243","249","250","251","252","253","254","256","259","260","265","266","267","268","269","272","273","274","276","277","278","279","280","281","282","283","284","285","288","289","290","291","292","293","295","296","297","298","302","305","306","307","308","309","310","311","312","313","314","315","316","318","319","320","321","322","323","324","325","328","330","336","338","339","342","343","344","350","352","355","356","370","373","374","375","376","377","378","379","380","381","382","383","384","385","386","388","390","391","392","393","394","395","396","397","398","399","400","412","413","414","415","416","417","421","422","423","424","425","430","431","432","433","434","435","436","437","438","439","440","441","442","443","444","445","446","447","448","449","450","451","452","453","454","455","456","458","459","460","461","462","463","464","465","466","467","468","469","470","471","472","473","474","475","476","477","478","480","481","482","485","489","491","493","494","495","509","510","511","517","518","519","520","521","522","523","545","546","547","548","549","620","621","647","653","667","673","753","755","808","141","154","156","157","158","160","165","176","179","180","181","182","183","184","205","221","230","231","232","233","234","235","236","237","239","241","242","244","245","246","247","248","257","258","261","262","263","264","270","271","275","286","287","294","299","300","301","303","304","317","326","327","329","331","332","334","335","337","340","341","345","346","347","348","349","353","357","359","360","361","362","363","364","365","366","367","368","369","371","372","_xlfn.ACOT","_xlfn.ACOTH","_xlfn.AGGREGATE","_xlfn.ARABIC","_xlfn.AVERAGEIF","_xlfn.AVERAGEIFS","_xlfn.BASE","_xlfn.BETA.DIST","_xlfn.BETA.INV","_xlfn.BINOM.DIST","_xlfn.BINOM.DIST.RANGE","_xlfn.BINOM.INV","_xlfn.BITAND","_xlfn.BITLSHIFT","_xlfn.BITOR","_xlfn.BITRSHIFT","_xlfn.BITXOR","_xlfn.CEILING.MATH","_xlfn.CEILING.PRECISE","_xlfn.CHISQ.DIST","_xlfn.CHISQ.DIST.RT","_xlfn.CHISQ.INV","_xlfn.CHISQ.INV.RT","_xlfn.CHISQ.TEST","_xlfn.COMBINA","_xlfn.CONFIDENCE.NORM","_xlfn.CONFIDENCE.T","_xlfn.COT","_xlfn.COTH","_xlfn.COUNTIFS","_xlfn.COVARIANCE.P","_xlfn.COVARIANCE.S","_xlfn.CSC","_xlfn.CSCH","_xlfn.DAYS","_xlfn.DECIMAL","_xlfn.ECMA.CEILING","_xlfn.ERF.PRECISE","_xlfn.ERFC.PRECISE","_xlfn.EXPON.DIST","_xlfn.F.DIST","_xlfn.F.DIST.RT","_xlfn.F.INV","_xlfn.F.INV.RT","_xlfn.F.TEST","_xlfn.FILTERXML","_xlfn.FLOOR.MATH","_xlfn.FLOOR.PRECISE","_xlfn.FORMULATEXT","_xlfn.GAMMA","_xlfn.GAMMA.DIST","_xlfn.GAMMA.INV","_xlfn.GAMMALN.PRECISE","_xlfn.GAUSS","_xlfn.HYPGEOM.DIST","_xlfn.IFNA","_xlfn.IFERROR","_xlfn.IMCOSH","_xlfn.IMCOT","_xlfn.IMCSC","_xlfn.IMCSCH","_xlfn.IMSEC","_xlfn.IMSECH","_xlfn.IMSINH","_xlfn.IMTAN","_xlfn.ISFORMULA","_xlfn.ISO.CEILING","_xlfn.ISOWEEKNUM","_xlfn.LOGNORM.DIST","_xlfn.LOGNORM.INV","_xlfn.MODE.MULT","_xlfn.MODE.SNGL","_xlfn.MUNIT","_xlfn.NEGBINOM.DIST","_xlfn.NETWORKDAYS.INTL","_xlfn.NIGBINOM","_xlfn.NORM.DIST","_xlfn.NORM.INV","_xlfn.NORM.S.DIST","_xlfn.NORM.S.INV","_xlfn.NUMBERVALUE","_xlfn.PDURATION","_xlfn.PERCENTILE.EXC","_xlfn.PERCENTILE.INC","_xlfn.PERCENTRANK.EXC","_xlfn.PERCENTRANK.INC","_xlfn.PERMUTATIONA","_xlfn.PHI","_xlfn.POISSON.DIST","_xlfn.QUARTILE.EXC","_xlfn.QUARTILE.INC","_xlfn.QUERYSTRING","_xlfn.RANK.AVG","_xlfn.RANK.EQ","_xlfn.RRI","_xlfn.SEC","_xlfn.SECH","_xlfn.SHEET","_xlfn.SHEETS","_xlfn.SKEW.P","_xlfn.STDEV.P","_xlfn.STDEV.S","_xlfn.SUMIFS","_xlfn.T.DIST","_xlfn.T.DIST.2T","_xlfn.T.DIST.RT","_xlfn.T.INV","_xlfn.T.INV.2T","_xlfn.T.TEST","_xlfn.UNICHAR","_xlfn.UNICODE","_xlfn.VAR.P","_xlfn.VAR.S","_xlfn.WEBSERVICE","_xlfn.WEIBULL.DIST","_xlfn.WORKDAY.INTL","_xlfn.XOR","_xlfn.Z.TEST","_ssfopts","WS","get_sst_id","get_cell_style","exec","numFmt","addStyle","revssf","fontId","borderId","xfId","applyNumberFormat","get_cell_style_csf","cellXf","applyAlignment","JSON","stringify","safe_format","fillid","cellNF","parse_ws_xml_dim","ws","mergecregex","sheetdataregex","hlinkregex","dimregex","colregex","parse_ws_xml","ridx","mergecells","columns","cellStyles","parse_ws_xml_cols","refguess","mtch","parse_ws_xml_data","parse_ws_xml_hlinks","tmpref","write_ws_xml_merges","write_ws_xml_pagesetup","setup","pageSetup","scale","orientation","horizontalDpi","verticalDpi","Rel","rng","seencol","coli","colm","colM","wpx","wch","write_ws_xml_cols","customWidth","write_ws_xml_cell","oldt","oldv","cellDates","Strings","parse_ws_xml_data_factory","cellregex","rowregex","isregex","match_v","match_f","sdata","guess","cells","cref","tagr","tagc","sstr","do_format","marr","marrlen","xlen","cellFormula","sheetStubs","write_ws_xml_data","WS_XML_ROOT","xmlns:r","write_ws_xml","sidx","rdata","Sheets","pane","selection","activeCell","sqref","sheetView","showGridLines","tabSelected","workbookViewId","write_ws_xml_row_breaks","write_ws_xml_col_breaks","breaks","brk","thisBreak","nextBreak","man","manualBreakCount","parse_BrtRowHdr","parse_BrtWsDim","write_BrtWsDim","parse_BrtWsProp","parse_BrtCellBlank","write_BrtCellBlank","parse_BrtCellBool","fBool","parse_BrtCellError","parse_BrtCellIsst","parse_BrtCellReal","parse_BrtCellRk","parse_BrtCellSt","parse_BrtFmlaBool","parse_BrtFmlaError","parse_BrtFmlaNum","parse_BrtFmlaString","parse_BrtMergeCell","parse_BrtHLink","relId","tooltip","display","parse_ws_bin","!id","ws_parse","write_ws_bin_cell","write_CELLTABLE","write_ws_bin","WBPropsDef","WBViewDef","SheetDef","CalcPrDef","CustomWBViewDef","push_defaults_array","push_defaults","parse_wb_defaults","WBProps","CalcPr","WBView","wbnsregex","parse_wb_xml","AppVersion","xml_wb","WB_XML_ROOT","safe1904","Workbook","write_wb_xml","sheetId","r:id","hasPrintHeaders","printHeader","printColumns","localSheetId","parse_BrtBundleSh","hsState","iTabID","strRelID","write_BrtBundleSh","parse_BrtWbProp","strName","write_BrtWbProp","parse_BrtFRTArchID$","ArchID","parse_wb_bin","hopper_wb","write_BUNDLESHS","write_BrtFileVersion","write_BOOKVIEWS","write_BrtCalcProp","write_BrtFileRecover","write_wb_bin","parse_wb","parse_ws","parse_sty","parse_theme","parse_sst","parse_cc","write_wb","write_ws","write_sty","write_sst","attregexg2","attregex2","_chr","xlml_parsexmltag","words","xlml_parsexmltagobj","xlml_format","xlml_set_custprop","Custprops","Rn","safe_format_xlml","nf","process_style_xlml","stag","Interior","I","Pattern","ID","parse_xlml_data","xml","csty","sid","StyleID","interiors","Parent","UTC","Formula","xlml_clean_comment","xlml_normalize","xlmlregex","parse_xlml_xml","sheetnames","cursheet","sheetname","dtag","didx","fidx","pidx","cstys","lastIndex","HRef","HRefScreenTip","MergeAcross","MergeDown","Format","Span","Author","seen","bookSheets","bookProps","parse_xlml","fix_read_opts","write_xlml","parse_compobj","UserType","Reserved1","slurp","XLSRecordEnum","ll","safe_format_xf","XF","make_cell","parse_workbook","Directory","found_sheet","last_formula","cur_sheet","Preamble","lastcell","last_cell","cmnt","rngC","rngR","shared_formulae","array_formulae","temp_val","country","cell_valid","XFs","palette","get_rgb","getrgb","icv","process_cell_style","pcs","line","xfd","addcell","rrtabid","lastuser","codepage","winlocked","wtf","objects","sbc","sbci","sbcli","last_Rn","file_depth","RecordType","Date1904","WriteProtect","RefreshAll","CalcCount","CalcDelta","CalcIter","CalcMode","CalcPrecision","CalcSaveRecalc","CalcRefMode","FullCalc","TxO","noteobj","sheetnamesraw","sort","Number","Encryption","Metadata","Country","parse_xlscfb","cfb","CompObj","Summary","CompObjP","SummaryP","WorkbookP","parse_props","props","DocSummary","bookFiles","DSI","SI","333","387","389","401","403","404","405","406","407","408","409","410","411","418","419","426","427","428","429","457","479","483","484","486","487","488","490","492","496","497","498","499","500","501","502","503","504","505","506","507","508","512","513","514","515","516","524","525","526","527","528","529","530","531","532","533","534","535","536","537","538","539","540","541","542","550","551","552","553","554","555","556","557","558","559","560","561","562","564","565","566","569","570","572","573","574","577","578","579","580","581","582","583","584","585","586","587","588","589","590","591","592","593","594","595","596","597","598","599","600","601","602","603","604","605","606","607","608","609","610","611","612","613","614","615","616","617","618","619","625","626","627","628","629","630","631","632","633","634","635","636","637","638","639","640","641","642","643","644","645","646","648","649","650","651","652","654","655","656","657","658","659","660","661","662","663","664","665","666","668","669","671","672","674","675","676","677","678","679","680","1024","1025","1026","1027","1028","1029","1030","1031","1032","1033","1034","1035","1036","1037","1038","1039","1040","1041","1042","1043","1044","1045","1046","1047","1048","1049","1050","1051","1052","1053","1054","1055","1056","1057","1058","1059","1061","1062","1063","1066","1067","1068","1069","1070","1071","1072","1073","1075","1076","1077","1078","1079","1080","1081","1082","1083","1084","1085","1086","1087","1088","1089","1090","1091","1092","1093","1094","1095","1096","1097","1098","1099","1100","1101","1102","1103","1104","1105","1111","1112","1113","1114","1115","1116","1117","1118","1119","1120","1121","1122","1123","1124","1125","1126","1128","1129","1130","1131","1132","1133","1134","1135","1136","1137","1138","1139","1140","1141","1142","1143","1144","1145","1146","1147","1148","1149","1150","1152","1153","1154","1155","1156","1157","1158","1159","1160","1161","1162","1163","1164","1165","1166","1167","1168","1169","1170","1171","1172","1173","1177","1178","1180","1181","1182","2048","2049","2050","2051","2052","2053","2054","2055","2056","2057","2058","2060","2067","2068","2069","2070","2071","2072","2073","2075","2076","2077","2078","2079","2080","2081","2082","2083","2084","2085","2086","2087","2088","2089","2090","2091","2092","2093","2094","2095","2096","2097","2098","2099","2100","2101","2102","2103","2104","2105","2106","2107","2108","2109","2110","2111","2112","2113","2114","2115","2116","2117","2118","2119","2120","2121","2122","2123","2124","2125","2126","2127","2128","2129","2130","2131","2132","2133","2134","2135","2136","402","1212","2059","2061","2062","2063","2064","2066","2137","2138","2146","2147","2148","2149","2150","2151","2152","2154","2155","2156","2161","2162","2164","2165","2166","2167","2168","2169","2170","2171","2172","2173","2174","2175","2180","2181","2182","2183","2184","2185","2186","2187","2188","2189","2190","2191","2192","2194","2195","2196","2197","2198","2199","2200","2201","2202","2203","2204","2205","2206","2207","2211","2212","2213","2214","2215","4097","4098","4099","4102","4103","4105","4106","4107","4108","4109","4116","4117","4118","4119","4120","4121","4122","4123","4124","4125","4126","4127","4128","4129","4130","4132","4133","4134","4135","4146","4147","4148","4149","4154","4156","4157","4158","4159","4160","4161","4163","4164","4165","4166","4168","4170","4171","4174","4175","4176","4177","4187","4188","4189","4191","4192","4193","4194","4195","4196","4197","4198","4199","4200","2157","2163","2177","2240","2241","2242","2243","2244","2245","2246","2247","2248","2249","2250","2251","parse_ods","ODS","fix_opts_func","fix_opts","fix_write_opts","safe_parse_wbrels","wbrels","pwbr","safe_parse_ws","relsPath","nodirs","parse_zip","entries","binname","propdata","pluck","deps","bookDeps","wbsheets","wbext","wbrelsfile","nmode","Deps","Styles","Themes","bookVBA","vbaraw","bin","add_rels","rId","relobj","write_zip","General","firstbyte","read_zip","isfile","FILENAME","write_zip_type","StyleBuilder","writeFileSync","writeSync","decode_row","rowstr","unfix_row","fix_row","cstr","decode_col","colstr","unfix_col","fix_col","split_cell","splt","fix_cell","unfix_cell","decode_range","cs","ce","safe_format_cell","format_cell","sheet_to_json","isempty","outi","defineProperty","enumerable","__rowNum__","sheet_to_row_object_array","sheet_to_csv","txt","qreg","FS","RS","make_csv","sheet_to_formulae","cmds","get_formulae","make_json","make_formulae","XmlNode","tagName","attributes","children","_attributes","_children","_prefix","createElement","prefix","APOS","QUOTE","ESCAPED_QUOTE","escapeAttributeValue","att_value","customNumFmtId","fmt_table","_hashIndex","_listIndex","initialize","$fonts","$fills","$borders","$numFmts","$cellStyleXfs","$xf","$cellXfs","$cellStyles","$dxfs","$tableStyles","$styles","defaultStyle","defaultCellStyle","gray125Style","addStyles","hashKey","_addXf","_duckTypeStyle","patternFill","_getStyleCSS","css","_addFont","_addFill","_addBorder","_addNumFmt","$alignment","readingOrder","$font","numFmtIdx","$numFmt","$patternFill","$fgColor","$bgColor","$fill","_getSubBorder","direction","spec","$direction","$color","$border","directions","readFile","write","writeFile","XLS"],"mappings":"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AAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,WAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,UAAY,WAAY,WAAY,WACpC,WAAY,SAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,WAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,UAAY,WAAY,WACpC,WAAY,WAAY,SAAY,WACpC,WAAY,WAAY,SAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,WAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,UAAY,WACpC,WAAY,WAAY,WAAY,SACpC,WAAY,WAAY,WAAY,SACpC,WAAY,WAAY,WAAY,UACpC,WAAY,WAAY,WAAY,UACpC,WAAY,WAAY,WAAY,UACpC,WAAY,WAAY,WAAY,UACpC,WAAY,WAAY,WAAY,UACpC,WAAY,WAAY,WAAY,UACpC,WAAY,WAAY,WAAY,UACpC,WAAY,WAAY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","file":"dist/xlsx.full.min.js"}
Source/UBCS-WEB/src/config/js-xlsx-master/dist/xlsx.js
¶Ô±ÈÐÂÎļþ
ÎļþÌ«´ó
Source/UBCS-WEB/src/config/js-xlsx-master/dist/xlsx.min.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,11 @@
/* xlsx.js (C) 2013-2015 SheetJS -- http://sheetjs.com */
var XLSX={};(function make_xlsx(XLSX){XLSX.version="0.8.20";var current_codepage=1200,current_cptable;if(typeof module!=="undefined"&&typeof require!=="undefined"){if(typeof cptable==="undefined")cptable=require("./dist/cpexcel");current_cptable=cptable[current_codepage]}function reset_cp(){set_cp(1200)}var set_cp=function(cp){current_codepage=cp};function char_codes(data){var o=[];for(var i=0,len=data.length;i<len;++i)o[i]=data.charCodeAt(i);return o}var debom_xml=function(data){return data};var _getchar=function _gc1(x){return String.fromCharCode(x)};if(typeof cptable!=="undefined"){set_cp=function(cp){current_codepage=cp;current_cptable=cptable[cp]};debom_xml=function(data){if(data.charCodeAt(0)===255&&data.charCodeAt(1)===254){return cptable.utils.decode(1200,char_codes(data.substr(2)))}return data};_getchar=function _gc2(x){if(current_codepage===1200)return String.fromCharCode(x);return cptable.utils.decode(current_codepage,[x&255,x>>8])[0]}}var Base64=function make_b64(){var map="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";return{encode:function(input,utf8){var o="";var c1,c2,c3,e1,e2,e3,e4;for(var i=0;i<input.length;){c1=input.charCodeAt(i++);c2=input.charCodeAt(i++);c3=input.charCodeAt(i++);e1=c1>>2;e2=(c1&3)<<4|c2>>4;e3=(c2&15)<<2|c3>>6;e4=c3&63;if(isNaN(c2)){e3=e4=64}else if(isNaN(c3)){e4=64}o+=map.charAt(e1)+map.charAt(e2)+map.charAt(e3)+map.charAt(e4)}return o},decode:function b64_decode(input,utf8){var o="";var c1,c2,c3;var e1,e2,e3,e4;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var i=0;i<input.length;){e1=map.indexOf(input.charAt(i++));e2=map.indexOf(input.charAt(i++));e3=map.indexOf(input.charAt(i++));e4=map.indexOf(input.charAt(i++));c1=e1<<2|e2>>4;c2=(e2&15)<<4|e3>>2;c3=(e3&3)<<6|e4;o+=String.fromCharCode(c1);if(e3!=64){o+=String.fromCharCode(c2)}if(e4!=64){o+=String.fromCharCode(c3)}}return o}}}();var has_buf=typeof Buffer!=="undefined";function new_raw_buf(len){return new(has_buf?Buffer:Array)(len)}function s2a(s){if(has_buf)return new Buffer(s,"binary");return s.split("").map(function(x){return x.charCodeAt(0)&255})}var bconcat=function(bufs){return[].concat.apply([],bufs)};var chr0=/\u0000/g,chr1=/[\u0001-\u0006]/;var SSF={};var make_ssf=function make_ssf(SSF){SSF.version="0.8.1";function _strrev(x){var o="",i=x.length-1;while(i>=0)o+=x.charAt(i--);return o}function fill(c,l){var o="";while(o.length<l)o+=c;return o}function pad0(v,d){var t=""+v;return t.length>=d?t:fill("0",d-t.length)+t}function pad_(v,d){var t=""+v;return t.length>=d?t:fill(" ",d-t.length)+t}function rpad_(v,d){var t=""+v;return t.length>=d?t:t+fill(" ",d-t.length)}function pad0r1(v,d){var t=""+Math.round(v);return t.length>=d?t:fill("0",d-t.length)+t}function pad0r2(v,d){var t=""+v;return t.length>=d?t:fill("0",d-t.length)+t}var p2_32=Math.pow(2,32);function pad0r(v,d){if(v>p2_32||v<-p2_32)return pad0r1(v,d);var i=Math.round(v);return pad0r2(i,d)}function isgeneral(s,i){return s.length>=7+i&&(s.charCodeAt(i)|32)===103&&(s.charCodeAt(i+1)|32)===101&&(s.charCodeAt(i+2)|32)===110&&(s.charCodeAt(i+3)|32)===101&&(s.charCodeAt(i+4)|32)===114&&(s.charCodeAt(i+5)|32)===97&&(s.charCodeAt(i+6)|32)===108}var opts_fmt=[["date1904",0],["output",""],["WTF",false]];function fixopts(o){for(var y=0;y!=opts_fmt.length;++y)if(o[opts_fmt[y][0]]===undefined)o[opts_fmt[y][0]]=opts_fmt[y][1]}SSF.opts=opts_fmt;var table_fmt={0:"General",1:"0",2:"0.00",3:"#,##0",4:"#,##0.00",9:"0%",10:"0.00%",11:"0.00E+00",12:"# ?/?",13:"# ??/??",14:"m/d/yy",15:"d-mmm-yy",16:"d-mmm",17:"mmm-yy",18:"h:mm AM/PM",19:"h:mm:ss AM/PM",20:"h:mm",21:"h:mm:ss",22:"m/d/yy h:mm",37:"#,##0 ;(#,##0)",38:"#,##0 ;[Red](#,##0)",39:"#,##0.00;(#,##0.00)",40:"#,##0.00;[Red](#,##0.00)",45:"mm:ss",46:"[h]:mm:ss",47:"mmss.0",48:"##0.0E+0",49:"@",56:'"上午/下午 "hh"時"mm"分"ss"秒 "',65535:"General"};var days=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]];var months=[["J","Jan","January"],["F","Feb","February"],["M","Mar","March"],["A","Apr","April"],["M","May","May"],["J","Jun","June"],["J","Jul","July"],["A","Aug","August"],["S","Sep","September"],["O","Oct","October"],["N","Nov","November"],["D","Dec","December"]];function frac(x,D,mixed){var sgn=x<0?-1:1;var B=x*sgn;var P_2=0,P_1=1,P=0;var Q_2=1,Q_1=0,Q=0;var A=Math.floor(B);while(Q_1<D){A=Math.floor(B);P=A*P_1+P_2;Q=A*Q_1+Q_2;if(B-A<5e-10)break;B=1/(B-A);P_2=P_1;P_1=P;Q_2=Q_1;Q_1=Q}if(Q>D){Q=Q_1;P=P_1}if(Q>D){Q=Q_2;P=P_2}if(!mixed)return[0,sgn*P,Q];if(Q===0)throw"Unexpected state: "+P+" "+P_1+" "+P_2+" "+Q+" "+Q_1+" "+Q_2;var q=Math.floor(sgn*P/Q);return[q,sgn*P-q*Q,Q]}function general_fmt_int(v,opts){return""+v}SSF._general_int=general_fmt_int;var general_fmt_num=function make_general_fmt_num(){var gnr1=/\.(\d*[1-9])0+$/,gnr2=/\.0*$/,gnr4=/\.(\d*[1-9])0+/,gnr5=/\.0*[Ee]/,gnr6=/(E[+-])(\d)$/;function gfn2(v){var w=v<0?12:11;var o=gfn5(v.toFixed(12));if(o.length<=w)return o;o=v.toPrecision(10);if(o.length<=w)return o;return v.toExponential(5)}function gfn3(v){var o=v.toFixed(11).replace(gnr1,".$1");if(o.length>(v<0?12:11))o=v.toPrecision(6);return o}function gfn4(o){for(var i=0;i!=o.length;++i)if((o.charCodeAt(i)|32)===101)return o.replace(gnr4,".$1").replace(gnr5,"E").replace("e","E").replace(gnr6,"$10$2");return o}function gfn5(o){return o.indexOf(".")>-1?o.replace(gnr2,"").replace(gnr1,".$1"):o}return function general_fmt_num(v,opts){var V=Math.floor(Math.log(Math.abs(v))*Math.LOG10E),o;if(V>=-4&&V<=-1)o=v.toPrecision(10+V);else if(Math.abs(V)<=9)o=gfn2(v);else if(V===10)o=v.toFixed(10).substr(0,12);else o=gfn3(v);return gfn5(gfn4(o))}}();SSF._general_num=general_fmt_num;function general_fmt(v,opts){switch(typeof v){case"string":return v;case"boolean":return v?"TRUE":"FALSE";case"number":return(v|0)===v?general_fmt_int(v,opts):general_fmt_num(v,opts)}throw new Error("unsupported value in General format: "+v)}SSF._general=general_fmt;function fix_hijri(date,o){return 0}function parse_date_code(v,opts,b2){if(v>2958465||v<0)return null;var date=v|0,time=Math.floor(86400*(v-date)),dow=0;var dout=[];var out={D:date,T:time,u:86400*(v-date)-time,y:0,m:0,d:0,H:0,M:0,S:0,q:0};if(Math.abs(out.u)<1e-6)out.u=0;fixopts(opts!=null?opts:opts=[]);if(opts.date1904)date+=1462;if(out.u>.999){out.u=0;if(++time==86400){time=0;++date}}if(date===60){dout=b2?[1317,10,29]:[1900,2,29];dow=3}else if(date===0){dout=b2?[1317,8,29]:[1900,1,0];dow=6}else{if(date>60)--date;var d=new Date(1900,0,1);d.setDate(d.getDate()+date-1);dout=[d.getFullYear(),d.getMonth()+1,d.getDate()];dow=d.getDay();if(date<60)dow=(dow+6)%7;if(b2)dow=fix_hijri(d,dout)}out.y=dout[0];out.m=dout[1];out.d=dout[2];out.S=time%60;time=Math.floor(time/60);out.M=time%60;time=Math.floor(time/60);out.H=time;out.q=dow;return out}SSF.parse_date_code=parse_date_code;function write_date(type,fmt,val,ss0){var o="",ss=0,tt=0,y=val.y,out,outl=0;switch(type){case 98:y=val.y+543;case 121:switch(fmt.length){case 1:case 2:out=y%100;outl=2;break;default:out=y%1e4;outl=4;break}break;case 109:switch(fmt.length){case 1:case 2:out=val.m;outl=fmt.length;break;case 3:return months[val.m-1][1];case 5:return months[val.m-1][0];default:return months[val.m-1][2]}break;case 100:switch(fmt.length){case 1:case 2:out=val.d;outl=fmt.length;break;case 3:return days[val.q][0];default:return days[val.q][1]}break;case 104:switch(fmt.length){case 1:case 2:out=1+(val.H+11)%12;outl=fmt.length;break;default:throw"bad hour format: "+fmt}break;case 72:switch(fmt.length){case 1:case 2:out=val.H;outl=fmt.length;break;default:throw"bad hour format: "+fmt}break;case 77:switch(fmt.length){case 1:case 2:out=val.M;outl=fmt.length;break;default:throw"bad minute format: "+fmt}break;case 115:if(val.u===0)switch(fmt){case"s":case"ss":return pad0(val.S,fmt.length);case".0":case".00":case".000":}switch(fmt){case"s":case"ss":case".0":case".00":case".000":if(ss0>=2)tt=ss0===3?1e3:100;else tt=ss0===1?10:1;ss=Math.round(tt*(val.S+val.u));if(ss>=60*tt)ss=0;if(fmt==="s")return ss===0?"0":""+ss/tt;o=pad0(ss,2+ss0);if(fmt==="ss")return o.substr(0,2);return"."+o.substr(2,fmt.length-1);default:throw"bad second format: "+fmt}case 90:switch(fmt){case"[h]":case"[hh]":out=val.D*24+val.H;break;case"[m]":case"[mm]":out=(val.D*24+val.H)*60+val.M;break;case"[s]":case"[ss]":out=((val.D*24+val.H)*60+val.M)*60+Math.round(val.S+val.u);break;default:throw"bad abstime format: "+fmt}outl=fmt.length===3?1:2;break;case 101:out=y;outl=1}if(outl>0)return pad0(out,outl);else return""}function commaify(s){if(s.length<=3)return s;var j=s.length%3,o=s.substr(0,j);for(;j!=s.length;j+=3)o+=(o.length>0?",":"")+s.substr(j,3);return o}var write_num=function make_write_num(){var pct1=/%/g;function write_num_pct(type,fmt,val){var sfmt=fmt.replace(pct1,""),mul=fmt.length-sfmt.length;return write_num(type,sfmt,val*Math.pow(10,2*mul))+fill("%",mul)}function write_num_cm(type,fmt,val){var idx=fmt.length-1;while(fmt.charCodeAt(idx-1)===44)--idx;return write_num(type,fmt.substr(0,idx),val/Math.pow(10,3*(fmt.length-idx)))}function write_num_exp(fmt,val){var o;var idx=fmt.indexOf("E")-fmt.indexOf(".")-1;if(fmt.match(/^#+0.0E\+0$/)){var period=fmt.indexOf(".");if(period===-1)period=fmt.indexOf("E");var ee=Math.floor(Math.log(Math.abs(val))*Math.LOG10E)%period;if(ee<0)ee+=period;o=(val/Math.pow(10,ee)).toPrecision(idx+1+(period+ee)%period);if(o.indexOf("e")===-1){var fakee=Math.floor(Math.log(Math.abs(val))*Math.LOG10E);if(o.indexOf(".")===-1)o=o[0]+"."+o.substr(1)+"E+"+(fakee-o.length+ee);else o+="E+"+(fakee-ee);while(o.substr(0,2)==="0."){o=o[0]+o.substr(2,period)+"."+o.substr(2+period);o=o.replace(/^0+([1-9])/,"$1").replace(/^0+\./,"0.")}o=o.replace(/\+-/,"-")}o=o.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,function($$,$1,$2,$3){return $1+$2+$3.substr(0,(period+ee)%period)+"."+$3.substr(ee)+"E"})}else o=val.toExponential(idx);if(fmt.match(/E\+00$/)&&o.match(/e[+-]\d$/))o=o.substr(0,o.length-1)+"0"+o[o.length-1];if(fmt.match(/E\-/)&&o.match(/e\+/))o=o.replace(/e\+/,"e");return o.replace("e","E")}var frac1=/# (\?+)( ?)\/( ?)(\d+)/;function write_num_f1(r,aval,sign){var den=parseInt(r[4]),rr=Math.round(aval*den),base=Math.floor(rr/den);var myn=rr-base*den,myd=den;return sign+(base===0?"":""+base)+" "+(myn===0?fill(" ",r[1].length+1+r[4].length):pad_(myn,r[1].length)+r[2]+"/"+r[3]+pad0(myd,r[4].length))}function write_num_f2(r,aval,sign){return sign+(aval===0?"":""+aval)+fill(" ",r[1].length+2+r[4].length)}var dec1=/^#*0*\.(0+)/;var closeparen=/\).*[0#]/;var phone=/\(###\) ###\\?-####/;function hashq(str){var o="",cc;for(var i=0;i!=str.length;++i)switch(cc=str.charCodeAt(i)){case 35:break;case 63:o+=" ";break;case 48:o+="0";break;default:o+=String.fromCharCode(cc)}return o}function rnd(val,d){var dd=Math.pow(10,d);return""+Math.round(val*dd)/dd}function dec(val,d){return Math.round((val-Math.floor(val))*Math.pow(10,d))}function flr(val){if(val<2147483647&&val>-2147483648)return""+(val>=0?val|0:val-1|0);return""+Math.floor(val)}function write_num_flt(type,fmt,val){if(type.charCodeAt(0)===40&&!fmt.match(closeparen)){var ffmt=fmt.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(val>=0)return write_num_flt("n",ffmt,val);return"("+write_num_flt("n",ffmt,-val)+")"}if(fmt.charCodeAt(fmt.length-1)===44)return write_num_cm(type,fmt,val);if(fmt.indexOf("%")!==-1)return write_num_pct(type,fmt,val);if(fmt.indexOf("E")!==-1)return write_num_exp(fmt,val);if(fmt.charCodeAt(0)===36)return"$"+write_num_flt(type,fmt.substr(fmt[1]==" "?2:1),val);var o,oo;var r,ri,ff,aval=Math.abs(val),sign=val<0?"-":"";if(fmt.match(/^00+$/))return sign+pad0r(aval,fmt.length);if(fmt.match(/^[#?]+$/)){o=pad0r(val,0);if(o==="0")o="";return o.length>fmt.length?o:hashq(fmt.substr(0,fmt.length-o.length))+o}if((r=fmt.match(frac1))!==null)return write_num_f1(r,aval,sign);if(fmt.match(/^#+0+$/)!==null)return sign+pad0r(aval,fmt.length-fmt.indexOf("0"));if((r=fmt.match(dec1))!==null){o=rnd(val,r[1].length).replace(/^([^\.]+)$/,"$1."+r[1]).replace(/\.$/,"."+r[1]).replace(/\.(\d*)$/,function($$,$1){return"."+$1+fill("0",r[1].length-$1.length)});return fmt.indexOf("0.")!==-1?o:o.replace(/^0\./,".")}fmt=fmt.replace(/^#+([0.])/,"$1");if((r=fmt.match(/^(0*)\.(#*)$/))!==null){return sign+rnd(aval,r[2].length).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,r[1].length?"0.":".")}if((r=fmt.match(/^#,##0(\.?)$/))!==null)return sign+commaify(pad0r(aval,0));if((r=fmt.match(/^#,##0\.([#0]*0)$/))!==null){return val<0?"-"+write_num_flt(type,fmt,-val):commaify(""+Math.floor(val))+"."+pad0(dec(val,r[1].length),r[1].length)}if((r=fmt.match(/^#,#*,#0/))!==null)return write_num_flt(type,fmt.replace(/^#,#*,/,""),val);if((r=fmt.match(/^([0#]+)(\\?-([0#]+))+$/))!==null){o=_strrev(write_num_flt(type,fmt.replace(/[\\-]/g,""),val));ri=0;return _strrev(_strrev(fmt.replace(/\\/g,"")).replace(/[0#]/g,function(x){return ri<o.length?o[ri++]:x==="0"?"0":""}))}if(fmt.match(phone)!==null){o=write_num_flt(type,"##########",val);return"("+o.substr(0,3)+") "+o.substr(3,3)+"-"+o.substr(6)}var oa="";if((r=fmt.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))!==null){ri=Math.min(r[4].length,7);ff=frac(aval,Math.pow(10,ri)-1,false);o=""+sign;oa=write_num("n",r[1],ff[1]);if(oa[oa.length-1]==" ")oa=oa.substr(0,oa.length-1)+"0";o+=oa+r[2]+"/"+r[3];oa=rpad_(ff[2],ri);if(oa.length<r[4].length)oa=hashq(r[4].substr(r[4].length-oa.length))+oa;o+=oa;return o}if((r=fmt.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))!==null){ri=Math.min(Math.max(r[1].length,r[4].length),7);ff=frac(aval,Math.pow(10,ri)-1,true);return sign+(ff[0]||(ff[1]?"":"0"))+" "+(ff[1]?pad_(ff[1],ri)+r[2]+"/"+r[3]+rpad_(ff[2],ri):fill(" ",2*ri+1+r[2].length+r[3].length))}if((r=fmt.match(/^[#0?]+$/))!==null){o=pad0r(val,0);if(fmt.length<=o.length)return o;return hashq(fmt.substr(0,fmt.length-o.length))+o}if((r=fmt.match(/^([#0?]+)\.([#0]+)$/))!==null){o=""+val.toFixed(Math.min(r[2].length,10)).replace(/([^0])0+$/,"$1");ri=o.indexOf(".");var lres=fmt.indexOf(".")-ri,rres=fmt.length-o.length-lres;return hashq(fmt.substr(0,lres)+o+fmt.substr(fmt.length-rres))}if((r=fmt.match(/^00,000\.([#0]*0)$/))!==null){ri=dec(val,r[1].length);return val<0?"-"+write_num_flt(type,fmt,-val):commaify(flr(val)).replace(/^\d,\d{3}$/,"0$&").replace(/^\d*$/,function($$){return"00,"+($$.length<3?pad0(0,3-$$.length):"")+$$})+"."+pad0(ri,r[1].length)}switch(fmt){case"#,###":var x=commaify(pad0r(aval,0));return x!=="0"?sign+x:"";default:}throw new Error("unsupported format |"+fmt+"|")}function write_num_cm2(type,fmt,val){var idx=fmt.length-1;while(fmt.charCodeAt(idx-1)===44)--idx;return write_num(type,fmt.substr(0,idx),val/Math.pow(10,3*(fmt.length-idx)))}function write_num_pct2(type,fmt,val){var sfmt=fmt.replace(pct1,""),mul=fmt.length-sfmt.length;return write_num(type,sfmt,val*Math.pow(10,2*mul))+fill("%",mul)}function write_num_exp2(fmt,val){var o;var idx=fmt.indexOf("E")-fmt.indexOf(".")-1;if(fmt.match(/^#+0.0E\+0$/)){var period=fmt.indexOf(".");if(period===-1)period=fmt.indexOf("E");var ee=Math.floor(Math.log(Math.abs(val))*Math.LOG10E)%period;if(ee<0)ee+=period;o=(val/Math.pow(10,ee)).toPrecision(idx+1+(period+ee)%period);if(!o.match(/[Ee]/)){var fakee=Math.floor(Math.log(Math.abs(val))*Math.LOG10E);if(o.indexOf(".")===-1)o=o[0]+"."+o.substr(1)+"E+"+(fakee-o.length+ee);else o+="E+"+(fakee-ee);o=o.replace(/\+-/,"-")}o=o.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,function($$,$1,$2,$3){return $1+$2+$3.substr(0,(period+ee)%period)+"."+$3.substr(ee)+"E"})}else o=val.toExponential(idx);if(fmt.match(/E\+00$/)&&o.match(/e[+-]\d$/))o=o.substr(0,o.length-1)+"0"+o[o.length-1];if(fmt.match(/E\-/)&&o.match(/e\+/))o=o.replace(/e\+/,"e");return o.replace("e","E")}function write_num_int(type,fmt,val){if(type.charCodeAt(0)===40&&!fmt.match(closeparen)){var ffmt=fmt.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(val>=0)return write_num_int("n",ffmt,val);return"("+write_num_int("n",ffmt,-val)+")"}if(fmt.charCodeAt(fmt.length-1)===44)return write_num_cm2(type,fmt,val);if(fmt.indexOf("%")!==-1)return write_num_pct2(type,fmt,val);if(fmt.indexOf("E")!==-1)return write_num_exp2(fmt,val);if(fmt.charCodeAt(0)===36)return"$"+write_num_int(type,fmt.substr(fmt[1]==" "?2:1),val);var o;var r,ri,ff,aval=Math.abs(val),sign=val<0?"-":"";if(fmt.match(/^00+$/))return sign+pad0(aval,fmt.length);if(fmt.match(/^[#?]+$/)){o=""+val;if(val===0)o="";return o.length>fmt.length?o:hashq(fmt.substr(0,fmt.length-o.length))+o}if((r=fmt.match(frac1))!==null)return write_num_f2(r,aval,sign);if(fmt.match(/^#+0+$/)!==null)return sign+pad0(aval,fmt.length-fmt.indexOf("0"));if((r=fmt.match(dec1))!==null){o=(""+val).replace(/^([^\.]+)$/,"$1."+r[1]).replace(/\.$/,"."+r[1]).replace(/\.(\d*)$/,function($$,$1){return"."+$1+fill("0",r[1].length-$1.length)});return fmt.indexOf("0.")!==-1?o:o.replace(/^0\./,".")}fmt=fmt.replace(/^#+([0.])/,"$1");if((r=fmt.match(/^(0*)\.(#*)$/))!==null){return sign+(""+aval).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,r[1].length?"0.":".")}if((r=fmt.match(/^#,##0(\.?)$/))!==null)return sign+commaify(""+aval);if((r=fmt.match(/^#,##0\.([#0]*0)$/))!==null){return val<0?"-"+write_num_int(type,fmt,-val):commaify(""+val)+"."+fill("0",r[1].length)}if((r=fmt.match(/^#,#*,#0/))!==null)return write_num_int(type,fmt.replace(/^#,#*,/,""),val);if((r=fmt.match(/^([0#]+)(\\?-([0#]+))+$/))!==null){o=_strrev(write_num_int(type,fmt.replace(/[\\-]/g,""),val));ri=0;return _strrev(_strrev(fmt.replace(/\\/g,"")).replace(/[0#]/g,function(x){return ri<o.length?o[ri++]:x==="0"?"0":""}))}if(fmt.match(phone)!==null){o=write_num_int(type,"##########",val);return"("+o.substr(0,3)+") "+o.substr(3,3)+"-"+o.substr(6)}var oa="";if((r=fmt.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))!==null){ri=Math.min(r[4].length,7);ff=frac(aval,Math.pow(10,ri)-1,false);o=""+sign;oa=write_num("n",r[1],ff[1]);if(oa[oa.length-1]==" ")oa=oa.substr(0,oa.length-1)+"0";o+=oa+r[2]+"/"+r[3];oa=rpad_(ff[2],ri);if(oa.length<r[4].length)oa=hashq(r[4].substr(r[4].length-oa.length))+oa;o+=oa;return o}if((r=fmt.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))!==null){ri=Math.min(Math.max(r[1].length,r[4].length),7);ff=frac(aval,Math.pow(10,ri)-1,true);return sign+(ff[0]||(ff[1]?"":"0"))+" "+(ff[1]?pad_(ff[1],ri)+r[2]+"/"+r[3]+rpad_(ff[2],ri):fill(" ",2*ri+1+r[2].length+r[3].length))}if((r=fmt.match(/^[#0?]+$/))!==null){o=""+val;if(fmt.length<=o.length)return o;return hashq(fmt.substr(0,fmt.length-o.length))+o}if((r=fmt.match(/^([#0]+)\.([#0]+)$/))!==null){o=""+val.toFixed(Math.min(r[2].length,10)).replace(/([^0])0+$/,"$1");ri=o.indexOf(".");var lres=fmt.indexOf(".")-ri,rres=fmt.length-o.length-lres;return hashq(fmt.substr(0,lres)+o+fmt.substr(fmt.length-rres))}if((r=fmt.match(/^00,000\.([#0]*0)$/))!==null){return val<0?"-"+write_num_int(type,fmt,-val):commaify(""+val).replace(/^\d,\d{3}$/,"0$&").replace(/^\d*$/,function($$){return"00,"+($$.length<3?pad0(0,3-$$.length):"")+$$})+"."+pad0(0,r[1].length)}switch(fmt){case"#,###":var x=commaify(""+aval);return x!=="0"?sign+x:"";default:}throw new Error("unsupported format |"+fmt+"|")}return function write_num(type,fmt,val){return(val|0)===val?write_num_int(type,fmt,val):write_num_flt(type,fmt,val)}}();function split_fmt(fmt){var out=[];var in_str=false,cc;for(var i=0,j=0;i<fmt.length;++i)switch(cc=fmt.charCodeAt(i)){case 34:in_str=!in_str;break;case 95:case 42:case 92:++i;break;case 59:out[out.length]=fmt.substr(j,i-j);j=i+1}out[out.length]=fmt.substr(j);if(in_str===true)throw new Error("Format |"+fmt+"| unterminated string ");return out}SSF._split=split_fmt;var abstime=/\[[HhMmSs]*\]/;function eval_fmt(fmt,v,opts,flen){var out=[],o="",i=0,c="",lst="t",q,dt,j,cc;var hr="H";while(i<fmt.length){switch(c=fmt[i]){case"G":if(!isgeneral(fmt,i))throw new Error("unrecognized character "+c+" in "+fmt);out[out.length]={t:"G",v:"General"};i+=7;break;case'"':for(o="";(cc=fmt.charCodeAt(++i))!==34&&i<fmt.length;)o+=String.fromCharCode(cc);out[out.length]={t:"t",v:o};++i;break;case"\\":var w=fmt[++i],t=w==="("||w===")"?w:"t";out[out.length]={t:t,v:w};++i;break;case"_":out[out.length]={t:"t",v:" "};i+=2;break;case"@":out[out.length]={t:"T",v:v};++i;break;case"B":case"b":if(fmt[i+1]==="1"||fmt[i+1]==="2"){if(dt==null){dt=parse_date_code(v,opts,fmt[i+1]==="2");if(dt==null)return""}out[out.length]={t:"X",v:fmt.substr(i,2)};lst=c;i+=2;break}case"M":case"D":case"Y":case"H":case"S":case"E":c=c.toLowerCase();case"m":case"d":case"y":case"h":case"s":case"e":case"g":if(v<0)return"";if(dt==null){dt=parse_date_code(v,opts);if(dt==null)return""}o=c;while(++i<fmt.length&&fmt[i].toLowerCase()===c)o+=c;if(c==="m"&&lst.toLowerCase()==="h")c="M";if(c==="h")c=hr;out[out.length]={t:c,v:o};lst=c;break;case"A":q={t:c,v:"A"};if(dt==null)dt=parse_date_code(v,opts);if(fmt.substr(i,3)==="A/P"){if(dt!=null)q.v=dt.H>=12?"P":"A";q.t="T";hr="h";i+=3}else if(fmt.substr(i,5)==="AM/PM"){if(dt!=null)q.v=dt.H>=12?"PM":"AM";q.t="T";i+=5;hr="h"}else{q.t="t";++i}if(dt==null&&q.t==="T")return"";out[out.length]=q;lst=c;break;case"[":o=c;while(fmt[i++]!=="]"&&i<fmt.length)o+=fmt[i];if(o.substr(-1)!=="]")throw'unterminated "[" block: |'+o+"|";if(o.match(abstime)){if(dt==null){dt=parse_date_code(v,opts);if(dt==null)return""}out[out.length]={t:"Z",v:o.toLowerCase()}}else{o=""}break;case".":if(dt!=null){o=c;while((c=fmt[++i])==="0")o+=c;out[out.length]={t:"s",v:o};break}case"0":case"#":o=c;while("0#?.,E+-%".indexOf(c=fmt[++i])>-1||c=="\\"&&fmt[i+1]=="-"&&"0#".indexOf(fmt[i+2])>-1)o+=c;out[out.length]={t:"n",v:o};break;case"?":o=c;while(fmt[++i]===c)o+=c;q={t:c,v:o};out[out.length]=q;lst=c;break;case"*":++i;if(fmt[i]==" "||fmt[i]=="*")++i;break;case"(":case")":out[out.length]={t:flen===1?"t":c,v:c};++i;break;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":o=c;while("0123456789".indexOf(fmt[++i])>-1)o+=fmt[i];out[out.length]={t:"D",v:o};break;case" ":out[out.length]={t:c,v:c};++i;break;default:if(",$-+/():!^&'~{}<>=€acfijklopqrtuvwxz".indexOf(c)===-1)throw new Error("unrecognized character "+c+" in "+fmt);out[out.length]={t:"t",v:c};++i;break}}var bt=0,ss0=0,ssm;for(i=out.length-1,lst="t";i>=0;--i){switch(out[i].t){case"h":case"H":out[i].t=hr;lst="h";if(bt<1)bt=1;break;case"s":if(ssm=out[i].v.match(/\.0+$/))ss0=Math.max(ss0,ssm[0].length-1);if(bt<3)bt=3;case"d":case"y":case"M":case"e":lst=out[i].t;break;case"m":if(lst==="s"){out[i].t="M";if(bt<2)bt=2}break;case"X":if(out[i].v==="B2");break;case"Z":if(bt<1&&out[i].v.match(/[Hh]/))bt=1;if(bt<2&&out[i].v.match(/[Mm]/))bt=2;if(bt<3&&out[i].v.match(/[Ss]/))bt=3}}switch(bt){case 0:break;case 1:if(dt.u>=.5){dt.u=0;++dt.S}if(dt.S>=60){dt.S=0;++dt.M}if(dt.M>=60){dt.M=0;++dt.H}break;case 2:if(dt.u>=.5){dt.u=0;++dt.S}if(dt.S>=60){dt.S=0;++dt.M}break}var nstr="",jj;for(i=0;i<out.length;++i){switch(out[i].t){case"t":case"T":case" ":case"D":break;case"X":out[i]=undefined;break;case"d":case"m":case"y":case"h":case"H":case"M":case"s":case"e":case"b":case"Z":out[i].v=write_date(out[i].t.charCodeAt(0),out[i].v,dt,ss0);out[i].t="t";break;case"n":case"(":case"?":jj=i+1;while(out[jj]!=null&&((c=out[jj].t)==="?"||c==="D"||(c===" "||c==="t")&&out[jj+1]!=null&&(out[jj+1].t==="?"||out[jj+1].t==="t"&&out[jj+1].v==="/")||out[i].t==="("&&(c===" "||c==="n"||c===")")||c==="t"&&(out[jj].v==="/"||"$€".indexOf(out[jj].v)>-1||out[jj].v===" "&&out[jj+1]!=null&&out[jj+1].t=="?"))){out[i].v+=out[jj].v;out[jj]=undefined;++jj}nstr+=out[i].v;i=jj-1;break;case"G":out[i].t="t";out[i].v=general_fmt(v,opts);break}}var vv="",myv,ostr;if(nstr.length>0){myv=v<0&&nstr.charCodeAt(0)===45?-v:v;ostr=write_num(nstr.charCodeAt(0)===40?"(":"n",nstr,myv);jj=ostr.length-1;var decpt=out.length;for(i=0;i<out.length;++i)if(out[i]!=null&&out[i].v.indexOf(".")>-1){decpt=i;break}var lasti=out.length;if(decpt===out.length&&ostr.indexOf("E")===-1){for(i=out.length-1;i>=0;--i){if(out[i]==null||"n?(".indexOf(out[i].t)===-1)continue;if(jj>=out[i].v.length-1){jj-=out[i].v.length;out[i].v=ostr.substr(jj+1,out[i].v.length)}else if(jj<0)out[i].v="";else{out[i].v=ostr.substr(0,jj+1);jj=-1}out[i].t="t";lasti=i}if(jj>=0&&lasti<out.length)out[lasti].v=ostr.substr(0,jj+1)+out[lasti].v}else if(decpt!==out.length&&ostr.indexOf("E")===-1){jj=ostr.indexOf(".")-1;for(i=decpt;i>=0;--i){if(out[i]==null||"n?(".indexOf(out[i].t)===-1)continue;j=out[i].v.indexOf(".")>-1&&i===decpt?out[i].v.indexOf(".")-1:out[i].v.length-1;vv=out[i].v.substr(j+1);for(;j>=0;--j){if(jj>=0&&(out[i].v[j]==="0"||out[i].v[j]==="#"))vv=ostr[jj--]+vv}out[i].v=vv;out[i].t="t";lasti=i}if(jj>=0&&lasti<out.length)out[lasti].v=ostr.substr(0,jj+1)+out[lasti].v;jj=ostr.indexOf(".")+1;for(i=decpt;i<out.length;++i){if(out[i]==null||"n?(".indexOf(out[i].t)===-1&&i!==decpt)continue;j=out[i].v.indexOf(".")>-1&&i===decpt?out[i].v.indexOf(".")+1:0;vv=out[i].v.substr(0,j);for(;j<out[i].v.length;++j){if(jj<ostr.length)vv+=ostr[jj++]}out[i].v=vv;out[i].t="t";lasti=i}}}for(i=0;i<out.length;++i)if(out[i]!=null&&"n(?".indexOf(out[i].t)>-1){myv=flen>1&&v<0&&i>0&&out[i-1].v==="-"?-v:v;out[i].v=write_num(out[i].t,out[i].v,myv);out[i].t="t"}var retval="";for(i=0;i!==out.length;++i)if(out[i]!=null)retval+=out[i].v;return retval}SSF._eval=eval_fmt;var cfregex=/\[[=<>]/;var cfregex2=/\[([=<>]*)(-?\d+\.?\d*)\]/;function chkcond(v,rr){if(rr==null)return false;var thresh=parseFloat(rr[2]);switch(rr[1]){case"=":if(v==thresh)return true;break;case">":if(v>thresh)return true;break;case"<":if(v<thresh)return true;break;case"<>":if(v!=thresh)return true;break;case">=":if(v>=thresh)return true;break;case"<=":if(v<=thresh)return true;break}return false}function choose_fmt(f,v){var fmt=split_fmt(f);var l=fmt.length,lat=fmt[l-1].indexOf("@");if(l<4&&lat>-1)--l;if(fmt.length>4)throw"cannot find right format for |"+fmt+"|";if(typeof v!=="number")return[4,fmt.length===4||lat>-1?fmt[fmt.length-1]:"@"];switch(fmt.length){case 1:fmt=lat>-1?["General","General","General",fmt[0]]:[fmt[0],fmt[0],fmt[0],"@"];break;case 2:fmt=lat>-1?[fmt[0],fmt[0],fmt[0],fmt[1]]:[fmt[0],fmt[1],fmt[0],"@"];break;case 3:fmt=lat>-1?[fmt[0],fmt[1],fmt[0],fmt[2]]:[fmt[0],fmt[1],fmt[2],"@"];break;case 4:break}var ff=v>0?fmt[0]:v<0?fmt[1]:fmt[2];if(fmt[0].indexOf("[")===-1&&fmt[1].indexOf("[")===-1)return[l,ff];if(fmt[0].match(cfregex)!=null||fmt[1].match(cfregex)!=null){var m1=fmt[0].match(cfregex2);var m2=fmt[1].match(cfregex2);return chkcond(v,m1)?[l,fmt[0]]:chkcond(v,m2)?[l,fmt[1]]:[l,fmt[m1!=null&&m2!=null?2:1]]}return[l,ff]}function format(fmt,v,o){fixopts(o!=null?o:o=[]);var sfmt="";switch(typeof fmt){case"string":sfmt=fmt;break;case"number":sfmt=(o.table!=null?o.table:table_fmt)[fmt];break}if(isgeneral(sfmt,0))return general_fmt(v,o);var f=choose_fmt(sfmt,v);if(isgeneral(f[1]))return general_fmt(v,o);if(v===true)v="TRUE";else if(v===false)v="FALSE";else if(v===""||v==null)return"";return eval_fmt(f[1],v,o,f[0])}SSF._table=table_fmt;SSF.load=function load_entry(fmt,idx){table_fmt[idx]=fmt};SSF.format=format;SSF.get_table=function get_table(){return table_fmt};SSF.load_table=function load_table(tbl){for(var i=0;i!=392;++i)if(tbl[i]!==undefined)SSF.load(tbl[i],i)}};make_ssf(SSF);var XLMLFormatMap={"General Number":"General","General Date":SSF._table[22],"Long Date":"dddd, mmmm dd, yyyy","Medium Date":SSF._table[15],"Short Date":SSF._table[14],"Long Time":SSF._table[19],"Medium Time":SSF._table[18],"Short Time":SSF._table[20],Currency:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',Fixed:SSF._table[2],Standard:SSF._table[4],Percent:SSF._table[10],Scientific:SSF._table[11],"Yes/No":'"Yes";"Yes";"No";@',"True/False":'"True";"True";"False";@',"On/Off":'"Yes";"Yes";"No";@'};var DO_NOT_EXPORT_CFB=true;var CFB=function _CFB(){var exports={};exports.version="0.10.2";function parse(file){var mver=3;var ssz=512;var nmfs=0;var ndfs=0;var dir_start=0;var minifat_start=0;var difat_start=0;var fat_addrs=[];var blob=file.slice(0,512);prep_blob(blob,0);var mv=check_get_mver(blob);mver=mv[0];switch(mver){case 3:ssz=512;break;case 4:ssz=4096;break;default:throw"Major Version: Expected 3 or 4 saw "+mver}if(ssz!==512){blob=file.slice(0,ssz);prep_blob(blob,28)}var header=file.slice(0,ssz);check_shifts(blob,mver);var nds=blob.read_shift(4,"i");if(mver===3&&nds!==0)throw"# Directory Sectors: Expected 0 saw "+nds;blob.l+=4;dir_start=blob.read_shift(4,"i");blob.l+=4;blob.chk("00100000","Mini Stream Cutoff Size: ");minifat_start=blob.read_shift(4,"i");nmfs=blob.read_shift(4,"i");difat_start=blob.read_shift(4,"i");ndfs=blob.read_shift(4,"i");for(var q,j=0;j<109;++j){q=blob.read_shift(4,"i");if(q<0)break;fat_addrs[j]=q}var sectors=sectorify(file,ssz);sleuth_fat(difat_start,ndfs,sectors,ssz,fat_addrs);var sector_list=make_sector_list(sectors,dir_start,fat_addrs,ssz);sector_list[dir_start].name="!Directory";if(nmfs>0&&minifat_start!==ENDOFCHAIN)sector_list[minifat_start].name="!MiniFAT";sector_list[fat_addrs[0]].name="!FAT";sector_list.fat_addrs=fat_addrs;sector_list.ssz=ssz;var files={},Paths=[],FileIndex=[],FullPaths=[],FullPathDir={};read_directory(dir_start,sector_list,sectors,Paths,nmfs,files,FileIndex);build_full_paths(FileIndex,FullPathDir,FullPaths,Paths);var root_name=Paths.shift();Paths.root=root_name;var find_path=make_find_path(FullPaths,Paths,FileIndex,files,root_name);return{raw:{header:header,sectors:sectors},FileIndex:FileIndex,FullPaths:FullPaths,FullPathDir:FullPathDir,find:find_path}}function check_get_mver(blob){blob.chk(HEADER_SIGNATURE,"Header Signature: ");blob.chk(HEADER_CLSID,"CLSID: ");var mver=blob.read_shift(2,"u");return[blob.read_shift(2,"u"),mver]}function check_shifts(blob,mver){var shift=9;blob.chk("feff","Byte Order: ");switch(shift=blob.read_shift(2)){case 9:if(mver!==3)throw"MajorVersion/SectorShift Mismatch";break;case 12:if(mver!==4)throw"MajorVersion/SectorShift Mismatch";break;default:throw"Sector Shift: Expected 9 or 12 saw "+shift}blob.chk("0600","Mini Sector Shift: ");blob.chk("000000000000","Reserved: ")}function sectorify(file,ssz){var nsectors=Math.ceil(file.length/ssz)-1;var sectors=new Array(nsectors);for(var i=1;i<nsectors;++i)sectors[i-1]=file.slice(i*ssz,(i+1)*ssz);sectors[nsectors-1]=file.slice(nsectors*ssz);return sectors}function build_full_paths(FI,FPD,FP,Paths){var i=0,L=0,R=0,C=0,j=0,pl=Paths.length;var dad=new Array(pl),q=new Array(pl);for(;i<pl;++i){dad[i]=q[i]=i;FP[i]=Paths[i]}for(;j<q.length;++j){i=q[j];L=FI[i].L;R=FI[i].R;C=FI[i].C;if(dad[i]===i){if(L!==-1&&dad[L]!==L)dad[i]=dad[L];if(R!==-1&&dad[R]!==R)dad[i]=dad[R]}if(C!==-1)dad[C]=i;if(L!==-1){dad[L]=dad[i];q.push(L)}if(R!==-1){dad[R]=dad[i];q.push(R)}}for(i=1;i!==pl;++i)if(dad[i]===i){if(R!==-1&&dad[R]!==R)dad[i]=dad[R];else if(L!==-1&&dad[L]!==L)dad[i]=dad[L]}for(i=1;i<pl;++i){if(FI[i].type===0)continue;j=dad[i];if(j===0)FP[i]=FP[0]+"/"+FP[i];else while(j!==0){FP[i]=FP[j]+"/"+FP[i];j=dad[j]}dad[i]=0}FP[0]+="/";for(i=1;i<pl;++i){if(FI[i].type!==2)FP[i]+="/";FPD[FP[i]]=FI[i]}}function make_find_path(FullPaths,Paths,FileIndex,files,root_name){var UCFullPaths=new Array(FullPaths.length);var UCPaths=new Array(Paths.length),i;for(i=0;i<FullPaths.length;++i)UCFullPaths[i]=FullPaths[i].toUpperCase().replace(chr0,"").replace(chr1,"!");for(i=0;i<Paths.length;++i)UCPaths[i]=Paths[i].toUpperCase().replace(chr0,"").replace(chr1,"!");return function find_path(path){var k;if(path.charCodeAt(0)===47){k=true;path=root_name+path}else k=path.indexOf("/")!==-1;var UCPath=path.toUpperCase().replace(chr0,"").replace(chr1,"!");var w=k===true?UCFullPaths.indexOf(UCPath):UCPaths.indexOf(UCPath);if(w===-1)return null;return k===true?FileIndex[w]:files[Paths[w]]}}function sleuth_fat(idx,cnt,sectors,ssz,fat_addrs){var q;if(idx===ENDOFCHAIN){if(cnt!==0)throw"DIFAT chain shorter than expected"}else if(idx!==-1){var sector=sectors[idx],m=(ssz>>>2)-1;for(var i=0;i<m;++i){if((q=__readInt32LE(sector,i*4))===ENDOFCHAIN)break;fat_addrs.push(q)}sleuth_fat(__readInt32LE(sector,ssz-4),cnt-1,sectors,ssz,fat_addrs)}}function get_sector_list(sectors,start,fat_addrs,ssz,chkd){var sl=sectors.length;var buf,buf_chain;if(!chkd)chkd=new Array(sl);var modulus=ssz-1,j,jj;buf=[];buf_chain=[];for(j=start;j>=0;){chkd[j]=true;buf[buf.length]=j;buf_chain.push(sectors[j]);var addr=fat_addrs[Math.floor(j*4/ssz)];
jj=j*4&modulus;if(ssz<4+jj)throw"FAT boundary crossed: "+j+" 4 "+ssz;j=__readInt32LE(sectors[addr],jj)}return{nodes:buf,data:__toBuffer([buf_chain])}}function make_sector_list(sectors,dir_start,fat_addrs,ssz){var sl=sectors.length,sector_list=new Array(sl);var chkd=new Array(sl),buf,buf_chain;var modulus=ssz-1,i,j,k,jj;for(i=0;i<sl;++i){buf=[];k=i+dir_start;if(k>=sl)k-=sl;if(chkd[k]===true)continue;buf_chain=[];for(j=k;j>=0;){chkd[j]=true;buf[buf.length]=j;buf_chain.push(sectors[j]);var addr=fat_addrs[Math.floor(j*4/ssz)];jj=j*4&modulus;if(ssz<4+jj)throw"FAT boundary crossed: "+j+" 4 "+ssz;j=__readInt32LE(sectors[addr],jj)}sector_list[k]={nodes:buf,data:__toBuffer([buf_chain])}}return sector_list}function read_directory(dir_start,sector_list,sectors,Paths,nmfs,files,FileIndex){var blob;var minifat_store=0,pl=Paths.length?2:0;var sector=sector_list[dir_start].data;var i=0,namelen=0,name,o,ctime,mtime;for(;i<sector.length;i+=128){blob=sector.slice(i,i+128);prep_blob(blob,64);namelen=blob.read_shift(2);if(namelen===0)continue;name=__utf16le(blob,0,namelen-pl);Paths.push(name);o={name:name,type:blob.read_shift(1),color:blob.read_shift(1),L:blob.read_shift(4,"i"),R:blob.read_shift(4,"i"),C:blob.read_shift(4,"i"),clsid:blob.read_shift(16),state:blob.read_shift(4,"i")};ctime=blob.read_shift(2)+blob.read_shift(2)+blob.read_shift(2)+blob.read_shift(2);if(ctime!==0){o.ctime=ctime;o.ct=read_date(blob,blob.l-8)}mtime=blob.read_shift(2)+blob.read_shift(2)+blob.read_shift(2)+blob.read_shift(2);if(mtime!==0){o.mtime=mtime;o.mt=read_date(blob,blob.l-8)}o.start=blob.read_shift(4,"i");o.size=blob.read_shift(4,"i");if(o.type===5){minifat_store=o.start;if(nmfs>0&&minifat_store!==ENDOFCHAIN)sector_list[minifat_store].name="!StreamData"}else if(o.size>=4096){o.storage="fat";if(sector_list[o.start]===undefined)sector_list[o.start]=get_sector_list(sectors,o.start,sector_list.fat_addrs,sector_list.ssz);sector_list[o.start].name=o.name;o.content=sector_list[o.start].data.slice(0,o.size);prep_blob(o.content,0)}else{o.storage="minifat";if(minifat_store!==ENDOFCHAIN&&o.start!==ENDOFCHAIN){o.content=sector_list[minifat_store].data.slice(o.start*MSSZ,o.start*MSSZ+o.size);prep_blob(o.content,0)}}files[name]=o;FileIndex.push(o)}}function read_date(blob,offset){return new Date((__readUInt32LE(blob,offset+4)/1e7*Math.pow(2,32)+__readUInt32LE(blob,offset)/1e7-11644473600)*1e3)}var fs;function readFileSync(filename,options){if(fs===undefined)fs=require("fs");return parse(fs.readFileSync(filename),options)}function readSync(blob,options){switch(options!==undefined&&options.type!==undefined?options.type:"base64"){case"file":return readFileSync(blob,options);case"base64":return parse(s2a(Base64.decode(blob)),options);case"binary":return parse(s2a(blob),options)}return parse(blob)}var MSSZ=64;var ENDOFCHAIN=-2;var HEADER_SIGNATURE="d0cf11e0a1b11ae1";var HEADER_CLSID="00000000000000000000000000000000";var consts={MAXREGSECT:-6,DIFSECT:-4,FATSECT:-3,ENDOFCHAIN:ENDOFCHAIN,FREESECT:-1,HEADER_SIGNATURE:HEADER_SIGNATURE,HEADER_MINOR_VERSION:"3e00",MAXREGSID:-6,NOSTREAM:-1,HEADER_CLSID:HEADER_CLSID,EntryTypes:["unknown","storage","stream","lockbytes","property","root"]};exports.read=readSync;exports.parse=parse;exports.utils={ReadShift:ReadShift,CheckField:CheckField,prep_blob:prep_blob,bconcat:bconcat,consts:consts};return exports}();if(typeof require!=="undefined"&&typeof module!=="undefined"&&typeof DO_NOT_EXPORT_CFB==="undefined"){module.exports=CFB}function isval(x){return x!==undefined&&x!==null}function keys(o){return Object.keys(o)}function evert_key(obj,key){var o=[],K=keys(obj);for(var i=0;i!==K.length;++i)o[obj[K[i]][key]]=K[i];return o}function evert(obj){var o=[],K=keys(obj);for(var i=0;i!==K.length;++i)o[obj[K[i]]]=K[i];return o}function evert_num(obj){var o=[],K=keys(obj);for(var i=0;i!==K.length;++i)o[obj[K[i]]]=parseInt(K[i],10);return o}function evert_arr(obj){var o=[],K=keys(obj);for(var i=0;i!==K.length;++i){if(o[obj[K[i]]]==null)o[obj[K[i]]]=[];o[obj[K[i]]].push(K[i])}return o}function datenum(v,date1904){if(date1904)v+=1462;var epoch=Date.parse(v);return(epoch+22091616e5)/(24*60*60*1e3)}function cc2str(arr){var o="";for(var i=0;i!=arr.length;++i)o+=String.fromCharCode(arr[i]);return o}function getdata(data){if(!data)return null;if(data.name.substr(-4)===".bin"){if(data.data)return char_codes(data.data);if(data.asNodeBuffer&&has_buf)return data.asNodeBuffer();if(data._data&&data._data.getContent)return Array.prototype.slice.call(data._data.getContent())}else{if(data.data)return data.name.substr(-4)!==".bin"?debom_xml(data.data):char_codes(data.data);if(data.asNodeBuffer&&has_buf)return debom_xml(data.asNodeBuffer().toString("binary"));if(data.asBinary)return debom_xml(data.asBinary());if(data._data&&data._data.getContent)return debom_xml(cc2str(Array.prototype.slice.call(data._data.getContent(),0)))}return null}function safegetzipfile(zip,file){var f=file;if(zip.files[f])return zip.files[f];var lowerCaseFiles={};for(var key in zip.files){lowerCaseFiles[key.toLowerCase()]=zip.files[key]}f=file.toLowerCase();if(lowerCaseFiles[f])return lowerCaseFiles[f];f=f.replace(/\//g,"\\");if(lowerCaseFiles[f])return lowerCaseFiles[f];return null}function getzipfile(zip,file){var o=safegetzipfile(zip,file);if(o==null)throw new Error("Cannot find file "+file+" in zip");return o}function getzipdata(zip,file,safe){if(!safe)return getdata(getzipfile(zip,file));if(!file)return null;try{return getzipdata(zip,file)}catch(e){return null}}var _fs,jszip;if(typeof JSZip!=="undefined")jszip=JSZip;if(typeof exports!=="undefined"){if(typeof module!=="undefined"&&module.exports){if(has_buf&&typeof jszip==="undefined")jszip=require("js"+"zip");if(typeof jszip==="undefined")jszip=require("./js"+"zip").JSZip;_fs=require("f"+"s")}}var attregexg=/([\w:]+)=((?:")([^"]*)(?:")|(?:')([^']*)(?:'))/g;var tagregex=/<[^>]*>/g;var nsregex=/<\w*:/,nsregex2=/<(\/?)\w+:/;function parsexmltag(tag,skip_root){var z=[];var eq=0,c=0;for(;eq!==tag.length;++eq)if((c=tag.charCodeAt(eq))===32||c===10||c===13)break;if(!skip_root)z[0]=tag.substr(0,eq);if(eq===tag.length)return z;var m=tag.match(attregexg),j=0,w="",v="",i=0,q="",cc="";if(m)for(i=0;i!=m.length;++i){cc=m[i];for(c=0;c!=cc.length;++c)if(cc.charCodeAt(c)===61)break;q=cc.substr(0,c);v=cc.substring(c+2,cc.length-1);for(j=0;j!=q.length;++j)if(q.charCodeAt(j)===58)break;if(j===q.length)z[q]=v;else z[(j===5&&q.substr(0,5)==="xmlns"?"xmlns":"")+q.substr(j+1)]=v}return z}function strip_ns(x){return x.replace(nsregex2,"<$1")}var encodings={"&quot;":'"',"&apos;":"'","&gt;":">","&lt;":"<","&amp;":"&"};var rencoding=evert(encodings);var rencstr="&<>'\"".split("");var unescapexml=function(){var encregex=/&[a-z]*;/g,coderegex=/_x([\da-fA-F]+)_/g;return function unescapexml(text){var s=text+"";return s.replace(encregex,function($$){return encodings[$$]}).replace(coderegex,function(m,c){return String.fromCharCode(parseInt(c,16))})}}();var decregex=/[&<>'"]/g,charegex=/[\u0000-\u0008\u000b-\u001f]/g;function escapexml(text){var s=text+"";return s.replace(decregex,function(y){return rencoding[y]}).replace(charegex,function(s){return"_x"+("000"+s.charCodeAt(0).toString(16)).substr(-4)+"_"})}var xlml_fixstr=function(){var entregex=/&#(\d+);/g;function entrepl($$,$1){return String.fromCharCode(parseInt($1,10))}return function xlml_fixstr(str){return str.replace(entregex,entrepl)}}();function parsexmlbool(value,tag){switch(value){case"1":case"true":case"TRUE":return true;default:return false}}var utf8read=function utf8reada(orig){var out="",i=0,c=0,d=0,e=0,f=0,w=0;while(i<orig.length){c=orig.charCodeAt(i++);if(c<128){out+=String.fromCharCode(c);continue}d=orig.charCodeAt(i++);if(c>191&&c<224){out+=String.fromCharCode((c&31)<<6|d&63);continue}e=orig.charCodeAt(i++);if(c<240){out+=String.fromCharCode((c&15)<<12|(d&63)<<6|e&63);continue}f=orig.charCodeAt(i++);w=((c&7)<<18|(d&63)<<12|(e&63)<<6|f&63)-65536;out+=String.fromCharCode(55296+(w>>>10&1023));out+=String.fromCharCode(56320+(w&1023))}return out};if(has_buf){var utf8readb=function utf8readb(data){var out=new Buffer(2*data.length),w,i,j=1,k=0,ww=0,c;for(i=0;i<data.length;i+=j){j=1;if((c=data.charCodeAt(i))<128)w=c;else if(c<224){w=(c&31)*64+(data.charCodeAt(i+1)&63);j=2}else if(c<240){w=(c&15)*4096+(data.charCodeAt(i+1)&63)*64+(data.charCodeAt(i+2)&63);j=3}else{j=4;w=(c&7)*262144+(data.charCodeAt(i+1)&63)*4096+(data.charCodeAt(i+2)&63)*64+(data.charCodeAt(i+3)&63);w-=65536;ww=55296+(w>>>10&1023);w=56320+(w&1023)}if(ww!==0){out[k++]=ww&255;out[k++]=ww>>>8;ww=0}out[k++]=w%256;out[k++]=w>>>8}out.length=k;return out.toString("ucs2")};var corpus="foo bar baz☃🍣";if(utf8read(corpus)==utf8readb(corpus))utf8read=utf8readb;var utf8readc=function utf8readc(data){return Buffer(data,"binary").toString("utf8")};if(utf8read(corpus)==utf8readc(corpus))utf8read=utf8readc}var matchtag=function(){var mtcache={};return function matchtag(f,g){var t=f+"|"+g;if(mtcache[t]!==undefined)return mtcache[t];return mtcache[t]=new RegExp("<(?:\\w+:)?"+f+'(?: xml:space="preserve")?(?:[^>]*)>([^☃]*)</(?:\\w+:)?'+f+">",g||"")}}();var vtregex=function(){var vt_cache={};return function vt_regex(bt){if(vt_cache[bt]!==undefined)return vt_cache[bt];return vt_cache[bt]=new RegExp("<vt:"+bt+">(.*?)</vt:"+bt+">","g")}}();var vtvregex=/<\/?vt:variant>/g,vtmregex=/<vt:([^>]*)>(.*)</;function parseVector(data){var h=parsexmltag(data);var matches=data.match(vtregex(h.baseType))||[];if(matches.length!=h.size)throw"unexpected vector length "+matches.length+" != "+h.size;var res=[];matches.forEach(function(x){var v=x.replace(vtvregex,"").match(vtmregex);res.push({v:v[2],t:v[1]})});return res}var wtregex=/(^\s|\s$|\n)/;function writetag(f,g){return"<"+f+(g.match(wtregex)?' xml:space="preserve"':"")+">"+g+"</"+f+">"}function wxt_helper(h){return keys(h).map(function(k){return" "+k+'="'+h[k]+'"'}).join("")}function writextag(f,g,h){return"<"+f+(isval(h)?wxt_helper(h):"")+(isval(g)?(g.match(wtregex)?' xml:space="preserve"':"")+">"+g+"</"+f:"/")+">"}function write_w3cdtf(d,t){try{return d.toISOString().replace(/\.\d*/,"")}catch(e){if(t)throw e}}function write_vt(s){switch(typeof s){case"string":return writextag("vt:lpwstr",s);case"number":return writextag((s|0)==s?"vt:i4":"vt:r8",String(s));case"boolean":return writextag("vt:bool",s?"true":"false")}if(s instanceof Date)return writextag("vt:filetime",write_w3cdtf(s));throw new Error("Unable to serialize "+s)}var XML_HEADER='<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r\n';var XMLNS={dc:"http://purl.org/dc/elements/1.1/",dcterms:"http://purl.org/dc/terms/",dcmitype:"http://purl.org/dc/dcmitype/",mx:"http://schemas.microsoft.com/office/mac/excel/2008/main",r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships",sjs:"http://schemas.openxmlformats.org/package/2006/sheetjs/core-properties",vt:"http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes",xsi:"http://www.w3.org/2001/XMLSchema-instance",xsd:"http://www.w3.org/2001/XMLSchema"};XMLNS.main=["http://schemas.openxmlformats.org/spreadsheetml/2006/main","http://purl.oclc.org/ooxml/spreadsheetml/main","http://schemas.microsoft.com/office/excel/2006/main","http://schemas.microsoft.com/office/excel/2006/2"];function readIEEE754(buf,idx,isLE,nl,ml){if(isLE===undefined)isLE=true;if(!nl)nl=8;if(!ml&&nl===8)ml=52;var e,m,el=nl*8-ml-1,eMax=(1<<el)-1,eBias=eMax>>1;var bits=-7,d=isLE?-1:1,i=isLE?nl-1:0,s=buf[idx+i];i+=d;e=s&(1<<-bits)-1;s>>>=-bits;bits+=el;for(;bits>0;e=e*256+buf[idx+i],i+=d,bits-=8);m=e&(1<<-bits)-1;e>>>=-bits;bits+=ml;for(;bits>0;m=m*256+buf[idx+i],i+=d,bits-=8);if(e===eMax)return m?NaN:(s?-1:1)*Infinity;else if(e===0)e=1-eBias;else{m=m+Math.pow(2,ml);e=e-eBias}return(s?-1:1)*m*Math.pow(2,e-ml)}var __toBuffer,___toBuffer;__toBuffer=___toBuffer=function toBuffer_(bufs){var x=[];for(var i=0;i<bufs[0].length;++i){x.push.apply(x,bufs[0][i])}return x};var __utf16le,___utf16le;__utf16le=___utf16le=function utf16le_(b,s,e){var ss=[];for(var i=s;i<e;i+=2)ss.push(String.fromCharCode(__readUInt16LE(b,i)));return ss.join("")};var __hexlify,___hexlify;__hexlify=___hexlify=function hexlify_(b,s,l){return b.slice(s,s+l).map(function(x){return(x<16?"0":"")+x.toString(16)}).join("")};var __utf8,___utf8;__utf8=___utf8=function(b,s,e){var ss=[];for(var i=s;i<e;i++)ss.push(String.fromCharCode(__readUInt8(b,i)));return ss.join("")};var __lpstr,___lpstr;__lpstr=___lpstr=function lpstr_(b,i){var len=__readUInt32LE(b,i);return len>0?__utf8(b,i+4,i+4+len-1):""};var __lpwstr,___lpwstr;__lpwstr=___lpwstr=function lpwstr_(b,i){var len=2*__readUInt32LE(b,i);return len>0?__utf8(b,i+4,i+4+len-1):""};var __double,___double;__double=___double=function(b,idx){return readIEEE754(b,idx)};var is_buf=function is_buf_a(a){return Array.isArray(a)};if(has_buf){__utf16le=function utf16le_b(b,s,e){if(!Buffer.isBuffer(b))return ___utf16le(b,s,e);return b.toString("utf16le",s,e)};__hexlify=function(b,s,l){return Buffer.isBuffer(b)?b.toString("hex",s,s+l):___hexlify(b,s,l)};__lpstr=function lpstr_b(b,i){if(!Buffer.isBuffer(b))return ___lpstr(b,i);var len=b.readUInt32LE(i);return len>0?b.toString("utf8",i+4,i+4+len-1):""};__lpwstr=function lpwstr_b(b,i){if(!Buffer.isBuffer(b))return ___lpwstr(b,i);var len=2*b.readUInt32LE(i);return b.toString("utf16le",i+4,i+4+len-1)};__utf8=function utf8_b(s,e){return this.toString("utf8",s,e)};__toBuffer=function(bufs){return bufs[0].length>0&&Buffer.isBuffer(bufs[0][0])?Buffer.concat(bufs[0]):___toBuffer(bufs)};bconcat=function(bufs){return Buffer.isBuffer(bufs[0])?Buffer.concat(bufs):[].concat.apply([],bufs)};__double=function double_(b,i){if(Buffer.isBuffer(b))return b.readDoubleLE(i);return ___double(b,i)};is_buf=function is_buf_b(a){return Buffer.isBuffer(a)||Array.isArray(a)}}if(typeof cptable!=="undefined"){__utf16le=function(b,s,e){return cptable.utils.decode(1200,b.slice(s,e))};__utf8=function(b,s,e){return cptable.utils.decode(65001,b.slice(s,e))};__lpstr=function(b,i){var len=__readUInt32LE(b,i);return len>0?cptable.utils.decode(current_codepage,b.slice(i+4,i+4+len-1)):""};__lpwstr=function(b,i){var len=2*__readUInt32LE(b,i);return len>0?cptable.utils.decode(1200,b.slice(i+4,i+4+len-1)):""}}var __readUInt8=function(b,idx){return b[idx]};var __readUInt16LE=function(b,idx){return b[idx+1]*(1<<8)+b[idx]};var __readInt16LE=function(b,idx){var u=b[idx+1]*(1<<8)+b[idx];return u<32768?u:(65535-u+1)*-1};var __readUInt32LE=function(b,idx){return b[idx+3]*(1<<24)+(b[idx+2]<<16)+(b[idx+1]<<8)+b[idx]};var __readInt32LE=function(b,idx){return b[idx+3]<<24|b[idx+2]<<16|b[idx+1]<<8|b[idx]};var ___unhexlify=function(s){return s.match(/../g).map(function(x){return parseInt(x,16)})};var __unhexlify=typeof Buffer!=="undefined"?function(s){return Buffer.isBuffer(s)?new Buffer(s,"hex"):___unhexlify(s)}:___unhexlify;function ReadShift(size,t){var o="",oI,oR,oo=[],w,vv,i,loc;switch(t){case"dbcs":loc=this.l;if(has_buf&&Buffer.isBuffer(this))o=this.slice(this.l,this.l+2*size).toString("utf16le");else for(i=0;i!=size;++i){o+=String.fromCharCode(__readUInt16LE(this,loc));loc+=2}size*=2;break;case"utf8":o=__utf8(this,this.l,this.l+size);break;case"utf16le":size*=2;o=__utf16le(this,this.l,this.l+size);break;case"lpstr":o=__lpstr(this,this.l);size=5+o.length;break;case"lpwstr":o=__lpwstr(this,this.l);size=5+o.length;if(o[o.length-1]=="\0")size+=2;break;case"cstr":size=0;o="";while((w=__readUInt8(this,this.l+size++))!==0)oo.push(_getchar(w));o=oo.join("");break;case"wstr":size=0;o="";while((w=__readUInt16LE(this,this.l+size))!==0){oo.push(_getchar(w));size+=2}size+=2;o=oo.join("");break;case"dbcs-cont":o="";loc=this.l;for(i=0;i!=size;++i){if(this.lens&&this.lens.indexOf(loc)!==-1){w=__readUInt8(this,loc);this.l=loc+1;vv=ReadShift.call(this,size-i,w?"dbcs-cont":"sbcs-cont");return oo.join("")+vv}oo.push(_getchar(__readUInt16LE(this,loc)));loc+=2}o=oo.join("");size*=2;break;case"sbcs-cont":o="";loc=this.l;for(i=0;i!=size;++i){if(this.lens&&this.lens.indexOf(loc)!==-1){w=__readUInt8(this,loc);this.l=loc+1;vv=ReadShift.call(this,size-i,w?"dbcs-cont":"sbcs-cont");return oo.join("")+vv}oo.push(_getchar(__readUInt8(this,loc)));loc+=1}o=oo.join("");break;default:switch(size){case 1:oI=__readUInt8(this,this.l);this.l++;return oI;case 2:oI=(t==="i"?__readInt16LE:__readUInt16LE)(this,this.l);this.l+=2;return oI;case 4:if(t==="i"||(this[this.l+3]&128)===0){oI=__readInt32LE(this,this.l);this.l+=4;return oI}else{oR=__readUInt32LE(this,this.l);this.l+=4;return oR}break;case 8:if(t==="f"){oR=__double(this,this.l);this.l+=8;return oR}case 16:o=__hexlify(this,this.l,size);break}}this.l+=size;return o}function WriteShift(t,val,f){var size,i;if(f==="dbcs"){for(i=0;i!=val.length;++i)this.writeUInt16LE(val.charCodeAt(i),this.l+2*i);size=2*val.length}else switch(t){case 1:size=1;this[this.l]=val&255;break;case 3:size=3;this[this.l+2]=val&255;val>>>=8;this[this.l+1]=val&255;val>>>=8;this[this.l]=val&255;break;case 4:size=4;this.writeUInt32LE(val,this.l);break;case 8:size=8;if(f==="f"){this.writeDoubleLE(val,this.l);break}case 16:break;case-4:size=4;this.writeInt32LE(val,this.l);break}this.l+=size;return this}function CheckField(hexstr,fld){var m=__hexlify(this,this.l,hexstr.length>>1);if(m!==hexstr)throw fld+"Expected "+hexstr+" saw "+m;this.l+=hexstr.length>>1}function prep_blob(blob,pos){blob.l=pos;blob.read_shift=ReadShift;blob.chk=CheckField;blob.write_shift=WriteShift}function parsenoop(blob,length){blob.l+=length}function writenoop(blob,length){blob.l+=length}function new_buf(sz){var o=new_raw_buf(sz);prep_blob(o,0);return o}function recordhopper(data,cb,opts){var tmpbyte,cntbyte,length;prep_blob(data,data.l||0);while(data.l<data.length){var RT=data.read_shift(1);if(RT&128)RT=(RT&127)+((data.read_shift(1)&127)<<7);var R=XLSBRecordEnum[RT]||XLSBRecordEnum[65535];tmpbyte=data.read_shift(1);length=tmpbyte&127;for(cntbyte=1;cntbyte<4&&tmpbyte&128;++cntbyte)length+=((tmpbyte=data.read_shift(1))&127)<<7*cntbyte;var d=R.f(data,length,opts);if(cb(d,R,RT))return}}function buf_array(){var bufs=[],blksz=2048;var newblk=function ba_newblk(sz){var o=new_buf(sz);prep_blob(o,0);return o};var curbuf=newblk(blksz);var endbuf=function ba_endbuf(){curbuf.length=curbuf.l;if(curbuf.length>0)bufs.push(curbuf);curbuf=null};var next=function ba_next(sz){if(sz<curbuf.length-curbuf.l)return curbuf;endbuf();return curbuf=newblk(Math.max(sz+1,blksz))};var end=function ba_end(){endbuf();return __toBuffer([bufs])};var push=function ba_push(buf){endbuf();curbuf=buf;next(blksz)};return{next:next,push:push,end:end,_bufs:bufs}}function write_record(ba,type,payload,length){var t=evert_RE[type],l;if(!length)length=XLSBRecordEnum[t].p||(payload||[]).length||0;l=1+(t>=128?1:0)+1+length;if(length>=128)++l;if(length>=16384)++l;if(length>=2097152)++l;var o=ba.next(l);if(t<=127)o.write_shift(1,t);else{o.write_shift(1,(t&127)+128);o.write_shift(1,t>>7)}for(var i=0;i!=4;++i){if(length>=128){o.write_shift(1,(length&127)+128);length>>=7}else{o.write_shift(1,length);break}}if(length>0&&is_buf(payload))ba.push(payload)}function shift_cell_xls(cell,tgt){if(tgt.s){if(cell.cRel)cell.c+=tgt.s.c;if(cell.rRel)cell.r+=tgt.s.r}else{cell.c+=tgt.c;cell.r+=tgt.r}cell.cRel=cell.rRel=0;while(cell.c>=256)cell.c-=256;while(cell.r>=65536)cell.r-=65536;return cell}function shift_range_xls(cell,range){cell.s=shift_cell_xls(cell.s,range.s);cell.e=shift_cell_xls(cell.e,range.s);return cell}var OFFCRYPTO={};var make_offcrypto=function(O,_crypto){var crypto;if(typeof _crypto!=="undefined")crypto=_crypto;else if(typeof require!=="undefined"){try{crypto=require("cry"+"pto")}catch(e){crypto=null}}O.rc4=function(key,data){var S=new Array(256);var c=0,i=0,j=0,t=0;for(i=0;i!=256;++i)S[i]=i;for(i=0;i!=256;++i){j=j+S[i]+key[i%key.length].charCodeAt(0)&255;t=S[i];S[i]=S[j];S[j]=t}i=j=0;out=Buffer(data.length);for(c=0;c!=data.length;++c){i=i+1&255;j=(j+S[i])%256;t=S[i];S[i]=S[j];S[j]=t;out[c]=data[c]^S[S[i]+S[j]&255]}return out};if(crypto){O.md5=function(hex){return crypto.createHash("md5").update(hex).digest("hex")}}else{O.md5=function(hex){throw"unimplemented"}}};make_offcrypto(OFFCRYPTO,typeof crypto!=="undefined"?crypto:undefined);function parse_StrRun(data,length){return{ich:data.read_shift(2),ifnt:data.read_shift(2)}}function parse_RichStr(data,length){var start=data.l;var flags=data.read_shift(1);var str=parse_XLWideString(data);var rgsStrRun=[];var z={t:str,h:str};if((flags&1)!==0){var dwSizeStrRun=data.read_shift(4);for(var i=0;i!=dwSizeStrRun;++i)rgsStrRun.push(parse_StrRun(data));z.r=rgsStrRun}else z.r="<t>"+escapexml(str)+"</t>";if((flags&2)!==0){}data.l=start+length;return z}function write_RichStr(str,o){if(o==null)o=new_buf(5+2*str.t.length);o.write_shift(1,0);write_XLWideString(str.t,o);return o}function parse_XLSBCell(data){var col=data.read_shift(4);var iStyleRef=data.read_shift(2);iStyleRef+=data.read_shift(1)<<16;var fPhShow=data.read_shift(1);return{c:col,iStyleRef:iStyleRef}}function write_XLSBCell(cell,o){if(o==null)o=new_buf(8);o.write_shift(-4,cell.c);o.write_shift(3,cell.iStyleRef===undefined?cell.iStyleRef:cell.s);o.write_shift(1,0);return o}function parse_XLSBCodeName(data,length){return parse_XLWideString(data,length)}function parse_XLNullableWideString(data){var cchCharacters=data.read_shift(4);return cchCharacters===0||cchCharacters===4294967295?"":data.read_shift(cchCharacters,"dbcs")}function write_XLNullableWideString(data,o){if(!o)o=new_buf(127);o.write_shift(4,data.length>0?data.length:4294967295);if(data.length>0)o.write_shift(0,data,"dbcs");return o}function parse_XLWideString(data){var cchCharacters=data.read_shift(4);return cchCharacters===0?"":data.read_shift(cchCharacters,"dbcs")}function write_XLWideString(data,o){if(o==null)o=new_buf(4+2*data.length);o.write_shift(4,data.length);if(data.length>0)o.write_shift(0,data,"dbcs");return o}var parse_RelID=parse_XLNullableWideString;var write_RelID=write_XLNullableWideString;function parse_RkNumber(data){var b=data.slice(data.l,data.l+4);var fX100=b[0]&1,fInt=b[0]&2;data.l+=4;b[0]&=252;var RK=fInt===0?__double([0,0,0,0,b[0],b[1],b[2],b[3]],0):__readInt32LE(b,0)>>2;return fX100?RK/100:RK}function parse_UncheckedRfX(data){var cell={s:{},e:{}};cell.s.r=data.read_shift(4);cell.e.r=data.read_shift(4);cell.s.c=data.read_shift(4);cell.e.c=data.read_shift(4);return cell}function write_UncheckedRfX(r,o){if(!o)o=new_buf(16);o.write_shift(4,r.s.r);o.write_shift(4,r.e.r);o.write_shift(4,r.s.c);o.write_shift(4,r.e.c);return o}function parse_Xnum(data,length){return data.read_shift(8,"f")}function write_Xnum(data,o){return(o||new_buf(8)).write_shift(8,"f",data)}var BErr={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"};var RBErr=evert_num(BErr);function parse_BrtColor(data,length){var out={};var d=data.read_shift(1);out.fValidRGB=d&1;out.xColorType=d>>>1;out.index=data.read_shift(1);out.nTintAndShade=data.read_shift(2,"i");out.bRed=data.read_shift(1);out.bGreen=data.read_shift(1);out.bBlue=data.read_shift(1);out.bAlpha=data.read_shift(1)}function parse_FontFlags(data,length){var d=data.read_shift(1);data.l++;var out={fItalic:d&2,fStrikeout:d&8,fOutline:d&16,fShadow:d&32,fCondense:d&64,fExtend:d&128};return out}{var VT_EMPTY=0;var VT_NULL=1;var VT_I2=2;var VT_I4=3;var VT_R4=4;var VT_R8=5;var VT_CY=6;var VT_DATE=7;var VT_BSTR=8;var VT_ERROR=10;var VT_BOOL=11;var VT_VARIANT=12;var VT_DECIMAL=14;var VT_I1=16;var VT_UI1=17;var VT_UI2=18;var VT_UI4=19;var VT_I8=20;var VT_UI8=21;var VT_INT=22;var VT_UINT=23;var VT_LPSTR=30;var VT_LPWSTR=31;var VT_FILETIME=64;var VT_BLOB=65;var VT_STREAM=66;var VT_STORAGE=67;var VT_STREAMED_Object=68;var VT_STORED_Object=69;var VT_BLOB_Object=70;var VT_CF=71;var VT_CLSID=72;var VT_VERSIONED_STREAM=73;var VT_VECTOR=4096;var VT_ARRAY=8192;var VT_STRING=80;var VT_USTR=81;var VT_CUSTOM=[VT_STRING,VT_USTR]}var DocSummaryPIDDSI={1:{n:"CodePage",t:VT_I2},2:{n:"Category",t:VT_STRING},3:{n:"PresentationFormat",t:VT_STRING},4:{n:"ByteCount",t:VT_I4},5:{n:"LineCount",t:VT_I4},6:{n:"ParagraphCount",t:VT_I4},7:{n:"SlideCount",t:VT_I4},8:{n:"NoteCount",t:VT_I4},9:{n:"HiddenCount",t:VT_I4},10:{n:"MultimediaClipCount",t:VT_I4},11:{n:"Scale",t:VT_BOOL},12:{n:"HeadingPair",t:VT_VECTOR|VT_VARIANT},13:{n:"DocParts",t:VT_VECTOR|VT_LPSTR},14:{n:"Manager",t:VT_STRING},15:{n:"Company",t:VT_STRING},16:{n:"LinksDirty",t:VT_BOOL},17:{n:"CharacterCount",t:VT_I4},19:{n:"SharedDoc",t:VT_BOOL},22:{n:"HLinksChanged",t:VT_BOOL},23:{n:"AppVersion",t:VT_I4,p:"version"},26:{n:"ContentType",t:VT_STRING},27:{n:"ContentStatus",t:VT_STRING},28:{n:"Language",t:VT_STRING},29:{n:"Version",t:VT_STRING},255:{}};var SummaryPIDSI={1:{n:"CodePage",t:VT_I2},2:{n:"Title",t:VT_STRING},3:{n:"Subject",t:VT_STRING},4:{n:"Author",t:VT_STRING},5:{n:"Keywords",t:VT_STRING},6:{n:"Comments",t:VT_STRING},7:{n:"Template",t:VT_STRING},8:{n:"LastAuthor",t:VT_STRING},9:{n:"RevNumber",t:VT_STRING},10:{n:"EditTime",t:VT_FILETIME},11:{n:"LastPrinted",t:VT_FILETIME},12:{n:"CreatedDate",t:VT_FILETIME},13:{n:"ModifiedDate",t:VT_FILETIME},14:{n:"PageCount",t:VT_I4},15:{n:"WordCount",t:VT_I4},16:{n:"CharCount",t:VT_I4},17:{n:"Thumbnail",t:VT_CF},18:{n:"ApplicationName",t:VT_LPSTR},19:{n:"DocumentSecurity",t:VT_I4},255:{}};var SpecialProperties={2147483648:{n:"Locale",t:VT_UI4},2147483651:{n:"Behavior",t:VT_UI4},1919054434:{}};(function(){for(var y in SpecialProperties)if(SpecialProperties.hasOwnProperty(y))DocSummaryPIDDSI[y]=SummaryPIDSI[y]=SpecialProperties[y]})();var CountryEnum={1:"US",2:"CA",3:"",7:"RU",20:"EG",30:"GR",31:"NL",32:"BE",33:"FR",34:"ES",36:"HU",39:"IT",41:"CH",43:"AT",44:"GB",45:"DK",46:"SE",47:"NO",48:"PL",49:"DE",52:"MX",55:"BR",61:"AU",64:"NZ",66:"TH",81:"JP",82:"KR",84:"VN",86:"CN",90:"TR",105:"JS",213:"DZ",216:"MA",218:"LY",351:"PT",354:"IS",358:"FI",420:"CZ",886:"TW",961:"LB",962:"JO",963:"SY",964:"IQ",965:"KW",966:"SA",971:"AE",972:"IL",974:"QA",981:"IR",65535:"US"};var XLSFillPattern=[null,"solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];function rgbify(arr){return arr.map(function(x){return[x>>16&255,x>>8&255,x&255]})}var XLSIcv=rgbify([0,16777215,16711680,65280,255,16776960,16711935,65535,0,16777215,16711680,65280,255,16776960,16711935,65535,8388608,32768,128,8421376,8388736,32896,12632256,8421504,10066431,10040166,16777164,13434879,6684774,16744576,26316,13421823,128,16711935,16776960,65535,8388736,8388608,32896,255,52479,13434879,13434828,16777113,10079487,16751052,13408767,16764057,3368703,3394764,10079232,16763904,16750848,16737792,6710937,9868950,13158,3381606,13056,3355392,10040064,10040166,3355545,3355443,16777215,0]);var ct2type={"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":"workbooks","application/vnd.ms-excel.binIndexWs":"TODO","application/vnd.ms-excel.chartsheet":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":"TODO","application/vnd.ms-excel.dialogsheet":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":"TODO","application/vnd.ms-excel.macrosheet":"TODO","application/vnd.ms-excel.macrosheet+xml":"TODO","application/vnd.ms-excel.intlmacrosheet":"TODO","application/vnd.ms-excel.binIndexMs":"TODO","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.ms-excel.comments":"comments","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":"comments","application/vnd.ms-excel.pivotTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+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":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml":"TODO","application/vnd.ms-excel.sheetMetadata":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml":"TODO","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.ms-excel.Timeline+xml":"TODO","application/vnd.ms-excel.TimelineCache+xml":"TODO","application/vnd.ms-office.vbaProject":"vba","application/vnd.ms-office.vbaProjectSignature":"vba","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":"TODO","application/vnd.openxmlformats-officedocument.drawingml.chart+xml":"TODO","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",sheet:"js"};var CT_LIST=function(){var o={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",xltx:"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml"},strs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml",xlsb:"application/vnd.ms-excel.sharedStrings"},sheets:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",xlsb:"application/vnd.ms-excel.worksheet"},styles:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml",xlsb:"application/vnd.ms-excel.styles"
}};keys(o).forEach(function(k){if(!o[k].xlsm)o[k].xlsm=o[k].xlsx});keys(o).forEach(function(k){keys(o[k]).forEach(function(v){ct2type[o[k][v]]=k})});return o}();var type2ct=evert_arr(ct2type);XMLNS.CT="http://schemas.openxmlformats.org/package/2006/content-types";function parse_ct(data,opts){var ctext={};if(!data||!data.match)return data;var ct={workbooks:[],sheets:[],calcchains:[],themes:[],styles:[],coreprops:[],extprops:[],custprops:[],strs:[],comments:[],vba:[],TODO:[],rels:[],xmlns:""};(data.match(tagregex)||[]).forEach(function(x){var y=parsexmltag(x);switch(y[0].replace(nsregex,"<")){case"<?xml":break;case"<Types":ct.xmlns=y["xmlns"+(y[0].match(/<(\w+):/)||["",""])[1]];break;case"<Default":ctext[y.Extension]=y.ContentType;break;case"<Override":if(ct[ct2type[y.ContentType]]!==undefined)ct[ct2type[y.ContentType]].push(y.PartName);else if(opts.WTF)console.error(y);break}});if(ct.xmlns!==XMLNS.CT)throw new Error("Unknown Namespace: "+ct.xmlns);ct.calcchain=ct.calcchains.length>0?ct.calcchains[0]:"";ct.sst=ct.strs.length>0?ct.strs[0]:"";ct.style=ct.styles.length>0?ct.styles[0]:"";ct.defaults=ctext;delete ct.calcchains;return ct}var CTYPE_XML_ROOT=writextag("Types",null,{xmlns:XMLNS.CT,"xmlns:xsd":XMLNS.xsd,"xmlns:xsi":XMLNS.xsi});var CTYPE_DEFAULTS=[["xml","application/xml"],["bin","application/vnd.ms-excel.sheet.binary.macroEnabled.main"],["rels",type2ct.rels[0]]].map(function(x){return writextag("Default",null,{Extension:x[0],ContentType:x[1]})});function write_ct(ct,opts){var o=[],v;o[o.length]=XML_HEADER;o[o.length]=CTYPE_XML_ROOT;o=o.concat(CTYPE_DEFAULTS);var f1=function(w){if(ct[w]&&ct[w].length>0){v=ct[w][0];o[o.length]=writextag("Override",null,{PartName:(v[0]=="/"?"":"/")+v,ContentType:CT_LIST[w][opts.bookType||"xlsx"]})}};var f2=function(w){ct[w].forEach(function(v){o[o.length]=writextag("Override",null,{PartName:(v[0]=="/"?"":"/")+v,ContentType:CT_LIST[w][opts.bookType||"xlsx"]})})};var f3=function(t){(ct[t]||[]).forEach(function(v){o[o.length]=writextag("Override",null,{PartName:(v[0]=="/"?"":"/")+v,ContentType:type2ct[t][0]})})};f1("workbooks");f2("sheets");f3("themes");["strs","styles"].forEach(f1);["coreprops","extprops","custprops"].forEach(f3);if(o.length>2){o[o.length]="</Types>";o[1]=o[1].replace("/>",">")}return o.join("")}var RELS={WB:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",SHEET:"http://sheetjs.openxmlformats.org/officeDocument/2006/relationships/officeDocument"};function parse_rels(data,currentFilePath){if(!data)return data;if(currentFilePath.charAt(0)!=="/"){currentFilePath="/"+currentFilePath}var rels={};var hash={};var resolveRelativePathIntoAbsolute=function(to){var toksFrom=currentFilePath.split("/");toksFrom.pop();var toksTo=to.split("/");var reversed=[];while(toksTo.length!==0){var tokTo=toksTo.shift();if(tokTo===".."){toksFrom.pop()}else if(tokTo!=="."){toksFrom.push(tokTo)}}return toksFrom.join("/")};data.match(tagregex).forEach(function(x){var y=parsexmltag(x);if(y[0]==="<Relationship"){var rel={};rel.Type=y.Type;rel.Target=y.Target;rel.Id=y.Id;rel.TargetMode=y.TargetMode;var canonictarget=y.TargetMode==="External"?y.Target:resolveRelativePathIntoAbsolute(y.Target);rels[canonictarget]=rel;hash[y.Id]=rel}});rels["!id"]=hash;return rels}XMLNS.RELS="http://schemas.openxmlformats.org/package/2006/relationships";var RELS_ROOT=writextag("Relationships",null,{xmlns:XMLNS.RELS});function write_rels(rels){var o=[];o[o.length]=XML_HEADER;o[o.length]=RELS_ROOT;keys(rels["!id"]).forEach(function(rid){var rel=rels["!id"][rid];o[o.length]=writextag("Relationship",null,rel)});if(o.length>2){o[o.length]="</Relationships>";o[1]=o[1].replace("/>",">")}return o.join("")}var CORE_PROPS=[["cp:category","Category"],["cp:contentStatus","ContentStatus"],["cp:keywords","Keywords"],["cp:lastModifiedBy","LastAuthor"],["cp:lastPrinted","LastPrinted"],["cp:revision","RevNumber"],["cp:version","Version"],["dc:creator","Author"],["dc:description","Comments"],["dc:identifier","Identifier"],["dc:language","Language"],["dc:subject","Subject"],["dc:title","Title"],["dcterms:created","CreatedDate","date"],["dcterms:modified","ModifiedDate","date"]];XMLNS.CORE_PROPS="http://schemas.openxmlformats.org/package/2006/metadata/core-properties";RELS.CORE_PROPS="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties";var CORE_PROPS_REGEX=function(){var r=new Array(CORE_PROPS.length);for(var i=0;i<CORE_PROPS.length;++i){var f=CORE_PROPS[i];var g="(?:"+f[0].substr(0,f[0].indexOf(":"))+":)"+f[0].substr(f[0].indexOf(":")+1);r[i]=new RegExp("<"+g+"[^>]*>(.*)</"+g+">")}return r}();function parse_core_props(data){var p={};for(var i=0;i<CORE_PROPS.length;++i){var f=CORE_PROPS[i],cur=data.match(CORE_PROPS_REGEX[i]);if(cur!=null&&cur.length>0)p[f[1]]=cur[1];if(f[2]==="date"&&p[f[1]])p[f[1]]=new Date(p[f[1]])}return p}var CORE_PROPS_XML_ROOT=writextag("cp:coreProperties",null,{"xmlns:cp":XMLNS.CORE_PROPS,"xmlns:dc":XMLNS.dc,"xmlns:dcterms":XMLNS.dcterms,"xmlns:dcmitype":XMLNS.dcmitype,"xmlns:xsi":XMLNS.xsi});function cp_doit(f,g,h,o,p){if(p[f]!=null||g==null||g==="")return;p[f]=g;o[o.length]=h?writextag(f,g,h):writetag(f,g)}function write_core_props(cp,opts){var o=[XML_HEADER,CORE_PROPS_XML_ROOT],p={};if(opts&&opts.Props){if(opts.Props.title)o[o.length]="<dc:title>"+opts.Props.title+"</dc:title>";if(opts.Props.subject)o[o.length]="<dc:subject>"+opts.Props.subject+"</dc:subject>";if(opts.Props.creator)o[o.length]="<dc:creator>"+opts.Props.creator+"</dc:creator>";if(opts.Props.keywords)o[o.length]="<cp:keywords>"+opts.Props.keywords+"</cp:keywords>";if(opts.Props.description)o[o.length]="<dc:description>"+opts.Props.description+"</dc:description>"}if(cp){if(cp.CreatedDate!=null)cp_doit("dcterms:created",typeof cp.CreatedDate==="string"?cp.CreatedDate:write_w3cdtf(cp.CreatedDate,opts.WTF),{"xsi:type":"dcterms:W3CDTF"},o,p);if(cp.ModifiedDate!=null)cp_doit("dcterms:modified",typeof cp.ModifiedDate==="string"?cp.ModifiedDate:write_w3cdtf(cp.ModifiedDate,opts.WTF),{"xsi:type":"dcterms:W3CDTF"},o,p);for(var i=0;i!=CORE_PROPS.length;++i){var f=CORE_PROPS[i];cp_doit(f[0],cp[f[1]],null,o,p)}}if(o.length>2){o[o.length]="</cp:coreProperties>";o[1]=o[1].replace("/>",">")}return o.join("")}var EXT_PROPS=[["Application","Application","string"],["AppVersion","AppVersion","string"],["Company","Company","string"],["DocSecurity","DocSecurity","string"],["Manager","Manager","string"],["HyperlinksChanged","HyperlinksChanged","bool"],["SharedDoc","SharedDoc","bool"],["LinksUpToDate","LinksUpToDate","bool"],["ScaleCrop","ScaleCrop","bool"],["HeadingPairs","HeadingPairs","raw"],["TitlesOfParts","TitlesOfParts","raw"]];XMLNS.EXT_PROPS="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties";RELS.EXT_PROPS="http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties";function parse_ext_props(data,p){var q={};if(!p)p={};EXT_PROPS.forEach(function(f){switch(f[2]){case"string":p[f[1]]=(data.match(matchtag(f[0]))||[])[1];break;case"bool":p[f[1]]=(data.match(matchtag(f[0]))||[])[1]==="true";break;case"raw":var cur=data.match(new RegExp("<"+f[0]+"[^>]*>(.*)</"+f[0]+">"));if(cur&&cur.length>0)q[f[1]]=cur[1];break}});if(q.HeadingPairs&&q.TitlesOfParts){var v=parseVector(q.HeadingPairs);var j=0,widx=0;for(var i=0;i!==v.length;++i){switch(v[i].v){case"Worksheets":widx=j;p.Worksheets=+v[++i].v;break;case"Named Ranges":++i;break}}var parts=parseVector(q.TitlesOfParts).map(function(x){return utf8read(x.v)});p.SheetNames=parts.slice(widx,widx+p.Worksheets)}return p}var EXT_PROPS_XML_ROOT=writextag("Properties",null,{xmlns:XMLNS.EXT_PROPS,"xmlns:vt":XMLNS.vt});function write_ext_props(cp,opts){var o=[],p={},W=writextag;if(!cp)cp={};cp.Application="SheetJS";o[o.length]=XML_HEADER;o[o.length]=EXT_PROPS_XML_ROOT;EXT_PROPS.forEach(function(f){if(cp[f[1]]===undefined)return;var v;switch(f[2]){case"string":v=cp[f[1]];break;case"bool":v=cp[f[1]]?"true":"false";break}if(v!==undefined)o[o.length]=W(f[0],v)});o[o.length]=W("HeadingPairs",W("vt:vector",W("vt:variant","<vt:lpstr>Worksheets</vt:lpstr>")+W("vt:variant",W("vt:i4",String(cp.Worksheets))),{size:2,baseType:"variant"}));o[o.length]=W("TitlesOfParts",W("vt:vector",cp.SheetNames.map(function(s){return"<vt:lpstr>"+s+"</vt:lpstr>"}).join(""),{size:cp.Worksheets,baseType:"lpstr"}));if(o.length>2){o[o.length]="</Properties>";o[1]=o[1].replace("/>",">")}return o.join("")}XMLNS.CUST_PROPS="http://schemas.openxmlformats.org/officeDocument/2006/custom-properties";RELS.CUST_PROPS="http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties";var custregex=/<[^>]+>[^<]*/g;function parse_cust_props(data,opts){var p={},name;var m=data.match(custregex);if(m)for(var i=0;i!=m.length;++i){var x=m[i],y=parsexmltag(x);switch(y[0]){case"<?xml":break;case"<Properties":if(y.xmlns!==XMLNS.CUST_PROPS)throw"unrecognized xmlns "+y.xmlns;if(y.xmlnsvt&&y.xmlnsvt!==XMLNS.vt)throw"unrecognized vt "+y.xmlnsvt;break;case"<property":name=y.name;break;case"</property>":name=null;break;default:if(x.indexOf("<vt:")===0){var toks=x.split(">");var type=toks[0].substring(4),text=toks[1];switch(type){case"lpstr":case"lpwstr":case"bstr":case"lpwstr":p[name]=unescapexml(text);break;case"bool":p[name]=parsexmlbool(text,"<vt:bool>");break;case"i1":case"i2":case"i4":case"i8":case"int":case"uint":p[name]=parseInt(text,10);break;case"r4":case"r8":case"decimal":p[name]=parseFloat(text);break;case"filetime":case"date":p[name]=new Date(text);break;case"cy":case"error":p[name]=unescapexml(text);break;default:if(typeof console!=="undefined")console.warn("Unexpected",x,type,toks)}}else if(x.substr(0,2)==="</"){}else if(opts.WTF)throw new Error(x)}}return p}var CUST_PROPS_XML_ROOT=writextag("Properties",null,{xmlns:XMLNS.CUST_PROPS,"xmlns:vt":XMLNS.vt});function write_cust_props(cp,opts){var o=[XML_HEADER,CUST_PROPS_XML_ROOT];if(!cp)return o.join("");var pid=1;keys(cp).forEach(function custprop(k){++pid;o[o.length]=writextag("property",write_vt(cp[k]),{fmtid:"{D5CDD505-2E9C-101B-9397-08002B2CF9AE}",pid:pid,name:k})});if(o.length>2){o[o.length]="</Properties>";o[1]=o[1].replace("/>",">")}return o.join("")}function xlml_set_prop(Props,tag,val){switch(tag){case"Description":tag="Comments";break}Props[tag]=val}function parse_FILETIME(blob){var dwLowDateTime=blob.read_shift(4),dwHighDateTime=blob.read_shift(4);return new Date((dwHighDateTime/1e7*Math.pow(2,32)+dwLowDateTime/1e7-11644473600)*1e3).toISOString().replace(/\.000/,"")}function parse_lpstr(blob,type,pad){var str=blob.read_shift(0,"lpstr");if(pad)blob.l+=4-(str.length+1&3)&3;return str}function parse_lpwstr(blob,type,pad){var str=blob.read_shift(0,"lpwstr");if(pad)blob.l+=4-(str.length+1&3)&3;return str}function parse_VtStringBase(blob,stringType,pad){if(stringType===31)return parse_lpwstr(blob);return parse_lpstr(blob,stringType,pad)}function parse_VtString(blob,t,pad){return parse_VtStringBase(blob,t,pad===false?0:4)}function parse_VtUnalignedString(blob,t){if(!t)throw new Error("dafuq?");return parse_VtStringBase(blob,t,0)}function parse_VtVecUnalignedLpstrValue(blob){var length=blob.read_shift(4);var ret=[];for(var i=0;i!=length;++i)ret[i]=blob.read_shift(0,"lpstr");return ret}function parse_VtVecUnalignedLpstr(blob){return parse_VtVecUnalignedLpstrValue(blob)}function parse_VtHeadingPair(blob){var headingString=parse_TypedPropertyValue(blob,VT_USTR);var headerParts=parse_TypedPropertyValue(blob,VT_I4);return[headingString,headerParts]}function parse_VtVecHeadingPairValue(blob){var cElements=blob.read_shift(4);var out=[];for(var i=0;i!=cElements/2;++i)out.push(parse_VtHeadingPair(blob));return out}function parse_VtVecHeadingPair(blob){return parse_VtVecHeadingPairValue(blob)}function parse_dictionary(blob,CodePage){var cnt=blob.read_shift(4);var dict={};for(var j=0;j!=cnt;++j){var pid=blob.read_shift(4);var len=blob.read_shift(4);dict[pid]=blob.read_shift(len,CodePage===1200?"utf16le":"utf8").replace(chr0,"").replace(chr1,"!")}if(blob.l&3)blob.l=blob.l>>2+1<<2;return dict}function parse_BLOB(blob){var size=blob.read_shift(4);var bytes=blob.slice(blob.l,blob.l+size);if(size&3>0)blob.l+=4-(size&3)&3;return bytes}function parse_ClipboardData(blob){var o={};o.Size=blob.read_shift(4);blob.l+=o.Size;return o}function parse_VtVector(blob,cb){}function parse_TypedPropertyValue(blob,type,_opts){var t=blob.read_shift(2),ret,opts=_opts||{};blob.l+=2;if(type!==VT_VARIANT)if(t!==type&&VT_CUSTOM.indexOf(type)===-1)throw new Error("Expected type "+type+" saw "+t);switch(type===VT_VARIANT?t:type){case 2:ret=blob.read_shift(2,"i");if(!opts.raw)blob.l+=2;return ret;case 3:ret=blob.read_shift(4,"i");return ret;case 11:return blob.read_shift(4)!==0;case 19:ret=blob.read_shift(4);return ret;case 30:return parse_lpstr(blob,t,4).replace(chr0,"");case 31:return parse_lpwstr(blob);case 64:return parse_FILETIME(blob);case 65:return parse_BLOB(blob);case 71:return parse_ClipboardData(blob);case 80:return parse_VtString(blob,t,!opts.raw&&4).replace(chr0,"");case 81:return parse_VtUnalignedString(blob,t,4).replace(chr0,"");case 4108:return parse_VtVecHeadingPair(blob);case 4126:return parse_VtVecUnalignedLpstr(blob);default:throw new Error("TypedPropertyValue unrecognized type "+type+" "+t)}}function parse_PropertySet(blob,PIDSI){var start_addr=blob.l;var size=blob.read_shift(4);var NumProps=blob.read_shift(4);var Props=[],i=0;var CodePage=0;var Dictionary=-1,DictObj;for(i=0;i!=NumProps;++i){var PropID=blob.read_shift(4);var Offset=blob.read_shift(4);Props[i]=[PropID,Offset+start_addr]}var PropH={};for(i=0;i!=NumProps;++i){if(blob.l!==Props[i][1]){var fail=true;if(i>0&&PIDSI)switch(PIDSI[Props[i-1][0]].t){case 2:if(blob.l+2===Props[i][1]){blob.l+=2;fail=false}break;case 80:if(blob.l<=Props[i][1]){blob.l=Props[i][1];fail=false}break;case 4108:if(blob.l<=Props[i][1]){blob.l=Props[i][1];fail=false}break}if(!PIDSI&&blob.l<=Props[i][1]){fail=false;blob.l=Props[i][1]}if(fail)throw new Error("Read Error: Expected address "+Props[i][1]+" at "+blob.l+" :"+i)}if(PIDSI){var piddsi=PIDSI[Props[i][0]];PropH[piddsi.n]=parse_TypedPropertyValue(blob,piddsi.t,{raw:true});if(piddsi.p==="version")PropH[piddsi.n]=String(PropH[piddsi.n]>>16)+"."+String(PropH[piddsi.n]&65535);if(piddsi.n=="CodePage")switch(PropH[piddsi.n]){case 0:PropH[piddsi.n]=1252;case 1e4:case 1252:case 874:case 1250:case 1251:case 1253:case 1254:case 1255:case 1256:case 1257:case 1258:case 932:case 936:case 949:case 950:case 1200:case 1201:case 65e3:case-536:case 65001:case-535:set_cp(CodePage=PropH[piddsi.n]);break;default:throw new Error("Unsupported CodePage: "+PropH[piddsi.n])}}else{if(Props[i][0]===1){CodePage=PropH.CodePage=parse_TypedPropertyValue(blob,VT_I2);set_cp(CodePage);if(Dictionary!==-1){var oldpos=blob.l;blob.l=Props[Dictionary][1];DictObj=parse_dictionary(blob,CodePage);blob.l=oldpos}}else if(Props[i][0]===0){if(CodePage===0){Dictionary=i;blob.l=Props[i+1][1];continue}DictObj=parse_dictionary(blob,CodePage)}else{var name=DictObj[Props[i][0]];var val;switch(blob[blob.l]){case 65:blob.l+=4;val=parse_BLOB(blob);break;case 30:blob.l+=4;val=parse_VtString(blob,blob[blob.l-4]);break;case 31:blob.l+=4;val=parse_VtString(blob,blob[blob.l-4]);break;case 3:blob.l+=4;val=blob.read_shift(4,"i");break;case 19:blob.l+=4;val=blob.read_shift(4);break;case 5:blob.l+=4;val=blob.read_shift(8,"f");break;case 11:blob.l+=4;val=parsebool(blob,4);break;case 64:blob.l+=4;val=new Date(parse_FILETIME(blob));break;default:throw new Error("unparsed value: "+blob[blob.l])}PropH[name]=val}}}blob.l=start_addr+size;return PropH}function parse_PropertySetStream(file,PIDSI){var blob=file.content;prep_blob(blob,0);var NumSets,FMTID0,FMTID1,Offset0,Offset1;blob.chk("feff","Byte Order: ");var vers=blob.read_shift(2);var SystemIdentifier=blob.read_shift(4);blob.chk(CFB.utils.consts.HEADER_CLSID,"CLSID: ");NumSets=blob.read_shift(4);if(NumSets!==1&&NumSets!==2)throw"Unrecognized #Sets: "+NumSets;FMTID0=blob.read_shift(16);Offset0=blob.read_shift(4);if(NumSets===1&&Offset0!==blob.l)throw"Length mismatch";else if(NumSets===2){FMTID1=blob.read_shift(16);Offset1=blob.read_shift(4)}var PSet0=parse_PropertySet(blob,PIDSI);var rval={SystemIdentifier:SystemIdentifier};for(var y in PSet0)rval[y]=PSet0[y];rval.FMTID=FMTID0;if(NumSets===1)return rval;if(blob.l!==Offset1)throw"Length mismatch 2: "+blob.l+" !== "+Offset1;var PSet1;try{PSet1=parse_PropertySet(blob,null)}catch(e){}for(y in PSet1)rval[y]=PSet1[y];rval.FMTID=[FMTID0,FMTID1];return rval}function parsenoop2(blob,length){blob.read_shift(length);return null}function parslurp(blob,length,cb){var arr=[],target=blob.l+length;while(blob.l<target)arr.push(cb(blob,target-blob.l));if(target!==blob.l)throw new Error("Slurp error");return arr}function parslurp2(blob,length,cb){var arr=[],target=blob.l+length,len=blob.read_shift(2);while(len--!==0)arr.push(cb(blob,target-blob.l));if(target!==blob.l)throw new Error("Slurp error");return arr}function parsebool(blob,length){return blob.read_shift(length)===1}function parseuint16(blob){return blob.read_shift(2,"u")}function parseuint16a(blob,length){return parslurp(blob,length,parseuint16)}var parse_Boolean=parsebool;function parse_Bes(blob){var v=blob.read_shift(1),t=blob.read_shift(1);return t===1?v:v===1}function parse_ShortXLUnicodeString(blob,length,opts){var cch=blob.read_shift(1);var width=1,encoding="sbcs-cont";var cp=current_codepage;if(opts&&opts.biff>=8)current_codepage=1200;if(opts===undefined||opts.biff!==5){var fHighByte=blob.read_shift(1);if(fHighByte){width=2;encoding="dbcs-cont"}}var o=cch?blob.read_shift(cch,encoding):"";current_codepage=cp;return o}function parse_XLUnicodeRichExtendedString(blob){var cp=current_codepage;current_codepage=1200;var cch=blob.read_shift(2),flags=blob.read_shift(1);var fHighByte=flags&1,fExtSt=flags&4,fRichSt=flags&8;var width=1+(flags&1);var cRun,cbExtRst;var z={};if(fRichSt)cRun=blob.read_shift(2);if(fExtSt)cbExtRst=blob.read_shift(4);var encoding=flags&1?"dbcs-cont":"sbcs-cont";var msg=cch===0?"":blob.read_shift(cch,encoding);if(fRichSt)blob.l+=4*cRun;if(fExtSt)blob.l+=cbExtRst;z.t=msg;if(!fRichSt){z.raw="<t>"+z.t+"</t>";z.r=z.t}current_codepage=cp;return z}function parse_XLUnicodeStringNoCch(blob,cch,opts){var retval;var fHighByte=blob.read_shift(1);if(fHighByte===0){retval=blob.read_shift(cch,"sbcs-cont")}else{retval=blob.read_shift(cch,"dbcs-cont")}return retval}function parse_XLUnicodeString(blob,length,opts){var cch=blob.read_shift(opts!==undefined&&opts.biff>0&&opts.biff<8?1:2);if(cch===0){blob.l++;return""}return parse_XLUnicodeStringNoCch(blob,cch,opts)}function parse_XLUnicodeString2(blob,length,opts){if(opts.biff!==5&&opts.biff!==2)return parse_XLUnicodeString(blob,length,opts);var cch=blob.read_shift(1);if(cch===0){blob.l++;return""}return blob.read_shift(cch,"sbcs-cont")}var parse_ControlInfo=parsenoop;var parse_URLMoniker=function(blob,length){var len=blob.read_shift(4),start=blob.l;var extra=false;if(len>24){blob.l+=len-24;if(blob.read_shift(16)==="795881f43b1d7f48af2c825dc4852763")extra=true;blob.l=start}var url=blob.read_shift((extra?len-24:len)>>1,"utf16le").replace(chr0,"");if(extra)blob.l+=24;return url};var parse_FileMoniker=function(blob,length){var cAnti=blob.read_shift(2);var ansiLength=blob.read_shift(4);var ansiPath=blob.read_shift(ansiLength,"cstr");var endServer=blob.read_shift(2);var versionNumber=blob.read_shift(2);var cbUnicodePathSize=blob.read_shift(4);if(cbUnicodePathSize===0)return ansiPath.replace(/\\/g,"/");var cbUnicodePathBytes=blob.read_shift(4);var usKeyValue=blob.read_shift(2);var unicodePath=blob.read_shift(cbUnicodePathBytes>>1,"utf16le").replace(chr0,"");return unicodePath};var parse_HyperlinkMoniker=function(blob,length){var clsid=blob.read_shift(16);length-=16;switch(clsid){case"e0c9ea79f9bace118c8200aa004ba90b":return parse_URLMoniker(blob,length);case"0303000000000000c000000000000046":return parse_FileMoniker(blob,length);default:throw"unsupported moniker "+clsid}};var parse_HyperlinkString=function(blob,length){var len=blob.read_shift(4);var o=blob.read_shift(len,"utf16le").replace(chr0,"");return o};var parse_Hyperlink=function(blob,length){var end=blob.l+length;var sVer=blob.read_shift(4);if(sVer!==2)throw new Error("Unrecognized streamVersion: "+sVer);var flags=blob.read_shift(2);blob.l+=2;var displayName,targetFrameName,moniker,oleMoniker,location,guid,fileTime;if(flags&16)displayName=parse_HyperlinkString(blob,end-blob.l);if(flags&128)targetFrameName=parse_HyperlinkString(blob,end-blob.l);if((flags&257)===257)moniker=parse_HyperlinkString(blob,end-blob.l);if((flags&257)===1)oleMoniker=parse_HyperlinkMoniker(blob,end-blob.l);if(flags&8)location=parse_HyperlinkString(blob,end-blob.l);if(flags&32)guid=blob.read_shift(16);if(flags&64)fileTime=parse_FILETIME(blob,8);blob.l=end;var target=targetFrameName||moniker||oleMoniker;if(location)target+="#"+location;return{Target:target}};function parse_LongRGBA(blob,length){var r=blob.read_shift(1),g=blob.read_shift(1),b=blob.read_shift(1),a=blob.read_shift(1);return[r,g,b,a]}function parse_LongRGB(blob,length){var x=parse_LongRGBA(blob,length);x[3]=0;return x}function parse_XLSCell(blob,length){var rw=blob.read_shift(2);var col=blob.read_shift(2);var ixfe=blob.read_shift(2);return{r:rw,c:col,ixfe:ixfe}}function parse_frtHeader(blob){var rt=blob.read_shift(2);var flags=blob.read_shift(2);blob.l+=8;return{type:rt,flags:flags}}function parse_OptXLUnicodeString(blob,length,opts){return length===0?"":parse_XLUnicodeString2(blob,length,opts)}var HIDEOBJENUM=["SHOWALL","SHOWPLACEHOLDER","HIDEALL"];var parse_HideObjEnum=parseuint16;function parse_XTI(blob,length){var iSupBook=blob.read_shift(2),itabFirst=blob.read_shift(2,"i"),itabLast=blob.read_shift(2,"i");return[iSupBook,itabFirst,itabLast]}function parse_RkRec(blob,length){var ixfe=blob.read_shift(2);var RK=parse_RkNumber(blob);return[ixfe,RK]}function parse_AddinUdf(blob,length){blob.l+=4;length-=4;var l=blob.l+length;var udfName=parse_ShortXLUnicodeString(blob,length);var cb=blob.read_shift(2);l-=blob.l;if(cb!==l)throw"Malformed AddinUdf: padding = "+l+" != "+cb;blob.l+=cb;return udfName}function parse_Ref8U(blob,length){var rwFirst=blob.read_shift(2);var rwLast=blob.read_shift(2);var colFirst=blob.read_shift(2);var colLast=blob.read_shift(2);return{s:{c:colFirst,r:rwFirst},e:{c:colLast,r:rwLast}}}function parse_RefU(blob,length){var rwFirst=blob.read_shift(2);var rwLast=blob.read_shift(2);var colFirst=blob.read_shift(1);var colLast=blob.read_shift(1);return{s:{c:colFirst,r:rwFirst},e:{c:colLast,r:rwLast}}}var parse_Ref=parse_RefU;function parse_FtCmo(blob,length){blob.l+=4;var ot=blob.read_shift(2);var id=blob.read_shift(2);var flags=blob.read_shift(2);blob.l+=12;return[id,ot,flags]}function parse_FtNts(blob,length){var out={};blob.l+=4;blob.l+=16;out.fSharedNote=blob.read_shift(2);blob.l+=4;return out}function parse_FtCf(blob,length){var out={};blob.l+=4;blob.cf=blob.read_shift(2);return out}var FtTab={21:parse_FtCmo,19:parsenoop,18:function(blob,length){blob.l+=12},17:function(blob,length){blob.l+=8},16:parsenoop,15:parsenoop,13:parse_FtNts,12:function(blob,length){blob.l+=24},11:function(blob,length){blob.l+=10},10:function(blob,length){blob.l+=16},9:parsenoop,8:function(blob,length){blob.l+=6},7:parse_FtCf,6:function(blob,length){blob.l+=6},4:parsenoop,0:function(blob,length){blob.l+=4}};function parse_FtArray(blob,length,ot){var s=blob.l;var fts=[];while(blob.l<s+length){var ft=blob.read_shift(2);blob.l-=2;try{fts.push(FtTab[ft](blob,s+length-blob.l))}catch(e){blob.l=s+length;return fts}}if(blob.l!=s+length)blob.l=s+length;return fts}var parse_FontIndex=parseuint16;function parse_BOF(blob,length){var o={};o.BIFFVer=blob.read_shift(2);length-=2;switch(o.BIFFVer){case 1536:case 1280:case 2:case 7:break;default:throw"Unexpected BIFF Ver "+o.BIFFVer}blob.read_shift(length);return o}function parse_InterfaceHdr(blob,length){if(length===0)return 1200;var q;if((q=blob.read_shift(2))!==1200)throw"InterfaceHdr codePage "+q;return 1200}function parse_WriteAccess(blob,length,opts){if(opts.enc){blob.l+=length;return""}var l=blob.l;var UserName=parse_XLUnicodeString(blob,0,opts);blob.read_shift(length+l-blob.l);return UserName}function parse_BoundSheet8(blob,length,opts){var pos=blob.read_shift(4);var hidden=blob.read_shift(1)>>6;var dt=blob.read_shift(1);switch(dt){case 0:dt="Worksheet";break;case 1:dt="Macrosheet";break;case 2:dt="Chartsheet";break;case 6:dt="VBAModule";break}var name=parse_ShortXLUnicodeString(blob,0,opts);if(name.length===0)name="Sheet1";return{pos:pos,hs:hidden,dt:dt,name:name}}function parse_SST(blob,length){var cnt=blob.read_shift(4);var ucnt=blob.read_shift(4);var strs=[];for(var i=0;i!=ucnt;++i){strs.push(parse_XLUnicodeRichExtendedString(blob))}strs.Count=cnt;strs.Unique=ucnt;return strs}function parse_ExtSST(blob,length){var extsst={};extsst.dsst=blob.read_shift(2);blob.l+=length-2;return extsst}function parse_Row(blob,length){var rw=blob.read_shift(2),col=blob.read_shift(2),Col=blob.read_shift(2),rht=blob.read_shift(2);blob.read_shift(4);var flags=blob.read_shift(1);blob.read_shift(1);blob.read_shift(2);return{r:rw,c:col,cnt:Col-col}}function parse_ForceFullCalculation(blob,length){var header=parse_frtHeader(blob);if(header.type!=2211)throw"Invalid Future Record "+header.type;var fullcalc=blob.read_shift(4);return fullcalc!==0}var parse_CompressPictures=parsenoop2;function parse_RecalcId(blob,length){blob.read_shift(2);return blob.read_shift(4)}function parse_DefaultRowHeight(blob,length){var f=blob.read_shift(2),miyRw;miyRw=blob.read_shift(2);var fl={Unsynced:f&1,DyZero:(f&2)>>1,ExAsc:(f&4)>>2,ExDsc:(f&8)>>3};return[fl,miyRw]}function parse_Window1(blob,length){var xWn=blob.read_shift(2),yWn=blob.read_shift(2),dxWn=blob.read_shift(2),dyWn=blob.read_shift(2);var flags=blob.read_shift(2),iTabCur=blob.read_shift(2),iTabFirst=blob.read_shift(2);var ctabSel=blob.read_shift(2),wTabRatio=blob.read_shift(2);return{Pos:[xWn,yWn],Dim:[dxWn,dyWn],Flags:flags,CurTab:iTabCur,FirstTab:iTabFirst,Selected:ctabSel,TabRatio:wTabRatio}}function parse_Font(blob,length,opts){blob.l+=14;var name=parse_ShortXLUnicodeString(blob,0,opts);return name}function parse_LabelSst(blob,length){var cell=parse_XLSCell(blob);cell.isst=blob.read_shift(4);return cell}function parse_Label(blob,length,opts){var cell=parse_XLSCell(blob,6);var str=parse_XLUnicodeString(blob,length-6,opts);cell.val=str;return cell}function parse_Format(blob,length,opts){var ifmt=blob.read_shift(2);var fmtstr=parse_XLUnicodeString2(blob,0,opts);return[ifmt,fmtstr]}function parse_Dimensions(blob,length){var w=length===10?2:4;var r=blob.read_shift(w),R=blob.read_shift(w),c=blob.read_shift(2),C=blob.read_shift(2);blob.l+=2;return{s:{r:r,c:c},e:{r:R,c:C}}}function parse_RK(blob,length){var rw=blob.read_shift(2),col=blob.read_shift(2);var rkrec=parse_RkRec(blob);return{r:rw,c:col,ixfe:rkrec[0],rknum:rkrec[1]}}function parse_MulRk(blob,length){var target=blob.l+length-2;var rw=blob.read_shift(2),col=blob.read_shift(2);var rkrecs=[];while(blob.l<target)rkrecs.push(parse_RkRec(blob));if(blob.l!==target)throw"MulRK read error";var lastcol=blob.read_shift(2);if(rkrecs.length!=lastcol-col+1)throw"MulRK length mismatch";return{r:rw,c:col,C:lastcol,rkrec:rkrecs}}function parse_CellStyleXF(blob,length,style){var o={};var a=blob.read_shift(4),b=blob.read_shift(4);var c=blob.read_shift(4),d=blob.read_shift(2);o.patternType=XLSFillPattern[c>>26];o.icvFore=d&127;o.icvBack=d>>7&127;return o}function parse_CellXF(blob,length){return parse_CellStyleXF(blob,length,0)}function parse_StyleXF(blob,length){return parse_CellStyleXF(blob,length,1)}function parse_XF(blob,length){var o={};o.ifnt=blob.read_shift(2);o.ifmt=blob.read_shift(2);o.flags=blob.read_shift(2);o.fStyle=o.flags>>2&1;length-=6;o.data=parse_CellStyleXF(blob,length,o.fStyle);return o}function parse_Guts(blob,length){blob.l+=4;var out=[blob.read_shift(2),blob.read_shift(2)];if(out[0]!==0)out[0]--;if(out[1]!==0)out[1]--;if(out[0]>7||out[1]>7)throw"Bad Gutters: "+out;return out}function parse_BoolErr(blob,length){var cell=parse_XLSCell(blob,6);var val=parse_Bes(blob,2);cell.val=val;cell.t=val===true||val===false?"b":"e";return cell}function parse_Number(blob,length){var cell=parse_XLSCell(blob,6);var xnum=parse_Xnum(blob,8);cell.val=xnum;return cell}var parse_XLHeaderFooter=parse_OptXLUnicodeString;function parse_SupBook(blob,length,opts){var end=blob.l+length;var ctab=blob.read_shift(2);var cch=blob.read_shift(2);var virtPath;if(cch>=1&&cch<=255)virtPath=parse_XLUnicodeStringNoCch(blob,cch);var rgst=blob.read_shift(end-blob.l);opts.sbcch=cch;return[cch,ctab,virtPath,rgst]}function parse_ExternName(blob,length,opts){var flags=blob.read_shift(2);var body;var o={fBuiltIn:flags&1,fWantAdvise:flags>>>1&1,fWantPict:flags>>>2&1,fOle:flags>>>3&1,fOleLink:flags>>>4&1,cf:flags>>>5&1023,fIcon:flags>>>15&1};if(opts.sbcch===14849)body=parse_AddinUdf(blob,length-2);o.body=body||blob.read_shift(length-2);return o}function parse_Lbl(blob,length,opts){if(opts.biff<8)return parse_Label(blob,length,opts);var target=blob.l+length;var flags=blob.read_shift(2);var chKey=blob.read_shift(1);var cch=blob.read_shift(1);var cce=blob.read_shift(2);blob.l+=2;var itab=blob.read_shift(2);blob.l+=4;var name=parse_XLUnicodeStringNoCch(blob,cch,opts);var rgce=parse_NameParsedFormula(blob,target-blob.l,opts,cce);return{chKey:chKey,Name:name,rgce:rgce}}function parse_ExternSheet(blob,length,opts){if(opts.biff<8)return parse_ShortXLUnicodeString(blob,length,opts);var o=parslurp2(blob,length,parse_XTI);var oo=[];if(opts.sbcch===1025){for(var i=0;i!=o.length;++i)oo.push(opts.snames[o[i][1]]);return oo}else return o}function parse_ShrFmla(blob,length,opts){var ref=parse_RefU(blob,6);blob.l++;var cUse=blob.read_shift(1);length-=8;return[parse_SharedParsedFormula(blob,length,opts),cUse]}function parse_Array(blob,length,opts){var ref=parse_Ref(blob,6);blob.l+=6;length-=12;return[ref,parse_ArrayParsedFormula(blob,length,opts,ref)]}function parse_MTRSettings(blob,length){var fMTREnabled=blob.read_shift(4)!==0;var fUserSetThreadCount=blob.read_shift(4)!==0;var cUserThreadCount=blob.read_shift(4);return[fMTREnabled,fUserSetThreadCount,cUserThreadCount]}function parse_NoteSh(blob,length,opts){if(opts.biff<8)return;var row=blob.read_shift(2),col=blob.read_shift(2);var flags=blob.read_shift(2),idObj=blob.read_shift(2);var stAuthor=parse_XLUnicodeString2(blob,0,opts);if(opts.biff<8)blob.read_shift(1);return[{r:row,c:col},stAuthor,idObj,flags]}function parse_Note(blob,length,opts){return parse_NoteSh(blob,length,opts)}function parse_MergeCells(blob,length){var merges=[];var cmcs=blob.read_shift(2);while(cmcs--)merges.push(parse_Ref8U(blob,length));return merges}function parse_Obj(blob,length){var cmo=parse_FtCmo(blob,22);var fts=parse_FtArray(blob,length-22,cmo[1]);return{cmo:cmo,ft:fts}}function parse_TxO(blob,length,opts){var s=blob.l;try{blob.l+=4;var ot=(opts.lastobj||{cmo:[0,0]}).cmo[1];var controlInfo;if([0,5,7,11,12,14].indexOf(ot)==-1)blob.l+=6;else controlInfo=parse_ControlInfo(blob,6,opts);var cchText=blob.read_shift(2);var cbRuns=blob.read_shift(2);var ifntEmpty=parse_FontIndex(blob,2);var len=blob.read_shift(2);blob.l+=len;var texts="";for(var i=1;i<blob.lens.length-1;++i){if(blob.l-s!=blob.lens[i])throw"TxO: bad continue record";var hdr=blob[blob.l];var t=parse_XLUnicodeStringNoCch(blob,blob.lens[i+1]-blob.lens[i]-1);texts+=t;if(texts.length>=(hdr?cchText:2*cchText))break}if(texts.length!==cchText&&texts.length!==cchText*2){throw"cchText: "+cchText+" != "+texts.length}blob.l=s+length;return{t:texts}}catch(e){blob.l=s+length;return{t:texts||""}}}var parse_HLink=function(blob,length){var ref=parse_Ref8U(blob,8);blob.l+=16;var hlink=parse_Hyperlink(blob,length-24);return[ref,hlink]};var parse_HLinkTooltip=function(blob,length){var end=blob.l+length;blob.read_shift(2);var ref=parse_Ref8U(blob,8);var wzTooltip=blob.read_shift((length-10)/2,"dbcs-cont");wzTooltip=wzTooltip.replace(chr0,"");return[ref,wzTooltip]};function parse_Country(blob,length){
var o=[],d;d=blob.read_shift(2);o[0]=CountryEnum[d]||d;d=blob.read_shift(2);o[1]=CountryEnum[d]||d;return o}function parse_ClrtClient(blob,length){var ccv=blob.read_shift(2);var o=[];while(ccv-- >0)o.push(parse_LongRGB(blob,8));return o}function parse_Palette(blob,length){var ccv=blob.read_shift(2);var o=[];while(ccv-- >0)o.push(parse_LongRGB(blob,8));return o}function parse_XFCRC(blob,length){blob.l+=2;var o={cxfs:0,crc:0};o.cxfs=blob.read_shift(2);o.crc=blob.read_shift(4);return o}var parse_Style=parsenoop;var parse_StyleExt=parsenoop;var parse_ColInfo=parsenoop;var parse_Window2=parsenoop;var parse_Backup=parsebool;var parse_Blank=parse_XLSCell;var parse_BottomMargin=parse_Xnum;var parse_BuiltInFnGroupCount=parseuint16;var parse_CalcCount=parseuint16;var parse_CalcDelta=parse_Xnum;var parse_CalcIter=parsebool;var parse_CalcMode=parseuint16;var parse_CalcPrecision=parsebool;var parse_CalcRefMode=parsenoop2;var parse_CalcSaveRecalc=parsebool;var parse_CodePage=parseuint16;var parse_Compat12=parsebool;var parse_Date1904=parsebool;var parse_DefColWidth=parseuint16;var parse_DSF=parsenoop2;var parse_EntExU2=parsenoop2;var parse_EOF=parsenoop2;var parse_Excel9File=parsenoop2;var parse_FeatHdr=parsenoop2;var parse_FontX=parseuint16;var parse_Footer=parse_XLHeaderFooter;var parse_GridSet=parseuint16;var parse_HCenter=parsebool;var parse_Header=parse_XLHeaderFooter;var parse_HideObj=parse_HideObjEnum;var parse_InterfaceEnd=parsenoop2;var parse_LeftMargin=parse_Xnum;var parse_Mms=parsenoop2;var parse_ObjProtect=parsebool;var parse_Password=parseuint16;var parse_PrintGrid=parsebool;var parse_PrintRowCol=parsebool;var parse_PrintSize=parseuint16;var parse_Prot4Rev=parsebool;var parse_Prot4RevPass=parseuint16;var parse_Protect=parsebool;var parse_RefreshAll=parsebool;var parse_RightMargin=parse_Xnum;var parse_RRTabId=parseuint16a;var parse_ScenarioProtect=parsebool;var parse_Scl=parseuint16a;var parse_String=parse_XLUnicodeString;var parse_SxBool=parsebool;var parse_TopMargin=parse_Xnum;var parse_UsesELFs=parsebool;var parse_VCenter=parsebool;var parse_WinProtect=parsebool;var parse_WriteProtect=parsenoop;var parse_VerticalPageBreaks=parsenoop;var parse_HorizontalPageBreaks=parsenoop;var parse_Selection=parsenoop;var parse_Continue=parsenoop;var parse_Pane=parsenoop;var parse_Pls=parsenoop;var parse_DCon=parsenoop;var parse_DConRef=parsenoop;var parse_DConName=parsenoop;var parse_XCT=parsenoop;var parse_CRN=parsenoop;var parse_FileSharing=parsenoop;var parse_Uncalced=parsenoop;var parse_Template=parsenoop;var parse_Intl=parsenoop;var parse_WsBool=parsenoop;var parse_Sort=parsenoop;var parse_Sync=parsenoop;var parse_LPr=parsenoop;var parse_DxGCol=parsenoop;var parse_FnGroupName=parsenoop;var parse_FilterMode=parsenoop;var parse_AutoFilterInfo=parsenoop;var parse_AutoFilter=parsenoop;var parse_Setup=parsenoop;var parse_ScenMan=parsenoop;var parse_SCENARIO=parsenoop;var parse_SxView=parsenoop;var parse_Sxvd=parsenoop;var parse_SXVI=parsenoop;var parse_SxIvd=parsenoop;var parse_SXLI=parsenoop;var parse_SXPI=parsenoop;var parse_DocRoute=parsenoop;var parse_RecipName=parsenoop;var parse_MulBlank=parsenoop;var parse_SXDI=parsenoop;var parse_SXDB=parsenoop;var parse_SXFDB=parsenoop;var parse_SXDBB=parsenoop;var parse_SXNum=parsenoop;var parse_SxErr=parsenoop;var parse_SXInt=parsenoop;var parse_SXString=parsenoop;var parse_SXDtr=parsenoop;var parse_SxNil=parsenoop;var parse_SXTbl=parsenoop;var parse_SXTBRGIITM=parsenoop;var parse_SxTbpg=parsenoop;var parse_ObProj=parsenoop;var parse_SXStreamID=parsenoop;var parse_DBCell=parsenoop;var parse_SXRng=parsenoop;var parse_SxIsxoper=parsenoop;var parse_BookBool=parsenoop;var parse_DbOrParamQry=parsenoop;var parse_OleObjectSize=parsenoop;var parse_SXVS=parsenoop;var parse_BkHim=parsenoop;var parse_MsoDrawingGroup=parsenoop;var parse_MsoDrawing=parsenoop;var parse_MsoDrawingSelection=parsenoop;var parse_PhoneticInfo=parsenoop;var parse_SxRule=parsenoop;var parse_SXEx=parsenoop;var parse_SxFilt=parsenoop;var parse_SxDXF=parsenoop;var parse_SxItm=parsenoop;var parse_SxName=parsenoop;var parse_SxSelect=parsenoop;var parse_SXPair=parsenoop;var parse_SxFmla=parsenoop;var parse_SxFormat=parsenoop;var parse_SXVDEx=parsenoop;var parse_SXFormula=parsenoop;var parse_SXDBEx=parsenoop;var parse_RRDInsDel=parsenoop;var parse_RRDHead=parsenoop;var parse_RRDChgCell=parsenoop;var parse_RRDRenSheet=parsenoop;var parse_RRSort=parsenoop;var parse_RRDMove=parsenoop;var parse_RRFormat=parsenoop;var parse_RRAutoFmt=parsenoop;var parse_RRInsertSh=parsenoop;var parse_RRDMoveBegin=parsenoop;var parse_RRDMoveEnd=parsenoop;var parse_RRDInsDelBegin=parsenoop;var parse_RRDInsDelEnd=parsenoop;var parse_RRDConflict=parsenoop;var parse_RRDDefName=parsenoop;var parse_RRDRstEtxp=parsenoop;var parse_LRng=parsenoop;var parse_CUsr=parsenoop;var parse_CbUsr=parsenoop;var parse_UsrInfo=parsenoop;var parse_UsrExcl=parsenoop;var parse_FileLock=parsenoop;var parse_RRDInfo=parsenoop;var parse_BCUsrs=parsenoop;var parse_UsrChk=parsenoop;var parse_UserBView=parsenoop;var parse_UserSViewBegin=parsenoop;var parse_UserSViewEnd=parsenoop;var parse_RRDUserView=parsenoop;var parse_Qsi=parsenoop;var parse_CondFmt=parsenoop;var parse_CF=parsenoop;var parse_DVal=parsenoop;var parse_DConBin=parsenoop;var parse_Lel=parsenoop;var parse_XLSCodeName=parse_XLUnicodeString;var parse_SXFDBType=parsenoop;var parse_ObNoMacros=parsenoop;var parse_Dv=parsenoop;var parse_Index=parsenoop;var parse_Table=parsenoop;var parse_BigName=parsenoop;var parse_ContinueBigName=parsenoop;var parse_WebPub=parsenoop;var parse_QsiSXTag=parsenoop;var parse_DBQueryExt=parsenoop;var parse_ExtString=parsenoop;var parse_TxtQry=parsenoop;var parse_Qsir=parsenoop;var parse_Qsif=parsenoop;var parse_RRDTQSIF=parsenoop;var parse_OleDbConn=parsenoop;var parse_WOpt=parsenoop;var parse_SXViewEx=parsenoop;var parse_SXTH=parsenoop;var parse_SXPIEx=parsenoop;var parse_SXVDTEx=parsenoop;var parse_SXViewEx9=parsenoop;var parse_ContinueFrt=parsenoop;var parse_RealTimeData=parsenoop;var parse_ChartFrtInfo=parsenoop;var parse_FrtWrapper=parsenoop;var parse_StartBlock=parsenoop;var parse_EndBlock=parsenoop;var parse_StartObject=parsenoop;var parse_EndObject=parsenoop;var parse_CatLab=parsenoop;var parse_YMult=parsenoop;var parse_SXViewLink=parsenoop;var parse_PivotChartBits=parsenoop;var parse_FrtFontList=parsenoop;var parse_SheetExt=parsenoop;var parse_BookExt=parsenoop;var parse_SXAddl=parsenoop;var parse_CrErr=parsenoop;var parse_HFPicture=parsenoop;var parse_Feat=parsenoop;var parse_DataLabExt=parsenoop;var parse_DataLabExtContents=parsenoop;var parse_CellWatch=parsenoop;var parse_FeatHdr11=parsenoop;var parse_Feature11=parsenoop;var parse_DropDownObjIds=parsenoop;var parse_ContinueFrt11=parsenoop;var parse_DConn=parsenoop;var parse_List12=parsenoop;var parse_Feature12=parsenoop;var parse_CondFmt12=parsenoop;var parse_CF12=parsenoop;var parse_CFEx=parsenoop;var parse_AutoFilter12=parsenoop;var parse_ContinueFrt12=parsenoop;var parse_MDTInfo=parsenoop;var parse_MDXStr=parsenoop;var parse_MDXTuple=parsenoop;var parse_MDXSet=parsenoop;var parse_MDXProp=parsenoop;var parse_MDXKPI=parsenoop;var parse_MDB=parsenoop;var parse_PLV=parsenoop;var parse_DXF=parsenoop;var parse_TableStyles=parsenoop;var parse_TableStyle=parsenoop;var parse_TableStyleElement=parsenoop;var parse_NamePublish=parsenoop;var parse_NameCmt=parsenoop;var parse_SortData=parsenoop;var parse_GUIDTypeLib=parsenoop;var parse_FnGrp12=parsenoop;var parse_NameFnGrp12=parsenoop;var parse_HeaderFooter=parsenoop;var parse_CrtLayout12=parsenoop;var parse_CrtMlFrt=parsenoop;var parse_CrtMlFrtContinue=parsenoop;var parse_ShapePropsStream=parsenoop;var parse_TextPropsStream=parsenoop;var parse_RichTextStream=parsenoop;var parse_CrtLayout12A=parsenoop;var parse_Units=parsenoop;var parse_Chart=parsenoop;var parse_Series=parsenoop;var parse_DataFormat=parsenoop;var parse_LineFormat=parsenoop;var parse_MarkerFormat=parsenoop;var parse_AreaFormat=parsenoop;var parse_PieFormat=parsenoop;var parse_AttachedLabel=parsenoop;var parse_SeriesText=parsenoop;var parse_ChartFormat=parsenoop;var parse_Legend=parsenoop;var parse_SeriesList=parsenoop;var parse_Bar=parsenoop;var parse_Line=parsenoop;var parse_Pie=parsenoop;var parse_Area=parsenoop;var parse_Scatter=parsenoop;var parse_CrtLine=parsenoop;var parse_Axis=parsenoop;var parse_Tick=parsenoop;var parse_ValueRange=parsenoop;var parse_CatSerRange=parsenoop;var parse_AxisLine=parsenoop;var parse_CrtLink=parsenoop;var parse_DefaultText=parsenoop;var parse_Text=parsenoop;var parse_ObjectLink=parsenoop;var parse_Frame=parsenoop;var parse_Begin=parsenoop;var parse_End=parsenoop;var parse_PlotArea=parsenoop;var parse_Chart3d=parsenoop;var parse_PicF=parsenoop;var parse_DropBar=parsenoop;var parse_Radar=parsenoop;var parse_Surf=parsenoop;var parse_RadarArea=parsenoop;var parse_AxisParent=parsenoop;var parse_LegendException=parsenoop;var parse_ShtProps=parsenoop;var parse_SerToCrt=parsenoop;var parse_AxesUsed=parsenoop;var parse_SBaseRef=parsenoop;var parse_SerParent=parsenoop;var parse_SerAuxTrend=parsenoop;var parse_IFmtRecord=parsenoop;var parse_Pos=parsenoop;var parse_AlRuns=parsenoop;var parse_BRAI=parsenoop;var parse_SerAuxErrBar=parsenoop;var parse_SerFmt=parsenoop;var parse_Chart3DBarShape=parsenoop;var parse_Fbi=parsenoop;var parse_BopPop=parsenoop;var parse_AxcExt=parsenoop;var parse_Dat=parsenoop;var parse_PlotGrowth=parsenoop;var parse_SIIndex=parsenoop;var parse_GelFrame=parsenoop;var parse_BopPopCustom=parsenoop;var parse_Fbi2=parsenoop;function parse_BIFF5String(blob){var len=blob.read_shift(1);return blob.read_shift(len,"sbcs-cont")}function parse_BIFF2STR(blob,length,opts){var cell=parse_XLSCell(blob,6);++blob.l;var str=parse_XLUnicodeString2(blob,length-7,opts);cell.val=str;return cell}function parse_BIFF2NUM(blob,length,opts){var cell=parse_XLSCell(blob,6);++blob.l;var num=parse_Xnum(blob,8);cell.val=num;return cell}var CS2CP={0:1252,1:65001,2:65001,77:1e4,128:932,129:949,130:1361,134:936,136:950,161:1253,162:1254,163:1258,177:1255,178:1256,186:1257,204:1251,222:874,238:1250,255:1252,69:6969};var parse_rs=function parse_rs_factory(){var tregex=matchtag("t"),rpregex=matchtag("rPr"),rregex=/<r>/g,rend=/<\/r>/,nlregex=/\r\n/g;var parse_rpr=function parse_rpr(rpr,intro,outro){var font={},cp=65001;var m=rpr.match(tagregex),i=0;if(m)for(;i!=m.length;++i){var y=parsexmltag(m[i]);switch(y[0]){case"<condense":break;case"<extend":break;case"<shadow":case"<shadow/>":break;case"<charset":if(y.val=="1")break;cp=CS2CP[parseInt(y.val,10)];break;case"<outline":case"<outline/>":break;case"<rFont":font.name=y.val;break;case"<sz":font.sz=y.val;break;case"<strike":if(!y.val)break;case"<strike/>":font.strike=1;break;case"</strike>":break;case"<u":if(!y.val)break;case"<u/>":font.u=1;break;case"</u>":break;case"<b":if(!y.val)break;case"<b/>":font.b=1;break;case"</b>":break;case"<i":if(!y.val)break;case"<i/>":font.i=1;break;case"</i>":break;case"<color":if(y.rgb)font.color=y.rgb.substr(2,6);break;case"<family":font.family=y.val;break;case"<vertAlign":break;case"<scheme":break;default:if(y[0].charCodeAt(1)!==47)throw"Unrecognized rich format "+y[0]}}var style=[];if(font.b)style.push("font-weight: bold;");if(font.i)style.push("font-style: italic;");intro.push('<span style="'+style.join("")+'">');outro.push("</span>");return cp};function parse_r(r){var terms=[[],"",[]];var t=r.match(tregex),cp=65001;if(!isval(t))return"";terms[1]=t[1];var rpr=r.match(rpregex);if(isval(rpr))cp=parse_rpr(rpr[1],terms[0],terms[2]);return terms[0].join("")+terms[1].replace(nlregex,"<br/>")+terms[2].join("")}return function parse_rs(rs){return rs.replace(rregex,"").split(rend).map(parse_r).join("")}}();var sitregex=/<t[^>]*>([^<]*)<\/t>/g,sirregex=/<r>/;function parse_si(x,opts){var html=opts?opts.cellHTML:true;var z={};if(!x)return null;var y;if(x.charCodeAt(1)===116){z.t=utf8read(unescapexml(x.substr(x.indexOf(">")+1).split(/<\/t>/)[0]));z.r=x;if(html)z.h=z.t}else if(y=x.match(sirregex)){z.r=x;z.t=utf8read(unescapexml(x.match(sitregex).join("").replace(tagregex,"")));if(html)z.h=parse_rs(x)}return z}var sstr0=/<sst([^>]*)>([\s\S]*)<\/sst>/;var sstr1=/<(?:si|sstItem)>/g;var sstr2=/<\/(?:si|sstItem)>/;function parse_sst_xml(data,opts){var s=[],ss;var sst=data.match(sstr0);if(isval(sst)){ss=sst[2].replace(sstr1,"").split(sstr2);for(var i=0;i!=ss.length;++i){var o=parse_si(ss[i],opts);if(o!=null)s[s.length]=o}sst=parsexmltag(sst[1]);s.Count=sst.count;s.Unique=sst.uniqueCount}return s}RELS.SST="http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings";var straywsregex=/^\s|\s$|[\t\n\r]/;function write_sst_xml(sst,opts){if(!opts.bookSST)return"";var o=[XML_HEADER];o[o.length]=writextag("sst",null,{xmlns:XMLNS.main[0],count:sst.Count,uniqueCount:sst.Unique});for(var i=0;i!=sst.length;++i){if(sst[i]==null)continue;var s=sst[i];var sitag="<si>";if(s.r)sitag+=s.r;else{sitag+="<t";if(s.t.match(straywsregex))sitag+=' xml:space="preserve"';sitag+=">"+escapexml(s.t)+"</t>"}sitag+="</si>";o[o.length]=sitag}if(o.length>2){o[o.length]="</sst>";o[1]=o[1].replace("/>",">")}return o.join("")}function parse_BrtBeginSst(data,length){return[data.read_shift(4),data.read_shift(4)]}function parse_sst_bin(data,opts){var s=[];var pass=false;recordhopper(data,function hopper_sst(val,R,RT){switch(R.n){case"BrtBeginSst":s.Count=val[0];s.Unique=val[1];break;case"BrtSSTItem":s.push(val);break;case"BrtEndSst":return true;case"BrtFRTBegin":pass=true;break;case"BrtFRTEnd":pass=false;break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+RT+" "+R.n)}});return s}function write_BrtBeginSst(sst,o){if(!o)o=new_buf(8);o.write_shift(4,sst.Count);o.write_shift(4,sst.Unique);return o}var write_BrtSSTItem=write_RichStr;function write_sst_bin(sst,opts){var ba=buf_array();write_record(ba,"BrtBeginSst",write_BrtBeginSst(sst));for(var i=0;i<sst.length;++i)write_record(ba,"BrtSSTItem",write_BrtSSTItem(sst[i]));write_record(ba,"BrtEndSst");return ba.end()}function _JS2ANSI(str){if(typeof cptable!=="undefined")return cptable.utils.encode(1252,str);return str.split("").map(function(x){return x.charCodeAt(0)})}function parse_Version(blob,length){var o={};o.Major=blob.read_shift(2);o.Minor=blob.read_shift(2);return o}function parse_EncryptionHeader(blob,length){var o={};o.Flags=blob.read_shift(4);var tmp=blob.read_shift(4);if(tmp!==0)throw"Unrecognized SizeExtra: "+tmp;o.AlgID=blob.read_shift(4);switch(o.AlgID){case 0:case 26625:case 26126:case 26127:case 26128:break;default:throw"Unrecognized encryption algorithm: "+o.AlgID}parsenoop(blob,length-12);return o}function parse_EncryptionVerifier(blob,length){return parsenoop(blob,length)}function parse_RC4CryptoHeader(blob,length){var o={};var vers=o.EncryptionVersionInfo=parse_Version(blob,4);length-=4;if(vers.Minor!=2)throw"unrecognized minor version code: "+vers.Minor;if(vers.Major>4||vers.Major<2)throw"unrecognized major version code: "+vers.Major;o.Flags=blob.read_shift(4);length-=4;var sz=blob.read_shift(4);length-=4;o.EncryptionHeader=parse_EncryptionHeader(blob,sz);length-=sz;o.EncryptionVerifier=parse_EncryptionVerifier(blob,length);return o}function parse_RC4Header(blob,length){var o={};var vers=o.EncryptionVersionInfo=parse_Version(blob,4);length-=4;if(vers.Major!=1||vers.Minor!=1)throw"unrecognized version code "+vers.Major+" : "+vers.Minor;o.Salt=blob.read_shift(16);o.EncryptedVerifier=blob.read_shift(16);o.EncryptedVerifierHash=blob.read_shift(16);return o}function crypto_CreatePasswordVerifier_Method1(Password){var Verifier=0,PasswordArray;var PasswordDecoded=_JS2ANSI(Password);var len=PasswordDecoded.length+1,i,PasswordByte;var Intermediate1,Intermediate2,Intermediate3;PasswordArray=new_raw_buf(len);PasswordArray[0]=PasswordDecoded.length;for(i=1;i!=len;++i)PasswordArray[i]=PasswordDecoded[i-1];for(i=len-1;i>=0;--i){PasswordByte=PasswordArray[i];Intermediate1=(Verifier&16384)===0?0:1;Intermediate2=Verifier<<1&32767;Intermediate3=Intermediate1|Intermediate2;Verifier=Intermediate3^PasswordByte}return Verifier^52811}var crypto_CreateXorArray_Method1=function(){var PadArray=[187,255,255,186,255,255,185,128,0,190,15,0,191,15,0];var InitialCode=[57840,7439,52380,33984,4364,3600,61902,12606,6258,57657,54287,34041,10252,43370,20163];var XorMatrix=[44796,19929,39858,10053,20106,40212,10761,31585,63170,64933,60267,50935,40399,11199,17763,35526,1453,2906,5812,11624,23248,885,1770,3540,7080,14160,28320,56640,55369,41139,20807,41614,21821,43642,17621,28485,56970,44341,19019,38038,14605,29210,60195,50791,40175,10751,21502,43004,24537,18387,36774,3949,7898,15796,31592,63184,47201,24803,49606,37805,14203,28406,56812,17824,35648,1697,3394,6788,13576,27152,43601,17539,35078,557,1114,2228,4456,30388,60776,51953,34243,7079,14158,28316,14128,28256,56512,43425,17251,34502,7597,13105,26210,52420,35241,883,1766,3532,4129,8258,16516,33032,4657,9314,18628];var Ror=function(Byte){return(Byte/2|Byte*128)&255};var XorRor=function(byte1,byte2){return Ror(byte1^byte2)};var CreateXorKey_Method1=function(Password){var XorKey=InitialCode[Password.length-1];var CurrentElement=104;for(var i=Password.length-1;i>=0;--i){var Char=Password[i];for(var j=0;j!=7;++j){if(Char&64)XorKey^=XorMatrix[CurrentElement];Char*=2;--CurrentElement}}return XorKey};return function(password){var Password=_JS2ANSI(password);var XorKey=CreateXorKey_Method1(Password);var Index=Password.length;var ObfuscationArray=new_raw_buf(16);for(var i=0;i!=16;++i)ObfuscationArray[i]=0;var Temp,PasswordLastChar,PadIndex;if((Index&1)===1){Temp=XorKey>>8;ObfuscationArray[Index]=XorRor(PadArray[0],Temp);--Index;Temp=XorKey&255;PasswordLastChar=Password[Password.length-1];ObfuscationArray[Index]=XorRor(PasswordLastChar,Temp)}while(Index>0){--Index;Temp=XorKey>>8;ObfuscationArray[Index]=XorRor(Password[Index],Temp);--Index;Temp=XorKey&255;ObfuscationArray[Index]=XorRor(Password[Index],Temp)}Index=15;PadIndex=15-Password.length;while(PadIndex>0){Temp=XorKey>>8;ObfuscationArray[Index]=XorRor(PadArray[PadIndex],Temp);--Index;--PadIndex;Temp=XorKey&255;ObfuscationArray[Index]=XorRor(Password[Index],Temp);--Index;--PadIndex}return ObfuscationArray}}();var crypto_DecryptData_Method1=function(password,Data,XorArrayIndex,XorArray,O){if(!O)O=Data;if(!XorArray)XorArray=crypto_CreateXorArray_Method1(password);var Index,Value;for(Index=0;Index!=Data.length;++Index){Value=Data[Index];Value^=XorArray[XorArrayIndex];Value=(Value>>5|Value<<3)&255;O[Index]=Value;++XorArrayIndex}return[O,XorArrayIndex,XorArray]};var crypto_MakeXorDecryptor=function(password){var XorArrayIndex=0,XorArray=crypto_CreateXorArray_Method1(password);return function(Data){var O=crypto_DecryptData_Method1(null,Data,XorArrayIndex,XorArray);XorArrayIndex=O[1];return O[0]}};function parse_XORObfuscation(blob,length,opts,out){var o={key:parseuint16(blob),verificationBytes:parseuint16(blob)};if(opts.password)o.verifier=crypto_CreatePasswordVerifier_Method1(opts.password);out.valid=o.verificationBytes===o.verifier;if(out.valid)out.insitu_decrypt=crypto_MakeXorDecryptor(opts.password);return o}function parse_FilePassHeader(blob,length,oo){var o=oo||{};o.Info=blob.read_shift(2);blob.l-=2;if(o.Info===1)o.Data=parse_RC4Header(blob,length);else o.Data=parse_RC4CryptoHeader(blob,length);return o}function parse_FilePass(blob,length,opts){var o={Type:blob.read_shift(2)};if(o.Type)parse_FilePassHeader(blob,length-2,o);else parse_XORObfuscation(blob,length-2,opts,o);return o}function hex2RGB(h){var o=h.substr(h[0]==="#"?1:0,6);return[parseInt(o.substr(0,2),16),parseInt(o.substr(2,2),16),parseInt(o.substr(4,2),16)]}function rgb2Hex(rgb){for(var i=0,o=1;i!=3;++i)o=o*256+(rgb[i]>255?255:rgb[i]<0?0:rgb[i]);return o.toString(16).toUpperCase().substr(1)}function rgb2HSL(rgb){var R=rgb[0]/255,G=rgb[1]/255,B=rgb[2]/255;var M=Math.max(R,G,B),m=Math.min(R,G,B),C=M-m;if(C===0)return[0,0,R];var H6=0,S=0,L2=M+m;S=C/(L2>1?2-L2:L2);switch(M){case R:H6=((G-B)/C+6)%6;break;case G:H6=(B-R)/C+2;break;case B:H6=(R-G)/C+4;break}return[H6/6,S,L2/2]}function hsl2RGB(hsl){var H=hsl[0],S=hsl[1],L=hsl[2];var C=S*2*(L<.5?L:1-L),m=L-C/2;var rgb=[m,m,m],h6=6*H;var X;if(S!==0)switch(h6|0){case 0:case 6:X=C*h6;rgb[0]+=C;rgb[1]+=X;break;case 1:X=C*(2-h6);rgb[0]+=X;rgb[1]+=C;break;case 2:X=C*(h6-2);rgb[1]+=C;rgb[2]+=X;break;case 3:X=C*(4-h6);rgb[1]+=X;rgb[2]+=C;break;case 4:X=C*(h6-4);rgb[2]+=C;rgb[0]+=X;break;case 5:X=C*(6-h6);rgb[2]+=X;rgb[0]+=C;break}for(var i=0;i!=3;++i)rgb[i]=Math.round(rgb[i]*255);return rgb}function rgb_tint(hex,tint){if(tint==0)return hex;var hsl=rgb2HSL(hex2RGB(hex));if(tint<0)hsl[2]=hsl[2]*(1+tint);else hsl[2]=1-(1-hsl[2])*(1-tint);var rev=rgb2Hex(hsl2RGB(hsl));return rev}var DEF_MDW=7,MAX_MDW=15,MIN_MDW=1,MDW=DEF_MDW;function width2px(width){return(width+(128/MDW|0)/256)*MDW|0}function px2char(px){return((px-5)/MDW*100+.5|0)/100}function char2width(chr){return((chr*MDW+5)/MDW*256|0)/256}function cycle_width(collw){return char2width(px2char(width2px(collw)))}function find_mdw(collw,coll){if(cycle_width(collw)!=collw){for(MDW=DEF_MDW;MDW>MIN_MDW;--MDW)if(cycle_width(collw)===collw)break;if(MDW===MIN_MDW)for(MDW=DEF_MDW+1;MDW<MAX_MDW;++MDW)if(cycle_width(collw)===collw)break;if(MDW===MAX_MDW)MDW=DEF_MDW}}var XLMLPatternTypeMap={None:"none",Solid:"solid",Gray50:"mediumGray",Gray75:"darkGray",Gray25:"lightGray",HorzStripe:"darkHorizontal",VertStripe:"darkVertical",ReverseDiagStripe:"darkDown",DiagStripe:"darkUp",DiagCross:"darkGrid",ThickDiagCross:"darkTrellis",ThinHorzStripe:"lightHorizontal",ThinVertStripe:"lightVertical",ThinReverseDiagStripe:"lightDown",ThinHorzCross:"lightGrid"};var styles={};var themes={};function parse_fills(t,opts){styles.Fills=[];var fill={};t[0].match(tagregex).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<fills":case"<fills>":case"</fills>":break;case"<fill>":break;case"</fill>":styles.Fills.push(fill);fill={};break;case"<patternFill":if(y.patternType)fill.patternType=y.patternType;break;case"<patternFill/>":case"</patternFill>":break;case"<bgColor":if(!fill.bgColor)fill.bgColor={};if(y.indexed)fill.bgColor.indexed=parseInt(y.indexed,10);if(y.theme)fill.bgColor.theme=parseInt(y.theme,10);if(y.tint)fill.bgColor.tint=parseFloat(y.tint);if(y.theme&&themes.themeElements&&themes.themeElements.clrScheme){fill.bgColor.rgb=rgb_tint(themes.themeElements.clrScheme[fill.bgColor.theme].rgb,fill.bgColor.tint||0);if(opts.WTF)fill.bgColor.raw_rgb=rgb_tint(themes.themeElements.clrScheme[fill.bgColor.theme].rgb,0)}if(y.rgb)fill.bgColor.rgb=y.rgb;break;case"<bgColor/>":case"</bgColor>":break;case"<fgColor":if(!fill.fgColor)fill.fgColor={};if(y.theme)fill.fgColor.theme=parseInt(y.theme,10);if(y.tint)fill.fgColor.tint=parseFloat(y.tint);if(y.theme&&themes.themeElements&&themes.themeElements.clrScheme){fill.fgColor.rgb=rgb_tint(themes.themeElements.clrScheme[fill.fgColor.theme].rgb,fill.fgColor.tint||0);if(opts.WTF)fill.fgColor.raw_rgb=rgb_tint(themes.themeElements.clrScheme[fill.fgColor.theme].rgb,0)}if(y.rgb)fill.fgColor.rgb=y.rgb;break;case"<fgColor/>":case"</fgColor>":break;default:if(opts.WTF)throw"unrecognized "+y[0]+" in fills"}})}function parse_fonts(t,opts){styles.Fonts=[];var font={};t[0].match(tagregex).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<fonts":case"<fonts>":case"</fonts>":break;case"<font":break;case"</font>":styles.Fonts.push(font);font={};break;case"<name":if(y.val)font.name=y.val;break;case"<name/>":case"</name>":break;case"<b/>":font.bold=true;break;case"<u/>":font.underline=true;break;case"<i/>":font.italic=true;break;case"<strike/>":font.strike=true;break;case"<outline/>":font.outline=true;break;case"<shadow/>":font.shadow=true;break;case"<sz":if(y.val)font.sz=y.val;break;case"<sz/>":case"</sz>":break;case"<vertAlign":if(y.val)font.vertAlign=y.val;break;case"<vertAlign/>":case"</vertAlign>":break;case"<color":if(!font.color)font.color={};if(y.theme)font.color.theme=y.theme;if(y.tint)font.color.tint=y.tint;if(y.theme&&themes.themeElements&&themes.themeElements.clrScheme){font.color.rgb=rgb_tint(themes.themeElements.clrScheme[font.color.theme].rgb,font.color.tint||0)}if(y.rgb)font.color.rgb=y.rgb;break;case"<color/>":case"</color>":break}})}function parse_borders(t,opts){styles.Borders=[];var border={},sub_border={};t[0].match(tagregex).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<borders":case"<borders>":case"</borders>":break;case"<border":case"<border>":border={};if(y.diagonalUp){border.diagonalUp=y.diagonalUp}if(y.diagonalDown){border.diagonalDown=y.diagonalDown}styles.Borders.push(border);break;break;case"</border>":break;case"<left":sub_border=border.left={};if(y.style){sub_border.style=y.style}break;case"<right":sub_border=border.right={};if(y.style){sub_border.style=y.style}break;case"<top":sub_border=border.top={};if(y.style){sub_border.style=y.style}break;case"<bottom":sub_border=border.bottom={};if(y.style){sub_border.style=y.style}break;case"<diagonal":sub_border=border.diagonal={};if(y.style){sub_border.style=y.style}break;case"<color":sub_border.color={};if(y.theme)sub_border.color.theme=y.theme;if(y.theme&&themes.themeElements&&themes.themeElements.clrScheme){sub_border.color.rgb=rgb_tint(themes.themeElements.clrScheme[sub_border.color.theme].rgb,sub_border.color.tint||0)}if(y.tint)sub_border.color.tint=y.tint;if(y.rgb)sub_border.color.rgb=y.rgb;if(y.auto)sub_border.color.auto=y.auto;break;case"<name/>":case"</name>":break;default:break}})}function parse_numFmts(t,opts){styles.NumberFmt=[];var k=keys(SSF._table);for(var i=0;i<k.length;++i)styles.NumberFmt[k[i]]=SSF._table[k[i]];var m=t[0].match(tagregex);for(i=0;i<m.length;++i){var y=parsexmltag(m[i]);switch(y[0]){case"<numFmts":case"</numFmts>":case"<numFmts/>":case"<numFmts>":break;case"<numFmt":{var f=unescapexml(utf8read(y.formatCode)),j=parseInt(y.numFmtId,10);styles.NumberFmt[j]=f;if(j>0)SSF.load(f,j)}break;default:if(opts.WTF)throw"unrecognized "+y[0]+" in numFmts"}}}function write_numFmts(NF,opts){var o=["<numFmts>"];[[5,8],[23,26],[41,44],[63,66],[164,392]].forEach(function(r){for(var i=r[0];i<=r[1];++i)if(NF[i]!==undefined)o[o.length]=writextag("numFmt",null,{numFmtId:i,formatCode:escapexml(NF[i])})});if(o.length===1)return"";o[o.length]="</numFmts>";o[0]=writextag("numFmts",null,{count:o.length-2}).replace("/>",">");return o.join("")}function parse_cellXfs(t,opts){styles.CellXf=[];var xf;t[0].match(tagregex).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<cellXfs":case"<cellXfs>":case"<cellXfs/>":case"</cellXfs>":break;case"<xf":xf=y;delete xf[0];delete y[0];if(xf.numFmtId)xf.numFmtId=parseInt(xf.numFmtId,10);if(xf.fillId)xf.fillId=parseInt(xf.fillId,10);styles.CellXf.push(xf);break;case"</xf>":break;case"<alignment":case"<alignment/>":var alignment={};if(y.vertical){alignment.vertical=y.vertical}if(y.horizontal){alignment.horizontal=y.horizontal}if(y.textRotation!=undefined){alignment.textRotation=y.textRotation}if(y.indent){alignment.indent=y.indent}if(y.wrapText){alignment.wrapText=y.wrapText}xf.alignment=alignment;break;case"<protection":case"</protection>":case"<protection/>":break;case"<extLst":case"</extLst>":break;case"<ext":break;default:if(opts.WTF)throw"unrecognized "+y[0]+" in cellXfs"}})}function write_cellXfs(cellXfs){var o=[];o[o.length]=writextag("cellXfs",null);cellXfs.forEach(function(c){o[o.length]=writextag("xf",null,c)});o[o.length]="</cellXfs>";if(o.length===2)return"";o[0]=writextag("cellXfs",null,{count:o.length-2}).replace("/>",">");return o.join("")}var parse_sty_xml=function make_pstyx(){var numFmtRegex=/<numFmts([^>]*)>.*<\/numFmts>/;var cellXfRegex=/<cellXfs([^>]*)>.*<\/cellXfs>/;var fillsRegex=/<fills([^>]*)>.*<\/fills>/;var bordersRegex=/<borders([^>]*)>.*<\/borders>/;return function parse_sty_xml(data,opts){var t;if(t=data.match(numFmtRegex))parse_numFmts(t,opts);if(t=data.match(/<fonts([^>]*)>.*<\/fonts>/))parse_fonts(t,opts);if(t=data.match(fillsRegex))parse_fills(t,opts);if(t=data.match(bordersRegex))parse_borders(t,opts);if(t=data.match(cellXfRegex))parse_cellXfs(t,opts);return styles}}();var STYLES_XML_ROOT=writextag("styleSheet",null,{xmlns:XMLNS.main[0],"xmlns:vt":XMLNS.vt});RELS.STY="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles";function write_sty_xml(wb,opts){if(typeof style_builder!="undefined"&&typeof"require"!="undefined"){return style_builder.toXml()}var o=[XML_HEADER,STYLES_XML_ROOT],w;if((w=write_numFmts(wb.SSF))!=null)o[o.length]=w;o[o.length]='<fonts count="1"><font><sz val="12"/><color theme="1"/><name val="Calibri"/><family val="2"/><scheme val="minor"/></font></fonts>';o[o.length]='<fills count="2"><fill><patternFill patternType="none"/></fill><fill><patternFill patternType="gray125"/></fill></fills>';o[o.length]='<borders count="1"><border><left/><right/><top/><bottom/><diagonal/></border></borders>';o[o.length]='<cellStyleXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0"/></cellStyleXfs>';if(w=write_cellXfs(opts.cellXfs))o[o.length]=w;o[o.length]='<cellStyles count="1"><cellStyle name="Normal" xfId="0" builtinId="0"/></cellStyles>';o[o.length]='<dxfs count="0"/>';o[o.length]='<tableStyles count="0" defaultTableStyle="TableStyleMedium9" defaultPivotStyle="PivotStyleMedium4"/>';if(o.length>2){o[o.length]="</styleSheet>";o[1]=o[1].replace("/>",">")}return o.join("")}function parse_BrtFmt(data,length){var ifmt=data.read_shift(2);var stFmtCode=parse_XLWideString(data,length-2);return[ifmt,stFmtCode]}function parse_BrtFont(data,length){var out={flags:{}};out.dyHeight=data.read_shift(2);out.grbit=parse_FontFlags(data,2);out.bls=data.read_shift(2);out.sss=data.read_shift(2);out.uls=data.read_shift(1);out.bFamily=data.read_shift(1);out.bCharSet=data.read_shift(1);data.l++;out.brtColor=parse_BrtColor(data,8);out.bFontScheme=data.read_shift(1);out.name=parse_XLWideString(data,length-21);out.flags.Bold=out.bls===700;out.flags.Italic=out.grbit.fItalic;out.flags.Strikeout=out.grbit.fStrikeout;out.flags.Outline=out.grbit.fOutline;out.flags.Shadow=out.grbit.fShadow;out.flags.Condense=out.grbit.fCondense;out.flags.Extend=out.grbit.fExtend;out.flags.Sub=out.sss&2;out.flags.Sup=out.sss&1;return out}function parse_BrtXF(data,length){var ixfeParent=data.read_shift(2);var ifmt=data.read_shift(2);parsenoop(data,length-4);return{ixfe:ixfeParent,ifmt:ifmt}}function parse_sty_bin(data,opts){styles.NumberFmt=[];for(var y in SSF._table)styles.NumberFmt[y]=SSF._table[y];styles.CellXf=[];var state="";var pass=false;recordhopper(data,function hopper_sty(val,R,RT){switch(R.n){case"BrtFmt":styles.NumberFmt[val[0]]=val[1];SSF.load(val[1],val[0]);break;case"BrtFont":break;case"BrtKnownFonts":break;case"BrtFill":break;case"BrtBorder":break;case"BrtXF":if(state==="CELLXFS"){styles.CellXf.push(val)}break;case"BrtStyle":break;case"BrtDXF":break;case"BrtMRUColor":break;case"BrtIndexedColor":break;case"BrtBeginStyleSheet":break;case"BrtEndStyleSheet":break;case"BrtBeginTableStyle":break;case"BrtTableStyleElement":break;case"BrtEndTableStyle":break;case"BrtBeginFmts":state="FMTS";break;case"BrtEndFmts":state="";break;case"BrtBeginFonts":state="FONTS";break;case"BrtEndFonts":state="";break;case"BrtACBegin":state="ACFONTS";break;case"BrtACEnd":state="";break;case"BrtBeginFills":state="FILLS";break;case"BrtEndFills":state="";break;case"BrtBeginBorders":state="BORDERS";break;case"BrtEndBorders":state="";break;case"BrtBeginCellStyleXFs":state="CELLSTYLEXFS";break;case"BrtEndCellStyleXFs":state="";break;case"BrtBeginCellXFs":state="CELLXFS";break;case"BrtEndCellXFs":state="";break;case"BrtBeginStyles":state="STYLES";break;case"BrtEndStyles":state="";break;case"BrtBeginDXFs":state="DXFS";break;case"BrtEndDXFs":state="";break;case"BrtBeginTableStyles":state="TABLESTYLES";break;case"BrtEndTableStyles":state="";break;case"BrtBeginColorPalette":state="COLORPALETTE";break;case"BrtEndColorPalette":state="";break;case"BrtBeginIndexedColors":state="INDEXEDCOLORS";break;case"BrtEndIndexedColors":state="";break;case"BrtBeginMRUColors":state="MRUCOLORS";break;case"BrtEndMRUColors":state="";break;case"BrtFRTBegin":
pass=true;break;case"BrtFRTEnd":pass=false;break;case"BrtBeginStyleSheetExt14":break;case"BrtBeginSlicerStyles":break;case"BrtEndSlicerStyles":break;case"BrtBeginTimelineStylesheetExt15":break;case"BrtEndTimelineStylesheetExt15":break;case"BrtBeginTimelineStyles":break;case"BrtEndTimelineStyles":break;case"BrtEndStyleSheetExt14":break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+RT+" "+R.n)}});return styles}function write_sty_bin(data,opts){var ba=buf_array();write_record(ba,"BrtBeginStyleSheet");write_record(ba,"BrtEndStyleSheet");return ba.end()}RELS.THEME="http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme";function parse_clrScheme(t,opts){themes.themeElements.clrScheme=[];var color={};t[0].match(tagregex).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<a:clrScheme":case"</a:clrScheme>":break;case"<a:srgbClr":color.rgb=y.val;break;case"<a:sysClr":color.rgb=y.lastClr;break;case"<a:dk1>":case"</a:dk1>":case"<a:dk2>":case"</a:dk2>":case"<a:lt1>":case"</a:lt1>":case"<a:lt2>":case"</a:lt2>":case"<a:accent1>":case"</a:accent1>":case"<a:accent2>":case"</a:accent2>":case"<a:accent3>":case"</a:accent3>":case"<a:accent4>":case"</a:accent4>":case"<a:accent5>":case"</a:accent5>":case"<a:accent6>":case"</a:accent6>":case"<a:hlink>":case"</a:hlink>":case"<a:folHlink>":case"</a:folHlink>":if(y[0][1]==="/"){themes.themeElements.clrScheme.push(color);color={}}else{color.name=y[0].substring(3,y[0].length-1)}break;default:if(opts.WTF)throw"unrecognized "+y[0]+" in clrScheme"}})}function parse_fontScheme(t,opts){}function parse_fmtScheme(t,opts){}var clrsregex=/<a:clrScheme([^>]*)>[^\u2603]*<\/a:clrScheme>/;var fntsregex=/<a:fontScheme([^>]*)>[^\u2603]*<\/a:fontScheme>/;var fmtsregex=/<a:fmtScheme([^>]*)>[^\u2603]*<\/a:fmtScheme>/;function parse_themeElements(data,opts){themes.themeElements={};var t;[["clrScheme",clrsregex,parse_clrScheme],["fontScheme",fntsregex,parse_fontScheme],["fmtScheme",fmtsregex,parse_fmtScheme]].forEach(function(m){if(!(t=data.match(m[1])))throw m[0]+" not found in themeElements";m[2](t,opts)})}var themeltregex=/<a:themeElements([^>]*)>[^\u2603]*<\/a:themeElements>/;function parse_theme_xml(data,opts){if(!data||data.length===0)return themes;var t;if(!(t=data.match(themeltregex)))throw"themeElements not found in theme";parse_themeElements(t[0],opts);return themes}function write_theme(opts){if(opts.themeXml){return opts.themeXml}return'<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"><a:themeElements><a:clrScheme name="Office"><a:dk1><a:sysClr val="windowText" lastClr="000000"/></a:dk1><a:lt1><a:sysClr val="window" lastClr="FFFFFF"/></a:lt1><a:dk2><a:srgbClr val="1F497D"/></a:dk2><a:lt2><a:srgbClr val="EEECE1"/></a:lt2><a:accent1><a:srgbClr val="4F81BD"/></a:accent1><a:accent2><a:srgbClr val="C0504D"/></a:accent2><a:accent3><a:srgbClr val="9BBB59"/></a:accent3><a:accent4><a:srgbClr val="8064A2"/></a:accent4><a:accent5><a:srgbClr val="4BACC6"/></a:accent5><a:accent6><a:srgbClr val="F79646"/></a:accent6><a:hlink><a:srgbClr val="0000FF"/></a:hlink><a:folHlink><a:srgbClr val="800080"/></a:folHlink></a:clrScheme><a:fontScheme name="Office"><a:majorFont><a:latin typeface="Cambria"/><a:ea typeface=""/><a:cs typeface=""/><a:font script="Jpan" typeface="ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯"/><a:font script="Hang" typeface="맑은 ê³ ë”•"/><a:font script="Hans" typeface="宋体"/><a:font script="Hant" typeface="新細明體"/><a:font script="Arab" typeface="Times New Roman"/><a:font script="Hebr" typeface="Times New Roman"/><a:font script="Thai" typeface="Tahoma"/><a:font script="Ethi" typeface="Nyala"/><a:font script="Beng" typeface="Vrinda"/><a:font script="Gujr" typeface="Shruti"/><a:font script="Khmr" typeface="MoolBoran"/><a:font script="Knda" typeface="Tunga"/><a:font script="Guru" typeface="Raavi"/><a:font script="Cans" typeface="Euphemia"/><a:font script="Cher" typeface="Plantagenet Cherokee"/><a:font script="Yiii" typeface="Microsoft Yi Baiti"/><a:font script="Tibt" typeface="Microsoft Himalaya"/><a:font script="Thaa" typeface="MV Boli"/><a:font script="Deva" typeface="Mangal"/><a:font script="Telu" typeface="Gautami"/><a:font script="Taml" typeface="Latha"/><a:font script="Syrc" typeface="Estrangelo Edessa"/><a:font script="Orya" typeface="Kalinga"/><a:font script="Mlym" typeface="Kartika"/><a:font script="Laoo" typeface="DokChampa"/><a:font script="Sinh" typeface="Iskoola Pota"/><a:font script="Mong" typeface="Mongolian Baiti"/><a:font script="Viet" typeface="Times New Roman"/><a:font script="Uigh" typeface="Microsoft Uighur"/><a:font script="Geor" typeface="Sylfaen"/></a:majorFont><a:minorFont><a:latin typeface="Calibri"/><a:ea typeface=""/><a:cs typeface=""/><a:font script="Jpan" typeface="ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯"/><a:font script="Hang" typeface="맑은 ê³ ë”•"/><a:font script="Hans" typeface="宋体"/><a:font script="Hant" typeface="新細明體"/><a:font script="Arab" typeface="Arial"/><a:font script="Hebr" typeface="Arial"/><a:font script="Thai" typeface="Tahoma"/><a:font script="Ethi" typeface="Nyala"/><a:font script="Beng" typeface="Vrinda"/><a:font script="Gujr" typeface="Shruti"/><a:font script="Khmr" typeface="DaunPenh"/><a:font script="Knda" typeface="Tunga"/><a:font script="Guru" typeface="Raavi"/><a:font script="Cans" typeface="Euphemia"/><a:font script="Cher" typeface="Plantagenet Cherokee"/><a:font script="Yiii" typeface="Microsoft Yi Baiti"/><a:font script="Tibt" typeface="Microsoft Himalaya"/><a:font script="Thaa" typeface="MV Boli"/><a:font script="Deva" typeface="Mangal"/><a:font script="Telu" typeface="Gautami"/><a:font script="Taml" typeface="Latha"/><a:font script="Syrc" typeface="Estrangelo Edessa"/><a:font script="Orya" typeface="Kalinga"/><a:font script="Mlym" typeface="Kartika"/><a:font script="Laoo" typeface="DokChampa"/><a:font script="Sinh" typeface="Iskoola Pota"/><a:font script="Mong" typeface="Mongolian Baiti"/><a:font script="Viet" typeface="Arial"/><a:font script="Uigh" typeface="Microsoft Uighur"/><a:font script="Geor" typeface="Sylfaen"/></a:minorFont></a:fontScheme><a:fmtScheme name="Office"><a:fillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="50000"/><a:satMod val="300000"/></a:schemeClr></a:gs><a:gs pos="35000"><a:schemeClr val="phClr"><a:tint val="37000"/><a:satMod val="300000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="15000"/><a:satMod val="350000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="16200000" scaled="1"/></a:gradFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="100000"/><a:shade val="100000"/><a:satMod val="130000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="50000"/><a:shade val="100000"/><a:satMod val="350000"/></a:schemeClr></a:gs></a:gsLst><a:lin ang="16200000" scaled="0"/></a:gradFill></a:fillStyleLst><a:lnStyleLst><a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"><a:shade val="95000"/><a:satMod val="105000"/></a:schemeClr></a:solidFill><a:prstDash val="solid"/></a:ln><a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln><a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln></a:lnStyleLst><a:effectStyleLst><a:effectStyle><a:effectLst><a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="38000"/></a:srgbClr></a:outerShdw></a:effectLst></a:effectStyle><a:effectStyle><a:effectLst><a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw></a:effectLst></a:effectStyle><a:effectStyle><a:effectLst><a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw></a:effectLst><a:scene3d><a:camera prst="orthographicFront"><a:rot lat="0" lon="0" rev="0"/></a:camera><a:lightRig rig="threePt" dir="t"><a:rot lat="0" lon="0" rev="1200000"/></a:lightRig></a:scene3d><a:sp3d><a:bevelT w="63500" h="25400"/></a:sp3d></a:effectStyle></a:effectStyleLst><a:bgFillStyleLst><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="40000"/><a:satMod val="350000"/></a:schemeClr></a:gs><a:gs pos="40000"><a:schemeClr val="phClr"><a:tint val="45000"/><a:shade val="99000"/><a:satMod val="350000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="20000"/><a:satMod val="255000"/></a:schemeClr></a:gs></a:gsLst><a:path path="circle"><a:fillToRect l="50000" t="-80000" r="50000" b="180000"/></a:path></a:gradFill><a:gradFill rotWithShape="1"><a:gsLst><a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="80000"/><a:satMod val="300000"/></a:schemeClr></a:gs><a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="30000"/><a:satMod val="200000"/></a:schemeClr></a:gs></a:gsLst><a:path path="circle"><a:fillToRect l="50000" t="50000" r="50000" b="50000"/></a:path></a:gradFill></a:bgFillStyleLst></a:fmtScheme></a:themeElements><a:objectDefaults><a:spDef><a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="1"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="3"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="2"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="lt1"/></a:fontRef></a:style></a:spDef><a:lnDef><a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="2"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="0"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="1"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="tx1"/></a:fontRef></a:style></a:lnDef></a:objectDefaults><a:extraClrSchemeLst/></a:theme>'}function parse_Theme(blob,length){var dwThemeVersion=blob.read_shift(4);if(dwThemeVersion===124226)return;blob.l+=length-4}function parse_ColorTheme(blob,length){return blob.read_shift(4)}function parse_FullColorExt(blob,length){var o={};o.xclrType=blob.read_shift(2);o.nTintShade=blob.read_shift(2);switch(o.xclrType){case 0:blob.l+=4;break;case 1:o.xclrValue=parse_IcvXF(blob,4);break;case 2:o.xclrValue=parse_LongRGBA(blob,4);break;case 3:o.xclrValue=parse_ColorTheme(blob,4);break;case 4:blob.l+=4;break}blob.l+=8;return o}function parse_IcvXF(blob,length){return parsenoop(blob,length)}function parse_XFExtGradient(blob,length){return parsenoop(blob,length)}function parse_ExtProp(blob,length){var extType=blob.read_shift(2);var cb=blob.read_shift(2);var o=[extType];switch(extType){case 4:case 5:case 7:case 8:case 9:case 10:case 11:case 13:o[1]=parse_FullColorExt(blob,cb);break;case 6:o[1]=parse_XFExtGradient(blob,cb);break;case 14:case 15:o[1]=blob.read_shift(cb===5?1:2);break;default:throw new Error("Unrecognized ExtProp type: "+extType+" "+cb)}return o}function parse_XFExt(blob,length){var end=blob.l+length;blob.l+=2;var ixfe=blob.read_shift(2);blob.l+=2;var cexts=blob.read_shift(2);var ext=[];while(cexts-- >0)ext.push(parse_ExtProp(blob,end-blob.l));return{ixfe:ixfe,ext:ext}}function update_xfext(xf,xfext){xfext.forEach(function(xfe){switch(xfe[0]){case 4:break;case 5:break;case 7:case 8:case 9:case 10:break;case 13:break;case 14:break;default:throw"bafuq"+xfe[0].toString(16)}})}function parse_cc_xml(data,opts){var d=[];var l=0,i=1;(data.match(tagregex)||[]).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<?xml":break;case"<calcChain":case"<calcChain>":case"</calcChain>":break;case"<c":delete y[0];if(y.i)i=y.i;else y.i=i;d.push(y);break}});return d}function write_cc_xml(data,opts){}function parse_BrtCalcChainItem$(data,length){var out={};out.i=data.read_shift(4);var cell={};cell.r=data.read_shift(4);cell.c=data.read_shift(4);out.r=encode_cell(cell);var flags=data.read_shift(1);if(flags&2)out.l="1";if(flags&8)out.a="1";return out}function parse_cc_bin(data,opts){var out=[];var pass=false;recordhopper(data,function hopper_cc(val,R,RT){switch(R.n){case"BrtCalcChainItem$":out.push(val);break;case"BrtBeginCalcChain$":break;case"BrtEndCalcChain$":break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+RT+" "+R.n)}});return out}function write_cc_bin(data,opts){}function parse_comments(zip,dirComments,sheets,sheetRels,opts){for(var i=0;i!=dirComments.length;++i){var canonicalpath=dirComments[i];var comments=parse_cmnt(getzipdata(zip,canonicalpath.replace(/^\//,""),true),canonicalpath,opts);if(!comments||!comments.length)continue;var sheetNames=keys(sheets);for(var j=0;j!=sheetNames.length;++j){var sheetName=sheetNames[j];var rels=sheetRels[sheetName];if(rels){var rel=rels[canonicalpath];if(rel)insertCommentsIntoSheet(sheetName,sheets[sheetName],comments)}}}}function insertCommentsIntoSheet(sheetName,sheet,comments){comments.forEach(function(comment){var cell=sheet[comment.ref];if(!cell){cell={};sheet[comment.ref]=cell;var range=safe_decode_range(sheet["!ref"]||"BDWGO1000001:A1");var thisCell=decode_cell(comment.ref);if(range.s.r>thisCell.r)range.s.r=thisCell.r;if(range.e.r<thisCell.r)range.e.r=thisCell.r;if(range.s.c>thisCell.c)range.s.c=thisCell.c;if(range.e.c<thisCell.c)range.e.c=thisCell.c;var encoded=encode_range(range);if(encoded!==sheet["!ref"])sheet["!ref"]=encoded}if(!cell.c)cell.c=[];var o={a:comment.author,t:comment.t,r:comment.r};if(comment.h)o.h=comment.h;cell.c.push(o)})}function parse_comments_xml(data,opts){if(data.match(/<(?:\w+:)?comments *\/>/))return[];var authors=[];var commentList=[];data.match(/<(?:\w+:)?authors>([^\u2603]*)<\/(?:\w+:)?authors>/)[1].split(/<\/\w*:?author>/).forEach(function(x){if(x===""||x.trim()==="")return;authors.push(x.match(/<(?:\w+:)?author[^>]*>(.*)/)[1])});(data.match(/<(?:\w+:)?commentList>([^\u2603]*)<\/(?:\w+:)?commentList>/)||["",""])[1].split(/<\/\w*:?comment>/).forEach(function(x,index){if(x===""||x.trim()==="")return;var y=parsexmltag(x.match(/<(?:\w+:)?comment[^>]*>/)[0]);var comment={author:y.authorId&&authors[y.authorId]?authors[y.authorId]:undefined,ref:y.ref,guid:y.guid};var cell=decode_cell(y.ref);if(opts.sheetRows&&opts.sheetRows<=cell.r)return;var textMatch=x.match(/<text>([^\u2603]*)<\/text>/);if(!textMatch||!textMatch[1])return;var rt=parse_si(textMatch[1]);comment.r=rt.r;comment.t=rt.t;if(opts.cellHTML)comment.h=rt.h;commentList.push(comment)});return commentList}function write_comments_xml(data,opts){}function parse_BrtBeginComment(data,length){var out={};out.iauthor=data.read_shift(4);var rfx=parse_UncheckedRfX(data,16);out.rfx=rfx.s;out.ref=encode_cell(rfx.s);data.l+=16;return out}var parse_BrtCommentAuthor=parse_XLWideString;var parse_BrtCommentText=parse_RichStr;function parse_comments_bin(data,opts){var out=[];var authors=[];var c={};var pass=false;recordhopper(data,function hopper_cmnt(val,R,RT){switch(R.n){case"BrtCommentAuthor":authors.push(val);break;case"BrtBeginComment":c=val;break;case"BrtCommentText":c.t=val.t;c.h=val.h;c.r=val.r;break;case"BrtEndComment":c.author=authors[c.iauthor];delete c.iauthor;if(opts.sheetRows&&opts.sheetRows<=c.rfx.r)break;delete c.rfx;out.push(c);break;case"BrtBeginComments":break;case"BrtEndComments":break;case"BrtBeginCommentAuthors":break;case"BrtEndCommentAuthors":break;case"BrtBeginCommentList":break;case"BrtEndCommentList":break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+RT+" "+R.n)}});return out}function write_comments_bin(data,opts){}var rc_to_a1=function(){var rcregex=/(^|[^A-Za-z])R(\[?)(-?\d+|)\]?C(\[?)(-?\d+|)\]?/g;var rcbase;function rcfunc($$,$1,$2,$3,$4,$5){var R=$3.length>0?parseInt($3,10)|0:0,C=$5.length>0?parseInt($5,10)|0:0;if(C<0&&$4.length===0)C=0;if($4.length>0)C+=rcbase.c;if($2.length>0)R+=rcbase.r;return $1+encode_col(C)+encode_row(R)}return function rc_to_a1(fstr,base){rcbase=base;return fstr.replace(rcregex,rcfunc)}}();function parseread(l){return function(blob,length){blob.l+=l;return}}function parseread1(blob,length){blob.l+=1;return}function parse_ColRelU(blob,length){var c=blob.read_shift(2);return[c&16383,c>>14&1,c>>15&1]}function parse_RgceArea(blob,length){var r=blob.read_shift(2),R=blob.read_shift(2);var c=parse_ColRelU(blob,2);var C=parse_ColRelU(blob,2);return{s:{r:r,c:c[0],cRel:c[1],rRel:c[2]},e:{r:R,c:C[0],cRel:C[1],rRel:C[2]}}}function parse_RgceAreaRel(blob,length){var r=blob.read_shift(2),R=blob.read_shift(2);var c=parse_ColRelU(blob,2);var C=parse_ColRelU(blob,2);return{s:{r:r,c:c[0],cRel:c[1],rRel:c[2]},e:{r:R,c:C[0],cRel:C[1],rRel:C[2]}}}function parse_RgceLoc(blob,length){var r=blob.read_shift(2);var c=parse_ColRelU(blob,2);return{r:r,c:c[0],cRel:c[1],rRel:c[2]}}function parse_RgceLocRel(blob,length){var r=blob.read_shift(2);var cl=blob.read_shift(2);var cRel=(cl&32768)>>15,rRel=(cl&16384)>>14;cl&=16383;if(cRel!==0)while(cl>=256)cl-=256;return{r:r,c:cl,cRel:cRel,rRel:rRel}}function parse_PtgArea(blob,length){var type=(blob[blob.l++]&96)>>5;var area=parse_RgceArea(blob,8);return[type,area]}function parse_PtgArea3d(blob,length){var type=(blob[blob.l++]&96)>>5;var ixti=blob.read_shift(2);var area=parse_RgceArea(blob,8);return[type,ixti,area]}function parse_PtgAreaErr(blob,length){var type=(blob[blob.l++]&96)>>5;blob.l+=8;return[type]}function parse_PtgAreaErr3d(blob,length){var type=(blob[blob.l++]&96)>>5;var ixti=blob.read_shift(2);blob.l+=8;return[type,ixti]}function parse_PtgAreaN(blob,length){var type=(blob[blob.l++]&96)>>5;var area=parse_RgceAreaRel(blob,8);return[type,area]}function parse_PtgArray(blob,length){var type=(blob[blob.l++]&96)>>5;blob.l+=7;return[type]}function parse_PtgAttrBaxcel(blob,length){var bitSemi=blob[blob.l+1]&1;var bitBaxcel=1;blob.l+=4;return[bitSemi,bitBaxcel]}function parse_PtgAttrChoose(blob,length){blob.l+=2;var offset=blob.read_shift(2);var o=[];for(var i=0;i<=offset;++i)o.push(blob.read_shift(2));return o}function parse_PtgAttrGoto(blob,length){var bitGoto=blob[blob.l+1]&255?1:0;blob.l+=2;return[bitGoto,blob.read_shift(2)]}function parse_PtgAttrIf(blob,length){var bitIf=blob[blob.l+1]&255?1:0;blob.l+=2;return[bitIf,blob.read_shift(2)]}function parse_PtgAttrSemi(blob,length){var bitSemi=blob[blob.l+1]&255?1:0;blob.l+=4;return[bitSemi]}function parse_PtgAttrSpaceType(blob,length){var type=blob.read_shift(1),cch=blob.read_shift(1);return[type,cch]}function parse_PtgAttrSpace(blob,length){blob.read_shift(2);return parse_PtgAttrSpaceType(blob,2)}function parse_PtgAttrSpaceSemi(blob,length){blob.read_shift(2);return parse_PtgAttrSpaceType(blob,2)}function parse_PtgRef(blob,length){var ptg=blob[blob.l]&31;var type=(blob[blob.l]&96)>>5;blob.l+=1;var loc=parse_RgceLoc(blob,4);return[type,loc]}function parse_PtgRefN(blob,length){var ptg=blob[blob.l]&31;var type=(blob[blob.l]&96)>>5;blob.l+=1;var loc=parse_RgceLocRel(blob,4);return[type,loc]}function parse_PtgRef3d(blob,length){var ptg=blob[blob.l]&31;var type=(blob[blob.l]&96)>>5;blob.l+=1;var ixti=blob.read_shift(2);var loc=parse_RgceLoc(blob,4);return[type,ixti,loc]}function parse_PtgFunc(blob,length){var ptg=blob[blob.l]&31;var type=(blob[blob.l]&96)>>5;blob.l+=1;var iftab=blob.read_shift(2);return[FtabArgc[iftab],Ftab[iftab]]}function parse_PtgFuncVar(blob,length){blob.l++;var cparams=blob.read_shift(1),tab=parsetab(blob);return[cparams,(tab[0]===0?Ftab:Cetab)[tab[1]]]}function parsetab(blob,length){return[blob[blob.l+1]>>7,blob.read_shift(2)&32767]}var parse_PtgAttrSum=parseread(4);var parse_PtgConcat=parseread1;function parse_PtgExp(blob,length){blob.l++;var row=blob.read_shift(2);var col=blob.read_shift(2);return[row,col]}function parse_PtgErr(blob,length){blob.l++;return BErr[blob.read_shift(1)]}function parse_PtgInt(blob,length){blob.l++;return blob.read_shift(2)}function parse_PtgBool(blob,length){blob.l++;return blob.read_shift(1)!==0}function parse_PtgNum(blob,length){blob.l++;return parse_Xnum(blob,8)}function parse_PtgStr(blob,length){blob.l++;return parse_ShortXLUnicodeString(blob)}function parse_SerAr(blob){var val=[];switch(val[0]=blob.read_shift(1)){case 4:val[1]=parsebool(blob,1)?"TRUE":"FALSE";blob.l+=7;break;case 16:val[1]=BErr[blob[blob.l]];blob.l+=8;break;case 0:blob.l+=8;break;case 1:val[1]=parse_Xnum(blob,8);break;case 2:val[1]=parse_XLUnicodeString(blob);break}return val}function parse_PtgExtraMem(blob,cce){var count=blob.read_shift(2);var out=[];for(var i=0;i!=count;++i)out.push(parse_Ref8U(blob,8));return out}function parse_PtgExtraArray(blob){var cols=1+blob.read_shift(1);var rows=1+blob.read_shift(2);for(var i=0,o=[];i!=rows&&(o[i]=[]);++i)for(var j=0;j!=cols;++j)o[i][j]=parse_SerAr(blob);return o}function parse_PtgName(blob,length){var type=blob.read_shift(1)>>>5&3;var nameindex=blob.read_shift(4);return[type,0,nameindex]}function parse_PtgNameX(blob,length){var type=blob.read_shift(1)>>>5&3;var ixti=blob.read_shift(2);var nameindex=blob.read_shift(4);return[type,ixti,nameindex]}function parse_PtgMemArea(blob,length){var type=blob.read_shift(1)>>>5&3;blob.l+=4;var cce=blob.read_shift(2);return[type,cce]}function parse_PtgMemFunc(blob,length){var type=blob.read_shift(1)>>>5&3;var cce=blob.read_shift(2);return[type,cce]}function parse_PtgRefErr(blob,length){var type=blob.read_shift(1)>>>5&3;blob.l+=4;return[type]}var parse_PtgAdd=parseread1;var parse_PtgDiv=parseread1;var parse_PtgEq=parseread1;var parse_PtgGe=parseread1;var parse_PtgGt=parseread1;var parse_PtgIsect=parseread1;var parse_PtgLe=parseread1;var parse_PtgLt=parseread1;var parse_PtgMissArg=parseread1;var parse_PtgMul=parseread1;var parse_PtgNe=parseread1;var parse_PtgParen=parseread1;var parse_PtgPercent=parseread1;var parse_PtgPower=parseread1;var parse_PtgRange=parseread1;var parse_PtgSub=parseread1;var parse_PtgUminus=parseread1;var parse_PtgUnion=parseread1;var parse_PtgUplus=parseread1;var parse_PtgMemErr=parsenoop;var parse_PtgMemNoMem=parsenoop;var parse_PtgRefErr3d=parsenoop;var parse_PtgTbl=parsenoop;var PtgTypes={1:{n:"PtgExp",f:parse_PtgExp},2:{n:"PtgTbl",f:parse_PtgTbl},3:{n:"PtgAdd",f:parse_PtgAdd},4:{n:"PtgSub",f:parse_PtgSub},5:{n:"PtgMul",f:parse_PtgMul},6:{n:"PtgDiv",f:parse_PtgDiv},7:{n:"PtgPower",f:parse_PtgPower},8:{n:"PtgConcat",f:parse_PtgConcat},9:{n:"PtgLt",f:parse_PtgLt},10:{n:"PtgLe",f:parse_PtgLe},11:{n:"PtgEq",f:parse_PtgEq},12:{n:"PtgGe",f:parse_PtgGe},13:{n:"PtgGt",f:parse_PtgGt},14:{n:"PtgNe",f:parse_PtgNe},15:{n:"PtgIsect",f:parse_PtgIsect},16:{n:"PtgUnion",f:parse_PtgUnion},17:{n:"PtgRange",f:parse_PtgRange},18:{n:"PtgUplus",f:parse_PtgUplus},19:{n:"PtgUminus",f:parse_PtgUminus},20:{n:"PtgPercent",f:parse_PtgPercent},21:{n:"PtgParen",f:parse_PtgParen},22:{n:"PtgMissArg",f:parse_PtgMissArg},23:{n:"PtgStr",f:parse_PtgStr},28:{n:"PtgErr",f:parse_PtgErr},29:{n:"PtgBool",f:parse_PtgBool},30:{n:"PtgInt",f:parse_PtgInt},31:{n:"PtgNum",f:parse_PtgNum},32:{n:"PtgArray",f:parse_PtgArray},33:{n:"PtgFunc",f:parse_PtgFunc},34:{n:"PtgFuncVar",f:parse_PtgFuncVar},35:{n:"PtgName",f:parse_PtgName},36:{n:"PtgRef",f:parse_PtgRef},37:{n:"PtgArea",f:parse_PtgArea},38:{n:"PtgMemArea",f:parse_PtgMemArea},39:{n:"PtgMemErr",f:parse_PtgMemErr},40:{n:"PtgMemNoMem",f:parse_PtgMemNoMem},41:{n:"PtgMemFunc",f:parse_PtgMemFunc},42:{n:"PtgRefErr",f:parse_PtgRefErr},43:{n:"PtgAreaErr",f:parse_PtgAreaErr},44:{n:"PtgRefN",f:parse_PtgRefN},45:{n:"PtgAreaN",f:parse_PtgAreaN},57:{n:"PtgNameX",f:parse_PtgNameX},58:{n:"PtgRef3d",f:parse_PtgRef3d},59:{n:"PtgArea3d",f:parse_PtgArea3d},60:{n:"PtgRefErr3d",f:parse_PtgRefErr3d},61:{n:"PtgAreaErr3d",f:parse_PtgAreaErr3d},255:{}};var PtgDupes={64:32,96:32,65:33,97:33,66:34,98:34,67:35,99:35,68:36,100:36,69:37,101:37,70:38,102:38,71:39,103:39,72:40,104:40,73:41,105:41,74:42,106:42,75:43,107:43,76:44,108:44,77:45,109:45,89:57,121:57,90:58,122:58,91:59,123:59,92:60,124:60,93:61,125:61};(function(){for(var y in PtgDupes)PtgTypes[y]=PtgTypes[PtgDupes[y]]})();var Ptg18={};var Ptg19={1:{n:"PtgAttrSemi",f:parse_PtgAttrSemi},2:{n:"PtgAttrIf",f:parse_PtgAttrIf},4:{n:"PtgAttrChoose",f:parse_PtgAttrChoose},8:{n:"PtgAttrGoto",f:parse_PtgAttrGoto},16:{n:"PtgAttrSum",f:parse_PtgAttrSum},32:{n:"PtgAttrBaxcel",f:parse_PtgAttrBaxcel},64:{n:"PtgAttrSpace",f:parse_PtgAttrSpace},65:{n:"PtgAttrSpaceSemi",f:parse_PtgAttrSpaceSemi},255:{}};function parse_Formula(blob,length,opts){var cell=parse_XLSCell(blob,6);var val=parse_FormulaValue(blob,8);var flags=blob.read_shift(1);blob.read_shift(1);var chn=blob.read_shift(4);var cbf="";if(opts.biff===5)blob.l+=length-20;else cbf=parse_XLSCellParsedFormula(blob,length-20,opts);return{cell:cell,val:val[0],formula:cbf,shared:flags>>3&1,tt:val[1]}}function parse_FormulaValue(blob){var b;if(__readUInt16LE(blob,blob.l+6)!==65535)return[parse_Xnum(blob),"n"];switch(blob[blob.l]){case 0:blob.l+=8;return["String","s"];case 1:b=blob[blob.l+2]===1;blob.l+=8;return[b,"b"];case 2:b=blob[blob.l+2];blob.l+=8;return[b,"e"];case 3:blob.l+=8;return["","s"]}}function parse_RgbExtra(blob,length,rgce,opts){if(opts.biff<8)return parsenoop(blob,length);var target=blob.l+length;var o=[];for(var i=0;i!==rgce.length;++i){switch(rgce[i][0]){case"PtgArray":rgce[i][1]=parse_PtgExtraArray(blob);o.push(rgce[i][1]);break;case"PtgMemArea":rgce[i][2]=parse_PtgExtraMem(blob,rgce[i][1]);o.push(rgce[i][2]);break;default:break}}length=target-blob.l;if(length!==0)o.push(parsenoop(blob,length));return o}function parse_NameParsedFormula(blob,length,opts,cce){var target=blob.l+length;var rgce=parse_Rgce(blob,cce);var rgcb;if(target!==blob.l)rgcb=parse_RgbExtra(blob,target-blob.l,rgce,opts);return[rgce,rgcb]}function parse_XLSCellParsedFormula(blob,length,opts){var target=blob.l+length;var rgcb,cce=blob.read_shift(2);if(cce==65535)return[[],parsenoop(blob,length-2)];var rgce=parse_Rgce(blob,cce);if(length!==cce+2)rgcb=parse_RgbExtra(blob,length-cce-2,rgce,opts);return[rgce,rgcb]}function parse_SharedParsedFormula(blob,length,opts){var target=blob.l+length;var rgcb,cce=blob.read_shift(2);var rgce=parse_Rgce(blob,cce);if(cce==65535)return[[],parsenoop(blob,length-2)];if(length!==cce+2)rgcb=parse_RgbExtra(blob,target-cce-2,rgce,opts);return[rgce,rgcb]}function parse_ArrayParsedFormula(blob,length,opts,ref){var target=blob.l+length;var rgcb,cce=blob.read_shift(2);if(cce==65535)return[[],parsenoop(blob,length-2)];var rgce=parse_Rgce(blob,cce);if(length!==cce+2)rgcb=parse_RgbExtra(blob,target-cce-2,rgce,opts);return[rgce,rgcb]}function parse_Rgce(blob,length){var target=blob.l+length;var R,id,ptgs=[];while(target!=blob.l){length=target-blob.l;id=blob[blob.l];R=PtgTypes[id];if(id===24||id===25){id=blob[blob.l+1];R=(id===24?Ptg18:Ptg19)[id]}if(!R||!R.f){ptgs.push(parsenoop(blob,length))}else{ptgs.push([R.n,R.f(blob,length)])}}return ptgs}function mapper(x){return x.map(function f2(y){return y[1]}).join(",")}function stringify_formula(formula,range,cell,supbooks,opts){if(opts!==undefined&&opts.biff===5)return"BIFF5??";var _range=range!==undefined?range:{s:{c:0,r:0}};var stack=[],e1,e2,type,c,ixti,nameidx,r;if(!formula[0]||!formula[0][0])return"";for(var ff=0,fflen=formula[0].length;ff<fflen;++ff){var f=formula[0][ff];switch(f[0]){case"PtgUminus":stack.push("-"+stack.pop());break;case"PtgUplus":stack.push("+"+stack.pop());break;case"PtgPercent":stack.push(stack.pop()+"%");break;case"PtgAdd":e1=stack.pop();e2=stack.pop();stack.push(e2+"+"+e1);break;case"PtgSub":e1=stack.pop();e2=stack.pop();stack.push(e2+"-"+e1);break;case"PtgMul":e1=stack.pop();e2=stack.pop();stack.push(e2+"*"+e1);break;case"PtgDiv":e1=stack.pop();e2=stack.pop();stack.push(e2+"/"+e1);break;case"PtgPower":e1=stack.pop();e2=stack.pop();stack.push(e2+"^"+e1);break;case"PtgConcat":e1=stack.pop();e2=stack.pop();stack.push(e2+"&"+e1);break;case"PtgLt":e1=stack.pop();e2=stack.pop();stack.push(e2+"<"+e1);break;case"PtgLe":e1=stack.pop();e2=stack.pop();stack.push(e2+"<="+e1);break;case"PtgEq":e1=stack.pop();e2=stack.pop();stack.push(e2+"="+e1);break;case"PtgGe":e1=stack.pop();e2=stack.pop();stack.push(e2+">="+e1);break;case"PtgGt":e1=stack.pop();e2=stack.pop();stack.push(e2+">"+e1);break;case"PtgNe":e1=stack.pop();e2=stack.pop();stack.push(e2+"<>"+e1);break;case"PtgIsect":e1=stack.pop();e2=stack.pop();stack.push(e2+" "+e1);break;case"PtgUnion":e1=stack.pop();e2=stack.pop();stack.push(e2+","+e1);break;case"PtgRange":break;case"PtgAttrChoose":break;case"PtgAttrGoto":break;case"PtgAttrIf":break;case"PtgRef":type=f[1][0];c=shift_cell_xls(decode_cell(encode_cell(f[1][1])),_range);stack.push(encode_cell(c));break;case"PtgRefN":type=f[1][0];c=shift_cell_xls(decode_cell(encode_cell(f[1][1])),cell);stack.push(encode_cell(c));break;case"PtgRef3d":type=f[1][0];ixti=f[1][1];c=shift_cell_xls(f[1][2],_range);stack.push(supbooks[1][ixti+1]+"!"+encode_cell(c));break;case"PtgFunc":case"PtgFuncVar":var argc=f[1][0],func=f[1][1];if(!argc)argc=0;var args=stack.slice(-argc);stack.length-=argc;if(func==="User")func=args.shift();stack.push(func+"("+args.join(",")+")");break;case"PtgBool":stack.push(f[1]?"TRUE":"FALSE");break;case"PtgInt":stack.push(f[1]);break;case"PtgNum":stack.push(String(f[1]));break;case"PtgStr":stack.push('"'+f[1]+'"');break;case"PtgErr":stack.push(f[1]);break;case"PtgArea":type=f[1][0];r=shift_range_xls(f[1][1],_range);stack.push(encode_range(r));break;case"PtgArea3d":type=f[1][0];ixti=f[1][1];r=f[1][2];stack.push(supbooks[1][ixti+1]+"!"+encode_range(r));break;case"PtgAttrSum":stack.push("SUM("+stack.pop()+")");break;case"PtgAttrSemi":break;case"PtgName":nameidx=f[1][2];var lbl=supbooks[0][nameidx];var name=lbl.Name;if(name in XLSXFutureFunctions)name=XLSXFutureFunctions[name];stack.push(name);break;case"PtgNameX":var bookidx=f[1][1];nameidx=f[1][2];var externbook;if(supbooks[bookidx+1])externbook=supbooks[bookidx+1][nameidx];else if(supbooks[bookidx-1])externbook=supbooks[bookidx-1][nameidx];if(!externbook)externbook={body:"??NAMEX??"};stack.push(externbook.body);break;case"PtgParen":stack.push("("+stack.pop()+")");break;case"PtgRefErr":stack.push("#REF!");break;case"PtgExp":c={c:f[1][1],r:f[1][0]};var q={c:cell.c,r:cell.r};if(supbooks.sharedf[encode_cell(c)]){var parsedf=supbooks.sharedf[encode_cell(c)];stack.push(stringify_formula(parsedf,_range,q,supbooks,opts))}else{var fnd=false;for(e1=0;e1!=supbooks.arrayf.length;++e1){e2=supbooks.arrayf[e1];if(c.c<e2[0].s.c||c.c>e2[0].e.c)continue;if(c.r<e2[0].s.r||c.r>e2[0].e.r)continue;stack.push(stringify_formula(e2[1],_range,q,supbooks,opts))}if(!fnd)stack.push(f[1])}break;case"PtgArray":stack.push("{"+f[1].map(mapper).join(";")+"}");break;case"PtgMemArea":break;case"PtgAttrSpace":break;case"PtgTbl":break;case"PtgMemErr":break;case"PtgMissArg":stack.push("");break;case"PtgAreaErr":break;case"PtgAreaN":stack.push("");break;case"PtgRefErr3d":break;case"PtgMemFunc":break;default:throw"Unrecognized Formula Token: "+f}}return stack[0]}function parse_XLSBCellParsedFormula(data,length){var cce=data.read_shift(4);return parsenoop(data,length-4)}var PtgDataType={1:"REFERENCE",2:"VALUE",3:"ARRAY"};var Cetab={0:"BEEP",1:"OPEN",2:"OPEN.LINKS",3:"CLOSE.ALL",4:"SAVE",5:"SAVE.AS",6:"FILE.DELETE",7:"PAGE.SETUP",8:"PRINT",9:"PRINTER.SETUP",10:"QUIT",11:"NEW.WINDOW",12:"ARRANGE.ALL",13:"WINDOW.SIZE",14:"WINDOW.MOVE",15:"FULL",16:"CLOSE",17:"RUN",22:"SET.PRINT.AREA",23:"SET.PRINT.TITLES",24:"SET.PAGE.BREAK",25:"REMOVE.PAGE.BREAK",26:"FONT",27:"DISPLAY",28:"PROTECT.DOCUMENT",29:"PRECISION",30:"A1.R1C1",31:"CALCULATE.NOW",32:"CALCULATION",34:"DATA.FIND",35:"EXTRACT",36:"DATA.DELETE",37:"SET.DATABASE",38:"SET.CRITERIA",39:"SORT",40:"DATA.SERIES",41:"TABLE",42:"FORMAT.NUMBER",43:"ALIGNMENT",44:"STYLE",45:"BORDER",46:"CELL.PROTECTION",47:"COLUMN.WIDTH",48:"UNDO",49:"CUT",50:"COPY",51:"PASTE",52:"CLEAR",53:"PASTE.SPECIAL",54:"EDIT.DELETE",55:"INSERT",56:"FILL.RIGHT",57:"FILL.DOWN",61:"DEFINE.NAME",62:"CREATE.NAMES",63:"FORMULA.GOTO",64:"FORMULA.FIND",65:"SELECT.LAST.CELL",66:"SHOW.ACTIVE.CELL",67:"GALLERY.AREA",68:"GALLERY.BAR",69:"GALLERY.COLUMN",70:"GALLERY.LINE",71:"GALLERY.PIE",72:"GALLERY.SCATTER",73:"COMBINATION",74:"PREFERRED",
75:"ADD.OVERLAY",76:"GRIDLINES",77:"SET.PREFERRED",78:"AXES",79:"LEGEND",80:"ATTACH.TEXT",81:"ADD.ARROW",82:"SELECT.CHART",83:"SELECT.PLOT.AREA",84:"PATTERNS",85:"MAIN.CHART",86:"OVERLAY",87:"SCALE",88:"FORMAT.LEGEND",89:"FORMAT.TEXT",90:"EDIT.REPEAT",91:"PARSE",92:"JUSTIFY",93:"HIDE",94:"UNHIDE",95:"WORKSPACE",96:"FORMULA",97:"FORMULA.FILL",98:"FORMULA.ARRAY",99:"DATA.FIND.NEXT",100:"DATA.FIND.PREV",101:"FORMULA.FIND.NEXT",102:"FORMULA.FIND.PREV",103:"ACTIVATE",104:"ACTIVATE.NEXT",105:"ACTIVATE.PREV",106:"UNLOCKED.NEXT",107:"UNLOCKED.PREV",108:"COPY.PICTURE",109:"SELECT",110:"DELETE.NAME",111:"DELETE.FORMAT",112:"VLINE",113:"HLINE",114:"VPAGE",115:"HPAGE",116:"VSCROLL",117:"HSCROLL",118:"ALERT",119:"NEW",120:"CANCEL.COPY",121:"SHOW.CLIPBOARD",122:"MESSAGE",124:"PASTE.LINK",125:"APP.ACTIVATE",126:"DELETE.ARROW",127:"ROW.HEIGHT",128:"FORMAT.MOVE",129:"FORMAT.SIZE",130:"FORMULA.REPLACE",131:"SEND.KEYS",132:"SELECT.SPECIAL",133:"APPLY.NAMES",134:"REPLACE.FONT",135:"FREEZE.PANES",136:"SHOW.INFO",137:"SPLIT",138:"ON.WINDOW",139:"ON.DATA",140:"DISABLE.INPUT",142:"OUTLINE",143:"LIST.NAMES",144:"FILE.CLOSE",145:"SAVE.WORKBOOK",146:"DATA.FORM",147:"COPY.CHART",148:"ON.TIME",149:"WAIT",150:"FORMAT.FONT",151:"FILL.UP",152:"FILL.LEFT",153:"DELETE.OVERLAY",155:"SHORT.MENUS",159:"SET.UPDATE.STATUS",161:"COLOR.PALETTE",162:"DELETE.STYLE",163:"WINDOW.RESTORE",164:"WINDOW.MAXIMIZE",166:"CHANGE.LINK",167:"CALCULATE.DOCUMENT",168:"ON.KEY",169:"APP.RESTORE",170:"APP.MOVE",171:"APP.SIZE",172:"APP.MINIMIZE",173:"APP.MAXIMIZE",174:"BRING.TO.FRONT",175:"SEND.TO.BACK",185:"MAIN.CHART.TYPE",186:"OVERLAY.CHART.TYPE",187:"SELECT.END",188:"OPEN.MAIL",189:"SEND.MAIL",190:"STANDARD.FONT",191:"CONSOLIDATE",192:"SORT.SPECIAL",193:"GALLERY.3D.AREA",194:"GALLERY.3D.COLUMN",195:"GALLERY.3D.LINE",196:"GALLERY.3D.PIE",197:"VIEW.3D",198:"GOAL.SEEK",199:"WORKGROUP",200:"FILL.GROUP",201:"UPDATE.LINK",202:"PROMOTE",203:"DEMOTE",204:"SHOW.DETAIL",206:"UNGROUP",207:"OBJECT.PROPERTIES",208:"SAVE.NEW.OBJECT",209:"SHARE",210:"SHARE.NAME",211:"DUPLICATE",212:"APPLY.STYLE",213:"ASSIGN.TO.OBJECT",214:"OBJECT.PROTECTION",215:"HIDE.OBJECT",216:"SET.EXTRACT",217:"CREATE.PUBLISHER",218:"SUBSCRIBE.TO",219:"ATTRIBUTES",220:"SHOW.TOOLBAR",222:"PRINT.PREVIEW",223:"EDIT.COLOR",224:"SHOW.LEVELS",225:"FORMAT.MAIN",226:"FORMAT.OVERLAY",227:"ON.RECALC",228:"EDIT.SERIES",229:"DEFINE.STYLE",240:"LINE.PRINT",243:"ENTER.DATA",249:"GALLERY.RADAR",250:"MERGE.STYLES",251:"EDITION.OPTIONS",252:"PASTE.PICTURE",253:"PASTE.PICTURE.LINK",254:"SPELLING",256:"ZOOM",259:"INSERT.OBJECT",260:"WINDOW.MINIMIZE",265:"SOUND.NOTE",266:"SOUND.PLAY",267:"FORMAT.SHAPE",268:"EXTEND.POLYGON",269:"FORMAT.AUTO",272:"GALLERY.3D.BAR",273:"GALLERY.3D.SURFACE",274:"FILL.AUTO",276:"CUSTOMIZE.TOOLBAR",277:"ADD.TOOL",278:"EDIT.OBJECT",279:"ON.DOUBLECLICK",280:"ON.ENTRY",281:"WORKBOOK.ADD",282:"WORKBOOK.MOVE",283:"WORKBOOK.COPY",284:"WORKBOOK.OPTIONS",285:"SAVE.WORKSPACE",288:"CHART.WIZARD",289:"DELETE.TOOL",290:"MOVE.TOOL",291:"WORKBOOK.SELECT",292:"WORKBOOK.ACTIVATE",293:"ASSIGN.TO.TOOL",295:"COPY.TOOL",296:"RESET.TOOL",297:"CONSTRAIN.NUMERIC",298:"PASTE.TOOL",302:"WORKBOOK.NEW",305:"SCENARIO.CELLS",306:"SCENARIO.DELETE",307:"SCENARIO.ADD",308:"SCENARIO.EDIT",309:"SCENARIO.SHOW",310:"SCENARIO.SHOW.NEXT",311:"SCENARIO.SUMMARY",312:"PIVOT.TABLE.WIZARD",313:"PIVOT.FIELD.PROPERTIES",314:"PIVOT.FIELD",315:"PIVOT.ITEM",316:"PIVOT.ADD.FIELDS",318:"OPTIONS.CALCULATION",319:"OPTIONS.EDIT",320:"OPTIONS.VIEW",321:"ADDIN.MANAGER",322:"MENU.EDITOR",323:"ATTACH.TOOLBARS",324:"VBAActivate",325:"OPTIONS.CHART",328:"VBA.INSERT.FILE",330:"VBA.PROCEDURE.DEFINITION",336:"ROUTING.SLIP",338:"ROUTE.DOCUMENT",339:"MAIL.LOGON",342:"INSERT.PICTURE",343:"EDIT.TOOL",344:"GALLERY.DOUGHNUT",350:"CHART.TREND",352:"PIVOT.ITEM.PROPERTIES",354:"WORKBOOK.INSERT",355:"OPTIONS.TRANSITION",356:"OPTIONS.GENERAL",370:"FILTER.ADVANCED",373:"MAIL.ADD.MAILER",374:"MAIL.DELETE.MAILER",375:"MAIL.REPLY",376:"MAIL.REPLY.ALL",377:"MAIL.FORWARD",378:"MAIL.NEXT.LETTER",379:"DATA.LABEL",380:"INSERT.TITLE",381:"FONT.PROPERTIES",382:"MACRO.OPTIONS",383:"WORKBOOK.HIDE",384:"WORKBOOK.UNHIDE",385:"WORKBOOK.DELETE",386:"WORKBOOK.NAME",388:"GALLERY.CUSTOM",390:"ADD.CHART.AUTOFORMAT",391:"DELETE.CHART.AUTOFORMAT",392:"CHART.ADD.DATA",393:"AUTO.OUTLINE",394:"TAB.ORDER",395:"SHOW.DIALOG",396:"SELECT.ALL",397:"UNGROUP.SHEETS",398:"SUBTOTAL.CREATE",399:"SUBTOTAL.REMOVE",400:"RENAME.OBJECT",412:"WORKBOOK.SCROLL",413:"WORKBOOK.NEXT",414:"WORKBOOK.PREV",415:"WORKBOOK.TAB.SPLIT",416:"FULL.SCREEN",417:"WORKBOOK.PROTECT",420:"SCROLLBAR.PROPERTIES",421:"PIVOT.SHOW.PAGES",422:"TEXT.TO.COLUMNS",423:"FORMAT.CHARTTYPE",424:"LINK.FORMAT",425:"TRACER.DISPLAY",430:"TRACER.NAVIGATE",431:"TRACER.CLEAR",432:"TRACER.ERROR",433:"PIVOT.FIELD.GROUP",434:"PIVOT.FIELD.UNGROUP",435:"CHECKBOX.PROPERTIES",436:"LABEL.PROPERTIES",437:"LISTBOX.PROPERTIES",438:"EDITBOX.PROPERTIES",439:"PIVOT.REFRESH",440:"LINK.COMBO",441:"OPEN.TEXT",442:"HIDE.DIALOG",443:"SET.DIALOG.FOCUS",444:"ENABLE.OBJECT",445:"PUSHBUTTON.PROPERTIES",446:"SET.DIALOG.DEFAULT",447:"FILTER",448:"FILTER.SHOW.ALL",449:"CLEAR.OUTLINE",450:"FUNCTION.WIZARD",451:"ADD.LIST.ITEM",452:"SET.LIST.ITEM",453:"REMOVE.LIST.ITEM",454:"SELECT.LIST.ITEM",455:"SET.CONTROL.VALUE",456:"SAVE.COPY.AS",458:"OPTIONS.LISTS.ADD",459:"OPTIONS.LISTS.DELETE",460:"SERIES.AXES",461:"SERIES.X",462:"SERIES.Y",463:"ERRORBAR.X",464:"ERRORBAR.Y",465:"FORMAT.CHART",466:"SERIES.ORDER",467:"MAIL.LOGOFF",468:"CLEAR.ROUTING.SLIP",469:"APP.ACTIVATE.MICROSOFT",470:"MAIL.EDIT.MAILER",471:"ON.SHEET",472:"STANDARD.WIDTH",473:"SCENARIO.MERGE",474:"SUMMARY.INFO",475:"FIND.FILE",476:"ACTIVE.CELL.FONT",477:"ENABLE.TIPWIZARD",478:"VBA.MAKE.ADDIN",480:"INSERTDATATABLE",481:"WORKGROUP.OPTIONS",482:"MAIL.SEND.MAILER",485:"AUTOCORRECT",489:"POST.DOCUMENT",491:"PICKLIST",493:"VIEW.SHOW",494:"VIEW.DEFINE",495:"VIEW.DELETE",509:"SHEET.BACKGROUND",510:"INSERT.MAP.OBJECT",511:"OPTIONS.MENONO",517:"MSOCHECKS",518:"NORMAL",519:"LAYOUT",520:"RM.PRINT.AREA",521:"CLEAR.PRINT.AREA",522:"ADD.PRINT.AREA",523:"MOVE.BRK",545:"HIDECURR.NOTE",546:"HIDEALL.NOTES",547:"DELETE.NOTE",548:"TRAVERSE.NOTES",549:"ACTIVATE.NOTES",620:"PROTECT.REVISIONS",621:"UNPROTECT.REVISIONS",647:"OPTIONS.ME",653:"WEB.PUBLISH",667:"NEWWEBQUERY",673:"PIVOT.TABLE.CHART",753:"OPTIONS.SAVE",755:"OPTIONS.SPELL",808:"HIDEALL.INKANNOTS"};var Ftab={0:"COUNT",1:"IF",2:"ISNA",3:"ISERROR",4:"SUM",5:"AVERAGE",6:"MIN",7:"MAX",8:"ROW",9:"COLUMN",10:"NA",11:"NPV",12:"STDEV",13:"DOLLAR",14:"FIXED",15:"SIN",16:"COS",17:"TAN",18:"ATAN",19:"PI",20:"SQRT",21:"EXP",22:"LN",23:"LOG10",24:"ABS",25:"INT",26:"SIGN",27:"ROUND",28:"LOOKUP",29:"INDEX",30:"REPT",31:"MID",32:"LEN",33:"VALUE",34:"TRUE",35:"FALSE",36:"AND",37:"OR",38:"NOT",39:"MOD",40:"DCOUNT",41:"DSUM",42:"DAVERAGE",43:"DMIN",44:"DMAX",45:"DSTDEV",46:"VAR",47:"DVAR",48:"TEXT",49:"LINEST",50:"TREND",51:"LOGEST",52:"GROWTH",53:"GOTO",54:"HALT",55:"RETURN",56:"PV",57:"FV",58:"NPER",59:"PMT",60:"RATE",61:"MIRR",62:"IRR",63:"RAND",64:"MATCH",65:"DATE",66:"TIME",67:"DAY",68:"MONTH",69:"YEAR",70:"WEEKDAY",71:"HOUR",72:"MINUTE",73:"SECOND",74:"NOW",75:"AREAS",76:"ROWS",77:"COLUMNS",78:"OFFSET",79:"ABSREF",80:"RELREF",81:"ARGUMENT",82:"SEARCH",83:"TRANSPOSE",84:"ERROR",85:"STEP",86:"TYPE",87:"ECHO",88:"SET.NAME",89:"CALLER",90:"DEREF",91:"WINDOWS",92:"SERIES",93:"DOCUMENTS",94:"ACTIVE.CELL",95:"SELECTION",96:"RESULT",97:"ATAN2",98:"ASIN",99:"ACOS",100:"CHOOSE",101:"HLOOKUP",102:"VLOOKUP",103:"LINKS",104:"INPUT",105:"ISREF",106:"GET.FORMULA",107:"GET.NAME",108:"SET.VALUE",109:"LOG",110:"EXEC",111:"CHAR",112:"LOWER",113:"UPPER",114:"PROPER",115:"LEFT",116:"RIGHT",117:"EXACT",118:"TRIM",119:"REPLACE",120:"SUBSTITUTE",121:"CODE",122:"NAMES",123:"DIRECTORY",124:"FIND",125:"CELL",126:"ISERR",127:"ISTEXT",128:"ISNUMBER",129:"ISBLANK",130:"T",131:"N",132:"FOPEN",133:"FCLOSE",134:"FSIZE",135:"FREADLN",136:"FREAD",137:"FWRITELN",138:"FWRITE",139:"FPOS",140:"DATEVALUE",141:"TIMEVALUE",142:"SLN",143:"SYD",144:"DDB",145:"GET.DEF",146:"REFTEXT",147:"TEXTREF",148:"INDIRECT",149:"REGISTER",150:"CALL",151:"ADD.BAR",152:"ADD.MENU",153:"ADD.COMMAND",154:"ENABLE.COMMAND",155:"CHECK.COMMAND",156:"RENAME.COMMAND",157:"SHOW.BAR",158:"DELETE.MENU",159:"DELETE.COMMAND",160:"GET.CHART.ITEM",161:"DIALOG.BOX",162:"CLEAN",163:"MDETERM",164:"MINVERSE",165:"MMULT",166:"FILES",167:"IPMT",168:"PPMT",169:"COUNTA",170:"CANCEL.KEY",171:"FOR",172:"WHILE",173:"BREAK",174:"NEXT",175:"INITIATE",176:"REQUEST",177:"POKE",178:"EXECUTE",179:"TERMINATE",180:"RESTART",181:"HELP",182:"GET.BAR",183:"PRODUCT",184:"FACT",185:"GET.CELL",186:"GET.WORKSPACE",187:"GET.WINDOW",188:"GET.DOCUMENT",189:"DPRODUCT",190:"ISNONTEXT",191:"GET.NOTE",192:"NOTE",193:"STDEVP",194:"VARP",195:"DSTDEVP",196:"DVARP",197:"TRUNC",198:"ISLOGICAL",199:"DCOUNTA",200:"DELETE.BAR",201:"UNREGISTER",204:"USDOLLAR",205:"FINDB",206:"SEARCHB",207:"REPLACEB",208:"LEFTB",209:"RIGHTB",210:"MIDB",211:"LENB",212:"ROUNDUP",213:"ROUNDDOWN",214:"ASC",215:"DBCS",216:"RANK",219:"ADDRESS",220:"DAYS360",221:"TODAY",222:"VDB",223:"ELSE",224:"ELSE.IF",225:"END.IF",226:"FOR.CELL",227:"MEDIAN",228:"SUMPRODUCT",229:"SINH",230:"COSH",231:"TANH",232:"ASINH",233:"ACOSH",234:"ATANH",235:"DGET",236:"CREATE.OBJECT",237:"VOLATILE",238:"LAST.ERROR",239:"CUSTOM.UNDO",240:"CUSTOM.REPEAT",241:"FORMULA.CONVERT",242:"GET.LINK.INFO",243:"TEXT.BOX",244:"INFO",245:"GROUP",246:"GET.OBJECT",247:"DB",248:"PAUSE",251:"RESUME",252:"FREQUENCY",253:"ADD.TOOLBAR",254:"DELETE.TOOLBAR",255:"User",256:"RESET.TOOLBAR",257:"EVALUATE",258:"GET.TOOLBAR",259:"GET.TOOL",260:"SPELLING.CHECK",261:"ERROR.TYPE",262:"APP.TITLE",263:"WINDOW.TITLE",264:"SAVE.TOOLBAR",265:"ENABLE.TOOL",266:"PRESS.TOOL",267:"REGISTER.ID",268:"GET.WORKBOOK",269:"AVEDEV",270:"BETADIST",271:"GAMMALN",272:"BETAINV",273:"BINOMDIST",274:"CHIDIST",275:"CHIINV",276:"COMBIN",277:"CONFIDENCE",278:"CRITBINOM",279:"EVEN",280:"EXPONDIST",281:"FDIST",282:"FINV",283:"FISHER",284:"FISHERINV",285:"FLOOR",286:"GAMMADIST",287:"GAMMAINV",288:"CEILING",289:"HYPGEOMDIST",290:"LOGNORMDIST",291:"LOGINV",292:"NEGBINOMDIST",293:"NORMDIST",294:"NORMSDIST",295:"NORMINV",296:"NORMSINV",297:"STANDARDIZE",298:"ODD",299:"PERMUT",300:"POISSON",301:"TDIST",302:"WEIBULL",303:"SUMXMY2",304:"SUMX2MY2",305:"SUMX2PY2",306:"CHITEST",307:"CORREL",308:"COVAR",309:"FORECAST",310:"FTEST",311:"INTERCEPT",312:"PEARSON",313:"RSQ",314:"STEYX",315:"SLOPE",316:"TTEST",317:"PROB",318:"DEVSQ",319:"GEOMEAN",320:"HARMEAN",321:"SUMSQ",322:"KURT",323:"SKEW",324:"ZTEST",325:"LARGE",326:"SMALL",327:"QUARTILE",328:"PERCENTILE",329:"PERCENTRANK",330:"MODE",331:"TRIMMEAN",332:"TINV",334:"MOVIE.COMMAND",335:"GET.MOVIE",336:"CONCATENATE",337:"POWER",338:"PIVOT.ADD.DATA",339:"GET.PIVOT.TABLE",340:"GET.PIVOT.FIELD",341:"GET.PIVOT.ITEM",342:"RADIANS",343:"DEGREES",344:"SUBTOTAL",345:"SUMIF",346:"COUNTIF",347:"COUNTBLANK",348:"SCENARIO.GET",349:"OPTIONS.LISTS.GET",350:"ISPMT",351:"DATEDIF",352:"DATESTRING",353:"NUMBERSTRING",354:"ROMAN",355:"OPEN.DIALOG",356:"SAVE.DIALOG",357:"VIEW.GET",358:"GETPIVOTDATA",359:"HYPERLINK",360:"PHONETIC",361:"AVERAGEA",362:"MAXA",363:"MINA",364:"STDEVPA",365:"VARPA",366:"STDEVA",367:"VARA",368:"BAHTTEXT",369:"THAIDAYOFWEEK",370:"THAIDIGIT",371:"THAIMONTHOFYEAR",372:"THAINUMSOUND",373:"THAINUMSTRING",374:"THAISTRINGLENGTH",375:"ISTHAIDIGIT",376:"ROUNDBAHTDOWN",377:"ROUNDBAHTUP",378:"THAIYEAR",379:"RTD"};var FtabArgc={2:1,3:1,15:1,16:1,17:1,18:1,20:1,21:1,22:1,23:1,24:1,25:1,26:1,27:2,30:2,31:3,32:1,33:1,38:1,39:2,40:3,41:3,42:3,43:3,44:3,45:3,47:3,48:2,53:1,61:3,65:3,66:3,67:1,68:1,69:1,71:1,72:1,73:1,75:1,76:1,77:1,79:2,80:2,83:1,86:1,90:1,97:2,98:1,99:1,105:1,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,162:1,163:1,164:1,165:2,172:1,175:2,176:2,177:3,178:2,179:1,184:1,189:3,190:1,195:3,196:3,198:1,199:3,201:1,207:4,210:3,211:1,212:2,213:2,214:1,215:1,229:1,230:1,231:1,232:1,233:1,234:1,235:3,244:1,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,65535:0};var XLSXFutureFunctions={"_xlfn.ACOT":"ACOT","_xlfn.ACOTH":"ACOTH","_xlfn.AGGREGATE":"AGGREGATE","_xlfn.ARABIC":"ARABIC","_xlfn.AVERAGEIF":"AVERAGEIF","_xlfn.AVERAGEIFS":"AVERAGEIFS","_xlfn.BASE":"BASE","_xlfn.BETA.DIST":"BETA.DIST","_xlfn.BETA.INV":"BETA.INV","_xlfn.BINOM.DIST":"BINOM.DIST","_xlfn.BINOM.DIST.RANGE":"BINOM.DIST.RANGE","_xlfn.BINOM.INV":"BINOM.INV","_xlfn.BITAND":"BITAND","_xlfn.BITLSHIFT":"BITLSHIFT","_xlfn.BITOR":"BITOR","_xlfn.BITRSHIFT":"BITRSHIFT","_xlfn.BITXOR":"BITXOR","_xlfn.CEILING.MATH":"CEILING.MATH","_xlfn.CEILING.PRECISE":"CEILING.PRECISE","_xlfn.CHISQ.DIST":"CHISQ.DIST","_xlfn.CHISQ.DIST.RT":"CHISQ.DIST.RT","_xlfn.CHISQ.INV":"CHISQ.INV","_xlfn.CHISQ.INV.RT":"CHISQ.INV.RT","_xlfn.CHISQ.TEST":"CHISQ.TEST","_xlfn.COMBINA":"COMBINA","_xlfn.CONFIDENCE.NORM":"CONFIDENCE.NORM","_xlfn.CONFIDENCE.T":"CONFIDENCE.T","_xlfn.COT":"COT","_xlfn.COTH":"COTH","_xlfn.COUNTIFS":"COUNTIFS","_xlfn.COVARIANCE.P":"COVARIANCE.P","_xlfn.COVARIANCE.S":"COVARIANCE.S","_xlfn.CSC":"CSC","_xlfn.CSCH":"CSCH","_xlfn.DAYS":"DAYS","_xlfn.DECIMAL":"DECIMAL","_xlfn.ECMA.CEILING":"ECMA.CEILING","_xlfn.ERF.PRECISE":"ERF.PRECISE","_xlfn.ERFC.PRECISE":"ERFC.PRECISE","_xlfn.EXPON.DIST":"EXPON.DIST","_xlfn.F.DIST":"F.DIST","_xlfn.F.DIST.RT":"F.DIST.RT","_xlfn.F.INV":"F.INV","_xlfn.F.INV.RT":"F.INV.RT","_xlfn.F.TEST":"F.TEST","_xlfn.FILTERXML":"FILTERXML","_xlfn.FLOOR.MATH":"FLOOR.MATH","_xlfn.FLOOR.PRECISE":"FLOOR.PRECISE","_xlfn.FORMULATEXT":"FORMULATEXT","_xlfn.GAMMA":"GAMMA","_xlfn.GAMMA.DIST":"GAMMA.DIST","_xlfn.GAMMA.INV":"GAMMA.INV","_xlfn.GAMMALN.PRECISE":"GAMMALN.PRECISE","_xlfn.GAUSS":"GAUSS","_xlfn.HYPGEOM.DIST":"HYPGEOM.DIST","_xlfn.IFNA":"IFNA","_xlfn.IFERROR":"IFERROR","_xlfn.IMCOSH":"IMCOSH","_xlfn.IMCOT":"IMCOT","_xlfn.IMCSC":"IMCSC","_xlfn.IMCSCH":"IMCSCH","_xlfn.IMSEC":"IMSEC","_xlfn.IMSECH":"IMSECH","_xlfn.IMSINH":"IMSINH","_xlfn.IMTAN":"IMTAN","_xlfn.ISFORMULA":"ISFORMULA","_xlfn.ISO.CEILING":"ISO.CEILING","_xlfn.ISOWEEKNUM":"ISOWEEKNUM","_xlfn.LOGNORM.DIST":"LOGNORM.DIST","_xlfn.LOGNORM.INV":"LOGNORM.INV","_xlfn.MODE.MULT":"MODE.MULT","_xlfn.MODE.SNGL":"MODE.SNGL","_xlfn.MUNIT":"MUNIT","_xlfn.NEGBINOM.DIST":"NEGBINOM.DIST","_xlfn.NETWORKDAYS.INTL":"NETWORKDAYS.INTL","_xlfn.NIGBINOM":"NIGBINOM","_xlfn.NORM.DIST":"NORM.DIST","_xlfn.NORM.INV":"NORM.INV","_xlfn.NORM.S.DIST":"NORM.S.DIST","_xlfn.NORM.S.INV":"NORM.S.INV","_xlfn.NUMBERVALUE":"NUMBERVALUE","_xlfn.PDURATION":"PDURATION","_xlfn.PERCENTILE.EXC":"PERCENTILE.EXC","_xlfn.PERCENTILE.INC":"PERCENTILE.INC","_xlfn.PERCENTRANK.EXC":"PERCENTRANK.EXC","_xlfn.PERCENTRANK.INC":"PERCENTRANK.INC","_xlfn.PERMUTATIONA":"PERMUTATIONA","_xlfn.PHI":"PHI","_xlfn.POISSON.DIST":"POISSON.DIST","_xlfn.QUARTILE.EXC":"QUARTILE.EXC","_xlfn.QUARTILE.INC":"QUARTILE.INC","_xlfn.QUERYSTRING":"QUERYSTRING","_xlfn.RANK.AVG":"RANK.AVG","_xlfn.RANK.EQ":"RANK.EQ","_xlfn.RRI":"RRI","_xlfn.SEC":"SEC","_xlfn.SECH":"SECH","_xlfn.SHEET":"SHEET","_xlfn.SHEETS":"SHEETS","_xlfn.SKEW.P":"SKEW.P","_xlfn.STDEV.P":"STDEV.P","_xlfn.STDEV.S":"STDEV.S","_xlfn.SUMIFS":"SUMIFS","_xlfn.T.DIST":"T.DIST","_xlfn.T.DIST.2T":"T.DIST.2T","_xlfn.T.DIST.RT":"T.DIST.RT","_xlfn.T.INV":"T.INV","_xlfn.T.INV.2T":"T.INV.2T","_xlfn.T.TEST":"T.TEST","_xlfn.UNICHAR":"UNICHAR","_xlfn.UNICODE":"UNICODE","_xlfn.VAR.P":"VAR.P","_xlfn.VAR.S":"VAR.S","_xlfn.WEBSERVICE":"WEBSERVICE","_xlfn.WEIBULL.DIST":"WEIBULL.DIST","_xlfn.WORKDAY.INTL":"WORKDAY.INTL","_xlfn.XOR":"XOR","_xlfn.Z.TEST":"Z.TEST"};var strs={};var _ssfopts={};RELS.WS="http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet";function get_sst_id(sst,str){for(var i=0,len=sst.length;i<len;++i)if(sst[i].t===str){sst.Count++;return i}sst[len]={t:str};sst.Count++;sst.Unique++;return len}function get_cell_style(styles,cell,opts){if(typeof style_builder!="undefined"){if(/^\d+$/.exec(cell.s)){return cell.s}if(cell.s&&cell.s==+cell.s){return cell.s}var s=cell.s||{};if(cell.z)s.numFmt=cell.z;return style_builder.addStyle(s)}else{var z=opts.revssf[cell.z!=null?cell.z:"General"];for(var i=0,len=styles.length;i!=len;++i)if(styles[i].numFmtId===z)return i;styles[len]={numFmtId:z,fontId:0,fillId:0,borderId:0,xfId:0,applyNumberFormat:1};return len}}function get_cell_style_csf(cellXf){if(cellXf){var s={};if(typeof cellXf.numFmtId!=undefined){s.numFmt=SSF._table[cellXf.numFmtId]}if(cellXf.fillId){s.fill=styles.Fills[cellXf.fillId]}if(cellXf.fontId){s.font=styles.Fonts[cellXf.fontId]}if(cellXf.borderId){s.border=styles.Borders[cellXf.borderId]}if(cellXf.applyAlignment==1){s.alignment=cellXf.alignment}return JSON.parse(JSON.stringify(s))}return null}function safe_format(p,fmtid,fillid,opts){try{if(p.t==="e")p.w=p.w||BErr[p.v];else if(fmtid===0){if(p.t==="n"){if((p.v|0)===p.v)p.w=SSF._general_int(p.v,_ssfopts);else p.w=SSF._general_num(p.v,_ssfopts)}else if(p.t==="d"){var dd=datenum(p.v);if((dd|0)===dd)p.w=SSF._general_int(dd,_ssfopts);else p.w=SSF._general_num(dd,_ssfopts)}else if(p.v===undefined)return"";else p.w=SSF._general(p.v,_ssfopts)}else if(p.t==="d")p.w=SSF.format(fmtid,datenum(p.v),_ssfopts);else p.w=SSF.format(fmtid,p.v,_ssfopts);if(opts.cellNF)p.z=SSF._table[fmtid]}catch(e){if(opts.WTF)throw e}}function parse_ws_xml_dim(ws,s){var d=safe_decode_range(s);if(d.s.r<=d.e.r&&d.s.c<=d.e.c&&d.s.r>=0&&d.s.c>=0)ws["!ref"]=encode_range(d)}var mergecregex=/<mergeCell ref="[A-Z0-9:]+"\s*\/>/g;var sheetdataregex=/<(?:\w+:)?sheetData>([^\u2603]*)<\/(?:\w+:)?sheetData>/;var hlinkregex=/<hyperlink[^>]*\/>/g;var dimregex=/"(\w*:\w*)"/;var colregex=/<col[^>]*\/>/g;function parse_ws_xml(data,opts,rels){if(!data)return data;var s={};var ridx=data.indexOf("<dimension");if(ridx>0){var ref=data.substr(ridx,50).match(dimregex);if(ref!=null)parse_ws_xml_dim(s,ref[1])}var mergecells=[];if(data.indexOf("</mergeCells>")!==-1){var merges=data.match(mergecregex);for(ridx=0;ridx!=merges.length;++ridx)mergecells[ridx]=safe_decode_range(merges[ridx].substr(merges[ridx].indexOf('"')+1))}var columns=[];if(opts.cellStyles&&data.indexOf("</cols>")!==-1){var cols=data.match(colregex);parse_ws_xml_cols(columns,cols)}var refguess={s:{r:1e6,c:1e6},e:{r:0,c:0}};var mtch=data.match(sheetdataregex);if(mtch)parse_ws_xml_data(mtch[1],s,opts,refguess);if(data.indexOf("</hyperlinks>")!==-1)parse_ws_xml_hlinks(s,data.match(hlinkregex),rels);if(!s["!ref"]&&refguess.e.c>=refguess.s.c&&refguess.e.r>=refguess.s.r)s["!ref"]=encode_range(refguess);if(opts.sheetRows>0&&s["!ref"]){var tmpref=safe_decode_range(s["!ref"]);if(opts.sheetRows<+tmpref.e.r){tmpref.e.r=opts.sheetRows-1;if(tmpref.e.r>refguess.e.r)tmpref.e.r=refguess.e.r;if(tmpref.e.r<tmpref.s.r)tmpref.s.r=tmpref.e.r;if(tmpref.e.c>refguess.e.c)tmpref.e.c=refguess.e.c;if(tmpref.e.c<tmpref.s.c)tmpref.s.c=tmpref.e.c;s["!fullref"]=s["!ref"];s["!ref"]=encode_range(tmpref)}}if(mergecells.length>0)s["!merges"]=mergecells;if(columns.length>0)s["!cols"]=columns;return s}function write_ws_xml_merges(merges){if(merges.length==0)return"";var o='<mergeCells count="'+merges.length+'">';for(var i=0;i!=merges.length;++i)o+='<mergeCell ref="'+encode_range(merges[i])+'"/>';return o+"</mergeCells>"}function write_ws_xml_pagesetup(setup){var pageSetup=writextag("pageSetup",null,{scale:setup.scale||"100",orientation:setup.orientation||"portrait",horizontalDpi:setup.horizontalDpi||"4294967292",verticalDpi:setup.verticalDpi||"4294967292"});return pageSetup}function parse_ws_xml_hlinks(s,data,rels){for(var i=0;i!=data.length;++i){var val=parsexmltag(data[i],true);if(!val.ref)return;var rel=rels?rels["!id"][val.id]:null;if(rel){val.Target=rel.Target;if(val.location)val.Target+="#"+val.location;val.Rel=rel}else{val.Target=val.location;rel={Target:val.location,TargetMode:"Internal"};val.Rel=rel}var rng=safe_decode_range(val.ref);for(var R=rng.s.r;R<=rng.e.r;++R)for(var C=rng.s.c;C<=rng.e.c;++C){var addr=encode_cell({c:C,r:R});if(!s[addr])s[addr]={t:"stub",v:undefined};s[addr].l=val}}}function parse_ws_xml_cols(columns,cols){var seencol=false;for(var coli=0;coli!=cols.length;++coli){var coll=parsexmltag(cols[coli],true);var colm=parseInt(coll.min,10)-1,colM=parseInt(coll.max,10)-1;delete coll.min;delete coll.max;if(!seencol&&coll.width){seencol=true;find_mdw(+coll.width,coll)}if(coll.width){coll.wpx=width2px(+coll.width);coll.wch=px2char(coll.wpx);coll.MDW=MDW}while(colm<=colM)columns[colm++]=coll}}function write_ws_xml_cols(ws,cols){var o=["<cols>"],col,width;for(var i=0;i!=cols.length;++i){if(!(col=cols[i]))continue;var p={min:i+1,max:i+1};width=-1;if(col.wpx)width=px2char(col.wpx);else if(col.wch)width=col.wch;if(width>-1){p.width=char2width(width);p.customWidth=1}o[o.length]=writextag("col",null,p)}o[o.length]="</cols>";return o.join("")}function write_ws_xml_cell(cell,ref,ws,opts,idx,wb){if(cell.v===undefined&&cell.s===undefined)return"";var vv="";var oldt=cell.t,oldv=cell.v;switch(cell.t){case"b":vv=cell.v?"1":"0";break;case"n":vv=""+cell.v;break;case"e":vv=BErr[cell.v];break;case"d":if(opts.cellDates)vv=new Date(cell.v).toISOString();else{cell.t="n";vv=""+(cell.v=datenum(cell.v));if(typeof cell.z==="undefined")cell.z=SSF._table[14]}break;default:vv=cell.v;break}var v=writetag("v",escapexml(vv)),o={r:ref};var os=get_cell_style(opts.cellXfs,cell,opts);if(os!==0)o.s=os;switch(cell.t){case"n":break;case"d":o.t="d";break;case"b":o.t="b";break;case"e":o.t="e";break;default:if(opts.bookSST){v=writetag("v",""+get_sst_id(opts.Strings,cell.v));o.t="s";break}o.t="str";break}if(cell.t!=oldt){cell.t=oldt;cell.v=oldv}return writextag("c",v,o)}var parse_ws_xml_data=function parse_ws_xml_data_factory(){var cellregex=/<(?:\w+:)?c[ >]/,rowregex=/<\/(?:\w+:)?row>/;var rregex=/r=["']([^"']*)["']/,isregex=/<is>([\S\s]*?)<\/is>/;var match_v=matchtag("v"),match_f=matchtag("f");return function parse_ws_xml_data(sdata,s,opts,guess){var ri=0,x="",cells=[],cref=[],idx=0,i=0,cc=0,d="",p;var tag,tagr=0,tagc=0;var sstr;var fmtid=0,fillid=0,do_format=Array.isArray(styles.CellXf),cf;for(var marr=sdata.split(rowregex),mt=0,marrlen=marr.length;mt!=marrlen;++mt){x=marr[mt].trim();var xlen=x.length;if(xlen===0)continue;for(ri=0;ri<xlen;++ri)if(x.charCodeAt(ri)===62)break;++ri;tag=parsexmltag(x.substr(0,ri),true);tagr=typeof tag.r!=="undefined"?parseInt(tag.r,10):tagr+1;tagc=-1;if(opts.sheetRows&&opts.sheetRows<tagr)continue;if(guess.s.r>tagr-1)guess.s.r=tagr-1;if(guess.e.r<tagr-1)guess.e.r=tagr-1;cells=x.substr(ri).split(cellregex);for(ri=typeof tag.r==="undefined"?0:1;ri!=cells.length;++ri){x=cells[ri].trim();if(x.length===0)continue;cref=x.match(rregex);idx=ri;i=0;cc=0;x="<c "+(x.substr(0,1)=="<"?">":"")+x;if(cref!==null&&cref.length===2){idx=0;d=cref[1];for(i=0;i!=d.length;++i){if((cc=d.charCodeAt(i)-64)<1||cc>26)break;idx=26*idx+cc}--idx;tagc=idx}else++tagc;for(i=0;i!=x.length;++i)if(x.charCodeAt(i)===62)break;++i;tag=parsexmltag(x.substr(0,i),true);if(!tag.r)tag.r=utils.encode_cell({r:tagr-1,c:tagc});d=x.substr(i);p={t:""};if((cref=d.match(match_v))!==null&&cref[1]!=="")p.v=unescapexml(cref[1]);if(opts.cellFormula&&(cref=d.match(match_f))!==null)p.f=unescapexml(cref[1]);if(tag.t===undefined&&tag.s===undefined&&p.v===undefined){if(!opts.sheetStubs)continue;p.t="stub"}else p.t=tag.t||"n";if(guess.s.c>idx)guess.s.c=idx;if(guess.e.c<idx)guess.e.c=idx;switch(p.t){case"n":p.v=parseFloat(p.v);if(isNaN(p.v))p.v="";break;case"s":sstr=strs[parseInt(p.v,10)];p.v=sstr.t;p.r=sstr.r;if(opts.cellHTML)p.h=sstr.h;break;case"str":p.t="s";p.v=p.v!=null?utf8read(p.v):"";if(opts.cellHTML)p.h=p.v;break;case"inlineStr":cref=d.match(isregex);p.t="s";if(cref!==null){sstr=parse_si(cref[1]);p.v=sstr.t}else p.v="";break;case"b":p.v=parsexmlbool(p.v);break;case"d":if(!opts.cellDates){p.v=datenum(p.v);p.t="n"}break;case"e":p.w=p.v;p.v=RBErr[p.v];break}fmtid=fillid=0;if(do_format&&tag.s!==undefined){cf=styles.CellXf[tag.s];if(opts.cellStyles){p.s=get_cell_style_csf(cf)}if(cf!=null){if(cf.numFmtId!=null)fmtid=cf.numFmtId;if(opts.cellStyles&&cf.fillId!=null)fillid=cf.fillId}}safe_format(p,fmtid,fillid,opts);s[tag.r]=p}}}}();function write_ws_xml_data(ws,opts,idx,wb){var o=[],r=[],range=safe_decode_range(ws["!ref"]),cell,ref,rr="",cols=[],R,C;for(C=range.s.c;C<=range.e.c;++C)cols[C]=encode_col(C);for(R=range.s.r;R<=range.e.r;++R){r=[];rr=encode_row(R);for(C=range.s.c;C<=range.e.c;++C){ref=cols[C]+rr;if(ws[ref]===undefined)continue;if((cell=write_ws_xml_cell(ws[ref],ref,ws,opts,idx,wb))!=null)r.push(cell)}if(r.length>0)o[o.length]=writextag("row",r.join(""),{r:rr})}return o.join("")}var WS_XML_ROOT=writextag("worksheet",null,{xmlns:XMLNS.main[0],"xmlns:r":XMLNS.r});function write_ws_xml(idx,opts,wb){var o=[XML_HEADER,WS_XML_ROOT];var s=wb.SheetNames[idx],sidx=0,rdata="";var ws=wb.Sheets[s];if(ws===undefined)ws={};var ref=ws["!ref"];if(ref===undefined)ref="A1";o[o.length]=writextag("dimension",null,{ref:ref});var kids=[];if(ws["!freeze"]){var pane="";pane=writextag("pane",null,ws["!freeze"]);kids.push(pane);var selection=writextag("selection",null,{pane:"topLeft"});kids.push(selection);var selection=writextag("selection",null,{pane:"bottomLeft"});kids.push(selection);var selection=writextag("selection",null,{pane:"bottomRight",activeCell:ws["!freeze"],sqref:ws["!freeze"]});kids.push(selection)}var sheetView=writextag("sheetView",kids.join("")||undefined,{showGridLines:opts.showGridLines==false?"0":"1",tabSelected:opts.tabSelected===undefined?"0":opts.tabSelected,workbookViewId:opts.workbookViewId===undefined?"0":opts.workbookViewId});o[o.length]=writextag("sheetViews",sheetView);if(ws["!cols"]!==undefined&&ws["!cols"].length>0)o[o.length]=write_ws_xml_cols(ws,ws["!cols"]);o[sidx=o.length]="<sheetData/>";if(ws["!ref"]!==undefined){rdata=write_ws_xml_data(ws,opts,idx,wb);if(rdata.length>0)o[o.length]=rdata}if(o.length>sidx+1){o[o.length]="</sheetData>";o[sidx]=o[sidx].replace("/>",">")}if(ws["!merges"]!==undefined&&ws["!merges"].length>0)o[o.length]=write_ws_xml_merges(ws["!merges"]);if(ws["!pageSetup"]!==undefined)o[o.length]=write_ws_xml_pagesetup(ws["!pageSetup"]);if(ws["!rowBreaks"]!==undefined)o[o.length]=write_ws_xml_row_breaks(ws["!rowBreaks"]);if(ws["!colBreaks"]!==undefined)o[o.length]=write_ws_xml_col_breaks(ws["!colBreaks"]);if(o.length>2){o[o.length]="</worksheet>";o[1]=o[1].replace("/>",">")}return o.join("")}function write_ws_xml_row_breaks(breaks){var brk=[];for(var i=0;i<breaks.length;i++){var thisBreak=""+breaks[i];var nextBreak=""+(breaks[i+1]||"16383");brk.push(writextag("brk",null,{id:thisBreak,max:nextBreak,man:"1"}))}return writextag("rowBreaks",brk.join(" "),{count:brk.length,manualBreakCount:brk.length})}function write_ws_xml_col_breaks(breaks){var brk=[];for(var i=0;i<breaks.length;i++){var thisBreak=""+breaks[i];var nextBreak=""+(breaks[i+1]||"1048575");brk.push(writextag("brk",null,{id:thisBreak,max:nextBreak,man:"1"}))}return writextag("colBreaks",brk.join(" "),{count:brk.length,manualBreakCount:brk.length})}function parse_BrtRowHdr(data,length){var z=[];z.r=data.read_shift(4);data.l+=length-4;return z}var parse_BrtWsDim=parse_UncheckedRfX;var write_BrtWsDim=write_UncheckedRfX;function parse_BrtWsProp(data,length){var z={};data.l+=19;z.name=parse_XLSBCodeName(data,length-19);return z}function parse_BrtCellBlank(data,length){var cell=parse_XLSBCell(data);return[cell]}function write_BrtCellBlank(cell,val,o){if(o==null)o=new_buf(8);return write_XLSBCell(val,o)}function parse_BrtCellBool(data,length){var cell=parse_XLSBCell(data);var fBool=data.read_shift(1);return[cell,fBool,"b"]}function parse_BrtCellError(data,length){var cell=parse_XLSBCell(data);var fBool=data.read_shift(1);return[cell,fBool,"e"]}function parse_BrtCellIsst(data,length){var cell=parse_XLSBCell(data);var isst=data.read_shift(4);return[cell,isst,"s"]}function parse_BrtCellReal(data,length){var cell=parse_XLSBCell(data);var value=parse_Xnum(data);return[cell,value,"n"]}function parse_BrtCellRk(data,length){var cell=parse_XLSBCell(data);var value=parse_RkNumber(data);return[cell,value,"n"]}function parse_BrtCellSt(data,length){var cell=parse_XLSBCell(data);var value=parse_XLWideString(data);return[cell,value,"str"]}function parse_BrtFmlaBool(data,length,opts){var cell=parse_XLSBCell(data);var value=data.read_shift(1);var o=[cell,value,"b"];if(opts.cellFormula){var formula=parse_XLSBCellParsedFormula(data,length-9);o[3]=""}else data.l+=length-9;return o}function parse_BrtFmlaError(data,length,opts){var cell=parse_XLSBCell(data);var value=data.read_shift(1);var o=[cell,value,"e"];if(opts.cellFormula){var formula=parse_XLSBCellParsedFormula(data,length-9);o[3]=""}else data.l+=length-9;return o}function parse_BrtFmlaNum(data,length,opts){var cell=parse_XLSBCell(data);var value=parse_Xnum(data);var o=[cell,value,"n"];if(opts.cellFormula){var formula=parse_XLSBCellParsedFormula(data,length-16);o[3]=""}else data.l+=length-16;return o}function parse_BrtFmlaString(data,length,opts){var start=data.l;var cell=parse_XLSBCell(data);var value=parse_XLWideString(data);var o=[cell,value,"str"];if(opts.cellFormula){var formula=parse_XLSBCellParsedFormula(data,start+length-data.l)}else data.l=start+length;return o}var parse_BrtMergeCell=parse_UncheckedRfX;function parse_BrtHLink(data,length,opts){var end=data.l+length;var rfx=parse_UncheckedRfX(data,16);var relId=parse_XLNullableWideString(data);var loc=parse_XLWideString(data);var tooltip=parse_XLWideString(data);var display=parse_XLWideString(data);data.l=end;return{rfx:rfx,relId:relId,loc:loc,tooltip:tooltip,display:display}}function parse_ws_bin(data,opts,rels){if(!data)return data;if(!rels)rels={"!id":{}};var s={};var ref;var refguess={s:{r:1e6,c:1e6},e:{r:0,c:0}};var pass=false,end=false;var row,p,cf,R,C,addr,sstr,rr;var mergecells=[];recordhopper(data,function ws_parse(val,R){if(end)return;switch(R.n){case"BrtWsDim":ref=val;break;case"BrtRowHdr":row=val;if(opts.sheetRows&&opts.sheetRows<=row.r)end=true;rr=encode_row(row.r);break;case"BrtFmlaBool":case"BrtFmlaError":case"BrtFmlaNum":case"BrtFmlaString":case"BrtCellBool":case"BrtCellError":case"BrtCellIsst":case"BrtCellReal":case"BrtCellRk":case"BrtCellSt":p={t:val[2]};switch(val[2]){case"n":p.v=val[1];break;case"s":sstr=strs[val[1]];p.v=sstr.t;p.r=sstr.r;break;case"b":p.v=val[1]?true:false;break;case"e":p.v=val[1];p.w=BErr[p.v];break;case"str":p.t="s";p.v=utf8read(val[1]);break}if(opts.cellFormula&&val.length>3)p.f=val[3];if(cf=styles.CellXf[val[0].iStyleRef])safe_format(p,cf.ifmt,null,opts);s[encode_col(C=val[0].c)+rr]=p;if(refguess.s.r>row.r)refguess.s.r=row.r;if(refguess.s.c>C)refguess.s.c=C;if(refguess.e.r<row.r)refguess.e.r=row.r;if(refguess.e.c<C)refguess.e.c=C;break;case"BrtCellBlank":if(!opts.sheetStubs)break;p={t:"s",v:undefined};s[encode_col(C=val[0].c)+rr]=p;if(refguess.s.r>row.r)refguess.s.r=row.r;if(refguess.s.c>C)refguess.s.c=C;if(refguess.e.r<row.r)refguess.e.r=row.r;if(refguess.e.c<C)refguess.e.c=C;break;case"BrtBeginMergeCells":break;case"BrtEndMergeCells":break;case"BrtMergeCell":mergecells.push(val);break;case"BrtHLink":var rel=rels["!id"][val.relId];if(rel){val.Target=rel.Target;if(val.loc)val.Target+="#"+val.loc;val.Rel=rel}for(R=val.rfx.s.r;R<=val.rfx.e.r;++R)for(C=val.rfx.s.c;C<=val.rfx.e.c;++C){addr=encode_cell({c:C,r:R});if(!s[addr])s[addr]={t:"s",v:undefined};s[addr].l=val}break;case"BrtArrFmla":break;case"BrtShrFmla":break;case"BrtBeginSheet":break;case"BrtWsProp":break;case"BrtSheetCalcProp":break;case"BrtBeginWsViews":break;case"BrtBeginWsView":break;case"BrtPane":break;case"BrtSel":break;case"BrtEndWsView":break;case"BrtEndWsViews":break;case"BrtACBegin":break;case"BrtRwDescent":break;case"BrtACEnd":break;case"BrtWsFmtInfoEx14":break;case"BrtWsFmtInfo":break;case"BrtBeginColInfos":break;case"BrtColInfo":break;case"BrtEndColInfos":break;
case"BrtBeginSheetData":break;case"BrtEndSheetData":break;case"BrtSheetProtection":break;case"BrtPrintOptions":break;case"BrtMargins":break;case"BrtPageSetup":break;case"BrtFRTBegin":pass=true;break;case"BrtFRTEnd":pass=false;break;case"BrtEndSheet":break;case"BrtDrawing":break;case"BrtLegacyDrawing":break;case"BrtLegacyDrawingHF":break;case"BrtPhoneticInfo":break;case"BrtBeginHeaderFooter":break;case"BrtEndHeaderFooter":break;case"BrtBrk":break;case"BrtBeginRwBrk":break;case"BrtEndRwBrk":break;case"BrtBeginColBrk":break;case"BrtEndColBrk":break;case"BrtBeginUserShViews":break;case"BrtBeginUserShView":break;case"BrtEndUserShView":break;case"BrtEndUserShViews":break;case"BrtBkHim":break;case"BrtBeginOleObjects":break;case"BrtOleObject":break;case"BrtEndOleObjects":break;case"BrtBeginListParts":break;case"BrtListPart":break;case"BrtEndListParts":break;case"BrtBeginSortState":break;case"BrtBeginSortCond":break;case"BrtEndSortCond":break;case"BrtEndSortState":break;case"BrtBeginConditionalFormatting":break;case"BrtEndConditionalFormatting":break;case"BrtBeginCFRule":break;case"BrtEndCFRule":break;case"BrtBeginDVals":break;case"BrtDVal":break;case"BrtEndDVals":break;case"BrtRangeProtection":break;case"BrtBeginDCon":break;case"BrtEndDCon":break;case"BrtBeginDRefs":break;case"BrtDRef":break;case"BrtEndDRefs":break;case"BrtBeginActiveXControls":break;case"BrtActiveX":break;case"BrtEndActiveXControls":break;case"BrtBeginAFilter":break;case"BrtEndAFilter":break;case"BrtBeginFilterColumn":break;case"BrtBeginFilters":break;case"BrtFilter":break;case"BrtEndFilters":break;case"BrtEndFilterColumn":break;case"BrtDynamicFilter":break;case"BrtTop10Filter":break;case"BrtBeginCustomFilters":break;case"BrtCustomFilter":break;case"BrtEndCustomFilters":break;case"BrtBeginSmartTags":break;case"BrtBeginCellSmartTags":break;case"BrtBeginCellSmartTag":break;case"BrtCellSmartTagProperty":break;case"BrtEndCellSmartTag":break;case"BrtEndCellSmartTags":break;case"BrtEndSmartTags":break;case"BrtBeginCellWatches":break;case"BrtCellWatch":break;case"BrtEndCellWatches":break;case"BrtTable":break;case"BrtBeginCellIgnoreECs":break;case"BrtCellIgnoreEC":break;case"BrtEndCellIgnoreECs":break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+R.n)}},opts);if(!s["!ref"]&&(refguess.s.r<1e6||ref.e.r>0||ref.e.c>0||ref.s.r>0||ref.s.c>0))s["!ref"]=encode_range(ref);if(opts.sheetRows&&s["!ref"]){var tmpref=safe_decode_range(s["!ref"]);if(opts.sheetRows<+tmpref.e.r){tmpref.e.r=opts.sheetRows-1;if(tmpref.e.r>refguess.e.r)tmpref.e.r=refguess.e.r;if(tmpref.e.r<tmpref.s.r)tmpref.s.r=tmpref.e.r;if(tmpref.e.c>refguess.e.c)tmpref.e.c=refguess.e.c;if(tmpref.e.c<tmpref.s.c)tmpref.s.c=tmpref.e.c;s["!fullref"]=s["!ref"];s["!ref"]=encode_range(tmpref)}}if(mergecells.length>0)s["!merges"]=mergecells;return s}function write_ws_bin_cell(ba,cell,R,C,opts){if(cell.v===undefined)return"";var vv="";switch(cell.t){case"b":vv=cell.v?"1":"0";break;case"n":case"e":vv=""+cell.v;break;default:vv=cell.v;break}var o={r:R,c:C};o.s=get_cell_style(opts.cellXfs,cell,opts);switch(cell.t){case"s":case"str":if(opts.bookSST){vv=get_sst_id(opts.Strings,cell.v);o.t="s";break}o.t="str";break;case"n":break;case"b":o.t="b";break;case"e":o.t="e";break}write_record(ba,"BrtCellBlank",write_BrtCellBlank(cell,o))}function write_CELLTABLE(ba,ws,idx,opts,wb){var range=safe_decode_range(ws["!ref"]||"A1"),ref,rr="",cols=[];write_record(ba,"BrtBeginSheetData");for(var R=range.s.r;R<=range.e.r;++R){rr=encode_row(R);for(var C=range.s.c;C<=range.e.c;++C){if(R===range.s.r)cols[C]=encode_col(C);ref=cols[C]+rr;if(!ws[ref])continue;write_ws_bin_cell(ba,ws[ref],R,C,opts)}}write_record(ba,"BrtEndSheetData")}function write_ws_bin(idx,opts,wb){var ba=buf_array();var s=wb.SheetNames[idx],ws=wb.Sheets[s]||{};var r=safe_decode_range(ws["!ref"]||"A1");write_record(ba,"BrtBeginSheet");write_record(ba,"BrtWsDim",write_BrtWsDim(r));write_CELLTABLE(ba,ws,idx,opts,wb);write_record(ba,"BrtEndSheet");return ba.end()}var WBPropsDef=[["allowRefreshQuery","0"],["autoCompressPictures","1"],["backupFile","0"],["checkCompatibility","0"],["codeName",""],["date1904","0"],["dateCompatibility","1"],["filterPrivacy","0"],["hidePivotFieldList","0"],["promptedSolutions","0"],["publishItems","0"],["refreshAllConnections",false],["saveExternalLinkValues","1"],["showBorderUnselectedTables","1"],["showInkAnnotation","1"],["showObjects","all"],["showPivotChartFilter","0"]];var WBViewDef=[["activeTab","0"],["autoFilterDateGrouping","1"],["firstSheet","0"],["minimized","0"],["showHorizontalScroll","1"],["showSheetTabs","1"],["showVerticalScroll","1"],["tabRatio","600"],["visibility","visible"]];var SheetDef=[["state","visible"]];var CalcPrDef=[["calcCompleted","true"],["calcMode","auto"],["calcOnSave","true"],["concurrentCalc","true"],["fullCalcOnLoad","false"],["fullPrecision","true"],["iterate","false"],["iterateCount","100"],["iterateDelta","0.001"],["refMode","A1"]];var CustomWBViewDef=[["autoUpdate","false"],["changesSavedWin","false"],["includeHiddenRowCol","true"],["includePrintSettings","true"],["maximized","false"],["minimized","false"],["onlySync","false"],["personalView","false"],["showComments","commIndicator"],["showFormulaBar","true"],["showHorizontalScroll","true"],["showObjects","all"],["showSheetTabs","true"],["showStatusbar","true"],["showVerticalScroll","true"],["tabRatio","600"],["xWindow","0"],["yWindow","0"]];function push_defaults_array(target,defaults){for(var j=0;j!=target.length;++j){var w=target[j];for(var i=0;i!=defaults.length;++i){var z=defaults[i];if(w[z[0]]==null)w[z[0]]=z[1]}}}function push_defaults(target,defaults){for(var i=0;i!=defaults.length;++i){var z=defaults[i];if(target[z[0]]==null)target[z[0]]=z[1]}}function parse_wb_defaults(wb){push_defaults(wb.WBProps,WBPropsDef);push_defaults(wb.CalcPr,CalcPrDef);push_defaults_array(wb.WBView,WBViewDef);push_defaults_array(wb.Sheets,SheetDef);_ssfopts.date1904=parsexmlbool(wb.WBProps.date1904,"date1904")}var wbnsregex=/<\w+:workbook/;function parse_wb_xml(data,opts){var wb={AppVersion:{},WBProps:{},WBView:[],Sheets:[],CalcPr:{},xmlns:""};var pass=false,xmlns="xmlns";data.match(tagregex).forEach(function xml_wb(x){var y=parsexmltag(x);switch(strip_ns(y[0])){case"<?xml":break;case"<workbook":if(x.match(wbnsregex))xmlns="xmlns"+x.match(/<(\w+):/)[1];wb.xmlns=y[xmlns];break;case"</workbook>":break;case"<fileVersion":delete y[0];wb.AppVersion=y;break;case"<fileVersion/>":break;case"<fileSharing":case"<fileSharing/>":break;case"<workbookPr":delete y[0];wb.WBProps=y;break;case"<workbookPr/>":delete y[0];wb.WBProps=y;break;case"<workbookProtection":break;case"<workbookProtection/>":break;case"<bookViews>":case"</bookViews>":break;case"<workbookView":delete y[0];wb.WBView.push(y);break;case"<sheets>":case"</sheets>":break;case"<sheet":delete y[0];y.name=utf8read(y.name);wb.Sheets.push(y);break;case"<functionGroups":case"<functionGroups/>":break;case"<functionGroup":break;case"<externalReferences":case"</externalReferences>":case"<externalReferences>":break;case"<externalReference":break;case"<definedNames/>":break;case"<definedNames>":case"<definedNames":pass=true;break;case"</definedNames>":pass=false;break;case"<definedName":case"<definedName/>":case"</definedName>":break;case"<calcPr":delete y[0];wb.CalcPr=y;break;case"<calcPr/>":delete y[0];wb.CalcPr=y;break;case"<oleSize":break;case"<customWorkbookViews>":case"</customWorkbookViews>":case"<customWorkbookViews":break;case"<customWorkbookView":case"</customWorkbookView>":break;case"<pivotCaches>":case"</pivotCaches>":case"<pivotCaches":break;case"<pivotCache":break;case"<smartTagPr":case"<smartTagPr/>":break;case"<smartTagTypes":case"<smartTagTypes>":case"</smartTagTypes>":break;case"<smartTagType":break;case"<webPublishing":case"<webPublishing/>":break;case"<fileRecoveryPr":case"<fileRecoveryPr/>":break;case"<webPublishObjects>":case"<webPublishObjects":case"</webPublishObjects>":break;case"<webPublishObject":break;case"<extLst>":case"</extLst>":case"<extLst/>":break;case"<ext":pass=true;break;case"</ext>":pass=false;break;case"<ArchID":break;case"<AlternateContent":pass=true;break;case"</AlternateContent>":pass=false;break;default:if(!pass&&opts.WTF)throw"unrecognized "+y[0]+" in workbook"}});if(XMLNS.main.indexOf(wb.xmlns)===-1)throw new Error("Unknown Namespace: "+wb.xmlns);parse_wb_defaults(wb);return wb}var WB_XML_ROOT=writextag("workbook",null,{xmlns:XMLNS.main[0],"xmlns:r":XMLNS.r});function safe1904(wb){try{return parsexmlbool(wb.Workbook.WBProps.date1904)?"true":"false"}catch(e){return"false"}}function write_wb_xml(wb,opts){var o=[XML_HEADER];o[o.length]=WB_XML_ROOT;o[o.length]=writextag("workbookPr",null,{date1904:safe1904(wb)});o[o.length]="<sheets>";for(var i=0;i!=wb.SheetNames.length;++i)o[o.length]=writextag("sheet",null,{name:wb.SheetNames[i].substr(0,31),sheetId:""+(i+1),"r:id":"rId"+(i+1)});o[o.length]="</sheets>";var hasPrintHeaders=false;for(var i=0;i!=wb.SheetNames.length;++i){var sheetName=wb.SheetNames[i];var sheet=wb.Sheets[sheetName];if(sheet["!printHeader"]){if(sheet["!printHeader"].length!==2){throw"!printHeaders must be an array of length 2: "+sheet["!printHeader"]}hasPrintHeaders=true}}if(hasPrintHeaders){o[o.length]="<definedNames>";for(var i=0;i!=wb.SheetNames.length;++i){var sheetName=wb.SheetNames[i];var sheet=wb.Sheets[sheetName];if(sheet["!printHeader"]||sheet["!printColumns"]){var printHeader=sheet["!printHeader"];var printColumns=sheet["!printColumns"];var range="";if(printColumns)range+="'"+sheetName+"'!"+("$"+printColumns[0]+":$"+printColumns[1]);if(printColumns&&printHeader)range+=",";if(printHeader)range+="'"+sheetName+"'!"+("$"+printHeader[0]+":$"+printHeader[1]);console.log("-----------------------------");console.log(range);o[o.length]=writextag("definedName",range,{name:"_xlnm.Print_Titles",localSheetId:""+i})}}o[o.length]="</definedNames>"}if(o.length>2){o[o.length]="</workbook>";o[1]=o[1].replace("/>",">")}return o.join("")}function parse_BrtBundleSh(data,length){var z={};z.hsState=data.read_shift(4);z.iTabID=data.read_shift(4);z.strRelID=parse_RelID(data,length-8);z.name=parse_XLWideString(data);return z}function write_BrtBundleSh(data,o){if(!o)o=new_buf(127);o.write_shift(4,data.hsState);o.write_shift(4,data.iTabID);write_RelID(data.strRelID,o);write_XLWideString(data.name.substr(0,31),o);return o}function parse_BrtWbProp(data,length){data.read_shift(4);var dwThemeVersion=data.read_shift(4);var strName=length>8?parse_XLWideString(data):"";return[dwThemeVersion,strName]}function write_BrtWbProp(data,o){if(!o)o=new_buf(8);o.write_shift(4,0);o.write_shift(4,0);return o}function parse_BrtFRTArchID$(data,length){var o={};data.read_shift(4);o.ArchID=data.read_shift(4);data.l+=length-8;return o}function parse_wb_bin(data,opts){var wb={AppVersion:{},WBProps:{},WBView:[],Sheets:[],CalcPr:{},xmlns:""};var pass=false,z;recordhopper(data,function hopper_wb(val,R){switch(R.n){case"BrtBundleSh":wb.Sheets.push(val);break;case"BrtBeginBook":break;case"BrtFileVersion":break;case"BrtWbProp":break;case"BrtACBegin":break;case"BrtAbsPath15":break;case"BrtACEnd":break;case"BrtWbFactoid":break;case"BrtBookProtection":break;case"BrtBeginBookViews":break;case"BrtBookView":break;case"BrtEndBookViews":break;case"BrtBeginBundleShs":break;case"BrtEndBundleShs":break;case"BrtBeginFnGroup":break;case"BrtEndFnGroup":break;case"BrtBeginExternals":break;case"BrtSupSelf":break;case"BrtSupBookSrc":break;case"BrtExternSheet":break;case"BrtEndExternals":break;case"BrtName":break;case"BrtCalcProp":break;case"BrtUserBookView":break;case"BrtBeginPivotCacheIDs":break;case"BrtBeginPivotCacheID":break;case"BrtEndPivotCacheID":break;case"BrtEndPivotCacheIDs":break;case"BrtWebOpt":break;case"BrtFileRecover":break;case"BrtFileSharing":break;case"BrtBeginSmartTagTypes":break;case"BrtSmartTagType":break;case"BrtEndSmartTagTypes":break;case"BrtFRTBegin":pass=true;break;case"BrtFRTArchID$":break;case"BrtWorkBookPr15":break;case"BrtFRTEnd":pass=false;break;case"BrtEndBook":break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+R.n)}});parse_wb_defaults(wb);return wb}function write_BUNDLESHS(ba,wb,opts){write_record(ba,"BrtBeginBundleShs");for(var idx=0;idx!=wb.SheetNames.length;++idx){var d={hsState:0,iTabID:idx+1,strRelID:"rId"+(idx+1),name:wb.SheetNames[idx]};write_record(ba,"BrtBundleSh",write_BrtBundleSh(d))}write_record(ba,"BrtEndBundleShs")}function write_BrtFileVersion(data,o){if(!o)o=new_buf(127);for(var i=0;i!=4;++i)o.write_shift(4,0);write_XLWideString("SheetJS",o);write_XLWideString(XLSX.version,o);write_XLWideString(XLSX.version,o);write_XLWideString("7262",o);o.length=o.l;return o}function write_BOOKVIEWS(ba,wb,opts){write_record(ba,"BrtBeginBookViews");write_record(ba,"BrtEndBookViews")}function write_BrtCalcProp(data,o){if(!o)o=new_buf(26);o.write_shift(4,0);o.write_shift(4,1);o.write_shift(4,0);write_Xnum(0,o);o.write_shift(-4,1023);o.write_shift(1,51);o.write_shift(1,0);return o}function write_BrtFileRecover(data,o){if(!o)o=new_buf(1);o.write_shift(1,0);return o}function write_wb_bin(wb,opts){var ba=buf_array();write_record(ba,"BrtBeginBook");write_record(ba,"BrtFileVersion",write_BrtFileVersion());write_record(ba,"BrtWbProp",write_BrtWbProp());write_BOOKVIEWS(ba,wb,opts);write_BUNDLESHS(ba,wb,opts);write_record(ba,"BrtCalcProp",write_BrtCalcProp());write_record(ba,"BrtFileRecover",write_BrtFileRecover());write_record(ba,"BrtEndBook");return ba.end()}function parse_wb(data,name,opts){return(name.substr(-4)===".bin"?parse_wb_bin:parse_wb_xml)(data,opts)}function parse_ws(data,name,opts,rels){return(name.substr(-4)===".bin"?parse_ws_bin:parse_ws_xml)(data,opts,rels)}function parse_sty(data,name,opts){return(name.substr(-4)===".bin"?parse_sty_bin:parse_sty_xml)(data,opts)}function parse_theme(data,name,opts){return parse_theme_xml(data,opts)}function parse_sst(data,name,opts){return(name.substr(-4)===".bin"?parse_sst_bin:parse_sst_xml)(data,opts)}function parse_cmnt(data,name,opts){return(name.substr(-4)===".bin"?parse_comments_bin:parse_comments_xml)(data,opts)}function parse_cc(data,name,opts){return(name.substr(-4)===".bin"?parse_cc_bin:parse_cc_xml)(data,opts)}function write_wb(wb,name,opts){return(name.substr(-4)===".bin"?write_wb_bin:write_wb_xml)(wb,opts)}function write_ws(data,name,opts,wb){return(name.substr(-4)===".bin"?write_ws_bin:write_ws_xml)(data,opts,wb)}function write_sty(data,name,opts){return(name.substr(-4)===".bin"?write_sty_bin:write_sty_xml)(data,opts)}function write_sst(data,name,opts){return(name.substr(-4)===".bin"?write_sst_bin:write_sst_xml)(data,opts)}var attregexg2=/([\w:]+)=((?:")([^"]*)(?:")|(?:')([^']*)(?:'))/g;var attregex2=/([\w:]+)=((?:")(?:[^"]*)(?:")|(?:')(?:[^']*)(?:'))/;var _chr=function(c){return String.fromCharCode(c)};function xlml_parsexmltag(tag,skip_root){var words=tag.split(/\s+/);var z=[];if(!skip_root)z[0]=words[0];if(words.length===1)return z;var m=tag.match(attregexg2),y,j,w,i;if(m)for(i=0;i!=m.length;++i){y=m[i].match(attregex2);if((j=y[1].indexOf(":"))===-1)z[y[1]]=y[2].substr(1,y[2].length-2);else{if(y[1].substr(0,6)==="xmlns:")w="xmlns"+y[1].substr(6);else w=y[1].substr(j+1);z[w]=y[2].substr(1,y[2].length-2)}}return z}function xlml_parsexmltagobj(tag){var words=tag.split(/\s+/);var z={};if(words.length===1)return z;var m=tag.match(attregexg2),y,j,w,i;if(m)for(i=0;i!=m.length;++i){y=m[i].match(attregex2);if((j=y[1].indexOf(":"))===-1)z[y[1]]=y[2].substr(1,y[2].length-2);else{if(y[1].substr(0,6)==="xmlns:")w="xmlns"+y[1].substr(6);else w=y[1].substr(j+1);z[w]=y[2].substr(1,y[2].length-2)}}return z}function xlml_format(format,value){var fmt=XLMLFormatMap[format]||unescapexml(format);if(fmt==="General")return SSF._general(value);return SSF.format(fmt,value)}function xlml_set_custprop(Custprops,Rn,cp,val){switch((cp[0].match(/dt:dt="([\w.]+)"/)||["",""])[1]){case"boolean":val=parsexmlbool(val);break;case"i2":case"int":val=parseInt(val,10);break;case"r4":case"float":val=parseFloat(val);break;case"date":case"dateTime.tz":val=new Date(val);break;case"i8":case"string":case"fixed":case"uuid":case"bin.base64":break;default:throw"bad custprop:"+cp[0]}Custprops[unescapexml(Rn[3])]=val}function safe_format_xlml(cell,nf,o){try{if(cell.t==="e"){cell.w=cell.w||BErr[cell.v]}else if(nf==="General"){if(cell.t==="n"){if((cell.v|0)===cell.v)cell.w=SSF._general_int(cell.v);else cell.w=SSF._general_num(cell.v)}else cell.w=SSF._general(cell.v)}else cell.w=xlml_format(nf||"General",cell.v);if(o.cellNF)cell.z=XLMLFormatMap[nf]||nf||"General"}catch(e){if(o.WTF)throw e}}function process_style_xlml(styles,stag,opts){if(opts.cellStyles){if(stag.Interior){var I=stag.Interior;if(I.Pattern)I.patternType=XLMLPatternTypeMap[I.Pattern]||I.Pattern}}styles[stag.ID]=stag}function parse_xlml_data(xml,ss,data,cell,base,styles,csty,row,o){var nf="General",sid=cell.StyleID,S={};o=o||{};var interiors=[];if(sid===undefined&&row)sid=row.StyleID;if(sid===undefined&&csty)sid=csty.StyleID;while(styles[sid]!==undefined){if(styles[sid].nf)nf=styles[sid].nf;if(styles[sid].Interior)interiors.push(styles[sid].Interior);if(!styles[sid].Parent)break;sid=styles[sid].Parent}switch(data.Type){case"Boolean":cell.t="b";cell.v=parsexmlbool(xml);break;case"String":cell.t="s";cell.r=xlml_fixstr(unescapexml(xml));cell.v=xml.indexOf("<")>-1?ss:cell.r;break;case"DateTime":cell.v=(Date.parse(xml)-new Date(Date.UTC(1899,11,30)))/(24*60*60*1e3);if(cell.v!==cell.v)cell.v=unescapexml(xml);else if(cell.v>=1&&cell.v<60)cell.v=cell.v-1;if(!nf||nf=="General")nf="yyyy-mm-dd";case"Number":if(cell.v===undefined)cell.v=+xml;if(!cell.t)cell.t="n";break;case"Error":cell.t="e";cell.v=RBErr[xml];cell.w=xml;break;default:cell.t="s";cell.v=xlml_fixstr(ss);break}safe_format_xlml(cell,nf,o);if(o.cellFormula!=null&&cell.Formula){cell.f=rc_to_a1(unescapexml(cell.Formula),base);cell.Formula=undefined}if(o.cellStyles){interiors.forEach(function(x){if(!S.patternType&&x.patternType)S.patternType=x.patternType});cell.s=S}cell.ixfe=cell.StyleID!==undefined?cell.StyleID:"Default"}function xlml_clean_comment(comment){comment.t=comment.v;comment.v=comment.w=comment.ixfe=undefined}function xlml_normalize(d){if(has_buf&&Buffer.isBuffer(d))return d.toString("utf8");if(typeof d==="string")return d;throw"badf"}var xlmlregex=/<(\/?)([a-z0-9]*:|)(\w+)[^>]*>/gm;function parse_xlml_xml(d,opts){var str=xlml_normalize(d);var Rn;var state=[],tmp;var sheets={},sheetnames=[],cursheet={},sheetname="";var table={},cell={},row={},dtag,didx;var c=0,r=0;var refguess={s:{r:1e6,c:1e6},e:{r:0,c:0}};var styles={},stag={};var ss="",fidx=0;var mergecells=[];var Props={},Custprops={},pidx=0,cp={};var comments=[],comment={};var cstys=[],csty;xlmlregex.lastIndex=0;while(Rn=xlmlregex.exec(str))switch(Rn[3]){case"Data":if(state[state.length-1][1])break;if(Rn[1]==="/")parse_xlml_data(str.slice(didx,Rn.index),ss,dtag,state[state.length-1][0]=="Comment"?comment:cell,{c:c,r:r},styles,cstys[c],row,opts);else{ss="";dtag=xlml_parsexmltag(Rn[0]);didx=Rn.index+Rn[0].length}break;case"Cell":if(Rn[1]==="/"){if(comments.length>0)cell.c=comments;if((!opts.sheetRows||opts.sheetRows>r)&&cell.v!==undefined)cursheet[encode_col(c)+encode_row(r)]=cell;if(cell.HRef){cell.l={Target:cell.HRef,tooltip:cell.HRefScreenTip};cell.HRef=cell.HRefScreenTip=undefined}if(cell.MergeAcross||cell.MergeDown){var cc=c+(parseInt(cell.MergeAcross,10)|0);var rr=r+(parseInt(cell.MergeDown,10)|0);mergecells.push({s:{c:c,r:r},e:{c:cc,r:rr}})}++c;if(cell.MergeAcross)c+=+cell.MergeAcross}else{cell=xlml_parsexmltagobj(Rn[0]);if(cell.Index)c=+cell.Index-1;if(c<refguess.s.c)refguess.s.c=c;if(c>refguess.e.c)refguess.e.c=c;if(Rn[0].substr(-2)==="/>")++c;comments=[]}break;case"Row":if(Rn[1]==="/"||Rn[0].substr(-2)==="/>"){if(r<refguess.s.r)refguess.s.r=r;if(r>refguess.e.r)refguess.e.r=r;if(Rn[0].substr(-2)==="/>"){row=xlml_parsexmltag(Rn[0]);if(row.Index)r=+row.Index-1}c=0;++r}else{row=xlml_parsexmltag(Rn[0]);if(row.Index)r=+row.Index-1}break;case"Worksheet":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw"Bad state: "+tmp;sheetnames.push(sheetname);if(refguess.s.r<=refguess.e.r&&refguess.s.c<=refguess.e.c)cursheet["!ref"]=encode_range(refguess);if(mergecells.length)cursheet["!merges"]=mergecells;sheets[sheetname]=cursheet}else{refguess={s:{r:1e6,c:1e6},e:{r:0,c:0}};r=c=0;state.push([Rn[3],false]);tmp=xlml_parsexmltag(Rn[0]);sheetname=tmp.Name;cursheet={};mergecells=[]}break;case"Table":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw"Bad state: "+tmp}else if(Rn[0].slice(-2)=="/>")break;else{table=xlml_parsexmltag(Rn[0]);state.push([Rn[3],false]);cstys=[]}break;case"Style":if(Rn[1]==="/")process_style_xlml(styles,stag,opts);else stag=xlml_parsexmltag(Rn[0]);break;case"NumberFormat":stag.nf=xlml_parsexmltag(Rn[0]).Format||"General";break;case"Column":if(state[state.length-1][0]!=="Table")break;csty=xlml_parsexmltag(Rn[0]);cstys[csty.Index-1||cstys.length]=csty;for(var i=0;i<+csty.Span;++i)cstys[cstys.length]=csty;break;case"NamedRange":break;case"NamedCell":break;case"B":break;case"I":break;case"U":break;case"S":break;case"Sub":break;case"Sup":break;case"Span":break;case"Border":break;case"Alignment":break;case"Borders":break;case"Font":if(Rn[0].substr(-2)==="/>")break;else if(Rn[1]==="/")ss+=str.slice(fidx,Rn.index);else fidx=Rn.index+Rn[0].length;break;case"Interior":if(!opts.cellStyles)break;stag.Interior=xlml_parsexmltag(Rn[0]);break;case"Protection":break;case"Author":case"Title":case"Description":case"Created":case"Keywords":case"Subject":case"Category":case"Company":case"LastAuthor":case"LastSaved":case"LastPrinted":case"Version":case"Revision":case"TotalTime":case"HyperlinkBase":case"Manager":if(Rn[0].substr(-2)==="/>")break;else if(Rn[1]==="/")xlml_set_prop(Props,Rn[3],str.slice(pidx,Rn.index));else pidx=Rn.index+Rn[0].length;break;case"Paragraphs":break;case"Styles":case"Workbook":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw"Bad state: "+tmp}else state.push([Rn[3],false]);break;case"Comment":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw"Bad state: "+tmp;xlml_clean_comment(comment);comments.push(comment)}else{state.push([Rn[3],false]);tmp=xlml_parsexmltag(Rn[0]);comment={a:tmp.Author}}break;case"Name":break;case"ComponentOptions":case"DocumentProperties":case"CustomDocumentProperties":case"OfficeDocumentSettings":case"PivotTable":case"PivotCache":case"Names":case"MapInfo":case"PageBreaks":case"QueryTable":case"DataValidation":case"AutoFilter":case"Sorting":case"Schema":case"data":case"ConditionalFormatting":case"SmartTagType":case"SmartTags":case"ExcelWorkbook":case"WorkbookOptions":case"WorksheetOptions":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw"Bad state: "+tmp}else if(Rn[0].charAt(Rn[0].length-2)!=="/")state.push([Rn[3],true]);break;default:var seen=true;switch(state[state.length-1][0]){case"OfficeDocumentSettings":switch(Rn[3]){case"AllowPNG":break;case"RemovePersonalInformation":break;case"DownloadComponents":break;case"LocationOfComponents":break;case"Colors":break;case"Color":break;case"Index":break;case"RGB":break;case"PixelsPerInch":break;case"TargetScreenSize":break;case"ReadOnlyRecommended":break;default:seen=false}break;case"ComponentOptions":switch(Rn[3]){case"Toolbar":break;case"HideOfficeLogo":break;case"SpreadsheetAutoFit":break;case"Label":break;case"Caption":break;case"MaxHeight":break;case"MaxWidth":break;case"NextSheetNumber":break;default:seen=false}break;case"ExcelWorkbook":switch(Rn[3]){case"WindowHeight":break;case"WindowWidth":break;case"WindowTopX":break;case"WindowTopY":break;case"TabRatio":break;case"ProtectStructure":break;case"ProtectWindows":break;case"ActiveSheet":break;case"DisplayInkNotes":break;case"FirstVisibleSheet":break;case"SupBook":break;case"SheetName":break;case"SheetIndex":break;case"SheetIndexFirst":break;case"SheetIndexLast":break;case"Dll":break;case"AcceptLabelsInFormulas":break;case"DoNotSaveLinkValues":break;case"Date1904":break;case"Iteration":break;case"MaxIterations":break;case"MaxChange":break;case"Path":break;case"Xct":break;case"Count":break;case"SelectedSheets":break;case"Calculation":break;case"Uncalced":break;case"StartupPrompt":break;case"Crn":break;case"ExternName":break;case"Formula":break;case"ColFirst":break;case"ColLast":break;case"WantAdvise":break;case"Boolean":break;case"Error":break;case"Text":break;case"OLE":break;case"NoAutoRecover":break;case"PublishObjects":break;case"DoNotCalculateBeforeSave":break;case"Number":break;case"RefModeR1C1":break;case"EmbedSaveSmartTags":break;default:seen=false}break;case"WorkbookOptions":switch(Rn[3]){case"OWCVersion":break;case"Height":break;case"Width":break;default:seen=false}break;case"WorksheetOptions":switch(Rn[3]){case"Unsynced":break;case"Visible":break;case"Print":break;case"Panes":break;case"Scale":break;case"Pane":break;case"Number":break;case"Layout":break;case"Header":break;case"Footer":break;case"PageSetup":break;case"PageMargins":break;case"Selected":break;case"ProtectObjects":break;case"EnableSelection":break;case"ProtectScenarios":break;case"ValidPrinterInfo":break;case"HorizontalResolution":break;case"VerticalResolution":break;case"NumberofCopies":break;case"ActiveRow":break;case"ActiveCol":break;case"ActivePane":break;case"TopRowVisible":break;case"TopRowBottomPane":break;case"LeftColumnVisible":break;case"LeftColumnRightPane":break;case"FitToPage":break;case"RangeSelection":break;case"PaperSizeIndex":break;case"PageLayoutZoom":break;case"PageBreakZoom":break;case"FilterOn":break;case"DoNotDisplayGridlines":break;case"SplitHorizontal":break;case"SplitVertical":break;case"FreezePanes":break;case"FrozenNoSplit":break;case"FitWidth":break;case"FitHeight":break;case"CommentsLayout":break;case"Zoom":break;case"LeftToRight":break;case"Gridlines":break;case"AllowSort":break;case"AllowFilter":break;case"AllowInsertRows":break;case"AllowDeleteRows":break;case"AllowInsertCols":break;case"AllowDeleteCols":break;case"AllowInsertHyperlinks":break;case"AllowFormatCells":break;case"AllowSizeCols":break;case"AllowSizeRows":break;case"NoSummaryRowsBelowDetail":break;case"TabColorIndex":break;case"DoNotDisplayHeadings":break;case"ShowPageLayoutZoom":break;case"NoSummaryColumnsRightDetail":break;case"BlackAndWhite":break;case"DoNotDisplayZeros":break;case"DisplayPageBreak":break;case"RowColHeadings":break;case"DoNotDisplayOutline":break;case"NoOrientation":break;case"AllowUsePivotTables":break;case"ZeroHeight":break;case"ViewableRange":break;case"Selection":break;case"ProtectContents":break;default:seen=false}break;case"PivotTable":case"PivotCache":switch(Rn[3]){case"ImmediateItemsOnDrop":break;case"ShowPageMultipleItemLabel":break;case"CompactRowIndent":break;case"Location":break;case"PivotField":break;case"Orientation":break;case"LayoutForm":break;case"LayoutSubtotalLocation":break;case"LayoutCompactRow":break;case"Position":break;case"PivotItem":break;case"DataType":break;case"DataField":break;case"SourceName":break;case"ParentField":break;case"PTLineItems":break;case"PTLineItem":break;case"CountOfSameItems":break;case"Item":break;case"ItemType":break;case"PTSource":break;case"CacheIndex":break;case"ConsolidationReference":break;case"FileName":break;case"Reference":break;case"NoColumnGrand":break;case"NoRowGrand":break;case"BlankLineAfterItems":break;case"Hidden":break;case"Subtotal":break;case"BaseField":break;case"MapChildItems":break;case"Function":break;case"RefreshOnFileOpen":break;case"PrintSetTitles":break;case"MergeLabels":break;case"DefaultVersion":break;case"RefreshName":break;case"RefreshDate":break;case"RefreshDateCopy":break;case"VersionLastRefresh":break;case"VersionLastUpdate":break;case"VersionUpdateableMin":break;case"VersionRefreshableMin":break;case"Calculation":break;default:seen=false}break;case"PageBreaks":switch(Rn[3]){case"ColBreaks":break;case"ColBreak":break;case"RowBreaks":break;case"RowBreak":break;case"ColStart":break;case"ColEnd":break;case"RowEnd":break;default:seen=false}break;case"AutoFilter":switch(Rn[3]){case"AutoFilterColumn":break;case"AutoFilterCondition":break;case"AutoFilterAnd":break;case"AutoFilterOr":break;default:seen=false}break;case"QueryTable":switch(Rn[3]){case"Id":break;case"AutoFormatFont":break;case"AutoFormatPattern":break;case"QuerySource":break;case"QueryType":break;case"EnableRedirections":break;case"RefreshedInXl9":break;case"URLString":break;case"HTMLTables":break;case"Connection":break;case"CommandText":break;case"RefreshInfo":break;case"NoTitles":break;case"NextId":break;case"ColumnInfo":break;case"OverwriteCells":break;case"DoNotPromptForFile":break;case"TextWizardSettings":break;case"Source":break;case"Number":break;case"Decimal":break;case"ThousandSeparator":break;case"TrailingMinusNumbers":break;case"FormatSettings":break;case"FieldType":break;case"Delimiters":break;case"Tab":break;case"Comma":break;case"AutoFormatName":break;case"VersionLastEdit":break;case"VersionLastRefresh":break;default:seen=false}break;case"Sorting":case"ConditionalFormatting":case"DataValidation":switch(Rn[3]){case"Range":break;case"Type":break;case"Min":break;case"Max":break;case"Sort":break;case"Descending":break;case"Order":break;case"CaseSensitive":break;case"Value":break;case"ErrorStyle":break;case"ErrorMessage":break;case"ErrorTitle":break;case"CellRangeList":break;case"InputMessage":break;case"InputTitle":break;case"ComboHide":break;case"InputHide":break;case"Condition":break;case"Qualifier":break;case"UseBlank":break;case"Value1":break;case"Value2":break;case"Format":break;default:seen=false}break;case"MapInfo":case"Schema":case"data":switch(Rn[3]){case"Map":break;case"Entry":break;case"Range":break;case"XPath":break;case"Field":break;case"XSDType":break;case"FilterOn":break;case"Aggregate":break;case"ElementType":break;case"AttributeType":break;case"schema":case"element":case"complexType":case"datatype":case"all":case"attribute":case"extends":break;case"row":break;default:seen=false}break;case"SmartTags":break;default:seen=false;break}if(seen)break;if(!state[state.length-1][1])throw"Unrecognized tag: "+Rn[3]+"|"+state.join("|");if(state[state.length-1][0]==="CustomDocumentProperties"){if(Rn[0].substr(-2)==="/>")break;else if(Rn[1]==="/")xlml_set_custprop(Custprops,Rn,cp,str.slice(pidx,Rn.index));else{cp=Rn;pidx=Rn.index+Rn[0].length}break}if(opts.WTF)throw"Unrecognized tag: "+Rn[3]+"|"+state.join("|")}var out={};if(!opts.bookSheets&&!opts.bookProps)out.Sheets=sheets;out.SheetNames=sheetnames;out.SSF=SSF.get_table();out.Props=Props;out.Custprops=Custprops;return out}function parse_xlml(data,opts){fix_read_opts(opts=opts||{});switch(opts.type||"base64"){case"base64":return parse_xlml_xml(Base64.decode(data),opts);case"binary":case"buffer":case"file":return parse_xlml_xml(data,opts);case"array":return parse_xlml_xml(data.map(_chr).join(""),opts)}}function write_xlml(wb,opts){}function parse_compobj(obj){var v={};var o=obj.content;var l=28,m;m=__lpstr(o,l);l+=4+__readUInt32LE(o,l);v.UserType=m;m=__readUInt32LE(o,l);l+=4;switch(m){case 0:break;case 4294967295:case 4294967294:l+=4;break;default:if(m>400)throw new Error("Unsupported Clipboard: "+m.toString(16));l+=m}m=__lpstr(o,l);l+=m.length===0?0:5+m.length;v.Reserved1=m;if((m=__readUInt32LE(o,l))!==1907550708)return v;throw"Unsupported Unicode Extension"}function slurp(R,blob,length,opts){var l=length;var bufs=[];var d=blob.slice(blob.l,blob.l+l);if(opts&&opts.enc&&opts.enc.insitu_decrypt)switch(R.n){case"BOF":case"FilePass":case"FileLock":case"InterfaceHdr":case"RRDInfo":case"RRDHead":case"UsrExcl":break;default:if(d.length===0)break;opts.enc.insitu_decrypt(d)}bufs.push(d);blob.l+=l;var next=XLSRecordEnum[__readUInt16LE(blob,blob.l)];while(next!=null&&next.n==="Continue"){l=__readUInt16LE(blob,blob.l+2);bufs.push(blob.slice(blob.l+4,blob.l+4+l));blob.l+=4+l;next=XLSRecordEnum[__readUInt16LE(blob,blob.l)]}var b=bconcat(bufs);prep_blob(b,0);var ll=0;b.lens=[];for(var j=0;j<bufs.length;++j){b.lens.push(ll);ll+=bufs[j].length}return R.f(b,b.length,opts)}function safe_format_xf(p,opts,date1904){if(!p.XF)return;try{var fmtid=p.XF.ifmt||0;if(p.t==="e"){
p.w=p.w||BErr[p.v]}else if(fmtid===0){if(p.t==="n"){if((p.v|0)===p.v)p.w=SSF._general_int(p.v);else p.w=SSF._general_num(p.v)}else p.w=SSF._general(p.v)}else p.w=SSF.format(fmtid,p.v,{date1904:date1904||false});if(opts.cellNF)p.z=SSF._table[fmtid]}catch(e){if(opts.WTF)throw e}}function make_cell(val,ixfe,t){return{v:val,ixfe:ixfe,t:t}}function parse_workbook(blob,options){var wb={opts:{}};var Sheets={};var out={};var Directory={};var found_sheet=false;var range={};var last_formula=null;var sst=[];var cur_sheet="";var Preamble={};var lastcell,last_cell,cc,cmnt,rng,rngC,rngR;var shared_formulae={};var array_formulae=[];var temp_val;var country;var cell_valid=true;var XFs=[];var palette=[];var get_rgb=function getrgb(icv){if(icv<8)return XLSIcv[icv];if(icv<64)return palette[icv-8]||XLSIcv[icv];return XLSIcv[icv]};var process_cell_style=function pcs(cell,line){var xfd=line.XF.data;if(!xfd||!xfd.patternType)return;line.s={};line.s.patternType=xfd.patternType;var t;if(t=rgb2Hex(get_rgb(xfd.icvFore))){line.s.fgColor={rgb:t}}if(t=rgb2Hex(get_rgb(xfd.icvBack))){line.s.bgColor={rgb:t}}};var addcell=function addcell(cell,line,options){if(!cell_valid)return;if(options.cellStyles&&line.XF&&line.XF.data)process_cell_style(cell,line);lastcell=cell;last_cell=encode_cell(cell);if(range.s){if(cell.r<range.s.r)range.s.r=cell.r;if(cell.c<range.s.c)range.s.c=cell.c}if(range.e){if(cell.r+1>range.e.r)range.e.r=cell.r+1;if(cell.c+1>range.e.c)range.e.c=cell.c+1}if(options.sheetRows&&lastcell.r>=options.sheetRows)cell_valid=false;else out[last_cell]=line};var opts={enc:false,sbcch:0,snames:[],sharedf:shared_formulae,arrayf:array_formulae,rrtabid:[],lastuser:"",biff:8,codepage:0,winlocked:0,wtf:false};if(options.password)opts.password=options.password;var mergecells=[];var objects=[];var supbooks=[[]];var sbc=0,sbci=0,sbcli=0;supbooks.SheetNames=opts.snames;supbooks.sharedf=opts.sharedf;supbooks.arrayf=opts.arrayf;var last_Rn="";var file_depth=0;opts.codepage=1200;set_cp(1200);while(blob.l<blob.length-1){var s=blob.l;var RecordType=blob.read_shift(2);if(RecordType===0&&last_Rn==="EOF")break;var length=blob.l===blob.length?0:blob.read_shift(2),y;var R=XLSRecordEnum[RecordType];if(R&&R.f){if(options.bookSheets){if(last_Rn==="BoundSheet8"&&R.n!=="BoundSheet8")break}last_Rn=R.n;if(R.r===2||R.r==12){var rt=blob.read_shift(2);length-=2;if(!opts.enc&&rt!==RecordType)throw"rt mismatch";if(R.r==12){blob.l+=10;length-=10}}var val;if(R.n==="EOF")val=R.f(blob,length,opts);else val=slurp(R,blob,length,opts);var Rn=R.n;if(opts.biff===5||opts.biff===2)switch(Rn){case"Lbl":Rn="Label";break}switch(Rn){case"Date1904":wb.opts.Date1904=val;break;case"WriteProtect":wb.opts.WriteProtect=true;break;case"FilePass":if(!opts.enc)blob.l=0;opts.enc=val;if(opts.WTF)console.error(val);if(!options.password)throw new Error("File is password-protected");if(val.Type!==0)throw new Error("Encryption scheme unsupported");if(!val.valid)throw new Error("Password is incorrect");break;case"WriteAccess":opts.lastuser=val;break;case"FileSharing":break;case"CodePage":if(val===21010)val=1200;else if(val===32769)val=1252;opts.codepage=val;set_cp(val);break;case"RRTabId":opts.rrtabid=val;break;case"WinProtect":opts.winlocked=val;break;case"Template":break;case"RefreshAll":wb.opts.RefreshAll=val;break;case"BookBool":break;case"UsesELFs":break;case"MTRSettings":{if(val[0]&&val[1])throw"Unsupported threads: "+val}break;case"CalcCount":wb.opts.CalcCount=val;break;case"CalcDelta":wb.opts.CalcDelta=val;break;case"CalcIter":wb.opts.CalcIter=val;break;case"CalcMode":wb.opts.CalcMode=val;break;case"CalcPrecision":wb.opts.CalcPrecision=val;break;case"CalcSaveRecalc":wb.opts.CalcSaveRecalc=val;break;case"CalcRefMode":opts.CalcRefMode=val;break;case"Uncalced":break;case"ForceFullCalculation":wb.opts.FullCalc=val;break;case"WsBool":break;case"XF":XFs.push(val);break;case"ExtSST":break;case"BookExt":break;case"RichTextStream":break;case"BkHim":break;case"SupBook":supbooks[++sbc]=[val];sbci=0;break;case"ExternName":supbooks[sbc][++sbci]=val;break;case"Index":break;case"Lbl":supbooks[0][++sbcli]=val;break;case"ExternSheet":supbooks[sbc]=supbooks[sbc].concat(val);sbci+=val.length;break;case"Protect":out["!protect"]=val;break;case"Password":if(val!==0&&opts.WTF)console.error("Password verifier: "+val);break;case"Prot4Rev":case"Prot4RevPass":break;case"BoundSheet8":{Directory[val.pos]=val;opts.snames.push(val.name)}break;case"EOF":{if(--file_depth)break;if(range.e){out["!range"]=range;if(range.e.r>0&&range.e.c>0){range.e.r--;range.e.c--;out["!ref"]=encode_range(range);range.e.r++;range.e.c++}if(mergecells.length>0)out["!merges"]=mergecells;if(objects.length>0)out["!objects"]=objects}if(cur_sheet==="")Preamble=out;else Sheets[cur_sheet]=out;out={}}break;case"BOF":{if(opts.biff!==8);else if(val.BIFFVer===1280)opts.biff=5;else if(val.BIFFVer===2)opts.biff=2;else if(val.BIFFVer===7)opts.biff=2;if(file_depth++)break;cell_valid=true;out={};if(opts.biff===2){if(cur_sheet==="")cur_sheet="Sheet1";range={s:{r:0,c:0},e:{r:0,c:0}}}else cur_sheet=(Directory[s]||{name:""}).name;mergecells=[];objects=[]}break;case"Number":case"BIFF2NUM":{temp_val={ixfe:val.ixfe,XF:XFs[val.ixfe],v:val.val,t:"n"};if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell({c:val.c,r:val.r},temp_val,options)}break;case"BoolErr":{temp_val={ixfe:val.ixfe,XF:XFs[val.ixfe],v:val.val,t:val.t};if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell({c:val.c,r:val.r},temp_val,options)}break;case"RK":{temp_val={ixfe:val.ixfe,XF:XFs[val.ixfe],v:val.rknum,t:"n"};if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell({c:val.c,r:val.r},temp_val,options)}break;case"MulRk":{for(var j=val.c;j<=val.C;++j){var ixfe=val.rkrec[j-val.c][0];temp_val={ixfe:ixfe,XF:XFs[ixfe],v:val.rkrec[j-val.c][1],t:"n"};if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell({c:j,r:val.r},temp_val,options)}}break;case"Formula":{switch(val.val){case"String":last_formula=val;break;case"Array Formula":throw"Array Formula unsupported";default:temp_val={v:val.val,ixfe:val.cell.ixfe,t:val.tt};temp_val.XF=XFs[temp_val.ixfe];if(options.cellFormula)temp_val.f="="+stringify_formula(val.formula,range,val.cell,supbooks,opts);if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell(val.cell,temp_val,options);last_formula=val}}break;case"String":{if(last_formula){last_formula.val=val;temp_val={v:last_formula.val,ixfe:last_formula.cell.ixfe,t:"s"};temp_val.XF=XFs[temp_val.ixfe];if(options.cellFormula)temp_val.f="="+stringify_formula(last_formula.formula,range,last_formula.cell,supbooks,opts);if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell(last_formula.cell,temp_val,options);last_formula=null}}break;case"Array":{array_formulae.push(val)}break;case"ShrFmla":{if(!cell_valid)break;shared_formulae[encode_cell(last_formula.cell)]=val[0]}break;case"LabelSst":temp_val=make_cell(sst[val.isst].t,val.ixfe,"s");temp_val.XF=XFs[temp_val.ixfe];if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell({c:val.c,r:val.r},temp_val,options);break;case"Label":case"BIFF2STR":temp_val=make_cell(val.val,val.ixfe,"s");temp_val.XF=XFs[temp_val.ixfe];if(temp_val.XF)safe_format_xf(temp_val,options,wb.opts.Date1904);addcell({c:val.c,r:val.r},temp_val,options);break;case"Dimensions":{if(file_depth===1)range=val}break;case"SST":{sst=val}break;case"Format":{SSF.load(val[1],val[0])}break;case"MergeCells":mergecells=mergecells.concat(val);break;case"Obj":objects[val.cmo[0]]=opts.lastobj=val;break;case"TxO":opts.lastobj.TxO=val;break;case"HLink":{for(rngR=val[0].s.r;rngR<=val[0].e.r;++rngR)for(rngC=val[0].s.c;rngC<=val[0].e.c;++rngC)if(out[encode_cell({c:rngC,r:rngR})])out[encode_cell({c:rngC,r:rngR})].l=val[1]}break;case"HLinkTooltip":{for(rngR=val[0].s.r;rngR<=val[0].e.r;++rngR)for(rngC=val[0].s.c;rngC<=val[0].e.c;++rngC)if(out[encode_cell({c:rngC,r:rngR})])out[encode_cell({c:rngC,r:rngR})].l.tooltip=val[1]}break;case"Note":{if(opts.biff<=5&&opts.biff>=2)break;cc=out[encode_cell(val[0])];var noteobj=objects[val[2]];if(!cc)break;if(!cc.c)cc.c=[];cmnt={a:val[1],t:noteobj.TxO.t};cc.c.push(cmnt)}break;default:switch(R.n){case"ClrtClient":break;case"XFExt":update_xfext(XFs[val.ixfe],val.ext);break;case"NameCmt":break;case"Header":break;case"Footer":break;case"HCenter":break;case"VCenter":break;case"Pls":break;case"Setup":break;case"DefColWidth":break;case"GCW":break;case"LHRecord":break;case"ColInfo":break;case"Row":break;case"DBCell":break;case"MulBlank":break;case"EntExU2":break;case"SxView":break;case"Sxvd":break;case"SXVI":break;case"SXVDEx":break;case"SxIvd":break;case"SXDI":break;case"SXLI":break;case"SXEx":break;case"QsiSXTag":break;case"Selection":break;case"Feat":break;case"FeatHdr":case"FeatHdr11":break;case"Feature11":case"Feature12":case"List12":break;case"Blank":break;case"Country":country=val;break;case"RecalcId":break;case"DefaultRowHeight":case"DxGCol":break;case"Fbi":case"Fbi2":case"GelFrame":break;case"Font":break;case"XFCRC":break;case"Style":break;case"StyleExt":break;case"Palette":palette=val;break;case"Theme":break;case"ScenarioProtect":break;case"ObjProtect":break;case"CondFmt12":break;case"Table":break;case"TableStyles":break;case"TableStyle":break;case"TableStyleElement":break;case"SXStreamID":break;case"SXVS":break;case"DConRef":break;case"SXAddl":break;case"DConBin":break;case"DConName":break;case"SXPI":break;case"SxFormat":break;case"SxSelect":break;case"SxRule":break;case"SxFilt":break;case"SxItm":break;case"SxDXF":break;case"ScenMan":break;case"DCon":break;case"CellWatch":break;case"PrintRowCol":break;case"PrintGrid":break;case"PrintSize":break;case"XCT":break;case"CRN":break;case"Scl":{}break;case"SheetExt":{}break;case"SheetExtOptional":{}break;case"ObNoMacros":{}break;case"ObProj":{}break;case"CodeName":{}break;case"GUIDTypeLib":{}break;case"WOpt":break;case"PhoneticInfo":break;case"OleObjectSize":break;case"DXF":case"DXFN":case"DXFN12":case"DXFN12List":case"DXFN12NoCB":break;case"Dv":case"DVal":break;case"BRAI":case"Series":case"SeriesText":break;case"DConn":break;case"DbOrParamQry":break;case"DBQueryExt":break;case"IFmtRecord":break;case"CondFmt":case"CF":case"CF12":case"CFEx":break;case"Excel9File":break;case"Units":break;case"InterfaceHdr":case"Mms":case"InterfaceEnd":case"DSF":case"BuiltInFnGroupCount":case"Window1":case"Window2":case"HideObj":case"GridSet":case"Guts":case"UserBView":case"UserSViewBegin":case"UserSViewEnd":case"Pane":break;default:switch(R.n){case"Dat":case"Begin":case"End":case"StartBlock":case"EndBlock":case"Frame":case"Area":case"Axis":case"AxisLine":case"Tick":break;case"AxesUsed":case"CrtLayout12":case"CrtLayout12A":case"CrtLink":case"CrtLine":case"CrtMlFrt":case"CrtMlFrtContinue":break;case"LineFormat":case"AreaFormat":case"Chart":case"Chart3d":case"Chart3DBarShape":case"ChartFormat":case"ChartFrtInfo":break;case"PlotArea":case"PlotGrowth":break;case"SeriesList":case"SerParent":case"SerAuxTrend":break;case"DataFormat":case"SerToCrt":case"FontX":break;case"CatSerRange":case"AxcExt":case"SerFmt":break;case"ShtProps":break;case"DefaultText":case"Text":case"CatLab":break;case"DataLabExtContents":break;case"Legend":case"LegendException":break;case"Pie":case"Scatter":break;case"PieFormat":case"MarkerFormat":break;case"StartObject":case"EndObject":break;case"AlRuns":case"ObjectLink":break;case"SIIndex":break;case"AttachedLabel":case"YMult":break;case"Line":case"Bar":break;case"Surf":break;case"AxisParent":break;case"Pos":break;case"ValueRange":break;case"SXViewEx9":break;case"SXViewLink":break;case"PivotChartBits":break;case"SBaseRef":break;case"TextPropsStream":break;case"LnExt":break;case"MkrExt":break;case"CrtCoopt":break;case"Qsi":case"Qsif":case"Qsir":case"QsiSXTag":break;case"TxtQry":break;case"FilterMode":break;case"AutoFilter":case"AutoFilterInfo":break;case"AutoFilter12":break;case"DropDownObjIds":break;case"Sort":break;case"SortData":break;case"ShapePropsStream":break;case"MsoDrawing":case"MsoDrawingGroup":case"MsoDrawingSelection":break;case"ImData":break;case"WebPub":case"AutoWebPub":case"RightMargin":case"LeftMargin":case"TopMargin":case"BottomMargin":case"HeaderFooter":case"HFPicture":case"PLV":case"HorizontalPageBreaks":case"VerticalPageBreaks":case"Backup":case"CompressPictures":case"Compat12":break;case"Continue":case"ContinueFrt12":break;case"FrtFontList":case"FrtWrapper":break;case"ExternCount":break;case"RString":break;case"TabIdConf":case"Radar":case"RadarArea":case"DropBar":case"Intl":case"CoordList":case"SerAuxErrBar":break;default:switch(R.n){case"SCENARIO":case"DConBin":case"PicF":case"DataLabExt":case"Lel":case"BopPop":case"BopPopCustom":case"RealTimeData":case"Name":break;default:if(options.WTF)throw"Unrecognized Record "+R.n}}}}}else blob.l+=length}var sheetnamesraw=opts.biff===2?["Sheet1"]:Object.keys(Directory).sort(function(a,b){return Number(a)-Number(b)}).map(function(x){return Directory[x].name});var sheetnames=sheetnamesraw.slice();wb.Directory=sheetnamesraw;wb.SheetNames=sheetnamesraw;if(!options.bookSheets)wb.Sheets=Sheets;wb.Preamble=Preamble;wb.Strings=sst;wb.SSF=SSF.get_table();if(opts.enc)wb.Encryption=opts.enc;wb.Metadata={};if(country!==undefined)wb.Metadata.Country=country;return wb}function parse_xlscfb(cfb,options){if(!options)options={};fix_read_opts(options);reset_cp();var CompObj,Summary,Workbook;if(cfb.find){CompObj=cfb.find("!CompObj");Summary=cfb.find("!SummaryInformation");Workbook=cfb.find("/Workbook")}else{prep_blob(cfb,0);Workbook={content:cfb}}if(!Workbook)Workbook=cfb.find("/Book");var CompObjP,SummaryP,WorkbookP;if(CompObj)CompObjP=parse_compobj(CompObj);if(options.bookProps&&!options.bookSheets)WorkbookP={};else{if(Workbook)WorkbookP=parse_workbook(Workbook.content,options,!!Workbook.find);else throw new Error("Cannot find Workbook stream")}if(cfb.find)parse_props(cfb);var props={};for(var y in cfb.Summary)props[y]=cfb.Summary[y];for(y in cfb.DocSummary)props[y]=cfb.DocSummary[y];WorkbookP.Props=WorkbookP.Custprops=props;if(options.bookFiles)WorkbookP.cfb=cfb;WorkbookP.CompObjP=CompObjP;return WorkbookP}function parse_props(cfb){var DSI=cfb.find("!DocumentSummaryInformation");if(DSI)try{cfb.DocSummary=parse_PropertySetStream(DSI,DocSummaryPIDDSI)}catch(e){}var SI=cfb.find("!SummaryInformation");if(SI)try{cfb.Summary=parse_PropertySetStream(SI,SummaryPIDSI)}catch(e){}}var XLSBRecordEnum={0:{n:"BrtRowHdr",f:parse_BrtRowHdr},1:{n:"BrtCellBlank",f:parse_BrtCellBlank},2:{n:"BrtCellRk",f:parse_BrtCellRk},3:{n:"BrtCellError",f:parse_BrtCellError},4:{n:"BrtCellBool",f:parse_BrtCellBool},5:{n:"BrtCellReal",f:parse_BrtCellReal},6:{n:"BrtCellSt",f:parse_BrtCellSt},7:{n:"BrtCellIsst",f:parse_BrtCellIsst},8:{n:"BrtFmlaString",f:parse_BrtFmlaString},9:{n:"BrtFmlaNum",f:parse_BrtFmlaNum},10:{n:"BrtFmlaBool",f:parse_BrtFmlaBool},11:{n:"BrtFmlaError",f:parse_BrtFmlaError},16:{n:"BrtFRTArchID$",f:parse_BrtFRTArchID$},19:{n:"BrtSSTItem",f:parse_RichStr},20:{n:"BrtPCDIMissing",f:parsenoop},21:{n:"BrtPCDINumber",f:parsenoop},22:{n:"BrtPCDIBoolean",f:parsenoop},23:{n:"BrtPCDIError",f:parsenoop},24:{n:"BrtPCDIString",f:parsenoop},25:{n:"BrtPCDIDatetime",f:parsenoop},26:{n:"BrtPCDIIndex",f:parsenoop},27:{n:"BrtPCDIAMissing",f:parsenoop},28:{n:"BrtPCDIANumber",f:parsenoop},29:{n:"BrtPCDIABoolean",f:parsenoop},30:{n:"BrtPCDIAError",f:parsenoop},31:{n:"BrtPCDIAString",f:parsenoop},32:{n:"BrtPCDIADatetime",f:parsenoop},33:{n:"BrtPCRRecord",f:parsenoop},34:{n:"BrtPCRRecordDt",f:parsenoop},35:{n:"BrtFRTBegin",f:parsenoop},36:{n:"BrtFRTEnd",f:parsenoop},37:{n:"BrtACBegin",f:parsenoop},38:{n:"BrtACEnd",f:parsenoop},39:{n:"BrtName",f:parsenoop},40:{n:"BrtIndexRowBlock",f:parsenoop},42:{n:"BrtIndexBlock",f:parsenoop},43:{n:"BrtFont",f:parse_BrtFont},44:{n:"BrtFmt",f:parse_BrtFmt},45:{n:"BrtFill",f:parsenoop},46:{n:"BrtBorder",f:parsenoop},47:{n:"BrtXF",f:parse_BrtXF},48:{n:"BrtStyle",f:parsenoop},49:{n:"BrtCellMeta",f:parsenoop},50:{n:"BrtValueMeta",f:parsenoop},51:{n:"BrtMdb",f:parsenoop},52:{n:"BrtBeginFmd",f:parsenoop},53:{n:"BrtEndFmd",f:parsenoop},54:{n:"BrtBeginMdx",f:parsenoop},55:{n:"BrtEndMdx",f:parsenoop},56:{n:"BrtBeginMdxTuple",f:parsenoop},57:{n:"BrtEndMdxTuple",f:parsenoop},58:{n:"BrtMdxMbrIstr",f:parsenoop},59:{n:"BrtStr",f:parsenoop},60:{n:"BrtColInfo",f:parsenoop},62:{n:"BrtCellRString",f:parsenoop},63:{n:"BrtCalcChainItem$",f:parse_BrtCalcChainItem$},64:{n:"BrtDVal",f:parsenoop},65:{n:"BrtSxvcellNum",f:parsenoop},66:{n:"BrtSxvcellStr",f:parsenoop},67:{n:"BrtSxvcellBool",f:parsenoop},68:{n:"BrtSxvcellErr",f:parsenoop},69:{n:"BrtSxvcellDate",f:parsenoop},70:{n:"BrtSxvcellNil",f:parsenoop},128:{n:"BrtFileVersion",f:parsenoop},129:{n:"BrtBeginSheet",f:parsenoop},130:{n:"BrtEndSheet",f:parsenoop},131:{n:"BrtBeginBook",f:parsenoop,p:0},132:{n:"BrtEndBook",f:parsenoop},133:{n:"BrtBeginWsViews",f:parsenoop},134:{n:"BrtEndWsViews",f:parsenoop},135:{n:"BrtBeginBookViews",f:parsenoop},136:{n:"BrtEndBookViews",f:parsenoop},137:{n:"BrtBeginWsView",f:parsenoop},138:{n:"BrtEndWsView",f:parsenoop},139:{n:"BrtBeginCsViews",f:parsenoop},140:{n:"BrtEndCsViews",f:parsenoop},141:{n:"BrtBeginCsView",f:parsenoop},142:{n:"BrtEndCsView",f:parsenoop},143:{n:"BrtBeginBundleShs",f:parsenoop},144:{n:"BrtEndBundleShs",f:parsenoop},145:{n:"BrtBeginSheetData",f:parsenoop},146:{n:"BrtEndSheetData",f:parsenoop},147:{n:"BrtWsProp",f:parse_BrtWsProp},148:{n:"BrtWsDim",f:parse_BrtWsDim,p:16},151:{n:"BrtPane",f:parsenoop},152:{n:"BrtSel",f:parsenoop},153:{n:"BrtWbProp",f:parse_BrtWbProp},154:{n:"BrtWbFactoid",f:parsenoop},155:{n:"BrtFileRecover",f:parsenoop},156:{n:"BrtBundleSh",f:parse_BrtBundleSh},157:{n:"BrtCalcProp",f:parsenoop},158:{n:"BrtBookView",f:parsenoop},159:{n:"BrtBeginSst",f:parse_BrtBeginSst},160:{n:"BrtEndSst",f:parsenoop},161:{n:"BrtBeginAFilter",f:parsenoop},162:{n:"BrtEndAFilter",f:parsenoop},163:{n:"BrtBeginFilterColumn",f:parsenoop},164:{n:"BrtEndFilterColumn",f:parsenoop},165:{n:"BrtBeginFilters",f:parsenoop},166:{n:"BrtEndFilters",f:parsenoop},167:{n:"BrtFilter",f:parsenoop},168:{n:"BrtColorFilter",f:parsenoop},169:{n:"BrtIconFilter",f:parsenoop},170:{n:"BrtTop10Filter",f:parsenoop},171:{n:"BrtDynamicFilter",f:parsenoop},172:{n:"BrtBeginCustomFilters",f:parsenoop},173:{n:"BrtEndCustomFilters",f:parsenoop},174:{n:"BrtCustomFilter",f:parsenoop},175:{n:"BrtAFilterDateGroupItem",f:parsenoop},176:{n:"BrtMergeCell",f:parse_BrtMergeCell},177:{n:"BrtBeginMergeCells",f:parsenoop},178:{n:"BrtEndMergeCells",f:parsenoop},179:{n:"BrtBeginPivotCacheDef",f:parsenoop},180:{n:"BrtEndPivotCacheDef",f:parsenoop},181:{n:"BrtBeginPCDFields",f:parsenoop},182:{n:"BrtEndPCDFields",f:parsenoop},183:{n:"BrtBeginPCDField",f:parsenoop},184:{n:"BrtEndPCDField",f:parsenoop},185:{n:"BrtBeginPCDSource",f:parsenoop},186:{n:"BrtEndPCDSource",f:parsenoop},187:{n:"BrtBeginPCDSRange",f:parsenoop},188:{n:"BrtEndPCDSRange",f:parsenoop},189:{n:"BrtBeginPCDFAtbl",f:parsenoop},190:{n:"BrtEndPCDFAtbl",f:parsenoop},191:{n:"BrtBeginPCDIRun",f:parsenoop},192:{n:"BrtEndPCDIRun",f:parsenoop},193:{n:"BrtBeginPivotCacheRecords",f:parsenoop},194:{n:"BrtEndPivotCacheRecords",f:parsenoop},195:{n:"BrtBeginPCDHierarchies",f:parsenoop},196:{n:"BrtEndPCDHierarchies",f:parsenoop},197:{n:"BrtBeginPCDHierarchy",f:parsenoop},198:{n:"BrtEndPCDHierarchy",f:parsenoop},199:{n:"BrtBeginPCDHFieldsUsage",f:parsenoop},200:{n:"BrtEndPCDHFieldsUsage",f:parsenoop},201:{n:"BrtBeginExtConnection",f:parsenoop},202:{n:"BrtEndExtConnection",f:parsenoop},203:{n:"BrtBeginECDbProps",f:parsenoop},204:{n:"BrtEndECDbProps",f:parsenoop},205:{n:"BrtBeginECOlapProps",f:parsenoop},206:{n:"BrtEndECOlapProps",f:parsenoop},207:{n:"BrtBeginPCDSConsol",f:parsenoop},208:{n:"BrtEndPCDSConsol",f:parsenoop},209:{n:"BrtBeginPCDSCPages",f:parsenoop},210:{n:"BrtEndPCDSCPages",f:parsenoop},211:{n:"BrtBeginPCDSCPage",f:parsenoop},212:{n:"BrtEndPCDSCPage",f:parsenoop},213:{n:"BrtBeginPCDSCPItem",f:parsenoop},214:{n:"BrtEndPCDSCPItem",f:parsenoop},215:{n:"BrtBeginPCDSCSets",f:parsenoop},216:{n:"BrtEndPCDSCSets",f:parsenoop},217:{n:"BrtBeginPCDSCSet",f:parsenoop},218:{n:"BrtEndPCDSCSet",f:parsenoop},219:{n:"BrtBeginPCDFGroup",f:parsenoop},220:{n:"BrtEndPCDFGroup",f:parsenoop},221:{n:"BrtBeginPCDFGItems",f:parsenoop},222:{n:"BrtEndPCDFGItems",f:parsenoop},223:{n:"BrtBeginPCDFGRange",f:parsenoop},224:{n:"BrtEndPCDFGRange",f:parsenoop},225:{n:"BrtBeginPCDFGDiscrete",f:parsenoop},226:{n:"BrtEndPCDFGDiscrete",f:parsenoop},227:{n:"BrtBeginPCDSDTupleCache",f:parsenoop},228:{n:"BrtEndPCDSDTupleCache",f:parsenoop},229:{n:"BrtBeginPCDSDTCEntries",f:parsenoop},230:{n:"BrtEndPCDSDTCEntries",f:parsenoop},231:{n:"BrtBeginPCDSDTCEMembers",f:parsenoop},232:{n:"BrtEndPCDSDTCEMembers",f:parsenoop},233:{n:"BrtBeginPCDSDTCEMember",f:parsenoop},234:{n:"BrtEndPCDSDTCEMember",f:parsenoop},235:{n:"BrtBeginPCDSDTCQueries",f:parsenoop},236:{n:"BrtEndPCDSDTCQueries",f:parsenoop},237:{n:"BrtBeginPCDSDTCQuery",f:parsenoop},238:{n:"BrtEndPCDSDTCQuery",f:parsenoop},239:{n:"BrtBeginPCDSDTCSets",f:parsenoop},240:{n:"BrtEndPCDSDTCSets",f:parsenoop},241:{n:"BrtBeginPCDSDTCSet",f:parsenoop},242:{n:"BrtEndPCDSDTCSet",f:parsenoop},243:{n:"BrtBeginPCDCalcItems",f:parsenoop},244:{n:"BrtEndPCDCalcItems",f:parsenoop},245:{n:"BrtBeginPCDCalcItem",f:parsenoop},246:{n:"BrtEndPCDCalcItem",f:parsenoop},247:{n:"BrtBeginPRule",f:parsenoop},248:{n:"BrtEndPRule",f:parsenoop},249:{n:"BrtBeginPRFilters",f:parsenoop},250:{n:"BrtEndPRFilters",f:parsenoop},251:{n:"BrtBeginPRFilter",f:parsenoop},252:{n:"BrtEndPRFilter",f:parsenoop},253:{n:"BrtBeginPNames",f:parsenoop},254:{n:"BrtEndPNames",f:parsenoop},255:{n:"BrtBeginPName",f:parsenoop},256:{n:"BrtEndPName",f:parsenoop},257:{n:"BrtBeginPNPairs",f:parsenoop},258:{n:"BrtEndPNPairs",f:parsenoop},259:{n:"BrtBeginPNPair",f:parsenoop},260:{n:"BrtEndPNPair",f:parsenoop},261:{n:"BrtBeginECWebProps",f:parsenoop},262:{n:"BrtEndECWebProps",f:parsenoop},263:{n:"BrtBeginEcWpTables",f:parsenoop},264:{n:"BrtEndECWPTables",f:parsenoop},265:{n:"BrtBeginECParams",f:parsenoop},266:{n:"BrtEndECParams",f:parsenoop},267:{n:"BrtBeginECParam",f:parsenoop},268:{n:"BrtEndECParam",f:parsenoop},269:{n:"BrtBeginPCDKPIs",f:parsenoop},270:{n:"BrtEndPCDKPIs",f:parsenoop},271:{n:"BrtBeginPCDKPI",f:parsenoop},272:{n:"BrtEndPCDKPI",f:parsenoop},273:{n:"BrtBeginDims",f:parsenoop},274:{n:"BrtEndDims",f:parsenoop},275:{n:"BrtBeginDim",f:parsenoop},276:{n:"BrtEndDim",f:parsenoop},277:{n:"BrtIndexPartEnd",f:parsenoop},278:{n:"BrtBeginStyleSheet",f:parsenoop},279:{n:"BrtEndStyleSheet",f:parsenoop},280:{n:"BrtBeginSXView",f:parsenoop},281:{n:"BrtEndSXVI",f:parsenoop},282:{n:"BrtBeginSXVI",f:parsenoop},283:{n:"BrtBeginSXVIs",f:parsenoop},284:{n:"BrtEndSXVIs",f:parsenoop},285:{n:"BrtBeginSXVD",f:parsenoop},286:{n:"BrtEndSXVD",f:parsenoop},287:{n:"BrtBeginSXVDs",f:parsenoop},288:{n:"BrtEndSXVDs",f:parsenoop},289:{n:"BrtBeginSXPI",f:parsenoop},290:{n:"BrtEndSXPI",f:parsenoop},291:{n:"BrtBeginSXPIs",f:parsenoop},292:{n:"BrtEndSXPIs",f:parsenoop},293:{n:"BrtBeginSXDI",f:parsenoop},294:{n:"BrtEndSXDI",f:parsenoop},295:{n:"BrtBeginSXDIs",f:parsenoop},296:{n:"BrtEndSXDIs",f:parsenoop},297:{n:"BrtBeginSXLI",f:parsenoop},298:{n:"BrtEndSXLI",f:parsenoop},299:{n:"BrtBeginSXLIRws",f:parsenoop},300:{n:"BrtEndSXLIRws",f:parsenoop},301:{n:"BrtBeginSXLICols",f:parsenoop},302:{n:"BrtEndSXLICols",f:parsenoop},303:{n:"BrtBeginSXFormat",f:parsenoop},304:{n:"BrtEndSXFormat",f:parsenoop},305:{n:"BrtBeginSXFormats",f:parsenoop},306:{n:"BrtEndSxFormats",f:parsenoop},307:{n:"BrtBeginSxSelect",f:parsenoop},308:{n:"BrtEndSxSelect",f:parsenoop},309:{n:"BrtBeginISXVDRws",f:parsenoop},310:{n:"BrtEndISXVDRws",f:parsenoop},311:{n:"BrtBeginISXVDCols",f:parsenoop},312:{n:"BrtEndISXVDCols",f:parsenoop},313:{n:"BrtEndSXLocation",f:parsenoop},314:{n:"BrtBeginSXLocation",f:parsenoop},315:{n:"BrtEndSXView",f:parsenoop},316:{n:"BrtBeginSXTHs",f:parsenoop},317:{n:"BrtEndSXTHs",f:parsenoop},318:{n:"BrtBeginSXTH",f:parsenoop},319:{n:"BrtEndSXTH",f:parsenoop},320:{n:"BrtBeginISXTHRws",f:parsenoop},321:{n:"BrtEndISXTHRws",f:parsenoop},322:{n:"BrtBeginISXTHCols",f:parsenoop},323:{n:"BrtEndISXTHCols",f:parsenoop},324:{n:"BrtBeginSXTDMPS",f:parsenoop},325:{n:"BrtEndSXTDMPs",f:parsenoop},326:{n:"BrtBeginSXTDMP",f:parsenoop},327:{n:"BrtEndSXTDMP",f:parsenoop},328:{n:"BrtBeginSXTHItems",f:parsenoop},329:{n:"BrtEndSXTHItems",f:parsenoop},330:{n:"BrtBeginSXTHItem",f:parsenoop},331:{n:"BrtEndSXTHItem",f:parsenoop},332:{n:"BrtBeginMetadata",f:parsenoop},333:{n:"BrtEndMetadata",f:parsenoop},334:{n:"BrtBeginEsmdtinfo",f:parsenoop},335:{n:"BrtMdtinfo",f:parsenoop},336:{n:"BrtEndEsmdtinfo",f:parsenoop},337:{n:"BrtBeginEsmdb",f:parsenoop},338:{n:"BrtEndEsmdb",f:parsenoop},339:{n:"BrtBeginEsfmd",f:parsenoop},340:{n:"BrtEndEsfmd",f:parsenoop},341:{n:"BrtBeginSingleCells",f:parsenoop},342:{n:"BrtEndSingleCells",f:parsenoop},343:{n:"BrtBeginList",f:parsenoop},344:{n:"BrtEndList",f:parsenoop},345:{n:"BrtBeginListCols",f:parsenoop},346:{n:"BrtEndListCols",f:parsenoop},347:{n:"BrtBeginListCol",f:parsenoop},348:{n:"BrtEndListCol",f:parsenoop},349:{n:"BrtBeginListXmlCPr",f:parsenoop},350:{n:"BrtEndListXmlCPr",f:parsenoop},351:{n:"BrtListCCFmla",f:parsenoop},352:{n:"BrtListTrFmla",f:parsenoop},353:{n:"BrtBeginExternals",f:parsenoop},354:{n:"BrtEndExternals",f:parsenoop},355:{n:"BrtSupBookSrc",f:parsenoop},357:{n:"BrtSupSelf",f:parsenoop},358:{n:"BrtSupSame",f:parsenoop},359:{n:"BrtSupTabs",f:parsenoop},360:{n:"BrtBeginSupBook",f:parsenoop},361:{n:"BrtPlaceholderName",f:parsenoop},362:{n:"BrtExternSheet",f:parsenoop},363:{n:"BrtExternTableStart",f:parsenoop},364:{n:"BrtExternTableEnd",f:parsenoop},366:{n:"BrtExternRowHdr",f:parsenoop},367:{n:"BrtExternCellBlank",f:parsenoop},368:{n:"BrtExternCellReal",f:parsenoop},369:{n:"BrtExternCellBool",f:parsenoop},370:{n:"BrtExternCellError",f:parsenoop},371:{n:"BrtExternCellString",f:parsenoop},372:{n:"BrtBeginEsmdx",f:parsenoop},373:{n:"BrtEndEsmdx",f:parsenoop},374:{n:"BrtBeginMdxSet",f:parsenoop},375:{n:"BrtEndMdxSet",f:parsenoop},376:{n:"BrtBeginMdxMbrProp",f:parsenoop},377:{n:"BrtEndMdxMbrProp",f:parsenoop},378:{n:"BrtBeginMdxKPI",f:parsenoop},379:{n:"BrtEndMdxKPI",f:parsenoop},380:{n:"BrtBeginEsstr",f:parsenoop},381:{n:"BrtEndEsstr",f:parsenoop},382:{n:"BrtBeginPRFItem",f:parsenoop},383:{n:"BrtEndPRFItem",f:parsenoop},384:{n:"BrtBeginPivotCacheIDs",f:parsenoop},385:{n:"BrtEndPivotCacheIDs",f:parsenoop},386:{n:"BrtBeginPivotCacheID",f:parsenoop},387:{n:"BrtEndPivotCacheID",f:parsenoop},388:{n:"BrtBeginISXVIs",f:parsenoop},389:{n:"BrtEndISXVIs",f:parsenoop},390:{n:"BrtBeginColInfos",f:parsenoop},391:{n:"BrtEndColInfos",f:parsenoop},392:{n:"BrtBeginRwBrk",f:parsenoop},393:{n:"BrtEndRwBrk",f:parsenoop},394:{n:"BrtBeginColBrk",f:parsenoop},395:{n:"BrtEndColBrk",f:parsenoop},396:{n:"BrtBrk",f:parsenoop},397:{n:"BrtUserBookView",f:parsenoop},398:{n:"BrtInfo",f:parsenoop},399:{n:"BrtCUsr",f:parsenoop},400:{n:"BrtUsr",f:parsenoop},401:{n:"BrtBeginUsers",f:parsenoop},403:{n:"BrtEOF",f:parsenoop},404:{n:"BrtUCR",f:parsenoop},405:{n:"BrtRRInsDel",f:parsenoop},406:{n:"BrtRREndInsDel",f:parsenoop},407:{n:"BrtRRMove",f:parsenoop},408:{n:"BrtRREndMove",f:parsenoop},409:{n:"BrtRRChgCell",f:parsenoop},410:{n:"BrtRREndChgCell",f:parsenoop},411:{n:"BrtRRHeader",f:parsenoop},412:{n:"BrtRRUserView",f:parsenoop},413:{n:"BrtRRRenSheet",f:parsenoop},414:{n:"BrtRRInsertSh",f:parsenoop},415:{n:"BrtRRDefName",f:parsenoop},416:{n:"BrtRRNote",f:parsenoop},417:{n:"BrtRRConflict",f:parsenoop},418:{n:"BrtRRTQSIF",f:parsenoop},419:{n:"BrtRRFormat",f:parsenoop},420:{n:"BrtRREndFormat",f:parsenoop},421:{n:"BrtRRAutoFmt",f:parsenoop},422:{n:"BrtBeginUserShViews",f:parsenoop},423:{n:"BrtBeginUserShView",f:parsenoop},424:{n:"BrtEndUserShView",f:parsenoop},425:{n:"BrtEndUserShViews",f:parsenoop},426:{n:"BrtArrFmla",f:parsenoop},427:{n:"BrtShrFmla",f:parsenoop},428:{n:"BrtTable",f:parsenoop},429:{n:"BrtBeginExtConnections",f:parsenoop},430:{n:"BrtEndExtConnections",f:parsenoop},431:{n:"BrtBeginPCDCalcMems",f:parsenoop},432:{n:"BrtEndPCDCalcMems",f:parsenoop},433:{n:"BrtBeginPCDCalcMem",f:parsenoop},434:{n:"BrtEndPCDCalcMem",f:parsenoop},435:{n:"BrtBeginPCDHGLevels",f:parsenoop},436:{n:"BrtEndPCDHGLevels",f:parsenoop},437:{n:"BrtBeginPCDHGLevel",f:parsenoop},438:{n:"BrtEndPCDHGLevel",f:parsenoop},439:{n:"BrtBeginPCDHGLGroups",f:parsenoop},440:{n:"BrtEndPCDHGLGroups",f:parsenoop},441:{n:"BrtBeginPCDHGLGroup",f:parsenoop},442:{n:"BrtEndPCDHGLGroup",f:parsenoop},443:{n:"BrtBeginPCDHGLGMembers",f:parsenoop},444:{n:"BrtEndPCDHGLGMembers",f:parsenoop},445:{n:"BrtBeginPCDHGLGMember",f:parsenoop},446:{n:"BrtEndPCDHGLGMember",f:parsenoop},447:{n:"BrtBeginQSI",f:parsenoop},448:{n:"BrtEndQSI",f:parsenoop},449:{n:"BrtBeginQSIR",f:parsenoop},450:{n:"BrtEndQSIR",f:parsenoop},451:{n:"BrtBeginDeletedNames",f:parsenoop},452:{n:"BrtEndDeletedNames",f:parsenoop},453:{n:"BrtBeginDeletedName",f:parsenoop},454:{n:"BrtEndDeletedName",f:parsenoop},455:{n:"BrtBeginQSIFs",f:parsenoop},456:{n:"BrtEndQSIFs",f:parsenoop},457:{n:"BrtBeginQSIF",f:parsenoop},458:{n:"BrtEndQSIF",f:parsenoop},459:{n:"BrtBeginAutoSortScope",f:parsenoop},460:{n:"BrtEndAutoSortScope",f:parsenoop},461:{n:"BrtBeginConditionalFormatting",f:parsenoop},462:{n:"BrtEndConditionalFormatting",f:parsenoop},463:{n:"BrtBeginCFRule",f:parsenoop},464:{n:"BrtEndCFRule",f:parsenoop},465:{n:"BrtBeginIconSet",f:parsenoop},466:{n:"BrtEndIconSet",f:parsenoop},467:{n:"BrtBeginDatabar",f:parsenoop},468:{n:"BrtEndDatabar",f:parsenoop},469:{n:"BrtBeginColorScale",f:parsenoop},470:{n:"BrtEndColorScale",f:parsenoop},471:{n:"BrtCFVO",f:parsenoop},472:{n:"BrtExternValueMeta",f:parsenoop},473:{n:"BrtBeginColorPalette",f:parsenoop},474:{n:"BrtEndColorPalette",f:parsenoop},475:{n:"BrtIndexedColor",f:parsenoop},476:{n:"BrtMargins",f:parsenoop},477:{n:"BrtPrintOptions",f:parsenoop},478:{n:"BrtPageSetup",f:parsenoop},479:{n:"BrtBeginHeaderFooter",f:parsenoop},480:{n:"BrtEndHeaderFooter",f:parsenoop},481:{n:"BrtBeginSXCrtFormat",f:parsenoop},482:{n:"BrtEndSXCrtFormat",f:parsenoop},483:{n:"BrtBeginSXCrtFormats",f:parsenoop},484:{n:"BrtEndSXCrtFormats",f:parsenoop},485:{n:"BrtWsFmtInfo",f:parsenoop},486:{n:"BrtBeginMgs",f:parsenoop},487:{n:"BrtEndMGs",f:parsenoop},488:{n:"BrtBeginMGMaps",f:parsenoop},489:{n:"BrtEndMGMaps",f:parsenoop},490:{n:"BrtBeginMG",f:parsenoop},491:{n:"BrtEndMG",f:parsenoop},492:{n:"BrtBeginMap",f:parsenoop},493:{n:"BrtEndMap",f:parsenoop},494:{n:"BrtHLink",f:parse_BrtHLink},495:{n:"BrtBeginDCon",f:parsenoop},496:{n:"BrtEndDCon",f:parsenoop},497:{n:"BrtBeginDRefs",f:parsenoop},498:{n:"BrtEndDRefs",f:parsenoop},499:{n:"BrtDRef",f:parsenoop},500:{n:"BrtBeginScenMan",f:parsenoop},501:{n:"BrtEndScenMan",f:parsenoop},502:{n:"BrtBeginSct",f:parsenoop},503:{n:"BrtEndSct",f:parsenoop},504:{n:"BrtSlc",f:parsenoop},505:{n:"BrtBeginDXFs",f:parsenoop},506:{n:"BrtEndDXFs",f:parsenoop},507:{n:"BrtDXF",f:parsenoop},508:{n:"BrtBeginTableStyles",f:parsenoop},509:{n:"BrtEndTableStyles",f:parsenoop},510:{n:"BrtBeginTableStyle",f:parsenoop},511:{n:"BrtEndTableStyle",f:parsenoop},512:{n:"BrtTableStyleElement",f:parsenoop},513:{n:"BrtTableStyleClient",f:parsenoop},514:{n:"BrtBeginVolDeps",f:parsenoop},515:{n:"BrtEndVolDeps",f:parsenoop},516:{n:"BrtBeginVolType",f:parsenoop},517:{n:"BrtEndVolType",f:parsenoop},518:{n:"BrtBeginVolMain",f:parsenoop},519:{n:"BrtEndVolMain",f:parsenoop},520:{n:"BrtBeginVolTopic",f:parsenoop},521:{n:"BrtEndVolTopic",f:parsenoop},522:{n:"BrtVolSubtopic",f:parsenoop},523:{n:"BrtVolRef",f:parsenoop},524:{n:"BrtVolNum",f:parsenoop},525:{n:"BrtVolErr",f:parsenoop},526:{n:"BrtVolStr",f:parsenoop},527:{n:"BrtVolBool",f:parsenoop},528:{n:"BrtBeginCalcChain$",f:parsenoop},529:{n:"BrtEndCalcChain$",f:parsenoop},530:{n:"BrtBeginSortState",f:parsenoop},531:{n:"BrtEndSortState",f:parsenoop},532:{n:"BrtBeginSortCond",f:parsenoop},533:{n:"BrtEndSortCond",f:parsenoop},534:{n:"BrtBookProtection",f:parsenoop},535:{n:"BrtSheetProtection",f:parsenoop},536:{n:"BrtRangeProtection",f:parsenoop},537:{n:"BrtPhoneticInfo",f:parsenoop},538:{n:"BrtBeginECTxtWiz",f:parsenoop},539:{n:"BrtEndECTxtWiz",
f:parsenoop},540:{n:"BrtBeginECTWFldInfoLst",f:parsenoop},541:{n:"BrtEndECTWFldInfoLst",f:parsenoop},542:{n:"BrtBeginECTwFldInfo",f:parsenoop},548:{n:"BrtFileSharing",f:parsenoop},549:{n:"BrtOleSize",f:parsenoop},550:{n:"BrtDrawing",f:parsenoop},551:{n:"BrtLegacyDrawing",f:parsenoop},552:{n:"BrtLegacyDrawingHF",f:parsenoop},553:{n:"BrtWebOpt",f:parsenoop},554:{n:"BrtBeginWebPubItems",f:parsenoop},555:{n:"BrtEndWebPubItems",f:parsenoop},556:{n:"BrtBeginWebPubItem",f:parsenoop},557:{n:"BrtEndWebPubItem",f:parsenoop},558:{n:"BrtBeginSXCondFmt",f:parsenoop},559:{n:"BrtEndSXCondFmt",f:parsenoop},560:{n:"BrtBeginSXCondFmts",f:parsenoop},561:{n:"BrtEndSXCondFmts",f:parsenoop},562:{n:"BrtBkHim",f:parsenoop},564:{n:"BrtColor",f:parsenoop},565:{n:"BrtBeginIndexedColors",f:parsenoop},566:{n:"BrtEndIndexedColors",f:parsenoop},569:{n:"BrtBeginMRUColors",f:parsenoop},570:{n:"BrtEndMRUColors",f:parsenoop},572:{n:"BrtMRUColor",f:parsenoop},573:{n:"BrtBeginDVals",f:parsenoop},574:{n:"BrtEndDVals",f:parsenoop},577:{n:"BrtSupNameStart",f:parsenoop},578:{n:"BrtSupNameValueStart",f:parsenoop},579:{n:"BrtSupNameValueEnd",f:parsenoop},580:{n:"BrtSupNameNum",f:parsenoop},581:{n:"BrtSupNameErr",f:parsenoop},582:{n:"BrtSupNameSt",f:parsenoop},583:{n:"BrtSupNameNil",f:parsenoop},584:{n:"BrtSupNameBool",f:parsenoop},585:{n:"BrtSupNameFmla",f:parsenoop},586:{n:"BrtSupNameBits",f:parsenoop},587:{n:"BrtSupNameEnd",f:parsenoop},588:{n:"BrtEndSupBook",f:parsenoop},589:{n:"BrtCellSmartTagProperty",f:parsenoop},590:{n:"BrtBeginCellSmartTag",f:parsenoop},591:{n:"BrtEndCellSmartTag",f:parsenoop},592:{n:"BrtBeginCellSmartTags",f:parsenoop},593:{n:"BrtEndCellSmartTags",f:parsenoop},594:{n:"BrtBeginSmartTags",f:parsenoop},595:{n:"BrtEndSmartTags",f:parsenoop},596:{n:"BrtSmartTagType",f:parsenoop},597:{n:"BrtBeginSmartTagTypes",f:parsenoop},598:{n:"BrtEndSmartTagTypes",f:parsenoop},599:{n:"BrtBeginSXFilters",f:parsenoop},600:{n:"BrtEndSXFilters",f:parsenoop},601:{n:"BrtBeginSXFILTER",f:parsenoop},602:{n:"BrtEndSXFilter",f:parsenoop},603:{n:"BrtBeginFills",f:parsenoop},604:{n:"BrtEndFills",f:parsenoop},605:{n:"BrtBeginCellWatches",f:parsenoop},606:{n:"BrtEndCellWatches",f:parsenoop},607:{n:"BrtCellWatch",f:parsenoop},608:{n:"BrtBeginCRErrs",f:parsenoop},609:{n:"BrtEndCRErrs",f:parsenoop},610:{n:"BrtCrashRecErr",f:parsenoop},611:{n:"BrtBeginFonts",f:parsenoop},612:{n:"BrtEndFonts",f:parsenoop},613:{n:"BrtBeginBorders",f:parsenoop},614:{n:"BrtEndBorders",f:parsenoop},615:{n:"BrtBeginFmts",f:parsenoop},616:{n:"BrtEndFmts",f:parsenoop},617:{n:"BrtBeginCellXFs",f:parsenoop},618:{n:"BrtEndCellXFs",f:parsenoop},619:{n:"BrtBeginStyles",f:parsenoop},620:{n:"BrtEndStyles",f:parsenoop},625:{n:"BrtBigName",f:parsenoop},626:{n:"BrtBeginCellStyleXFs",f:parsenoop},627:{n:"BrtEndCellStyleXFs",f:parsenoop},628:{n:"BrtBeginComments",f:parsenoop},629:{n:"BrtEndComments",f:parsenoop},630:{n:"BrtBeginCommentAuthors",f:parsenoop},631:{n:"BrtEndCommentAuthors",f:parsenoop},632:{n:"BrtCommentAuthor",f:parse_BrtCommentAuthor},633:{n:"BrtBeginCommentList",f:parsenoop},634:{n:"BrtEndCommentList",f:parsenoop},635:{n:"BrtBeginComment",f:parse_BrtBeginComment},636:{n:"BrtEndComment",f:parsenoop},637:{n:"BrtCommentText",f:parse_BrtCommentText},638:{n:"BrtBeginOleObjects",f:parsenoop},639:{n:"BrtOleObject",f:parsenoop},640:{n:"BrtEndOleObjects",f:parsenoop},641:{n:"BrtBeginSxrules",f:parsenoop},642:{n:"BrtEndSxRules",f:parsenoop},643:{n:"BrtBeginActiveXControls",f:parsenoop},644:{n:"BrtActiveX",f:parsenoop},645:{n:"BrtEndActiveXControls",f:parsenoop},646:{n:"BrtBeginPCDSDTCEMembersSortBy",f:parsenoop},648:{n:"BrtBeginCellIgnoreECs",f:parsenoop},649:{n:"BrtCellIgnoreEC",f:parsenoop},650:{n:"BrtEndCellIgnoreECs",f:parsenoop},651:{n:"BrtCsProp",f:parsenoop},652:{n:"BrtCsPageSetup",f:parsenoop},653:{n:"BrtBeginUserCsViews",f:parsenoop},654:{n:"BrtEndUserCsViews",f:parsenoop},655:{n:"BrtBeginUserCsView",f:parsenoop},656:{n:"BrtEndUserCsView",f:parsenoop},657:{n:"BrtBeginPcdSFCIEntries",f:parsenoop},658:{n:"BrtEndPCDSFCIEntries",f:parsenoop},659:{n:"BrtPCDSFCIEntry",f:parsenoop},660:{n:"BrtBeginListParts",f:parsenoop},661:{n:"BrtListPart",f:parsenoop},662:{n:"BrtEndListParts",f:parsenoop},663:{n:"BrtSheetCalcProp",f:parsenoop},664:{n:"BrtBeginFnGroup",f:parsenoop},665:{n:"BrtFnGroup",f:parsenoop},666:{n:"BrtEndFnGroup",f:parsenoop},667:{n:"BrtSupAddin",f:parsenoop},668:{n:"BrtSXTDMPOrder",f:parsenoop},669:{n:"BrtCsProtection",f:parsenoop},671:{n:"BrtBeginWsSortMap",f:parsenoop},672:{n:"BrtEndWsSortMap",f:parsenoop},673:{n:"BrtBeginRRSort",f:parsenoop},674:{n:"BrtEndRRSort",f:parsenoop},675:{n:"BrtRRSortItem",f:parsenoop},676:{n:"BrtFileSharingIso",f:parsenoop},677:{n:"BrtBookProtectionIso",f:parsenoop},678:{n:"BrtSheetProtectionIso",f:parsenoop},679:{n:"BrtCsProtectionIso",f:parsenoop},680:{n:"BrtRangeProtectionIso",f:parsenoop},1024:{n:"BrtRwDescent",f:parsenoop},1025:{n:"BrtKnownFonts",f:parsenoop},1026:{n:"BrtBeginSXTupleSet",f:parsenoop},1027:{n:"BrtEndSXTupleSet",f:parsenoop},1028:{n:"BrtBeginSXTupleSetHeader",f:parsenoop},1029:{n:"BrtEndSXTupleSetHeader",f:parsenoop},1030:{n:"BrtSXTupleSetHeaderItem",f:parsenoop},1031:{n:"BrtBeginSXTupleSetData",f:parsenoop},1032:{n:"BrtEndSXTupleSetData",f:parsenoop},1033:{n:"BrtBeginSXTupleSetRow",f:parsenoop},1034:{n:"BrtEndSXTupleSetRow",f:parsenoop},1035:{n:"BrtSXTupleSetRowItem",f:parsenoop},1036:{n:"BrtNameExt",f:parsenoop},1037:{n:"BrtPCDH14",f:parsenoop},1038:{n:"BrtBeginPCDCalcMem14",f:parsenoop},1039:{n:"BrtEndPCDCalcMem14",f:parsenoop},1040:{n:"BrtSXTH14",f:parsenoop},1041:{n:"BrtBeginSparklineGroup",f:parsenoop},1042:{n:"BrtEndSparklineGroup",f:parsenoop},1043:{n:"BrtSparkline",f:parsenoop},1044:{n:"BrtSXDI14",f:parsenoop},1045:{n:"BrtWsFmtInfoEx14",f:parsenoop},1046:{n:"BrtBeginConditionalFormatting14",f:parsenoop},1047:{n:"BrtEndConditionalFormatting14",f:parsenoop},1048:{n:"BrtBeginCFRule14",f:parsenoop},1049:{n:"BrtEndCFRule14",f:parsenoop},1050:{n:"BrtCFVO14",f:parsenoop},1051:{n:"BrtBeginDatabar14",f:parsenoop},1052:{n:"BrtBeginIconSet14",f:parsenoop},1053:{n:"BrtDVal14",f:parsenoop},1054:{n:"BrtBeginDVals14",f:parsenoop},1055:{n:"BrtColor14",f:parsenoop},1056:{n:"BrtBeginSparklines",f:parsenoop},1057:{n:"BrtEndSparklines",f:parsenoop},1058:{n:"BrtBeginSparklineGroups",f:parsenoop},1059:{n:"BrtEndSparklineGroups",f:parsenoop},1061:{n:"BrtSXVD14",f:parsenoop},1062:{n:"BrtBeginSxview14",f:parsenoop},1063:{n:"BrtEndSxview14",f:parsenoop},1066:{n:"BrtBeginPCD14",f:parsenoop},1067:{n:"BrtEndPCD14",f:parsenoop},1068:{n:"BrtBeginExtConn14",f:parsenoop},1069:{n:"BrtEndExtConn14",f:parsenoop},1070:{n:"BrtBeginSlicerCacheIDs",f:parsenoop},1071:{n:"BrtEndSlicerCacheIDs",f:parsenoop},1072:{n:"BrtBeginSlicerCacheID",f:parsenoop},1073:{n:"BrtEndSlicerCacheID",f:parsenoop},1075:{n:"BrtBeginSlicerCache",f:parsenoop},1076:{n:"BrtEndSlicerCache",f:parsenoop},1077:{n:"BrtBeginSlicerCacheDef",f:parsenoop},1078:{n:"BrtEndSlicerCacheDef",f:parsenoop},1079:{n:"BrtBeginSlicersEx",f:parsenoop},1080:{n:"BrtEndSlicersEx",f:parsenoop},1081:{n:"BrtBeginSlicerEx",f:parsenoop},1082:{n:"BrtEndSlicerEx",f:parsenoop},1083:{n:"BrtBeginSlicer",f:parsenoop},1084:{n:"BrtEndSlicer",f:parsenoop},1085:{n:"BrtSlicerCachePivotTables",f:parsenoop},1086:{n:"BrtBeginSlicerCacheOlapImpl",f:parsenoop},1087:{n:"BrtEndSlicerCacheOlapImpl",f:parsenoop},1088:{n:"BrtBeginSlicerCacheLevelsData",f:parsenoop},1089:{n:"BrtEndSlicerCacheLevelsData",f:parsenoop},1090:{n:"BrtBeginSlicerCacheLevelData",f:parsenoop},1091:{n:"BrtEndSlicerCacheLevelData",f:parsenoop},1092:{n:"BrtBeginSlicerCacheSiRanges",f:parsenoop},1093:{n:"BrtEndSlicerCacheSiRanges",f:parsenoop},1094:{n:"BrtBeginSlicerCacheSiRange",f:parsenoop},1095:{n:"BrtEndSlicerCacheSiRange",f:parsenoop},1096:{n:"BrtSlicerCacheOlapItem",f:parsenoop},1097:{n:"BrtBeginSlicerCacheSelections",f:parsenoop},1098:{n:"BrtSlicerCacheSelection",f:parsenoop},1099:{n:"BrtEndSlicerCacheSelections",f:parsenoop},1100:{n:"BrtBeginSlicerCacheNative",f:parsenoop},1101:{n:"BrtEndSlicerCacheNative",f:parsenoop},1102:{n:"BrtSlicerCacheNativeItem",f:parsenoop},1103:{n:"BrtRangeProtection14",f:parsenoop},1104:{n:"BrtRangeProtectionIso14",f:parsenoop},1105:{n:"BrtCellIgnoreEC14",f:parsenoop},1111:{n:"BrtList14",f:parsenoop},1112:{n:"BrtCFIcon",f:parsenoop},1113:{n:"BrtBeginSlicerCachesPivotCacheIDs",f:parsenoop},1114:{n:"BrtEndSlicerCachesPivotCacheIDs",f:parsenoop},1115:{n:"BrtBeginSlicers",f:parsenoop},1116:{n:"BrtEndSlicers",f:parsenoop},1117:{n:"BrtWbProp14",f:parsenoop},1118:{n:"BrtBeginSXEdit",f:parsenoop},1119:{n:"BrtEndSXEdit",f:parsenoop},1120:{n:"BrtBeginSXEdits",f:parsenoop},1121:{n:"BrtEndSXEdits",f:parsenoop},1122:{n:"BrtBeginSXChange",f:parsenoop},1123:{n:"BrtEndSXChange",f:parsenoop},1124:{n:"BrtBeginSXChanges",f:parsenoop},1125:{n:"BrtEndSXChanges",f:parsenoop},1126:{n:"BrtSXTupleItems",f:parsenoop},1128:{n:"BrtBeginSlicerStyle",f:parsenoop},1129:{n:"BrtEndSlicerStyle",f:parsenoop},1130:{n:"BrtSlicerStyleElement",f:parsenoop},1131:{n:"BrtBeginStyleSheetExt14",f:parsenoop},1132:{n:"BrtEndStyleSheetExt14",f:parsenoop},1133:{n:"BrtBeginSlicerCachesPivotCacheID",f:parsenoop},1134:{n:"BrtEndSlicerCachesPivotCacheID",f:parsenoop},1135:{n:"BrtBeginConditionalFormattings",f:parsenoop},1136:{n:"BrtEndConditionalFormattings",f:parsenoop},1137:{n:"BrtBeginPCDCalcMemExt",f:parsenoop},1138:{n:"BrtEndPCDCalcMemExt",f:parsenoop},1139:{n:"BrtBeginPCDCalcMemsExt",f:parsenoop},1140:{n:"BrtEndPCDCalcMemsExt",f:parsenoop},1141:{n:"BrtPCDField14",f:parsenoop},1142:{n:"BrtBeginSlicerStyles",f:parsenoop},1143:{n:"BrtEndSlicerStyles",f:parsenoop},1144:{n:"BrtBeginSlicerStyleElements",f:parsenoop},1145:{n:"BrtEndSlicerStyleElements",f:parsenoop},1146:{n:"BrtCFRuleExt",f:parsenoop},1147:{n:"BrtBeginSXCondFmt14",f:parsenoop},1148:{n:"BrtEndSXCondFmt14",f:parsenoop},1149:{n:"BrtBeginSXCondFmts14",f:parsenoop},1150:{n:"BrtEndSXCondFmts14",f:parsenoop},1152:{n:"BrtBeginSortCond14",f:parsenoop},1153:{n:"BrtEndSortCond14",f:parsenoop},1154:{n:"BrtEndDVals14",f:parsenoop},1155:{n:"BrtEndIconSet14",f:parsenoop},1156:{n:"BrtEndDatabar14",f:parsenoop},1157:{n:"BrtBeginColorScale14",f:parsenoop},1158:{n:"BrtEndColorScale14",f:parsenoop},1159:{n:"BrtBeginSxrules14",f:parsenoop},1160:{n:"BrtEndSxrules14",f:parsenoop},1161:{n:"BrtBeginPRule14",f:parsenoop},1162:{n:"BrtEndPRule14",f:parsenoop},1163:{n:"BrtBeginPRFilters14",f:parsenoop},1164:{n:"BrtEndPRFilters14",f:parsenoop},1165:{n:"BrtBeginPRFilter14",f:parsenoop},1166:{n:"BrtEndPRFilter14",f:parsenoop},1167:{n:"BrtBeginPRFItem14",f:parsenoop},1168:{n:"BrtEndPRFItem14",f:parsenoop},1169:{n:"BrtBeginCellIgnoreECs14",f:parsenoop},1170:{n:"BrtEndCellIgnoreECs14",f:parsenoop},1171:{n:"BrtDxf14",f:parsenoop},1172:{n:"BrtBeginDxF14s",f:parsenoop},1173:{n:"BrtEndDxf14s",f:parsenoop},1177:{n:"BrtFilter14",f:parsenoop},1178:{n:"BrtBeginCustomFilters14",f:parsenoop},1180:{n:"BrtCustomFilter14",f:parsenoop},1181:{n:"BrtIconFilter14",f:parsenoop},1182:{n:"BrtPivotCacheConnectionName",f:parsenoop},2048:{n:"BrtBeginDecoupledPivotCacheIDs",f:parsenoop},2049:{n:"BrtEndDecoupledPivotCacheIDs",f:parsenoop},2050:{n:"BrtDecoupledPivotCacheID",f:parsenoop},2051:{n:"BrtBeginPivotTableRefs",f:parsenoop},2052:{n:"BrtEndPivotTableRefs",f:parsenoop},2053:{n:"BrtPivotTableRef",f:parsenoop},2054:{n:"BrtSlicerCacheBookPivotTables",f:parsenoop},2055:{n:"BrtBeginSxvcells",f:parsenoop},2056:{n:"BrtEndSxvcells",f:parsenoop},2057:{n:"BrtBeginSxRow",f:parsenoop},2058:{n:"BrtEndSxRow",f:parsenoop},2060:{n:"BrtPcdCalcMem15",f:parsenoop},2067:{n:"BrtQsi15",f:parsenoop},2068:{n:"BrtBeginWebExtensions",f:parsenoop},2069:{n:"BrtEndWebExtensions",f:parsenoop},2070:{n:"BrtWebExtension",f:parsenoop},2071:{n:"BrtAbsPath15",f:parsenoop},2072:{n:"BrtBeginPivotTableUISettings",f:parsenoop},2073:{n:"BrtEndPivotTableUISettings",f:parsenoop},2075:{n:"BrtTableSlicerCacheIDs",f:parsenoop},2076:{n:"BrtTableSlicerCacheID",f:parsenoop},2077:{n:"BrtBeginTableSlicerCache",f:parsenoop},2078:{n:"BrtEndTableSlicerCache",f:parsenoop},2079:{n:"BrtSxFilter15",f:parsenoop},2080:{n:"BrtBeginTimelineCachePivotCacheIDs",f:parsenoop},2081:{n:"BrtEndTimelineCachePivotCacheIDs",f:parsenoop},2082:{n:"BrtTimelineCachePivotCacheID",f:parsenoop},2083:{n:"BrtBeginTimelineCacheIDs",f:parsenoop},2084:{n:"BrtEndTimelineCacheIDs",f:parsenoop},2085:{n:"BrtBeginTimelineCacheID",f:parsenoop},2086:{n:"BrtEndTimelineCacheID",f:parsenoop},2087:{n:"BrtBeginTimelinesEx",f:parsenoop},2088:{n:"BrtEndTimelinesEx",f:parsenoop},2089:{n:"BrtBeginTimelineEx",f:parsenoop},2090:{n:"BrtEndTimelineEx",f:parsenoop},2091:{n:"BrtWorkBookPr15",f:parsenoop},2092:{n:"BrtPCDH15",f:parsenoop},2093:{n:"BrtBeginTimelineStyle",f:parsenoop},2094:{n:"BrtEndTimelineStyle",f:parsenoop},2095:{n:"BrtTimelineStyleElement",f:parsenoop},2096:{n:"BrtBeginTimelineStylesheetExt15",f:parsenoop},2097:{n:"BrtEndTimelineStylesheetExt15",f:parsenoop},2098:{n:"BrtBeginTimelineStyles",f:parsenoop},2099:{n:"BrtEndTimelineStyles",f:parsenoop},2100:{n:"BrtBeginTimelineStyleElements",f:parsenoop},2101:{n:"BrtEndTimelineStyleElements",f:parsenoop},2102:{n:"BrtDxf15",f:parsenoop},2103:{n:"BrtBeginDxfs15",f:parsenoop},2104:{n:"brtEndDxfs15",f:parsenoop},2105:{n:"BrtSlicerCacheHideItemsWithNoData",f:parsenoop},2106:{n:"BrtBeginItemUniqueNames",f:parsenoop},2107:{n:"BrtEndItemUniqueNames",f:parsenoop},2108:{n:"BrtItemUniqueName",f:parsenoop},2109:{n:"BrtBeginExtConn15",f:parsenoop},2110:{n:"BrtEndExtConn15",f:parsenoop},2111:{n:"BrtBeginOledbPr15",f:parsenoop},2112:{n:"BrtEndOledbPr15",f:parsenoop},2113:{n:"BrtBeginDataFeedPr15",f:parsenoop},2114:{n:"BrtEndDataFeedPr15",f:parsenoop},2115:{n:"BrtTextPr15",f:parsenoop},2116:{n:"BrtRangePr15",f:parsenoop},2117:{n:"BrtDbCommand15",f:parsenoop},2118:{n:"BrtBeginDbTables15",f:parsenoop},2119:{n:"BrtEndDbTables15",f:parsenoop},2120:{n:"BrtDbTable15",f:parsenoop},2121:{n:"BrtBeginDataModel",f:parsenoop},2122:{n:"BrtEndDataModel",f:parsenoop},2123:{n:"BrtBeginModelTables",f:parsenoop},2124:{n:"BrtEndModelTables",f:parsenoop},2125:{n:"BrtModelTable",f:parsenoop},2126:{n:"BrtBeginModelRelationships",f:parsenoop},2127:{n:"BrtEndModelRelationships",f:parsenoop},2128:{n:"BrtModelRelationship",f:parsenoop},2129:{n:"BrtBeginECTxtWiz15",f:parsenoop},2130:{n:"BrtEndECTxtWiz15",f:parsenoop},2131:{n:"BrtBeginECTWFldInfoLst15",f:parsenoop},2132:{n:"BrtEndECTWFldInfoLst15",f:parsenoop},2133:{n:"BrtBeginECTWFldInfo15",f:parsenoop},2134:{n:"BrtFieldListActiveItem",f:parsenoop},2135:{n:"BrtPivotCacheIdVersion",f:parsenoop},2136:{n:"BrtSXDI15",f:parsenoop},65535:{n:"",f:parsenoop}};var evert_RE=evert_key(XLSBRecordEnum,"n");var XLSRecordEnum={3:{n:"BIFF2NUM",f:parse_BIFF2NUM},4:{n:"BIFF2STR",f:parse_BIFF2STR},6:{n:"Formula",f:parse_Formula},9:{n:"BOF",f:parse_BOF},10:{n:"EOF",f:parse_EOF},12:{n:"CalcCount",f:parse_CalcCount},13:{n:"CalcMode",f:parse_CalcMode},14:{n:"CalcPrecision",f:parse_CalcPrecision},15:{n:"CalcRefMode",f:parse_CalcRefMode},16:{n:"CalcDelta",f:parse_CalcDelta},17:{n:"CalcIter",f:parse_CalcIter},18:{n:"Protect",f:parse_Protect},19:{n:"Password",f:parse_Password},20:{n:"Header",f:parse_Header},21:{n:"Footer",f:parse_Footer},23:{n:"ExternSheet",f:parse_ExternSheet},24:{n:"Lbl",f:parse_Lbl},25:{n:"WinProtect",f:parse_WinProtect},26:{n:"VerticalPageBreaks",f:parse_VerticalPageBreaks},27:{n:"HorizontalPageBreaks",f:parse_HorizontalPageBreaks},28:{n:"Note",f:parse_Note},29:{n:"Selection",f:parse_Selection},34:{n:"Date1904",f:parse_Date1904},35:{n:"ExternName",f:parse_ExternName},38:{n:"LeftMargin",f:parse_LeftMargin},39:{n:"RightMargin",f:parse_RightMargin},40:{n:"TopMargin",f:parse_TopMargin},41:{n:"BottomMargin",f:parse_BottomMargin},42:{n:"PrintRowCol",f:parse_PrintRowCol},43:{n:"PrintGrid",f:parse_PrintGrid},47:{n:"FilePass",f:parse_FilePass},49:{n:"Font",f:parse_Font},51:{n:"PrintSize",f:parse_PrintSize},60:{n:"Continue",f:parse_Continue},61:{n:"Window1",f:parse_Window1},64:{n:"Backup",f:parse_Backup},65:{n:"Pane",f:parse_Pane},66:{n:"CodePage",f:parse_CodePage},77:{n:"Pls",f:parse_Pls},80:{n:"DCon",f:parse_DCon},81:{n:"DConRef",f:parse_DConRef},82:{n:"DConName",f:parse_DConName},85:{n:"DefColWidth",f:parse_DefColWidth},89:{n:"XCT",f:parse_XCT},90:{n:"CRN",f:parse_CRN},91:{n:"FileSharing",f:parse_FileSharing},92:{n:"WriteAccess",f:parse_WriteAccess},93:{n:"Obj",f:parse_Obj},94:{n:"Uncalced",f:parse_Uncalced},95:{n:"CalcSaveRecalc",f:parse_CalcSaveRecalc},96:{n:"Template",f:parse_Template},97:{n:"Intl",f:parse_Intl},99:{n:"ObjProtect",f:parse_ObjProtect},125:{n:"ColInfo",f:parse_ColInfo},128:{n:"Guts",f:parse_Guts},129:{n:"WsBool",f:parse_WsBool},130:{n:"GridSet",f:parse_GridSet},131:{n:"HCenter",f:parse_HCenter},132:{n:"VCenter",f:parse_VCenter},133:{n:"BoundSheet8",f:parse_BoundSheet8},134:{n:"WriteProtect",f:parse_WriteProtect},140:{n:"Country",f:parse_Country},141:{n:"HideObj",f:parse_HideObj},144:{n:"Sort",f:parse_Sort},146:{n:"Palette",f:parse_Palette},151:{n:"Sync",f:parse_Sync},152:{n:"LPr",f:parse_LPr},153:{n:"DxGCol",f:parse_DxGCol},154:{n:"FnGroupName",f:parse_FnGroupName},155:{n:"FilterMode",f:parse_FilterMode},156:{n:"BuiltInFnGroupCount",f:parse_BuiltInFnGroupCount},157:{n:"AutoFilterInfo",f:parse_AutoFilterInfo},158:{n:"AutoFilter",f:parse_AutoFilter},160:{n:"Scl",f:parse_Scl},161:{n:"Setup",f:parse_Setup},174:{n:"ScenMan",f:parse_ScenMan},175:{n:"SCENARIO",f:parse_SCENARIO},176:{n:"SxView",f:parse_SxView},177:{n:"Sxvd",f:parse_Sxvd},178:{n:"SXVI",f:parse_SXVI},180:{n:"SxIvd",f:parse_SxIvd},181:{n:"SXLI",f:parse_SXLI},182:{n:"SXPI",f:parse_SXPI},184:{n:"DocRoute",f:parse_DocRoute},185:{n:"RecipName",f:parse_RecipName},189:{n:"MulRk",f:parse_MulRk},190:{n:"MulBlank",f:parse_MulBlank},193:{n:"Mms",f:parse_Mms},197:{n:"SXDI",f:parse_SXDI},198:{n:"SXDB",f:parse_SXDB},199:{n:"SXFDB",f:parse_SXFDB},200:{n:"SXDBB",f:parse_SXDBB},201:{n:"SXNum",f:parse_SXNum},202:{n:"SxBool",f:parse_SxBool},203:{n:"SxErr",f:parse_SxErr},204:{n:"SXInt",f:parse_SXInt},205:{n:"SXString",f:parse_SXString},206:{n:"SXDtr",f:parse_SXDtr},207:{n:"SxNil",f:parse_SxNil},208:{n:"SXTbl",f:parse_SXTbl},209:{n:"SXTBRGIITM",f:parse_SXTBRGIITM},210:{n:"SxTbpg",f:parse_SxTbpg},211:{n:"ObProj",f:parse_ObProj},213:{n:"SXStreamID",f:parse_SXStreamID},215:{n:"DBCell",f:parse_DBCell},216:{n:"SXRng",f:parse_SXRng},217:{n:"SxIsxoper",f:parse_SxIsxoper},218:{n:"BookBool",f:parse_BookBool},220:{n:"DbOrParamQry",f:parse_DbOrParamQry},221:{n:"ScenarioProtect",f:parse_ScenarioProtect},222:{n:"OleObjectSize",f:parse_OleObjectSize},224:{n:"XF",f:parse_XF},225:{n:"InterfaceHdr",f:parse_InterfaceHdr},226:{n:"InterfaceEnd",f:parse_InterfaceEnd},227:{n:"SXVS",f:parse_SXVS},229:{n:"MergeCells",f:parse_MergeCells},233:{n:"BkHim",f:parse_BkHim},235:{n:"MsoDrawingGroup",f:parse_MsoDrawingGroup},236:{n:"MsoDrawing",f:parse_MsoDrawing},237:{n:"MsoDrawingSelection",f:parse_MsoDrawingSelection},239:{n:"PhoneticInfo",f:parse_PhoneticInfo},240:{n:"SxRule",f:parse_SxRule},241:{n:"SXEx",f:parse_SXEx},242:{n:"SxFilt",f:parse_SxFilt},244:{n:"SxDXF",f:parse_SxDXF},245:{n:"SxItm",f:parse_SxItm},246:{n:"SxName",f:parse_SxName},247:{n:"SxSelect",f:parse_SxSelect},248:{n:"SXPair",f:parse_SXPair},249:{n:"SxFmla",f:parse_SxFmla},251:{n:"SxFormat",f:parse_SxFormat},252:{n:"SST",f:parse_SST},253:{n:"LabelSst",f:parse_LabelSst},255:{n:"ExtSST",f:parse_ExtSST},256:{n:"SXVDEx",f:parse_SXVDEx},259:{n:"SXFormula",f:parse_SXFormula},290:{n:"SXDBEx",f:parse_SXDBEx},311:{n:"RRDInsDel",f:parse_RRDInsDel},312:{n:"RRDHead",f:parse_RRDHead},315:{n:"RRDChgCell",f:parse_RRDChgCell},317:{n:"RRTabId",f:parse_RRTabId},318:{n:"RRDRenSheet",f:parse_RRDRenSheet},319:{n:"RRSort",f:parse_RRSort},320:{n:"RRDMove",f:parse_RRDMove},330:{n:"RRFormat",f:parse_RRFormat},331:{n:"RRAutoFmt",f:parse_RRAutoFmt},333:{n:"RRInsertSh",f:parse_RRInsertSh},334:{n:"RRDMoveBegin",f:parse_RRDMoveBegin},335:{n:"RRDMoveEnd",f:parse_RRDMoveEnd},336:{n:"RRDInsDelBegin",f:parse_RRDInsDelBegin},337:{n:"RRDInsDelEnd",f:parse_RRDInsDelEnd},338:{n:"RRDConflict",f:parse_RRDConflict},339:{n:"RRDDefName",f:parse_RRDDefName},340:{n:"RRDRstEtxp",f:parse_RRDRstEtxp},351:{n:"LRng",f:parse_LRng},352:{n:"UsesELFs",f:parse_UsesELFs},353:{n:"DSF",f:parse_DSF},401:{n:"CUsr",f:parse_CUsr},402:{n:"CbUsr",f:parse_CbUsr},403:{n:"UsrInfo",f:parse_UsrInfo},404:{n:"UsrExcl",f:parse_UsrExcl},405:{n:"FileLock",f:parse_FileLock},406:{n:"RRDInfo",f:parse_RRDInfo},407:{n:"BCUsrs",f:parse_BCUsrs},408:{n:"UsrChk",f:parse_UsrChk},425:{n:"UserBView",f:parse_UserBView},426:{n:"UserSViewBegin",f:parse_UserSViewBegin},427:{n:"UserSViewEnd",f:parse_UserSViewEnd},428:{n:"RRDUserView",f:parse_RRDUserView},429:{n:"Qsi",f:parse_Qsi},430:{n:"SupBook",f:parse_SupBook},431:{n:"Prot4Rev",f:parse_Prot4Rev},432:{n:"CondFmt",f:parse_CondFmt},433:{n:"CF",f:parse_CF},434:{n:"DVal",f:parse_DVal},437:{n:"DConBin",f:parse_DConBin},438:{n:"TxO",f:parse_TxO},439:{n:"RefreshAll",f:parse_RefreshAll},440:{n:"HLink",f:parse_HLink},441:{n:"Lel",f:parse_Lel},442:{n:"CodeName",f:parse_XLSCodeName},443:{n:"SXFDBType",f:parse_SXFDBType},444:{n:"Prot4RevPass",f:parse_Prot4RevPass},445:{n:"ObNoMacros",f:parse_ObNoMacros},446:{n:"Dv",f:parse_Dv},448:{n:"Excel9File",f:parse_Excel9File},449:{n:"RecalcId",f:parse_RecalcId,r:2},450:{n:"EntExU2",f:parse_EntExU2},512:{n:"Dimensions",f:parse_Dimensions},513:{n:"Blank",f:parse_Blank},515:{n:"Number",f:parse_Number},516:{n:"Label",f:parse_Label},517:{n:"BoolErr",f:parse_BoolErr},519:{n:"String",f:parse_String},520:{n:"Row",f:parse_Row},523:{n:"Index",f:parse_Index},545:{n:"Array",f:parse_Array},549:{n:"DefaultRowHeight",f:parse_DefaultRowHeight},566:{n:"Table",f:parse_Table},574:{n:"Window2",f:parse_Window2},638:{n:"RK",f:parse_RK},659:{n:"Style",f:parse_Style},1048:{n:"BigName",f:parse_BigName},1054:{n:"Format",f:parse_Format},1084:{n:"ContinueBigName",f:parse_ContinueBigName},1212:{n:"ShrFmla",f:parse_ShrFmla},2048:{n:"HLinkTooltip",f:parse_HLinkTooltip},2049:{n:"WebPub",f:parse_WebPub},2050:{n:"QsiSXTag",f:parse_QsiSXTag},2051:{n:"DBQueryExt",f:parse_DBQueryExt},2052:{n:"ExtString",f:parse_ExtString},2053:{n:"TxtQry",f:parse_TxtQry},2054:{n:"Qsir",f:parse_Qsir},2055:{n:"Qsif",f:parse_Qsif},2056:{n:"RRDTQSIF",f:parse_RRDTQSIF},2057:{n:"BOF",f:parse_BOF},2058:{n:"OleDbConn",f:parse_OleDbConn},2059:{n:"WOpt",f:parse_WOpt},2060:{n:"SXViewEx",f:parse_SXViewEx},2061:{n:"SXTH",f:parse_SXTH},2062:{n:"SXPIEx",f:parse_SXPIEx},2063:{n:"SXVDTEx",f:parse_SXVDTEx},2064:{n:"SXViewEx9",f:parse_SXViewEx9},2066:{n:"ContinueFrt",f:parse_ContinueFrt},2067:{n:"RealTimeData",f:parse_RealTimeData},2128:{n:"ChartFrtInfo",f:parse_ChartFrtInfo},2129:{n:"FrtWrapper",f:parse_FrtWrapper},2130:{n:"StartBlock",f:parse_StartBlock},2131:{n:"EndBlock",f:parse_EndBlock},2132:{n:"StartObject",f:parse_StartObject},2133:{n:"EndObject",f:parse_EndObject},2134:{n:"CatLab",f:parse_CatLab},2135:{n:"YMult",f:parse_YMult},2136:{n:"SXViewLink",f:parse_SXViewLink},2137:{n:"PivotChartBits",f:parse_PivotChartBits},2138:{n:"FrtFontList",f:parse_FrtFontList},2146:{n:"SheetExt",f:parse_SheetExt},2147:{n:"BookExt",f:parse_BookExt,r:12},2148:{n:"SXAddl",f:parse_SXAddl},2149:{n:"CrErr",f:parse_CrErr},2150:{n:"HFPicture",f:parse_HFPicture},2151:{n:"FeatHdr",f:parse_FeatHdr},2152:{n:"Feat",f:parse_Feat},2154:{n:"DataLabExt",f:parse_DataLabExt},2155:{n:"DataLabExtContents",f:parse_DataLabExtContents},2156:{n:"CellWatch",f:parse_CellWatch},2161:{n:"FeatHdr11",f:parse_FeatHdr11},2162:{n:"Feature11",f:parse_Feature11},2164:{n:"DropDownObjIds",f:parse_DropDownObjIds},2165:{n:"ContinueFrt11",f:parse_ContinueFrt11},2166:{n:"DConn",f:parse_DConn},2167:{n:"List12",f:parse_List12},2168:{n:"Feature12",f:parse_Feature12},2169:{n:"CondFmt12",f:parse_CondFmt12},2170:{n:"CF12",f:parse_CF12},2171:{n:"CFEx",f:parse_CFEx},2172:{n:"XFCRC",f:parse_XFCRC,r:12},2173:{n:"XFExt",f:parse_XFExt,r:12},2174:{n:"AutoFilter12",f:parse_AutoFilter12},2175:{n:"ContinueFrt12",f:parse_ContinueFrt12},2180:{n:"MDTInfo",f:parse_MDTInfo},2181:{n:"MDXStr",f:parse_MDXStr},2182:{n:"MDXTuple",f:parse_MDXTuple},2183:{n:"MDXSet",f:parse_MDXSet},2184:{n:"MDXProp",f:parse_MDXProp},2185:{n:"MDXKPI",f:parse_MDXKPI},2186:{n:"MDB",f:parse_MDB},2187:{n:"PLV",f:parse_PLV},2188:{n:"Compat12",f:parse_Compat12,r:12},2189:{n:"DXF",f:parse_DXF},2190:{n:"TableStyles",f:parse_TableStyles,r:12},2191:{n:"TableStyle",f:parse_TableStyle},2192:{n:"TableStyleElement",f:parse_TableStyleElement},2194:{n:"StyleExt",f:parse_StyleExt},2195:{n:"NamePublish",f:parse_NamePublish},2196:{n:"NameCmt",f:parse_NameCmt},2197:{n:"SortData",f:parse_SortData},2198:{n:"Theme",f:parse_Theme,r:12},2199:{n:"GUIDTypeLib",f:parse_GUIDTypeLib},2200:{n:"FnGrp12",f:parse_FnGrp12},2201:{n:"NameFnGrp12",f:parse_NameFnGrp12},2202:{n:"MTRSettings",f:parse_MTRSettings,r:12},2203:{n:"CompressPictures",f:parse_CompressPictures},2204:{n:"HeaderFooter",f:parse_HeaderFooter},2205:{n:"CrtLayout12",f:parse_CrtLayout12},2206:{n:"CrtMlFrt",f:parse_CrtMlFrt},2207:{n:"CrtMlFrtContinue",f:parse_CrtMlFrtContinue},2211:{n:"ForceFullCalculation",f:parse_ForceFullCalculation},2212:{n:"ShapePropsStream",f:parse_ShapePropsStream},2213:{n:"TextPropsStream",f:parse_TextPropsStream},2214:{n:"RichTextStream",f:parse_RichTextStream},2215:{n:"CrtLayout12A",f:parse_CrtLayout12A},4097:{n:"Units",f:parse_Units},4098:{n:"Chart",f:parse_Chart},4099:{n:"Series",f:parse_Series},4102:{n:"DataFormat",f:parse_DataFormat},4103:{n:"LineFormat",f:parse_LineFormat},4105:{n:"MarkerFormat",f:parse_MarkerFormat},4106:{n:"AreaFormat",f:parse_AreaFormat},4107:{n:"PieFormat",f:parse_PieFormat},4108:{n:"AttachedLabel",f:parse_AttachedLabel},4109:{n:"SeriesText",f:parse_SeriesText},4116:{n:"ChartFormat",f:parse_ChartFormat},4117:{n:"Legend",f:parse_Legend},4118:{n:"SeriesList",f:parse_SeriesList},4119:{n:"Bar",f:parse_Bar},4120:{n:"Line",f:parse_Line},4121:{n:"Pie",f:parse_Pie},4122:{n:"Area",f:parse_Area},4123:{n:"Scatter",f:parse_Scatter},4124:{n:"CrtLine",f:parse_CrtLine},4125:{n:"Axis",f:parse_Axis},4126:{n:"Tick",f:parse_Tick},4127:{n:"ValueRange",f:parse_ValueRange},4128:{n:"CatSerRange",f:parse_CatSerRange},4129:{n:"AxisLine",f:parse_AxisLine},4130:{n:"CrtLink",f:parse_CrtLink},4132:{n:"DefaultText",f:parse_DefaultText},4133:{n:"Text",f:parse_Text},4134:{n:"FontX",f:parse_FontX},4135:{n:"ObjectLink",f:parse_ObjectLink},4146:{n:"Frame",f:parse_Frame},4147:{n:"Begin",f:parse_Begin},4148:{n:"End",f:parse_End},4149:{n:"PlotArea",f:parse_PlotArea},4154:{n:"Chart3d",f:parse_Chart3d},4156:{n:"PicF",f:parse_PicF},4157:{n:"DropBar",f:parse_DropBar},4158:{n:"Radar",f:parse_Radar},4159:{n:"Surf",f:parse_Surf},4160:{n:"RadarArea",f:parse_RadarArea},4161:{n:"AxisParent",f:parse_AxisParent},4163:{n:"LegendException",f:parse_LegendException},4164:{n:"ShtProps",f:parse_ShtProps},4165:{n:"SerToCrt",f:parse_SerToCrt},4166:{n:"AxesUsed",f:parse_AxesUsed},4168:{n:"SBaseRef",f:parse_SBaseRef},4170:{n:"SerParent",f:parse_SerParent},4171:{n:"SerAuxTrend",f:parse_SerAuxTrend},4174:{n:"IFmtRecord",f:parse_IFmtRecord},4175:{n:"Pos",f:parse_Pos},4176:{n:"AlRuns",f:parse_AlRuns},4177:{n:"BRAI",f:parse_BRAI},4187:{n:"SerAuxErrBar",f:parse_SerAuxErrBar},4188:{n:"ClrtClient",f:parse_ClrtClient},4189:{n:"SerFmt",f:parse_SerFmt},4191:{n:"Chart3DBarShape",f:parse_Chart3DBarShape},4192:{n:"Fbi",f:parse_Fbi},4193:{n:"BopPop",f:parse_BopPop},4194:{n:"AxcExt",f:parse_AxcExt},4195:{n:"Dat",f:parse_Dat},4196:{n:"PlotGrowth",f:parse_PlotGrowth},4197:{n:"SIIndex",f:parse_SIIndex},4198:{n:"GelFrame",f:parse_GelFrame},4199:{n:"BopPopCustom",f:parse_BopPopCustom},4200:{n:"Fbi2",f:parse_Fbi2},22:{n:"ExternCount",f:parsenoop},126:{n:"RK",f:parsenoop},127:{n:"ImData",f:parsenoop},135:{n:"Addin",f:parsenoop},136:{n:"Edg",f:parsenoop},137:{n:"Pub",f:parsenoop},145:{n:"Sub",f:parsenoop},148:{n:"LHRecord",f:parsenoop},149:{n:"LHNGraph",f:parsenoop},150:{n:"Sound",f:parsenoop},169:{n:"CoordList",f:parsenoop},171:{n:"GCW",f:parsenoop},188:{n:"ShrFmla",f:parsenoop},194:{n:"AddMenu",f:parsenoop},195:{n:"DelMenu",f:parsenoop},214:{n:"RString",f:parsenoop},223:{n:"UDDesc",f:parsenoop},234:{n:"TabIdConf",f:parsenoop},354:{n:"XL5Modify",f:parsenoop},421:{n:"FileSharing2",f:parsenoop},536:{n:"Name",f:parsenoop},547:{n:"ExternName",f:parse_ExternName},561:{n:"Font",f:parsenoop},1030:{n:"Formula",f:parse_Formula},2157:{n:"FeatInfo",f:parsenoop},2163:{n:"FeatInfo11",f:parsenoop},2177:{n:"SXAddl12",f:parsenoop},2240:{n:"AutoWebPub",f:parsenoop},2241:{n:"ListObj",f:parsenoop},2242:{n:"ListField",f:parsenoop},2243:{n:"ListDV",f:parsenoop},2244:{n:"ListCondFmt",f:parsenoop},2245:{n:"ListCF",f:parsenoop},2246:{n:"FMQry",f:parsenoop},2247:{n:"FMSQry",f:parsenoop},2248:{n:"PLV",f:parsenoop},2249:{n:"LnExt",f:parsenoop},2250:{n:"MkrExt",f:parsenoop},2251:{n:"CrtCoopt",f:parsenoop},0:{}};function parse_ods(zip,opts){if(typeof module!=="undefined"&&typeof require!=="undefined"&&typeof ODS==="undefined")ODS=require("./od"+"s");if(typeof ODS==="undefined"||!ODS.parse_ods)throw new Error("Unsupported ODS");return ODS.parse_ods(zip,opts)}function fix_opts_func(defaults){return function fix_opts(opts){for(var i=0;i!=defaults.length;++i){var d=defaults[i];if(opts[d[0]]===undefined)opts[d[0]]=d[1];if(d[2]==="n")opts[d[0]]=Number(opts[d[0]])}}}var fix_read_opts=fix_opts_func([["cellNF",false],["cellHTML",true],["cellFormula",true],["cellStyles",false],["cellDates",false],["sheetStubs",false],["sheetRows",0,"n"],["bookDeps",false],["bookSheets",false],["bookProps",false],["bookFiles",false],["bookVBA",false],["password",""],["WTF",false]]);var fix_write_opts=fix_opts_func([["cellDates",false],["bookSST",false],["bookType","xlsx"],["WTF",false]]);function safe_parse_wbrels(wbrels,sheets){if(!wbrels)return 0;try{wbrels=sheets.map(function pwbr(w){return[w.name,wbrels["!id"][w.id].Target]})}catch(e){return null}return!wbrels||wbrels.length===0?null:wbrels}function safe_parse_ws(zip,path,relsPath,sheet,sheetRels,sheets,opts){try{sheetRels[sheet]=parse_rels(getzipdata(zip,relsPath,true),path);sheets[sheet]=parse_ws(getzipdata(zip,path),path,opts,sheetRels[sheet])}catch(e){if(opts.WTF)throw e}}var nodirs=function nodirs(x){return x.substr(-1)!="/"};function parse_zip(zip,opts){make_ssf(SSF);opts=opts||{};fix_read_opts(opts);reset_cp();if(safegetzipfile(zip,"META-INF/manifest.xml"))return parse_ods(zip,opts);var entries=keys(zip.files).filter(nodirs).sort();var dir=parse_ct(getzipdata(zip,"[Content_Types].xml"),opts);var xlsb=false;var sheets,binname;if(dir.workbooks.length===0){binname="xl/workbook.xml";if(getzipdata(zip,binname,true))dir.workbooks.push(binname)}if(dir.workbooks.length===0){binname="xl/workbook.bin";if(!getzipfile(zip,binname,true))throw new Error("Could not find workbook");dir.workbooks.push(binname);xlsb=true}if(dir.workbooks[0].substr(-3)=="bin")xlsb=true;if(xlsb)set_cp(1200);if(!opts.bookSheets&&!opts.bookProps){strs=[];if(dir.sst)strs=parse_sst(getzipdata(zip,dir.sst.replace(/^\//,"")),dir.sst,opts);themes={};if(opts.cellStyles&&dir.themes.length)themes=parse_theme(getzipdata(zip,dir.themes[0].replace(/^\//,""),true),dir.themes[0],opts);styles={};if(dir.style)styles=parse_sty(getzipdata(zip,dir.style.replace(/^\//,"")),dir.style,opts)}var wb=parse_wb(getzipdata(zip,dir.workbooks[0].replace(/^\//,"")),dir.workbooks[0],opts);var props={},propdata="";if(dir.coreprops.length!==0){propdata=getzipdata(zip,dir.coreprops[0].replace(/^\//,""),true);if(propdata)props=parse_core_props(propdata);if(dir.extprops.length!==0){propdata=getzipdata(zip,dir.extprops[0].replace(/^\//,""),true);if(propdata)parse_ext_props(propdata,props)}}var custprops={};if(!opts.bookSheets||opts.bookProps){if(dir.custprops.length!==0){propdata=getzipdata(zip,dir.custprops[0].replace(/^\//,""),true);if(propdata)custprops=parse_cust_props(propdata,opts)}}var out={};if(opts.bookSheets||opts.bookProps){if(props.Worksheets&&props.SheetNames.length>0)sheets=props.SheetNames;else if(wb.Sheets)sheets=wb.Sheets.map(function pluck(x){return x.name});if(opts.bookProps){out.Props=props;out.Custprops=custprops}if(typeof sheets!=="undefined")out.SheetNames=sheets;if(opts.bookSheets?out.SheetNames:opts.bookProps)return out}sheets={};
var deps={};if(opts.bookDeps&&dir.calcchain)deps=parse_cc(getzipdata(zip,dir.calcchain.replace(/^\//,"")),dir.calcchain,opts);var i=0;var sheetRels={};var path,relsPath;if(!props.Worksheets){var wbsheets=wb.Sheets;props.Worksheets=wbsheets.length;props.SheetNames=[];for(var j=0;j!=wbsheets.length;++j){props.SheetNames[j]=wbsheets[j].name}}var wbext=xlsb?"bin":"xml";var wbrelsfile="xl/_rels/workbook."+wbext+".rels";var wbrels=parse_rels(getzipdata(zip,wbrelsfile,true),wbrelsfile);if(wbrels)wbrels=safe_parse_wbrels(wbrels,wb.Sheets);var nmode=getzipdata(zip,"xl/worksheets/sheet.xml",true)?1:0;for(i=0;i!=props.Worksheets;++i){if(wbrels)path="xl/"+wbrels[i][1].replace(/[\/]?xl\//,"");else{path="xl/worksheets/sheet"+(i+1-nmode)+"."+wbext;path=path.replace(/sheet0\./,"sheet.")}relsPath=path.replace(/^(.*)(\/)([^\/]*)$/,"$1/_rels/$3.rels");safe_parse_ws(zip,path,relsPath,props.SheetNames[i],sheetRels,sheets,opts)}if(dir.comments)parse_comments(zip,dir.comments,sheets,sheetRels,opts);out={Directory:dir,Workbook:wb,Props:props,Custprops:custprops,Deps:deps,Sheets:sheets,SheetNames:props.SheetNames,Strings:strs,Styles:styles,Themes:themes,SSF:SSF.get_table()};if(opts.bookFiles){out.keys=entries;out.files=zip.files}if(opts.bookVBA){if(dir.vba.length>0)out.vbaraw=getzipdata(zip,dir.vba[0],true);else if(dir.defaults.bin==="application/vnd.ms-office.vbaProject")out.vbaraw=getzipdata(zip,"xl/vbaProject.bin",true)}return out}function add_rels(rels,rId,f,type,relobj){if(!relobj)relobj={};if(!rels["!id"])rels["!id"]={};relobj.Id="rId"+rId;relobj.Type=type;relobj.Target=f;if(rels["!id"][relobj.Id])throw new Error("Cannot rewrite rId "+rId);rels["!id"][relobj.Id]=relobj;rels[("/"+relobj.Target).replace("//","/")]=relobj}function write_zip(wb,opts){if(wb&&!wb.SSF){wb.SSF=SSF.get_table()}if(wb&&wb.SSF){make_ssf(SSF);SSF.load_table(wb.SSF);opts.revssf=evert_num(wb.SSF);opts.revssf[wb.SSF[65535]]=0}opts.rels={};opts.wbrels={};opts.Strings=[];opts.Strings.Count=0;opts.Strings.Unique=0;var wbext=opts.bookType=="xlsb"?"bin":"xml";var ct={workbooks:[],sheets:[],calcchains:[],themes:[],styles:[],coreprops:[],extprops:[],custprops:[],strs:[],comments:[],vba:[],TODO:[],rels:[],xmlns:""};fix_write_opts(opts=opts||{});var zip=new jszip;var f="",rId=0;opts.cellXfs=[];get_cell_style(opts.cellXfs,{},{revssf:{General:0}});f="docProps/core.xml";zip.file(f,write_core_props(wb.Props,opts));ct.coreprops.push(f);add_rels(opts.rels,2,f,RELS.CORE_PROPS);f="docProps/app.xml";if(!wb.Props)wb.Props={};wb.Props.SheetNames=wb.SheetNames;wb.Props.Worksheets=wb.SheetNames.length;zip.file(f,write_ext_props(wb.Props,opts));ct.extprops.push(f);add_rels(opts.rels,3,f,RELS.EXT_PROPS);if(wb.Custprops!==wb.Props&&keys(wb.Custprops||{}).length>0){f="docProps/custom.xml";zip.file(f,write_cust_props(wb.Custprops,opts));ct.custprops.push(f);add_rels(opts.rels,4,f,RELS.CUST_PROPS)}f="xl/workbook."+wbext;zip.file(f,write_wb(wb,f,opts));ct.workbooks.push(f);add_rels(opts.rels,1,f,RELS.WB);for(rId=1;rId<=wb.SheetNames.length;++rId){f="xl/worksheets/sheet"+rId+"."+wbext;zip.file(f,write_ws(rId-1,f,opts,wb));ct.sheets.push(f);add_rels(opts.wbrels,rId,"worksheets/sheet"+rId+"."+wbext,RELS.WS)}if(opts.Strings!=null&&opts.Strings.length>0){f="xl/sharedStrings."+wbext;zip.file(f,write_sst(opts.Strings,f,opts));ct.strs.push(f);add_rels(opts.wbrels,++rId,"sharedStrings."+wbext,RELS.SST)}f="xl/theme/theme1.xml";zip.file(f,write_theme(opts));ct.themes.push(f);add_rels(opts.wbrels,++rId,"theme/theme1.xml",RELS.THEME);f="xl/styles."+wbext;zip.file(f,write_sty(wb,f,opts));ct.styles.push(f);add_rels(opts.wbrels,++rId,"styles."+wbext,RELS.STY);zip.file("[Content_Types].xml",write_ct(ct,opts));zip.file("_rels/.rels",write_rels(opts.rels));zip.file("xl/_rels/workbook."+wbext+".rels",write_rels(opts.wbrels));return zip}function firstbyte(f,o){switch((o||{}).type||"base64"){case"buffer":return f[0];case"base64":return Base64.decode(f.substr(0,12)).charCodeAt(0);case"binary":return f.charCodeAt(0);case"array":return f[0];default:throw new Error("Unrecognized type "+o.type)}}function read_zip(data,opts){var zip,d=data;var o=opts||{};if(!o.type)o.type=has_buf&&Buffer.isBuffer(data)?"buffer":"base64";switch(o.type){case"base64":zip=new jszip(d,{base64:true});break;case"binary":case"array":zip=new jszip(d,{base64:false});break;case"buffer":zip=new jszip(d);break;case"file":zip=new jszip(d=_fs.readFileSync(data));break;default:throw new Error("Unrecognized type "+o.type)}return parse_zip(zip,o)}function readSync(data,opts){var zip,d=data,isfile=false,n;var o=opts||{};if(!o.type)o.type=has_buf&&Buffer.isBuffer(data)?"buffer":"base64";if(o.type=="file"){isfile=true;o.type="buffer";d=_fs.readFileSync(data)}switch(n=firstbyte(d,o)){case 208:if(isfile)o.type="file";return parse_xlscfb(CFB.read(data,o),o);case 9:return parse_xlscfb(s2a(o.type==="base64"?Base64.decode(data):data),o);case 60:return parse_xlml(d,o);case 80:if(isfile)o.type="file";return read_zip(data,opts);default:throw new Error("Unsupported file "+n)}}function readFileSync(data,opts){var o=opts||{};o.type="file";var wb=readSync(data,o);wb.FILENAME=data;return wb}function write_zip_type(wb,opts){var o=opts||{};style_builder=new StyleBuilder(opts);var z=write_zip(wb,o);switch(o.type){case"base64":return z.generate({type:"base64"});case"binary":return z.generate({type:"string"});case"buffer":return z.generate({type:"nodebuffer"});case"file":return _fs.writeFileSync(o.file,z.generate({type:"nodebuffer"}));default:throw new Error("Unrecognized type "+o.type)}}function writeSync(wb,opts){var o=opts||{};switch(o.bookType){case"xml":return write_xlml(wb,o);default:return write_zip_type(wb,o)}}function writeFileSync(wb,filename,opts){var o=opts||{};o.type="file";o.file=filename;switch(o.file.substr(-5).toLowerCase()){case".xlsx":o.bookType="xlsx";break;case".xlsm":o.bookType="xlsm";break;case".xlsb":o.bookType="xlsb";break;default:switch(o.file.substr(-4).toLowerCase()){case".xls":o.bookType="xls";break;case".xml":o.bookType="xml";break}}return writeSync(wb,o)}function decode_row(rowstr){return parseInt(unfix_row(rowstr),10)-1}function encode_row(row){return""+(row+1)}function fix_row(cstr){return cstr.replace(/([A-Z]|^)(\d+)$/,"$1$$$2")}function unfix_row(cstr){return cstr.replace(/\$(\d+)$/,"$1")}function decode_col(colstr){var c=unfix_col(colstr),d=0,i=0;for(;i!==c.length;++i)d=26*d+c.charCodeAt(i)-64;return d-1}function encode_col(col){var s="";for(++col;col;col=Math.floor((col-1)/26))s=String.fromCharCode((col-1)%26+65)+s;return s}function fix_col(cstr){return cstr.replace(/^([A-Z])/,"$$$1")}function unfix_col(cstr){return cstr.replace(/^\$([A-Z])/,"$1")}function split_cell(cstr){return cstr.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(",")}function decode_cell(cstr){var splt=split_cell(cstr);return{c:decode_col(splt[0]),r:decode_row(splt[1])}}function encode_cell(cell){return encode_col(cell.c)+encode_row(cell.r)}function fix_cell(cstr){return fix_col(fix_row(cstr))}function unfix_cell(cstr){return unfix_col(unfix_row(cstr))}function decode_range(range){var x=range.split(":").map(decode_cell);return{s:x[0],e:x[x.length-1]}}function encode_range(cs,ce){if(ce===undefined||typeof ce==="number")return encode_range(cs.s,cs.e);if(typeof cs!=="string")cs=encode_cell(cs);if(typeof ce!=="string")ce=encode_cell(ce);return cs==ce?cs:cs+":"+ce}function safe_decode_range(range){var o={s:{c:0,r:0},e:{c:0,r:0}};var idx=0,i=0,cc=0;var len=range.length;for(idx=0;i<len;++i){if((cc=range.charCodeAt(i)-64)<1||cc>26)break;idx=26*idx+cc}o.s.c=--idx;for(idx=0;i<len;++i){if((cc=range.charCodeAt(i)-48)<0||cc>9)break;idx=10*idx+cc}o.s.r=--idx;if(i===len||range.charCodeAt(++i)===58){o.e.c=o.s.c;o.e.r=o.s.r;return o}for(idx=0;i!=len;++i){if((cc=range.charCodeAt(i)-64)<1||cc>26)break;idx=26*idx+cc}o.e.c=--idx;for(idx=0;i!=len;++i){if((cc=range.charCodeAt(i)-48)<0||cc>9)break;idx=10*idx+cc}o.e.r=--idx;return o}function safe_format_cell(cell,v){if(cell.z!==undefined)try{return cell.w=SSF.format(cell.z,v)}catch(e){}if(!cell.XF)return v;try{return cell.w=SSF.format(cell.XF.ifmt||0,v)}catch(e){return""+v}}function format_cell(cell,v){if(cell==null||cell.t==null)return"";if(cell.w!==undefined)return cell.w;if(v===undefined)return safe_format_cell(cell,cell.v);return safe_format_cell(cell,v)}function sheet_to_json(sheet,opts){var val,row,range,header=0,offset=1,r,hdr=[],isempty,R,C,v;var o=opts!=null?opts:{};var raw=o.raw;if(sheet==null||sheet["!ref"]==null)return[];range=o.range!==undefined?o.range:sheet["!ref"];if(o.header===1)header=1;else if(o.header==="A")header=2;else if(Array.isArray(o.header))header=3;switch(typeof range){case"string":r=safe_decode_range(range);break;case"number":r=safe_decode_range(sheet["!ref"]);r.s.r=range;break;default:r=range}if(header>0)offset=0;var rr=encode_row(r.s.r);var cols=new Array(r.e.c-r.s.c+1);var out=new Array(r.e.r-r.s.r-offset+1);var outi=0;for(C=r.s.c;C<=r.e.c;++C){cols[C]=encode_col(C);val=sheet[cols[C]+rr];switch(header){case 1:hdr[C]=C;break;case 2:hdr[C]=cols[C];break;case 3:hdr[C]=o.header[C-r.s.c];break;default:if(val===undefined)continue;hdr[C]=format_cell(val)}}for(R=r.s.r+offset;R<=r.e.r;++R){rr=encode_row(R);isempty=true;if(header===1)row=[];else{row={};if(Object.defineProperty)Object.defineProperty(row,"__rowNum__",{value:R,enumerable:false});else row.__rowNum__=R}for(C=r.s.c;C<=r.e.c;++C){val=sheet[cols[C]+rr];if(val===undefined||val.t===undefined)continue;v=val.v;switch(val.t){case"e":continue;case"s":break;case"b":case"n":break;default:throw"unrecognized type "+val.t}if(v!==undefined){row[hdr[C]]=raw?v:format_cell(val,v);isempty=false}}if(isempty===false||header===1)out[outi++]=row}out.length=outi;return out}function sheet_to_row_object_array(sheet,opts){return sheet_to_json(sheet,opts!=null?opts:{})}function sheet_to_csv(sheet,opts){var out="",txt="",qreg=/"/g;var o=opts==null?{}:opts;if(sheet==null||sheet["!ref"]==null)return"";var r=safe_decode_range(sheet["!ref"]);var FS=o.FS!==undefined?o.FS:",",fs=FS.charCodeAt(0);var RS=o.RS!==undefined?o.RS:"\n",rs=RS.charCodeAt(0);var row="",rr="",cols=[];var i=0,cc=0,val;var R=0,C=0;for(C=r.s.c;C<=r.e.c;++C)cols[C]=encode_col(C);for(R=r.s.r;R<=r.e.r;++R){row="";rr=encode_row(R);for(C=r.s.c;C<=r.e.c;++C){val=sheet[cols[C]+rr];txt=val!==undefined?""+format_cell(val):"";for(i=0,cc=0;i!==txt.length;++i)if((cc=txt.charCodeAt(i))===fs||cc===rs||cc===34){txt='"'+txt.replace(qreg,'""')+'"';break}row+=(C===r.s.c?"":FS)+txt}out+=row+RS}return out}var make_csv=sheet_to_csv;function sheet_to_formulae(sheet){var cmds,y="",x,val="";if(sheet==null||sheet["!ref"]==null)return"";var r=safe_decode_range(sheet["!ref"]),rr="",cols=[],C;cmds=new Array((r.e.r-r.s.r+1)*(r.e.c-r.s.c+1));var i=0;for(C=r.s.c;C<=r.e.c;++C)cols[C]=encode_col(C);for(var R=r.s.r;R<=r.e.r;++R){rr=encode_row(R);for(C=r.s.c;C<=r.e.c;++C){y=cols[C]+rr;x=sheet[y];val="";if(x===undefined)continue;if(x.f!=null)val=x.f;else if(x.w!==undefined)val="'"+x.w;else if(x.v===undefined)continue;else val=""+x.v;cmds[i++]=y+"="+val}}cmds.length=i;return cmds}var utils={encode_col:encode_col,encode_row:encode_row,encode_cell:encode_cell,encode_range:encode_range,decode_col:decode_col,decode_row:decode_row,split_cell:split_cell,decode_cell:decode_cell,decode_range:decode_range,format_cell:format_cell,get_formulae:sheet_to_formulae,make_csv:sheet_to_csv,make_json:sheet_to_json,make_formulae:sheet_to_formulae,sheet_to_csv:sheet_to_csv,sheet_to_json:sheet_to_json,sheet_to_formulae:sheet_to_formulae,sheet_to_row_object_array:sheet_to_row_object_array};var XmlNode=function(){function XmlNode(tagName,attributes,children){if(!(this instanceof XmlNode)){return new XmlNode(tagName,attributes,children)}this.tagName=tagName;this._attributes=attributes||{};this._children=children||[];this._prefix="";return this}XmlNode.prototype.createElement=function(){return new XmlNode(arguments)};XmlNode.prototype.children=function(){return this._children};XmlNode.prototype.append=function(node){this._children.push(node);return this};XmlNode.prototype.prefix=function(prefix){if(arguments.length==0){return this._prefix}this._prefix=prefix;return this};XmlNode.prototype.attr=function(attr,value){if(value==undefined){delete this._attributes[attr];return this}if(arguments.length==0){return this._attributes}else if(typeof attr=="string"&&arguments.length==1){return this._attributes.attr[attr]}if(typeof attr=="object"&&arguments.length==1){for(var key in attr){this._attributes[key]=attr[key]}}else if(arguments.length==2&&typeof attr=="string"){this._attributes[attr]=value}return this};var APOS="'";QUOTE='"';var ESCAPED_QUOTE={};ESCAPED_QUOTE[QUOTE]="&quot;";ESCAPED_QUOTE[APOS]="&apos;";XmlNode.prototype.escapeAttributeValue=function(att_value){return'"'+att_value.replace(/\"/g,"&quot;")+'"'};XmlNode.prototype.toXml=function(node){if(!node)node=this;var xml=node._prefix;xml+="<"+node.tagName;if(node._attributes){for(var key in node._attributes){xml+=" "+key+"="+this.escapeAttributeValue(""+node._attributes[key])+""}}if(node._children&&node._children.length>0){xml+=">";for(var i=0;i<node._children.length;i++){xml+=this.toXml(node._children[i])}xml+="</"+node.tagName+">"}else{xml+="/>"}return xml};return XmlNode}();var StyleBuilder=function(options){var customNumFmtId=164;var table_fmt={0:"General",1:"0",2:"0.00",3:"#,##0",4:"#,##0.00",9:"0%",10:"0.00%",11:"0.00E+00",12:"# ?/?",13:"# ??/??",14:"m/d/yy",15:"d-mmm-yy",16:"d-mmm",17:"mmm-yy",18:"h:mm AM/PM",19:"h:mm:ss AM/PM",20:"h:mm",21:"h:mm:ss",22:"m/d/yy h:mm",37:"#,##0 ;(#,##0)",38:"#,##0 ;[Red](#,##0)",39:"#,##0.00;(#,##0.00)",40:"#,##0.00;[Red](#,##0.00)",45:"mm:ss",46:"[h]:mm:ss",47:"mmss.0",48:"##0.0E+0",49:"@",56:'"上午/下午 "hh"時"mm"分"ss"秒 "'};var fmt_table={};for(var idx in table_fmt){fmt_table[table_fmt[idx]]=idx}_hashIndex={};_listIndex=[];return{initialize:function(options){this.$fonts=XmlNode("fonts").attr("count",0).attr("x14ac:knownFonts","1");this.$fills=XmlNode("fills").attr("count",0);this.$borders=XmlNode("borders").attr("count",0);this.$numFmts=XmlNode("numFmts").attr("count",0);this.$cellStyleXfs=XmlNode("cellStyleXfs");this.$xf=XmlNode("xf").attr("numFmtId",0).attr("fontId",0).attr("fillId",0).attr("borderId",0);this.$cellXfs=XmlNode("cellXfs").attr("count",0);this.$cellStyles=XmlNode("cellStyles").append(XmlNode("cellStyle").attr("name","Normal").attr("xfId",0).attr("builtinId",0));this.$dxfs=XmlNode("dxfs").attr("count","0");this.$tableStyles=XmlNode("tableStyles").attr("count","0").attr("defaultTableStyle","TableStyleMedium9").attr("defaultPivotStyle","PivotStyleMedium4");this.$styles=XmlNode("styleSheet").attr("xmlns:mc","http://schemas.openxmlformats.org/markup-compatibility/2006").attr("xmlns:x14ac","http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac").attr("xmlns","http://schemas.openxmlformats.org/spreadsheetml/2006/main").attr("mc:Ignorable","x14ac").prefix('<?xml version="1.0" encoding="UTF-8" standalone="yes"?>').append(this.$numFmts).append(this.$fonts).append(this.$fills).append(this.$borders).append(this.$cellStyleXfs.append(this.$xf)).append(this.$cellXfs).append(this.$cellStyles).append(this.$dxfs).append(this.$tableStyles);var defaultStyle=options.defaultCellStyle||{};if(!defaultStyle.font)defaultStyle.font={name:"Calibri",sz:"12"};if(!defaultStyle.font.name)defaultStyle.font.name="Calibri";if(!defaultStyle.font.sz)defaultStyle.font.sz=11;if(!defaultStyle.fill)defaultStyle.fill={patternType:"none",fgColor:{}};if(!defaultStyle.border)defaultStyle.border={};if(!defaultStyle.numFmt)defaultStyle.numFmt=0;this.defaultStyle=defaultStyle;var gray125Style=JSON.parse(JSON.stringify(defaultStyle));gray125Style.fill={patternType:"gray125",fgColor:{}};this.addStyles([defaultStyle,gray125Style]);return this},addStyle:function(attributes){var hashKey=JSON.stringify(attributes);var index=_hashIndex[hashKey];if(index==undefined){index=this._addXf(attributes);_hashIndex[hashKey]=index}else{index=_hashIndex[hashKey]}return index},addStyles:function(styles){var self=this;return styles.map(function(style){return self.addStyle(style)})},_duckTypeStyle:function(attributes){if(typeof attributes=="object"&&(attributes.patternFill||attributes.fgColor)){return{fill:attributes}}else if(attributes.font||attributes.numFmt||attributes.border||attributes.fill){return attributes}else{return this._getStyleCSS(attributes)}},_getStyleCSS:function(css){return css},_addXf:function(attributes){var fontId=this._addFont(attributes.font);var fillId=this._addFill(attributes.fill);var borderId=this._addBorder(attributes.border);var numFmtId=this._addNumFmt(attributes.numFmt);var $xf=XmlNode("xf").attr("numFmtId",numFmtId).attr("fontId",fontId).attr("fillId",fillId).attr("borderId",borderId).attr("xfId","0");if(fontId>0){$xf.attr("applyFont","1")}if(fillId>0){$xf.attr("applyFill","1")}if(borderId>0){$xf.attr("applyBorder","1")}if(numFmtId>0){$xf.attr("applyNumberFormat","1")}if(attributes.alignment){var $alignment=XmlNode("alignment");if(attributes.alignment.horizontal){$alignment.attr("horizontal",attributes.alignment.horizontal)}if(attributes.alignment.vertical){$alignment.attr("vertical",attributes.alignment.vertical)}if(attributes.alignment.indent){$alignment.attr("indent",attributes.alignment.indent)}if(attributes.alignment.readingOrder){$alignment.attr("readingOrder",attributes.alignment.readingOrder)}if(attributes.alignment.wrapText){$alignment.attr("wrapText",attributes.alignment.wrapText)}if(attributes.alignment.textRotation!=undefined){$alignment.attr("textRotation",attributes.alignment.textRotation)}$xf.append($alignment).attr("applyAlignment",1)}this.$cellXfs.append($xf);var count=+this.$cellXfs.children().length;this.$cellXfs.attr("count",count);return count-1},_addFont:function(attributes){if(!attributes){return 0}var $font=XmlNode("font").append(XmlNode("sz").attr("val",attributes.sz||this.defaultStyle.font.sz)).append(XmlNode("name").attr("val",attributes.name||this.defaultStyle.font.name));if(attributes.bold)$font.append(XmlNode("b"));if(attributes.underline)$font.append(XmlNode("u"));if(attributes.italic)$font.append(XmlNode("i"));if(attributes.strike)$font.append(XmlNode("strike"));if(attributes.outline)$font.append(XmlNode("outline"));if(attributes.shadow)$font.append(XmlNode("shadow"));if(attributes.vertAlign){$font.append(XmlNode("vertAlign").attr("val",attributes.vertAlign))}if(attributes.color){if(attributes.color.theme){$font.append(XmlNode("color").attr("theme",attributes.color.theme));if(attributes.color.tint){$font.append(XmlNode("tint").attr("theme",attributes.color.tint))}}else if(attributes.color.rgb){$font.append(XmlNode("color").attr("rgb",attributes.color.rgb))}}this.$fonts.append($font);var count=this.$fonts.children().length;this.$fonts.attr("count",count);return count-1},_addNumFmt:function(numFmt){if(!numFmt){return 0}if(typeof numFmt=="string"){var numFmtIdx=fmt_table[numFmt];if(numFmtIdx>=0){return numFmtIdx}}if(/^[0-9]+$/.exec(numFmt)){return numFmt}numFmt=numFmt.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;");var $numFmt=XmlNode("numFmt").attr("numFmtId",++customNumFmtId).attr("formatCode",numFmt);this.$numFmts.append($numFmt);var count=this.$numFmts.children().length;this.$numFmts.attr("count",count);return customNumFmtId},_addFill:function(attributes){if(!attributes){return 0}var $patternFill=XmlNode("patternFill").attr("patternType",attributes.patternType||"solid");if(attributes.fgColor){var $fgColor=XmlNode("fgColor");if(attributes.fgColor.rgb){if(attributes.fgColor.rgb.length==6){attributes.fgColor.rgb="FF"+attributes.fgColor.rgb}$fgColor.attr("rgb",attributes.fgColor.rgb);$patternFill.append($fgColor)}else if(attributes.fgColor.theme){$fgColor.attr("theme",attributes.fgColor.theme);if(attributes.fgColor.tint){$fgColor.attr("tint",attributes.fgColor.tint)}$patternFill.append($fgColor)}if(!attributes.bgColor){attributes.bgColor={indexed:"64"}}}if(attributes.bgColor){var $bgColor=XmlNode("bgColor").attr(attributes.bgColor);$patternFill.append($bgColor)}var $fill=XmlNode("fill").append($patternFill);this.$fills.append($fill);var count=this.$fills.children().length;this.$fills.attr("count",count);return count-1},_getSubBorder:function(direction,spec){var $direction=XmlNode(direction);if(spec){if(spec.style)$direction.attr("style",spec.style);if(spec.color){var $color=XmlNode("color");if(spec.color.auto){$color.attr("auto",spec.color.auto)}else if(spec.color.rgb){$color.attr("rgb",spec.color.rgb)}else if(spec.color.theme||spec.color.tint){$color.attr("theme",spec.color.theme||"1");$color.attr("tint",spec.color.tint||"0")}$direction.append($color)}}return $direction},_addBorder:function(attributes){if(!attributes){return 0}var self=this;var $border=XmlNode("border").attr("diagonalUp",attributes.diagonalUp).attr("diagonalDown",attributes.diagonalDown);var directions=["left","right","top","bottom","diagonal"];directions.forEach(function(direction){$border.append(self._getSubBorder(direction,attributes[direction]))});this.$borders.append($border);var count=this.$borders.children().length;this.$borders.attr("count",count);return count-1},toXml:function(){return this.$styles.toXml()}}.initialize(options||{})};XLSX.parse_xlscfb=parse_xlscfb;XLSX.parse_zip=parse_zip;XLSX.read=readSync;XLSX.readFile=readFileSync;XLSX.readFileSync=readFileSync;XLSX.write=writeSync;XLSX.writeFile=writeFileSync;XLSX.writeFileSync=writeFileSync;XLSX.utils=utils;XLSX.CFB=CFB;XLSX.SSF=SSF})(typeof exports!=="undefined"?exports:XLSX);var XLS=XLSX;
Source/UBCS-WEB/src/config/js-xlsx-master/dist/xlsx.min.map
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
{"version":3,"sources":["xlsx.js"],"names":["XLSX","make_xlsx","version","current_codepage","current_cptable","module","require","cptable","reset_cp","set_cp","cp","char_codes","data","o","i","len","length","charCodeAt","debom_xml","_getchar","_gc1","x","String","fromCharCode","utils","decode","substr","_gc2","Base64","make_b64","map","encode","input","utf8","c1","c2","c3","e1","e2","e3","e4","isNaN","charAt","b64_decode","replace","indexOf","has_buf","Buffer","new_raw_buf","Array","s2a","s","split","bconcat","bufs","concat","apply","chr0","chr1","SSF","make_ssf","_strrev","fill","c","l","pad0","v","d","t","pad_","rpad_","pad0r1","Math","round","pad0r2","p2_32","pow","pad0r","isgeneral","opts_fmt","fixopts","y","undefined","opts","table_fmt","0","1","2","3","4","9","10","11","12","13","14","15","16","17","18","19","20","21","22","37","38","39","40","45","46","47","48","49","56","65535","days","months","frac","D","mixed","sgn","B","P_2","P_1","P","Q_2","Q_1","Q","A","floor","q","general_fmt_int","_general_int","general_fmt_num","make_general_fmt_num","gnr1","gnr2","gnr4","gnr5","gnr6","gfn2","w","gfn5","toFixed","toPrecision","toExponential","gfn3","gfn4","V","log","abs","LOG10E","_general_num","general_fmt","Error","_general","fix_hijri","date","parse_date_code","b2","time","dow","dout","out","T","u","m","H","M","S","date1904","Date","setDate","getDate","getFullYear","getMonth","getDay","write_date","type","fmt","val","ss0","ss","tt","outl","commaify","j","write_num","make_write_num","pct1","write_num_pct","sfmt","mul","write_num_cm","idx","write_num_exp","match","period","ee","fakee","$$","$1","$2","$3","frac1","write_num_f1","r","aval","sign","den","parseInt","rr","base","myn","myd","write_num_f2","dec1","closeparen","phone","hashq","str","cc","rnd","dd","dec","flr","write_num_flt","ffmt","oo","ri","ff","oa","min","max","lres","rres","write_num_cm2","write_num_pct2","write_num_exp2","write_num_int","split_fmt","in_str","_split","abstime","eval_fmt","flen","lst","dt","hr","toLowerCase","bt","ssm","nstr","jj","vv","myv","ostr","decpt","lasti","retval","_eval","cfregex","cfregex2","chkcond","thresh","parseFloat","choose_fmt","f","lat","m1","m2","format","table","_table","load","load_entry","get_table","load_table","tbl","XLMLFormatMap","General Number","General Date","Long Date","Medium Date","Short Date","Long Time","Medium Time","Short Time","Currency","Fixed","Standard","Percent","Scientific","Yes/No","True/False","On/Off","DO_NOT_EXPORT_CFB","CFB","_CFB","exports","parse","file","mver","ssz","nmfs","ndfs","dir_start","minifat_start","difat_start","fat_addrs","blob","slice","prep_blob","mv","check_get_mver","header","check_shifts","nds","read_shift","chk","sectors","sectorify","sleuth_fat","sector_list","make_sector_list","name","ENDOFCHAIN","files","Paths","FileIndex","FullPaths","FullPathDir","read_directory","build_full_paths","root_name","shift","root","find_path","make_find_path","raw","find","HEADER_SIGNATURE","HEADER_CLSID","nsectors","ceil","FI","FPD","FP","L","R","C","pl","dad","push","UCFullPaths","UCPaths","toUpperCase","path","k","UCPath","cnt","sector","__readInt32LE","get_sector_list","start","chkd","sl","buf","buf_chain","modulus","addr","nodes","__toBuffer","minifat_store","namelen","ctime","mtime","__utf16le","color","clsid","state","ct","read_date","mt","size","storage","content","MSSZ","offset","__readUInt32LE","fs","readFileSync","filename","options","readSync","consts","MAXREGSECT","DIFSECT","FATSECT","FREESECT","HEADER_MINOR_VERSION","MAXREGSID","NOSTREAM","EntryTypes","read","ReadShift","CheckField","isval","keys","Object","evert_key","obj","key","K","evert","evert_num","evert_arr","datenum","epoch","cc2str","arr","getdata","asNodeBuffer","_data","getContent","prototype","call","toString","asBinary","safegetzipfile","zip","lowerCaseFiles","getzipfile","getzipdata","safe","e","_fs","jszip","JSZip","attregexg","tagregex","nsregex","nsregex2","parsexmltag","tag","skip_root","z","eq","substring","strip_ns","encodings","&quot;","&apos;","&gt;","&lt;","&amp;","rencoding","rencstr","unescapexml","encregex","coderegex","text","decregex","charegex","escapexml","xlml_fixstr","entregex","entrepl","parsexmlbool","value","utf8read","utf8reada","orig","utf8readb","ww","corpus","utf8readc","matchtag","mtcache","g","RegExp","vtregex","vt_cache","vt_regex","vtvregex","vtmregex","parseVector","h","matches","baseType","res","forEach","wtregex","writetag","wxt_helper","join","writextag","write_w3cdtf","toISOString","write_vt","XML_HEADER","XMLNS","dc","dcterms","dcmitype","mx","sjs","vt","xsi","xsd","main","readIEEE754","isLE","nl","ml","el","eMax","eBias","bits","NaN","Infinity","___toBuffer","toBuffer_","___utf16le","utf16le_","b","__readUInt16LE","__hexlify","___hexlify","hexlify_","__utf8","___utf8","__readUInt8","__lpstr","___lpstr","lpstr_","__lpwstr","___lpwstr","lpwstr_","__double","___double","is_buf","is_buf_a","a","isArray","utf16le_b","isBuffer","lpstr_b","readUInt32LE","lpwstr_b","utf8_b","this","double_","readDoubleLE","is_buf_b","__readInt16LE","___unhexlify","__unhexlify","oI","oR","loc","lens","WriteShift","writeUInt16LE","writeUInt32LE","writeDoubleLE","writeInt32LE","hexstr","fld","pos","write_shift","parsenoop","writenoop","new_buf","sz","recordhopper","cb","tmpbyte","cntbyte","RT","XLSBRecordEnum","buf_array","blksz","newblk","ba_newblk","curbuf","endbuf","ba_endbuf","next","ba_next","end","ba_end","ba_push","_bufs","write_record","ba","payload","evert_RE","p","shift_cell_xls","cell","tgt","cRel","rRel","shift_range_xls","range","OFFCRYPTO","make_offcrypto","O","_crypto","crypto","rc4","md5","hex","createHash","update","digest","parse_StrRun","ich","ifnt","parse_RichStr","flags","parse_XLWideString","rgsStrRun","dwSizeStrRun","write_RichStr","write_XLWideString","parse_XLSBCell","col","iStyleRef","fPhShow","write_XLSBCell","parse_XLSBCodeName","parse_XLNullableWideString","cchCharacters","write_XLNullableWideString","parse_RelID","write_RelID","parse_RkNumber","fX100","fInt","RK","parse_UncheckedRfX","write_UncheckedRfX","parse_Xnum","write_Xnum","BErr","7","23","29","36","42","43","255","RBErr","parse_BrtColor","fValidRGB","xColorType","index","nTintAndShade","bRed","bGreen","bBlue","bAlpha","parse_FontFlags","fItalic","fStrikeout","fOutline","fShadow","fCondense","fExtend","VT_EMPTY","VT_NULL","VT_I2","VT_I4","VT_R4","VT_R8","VT_CY","VT_DATE","VT_BSTR","VT_ERROR","VT_BOOL","VT_VARIANT","VT_DECIMAL","VT_I1","VT_UI1","VT_UI2","VT_UI4","VT_I8","VT_UI8","VT_INT","VT_UINT","VT_LPSTR","VT_LPWSTR","VT_FILETIME","VT_BLOB","VT_STREAM","VT_STORAGE","VT_STREAMED_Object","VT_STORED_Object","VT_BLOB_Object","VT_CF","VT_CLSID","VT_VERSIONED_STREAM","VT_VECTOR","VT_ARRAY","VT_STRING","VT_USTR","VT_CUSTOM","DocSummaryPIDDSI","n","5","6","8","26","27","28","SummaryPIDSI","SpecialProperties","2147483648","2147483651","1919054434","hasOwnProperty","CountryEnum","30","31","32","33","34","41","44","52","55","61","64","66","81","82","84","86","90","105","213","216","218","351","354","358","420","886","961","962","963","964","965","966","971","972","974","981","XLSFillPattern","rgbify","XLSIcv","ct2type","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml","application/vnd.ms-excel.binIndexWs","application/vnd.ms-excel.chartsheet","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml","application/vnd.ms-excel.dialogsheet","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml","application/vnd.ms-excel.macrosheet","application/vnd.ms-excel.macrosheet+xml","application/vnd.ms-excel.intlmacrosheet","application/vnd.ms-excel.binIndexMs","application/vnd.openxmlformats-package.core-properties+xml","application/vnd.openxmlformats-officedocument.custom-properties+xml","application/vnd.openxmlformats-officedocument.extended-properties+xml","application/vnd.openxmlformats-officedocument.customXmlProperties+xml","application/vnd.ms-excel.comments","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml","application/vnd.ms-excel.pivotTable","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml","application/vnd.ms-excel.calcChain","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings","application/vnd.ms-office.activeX","application/vnd.ms-office.activeX+xml","application/vnd.ms-excel.attachedToolbars","application/vnd.ms-excel.connections","application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml","application/vnd.ms-excel.externalLink","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml","application/vnd.ms-excel.sheetMetadata","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml","application/vnd.ms-excel.pivotCacheDefinition","application/vnd.ms-excel.pivotCacheRecords","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml","application/vnd.ms-excel.queryTable","application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml","application/vnd.ms-excel.userNames","application/vnd.ms-excel.revisionHeaders","application/vnd.ms-excel.revisionLog","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml","application/vnd.ms-excel.tableSingleCells","application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml","application/vnd.ms-excel.slicer","application/vnd.ms-excel.slicerCache","application/vnd.ms-excel.slicer+xml","application/vnd.ms-excel.slicerCache+xml","application/vnd.ms-excel.wsSortMap","application/vnd.ms-excel.table","application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml","application/vnd.openxmlformats-officedocument.theme+xml","application/vnd.ms-excel.Timeline+xml","application/vnd.ms-excel.TimelineCache+xml","application/vnd.ms-office.vbaProject","application/vnd.ms-office.vbaProjectSignature","application/vnd.ms-office.volatileDependencies","application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml","application/vnd.ms-excel.controlproperties+xml","application/vnd.openxmlformats-officedocument.model+data","application/vnd.ms-excel.Survey+xml","application/vnd.openxmlformats-officedocument.drawing+xml","application/vnd.openxmlformats-officedocument.drawingml.chart+xml","application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml","application/vnd.openxmlformats-officedocument.vmlDrawing","application/vnd.openxmlformats-package.relationships+xml","application/vnd.openxmlformats-officedocument.oleObject","sheet","CT_LIST","workbooks","xlsx","xlsm","xlsb","xltx","strs","sheets","styles","type2ct","CT","parse_ct","ctext","calcchains","themes","coreprops","extprops","custprops","comments","vba","TODO","rels","xmlns","Extension","ContentType","PartName","WTF","console","error","calcchain","sst","style","defaults","CTYPE_XML_ROOT","xmlns:xsd","xmlns:xsi","CTYPE_DEFAULTS","write_ct","f1","bookType","f2","f3","RELS","WB","SHEET","parse_rels","currentFilePath","hash","resolveRelativePathIntoAbsolute","to","toksFrom","pop","toksTo","reversed","tokTo","rel","Type","Target","Id","TargetMode","canonictarget","RELS_ROOT","write_rels","rid","CORE_PROPS","CORE_PROPS_REGEX","parse_core_props","cur","CORE_PROPS_XML_ROOT","xmlns:cp","xmlns:dc","xmlns:dcterms","xmlns:dcmitype","cp_doit","write_core_props","Props","title","subject","creator","keywords","description","CreatedDate","xsi:type","ModifiedDate","EXT_PROPS","parse_ext_props","HeadingPairs","TitlesOfParts","widx","Worksheets","parts","SheetNames","EXT_PROPS_XML_ROOT","xmlns:vt","write_ext_props","W","Application","CUST_PROPS","custregex","parse_cust_props","xmlnsvt","toks","warn","CUST_PROPS_XML_ROOT","write_cust_props","pid","custprop","fmtid","xlml_set_prop","parse_FILETIME","dwLowDateTime","dwHighDateTime","parse_lpstr","pad","parse_lpwstr","parse_VtStringBase","stringType","parse_VtString","parse_VtUnalignedString","parse_VtVecUnalignedLpstrValue","ret","parse_VtVecUnalignedLpstr","parse_VtHeadingPair","headingString","parse_TypedPropertyValue","headerParts","parse_VtVecHeadingPairValue","cElements","parse_VtVecHeadingPair","parse_dictionary","CodePage","dict","parse_BLOB","bytes","parse_ClipboardData","Size","parse_VtVector","_opts","parse_PropertySet","PIDSI","start_addr","NumProps","Dictionary","DictObj","PropID","Offset","PropH","fail","piddsi","oldpos","parsebool","parse_PropertySetStream","NumSets","FMTID0","FMTID1","Offset0","Offset1","vers","SystemIdentifier","PSet0","rval","FMTID","PSet1","parsenoop2","parslurp","target","parslurp2","parseuint16","parseuint16a","parse_Boolean","parse_Bes","parse_ShortXLUnicodeString","cch","width","encoding","biff","fHighByte","parse_XLUnicodeRichExtendedString","fExtSt","fRichSt","cRun","cbExtRst","msg","parse_XLUnicodeStringNoCch","parse_XLUnicodeString","parse_XLUnicodeString2","parse_ControlInfo","parse_URLMoniker","extra","url","parse_FileMoniker","cAnti","ansiLength","ansiPath","endServer","versionNumber","cbUnicodePathSize","cbUnicodePathBytes","usKeyValue","unicodePath","parse_HyperlinkMoniker","parse_HyperlinkString","parse_Hyperlink","sVer","displayName","targetFrameName","moniker","oleMoniker","location","guid","fileTime","parse_LongRGBA","parse_LongRGB","parse_XLSCell","rw","ixfe","parse_frtHeader","rt","parse_OptXLUnicodeString","HIDEOBJENUM","parse_HideObjEnum","parse_XTI","iSupBook","itabFirst","itabLast","parse_RkRec","parse_AddinUdf","udfName","parse_Ref8U","rwFirst","rwLast","colFirst","colLast","parse_RefU","parse_Ref","parse_FtCmo","ot","id","parse_FtNts","fSharedNote","parse_FtCf","cf","FtTab","parse_FtArray","fts","ft","parse_FontIndex","parse_BOF","BIFFVer","parse_InterfaceHdr","parse_WriteAccess","enc","UserName","parse_BoundSheet8","hidden","hs","parse_SST","ucnt","Count","Unique","parse_ExtSST","extsst","dsst","parse_Row","Col","rht","parse_ForceFullCalculation","fullcalc","parse_CompressPictures","parse_RecalcId","parse_DefaultRowHeight","miyRw","fl","Unsynced","DyZero","ExAsc","ExDsc","parse_Window1","xWn","yWn","dxWn","dyWn","iTabCur","iTabFirst","ctabSel","wTabRatio","Pos","Dim","Flags","CurTab","FirstTab","Selected","TabRatio","parse_Font","parse_LabelSst","isst","parse_Label","parse_Format","ifmt","fmtstr","parse_Dimensions","parse_RK","rkrec","rknum","parse_MulRk","rkrecs","lastcol","parse_CellStyleXF","patternType","icvFore","icvBack","parse_CellXF","parse_StyleXF","parse_XF","fStyle","parse_Guts","parse_BoolErr","parse_Number","xnum","parse_XLHeaderFooter","parse_SupBook","ctab","virtPath","rgst","sbcch","parse_ExternName","body","fBuiltIn","fWantAdvise","fWantPict","fOle","fOleLink","fIcon","parse_Lbl","chKey","cce","itab","rgce","parse_NameParsedFormula","Name","parse_ExternSheet","snames","parse_ShrFmla","ref","cUse","parse_SharedParsedFormula","parse_Array","parse_ArrayParsedFormula","parse_MTRSettings","fMTREnabled","fUserSetThreadCount","cUserThreadCount","parse_NoteSh","row","idObj","stAuthor","parse_Note","parse_MergeCells","merges","cmcs","parse_Obj","cmo","parse_TxO","lastobj","controlInfo","cchText","cbRuns","ifntEmpty","texts","hdr","parse_HLink","hlink","parse_HLinkTooltip","wzTooltip","parse_Country","parse_ClrtClient","ccv","parse_Palette","parse_XFCRC","cxfs","crc","parse_Style","parse_StyleExt","parse_ColInfo","parse_Window2","parse_Backup","parse_Blank","parse_BottomMargin","parse_BuiltInFnGroupCount","parse_CalcCount","parse_CalcDelta","parse_CalcIter","parse_CalcMode","parse_CalcPrecision","parse_CalcRefMode","parse_CalcSaveRecalc","parse_CodePage","parse_Compat12","parse_Date1904","parse_DefColWidth","parse_DSF","parse_EntExU2","parse_EOF","parse_Excel9File","parse_FeatHdr","parse_FontX","parse_Footer","parse_GridSet","parse_HCenter","parse_Header","parse_HideObj","parse_InterfaceEnd","parse_LeftMargin","parse_Mms","parse_ObjProtect","parse_Password","parse_PrintGrid","parse_PrintRowCol","parse_PrintSize","parse_Prot4Rev","parse_Prot4RevPass","parse_Protect","parse_RefreshAll","parse_RightMargin","parse_RRTabId","parse_ScenarioProtect","parse_Scl","parse_String","parse_SxBool","parse_TopMargin","parse_UsesELFs","parse_VCenter","parse_WinProtect","parse_WriteProtect","parse_VerticalPageBreaks","parse_HorizontalPageBreaks","parse_Selection","parse_Continue","parse_Pane","parse_Pls","parse_DCon","parse_DConRef","parse_DConName","parse_XCT","parse_CRN","parse_FileSharing","parse_Uncalced","parse_Template","parse_Intl","parse_WsBool","parse_Sort","parse_Sync","parse_LPr","parse_DxGCol","parse_FnGroupName","parse_FilterMode","parse_AutoFilterInfo","parse_AutoFilter","parse_Setup","parse_ScenMan","parse_SCENARIO","parse_SxView","parse_Sxvd","parse_SXVI","parse_SxIvd","parse_SXLI","parse_SXPI","parse_DocRoute","parse_RecipName","parse_MulBlank","parse_SXDI","parse_SXDB","parse_SXFDB","parse_SXDBB","parse_SXNum","parse_SxErr","parse_SXInt","parse_SXString","parse_SXDtr","parse_SxNil","parse_SXTbl","parse_SXTBRGIITM","parse_SxTbpg","parse_ObProj","parse_SXStreamID","parse_DBCell","parse_SXRng","parse_SxIsxoper","parse_BookBool","parse_DbOrParamQry","parse_OleObjectSize","parse_SXVS","parse_BkHim","parse_MsoDrawingGroup","parse_MsoDrawing","parse_MsoDrawingSelection","parse_PhoneticInfo","parse_SxRule","parse_SXEx","parse_SxFilt","parse_SxDXF","parse_SxItm","parse_SxName","parse_SxSelect","parse_SXPair","parse_SxFmla","parse_SxFormat","parse_SXVDEx","parse_SXFormula","parse_SXDBEx","parse_RRDInsDel","parse_RRDHead","parse_RRDChgCell","parse_RRDRenSheet","parse_RRSort","parse_RRDMove","parse_RRFormat","parse_RRAutoFmt","parse_RRInsertSh","parse_RRDMoveBegin","parse_RRDMoveEnd","parse_RRDInsDelBegin","parse_RRDInsDelEnd","parse_RRDConflict","parse_RRDDefName","parse_RRDRstEtxp","parse_LRng","parse_CUsr","parse_CbUsr","parse_UsrInfo","parse_UsrExcl","parse_FileLock","parse_RRDInfo","parse_BCUsrs","parse_UsrChk","parse_UserBView","parse_UserSViewBegin","parse_UserSViewEnd","parse_RRDUserView","parse_Qsi","parse_CondFmt","parse_CF","parse_DVal","parse_DConBin","parse_Lel","parse_XLSCodeName","parse_SXFDBType","parse_ObNoMacros","parse_Dv","parse_Index","parse_Table","parse_BigName","parse_ContinueBigName","parse_WebPub","parse_QsiSXTag","parse_DBQueryExt","parse_ExtString","parse_TxtQry","parse_Qsir","parse_Qsif","parse_RRDTQSIF","parse_OleDbConn","parse_WOpt","parse_SXViewEx","parse_SXTH","parse_SXPIEx","parse_SXVDTEx","parse_SXViewEx9","parse_ContinueFrt","parse_RealTimeData","parse_ChartFrtInfo","parse_FrtWrapper","parse_StartBlock","parse_EndBlock","parse_StartObject","parse_EndObject","parse_CatLab","parse_YMult","parse_SXViewLink","parse_PivotChartBits","parse_FrtFontList","parse_SheetExt","parse_BookExt","parse_SXAddl","parse_CrErr","parse_HFPicture","parse_Feat","parse_DataLabExt","parse_DataLabExtContents","parse_CellWatch","parse_FeatHdr11","parse_Feature11","parse_DropDownObjIds","parse_ContinueFrt11","parse_DConn","parse_List12","parse_Feature12","parse_CondFmt12","parse_CF12","parse_CFEx","parse_AutoFilter12","parse_ContinueFrt12","parse_MDTInfo","parse_MDXStr","parse_MDXTuple","parse_MDXSet","parse_MDXProp","parse_MDXKPI","parse_MDB","parse_PLV","parse_DXF","parse_TableStyles","parse_TableStyle","parse_TableStyleElement","parse_NamePublish","parse_NameCmt","parse_SortData","parse_GUIDTypeLib","parse_FnGrp12","parse_NameFnGrp12","parse_HeaderFooter","parse_CrtLayout12","parse_CrtMlFrt","parse_CrtMlFrtContinue","parse_ShapePropsStream","parse_TextPropsStream","parse_RichTextStream","parse_CrtLayout12A","parse_Units","parse_Chart","parse_Series","parse_DataFormat","parse_LineFormat","parse_MarkerFormat","parse_AreaFormat","parse_PieFormat","parse_AttachedLabel","parse_SeriesText","parse_ChartFormat","parse_Legend","parse_SeriesList","parse_Bar","parse_Line","parse_Pie","parse_Area","parse_Scatter","parse_CrtLine","parse_Axis","parse_Tick","parse_ValueRange","parse_CatSerRange","parse_AxisLine","parse_CrtLink","parse_DefaultText","parse_Text","parse_ObjectLink","parse_Frame","parse_Begin","parse_End","parse_PlotArea","parse_Chart3d","parse_PicF","parse_DropBar","parse_Radar","parse_Surf","parse_RadarArea","parse_AxisParent","parse_LegendException","parse_ShtProps","parse_SerToCrt","parse_AxesUsed","parse_SBaseRef","parse_SerParent","parse_SerAuxTrend","parse_IFmtRecord","parse_Pos","parse_AlRuns","parse_BRAI","parse_SerAuxErrBar","parse_SerFmt","parse_Chart3DBarShape","parse_Fbi","parse_BopPop","parse_AxcExt","parse_Dat","parse_PlotGrowth","parse_SIIndex","parse_GelFrame","parse_BopPopCustom","parse_Fbi2","parse_BIFF5String","parse_BIFF2STR","parse_BIFF2NUM","num","CS2CP","77","128","129","130","134","136","161","162","163","177","178","186","204","222","238","69","parse_rs","parse_rs_factory","tregex","rpregex","rregex","rend","nlregex","parse_rpr","rpr","intro","outro","font","strike","rgb","family","parse_r","terms","rs","sitregex","sirregex","parse_si","html","cellHTML","sstr0","sstr1","sstr2","parse_sst_xml","count","uniqueCount","SST","straywsregex","write_sst_xml","bookSST","sitag","parse_BrtBeginSst","parse_sst_bin","pass","hopper_sst","write_BrtBeginSst","write_BrtSSTItem","write_sst_bin","_JS2ANSI","parse_Version","Major","Minor","parse_EncryptionHeader","tmp","AlgID","parse_EncryptionVerifier","parse_RC4CryptoHeader","EncryptionVersionInfo","EncryptionHeader","EncryptionVerifier","parse_RC4Header","Salt","EncryptedVerifier","EncryptedVerifierHash","crypto_CreatePasswordVerifier_Method1","Password","Verifier","PasswordArray","PasswordDecoded","PasswordByte","Intermediate1","Intermediate2","Intermediate3","crypto_CreateXorArray_Method1","PadArray","InitialCode","XorMatrix","Ror","Byte","XorRor","byte1","byte2","CreateXorKey_Method1","XorKey","CurrentElement","Char","password","Index","ObfuscationArray","Temp","PasswordLastChar","PadIndex","crypto_DecryptData_Method1","Data","XorArrayIndex","XorArray","Value","crypto_MakeXorDecryptor","parse_XORObfuscation","verificationBytes","verifier","valid","insitu_decrypt","parse_FilePassHeader","Info","parse_FilePass","hex2RGB","rgb2Hex","rgb2HSL","G","H6","L2","hsl2RGB","hsl","h6","X","rgb_tint","tint","rev","DEF_MDW","MAX_MDW","MIN_MDW","MDW","width2px","px2char","px","char2width","chr","cycle_width","collw","find_mdw","coll","XLMLPatternTypeMap","None","Solid","Gray50","Gray75","Gray25","HorzStripe","VertStripe","ReverseDiagStripe","DiagStripe","DiagCross","ThickDiagCross","ThinHorzStripe","ThinVertStripe","ThinReverseDiagStripe","ThinHorzCross","parse_fills","Fills","bgColor","indexed","theme","themeElements","clrScheme","raw_rgb","fgColor","parse_fonts","Fonts","bold","underline","italic","outline","shadow","vertAlign","parse_borders","Borders","border","sub_border","diagonalUp","diagonalDown","left","right","top","bottom","diagonal","auto","parse_numFmts","NumberFmt","formatCode","numFmtId","write_numFmts","NF","parse_cellXfs","CellXf","xf","fillId","alignment","vertical","horizontal","textRotation","indent","wrapText","write_cellXfs","cellXfs","parse_sty_xml","make_pstyx","numFmtRegex","cellXfRegex","fillsRegex","bordersRegex","STYLES_XML_ROOT","STY","write_sty_xml","wb","style_builder","toXml","parse_BrtFmt","stFmtCode","parse_BrtFont","dyHeight","grbit","bls","sss","uls","bFamily","bCharSet","brtColor","bFontScheme","Bold","Italic","Strikeout","Outline","Shadow","Condense","Extend","Sub","Sup","parse_BrtXF","ixfeParent","parse_sty_bin","hopper_sty","write_sty_bin","THEME","parse_clrScheme","lastClr","parse_fontScheme","parse_fmtScheme","clrsregex","fntsregex","fmtsregex","parse_themeElements","themeltregex","parse_theme_xml","write_theme","themeXml","parse_Theme","dwThemeVersion","parse_ColorTheme","parse_FullColorExt","xclrType","nTintShade","xclrValue","parse_IcvXF","parse_XFExtGradient","parse_ExtProp","extType","parse_XFExt","cexts","ext","update_xfext","xfext","xfe","parse_cc_xml","write_cc_xml","parse_BrtCalcChainItem$","encode_cell","parse_cc_bin","hopper_cc","write_cc_bin","parse_comments","dirComments","sheetRels","canonicalpath","parse_cmnt","sheetNames","sheetName","insertCommentsIntoSheet","comment","safe_decode_range","thisCell","decode_cell","encoded","encode_range","author","parse_comments_xml","authors","commentList","trim","authorId","sheetRows","textMatch","write_comments_xml","parse_BrtBeginComment","iauthor","rfx","parse_BrtCommentAuthor","parse_BrtCommentText","parse_comments_bin","hopper_cmnt","write_comments_bin","rc_to_a1","rcregex","rcbase","rcfunc","$4","$5","encode_col","encode_row","fstr","parseread","parseread1","parse_ColRelU","parse_RgceArea","parse_RgceAreaRel","parse_RgceLoc","parse_RgceLocRel","cl","parse_PtgArea","area","parse_PtgArea3d","ixti","parse_PtgAreaErr","parse_PtgAreaErr3d","parse_PtgAreaN","parse_PtgArray","parse_PtgAttrBaxcel","bitSemi","bitBaxcel","parse_PtgAttrChoose","parse_PtgAttrGoto","bitGoto","parse_PtgAttrIf","bitIf","parse_PtgAttrSemi","parse_PtgAttrSpaceType","parse_PtgAttrSpace","parse_PtgAttrSpaceSemi","parse_PtgRef","ptg","parse_PtgRefN","parse_PtgRef3d","parse_PtgFunc","iftab","FtabArgc","Ftab","parse_PtgFuncVar","cparams","tab","parsetab","Cetab","parse_PtgAttrSum","parse_PtgConcat","parse_PtgExp","parse_PtgErr","parse_PtgInt","parse_PtgBool","parse_PtgNum","parse_PtgStr","parse_SerAr","parse_PtgExtraMem","parse_PtgExtraArray","cols","rows","parse_PtgName","nameindex","parse_PtgNameX","parse_PtgMemArea","parse_PtgMemFunc","parse_PtgRefErr","parse_PtgAdd","parse_PtgDiv","parse_PtgEq","parse_PtgGe","parse_PtgGt","parse_PtgIsect","parse_PtgLe","parse_PtgLt","parse_PtgMissArg","parse_PtgMul","parse_PtgNe","parse_PtgParen","parse_PtgPercent","parse_PtgPower","parse_PtgRange","parse_PtgSub","parse_PtgUminus","parse_PtgUnion","parse_PtgUplus","parse_PtgMemErr","parse_PtgMemNoMem","parse_PtgRefErr3d","parse_PtgTbl","PtgTypes","35","57","58","59","60","PtgDupes","96","65","97","98","67","99","68","100","101","70","102","71","103","72","104","73","74","106","75","107","76","108","109","89","121","122","91","123","92","124","93","125","Ptg18","Ptg19","parse_Formula","parse_FormulaValue","chn","cbf","parse_XLSCellParsedFormula","formula","shared","parse_RgbExtra","parse_Rgce","rgcb","ptgs","mapper","stringify_formula","supbooks","_range","stack","nameidx","fflen","argc","func","args","lbl","XLSXFutureFunctions","bookidx","externbook","sharedf","parsedf","fnd","arrayf","parse_XLSBCellParsedFormula","PtgDataType","24","25","50","51","53","54","62","63","78","79","80","83","85","87","88","94","95","110","111","112","113","114","115","116","117","118","119","120","126","127","131","132","133","135","137","138","139","140","142","143","144","145","146","147","148","149","150","151","152","153","155","159","164","166","167","168","169","170","171","172","173","174","175","185","187","188","189","190","191","192","193","194","195","196","197","198","199","200","201","202","203","206","207","208","209","210","211","212","214","215","217","219","220","223","224","225","226","227","228","229","240","243","249","250","251","252","253","254","256","259","260","265","266","267","268","269","272","273","274","276","277","278","279","280","281","282","283","284","285","288","289","290","291","292","293","295","296","297","298","302","305","306","307","308","309","310","311","312","313","314","315","316","318","319","320","321","322","323","324","325","328","330","336","338","339","342","343","344","350","352","355","356","370","373","374","375","376","377","378","379","380","381","382","383","384","385","386","388","390","391","392","393","394","395","396","397","398","399","400","412","413","414","415","416","417","421","422","423","424","425","430","431","432","433","434","435","436","437","438","439","440","441","442","443","444","445","446","447","448","449","450","451","452","453","454","455","456","458","459","460","461","462","463","464","465","466","467","468","469","470","471","472","473","474","475","476","477","478","480","481","482","485","489","491","493","494","495","509","510","511","517","518","519","520","521","522","523","545","546","547","548","549","620","621","647","653","667","673","753","755","808","141","154","156","157","158","160","165","176","179","180","181","182","183","184","205","221","230","231","232","233","234","235","236","237","239","241","242","244","245","246","247","248","257","258","261","262","263","264","270","271","275","286","287","294","299","300","301","303","304","317","326","327","329","331","332","334","335","337","340","341","345","346","347","348","349","353","357","359","360","361","362","363","364","365","366","367","368","369","371","372","_xlfn.ACOT","_xlfn.ACOTH","_xlfn.AGGREGATE","_xlfn.ARABIC","_xlfn.AVERAGEIF","_xlfn.AVERAGEIFS","_xlfn.BASE","_xlfn.BETA.DIST","_xlfn.BETA.INV","_xlfn.BINOM.DIST","_xlfn.BINOM.DIST.RANGE","_xlfn.BINOM.INV","_xlfn.BITAND","_xlfn.BITLSHIFT","_xlfn.BITOR","_xlfn.BITRSHIFT","_xlfn.BITXOR","_xlfn.CEILING.MATH","_xlfn.CEILING.PRECISE","_xlfn.CHISQ.DIST","_xlfn.CHISQ.DIST.RT","_xlfn.CHISQ.INV","_xlfn.CHISQ.INV.RT","_xlfn.CHISQ.TEST","_xlfn.COMBINA","_xlfn.CONFIDENCE.NORM","_xlfn.CONFIDENCE.T","_xlfn.COT","_xlfn.COTH","_xlfn.COUNTIFS","_xlfn.COVARIANCE.P","_xlfn.COVARIANCE.S","_xlfn.CSC","_xlfn.CSCH","_xlfn.DAYS","_xlfn.DECIMAL","_xlfn.ECMA.CEILING","_xlfn.ERF.PRECISE","_xlfn.ERFC.PRECISE","_xlfn.EXPON.DIST","_xlfn.F.DIST","_xlfn.F.DIST.RT","_xlfn.F.INV","_xlfn.F.INV.RT","_xlfn.F.TEST","_xlfn.FILTERXML","_xlfn.FLOOR.MATH","_xlfn.FLOOR.PRECISE","_xlfn.FORMULATEXT","_xlfn.GAMMA","_xlfn.GAMMA.DIST","_xlfn.GAMMA.INV","_xlfn.GAMMALN.PRECISE","_xlfn.GAUSS","_xlfn.HYPGEOM.DIST","_xlfn.IFNA","_xlfn.IFERROR","_xlfn.IMCOSH","_xlfn.IMCOT","_xlfn.IMCSC","_xlfn.IMCSCH","_xlfn.IMSEC","_xlfn.IMSECH","_xlfn.IMSINH","_xlfn.IMTAN","_xlfn.ISFORMULA","_xlfn.ISO.CEILING","_xlfn.ISOWEEKNUM","_xlfn.LOGNORM.DIST","_xlfn.LOGNORM.INV","_xlfn.MODE.MULT","_xlfn.MODE.SNGL","_xlfn.MUNIT","_xlfn.NEGBINOM.DIST","_xlfn.NETWORKDAYS.INTL","_xlfn.NIGBINOM","_xlfn.NORM.DIST","_xlfn.NORM.INV","_xlfn.NORM.S.DIST","_xlfn.NORM.S.INV","_xlfn.NUMBERVALUE","_xlfn.PDURATION","_xlfn.PERCENTILE.EXC","_xlfn.PERCENTILE.INC","_xlfn.PERCENTRANK.EXC","_xlfn.PERCENTRANK.INC","_xlfn.PERMUTATIONA","_xlfn.PHI","_xlfn.POISSON.DIST","_xlfn.QUARTILE.EXC","_xlfn.QUARTILE.INC","_xlfn.QUERYSTRING","_xlfn.RANK.AVG","_xlfn.RANK.EQ","_xlfn.RRI","_xlfn.SEC","_xlfn.SECH","_xlfn.SHEET","_xlfn.SHEETS","_xlfn.SKEW.P","_xlfn.STDEV.P","_xlfn.STDEV.S","_xlfn.SUMIFS","_xlfn.T.DIST","_xlfn.T.DIST.2T","_xlfn.T.DIST.RT","_xlfn.T.INV","_xlfn.T.INV.2T","_xlfn.T.TEST","_xlfn.UNICHAR","_xlfn.UNICODE","_xlfn.VAR.P","_xlfn.VAR.S","_xlfn.WEBSERVICE","_xlfn.WEIBULL.DIST","_xlfn.WORKDAY.INTL","_xlfn.XOR","_xlfn.Z.TEST","_ssfopts","WS","get_sst_id","get_cell_style","exec","numFmt","addStyle","revssf","fontId","borderId","xfId","applyNumberFormat","get_cell_style_csf","cellXf","applyAlignment","JSON","stringify","safe_format","fillid","cellNF","parse_ws_xml_dim","ws","mergecregex","sheetdataregex","hlinkregex","dimregex","colregex","parse_ws_xml","ridx","mergecells","columns","cellStyles","parse_ws_xml_cols","refguess","mtch","parse_ws_xml_data","parse_ws_xml_hlinks","tmpref","write_ws_xml_merges","write_ws_xml_pagesetup","setup","pageSetup","scale","orientation","horizontalDpi","verticalDpi","Rel","rng","seencol","coli","colm","colM","wpx","wch","write_ws_xml_cols","customWidth","write_ws_xml_cell","oldt","oldv","cellDates","os","Strings","parse_ws_xml_data_factory","cellregex","rowregex","isregex","match_v","match_f","sdata","guess","cells","cref","tagr","tagc","sstr","do_format","marr","marrlen","xlen","cellFormula","sheetStubs","write_ws_xml_data","WS_XML_ROOT","xmlns:r","write_ws_xml","sidx","rdata","Sheets","kids","pane","selection","activeCell","sqref","sheetView","showGridLines","tabSelected","workbookViewId","write_ws_xml_row_breaks","write_ws_xml_col_breaks","breaks","brk","thisBreak","nextBreak","man","manualBreakCount","parse_BrtRowHdr","parse_BrtWsDim","write_BrtWsDim","parse_BrtWsProp","parse_BrtCellBlank","write_BrtCellBlank","parse_BrtCellBool","fBool","parse_BrtCellError","parse_BrtCellIsst","parse_BrtCellReal","parse_BrtCellRk","parse_BrtCellSt","parse_BrtFmlaBool","parse_BrtFmlaError","parse_BrtFmlaNum","parse_BrtFmlaString","parse_BrtMergeCell","parse_BrtHLink","relId","tooltip","display","parse_ws_bin","!id","ws_parse","write_ws_bin_cell","write_CELLTABLE","write_ws_bin","WBPropsDef","WBViewDef","SheetDef","CalcPrDef","CustomWBViewDef","push_defaults_array","push_defaults","parse_wb_defaults","WBProps","CalcPr","WBView","wbnsregex","parse_wb_xml","AppVersion","xml_wb","WB_XML_ROOT","safe1904","Workbook","write_wb_xml","sheetId","r:id","hasPrintHeaders","printHeader","printColumns","localSheetId","parse_BrtBundleSh","hsState","iTabID","strRelID","write_BrtBundleSh","parse_BrtWbProp","strName","write_BrtWbProp","parse_BrtFRTArchID$","ArchID","parse_wb_bin","hopper_wb","write_BUNDLESHS","write_BrtFileVersion","write_BOOKVIEWS","write_BrtCalcProp","write_BrtFileRecover","write_wb_bin","parse_wb","parse_ws","parse_sty","parse_theme","parse_sst","parse_cc","write_wb","write_ws","write_sty","write_sst","attregexg2","attregex2","_chr","xlml_parsexmltag","words","xlml_parsexmltagobj","xlml_format","xlml_set_custprop","Custprops","Rn","safe_format_xlml","nf","process_style_xlml","stag","Interior","I","Pattern","ID","parse_xlml_data","xml","csty","sid","StyleID","interiors","Parent","UTC","Formula","xlml_clean_comment","xlml_normalize","xlmlregex","parse_xlml_xml","sheetnames","cursheet","sheetname","dtag","didx","fidx","pidx","cstys","lastIndex","HRef","HRefScreenTip","MergeAcross","MergeDown","Format","Span","Author","seen","bookSheets","bookProps","parse_xlml","fix_read_opts","write_xlml","parse_compobj","UserType","Reserved1","slurp","XLSRecordEnum","ll","safe_format_xf","XF","make_cell","parse_workbook","Directory","found_sheet","last_formula","cur_sheet","Preamble","lastcell","last_cell","cmnt","rngC","rngR","shared_formulae","array_formulae","temp_val","country","cell_valid","XFs","palette","get_rgb","getrgb","icv","process_cell_style","pcs","line","xfd","addcell","rrtabid","lastuser","codepage","winlocked","wtf","objects","sbc","sbci","sbcli","last_Rn","file_depth","RecordType","Date1904","WriteProtect","RefreshAll","CalcCount","CalcDelta","CalcIter","CalcMode","CalcPrecision","CalcSaveRecalc","CalcRefMode","FullCalc","TxO","noteobj","sheetnamesraw","sort","Number","Encryption","Metadata","Country","parse_xlscfb","cfb","CompObj","Summary","CompObjP","SummaryP","WorkbookP","parse_props","props","DocSummary","bookFiles","DSI","SI","333","387","389","401","403","404","405","406","407","408","409","410","411","418","419","426","427","428","429","457","479","483","484","486","487","488","490","492","496","497","498","499","500","501","502","503","504","505","506","507","508","512","513","514","515","516","524","525","526","527","528","529","530","531","532","533","534","535","536","537","538","539","540","541","542","550","551","552","553","554","555","556","557","558","559","560","561","562","564","565","566","569","570","572","573","574","577","578","579","580","581","582","583","584","585","586","587","588","589","590","591","592","593","594","595","596","597","598","599","600","601","602","603","604","605","606","607","608","609","610","611","612","613","614","615","616","617","618","619","625","626","627","628","629","630","631","632","633","634","635","636","637","638","639","640","641","642","643","644","645","646","648","649","650","651","652","654","655","656","657","658","659","660","661","662","663","664","665","666","668","669","671","672","674","675","676","677","678","679","680","1024","1025","1026","1027","1028","1029","1030","1031","1032","1033","1034","1035","1036","1037","1038","1039","1040","1041","1042","1043","1044","1045","1046","1047","1048","1049","1050","1051","1052","1053","1054","1055","1056","1057","1058","1059","1061","1062","1063","1066","1067","1068","1069","1070","1071","1072","1073","1075","1076","1077","1078","1079","1080","1081","1082","1083","1084","1085","1086","1087","1088","1089","1090","1091","1092","1093","1094","1095","1096","1097","1098","1099","1100","1101","1102","1103","1104","1105","1111","1112","1113","1114","1115","1116","1117","1118","1119","1120","1121","1122","1123","1124","1125","1126","1128","1129","1130","1131","1132","1133","1134","1135","1136","1137","1138","1139","1140","1141","1142","1143","1144","1145","1146","1147","1148","1149","1150","1152","1153","1154","1155","1156","1157","1158","1159","1160","1161","1162","1163","1164","1165","1166","1167","1168","1169","1170","1171","1172","1173","1177","1178","1180","1181","1182","2048","2049","2050","2051","2052","2053","2054","2055","2056","2057","2058","2060","2067","2068","2069","2070","2071","2072","2073","2075","2076","2077","2078","2079","2080","2081","2082","2083","2084","2085","2086","2087","2088","2089","2090","2091","2092","2093","2094","2095","2096","2097","2098","2099","2100","2101","2102","2103","2104","2105","2106","2107","2108","2109","2110","2111","2112","2113","2114","2115","2116","2117","2118","2119","2120","2121","2122","2123","2124","2125","2126","2127","2128","2129","2130","2131","2132","2133","2134","2135","2136","402","1212","2059","2061","2062","2063","2064","2066","2137","2138","2146","2147","2148","2149","2150","2151","2152","2154","2155","2156","2161","2162","2164","2165","2166","2167","2168","2169","2170","2171","2172","2173","2174","2175","2180","2181","2182","2183","2184","2185","2186","2187","2188","2189","2190","2191","2192","2194","2195","2196","2197","2198","2199","2200","2201","2202","2203","2204","2205","2206","2207","2211","2212","2213","2214","2215","4097","4098","4099","4102","4103","4105","4106","4107","4108","4109","4116","4117","4118","4119","4120","4121","4122","4123","4124","4125","4126","4127","4128","4129","4130","4132","4133","4134","4135","4146","4147","4148","4149","4154","4156","4157","4158","4159","4160","4161","4163","4164","4165","4166","4168","4170","4171","4174","4175","4176","4177","4187","4188","4189","4191","4192","4193","4194","4195","4196","4197","4198","4199","4200","2157","2163","2177","2240","2241","2242","2243","2244","2245","2246","2247","2248","2249","2250","2251","parse_ods","ODS","fix_opts_func","fix_opts","fix_write_opts","safe_parse_wbrels","wbrels","pwbr","safe_parse_ws","relsPath","nodirs","parse_zip","entries","filter","dir","binname","propdata","pluck","deps","bookDeps","wbsheets","wbext","wbrelsfile","nmode","Deps","Styles","Themes","bookVBA","vbaraw","bin","add_rels","rId","relobj","write_zip","General","firstbyte","read_zip","base64","isfile","FILENAME","write_zip_type","StyleBuilder","generate","writeFileSync","writeSync","decode_row","rowstr","unfix_row","fix_row","cstr","decode_col","colstr","unfix_col","fix_col","split_cell","splt","fix_cell","unfix_cell","decode_range","cs","ce","safe_format_cell","format_cell","sheet_to_json","isempty","outi","defineProperty","enumerable","__rowNum__","sheet_to_row_object_array","sheet_to_csv","txt","qreg","FS","RS","make_csv","sheet_to_formulae","cmds","get_formulae","make_json","make_formulae","XmlNode","tagName","attributes","children","_attributes","_children","_prefix","createElement","arguments","append","node","prefix","attr","APOS","QUOTE","ESCAPED_QUOTE","escapeAttributeValue","att_value","customNumFmtId","fmt_table","_hashIndex","_listIndex","initialize","$fonts","$fills","$borders","$numFmts","$cellStyleXfs","$xf","$cellXfs","$cellStyles","$dxfs","$tableStyles","$styles","defaultStyle","defaultCellStyle","gray125Style","addStyles","hashKey","_addXf","self","_duckTypeStyle","patternFill","_getStyleCSS","css","_addFont","_addFill","_addBorder","_addNumFmt","$alignment","readingOrder","$font","numFmtIdx","$numFmt","$patternFill","$fgColor","$bgColor","$fill","_getSubBorder","direction","spec","$direction","$color","$border","directions","readFile","write","writeFile","XLS"],"mappings":"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","file":"dist/xlsx.min.js"}
Source/UBCS-WEB/src/config/js-xlsx-master/example-4.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,642 @@
var XLSX = require('xlsx');
var OUTFILE = '/tmp/example-style.xlsx';
function JSDateToExcelDate(inDate) {
  return 25569.0 + ((inDate.getTime() - (inDate.getTimezoneOffset() * 60 * 1000)) / (1000 * 60 * 60 * 24));
}
var defaultCellStyle = { font: { name: "Verdana", sz: 11, color: "FF00FF88"}, fill: {fgColor: {rgb: "FFFFAA00"}}};
// test to see if everything on the left equals its counterpart on the right
// but the right hand object may have other attributes which we might not care about
function basicallyEquals(left, right) {
  if (Array.isArray(left) && Array.isArray(right)) {
    for (var i = 0; i < left.length; i++) {
      if (!basicallyEquals(left[i], right[i])) {
        return false;
      }
    }
    return true;
  }
  else if (typeof left == 'object' && typeof right == 'object') {
    for (var key in left) {
      if (key != 'bgColor') {
        if (!basicallyEquals(left[key], right[key])) {
          if (JSON.stringify(left[key]) == "{}" && right[key] == undefined) return true;
          if (JSON.stringify(right[key]) == "{}" && left[key] == undefined) return true;
          return false;
        }
      }
    }
    return true;
  }
  else {
    if (left != right) {
      return false;
    }
    return true;
  }
}
var workbook, wbout, wbin;
workbook = {
  "SheetNames": [
    "Main"
  ],
  "Sheets": {
    "Main": {
      "!merges": [
        {
          "s": {
            "c": 0,
            "r": 0
          },
          "e": {
            "c": 2,
            "r": 0
          }
        }
      ],
      "A1": {
        "v": "This is a submerged cell",
        "s": {
          "border": {
            "left": {
              "style": "thick",
              "color": {
                "auto": 1
              }
            },
            "top": {
              "style": "thick",
              "color": {
                "auto": 1
              }
            },
            "bottom": {
              "style": "thick",
              "color": {
                "auto": 1
              }
            }
          }
        },
        "t": "s"
      },
      "B1": {
        "v": "Pirate ship",
        "s": {
          "border": {
            "top": {
              "style": "thick",
              "color": {
                "auto": 1
              }
            },
            "bottom": {
              "style": "thick",
              "color": {
                "auto": 1
              }
            }
          }
        },
        "t": "s"
      },
      "C1": {
        "v": "Sunken treasure",
        "s": {
          "border": {
            "right": {
              "style": "thick",
              "color": {
                "auto": 1
              }
            },
            "top": {
              "style": "thick",
              "color": {
                "auto": 1
              }
            },
            "bottom": {
              "style": "thick",
              "color": {
                "auto": 1
              }
            }
          }
        },
        "t": "s"
      },
      "A2": {
        "v": "Blank",
        "t": "s"
      },
      "B2": {
        "v": "Red",
        "s": {
          "fill": {
            "fgColor": {
              "rgb": "FFFF0000"
            }
          }
        },
        "t": "s"
      },
      "C2": {
        "v": "Green",
        "s": {
          "fill": {
            "fgColor": {
              "rgb": "FF00FF00"
            }
          }
        },
        "t": "s"
      },
      "D2": {
        "v": "Blue",
        "s": {
          "fill": {
            "fgColor": {
              "rgb": "FF0000FF"
            }
          }
        },
        "t": "s"
      },
      "E2": {
        "v": "Theme 5",
        "s": {
          "fill": {
            "fgColor": {
              "theme": 5
            }
          }
        },
        "t": "s"
      },
      "F2": {
        "v": "Theme 5 Tint -0.5",
        "s": {
          "fill": {
            "fgColor": {
              "theme": 5,
              "tint": -0.5
            }
          }
        },
        "t": "s"
      },
      "A3": {
        "v": "Default",
        "t": "s"
      },
      "B3": {
        "v": "Arial",
        "s": {
          "font": {
            "name": "Arial",
            "sz": 24,
            "color": {
              "theme": "5"
            }
          }
        },
        "t": "s"
      },
      "C3": {
        "v": "Times New Roman",
        "s": {
          "font": {
            "name": "Times New Roman",
            bold: true,
            underline: true,
            italic: true,
            strike: true,
            outline: true,
            shadow: true,
            vertAlign: "superscript",
            "sz": 16,
            "color": {
              "rgb": "FF2222FF"
            }
          }
        },
        "t": "s"
      },
      "D3": {
        "v": "Courier New",
        "s": {
          "font": {
            "name": "Courier New",
            "sz": 14
          }
        },
        "t": "s"
      },
      "A4": {
        "v": 0.618033989,
        "t": "n"
      },
      "B4": {
        "v": 0.618033989,
        "t": "n"
      },
      "C4": {
        "v": 0.618033989,
        "t": "n"
      },
      "D4": {
        "v": 0.618033989,
        "t": "n",
        "s": {
          "numFmt": "0.00%"
        }
      },
      "E4": {
        "v": 0.618033989,
        "t": "n",
        "s": {
          "numFmt": "0.00%",
          "fill": {
            "fgColor": {
              "rgb": "FFFFCC00"
            }
          }
        }
      },
      "A5": {
        "v": 0.618033989,
        "t": "n",
        "s": {
          "numFmt": "0%"
        }
      },
      "B5": {
        "v": 0.618033989,
        "t": "n",
        "s": {
          "numFmt": "0.0%"
        }
      },
      "C5": {
        "v": 0.618033989,
        "t": "n",
        "s": {
          "numFmt": "0.00%"
        }
      },
      "D5": {
        "v": 0.618033989,
        "t": "n",
        "s": {
          "numFmt": "0.000%"
        }
      },
      "E5": {
        "v": 0.618033989,
        "t": "n",
        "s": {
          "numFmt": "0.0000%"
        }
      },
      "F5": {
        "v": 0,
        "t": "n",
        "s": {
          "numFmt": "0.00%;\\(0.00%\\);\\-;@",
          "fill": {
            "fgColor": {
              "rgb": "FFFFCC00"
            }
          }
        }
      },
      "A6": {
        "v": "Sat Mar 21 2015 23:47:34 GMT-0400 (EDT)",
        "t": "s"
      },
      "B6": {
        "v": 42084.99137416667,
        "t": "n"
      },
      "C6": {
        "v": 42084.99137416667,
        "s": {
          "numFmt": "d-mmm-yy"
        },
        "t": "n"
      },
      "A7": {
        "v": "left",
        "s": {
          "alignment": {
            "horizontal": "left"
          }
        },
        "t": "s"
      },
      "B7": {
        "v": "center",
        "s": {
          "alignment": {
            "horizontal": "center"
          }
        },
        "t": "s"
      },
      "C7": {
        "v": "right",
        "s": {
          "alignment": {
            "horizontal": "right"
          }
        },
        "t": "s"
      },
      "A8": {
        "v": "vertical",
        "s": {
          "alignment": {
            "vertical": "top"
          }
        },
        "t": "s"
      },
      "B8": {
        "v": "vertical",
        "s": {
          "alignment": {
            "vertical": "center"
          }
        },
        "t": "s"
      },
      "C8": {
        "v": "vertical",
        "s": {
          "alignment": {
            "vertical": "bottom"
          }
        },
        "t": "s"
      },
      "A9": {
        "v": "indent",
        "s": {
          "alignment": {
            "indent": "1"
          }
        },
        "t": "s"
      },
      "B9": {
        "v": "indent",
        "s": {
          "alignment": {
            "indent": "2"
          }
        },
        "t": "s"
      },
      "C9": {
        "v": "indent",
        "s": {
          "alignment": {
            "indent": "3"
          }
        },
        "t": "s"
      },
      "A10": {
        "v": "In publishing and graphic design, lorem ipsum is a filler text commonly used to demonstrate the graphic elements of a document or visual presentation. ",
        "s": {
          "alignment": {
            "wrapText": 1,
            "horizontal": "right",
            "vertical": "center",
            "indent": 1
          }
        },
        "t": "s"
      },
      "A11": {
        "v": 41684.35264774306,
        "s": {
          "numFmt": "m/d/yy"
        },
        "t": "n"
      },
      "B11": {
        "v": 41684.35264774306,
        "s": {
          "numFmt": "d-mmm-yy"
        },
        "t": "n"
      },
      "C11": {
        "v": 41684.35264774306,
        "s": {
          "numFmt": "h:mm:ss AM/PM"
        },
        "t": "n"
      },
      "D11": {
        "v": 42084.99137416667,
        "s": {
          "numFmt": "m/d/yy"
        },
        "t": "n"
      },
      "E11": {
        "v": 42065.02247239584,
        "s": {
          "numFmt": "m/d/yy"
        },
        "t": "n"
      },
      "F11": {
        "v": 42084.99137416667,
        "s": {
          "numFmt": "m/d/yy h:mm:ss AM/PM"
        },
        "t": "n"
      },
      "A12": {
        "v": "Apple",
        "s": {
          "border": {
            "top": {
              "style": "thin"
            },
            "left": {
              "style": "thin"
            },
            "right": {
              "style": "thin"
            },
            "bottom": {
              "style": "thin"
            }
          }
        },
        "t": "s"
      },
      "C12": {
        "v": "Apple",
        "s": {
          "border": {
            "diagonalUp": 1,
            "diagonalDown": 1,
            "top": {
              "style": "dashed",
              "color": {
                "auto": 1
              }
            },
            "right": {
              "style": "medium",
              "color": {
                "theme": "5"
              }
            },
            "bottom": {
              "style": "hair",
              "color": {
                "theme": 5,
                "tint": "-0.3"
              }
            },
            "left": {
              "style": "thin",
              "color": {
                "rgb": "FFFFAA00"
              }
            },
            "diagonal": {
              "style": "dotted",
              "color": {
                "auto": 1
              }
            }
          }
        },
        "t": "s"
      },
      "E12": {
        "v": "Pear",
        "s": {
          "border": {
            "diagonalUp": 1,
            "diagonalDown": 1,
            "top": {
              "style": "dashed",
              "color": {
                "auto": 1
              }
            },
            "right": {
              "style": "dotted",
              "color": {
                "theme": "5"
              }
            },
            "bottom": {
              "style": "mediumDashed",
              "color": {
                "theme": 5,
                "tint": "-0.3"
              }
            },
            "left": {
              "style": "double",
              "color": {
                "rgb": "FFFFAA00"
              }
            },
            "diagonal": {
              "style": "hair",
              "color": {
                "auto": 1
              }
            }
          }
        },
        "t": "s"
      },
      "A13": {
        "v": "Up 90",
        "s": {
          "alignment": {
            "textRotation": 90
          }
        },
        "t": "s"
      },
      "B13": {
        "v": "Up 45",
        "s": {
          "alignment": {
            "textRotation": 45
          }
        },
        "t": "s"
      },
      "C13": {
        "v": "Horizontal",
        "s": {
          "alignment": {
            "textRotation": 0
          }
        },
        "t": "s"
      },
      "D13": {
        "v": "Down 45",
        "s": {
          "alignment": {
            "textRotation": 135
          }
        },
        "t": "s"
      },
      "E13": {
        "v": "Down 90",
        "s": {
          "alignment": {
            "textRotation": 180
          }
        },
        "t": "s"
      },
      "F13": {
        "v": "Vertical",
        "s": {
          "alignment": {
            "textRotation": 255
          }
        },
        "t": "s"
      },
      "A14": {
        "v": "Font color test",
        "s": {
          "font": {
            "color": {
              "rgb": "FFC6EFCE"
            }
          }
        },
        "t": "s"
      },
      "!ref": "A1:F14"
    }
  }
}
XLSX.writeFile(workbook, OUTFILE, { defaultCellStyle: defaultCellStyle });
console.log("open " + OUTFILE)
Source/UBCS-WEB/src/config/js-xlsx-master/example-style.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,642 @@
var XLSX = require('xlsx');
var OUTFILE = '/tmp/example-style.xlsx';
function JSDateToExcelDate(inDate) {
  return 25569.0 + ((inDate.getTime() - (inDate.getTimezoneOffset() * 60 * 1000)) / (1000 * 60 * 60 * 24));
}
var defaultCellStyle = { font: { name: "Verdana", sz: 11, color: "FF00FF88"}, fill: {fgColor: {rgb: "FFFFAA00"}}};
// test to see if everything on the left equals its counterpart on the right
// but the right hand object may have other attributes which we might not care about
function basicallyEquals(left, right) {
  if (Array.isArray(left) && Array.isArray(right)) {
    for (var i = 0; i < left.length; i++) {
      if (!basicallyEquals(left[i], right[i])) {
        return false;
      }
    }
    return true;
  }
  else if (typeof left == 'object' && typeof right == 'object') {
    for (var key in left) {
      if (key != 'bgColor') {
        if (!basicallyEquals(left[key], right[key])) {
          if (JSON.stringify(left[key]) == "{}" && right[key] == undefined) return true;
          if (JSON.stringify(right[key]) == "{}" && left[key] == undefined) return true;
          return false;
        }
      }
    }
    return true;
  }
  else {
    if (left != right) {
      return false;
    }
    return true;
  }
}
var workbook, wbout, wbin;
workbook = {
  "SheetNames": [
    "Main"
  ],
  "Sheets": {
    "Main": {
      "!merges": [
        {
          "s": {
            "c": 0,
            "r": 0
          },
          "e": {
            "c": 2,
            "r": 0
          }
        }
      ],
      "A1": {
        "v": "This is a submerged cell",
        "s": {
          "border": {
            "left": {
              "style": "thick",
              "color": {
                "auto": 1
              }
            },
            "top": {
              "style": "thick",
              "color": {
                "auto": 1
              }
            },
            "bottom": {
              "style": "thick",
              "color": {
                "auto": 1
              }
            }
          }
        },
        "t": "s"
      },
      "B1": {
        "v": "Pirate ship",
        "s": {
          "border": {
            "top": {
              "style": "thick",
              "color": {
                "auto": 1
              }
            },
            "bottom": {
              "style": "thick",
              "color": {
                "auto": 1
              }
            }
          }
        },
        "t": "s"
      },
      "C1": {
        "v": "Sunken treasure",
        "s": {
          "border": {
            "right": {
              "style": "thick",
              "color": {
                "auto": 1
              }
            },
            "top": {
              "style": "thick",
              "color": {
                "auto": 1
              }
            },
            "bottom": {
              "style": "thick",
              "color": {
                "auto": 1
              }
            }
          }
        },
        "t": "s"
      },
      "A2": {
        "v": "Blank",
        "t": "s"
      },
      "B2": {
        "v": "Red",
        "s": {
          "fill": {
            "fgColor": {
              "rgb": "FFFF0000"
            }
          }
        },
        "t": "s"
      },
      "C2": {
        "v": "Green",
        "s": {
          "fill": {
            "fgColor": {
              "rgb": "FF00FF00"
            }
          }
        },
        "t": "s"
      },
      "D2": {
        "v": "Blue",
        "s": {
          "fill": {
            "fgColor": {
              "rgb": "FF0000FF"
            }
          }
        },
        "t": "s"
      },
      "E2": {
        "v": "Theme 5",
        "s": {
          "fill": {
            "fgColor": {
              "theme": 5
            }
          }
        },
        "t": "s"
      },
      "F2": {
        "v": "Theme 5 Tint -0.5",
        "s": {
          "fill": {
            "fgColor": {
              "theme": 5,
              "tint": -0.5
            }
          }
        },
        "t": "s"
      },
      "A3": {
        "v": "Default",
        "t": "s"
      },
      "B3": {
        "v": "Arial",
        "s": {
          "font": {
            "name": "Arial",
            "sz": 24,
            "color": {
              "theme": "5"
            }
          }
        },
        "t": "s"
      },
      "C3": {
        "v": "Times New Roman",
        "s": {
          "font": {
            "name": "Times New Roman",
            bold: true,
            underline: true,
            italic: true,
            strike: true,
            outline: true,
            shadow: true,
            vertAlign: "superscript",
            "sz": 16,
            "color": {
              "rgb": "FF2222FF"
            }
          }
        },
        "t": "s"
      },
      "D3": {
        "v": "Courier New",
        "s": {
          "font": {
            "name": "Courier New",
            "sz": 14
          }
        },
        "t": "s"
      },
      "A4": {
        "v": 0.618033989,
        "t": "n"
      },
      "B4": {
        "v": 0.618033989,
        "t": "n"
      },
      "C4": {
        "v": 0.618033989,
        "t": "n"
      },
      "D4": {
        "v": 0.618033989,
        "t": "n",
        "s": {
          "numFmt": "0.00%"
        }
      },
      "E4": {
        "v": 0.618033989,
        "t": "n",
        "s": {
          "numFmt": "0.00%",
          "fill": {
            "fgColor": {
              "rgb": "FFFFCC00"
            }
          }
        }
      },
      "A5": {
        "v": 0.618033989,
        "t": "n",
        "s": {
          "numFmt": "0%"
        }
      },
      "B5": {
        "v": 0.618033989,
        "t": "n",
        "s": {
          "numFmt": "0.0%"
        }
      },
      "C5": {
        "v": 0.618033989,
        "t": "n",
        "s": {
          "numFmt": "0.00%"
        }
      },
      "D5": {
        "v": 0.618033989,
        "t": "n",
        "s": {
          "numFmt": "0.000%"
        }
      },
      "E5": {
        "v": 0.618033989,
        "t": "n",
        "s": {
          "numFmt": "0.0000%"
        }
      },
      "F5": {
        "v": 0,
        "t": "n",
        "s": {
          "numFmt": "0.00%;\\(0.00%\\);\\-;@",
          "fill": {
            "fgColor": {
              "rgb": "FFFFCC00"
            }
          }
        }
      },
      "A6": {
        "v": "Sat Mar 21 2015 23:47:34 GMT-0400 (EDT)",
        "t": "s"
      },
      "B6": {
        "v": 42084.99137416667,
        "t": "n"
      },
      "C6": {
        "v": 42084.99137416667,
        "s": {
          "numFmt": "d-mmm-yy"
        },
        "t": "n"
      },
      "A7": {
        "v": "left",
        "s": {
          "alignment": {
            "horizontal": "left"
          }
        },
        "t": "s"
      },
      "B7": {
        "v": "center",
        "s": {
          "alignment": {
            "horizontal": "center"
          }
        },
        "t": "s"
      },
      "C7": {
        "v": "right",
        "s": {
          "alignment": {
            "horizontal": "right"
          }
        },
        "t": "s"
      },
      "A8": {
        "v": "vertical",
        "s": {
          "alignment": {
            "vertical": "top"
          }
        },
        "t": "s"
      },
      "B8": {
        "v": "vertical",
        "s": {
          "alignment": {
            "vertical": "center"
          }
        },
        "t": "s"
      },
      "C8": {
        "v": "vertical",
        "s": {
          "alignment": {
            "vertical": "bottom"
          }
        },
        "t": "s"
      },
      "A9": {
        "v": "indent",
        "s": {
          "alignment": {
            "indent": "1"
          }
        },
        "t": "s"
      },
      "B9": {
        "v": "indent",
        "s": {
          "alignment": {
            "indent": "2"
          }
        },
        "t": "s"
      },
      "C9": {
        "v": "indent",
        "s": {
          "alignment": {
            "indent": "3"
          }
        },
        "t": "s"
      },
      "A10": {
        "v": "In publishing and graphic design, lorem ipsum is a filler text commonly used to demonstrate the graphic elements of a document or visual presentation. ",
        "s": {
          "alignment": {
            "wrapText": 1,
            "horizontal": "right",
            "vertical": "center",
            "indent": 1
          }
        },
        "t": "s"
      },
      "A11": {
        "v": 41684.35264774306,
        "s": {
          "numFmt": "m/d/yy"
        },
        "t": "n"
      },
      "B11": {
        "v": 41684.35264774306,
        "s": {
          "numFmt": "d-mmm-yy"
        },
        "t": "n"
      },
      "C11": {
        "v": 41684.35264774306,
        "s": {
          "numFmt": "h:mm:ss AM/PM"
        },
        "t": "n"
      },
      "D11": {
        "v": 42084.99137416667,
        "s": {
          "numFmt": "m/d/yy"
        },
        "t": "n"
      },
      "E11": {
        "v": 42065.02247239584,
        "s": {
          "numFmt": "m/d/yy"
        },
        "t": "n"
      },
      "F11": {
        "v": 42084.99137416667,
        "s": {
          "numFmt": "m/d/yy h:mm:ss AM/PM"
        },
        "t": "n"
      },
      "A12": {
        "v": "Apple",
        "s": {
          "border": {
            "top": {
              "style": "thin"
            },
            "left": {
              "style": "thin"
            },
            "right": {
              "style": "thin"
            },
            "bottom": {
              "style": "thin"
            }
          }
        },
        "t": "s"
      },
      "C12": {
        "v": "Apple",
        "s": {
          "border": {
            "diagonalUp": 1,
            "diagonalDown": 1,
            "top": {
              "style": "dashed",
              "color": {
                "auto": 1
              }
            },
            "right": {
              "style": "medium",
              "color": {
                "theme": "5"
              }
            },
            "bottom": {
              "style": "hair",
              "color": {
                "theme": 5,
                "tint": "-0.3"
              }
            },
            "left": {
              "style": "thin",
              "color": {
                "rgb": "FFFFAA00"
              }
            },
            "diagonal": {
              "style": "dotted",
              "color": {
                "auto": 1
              }
            }
          }
        },
        "t": "s"
      },
      "E12": {
        "v": "Pear",
        "s": {
          "border": {
            "diagonalUp": 1,
            "diagonalDown": 1,
            "top": {
              "style": "dashed",
              "color": {
                "auto": 1
              }
            },
            "right": {
              "style": "dotted",
              "color": {
                "theme": "5"
              }
            },
            "bottom": {
              "style": "mediumDashed",
              "color": {
                "theme": 5,
                "tint": "-0.3"
              }
            },
            "left": {
              "style": "double",
              "color": {
                "rgb": "FFFFAA00"
              }
            },
            "diagonal": {
              "style": "hair",
              "color": {
                "auto": 1
              }
            }
          }
        },
        "t": "s"
      },
      "A13": {
        "v": "Up 90",
        "s": {
          "alignment": {
            "textRotation": 90
          }
        },
        "t": "s"
      },
      "B13": {
        "v": "Up 45",
        "s": {
          "alignment": {
            "textRotation": 45
          }
        },
        "t": "s"
      },
      "C13": {
        "v": "Horizontal",
        "s": {
          "alignment": {
            "textRotation": 0
          }
        },
        "t": "s"
      },
      "D13": {
        "v": "Down 45",
        "s": {
          "alignment": {
            "textRotation": 135
          }
        },
        "t": "s"
      },
      "E13": {
        "v": "Down 90",
        "s": {
          "alignment": {
            "textRotation": 180
          }
        },
        "t": "s"
      },
      "F13": {
        "v": "Vertical",
        "s": {
          "alignment": {
            "textRotation": 255
          }
        },
        "t": "s"
      },
      "A14": {
        "v": "Font color test",
        "s": {
          "font": {
            "color": {
              "rgb": "FFC6EFCE"
            }
          }
        },
        "t": "s"
      },
      "!ref": "A1:F14"
    }
  }
}
XLSX.writeFile(workbook, OUTFILE, { defaultCellStyle: defaultCellStyle });
console.log("open " + OUTFILE)
Source/UBCS-WEB/src/config/js-xlsx-master/example1.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,89 @@
var XLSX = require('./');
var sheetName = 'test &amp; debug';
  var ATTRIBUTE_VALUE_STYLE={
      font: {
      name:   "Arial",
      sz:     10
      }
  };
  var Workbook = function(){
      this.SheetNames = [];
      this.Sheets = {};
  };
  var range = {s: {c:10000000, r:10000000}, e:{c:0, r:0}};
  function updateRange(row, col) {
      if (range.s.r > row) { range.s.r = row;}
  if (range.s.c > col) { range.s.c = col; }
  if (range.e.r < row) { range.e.r = row; }
  if (range.e.c < col) { range.e.c = col; }
    }
    function addCell(wb, ws, value, type, row, col, styles) {
        updateRange(row, col);
        var cell = {t: type, v: value, s:styles};
    // i use d to recognize that the format is a date, and if it is, i use z attribute to format it
    if (cell.t === 'd') {
        cell.t = 'n';
        cell.z = XLSX.SSF._table[14];
        }
    var cell_ref = XLSX.utils.encode_cell({c: col, r:row});
    ws[cell_ref] = cell;
    }
    function s2ab(s) {
        var buf = new ArrayBuffer(s.length);
        var view = new Uint8Array(buf);
        for (var i=0; i!=s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF;
        return buf;
        }
    function datenum(v, date1904) {
        if(date1904) v+=1462;
        var epoch = Date.parse(v);
        return (epoch - new Date(Date.UTC(1899, 11, 30))) / (24 * 60 * 60 * 1000);
        }
    var wb = new Workbook();
    var ws = {};
    /* Here i add a cell with format number with value 10*/
    addCell(wb, ws, 10, 'n', 0, 0, ATTRIBUTE_VALUE_STYLE);
/* Here i add a cell with format number that is current date*/
addCell(wb, ws, datenum(new Date()), 'd', 0, 1, ATTRIBUTE_VALUE_STYLE);
/* Here i add a cell with format number with value 10, again another number*/
addCell(wb, ws, 10, 'd', 0, 2, ATTRIBUTE_VALUE_STYLE);
/* Here i add a cell with format number with value 10, again another number*/
addCell(wb, ws, "Hello null\u0000world", 's', 0, 3);
ws['!ref'] = XLSX.utils.encode_range(range);
wb.SheetNames.push(sheetName);
wb.Sheets[sheetName] = ws;
ws['!rowBreaks'] = [12,24];
ws['!colBreaks'] = [3,6];
ws['!pageSetup'] = {scale: '140'};
/* bookType can be 'xszlsx' or 'xlsm' or 'xlsb' */
var defaultCellStyle =  { font: { name: "Verdana", sz: 11, color: "FF00FF88"}, fill: {fgColor: {rgb: "FFFFAA00"}}};
var wopts = { bookType:'xlsx', bookSST:false, type:'binary', defaultCellStyle: defaultCellStyle, showGridLines: false};
//console.log(JSON.stringify(wb, null,4))
var OUTFILE = '/tmp/wb.xlsx';
XLSX.writeFile(wb, OUTFILE, wopts);
console.log("Results written to " + OUTFILE)
Source/UBCS-WEB/src/config/js-xlsx-master/example3.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,42 @@
var XLSX = require('./');
var wb = {};
wb.Sheets = {};
wb.Props = {};
wb.SSF = {};
wb.SheetNames = [];
var ws = {
  "!cols": []
};
var range = {
  s: {c: 0, r: 0},
  e: {c: 0, r: 0}
};
var cell;
for (var r = 0; r < 6; r++) {
  ws["!cols"].push({wch: 6});
  if (range.e.r < r + 1) range.e.r = r + 1;
  for (var c = 0; c < 6; c++) {
    if (range.e.c < c) range.e.c = c;
    cell_ref = XLSX.utils.encode_cell({c: c, r: r});
    cell = {v: cell_ref};
    ws[cell_ref] = cell;
  }
}
ws["!ref"] = XLSX.utils.encode_range(range);
wb.SheetNames.push("Sheet1");
wb.Sheets["Sheet1"] = ws;
wb.SheetNames.push("Sheet2");
wb.Sheets["Sheet2"] = JSON.parse(JSON.stringify(ws))
// workbook options
var wopts = {bookType: "xlsx"};
//console.log(JSON.stringify(wb, null,4))
var OUTFILE = '/tmp/example.xlsx';
XLSX.writeFile(wb, OUTFILE, wopts);
console.log("Results written to " + OUTFILE)
Source/UBCS-WEB/src/config/js-xlsx-master/jszip.js
¶Ô±ÈÐÂÎļþ
ÎļþÌ«´ó
Source/UBCS-WEB/src/config/js-xlsx-master/misc/_bower.json
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
{
  "name": "js-xlsx",
  "homepage": "https://github.com/SheetJS/js-xlsx",
  "main": "dist/xlsx.js",
  "version": "_VERSION_",
  "ignore": [
    "bin",
    "bits",
    "misc",
    "**/.*"
  ],
  "keywords": [
    "excel",
    "xls",
    "xml",
    "xlsx",
    "xlsm",
    "xlsb",
    "ods",
    "js-xls",
    "js-xlsx"
  ]
}
Source/UBCS-WEB/src/config/js-xlsx-master/misc/cfb.d.ts
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,104 @@
declare enum CFBEntryType { unknown, storage, stream, lockbytes, property, root }
declare enum CFBStorageType { fat, minifat }
/* CFB Entry Object demanded by write functions */
interface CFBEntryMin {
  /* Raw Content (Buffer when available, Array of bytes otherwise) */
  content:any;
}
/* CFB Entry Object returned by parse functions */
interface CFBEntry extends CFBEntryMin {
  /* Case-sensitive internal name */
  name:string;
  /* CFB type (salient types: stream, storage) -- see CFBEntryType */
  type:string;
  /* Creation Time */
  ct:Date;
  /* Modification Time */
  mt:Date;
  /* Raw creation time -- see [MS-DTYP] 2.3.3 FILETIME */
  mtime:string;
  /* Raw modification time -- see [MS-DTYP] 2.3.3 FILETIME */
  ctime:string;
  /* RBT color: 0 = red, 1 = black */
  color:number;
  /* Class ID represented as hex string */
  clsid:string;
  /* User-Defined State Bits */
  state:number;
  /* Starting Sector */
  start:number;
  /* Data Size */
  size:number;
  /* Storage location -- see CFBStorageType */
  storage:string;
}
/* cfb.FullPathDir as demanded by write functions */
interface CFBDirectoryMin {
  /* keys are unix-style paths */
  [key:string]: CFBEntryMin;
}
/* cfb.FullPathDir Directory object */
interface CFBDirectory extends CFBDirectoryMin {
  /* cfb.FullPathDir keys are paths; cfb.Directory keys are file names */
  [key:string]: CFBEntry;
}
/* cfb object demanded by write functions */
interface CFBContainerMin {
  /* Path -> CFB object mapping */
  FullPathDir:CFBDirectoryMin;
}
/* cfb object returned by read and parse functions */
interface CFBContainer extends CFBContainerMin {
  /* search by path or file name */
  find(string):CFBEntry;
  /* list of streams and storages */
  FullPaths:string[];
  /* Path -> CFB object mapping */
  FullPathDir:CFBDirectory;
  /* Array of entries in the same order as FullPaths */
  FileIndex:CFBEntry[];
  /* Raw Content, in chunks (Buffer when available, Array of bytes otherwise) */
  raw:any[];
}
interface CFB {
  read(f:any, options:any):CFBContainer;
  parse(f:any):CFBContainer;
  utils: {
    ReadShift(size:any,t?:any):any;
    WarnField(hexstr:string,fld?:string);
    CheckField(hexstr:string,fld?:string);
    prep_blob(blob:any, pos?:number):any;
    bconcat(bufs:any[]):any;
  };
  main;
}
Source/UBCS-WEB/src/config/js-xlsx-master/misc/node.d.ts
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
declare var require: {
  (id: string): any;
}
declare var process: {
  argv: string[];
  exit(status: number): void;
}
Source/UBCS-WEB/src/config/js-xlsx-master/misc/spin.sh
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
#!/bin/bash
# spin.sh -- show a spinner (for coverage test)
# Copyright (C) 2014  SheetJS
wpid=$1
delay=1
str="|/-\\"
while [ $(ps -a|awk '$1=='$wpid' {print $1}') ]; do
  t=${str#?}
  printf " [%c]" "$str"
  str=$t${str%"$t"}
  sleep $delay
  printf "\b\b\b\b"
done
Source/UBCS-WEB/src/config/js-xlsx-master/misc/ssf.json
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,152 @@
[
  ["\"foo\";\"bar\";\"baz\";\"qux\"",
    [1, "foo"], [-1, "bar"], [0, "baz"], ["sheetjs", "qux"]
  ],
  ["\"foo\";\"bar\";\"baz\"",
    [1, "foo"], [-1, "bar"], [0, "baz"], ["sheetjs", "sheetjs"]
  ],
  ["\"foo\";\"bar\";@",
    [1, "foo"], [-1, "bar"], [0, "foo"], ["sheetjs", "sheetjs"]
  ],
  ["\"foo\";\"bar\"",
    [1, "foo"], [-1, "bar"], [0, "foo"], ["sheetjs", "sheetjs"]
  ],
  ["@@", [1, "1"], [-1, "-1"], [0, "0"], ["sheetjs", "sheetjssheetjs"]],
  ["[Blue]General", [1, "1"], [-1, "-1"], [0, "0"], ["sheetjs", "sheetjs"]],
  ["[Blue]G3neral", [1], [-1], [0], ["TODO","TODO"]],
  ["A\"TODO\"", [1, "ATODO"], [-1, "ATODO"], [0, "ATODO"], ["TODO","TODO"]],
  ["r", [1,"r"], [-1,"-r","#"], [0,"r"], ["sheetjs","sheetjs"]],
  ["((;@", [1,"(("], [0,"(("], ["foo","foo"]],
  ["\\r", [1, "r"], [-1, "r"], [0, "r"], ["TODO","TODO"]],
  ["_($* #,##0_);_($* (#,##0);_($* \"-\"_);_(@_)", [1, " $1 "], [-1, " $(1)"], [0," $- "], ["TODO", " TODO "], ["",""]],
  ["#0.#", [0,"0."], [1,"1."], [12,"12."], [12.34, "12.3"], [-1.23, "-1.2"]],
  ["#,##0.0", [1,"1.0"], [-1,"-1.0"], [0,"0.0"], ["TODO","TODO"]],
  ["#,##0.00", [1,"1.00"], [-1,"-1.00"], [0,"0.00"], ["TODO","TODO"]],
  ["#,##0.000", [1,"1.000"], [-1,"-1.000"], [0,"0.000"], ["TODO","TODO"]],
  ["#,##0.0000", [1,"1.0000"], [-1,"-1.0000"], [0,"0.0000"], ["TODO","TODO"]],
  ["#,##0.00000", [1000000, "1,000,000.00000"]],
  ["#,##0.000000", [1000000, "1,000,000.000000"]],
  ["#,##0.0000000", [1000000, "1,000,000.0000000"]],
  ["#,##0.00000000", [1000000, "1,000,000.00000000"]],
  ["#,##0.000000000", [1000000, "1,000,000.000000000"]],
  ["#,###", [1, "1"], [-1, "-1"], [0,""], [12345.6789, "12,346"], ["TODO", "TODO"]],
  ["#.##", [1, "1."], [-1, "-1."], [0,"."], ["sheetjs", "sheetjs"]],
  ["0;0", [1.1, "1"], [-1.1, "-1"], [0,"0"], ["sheetjs", "sheetjs"]],
  ["0.0", [1, "1.0"], [-1, "-1.0"], [0,"0.0"], ["sheetjs", "sheetjs"]],
  ["0.00", [1.0001, "1.00"], [-1, "-1.00"], [0,"0.00"], ["sheetjs", "sheetjs"]],
  ["0.000", [1, "1.000"], [-1, "-1.000"], [0,"0.000"], ["sheetjs", "sheetjs"]],
  ["0.0000", [1, "1.0000"], [-1, "-1.0000"], [0,"0.0000"], ["sheetjs", "sheetjs"]],
  ["hh:mm AM/PM", [0.7, "04:48 PM"]],
  ["hhh:mm AM/PM", [0.7]],
  ["hhh:mmm:sss", [0.7]],
  ["hh:mmm:sss", [0.7]],
  ["hh:mm:sss", [0.7]],
  ["hh:mm:ss.000", [0.7,"16:48:00.000"], [0.70707,"16:58:10.848"]],
  ["hh.000", [0.70707, "16.848"]],
  ["hh .00", [0.70707, "16 .85"]],
  ["hh  .0", [0.70707, "16  .8"]],
  ["hh .00 .000", [0.70707, "16 .84 .848"]],
  ["[hhh]", [0.7]],
  ["[", [0.7]],
  ["A/P", [0.7, "P"]],
  ["e", [0.7, "1900"]],
  ["123", [0.7, "123"], [0, "123"], ["sheetjs", "sheetjs"]],
  ["0.##", [1,"1."], [-1,"-1."], [0, "0."], [1.1, "1.1"], [-1.2, "-1.2"], [1000000000000.01, "1000000000000.01"], [-1000.01, "-1000.01"], [0.1, "0.1"], [1.007, "1.01"], [-1.008, "-1.01"]],
  ["** #,###,#00,000.00,**",
    [1.2345,                                    " 00,000.00"],
    [12.345,                                    " 00,000.01"],
    [123.45,                                    " 00,000.12"],
    [1234.56,                                   " 00,001.23"],
    [12345.67,                                  " 00,012.35"],
    [123456.78,                                 " 00,123.46"],
    [1234567.89,                                " 01,234.57"],
    [12345681.9,                                " 12,345.68"],
    [123456822,                                " 123,456.82"],
    [1234568223,                             " 1,234,568.22"],
    [12345682233,                           " 12,345,682.23"],
    [123456822333,                         " 123,456,822.33"],
    [1234568223333,                      " 1,234,568,223.33"],
    [12345682233333,                    " 12,345,682,233.33"],
    [123456822333333,                  " 123,456,822,333.33"],
    [1234568223333330,               " 1,234,568,223,333.33"],
    [12345682233333300,             " 12,345,682,233,333.30"],
    [123456822333333000,           " 123,456,822,333,333.00", "#"],
    [1234568223333330000,        " 1,234,568,223,333,330.00"],
    [12345682233333300000,      " 12,345,682,233,333,300.00"],
    [123456822333333000000,    " 123,456,822,333,333,000.00"],
    [1234568223333330000000, " 1,234,568,223,333,330,000.00"]
  ],
  ["00,000.00,", [12345, "00,012.35"] ],
  ["00,000.00", [12345, "12,345.00"] ],
  ["000#0#0#0##00##00##0#########", [12345, "0000000000012345"] ],
  ["##0.0E+0",
    [1,           "1.0E+0"],
    [12,         "12.0E+0"],
    [123,       "123.0E+0"],
    [1234,        "1.2E+3"],
    [12345,      "12.3E+3"],
    [123456,    "123.5E+3"],
    [1234567,     "1.2E+6"],
    [12345678,   "12.3E+6"],
    [123456789, "123.5E+6"]
  ],
  ["0#######0.##0##0######00######0",
    [12.3456789, "012.3456789000"],
    [123456789, "123456789.00000"]
  ],
  ["###\\###\\##0.00",
    [0.00101,              "##0.00"],
    [0.0101,               "##0.01"],
    [0.101,                "##0.10"],
    [1.01,                 "##1.01"],
    [10.1,                "##10.10"],
    [101,                "#1#01.00"],
    [1010,              "#10#10.00"],
    [10100,            "1#01#00.00"],
    [101000,          "10#10#00.00"],
    [1010000,        "101#00#00.00"],
    [10100000,      "1010#00#00.00"],
    [101000000,    "10100#00#00.00"],
    [123456789.01,    "12345#67#89.01"]
  ],
  ["###\\\\###\\\\##\\0.00",
    [0.00101,              "\\\\0.00"],
    [0.0101,               "\\\\0.01"],
    [0.101,                "\\\\0.10"],
    [1.01,                "\\\\10.01"],
    [10.1,               "\\\\100.10"],
    [101,               "\\1\\010.00"],
    [1010,             "\\10\\100.00"],
    [10100,           "\\101\\000.00"],
    [101000,         "1\\010\\000.00"],
    [1010000,       "10\\100\\000.00"],
    [10100000,     "101\\000\\000.00"],
    [101000000,   "1010\\000\\000.00"],
    [123456789.01,   "1234\\567\\890.01"]
  ],
  ["###\\\\###\\\\##\\0", [12345.6789, "\\123\\460"]],
  ["00000-0000", [941051630, "94105-1630"], [12345.6789, "00001-2346"]],
  ["000-00-0000", [123456789, "123-45-6789"]],
  ["00000\\-0000", [941051630, "94105-1630"]],
  ["000\\-00\\-0000", [123456789, "123-45-6789"]],
  ["??/??", [12.3456789, "1000/81"], [0.00001, " 0/1 "]],
  ["?? / ??", [12.3456789, "1000 / 81"], [0.00001, " 0 / 1 "], [123, "123 / 1 "]],
  ["# ??/??", [12.3456789, "12 28/81"]],
  ["#??/??", [12.3456789, "1000/81"]],
  ["#0#00??/??", [12.3456789, "01000/81"]],
  ["[<=9999999]###-####;(###) ###-####", [8675309, "867-5309"],[2813308004, "(281) 330-8004"], [2018675309, "(201) 867-5309"]],
  ["[<=9999999]###\\-####;(###) ###\\-####", [8675309, "867-5309"],[2813308004, "(281) 330-8004"]],
  ["[Red][<-25]General;[Blue][>25]General;[Green]General;[Yellow]General", [50, "50"],[26, "26"],[25,"25"],[1,"1"],[0,"0"],[-1,"-1"],[-25,"-25"],[-26,"26","#"],[-50.1,"50","#"], ["foo","foo"],["bar","bar"]],
  ["[Red][<=-25]General;[Blue][>=25]General;[Green]General;[Yellow]General", [50, "50"],[26, "26"],[25,"25"],[1,"1"],[0,"0"],[-1,"-1"],[-25,"-25"],[-26.1,"26","#"],[-50,"50","#"], ["foo","foo"],["bar","bar"]],
  ["[Red]General ;[Blue]General\\ ;[Green]Generalp;[Yellow]General'", [50, "50 "],[0,"0p"],[-25,"-25 "],["foo","foo'"]],
  ["[Red][=50]General;[Blue]000", [50, "50"], [51, "051"], [49, "049"]],
  ["[Red][<>50]General;[Blue]000", [50, "050"], [51, "51"], [49, "49"]],
  ["b", [1,"43"], [1000,"45"], [10000,"70"]],
  ["B2yyyymmdd", [0,"13170829"], [1000,"13200624","#"], [10000,"13451117","#"]],
  ["☃", [0], [1], [-1]],
  ["#0#######", [12345, "012345"], [12345.4321, "012345"], [12345.6789, "012346"]],
  ["##,##", [12345, "12,345", ""], [12345.4321, "12,345", ""], [12345.6789, "12,346", ""]],
  [0, [12345,"12345"], [4294967296.5, 4294967297]],
  ["\"foo\";\"bar\";\"baz\";\"qux\";\"foobar\"", [1], [0], [-1], ["sheetjs"]]
]
Source/UBCS-WEB/src/config/js-xlsx-master/misc/strip_sourcemap.sh
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,11 @@
#!/bin/bash
# strip_sourcemap.sh -- strip sourcemaps from a JS file (missing from uglifyjs)
# Copyright (C) 2014-2015  SheetJS
if [ $# -gt 0 ]; then
    if [ -e "$1" ]; then
        sed -i .sheetjs '/sourceMappingURL/d' "$1"
    fi
else
    cat - | sed '/sourceMappingURL/d'
fi
Source/UBCS-WEB/src/config/js-xlsx-master/misc/xl.d.ts
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,65 @@
///<reference path='cfb.d.ts'/>
interface Cell {
  v;
  w?: string;
  t?: string;
  f?: string;
  r?: string;
  h?: string;
  c?: any;
  z?: string;
  ixfe?: number;
}
interface CellAddress {
  c: number;
  r: number;
}
interface CellRange {
  s: CellAddress;
  e: CellAddress;
}
interface WorksheetBase {
  '!range':CellRange;
  '!ref':string;
}
interface Worksheet extends WorksheetBase {
  [key: string]: Cell;
}
interface Worksheets {
  [key: string]: Worksheet;
}
interface Workbook {
  SheetNames: string[];
  Sheets: Worksheets;
}
interface XLSX {
  parse_xlscfb(cfb:CFBContainer): Workbook;
  read;
  readFile(filename: string): Workbook;
  utils: {
    encode_col(col: number): string;
    encode_row(row: number): string;
    encode_cell(cell: CellAddress): string;
    encode_range;
    decode_col(col: string): number;
    decode_row(row: string): number;
    split_cell(cell: string): string[];
    decode_cell(cell: string): CellAddress;
    decode_range(cell: string): CellRange;
    sheet_to_csv(worksheet: Worksheet): string;
    get_formulae(worksheet: Worksheet): string[];
    make_csv(worksheet: Worksheet): string;
    sheet_to_row_object_array(worksheet: Worksheet): Object[];
  };
  verbose: Number;
  CFB:CFB;
  main;
}
在上述文件截断后对比
Source/UBCS-WEB/src/config/js-xlsx-master/misc/xlsx2csv.ts Source/UBCS-WEB/src/config/js-xlsx-master/ods.js Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/00_header.js Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/10_utils.js Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/20_jsutils.js Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/21_ziputils.js Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/22_xmlutils.js Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/23_xlml.js Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/30_manifest.js Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/40_helpers.js Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/60_content.js Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/80_parse.js Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/98_exports.js Source/UBCS-WEB/src/config/js-xlsx-master/odsbits/99_footer.js Source/UBCS-WEB/src/config/js-xlsx-master/package-lock.json Source/UBCS-WEB/src/config/js-xlsx-master/package.json Source/UBCS-WEB/src/config/js-xlsx-master/shim.js Source/UBCS-WEB/src/config/js-xlsx-master/test.js Source/UBCS-WEB/src/config/js-xlsx-master/testA.lst Source/UBCS-WEB/src/config/js-xlsx-master/tests.lst Source/UBCS-WEB/src/config/js-xlsx-master/tests/Common.js Source/UBCS-WEB/src/config/js-xlsx-master/tests/EncodedSpec.js Source/UBCS-WEB/src/config/js-xlsx-master/tests/FormulaSpec.js Source/UBCS-WEB/src/config/js-xlsx-master/tests/InterviewSpec.js Source/UBCS-WEB/src/config/js-xlsx-master/tests/IssueSpec.js Source/UBCS-WEB/src/config/js-xlsx-master/tests/MixedSpec.js Source/UBCS-WEB/src/config/js-xlsx-master/tests/NamedRangesSpec.js Source/UBCS-WEB/src/config/js-xlsx-master/tests/print-header.js Source/UBCS-WEB/src/config/js-xlsx-master/tests/test-acid.js Source/UBCS-WEB/src/config/js-xlsx-master/tests/test-csv.js Source/UBCS-WEB/src/config/js-xlsx-master/tests/test-freeze.js Source/UBCS-WEB/src/config/js-xlsx-master/tests/test-min.js Source/UBCS-WEB/src/config/js-xlsx-master/tests/test-open.js Source/UBCS-WEB/src/config/js-xlsx-master/tests/test-style.js Source/UBCS-WEB/src/config/js-xlsx-master/tests/write.js Source/UBCS-WEB/src/config/js-xlsx-master/xlsx.js Source/UBCS-WEB/src/config/js-xlsx-master/xlsxworker.js Source/UBCS-WEB/src/config/js-xlsx-master/xlsxworker1.js Source/UBCS-WEB/src/config/js-xlsx-master/xlsxworker2.js Source/UBCS-WEB/src/views/system/menu.vue Source/UBCS-WEB/src/views/wel/index.vue