diff --git a/Makefile b/Makefile index a9218d16..e9e5a5ce 100644 --- a/Makefile +++ b/Makefile @@ -46,7 +46,7 @@ static/multi.js :: multi/main.ls multi/styles.styl depends: app.js static/ethercalc.js static/start.css static/multi.js -node_modules/socialcalc/dist/SocialCalc.js: ./node_modules/streamline/bin/_node +node_modules/socialcalc/dist/SocialCalc.js: @-mkdir -p node_modules/socialcalc/dist cp node_modules/socialcalc/SocialCalc.js node_modules/socialcalc/dist/SocialCalc.js || true @@ -54,9 +54,10 @@ static/ethercalc.js: $(ETHERCALC_FILES) \ ./node_modules/socialcalc/dist/SocialCalc.js \ ./node_modules/uglify-js/bin/uglifyjs @-mkdir -p .git - @echo '// Auto-generated from "make depends"; ALL CHANGES HERE WILL BE LOST!' > $@ - node node_modules/uglify-js/bin/uglifyjs node_modules/socialcalc/dist/SocialCalc.js $(ETHERCALC_FILES) $(UGLIFYJS_ARGS) --source-map ethercalc.js.map --source-map-include-sources >> $@ - mv ethercalc.js.map static + @echo '// Auto-generated from "make depends"; ALL CHANGES HERE WILL BE LOST!' > ethercalc.js.tmp + node node_modules/uglify-js/bin/uglifyjs node_modules/socialcalc/dist/SocialCalc.js $(ETHERCALC_FILES) $(UGLIFYJS_ARGS) --source-map --output ethercalc.js.tmp + mv ethercalc.js.tmp $@ + mv ethercalc.js.tmp.map static/ethercalc.js.map COFFEE := $(shell command -v coffee 2> /dev/null) .coffee.js: diff --git a/package-lock.json b/package-lock.json index 69992b8b..05a895db 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,8 +1,5953 @@ { "name": "ethercalc", - "version": "0.20201228.0", - "lockfileVersion": 1, + "version": "0.20201228.1", + "lockfileVersion": 2, "requires": true, + "packages": { + "": { + "name": "ethercalc", + "version": "0.20201228.1", + "dependencies": { + "cors": "*", + "csv-parse": "^0.0.6", + "iconv-lite": "^0.4.13", + "j": "0.4.5", + "livescript": "1.5.x", + "minimatch": "*", + "optimist": "*", + "redis": "0.12.x", + "socialcalc": "^2.3.0", + "uuid-pure": "*", + "xlsx": "^0.14.5", + "xoauth2": "*", + "zappajs": "0.5.x" + }, + "bin": { + "ethercalc": "bin/ethercalc" + }, + "devDependencies": { + "css-loader": "^0.9.0", + "livescript-loader": "^0.1.5", + "react": "^0.12.1", + "react-basic-tabs": "^1.0.3", + "react-hot-loader": "^0.5.0", + "style-loader": "^0.8.2", + "stylus-loader": "^3.0.2", + "superagent": "^0.21.0", + "uglify-js": "^3.15.3", + "webpack": "^1.4.13", + "webpack-dev-server": "^1.6.6" + }, + "engines": { + "node": ">= 0.8.x" + } + }, + "node_modules/accepts": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.0.7.tgz", + "integrity": "sha1-W1AftPBwQwmWTM2wSBclQSCNqxo=", + "dependencies": { + "mime-types": "~1.0.0", + "negotiator": "0.4.7" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/accepts/node_modules/mime-types": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-1.0.2.tgz", + "integrity": "sha1-mVrhOSq4r/y/yyZB3QVOlDwNXc4=", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/acorn": { + "version": "5.7.4", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", + "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/adler-32": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/adler-32/-/adler-32-1.2.0.tgz", + "integrity": "sha1-aj5r8KY5ALoVZSgIyxXGgT0aXyU=", + "dependencies": { + "exit-on-epipe": "~1.0.1", + "printj": "~1.1.0" + }, + "bin": { + "adler32": "bin/adler32.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/after": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/after/-/after-0.8.1.tgz", + "integrity": "sha1-q11PuIP1loFtNRX495HAr0ht1ic=" + }, + "node_modules/align-text": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", + "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2", + "longest": "^1.0.1", + "repeat-string": "^1.5.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "engines": { + "node": ">=0.4.2" + } + }, + "node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=" + }, + "node_modules/anymatch": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", + "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", + "dev": true, + "dependencies": { + "micromatch": "^2.1.5", + "normalize-path": "^2.0.0" + } + }, + "node_modules/arr-diff": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "dev": true, + "dependencies": { + "arr-flatten": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", + "dev": true + }, + "node_modules/array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arraybuffer.slice": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.6.tgz", + "integrity": "sha1-8zshWfBTKj8xB6JywMz70a0peco=" + }, + "node_modules/assert": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz", + "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", + "dev": true, + "dependencies": { + "util": "0.10.3" + } + }, + "node_modules/assert/node_modules/inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "dev": true + }, + "node_modules/assert/node_modules/util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "dev": true, + "dependencies": { + "inherits": "2.0.1" + } + }, + "node_modules/ast-types": { + "version": "0.9.6", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.9.6.tgz", + "integrity": "sha1-ECyenpAF0+fjgpvwxPok7oYu6bk=", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/async": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", + "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=" + }, + "node_modules/async-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", + "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", + "dev": true + }, + "node_modules/babyparse": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/babyparse/-/babyparse-0.2.1.tgz", + "integrity": "sha1-Bp8DXfP9zm86RV3V2vx1F43PN2A=", + "deprecated": "Deprecated in favour of PapaParse, which now supports Node.js" + }, + "node_modules/balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "node_modules/base62": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/base62/-/base62-1.2.8.tgz", + "integrity": "sha512-V6YHUbjLxN1ymqNLb1DPHoU1CpfdL7d2YTIp5W3U4hhoG4hhxNmsFDs66M9EXxBiSEke5Bt5dwdfMwwZF70iLA==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/base64-arraybuffer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.2.tgz", + "integrity": "sha1-R030qfLaJOBd8xWMOx2zw81GoVQ=", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/base64-js": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", + "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", + "dev": true + }, + "node_modules/base64-url": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/base64-url/-/base64-url-1.2.1.tgz", + "integrity": "sha1-GZ/WYXAqDnt9yubgaYuwicUvbXg=" + }, + "node_modules/base64id": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-0.1.0.tgz", + "integrity": "sha1-As4P3u4M709ACA4ec+g08LG/zj8=", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/basic-auth": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-1.0.0.tgz", + "integrity": "sha1-ERstn/jk5tE2uMhOpeCWy4c1Fjc=" + }, + "node_modules/basic-auth-connect": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/basic-auth-connect/-/basic-auth-connect-1.0.0.tgz", + "integrity": "sha1-/bC0OWLKe0BFanwrtI/hc9otISI=" + }, + "node_modules/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "dev": true + }, + "node_modules/better-assert": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz", + "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=", + "dependencies": { + "callsite": "1.0.0" + }, + "engines": { + "node": "*" + } + }, + "node_modules/big.js": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz", + "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", + "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/blob": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.2.tgz", + "integrity": "sha1-uJVivWmUr5W6HoEhVVNjM6ojzyQ=" + }, + "node_modules/body-parser": { + "version": "1.18.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", + "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", + "dev": true, + "dependencies": { + "bytes": "3.0.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.1", + "http-errors": "~1.6.2", + "iconv-lite": "0.4.19", + "on-finished": "~2.3.0", + "qs": "6.5.1", + "raw-body": "2.3.2", + "type-is": "~1.6.15" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/body-parser/node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true + }, + "node_modules/body-parser/node_modules/iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/body-parser/node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/body-parser/node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/qs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/body-parser/node_modules/type-is": { + "version": "1.6.16", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", + "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", + "dev": true, + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.18" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "dev": true, + "dependencies": { + "expand-range": "^1.8.1", + "preserve": "^0.2.0", + "repeat-element": "^1.1.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/browserify-aes": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-0.4.0.tgz", + "integrity": "sha1-BnFJtmjfMcS1hTPgLQHoBthgjiw=", + "dev": true, + "dependencies": { + "inherits": "^2.0.1" + } + }, + "node_modules/browserify-zlib": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz", + "integrity": "sha1-uzX4pRn2AOD6a4SFJByXnQFB+y0=", + "dev": true, + "dependencies": { + "pako": "~0.2.0" + } + }, + "node_modules/buffer": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", + "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", + "deprecated": "This version of 'buffer' is out-of-date. You must update to v4.9.2 or newer", + "dev": true, + "dependencies": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.3.tgz", + "integrity": "sha1-u1RRnpXRB8vSQA520MqxRnM22SE=", + "engines": { + "node": "*" + } + }, + "node_modules/buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" + }, + "node_modules/buffer/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "node_modules/builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "dev": true + }, + "node_modules/bytes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz", + "integrity": "sha1-NWnt6Lo0MV+rmcPpLLBMciDeH6g=" + }, + "node_modules/callsite": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", + "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=", + "engines": { + "node": "*" + } + }, + "node_modules/camelcase": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/center-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", + "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", + "dev": true, + "dependencies": { + "align-text": "^0.1.3", + "lazy-cache": "^1.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cfb": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/cfb/-/cfb-0.11.1.tgz", + "integrity": "sha1-qW248nKmw/uZ27sj70EiP0i+Hqc=", + "dependencies": { + "commander": "" + }, + "bin": { + "cfb": "bin/cfb.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/cfb/node_modules/commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/chokidar": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", + "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", + "deprecated": "Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.", + "dev": true, + "dependencies": { + "anymatch": "^1.3.0", + "async-each": "^1.0.0", + "glob-parent": "^2.0.0", + "inherits": "^2.0.1", + "is-binary-path": "^1.0.0", + "is-glob": "^2.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.0.0" + }, + "optionalDependencies": { + "fsevents": "^1.0.0" + } + }, + "node_modules/cliui": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", + "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", + "dev": true, + "dependencies": { + "center-align": "^0.1.1", + "right-align": "^0.1.1", + "wordwrap": "0.0.2" + } + }, + "node_modules/cliui/node_modules/wordwrap": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/codepage": { + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/codepage/-/codepage-1.14.0.tgz", + "integrity": "sha1-jL4lSBMjVZ19MHVxsP/5HnodL5k=", + "dependencies": { + "commander": "~2.14.1", + "exit-on-epipe": "~1.0.1" + }, + "bin": { + "codepage": "bin/codepage.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/codepage/node_modules/commander": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.14.1.tgz", + "integrity": "sha512-+YR16o3rK53SmWHU3rEM3tPAh2rwb1yPcQX5irVn7mb0gXbwuCCrnkbV5+PBfETdfg1vui07nM6PCG1zndcjQw==" + }, + "node_modules/coffee-css": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/coffee-css/-/coffee-css-0.0.5.tgz", + "integrity": "sha1-WJqCL7pa4NTxoEJLIrp1AWgydaQ=", + "dependencies": { + "coffee-script": ">=1.0.0", + "underscore": ">=1.1.6" + }, + "engines": { + "node": ">=0.4.5" + } + }, + "node_modules/coffee-script": { + "version": "1.12.7", + "resolved": "https://registry.npmjs.org/coffee-script/-/coffee-script-1.12.7.tgz", + "integrity": "sha512-fLeEhqwymYat/MpTPUjSKHVYYl0ec2mOyALEMLmzr5i1isuG+6jfI2j2d5oBO3VIzgUXgBVIcOT9uH1TFxBckw==", + "deprecated": "CoffeeScript on NPM has moved to \"coffeescript\" (no hyphen)", + "bin": { + "cake": "bin/cake", + "coffee": "bin/coffee" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/coffeecup": { + "version": "0.3.21", + "resolved": "https://registry.npmjs.org/coffeecup/-/coffeecup-0.3.21.tgz", + "integrity": "sha1-VOcUF1yyI93RBWhRcZbgzVZtGYo=", + "dependencies": { + "coffee-script": ">=1.3 <2", + "optparse": "1.0.3", + "stylus": "0.27.2", + "uglify-js": "1.2.6" + }, + "bin": { + "coffeecup": "bin/coffeecup" + }, + "engines": { + "node": "0.4.x || 0.6.x || 0.8.x || 0.10.x" + } + }, + "node_modules/coffeecup/node_modules/mkdirp": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", + "integrity": "sha1-3j5fiWHIjHh+4TaN+EmsRBPsqNc=", + "deprecated": "Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)" + }, + "node_modules/coffeecup/node_modules/stylus": { + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.27.2.tgz", + "integrity": "sha1-ESH3+M0VKw+KSqaiSpreoQyCURc=", + "dependencies": { + "cssom": "0.2.x", + "debug": "*", + "mkdirp": "0.3.x" + }, + "bin": { + "stylus": "bin/stylus" + }, + "engines": { + "node": "*" + } + }, + "node_modules/coffeecup/node_modules/uglify-js": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-1.2.6.tgz", + "integrity": "sha1-01Sy08HPEOvBj6eMEaKL3ZzhWA0=", + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": "*" + } + }, + "node_modules/colors": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/colors/-/colors-0.6.2.tgz", + "integrity": "sha1-JCP+ZnisDF2uiFLl0OW+CMmXq8w=", + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/combined-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-0.0.7.tgz", + "integrity": "sha1-ATfmV7qlp1QcV6w3rF/AfXO03B8=", + "dev": true, + "dependencies": { + "delayed-stream": "0.0.5" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "2.17.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", + "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==" + }, + "node_modules/commoner": { + "version": "0.10.8", + "resolved": "https://registry.npmjs.org/commoner/-/commoner-0.10.8.tgz", + "integrity": "sha1-NPw2cs0kOT6LtH5wyqApOBH08sU=", + "dev": true, + "dependencies": { + "commander": "^2.5.0", + "detective": "^4.3.1", + "glob": "^5.0.15", + "graceful-fs": "^4.1.2", + "iconv-lite": "^0.4.5", + "mkdirp": "^0.5.0", + "private": "^0.1.6", + "q": "^1.1.2", + "recast": "^0.11.17" + }, + "bin": { + "commonize": "bin/commonize" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/component-bind": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", + "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=" + }, + "node_modules/component-emitter": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.1.2.tgz", + "integrity": "sha1-KWWU8nU9qmOZbSrwjRWpURbJrsM=" + }, + "node_modules/component-inherit": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz", + "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=" + }, + "node_modules/compressible": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.14.tgz", + "integrity": "sha1-MmxfUH+7BV9UEWeCuWmoG2einac=", + "dev": true, + "dependencies": { + "mime-db": ">= 1.34.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.3.tgz", + "integrity": "sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg==", + "dev": true, + "dependencies": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.14", + "debug": "2.6.9", + "on-headers": "~1.0.1", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/accepts": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", + "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", + "dev": true, + "dependencies": { + "mime-types": "~2.1.18", + "negotiator": "0.6.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression/node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/negotiator": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", + "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "node_modules/concat-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", + "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", + "engines": [ + "node >= 6.0" + ], + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.0.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/concat-stream/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/concat-stream/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/concat-stream/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/connect": { + "version": "2.25.9", + "resolved": "https://registry.npmjs.org/connect/-/connect-2.25.9.tgz", + "integrity": "sha1-loDW8vsgDq2rPScuQZ545dh88x8=", + "deprecated": "connect 2.x series is deprecated", + "dependencies": { + "basic-auth-connect": "1.0.0", + "body-parser": "~1.6.7", + "bytes": "1.0.0", + "compression": "~1.0.11", + "connect-timeout": "~1.2.2", + "cookie": "0.1.2", + "cookie-parser": "1.3.2", + "cookie-signature": "1.0.4", + "csurf": "~1.4.1", + "debug": "1.0.4", + "depd": "0.4.4", + "errorhandler": "1.1.1", + "express-session": "~1.7.6", + "finalhandler": "0.1.0", + "fresh": "0.2.2", + "media-typer": "0.2.0", + "method-override": "~2.1.3", + "morgan": "~1.2.3", + "multiparty": "3.3.2", + "on-headers": "~1.0.0", + "parseurl": "~1.3.0", + "pause": "0.0.1", + "qs": "2.2.2", + "response-time": "~2.0.1", + "serve-favicon": "2.0.1", + "serve-index": "~1.1.6", + "serve-static": "~1.5.3", + "type-is": "~1.3.2", + "vhost": "2.0.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/connect-history-api-fallback": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz", + "integrity": "sha1-sGhzk0vF40T+9hGhlqb6rgruAVo=", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/connect-timeout": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/connect-timeout/-/connect-timeout-1.2.2.tgz", + "integrity": "sha1-WVNgK7Zqv9X6Ia6RGnIhxeglocA=", + "dependencies": { + "debug": "1.0.4", + "ms": "0.6.2", + "on-headers": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/connect-timeout/node_modules/debug": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-1.0.4.tgz", + "integrity": "sha1-W5wla9VLbsAigxdvqKDt5tFUy/g=", + "dependencies": { + "ms": "0.6.2" + } + }, + "node_modules/connect-timeout/node_modules/ms": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.6.2.tgz", + "integrity": "sha1-2JwhJMb9wTU9Zai3e/GqxLGTcIw=" + }, + "node_modules/connect/node_modules/batch": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.5.1.tgz", + "integrity": "sha1-NqS6tZTAUP17UHvKDbMMLZKvT/I=" + }, + "node_modules/connect/node_modules/body-parser": { + "version": "1.6.7", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.6.7.tgz", + "integrity": "sha1-gjBr7K30RUPoJrOQfq6T8CN8Tlw=", + "dependencies": { + "bytes": "1.0.0", + "depd": "0.4.4", + "iconv-lite": "0.4.4", + "media-typer": "0.2.0", + "on-finished": "2.1.0", + "qs": "2.2.2", + "raw-body": "1.3.0", + "type-is": "~1.3.2" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/connect/node_modules/compressible": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-1.1.1.tgz", + "integrity": "sha1-I7ceqQ6mxqZiiXAakYGCwk0HKe8=" + }, + "node_modules/connect/node_modules/compression": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.0.11.tgz", + "integrity": "sha1-aXAM8e6JY0VDVqwZKm5ekeIyv/s=", + "dependencies": { + "accepts": "~1.0.7", + "bytes": "1.0.0", + "compressible": "~1.1.1", + "debug": "1.0.4", + "on-headers": "~1.0.0", + "vary": "~1.0.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/connect/node_modules/debug": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-1.0.4.tgz", + "integrity": "sha1-W5wla9VLbsAigxdvqKDt5tFUy/g=", + "dependencies": { + "ms": "0.6.2" + } + }, + "node_modules/connect/node_modules/finalhandler": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-0.1.0.tgz", + "integrity": "sha1-2gW7xPX0owyEzh2R88FUAHxOnao=", + "dependencies": { + "debug": "1.0.4", + "escape-html": "1.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/connect/node_modules/iconv-lite": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.4.tgz", + "integrity": "sha1-6V8uQdsHNfwhZS94J6XuMuY8g6g=", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/connect/node_modules/ms": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.6.2.tgz", + "integrity": "sha1-2JwhJMb9wTU9Zai3e/GqxLGTcIw=" + }, + "node_modules/connect/node_modules/range-parser": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.0.3.tgz", + "integrity": "sha1-aHKCNTXGkuLCoBA4Jq/YLC4P8XU=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/connect/node_modules/raw-body": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-1.3.0.tgz", + "integrity": "sha1-l4IwoValVI9C7vFN4i0PT2EAg9E=", + "dependencies": { + "bytes": "1", + "iconv-lite": "0.4.4" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/connect/node_modules/send": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/send/-/send-0.8.5.tgz", + "integrity": "sha1-N/cIIW5vUMF150xp/sU0hOL9gsc=", + "dependencies": { + "debug": "1.0.4", + "depd": "0.4.4", + "destroy": "1.0.3", + "escape-html": "1.0.1", + "fresh": "0.2.2", + "mime": "1.2.11", + "ms": "0.6.2", + "on-finished": "2.1.0", + "range-parser": "~1.0.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/connect/node_modules/serve-index": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.1.6.tgz", + "integrity": "sha1-t1gxj+eBYoOD9mrIDdRHcS6neB8=", + "dependencies": { + "accepts": "~1.0.7", + "batch": "0.5.1", + "parseurl": "~1.3.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/connect/node_modules/serve-static": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.5.4.tgz", + "integrity": "sha1-gZ+zeuRr0C3VILd/z3/Y9REvl4I=", + "dependencies": { + "escape-html": "1.0.1", + "parseurl": "~1.3.0", + "send": "0.8.5", + "utils-merge": "1.0.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/connect/node_modules/vary": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.0.1.tgz", + "integrity": "sha1-meSYFWaihhGN+yuBc1ffeZM3bRA=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/console-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", + "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", + "dev": true, + "dependencies": { + "date-now": "^0.1.4" + } + }, + "node_modules/constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "dev": true + }, + "node_modules/content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.1.2.tgz", + "integrity": "sha1-cv7D0k5Io0Mgc9kMEmQgBQYQBLE=", + "engines": { + "node": "*" + } + }, + "node_modules/cookie-parser": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/cookie-parser/-/cookie-parser-1.3.2.tgz", + "integrity": "sha1-UiEcyCyVXXn/DAiJVEB3JOGc9WI=", + "dependencies": { + "cookie": "0.1.2", + "cookie-signature": "1.0.4" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.4.tgz", + "integrity": "sha1-Dt0iKG46ERuaKnDbNj6SXoZ/aso=" + }, + "node_modules/cookiejar": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.0.1.tgz", + "integrity": "sha1-PRJ1L2rfaKiS8zJDNJK9WBK7Zo8=", + "dev": true + }, + "node_modules/copy-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/copy-utils/-/copy-utils-1.0.0.tgz", + "integrity": "sha1-va0LlUV5nXh9XQxMCwgqKpTjafc=", + "dev": true + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "node_modules/cors": { + "version": "2.8.4", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.4.tgz", + "integrity": "sha1-K9OB8usgECAQXNUOpZ2mMJBpRoY=", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/crc-32": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.0.tgz", + "integrity": "sha512-1uBwHxF+Y/4yF5G48fwnKq6QsIXheor3ZLPT80yGBV1oEUwpPojlEhQbWKVw1VwcTQyMGHK1/XMmTjmlsmTTGA==", + "dependencies": { + "exit-on-epipe": "~1.0.1", + "printj": "~1.1.0" + }, + "bin": { + "crc32": "bin/crc32.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/crypto-browserify": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.3.0.tgz", + "integrity": "sha1-ufx1u0oO1h3PHNXa6W6zDJw+UGw=", + "dev": true, + "dependencies": { + "browserify-aes": "0.4.0", + "pbkdf2-compat": "2.0.1", + "ripemd160": "0.2.0", + "sha.js": "2.2.6" + }, + "engines": { + "node": "*" + } + }, + "node_modules/csrf": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/csrf/-/csrf-2.0.7.tgz", + "integrity": "sha1-0E9S4Paiin4s/h4B3V68JRs9QgE=", + "dependencies": { + "base64-url": "1.2.1", + "rndm": "~1.1.0", + "scmp": "1.0.0", + "uid-safe": "~1.1.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/css-loader": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-0.9.1.tgz", + "integrity": "sha1-LhqgDOfjDvLGp6SzAKCAp8l54Nw=", + "dev": true, + "dependencies": { + "csso": "1.3.x", + "loader-utils": "~0.2.2", + "source-map": "~0.1.38" + } + }, + "node_modules/css-loader/node_modules/source-map": { + "version": "0.1.43", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "dev": true, + "dependencies": { + "amdefine": ">=0.0.4" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/csso": { + "version": "1.3.12", + "resolved": "https://registry.npmjs.org/csso/-/csso-1.3.12.tgz", + "integrity": "sha1-/GKGlKLTiTiqrEmWdTIY/TEc254=", + "dev": true, + "bin": { + "csso": "bin/csso" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/cssom": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.2.5.tgz", + "integrity": "sha1-JoJwm1kC5yEt9SkRb/eIzVslSJQ=", + "engines": { + "node": ">=0.2.0" + } + }, + "node_modules/csurf": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/csurf/-/csurf-1.4.1.tgz", + "integrity": "sha1-DMrwJpkrLSGHcdYXT1xsQCpiif0=", + "dependencies": { + "cookie": "0.1.2", + "cookie-signature": "1.0.4", + "csrf": "~2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/csv-parse": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/csv-parse/-/csv-parse-0.0.6.tgz", + "integrity": "sha1-lGEHImUP6sgc9UnCySmGMtK2A3w=" + }, + "node_modules/date-now": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", + "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", + "dev": true + }, + "node_modules/debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" + }, + "node_modules/defined": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", + "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=", + "dev": true + }, + "node_modules/delayed-stream": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-0.0.5.tgz", + "integrity": "sha1-1LH0OpPoKW3+AmlPRoC8N6MTxz8=", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/depd": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/depd/-/depd-0.4.4.tgz", + "integrity": "sha1-BwkfrnX5eCjYm0oCotR3jw58BmI=", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/destroy": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.3.tgz", + "integrity": "sha1-tDO0ck5x/YVR2YhRdIUcX8N34sk=" + }, + "node_modules/detective": { + "version": "4.7.1", + "resolved": "https://registry.npmjs.org/detective/-/detective-4.7.1.tgz", + "integrity": "sha512-H6PmeeUcZloWtdt4DAkFyzFL94arpHr3NOwwmVILFiy+9Qd4JTxxXrzfyGk/lmct2qVGBwTSwSXagqu2BxmWig==", + "dev": true, + "dependencies": { + "acorn": "^5.2.1", + "defined": "^1.0.0" + } + }, + "node_modules/domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "dev": true, + "engines": { + "node": ">=0.4", + "npm": ">=1.2" + } + }, + "node_modules/ee-first": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.0.5.tgz", + "integrity": "sha1-jJshKJjYzZ8alDZlDOe+ICyen/A=" + }, + "node_modules/emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/engine.io": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-1.3.1.tgz", + "integrity": "sha1-LZaDCP/65dF/Ugm2d1JG6Q2KcF4=", + "dependencies": { + "base64id": "0.1.0", + "debug": "0.6.0", + "engine.io-parser": "1.0.6", + "ws": "0.4.31" + } + }, + "node_modules/engine.io-client": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-1.3.1.tgz", + "integrity": "sha1-HFpl1cWvbQS0TCLD282Vw57RyYk=", + "dependencies": { + "component-emitter": "1.1.2", + "component-inherit": "0.0.3", + "debug": "0.7.4", + "engine.io-parser": "1.0.6", + "has-cors": "1.0.3", + "indexof": "0.0.1", + "parsejson": "0.0.1", + "parseqs": "0.0.2", + "parseuri": "0.0.2", + "ws": "0.4.31", + "xmlhttprequest": "https://github.com/LearnBoost/node-XMLHttpRequest/archive/0f36d0b5ebc03d85f860d42a64ae9791e1daa433.tar.gz" + } + }, + "node_modules/engine.io-client/node_modules/debug": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-0.7.4.tgz", + "integrity": "sha1-BuHqgILCyxTjmAbiLi9vdX+Srzk=", + "engines": { + "node": "*" + } + }, + "node_modules/engine.io-client/node_modules/xmlhttprequest": { + "version": "1.5.0", + "resolved": "https://github.com/LearnBoost/node-XMLHttpRequest/archive/0f36d0b5ebc03d85f860d42a64ae9791e1daa433.tar.gz", + "integrity": "sha512-TVSZwoeUQ7OKhb8jnQdSxGFz+lm4MGWmhG0deeYg85VQT74x5LcSrKeXHE0ZIzEycgqQ5mF8r8e1AykA7TpNAQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/engine.io-parser": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-1.0.6.tgz", + "integrity": "sha1-04gTFDpBHLO5FBMqsFv5nm96JI4=", + "dependencies": { + "after": "0.8.1", + "arraybuffer.slice": "0.0.6", + "base64-arraybuffer": "0.1.2", + "blob": "0.0.2", + "utf8": "2.0.0" + } + }, + "node_modules/engine.io/node_modules/debug": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-0.6.0.tgz", + "integrity": "sha1-zp1dAl1SlLPwdIpJS+uvPJ/Yc08=", + "engines": { + "node": "*" + } + }, + "node_modules/enhanced-resolve": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-0.9.1.tgz", + "integrity": "sha1-TW5omzcl+GCQknzMhs2fFjW4ni4=", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.2.0", + "tapable": "^0.1.8" + }, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/enhanced-resolve/node_modules/memory-fs": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.2.0.tgz", + "integrity": "sha1-8rslNovBIeORwlIN6Slpyu4KApA=", + "dev": true + }, + "node_modules/envify": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/envify/-/envify-3.4.1.tgz", + "integrity": "sha1-1xIjKejfFoi6dxsSUBkXyc5cvOg=", + "dev": true, + "dependencies": { + "jstransform": "^11.0.3", + "through": "~2.3.4" + }, + "bin": { + "envify": "bin/envify" + } + }, + "node_modules/errno": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", + "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "dev": true, + "dependencies": { + "prr": "~1.0.1" + }, + "bin": { + "errno": "cli.js" + } + }, + "node_modules/errorhandler": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/errorhandler/-/errorhandler-1.1.1.tgz", + "integrity": "sha1-GN79Q22Mou/gotiGxcTW7m121pE=", + "dependencies": { + "accepts": "~1.0.4", + "escape-html": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/escape-html": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.1.tgz", + "integrity": "sha1-GBoobq05ejmpKFfPsdQwUuNWv/A=" + }, + "node_modules/esprima-fb": { + "version": "15001.1.0-dev-harmony-fb", + "resolved": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-15001.1.0-dev-harmony-fb.tgz", + "integrity": "sha1-MKlHMDxrjV6VW+4rmbHSMyBqaQE=", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "dev": true + }, + "node_modules/events": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", + "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=", + "dev": true, + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/eventsource": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-0.1.6.tgz", + "integrity": "sha1-Cs7ehJ7X3RzMMsgRuxG5RNTykjI=", + "dev": true, + "dependencies": { + "original": ">=0.0.5" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/exit-on-epipe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz", + "integrity": "sha512-h2z5mrROTxce56S+pnvAV890uu7ls7f1kEvVGJbw1OlFH3/mlJ5bkXu0KRyW94v37zzHPiUd55iLn3DA7TjWpw==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/expand-brackets": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "dev": true, + "dependencies": { + "is-posix-bracket": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-range": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", + "dev": true, + "dependencies": { + "fill-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/express": { + "version": "3.16.9", + "resolved": "https://registry.npmjs.org/express/-/express-3.16.9.tgz", + "integrity": "sha1-mTdHvlZpcAKA2WgsthrROJOYR/w=", + "dependencies": { + "basic-auth": "1.0.0", + "buffer-crc32": "0.2.3", + "commander": "1.3.2", + "connect": "2.25.9", + "cookie": "0.1.2", + "cookie-signature": "1.0.4", + "debug": "1.0.4", + "depd": "0.4.4", + "escape-html": "1.0.1", + "fresh": "0.2.2", + "media-typer": "0.2.0", + "merge-descriptors": "0.0.2", + "methods": "1.1.0", + "mkdirp": "0.5.0", + "parseurl": "~1.3.0", + "proxy-addr": "1.0.1", + "range-parser": "1.0.0", + "send": "0.8.3", + "vary": "0.1.0" + }, + "bin": { + "express": "bin/express" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/express-session": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.7.6.tgz", + "integrity": "sha1-4cNpuiF296/beed9ZdzYx8RuSKU=", + "dependencies": { + "buffer-crc32": "0.2.3", + "cookie": "0.1.2", + "cookie-signature": "1.0.4", + "debug": "1.0.4", + "depd": "0.4.4", + "on-headers": "~1.0.0", + "parseurl": "~1.3.0", + "uid-safe": "1.0.1", + "utils-merge": "1.0.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/express-session/node_modules/debug": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-1.0.4.tgz", + "integrity": "sha1-W5wla9VLbsAigxdvqKDt5tFUy/g=", + "dependencies": { + "ms": "0.6.2" + } + }, + "node_modules/express-session/node_modules/ms": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.6.2.tgz", + "integrity": "sha1-2JwhJMb9wTU9Zai3e/GqxLGTcIw=" + }, + "node_modules/express-session/node_modules/uid-safe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-1.0.1.tgz", + "integrity": "sha1-W9FIRgouhPVPGT/SA1LIw9feasg=", + "dependencies": { + "base64-url": "1", + "mz": "1" + } + }, + "node_modules/express/node_modules/commander": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/commander/-/commander-1.3.2.tgz", + "integrity": "sha1-io8w7GcKb91kr1LxkUuQfXnq1bU=", + "dependencies": { + "keypress": "0.1.x" + }, + "engines": { + "node": ">= 0.6.x" + } + }, + "node_modules/express/node_modules/debug": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-1.0.4.tgz", + "integrity": "sha1-W5wla9VLbsAigxdvqKDt5tFUy/g=", + "dependencies": { + "ms": "0.6.2" + } + }, + "node_modules/express/node_modules/mkdirp": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz", + "integrity": "sha1-HXMHam35hs2TROFecfzAWkyavxI=", + "deprecated": "Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)", + "dependencies": { + "minimist": "0.0.8" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/express/node_modules/ms": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.6.2.tgz", + "integrity": "sha1-2JwhJMb9wTU9Zai3e/GqxLGTcIw=" + }, + "node_modules/express/node_modules/range-parser": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.0.0.tgz", + "integrity": "sha1-pLJkz+C+XONqvjdlrJwqJIdG28A=" + }, + "node_modules/express/node_modules/send": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/send/-/send-0.8.3.tgz", + "integrity": "sha1-WTiGAE/LloobVyeBSjKziLO5kIM=", + "dependencies": { + "debug": "1.0.4", + "depd": "0.4.4", + "destroy": "1.0.3", + "escape-html": "1.0.1", + "fresh": "0.2.2", + "mime": "1.2.11", + "ms": "0.6.2", + "on-finished": "2.1.0", + "range-parser": "~1.0.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/express/node_modules/vary": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/vary/-/vary-0.1.0.tgz", + "integrity": "sha1-3wlFiZ6TwMxb0YzIMh2dIedPYXY=", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/extend": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/extend/-/extend-1.2.1.tgz", + "integrity": "sha1-oPX9bPyDpf5J72mNYOyKYk3UV2w=", + "dev": true + }, + "node_modules/extglob": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "dev": true, + "dependencies": { + "is-extglob": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" + }, + "node_modules/faye-websocket": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", + "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", + "dev": true, + "dependencies": { + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/filename-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", + "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fill-range": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", + "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", + "dev": true, + "dependencies": { + "is-number": "^2.1.0", + "isobject": "^2.0.0", + "randomatic": "^3.0.0", + "repeat-element": "^1.1.2", + "repeat-string": "^1.5.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/finalhandler": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz", + "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", + "statuses": "~1.4.0", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true + }, + "node_modules/finalhandler/node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true + }, + "node_modules/finalhandler/node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/follow-redirects": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.1.tgz", + "integrity": "sha512-SSG5xmZh1mkPGyKzjZP8zLjltIfpW32Y5QpdNJyjcfGxK3qo3NDDkZOZSFiGn1A6SclQxY9GzEwAHQ3dmYRWpg==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "dev": true, + "dependencies": { + "for-in": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/form-data": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-0.1.3.tgz", + "integrity": "sha1-TuQ0bm61Ni6DRKAgdb2NvYxzc+o=", + "dev": true, + "dependencies": { + "async": "~0.9.0", + "combined-stream": "~0.0.4", + "mime": "~1.2.11" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/form-data/node_modules/async": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", + "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=", + "dev": true + }, + "node_modules/formidable": { + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.0.14.tgz", + "integrity": "sha1-Kz9MQRy7X91pXESEPiojUUpDIxo=", + "deprecated": "Please upgrade to latest, formidable@v2 or formidable@v3! Check these notes: https://bit.ly/2ZEqIau", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/frac": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/frac/-/frac-1.1.2.tgz", + "integrity": "sha512-w/XBfkibaTl3YDqASwfDUqkna4Z2p9cFSr1aHDt0WoMTECnRfBOv2WArlZILlqgWlmdIlALXGpM2AOhEk5W3IA==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/fresh": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.2.2.tgz", + "integrity": "sha1-lzHc9WeMf660T7kDxPct9VGH+nc=" + }, + "node_modules/fsevents": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz", + "integrity": "sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==", + "bundleDependencies": [ + "node-pre-gyp" + ], + "deprecated": "fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "dependencies": { + "nan": "^2.12.1", + "node-pre-gyp": "^0.12.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/fsevents/node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true, + "inBundle": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/are-we-there-yet": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "node_modules/fsevents/node_modules/balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/fsevents/node_modules/chownr": { + "version": "1.1.1", + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true, + "inBundle": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/debug": { + "version": "4.1.1", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/fsevents/node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true, + "inBundle": true, + "optional": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/fsevents/node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=", + "dev": true, + "inBundle": true, + "optional": true, + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/fsevents/node_modules/fs-minipass": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", + "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "minipass": "^2.2.1" + } + }, + "node_modules/fsevents/node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "node_modules/fsevents/node_modules/glob": { + "version": "7.1.3", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + } + }, + "node_modules/fsevents/node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/ignore-walk": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz", + "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "minimatch": "^3.0.4" + } + }, + "node_modules/fsevents/node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/fsevents/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "deprecated": "Please update to ini >=1.3.6 to avoid a prototype pollution issue", + "dev": true, + "inBundle": true, + "optional": true, + "engines": { + "node": "*" + } + }, + "node_modules/fsevents/node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/fsevents/node_modules/minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/minipass": { + "version": "2.3.5", + "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "node_modules/fsevents/node_modules/minizlib": { + "version": "1.2.1", + "integrity": "sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "minipass": "^2.2.1" + } + }, + "node_modules/fsevents/node_modules/mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "deprecated": "Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "minimist": "0.0.8" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/fsevents/node_modules/ms": { + "version": "2.1.1", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/nan": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", + "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", + "dev": true, + "optional": true + }, + "node_modules/fsevents/node_modules/needle": { + "version": "2.3.0", + "integrity": "sha512-QBZu7aAFR0522EyaXZM0FZ9GLpq6lvQ3uq8gteiDUp7wKdy0lSd2hPlgFwVuW1CBkfEs9PfDQsQzZghLs/psdg==", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "debug": "^4.1.0", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" + } + }, + "node_modules/fsevents/node_modules/node-pre-gyp": { + "version": "0.12.0", + "integrity": "sha512-4KghwV8vH5k+g2ylT+sLTjy5wmUOb9vPhnM8NHvRf9dHmnW/CndrFXy2aRPaPST6dugXSdHXfeaHQm77PIz/1A==", + "deprecated": "Please upgrade to @mapbox/node-pre-gyp: the non-scoped node-pre-gyp package is deprecated and only the @mapbox scoped package will recieve updates in the future", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.1", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.2.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" + }, + "bin": { + "node-pre-gyp": "bin/node-pre-gyp" + } + }, + "node_modules/fsevents/node_modules/nopt": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", + "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "abbrev": "1", + "osenv": "^0.1.4" + }, + "bin": { + "nopt": "bin/nopt.js" + } + }, + "node_modules/fsevents/node_modules/npm-bundled": { + "version": "1.0.6", + "integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/npm-packlist": { + "version": "1.4.1", + "integrity": "sha512-+TcdO7HJJ8peiiYhvPxsEDhF3PJFGUGRcFsGve3vxvxdcpO2Z4Z7rkosRM0kWj6LfbK/P0gu3dzk5RU1ffvFcw==", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } + }, + "node_modules/fsevents/node_modules/npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "node_modules/fsevents/node_modules/number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true, + "inBundle": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true, + "inBundle": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/fsevents/node_modules/os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true, + "inBundle": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true, + "inBundle": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "node_modules/fsevents/node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true, + "inBundle": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/fsevents/node_modules/rc/node_modules/minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/fsevents/node_modules/rimraf": { + "version": "2.6.3", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/fsevents/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/semver": { + "version": "5.7.0", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true, + "inBundle": true, + "optional": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/fsevents/node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/fsevents/node_modules/string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true, + "inBundle": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fsevents/node_modules/tar": { + "version": "4.4.8", + "integrity": "sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ==", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.3.4", + "minizlib": "^1.1.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.2" + }, + "engines": { + "node": ">=4.5" + } + }, + "node_modules/fsevents/node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "dev": true, + "inBundle": true, + "optional": true, + "dependencies": { + "string-width": "^1.0.2 || 2" + } + }, + "node_modules/fsevents/node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/fsevents/node_modules/yallist": { + "version": "3.0.3", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", + "dev": true, + "inBundle": true, + "optional": true + }, + "node_modules/functionally": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/functionally/-/functionally-0.6.2.tgz", + "integrity": "sha1-uptKxN7AgH3sKJwlGz9WUVmdMtM=", + "dev": true, + "dependencies": { + "newify": "~1.1.9" + } + }, + "node_modules/glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "dev": true, + "dependencies": { + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + } + }, + "node_modules/glob-base": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "dev": true, + "dependencies": { + "glob-parent": "^2.0.0", + "is-glob": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "dev": true, + "dependencies": { + "is-glob": "^2.0.0" + } + }, + "node_modules/graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/graceful-readlink": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", + "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" + }, + "node_modules/harb": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/harb/-/harb-0.1.1.tgz", + "integrity": "sha1-uCObri8HJLZaqvLnTp6xWgTbUOs=", + "deprecated": "harb has been merged into xlsx", + "dependencies": { + "babyparse": "0.2.1", + "codepage": "", + "commander": "", + "exit-on-epipe": "", + "ssf": "0.8.2" + }, + "bin": { + "harb": "bin/harb.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/harb/node_modules/codepage": { + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/codepage/-/codepage-1.14.0.tgz", + "integrity": "sha1-jL4lSBMjVZ19MHVxsP/5HnodL5k=", + "dependencies": { + "commander": "~2.14.1", + "exit-on-epipe": "~1.0.1" + }, + "bin": { + "codepage": "bin/codepage.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/harb/node_modules/codepage/node_modules/commander": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.14.1.tgz", + "integrity": "sha512-+YR16o3rK53SmWHU3rEM3tPAh2rwb1yPcQX5irVn7mb0gXbwuCCrnkbV5+PBfETdfg1vui07nM6PCG1zndcjQw==" + }, + "node_modules/harb/node_modules/commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/harb/node_modules/exit-on-epipe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz", + "integrity": "sha512-h2z5mrROTxce56S+pnvAV890uu7ls7f1kEvVGJbw1OlFH3/mlJ5bkXu0KRyW94v37zzHPiUd55iLn3DA7TjWpw==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/harb/node_modules/frac": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/frac/-/frac-0.3.1.tgz", + "integrity": "sha1-V3Z3t/3L5vr3xGHxgB00E3zaQ1Q=", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/harb/node_modules/ssf": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/ssf/-/ssf-0.8.2.tgz", + "integrity": "sha1-udTcahwbz3b4q/qW19dlb7Kr7NY=", + "dependencies": { + "colors": "0.6.2", + "frac": "0.3.1", + "voc": "" + }, + "bin": { + "ssf": "bin/ssf.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/has-binary-data": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/has-binary-data/-/has-binary-data-0.1.1.tgz", + "integrity": "sha1-4QdJ+4eCilLflvQIZYfrSgOWZDk=", + "dependencies": { + "isarray": "0.0.1" + } + }, + "node_modules/has-cors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.0.3.tgz", + "integrity": "sha1-UCrLmzEE2sM90mMOry+IiwuvTLM=", + "dependencies": { + "global": "https://github.com/component/global/archive/v2.0.1.tar.gz" + } + }, + "node_modules/has-cors/node_modules/global": { + "version": "2.0.1", + "resolved": "https://github.com/component/global/archive/v2.0.1.tar.gz", + "integrity": "sha512-O91OcV/NbdmQJPHaRu2ekSP7bqFRLWgqSwaJvqHPZHUwmHBagQYTOra29+LnzzG3lZkXH1ANzHzfCxtAPM9HMA==", + "license": "MIT" + }, + "node_modules/has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/http-errors/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/http-parser-js": { + "version": "0.4.13", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.13.tgz", + "integrity": "sha1-O9bW/ebjFyyTNMOzO2wZPYD+ETc=", + "dev": true + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dev": true, + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/http-proxy-middleware": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.17.4.tgz", + "integrity": "sha1-ZC6ISIUdZvCdTxJJEoRtuutBuDM=", + "dev": true, + "dependencies": { + "http-proxy": "^1.16.2", + "is-glob": "^3.1.0", + "lodash": "^4.17.2", + "micromatch": "^2.3.11" + } + }, + "node_modules/http-proxy-middleware/node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/http-proxy-middleware/node_modules/is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/https-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-0.0.1.tgz", + "integrity": "sha1-P5E2XKvmC3ftDruiS0VOPgnZWoI=", + "dev": true + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ieee754": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.12.tgz", + "integrity": "sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA==", + "dev": true + }, + "node_modules/indexof": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", + "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=" + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "node_modules/interpret": { + "version": "0.6.6", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-0.6.6.tgz", + "integrity": "sha1-/s16GOfOXKar+5U+H4YhOknxYls=", + "dev": true + }, + "node_modules/ipaddr.js": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-0.1.2.tgz", + "integrity": "sha1-ah/T2FT1ACllw017vNm0qNSwRn4=", + "engines": { + "node": ">= 0.2.5" + } + }, + "node_modules/is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "dependencies": { + "binary-extensions": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "node_modules/is-dotfile": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", + "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-equal-shallow": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", + "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", + "dev": true, + "dependencies": { + "is-primitive": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "dependencies": { + "is-extglob": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-posix-bracket": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", + "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", + "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "node_modules/isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "dependencies": { + "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isobject/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "node_modules/j": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/j/-/j-0.4.5.tgz", + "integrity": "sha1-As8p8d2+VOUnJj0HVNbo0hemBk4=", + "dependencies": { + "commander": "", + "concat-stream": "", + "exit-on-epipe": "", + "harb": "~0.1.1", + "xlsjs": "~0.7.6", + "xlsx": "~0.9.1" + }, + "bin": { + "j": "bin/j.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/j/node_modules/adler-32": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/adler-32/-/adler-32-1.0.0.tgz", + "integrity": "sha1-KHKKcXVvYpZm3RZTzYB5Op3xhlE=", + "dependencies": { + "concat-stream": "", + "exit-on-epipe": "", + "printj": "" + }, + "bin": { + "adler32": "bin/adler32.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/j/node_modules/codepage": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/codepage/-/codepage-1.8.1.tgz", + "integrity": "sha1-8aAJ1SYdwnVGKLrLb7vw5uKr/6o=", + "dependencies": { + "commander": "", + "concat-stream": "", + "exit-on-epipe": "", + "voc": "" + }, + "bin": { + "codepage": "bin/codepage.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/j/node_modules/commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/j/node_modules/crc-32": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.0.2.tgz", + "integrity": "sha1-CVB5hO6bzOO9G4hh8N6KsQroGH0=", + "dependencies": { + "exit-on-epipe": "", + "printj": "" + }, + "bin": { + "crc32": "bin/crc32.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/j/node_modules/exit-on-epipe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz", + "integrity": "sha512-h2z5mrROTxce56S+pnvAV890uu7ls7f1kEvVGJbw1OlFH3/mlJ5bkXu0KRyW94v37zzHPiUd55iLn3DA7TjWpw==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/j/node_modules/frac": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/frac/-/frac-1.0.6.tgz", + "integrity": "sha1-mg38I5VoUqizIGI7688b6eoEgik=", + "dependencies": { + "voc": "" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/j/node_modules/printj": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/printj/-/printj-1.2.2.tgz", + "integrity": "sha512-dx9nIry0Z12s5oebhenDCFQjj/IMVotLMbvFP6OJ+C3v+EV30mtYoj6QtaulFo+DbWCbpEeaqcLYMh6CRuVjsA==", + "bin": { + "printj": "bin/printj.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/j/node_modules/ssf": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/ssf/-/ssf-0.9.4.tgz", + "integrity": "sha1-jlepjBnbvx7dU/D4yef9UksPbJw=", + "dependencies": { + "colors": "0.6.2", + "frac": "~1.0.6", + "voc": "" + }, + "bin": { + "ssf": "bin/ssf.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/j/node_modules/xlsx": { + "version": "0.9.13", + "resolved": "https://registry.npmjs.org/xlsx/-/xlsx-0.9.13.tgz", + "integrity": "sha1-WGHRHhCh+ZtvK0keLRGad3fQZuc=", + "dependencies": { + "adler-32": "~1.0.0", + "cfb": "~0.11.1", + "codepage": "~1.8.0", + "commander": "~2.9.0", + "crc-32": "~1.0.2", + "exit-on-epipe": "~1.0.0", + "ssf": "~0.9.1" + }, + "bin": { + "xlsx": "bin/xlsx.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/j/node_modules/xlsx/node_modules/commander": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", + "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", + "dependencies": { + "graceful-readlink": ">= 1.0.0" + }, + "engines": { + "node": ">= 0.6.x" + } + }, + "node_modules/json3": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/json3/-/json3-3.2.6.tgz", + "integrity": "sha1-9u/JPAagTemuxTBT3yVZuxniA4s=", + "deprecated": "Please use the native JSON object instead of JSON 3" + }, + "node_modules/json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "dev": true, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/jstransform": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/jstransform/-/jstransform-11.0.3.tgz", + "integrity": "sha1-CaeJk+CuTU70SH9hVakfYZDLQiM=", + "dev": true, + "dependencies": { + "base62": "^1.1.0", + "commoner": "^0.10.1", + "esprima-fb": "^15001.1.0-dev-harmony-fb", + "object-assign": "^2.0.0", + "source-map": "^0.4.2" + }, + "bin": { + "jstransform": "bin/jstransform" + }, + "engines": { + "node": ">=0.8.8" + } + }, + "node_modules/jstransform/node_modules/object-assign": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-2.1.1.tgz", + "integrity": "sha1-Q8NuXVaf+OSBbE76i+AtJpZ8GKo=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jstransform/node_modules/source-map": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", + "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "dev": true, + "dependencies": { + "amdefine": ">=0.0.4" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/keypress": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/keypress/-/keypress-0.1.0.tgz", + "integrity": "sha1-SjGI1CkbZrT2XtuZ+AaqmuKTWSo=" + }, + "node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dependencies": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/livescript": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/livescript/-/livescript-1.5.0.tgz", + "integrity": "sha1-T+cSHEEhfkYI4zTrnL4XYuY+VWY=", + "dependencies": { + "optionator": "~0.8.1", + "prelude-ls": "~1.1.2", + "source-map": "^0.5.6" + }, + "bin": { + "lsc": "bin/lsc" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/livescript-loader": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/livescript-loader/-/livescript-loader-0.1.6.tgz", + "integrity": "sha1-6oDmq5pB8zDREAAAGZnuxnXN91U=", + "dev": true, + "dependencies": { + "livescript": "^1.4.0", + "loader-utils": "0.2.x" + } + }, + "node_modules/loader-utils": { + "version": "0.2.17", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz", + "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", + "dev": true, + "dependencies": { + "big.js": "^3.1.3", + "emojis-list": "^2.0.0", + "json5": "^0.5.0", + "object-assign": "^4.0.1" + } + }, + "node_modules/lodash": { + "version": "4.17.20", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", + "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==", + "dev": true + }, + "node_modules/lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, + "node_modules/longest": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", + "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/math-random": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.1.tgz", + "integrity": "sha1-izqsWIuKZuSXXjzepn97sylgH6w=", + "dev": true + }, + "node_modules/media-typer": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.2.0.tgz", + "integrity": "sha1-2KBlITrf6qLnYyGitt2jb/YzWYQ=", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/memory-fs": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.3.0.tgz", + "integrity": "sha1-e8xrYp46Q+hx1+Kaymrop/FcuyA=", + "dev": true, + "dependencies": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, + "node_modules/merge-descriptors": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-0.0.2.tgz", + "integrity": "sha1-w2pSp4FDdRPFcnXzndnTF1FKyMc=" + }, + "node_modules/method-override": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/method-override/-/method-override-2.1.3.tgz", + "integrity": "sha1-UR9BxPsdzNtqsYRNpdxuqBt8ETU=", + "dependencies": { + "debug": "1.0.4", + "methods": "1.1.0", + "parseurl": "~1.3.0", + "vary": "~1.0.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/method-override/node_modules/debug": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-1.0.4.tgz", + "integrity": "sha1-W5wla9VLbsAigxdvqKDt5tFUy/g=", + "dependencies": { + "ms": "0.6.2" + } + }, + "node_modules/method-override/node_modules/ms": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.6.2.tgz", + "integrity": "sha1-2JwhJMb9wTU9Zai3e/GqxLGTcIw=" + }, + "node_modules/method-override/node_modules/vary": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.0.1.tgz", + "integrity": "sha1-meSYFWaihhGN+yuBc1ffeZM3bRA=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/methods": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.0.tgz", + "integrity": "sha1-XcpO4S31L/OwVhRZhqjwHLyGQ28=" + }, + "node_modules/micromatch": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", + "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "dev": true, + "dependencies": { + "arr-diff": "^2.0.0", + "array-unique": "^0.2.1", + "braces": "^1.8.2", + "expand-brackets": "^0.1.4", + "extglob": "^0.3.1", + "filename-regex": "^2.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.1", + "kind-of": "^3.0.2", + "normalize-path": "^2.0.1", + "object.omit": "^2.0.0", + "parse-glob": "^3.0.4", + "regex-cache": "^0.4.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mime": { + "version": "1.2.11", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.2.11.tgz", + "integrity": "sha1-WCA+7Ybjpe8XrtK32evUfwpg3RA=" + }, + "node_modules/mime-db": { + "version": "1.35.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.35.0.tgz", + "integrity": "sha512-JWT/IcCTsB0Io3AhWUMjRqucrHSPsSf2xKLaRldJVULioggvkJvggZ3VXNNSRkCddE6D+BUI4HEIZIA2OjwIvg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.19", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.19.tgz", + "integrity": "sha512-P1tKYHVSZ6uFo26mtnve4HQFE3koh1UWVkp8YUC+ESBHe945xWSoXuHHiGarDqcEZ+whpCDnlNw5LON0kLo+sw==", + "dev": true, + "dependencies": { + "mime-db": "~1.35.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + }, + "node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mkdirp/node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "node_modules/morgan": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.2.3.tgz", + "integrity": "sha1-Ow8XBN+QJVpUJZGrrNeXiRqMQKE=", + "dependencies": { + "basic-auth": "1.0.0", + "bytes": "1.0.0", + "depd": "0.4.4", + "on-finished": "2.1.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/multiparty": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/multiparty/-/multiparty-3.3.2.tgz", + "integrity": "sha1-Nd5oBNwZZD5SSfPT473GyM4wHT8=", + "dependencies": { + "readable-stream": "~1.1.9", + "stream-counter": "~0.2.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/multiparty/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/mz": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-1.3.0.tgz", + "integrity": "sha1-BvCT/dmVagbTfhsegTROJ0eMQvA=", + "dependencies": { + "native-or-bluebird": "1", + "thenify": "3", + "thenify-all": "1" + } + }, + "node_modules/native-or-bluebird": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/native-or-bluebird/-/native-or-bluebird-1.1.2.tgz", + "integrity": "sha1-OSHhECMtHreQ89rGG7NwUxx9NW4=", + "deprecated": "'native-or-bluebird' is deprecated. Please use 'any-promise' instead." + }, + "node_modules/negotiator": { + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.4.7.tgz", + "integrity": "sha1-pBYPcXfsgGc4Yx0NMFIyXaQqvcg=", + "engines": { + "node": "*" + } + }, + "node_modules/newify": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/newify/-/newify-1.1.9.tgz", + "integrity": "sha1-P1mb0dRKTDiFGhvSW7tvfE1y2P8=", + "dev": true + }, + "node_modules/next-tick": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-0.2.2.tgz", + "integrity": "sha1-ddpKkn7liH45BliABltzNkE7MQ0=", + "dev": true + }, + "node_modules/node-libs-browser": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-0.7.0.tgz", + "integrity": "sha1-PicsCBnjCJNeJmdECNevDhSRuDs=", + "dev": true, + "dependencies": { + "assert": "^1.1.1", + "browserify-zlib": "^0.1.4", + "buffer": "^4.9.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "3.3.0", + "domain-browser": "^1.1.1", + "events": "^1.0.0", + "https-browserify": "0.0.1", + "os-browserify": "^0.2.0", + "path-browserify": "0.0.0", + "process": "^0.11.0", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.0.5", + "stream-browserify": "^2.0.1", + "stream-http": "^2.3.1", + "string_decoder": "^0.10.25", + "timers-browserify": "^2.0.2", + "tty-browserify": "0.0.0", + "url": "^0.11.0", + "util": "^0.10.3", + "vm-browserify": "0.0.4" + } + }, + "node_modules/node-uuid": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.1.tgz", + "integrity": "sha1-Oa71EOWImj3KnIlbUGxzquG6wEg=", + "deprecated": "Use uuid module instead" + }, + "node_modules/normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "dependencies": { + "remove-trailing-separator": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-component": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz", + "integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=" + }, + "node_modules/object.omit": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", + "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "dev": true, + "dependencies": { + "for-own": "^0.1.4", + "is-extendable": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/on-finished": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.1.0.tgz", + "integrity": "sha1-DFOfCSkej/rd4MiiWFD7LO3HAi0=", + "dependencies": { + "ee-first": "1.0.5" + } + }, + "node_modules/on-headers": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz", + "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/open": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/open/-/open-0.0.5.tgz", + "integrity": "sha1-QsPhjslUZra/DcQvOilFw/DK2Pw=", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/optimist": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", + "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "dependencies": { + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" + } + }, + "node_modules/optimist/node_modules/wordwrap": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", + "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/optionator": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", + "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "dependencies": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.4", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "wordwrap": "~1.0.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/options": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/options/-/options-0.0.6.tgz", + "integrity": "sha1-7CLTEoBrtT5zF3Pnza788cZDEo8=", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/optparse": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/optparse/-/optparse-1.0.3.tgz", + "integrity": "sha1-L/SaPWkbkLC5ob6RF/KSNz6xvWY=", + "engines": { + "node": "*" + } + }, + "node_modules/original": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz", + "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==", + "dev": true, + "dependencies": { + "url-parse": "^1.4.3" + } + }, + "node_modules/os-browserify": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.2.1.tgz", + "integrity": "sha1-Y/xMzuXS13Y9Jrv4YBB45sLgBE8=", + "dev": true + }, + "node_modules/pako": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", + "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=", + "dev": true + }, + "node_modules/parse-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", + "dev": true, + "dependencies": { + "glob-base": "^0.3.0", + "is-dotfile": "^1.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/parsejson": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/parsejson/-/parsejson-0.0.1.tgz", + "integrity": "sha1-mxDGwNglq1ieaFFTgm3go7oni8w=", + "dependencies": { + "better-assert": "~1.0.0" + } + }, + "node_modules/parseqs": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.2.tgz", + "integrity": "sha1-nf5wss3aw4i95PNbHyQPpYrb5sc=", + "dependencies": { + "better-assert": "~1.0.0" + } + }, + "node_modules/parseuri": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.2.tgz", + "integrity": "sha1-20GHjy1pZHGL6HCzFAlz2Ak74VY=", + "dependencies": { + "better-assert": "~1.0.0" + } + }, + "node_modules/parseurl": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", + "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", + "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=", + "dev": true + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", + "dev": true + }, + "node_modules/pause": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz", + "integrity": "sha1-HUCLP9t2kjuVQ9lvtMnf1TXZy10=" + }, + "node_modules/pbkdf2-compat": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pbkdf2-compat/-/pbkdf2-compat-2.0.1.tgz", + "integrity": "sha1-tuDI+plJTZTgURV1gCpZpcFC8og=", + "dev": true + }, + "node_modules/prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/preserve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/printj": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/printj/-/printj-1.1.2.tgz", + "integrity": "sha512-zA2SmoLaxZyArQTOPj5LXecR+RagfPSU5Kw1qP+jkWeNlrq+eJZyY2oS68SU1Z/7/myXM4lo9716laOFAVStCQ==", + "bin": { + "printj": "bin/printj.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true + }, + "node_modules/proxy-addr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-1.0.1.tgz", + "integrity": "sha1-x8Vm1etOP61n7rnHfFVYzMObiKg=", + "dependencies": { + "ipaddr.js": "0.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "dev": true + }, + "node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "node_modules/q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", + "dev": true, + "engines": { + "node": ">=0.6.0", + "teleport": ">=0.2.0" + } + }, + "node_modules/qs": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-2.2.2.tgz", + "integrity": "sha1-3+eD8YVLGsKzreknda0D4n4DIYw=" + }, + "node_modules/querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", + "dev": true, + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", + "dev": true, + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/querystringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.0.0.tgz", + "integrity": "sha512-eTPo5t/4bgaMNZxyjWx6N2a6AuE0mq51KWvpc7nU/MAqixcI6v6KrGUKES0HaomdnolQBBXU/++X6/QQ9KL4tw==", + "dev": true + }, + "node_modules/randomatic": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.0.tgz", + "integrity": "sha512-KnGPVE0lo2WoXxIZ7cPR8YBpiol4gsSuOwDSg410oHh80ZMp5EiypNqL2K4Z77vJn6lB5rap7IkAmcUlalcnBQ==", + "dev": true, + "dependencies": { + "is-number": "^4.0.0", + "kind-of": "^6.0.0", + "math-random": "^1.0.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/randomatic/node_modules/is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/randomatic/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", + "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", + "dev": true, + "dependencies": { + "bytes": "3.0.0", + "http-errors": "1.6.2", + "iconv-lite": "0.4.19", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-body/node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-body/node_modules/depd": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", + "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body/node_modules/http-errors": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", + "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", + "dev": true, + "dependencies": { + "depd": "1.1.1", + "inherits": "2.0.3", + "setprototypeof": "1.0.3", + "statuses": ">= 1.3.1 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body/node_modules/iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/raw-body/node_modules/setprototypeof": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", + "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=", + "dev": true + }, + "node_modules/react": { + "version": "0.12.2", + "resolved": "https://registry.npmjs.org/react/-/react-0.12.2.tgz", + "integrity": "sha1-HE8LCIGBRu6rTwqzklfgqlICfgA=", + "dev": true, + "dependencies": { + "envify": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-basic-tabs": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/react-basic-tabs/-/react-basic-tabs-1.0.3.tgz", + "integrity": "sha1-uET+9Iz3xkXPY1XxzAejrl0VcZA=", + "dev": true, + "dependencies": { + "copy-utils": "^1.0.0", + "functionally": "^0.6.2", + "react": "^0.12.0" + } + }, + "node_modules/react-hot-loader": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/react-hot-loader/-/react-hot-loader-0.5.0.tgz", + "integrity": "sha1-vQN47eLhWd0X/LJ6HZ5xELkRsD8=", + "deprecated": "React Hot Loader 1.1 has been released with support for next versions of React and ES6 classes. See https://github.com/gaearon/react-hot-loader/blob/master/docs/README.md#migrating-to-10", + "dev": true, + "dependencies": { + "next-tick": "0.2.2", + "source-map": "0.1.40" + } + }, + "node_modules/react-hot-loader/node_modules/source-map": { + "version": "0.1.40", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.40.tgz", + "integrity": "sha1-fg7knsBFKqmsK5OtWuVO8z6Cs38=", + "dev": true, + "dependencies": { + "amdefine": ">=0.0.4" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/readable-stream/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "node_modules/readable-stream/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/readdirp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", + "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "minimatch": "^3.0.2", + "readable-stream": "^2.0.2", + "set-immediate-shim": "^1.0.1" + }, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/recast": { + "version": "0.11.23", + "resolved": "https://registry.npmjs.org/recast/-/recast-0.11.23.tgz", + "integrity": "sha1-RR/TAEqx5N+bTktmN2sqIZEkYtM=", + "dev": true, + "dependencies": { + "ast-types": "0.9.6", + "esprima": "~3.1.0", + "private": "~0.1.5", + "source-map": "~0.5.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/recast/node_modules/esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/redis": { + "version": "0.12.1", + "resolved": "https://registry.npmjs.org/redis/-/redis-0.12.1.tgz", + "integrity": "sha1-ZN92rQ/IrOuuvSoGReikj6xJGF4=" + }, + "node_modules/reduce-component": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/reduce-component/-/reduce-component-1.0.1.tgz", + "integrity": "sha1-4Mk1QsV0UhvqE98PlIjtgqt3xdo=", + "dev": true + }, + "node_modules/regex-cache": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", + "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "dev": true, + "dependencies": { + "is-equal-shallow": "^0.1.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, + "node_modules/repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", + "dev": true + }, + "node_modules/response-time": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/response-time/-/response-time-2.0.1.tgz", + "integrity": "sha1-xtLLrerEyyUbIQFv4YJkDAKv80M=", + "dependencies": { + "on-headers": "~1.0.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/right-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", + "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", + "dev": true, + "dependencies": { + "align-text": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ripemd160": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-0.2.0.tgz", + "integrity": "sha1-K/GYveFnys+lHAqSjoS2i74XH84=", + "dev": true + }, + "node_modules/rndm": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/rndm/-/rndm-1.1.1.tgz", + "integrity": "sha1-7870N0Ah94tj3mImtZhRICadZPE=" + }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/scmp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/scmp/-/scmp-1.0.0.tgz", + "integrity": "sha1-oLJyw/xykvdxFWRvAGGLAmJRTgQ=", + "deprecated": "scmp v2 uses improved core crypto comparison since Node v6.6.0" + }, + "node_modules/send": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", + "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.6.2", + "mime": "1.4.1", + "ms": "2.0.0", + "on-finished": "~2.3.0", + "range-parser": "~1.2.0", + "statuses": "~1.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/send/node_modules/destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "dev": true + }, + "node_modules/send/node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true + }, + "node_modules/send/node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true + }, + "node_modules/send/node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/send/node_modules/mime": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", + "dev": true, + "bin": { + "mime": "cli.js" + } + }, + "node_modules/send/node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/serve-favicon": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/serve-favicon/-/serve-favicon-2.0.1.tgz", + "integrity": "sha1-SCaXXZ8XPKOkFY6WmBYfdd7Hr+w=", + "dependencies": { + "fresh": "0.2.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", + "dev": true, + "dependencies": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/node_modules/accepts": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", + "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", + "dev": true, + "dependencies": { + "mime-types": "~2.1.18", + "negotiator": "0.6.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-index/node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true + }, + "node_modules/serve-index/node_modules/negotiator": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", + "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-static": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", + "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", + "dev": true, + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.2", + "send": "0.16.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-static/node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true + }, + "node_modules/set-immediate-shim": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", + "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "dev": true + }, + "node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + }, + "node_modules/sha.js": { + "version": "2.2.6", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.2.6.tgz", + "integrity": "sha1-F93t3F9yL7ZlAWWIlUYZd4ZzFbo=", + "dev": true, + "bin": { + "sha.js": "bin.js" + } + }, + "node_modules/socialcalc": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/socialcalc/-/socialcalc-2.3.0.tgz", + "integrity": "sha512-hkK5c7eRRGzOiRNPFCQ/kzv2wqOSFaD4AtYag962r0jV0mlyhTQ7xvs3r14MB3Xbo2hAWq5AKYddrtqvuWvDAA==" + }, + "node_modules/socket.io": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-1.0.6.tgz", + "integrity": "sha1-tWZTKIja46yQWKEvKUAV69+oCEo=", + "dependencies": { + "debug": "0.7.4", + "engine.io": "1.3.1", + "has-binary-data": "0.1.1", + "socket.io-adapter": "0.2.0", + "socket.io-client": "1.0.6", + "socket.io-parser": "2.2.0" + } + }, + "node_modules/socket.io-adapter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-0.2.0.tgz", + "integrity": "sha1-vTkym4lhNxeH4k80WwdOyc8ADjM=", + "dependencies": { + "debug": "0.7.4", + "socket.io-parser": "2.1.2" + } + }, + "node_modules/socket.io-adapter/node_modules/debug": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-0.7.4.tgz", + "integrity": "sha1-BuHqgILCyxTjmAbiLi9vdX+Srzk=", + "engines": { + "node": "*" + } + }, + "node_modules/socket.io-adapter/node_modules/emitter": { + "version": "1.0.1", + "resolved": "http://github.com/component/emitter/archive/1.0.1.tar.gz", + "integrity": "sha512-k3Da+QreMb9waaGCHNAHox5QqxnZEYlQmvIVYwQibrI6OpIRyIIyFGgDV5dXRLr1AJ32JLqEh0VxQEq20dFskw==", + "dependencies": { + "indexof": "0.0.1" + } + }, + "node_modules/socket.io-adapter/node_modules/socket.io-parser": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-2.1.2.tgz", + "integrity": "sha1-h2ZVue3VVcW99zAc7fMKQ2xnuLA=", + "dependencies": { + "debug": "0.7.4", + "emitter": "http://github.com/component/emitter/archive/1.0.1.tar.gz", + "isarray": "0.0.1", + "json3": "3.2.6" + } + }, + "node_modules/socket.io-client": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-1.0.6.tgz", + "integrity": "sha1-yGyz5QerL5baRQC9NPz0ah6d/l4=", + "dependencies": { + "component-bind": "1.0.0", + "component-emitter": "1.1.2", + "debug": "0.7.4", + "engine.io-client": "1.3.1", + "has-binary-data": "0.1.1", + "indexof": "0.0.1", + "object-component": "0.0.3", + "parseuri": "0.0.2", + "socket.io-parser": "2.2.0", + "to-array": "0.1.3" + } + }, + "node_modules/socket.io-client/node_modules/debug": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-0.7.4.tgz", + "integrity": "sha1-BuHqgILCyxTjmAbiLi9vdX+Srzk=", + "engines": { + "node": "*" + } + }, + "node_modules/socket.io-parser": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-2.2.0.tgz", + "integrity": "sha1-JglgH1nmp/q0NqU749Mz+7/L0wo=", + "dependencies": { + "debug": "0.7.4", + "emitter": "http://github.com/component/emitter/archive/1.0.1.tar.gz", + "isarray": "0.0.1", + "json3": "3.2.6" + } + }, + "node_modules/socket.io-parser/node_modules/debug": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-0.7.4.tgz", + "integrity": "sha1-BuHqgILCyxTjmAbiLi9vdX+Srzk=", + "engines": { + "node": "*" + } + }, + "node_modules/socket.io-parser/node_modules/emitter": { + "version": "1.0.1", + "resolved": "http://github.com/component/emitter/archive/1.0.1.tar.gz", + "integrity": "sha512-k3Da+QreMb9waaGCHNAHox5QqxnZEYlQmvIVYwQibrI6OpIRyIIyFGgDV5dXRLr1AJ32JLqEh0VxQEq20dFskw==", + "dependencies": { + "indexof": "0.0.1" + } + }, + "node_modules/socket.io/node_modules/debug": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-0.7.4.tgz", + "integrity": "sha1-BuHqgILCyxTjmAbiLi9vdX+Srzk=", + "engines": { + "node": "*" + } + }, + "node_modules/sockjs": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.19.tgz", + "integrity": "sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw==", + "dev": true, + "dependencies": { + "faye-websocket": "^0.10.0", + "uuid": "^3.0.1" + } + }, + "node_modules/sockjs-client": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.1.5.tgz", + "integrity": "sha1-G7fA9yIsQPQq3xT0RCy9Eml3GoM=", + "dev": true, + "dependencies": { + "debug": "^2.6.6", + "eventsource": "0.1.6", + "faye-websocket": "~0.11.0", + "inherits": "^2.0.1", + "json3": "^3.3.2", + "url-parse": "^1.1.8" + } + }, + "node_modules/sockjs-client/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/sockjs-client/node_modules/faye-websocket": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.1.tgz", + "integrity": "sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg=", + "dev": true, + "dependencies": { + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/sockjs-client/node_modules/json3": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.2.tgz", + "integrity": "sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE=", + "deprecated": "Please use the native JSON object instead of JSON 3", + "dev": true + }, + "node_modules/source-list-map": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-0.1.8.tgz", + "integrity": "sha1-xVCyq1Qn9rPyH1r+rYjE9Vh7IQY=", + "dev": true + }, + "node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ssf": { + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/ssf/-/ssf-0.10.2.tgz", + "integrity": "sha512-rDhAPm9WyIsY8eZEKyE8Qsotb3j/wBdvMWBUsOhJdfhKGLfQidRjiBUV0y/MkyCLiXQ38FG6LWW/VYUtqlIDZQ==", + "dependencies": { + "frac": "~1.1.2" + }, + "bin": { + "ssf": "bin/ssf.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/statuses": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/stream-browserify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", + "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", + "dev": true, + "dependencies": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + } + }, + "node_modules/stream-cache": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/stream-cache/-/stream-cache-0.0.2.tgz", + "integrity": "sha1-GsWtaDJCjKVWZ9ve45Xa1ObbEY8=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/stream-counter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/stream-counter/-/stream-counter-0.2.0.tgz", + "integrity": "sha1-3tJmVWMZyLDiIoErnPOyb6fZR94=", + "dependencies": { + "readable-stream": "~1.1.8" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/stream-counter/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/stream-http": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "dev": true, + "dependencies": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + } + }, + "node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + }, + "node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/style-loader": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-0.8.3.tgz", + "integrity": "sha1-9Pkut9tjdodI8VBlzWcA9aHIU1c=", + "dev": true, + "dependencies": { + "loader-utils": "^0.2.5" + } + }, + "node_modules/stylus-loader": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-3.0.2.tgz", + "integrity": "sha512-+VomPdZ6a0razP+zinir61yZgpw2NfljeSsdUF5kJuEzlo3khXhY19Fn6l8QQz1GRJGtMCo8nG5C04ePyV7SUA==", + "dev": true, + "dependencies": { + "loader-utils": "^1.0.2", + "lodash.clonedeep": "^4.5.0", + "when": "~3.6.x" + }, + "peerDependencies": { + "stylus": ">=0.52.4" + } + }, + "node_modules/stylus-loader/node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/stylus-loader/node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/stylus-loader/node_modules/loader-utils": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", + "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^2.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/stylus-loader/node_modules/minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "node_modules/superagent": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-0.21.0.tgz", + "integrity": "sha1-+xUCeYR1HucVIgDmzSHNbhml3oc=", + "deprecated": "Please upgrade to v7.0.2+ of superagent. We have fixed numerous issues with streams, form-data, attach(), filesystem errors not bubbling up (ENOENT on attach()), and all tests are now passing. See the releases tab for more information at .", + "dev": true, + "dependencies": { + "component-emitter": "1.1.2", + "cookiejar": "2.0.1", + "debug": "2", + "extend": "~1.2.1", + "form-data": "0.1.3", + "formidable": "1.0.14", + "methods": "1.0.1", + "mime": "1.2.11", + "qs": "1.2.0", + "readable-stream": "1.0.27-1", + "reduce-component": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/superagent/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/superagent/node_modules/methods": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.0.1.tgz", + "integrity": "sha1-dbyRlD3/19oDfPPusO1zoAN80Us=", + "dev": true + }, + "node_modules/superagent/node_modules/qs": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-1.2.0.tgz", + "integrity": "sha1-7Qeb4oaCFH5v2aNMwrDB4OxkU+4=", + "dev": true + }, + "node_modules/superagent/node_modules/readable-stream": { + "version": "1.0.27-1", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.27-1.tgz", + "integrity": "sha1-a2eYPCA1fO/QfwFlABoW1xDZEHg=", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "dependencies": { + "has-flag": "^1.0.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/tapable": { + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-0.1.10.tgz", + "integrity": "sha1-KcNXB8K3DlDQdIK10gLo7URtr9Q=", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/thenify": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.0.tgz", + "integrity": "sha1-5p44obq+lpsBCCB5eLn2K4hgSDk=", + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=", + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "node_modules/time-stamp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-2.1.0.tgz", + "integrity": "sha512-lJbq6KsFhZJtN3fPUVje1tq/hHsJOKUUcUj/MGCiQR6qWBDcyi5kxL9J7/RnaEChCn0+L/DUN2WvemDrkk4i3Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/timers-browserify": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.10.tgz", + "integrity": "sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg==", + "dev": true, + "dependencies": { + "setimmediate": "^1.0.4" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/tinycolor": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/tinycolor/-/tinycolor-0.0.1.tgz", + "integrity": "sha1-MgtaUtg6u1l42Bo+iH1K77FaYWQ=", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/to-array": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.3.tgz", + "integrity": "sha1-1F2txjY0F/YPKEdP6lDs3btPSZE=" + }, + "node_modules/to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", + "dev": true + }, + "node_modules/tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", + "dev": true + }, + "node_modules/type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dependencies": { + "prelude-ls": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-is": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.3.2.tgz", + "integrity": "sha1-TypdxYd1yhYwJQr8cYb4s2MJ0bs=", + "dependencies": { + "media-typer": "0.2.0", + "mime-types": "~1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/type-is/node_modules/mime-types": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-1.0.2.tgz", + "integrity": "sha1-mVrhOSq4r/y/yyZB3QVOlDwNXc4=", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + }, + "node_modules/uglify-js": { + "version": "3.15.3", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.15.3.tgz", + "integrity": "sha512-6iCVm2omGJbsu3JWac+p6kUiOpg3wFO2f8lIXjfEb8RrmLjzog1wTPMmwKB7swfzzqxj9YM+sGUM++u1qN4qJg==", + "dev": true, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/uglify-to-browserify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", + "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=" + }, + "node_modules/uid-safe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-1.1.0.tgz", + "integrity": "sha1-WNbF2r+N+9jVKDSDmAbAP9YUMjI=", + "dependencies": { + "base64-url": "1.2.1", + "native-or-bluebird": "~1.1.2" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/underscore": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz", + "integrity": "sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==" + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "dependencies": { + "punycode": "1.3.2", + "querystring": "0.2.0" + } + }, + "node_modules/url-parse": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.3.tgz", + "integrity": "sha512-rh+KuAW36YKo0vClhQzLLveoj8FwPJNu65xLb7Mrt+eZht0IPT0IXgSv8gcMegZ6NvjJUALf6Mf25POlMwD1Fw==", + "dev": true, + "dependencies": { + "querystringify": "^2.0.0", + "requires-port": "^1.0.0" + } + }, + "node_modules/url/node_modules/punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + }, + "node_modules/utf8": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/utf8/-/utf8-2.0.0.tgz", + "integrity": "sha1-ec5Z7O2HSAnKuacfxxAsfUXUEY0=" + }, + "node_modules/util": { + "version": "0.10.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", + "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", + "dev": true, + "dependencies": { + "inherits": "2.0.3" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "node_modules/utils-merge": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.0.tgz", + "integrity": "sha1-ApT7kiu5N1FTVBxPcJYjHyh8ivg=", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "dev": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/uuid-pure": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/uuid-pure/-/uuid-pure-1.0.10.tgz", + "integrity": "sha1-cvIxtZz2w69en2unuWOpGG0Qm10=", + "engines": { + "node": "*" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vhost": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/vhost/-/vhost-2.0.0.tgz", + "integrity": "sha1-HiZ3C9D86GxAlFWR5vKExokXkeI=", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/vm-browserify": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", + "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", + "dev": true, + "dependencies": { + "indexof": "0.0.1" + } + }, + "node_modules/voc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/voc/-/voc-1.2.0.tgz", + "integrity": "sha512-BOuDjFFYvJdZO6e/N65AlaDItXo2TgyLjeyRYcqgAPkXpp5yTJcvkL2n+syO1r9Qc5g96tfBD2tuiMhYDmaGcA==", + "bin": { + "voc": "voc.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/watchpack": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-0.2.9.tgz", + "integrity": "sha1-Yuqkq15bo1/fwBgnVibjwPXj+ws=", + "dev": true, + "dependencies": { + "async": "^0.9.0", + "chokidar": "^1.0.0", + "graceful-fs": "^4.1.2" + } + }, + "node_modules/watchpack/node_modules/async": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", + "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=", + "dev": true + }, + "node_modules/webpack": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-1.15.0.tgz", + "integrity": "sha1-T/MfU9sDM55VFkqdRo7gMklo/pg=", + "dev": true, + "dependencies": { + "acorn": "^3.0.0", + "async": "^1.3.0", + "clone": "^1.0.2", + "enhanced-resolve": "~0.9.0", + "interpret": "^0.6.4", + "loader-utils": "^0.2.11", + "memory-fs": "~0.3.0", + "mkdirp": "~0.5.0", + "node-libs-browser": "^0.7.0", + "optimist": "~0.6.0", + "supports-color": "^3.1.0", + "tapable": "~0.1.8", + "uglify-js": "~2.7.3", + "watchpack": "^0.2.1", + "webpack-core": "~0.6.9" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/webpack-core": { + "version": "0.6.9", + "resolved": "https://registry.npmjs.org/webpack-core/-/webpack-core-0.6.9.tgz", + "integrity": "sha1-/FcViMhVjad76e+23r3Fo7FyvcI=", + "dev": true, + "dependencies": { + "source-list-map": "~0.1.7", + "source-map": "~0.4.1" + }, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/webpack-core/node_modules/source-map": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", + "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "dev": true, + "dependencies": { + "amdefine": ">=0.0.4" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/webpack-dev-middleware": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-1.12.2.tgz", + "integrity": "sha512-FCrqPy1yy/sN6U/SaEZcHKRXGlqU0DUaEBL45jkUYoB8foVb6wCnbIJ1HKIx+qUFTW+3JpVcCJCxZ8VATL4e+A==", + "dev": true, + "dependencies": { + "memory-fs": "~0.4.1", + "mime": "^1.5.0", + "path-is-absolute": "^1.0.0", + "range-parser": "^1.0.3", + "time-stamp": "^2.0.0" + }, + "engines": { + "node": ">=0.6" + }, + "peerDependencies": { + "webpack": "^1.0.0 || ^2.0.0 || ^3.0.0" + } + }, + "node_modules/webpack-dev-middleware/node_modules/memory-fs": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", + "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "dev": true, + "dependencies": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, + "node_modules/webpack-dev-middleware/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/webpack-dev-server": { + "version": "1.16.5", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-1.16.5.tgz", + "integrity": "sha1-DL1fLSrI1OWTqs1clwLnu9XlmJI=", + "dev": true, + "dependencies": { + "compression": "^1.5.2", + "connect-history-api-fallback": "^1.3.0", + "express": "^4.13.3", + "http-proxy-middleware": "~0.17.1", + "open": "0.0.5", + "optimist": "~0.6.1", + "serve-index": "^1.7.2", + "sockjs": "^0.3.15", + "sockjs-client": "^1.0.3", + "stream-cache": "~0.0.1", + "strip-ansi": "^3.0.0", + "supports-color": "^3.1.1", + "webpack-dev-middleware": "^1.10.2" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "peerDependencies": { + "webpack": ">=1.3.0 <3" + } + }, + "node_modules/webpack-dev-server/node_modules/accepts": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", + "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", + "dev": true, + "dependencies": { + "mime-types": "~2.1.18", + "negotiator": "0.6.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/webpack-dev-server/node_modules/cookie": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/webpack-dev-server/node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", + "dev": true + }, + "node_modules/webpack-dev-server/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/webpack-dev-server/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/webpack-dev-server/node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true + }, + "node_modules/webpack-dev-server/node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true + }, + "node_modules/webpack-dev-server/node_modules/express": { + "version": "4.16.3", + "resolved": "https://registry.npmjs.org/express/-/express-4.16.3.tgz", + "integrity": "sha1-avilAjUNsyRuzEvs9rWjTSL37VM=", + "dev": true, + "dependencies": { + "accepts": "~1.3.5", + "array-flatten": "1.1.1", + "body-parser": "1.18.2", + "content-disposition": "0.5.2", + "content-type": "~1.0.4", + "cookie": "0.3.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.1.1", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.3", + "qs": "6.5.1", + "range-parser": "~1.2.0", + "safe-buffer": "5.1.1", + "send": "0.16.2", + "serve-static": "1.13.2", + "setprototypeof": "1.1.0", + "statuses": "~1.4.0", + "type-is": "~1.6.16", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/webpack-dev-server/node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/webpack-dev-server/node_modules/ipaddr.js": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.0.tgz", + "integrity": "sha1-6qM9bd16zo9/b+DJygRA5wZzix4=", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/webpack-dev-server/node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/webpack-dev-server/node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", + "dev": true + }, + "node_modules/webpack-dev-server/node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/webpack-dev-server/node_modules/negotiator": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", + "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/webpack-dev-server/node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/webpack-dev-server/node_modules/proxy-addr": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.4.tgz", + "integrity": "sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA==", + "dev": true, + "dependencies": { + "forwarded": "~0.1.2", + "ipaddr.js": "1.8.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/webpack-dev-server/node_modules/qs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/webpack-dev-server/node_modules/safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", + "dev": true + }, + "node_modules/webpack-dev-server/node_modules/type-is": { + "version": "1.6.16", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", + "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", + "dev": true, + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.18" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/webpack-dev-server/node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "dev": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/webpack/node_modules/acorn": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", + "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/webpack/node_modules/async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + }, + "node_modules/webpack/node_modules/uglify-js": { + "version": "2.7.5", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.7.5.tgz", + "integrity": "sha1-RhLAx7qu4rp8SH3kkErhIgefLKg=", + "dev": true, + "dependencies": { + "async": "~0.2.6", + "source-map": "~0.5.1", + "uglify-to-browserify": "~1.0.0", + "yargs": "~3.10.0" + }, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/webpack/node_modules/uglify-js/node_modules/async": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", + "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=", + "dev": true + }, + "node_modules/websocket-driver": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.0.tgz", + "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=", + "dev": true, + "dependencies": { + "http-parser-js": ">=0.4.0", + "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/websocket-extensions": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz", + "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/when": { + "version": "3.6.4", + "resolved": "https://registry.npmjs.org/when/-/when-3.6.4.tgz", + "integrity": "sha1-RztRfsFZ4rhQBUl6E5g/CVQS404=", + "dev": true + }, + "node_modules/window-size": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", + "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "node_modules/ws": { + "version": "0.4.31", + "resolved": "https://registry.npmjs.org/ws/-/ws-0.4.31.tgz", + "integrity": "sha1-WkhJ56nM0e1aga60hHyf7fMSKSc=", + "hasInstallScript": true, + "dependencies": { + "commander": "~0.6.1", + "nan": "~0.3.0", + "options": ">=0.0.5", + "tinycolor": "0.x" + }, + "bin": { + "wscat": "bin/wscat" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ws/node_modules/commander": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-0.6.1.tgz", + "integrity": "sha1-+mihT2qUXVTbvlDYzbMyDp47GgY=", + "engines": { + "node": ">= 0.4.x" + } + }, + "node_modules/ws/node_modules/nan": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/nan/-/nan-0.3.2.tgz", + "integrity": "sha1-DfGTXKsVNpB17xYK0olBB6oU3C0=" + }, + "node_modules/xlsjs": { + "version": "0.7.6", + "resolved": "https://registry.npmjs.org/xlsjs/-/xlsjs-0.7.6.tgz", + "integrity": "sha1-2IdUVpqrz47qcMwjlhtGJjSklWU=", + "deprecated": "xlsjs has been merged into xlsx", + "dependencies": { + "cfb": "~0.11.0", + "codepage": "", + "commander": "", + "exit-on-epipe": "", + "ssf": "~0.8.1" + }, + "bin": { + "xls": "bin/xls.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/xlsjs/node_modules/codepage": { + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/codepage/-/codepage-1.14.0.tgz", + "integrity": "sha1-jL4lSBMjVZ19MHVxsP/5HnodL5k=", + "dependencies": { + "commander": "~2.14.1", + "exit-on-epipe": "~1.0.1" + }, + "bin": { + "codepage": "bin/codepage.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/xlsjs/node_modules/codepage/node_modules/commander": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.14.1.tgz", + "integrity": "sha512-+YR16o3rK53SmWHU3rEM3tPAh2rwb1yPcQX5irVn7mb0gXbwuCCrnkbV5+PBfETdfg1vui07nM6PCG1zndcjQw==" + }, + "node_modules/xlsjs/node_modules/commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/xlsjs/node_modules/exit-on-epipe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz", + "integrity": "sha512-h2z5mrROTxce56S+pnvAV890uu7ls7f1kEvVGJbw1OlFH3/mlJ5bkXu0KRyW94v37zzHPiUd55iLn3DA7TjWpw==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/xlsjs/node_modules/frac": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/frac/-/frac-0.3.1.tgz", + "integrity": "sha1-V3Z3t/3L5vr3xGHxgB00E3zaQ1Q=", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/xlsjs/node_modules/ssf": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/ssf/-/ssf-0.8.2.tgz", + "integrity": "sha1-udTcahwbz3b4q/qW19dlb7Kr7NY=", + "dependencies": { + "colors": "0.6.2", + "frac": "0.3.1", + "voc": "" + }, + "bin": { + "ssf": "bin/ssf.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/xlsx": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/xlsx/-/xlsx-0.14.5.tgz", + "integrity": "sha512-s/5f4/mjeWREmIWZ+HtDfh/rnz51ar+dZ4LWKZU3u9VBx2zLdSIWTdXgoa52/pnZ9Oe/Vu1W1qzcKzLVe+lq4w==", + "dependencies": { + "adler-32": "~1.2.0", + "cfb": "^1.1.2", + "codepage": "~1.14.0", + "commander": "~2.17.1", + "crc-32": "~1.2.0", + "exit-on-epipe": "~1.0.1", + "ssf": "~0.10.2" + }, + "bin": { + "xlsx": "bin/xlsx.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/xlsx/node_modules/cfb": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/cfb/-/cfb-1.1.3.tgz", + "integrity": "sha512-joXBW0nMuwV9no7UTMiyVJnQL6XIU3ThXVjFUDHgl9MpILPOomyfaGqC290VELZ48bbQKZXnQ81UT5HouTxHsw==", + "dependencies": { + "adler-32": "~1.2.0", + "commander": "^2.16.0", + "crc-32": "~1.2.0", + "printj": "~1.1.2" + }, + "bin": { + "cfb": "bin/cfb.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/xoauth2": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/xoauth2/-/xoauth2-1.2.0.tgz", + "integrity": "sha1-8u76wRRyyXHqO8RuVU60sSMhRuU=" + }, + "node_modules/xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/yargs": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", + "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", + "dev": true, + "dependencies": { + "camelcase": "^1.0.2", + "cliui": "^2.1.0", + "decamelize": "^1.0.0", + "window-size": "0.1.0" + } + }, + "node_modules/zappajs": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/zappajs/-/zappajs-0.5.0.tgz", + "integrity": "sha1-HMeG0xwVWboYDwHKOt8eE8oCylw=", + "dependencies": { + "coffee-css": "0.0.5", + "coffeecup": "0.3.21", + "express": "3.16.9", + "methods": "1.1.0", + "node-uuid": "1.4.1", + "socket.io": "1.0.6", + "uglify-js": "2.4.15" + } + }, + "node_modules/zappajs/node_modules/optimist": { + "version": "0.3.7", + "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz", + "integrity": "sha1-yQlBrVnkJzMokjB00s8ufLxuwNk=", + "dependencies": { + "wordwrap": "~0.0.2" + } + }, + "node_modules/zappajs/node_modules/source-map": { + "version": "0.1.34", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.34.tgz", + "integrity": "sha1-p8/omux7FoLDsZjQrPtH19CQVms=", + "dependencies": { + "amdefine": ">=0.0.4" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/zappajs/node_modules/uglify-js": { + "version": "2.4.15", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.4.15.tgz", + "integrity": "sha1-ErxthDRfvDBuE/cHXWQ3qL9k1+M=", + "dependencies": { + "async": "~0.2.6", + "optimist": "~0.3.5", + "source-map": "0.1.34", + "uglify-to-browserify": "~1.0.0" + }, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/zappajs/node_modules/wordwrap": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", + "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "engines": { + "node": ">=0.4.0" + } + } + }, "dependencies": { "accepts": { "version": "1.0.7", @@ -418,7 +6363,7 @@ "resolved": "https://registry.npmjs.org/cfb/-/cfb-0.11.1.tgz", "integrity": "sha1-qW248nKmw/uZ27sj70EiP0i+Hqc=", "requires": { - "commander": "^6.2.1" + "commander": "" }, "dependencies": { "commander": { @@ -1564,24 +7509,32 @@ "dependencies": { "abbrev": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", "bundled": true, "dev": true, "optional": true }, "ansi-regex": { "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", "bundled": true, "dev": true, "optional": true }, "aproba": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", "bundled": true, "dev": true, "optional": true }, "are-we-there-yet": { "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", "bundled": true, "dev": true, "optional": true, @@ -1592,12 +7545,16 @@ }, "balanced-match": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", "bundled": true, "dev": true, "optional": true }, "brace-expansion": { "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "bundled": true, "dev": true, "optional": true, @@ -1608,36 +7565,46 @@ }, "chownr": { "version": "1.1.1", + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", "bundled": true, "dev": true, "optional": true }, "code-point-at": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", "bundled": true, "dev": true, "optional": true }, "concat-map": { "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "bundled": true, "dev": true, "optional": true }, "console-control-strings": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", "bundled": true, "dev": true, "optional": true }, "core-util-is": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", "bundled": true, "dev": true, "optional": true }, "debug": { "version": "4.1.1", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "bundled": true, "dev": true, "optional": true, @@ -1647,24 +7614,32 @@ }, "deep-extend": { "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", "bundled": true, "dev": true, "optional": true }, "delegates": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", "bundled": true, "dev": true, "optional": true }, "detect-libc": { "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=", "bundled": true, "dev": true, "optional": true }, "fs-minipass": { "version": "1.2.5", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", + "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", "bundled": true, "dev": true, "optional": true, @@ -1674,12 +7649,16 @@ }, "fs.realpath": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "bundled": true, "dev": true, "optional": true }, "gauge": { "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", "bundled": true, "dev": true, "optional": true, @@ -1696,6 +7675,7 @@ }, "glob": { "version": "7.1.3", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", "bundled": true, "dev": true, "optional": true, @@ -1710,12 +7690,16 @@ }, "has-unicode": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", "bundled": true, "dev": true, "optional": true }, "iconv-lite": { "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "bundled": true, "dev": true, "optional": true, @@ -1725,6 +7709,8 @@ }, "ignore-walk": { "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz", + "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", "bundled": true, "dev": true, "optional": true, @@ -1734,6 +7720,8 @@ }, "inflight": { "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "bundled": true, "dev": true, "optional": true, @@ -1744,18 +7732,24 @@ }, "inherits": { "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", "bundled": true, "dev": true, "optional": true }, "ini": { "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", "bundled": true, "dev": true, "optional": true }, "is-fullwidth-code-point": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "bundled": true, "dev": true, "optional": true, @@ -1765,12 +7759,16 @@ }, "isarray": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", "bundled": true, "dev": true, "optional": true }, "minimatch": { "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "bundled": true, "dev": true, "optional": true, @@ -1780,12 +7778,15 @@ }, "minimist": { "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", "bundled": true, "dev": true, "optional": true }, "minipass": { "version": "2.3.5", + "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", "bundled": true, "dev": true, "optional": true, @@ -1796,6 +7797,7 @@ }, "minizlib": { "version": "1.2.1", + "integrity": "sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==", "bundled": true, "dev": true, "optional": true, @@ -1805,6 +7807,8 @@ }, "mkdirp": { "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "bundled": true, "dev": true, "optional": true, @@ -1814,6 +7818,7 @@ }, "ms": { "version": "2.1.1", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", "bundled": true, "dev": true, "optional": true @@ -1827,6 +7832,7 @@ }, "needle": { "version": "2.3.0", + "integrity": "sha512-QBZu7aAFR0522EyaXZM0FZ9GLpq6lvQ3uq8gteiDUp7wKdy0lSd2hPlgFwVuW1CBkfEs9PfDQsQzZghLs/psdg==", "bundled": true, "dev": true, "optional": true, @@ -1838,6 +7844,7 @@ }, "node-pre-gyp": { "version": "0.12.0", + "integrity": "sha512-4KghwV8vH5k+g2ylT+sLTjy5wmUOb9vPhnM8NHvRf9dHmnW/CndrFXy2aRPaPST6dugXSdHXfeaHQm77PIz/1A==", "bundled": true, "dev": true, "optional": true, @@ -1856,6 +7863,8 @@ }, "nopt": { "version": "4.0.1", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", + "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", "bundled": true, "dev": true, "optional": true, @@ -1866,12 +7875,14 @@ }, "npm-bundled": { "version": "1.0.6", + "integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==", "bundled": true, "dev": true, "optional": true }, "npm-packlist": { "version": "1.4.1", + "integrity": "sha512-+TcdO7HJJ8peiiYhvPxsEDhF3PJFGUGRcFsGve3vxvxdcpO2Z4Z7rkosRM0kWj6LfbK/P0gu3dzk5RU1ffvFcw==", "bundled": true, "dev": true, "optional": true, @@ -1882,6 +7893,8 @@ }, "npmlog": { "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", "bundled": true, "dev": true, "optional": true, @@ -1894,18 +7907,24 @@ }, "number-is-nan": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", "bundled": true, "dev": true, "optional": true }, "object-assign": { "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", "bundled": true, "dev": true, "optional": true }, "once": { "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "bundled": true, "dev": true, "optional": true, @@ -1915,18 +7934,24 @@ }, "os-homedir": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", "bundled": true, "dev": true, "optional": true }, "os-tmpdir": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", "bundled": true, "dev": true, "optional": true }, "osenv": { "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", "bundled": true, "dev": true, "optional": true, @@ -1937,18 +7962,24 @@ }, "path-is-absolute": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "bundled": true, "dev": true, "optional": true }, "process-nextick-args": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", "bundled": true, "dev": true, "optional": true }, "rc": { "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", "bundled": true, "dev": true, "optional": true, @@ -1961,6 +7992,8 @@ "dependencies": { "minimist": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", "bundled": true, "dev": true, "optional": true @@ -1969,6 +8002,8 @@ }, "readable-stream": { "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "bundled": true, "dev": true, "optional": true, @@ -1984,6 +8019,7 @@ }, "rimraf": { "version": "2.6.3", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", "bundled": true, "dev": true, "optional": true, @@ -1993,62 +8029,79 @@ }, "safe-buffer": { "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "bundled": true, "dev": true, "optional": true }, "safer-buffer": { "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "bundled": true, "dev": true, "optional": true }, "sax": { "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", "bundled": true, "dev": true, "optional": true }, "semver": { "version": "5.7.0", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", "bundled": true, "dev": true, "optional": true }, "set-blocking": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", "bundled": true, "dev": true, "optional": true }, "signal-exit": { "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", "bundled": true, "dev": true, "optional": true }, - "string-width": { - "version": "1.0.2", + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "bundled": true, "dev": true, "optional": true, "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "safe-buffer": "~5.1.0" } }, - "string_decoder": { - "version": "1.1.1", + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "bundled": true, "dev": true, "optional": true, "requires": { - "safe-buffer": "~5.1.0" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "strip-ansi": { "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "bundled": true, "dev": true, "optional": true, @@ -2058,12 +8111,15 @@ }, "strip-json-comments": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", "bundled": true, "dev": true, "optional": true }, "tar": { "version": "4.4.8", + "integrity": "sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ==", "bundled": true, "dev": true, "optional": true, @@ -2079,12 +8135,16 @@ }, "util-deprecate": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", "bundled": true, "dev": true, "optional": true }, "wide-align": { "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", "bundled": true, "dev": true, "optional": true, @@ -2094,12 +8154,15 @@ }, "wrappy": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", "bundled": true, "dev": true, "optional": true }, "yallist": { "version": "3.0.3", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", "bundled": true, "dev": true, "optional": true @@ -2164,9 +8227,9 @@ "integrity": "sha1-uCObri8HJLZaqvLnTp6xWgTbUOs=", "requires": { "babyparse": "0.2.1", - "codepage": "^1.14.0", - "commander": "^6.2.1", - "exit-on-epipe": "^1.0.1", + "codepage": "", + "commander": "", + "exit-on-epipe": "", "ssf": "0.8.2" }, "dependencies": { @@ -2208,7 +8271,7 @@ "requires": { "colors": "0.6.2", "frac": "0.3.1", - "voc": "^1.2.0" + "voc": "" } } } @@ -2457,9 +8520,9 @@ "resolved": "https://registry.npmjs.org/j/-/j-0.4.5.tgz", "integrity": "sha1-As8p8d2+VOUnJj0HVNbo0hemBk4=", "requires": { - "commander": "^6.2.1", - "concat-stream": "^2.0.0", - "exit-on-epipe": "^1.0.1", + "commander": "", + "concat-stream": "", + "exit-on-epipe": "", "harb": "~0.1.1", "xlsjs": "~0.7.6", "xlsx": "~0.9.1" @@ -2470,9 +8533,9 @@ "resolved": "https://registry.npmjs.org/adler-32/-/adler-32-1.0.0.tgz", "integrity": "sha1-KHKKcXVvYpZm3RZTzYB5Op3xhlE=", "requires": { - "concat-stream": "^2.0.0", - "exit-on-epipe": "^1.0.1", - "printj": "^1.2.2" + "concat-stream": "", + "exit-on-epipe": "", + "printj": "" } }, "codepage": { @@ -2480,10 +8543,10 @@ "resolved": "https://registry.npmjs.org/codepage/-/codepage-1.8.1.tgz", "integrity": "sha1-8aAJ1SYdwnVGKLrLb7vw5uKr/6o=", "requires": { - "commander": "^6.2.1", - "concat-stream": "^2.0.0", - "exit-on-epipe": "^1.0.1", - "voc": "^1.2.0" + "commander": "", + "concat-stream": "", + "exit-on-epipe": "", + "voc": "" } }, "commander": { @@ -2496,8 +8559,8 @@ "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.0.2.tgz", "integrity": "sha1-CVB5hO6bzOO9G4hh8N6KsQroGH0=", "requires": { - "exit-on-epipe": "^1.0.1", - "printj": "^1.2.2" + "exit-on-epipe": "", + "printj": "" } }, "exit-on-epipe": { @@ -2510,7 +8573,7 @@ "resolved": "https://registry.npmjs.org/frac/-/frac-1.0.6.tgz", "integrity": "sha1-mg38I5VoUqizIGI7688b6eoEgik=", "requires": { - "voc": "^1.2.0" + "voc": "" } }, "printj": { @@ -2525,7 +8588,7 @@ "requires": { "colors": "0.6.2", "frac": "~1.0.6", - "voc": "^1.2.0" + "voc": "" } }, "xlsx": { @@ -4093,38 +10156,10 @@ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" }, "uglify-js": { - "version": "2.4.15", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.4.15.tgz", - "integrity": "sha1-ErxthDRfvDBuE/cHXWQ3qL9k1+M=", - "requires": { - "async": "~0.2.6", - "optimist": "~0.3.5", - "source-map": "0.1.34", - "uglify-to-browserify": "~1.0.0" - }, - "dependencies": { - "optimist": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz", - "integrity": "sha1-yQlBrVnkJzMokjB00s8ufLxuwNk=", - "requires": { - "wordwrap": "~0.0.2" - } - }, - "source-map": { - "version": "0.1.34", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.34.tgz", - "integrity": "sha1-p8/omux7FoLDsZjQrPtH19CQVms=", - "requires": { - "amdefine": ">=0.0.4" - } - }, - "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=" - } - } + "version": "3.15.3", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.15.3.tgz", + "integrity": "sha512-6iCVm2omGJbsu3JWac+p6kUiOpg3wFO2f8lIXjfEb8RrmLjzog1wTPMmwKB7swfzzqxj9YM+sGUM++u1qN4qJg==", + "dev": true }, "uglify-to-browserify": { "version": "1.0.2", @@ -4627,9 +10662,9 @@ "integrity": "sha1-2IdUVpqrz47qcMwjlhtGJjSklWU=", "requires": { "cfb": "~0.11.0", - "codepage": "^1.14.0", - "commander": "^6.2.1", - "exit-on-epipe": "^1.0.1", + "codepage": "", + "commander": "", + "exit-on-epipe": "", "ssf": "~0.8.1" }, "dependencies": { @@ -4671,7 +10706,7 @@ "requires": { "colors": "0.6.2", "frac": "0.3.1", - "voc": "^1.2.0" + "voc": "" } } } @@ -4738,6 +10773,40 @@ "node-uuid": "1.4.1", "socket.io": "1.0.6", "uglify-js": "2.4.15" + }, + "dependencies": { + "optimist": { + "version": "0.3.7", + "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz", + "integrity": "sha1-yQlBrVnkJzMokjB00s8ufLxuwNk=", + "requires": { + "wordwrap": "~0.0.2" + } + }, + "source-map": { + "version": "0.1.34", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.34.tgz", + "integrity": "sha1-p8/omux7FoLDsZjQrPtH19CQVms=", + "requires": { + "amdefine": ">=0.0.4" + } + }, + "uglify-js": { + "version": "2.4.15", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.4.15.tgz", + "integrity": "sha1-ErxthDRfvDBuE/cHXWQ3qL9k1+M=", + "requires": { + "async": "~0.2.6", + "optimist": "~0.3.5", + "source-map": "0.1.34", + "uglify-to-browserify": "~1.0.0" + } + }, + "wordwrap": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", + "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=" + } } } } diff --git a/package.json b/package.json index a8011a71..7992da86 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,6 @@ "cors": "*", "csv-parse": "^0.0.6", "iconv-lite": "^0.4.13", - "xlsx": "^0.14.5", "j": "0.4.5", "livescript": "1.5.x", "minimatch": "*", @@ -19,10 +18,10 @@ "redis": "0.12.x", "socialcalc": "^2.3.0", "uuid-pure": "*", + "xlsx": "^0.14.5", "xoauth2": "*", "zappajs": "0.5.x" }, - "optionalDependencies": {}, "devDependencies": { "css-loader": "^0.9.0", "livescript-loader": "^0.1.5", @@ -32,6 +31,7 @@ "style-loader": "^0.8.2", "stylus-loader": "^3.0.2", "superagent": "^0.21.0", + "uglify-js": "^3.15.3", "webpack": "^1.4.13", "webpack-dev-server": "^1.6.6" }, diff --git a/static/ethercalc.js b/static/ethercalc.js index f4ef887b..6304684c 100644 --- a/static/ethercalc.js +++ b/static/ethercalc.js @@ -1,26 +1 @@ -// Auto-generated from "make depends"; ALL CHANGES HERE WILL BE LOST! -!function(e,t){"function"==typeof define&&define.amd?define([],t.bind(e,this)):"object"==typeof module&&module.exports?module.exports=t.call(e,this):e.SocialCalc=t.call(e,this)}(this,function(e){var t;t||(t={}),t.Constants={cellDataType:{v:"value",n:"value",t:"text",f:"formula",c:"constant"},textdatadefaulttype:"t",s_BrowserNotSupported:"Browser not supported.",s_InternalError:"Internal SocialCalc error (probably an internal bug): ",s_pssUnknownColType:"Unknown col type item",s_pssUnknownRowType:"Unknown row type item",s_pssUnknownLineType:"Unknown line type",s_cfspUnknownCellType:"Unknown cell type item",doCanonicalizeSheet:!0,s_escUnknownSheetCmd:"Unknown sheet command: ",s_escUnknownSetCoordCmd:"Unknown set coord command: ",s_escUnknownCmd:"Unknown command: ",s_caccCircRef:"Circular reference to ",defaultRowNameWidth:"30",defaultAssumedRowHeight:15,defaultCellIDPrefix:"cell_",defaultCellLayout:"padding:2px 2px 1px 2px;vertical-align:top;",defaultCellFontStyle:"normal normal",defaultCellFontSize:"small",defaultCellFontFamily:"Verdana,Arial,Helvetica,sans-serif",defaultPaneDividerWidth:"3",defaultPaneDividerHeight:"3",defaultGridCSS:"1px solid #C0C0C0;",defaultCommentClass:"",defaultCommentStyle:"background-repeat:no-repeat;background-position:top right;background-image:url(images/sc-commentbg.gif);",defaultCommentNoGridClass:"",defaultCommentNoGridStyle:"",defaultReadonlyClass:"",defaultReadonlyStyle:"background-repeat:no-repeat;background-position:top right;background-image:url(images/sc-lockbg.gif);",defaultReadonlyNoGridClass:"",defaultReadonlyNoGridStyle:"",defaultReadonlyComment:"Locked cell",defaultColWidth:"80",defaultMinimumColWidth:10,defaultHighlightTypeCursorClass:"",defaultHighlightTypeCursorStyle:"color:#FFF;backgroundColor:#A6A6A6;",defaultHighlightTypeRangeClass:"",defaultHighlightTypeRangeStyle:"color:#000;backgroundColor:#E5E5E5;",defaultColnameClass:"",defaultColnameStyle:"overflow:visible;font-size:small;text-align:center;color:#FFFFFF;background-color:#808080;",defaultSelectedColnameClass:"",defaultSelectedColnameStyle:"overflow:visible;font-size:small;text-align:center;color:#FFFFFF;background-color:#404040;",defaultRownameClass:"",defaultRownameStyle:"position:relative;overflow:visible;font-size:small;text-align:right;color:#FFFFFF;background-color:#808080;",defaultSelectedRownameClass:"",defaultSelectedRownameStyle:"position:relative;overflow:visible;font-size:small;text-align:right;color:#FFFFFF;background-color:#404040;",defaultUpperLeftClass:"",defaultUpperLeftStyle:"font-size:small;",defaultSkippedCellClass:"",defaultSkippedCellStyle:"font-size:small;background-color:#CCC",defaultPaneDividerClass:"",defaultPaneDividerStyle:"font-size:small;background-color:#C0C0C0;padding:0px;",defaultUnhideLeftClass:"",defaultUnhideLeftStyle:"float:right;width:9px;height:12px;cursor:pointer;background-image:url(images/sc-unhideleft.gif);padding:0;",defaultUnhideRightClass:"",defaultUnhideRightStyle:"float:left;width:9px;height:12px;cursor:pointer;background-image:url(images/sc-unhideright.gif);padding:0;",defaultUnhideTopClass:"",defaultUnhideTopStyle:"float:left;left:1px;position:absolute;bottom:-4px;width:12px;height:9px;cursor:pointer;background-image:url(images/sc-unhidetop.gif);padding:0;",defaultUnhideBottomClass:"",defaultUnhideBottomStyle:"float:left;width:12px;height:9px;cursor:pointer;background-image:url(images/sc-unhidebottom.gif);padding:0;",defaultColResizeBarClass:"col-resize-bar",defaultRowResizeBarClass:"row-resize-bar",s_rcMissingSheet:"Render Context must have a sheet object",defaultLinkFormatString:'Link',defaultPageLinkFormatString:'Page',defaultFormatp:"#,##0.0%",defaultFormatc:"[$$]#,##0.00",defaultFormatdt:"d-mmm-yyyy h:mm:ss",defaultFormatd:"d-mmm-yyyy",defaultFormatt:"[h]:mm:ss",defaultDisplayTRUE:"TRUE",defaultDisplayFALSE:"FALSE",defaultImagePrefix:"images/sc_",defaultTableEditorIDPrefix:"te_",defaultPageUpDnAmount:15,AllowCtrlS:!0,defaultTableControlThickness:20,cteGriddivClass:"",s_statusline_executing:"Executing...",s_statusline_displaying:"Displaying...",s_statusline_ordering:"Ordering...",s_statusline_calculating:"Calculating...",s_statusline_calculatingls:"Calculating... Loading Sheet...",s_statusline_doingserverfunc:"doing server function ",s_statusline_incell:" in cell ",s_statusline_calcstart:"Calculation start...",s_statusline_sum:"SUM",s_statusline_recalcneeded:'(Recalc needed)',s_statusline_circref:'Circular reference: ',s_statusline_sendemail:"Sending Email ",s_inputboxdisplaymultilinetext:"[Multi-line text: Click icon on right to edit]",defaultInputEchoClass:"",defaultInputEchoStyle:"filter:alpha(opacity=90);opacity:.9;backgroundColor:#FFD;border:1px solid #884;fontSize:small;padding:2px 10px 1px 2px;cursor:default;",defaultInputEchoPromptClass:"",defaultInputEchoPromptStyle:"filter:alpha(opacity=90);opacity:.9;backgroundColor:#FFD;borderLeft:1px solid #884;borderRight:1px solid #884;borderBottom:1px solid #884;fontSize:small;fontStyle:italic;padding:2px 10px 1px 2px;cursor:default;",defaultInputEchoHintClass:"",defaultInputEchoHintStyle:"filter:alpha(opacity=80);opacity:.8;backgroundColor:#884;border:1px solid #884;fontSize:small;fontWeight:bold;padding:2px 2px 2px 2px;color:#FFF;position:absolute;top:-20px;cursor:default;",ietUnknownFunction:"Unknown function ",CH_radius1:29,CH_radius2:41,s_CHfillAllTooltip:"Fill Contents and Formats Down/Right",s_CHfillContentsTooltip:"Fill Contents Only Down/Right",s_CHmovePasteAllTooltip:"Move Contents and Formats",s_CHmovePasteContentsTooltip:"Move Contents Only",s_CHmoveInsertAllTooltip:"Slide Contents and Formats within Row/Col",s_CHmoveInsertContentsTooltip:"Slide Contents within Row/Col",s_CHindicatorOperationLookup:{Fill:"Fill",FillC:"Fill Contents",Move:"Move",MoveI:"Slide",MoveC:"Move Contents",MoveIC:"Slide Contents"},s_CHindicatorDirectionLookup:{Down:" Down",Right:" Right",Horizontal:" Horizontal",Vertical:" Vertical"},defaultTCSliderThickness:9,defaultTCButtonThickness:20,defaultTCThumbThickness:15,TCmainStyle:"backgroundColor:#EEE;",TCmainClass:"",TCendcapStyle:"backgroundColor:#FFF;",TCendcapClass:"",TCpanesliderClass:"tc-paneslider",s_panesliderTooltiph:"Drag to lock pane vertically",s_panesliderTooltipv:"Drag to lock pane horizontally",TClessbuttonStyle:"backgroundColor:#AAA;",TClessbuttonClass:"",TClessbuttonRepeatWait:300,TClessbuttonRepeatInterval:20,TCmorebuttonStyle:"backgroundColor:#AAA;",TCmorebuttonClass:"",TCmorebuttonRepeatWait:300,TCmorebuttonRepeatInterval:20,TCscrollareaStyle:"backgroundColor:#DDD;",TCscrollareaClass:"",TCscrollareaRepeatWait:500,TCscrollareaRepeatInterval:100,TCthumbClass:"",TCthumbStyle:"backgroundColor:#CCC;",TCPStrackinglineClass:"tracklingine",TCPStrackinglineStyle:"overflow:hidden;position:absolute;zIndex:100;",TCPStrackinglineThickness:"2px",TCTDFSthumbstatusvClass:"",TCTDFSthumbstatusvStyle:"height:20px;width:auto;border:3px solid #808080;overflow:hidden;backgroundColor:#FFF;fontSize:small;position:absolute;zIndex:100;",TCTDFSthumbstatushClass:"",TCTDFSthumbstatushStyle:"height:20px;width:auto;border:1px solid black;padding:2px;backgroundColor:#FFF;fontSize:small;position:absolute;zIndex:100;",TCTDFSthumbstatusrownumClass:"",TCTDFSthumbstatusrownumStyle:"color:#FFF;background-color:#808080;font-size:small;white-space:nowrap;padding:3px;",TCTDFStopOffsetv:0,TCTDFSleftOffsetv:-80,s_TCTDFthumbstatusPrefixv:"Row ",TCTDFStopOffseth:-30,TCTDFSleftOffseth:0,s_TCTDFthumbstatusPrefixh:"Col ",TooltipOffsetX:2,TooltipOffsetY:10,TDpopupElementClass:"",TDpopupElementStyle:"border:1px solid black;padding:1px 2px 2px 2px;textAlign:center;backgroundColor:#FFF;fontSize:7pt;fontFamily:Verdana,Arial,Helvetica,sans-serif;position:absolute;width:auto;zIndex:110;",SCToolbarbackground:"background-color:#ffffff;",SCTabbackground:"background-color:#CCC;",SCTabselectedCSS:"font-size:small;padding:6px 30px 6px 8px;color:#FFF;background-color:#404040;cursor:default;border-right:1px solid #CCC;",SCTabplainCSS:"font-size:small;padding:6px 30px 6px 8px;color:#FFF;background-color:#808080;cursor:default;border-right:1px solid #CCC;",SCToolbartext:"font-size:x-small;font-weight:bold;color:#888",SCFormulabarheight:30,SCStatuslineheight:20,SCStatuslineCSS:"font-size:10px;padding:3px 0px;",SCFormatNumberFormats:"[cancel]:|[break]:|%loc!Default!:|[custom]:|%loc!Automatic!:general|%loc!Auto w/ commas!:[,]General|[break]:|00:00|000:000|0000:0000|00000:00000|[break]:|%loc!Formula!:formula|%loc!Hidden!:hidden|[newcol]:1234:0|1,234:#,##0|1,234.5:#,##0.0|1,234.56:#,##0.00|1,234.567:#,##0.000|1,234.5678:#,##0.0000|[break]:|1,234%:#,##0%|1,234.5%:#,##0.0%|1,234.56%:#,##0.00%|[newcol]:|$1,234:$#,##0|$1,234.5:$#,##0.0|$1,234.56:$#,##0.00|[break]:|(1,234):#,##0_);(#,##0)|(1,234.5):#,##0.0_);(#,##0.0)|(1,234.56):#,##0.00_);(#,##0.00)|[break]:|($1,234):$#,##0_);($#,##0)|($1,234.5):$#,##0.0_);($#,##0.0)|($1,234.56):$#,##0.00_);($#,##0.00)|[newcol]:|1/4/06:m/d/yy|01/04/2006:mm/dd/yyyy|2006-01-04:yyyy-mm-dd|4-Jan-06:d-mmm-yy|04-Jan-2006:dd-mmm-yyyy|January 4, 2006:mmmm d, yyyy|[break]:|1\\c23:h:mm|1\\c23 PM:h:mm AM/PM|1\\c23\\c45:h:mm:ss|01\\c23\\c45:hh:mm:ss|26\\c23 (h\\cm):[hh]:mm|69\\c45 (m\\cs):[mm]:ss|69 (s):[ss]|[newcol]:|2006-01-04 01\\c23\\c45:yyyy-mm-dd hh:mm:ss|January 4, 2006:mmmm d, yyyy hh:mm:ss|Wed:ddd|Wednesday:dddd|",SCFormatTextFormats:"[cancel]:|[break]:|%loc!Default!:|[custom]:|%loc!Automatic!:general|%loc!Plain Text!:text-plain|HTML:text-html|%loc!Wikitext!:text-wiki|%loc!Link!:text-link|%loc!Formula!:formula|%loc!Hidden!:hidden|",SCFormatPadsizes:"[cancel]:|[break]:|%loc!Default!:|[custom]:|%loc!No padding!:0px|[newcol]:|1 pixel:1px|2 pixels:2px|3 pixels:3px|4 pixels:4px|5 pixels:5px|6 pixels:6px|7 pixels:7px|8 pixels:8px|[newcol]:|9 pixels:9px|10 pixels:10px|11 pixels:11px|12 pixels:12px|13 pixels:13px|14 pixels:14px|16 pixels:16px|18 pixels:18px|[newcol]:|20 pixels:20px|22 pixels:22px|24 pixels:24px|28 pixels:28px|36 pixels:36px|",SCFormatFontsizes:"[cancel]:|[break]:|%loc!Default!:|[custom]:|X-Small:x-small|Small:small|Medium:medium|Large:large|X-Large:x-large|[newcol]:|6pt:6pt|7pt:7pt|8pt:8pt|9pt:9pt|10pt:10pt|11pt:11pt|12pt:12pt|14pt:14pt|16pt:16pt|[newcol]:|18pt:18pt|20pt:20pt|22pt:22pt|24pt:24pt|28pt:28pt|36pt:36pt|48pt:48pt|72pt:72pt|[newcol]:|8 pixels:8px|9 pixels:9px|10 pixels:10px|11 pixels:11px|12 pixels:12px|13 pixels:13px|14 pixels:14px|[newcol]:|16 pixels:16px|18 pixels:18px|20 pixels:20px|22 pixels:22px|24 pixels:24px|28 pixels:28px|36 pixels:36px|",SCFormatFontfamilies:"[cancel]:|[break]:|%loc!Default!:|[custom]:|Verdana:Verdana,Arial,Helvetica,sans-serif|Arial:arial,helvetica,sans-serif|Courier:'Courier New',Courier,monospace|",SCFormatFontlook:"[cancel]:|[break]:|%loc!Default!:|%loc!Normal!:normal normal|%loc!Bold!:normal bold|%loc!Italic!:italic normal|%loc!Bold Italic!:italic bold",SCFormatTextAlignhoriz:"[cancel]:|[break]:|%loc!Default!:|%loc!Left!:left|%loc!Center!:center|%loc!Right!:right|",SCFormatNumberAlignhoriz:"[cancel]:|[break]:|%loc!Default!:|%loc!Left!:left|%loc!Center!:center|%loc!Right!:right|",SCFormatAlignVertical:"[cancel]:|[break]:|%loc!Default!:|%loc!Top!:top|%loc!Middle!:middle|%loc!Bottom!:bottom|",SCFormatColwidth:"[cancel]:|[break]:|%loc!Default!:|[custom]:|[newcol]:|20 pixels:20|40:40|60:60|80:80|100:100|120:120|140:140|160:160|[newcol]:|180 pixels:180|200:200|220:220|240:240|260:260|280:280|300:300|",SCFormatRecalc:"[cancel]:|[break]:|%loc!Auto!:|%loc!Manual!:off|",SCFormatUserMaxCol:"[cancel]:|[break]:|%loc!Default!:|[custom]:|[newcol]:|Unlimited:0|10:10|20:20|30:30|40:40|50:50|60:60|80:80|100:100|",SCFormatUserMaxRow:"[cancel]:|[break]:|%loc!Default!:|[custom]:|[newcol]:|Unlimited:0|10:10|20:20|30:30|40:40|50:50|60:60|80:80|100:100|",ISCButtonNormalBackground:"transparent",ISCButtonBorderNormal:"none",ISCButtonBorderHover:"none",ISCButtonBorderDown:"none",ISCButtonDownBackground:"#888",s_PopupListCancel:"[Cancel]",s_PopupListCustom:"Custom",s_loc_align_center:"Align Center",s_loc_align_left:"Align Left",s_loc_align_right:"Align Right",s_loc_alignment:"Alignment",s_loc_audit:"Audit",s_loc_audit_trail_this_session:"Audit Trail This Session",s_loc_auto:"Auto",s_loc_auto_sum:"Auto Sum",s_loc_auto_wX_commas:"Auto w/ commas",s_loc_automatic:"Automatic",s_loc_background:"Background",s_loc_bold:"Bold",s_loc_bold_XampX_italics:"Bold & Italics",s_loc_bold_italic:"Bold Italic",s_loc_borders:"Borders",s_loc_borders_off:"Borders Off",s_loc_borders_on:"Borders On",s_loc_bottom:"Bottom",s_loc_bottom_border:"Bottom Border",s_loc_cell_settings:"CELL SETTINGS",s_loc_csv_format:"CSV format",s_loc_cancel:"Cancel",s_loc_category:"Category",s_loc_center:"Center",s_loc_clear:"Clear",s_loc_clear_socialcalc_clipboard:"Clear SocialCalc Clipboard",s_loc_clipboard:"Clipboard",s_loc_color:"Color",s_loc_column_:"Column ",s_loc_comment:"Comment",s_loc_copy:"Copy",s_loc_custom:"Custom",s_loc_cut:"Cut",s_loc_default:"Default",s_loc_default_alignment:"Default Alignment",s_loc_default_column_width:"Default Column Width",s_loc_default_font:"Default Font",s_loc_default_format:"Default Format",s_loc_default_padding:"Default Padding",s_loc_delete:"Delete",s_loc_delete_column:"Delete Column",s_loc_delete_contents:"Delete Cell Contents",s_loc_delete_row:"Delete Row",s_loc_description:"Description",s_loc_display_clipboard_in:"Display Clipboard in",s_loc_down:"Down",s_loc_edit:"Edit",s_loc_existing_names:"Existing Names",s_loc_family:"Family",s_loc_fill_down:"Fill Down",s_loc_fill_right:"Fill Right",s_loc_font:"Font",s_loc_format:"Format",s_loc_formula:"Formula",s_loc_function_list:"Function List",s_loc_functions:"Functions",s_loc_grid:"Grid",s_loc_hidden:"Hidden",s_loc_hide_column:"Hide Column",s_loc_hide_row:"Hide Row",s_loc_horizontal:"Horizontal",s_loc_insert_column:"Insert Column Before",s_loc_insert_row:"Insert Row Before",s_loc_italic:"Italic",s_loc_last_sort:"Last Sort",s_loc_left:"Left",s_loc_left_border:"Left Border",s_loc_link:"Link",s_loc_link_input_box:"Link Input Box",s_loc_list:"List",s_loc_load_socialcalc_clipboard_with_this:"Load SocialCalc Clipboard With This",s_loc_lock_cell:"Lock Cell",s_loc_major_sort:"Major Sort",s_loc_manual:"Manual",s_loc_merge_cells:"Merge/Unmerge Cells",s_loc_middle:"Middle",s_loc_minor_sort:"Minor Sort",s_loc_move_insert:"Move Insert",s_loc_move_paste:"Move Paste",s_loc_multiXline_input_box:"Multi-line Input Box",s_loc_name:"Name",s_loc_names:"Names",s_loc_no_padding:"No padding",s_loc_normal:"Normal",s_loc_number:"Number",s_loc_number_horizontal:"Number Horizontal",s_loc_ok:"OK",s_loc_padding:"Padding",s_loc_page_name:"Page Name",s_loc_paste:"Paste",s_loc_paste_formats:"Paste Formats",s_loc_plain_text:"Plain Text",s_loc_recalc:"Recalc",s_loc_recalculation:"Recalculation",s_loc_redo:"Redo",s_loc_right:"Right",s_loc_right_border:"Right Border",s_loc_sheet_settings:"SHEET SETTINGS",s_loc_save:"Save",s_loc_save_to:"Save to",s_loc_set_cell_contents:"Set Cell Contents",s_loc_set_cells_to_sort:"Set Cells To Sort",s_loc_set_value_to:"Set Value To",s_loc_set_to_link_format:"Set to Link format",s_loc_setXclear_move_from:"Set/Clear Move From",s_loc_show_cell_settings:"Show Cell Settings",s_loc_show_sheet_settings:"Show Sheet Settings",s_loc_show_in_new_browser_window:"Show in new browser window",s_loc_size:"Size",s_loc_socialcalcXsave_format:"SocialCalc-save format",s_loc_sort:"Sort",s_loc_sort_:"Sort ",s_loc_sort_cells:"Sort Cells",s_loc_swap_colors:"Swap Colors",s_loc_tabXdelimited_format:"Tab-delimited format",s_loc_text:"Text",s_loc_text_horizontal:"Text Horizontal",s_loc_this_is_aXbrXsample:"This is a
sample",s_loc_top:"Top",s_loc_top_border:"Top Border",s_loc_undone_steps:"UNDONE STEPS",s_loc_url:"URL",s_loc_undo:"Undo",s_loc_unlock_cell:"Unlock Cell",s_loc_unmerge_cells:"Unmerge Cells",s_loc_up:"Up",s_loc_value:"Value",s_loc_vertical:"Vertical",s_loc_wikitext:"Wikitext",s_loc_workspace:"Workspace",s_loc_XnewX:"[New]",s_loc_XnoneX:"[None]",s_loc_Xselect_rangeX:"[select range]",SVStatuslineheight:20,SVStatuslineCSS:"font-size:10px;padding:3px 0px;",FormatNumber_separatorchar:",",FormatNumber_decimalchar:".",FormatNumber_defaultCurrency:"$",s_FormatNumber_daynames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],s_FormatNumber_daynames3:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],s_FormatNumber_monthnames:["January","February","March","April","May","June","July","August","September","October","November","December"],s_FormatNumber_monthnames3:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],s_FormatNumber_am:"AM",s_FormatNumber_am1:"A",s_FormatNumber_pm:"PM",s_FormatNumber_pm1:"P",s_parseerrexponent:"Improperly formed number exponent",s_parseerrchar:"Unexpected character in formula",s_parseerrstring:"Improperly formed string",s_parseerrspecialvalue:"Improperly formed special value",s_parseerrtwoops:"Error in formula (two operators inappropriately in a row)",s_parseerrmissingopenparen:"Missing open parenthesis in list with comma(s). ",s_parseerrcloseparennoopen:"Closing parenthesis without open parenthesis. ",s_parseerrmissingcloseparen:"Missing close parenthesis. ",s_parseerrmissingoperand:"Missing operand. ",s_parseerrerrorinformula:"Error in formula.",s_calcerrerrorvalueinformula:"Error value in formula",s_parseerrerrorinformulabadval:"Error in formula resulting in bad value",s_formularangeresult:"Formula results in range value:",s_calcerrnumericnan:"Formula results in an bad numeric value",s_calcerrnumericoverflow:"Numeric overflow",s_sheetunavailable:"Sheet unavailable:",s_calcerrcellrefmissing:"Cell reference missing when expected.",s_calcerrsheetnamemissing:"Sheet name missing when expected.",s_circularnameref:"Circular name reference to name",s_calcerrunknownname:"Unknown name",s_calcerrincorrectargstofunction:"Incorrect arguments to function",s_sheetfuncunknownfunction:"Unknown function",s_sheetfunclnarg:"LN argument must be greater than 0",s_sheetfunclog10arg:"LOG10 argument must be greater than 0",s_sheetfunclogsecondarg:"LOG second argument must be numeric greater than 0",s_sheetfunclogfirstarg:"LOG first argument must be greater than 0",s_sheetfuncroundsecondarg:"ROUND second argument must be numeric",s_sheetfuncddblife:"DDB life must be greater than 1",s_sheetfuncslnlife:"SLN life must be greater than 1",s_fdef_ABS:"Absolute value function. ",s_fdef_ACOS:"Trigonometric arccosine function. ",s_fdef_AND:"True if all arguments are true. ",s_fdef_ASIN:"Trigonometric arcsine function. ",s_fdef_ATAN:"Trigonometric arctan function. ",s_fdef_ATAN2:"Trigonometric arc tangent function (result is in radians). ",s_fdef_AVERAGE:"Averages the values. ",s_fdef_CHOOSE:"Returns the value specified by the index. The values may be ranges of cells. ",s_fdef_COLUMNS:"Returns the number of columns in the range. ",s_fdef_COS:"Trigonometric cosine function (value is in radians). ",s_fdef_CONCAT:"Join Together Text & Values to Create a Single Combined Text String. ",s_fdef_CONCATENATE:"Join Together Text & Values to Create a Single Combined Text String. ",s_fdef_COUNT:"Counts the number of numeric values, not blank, text, or error. ",s_fdef_COUNTA:"Counts the number of non-blank values. ",s_fdef_COUNTBLANK:'Counts the number of blank values. (Note: "" is not blank.) ',s_fdef_COUNTIF:'Counts the number of number of cells in the range that meet the criteria. The criteria may be a value ("x", 15, 1+3) or a test (>25). ',s_fdef_DATE:'Returns the appropriate date value given numbers for year, month, and day. For example: DATE(2006,2,1) for February 1, 2006. Note: In this program, day "1" is December 31, 1899 and the year 1900 is not a leap year. Some programs use January 1, 1900, as day "1" and treat 1900 as a leap year. In both cases, though, dates on or after March 1, 1900, are the same. ',s_fdef_DAVERAGE:"Averages the values in the specified field in records that meet the criteria. ",s_fdef_DAY:"Returns the day of month for a date value. ",s_fdef_DCOUNT:"Counts the number of numeric values, not blank, text, or error, in the specified field in records that meet the criteria. ",s_fdef_DCOUNTA:"Counts the number of non-blank values in the specified field in records that meet the criteria. ",s_fdef_DDB:"Returns the amount of depreciation at the given period of time (the default factor is 2 for double-declining balance). ",s_fdef_DEGREES:"Converts value in radians into degrees. ",s_fdef_DGET:"Returns the value of the specified field in the single record that meets the criteria. ",s_fdef_DMAX:"Returns the maximum of the numeric values in the specified field in records that meet the criteria. ",s_fdef_DMIN:"Returns the maximum of the numeric values in the specified field in records that meet the criteria. ",s_fdef_DPRODUCT:"Returns the result of multiplying the numeric values in the specified field in records that meet the criteria. ",s_fdef_DSTDEV:"Returns the sample standard deviation of the numeric values in the specified field in records that meet the criteria. ",s_fdef_DSTDEVP:"Returns the standard deviation of the numeric values in the specified field in records that meet the criteria. ",s_fdef_DSUM:"Returns the sum of the numeric values in the specified field in records that meet the criteria. ",s_fdef_DVAR:"Returns the sample variance of the numeric values in the specified field in records that meet the criteria. ",s_fdef_DVARP:"Returns the variance of the numeric values in the specified field in records that meet the criteria. ",s_fdef_EVEN:"Rounds the value up in magnitude to the nearest even integer. ",s_fdef_EXACT:'Returns "true" if the values are exactly the same, including case, type, etc. ',s_fdef_EXP:"Returns e raised to the value power. ",s_fdef_FACT:"Returns factorial of the value. ",s_fdef_FALSE:'Returns the logical value "false". ',s_fdef_FIND:'Returns the starting position within string2 of the first occurrence of string1 at or after "start". If start is omitted, 1 is assumed. ',s_fdef_FV:"Returns the future value of repeated payments of money invested at the given rate for the specified number of periods, with optional present value (default 0) and payment type (default 0 = at end of period, 1 = beginning of period). ",s_fdef_HLOOKUP:"Look for the matching value for the given value in the range and return the corresponding value in the cell specified by the row offset. If rangelookup is 1 (the default) and not 0, match if within numeric brackets (match<=value) instead of exact match. ",s_fdef_HOUR:"Returns the hour portion of a time or date/time value. ",s_fdef_IF:"Results in true-value if logical-expression is TRUE or non-zero, otherwise results in false-value. ",s_fdef_INDEX:"Returns a cell or range reference for the specified row and column in the range. If range is 1-dimensional, then only one of rownum or colnum are needed. If range is 2-dimensional and rownum or colnum are zero, a reference to the range of just the specified column or row is returned. You can use the returned reference value in a range, e.g., sum(A1:INDEX(A2:A10,4)). ",s_fdef_INT:"Returns the value rounded down to the nearest integer (towards -infinity). ",s_fdef_IRR:"Returns the interest rate at which the cash flows in the range have a net present value of zero. Uses an iterative process that will return #NUM! error if it does not converge. There may be more than one possible solution. Providing the optional guess value may help in certain situations where it does not converge or finds an inappropriate solution (the default guess is 10%). ",s_fdef_ISBLANK:'Returns "true" if the value is a reference to a blank cell. ',s_fdef_ISERR:'Returns "true" if the value is of type "Error" but not "NA". ',s_fdef_ISERROR:'Returns "true" if the value is of type "Error". ',s_fdef_ISLOGICAL:'Returns "true" if the value is of type "Logical" (true/false). ',s_fdef_ISNA:'Returns "true" if the value is the error type "NA". ',s_fdef_ISNONTEXT:'Returns "true" if the value is not of type "Text". ',s_fdef_ISNUMBER:'Returns "true" if the value is of type "Number" (including logical values). ',s_fdef_ISTEXT:'Returns "true" if the value is of type "Text". ',s_fdef_LEFT:"Returns the specified number of characters from the text value. If count is omitted, 1 is assumed. ",s_fdef_LEN:"Returns the number of characters in the text value. ",s_fdef_LN:"Returns the natural logarithm of the value. ",s_fdef_LOG:"Returns the logarithm of the value using the specified base. ",s_fdef_LOG10:"Returns the base 10 logarithm of the value. ",s_fdef_LOWER:"Returns the text value with all uppercase characters converted to lowercase. ",s_fdef_MATCH:"Look for the matching value for the given value in the range and return position (the first is 1) in that range. If rangelookup is 1 (the default) and not 0, match if within numeric brackets (match<=value) instead of exact match. If rangelookup is -1, act like 1 but the bracket is match>=value. ",s_fdef_MAX:"Returns the maximum of the numeric values. ",s_fdef_MID:"Returns the specified number of characters from the text value starting from the specified position. ",s_fdef_MIN:"Returns the minimum of the numeric values. ",s_fdef_MINUTE:"Returns the minute portion of a time or date/time value. ",s_fdef_MOD:"Returns the remainder of the first value divided by the second. ",s_fdef_MONTH:"Returns the month part of a date value. ",s_fdef_N:"Returns the value if it is a numeric value otherwise an error. ",s_fdef_NA:"Returns the #N/A error value which propagates through most operations. ",s_fdef_NOT:"Returns FALSE if value is true, and TRUE if it is false. ",s_fdef_NOW:"Returns the current date/time. ",s_fdef_NPER:"Returns the number of periods at which payments invested each period at the given rate with optional future value (default 0) and payment type (default 0 = at end of period, 1 = beginning of period) has the given present value. ",s_fdef_NPV:"Returns the net present value of cash flows (which may be individual values and/or ranges) at the given rate. The flows are positive if income, negative if paid out, and are assumed at the end of each period. ",s_fdef_ODD:"Rounds the value up in magnitude to the nearest odd integer. ",s_fdef_OR:"True if any argument is true ",s_fdef_PI:"The value 3.1415926... ",s_fdef_PMT:"Returns the amount of each payment that must be invested at the given rate for the specified number of periods to have the specified present value, with optional future value (default 0) and payment type (default 0 = at end of period, 1 = beginning of period). ",s_fdef_POWER:"Returns the first value raised to the second value power. ",s_fdef_PRODUCT:"Returns the result of multiplying the numeric values. ",s_fdef_PROPER:"Returns the text value with the first letter of each word converted to uppercase and the others to lowercase. ",s_fdef_PV:"Returns the present value of the given number of payments each invested at the given rate, with optional future value (default 0) and payment type (default 0 = at end of period, 1 = beginning of period). ",s_fdef_RADIANS:"Converts value in degrees into radians. ",s_fdef_RATE:"Returns the rate at which the given number of payments each invested at the given rate has the specified present value, with optional future value (default 0) and payment type (default 0 = at end of period, 1 = beginning of period). Uses an iterative process that will return #NUM! error if it does not converge. There may be more than one possible solution. Providing the optional guess value may help in certain situations where it does not converge or finds an inappropriate solution (the default guess is 10%). ",s_fdef_REPLACE:"Returns text1 with the specified number of characters starting from the specified position replaced by text2. ",s_fdef_REPT:"Returns the text repeated the specified number of times. ",s_fdef_RIGHT:"Returns the specified number of characters from the text value starting from the end. If count is omitted, 1 is assumed. ",s_fdef_ROUND:"Rounds the value to the specified number of decimal places. If precision is negative, then round to powers of 10. The default precision is 0 (round to integer). ",s_fdef_ROWS:"Returns the number of rows in the range. ",s_fdef_SECOND:"Returns the second portion of a time or date/time value (truncated to an integer). ",s_fdef_SIN:"Trigonometric sine function (value is in radians) ",s_fdef_SLN:"Returns the amount of depreciation at each period of time using the straight-line method. ",s_fdef_SQRT:"Square root of the value ",s_fdef_STDEV:"Returns the sample standard deviation of the numeric values. ",s_fdef_STDEVP:"Returns the standard deviation of the numeric values. ",s_fdef_SUBSTITUTE:'Returns text1 with the all occurrences of oldtext replaced by newtext. If "occurrence" is present, then only that occurrence is replaced. ',s_fdef_SUM:"Adds the numeric values. The values to the sum function may be ranges in the form similar to A1:B5. ",s_fdef_SUMIF:'Sums the numeric values of cells in the range that meet the criteria. The criteria may be a value ("x", 15, 1+3) or a test (>25). If range2 is present, then range1 is tested and the corresponding range2 value is summed. ',s_fdef_SUMIFS:'Sums the numeric values of cells in the sum_range that meet the multiple criteria. The criteria may be a value ("x", 15, 1+3) or a test (>25). ',s_fdef_SYD:"Depreciation by Sum of Year's Digits method. ",s_fdef_T:"Returns the text value or else a null string. ",s_fdef_TAN:"Trigonometric tangent function (value is in radians) ",s_fdef_TIME:"Returns the time value given the specified hour, minute, and second. ",s_fdef_TODAY:'Returns the current date (an integer). Note: In this program, day "1" is December 31, 1899 and the year 1900 is not a leap year. Some programs use January 1, 1900, as day "1" and treat 1900 as a leap year. In both cases, though, dates on or after March 1, 1900, are the same. ',s_fdef_TRIM:"Returns the text value with leading, trailing, and repeated spaces removed. ",s_fdef_TRUE:'Returns the logical value "true". ',s_fdef_TRUNC:"Truncates the value to the specified number of decimal places. If precision is negative, truncate to powers of 10. ",s_fdef_UPPER:"Returns the text value with all lowercase characters converted to uppercase. ",s_fdef_VALUE:"Converts the specified text value into a numeric value. Various forms that look like numbers (including digits followed by %, forms that look like dates, etc.) are handled. This may not handle all of the forms accepted by other spreadsheets and may be locale dependent. ",s_fdef_VAR:"Returns the sample variance of the numeric values. ",s_fdef_VARP:"Returns the variance of the numeric values. ",s_fdef_VLOOKUP:"Look for the matching value for the given value in the range and return the corresponding value in the cell specified by the column offset. If rangelookup is 1 (the default) and not 0, match if within numeric brackets (match>=value) instead of exact match. ",s_fdef_WEEKDAY:"Returns the day of week specified by the date value. If type is 1 (the default), Sunday is day and Saturday is day 7. If type is 2, Monday is day 1 and Sunday is day 7. If type is 3, Monday is day 0 and Sunday is day 6. ",s_fdef_YEAR:"Returns the year part of a date value. ",s_fdef_SUMPRODUCT:"Sums the pairwise products of 2 or more ranges. The ranges must be of equal length.",s_fdef_CEILING:"Rounds the given number up to the nearest integer or multiple of significance. Significance is the value to whose multiple of ten the value is to be rounded up (.01, .1, 1, 10, etc.)",s_fdef_FLOOR:"Rounds the given number down to the nearest multiple of significance. Significance is the value to whose multiple of ten the number is to be rounded down (.01, .1, 1, 10, etc.)",s_farg_v:"value",s_farg_vn:"value1, value2, ...",s_farg_xy:"valueX, valueY",s_farg_choose:"index, value1, value2, ...",s_farg_range:"range",s_farg_rangec:"range, criteria",s_farg_date:"year, month, day",s_farg_dfunc:"databaserange, fieldname, criteriarange",s_farg_ddb:"cost, salvage, lifetime, period, [factor]",s_farg_find:"string1, string2, [start]",s_farg_fv:"rate, n, payment, [pv, [paytype]]",s_farg_hlookup:"value, range, row, [rangelookup]",s_farg_iffunc:"logical-expression, true-value, [false-value]",s_farg_index:"range, rownum, colnum",s_farg_irr:"range, [guess]",s_farg_tc:"text, count",s_farg_log:"value, base",s_farg_match:"value, range, [rangelookup]",s_farg_mid:"text, start, length",s_farg_nper:"rate, payment, pv, [fv, [paytype]]",s_farg_npv:"rate, value1, value2, ...",s_farg_pmt:"rate, n, pv, [fv, [paytype]]",s_farg_pv:"rate, n, payment, [fv, [paytype]]",s_farg_rate:"n, payment, pv, [fv, [paytype, [guess]]]",s_farg_replace:"text1, start, length, text2",s_farg_vp:"value, [precision]",s_farg_valpre:"value, precision",s_farg_csl:"cost, salvage, lifetime",s_farg_cslp:"cost, salvage, lifetime, period",s_farg_subs:"text1, oldtext, newtext, [occurrence]",s_farg_sumif:"range1, criteria, [range2]",s_farg_hms:"hour, minute, second",s_farg_txt:"text",s_farg_vlookup:"value, range, col, [rangelookup]",s_farg_weekday:"date, [type]",s_farg_dt:"date",s_farg_rangen:"range1, range2, ...",s_farg_vsig:"value, [significance]",function_classlist:["all","stat","lookup","datetime","financial","test","math","text","gui","action"],s_fclass_all:"All",s_fclass_stat:"Statistics",s_fclass_lookup:"Lookup",s_fclass_datetime:"Date & Time",s_fclass_financial:"Financial",s_fclass_test:"Test",s_fclass_math:"Math",s_fclass_text:"Text",s_fclass_action:"Email & Copy",s_fclass_gui:"Button & Input",lastone:null},t.ConstantsDefaultClasses={defaultComment:"",defaultCommentNoGrid:"",defaultHighlightTypeCursor:"",defaultHighlightTypeRange:"",defaultColname:"",defaultSelectedColname:"",defaultRowname:"",defaultSelectedRowname:"",defaultUpperLeft:"",defaultSkippedCell:"",defaultPaneDivider:"",cteGriddiv:"",defaultInputEcho:{classname:"",style:"filter:alpha(opacity=90);opacity:.9;"},TCmain:"",TCendcap:"",TCpaneslider:"",TClessbutton:"",TCmorebutton:"",TCscrollarea:"",TCthumb:"",TCPStrackingline:"",TCTDFSthumbstatus:"",TDpopupElement:""},t.ConstantsSetClasses=function(e){var o,i=t.ConstantsDefaultClasses,n=t.Constants; -e=e||"";for(o in i)"string"==typeof i[o]?(n[o+"Class"]=e+(i[o]||o),void 0!==n[o+"Style"]&&(n[o+"Style"]="")):"object"==typeof i[o]&&(n[o+"Class"]=e+(i[o].classname||o),n[o+"Style"]=i[o].style)},t.ConstantsSetImagePrefix=function(e){var o=t.Constants;for(var i in o)"string"==typeof o[i]&&(o[i]=o[i].replace(o.defaultImagePrefix,e));o.defaultImagePrefix=e};var t;t||(t={}),t.Callbacks={expand_wiki:null,expand_markup:function(e,o,i){return t.default_expand_markup(e,o,i)},MakePageLink:null,NormalizeSheetName:null},t.Cell=function(e){this.coord=e,this.datavalue="",this.datatype=null,this.formula="",this.valuetype="b",this.readonly=!1},t.CellProperties={coord:1,datavalue:1,datatype:1,formula:1,valuetype:1,errors:1,comment:1,readonly:1,bt:2,br:2,bb:2,bl:2,layout:2,font:2,color:2,bgcolor:2,cellformat:2,nontextvalueformat:2,textvalueformat:2,colspan:2,rowspan:2,cssc:2,csss:2,mod:2,displaystring:3,parseinfo:3,hcolspan:3,hrowspan:3},t.CellPropertiesTable={bt:"borderstyle",br:"borderstyle",bb:"borderstyle",bl:"borderstyle",layout:"layout",font:"font",color:"color",bgcolor:"color",cellformat:"cellformat",nontextvalueformat:"valueformat",textvalueformat:"valueformat"},t.Sheet=function(){t.ResetSheet(this),this.statuscallback=null,this.statuscallbackparams=null},t.ResetSheet=function(e){e.cells={},e.attribs={lastcol:1,lastrow:1,defaultlayout:0,usermaxcol:0,usermaxrow:0},e.rowattribs={hide:{},height:{}},e.colattribs={width:{},hide:{}},e.names={},e.layouts=[],e.layouthash={},e.fonts=[],e.fonthash={},e.colors=[],e.colorhash={},e.borderstyles=[],e.borderstylehash={},e.cellformats=[],e.cellformathash={},e.valueformats=[],e.valueformathash={},e.matched_cells=[],e.selected_search_cell=void 0,e.copiedfrom="",e.changes=new t.UndoStack,e.renderneeded=!1,e.changedrendervalues=!0,e.recalcchangedavalue=!1,e.hiddencolrow="",e.sci=new t.SheetCommandInfo(e),e.ioEventTree={},e.ioParameterList={}},t.Sheet.prototype.ResetSheet=function(){t.ResetSheet(this)},t.Sheet.prototype.AddCell=function(e){return this.cells[e.coord]=e},t.Sheet.prototype.LastCol=function(){var e=1;for(var o in this.cells){var i=t.coordToCr(o);i.col>e&&(e=i.col)}return e},t.Sheet.prototype.LastRow=function(){var e=1;for(var o in this.cells){var i=t.coordToCr(o);i.row>e&&(e=i.row)}return e},t.Sheet.prototype.GetAssuredCell=function(e){return this.cells[e]||this.AddCell(new t.Cell(e))},t.Sheet.prototype.ParseSheetSave=function(e){t.ParseSheetSave(e,this)},t.Sheet.prototype.CellFromStringParts=function(e,o,i){return t.CellFromStringParts(this,e,o,i)},t.Sheet.prototype.CreateSheetSave=function(e,o){return t.CreateSheetSave(this,e,o)},t.Sheet.prototype.CellToString=function(e){return t.CellToString(this,e)},t.Sheet.prototype.CanonicalizeSheet=function(e){return t.CanonicalizeSheet(this,e)},t.Sheet.prototype.EncodeCellAttributes=function(e){return t.EncodeCellAttributes(this,e)},t.Sheet.prototype.EncodeSheetAttributes=function(){return t.EncodeSheetAttributes(this)},t.Sheet.prototype.DecodeCellAttributes=function(e,o,i){return t.DecodeCellAttributes(this,e,o,i)},t.Sheet.prototype.DecodeSheetAttributes=function(e){return t.DecodeSheetAttributes(this,e)},t.Sheet.prototype.ScheduleSheetCommands=function(e,o){return t.ScheduleSheetCommands(this,e,o)},t.Sheet.prototype.SheetUndo=function(){return t.SheetUndo(this)},t.Sheet.prototype.SheetRedo=function(){return t.SheetRedo(this)},t.Sheet.prototype.CreateAuditString=function(){return t.CreateAuditString(this)},t.Sheet.prototype.GetStyleNum=function(e,o){return t.GetStyleNum(this,e,o)},t.Sheet.prototype.GetStyleString=function(e,o){return t.GetStyleString(this,e,o)},t.Sheet.prototype.RecalcSheet=function(){return t.RecalcSheet(this)},t.ParseSheetSave=function(e,o){var i,n,r,a,s,l,c,u,d,h=e.split(/\r\n|\n/),p=[],f=t.Constants;for(n=0;nf;f++)d[f]=f;y[c+"sxlat"]=d}return y.maxrow=e.attribs.lastrow,y.maxcol=e.attribs.lastcol,void(e.xlt=y)}for(l=0;lg&&(g=r.row),r.col>v&&(v=r.col));for(f=0;fg&&(g=r);c={hide:1,width:1};for(m in c)for(n in e.colattribs[m])r=t.coordToCr(n+"1"),r.col>v&&(v=r.col);for(l=0;lo;o++)i="trbl".charAt(o),n="b"+i,a(n),l(n,u[n]?e.borderstyles[u[n]]:""),a(n+"thickness"),a(n+"style"),a(n+"color"),u[n]&&(parts=e.borderstyles[u[n]].match(/(\S+)\s+(\S+)\s+(\S.+)/),l(n+"thickness",parts[1]),l(n+"style",parts[2]),l(n+"color",parts[3]));return s(["cssc","csss","mod"]),l("cssc",u.cssc||""),l("csss",u.csss||""),l("mod",u.mod||"n"),r},t.EncodeSheetAttributes=function(e){var t,o=e.attribs,i={},n=function(e){i[e]={def:!0,val:""}},r=function(e){for(var t=0;ti;i++)a="trbl".charAt(i),s="b"+a,u(s,e.borderstyles[l[s]],s);return u("cssc",l.cssc,"cssc"),u("csss",l.csss,"csss"),o.mod&&(r=o.mod.def?"n":o.mod.val,r!=(l.mod||"n")&&("n"==r&&(r=""),h("mod "+r))),c?d:null},t.DecodeSheetAttributes=function(e,t){var o,i=e.attribs,n=!1,r=function(e,o,i){var n;t[e]&&(n=t[e].def?"":t[e].val,n!=(o||"")&&s(i+" "+n))},a="",s=function(e){a&&(a+="\n"),a+="set sheet "+e,n=!0};return r("colwidth",i.defaultcolwidth,"defaultcolwidth"),r("rowheight",i.defaultrowheight,"defaultrowheight"),r("textalignhoriz",e.cellformats[i.defaulttextformat],"defaulttextformat"),r("numberalignhoriz",e.cellformats[i.defaultnontextformat],"defaultnontextformat"),o=t.alignvert.def&&t.padtop.def&&t.padright.def&&t.padbottom.def&&t.padleft.def?"":"padding:"+(t.padtop.def?"* ":t.padtop.val+" ")+(t.padright.def?"* ":t.padright.val+" ")+(t.padbottom.def?"* ":t.padbottom.val+" ")+(t.padleft.def?"*":t.padleft.val)+";vertical-align:"+(t.alignvert.def?"*;":t.alignvert.val+";"),o!=(e.layouts[i.defaultlayout]||"")&&s("defaultlayout "+o),o=t.fontlook.def&&t.fontsize.def&&t.fontfamily.def?"":(t.fontlook.def?"* ":t.fontlook.val+" ")+(t.fontsize.def?"* ":t.fontsize.val+" ")+(t.fontfamily.def?"*":t.fontfamily.val),o!=(e.fonts[i.defaultfont]||"")&&s("defaultfont "+o),r("textcolor",e.colors[i.defaultcolor],"defaultcolor"),r("bgcolor",e.colors[i.defaultbgcolor],"defaultbgcolor"),r("numberformat",e.valueformats[i.defaultnontextvalueformat],"defaultnontextvalueformat"),r("textformat",e.valueformats[i.defaulttextvalueformat],"defaulttextvalueformat"),r("recalc",e.attribs.recalc,"recalc"),r("usermaxcol",e.attribs.usermaxcol,"usermaxcol"),r("usermaxrow",e.attribs.usermaxrow,"usermaxrow"),n?a:null},t.SheetCommandInfo=function(e){this.sheetobj=e,this.timerobj=null,this.firsttimerdelay=50,this.timerdelay=1,this.maxtimeslice=100,this.saveundo=!1,this.CmdExtensionCallbacks={}},t.ScheduleSheetCommands=function(o,i,n){var r=o.sci,a=new t.Parse(i);r.sheetobj.statuscallback&&o.statuscallback(r,"cmdstart","",r.sheetobj.statuscallbackparams),n&&r.sheetobj.changes.PushChange(""),r.timerobj=e.setTimeout(function(){t.SheetCommandsTimerRoutine(r,a,n)},r.firsttimerdelay)},t.SheetCommandsTimerRoutine=function(o,i,n){var r,a=new Date;for(o.timerobj=null;!i.EOF();){try{r=t.ExecuteSheetCommand(o.sheetobj,i,n)}catch(s){r=s.message}if(r&&("function"==typeof alert?alert(r):console.log(r)),i.NextLine(),new Date-a>=o.maxtimeslice)return void(o.timerobj=e.setTimeout(function(){t.SheetCommandsTimerRoutine(o,i,n)},o.timerdelay))}o.sheetobj.statuscallback&&o.sheetobj.statuscallback(o,"cmdend","",o.sheetobj.statuscallbackparams)},t.ExecuteSheetCommand=function(e,o,i){function n(o){function i(e){return"v"==e||"c"==e}var n=t.GetSpreadsheetControlObject().editor,r=n.range2,a=void 0;if(r.hasrange){var s,l;o&&r.bottom-r.top==1&&r.left==r.right?(s=e.GetAssuredCell(t.crToCoord(r.left,r.top)),l=e.GetAssuredCell(t.crToCoord(r.left,r.bottom)),i(s.datatype)&&i(l.datatype)&&(a=l.datavalue-s.datavalue)):o||r.left==r.right||(s=e.GetAssuredCell(t.crToCoord(r.left,r.top)),l=e.GetAssuredCell(t.crToCoord(r.right,r.top)),i(s.datatype)&&i(l.datatype)&&(a=l.datavalue-s.datavalue))}return n.Range2Remove(),a}var r,a,s,l,c,u,d,h,p,f,m,g,v,b,y,C,w,x,_,S,k,T,F,E,D,P,A,I,M,R,N,L,O,z,H,B,U,j,V,W,G,$,Y,K,q,X,J,Z,Q,et,tt,ot,it,nt,rt,at,st,lt,ct,ut,dt,b,y,ht,pt,ft,mt=e.attribs,gt=e.changes,vt=t.CellProperties,bt=t.Constants,yt=!1,Ct=function(){var e=t.ParseRange(l);g=e.cr1,v=e.cr2,v.col>mt.lastcol&&(mt.lastcol=v.col),v.row>mt.lastrow&&(mt.lastrow=v.row)};switch(p="",r=o.RestOfStringNoMove(),i&&e.changes.AddDo(r),a=o.NextToken()){case"set":if(l=o.NextToken(),c=o.NextToken(),s=o.RestOfString(),f="set "+l+" "+c,"sheet"==l)switch(e.renderneeded=!0,c){case"defaultcolwidth":i&>.AddUndo(f,mt[c]),mt[c]=s;break;case"defaultcolor":case"defaultbgcolor":i&>.AddUndo(f,e.GetStyleString("color",mt[c])),mt[c]=e.GetStyleNum("color",s);break;case"defaultlayout":i&>.AddUndo(f,e.GetStyleString("layout",mt[c])),mt[c]=e.GetStyleNum("layout",s);break;case"defaultfont":i&>.AddUndo(f,e.GetStyleString("font",mt[c])),"* * *"==s&&(s=""),mt[c]=e.GetStyleNum("font",s);break;case"defaulttextformat":case"defaultnontextformat":i&>.AddUndo(f,e.GetStyleString("cellformat",mt[c])),mt[c]=e.GetStyleNum("cellformat",s);break;case"defaulttextvalueformat":case"defaultnontextvalueformat":i&>.AddUndo(f,e.GetStyleString("valueformat",mt[c])),mt[c]=e.GetStyleNum("valueformat",s);for(C in e.cells)delete e.cells[C].displaystring;break;case"lastcol":case"lastrow":i&>.AddUndo(f,mt[c]-0),u=s-0,"number"==typeof u&&(mt[c]=u>0?u:1);break;case"recalc":i&>.AddUndo(f,mt[c]),"off"==s?mt.recalc=s:delete mt.recalc;break;case"usermaxcol":case"usermaxrow":i&>.AddUndo(f,mt[c]-0),u=s-0,"number"==typeof u&&(mt[c]=u>0?u:0);break;default:p=bt.s_escUnknownSheetCmd+r}else if(/^[a-z]{1,2}(:[a-z]{1,2})?$/i.test(l))for(e.renderneeded=!0,l=l.toUpperCase(),d=l.indexOf(":"),d>=0?(g=t.coordToCr(l.substring(0,d)+"1"),v=t.coordToCr(l.substring(d+1)+"1")):(g=t.coordToCr(l+"1"),v=g),b=g.col;b<=v.col;b++)"width"==c?(C=t.rcColname(b),i&>.AddUndo("set "+C+" width",e.colattribs.width[C]),s.length>0?e.colattribs.width[C]=s:delete e.colattribs.width[C]):"hide"==c&&(e.hiddencolrow="col",C=t.rcColname(b),i&>.AddUndo("set "+C+" hide",e.colattribs.hide[C]),s.length>0?e.colattribs.hide[C]=s:delete e.colattribs.hide[C]);else if(/^\d+(:\d+)?$/i.test(l))for(e.renderneeded=!0,l=l.toUpperCase(),d=l.indexOf(":"),d>=0?(g=t.coordToCr("A"+l.substring(0,d)),v=t.coordToCr("A"+l.substring(d+1))):(g=t.coordToCr("A"+l),v=g),y=g.row;y<=v.row;y++)"height"==c?(i&>.AddUndo("set "+y+" height",e.rowattribs.height[y]),s.length>0?e.rowattribs.height[y]=s:delete e.rowattribs.height[y]):"hide"==c&&(e.hiddencolrow="row",i&>.AddUndo("set "+y+" hide",e.rowattribs.hide[y]),s.length>0?e.rowattribs.hide[y]=s:delete e.rowattribs.hide[y]);else if(/^[a-z]{1,2}\d+(:[a-z]{1,2}\d+)?$/i.test(l))for(yt=!0,Ct(),g.row!=v.row||g.col!=v.col||e.celldisplayneeded||e.renderneeded?(e.renderneeded=!0,e.celldisplayneeded=""):e.celldisplayneeded=t.crToCoord(g.col,g.row),y=g.row;y<=v.row;y++)for(b=g.col;b<=v.col;b++)C=t.crToCoord(b,y),w=e.GetAssuredCell(C),w.readonly&&"readonly"!=c||(i&>.AddUndo("set "+C+" all",e.CellToString(w)),"value"==c?(d=s.indexOf(" "),w.datavalue=s.substring(d+1)-0,delete w.errors,w.datatype="v",w.valuetype=s.substring(0,d),delete w.displaystring,delete w.parseinfo,mt.needsrecalc="yes"):"text"==c?(d=s.indexOf(" "),w.datavalue=t.decodeFromSave(s.substring(d+1)),delete w.errors,w.datatype="t",w.valuetype=s.substring(0,d),delete w.displaystring,delete w.parseinfo,mt.needsrecalc="yes"):"formula"==c?(w.datavalue=0,delete w.errors,w.datatype="f",t._app&&"e#N/A"!=w.valuetype&&(w.prevvaluetype=w.valuetype),w.valuetype="e#N/A",w.formula=s,delete w.displaystring,delete w.parseinfo,mt.needsrecalc="yes"):"constant"==c?(d=s.indexOf(" "),h=s.substring(d+1).indexOf(" "),w.datavalue=s.substring(d+1,d+1+h)-0,w.valuetype=s.substring(0,d),"e"==w.valuetype.charAt(0)?w.errors=w.valuetype.substring(1):delete w.errors,w.datatype="c",w.formula=s.substring(d+h+2),delete w.displaystring,delete w.parseinfo,mt.needsrecalc="yes"):"empty"==c?(w.datavalue="",delete w.errors,w.datatype=null,w.formula="",w.valuetype="b",delete w.displaystring,delete w.parseinfo,mt.needsrecalc="yes"):"all"==c?(s.length>0?(w=new t.Cell(C),e.CellFromStringParts(w,s.split(":"),1),e.cells[C]=w):delete e.cells[C],mt.needsrecalc="yes"):/^b[trbl]$/.test(c)?(w[c]=e.GetStyleNum("borderstyle",s),e.renderneeded=!0):"color"==c||"bgcolor"==c?w[c]=e.GetStyleNum("color",s):"layout"==c||"cellformat"==c?w[c]=e.GetStyleNum(c,s):"font"==c?("* * *"==s&&(s=""),w[c]=e.GetStyleNum("font",s)):"textvalueformat"==c||"nontextvalueformat"==c?(w[c]=e.GetStyleNum("valueformat",s),delete w.displaystring):"cssc"==c?(s=s.replace(/[^a-zA-Z0-9\-]/g,""),w.cssc=s):"csss"==c?(s=s.replace(/\n/g,""),w.csss=s):"mod"==c?(s=s.replace(/[^yY]/g,"").toLowerCase(),w.mod=s):"comment"==c?w.comment=t.decodeFromSave(s):"readonly"==c?w.readonly="yes"==s.toLowerCase():p=bt.s_escUnknownSetCoordCmd+r);break;case"merge":if(e.renderneeded=!0,l=o.NextToken(),s=o.RestOfString(),Ct(),w=e.GetAssuredCell(g.coord),w.readonly)break;for(y=g.row;y<=v.row;y++)for(b=g.col;b<=v.col;b++)(y!=g.row||b!=g.col)&&(quashedCellCoord=t.crToCoord(b,y),quashedCell=e.GetAssuredCell(quashedCellCoord),i&>.AddUndo("set "+quashedCellCoord+" all",e.CellToString(quashedCell)),delete e.cells[quashedCellCoord]);i&>.AddUndo("unmerge "+g.coord),v.col>g.col?w.colspan=v.col-g.col+1:delete w.colspan,v.row>g.row?w.rowspan=v.row-g.row+1:delete w.rowspan,e.changedrendervalues=!0;break;case"unmerge":if(e.renderneeded=!0,l=o.NextToken(),s=o.RestOfString(),Ct(),w=e.GetAssuredCell(g.coord),w.readonly)break;i&>.AddUndo("merge "+g.coord+":"+t.crToCoord(g.col+(w.colspan||1)-1,g.row+(w.rowspan||1)-1)),delete w.colspan,delete w.rowspan,e.changedrendervalues=!0;break;case"erase":case"cut":for(e.renderneeded=!0,e.changedrendervalues=!0,l=o.NextToken(),s=o.RestOfString(),Ct(),i&>.AddUndo("changedrendervalues"),"cut"==a&&(i&>.AddUndo("loadclipboard",t.encodeForSave(t.Clipboard.clipboard)),t.Clipboard.clipboard=t.CreateSheetSave(e,l)),y=g.row;y<=v.row;y++)for(b=g.col;b<=v.col;b++)C=t.crToCoord(b,y),w=e.GetAssuredCell(C),w.readonly||(i&>.AddUndo("set "+C+" all",e.CellToString(w)),"all"==s?delete e.cells[C]:"formulas"==s?(w.datavalue="",w.datatype=null,w.formula="",w.valuetype="b",delete w.errors,delete w.displaystring,delete w.parseinfo,w.comment&&delete w.comment):"formats"==s&&(x=new t.Cell(C),x.datavalue=w.datavalue,x.datatype=w.datatype,x.formula=w.formula,x.valuetype=w.valuetype,w.comment&&(x.comment=w.comment),e.cells[C]=x));mt.needsrecalc="yes";break;case"fillright":case"filldown":e.renderneeded=!0,e.changedrendervalues=!0,i&>.AddUndo("changedrendervalues"),l=o.NextToken(),s=o.RestOfString(),Ct();var wt;for("fillright"==a?(_=!0,S=g.row,k=g.col+1,wt=n(!1)):(_=!1,S=g.row+1,k=g.col,wt=n(!0)),y=S;y<=v.row;y++)for(b=k;b<=v.col;b++)if(C=t.crToCoord(b,y),w=e.GetAssuredCell(C),!w.readonly){if(i&>.AddUndo("set "+C+" all",e.CellToString(w)),_?(T=t.crToCoord(g.col,y),E=b-k+1,F=0):(T=t.crToCoord(b,g.row),E=0,F=y-S+1),D=e.GetAssuredCell(T),"all"==s||"formats"==s)for(c in vt)1!=vt[c]&&(void 0===typeof D[c]||3==vt[c]?delete w[c]:w[c]=D[c]);("all"==s||"formulas"==s)&&(w.datavalue=void 0!==wt?D.datavalue+(_?E:F)*wt:D.datavalue,w.datatype=D.datatype,w.valuetype=D.valuetype,w.formula="f"==w.datatype?t.OffsetFormulaCoords(D.formula,E,F):D.formula,delete w.parseinfo,w.errors=D.errors),delete w.displaystring}mt.needsrecalc="yes";break;case"copy":l=o.NextToken(),s=o.RestOfString(),i&>.AddUndo("loadclipboard",t.encodeForSave(t.Clipboard.clipboard)),t.Clipboard.clipboard=t.CreateSheetSave(e,l);break;case"loadclipboard":s=o.RestOfString(),i&>.AddUndo("loadclipboard",t.encodeForSave(t.Clipboard.clipboard)),t.Clipboard.clipboard=t.decodeFromSave(s);break;case"clearclipboard":i&>.AddUndo("loadclipboard",t.encodeForSave(t.Clipboard.clipboard)),t.Clipboard.clipboard="";break;case"paste":if(e.renderneeded=!0,e.changedrendervalues=!0,i&>.AddUndo("changedrendervalues"),l=o.NextToken(),s=o.RestOfString(),Ct(),!t.Clipboard.clipboard)break;for(P=new t.Sheet,P.ParseSheetSave(t.Clipboard.clipboard),A=t.ParseRange(P.copiedfrom),I=Math.max(v.col-g.col+1,A.cr2.col-A.cr1.col+1),M=Math.max(v.row-g.row+1,A.cr2.row-A.cr1.row+1),g.col+I-1>mt.lastcol&&(mt.lastcol=g.col+I-1),g.row+M-1>mt.lastrow&&(mt.lastrow=g.row+M-1),y=g.row;y=Q;Q++)X[Q]=o.NextToken(),J[Q]=o.NextToken(),X[Q]&&(Z=Q);for(tt={},et=[],ot=[],it=[],y=g.row;y<=v.row;y++){for(b=g.col;b<=v.col;b++)C=t.crToCoord(b,y),w=e.cells[C],w?(tt[C]=e.CellToString(w),i&>.AddUndo("set "+C+" all",tt[C])):i&>.AddUndo("set "+C+" all");for(et.push(et.length),ot.push([]),it.push([]),slast=it.length-1,Q=0;Z>=Q;Q++)C=X[Q]+y,w=e.GetAssuredCell(C),m=w.datavalue,rt=w.valuetype.charAt(0)||"b","t"==rt&&(m=m.toLowerCase()),ot[slast].push(m),it[slast].push(rt)}for(nt=function(e,t){var o,i,n,r,a;for(o=0;Z>=o;o++)if("up"==J[o]?(i=e,n=t):(i=t,n=e),r=it[i][o],tb=it[n][o],"t"==r?"t"==tb?(i=ot[i][o],n=ot[n][o],a=i>n?1:n>i?-1:0):"n"==tb?a=1:"b"==tb?a="up"==J[o]?-1:1:"e"==tb&&(a=-1):"n"==r?"t"==tb?a=-1:"n"==tb?(i=ot[i][o]-0,n=ot[n][o]-0,a=i>n?1:n>i?-1:0):"b"==tb?a="up"==J[o]?-1:1:"e"==tb&&(a=-1):"e"==r?"e"==tb?(i=ot[i][o],n=ot[n][o],a=i>n?1:n>i?-1:0):a="b"==tb&&"up"==J[o]?-1:1:"b"==r&&(a="b"==tb?0:"up"==J[o]?1:-1),a)return a;return a=e>t?1:t>e?-1:0},et.sort(nt),y=g.row;y<=v.row;y++)for(at=et[y-g.row],b=g.col;b<=v.col;b++)C=t.crToCoord(b,y),st=t.crToCoord(b,at+g.row),tt[st]?(w=new t.Cell(C),e.CellFromStringParts(w,tt[st].split(":"),1),"f"==w.datatype&&(w.formula=t.OffsetFormulaCoords(w.formula,0,y-g.row-at)),e.cells[C]=w):delete e.cells[C];mt.needsrecalc="yes";break;case"insertcol":case"insertrow":for(e.renderneeded=!0,e.changedrendervalues=!0,e.widgetsClean=!1,l=o.NextToken(),s=o.RestOfString(),Ct(),"insertcol"==a?(E=1,N=g.col,F=0,L=1,O=g.col,H=g.col,z=1,B=mt.lastrow,i&>.AddUndo("deletecol "+g.coord)):(E=0,N=1,F=1,L=g.row,O=1,H=mt.lastcol,z=g.row,B=g.row,i&>.AddUndo("deleterow "+g.coord)),y=mt.lastrow;y>=L;y--)for(b=mt.lastcol;b>=N;b--)T=t.crToCoord(b,y),C=t.crToCoord(b+E,y+F),e.cells[T]?e.cells[C]=e.cells[T]:delete e.cells[C]; -for(y=z;B>=y;y++)for(b=O;H>=b;b++){C=t.crToCoord(b,y),w=new t.Cell(C),e.cells[C]=w,T=t.crToCoord(b-E,y-F),D=e.GetAssuredCell(T);for(c in vt)2==vt[c]&&(w[c]=D[c])}for(C in e.cells)w=e.cells[C],w&&"f"==w.datatype&&(w.formula=t.AdjustFormulaCoords(w.formula,g.col,E,g.row,F)),w&&delete w.parseinfo;for(lt in e.names)e.names[lt]&&(ct=e.names[lt].definition,ut="","="==ct.charAt(0)&&(ut="=",ct=ct.substring(1)),e.names[lt].definition=ut+t.AdjustFormulaCoords(ct,g.col,E,g.row,F));for(y=mt.lastrow;y>=L&&"insertrow"==a;y--){U=y+F;for(c in e.rowattribs)m=e.rowattribs[c][y],e.rowattribs[c][U]!=m&&(m?e.rowattribs[c][U]=m:delete e.rowattribs[c][U])}for(b=mt.lastcol;b>=N&&"insertcol"==a;b--){V=t.rcColname(b),j=t.rcColname(b+E);for(c in e.colattribs)m=e.colattribs[c][V],e.colattribs[c][j]!=m&&(m?e.colattribs[c][j]=m:delete e.colattribs[c][j])}var St=new t.RenderContext(e);St.CalculateCellSkipData();var kt={};for(var Tt in St.cellskip){var Ft=t.coordToCr(Tt),Et=St.cellskip[Tt];"insertcol"===a&&Ft.col===O&&(kt[Et]||(e.GetAssuredCell(Et).colspan+=E),kt[Et]=!0),"insertrow"===a&&Ft.row===z&&(kt[Et]||(e.GetAssuredCell(Et).rowspan+=F),kt[Et]=!0)}mt.lastcol+=E,mt.lastrow+=F,mt.needsrecalc="yes";break;case"deletecol":case"deleterow":for(e.renderneeded=!0,e.changedrendervalues=!0,e.widgetsClean=!1,l=o.NextToken(),s=o.RestOfString(),G=mt.lastcol,W=mt.lastrow,Ct(),"deletecol"==a?(E=g.col-v.col-1,F=0,k=v.col+1,S=1):(E=0,F=g.row-v.row-1,k=1,S=v.row+1),y=S;W-F>=y;y++)for(b=k;G-E>=b;b++)if(C=t.crToCoord(b+E,y+F),w=e.cells[C],w&&w.readonly)return p="Unable to remove "+("deletecol"==a?"column":"row")+", because cell "+w.coord+" is locked";for(y=S;W-F>=y;y++)for(b=k;G-E>=b;b++)C=t.crToCoord(b+E,y+F),i&&(S-F>y||k-E>b)&&(w=e.cells[C],w?gt.AddUndo("set "+C+" all",e.CellToString(w)):gt.AddUndo("erase "+C+" all")),T=t.crToCoord(b,y),w=e.cells[T],w?e.cells[C]=w:delete e.cells[C];for(C in e.cells)w=e.cells[C],w&&("f"==w.datatype?(K=w.formula,w.formula=t.AdjustFormulaCoords(K,g.col,E,g.row,F),w.formula!=K&&(delete w.parseinfo,i&&-1!=w.formula.indexOf("#REF!")&&(q=t.coordToCr(C),gt.AddUndo("set "+t.rcColname(q.col-E)+(q.row-F)+" formula "+K)))):delete w.parseinfo);for(lt in e.names)e.names[lt]&&(ct=e.names[lt].definition,ut="","="==ct.charAt(0)&&(ut="=",ct=ct.substring(1)),e.names[lt].definition=ut+t.AdjustFormulaCoords(ct,g.col,E,g.row,F));for(y=S;W-F>=y&&"deleterow"==a;y++){$=y+F;for(c in e.rowattribs)m=e.rowattribs[c][y],e.rowattribs[c][$]!=m&&(i&>.AddUndo("set "+$+" "+c,e.rowattribs[c][$]),m?e.rowattribs[c][$]=m:delete e.rowattribs[c][$])}for(b=k;G-E>=b&&"deletecol"==a;b++){V=t.rcColname(b),Y=t.rcColname(b+E);for(c in e.colattribs)m=e.colattribs[c][V],e.colattribs[c][Y]!=m&&(i&>.AddUndo("set "+Y+" "+c,e.colattribs[c][Y]),m?e.colattribs[c][Y]=m:delete e.colattribs[c][Y])}var St=new t.RenderContext(e);St.CalculateCellSkipData();var Dt={};for(var Tt in St.cellskip){var Ft=t.coordToCr(Tt),Et=St.cellskip[Tt],Pt=St.coordToCR[Et];"deletecol"===a&&Ft.col===k+E&&Pt.colv.col)?Mt.colv.row)?Mt.rowy;y++)for(b=g.col;b<=v.col;b++){if(0>Nt?(T=t.crToCoord(b,Mt.row+Lt-y-1),C=t.crToCoord(b,v.row-y)):(T=t.crToCoord(b,Mt.row-Lt+y+1),C=t.crToCoord(b,g.row+y)),D=e.GetAssuredCell(T),i&>.AddUndo("set "+T+" all",e.CellToString(D)),w=e.GetAssuredCell(C),"all"==s||"formats"==s)for(c in vt)1!=vt[c]&&(void 0===typeof D[c]||3==vt[c]?delete w[c]:w[c]=D[c]);("all"==s||"formulas"==s)&&(w.datavalue=D.datavalue,w.datatype=D.datatype,w.valuetype=D.valuetype,w.formula=D.formula,delete w.parseinfo,w.errors=D.errors),delete w.displaystring,Ot[T]=C}if(Rt)for(b=0;Lt>b;b++)for(y=g.row;y<=v.row;y++){if(0>Rt?(T=t.crToCoord(Mt.col+Lt-b-1,y),C=t.crToCoord(v.col-b,y)):(T=t.crToCoord(Mt.col-Lt+b+1,y),C=t.crToCoord(g.col+b,y)),D=e.GetAssuredCell(T),i&>.AddUndo("set "+T+" all",e.CellToString(D)),w=e.GetAssuredCell(C),"all"==s||"formats"==s)for(c in vt)1!=vt[c]&&(void 0===typeof D[c]||3==vt[c]?delete w[c]:w[c]=D[c]);("all"==s||"formulas"==s)&&(w.datavalue=D.datavalue,w.datatype=D.datatype,w.valuetype=D.valuetype,w.formula=D.formula,delete w.parseinfo,w.errors=D.errors),delete w.displaystring,Ot[T]=C}for(Mt.col+I-1>mt.lastcol&&(mt.lastcol=Mt.col+I-1),Mt.row+M-1>mt.lastrow&&(mt.lastrow=Mt.row+M-1),y=g.row;y1?ht.context.rowpanes.length=1:ht.context.rowpanes.length-1&&!ht.timeout?(ht.context.SetRowPaneFirstLast(0,ht.context.rowpanes[0].first,y-1),ht.context.SetRowPaneFirstLast(1,y,y)):(ht.context.SetRowPaneFirstLast(0,ht.context.rowpanes[0].first,y-1),ht.context.SetRowPaneFirstLast(1,y,y)),ht.griddiv&&(ft=document.getElementById("trackingline-vertical"),ft&&(ht.griddiv.removeChild(ft),ht.FitToEditTable()))}else{for(b=parseInt(o.NextToken(),10),"undefined"!=typeof ht.context.colpanes[1]&&"number"==typeof ht.context.colpanes[1].first&&(pt=ht.context.colpanes[1].first),i&>.AddUndo("pane col "+pt);"yes"==ht.context.sheetobj.colattribs.hide[t.rcColname(b)];)b++;(!b||b<=ht.context.colpanes[0].first)&&ht.context.colpanes.length>1?ht.context.colpanes.length=1:ht.context.colpanes.length-1&&!ht.timeout?(ht.context.SetColPaneFirstLast(0,ht.context.colpanes[0].first,b-1),ht.context.SetColPaneFirstLast(1,b,b)):(ht.context.SetColPaneFirstLast(0,ht.context.colpanes[0].first,b-1),ht.context.SetColPaneFirstLast(1,b,b)),ht.griddiv&&(ft=document.getElementById("trackingline-horizon"),ft&&(ht.griddiv.removeChild(ft),ht.FitToEditTable()))}e.renderneeded=!0;break;case"startcmdextension":lt=o.NextToken(),dt=e.sci.CmdExtensionCallbacks[lt],dt&&dt.func(lt,dt.data,e,o,i);break;case"settimetrigger":case"sendemail":case"submitform":break;default:p=bt.s_escUnknownCmd+r}return t._app&&(yt?1==e.renderneeded&&"value"!=c&&"text"!=c&&"formula"!=c&&"constant"!=c&&"empty"!=c?e.widgetsClean=!1:"all"==c&&(e.widgetsClean=!1):1==e.renderneeded&&(e.widgetsClean=!1)),p},t.SheetUndo=function(e){var t,o=e.changes.TOS(),i=o?o.undo.length-1:-1,n="";for(t=i;t>=0;t--)n&&(n+="\n"),n+=o.undo[t];e.changes.Undo(),e.ScheduleSheetCommands(n,!1)},t.SheetRedo=function(e){var t,o,i=e.changes.Redo();if(!i)return void e.ScheduleSheetCommands("",!1);t=e.changes.TOS();var n="";for(o=0;t&&o=t;t++)for(o=0;o=0?'"'+r.replace(/"/,'""')+'"':'"'+r+'"':a==p?g[r]||r:r;return u},t.AdjustFormulaCoords=function(e,o,i,n,r){var a,s,l,c,u="",d=!1,h=t.Formula;if(!h)return"Need SocialCalc.Formula";var p=h.TokenType,f=p.op,m=p.string,g=p.coord,v=h.TokenOpExpansion;for(parseinfo=t.Formula.ParseFormulaIntoTokens(e),l=0;li&&cr.col>=o&&cr.colr&&cr.row>=n&&cr.row=o&&(cr.col+=i),cr.row>=n&&(cr.row+=r)),c="$"==s.charAt(0)?"$"+t.rcColname(cr.col):t.rcColname(cr.col),c+=-1!=s.indexOf("$",1)?"$"+cr.row:cr.row,(cr.row<1||cr.col<1)&&(c="#REF!"),s=c):a==m&&(s=s.indexOf('"')>=0?'"'+s.replace(/"/,'""')+'"':'"'+s+'"'),u+=s;return u},t.ReplaceFormulaCoords=function(e,o){var i,n,r,a,s,l="",c=!1,u=t.Formula;if(!u)return"Need SocialCalc.Formula";var d=u.TokenType,h=d.op,p=d.string,f=d.coord,m=u.TokenOpExpansion;for(parseinfo=t.Formula.ParseFormulaIntoTokens(e),r=0;r=0?'"'+n.replace(/"/,'""')+'"':'"'+n+'"'),l+=n;return l},t.RecalcInfo={sheet:null,currentState:0,state:{idle:0,start_calc:1,order:2,calc:3,start_wait:4,done_wait:5},recalctimer:null,maxtimeslice:100,timeslicedelay:1,starttime:0,queue:[],LoadSheet:function(){return!1}},t.RecalcData=function(){this.inrecalc=!0,this.celllist=[],this.celllistitem=0,this.calclist=null,this.calclistlength=0,this.firstcalc=null,this.lastcalc=null,this.nextcalc=null,this.count=0,this.checkinfo={}},t.RecalcCheckInfo=function(){this.oldcoord=null,this.parsepos=0,this.inrange=!1,this.inrangestart=!1,this.cr1=null,this.cr2=null,this.c1=null,this.c2=null,this.r1=null,this.r2=null,this.c=null,this.r=null},t.RecalcSheet=function(e){var o=t.RecalcInfo;return o.currentState!=o.state.idle?void o.queue.push(e):(delete e.attribs.circularreferencecell,t.Formula.FreshnessInfoReset(),t.RecalcClearTimeout(),o.sheet=e,o.currentState=o.state.start_calc,o.starttime=new Date,e.statuscallback&&e.statuscallback(o,"calcstart",null,e.statuscallbackparams),void t.RecalcSetTimeout())},t.RecalcSetTimeout=function(){var o=t.RecalcInfo;o.recalctimer=e.setTimeout(t.RecalcTimerRoutine,o.timeslicedelay)},t.RecalcClearTimeout=function(){var o=t.RecalcInfo;o.recalctimer&&(e.clearTimeout(o.recalctimer),o.recalctimer=null)},t.RecalcLoadedSheet=function(e,o,i,n){var r,a=t.RecalcInfo,s=t.Formula;r=t.Formula.AddSheetToCache(e||s.SheetCache.waitingForLoading,o,n),i&&r&&"off"!=r.attribs.recalc&&(r.previousrecalcsheet=a.sheet,a.sheet=r,a.currentState=a.state.start_calc),s.SheetCache.waitingForLoading=null,t.RecalcSetTimeout()},t.RecalcTimerRoutine=function(){var e,o,i,n,r,a=new Date,s=0,l=t.Formula;if(!l)return"Need SocialCalc.Formula";var c=t.RecalcInfo,u=c.sheet;if(u){var d=u.recalcdata||(u.recalcdata={}),h=function(e,t){u.statuscallback&&u.statuscallback(d,e,t,u.statuscallbackparams)};if(t.RecalcClearTimeout(),c.currentState==c.state.start_calc){d=new t.RecalcData,u.recalcdata=d;for(i in u.cells)i&&d.celllist.push(i);d.calclist={},c.currentState=c.state.order}if(c.currentState==c.state.order){for(;d.celllistitem=c.maxtimeslice)return h("calcorder",{coord:i,total:d.celllist.length,count:d.celllistitem}),void t.RecalcSetTimeout();return h("calccheckdone",d.calclistlength),d.nextcalc=d.firstcalc,c.currentState=c.state.calc,void t.RecalcSetTimeout()}if(c.currentState==c.state.start_wait){if(c.currentState=c.state.done_wait,c.LoadSheet&&(r=c.LoadSheet(l.SheetCache.waitingForLoading)))return;return void t.RecalcLoadedSheet(null,"",!1)}if(c.currentState==c.state.done_wait)return c.currentState=c.state.calc,void t.RecalcSetTimeout();for(c.currentState!=c.state.calc&&alert("Recalc state error: "+c.currentState+". Error in SocialCalc code."),i=u.recalcdata.nextcalc;i;){if(o=u.cells[i],o.parseinfo||(o.parseinfo=l.ParseFormulaIntoTokens(o.formula)),o.parseinfo.coord=i,e=l.evaluate_parsed_formula(o.parseinfo,u,!1),l.SheetCache.waitingForLoading){if(1!=c.firstRenderScheduled){var p=t.GetSpreadsheetControlObject().editor;p.ScheduleRender(!1),c.firstRenderScheduled=!0}return d.nextcalc=i,d.count+=s,h("calcloading",{sheetname:l.SheetCache.waitingForLoading}),c.currentState=c.state.start_wait,void t.RecalcSetTimeout()}if(l.RemoteFunctionInfo.waitingForServer)return d.nextcalc=i,d.count+=s,h("calcserverfunc",{funcname:l.RemoteFunctionInfo.waitingForServer,coord:i,total:d.calclistlength,count:d.count}),void(c.currentState=c.state.done_wait);if((o.datavalue!=e.value||o.valuetype!=e.type)&&(o.datavalue=e.value,o.valuetype=e.type,delete o.displaystring,u.recalcchangedavalue=!0),e.error&&(o.errors=e.error),s++,i=u.recalcdata.calclist[i],new Date-a>=c.maxtimeslice)return d.nextcalc=i,d.count+=s,h("calcstep",{coord:i,total:d.calclistlength,count:d.count}),void t.RecalcSetTimeout()}if(d.inrecalc=!1,u.reRenderCellList=u.recalcdata.celllist,delete u.recalcdata,delete u.attribs.needsrecalc,c.sheet=u.previousrecalcsheet||null,c.sheet)return c.currentState=c.state.calc,void t.RecalcSetTimeout();l.FreshnessInfo.recalc_completed=!0,c.currentState=c.state.idle,h("calcfinished",new Date-c.starttime),c.queue.length>0&&(u=c.queue.shift(),u.RecalcSheet())}},t.RecalcCheckCell=function(e,o){var i,n,r,a,s,l,c,u,d,h,p=t.Formula;if(!p)return"Need SocialCalc.Formula";var f=p.TokenType,m=f.op,g=f.name,v=f.coord,b=e.recalcdata,y=b.checkinfo,C=!1,w=null,x=o;e:for(;x;)if(d=e.cells[x],h=y[x],!d||"f"!=d.datatype||h&&"object"!=typeof h)x=w,y[x]&&(w=y[x].oldcoord);else{for(h||(h=new t.RecalcCheckInfo,y[x]=h),d.errors&&delete d.errors,d.parseinfo||(d.parseinfo=p.ParseFormulaIntoTokens(d.formula)),i=d.parseinfo,a=h.parsepos;ah.cr2.col?(h.c1=h.cr2.col,h.c2=h.cr1.col):(h.c1=h.cr1.col,h.c2=h.cr2.col),h.c=h.c1-1,h.cr1.row>h.cr2.row?(h.r1=h.cr2.row,h.r2=h.cr1.row):(h.r1=h.cr1.row,h.r2=h.cr2.row),h.r=h.r1,h.inrangestart=!1),h.c+=1,h.c>h.c2){if(h.r+=1,h.r>h.r2){h.inrange=!1;continue}h.c=h.c1}if(s=t.crToCoord(h.c,h.r),h.parsepos=a,h.oldcoord=w,w=x,x=s,y[x]&&"object"==typeof y[x])return d.errors=t.Constants.s_caccCircRef+o,y[o]=!0,b.firstcalc?b.calclist[b.lastcalc]=o:b.firstcalc=o,b.lastcalc=o,b.calclistlength++,e.attribs.circularreferencecell=x+"|"+w,d.errors;continue e}if(r=i[a].type,n=i[a].text,r==m&&("!"==n?C=!0:":"!=n&&(C=!1)),r==g)if(l=p.LookupName(e,n),"range"==l.type){if(c=l.value.indexOf("|"),-1!=c){h.cr1=t.coordToCr(l.value.substring(0,c)),u=l.value.indexOf("|",c+1),h.cr2=t.coordToCr(l.value.substring(c+1,u)),h.inrange=!0,h.inrangestart=!0,a-=1;continue}}else"coord"==l.type&&(r=v,n=l.value);if(r==v){if(a>=2&&i[a-1].type==m&&":"==i[a-1].text&&i[a-2].type==v&&!C){h.cr1=t.coordToCr(i[a-2].text),h.cr2=t.coordToCr(n),h.inrange=!0,h.inrangestart=!0,a-=1;continue}if(!C){if(-1!=n.indexOf("$")&&(n=n.replace(/\$/g,"")),h.parsepos=a+1,h.oldcoord=w,w=x,x=n,y[x]&&"object"==typeof y[x])return d.errors=t.Constants.s_caccCircRef+o,y[o]=!0,b.firstcalc?b.calclist[b.lastcalc]=o:b.firstcalc=o,b.lastcalc=o,b.calclistlength++,e.attribs.circularreferencecell=x+"|"+w,d.errors;continue e}}}C=!1,y[x]=!0,b.firstcalc?b.calclist[b.lastcalc]=x:b.firstcalc=x,b.lastcalc=x,b.calclistlength++,x=w,w=y[x]?y[x].oldcoord:null}return""},t.Parse=function(e){this.str=e,this.pos=0,this.delimiter=" ",this.lineEnd=e.indexOf("\n"),this.lineEnd<0&&(this.lineEnd=e.length)},t.Parse.prototype.NextToken=function(){if(this.pos<0)return"";var e=this.str.indexOf(this.delimiter,this.pos),t=this.pos;return e>this.lineEnd&&(e=this.lineEnd),e>=0?(this.pos=e+1,this.str.substring(t,e)):(this.pos=this.lineEnd,this.str.substring(t,this.lineEnd))},t.Parse.prototype.RestOfString=function(){var e=this.pos;return this.pos<0||this.pos>=this.lineEnd?"":(this.pos=this.lineEnd,this.str.substring(e,this.lineEnd))},t.Parse.prototype.RestOfStringNoMove=function(){return this.pos<0||this.pos>=this.lineEnd?"":this.str.substring(this.pos,this.lineEnd)},t.Parse.prototype.NextLine=function(){this.pos=this.lineEnd+1,this.lineEnd=this.str.indexOf("\n",this.pos),this.lineEnd<0&&(this.lineEnd=this.str.length)},t.Parse.prototype.EOF=function(){return this.pos<0||this.pos>=this.str.length?!0:!1},t.UndoStack=function(){this.stack=[],this.tos=-1,this.maxRedo=0,this.maxUndo=50},t.UndoStack.prototype.PushChange=function(e){for(;this.stack.length>0&&this.stack.length-1>this.tos;)this.stack.pop();this.stack.push({command:[],type:e,undo:[]}),this.maxRedo&&this.stack.length>this.maxRedo&&this.stack.shift(),this.maxUndo&&this.stack.length>this.maxUndo&&(this.stack[this.stack.length-this.maxUndo-1].undo=[]),this.tos=this.stack.length-1},t.UndoStack.prototype.AddDo=function(){if(this.stack[this.stack.length-1]){for(var e=[],t=0;t=0?this.stack[this.tos]:null},t.UndoStack.prototype.Undo=function(){return this.tos>=0&&(!this.maxUndo||this.tos>this.stack.length-this.maxUndo-1)?(this.tos-=1,!0):!1},t.UndoStack.prototype.Redo=function(){return this.tos=c;c++)"*"==i[c]&&(i[c]="*"!=a[c]?a[c]:r[c]);e.layouts[s]="padding:"+i[1]+" "+i[2]+" "+i[3]+" "+i[4]+";vertical-align:"+i[5]+";"}e.needprecompute=!1},t.CalculateCellSkipData=function(e){{var o,i,n,r,a,s,l,c,u,d=e.sheetobj;d.rowattribs,d.colattribs}for(e.maxrow=0,e.maxcol=0,e.cellskip={},o=1;o<=d.attribs.lastrow;o++)for(i=1;i<=d.attribs.lastcol;i++)if(n=t.crToCoord(i,o),r=d.cells[n],void 0!==r&&!e.cellskip[n]&&(a=r.colspan||1,s=r.rowspan||1,a>1||s>1))for(l=o;o+s>l;l++)for(c=i;i+a>c;c++)u=t.crToCoord(c,l),u==n?e.coordToCR[n]={row:o,col:i}:e.cellskip[u]=n,l>e.maxrow&&(maxrow=l),c>e.maxcol&&(maxcol=c);e.needcellskip=!1},t.CalculateColWidthData=function(e){{var o,i,n,r,a=e.sheetobj;a.colattribs}for(r=e.showRCHeaders?e.rownamewidth-0:0,colpane=0;colpane0?n-0:10);e.totalwidth=r},t.CalculateRowHeightData=function(e){var o,i,n,r=e.sheetobj;for(n=e.showRCHeaders?e.pixelsPerRow:0,rowpane=0;rowpane0?i-0:10);e.totalheight=n},t.InitializeTable=function(e,t){t.style.borderCollapse="collapse",t.cellSpacing="0",t.cellPadding="0",t.style.width=e.totalwidth+"px"},t.RenderSheet=function(e,t,o){var i,n,r,a,s,l;for(e.sheetobj.changedrendervalues&&(e.needcellskip=!0,e.needprecompute=!0,e.sheetobj.changedrendervalues=!1),e.needcellskip&&e.CalculateCellSkipData(),e.needprecompute&&e.PrecomputeSheetFontsAndLayouts(),e.CalculateColWidthData(),e.CalculateRowHeightData(),r=document.createElement("table"),e.InitializeTable(r),a=e.RenderColGroup(),r.appendChild(a),s=document.createElement("tbody"),s.appendChild(e.RenderSizingRow()),e.showRCHeaders&&(i=e.RenderColHeaders(),i&&s.appendChild(i)),n=0;n1&&"yes"==c.rowattribs.hide[o-1]){var h=document.createElement("div");e.classnames&&(h.className=e.classnames.unhidebottom),e.explicitStyles&&(h.style.cssText=e.explicitStyles.unhidebottom),e.rowunhidebottom[o]=h,a.appendChild(h)}var f=document.createElement("div");f.className=e.classnames.rowresizebar,a.appendChild(f),u.appendChild(a)}for(s=0;s1&&"yes"==n.colattribs.hide[t.rcColname(o-1)]&&(a=document.createElement("div"),e.classnames&&(a.className=e.classnames.unhideright),e.explicitStyles&&(a.style.cssText=e.explicitStyles.unhideright),e.colunhideright[o]=a,i.appendChild(a));var s=document.createElement("span");s.style.height=t.Constants.defaultAssumedRowHeight+"px",s.className=e.classnames.colresizebar,i.appendChild(s),r.appendChild(i)}colpane1){for(d=1,l=1;l1){for(d=1,l=1;l1||h.rowspan>1)&&(p=m.cells[t.crToCoord(i+(h.colspan||1)-1,o+(h.rowspan||1)-1)]),l=h.bt,l&&"undefined"!=typeof m.borderstyles[l]&&(g+="border-top:"+m.borderstyles[l]+";"),l="undefined"!=typeof p?p.br:h.br,l&&"undefined"!=typeof m.borderstyles[l]?g+="border-right:"+m.borderstyles[l]+";":e.showGrid&&(c=e.CellInPane(o,i+(h.colspan||1),n,r)?t.crToCoord(i+(h.colspan||1),o):"nomatch",e.cellskip[c]&&(c=e.cellskip[c]),m.cells[c]&&m.cells[c].bl||(g+="border-right:"+e.gridCSS)),l="undefined"!=typeof p?p.bb:h.bb,l&&"undefined"!=typeof m.borderstyles[l]?g+="border-bottom:"+m.borderstyles[l]+";":e.showGrid&&(c=e.CellInPane(o+(h.rowspan||1),i,n,r)?t.crToCoord(i,o+(h.rowspan||1)):"nomatch",e.cellskip[c]&&(c=e.cellskip[c]),m.cells[c]&&m.cells[c].bt||(g+="border-bottom:"+e.gridCSS)),l=h.bl,l&&"undefined"!=typeof m.borderstyles[l]&&(g+="border-left:"+m.borderstyles[l]+";"),h.comment&&(u.title=h.comment,e.showGrid?(e.commentClassName&&(u.className=(u.className?u.className+" ":"")+e.commentClassName),g+=e.commentCSS):(e.commentNoGridClassName&&(u.className=(u.className?u.className+" ":"")+e.commentNoGridClassName),g+=e.commentNoGridCSS)),h.readonly&&(h.comment||(u.title=e.readonlyComment),e.showGrid?(e.readonlyClassName&&(u.className=(u.className?u.className+" ":"")+e.readonlyClassName),g+=e.readonlyCSS):(e.readonlyNoGridClassName&&(u.className=(u.className?u.className+" ":"")+e.readonlyNoGridClassName),g+=e.readonlyNoGridCSS)),u.style.cssText=g,void 0!==h.cssc&&(a?u.className=(u.className?u.className+" ":"")+h.cssc:u.classList.add(h.cssc)),c=e.highlights[v],c&&("cursor"==c&&(c+=e.cursorsuffix),e.highlightTypes[c].className&&(u.className=(u.className?u.className+" ":"")+e.highlightTypes[c].className),t.setStyles(u,e.highlightTypes[c].style)),"yes"==m.colattribs.hide[t.rcColname(i)]&&(u.style.cssText+=";display:none"),"yes"==m.rowattribs.hide[o]&&(u.style.cssText+=";display:none"),u},t.CoordInPane=function(e,t,o,i){var n=e.coordToCR[t];if(!n||!n.row||!n.col)throw"Bad coordToCR for "+t;return e.CellInPane(n.row,n.col,o,i)},t.CellInPane=function(e,t,o,i,n){var r=e.rowpanes[i],a=e.colpanes[n];if(!r||!a)throw"CellInPane called with unknown panes "+i+"/"+n;return tr.last?!1:oa.last?!1:!0},t.CreatePseudoElement=function(){return{style:{cssText:""},innerHTML:"",className:""}},t.rcColname=function(e){e>702&&(e=702),1>e&&(e=1);var t=(e-1)%26+65,o=Math.floor((e-1)/26);return o?String.fromCharCode(o+64)+String.fromCharCode(t):String.fromCharCode(t)},t.letters=["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"],t.crToCoord=function(e,o){var i;1>e&&(e=1),e>702&&(e=702),1>o&&(o=1);var n=(e-1)%26,r=Math.floor((e-1)/26);return i=r?t.letters[r-1]+t.letters[n]+o:t.letters[n]+o},t.coordToCol={},t.coordToRow={},t.coordToCr=function(e){var o,i,n,r=t.coordToRow[e];if(r)return{row:r,col:t.coordToCol[e]};for(o=0,r=0,i=0;i=n?r=10*r+n-48:n>=97?o=26*o+n-96:n>=65&&(o=26*o+n-64));return t.coordToCol[e]=o,t.coordToRow[e]=r,{row:r,col:o}},t.ParseRange=function(e){var o,i,n,r;return e||(e="A1:A1"),e=e.toUpperCase(),o=e.indexOf(":"),o>=0?(i=e.substring(0,o),n=t.coordToCr(i),n.coord=i,i=e.substring(o+1),r=t.coordToCr(i),r.coord=i):(n=t.coordToCr(e),n.coord=e,r=t.coordToCr(e),r.coord=e),{cr1:n,cr2:r}},t.decodeFromSave=function(e){if("string"!=typeof e)return e;if(-1==e.indexOf("\\"))return e;var t=e.replace(/\\c/g,":");return t=t.replace(/\\n/g,"\n"),t.replace(/\\b/g,"\\")},t.decodeFromAjax=function(e){if("string"!=typeof e)return e;if(-1==e.indexOf("\\"))return e;var t=e.replace(/\\c/g,":");return t=t.replace(/\\n/g,"\n"),t=t.replace(/\\e/g,"]]"),t.replace(/\\b/g,"\\")},t.encodeForSave=function(e){return"string"!=typeof e?e:(-1!=e.indexOf("\\")&&(e=e.replace(/\\/g,"\\b")),-1!=e.indexOf(":")&&(e=e.replace(/:/g,"\\c")),-1!=e.indexOf("\n")&&(e=e.replace(/\n/g,"\\n")),e)},t.special_chars=function(e){return/[&<>"]/.test(e)&&(e=e.replace(/&/g,"&"),e=e.replace(//g,">"),e=e.replace(/"/g,""")),e},t.Lookup=function(e,t){for(i=0;ie)return i>0?i-1:null;return t.length-1},t.setStyles=function(e,t){var o,i,n,r,a;if(t)for(o=t.split(";"),i=0;i/g,v),g=g.replace(/<%=formated_value%>/g,p),g=g.replace(/<%=display_value%>/g,h);var b;if(f){for(var y=0;y","g");g=g.replace(C,b)}if(f.html)for(var w=0;w","g");g=g.replace(C,f.html[w])}f.css&&(g=g.replace(/^(<\w+)(\W)/,"$1 style='"+f.css+"'$2"))}return g.replace(/<%=cell_reference%>/g,i)}return"error:Widget HTML missing"}return l},t.format_text_for_display=function(e,o,i,n,r,a){var i,s,l,c,u,d;return s=o.substring(1),d=e,("none"==i||null==i)&&(i=""),/^(text-|custom|hidden)/.test(i)||(i=""),(""==i||"General"==i)&&("h"==s&&(i="text-html"),("w"==s||"r"==s)&&(i="text-wiki"),"l"==s&&(i="text-link"),s||(i="text-plain")),"text-html"==i||(t.Callbacks.expand_wiki&&/^text-wiki/.test(i)?d=t.Callbacks.expand_wiki(d,n,r,i):"text-wiki"==i?d=t.Callbacks.expand_markup&&t.Callbacks.expand_markup(d,n,r)||t.special_chars("wiki-text:"+d):"text-url"==i?(l=t.special_chars(d),c=encodeURI(d),d=''+l+""):"text-link"==i?d=t.expand_text_link(d,n,r,i):"text-image"==i?(c=encodeURI(d),d=''):"text-custom:"==i.substring(0,12)?(l=t.special_chars(d),l=l.replace(/ /g,"  "),l=l.replace(/\n/g,"
"),c=encodeURI(d),u={},u.r=d,u.s=l,u.u=c,d=i.substring(12),d=d.replace(/@(r|s|u)/g,function(e,t){return u[t]})):"custom"==i.substring(0,6)?(d=t.special_chars(d),d=d.replace(/ /g,"  "),d=d.replace(/\n/g,"
"),d+=" (custom format)"):"hidden"==i?d=" ":null!=a&&""!=a&&"none"!=n.valueformats[a-0]&&""!=n.valueformats[a-0]?(i=n.valueformats[a],d=t.format_number_for_display(e,o,i)):(d=t.special_chars(d),d=d.replace(/ /g,"  "),d=d.replace(/\n/g,"
"))),d},t.format_number_for_display=function(e,o,i){var n,r,a=t.Constants;return n=e-0,r=o.substring(1),("Auto"==i||""==i)&&(i="%"==r?a.defaultFormatp:"$"==r?a.defaultFormatc:"dt"==r?a.defaultFormatdt:"d"==r?a.defaultFormatd:"t"==r?a.defaultFormatt:"l"==r?"logical":"General"),"logical"==i?n?a.defaultDisplayTRUE:a.defaultDisplayFALSE:"hidden"==i?" ":t.FormatNumber.formatNumberWithFormat(e,i,"")},t.DetermineValueType=function(e){var o,i,n,r,a,s,l,c,u,d,h=e+"",p="t";return o=h.replace(/^\s+/,""),o=o.replace(/\s+$/,""),0==h.length?p="":h.match(/^\s+$/)||(o.match(/^[-+]?\d*(?:\.)?\d*(?:[eE][-+]?\d+)?$/)?(h=o-0,isNaN(h)?h=e+"":p="n"):o.match(/^[-+]?\d*(?:\.)?\d*\s*%$/)?(h=(o.slice(0,-1)-0)/100,p="n%"):o.match(/^[-+]?\$\s*\d*(?:\.)?\d*\s*$/)&&o.match(/\d/)?(h=o.replace(/\$/,"")-0,p="n$"):o.match(/^[-+]?(\d*,\d*)+(?:\.)?\d*$/)?(h=o.replace(/,/g,"")-0,p="n"):o.match(/^[-+]?(\d*,\d*)+(?:\.)?\d*\s*%$/)?(h=(o.replace(/[%,]/g,"")-0)/100,p="n%"):o.match(/^[-+]?\$\s*(\d*,\d*)+(?:\.)?\d*$/)&&o.match(/\d/)?(h=o.replace(/[\$,]/g,"")-0,p="n$"):(i=h.match(/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{1,4})\s*$/))?(n=i[3]-0,n=1e3>n?n+2e3:n,h=0===navigator.language.indexOf("fr")?t.FormatNumber.convert_date_gregorian_to_julian(n,i[2]-0,i[1]-0)-2415019:t.FormatNumber.convert_date_gregorian_to_julian(n,i[1]-0,i[2]-0)-2415019,p="nd"):(i=h.match(/^(\d{4})[\/\-](\d{1,2})[\/\-](\d{1,2})\s*$/))?(n=i[1]-0,n=1e3>n?n+2e3:n,h=t.FormatNumber.convert_date_gregorian_to_julian(n,i[2]-0,i[3]-0)-2415019,p="nd"):(i=h.match(/^(\d{4})[\/\-](\d{1,2})[\/\-](\d{1,2}) (\d{1,2}):(\d{1,2})\s*$/))?(n=i[1]-0,n=1e3>n?n+2e3:n,r=i[4]-0,a=i[5]-0,h=t.FormatNumber.convert_date_gregorian_to_julian(n,i[2]-0,i[3]-0)-2415019,p="nd",24>r&&60>a&&(h+=r/24+a/1440,p="ndt")):(i=h.match(/^(\d{4})[\/\-](\d{1,2})[\/\-](\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})\s*$/))?(n=i[1]-0,n=1e3>n?n+2e3:n,r=i[4]-0,a=i[5]-0,s=i[6]-0,h=t.FormatNumber.convert_date_gregorian_to_julian(n,i[2]-0,i[3]-0)-2415019,p="nd",24>r&&60>a&&60>s&&(h+=r/24+a/1440+s/86400,p="ndt")):(i=h.match(/^(\d{1,2}):(\d{1,2})\s*$/))?(r=i[1]-0,a=i[2]-0,24>r&&60>a&&(h=r/24+a/1440,p="nt")):(i=h.match(/^(\d{1,2}):(\d{1,2}):(\d{1,2})\s*$/))?(r=i[1]-0,a=i[2]-0,s=i[3]-0,24>r&&60>a&&60>s&&(h=r/24+a/1440+s/86400,p="nt")):(i=h.match(/^\s*([-+]?\d+) (\d+)\/(\d+)\s*$/))?(u=i[1]-0,c=i[2]-0,l=i[3]-0,l&&l>0&&(h=u+(0>u?-c/l:c/l),p="n")):(d=t.InputConstants[h.toUpperCase()])?(c=d.indexOf(","),h=d.substring(0,c)-0,p=d.substring(c+1)):o.length>7&&"http://"==o.substring(0,7).toLowerCase()?(h=o,p="tl"):o.match(/<([A-Z][A-Z0-9]*)\b[^>]*>[\s\S]*?<\/\1>/i)&&(h=o,p="th")),{value:h,type:p}},t.InputConstants={TRUE:"1,nl",FALSE:"0,nl","#N/A":"0,e#N/A","#NULL!":"0,e#NULL!","#NUM!":"0,e#NUM!","#DIV/0!":"0,e#DIV/0!","#VALUE!":"0,e#VALUE!","#REF!":"0,e#REF!","#NAME?":"0,e#NAME?"},t.default_expand_markup=function(e){var o=e;return o=t.special_chars(o),o=o.replace(/ /g,"  "),o=o.replace(/\n/g,"
")},t.expand_text_link=function(e,o,i,n){var r,a,s,l=t.Constants,c="",u=t.ParseCellLinkText(e+"");return r=u.desc?t.special_chars(u.desc):u.pagename?l.defaultPageLinkFormatString:l.defaultLinkFormatString,e.length>7&&"http://"==e.substring(0,7).toLowerCase()&&">"!=e.charAt(e.length-1)&&(r=r.substring(7)),a=u.newwin||!i?' target="_blank"':"",u.pagename?t.Callbacks.MakePageLink&&(c=t.Callbacks.MakePageLink(u.pagename,u.workspacename,i,n)):c=encodeURI(u.url),s='"+r+""},t.ParseCellLinkText=function(e){var t={url:"",desc:"",newwin:!1,pagename:"",workspace:""},o=!1,i=e.length-1,n=0,r=e.lastIndexOf("<"),a=e.lastIndexOf("["),s=e.lastIndexOf("{"),l=-1;return">"==e.charAt(i)&&-1!=r||"]"==e.charAt(i)&&-1!=a||!("}"!=e.charAt(i)||"]"!=e.charAt(i-1)||-1==s||-1==a||s>a)?(">"==e.charAt(i)?(l=r-1,r>0&&"<"==e.charAt(l)&&">"==e.charAt(i-1)&&(l--,i--,t.newwin=!0)):"]"==e.charAt(i)?(l=a-1,o=!0,a>0&&"["==e.charAt(l)&&"]"==e.charAt(i-1)&&(l--,i--,t.newwin=!0)):"}"==e.charAt(i)&&(l=s-1,o=!0,wsend=a,i--,a>0&&"["==e.charAt(a-1)&&"]"==e.charAt(i-1)&&(wsend=a-1,i--,t.newwin=!0)," "==e.charAt(wsend-1)&&wsend--,t.workspace=e.substring(s+1,wsend)||"")," "==e.charAt(l)&&l--,'"'==e.charAt(n)&&'"'==e.charAt(l)&&(n++,l--)):(i++,l=i),o?t.pagename=e.substring(a+1,i)||"":t.url=e.substring(r+1,i)||"",l>=n&&(t.desc=e.substring(n,l+1)),t},t.ConvertSaveToOtherFormat=function(e,o,i){var n,r,a,s,l,c,u,d,h,p,f="";if("scsave"==o)return e;if(""==e)return"";if(n=new t.Sheet,n.ParseSheetSave(e),i)throw"SocialCalc.ConvertSaveToOtherFormat: Not doing recalc.";if(a=n.copiedfrom?t.ParseRange(n.copiedfrom):{cr1:{row:1,col:1},cr2:{row:n.attribs.lastrow,col:n.attribs.lastcol}},"html"==o)return r=new t.RenderContext(n),n.copiedfrom&&(r.rowpanes[0]={first:a.cr1.row,last:a.cr2.row},r.colpanes[0]={first:a.cr1.col,last:a.cr2.col}),s=document.createElement("div"),l=r.RenderSheet(null,r.defaultHTMLlinkstyle),s.appendChild(l),delete r,delete n,f=s.innerHTML,delete l,delete s,f;for(c=a.cr1.row;c<=a.cr2.row;c++){for(u=a.cr1.col;u<=a.cr2.col;u++)d=t.crToCoord(u,c),h=n.GetAssuredCell(d),p=h.errors?h.errors:h.datavalue+"","csv"==o?(-1!=p.indexOf('"')&&(p=p.replace(/"/g,'""')),/[, \n"]/.test(p)&&(p='"'+p+'"'),u>a.cr1.col&&(p=","+p)):"tab"==o&&(-1!=p.indexOf("\n")&&(-1!=p.indexOf('"')&&(p=p.replace(/"/g,'""')),p='"'+p+'"'),u>a.cr1.col&&(p=" "+p)),f+=p;f+="\n"}return f},t.ConvertOtherFormatToSave=function(e,o){var i,n,r,a,s,l,c,u,d,h,p,f,m="",g=function(){h++,h>f&&(f=h),p=t.crToCoord(h,d),t.SetConvertedCell(i,p,s),s=""};if("scsave"==o)return e;if(i=new t.Sheet,n=e.split(/\r\n|\n/),f=0,"csv"==o){for(d=0,l=!1,r=0;r0&&(i.attribs.lastrow=d,i.attribs.lastcol=f,m=i.CreateSheetSave("A1:"+t.crToCoord(f,d)))}if("tab"==o){for(d=0,l=!1,r=0;r0&&(i.attribs.lastrow=d,i.attribs.lastcol=f,m=i.CreateSheetSave("A1:"+t.crToCoord(f,d)))}return m},t.SetConvertedCell=function(e,o,i){var n,r;n=e.GetAssuredCell(o),r=t.DetermineValueType(i),"n"==r.type&&r.value==i?(n.datatype="v",n.valuetype="n",n.datavalue=r.value):"t"==r.type.charAt(0)?(n.datatype="t",n.valuetype=r.type,n.datavalue=r.value):(n.datatype="c",n.valuetype=r.type,n.datavalue=r.value,n.formula=i)};var t;t||(t={}),t.TableEditor=function(o){var i=t.Constants;this.context=o,this.toplevel=null,this.fullgrid=null,this.noEdit=!1,this.width=null,this.tablewidth=null,this.height=null,this.tableheight=null,this.inputBox=null,this.inputEcho=null,this.verticaltablecontrol=null,this.horizontaltablecontrol=null,this.logo=null,this.cellhandles=null,this.timeout=null,this.busy=!1,this.ensureecell=!1,this.deferredCommands=[],this.deferredEmailCommands=[],this.gridposition=null,this.headposition=null,this.firstscrollingrow=null,this.firstscrollingrowtop=null,this.lastnonscrollingrow=null,this.lastvisiblerow=null,this.firstscrollingcol=null,this.firstscrollingcolleft=null,this.lastnonscrollingcol=null,this.lastvisiblecol=null,this.rowpositions=[],this.colpositions=[],this.rowheight=[],this.colwidth=[],this.ecell=null,this.state="start",this.workingvalues={},this.imageprefix=i.defaultImagePrefix,this.idPrefix=i.defaultTableEditorIDPrefix,this.pageUpDnAmount=i.defaultPageUpDnAmount,this.recalcFunction=function(e){return e.context.sheetobj.RecalcSheet?void e.context.sheetobj.RecalcSheet(t.EditorSheetStatusCallback,e):null},this.ctrlkeyFunction=function(o,i){var n,r,a,s,l,c;switch(i){case"[ctrl-a]":return o.MoveECell("A1"),o.RangeAnchor("A1"),o.RangeExtend(t.crToCoord(o.context.sheetobj.attribs.lastcol,o.context.sheetobj.attribs.lastrow)),!1;case"[ctrl-c]":case"[ctrl-x]":return n=o.pasteTextarea,n.value="",r=t.GetEditorCellElement(o,o.ecell.row,o.ecell.col),r&&(a=t.GetElementPosition(r.element),n.style.left=a.left-1+"px",n.style.top=a.top-1+"px"),l=o.range.hasrange?t.crToCoord(o.range.left,o.range.top)+":"+t.crToCoord(o.range.right,o.range.bottom):o.ecell.coord,c=t.ConvertSaveToOtherFormat(t.CreateSheetSave(o.context.sheetobj,l),"tab"),s="[ctrl-c]"==i||o.noEdit||o.ECellReadonly()?"copy "+l+" formulas":"cut "+l+" formulas",o.EditorScheduleSheetCommands(s,!0,!1),n.style.display="block",n.value=c,n.focus(),n.select(),e.setTimeout(function(){var e=o.pasteTextarea;e.blur(),e.style.display="none",t.KeyboardFocus()},200),!0;case"[ctrl-v]":return o.noEdit||o.ECellReadonly()?!0:(n=o.pasteTextarea,n.value="",r=t.GetEditorCellElement(o,o.ecell.row,o.ecell.col),r&&(a=t.GetElementPosition(r.element),n.style.left=a.left-1+"px",n.style.top=a.top-1+"px"),n.style.display="block",n.value="",n.focus(),e.setTimeout(function(){var e=o.pasteTextarea,i=e.value;e.blur(),e.style.display="none";var n="";if(o.pastescclipboard)o.pastescclipboard=!1;else{var r=t.ConvertSaveToOtherFormat(t.Clipboard.clipboard,"tab");i=i.replace(/\r\n/g,"\n"),i==r||i.length-r.length==1&&i.substring(0,i.length-1)==r||(n="loadclipboard "+t.encodeForSave(t.ConvertOtherFormatToSave(i,"tab"))+"\n")}var a;if(o.range.hasrange){var s=new t.Sheet;s.ParseSheetSave(t.Clipboard.clipboard);var l=s.copiedfrom.match(/(.+):(.+)/);a=null!==l&&l[1]===l[2]?t.crToCoord(o.range.left,o.range.top)+":"+t.crToCoord(o.range.right,o.range.bottom):t.crToCoord(o.range.left,o.range.top)}else a=o.ecell.coord;n+="paste "+a+" formulas",o.EditorScheduleSheetCommands(n,!0,!1),t.KeyboardFocus()},200),!0);case"[ctrl-z]":return o.EditorScheduleSheetCommands("undo",!0,!1),!1;case"[ctrl-s]":if(!t.Constants.AllowCtrlS)break;return e.setTimeout(function(){var i=o.context.sheetobj,n=i.GetAssuredCell(o.ecell.coord),r=n.nontextvalueformat?i.valueformats[n.nontextvalueformat-0]||"":"",a=e.prompt("Advanced Feature:\n\nCustom Numeric Format or Command",r);if(null!=a){if(a.match(/^cmd:/))s=a.substring(4);else{if(a.match(/^edit:/))return s=a.substring(5),void(t.CtrlSEditor&&t.CtrlSEditor(s));l=o.range.hasrange?t.crToCoord(o.range.left,o.range.top)+":"+t.crToCoord(o.range.right,o.range.bottom):o.ecell.coord,s="set "+l+" nontextvalueformat "+a}o.EditorScheduleSheetCommands(s,!0,!1)}},200),!1}return!0},o.sheetobj.statuscallback=t.EditorSheetStatusCallback,o.sheetobj.statuscallbackparams=this,this.StatusCallback={},this.MoveECellCallback={},this.RangeChangeCallback={},this.SettingsCallbacks={},this.ecell={coord:"A1",row:1,col:1},o.highlights[this.ecell.coord]="cursor",this.range={hasrange:!1},this.range2={hasrange:!1}},t.TableEditor.prototype.CreateTableEditor=function(e,o){return t.CreateTableEditor(this,e,o)},t.TableEditor.prototype.ResizeTableEditor=function(e,o){return t.ResizeTableEditor(this,e,o)},t.TableEditor.prototype.SaveEditorSettings=function(){return t.SaveEditorSettings(this)},t.TableEditor.prototype.LoadEditorSettings=function(e,o){return t.LoadEditorSettings(this,e,o)},t.TableEditor.prototype.EditorRenderSheet=function(){t.EditorRenderSheet(this)},t.TableEditor.prototype.EditorScheduleSheetCommands=function(e,o,i){t.EditorScheduleSheetCommands(this,e,o,i)},t.TableEditor.prototype.ScheduleSheetCommands=function(e,t){this.context.sheetobj.ScheduleSheetCommands(e,t)},t.TableEditor.prototype.SheetUndo=function(){this.context.sheetobj.SheetUndo()},t.TableEditor.prototype.SheetRedo=function(){this.context.sheetobj.SheetRedo()},t.TableEditor.prototype.EditorStepSet=function(e,o){t.EditorStepSet(this,e,o)},t.TableEditor.prototype.GetStatuslineString=function(e,o,i){return t.EditorGetStatuslineString(this,e,o,i)},t.TableEditor.prototype.EditorMouseRegister=function(){return t.EditorMouseRegister(this)},t.TableEditor.prototype.EditorMouseUnregister=function(){return t.EditorMouseUnregister(this)},t.TableEditor.prototype.EditorMouseRange=function(e){return t.EditorMouseRange(this,e)},t.TableEditor.prototype.EditorProcessKey=function(e,o){return t.EditorProcessKey(this,e,o)},t.TableEditor.prototype.EditorAddToInput=function(e,o){return t.EditorAddToInput(this,e,o)},t.TableEditor.prototype.DisplayCellContents=function(){return t.EditorDisplayCellContents(this)},t.TableEditor.prototype.EditorSaveEdit=function(e){return t.EditorSaveEdit(this,e)},t.TableEditor.prototype.EditorApplySetCommandsToRange=function(e,o){return t.EditorApplySetCommandsToRange(this,e,o)},t.TableEditor.prototype.MoveECellWithKey=function(e){return t.MoveECellWithKey(this,e)},t.TableEditor.prototype.MoveECell=function(e){return t._app?"A1":t.MoveECell(this,e)},t.TableEditor.prototype.ReplaceCell=function(e,o,i){t.ReplaceCell(this,e,o,i)},t.TableEditor.prototype.UpdateCellCSS=function(e,o,i){t.UpdateCellCSS(this,e,o,i)},t.TableEditor.prototype.SetECellHeaders=function(e){t.SetECellHeaders(this,e)},t.TableEditor.prototype.EnsureECellVisible=function(){t.EnsureECellVisible(this)},t.TableEditor.prototype.ECellReadonly=function(e){return t.ECellReadonly(this,e)},t.TableEditor.prototype.RangeAnchor=function(e){t.RangeAnchor(this,e)},t.TableEditor.prototype.RangeExtend=function(e){t.RangeExtend(this,e)},t.TableEditor.prototype.RangeRemove=function(){t.RangeRemove(this)},t.TableEditor.prototype.Range2Remove=function(){t.Range2Remove(this)},t.TableEditor.prototype.FitToEditTable=function(){t.FitToEditTable(this)},t.TableEditor.prototype.CalculateEditorPositions=function(){t.CalculateEditorPositions(this)},t.TableEditor.prototype.ScheduleRender=function(){this.ScheduleRender(!0)},t.TableEditor.prototype.ScheduleRender=function(e){t._app&&1==e&&(this.context.sheetobj.widgetsClean=!1),t.ScheduleRender(this)},t.TableEditor.prototype.DoRenderStep=function(){t.DoRenderStep(this)},t.TableEditor.prototype.SchedulePositionCalculations=function(){t.SchedulePositionCalculations(this)},t.TableEditor.prototype.DoPositionCalculations=function(){t.DoPositionCalculations(this)},t.TableEditor.prototype.CalculateRowPositions=function(e,o,i){return t.CalculateRowPositions(this,e,o,i)},t.TableEditor.prototype.CalculateColPositions=function(e,o,i){return t.CalculateColPositions(this,e,o,i)},t.TableEditor.prototype.ScrollRelative=function(e,o){t.ScrollRelative(this,e,o)},t.TableEditor.prototype.ScrollRelativeBoth=function(e,o){t.ScrollRelativeBoth(this,e,o)},t.TableEditor.prototype.PageRelative=function(e,o){t.PageRelative(this,e,o)},t.TableEditor.prototype.LimitLastPanes=function(){t.LimitLastPanes(this)},t.TableEditor.prototype.ScrollTableUpOneRow=function(){return t.ScrollTableUpOneRow(this)},t.TableEditor.prototype.ScrollTableDownOneRow=function(){return t.ScrollTableDownOneRow(this)},t.TableEditor.prototype.ScrollTableLeftOneCol=function(){return t.ScrollTableLeftOneCol(this)},t.TableEditor.prototype.ScrollTableRightOneCol=function(){return t.ScrollTableRightOneCol(this)},t.TableEditor.prototype.StopPropagation=function(){return t.StopPropagation(this)},t.TableEditor.prototype.SetMouseMoveUp=function(){return t.SetMouseMoveUp(this)},t.TableEditor.prototype.RemoveMouseMoveUp=function(){return t.RemoveMouseMoveUp(this)},t.CreateTableEditor=function(o,i,n){var r=t.Constants,a=t.AssignID;o.toplevel=document.createElement("div"),o.toplevel.style.position="relative",a(o,o.toplevel,"toplevel"),o.width=i,o.height=n,o.griddiv=document.createElement("div"),o.tablewidth=Math.max(0,i-r.defaultTableControlThickness),o.tableheight=Math.max(0,n-r.defaultTableControlThickness),o.griddiv.style.width=o.tablewidth+"px",o.griddiv.style.height=o.tableheight+"px",o.griddiv.style.overflow="hidden",o.griddiv.style.cursor="default",r.cteGriddivClass&&(o.griddiv.className=r.cteGriddivClass),a(o,o.griddiv,"griddiv"),o.FitToEditTable(),o.EditorRenderSheet(),o.griddiv.appendChild(o.fullgrid),o.verticaltablecontrol=new t.TableControl(o,!0,o.tableheight),o.verticaltablecontrol.CreateTableControl(),a(o,o.verticaltablecontrol.main,"tablecontrolv"),o.horizontaltablecontrol=new t.TableControl(o,!1,o.tablewidth),o.horizontaltablecontrol.CreateTableControl(),a(o,o.horizontaltablecontrol.main,"tablecontrolh");var s,l,c,u,d;return s=document.createElement("table"),o.layouttable=s,s.cellSpacing=0,s.cellPadding=0,a(o,s,"layouttable"),l=document.createElement("tbody"),s.appendChild(l),c=document.createElement("tr"),l.appendChild(c),u=document.createElement("td"),u.appendChild(o.griddiv),c.appendChild(u),1!=t._app&&(u=document.createElement("td"),u.appendChild(o.verticaltablecontrol.main),c.appendChild(u)),c=document.createElement("tr"),l.appendChild(c),1!=t._app&&(u=document.createElement("td"),u.appendChild(o.horizontaltablecontrol.main),c.appendChild(u)),u=document.createElement("td"),u.style.background=t._app?"url("+o.imageprefix+"logo.gif) no-repeat right center":"url("+o.imageprefix+"logo.gif) no-repeat center center",u.innerHTML="
",c.appendChild(u),o.logo=u,a(o,o.logo,"logo"),u.firstChild.firstChild.title="SocialCalc",o.toplevel.appendChild(o.layouttable),o.noEdit||(o.inputEcho=new t.InputEcho(o),a(o,o.inputEcho.main,"inputecho")),o.cellhandles=new t.CellHandles(o),d=document.createElement("textarea"),t.setStyles(d,"display:none;position:absolute;height:1px;width:1px;opacity:0;filter:alpha(opacity=0);"),d.value="",o.pasteTextarea=d,a(o,o.pasteTextarea,"pastetextarea"),navigator.userAgent.match(/Safari\//)&&!navigator.userAgent.match(/Chrome\//)&&(e.removeEventListener("beforepaste",t.SafariPasteFunction,!1),e.addEventListener("beforepaste",t.SafariPasteFunction,!1),e.removeEventListener("beforecopy",t.SafariPasteFunction,!1),e.addEventListener("beforecopy",t.SafariPasteFunction,!1),e.removeEventListener("beforecut",t.SafariPasteFunction,!1),e.addEventListener("beforecut",t.SafariPasteFunction,!1)),o.toplevel.appendChild(o.pasteTextarea),t.MouseWheelRegister(o.toplevel,{WheelMove:t.EditorProcessMouseWheel,editor:o}),t.KeyboardSetFocus(o),t.EditorSheetStatusCallback(null,"startup",null,o),o.toplevel},t.SafariPasteFunction=function(e){e.preventDefault()},t.ResizeTableEditor=function(e,o,i){var n=t.Constants;e.width=o,e.height=i,e.toplevel.style.width=o+"px",e.toplevel.style.height=i+"px",e.tablewidth=t._app?Math.max(0,o):Math.max(0,o-n.defaultTableControlThickness),e.tableheight=Math.max(0,i-n.defaultTableControlThickness),e.griddiv.style.width=e.tablewidth+"px",e.griddiv.style.height=e.tableheight+"px",e.verticaltablecontrol.main.style.height=e.tableheight+"px",e.horizontaltablecontrol.main.style.width=e.tablewidth+"px",e.FitToEditTable(),e.ScheduleRender()},t.SaveEditorSettings=function(e){var t,o,i=e.context,n=e.range,r="";for(r+="version:1.0\n",t=0;t"),r+=""},t.EditorMouseInfo={registeredElements:[],editor:null,element:null,ignore:!1,mousedowncoord:"",mouselastcoord:"",mouseresizecol:"",mouseresizeclientx:null,mouseresizedisplay:null},t.EditorMouseRegister=function(e){var o,i=t.EditorMouseInfo,n=e.fullgrid;for(o=0;o=^".indexOf(i.slice(-1))>=0&&"="==i.slice(0,1)||"="==i)&&(n.partialexpr=i),n.partialexpr?o&&e.inputBox.SetText(r.hasrange?n.partialexpr+t.crToCoord(r.left,r.top)+":"+t.crToCoord(r.right,r.bottom):n.partialexpr+o):(e.inputBox.Blur(),e.inputBox.ShowInputBox(!1),e.state="start",e.cellhandles.ShowCellHandles(!0),e.EditorSaveEdit(),e.inputBox.DisplayCellContents(null));break;case"inputboxdirect":e.inputBox.Blur(),e.inputBox.ShowInputBox(!1),e.state="start",e.cellhandles.ShowCellHandles(!0),e.EditorSaveEdit(),e.inputBox.DisplayCellContents(null)}},t.ProcessEditorMouseMove=function(o){var i,n,r,a=o||e.event,s=t.EditorMouseInfo;if(i=s.editor,i&&!s.ignore){n=s.element;var l=t.GetElementPositionWithScroll(i.toplevel),c=a.clientX-l.left,u=a.clientY-l.top;if(r=t.GridMousePosition(i,c,u)){if(r&&!r.coord)return void t.SetDragAutoRepeat(i,r);t.SetDragAutoRepeat(i,null),r.coord&&(r.coord!=s.mouselastcoord&&(o.shiftKey||i.range.hasrange||i.RangeAnchor(s.mousedowncoord),i.MoveECell(r.coord),i.RangeExtend()),s.mouselastcoord=r.coord,i.EditorMouseRange(r.coord),t.StopPropagation(a))}}},t.ProcessEditorMouseUp=function(o){var i,n,r,a=o||e.event,s=t.EditorMouseInfo;if(i=s.editor,i&&!s.ignore){n=s.element;var l=t.GetElementPositionWithScroll(i.toplevel),c=a.clientX-l.left,u=a.clientY-l.top;if(r=t.GridMousePosition(i,c,u),t.SetDragAutoRepeat(i,null),r)return r.coord||(r.coord=i.ecell.coord),i.range.hasrange?(i.MoveECell(r.coord),i.RangeExtend()):r.coord&&r.coord!=s.mousedowncoord&&(i.RangeAnchor(s.mousedowncoord),i.MoveECell(r.coord),i.RangeExtend()),i.EditorMouseRange(r.coord),s.editor=null,t.RemoveMouseMoveUp(t.ProcessEditorMouseMove,t.ProcessEditorMouseUp,n,a),!1}},t.ProcessEditorColsizeMouseDown=function(o,i,n){var r=o||e.event,a=t.EditorMouseInfo,s=a.editor,l=t.GetElementPositionWithScroll(s.toplevel),c=r.clientX-l.left;if(a.mouseresizecolnum=n.coltoresize,a.mouseresizecol=t.rcColname(n.coltoresize),a.mousedownclientx=c,a.mousecoltounhide=n.coltounhide,n.coltoresize){var u=document.createElement("div");a.mouseresizedisplay=u,u.style.width="auto",u.style.position="absolute",u.style.zIndex=100,u.style.top=s.headposition.top+"px",u.style.left=s.colpositions[n.coltoresize]+"px",u.innerHTML='
 
'+s.context.colwidth[a.mouseresizecolnum]+"
",t.setStyles(u.firstChild.lastChild.firstChild.childNodes[0],"filter:alpha(opacity=85);opacity:.85;"),s.toplevel.appendChild(u)}t.SetMouseMoveUp(t.ProcessEditorColsizeMouseMove,t.ProcessEditorColsizeMouseUp,s.toplevel,r)},t.ProcessEditorColsizeMouseMove=function(o){var i=o||e.event,n=t.EditorMouseInfo,r=n.editor;if(r){if(n.mouseresizecolnum){var a=t.GetElementPositionWithScroll(r.toplevel),s=i.clientX-a.left,l=r.context.colwidth[n.mouseresizecolnum]-0+(s-n.mousedownclientx);l 
'+l+"
",t.setStyles(c.firstChild.lastChild.firstChild.childNodes[0],"filter:alpha(opacity=85);opacity:.85;")}t.StopPropagation(i)}},t.ProcessEditorColsizeMouseUp=function(o){var i=o||e.event,n=t.EditorMouseInfo,r=n.editor;if(r){element=n.element;var a=t.GetElementPositionWithScroll(r.toplevel),s=i.clientX-a.left;if(t.RemoveMouseMoveUp(t.ProcessEditorColsizeMouseMove,t.ProcessEditorColsizeMouseUp,r.toplevel,i),n.mousecoltounhide)r.EditorScheduleSheetCommands("set "+t.rcColname(n.mousecoltounhide)+" hide",!0,!1);else if(n.mouseresizecolnum){var l=r.context.colwidth[n.mouseresizecolnum]-0+(s-n.mousedownclientx);l 
'+s.context.rowheight[a.mouseresizerownum]+"
",t.setStyles(u.firstChild.lastChild.firstChild.childNodes[0],"filter:alpha(opacity=85);opacity:.5;"),s.toplevel.appendChild(u)}t.SetMouseMoveUp(t.ProcessEditorRowsizeMouseMove,t.ProcessEditorRowsizeMouseUp,s.toplevel,r)},t.ProcessEditorRowsizeMouseMove=function(o){var i=o||e.event,n=t.EditorMouseInfo,r=n.editor;if(r){if(n.mouseresizerownum){var a=t.GetSpreadsheetControlObject().spreadsheetDiv.firstChild.offsetHeight,s=i.clientY-a,l=r.context.rowheight[n.mouseresizerownum]-0+(s-n.mousedownclienty);l 
'+l+"
",t.setStyles(c.firstChild.lastChild.firstChild.childNodes[0],"filter:alpha(opacity=85);opacity:.5;")}t.StopPropagation(i)}},t.ProcessEditorRowsizeMouseUp=function(o){var i=o||e.event,n=t.EditorMouseInfo,r=n.editor;if(r){element=n.element;var a=t.GetSpreadsheetControlObject().spreadsheetDiv.firstChild.offsetHeight,s=i.clientY-a;if(t.RemoveMouseMoveUp(t.ProcessEditorRowsizeMouseMove,t.ProcessEditorRowsizeMouseUp,r.toplevel,i),n.mouserowtounhide)r.EditorScheduleSheetCommands("set "+n.mouserowtounhide+" hide",!0,!1);else if(n.mouseresizerownum){var l=r.context.rowheight[n.mouseresizerownum]-0+(s-n.mousedownclienty);ls.mouseinfo.row?"right":"",s.repeatcallback(r,a)):(o.MoveECell(r),o.MoveECell(r),o.RangeExtend(),o.EditorMouseRange(r))):(i.colheader||i.colfooter)&&i.col!=s.mouseinfo.col&&(r=t.crToCoord(i.col,o.ecell.row),s.repeatcallback?(a=i.rows.mouseinfo.row?"right":"",s.repeatcallback(r,a)):(o.MoveECell(r),o.RangeExtend(),o.EditorMouseRange(r)))),s.mouseinfo=i,i.distance<5)s.repeatinterval=333;else if(i.distance<10)s.repeatinterval=250;else if(i.distance<25)s.repeatinterval=100;else{if(!(i.distance<35))return void(s.timer&&(e.clearTimeout(s.timer),s.timer=null));s.repeatinterval=75}s.timer||(s.timer=e.setTimeout(t.DragAutoRepeat,s.repeatinterval))},t.DragAutoRepeat=function(){var o,i,n,r=t.AutoRepeatInfo,a=r.mouseinfo;a.rowheader?o="left":a.rowfooter?o="right":a.colheader?o="up":a.colfooter&&(o="down"),r.repeatcallback?(n=t.coordToCr(r.editor.ecell.coord),"left"==o&&n.col>1?n.col--:"right"==o?n.col++:"up"==o&&n.row>1?n.row--:"down"==o&&n.row++,i=t.crToCoord(n.col,n.row),r.repeatcallback(i,o)):(i=r.editor.MoveECellWithKey("[a"+o+"]shifted"),i&&r.editor.EditorMouseRange(i)),r.timer=e.setTimeout(t.DragAutoRepeat,r.repeatinterval)},t.ProcessEditorDblClick=function(o){var i,n,r,a,s=o||e.event,l=t.EditorMouseInfo,c=s.target||s.srcElement;if(!l.ignore){for(a=null;!a&&c;c=c.parentNode)a=t.LookupElement(c,l.registeredElements);if(!a)return void(l.editor=null);i=a.editor;var u=t.GetElementPositionWithScroll(i.toplevel),d=s.clientX-u.left,h=s.clientY-u.top;if(n=t.GridMousePosition(i,d,h),n&&n.coord){switch(l.editor=i,l.element=c,r=i.range,sheetobj=i.context.sheetobj,i.state){case"start":t.EditorOpenCellEdit(i);break;case"input":}t.StopPropagation(s)}}},t.EditorOpenCellEdit=function(e){var t;return e.ecell&&e.inputBox?e.inputBox.element.disabled?!0:(e.inputBox.ShowInputBox(!0),e.inputBox.Focus(),e.inputBox.SetText(""),e.inputBox.DisplayCellContents(),e.inputBox.Select("end"),t=e.workingvalues,t.partialexpr="",t.ecoord=e.ecell.coord,t.erow=e.ecell.row,void(t.ecol=e.ecell.col)):!0},t.EditorProcessKey=function(e,o,i){var n,r,a,s,l=(e.context.sheetobj,e.workingvalues),c=e.range;switch("string"!=typeof o&&(o=""),e.state){case"start":if(i.shiftKey&&"[a"==o.substr(0,2)&&(o+="shifted"),"[enter]"==o&&(o="[adown]"),"[tab]"==o&&(o=i.shiftKey?"[aleft]":"[aright]"),"[a"==o.substr(0,2)||"[pg"==o.substr(0,3)||"[home]"==o)return n=e.MoveECellWithKey(o),!n;if("[del]"==o||"[backspace]"==o){e.noEdit||e.ECellReadonly()||e.EditorApplySetCommandsToRange("empty","");break}if("[esc]"==o){if(c.hasrange){e.RangeRemove(),e.MoveECell(c.anchorcoord);for(s in e.StatusCallback)e.StatusCallback[s].func(e,"specialkey",o,e.StatusCallback[s].params)}return!1}if("[f2]"==o)return e.noEdit||e.ECellReadonly()?!0:(t.EditorOpenCellEdit(e),e.state="inputboxdirect",!1);if(o.length>1&&"["==o.substr(0,1)||0==o.length)return e.ctrlkeyFunction&&o.length>0?e.ctrlkeyFunction(e,o):!0;if(!e.ecell)return!0;if(!e.inputBox)return!0;if(e.ECellReadonly())return!0;e.inputBox.element.disabled=!1,e.state="input",e.inputBox.ShowInputBox(!0),e.inputBox.Focus(),e.inputBox.SetText(o),e.inputBox.Select("end"),l.partialexpr="",l.ecoord=e.ecell.coord,l.erow=e.ecell.row,l.ecol=e.ecell.col,e.RangeRemove();break;case"input":if(a=e.inputBox.GetText(),e.inputBox.skipOne)return!1;if("[esc]"==o||"[enter]"==o||"[tab]"==o||o&&"[a"==o.substr(0,2)){if(("(+-*/,:!&<>=^".indexOf(a.slice(-1))>=0&&"="==a.slice(0,1)||"="==a)&&(l.partialexpr=a),l.partialexpr&&(i.shiftKey&&"[a"==o.substr(0,2)&&(o+="shifted"),r=e.MoveECellWithKey(o)))return e.inputBox.SetText(c.hasrange?l.partialexpr+t.crToCoord(c.left,c.top)+":"+t.crToCoord(c.right,c.bottom):l.partialexpr+r),!1;e.inputBox.Blur(),e.inputBox.ShowInputBox(!1),e.state="start",e.cellhandles.ShowCellHandles(!0),"[esc]"!=o?(e.EditorSaveEdit(),e.ecell.coord!=l.ecoord&&e.MoveECell(l.ecoord),"[enter]"==o&&(o="[adown]"),"[tab]"==o&&(o=i.shiftKey?"[aleft]":"[aright]"),"[a"==o.substr(0,2)&&e.MoveECellWithKey(o)):(e.inputBox.DisplayCellContents(),e.RangeRemove(),e.MoveECell(l.ecoord));break}return l.partialexpr&&"[backspace]"==o?(e.inputBox.SetText(l.partialexpr),l.partialexpr="",e.RangeRemove(),e.MoveECell(l.ecoord),e.inputBox.ShowInputBox(!0),!1):"[f2]"==o?(e.state="inputboxdirect",!1):(c.hasrange&&e.RangeRemove(),e.MoveECell(l.ecoord),l.partialexpr&&(e.inputBox.ShowInputBox(!0),l.partialexpr=""),!0);case"inputboxdirect":if(a=e.inputBox.GetText(),"[esc]"==o||"[enter]"==o||"[tab]"==o){e.inputBox.Blur(),e.inputBox.ShowInputBox(!1),e.state="start",e.cellhandles.ShowCellHandles(!0),"[esc]"==o?e.inputBox.DisplayCellContents():(e.EditorSaveEdit(),e.ecell.coord!=l.ecoord&&e.MoveECell(l.ecoord),"[enter]"==o&&(o="[adown]"),"[tab]"==o&&(o=i.shiftKey?"[aleft]":"[aright]"),"[a"==o.substr(0,2)&&e.MoveECellWithKey(o));break}return"[f2]"==o?(e.state="input",!1):!0;case"skip-and-start":return e.state="start",e.cellhandles.ShowCellHandles(!0),!1;default:return!0}return!1},t.EditorAddToInput=function(e,t,o){var i=e.workingvalues;if(!e.noEdit&&!e.ECellReadonly())switch(e.state){case"start":e.state="input",e.inputBox.ShowInputBox(!0),e.inputBox.element.disabled=!1,e.inputBox.Focus(),e.inputBox.SetText((o||"")+t),e.inputBox.Select("end"),i.partialexpr="",i.ecoord=e.ecell.coord,i.erow=e.ecell.row,i.ecol=e.ecell.col,e.RangeRemove();break;case"input":case"inputboxdirect":e.inputBox.element.focus(),i.partialexpr&&(e.inputBox.SetText(i.partialexpr),i.partialexpr="",e.RangeRemove(),e.MoveECell(i.ecoord)),e.inputBox.SetText(e.inputBox.GetText()+t)}},t.EditorDisplayCellContents=function(e){e.inputBox&&e.inputBox.DisplayCellContents()},t.EditorSaveEdit=function(e,o){var i,n,r,a,s,l,c=e.context.sheetobj,u=e.workingvalues;r="text t",a="string"==typeof o?o:e.inputBox.GetText(),s=t.GetCellContents(c,u.ecoord)+"",a!=s&&(n=a.charAt(0),"="==n&&-1==a.indexOf("\n")?(r="formula",a=a.substring(1)):"'"==n?(r="text t",a=a.substring(1),i=t.DetermineValueType(a),"t"==i.type.charAt(0)&&(r="text "+i.type)):0==a.length?r="empty":(i=t.DetermineValueType(a),r="n"==i.type&&a==i.value+""?"value n":"t"==i.type.charAt(0)?"text "+i.type:""==i.type?"text t":"constant "+i.type+" "+i.value),"t"==r.charAt(0)&&(a=t.encodeForSave(a)),l="set "+u.ecoord+" "+r+" "+a,e.EditorScheduleSheetCommands(l,!0,!1),"undefined"!=typeof c.ioEventTree&&"undefined"!=typeof c.ioParameterList&&"undefined"!=typeof c.ioEventTree[u.ecoord]&&t.EditedTriggerCell(c.ioEventTree[u.ecoord],u.ecoord,e,c))},t.EditedTriggerCell=function(e,t,o,i){for(var n in e){var r=i.ioParameterList[n];if("undefined"!=typeof r)switch(r.function_name){case"EMAILONEDIT":case"EMAILONEDITIF":cmdline="setemailparameters "+n+" "+t,o.deferredEmailCommands.push({cmdstr:cmdline,saveundo:!1})}}},t.EditorApplySetCommandsToRange=function(e,o){var i,n,r=(e.context.sheetobj,e.ecell),a=e.range;a.hasrange?(coord=t.crToCoord(a.left,a.top)+":"+t.crToCoord(a.right,a.bottom),i="set "+coord+" "+o,n=e.EditorScheduleSheetCommands(i,!0,!1)):(i="set "+r.coord+" "+o,n=e.EditorScheduleSheetCommands(i,!0,!1)),e.DisplayCellContents()},t.EditorProcessMouseWheel=function(e,t,o,i){i.functionobj.editor.busy||(t>0&&i.functionobj.editor.ScrollRelative(!0,Math.floor(1.5*-t)),0>t&&i.functionobj.editor.ScrollRelative(!0,Math.ceil(1.5*-t)))},t.GridMousePosition=function(e,o,i){var n,r,a,s,l,c,u={};for(n=1;ni);n++);for(a=1;ao);a++);if(u.row=n,u.col=a,e.headposition&&1!=t._app){if(o=e.gridposition.left){for(u.rowheader=!0,u.distance=e.headposition.left-o,u.rowtoresize=!1,u.rowselect=!1,l=1;l=i){u.rowtoresize=l;break}if((unhide=e.context.rowunhidetop[n])&&(pos=t.GetElementPosition(unhide),o>=pos.left&&o=e.rowpositions[n]+e.rowheight[n]-unhide.offsetHeight&&i=pos.left&&o=e.rowpositions[n]&&i=e.context.rowpanes[r].first&&u.rowtoresize<=e.context.rowpanes[r].last)return u;u.rowselect=!0}return delete u.rowtoresize,u}if(ie.gridposition.top){for(u.colheader=!0,u.distance=e.headposition.top-i,u.coltoresize=!1,u.colselect=!1,c=1;c=o){u.coltoresize=c;break}if((unhide=e.context.colunhideleft[a])&&(pos=t.GetElementPosition(unhide),o>=pos.left&&o=pos.top&&i=pos.left&&o=pos.top&&i=e.context.colpanes[s].first&&u.coltoresize<=e.context.colpanes[s].last)return u;u.colselect=!0}return delete u.coltoresize,u}return o>=e.verticaltablecontrol.controlborder?(u.rowfooter=!0,u.distance=o-e.verticaltablecontrol.controlborder,u):i>=e.horizontaltablecontrol.controlborder?(u.colfooter=!0,u.distance=i-e.horizontaltablecontrol.controlborder,u):o=e.context.rowpanes[a].first&&o<=e.context.rowpanes[a].last)for(s=0;s=e.context.colpanes[s].first&&i<=e.context.colpanes[s].last){for(u+=o-e.context.rowpanes[a].first+2,l=e.context.colpanes[s].first;i>=l;l++)c=e.context.cellskip[t.crToCoord(l,o)],c&&e.context.CoordInPane(c,a,s)||d++;return{element:e.griddiv.firstChild.lastChild.childNodes[u+r].childNodes[d+n],rowpane:a,colpane:s}}for(l=e.context.colpanes[s].first;l<=e.context.colpanes[s].last;l++)c=e.context.cellskip[t.crToCoord(l,o)],c&&e.context.CoordInPane(c,a,s)||d++;d+=1}u+=e.context.rowpanes[a].last-e.context.rowpanes[a].first+1+1}return null},t.MoveECellWithKey=function(e,o){var i,n,r,a,s=!1,l=1;if(!e.ecell)return null;switch("shifted"==o.slice(-7)&&(o=o.slice(0,-7),s=!0),n=e.ecell.row,r=e.ecell.col,a=e.context.sheetobj.cells[e.ecell.coord],o){case"[adown]":n+=a&&a.rowspan||1;break;case"[aup]":n--,l=-1;break;case"[pgdn]":n+=e.pageUpDnAmount-1+(a&&a.rowspan||1);break;case"[pgup]":n-=e.pageUpDnAmount,l=-1;break;case"[aright]":r+=a&&a.colspan||1;break;case"[aleft]":r--,l=-1;break;case"[home]":n=1,r=1;break;default:return null}for(e.context.sheetobj.attribs.usermaxcol&&(r=Math.min(e.context.sheetobj.attribs.usermaxcol,r)),e.context.sheetobj.attribs.usermaxrow&&(n=Math.min(e.context.sheetobj.attribs.usermaxrow,n));"yes"==e.context.sheetobj.colattribs.hide[t.rcColname(r)];)r+=l,1>r&&(l=-l,r=1);for(;"yes"==e.context.sheetobj.rowattribs.hide[n];)n+=l,1>n&&(l=-l,n=1);return e.range.hasrange||s&&e.RangeAnchor(),i=e.MoveECell(t.crToCoord(r,n)),e.range.hasrange&&(s?e.RangeExtend():e.RangeRemove()),i},t.MoveECell=function(e,o){var i,n,r=e.context.highlights,a=t.coordToCr(o);if(e.context.sheetobj.attribs.usermaxcol&&a.col>e.context.sheetobj.attribs.usermaxcol&&(a.col=e.context.sheetobj.attribs.usermaxcol),e.context.sheetobj.attribs.usermaxrow&&a.row>e.context.sheetobj.attribs.usermaxrow&&(a.row=e.context.sheetobj.attribs.usermaxrow),o=t.crToCoord(a.col,a.row),e.ecell){if(e.ecell.coord==o)return o;i=t.GetEditorCellElement(e,e.ecell.row,e.ecell.col),delete r[e.ecell.coord],e.range2.hasrange&&e.ecell.row>=e.range2.top&&e.ecell.row<=e.range2.bottom&&e.ecell.col>=e.range2.left&&e.ecell.col<=e.range2.right&&(r[e.ecell.coord]="range2"),e.UpdateCellCSS(i,e.ecell.row,e.ecell.col),e.SetECellHeaders(""),e.cellhandles&&e.cellhandles.ShowCellHandles(!1) -}o=e.context.cellskip[o]||o,e.ecell=t.coordToCr(o),e.ecell.coord=o,i=t.GetEditorCellElement(e,e.ecell.row,e.ecell.col),r[o]="cursor";for(n in e.MoveECellCallback)e.MoveECellCallback[n](e);e.UpdateCellCSS(i,e.ecell.row,e.ecell.col),e.SetECellHeaders("selected");for(n in e.StatusCallback)e.StatusCallback[n].func(e,"moveecell",o,e.StatusCallback[n].params);return e.busy?e.ensureecell=!0:(e.ensureecell=!1,e.EnsureECellVisible()),o},t.EnsureECellVisible=function(e){var t=0,o=0;e.ecell.row>e.lastnonscrollingrow&&(e.ecell.rowe.lastvisiblerow&&(t=e.ecell.row-e.lastvisiblerow+Math.floor((e.lastvisiblerow-e.firstscrollingrow)/2))),e.ecell.col>e.lastnonscrollingcol&&(e.ecell.cole.lastvisiblecol&&(o=e.ecell.col-e.lastvisiblecol+Math.floor((e.lastvisiblecol-e.firstscrollingcol)/2))),0!=t||0!=o?e.ScrollRelativeBoth(t,o):e.cellhandles.ShowCellHandles(!0)},t.ReplaceCell=function(e,t,o,i){var n,r;if(t&&(n=e.context.RenderCell(o,i,t.rowpane,t.colpane,!0,null),n&&t.element)){t.element.innerHTML=n.innerHTML,t.element.style.cssText="",t.element.className=n.className;for(r in n.style)"cssText"!=n.style[r]&&(t.element.style[r]=n.style[r])}},t.UpdateCellCSS=function(e,t,o,i){var n,r;if(t&&(n=e.context.RenderCell(o,i,t.rowpane,t.colpane,!0,null))){t.element.style.cssText="",t.element.className=n.className;for(r in n.style)"cssText"!=n.style[r]&&(t.element.style[r]=n.style[r])}},t.SetECellHeaders=function(e,o){if(e.context.showRCHeaders!==!1){var i,n,r,a,s,l=e.ecell,c=e.context,u=0,d=0;if(l){for(;"yes"==c.sheetobj.colattribs.hide[t.rcColname(l.col)];)l.col++;for(;"yes"==c.sheetobj.rowattribs.hide[l.row];)l.row++;for(l.coord=t.crToCoord(l.col,l.row),i=0;i=r&&l.row<=a){var h=2+u+l.row-r;null!==e.fullgrid&&h>=0&&(s=e.fullgrid.childNodes[1].childNodes[h].childNodes[0],s&&(c.classnames&&(s.className=c.classnames[o+"rowname"]),c.explicitStyles&&(s.style.cssText=c.explicitStyles[o+"rowname"]),s.style.verticalAlign="top"))}u+=a-r+1+1}for(n=0;n=r&&l.col<=a){var h=1+d+l.col-r;null!==e.fullgrid&&h>=0&&(s=e.fullgrid.childNodes[1].childNodes[1].childNodes[h],s&&(c.classnames&&(s.className=c.classnames[o+"colname"]),c.explicitStyles&&(s.style.cssText=c.explicitStyles[o+"colname"])))}d+=a-r+1+1}}}},t.ECellReadonly=function(e,t){if(!t&&e.ecell&&(t=e.ecell.coord),!t)return!1;var o=e.context.sheetobj.cells[t];return o&&o.readonly},t.RangeAnchor=function(e,t){e.range.hasrange&&e.RangeRemove(),e.RangeExtend(t)},t.RangeExtend=function(e,o){var i,n,r,a,s,l,c,u=e.context.highlights,d=e.range,h=e.range2;if(o?(c=t.coordToCr(o),c.coord=o):c=e.ecell,c){d.hasrange||(d.anchorcoord=c.coord,d.anchorrow=c.row,d.top=c.row,d.bottom=c.row,d.anchorcol=c.col,d.left=c.col,d.right=c.col,d.hasrange=!0),d.anchorrow0?n-0:10);for(o=u.colpanes[colpane].first;1e4>=o&&(i=t.rcColname(o),"yes"!=d.colattribs.hide[i]&&(n=d.colattribs.width[i]||d.attribs.defaultcolwidth||t.Constants.defaultColWidth,("blank"==n||"auto"==n)&&(n=""),r+=n&&n-0>0?n-0:10),!(r>e.tablewidth));o++);u.colpanes[colpane].last=u.sheetobj.attribs.usermaxcol||o;for(var h=u.rowpanes[0].first,p=u.sheetobj.attribs.lastrow;"yes"==d.rowattribs.hide[h]&&p>h;)h++;for(u.rowpanes[0].first=h,a=u.showRCHeaders?1:0,l=0;le.gridposition.top+e.tableheight);n++);for(e.lastvisiblerow=n-1,e.colpositions=[],i=0;ie.gridposition.left+e.tablewidth);n++);for(e.lastvisiblecol=n-1,e.firstscrollingrow=e.context.rowpanes[e.context.rowpanes.length-1].first;"yes"==e.context.sheetobj.rowattribs.hide[e.firstscrollingrow];)e.firstscrollingrow++;for(e.firstscrollingrowtop=e.rowpositions[e.firstscrollingrow]||e.headposition.top,e.lastnonscrollingrow=e.context.rowpanes.length-1>0?e.context.rowpanes[e.context.rowpanes.length-2].last:0,e.firstscrollingcol=e.context.colpanes[e.context.colpanes.length-1].first;"yes"==e.context.sheetobj.colattribs.hide[t.rcColname(e.firstscrollingcol)];)e.firstscrollingcol++;e.firstscrollingcolleft=e.colpositions[e.firstscrollingcol]||e.headposition.left,e.lastnonscrollingcol=e.context.colpanes.length-1>0?e.context.colpanes[e.context.colpanes.length-2].last:0,e.verticaltablecontrol.ComputeTableControlPositions(),e.horizontaltablecontrol.ComputeTableControlPositions()},t.ScheduleRender=function(o){1!=o.ignoreRender&&(o.timeout&&e.clearTimeout(o.timeout),t.EditorSheetStatusCallback(null,"schedrender",null,o),o.timeout=e.setTimeout(function(){t.DoRenderStep(o)},1))},t.DoRenderStep=function(o){o.timeout=null,o.EditorRenderSheet(),t.EditorSheetStatusCallback(null,"renderdone",null,o),t.EditorSheetStatusCallback(null,"schedposcalc",null,o),o.timeout=e.setTimeout(function(){t.DoPositionCalculations(o)},1)},t.SchedulePositionCalculations=function(o){t.EditorSheetStatusCallback(null,"schedposcalc",null,o),o.timeout=e.setTimeout(function(){t.DoPositionCalculations(o)},1)},t.DoPositionCalculations=function(e){e.timeout=null,e.CalculateEditorPositions(),e.verticaltablecontrol.PositionTableControlElements(),e.horizontaltablecontrol.PositionTableControlElements(),t.EditorSheetStatusCallback(null,"doneposcalc",null,e),e.ensureecell&&e.ecell&&!e.deferredCommands.length&&(e.ensureecell=!1,e.EnsureECellVisible()),e.cellhandles.ShowCellHandles(!0)},t.CalculateRowPositions=function(e,t,o,i){{var n,r,a,s,l,c,u=e.context;u.sheetobj}if(u.showRCHeaders){for(c=e.fullgrid.lastChild,n=2,r=0;t>r;r++)n+=u.rowpanes[r].last-u.rowpanes[r].first+2;for(s=0,a=u.rowpanes[r].first;a<=u.rowpanes[r].last;a++)l=c.childNodes[n+s],s++,l&&(o[a]||(o[a]=l.firstChild.offsetTop,i[a]=l.firstChild.offsetHeight))}},t.CalculateColPositions=function(e,o,i,n){{var r,a,s,l,c,u,d,h=e.context;h.sheetobj}if(h.showRCHeaders){for(d=e.fullgrid.lastChild,r=1,a=0;o>a;a++)r+=h.colpanes[a].last-h.colpanes[a].first+2;for(c=d.childNodes[1],l=0,s=h.colpanes[a].first;s<=h.colpanes[a].last;s++)u=t.GetElementPosition(c.childNodes[r+l]),i[s]||(i[s]=u.left,c.childNodes[r+l]&&(n[s]=c.childNodes[r+l].offsetWidth)),l++}},t.ScrollRelative=function(e,t,o){t?e.ScrollRelativeBoth(o,0):e.ScrollRelativeBoth(0,o)},t.ScrollRelativeBoth=function(e,o,i){var n=e.context,r=o>0?1:-1,a=i>0?1:-1,s=n.rowpanes.length,l=s>1?n.rowpanes[s-2].last+1:1;n.rowpanes[s-1].first+o1?n.colpanes[c-2].last+1:1;for(n.colpanes[c-1].first+ii){i=0;break}for(;"yes"==n.sheetobj.rowattribs.hide[n.rowpanes[s-1].first+o];)if(o+=r,1>o){o=0;break}return 1!=o&&-1!=o||0!=i?void((0!=o||0!=i)&&(n.rowpanes[s-1].first+=o,n.rowpanes[s-1].last+=o,n.colpanes[c-1].first+=i,n.colpanes[c-1].last+=i,e.LimitLastPanes(),e.FitToEditTable(),e.ScheduleRender())):(1==o?e.ScrollTableUpOneRow():e.ScrollTableDownOneRow(),e.ecell&&e.SetECellHeaders("selected"),void e.SchedulePositionCalculations())},t.PageRelative=function(e,o,i){var n,r,a,s,l=e.context,c=o?"rowpanes":"colpanes",u=l[c][l[c].length-1],d=o?"lastvisiblerow":"lastvisiblecol",h=o?e.rowheight:e.colwidth,p=o?t.Constants.defaultAssumedRowHeight:t.Constants.defaultColWidth;if(i>0)r=e[d],r==u.first&&(r+=1);else{for(a=o?e.tableheight-(e.firstscrollingrowtop-e.gridposition.top):e.tablewidth-(e.firstscrollingcolleft-e.gridposition.left),a-=h[e[d]]>0?h[e[d]]:p,r=u.first-1;r>0&&(n=h[r]>0?h[r]:p,!(n>a));r--)a-=n;s=u.first,r>=s&&(r=s-1),1>r&&(r=1)}u.first=r,u.last=r+1,e.LimitLastPanes(),e.FitToEditTable(),e.ScheduleRender()},t.LimitLastPanes=function(e){var t,o=e.context;t=o.rowpanes.length,t>1&&o.rowpanes[t-1].first<=o.rowpanes[t-2].last&&(o.rowpanes[t-1].first=o.rowpanes[t-2].last+1),o.sheetobj.attribs.usermaxrow&&o.rowpanes[t-1].first>o.sheetobj.attribs.usermaxrow&&(o.rowpanes[t-1].first=o.sheetobj.attribs.usermaxrow),t=o.colpanes.length,t>1&&o.colpanes[t-1].first<=o.colpanes[t-2].last&&(o.colpanes[t-1].first=o.colpanes[t-2].last+1),o.sheetobj.attribs.usermaxcol&&o.colpanes[t-1].first>o.sheetobj.attribs.usermaxcol&&(o.colpanes[t-1].first=o.sheetobj.attribs.usermaxcol)},t.ScrollTableUpOneRow=function(e){var o,i,n,r,a,s,l,c,u,d,h,p,f={},m=e.context,g=m.sheetobj,v=e.fullgrid;for(p=v.lastChild,o=m.showRCHeaders?2:1,i=0;imaxrowspan&&(maxrowspan=s.rowspan));if(maxrowspan>1)for(n=1;maxrowspan>n&&!(n+l>=m.rowpanes[i].last);n++)u=m.RenderRow(n+l,i),d=p.childNodes[o+n-1],p.replaceChild(u,d);for(h=m.rowpanes[i].last,a=0;a1&&(f[n]=!0)));for(n in f)u=m.RenderRow(n,i),d=p.childNodes[o+(n-m.rowpanes[i].first)],p.replaceChild(u,d);return v},t.ScrollTableDownOneRow=function(e){var o,i,n,r,a,s,l,c,u,d,h,p={},f=e.context,m=f.sheetobj,g=e.fullgrid;for(h=g.lastChild,o=f.showRCHeaders?2:1,i=0;imaxrowspan&&(maxrowspan=s.rowspan));if(maxrowspan>1)for(n=1;maxrowspan>n&&!(n+l>f.rowpanes[i].last);n++)c=f.RenderRow(n+l,i),u=h.childNodes[o+n],h.replaceChild(c,u);for(d=f.rowpanes[i].last,a=0;a1?p[d]=!0:(coord=f.cellskip[t.crToCoord(r,d)],coord&&(n=f.coordToCR[coord].row-0,n==d||n1&&(p[n]=!0))));for(n in p)c=f.RenderRow(n,i),u=h.childNodes[o+(n-f.rowpanes[i].first)],h.replaceChild(c,u);return g},t.InputBox=function(e,o){e&&(this.element=e,this.editor=o,this.inputEcho=null,o.inputBox=this,e.onmousedown=t.InputBoxOnMouseDown,o.MoveECellCallback.formulabar=function(e){"start"==e.state&&o.inputBox.DisplayCellContents(e.ecell.coord)})},t.InputBox.prototype.DisplayCellContents=function(e){t.InputBoxDisplayCellContents(this,e)},t.InputBox.prototype.ShowInputBox=function(e){this.editor.inputEcho.ShowInputEcho(e)},t.InputBox.prototype.GetText=function(){return this.element.value},t.InputBox.prototype.SetText=function(e){this.element&&(this.element.value=e,this.editor.inputEcho.SetText(e+"_"))},t.InputBox.prototype.Focus=function(){t.InputBoxFocus(this)},t.InputBox.prototype.Blur=function(){return this.element.blur()},t.InputBox.prototype.Select=function(e){if(this.element)switch(e){case"end":if(document.selection&&document.selection.createRange)try{var t=document.selection.createRange().duplicate();t.moveToElementText(this.element),t.collapse(!1),t.select()}catch(o){void 0!=this.element.selectionStart&&(this.element.selectionStart=this.element.value.length,this.element.selectionEnd=this.element.value.length)}else void 0!=this.element.selectionStart&&(this.element.selectionStart=this.element.value.length,this.element.selectionEnd=this.element.value.length)}},t.InputBoxDisplayCellContents=function(e,o){var i=t.Constants;if(e){if(!o){if(!e.editor)return;if(!e.editor.ecell)return;o=e.editor.ecell.coord}var n=t.GetCellContents(e.editor.context.sheetobj,o);-1!=n.indexOf("\n")?(n=i.s_inputboxdisplaymultilinetext,e.element.disabled=!0):e.element.disabled=e.editor.ECellReadonly()?!0:!1,e.SetText(n)}},t.InputBoxFocus=function(e){if(e){e.element.focus();var t=e.editor;t.state="input";var o=t.workingvalues;o.partialexpr="",o.ecoord=t.ecell.coord,o.erow=t.ecell.row,o.ecol=t.ecell.col}},t.InputBoxOnMouseDown=function(){var e=t.Keyboard.focusTable;if(!e)return!0;var o=e.workingvalues;switch(e.state){case"start":e.state="inputboxdirect",o.partialexpr="",o.ecoord=e.ecell.coord,o.erow=e.ecell.row,o.ecol=e.ecell.col,e.inputEcho.ShowInputEcho(!0);break;case"input":o.partialexpr="",e.MoveECell(o.ecoord),e.state="inputboxdirect",t.KeyboardFocus();break;case"inputboxdirect":}},t.InputEcho=function(e){var o=t.Constants;this.editor=e,this.text="",this.interval=null,this.container=null,this.main=null,this.prompt=null,this.hint=null,this.functionbox=null,this.container=document.createElement("div"),t.setStyles(this.container,"display:none;position:absolute;zIndex:10;"),this.main=document.createElement("div"),o.defaultInputEchoClass&&(this.main.className=o.defaultInputEchoClass),o.defaultInputEchoStyle&&t.setStyles(this.main,o.defaultInputEchoStyle),this.main.innerHTML=" ",this.hint=document.createElement("div"),o.defaultInputEchoHintClass&&(this.hint.className=o.defaultInputEchoHintClass),o.defaultInputEchoHintStyle&&t.setStyles(this.hint,o.defaultInputEchoHintStyle),this.hint.innerHTML="",this.container.appendChild(this.hint),this.container.appendChild(this.main),this.prompt=document.createElement("div"),o.defaultInputEchoPromptClass&&(this.prompt.className=o.defaultInputEchoPromptClass),o.defaultInputEchoPromptStyle&&t.setStyles(this.prompt,o.defaultInputEchoPromptStyle),this.prompt.innerHTML="",this.container.appendChild(this.prompt),t.DragRegister(this.main,!0,!0,{MouseDown:t.DragFunctionStart,MouseMove:t.DragFunctionPosition,MouseUp:t.DragFunctionPosition,Disabled:null,positionobj:this.container},this.editor.toplevel),e.toplevel.appendChild(this.container)},t.InputEcho.prototype.ShowInputEcho=function(e){return t.ShowInputEcho(this,e)},t.InputEcho.prototype.SetText=function(e){return t.SetInputEchoText(this,e)},t.ShowInputEcho=function(o,i){var n,r,a=o.editor;a&&(i?(a.cellhandles.ShowCellHandles(!1),n=t.GetEditorCellElement(a,a.ecell.row,a.ecell.col),n&&(r=t.GetElementPosition(n.element),o.container.style.left=r.left-1+"px",o.container.style.top=r.top-1+"px"),o.hint.innerHTML=a.ecell.coord,o.container.style.display="block",o.interval&&e.clearInterval(o.interval),o.interval=e.setInterval(t.InputEchoHeartbeat,50)):(o.interval&&e.clearInterval(o.interval),o.container.style.display="none"))},t.SetInputEchoText=function(e,o){var i,n,r=t.Constants,a=t.special_chars(o);a=a.replace(/\n/g,"
"),e.text!=a&&(e.main.innerHTML=a,e.text=a);var s=o.match(/.*[\+\-\*\/\&\^\<\>\=\,\(]([A-Za-z][A-Za-z][\w\.]*?)\([^\)]*$/);"="==o.charAt(0)&&s?(i=s[1].toUpperCase(),t.Formula.FunctionList[i]?(t.Formula.FillFunctionInfo(),n=t.special_chars(i+"("+t.Formula.FunctionArgString(i)+")")):n=r.ietUnknownFunction+i,e.prompt.innerHTML!=n&&(e.prompt.innerHTML=n,e.prompt.style.display="block")):"none"!=e.prompt.style.display&&(e.prompt.innerHTML="",e.prompt.style.display="none")},t.InputEchoHeartbeat=function(){var e=t.Keyboard.focusTable;return e?void e.inputEcho.SetText(e.inputBox.GetText()+"_"):!0},t.InputEchoMouseDown=function(o){var i=(o||e.event,t.Keyboard.focusTable);return i?void i.inputBox.element.focus():!0},t.CellHandles=function(e){t.Constants;if(!e.noEdit){this.editor=e,this.noCursorSuffix=!1,this.movedmouse=!1,this.draghandle=document.createElement("div"),t.setStyles(this.draghandle,"display:none;position:absolute;zIndex:8;border:1px solid white;width:4px;height:4px;fontSize:1px;backgroundColor:#0E93D8;cursor:default;"),this.draghandle.innerHTML=" ",e.toplevel.appendChild(this.draghandle),t.AssignID(e,this.draghandle,"draghandle");var o="png";if(navigator.userAgent.match(/MSIE 6\.0/)&&(o="gif"),this.dragpalette=document.createElement("div"),t.setStyles(this.dragpalette,"display:none;position:absolute;zIndex:8;width:90px;height:90px;fontSize:1px;textAlign:center;cursor:default;backgroundImage:url("+t.Constants.defaultImagePrefix+"drag-handles."+o+");"),this.dragpalette.innerHTML=" ",e.toplevel.appendChild(this.dragpalette),t.AssignID(e,this.dragpalette,"dragpalette"),this.dragtooltip=document.createElement("div"),t.setStyles(this.dragtooltip,"display:none;position:absolute;zIndex:9;border:1px solid black;width:100px;height:auto;fontSize:10px;backgroundColor:#FFFFFF;"),this.dragtooltip.innerHTML=" ",e.toplevel.appendChild(this.dragtooltip),t.AssignID(e,this.dragtooltip,"dragtooltip"),this.fillinghandle=document.createElement("div"),t.setStyles(this.fillinghandle,"display:none;position:absolute;zIndex:9;border:1px solid black;width:auto;height:14px;fontSize:10px;backgroundColor:#FFFFFF;"),this.fillinghandle.innerHTML=" ",e.toplevel.appendChild(this.fillinghandle),t.AssignID(e,this.fillinghandle,"fillinghandle"),this.draghandle.addEventListener)this.draghandle.addEventListener("mousemove",t.CellHandlesMouseMoveOnHandle,!1),this.dragpalette.addEventListener("mousedown",t.CellHandlesMouseDown,!1),this.dragpalette.addEventListener("mousemove",t.CellHandlesMouseMoveOnHandle,!1);else{if(!this.draghandle.attachEvent)throw"Browser not supported";this.draghandle.attachEvent("onmousemove",t.CellHandlesMouseMoveOnHandle),this.dragpalette.attachEvent("onmousedown",t.CellHandlesMouseDown),this.dragpalette.attachEvent("onmousemove",t.CellHandlesMouseMoveOnHandle)}}},t.CellHandles.prototype.ShowCellHandles=function(e,o){return t.ShowCellHandles(this,e,o)},t.ShowCellHandles=function(e,o,i){var n,r,a,s=e.editor,l=!1,c=1,u=1;if(s&&s.ecell){do{if(!o)break;if(r=s.ecell.row,a=s.ecell.col,"start"!=s.state)break;if(r>=s.lastvisiblerow)break;if(a>=s.lastvisiblecol)break;if(rs.horizontaltablecontrol.controlborder)break;if(s.rowpositions[r+u]-10s.verticaltablecontrol.controlborder)break;if(s.colpositions[a+c]-30=a&&a+n/2>o&&i>=s&&s+r/2>i&&(u<=e[0]?l=-1:u<=e[1]&&(l=1)),o>=a+n/2&&a+n>o&&i>=s&&s+r/2>i&&(u<=e[0]?l=-2:u<=e[1]&&(l=2)),o>=a+n/2&&a+n>o&&i>=s+r/2&&s+r>i&&(u<=e[0]?l=-3:u<=e[1]&&(l=3)),o>=a&&a+n/2>o&&i>=s+r/2&&s+r>i&&(u<=e[0]?l=-4:u<=e[1]&&(l=4)),l;for(;;)if(o>=a&&a+n/2>o&&i>=s&&s+r/2>i){if(quadrant+="1",l=c[0],"number"==typeof l)break;c=l,n/=2,r/=2}else if(o>=a+n/2&&a+n>o&&i>=s&&s+r/2>i){if(quadrant+="2",l=c[1],"number"==typeof l)break;c=l,n/=2,a+=n,r/=2}else if(o>=a+n/2&&a+n>o&&i>=s+r/2&&s+r>i){if(quadrant+="3",l=c[2],"number"==typeof l)break;c=l,n/=2,a+=n,r/=2,s+=r}else{if(!(o>=a&&a+n/2>o&&i>=s+r/2&&s+r>i))return 0;if(quadrant+="4",l=c[3],"number"==typeof l)break;c=l,n/=2,r/=2,s+=r}return l},t.CellHandlesHoverTimeout=function(){if(editor=t.Keyboard.focusTable,!editor)return!0;var o=editor.cellhandles;o.timer&&(e.clearTimeout(o.timer),o.timer=null),editor.cellhandles.ShowCellHandles(!0,!1)},t.CellHandlesMouseDown=function(o){var i,n,r,a=t.Constants,s=o||e.event,l=t.EditorMouseInfo;if(i=t.Keyboard.focusTable,!i)return!0;if(!i.busy){var c=i.cellhandles;c.movedmouse=!1;var u=t.GetElementPositionWithScroll(i.toplevel),d=s.clientX-u.left,h=s.clientY-u.top;c.timer&&(e.clearTimeout(c.timer),c.timer=null),c.dragtooltip.innerHTML=" ",c.dragtooltip.style.display="none",r=i.range;var p=t.SegmentDivHit([a.CH_radius1,a.CH_radius2],i.cellhandles.dragpalette,d,h);if(1==p||-1==p||0==p)return void c.ShowCellHandles(!0,!1);switch(l.ignore=!0,-3==p?(c.dragtype="Fill",c.noCursorSuffix=!1):3==p?(c.dragtype="FillC",c.noCursorSuffix=!1):-2==p?(c.dragtype="Move",c.noCursorSuffix=!0):-4==p?(c.dragtype="MoveI",c.noCursorSuffix=!1):2==p?(c.dragtype="MoveC",c.noCursorSuffix=!0):4==p&&(c.dragtype="MoveIC",c.noCursorSuffix=!1),c.filltype=null,c.dragtype){case"Fill":case"FillC":r.hasrange||i.RangeAnchor(),i.range2.top=i.range.top,i.range2.right=i.range.right,i.range2.bottom=i.range.bottom,i.range2.left=i.range.left,i.range2.hasrange=!0;break;case"Move":case"MoveI":case"MoveC":case"MoveIC":r.hasrange||i.RangeAnchor(),i.range2.top=i.range.top,i.range2.right=i.range.right,i.range2.bottom=i.range.bottom,i.range2.left=i.range.left,i.range2.hasrange=!0,i.RangeRemove();break;default:return}c.fillinghandle.style.left=d+"px",c.fillinghandle.style.top=h-17+"px",c.fillinghandle.innerHTML=a.s_CHindicatorOperationLookup[c.dragtype]+(a.s_CHindicatorDirectionLookup[i.cellhandles.filltype]||""),c.fillinghandle.style.display="block",c.ShowCellHandles(!0,!1),c.mouseDown=!0,l.editor=i,n=i.ecell.coord,c.startingcoord=n,c.startingX=d,c.startingY=h,l.mouselastcoord=n,t.KeyboardSetFocus(i),document.addEventListener?(document.addEventListener("mousemove",t.CellHandlesMouseMove,!0),document.addEventListener("mouseup",t.CellHandlesMouseUp,!0)):c.draghandle.attachEvent&&(c.draghandle.setCapture(),c.draghandle.attachEvent("onmousemove",t.CellHandlesMouseMove),c.draghandle.attachEvent("onmouseup",t.CellHandlesMouseUp),c.draghandle.attachEvent("onlosecapture",t.CellHandlesMouseUp)),t.StopPropagation(s)}},t.CellHandlesMouseMove=function(o){var i,n,r,a,s,l,c,u=t.Constants,d=o||e.event,h=t.EditorMouseInfo;if(i=h.editor){var p=i.cellhandles;n=h.element;var f=t.GetElementPositionWithScroll(i.toplevel),m=d.clientX-f.left,g=d.clientY-f.top;if(r=t.GridMousePosition(i,m,g)){if(r&&!r.coord)return void t.SetDragAutoRepeat(i,r,t.CellHandlesDragAutoRepeat);if(t.SetDragAutoRepeat(i,null),r.coord){switch(a=t.coordToCr(i.cellhandles.startingcoord),s=t.coordToCr(r.coord),p.movedmouse=!0,p.dragtype){case"Fill":case"FillC":r.coord==p.startingcoord?(p.filltype=null,p.startingX=m,p.startingY=g):p.filltype?"Down"==p.filltype?(s.col=a.col,s.row10?p.filltype="Down":Math.abs(m-p.startingX)>10&&(p.filltype="Right"),s.col=a.col,s.row=a.row),r.coord=t.crToCoord(s.col,s.row),r.coord!=h.mouselastcoord&&(i.MoveECell(r.coord),i.RangeExtend());break;case"Move":case"MoveC":r.coord!=h.mouselastcoord&&(i.MoveECell(r.coord),l=i.range2.right-i.range2.left+r.col,c=i.range2.bottom-i.range2.top+r.row,i.RangeAnchor(t.crToCoord(l,c)),i.RangeExtend());break;case"MoveI":case"MoveIC":r.coord==p.startingcoord?(p.filltype=null,p.startingX=m,p.startingY=g):p.filltype?"Vertical"==p.filltype?(s.col=i.range2.left,s.row>=i.range2.top&&s.row<=i.range2.bottom+1&&(s.row=i.range2.bottom+2)):(s.row=i.range2.top,s.col>=i.range2.left&&s.col<=i.range2.right+1&&(s.col=i.range2.right+2)):(Math.abs(g-p.startingY)>10?p.filltype="Vertical":Math.abs(m-p.startingX)>10&&(p.filltype="Horizontal"),s.col=a.col,s.row=a.row),r.coord=t.crToCoord(s.col,s.row),r.coord!=h.mouselastcoord&&(i.MoveECell(r.coord),p.filltype?(l=i.range2.right-i.range2.left+s.col,c=i.range2.bottom-i.range2.top+s.row,i.RangeAnchor(t.crToCoord(l,c)),i.RangeExtend()):i.RangeRemove())}p.fillinghandle.style.left=m+"px",p.fillinghandle.style.top=g-17+"px",p.fillinghandle.innerHTML=u.s_CHindicatorOperationLookup[p.dragtype]+(u.s_CHindicatorDirectionLookup[i.cellhandles.filltype]||""),p.fillinghandle.style.display="block",h.mouselastcoord=r.coord,t.StopPropagation(d)}}}},t.CellHandlesDragAutoRepeat=function(e,o){var i=t.EditorMouseInfo,n=i.editor;if(n){var r,a,s,l=n.cellhandles,c=t.coordToCr(n.cellhandles.startingcoord),u=t.coordToCr(e),d=0,h=0;switch("left"==o?h=-1:"right"==o?h=1:"up"==o?d=-1:"down"==o&&(d=1),n.ScrollRelativeBoth(d,h),l.dragtype){case"Fill":case"FillC":l.filltype?"Down"==l.filltype?(u.col=c.col,u.row=n.range2.top&&u.row<=n.range2.bottom+1&&(u.row=n.range2.bottom+2)):(u.row=n.range2.top,u.col>=n.range2.left&&u.col<=n.range2.right+1&&(u.col=n.range2.right+2)):(u.col=c.col,u.row=c.row),r=t.crToCoord(u.col,u.row),r!=i.mouselastcoord&&(n.MoveECell(r),a=n.range2.right-n.range2.left+u.col,s=n.range2.bottom-n.range2.top+u.row,n.RangeAnchor(t.crToCoord(a,s)),n.RangeExtend())}i.mouselastcoord=r}},t.CellHandlesMouseUp=function(o){var i,n,r,a,s,l,c,u,d,h,p,f,m=o||e.event,g=t.EditorMouseInfo;if(i=g.editor){var v=i.cellhandles;n=g.element,g.ignore=!1;var b=t.GetElementPositionWithScroll(i.toplevel),y=m.clientX-b.left,C=m.clientY-b.top;switch(r=t.GridMousePosition(i,y,C),t.SetDragAutoRepeat(i,null),v.mouseDown=!1,v.noCursorSuffix=!1,v.fillinghandle.style.display="none",r||(r={}),r.coord||(r.coord=i.ecell.coord),v.dragtype){case"Fill":case"Move":case"MoveI":l=" all";break;case"FillC":case"MoveC":case"MoveIC":l=" formulas"}switch(v.movedmouse||(v.dragtype="Nothing"),v.dragtype){case"Nothing":i.Range2Remove(),i.RangeRemove();break;case"Fill":case"FillC":c=t.coordToCr(v.startingcoord),u=t.coordToCr(r.coord),v.filltype&&("Down"==v.filltype?u.col=c.col:u.row=c.row),r.coord=t.crToCoord(u.col,u.row),i.MoveECell(r.coord),i.RangeExtend(),s="Right"==i.cellhandles.filltype?"right":"down",a="fill"+s+" "+t.crToCoord(i.range.left,i.range.top)+":"+t.crToCoord(i.range.right,i.range.bottom)+l,i.EditorScheduleSheetCommands(a,!0,!1);break;case"Move":case"MoveC":i.context.cursorsuffix="",a="movepaste "+t.crToCoord(i.range2.left,i.range2.top)+":"+t.crToCoord(i.range2.right,i.range2.bottom)+" "+i.ecell.coord+l,i.EditorScheduleSheetCommands(a,!0,!1),i.Range2Remove();break;case"MoveI":case"MoveIC":i.context.cursorsuffix="",d=i.range2.right-i.range2.left,h=i.range2.bottom-i.range2.top,p=i.ecell.col-i.range2.left,f=i.ecell.row-i.range2.top,a="moveinsert "+t.crToCoord(i.range2.left,i.range2.top)+":"+t.crToCoord(i.range2.right,i.range2.bottom)+" "+i.ecell.coord+l,i.EditorScheduleSheetCommands(a,!0,!1),i.Range2Remove(),i.RangeRemove()," Horizontal"==i.cellhandles.filltype&&p>0?i.MoveECell(t.crToCoord(i.ecell.col-d-1,i.ecell.row)):" Vertical"==i.cellhandles.filltype&&f>0&&i.MoveECell(t.crToCoord(i.ecell.col,i.ecell.row-h-1)),i.RangeAnchor(t.crToCoord(i.ecell.col+d,i.ecell.row+h)),i.RangeExtend()}return t.RemoveMouseMoveUp(t.CellHandlesMouseMove,t.CellHandlesMouseUp,v.draghandle,m),g.editor=null,!1}},t.TableControl=function(e,o,i){var n=t.Constants;this.editor=e,this.vertical=o,this.size=i,this.main=null,this.endcap=null,this.paneslider=null,this.lessbutton=null,this.morebutton=null,this.scrollarea=null,this.thumb=null,this.controlborder=null,this.endcapstart=null,this.panesliderstart=null,this.lessbuttonstart=null,this.morebuttonstart=null,this.scrollareastart=null,this.scrollareaend=null,this.scrollareasize=null,this.thumbpos=null,this.controlthickness=n.defaultTableControlThickness,this.sliderthickness=n.defaultTCSliderThickness,this.buttonthickness=n.defaultTCButtonThickness,this.thumbthickness=n.defaultTCThumbThickness,this.minscrollingpanesize=this.buttonthickness+this.buttonthickness+this.thumbthickness+20 -},t.TableControl.prototype.CreateTableControl=function(){return t.CreateTableControl(this)},t.TableControl.prototype.PositionTableControlElements=function(){t.PositionTableControlElements(this)},t.TableControl.prototype.ComputeTableControlPositions=function(){t.ComputeTableControlPositions(this)},t.CreateTableControl=function(e){var o,i,n,r=t.AssignID,a=t.setStyles,s=t.Constants,l=e.editor.imageprefix,c=e.vertical?"v":"h",u=t.LocalizeString;return e.main=document.createElement("div"),o=e.main.style,o.height=(e.vertical?e.size:e.controlthickness)+"px",o.width=(e.vertical?e.controlthickness:e.size)+"px",o.zIndex=0,a(e.main,s.TCmainStyle),o.backgroundImage="url("+l+"main-"+c+".gif)",s.TCmainClass&&(e.main.className=s.TCmainClass),e.main.style.display="none",e.endcap=document.createElement("div"),o=e.endcap.style,o.height=e.controlthickness+"px",o.width=e.controlthickness+"px",o.zIndex=1,o.overflow="hidden",o.position="absolute",a(e.endcap,s.TCendcapStyle),o.backgroundImage="url("+l+"endcap-"+c+".gif)",s.TCendcapClass&&(e.endcap.className=s.TCendcapClass),r(e.editor,e.endcap,"endcap"+c),e.main.appendChild(e.endcap),e.paneslider=document.createElement("div"),o=e.paneslider.style,o.height=(e.vertical?e.sliderthickness:e.controlthickness)+"px",o.overflow="hidden",o.width=(e.vertical?e.controlthickness:e.sliderthickness)+"px",o.position="absolute",o[e.vertical?"top":"left"]="4px",o.zIndex=3,o.backgroundImage="url("+l+"paneslider-"+c+".gif)",s.TCpanesliderClass&&(e.paneslider.className=s.TCpanesliderClass),r(e.editor,e.paneslider,"paneslider"+c),e.paneslider.title=u(e.vertical?"Drag to lock pane horizontally":"Drag to lock pane vertically"),i={MouseDown:t.TCPSDragFunctionStart,MouseMove:t.TCPSDragFunctionMove,MouseUp:t.TCPSDragFunctionStop,Disabled:function(){return e.editor.busy}},i.control=e,1!=t._app&&t.DragRegister(e.paneslider,e.vertical,!e.vertical,i,e.editor.toplevel),e.main.appendChild(e.paneslider),e.lessbutton=document.createElement("div"),o=e.lessbutton.style,o.height=(e.vertical?e.buttonthickness:e.controlthickness)+"px",o.width=(e.vertical?e.controlthickness:e.buttonthickness)+"px",o.zIndex=2,o.overflow="hidden",o.position="absolute",a(e.lessbutton,s.TClessbuttonStyle),o.backgroundImage="url("+l+"less-"+c+"n.gif)",s.TClessbuttonClass&&(e.lessbutton.className=s.TClessbuttonClass),r(e.editor,e.lessbutton,"lessbutton"+c),n={repeatwait:s.TClessbuttonRepeatWait,repeatinterval:s.TClessbuttonRepeatInterval,normalstyle:"backgroundImage:url("+l+"less-"+c+"n.gif);",downstyle:"backgroundImage:url("+l+"less-"+c+"d.gif);",hoverstyle:"backgroundImage:url("+l+"less-"+c+"h.gif);"},i={MouseDown:function(){e.editor.busy||e.editor.ScrollRelative(e.vertical,-1)},Repeat:function(){e.editor.busy||e.editor.ScrollRelative(e.vertical,-1)},Disabled:function(){return e.editor.busy}},t.ButtonRegister(e.editor,e.lessbutton,n,i),e.main.appendChild(e.lessbutton),e.morebutton=document.createElement("div"),o=e.morebutton.style,o.height=(e.vertical?e.buttonthickness:e.controlthickness)+"px",o.width=(e.vertical?e.controlthickness:e.buttonthickness)+"px",o.zIndex=2,o.overflow="hidden",o.position="absolute",a(e.morebutton,s.TCmorebuttonStyle),o.backgroundImage="url("+l+"more-"+c+"n.gif)",s.TCmorebuttonClass&&(e.morebutton.className=s.TCmorebuttonClass),r(e.editor,e.morebutton,"morebutton"+c),n={repeatwait:s.TCmorebuttonRepeatWait,repeatinterval:s.TCmorebuttonRepeatInterval,normalstyle:"backgroundImage:url("+l+"more-"+c+"n.gif);",downstyle:"backgroundImage:url("+l+"more-"+c+"d.gif);",hoverstyle:"backgroundImage:url("+l+"more-"+c+"h.gif);"},i={MouseDown:function(){e.editor.busy||e.editor.ScrollRelative(e.vertical,1)},Repeat:function(){e.editor.busy||e.editor.ScrollRelative(e.vertical,1)},Disabled:function(){return e.editor.busy}},t.ButtonRegister(e.editor,e.morebutton,n,i),e.main.appendChild(e.morebutton),e.scrollarea=document.createElement("div"),o=e.scrollarea.style,o.height=e.controlthickness+"px",o.width=e.controlthickness+"px",o.zIndex=1,o.overflow="hidden",o.position="absolute",a(e.scrollarea,s.TCscrollareaStyle),o.backgroundImage="url("+l+"scrollarea-"+c+".gif)",s.TCscrollareaClass&&(e.scrollarea.className=s.TCscrollareaClass),r(e.editor,e.scrollarea,"scrollarea"+c),n={repeatwait:s.TCscrollareaRepeatWait,repeatinterval:s.TCscrollareaRepeatWait},i={MouseDown:t.ScrollAreaClick,Repeat:t.ScrollAreaClick,Disabled:function(){return e.editor.busy}},i.control=e,t.ButtonRegister(e.editor,e.scrollarea,n,i),e.main.appendChild(e.scrollarea),e.thumb=document.createElement("div"),o=e.thumb.style,o.height=(e.vertical?e.thumbthickness:e.controlthickness)+"px",o.width=(e.vertical?e.controlthickness:e.thumbthickness)+"px",o.zIndex=2,o.overflow="hidden",o.position="absolute",a(e.thumb,s.TCthumbStyle),e.thumb.style.backgroundImage="url("+l+"thumb-"+c+"n.gif)",s.TCthumbClass&&(e.thumb.className=s.TCthumbClass),r(e.editor,e.thumb,"thumb"+c),i={MouseDown:t.TCTDragFunctionStart,MouseMove:t.TCTDragFunctionMove,MouseUp:t.TCTDragFunctionStop,Disabled:function(){return e.editor.busy}},i.control=e,1!=t._app&&t.DragRegister(e.thumb,e.vertical,!e.vertical,i,e.editor.toplevel),n={normalstyle:"backgroundImage:url("+l+"thumb-"+c+"n.gif)",name:"Thumb",downstyle:"backgroundImage:url("+l+"thumb-"+c+"d.gif)",hoverstyle:"backgroundImage:url("+l+"thumb-"+c+"h.gif)"},t.ButtonRegister(e.editor,e.thumb,n,null),e.main.appendChild(e.thumb),e.main},t.ScrollAreaClick=function(e,o,i){var n=i.functionobj.control,r=t.GetElementPositionWithScroll(n.editor.toplevel),a=n.vertical?o.clientY-r.top:o.clientX-r.left;n.editor.busy||n.editor.PageRelative(n.vertical,a>n.thumbpos?1:-1)},t.PositionTableControlElements=function(e){var t,o,i,n=e.editor;e.vertical?(t=e.controlborder+"px",e.endcap.style.top=e.endcapstart+"px",e.endcap.style.left=t,e.paneslider.style.top=e.panesliderstart+"px",e.paneslider.style.left=t,e.lessbutton.style.top=e.lessbuttonstart+"px",e.lessbutton.style.left=t,e.morebutton.style.top=e.morebuttonstart+"px",e.morebutton.style.left=t,e.scrollarea.style.top=e.scrollareastart+"px",e.scrollarea.style.left=t,e.scrollarea.style.height=e.scrollareasize+"px",o=Math.max(n.context.sheetobj.attribs.lastrow,n.firstscrollingrow+1),i=(n.firstscrollingrow-(n.lastnonscrollingrow+1))*(e.scrollareasize-3*e.thumbthickness)/(o-(n.lastnonscrollingrow+1))+e.scrollareastart-1,i=Math.floor(i),e.thumb.style.top=i+"px",e.thumb.style.left=t):(t=e.controlborder+"px",e.endcap.style.left=e.endcapstart+"px",e.endcap.style.top=t,e.paneslider.style.left=e.panesliderstart+"px",e.paneslider.style.top=t,e.lessbutton.style.left=e.lessbuttonstart+"px",e.lessbutton.style.top=t,e.morebutton.style.left=e.morebuttonstart+"px",e.morebutton.style.top=t,e.scrollarea.style.left=e.scrollareastart+"px",e.scrollarea.style.top=t,e.scrollarea.style.width=e.scrollareasize+"px",o=Math.max(n.context.sheetobj.attribs.lastcol,n.firstscrollingcol+1),i=(n.firstscrollingcol-(n.lastnonscrollingcol+1))*(e.scrollareasize-e.thumbthickness)/(o-n.lastnonscrollingcol)+e.scrollareastart-1,i=Math.floor(i),e.thumb.style.left=i+"px",e.thumb.style.top=t),e.thumbpos=i,e.main.style.display="block"},t.ComputeTableControlPositions=function(e){var t=e.editor;if(!t.gridposition||!t.headposition)throw"Can't compute table control positions before editor positions";e.vertical?(e.controlborder=t.gridposition.left+t.tablewidth,e.endcapstart=t.gridposition.top,e.panesliderstart=t.firstscrollingrowtop-e.sliderthickness,e.lessbuttonstart=t.firstscrollingrowtop-1,e.morebuttonstart=t.gridposition.top+t.tableheight-e.buttonthickness,e.scrollareastart=t.firstscrollingrowtop-1+e.buttonthickness,e.scrollareaend=e.morebuttonstart-1,e.scrollareasize=e.scrollareaend-e.scrollareastart+1):(e.controlborder=t.gridposition.top+t.tableheight,e.endcapstart=t.gridposition.left,e.panesliderstart=t.firstscrollingcolleft-e.sliderthickness,e.lessbuttonstart=t.firstscrollingcolleft-1,e.morebuttonstart=t.gridposition.left+t.tablewidth-e.buttonthickness,e.scrollareastart=t.firstscrollingcolleft-1+e.buttonthickness,e.scrollareaend=e.morebuttonstart-1,e.scrollareasize=e.scrollareaend-e.scrollareastart+1)},t.TCPSDragFunctionStart=function(e,o,i){var n=i.functionobj.control.editor,r=t.Constants;t.DragFunctionStart(e,o,i),o.trackingline=document.createElement("div"),o.trackingline.style.height=i.vertical?r.TCPStrackinglineThickness:n.tableheight-(n.headposition.top-n.gridposition.top)+"px",o.trackingline.style.width=i.vertical?n.tablewidth-(n.headposition.left-n.gridposition.left)+"px":r.TCPStrackinglineThickness,o.trackingline.style.backgroundImage="url("+n.imageprefix+"trackingline-"+(i.vertical?"v":"h")+".gif)",r.TCPStrackinglineClass&&(o.trackingline.className=r.TCPStrackinglineClass),t.setStyles(o.trackingline,r.TCPStrackinglineStyle),i.vertical?(row=t.Lookup(o.clientY+i.functionobj.control.sliderthickness,n.rowpositions),o.trackingline.style.top=(n.rowpositions[row]||n.headposition.top)+"px",o.trackingline.style.left=n.headposition.left+"px",o.trackingline.id="trackingline-vertical",n.context.rowpanes.length-1&&(n.context.SetRowPaneFirstLast(1,n.context.rowpanes[0].last+1,n.context.rowpanes[0].last+1),n.FitToEditTable(),n.ScheduleRender())):(col=t.Lookup(o.clientX+i.functionobj.control.sliderthickness,n.colpositions),o.trackingline.style.top=n.headposition.top+"px",o.trackingline.style.left=(n.colpositions[col]||n.headposition.left)+"px",o.trackingline.id="trackingline-horizon",n.context.colpanes.length-1&&(n.context.SetColPaneFirstLast(1,n.context.colpanes[0].last+1,n.context.colpanes[0].last+1),n.FitToEditTable(),n.ScheduleRender())),n.griddiv.appendChild(o.trackingline)},t.TCPSDragFunctionMove=function(e,o,i){var n,r,a,s,l=i.functionobj.control,c=l.sliderthickness,u=l.editor;if(i.vertical){for(a=l.morebuttonstart-l.minscrollingpanesize-o.offsetY,o.clientY>a&&(o.clientY=a),s=u.headposition.top-c-o.offsetY,o.clientYa&&(o.clientX=a),s=u.headposition.left-c-o.offsetX,o.clientXa&&(o.clientY=a),s=u.headposition.top-c-o.offsetY,o.clientYu.context.sheetobj.attribs.lastrow&&(n=u.context.sheetobj.attribs.lastrow);"yes"==u.context.sheetobj.rowattribs.hide[n];)n++;u.EditorScheduleSheetCommands("pane row "+n,!0,!1)}else{for(a=l.morebuttonstart-l.minscrollingpanesize-o.offsetX,o.clientX>a&&(o.clientX=a),s=u.headposition.left-c-o.offsetX,o.clientXu.context.sheetobj.attribs.lastcol&&(r=u.context.sheetobj.attribs.lastcol);"yes"==u.context.sheetobj.colattribs.hide[t.rcColname(r)];)r++;u.EditorScheduleSheetCommands("pane col "+r,!0,!1)}},t.TCTDragFunctionStart=function(e,o,i){var n=i.functionobj.control,r=n.editor,a=t.Constants;if(t.DragFunctionStart(e,o,i),o.thumbstatus&&(o.thumbstatus.rowmsgele&&(o.thumbstatus.rowmsgele=null),o.thumbstatus.rowpreviewele&&(o.thumbstatus.rowpreviewele=null),r.toplevel.removeChild(o.thumbstatus),o.thumbstatus=null),o.thumbstatus=document.createElement("div"),i.vertical){a.TCTDFSthumbstatusvClass&&(o.thumbstatus.className=a.TCTDFSthumbstatusvClass),t.setStyles(o.thumbstatus,a.TCTDFSthumbstatusvStyle),o.thumbstatus.style.top=o.clientY+a.TCTDFStopOffsetv+"px",o.thumbstatus.style.left=n.controlborder-10-r.tablewidth/2+"px",o.thumbstatus.style.width=r.tablewidth/2+"px",o.thumbcontext=new t.RenderContext(r.context.sheetobj),o.thumbcontext.showGrid=!0,o.thumbcontext.rowpanes=[{first:1,last:1}];var s=r.context.colpanes[r.context.colpanes.length-1];o.thumbcontext.colpanes=[{first:s.first,last:s.last}],o.thumbstatus.innerHTML='
msg
preview
',o.thumbstatus.rowmsgele=o.thumbstatus.firstChild.firstChild.firstChild.firstChild.firstChild,o.thumbstatus.rowpreviewele=o.thumbstatus.firstChild.firstChild.firstChild.childNodes[1].firstChild,r.toplevel.appendChild(o.thumbstatus),t.TCTDragFunctionRowSetStatus(o,r,r.firstscrollingrow||1)}else a.TCTDFSthumbstatushClass&&(o.thumbstatus.className=a.TCTDFSthumbstatushClass),t.setStyles(o.thumbstatus,a.TCTDFSthumbstatushStyle),o.thumbstatus.style.top=n.controlborder+a.TCTDFStopOffseth+"px",o.thumbstatus.style.left=o.clientX+a.TCTDFSleftOffseth+"px",r.toplevel.appendChild(o.thumbstatus),o.thumbstatus.innerHTML=a.s_TCTDFthumbstatusPrefixh+t.rcColname(r.firstscrollingcol)},t.TCTDragFunctionRowSetStatus=function(e,o,i){var n=t.Constants,r=n.s_TCTDFthumbstatusPrefixv+i+" ";e.thumbstatus.rowmsgele.innerHTML=r,e.thumbcontext.rowpanes=[{first:i,last:i}],e.thumbrowshown=i;e.thumbcontext.RenderSheet(e.thumbstatus.rowpreviewele.firstChild,{type:"html"})},t.TCTDragFunctionMove=function(e,o,i){var n,r,a=i.functionobj.control,s=(a.thumbthickness,a.editor),l=t.Constants;i.vertical?(o.clientY>a.scrollareaend-o.offsetY-a.thumbthickness+2&&(o.clientY=a.scrollareaend-o.offsetY-a.thumbthickness+2),o.clientYs.context.sheetobj.attribs.lastrow&&(n=s.context.sheetobj.attribs.lastrow),n!=o.thumbrowshown&&t.TCTDragFunctionRowSetStatus(o,s,n)):(o.clientX>a.scrollareaend-o.offsetX-a.thumbthickness+2&&(o.clientX=a.scrollareaend-o.offsetX-a.thumbthickness+2),o.clientXs.context.sheetobj.attribs.lastcol&&(n=s.context.sheetobj.attribs.lastcol),r=l.s_TCTDFthumbstatusPrefixh+t.rcColname(n),o.thumbstatus.innerHTML=r),t.DragFunctionPosition(e,o,i)},t.TCTDragFunctionStop=function(e,t,o){var i,n=o.functionobj.control,r=n.editor;o.vertical?(i=(t.clientY+t.offsetY-n.scrollareastart+1)/(n.scrollareasize-n.thumbthickness)*(r.context.sheetobj.attribs.lastrow-r.lastnonscrollingrow)+r.lastnonscrollingrow+1,i=Math.floor(i),i<=r.lastnonscrollingrow&&(i=r.lastnonscrollingrow+1),i>r.context.sheetobj.attribs.lastrow&&(i=r.context.sheetobj.attribs.lastrow),r.context.SetRowPaneFirstLast(r.context.rowpanes.length-1,i,i+1)):(i=(t.clientX+t.offsetX-n.scrollareastart+1)/(n.scrollareasize-n.thumbthickness)*(r.context.sheetobj.attribs.lastcol-r.lastnonscrollingcol)+r.lastnonscrollingcol+1,i=Math.floor(i),i<=r.lastnonscrollingcol&&(i=r.lastnonscrollingcol+1),i>r.context.sheetobj.attribs.lastcol&&(i=r.context.sheetobj.attribs.lastcol),r.context.SetColPaneFirstLast(r.context.colpanes.length-1,i,i+1)),r.FitToEditTable(),t.thumbstatus.rowmsgele&&(t.thumbstatus.rowmsgele=null),t.thumbstatus.rowpreviewele&&(t.thumbstatus.rowpreviewele=null),r.toplevel.removeChild(t.thumbstatus),t.thumbstatus=null,r.ScheduleRender()},t.DragInfo={registeredElements:[],draggingElement:null,startX:0,startY:0,startZ:0,clientX:0,clientY:0,offsetX:0,offsetY:0,relativeOffset:{left:0,top:0}},t.DragRegister=function(e,o,i,n,r){var a=t.DragInfo;if(n||(n={MouseDown:t.DragFunctionStart,MouseMove:t.DragFunctionPosition,MouseUp:t.DragFunctionPosition,Disabled:null}),a.registeredElements.push({element:e,vertical:o,horizontal:i,functionobj:n,parent:r}),e.addEventListener)e.addEventListener("mousedown",t.DragMouseDown,!1);else{if(!e.attachEvent)throw t.Constants.s_BrowserNotSupported;e.attachEvent("onmousedown",t.DragMouseDown)}},t.DragUnregister=function(e){var o,i=t.DragInfo;if(e)for(o=0;oj?1:0;$&&(j=-j);var Y=0==j?1:0;if(i=i||V.FormatNumber_DefaultCurrency,W.parse_format_string(W.format_definitions,o),C=W.format_definitions[o],!C)throw"Format not parsed error!";if(w=C.sectioninfo.length-1,C.hascomparison)for(w=0,x=0,k=0;;k++){if(n=C.operators[k],r=C.operands[k],!n){x&&(o="General",W.parse_format_string(W.format_definitions,o),C=W.format_definitions[o],w=0);break}if(n!=W.commands.section){if(n==W.commands.comparison){if(E=r.indexOf(":"),_=r.substring(0,E),S=r.substring(E+1)-0,"<"==_&&S>e||"<="==_&&S>=e||"="==_&&e==S||"<>"==_&&e!=S||">="==_&&e>=S||">"==_&&e>S)break;x=1}}else{if(!x)break;x=0,w++}}else w>0&&(1==w?$?($=0,w=1):w=0:(2==w||3==w)&&($?($=0,w=1):w=Y?2:0));if(F=C.sectioninfo[w],F.commas>0)for(E=0;E0)for(E=0;E=0)return e+"";if(I=A.match(/^\+{0,1}(\d*)(?:\.(\d*)){0,1}$/),!I)return"NaN";if(M=I[1],M&&"0"!=M||(M=""),R=I[2],R||(R=""),F.hasdate){if(0>e)return"??-???-?? ??:??:??";for(c=(e-Math.floor(e))*W.datevalues.seconds_in_a_day,u=e*W.datevalues.seconds_in_a_day,d=Math.floor(c/W.datevalues.seconds_in_an_hour),f=Math.floor(u/W.datevalues.seconds_in_an_hour),c-=d*W.datevalues.seconds_in_an_hour,h=Math.floor(c/60),m=Math.floor(u/60),p=c-60*h,D=1,E=0;E=60&&(p=0,h++,m++,h>=60&&(h=0,d++,f++,d>=24&&(d=0,e++))),R=p-Math.floor(p)+"",R=R.substring(2),b=t.FormatNumber.convert_date_julian_to_gregorian(Math.floor(e+W.datevalues.julian_offset)),y=0,mspos=F.sectionstart;(n=C.operators[mspos],r=C.operands[mspos],n)&&n!=W.commands.section;mspos++)n==W.commands.date?("am/pm"!=r.toLowerCase()&&"a/p"!=r.toLowerCase()||v||(d>=12?(d-=12,v="a/p"==r.toLowerCase()?V.s_FormatNumber_pm1:V.s_FormatNumber_pm):v="a/p"==r.toLowerCase()?V.s_FormatNumber_am1:V.s_FormatNumber_am,r.indexOf(v)<0&&(v=v.toLowerCase())),!y||"m"!=r&&"mm"!=r||(C.operands[mspos]+="in"),y="h"==r.charAt(0)?1:0):n!=W.commands.copy&&(y=0);for(y=0,--mspos;(n=C.operators[mspos],r=C.operands[mspos],n)&&n!=W.commands.section;mspos--)n==W.commands.date?(!y||"m"!=r&&"mm"!=r||(C.operands[mspos]+="in"),y="ss"==r?1:0):n!=W.commands.copy&&(y=0)}for(N=0,L=0,O=0,z="",H="",B=V.FormatNumber_separatorchar,B.indexOf(" ")>=0&&(B=B.replace(/ /g," ")),U=V.FormatNumber_decimalchar,U.indexOf(" ")>=0&&(U=U.replace(/ /g," ")),T=F.sectionstart;n=C.operators[T];)if(r=C.operands[T++],n==W.commands.copy)G+=r;else if(n==W.commands.color)z=r;else if(n==W.commands.style)H=r;else if(n==W.commands.integer_placeholder){if($&&(G+="-",$=0),N++,1==N&&M.length>F.integerdigits)for(;L2&&a%3==0&&(G+=B));M.length2&&a%3==0&&(G+=B))):(G+=M.charAt(L),F.thousandssep&&(a=M.length-L-1,a>2&&a%3==0&&(G+=B)),L++)}else if(n==W.commands.fraction_placeholder)O>=R.length?("0"==r||"?"==r)&&(G+="0"==r?"0":" "):G+=R.charAt(O),O++;else if(n==W.commands.decimal)$&&(G+="-",$=0),G+=U;else if(n==W.commands.currency)$&&(G+="-",$=0),G+=r;else if(n==W.commands.general){if(0!=j){var K=Math.floor(Math.LOG10E*Math.log(j));if(K=Math.pow(10,13-K),j=Math.floor(K*j+.5)/K,!isFinite(j))return"NaN"}if($&&(G+="-"),A=j+"",A.indexOf("e")>=0){G+=A;continue}if(I=A.match(/^\+{0,1}(\d*)(?:\.(\d*)){0,1}$/),M=I[1],M&&"0"!=M||(M=""),R=I[2],R||(R=""),L=0,O=0,M.length)for(;L2&&a%3==0&&(G+=B));else G+="0";if(R.length)for(G+=U;Om?(s=1e3+m+"",G+=s.substr(2)):G+=m+"":"min"==l?G+=h+"":"m]"==l?G+=m+"":"hh"==l?(s=1e3+d+"",G+=s.substr(2)):"s"==l?(s=Math.floor(p),G+=s+""):"ss"==l?(s=1e3+Math.floor(p)+"",G+=s.substr(2)):"am/pm"==l||"a/p"==l?G+=v:"ss]"==l&&(100>g?(s=1e3+Math.floor(g)+"",G+=s.substr(2)):(s=Math.floor(g),G+=s+"")); -else{if(n==W.commands.section)break;if(n==W.commands.comparison)continue;G+="!! Parse error !!"}return z&&(G=''+G+""),H&&(G=''+G+""),G},t.FormatNumber.formatTextWithFormat=function(e,o){var i,n,r,a,s=(t.Constants,t.FormatNumber),l=e+"",c="",u="",d="";if(s.parse_format_string(s.format_definitions,o),thisformat=s.format_definitions[o],!thisformat)throw"Format not parsed error!";if(i=thisformat.sectioninfo.length-1,0==i)i=0;else{if(3!=i)return l;i=3}for(n=thisformat.sectioninfo[i],r=n.sectionstart;op=thisformat.operators[r];)a=thisformat.operands[r++],op==s.commands.copy?c+="@"==a?l:a.replace(/ /g," "):op==s.commands.color?u=a:op==s.commands.style&&(d=a);return u&&(c=''+c+""),d&&(c=''+c+""),c},t.FormatNumber.parse_format_string=function(e,o){var i,n,r,a,s,l,c,u,d,h,p,f,m,g,v,b,y,C=t.FormatNumber,w=1;if(!e[o]){for(i={operators:[],operands:[],sectioninfo:[{}]},e[o]=i,n=0,sectioninfo=i.sectioninfo[n],sectioninfo.sectionstart=0,sectioninfo.integerdigits=0,sectioninfo.fractiondigits=0,sectioninfo.commas=0,sectioninfo.percent=0,b=0;b=0?v=y:(r=0,i.operators.push(C.commands.copy),i.operands.push(y))}v&&(i.operators.push(C.commands.date),i.operands.push(v),sectioninfo.hasdate=1)}},t.FormatNumber.parse_format_bracket=function(e){var o,i=t.FormatNumber,n=t.Constants,r={};return"$"==e.charAt(0)?(r.operator=i.commands.currency,o=e.match(/^\$(.+?)(\-.+?){0,1}$/),r.operand=o?o[1]||n.FormatNumber_defaultCurrency||"$":e.substring(1)||n.FormatNumber_defaultCurrency||"$"):"?$"==e?(r.operator=i.commands.currency,r.operand="[?$]"):i.allowedcolors[e.toUpperCase()]?(r.operator=i.commands.color,r.operand=i.allowedcolors[e.toUpperCase()]):(o=e.match(/^style=([^"]*)$/))?(r.operator=i.commands.style,r.operand=o[1]):","==e?(r.operator=i.commands.separator,r.operand=e):i.alloweddates[e.toUpperCase()]?(r.operator=i.commands.date,r.operand=i.alloweddates[e.toUpperCase()]):(o=e.match(/^[<>=]/))?(o=e.match(/^([<>=]+)(.+)$/),r.operator=i.commands.comparison,r.operand=o[1]+":"+o[2]):(r.operator=i.commands.copy,r.operand="["+e+"]"),r},t.FormatNumber.convert_date_gregorian_to_julian=function(e,o,i){var n;return n=i-32075+t.intFunc(1461*(e+4800+t.intFunc((o-14)/12))/4),n+=t.intFunc(367*(o-2-12*t.intFunc((o-14)/12))/12),n-=t.intFunc(3*t.intFunc((e+4900+t.intFunc((o-14)/12))/100)/4)},t.FormatNumber.convert_date_julian_to_gregorian=function(e){var t,o,i,n,r;return t=e+68569,o=Math.floor(4*t/146097),t-=Math.floor((146097*o+3)/4),i=Math.floor(4e3*(t+1)/1461001),t=t-Math.floor(1461*i/4)+31,n=Math.floor(80*t/2447),r=t-Math.floor(2447*n/80),t=Math.floor(n/11),n=n+2-12*t,i=100*(o-49)+i+t,{year:i,month:n,day:r}},t.intFunc=function(e){return 0>e?-Math.floor(-e):Math.floor(e)};var t;t||(t={}),t.Formula={},t.TriggerIoAction={},t.Formula.ParseState={num:1,alpha:2,coord:3,string:4,stringquote:5,numexp1:6,numexp2:7,alphanumeric:8,specialvalue:9},t.Formula.TokenType={num:1,coord:2,op:3,name:4,error:5,string:6,space:7},t.Formula.CharClass={num:1,numstart:2,op:3,eof:4,alpha:5,incoord:6,error:7,quote:8,space:9,specialstart:10},t.Formula.CharClassTable={" ":9,"!":3,'"':8,"'":8,"#":10,$:6,"%":3,"&":3,"(":3,")":3,"*":3,"+":3,",":3,"-":3,".":2,"/":3,0:1,1:1,2:1,3:1,4:1,5:1,6:1,7:1,8:1,9:1,":":3,"<":3,"=":3,">":3,A:5,B:5,C:5,D:5,E:5,F:5,G:5,H:5,I:5,J:5,K:5,L:5,M:5,N:5,O:5,P:5,Q:5,R:5,S:5,T:5,U:5,V:5,W:5,X:5,Y:5,Z:5,"^":3,_:5,a:5,b:5,c:5,d:5,e:5,f:5,g:5,h:5,i:5,j:5,k:5,l:5,m:5,n:5,o:5,p:5,q:5,r:5,s:5,t:5,u:5,v:5,w:5,x:5,y:5,z:5},t.Formula.UpperCaseTable={a:"A",b:"B",c:"C",d:"D",e:"E",f:"F",g:"G",h:"H",i:"I",j:"J",k:"K",l:"L",m:"M",n:"N",o:"O",p:"P",q:"Q",r:"R",s:"S",t:"T",u:"U",v:"V",w:"W",x:"X",y:"Y",z:"Z",A:"A",B:"B",C:"C",D:"D",E:"E",F:"F",G:"G",H:"H",I:"I",J:"J",K:"K",L:"L",M:"M",N:"N",O:"O",P:"P",Q:"Q",R:"R",S:"S",T:"T",U:"U",V:"V",W:"W",X:"X",Y:"Y",Z:"Z"},t.Formula.SpecialConstants={"#NULL!":"0,e#NULL!","#NUM!":"0,e#NUM!","#DIV/0!":"0,e#DIV/0!","#VALUE!":"0,e#VALUE!","#REF!":"0,e#REF!","#NAME?":"0,e#NAME?"},t.Formula.TokenPrecedence={"!":1,":":2,",":2,M:-3,P:-3,"%":4,"^":5,"*":6,"/":6,"+":7,"-":7,"&":8,"<":9,">":9,G:9,L:9,N:9},t.Formula.TokenOpExpansion={G:">=",L:"<=",M:"-",N:"<>",P:"+"},t.Formula.TypeLookupTable={unaryminus:{"n*":"|n*:1|","e*":"|e*:1|","t*":"|t*:e#VALUE!|",b:"|b:n|"},unaryplus:{"n*":"|n*:1|","e*":"|e*:1|","t*":"|t*:e#VALUE!|",b:"|b:n|"},unarypercent:{"n*":"|n:n%|n*:n|","e*":"|e*:1|","t*":"|t*:e#VALUE!|",b:"|b:n|"},plus:{"n%":"|n%:n%|nd:n|nt:n|ndt:n|n$:n|n:n|n*:n|b:n|e*:2|t*:e#VALUE!|",nd:"|n%:n|nd:nd|nt:ndt|ndt:ndt|n$:n|n:nd|n*:n|b:n|e*:2|t*:e#VALUE!|",nt:"|n%:n|nd:ndt|nt:nt|ndt:ndt|n$:n|n:nt|n*:n|b:n|e*:2|t*:e#VALUE!|",ndt:"|n%:n|nd:ndt|nt:ndt|ndt:ndt|n$:n|n:ndt|n*:n|b:n|e*:2|t*:e#VALUE!|",n$:"|n%:n|nd:n|nt:n|ndt:n|n$:n$|n:n$|n*:n|b:n|e*:2|t*:e#VALUE!|",nl:"|n%:n|nd:n|nt:n|ndt:n|n$:n|n:n|n*:n|b:n|e*:2|t*:e#VALUE!|",n:"|n%:n|nd:nd|nt:nt|ndt:ndt|n$:n$|n:n|n*:n|b:n|e*:2|t*:e#VALUE!|",b:"|n%:n%|nd:nd|nt:nt|ndt:ndt|n$:n$|n:n|n*:n|b:n|e*:2|t*:e#VALUE!|","t*":"|ni:1|n*:e#VALUE!|t*:e#VALUE!|b:e#VALUE!|e*:2|","n*":"|ni:1|e*:2|","e*":"|e*:1|n*:1|t*:1|b:1|"},concat:{t:"|t:t|th:th|tw:tw|tl:t|tr:tr|t*:2|e*:2|",th:"|t:th|th:th|tw:t|tl:th|tr:t|t*:t|e*:2|",tw:"|t:tw|th:t|tw:tw|tl:tw|tr:tw|t*:t|e*:2|",tl:"|t:tl|th:th|tw:tw|tl:tl|tr:tr|t*:t|e*:2|","t*":"|t*:t|e*:2|","e*":"|e*:1|n*:1|t*:1|"},oneargnumeric:{"n*":"|n*:n|","e*":"|e*:1|","t*":"|t*:e#VALUE!|",b:"|b:n|"},twoargnumeric:{"n*":"|n*:n|t*:e#VALUE!|e*:2|","e*":"|e*:1|n*:1|t*:1|","t*":"|t*:e#VALUE!|n*:e#VALUE!|e*:2|"},propagateerror:{"n*":"|n*:2|e*:2|","e*":"|e*:2|","t*":"|t*:2|e*:2|",b:"|b:2|e*:2|"}},t.Formula.ParseFormulaIntoTokens=function(e){var o,i,n,r,a,s,l,c,u=t.Formula,d=t.Constants,h=u.ParseState,p=u.TokenType,f=u.CharClass,m=u.CharClassTable,g=u.UpperCaseTable,v=u.ParsePushToken,b=/^\$?[A-Z]{1,2}\$?[1-9]\d*$/i,y=[],C="",w=0,r=!1,x="";for(o=0;o<=e.length;o++)o0?(a=y[y.length-1],s=a.type,l=a.text,s==f.op&&(x=l+C,("<="==x||">="==x||"<>"==x)&&(C=l+C,y.pop(),y.length>0?(a=y[y.length-1],s=a.type,l=a.text):(s=f.eof,l="EOF")))):(s=f.eof,l="EOF"),c=p.op,0==y.length||s==f.op&&")"!=l&&"%"!=l?"-"==C?(C="M",i="M"):"+"==C?(C="P",i="P"):")"==C&&"("==l||"("!=C&&(c=p.error,C=d.s_parseerrtwoops):C.length>1&&(">="==C?(C="G",i="G"):"<="==C?(C="L",i="L"):"<>"==C?(C="N",i="N"):(c=p.error,C=d.s_parseerrtwoops)),v(y,C,c,i),w=0):n==f.quote?(C="",w=h.string):n==f.space||n==f.eof||v(y,d.s_parseerrchar,p.error,0));return y},t.Formula.ParsePushToken=function(e,t,o,i){e.push({text:t,type:o,opcode:i})},t.Formula.evaluate_parsed_formula=function(e,o,i){{var n,r,a=t.Formula;a.TokenType}return r=a.ConvertInfixToPolish(e),n=a.EvaluatePolish(e,r,o,i)},t.Formula.ConvertInfixToPolish=function(e){var o,i,n,r,a,s,l=t.Formula,c=t.Constants,u=l.TokenType,d=l.TokenPrecedence,h=[],p=[],f="",m=-1;for(o=0;o=0&&s>a)||0>a&&(a=-a,0>s&&(s=-s),s>=a));)h.push(p.pop());p.push(o)}}for(;p.length>0;){if("("==e[p[p.length-1]].text){f=c.s_parseerrmissingcloseparen;break}h.push(p.pop())}return f?f:h},"undefined"==typeof t.debug_log&&(t.debug_log=[]),t.DebugLog=function(){},t.Formula.EvaluatePolish=function(e,o,i,n){var r,a,s,l,c,u,d,h,p,f,m,g,v,b,y=t.Formula,C=t.Constants,w=y.TokenType,x=y.LookupResultType,_=y.TypeLookupTable,S=y.OperandAsNumber,k=y.OperandAsText,T=y.OperandValueAndType,F=y.OperandsAsCoordOnSheet,E=t.format_number_for_display||function(e){return e+""},D="",P=-1,A={value:"",type:"e#VALUE!",error:C.s_parseerrmissingoperand},I=[],M=function(e,t){I.push({type:e,value:t})};if(!(e.length&&o instanceof Array))return{value:"",type:"e#VALUE!",error:"string"==typeof o?o:""};var R=[];for(r=0;r"==c||"N"==c){if(I.length<=1){D=C.s_parseerrmissingoperand;break}d=T(i,I),u=T(i,I),"n"==u.type.charAt(0)&&"n"==d.type.charAt(0)?(g=0,"<"==c?g=u.value=d.value?1:0:">"==c?g=u.value>d.value?1:0:"N"==c&&(g=u.value!=d.value?1:0),M("nl",g)):"e"==u.type.charAt(0)?M(u.type,0):"e"==d.type.charAt(0)?M(d.type,0):(h=u.type.charAt(0),p=d.type.charAt(0),"n"==h?u.value=E(u.value,"n",""):"b"==h&&(u.value=""),"n"==p?d.value=E(d.value,"n",""):"b"==p&&(d.value=""),g=0,u.value=u.value.toLowerCase(),d.value=d.value.toLowerCase(),"<"==c?g=u.value=d.value?1:0:">"==c?g=u.value>d.value?1:0:"N"==c&&(g=u.value!=d.value?1:0),M("nl",g))}else{if(I.length<=1){D=C.s_parseerrmissingoperand;break}"+"==c?(d=T(i,I),u=T(i,I),f=x(u.type,d.type,_.plus),M(f,u.value+d.value)):(d=S(i,I),u=S(i,I)),"-"==c?(f=x(u.type,d.type,_.plus),M(f,u.value-d.value)):"*"==c?(f=x(u.type,d.type,_.plus),M(f,u.value*d.value)):"/"==c?0!=d.value?M("n",u.value/d.value):M("e#DIV/0!",0):"^"==c&&(u.value=Math.pow(u.value,d.value),u.type="n",isNaN(u.value)&&(u.value=0,u.type="e#NUM!"),M(u.type,u.value))}}else{if(l!=w.name){D=C.s_InternalError+"Unknown token "+l+" ("+c+"). ";break}if(D=y.CalculateFunction(c,I,i,e.coord))break}else M("start",0);return value=I[0]?I[0].value:"",h=I[0]?I[0].type:"","name"==h&&(u=t.Formula.LookupName(i,value),value=u.value,h=u.type,D=D||u.error),"coord"==h&&(u=T(i,I),value=u.value,h=u.type,"b"==h&&(h="n",value=0)),I.length>1&&!D&&(D+=C.s_parseerrerrorinformula),m=h,"e"==h.charAt(0)?D=D||h.substring(1)||C.s_calcerrerrorvalueinformula:"range"==h&&(v=value.match(/^(.*)\|(.*)\|/),b=v[1].indexOf("!"),v[1]=b>=0?v[1].substring(b+1)+"!"+v[1].substring(0,b).toUpperCase():v[1].toUpperCase(),value=v[1]+":"+v[2].toUpperCase(),n||(D=C.s_formularangeresult+" "+value)),D&&"e"!=m.charAt(0)&&(value=D,m="e"),"n"!=m.charAt(0)||!isNaN(value)&&isFinite(value)||(value=0,m="e#NUM!",D=isNaN(value)?C.s_calcerrnumericnan:C.s_calcerrnumericoverflow),{value:value,type:m,error:D}},t.Formula.LookupResultType=function(e,t,o){var i,n,r,a=o[e];return a||(a=o[e.charAt(0)+"*"])?(i=a.indexOf("|"+t+":"),i>=0?(n=a.indexOf("|",i+1),0>n?"e#VALUE! (internal error, incorrect LookupResultType "+a+")":(r=a.substring(i+t.length+2,n),"1"==r?e:"2"==r?t:r)):(i=a.indexOf("|"+t.charAt(0)+"*:"),i>=0?(n=a.indexOf("|",i+1),0>n?"e#VALUE! (internal error, incorrect LookupResultType "+a+")":(r=a.substring(i+4,n),"1"==r?e:"2"==r?t:r)):"e#VALUE!")):"e#VALUE! (internal error, missing LookupResultType "+e.charAt(0)+"*)"},t.Formula.TopOfStackValueAndType=function(e,o){var i=t.Formula,n={type:"",value:""},r=o.length;return r?(n.value=o[r-1].value,n.type=o[r-1].type,o.pop(),"name"==n.type&&(n=i.LookupName(e,n.value)),n):(n.error=t.Constants.s_InternalError+"no operand on stack",n)},t.Formula.OperandAsNumber=function(e,o){var i,n,r=t.Formula.OperandValueAndType(e,o);return i=r.type.charAt(0),"n"==i?r.value=r.value-0:"b"==i?(r.type="n",r.value=0):"e"==i?r.value=0:(n=t.DetermineValueType?t.DetermineValueType(r.value):{value:r.value-0,type:"n"},"n"==n.type.charAt(0)?(r.value=n.value-0,r.type=n.type):(r.value=0,r.type=n.type)),r},t.Formula.OperandAsText=function(e,o){var i,n=t.Formula.OperandValueAndType(e,o);return i=n.type.charAt(0),"t"==i||("n"==i?(n.value=t.format_number_for_display?t.format_number_for_display(n.value,n.type,""):n.value=n.value+"",n.type="t"):"b"==i?(n.value="",n.type="t"):"e"==i?n.value="":(o.value=n.value+"",o.type="t")),n},t.Formula.OperandValueAndType=function(e,o){var i,n,r,a,s=t.Formula,l={type:"",value:""},c=o.length;if(!c)return l.error=t.Constants.s_InternalError+"no operand on stack",l;if(l.value=o[c-1].value,l.type=o[c-1].type,o.pop(),"name"==l.type&&(l=s.LookupName(e,l.value)),"range"==l.type&&(l=s.StepThroughRangeDown(o,l.value)),"coord"==l.type){if(a=e,r=l.value.indexOf("!"),-1!=r){if(a=s.FindInSheetCache(l.value.substring(r+1)),null==a)return l.type="e#REF!",l.error=t.Constants.s_sheetunavailable+" "+l.value.substring(r+1),l.value=0,l;l.value=l.value.substring(0,r)}a?(n=a.cells[t.Formula.PlainCoord(l.value)],n?(i=n.valuetype,l.value=n.datavalue):i="b"):(i="e#N/A",l.value=0),l.type=i||"b","b"==l.type&&(l.value=0)}return l},t.Formula.OperandAsCoord=function(e,o){return t.Formula.OperandAsType(e,o,"coord")},t.Formula.OperandAsRange=function(e,o){return t.Formula.OperandAsType(e,o,"range")},t.Formula.OperandAsType=function(e,o,i){var n=(t.Formula,{type:"",value:""}),r=o.length;return n.value=o[r-1].value,n.type=o[r-1].type,o.pop(),"name"==n.type&&(n=t.Formula.LookupName(e,n.value)),n.type==i?n:(n.value=t.Constants.s_calcerrcellrefmissing,n.type="e#REF!",n)},t.Formula.OperandsAsCoordOnSheet=function(e,o){var i,n,r,a,s={},l={},c=t.Formula,u=o.length;return s.value=o[u-1].value,s.type=o[u-1].type,o.pop(),i=c.OperandAsSheetName(e,o),n=c.FindInSheetCache(i.value),null==n?(l.type="e#REF!",l.value=0,l.error=t.Constants.s_sheetunavailable+" "+i.value,l):("name"==s.type&&(s=c.LookupName(n,s.value)),l.type=s.type,"coord"==s.type?l.value=s.value+"!"+i.value:"range"==s.type?(r=s.value.indexOf("|"),a=s.value.indexOf("|",r+1),l.value=s.value.substring(0,r)+"!"+i.value+"|"+s.value.substring(r+1,a)+"|"):"e"==s.type.charAt(0)?l.value=s.value:(l.error=t.Constants.s_calcerrcellrefmissing,l.type="e#REF!",l.value=0),l)},t.Formula.OperandsAsRangeOnSheet=function(e,o){var i,n,r,a,s={},l=t.Formula,c=t.Constants,u=o.length;return s.value=o[u-1].value,s.type=o[u-1].type,o.pop(),i=l.OperandAsCoord(e,o),"coord"!=i.type?{value:0,type:"e#REF!"}:(n=e,r=i.value.indexOf("!"),-1!=r&&(a=i.value.indexOf("|",r+1),0>a&&(a=i.value.length),n=l.FindInSheetCache(i.value.substring(r+1,a)),null==n)?{value:0,type:"e#REF!",errortext:c.s_sheetunavailable+" "+i.value.substring(r+1,a)}:("name"==s.type&&(s=l.LookupName(n,s.value,"end")),"coord"==s.type?{value:i.value+"|"+s.value+"|",type:"range"}:{value:c.s_calcerrcellrefmissing,type:"e#REF!"}))},t.Formula.OperandAsSheetName=function(e,o){var i,n,r=(t.Formula,{type:"",value:""}),a=o.length;if(r.value=o[a-1].value,r.type=o[a-1].type,o.pop(),"name"==r.type){if(i=t.Formula.LookupName(e,r.value),!i.value)return r;r.value=i.value,r.type=i.type}return"coord"==r.type&&(n=e.cells[t.Formula.PlainCoord(r.value)],n?(r.value=n.datavalue,r.type=n.valuetype):(r.value="",r.type="b")),"t"==r.type.charAt(0)?r:(r.value="",r.error=t.Constants.s_calcerrsheetnamemissing,r)},t.Formula.LookupName=function(e,o,i){var n,r,a,s=e.names,l={},c=!1;if(s[o.toUpperCase()]){if(l.value=s[o.toUpperCase()].definition,"="==l.value.charAt(0)){if(e.checknamecirc){if(e.checknamecirc[o])return l.type="e#NAME?",l.error=t.Constants.s_circularnameref+' "'+o+'".',l}else e.checknamecirc={},c=!0;if(e.checknamecirc[o]=!0,a=t.Formula.ParseFormulaIntoTokens(l.value.substring(1)),l=t.Formula.evaluate_parsed_formula(a,e,1),delete e.checknamecirc[o],c&&delete e.checknamecirc,"range"!=l.type)return l}return n=l.value.indexOf(":"),-1!=n?(l.type="range",l.value=l.value.substring(0,n)+"|"+l.value.substring(n+1)+"|",l.value=l.value.toUpperCase()):(l.type="coord",l.value=l.value.toUpperCase()),l}return(r=t.Formula.SpecialConstants[o.toUpperCase()])?(n=r.indexOf(","),l.value=r.substring(0,n)-0,l.type=r.substring(n+1),l):/^[a-zA-Z][a-zA-Z]?$/.test(o)?(l.type="coord",l.value=o.toUpperCase()+(i?e.attribs.lastrow:1),l):(l.value="",l.type="e#NAME?",l.error=t.Constants.s_calcerrunknownname+' "'+o+'"',l)},t.Formula.StepThroughRangeDown=function(e,o){var i,n,r,a,s,l,c,u,d,h,p=t.Formula;for(a=o.indexOf("|"),s=o.indexOf("|",a+1),i=o.substring(0,a),n=o.substring(a+1,s),r=o.substring(s+1)-0,a=i.indexOf("!"),-1!=a?(l=i.substring(a),i=i.substring(0,a)):l="",a=n.indexOf("!"),-1!=a&&(n=n.substring(0,a)),c=p.OrderRangeParts(i,n),h=0,d=c.r1;d<=c.r2;d++)for(u=c.c1;u<=c.c2;u++)if(h++,h>r)return(d!=c.r2||u!=c.c2)&&p.PushOperand(e,"range",i+l+"|"+n+"|"+h),{value:t.crToCoord(u,d)+l,type:"coord"}},t.Formula.DecodeRangeParts=function(e,o){var i,n,r,a,s,l,c,u=t.Formula;return r=o.indexOf("|"),a=o.indexOf("|",r+1),i=o.substring(0,r),n=o.substring(r+1,a),r=i.indexOf("!"),-1!=r?(s=i.substring(r+1),i=i.substring(0,r)):s="",r=n.indexOf("!"),-1!=r&&(n=n.substring(0,r)),l=e,s&&(l=u.FindInSheetCache(s),null==l)?null:(c=u.OrderRangeParts(i,n),{sheetdata:l,sheetname:s,col1num:c.c1,ncols:c.c2-c.c1+1,row1num:c.r1,nrows:c.r2-c.r1+1})},t.Formula.FunctionList||(t.Formula.FunctionList={}),t.Formula.FunctionClasses=null,t.Formula.FunctionArgDefs={},t.Formula.StoreIoEventFormula=function(e,o,i,n,r){var a=[];if(t.Formula.Clone(a,i),a.reverse(),0!=a.length){if("undefined"==typeof n.ioEventTree&&(n.ioEventTree={}),"undefined"==typeof n.ioParameterList&&(n.ioParameterList={}),"undefined"==typeof n.ioTimeTriggerList&&(n.ioTimeTriggerList={}),"undefined"==typeof n.radioGroupList&&(n.radioGroupList={}),"undefined"==typeof n.ioParameterList[o]&&(n.ioParameterList[o]={}),n.ioParameterList[o]=a,n.ioParameterList[o].function_name=e,"TimeTrigger"==r){var s=function(e,t,o){var i=o.cells[t];"undefined"!=typeof i&&"n"==i.valuetype.charAt(0)&&e.push(i.datavalue)},l=t.Formula.PlainCoord(a[0].value),c=[];if("range"==a[0].type)for(var u=t.Formula.DecodeRangeParts(n,l),d=0;dl){if(a.length<-l)return d=u.FunctionArgsError(e,o)}else if(a.length!=l)return d=u.FunctionArgsError(e,o);d=s(e,o,a,i,n)}else c=e,o.length&&"start"==o[o.length-1].type?(o.pop(),u.PushOperand(o,"name",c)):d=t.Constants.s_sheetfuncunknownfunction+" "+c+". ";return d},t.Formula.PushOperand=function(e,t,o){e.push({type:t,value:o})},t.Formula.CopyFunctionArgs=function(e,o){var o;for(t.Formula;e.length>0&&"start"!=e[e.length-1].type;)o.push(e.pop());e.pop()},t.Formula.FunctionArgsError=function(e,o){var i=t.Constants.s_calcerrincorrectargstofunction+" "+e+". ";return t.Formula.PushOperand(o,"e#VALUE!",i),i},t.Formula.FunctionSpecificError=function(e,o,i,n){return t.Formula.PushOperand(o,i,n),n},t.Formula.CheckForErrorValue=function(e,t){return"e"==t.type.charAt(0)?(e.push(t),!0):!1},t.Formula.FillFunctionInfo=function(){var e,o,i,n,r,a=t.Formula,s=t.Constants;if(!a.FunctionClasses){for(e in a.FunctionList)o=a.FunctionList[e],o[2]&&(a.FunctionArgDefs[o[2]]=s["s_farg_"+o[2]]||""),o[3]||s["s_fdef_"+e]&&(a.FunctionList[e][3]=s["s_fdef_"+e]);for(a.FunctionClasses={},r=0;r0){for(n="v1",i=2;o>=i;i++)n+=", v"+i;return n}if(0>o){for(n="v1",i=2;-o>i;i++)n+=", v"+i;return n+", ..."}return"nargs: "+o}s=" "}return n=r.FunctionArgDefs[s]||s},t.Formula.SeriesFunctions=function(e,o,i,n){for(var r,a,s,l,c,u,d,h,p,f=t.Formula,m=f.OperandValueAndType,g=f.LookupResultType,v=f.TypeLookupTable.plus,b=function(e,t){o.push({type:e,value:t})},y="",C=0,w="",x=0,_=0,S=0,k=1;i.length>0;)r=m(n,i),a=r.type.charAt(0),"n"==a&&(x+=1),"b"!=a&&(_+=1),"b"==a&&(S+=1),"e"!=a&&"b"!=a&&(y+=r.value),"n"==a?(s=r.value-0,C+=s,k*=s,l=void 0!=l?s>l?s:l:s,c=void 0!=c?c>s?s:c:s,1==x?(h=s,p=0):(u=h+(s-h)/x,d=p+(s-h)*(s-u),p=d,h=u),w=g(r.type,w||r.type,v)):"e"==a&&"e"!=w.charAt(0)&&(w=r.type);switch(w=w||"n",e){case"CONCAT":case"CONCATENATE":b("t",y);break;case"SUM":b(w,C);break;case"PRODUCT":b(w,k);break;case"MIN":b(w,c||0);break;case"MAX":b(w,l||0);break;case"COUNT":b("n",x);break;case"COUNTA":b("n",_);break;case"COUNTBLANK":b("n",S);break;case"AVERAGE":x>0?b(w,C/x):b("e#DIV/0!",0);break;case"STDEV":x>1?b(w,Math.sqrt(d/(x-1))):b("e#DIV/0!",0);break;case"STDEVP":x>1?b(w,Math.sqrt(d/x)):b("e#DIV/0!",0);break;case"VAR":x>1?b(w,d/(x-1)):b("e#DIV/0!",0);break;case"VARP":x>1?b(w,d/x):b("e#DIV/0!",0)}return null},t.Formula.FunctionList.AVERAGE=[t.Formula.SeriesFunctions,-1,"vn",null,"stat"],t.Formula.FunctionList.CONCAT=[t.Formula.SeriesFunctions,-1,"vn",null,"text"],t.Formula.FunctionList.CONCATENATE=[t.Formula.SeriesFunctions,-1,"vn",null,"text"],t.Formula.FunctionList.COUNT=[t.Formula.SeriesFunctions,-1,"vn",null,"stat"],t.Formula.FunctionList.COUNTA=[t.Formula.SeriesFunctions,-1,"vn",null,"stat"],t.Formula.FunctionList.COUNTBLANK=[t.Formula.SeriesFunctions,-1,"vn",null,"stat"],t.Formula.FunctionList.MAX=[t.Formula.SeriesFunctions,-1,"vn",null,"stat"],t.Formula.FunctionList.MIN=[t.Formula.SeriesFunctions,-1,"vn",null,"stat"],t.Formula.FunctionList.PRODUCT=[t.Formula.SeriesFunctions,-1,"vn",null,"stat"],t.Formula.FunctionList.STDEV=[t.Formula.SeriesFunctions,-1,"vn",null,"stat"],t.Formula.FunctionList.STDEVP=[t.Formula.SeriesFunctions,-1,"vn",null,"stat"],t.Formula.FunctionList.SUM=[t.Formula.SeriesFunctions,-1,"vn",null,"stat"],t.Formula.FunctionList.VAR=[t.Formula.SeriesFunctions,-1,"vn",null,"stat"],t.Formula.FunctionList.VARP=[t.Formula.SeriesFunctions,-1,"vn",null,"stat"],t.Formula.SumProductFunction=function(e,o,n,r){for(var a,s=[],l=0,c=t.Formula,u=0,d=0,h=function(e,t){o.push({type:e,value:t})};n.length>0;){if(a=c.TopOfStackValueAndType(r,n),"range"!=a.type)return void h("e#VALUE!",0);if(rangeinfo=c.DecodeRangeParts(r,a.value),u){if(u!=rangeinfo.ncols)return void h("e#VALUE!",0)}else u=rangeinfo.ncols;if(d){if(d!=rangeinfo.nrows)return void h("e#VALUE!",0)}else d=rangeinfo.nrows;for(i=0;i=h)return void R("e#VALUE!",0);for(p=u.col1num+h-1,b=[],f=0;f=criterianum)return void R("e#VALUE!",0);b.push(u.col1num+criterianum-1)}for(f=1;fk?v1:k:v1,T=void 0!=T?T>v1?v1:T:v1,1==O?(D=v1,P=0):(F=D+(v1-D)/O,E=P+(v1-D)*(v1-F),P=E,D=F),L=I(r.type,L||r.type,M)):"e"==S&&"e"!=L.charAt(0)&&(L=r.type))}switch(L=L||"n",e){case"DSUM":R(L,N);break;case"DPRODUCT":R(L,U);break;case"DMIN":R(L,T||0);break;case"DMAX":R(L,k||0);break;case"DCOUNT":R("n",O);break;case"DCOUNTA":R("n",z);break;case"DAVERAGE":O>0?R(L,N/O):R("e#DIV/0!",0);break;case"DSTDEV":O>1?R(L,Math.sqrt(E/(O-1))):R("e#DIV/0!",0);break;case"DSTDEVP":O>1?R(L,Math.sqrt(E/O)):R("e#DIV/0!",0);break;case"DVAR":O>1?R(L,E/(O-1)):R("e#DIV/0!",0);break;case"DVARP":O>1?R(L,E/O):R("e#DIV/0!",0);break;case"DGET":1==B?R(r.type,r.value):0==B?R("e#VALUE!",0):R("e#NUM!",0)}},t.Formula.FunctionList.DAVERAGE=[t.Formula.DSeriesFunctions,3,"dfunc","","stat"],t.Formula.FunctionList.DCOUNT=[t.Formula.DSeriesFunctions,3,"dfunc","","stat"],t.Formula.FunctionList.DCOUNTA=[t.Formula.DSeriesFunctions,3,"dfunc","","stat"],t.Formula.FunctionList.DGET=[t.Formula.DSeriesFunctions,3,"dfunc","","stat"],t.Formula.FunctionList.DMAX=[t.Formula.DSeriesFunctions,3,"dfunc","","stat"],t.Formula.FunctionList.DMIN=[t.Formula.DSeriesFunctions,3,"dfunc","","stat"],t.Formula.FunctionList.DPRODUCT=[t.Formula.DSeriesFunctions,3,"dfunc","","stat"],t.Formula.FunctionList.DSTDEV=[t.Formula.DSeriesFunctions,3,"dfunc","","stat"],t.Formula.FunctionList.DSTDEVP=[t.Formula.DSeriesFunctions,3,"dfunc","","stat"],t.Formula.FunctionList.DSUM=[t.Formula.DSeriesFunctions,3,"dfunc","","stat"],t.Formula.FunctionList.DVAR=[t.Formula.DSeriesFunctions,3,"dfunc","","stat"],t.Formula.FunctionList.DVARP=[t.Formula.DSeriesFunctions,3,"dfunc","","stat"],t.Formula.FieldToColnum=function(e,o,i,n,r,a){var s,l,c; -if("n"==a.charAt(0))return s=r-0,0>=s||s>i?0:Math.floor(s);if("t"!=a.charAt(0))return 0;for(r=r?r.toLowerCase():"",s=0;i>s;s++)if(l=e.GetAssuredCell(t.crToCoord(o+s,n)),c=l.datavalue,c=(c+"").toLowerCase(),c==r)return s+1;return 0},t.Formula.LookupFunctions=function(e,o,i,n){var r,a,s,l,c,u,d,h,p,f,m,g,v,b,y,C,r,w=t.Formula,x=w.OperandValueAndType,_=(w.LookupResultType,w.TypeLookupTable.plus,function(e,t){o.push({type:e,value:t})});if(r=x(n,i),"string"==typeof r.value&&(r.value=r.value.toLowerCase()),a=w.TopOfStackValueAndType(n,i),s=1,"MATCH"==e){if(i.length){if(s=w.OperandAsNumber(n,i),"n"!=s.type.charAt(0))return void _("e#VALUE!",0);if(i.length)return w.FunctionArgsError(e,o),0;s=s.value-0}}else{if(l=w.OperandAsNumber(n,i),"n"!=l.type.charAt(0))return void _("e#VALUE!",0);if(l=Math.floor(l.value),i.length){if(s=w.OperandAsNumber(n,i),"n"!=s.type.charAt(0))return void _("e#VALUE!",0);if(i.length)return w.FunctionArgsError(e,o),0;s=s.value?1:0}}if(r.type=r.type.charAt(0),"n"==r.type&&(r.value=r.value-0),"range"!=a.type)return w.FunctionArgsError(e,o),0;if(c=w.DecodeRangeParts(n,a.value,a.type),!c)return void _("e#REF!",0);if(u=0,d=0,h=0,p=0,"HLOOKUP"==e){if(h=1,l>c.nrows)return void _("e#REF!",0)}else if("VLOOKUP"==e){if(p=1,l>c.ncols)return void _("e#REF!",0)}else{if("MATCH"!=e)return w.FunctionArgsError(e,o),0;if(c.ncols>1){if(c.nrows>1)return void _("e#N/A",0);h=1}else p=1}if(1>l&&"MATCH"!=e)return _("e#VALUE!",0),0;for(;;){if(C=t.crToCoord(c.col1num+u,c.row1num+d),v=c.sheetdata.GetAssuredCell(C),b=v.datavalue,y=v.valuetype?v.valuetype.charAt(0):"b","n"==y&&(b-=0),s){if("n"==r.type&&"n"==y){if(r.value==b)break;if(s>0&&r.value>b||0>s&&r.value0&&r.value>b||0>s&&r.value=c.nrows||u>=c.ncols){if(f){f=2;break}return void _("e#N/A",0)}}2==f&&(d=g,u=m),"MATCH"==e?(b=u+d+1,y="n"):(C=t.crToCoord(c.col1num+u+("VLOOKUP"==e?l-1:0),c.row1num+d+("HLOOKUP"==e?l-1:0)),v=c.sheetdata.GetAssuredCell(C),b=v.datavalue,y=v.valuetype),_(y,b)},t.Formula.FunctionList.HLOOKUP=[t.Formula.LookupFunctions,-3,"hlookup","","lookup"],t.Formula.FunctionList.MATCH=[t.Formula.LookupFunctions,-2,"match","","lookup"],t.Formula.FunctionList.VLOOKUP=[t.Formula.LookupFunctions,-3,"vlookup","","lookup"],t.Formula.IndexFunction=function(e,o,i,n){var r,a,s,l,c,u,d,h=t.Formula,p=function(e,t){o.push({type:e,value:t})};if(r=h.TopOfStackValueAndType(n,i),"range"!=r.type)return h.FunctionArgsError(e,o),0;if(s=h.DecodeRangeParts(n,r.value,r.type),a=s.sheetname?"!"+s.sheetname:"",l={value:0},c={value:0},i.length){if(l=h.OperandAsNumber(n,i),"n"!=l.type.charAt(0)||l.value<0)return void p("e#VALUE!",0);if(i.length){if(c=h.OperandAsNumber(n,i),"n"!=c.type.charAt(0)||c.value<0)return void p("e#VALUE!",0);if(i.length)return h.FunctionArgsError(e,o),0}else 1==s.nrows&&(c.value=l.value,l.value=0)}return l.value>s.nrows||c.value>s.ncols?void p("e#REF!",0):(0==l.value?0==c.value?1==s.nrows&&1==s.ncols?(u=t.crToCoord(s.col1num,s.row1num)+a,d="coord"):(u=t.crToCoord(s.col1num,s.row1num)+a+"|"+t.crToCoord(s.col1num+s.ncols-1,s.row1num+s.nrows-1)+"|",d="range"):1==s.nrows?(u=t.crToCoord(s.col1num+c.value-1,s.row1num)+a,d="coord"):(u=t.crToCoord(s.col1num+c.value-1,s.row1num)+a+"|"+t.crToCoord(s.col1num+c.value-1,s.row1num+s.nrows-1)+"|",d="range"):0==c.value?1==s.ncols?(u=t.crToCoord(s.col1num,s.row1num+l.value-1)+a,d="coord"):(u=t.crToCoord(s.col1num,s.row1num+l.value-1)+a+"|"+t.crToCoord(s.col1num+s.ncols-1,s.row1num+l.value-1)+"|",d="range"):(u=t.crToCoord(s.col1num+c.value-1,s.row1num+l.value-1)+a,d="coord"),void p(d,u))},t.Formula.FunctionList.INDEX=[t.Formula.IndexFunction,-1,"index","","lookup"],t.Formula.CountifSumifFunctions=function(e,o,i,n){var r,a,s,l,c,u,d=0,h="",p=0,f=t.Formula,m=f.OperandValueAndType,g=f.LookupResultType,v=f.TypeLookupTable.plus,b=function(e,t){o.push({type:e,value:t})};if(r=f.TopOfStackValueAndType(n,i),a=f.OperandAsText(n,i),"SUMIF"==e)if(1==i.length)s=f.TopOfStackValueAndType(n,i);else{if(0!=i.length)return f.FunctionArgsError(e,o),0;s={value:r.value,type:r.type}}else s={value:r.value,type:r.type};if("n"==a.type.charAt(0)?a.value=a.value+"":"e"==a.type.charAt(0)?a.value=null:"b"==a.type.charAt(0)&&(a.value=null),"coord"!=r.type&&"range"!=r.type)return f.FunctionArgsError(e,o),0;if("SUMIF"==e&&"coord"!=s.type&&"range"!=s.type)return f.FunctionArgsError(e,o),0;for(i.push(r),l=[],l.push(s);i.length;)c=m(n,i),u=m(n,l),f.TestCriteria(c.value,c.type,a.value)&&(p+=1,"n"==u.type.charAt(0)?(d+=u.value-0,h=g(u.type,h||u.type,v)):"e"==u.type.charAt(0)&&"e"!=h.charAt(0)&&(h=u.type));h=h||"n","SUMIF"==e?b(h,d):"COUNTIF"==e&&b("n",p)},t.Formula.FunctionList.COUNTIF=[t.Formula.CountifSumifFunctions,2,"rangec","","stat"],t.Formula.FunctionList.SUMIF=[t.Formula.CountifSumifFunctions,-2,"sumif","","stat"],t.Formula.SumifsFunction=function(e,o,i,n){var r,a,s,l,c,u,d=0,h="",p=t.Formula,f=p.OperandValueAndType,m=p.LookupResultType,g=p.TypeLookupTable.plus,v=function(e,t){o.push({type:e,value:t})};if(s=p.TopOfStackValueAndType(n,i),"coord"!=s.type&&"range"!=s.type)return p.FunctionArgsError(e,o),0;for(var b=[],y=[];i.length;){if(r=p.TopOfStackValueAndType(n,i),a=p.OperandAsText(n,i),"n"==a.type.charAt(0)?a.value=a.value+"":"e"==a.type.charAt(0)?a.value=null:"b"==a.type.charAt(0)&&(a.value=null),"coord"!=r.type&&"range"!=r.type)return p.FunctionArgsError(e,o),0;b.push([r]),y.push(a)}for(l=[],l.push(s);l.length;){u=f(n,l);for(var C=!0,w=0;w3)return void l.PushOperand(o,"e#VALUE!",0);if(i.length)return void l.FunctionArgsError(e,o)}s=6,a.value>1&&(s-=1),c=Math.floor(u.value+s)%7+(a.value<3?1:0)}l.PushOperand(o,d,c)},t.Formula.FunctionList.DAY=[t.Formula.DMYFunctions,1,"v","","datetime"],t.Formula.FunctionList.MONTH=[t.Formula.DMYFunctions,1,"v","","datetime"],t.Formula.FunctionList.YEAR=[t.Formula.DMYFunctions,1,"v","","datetime"],t.Formula.FunctionList.WEEKDAY=[t.Formula.DMYFunctions,-1,"weekday","","datetime"],t.Formula.HMSFunctions=function(e,o,i,n){var r,a,s,l,c=t.Formula,u=0,d=c.OperandAsNumber(n,i),h=c.LookupResultType(d.type,d.type,c.TypeLookupTable.oneargnumeric);if("n"==h.charAt(0)){if(d.value<0)return void c.PushOperand(o,"e#NUM!",0);l=d.value-Math.floor(d.value),l*=24,r=Math.floor(l),l-=Math.floor(l),l*=60,a=Math.floor(l),l-=Math.floor(l),l*=60,s=Math.floor(l+(d.value>=0?.5:-.5)),"HOUR"==e?u=r:"MINUTE"==e?u=a:"SECOND"==e&&(u=s)}c.PushOperand(o,h,u)},t.Formula.FunctionList.HOUR=[t.Formula.HMSFunctions,1,"v","","datetime"],t.Formula.FunctionList.MINUTE=[t.Formula.HMSFunctions,1,"v","","datetime"],t.Formula.FunctionList.SECOND=[t.Formula.HMSFunctions,1,"v","","datetime"],t.Formula.ExactFunction=function(e,o,i,n){var r=t.Formula,a=0,s="nl",l=r.OperandValueAndType(n,i),c=l.type.charAt(0),u=r.OperandValueAndType(n,i),d=u.type.charAt(0);"t"==c?"t"==d?a=l.value==u.value?1:0:"b"==d?a=l.value.length?0:1:"n"==d?a=l.value==u.value+""?1:0:"e"==d?(a=u.value,s=u.type):a=0:"n"==c?"n"==d?a=l.value-0==u.value-0?1:0:"b"==d?a=0:"t"==d?a=l.value+""==u.value?1:0:"e"==d?(a=u.value,s=u.type):a=0:"b"==c?"t"==d?a=u.value.length?0:1:"b"==d?a=1:"n"==d?a=0:"e"==d?(a=u.value,s=u.type):a=0:"e"==c&&(a=l.value,s=l.type),r.PushOperand(o,s,a)},t.Formula.FunctionList.EXACT=[t.Formula.ExactFunction,2,"","","text"],t.Formula.ArgList={FIND:[1,1,0],LEFT:[1,0],LEN:[1],LOWER:[1],MID:[1,0,0],PROPER:[1],REPLACE:[1,0,0,1],REPT:[1,0],RIGHT:[1,0],SUBSTITUTE:[1,1,1,0],TRIM:[1],HEXCODE:[1],UPPER:[1]},t.Formula.StringFunctions=function(e,o,i,n){var r,a,s,l,c,u,d=t.Formula,h=0,p="e#VALUE!",f=i.length,m=d.ArgList[e],g=[],v=[];for(r=1;f>=r;r++){if(r>m.length)return void d.FunctionArgsError(e,o);if(0==m[r-1]?a=d.OperandAsNumber(n,i):1==m[r-1]?a=d.OperandAsText(n,i):-1==m[r-1]&&(a=d.OperandValueAndType(n,i)),g[r]=a.value,v[r]=a.type,"e"==a.type.charAt(0))return void d.PushOperand(o,a.type,h)}switch(e){case"FIND":s=v[3]?g[3]-1:0,0>s?h="Start is before string":(h=g[2].indexOf(g[1],s),h>=0?(h+=1,p="n"):h="Not found");break;case"LEFT":l=v[2]?g[2]-0:1,0>l?h="Negative length":(h=g[1].substring(0,l),p="t");break;case"LEN":h=g[1].length,p="n";break;case"LOWER":h=g[1].toLowerCase(),p="t";break;case"MID":c=g[2]-0,l=g[3]-0,1>l||1>c?h="Bad arguments":(h=g[1].substring(c-1,c+l-1),p="t");break;case"PROPER":h=g[1].replace(/\b\w+\b/g,function(e){return e.substring(0,1).toUpperCase()+e.substring(1)}),p="t";break;case"REPLACE":c=g[2]-0,l=g[3]-0,0>l||1>c?h="Bad arguments":(h=g[1].substring(0,c-1)+g[4]+g[1].substring(c-1+l),p="t");break;case"REPT":if(u=g[2]-0,0>u)h="Negative count";else{for(h="";u>0;u--)h+=g[1];p="t"}break;case"RIGHT":l=v[2]?g[2]-0:1,0>l?h="Negative length":(h=g[1].slice(-l),p="t");break;case"SUBSTITUTE":if(fulltext=g[1],oldtext=g[2],newtext=g[3],null!=g[4]){if(which=g[4]-0,0>=which){h="Non-positive instance number";break}}else which=0;for(u=0,oldpos=0,h="";;){if(pos=fulltext.indexOf(oldtext,oldpos),!(pos>=0)){h+=fulltext.substring(oldpos);break}if(u++,h+=fulltext.substring(oldpos,pos),0==which)h+=newtext;else{if(which==u){h+=newtext+fulltext.substring(pos+oldtext.length);break}h+=oldtext}oldpos=pos+oldtext.length}p="t";break;case"TRIM":h=g[1],h=h.replace(/^ */,""),h=h.replace(/ *$/,""),h=h.replace(/ +/g," "),p="t";break;case"HEXCODE":h=String(g[1]);var b=h.charCodeAt(0);if(b>=55296&&56319>=b){var y=h.charCodeAt(1);y>=56320&&57343>=y&&(b=1024*(b-55296)+(y-56320)+65536)}h=b.toString(16).toUpperCase(),p="t";break;case"UPPER":h=g[1].toUpperCase(),p="t"}d.PushOperand(o,p,h)},t.Formula.FunctionList.FIND=[t.Formula.StringFunctions,-2,"find","","text"],t.Formula.FunctionList.LEFT=[t.Formula.StringFunctions,-2,"tc","","text"],t.Formula.FunctionList.LEN=[t.Formula.StringFunctions,1,"txt","","text"],t.Formula.FunctionList.LOWER=[t.Formula.StringFunctions,1,"txt","","text"],t.Formula.FunctionList.MID=[t.Formula.StringFunctions,3,"mid","","text"],t.Formula.FunctionList.PROPER=[t.Formula.StringFunctions,1,"v","","text"],t.Formula.FunctionList.REPLACE=[t.Formula.StringFunctions,4,"replace","","text"],t.Formula.FunctionList.REPT=[t.Formula.StringFunctions,2,"tc","","text"],t.Formula.FunctionList.RIGHT=[t.Formula.StringFunctions,-1,"tc","","text"],t.Formula.FunctionList.SUBSTITUTE=[t.Formula.StringFunctions,-3,"subs","","text"],t.Formula.FunctionList.TRIM=[t.Formula.StringFunctions,1,"v","","text"],t.Formula.FunctionList.HEXCODE=[t.Formula.StringFunctions,1,"v","","text"],t.Formula.FunctionList.UPPER=[t.Formula.StringFunctions,1,"v","","text"],t.Formula.IsFunctions=function(e,o,i,n){var r=t.Formula,a=0,s="nl",l=r.OperandValueAndType(n,i),c=l.type.charAt(0);switch(e){case"ISBLANK":a="b"==l.type?1:0;break;case"ISERR":a="e"==c?"e#N/A"==l.type?0:1:0;break;case"ISERROR":a="e"==c?1:0;break;case"ISLOGICAL":a="nl"==l.type?1:0;break;case"ISNA":a="e#N/A"==l.type?1:0;break;case"ISNONTEXT":a="t"==c?0:1;break;case"ISNUMBER":a="n"==c?1:0;break;case"ISTEXT":a="t"==c?1:0}r.PushOperand(o,s,a)},t.Formula.FunctionList.ISBLANK=[t.Formula.IsFunctions,1,"v","","test"],t.Formula.FunctionList.ISERR=[t.Formula.IsFunctions,1,"v","","test"],t.Formula.FunctionList.ISERROR=[t.Formula.IsFunctions,1,"v","","test"],t.Formula.FunctionList.ISLOGICAL=[t.Formula.IsFunctions,1,"v","","test"],t.Formula.FunctionList.ISNA=[t.Formula.IsFunctions,1,"v","","test"],t.Formula.FunctionList.ISNONTEXT=[t.Formula.IsFunctions,1,"v","","test"],t.Formula.FunctionList.ISNUMBER=[t.Formula.IsFunctions,1,"v","","test"],t.Formula.FunctionList.ISTEXT=[t.Formula.IsFunctions,1,"v","","test"],t.Formula.NTVFunctions=function(e,o,i,n){var r=t.Formula,a=0,s="e#VALUE!",l=r.OperandValueAndType(n,i),c=l.type.charAt(0);switch(e){case"N":a="n"==c?l.value-0:0,s="n";break;case"T":a="t"==c?l.value+"":"",s="t";break;case"VALUE":"n"==c||"b"==c?(a=l.value||0,s="n"):"t"==c&&(l=t.DetermineValueType(l.value),"n"!=l.type.charAt(0)?(a=0,s="e#VALUE!"):(a=l.value-0,s="n"))}"e"==c&&(s=l.type),r.PushOperand(o,s,a)},t.Formula.FunctionList.N=[t.Formula.NTVFunctions,1,"v","","math"],t.Formula.FunctionList.T=[t.Formula.NTVFunctions,1,"v","","text"],t.Formula.FunctionList.VALUE=[t.Formula.NTVFunctions,1,"v","","text"],t.Formula.Math1Functions=function(e,o,i,n){var r,a,s,l={},c=t.Formula;if(r=c.OperandAsNumber(n,i),a=r.value,l.type=c.LookupResultType(r.type,r.type,c.TypeLookupTable.oneargnumeric),"n"==l.type)switch(e){case"ABS":a=Math.abs(a);break;case"ACOS":a>=-1&&1>=a?a=Math.acos(a):l.type="e#NUM!";break;case"ASIN":a>=-1&&1>=a?a=Math.asin(a):l.type="e#NUM!";break;case"ATAN":a=Math.atan(a);break;case"COS":a=Math.cos(a);break;case"DEGREES":a=180*a/Math.PI;break;case"EVEN":a=0>a?-a:a,a!=Math.floor(a)?a=Math.floor(a+1)+Math.floor(a+1)%2:a+=a%2,r.value<0&&(a=-a);break;case"EXP":a=Math.exp(a);break;case"FACT":for(s=1,a=Math.floor(a);a>0;a--)s*=a;a=s;break;case"INT":a=Math.floor(a);break;case"LN":0>=a&&(l.type="e#NUM!",l.error=t.Constants.s_sheetfunclnarg),a=Math.log(a);break;case"LOG10":0>=a&&(l.type="e#NUM!",l.error=t.Constants.s_sheetfunclog10arg),a=Math.log(a)/Math.log(10);break;case"ODD":a=0>a?-a:a,a!=Math.floor(a)?a=Math.floor(a+1)+(1-Math.floor(a+1)%2):a+=1-a%2,r.value<0&&(a=-a);break;case"RADIANS":a=a*Math.PI/180;break;case"SIN":a=Math.sin(a);break;case"SQRT":a>=0?a=Math.sqrt(a):l.type="e#NUM!";break;case"TAN":0!=Math.cos(a)?a=Math.tan(a):l.type="e#NUM!"}return l.value=a,o.push(l),null},t.Formula.FunctionList.ABS=[t.Formula.Math1Functions,1,"v","","math"],t.Formula.FunctionList.ACOS=[t.Formula.Math1Functions,1,"v","","math"],t.Formula.FunctionList.ASIN=[t.Formula.Math1Functions,1,"v","","math"],t.Formula.FunctionList.ATAN=[t.Formula.Math1Functions,1,"v","","math"],t.Formula.FunctionList.COS=[t.Formula.Math1Functions,1,"v","","math"],t.Formula.FunctionList.DEGREES=[t.Formula.Math1Functions,1,"v","","math"],t.Formula.FunctionList.EVEN=[t.Formula.Math1Functions,1,"v","","math"],t.Formula.FunctionList.EXP=[t.Formula.Math1Functions,1,"v","","math"],t.Formula.FunctionList.FACT=[t.Formula.Math1Functions,1,"v","","math"],t.Formula.FunctionList.INT=[t.Formula.Math1Functions,1,"v","","math"],t.Formula.FunctionList.LN=[t.Formula.Math1Functions,1,"v","","math"],t.Formula.FunctionList.LOG10=[t.Formula.Math1Functions,1,"v","","math"],t.Formula.FunctionList.ODD=[t.Formula.Math1Functions,1,"v","","math"],t.Formula.FunctionList.RADIANS=[t.Formula.Math1Functions,1,"v","","math"],t.Formula.FunctionList.SIN=[t.Formula.Math1Functions,1,"v","","math"],t.Formula.FunctionList.SQRT=[t.Formula.Math1Functions,1,"v","","math"],t.Formula.FunctionList.TAN=[t.Formula.Math1Functions,1,"v","","math"],t.Formula.Math2Functions=function(e,o,i,n){var r,a,s,l,c,u,d={},h=t.Formula;if(r=h.OperandAsNumber(n,i),a=h.OperandAsNumber(n,i),s=0,d.type=h.LookupResultType(r.type,a.type,h.TypeLookupTable.twoargnumeric),"n"==d.type)switch(e){case"ATAN2":0==r.value&&0==a.value?d.type="e#DIV/0!":d.value=Math.atan2(a.value,r.value);break;case"POWER":d.value=Math.pow(r.value,a.value),isNaN(d.value)&&(d.value=0,d.type="e#NUM!");break;case"MOD":0==a.value?d.type="e#DIV/0!":(l=r.value/a.value,l=Math.floor(l),d.value=r.value-l*a.value);break;case"TRUNC":if(c=1,a.value>=0){for(a.value=Math.floor(a.value),u=0;u0){for(a=1,r.value=Math.floor(r.value),l=0;l0?1:-1}}if(0==a.value)return void c("n",0);if(a.value*r.value<0)return void c("e#NUM!",0);switch(e){case"CEILING":c("n",Math.ceil(r.value/a.value)*a.value);break;case"FLOOR":c("n",Math.floor(r.value/a.value)*a.value)}},t.Formula.FunctionList.CEILING=[t.Formula.CeilingFloorFunctions,-1,"vsig","","math"],t.Formula.FunctionList.FLOOR=[t.Formula.CeilingFloorFunctions,-1,"vsig","","math"],t.Formula.AndOrFunctions=function(e,o,i,n){var r,a,s=t.Formula,l="";for("AND"==e?a=1:"OR"==e&&(a=0);i.length;)r=s.OperandValueAndType(n,i),"n"==r.type.charAt(0)?(r.value=r.value-0,"AND"==e?a=0!=r.value?a:0:"OR"==e&&(a=0!=r.value?1:a),l=s.LookupResultType(r.type,l||"nl",s.TypeLookupTable.propagateerror)):"e"==r.type.charAt(0)&&"e"!=l.charAt(0)&&(l=r.type);l.length<1&&(l="e#VALUE!",a=0),s.PushOperand(o,l,a)},t.Formula.FunctionList.AND=[t.Formula.AndOrFunctions,-1,"vn","","test"],t.Formula.FunctionList.OR=[t.Formula.AndOrFunctions,-1,"vn","","test"],t.Formula.NotFunction=function(e,o,i,n){var r=0,a=t.Formula,s=a.OperandValueAndType(n,i),l=a.LookupResultType(s.type,s.type,a.TypeLookupTable.propagateerror);"n"==s.type.charAt(0)||"b"==s.type?(r=s.value-0!=0?0:1,l="nl"):"t"==s.type.charAt(0)&&(l="e#VALUE!"),a.PushOperand(o,l,r)},t.Formula.FunctionList.NOT=[t.Formula.NotFunction,1,"v","","test"],t.Formula.ChooseFunction=function(e,o,i,n){var r,a,s,l=0,c=t.Formula,u=c.OperandAsNumber(n,i);for("n"!=u.type.charAt(0)&&(u.value=0),u.value=Math.floor(u.value),a=0;i.length;)if(s=c.TopOfStackValueAndType(n,i),a+=1,u.value==a){l=s.value,r=s.type;break}r?c.PushOperand(o,r,l):c.PushOperand(o,"e#VALUE!",0)},t.Formula.FunctionList.CHOOSE=[t.Formula.ChooseFunction,-2,"choose","","lookup"],t.Formula.ColumnsRowsFunctions=function(e,o,i,n){var r,a,s=0,l=t.Formula,c=l.TopOfStackValueAndType(n,i);"coord"==c.type?(s=1,r="n"):"range"==c.type?(a=l.DecodeRangeParts(n,c.value),"COLUMNS"==e?s=a.ncols:"ROWS"==e&&(s=a.nrows),r="n"):(s=0,r="e#VALUE!"),l.PushOperand(o,r,s)},t.Formula.FunctionList.COLUMNS=[t.Formula.ColumnsRowsFunctions,1,"range","","lookup"],t.Formula.FunctionList.ROWS=[t.Formula.ColumnsRowsFunctions,1,"range","","lookup"],t.Formula.ZeroArgFunctions=function(e,o){var i,n,r,a,s,l={value:0};switch(e){case"FALSE":l.type="nl",l.value=0;break;case"NA":l.type="e#N/A";break;case"NOW":i=new Date,n=i.getTimezoneOffset(),i=i.getTime()/1e3,r=25569,a=86400,s=r+i/a-n/1440,l.value=s,l.type="ndt",t.Formula.FreshnessInfo.volatile.NOW=!0;break;case"PI":l.type="n",l.value=Math.PI;break;case"TODAY":i=new Date,n=i.getTimezoneOffset(),i=i.getTime()/1e3,r=25569,a=86400,s=r+i/a-n/1440,l.value=Math.floor(s),l.type="nd",t.Formula.FreshnessInfo.volatile.TODAY=!0;break;case"TRUE":l.type="nl",l.value=1;break;case"RAND":l.type="n",l.value=Math.random(),t.Formula.FreshnessInfo.volatile.RAND=!0}return o.push(l),null},t.Formula.FunctionList.FALSE=[t.Formula.ZeroArgFunctions,0,"","","test"],t.Formula.FunctionList.NA=[t.Formula.ZeroArgFunctions,0,"","","test"],t.Formula.FunctionList.NOW=[t.Formula.ZeroArgFunctions,0,"","","datetime"],t.Formula.FunctionList.RAND=[t.Formula.ZeroArgFunctions,0,"","","math"],t.Formula.FunctionList.PI=[t.Formula.ZeroArgFunctions,0,"","","math"],t.Formula.FunctionList.TODAY=[t.Formula.ZeroArgFunctions,0,"","","datetime"],t.Formula.FunctionList.TRUE=[t.Formula.ZeroArgFunctions,0,"","","test"],t.Formula.DDBFunction=function(e,o,i,n){var r,a,s,l,c=t.Formula,u=c.OperandAsNumber(n,i),d=c.OperandAsNumber(n,i),h=c.OperandAsNumber(n,i),p=c.OperandAsNumber(n,i);if(!(c.CheckForErrorValue(o,u)||c.CheckForErrorValue(o,d)||c.CheckForErrorValue(o,h)||c.CheckForErrorValue(o,p))){if(h.value<1)return c.FunctionSpecificError(e,o,"e#NUM!",t.Constants.s_sheetfuncddblife),0;if(r={value:2,type:"n"},i.length>0&&(r=c.OperandAsNumber(n,i)),0!=i.length)return c.FunctionArgsError(e,o),0;if(!c.CheckForErrorValue(o,r)){for(a=0,s=0,l=1;l<=p.value-0&&l<=h.value;l++)a=(u.value-s)*(r.value/h.value),u.value-s-a=h)return void F.PushOperand(o,"e#NUM!",0);if(y=(v-d)/b,0>=y)return void F.PushOperand(o,"e#NUM!",0);C=Math.log(y),w=Math.log(1+h),p=C/w}a=p,r="n";break;case"PMT":if(h=E.value,p=D.value,u=P.value,d=null!=s?s.value:0,m=null!=l&&l.value?1:0,0==p)return void F.PushOperand(o,"e#NUM!",0);f=0==h?(d-u)/p:(0-d-u*Math.pow(1+h,p))/((1+h*m)*(Math.pow(1+h,p)-1)/h),a=f,r="n$";break;case"PV":if(h=E.value,p=D.value,f=P.value,d=null!=s?s.value:0,m=null!=l&&l.value?1:0,-1==h)return void F.PushOperand(o,"e#DIV/0!",0);u=0==h?-d-f*p:(-d-f*(1+h*m)*(Math.pow(1+h,p)-1)/h)/Math.pow(1+h,p),a=u,r="n$";break;case"RATE":for(p=E.value,f=D.value,u=P.value,d=null!=s?s.value:0,m=null!=l&&l.value?1:0,g=null!=c?c.value:.1,_=100,S=0,delta=1,epsilon=1e-7,h=g||1e-8;(delta>=0?delta:-delta)>epsilon&&h!=k;)if(delta=d+u*Math.pow(1+h,p)+f*(1+h*m)*(Math.pow(1+h,p)-1)/h,null!=x?(T=(delta-x)/(h-k)||.001,k=h,h-=delta/T,x=delta):(k=h,h=1.1*h,x=delta),S++,S>=_)return void F.PushOperand(o,"e#NUM!",0);a=h,r="n%"}F.PushOperand(o,r,a)},t.Formula.FunctionList.FV=[t.Formula.InterestFunctions,-3,"fv","","financial"],t.Formula.FunctionList.NPER=[t.Formula.InterestFunctions,-3,"nper","","financial"],t.Formula.FunctionList.PMT=[t.Formula.InterestFunctions,-3,"pmt","","financial"],t.Formula.FunctionList.PV=[t.Formula.InterestFunctions,-3,"pv","","financial"],t.Formula.FunctionList.RATE=[t.Formula.InterestFunctions,-3,"rate","","financial"],t.Formula.NPVFunction=function(e,o,i,n){var r,a,s,l,c,u=t.Formula,a=u.OperandAsNumber(n,i);if(!u.CheckForErrorValue(o,a)){for(s=0,r="n",l=1;i.length;)if(c=u.OperandValueAndType(n,i),"n"==c.type.charAt(0)){if(l*=1+a.value,0==l)return void u.PushOperand(o,"e#DIV/0!",0);s+=c.value/l,r=u.LookupResultType(c.type,r||c.type,u.TypeLookupTable.plus)}else if("e"==c.type.charAt(0)&&"e"!=r.charAt(0)){r=c.type;break}"n"==r.charAt(0)&&(r="n$"),u.PushOperand(o,r,s)}},t.Formula.FunctionList.NPV=[t.Formula.NPVFunction,-2,"npv","","financial"],t.Formula.IRRFunction=function(e,o,i,n){var r,a,s,l,c,u,d,h,p,f,m,g,v=[],b=[],y=t.Formula;for(v.push(i.pop());v.length;)if(r=y.OperandValueAndType(n,v),"n"==r.type.charAt(0))b.push(r.value);else if("e"==r.type.charAt(0))return void y.PushOperand(o,"e#VALUE!",0);if(!b.length)return void y.PushOperand(o,"e#NUM!",0);if(a={value:0},i.length){if(a=y.OperandAsNumber(n,i),"n"!=a.type.charAt(0)&&"b"!=a.type.charAt(0))return void y.PushOperand(o,"e#VALUE!",0);if(i.length)return void y.FunctionArgsError(e,o)}for(a.value=a.value||.1,l=20,c=0,u=1e-7,d=a.value,f=1;(f>=0?f:-f)>u&&d!=h;){for(f=0,m=1,g=0;g=l)return void y.PushOperand(o,"e#NUM!",0)}y.PushOperand(o,"n%",d)},t.Formula.FunctionList.IRR=[t.Formula.IRRFunction,-1,"irr","","financial"],t.Formula.IoFunctions=function(o,i,n,r,a){var s,l,c,u,d={BUTTON:[2],IMAGEBUTTON:[2],EMAIL:[14,14,14,14],EMAILIF:[13,14,14,14,14],EMAILONEDIT:[14,14,14,14,14],EMAILAT:[13,14,14,14,14],EMAILONEDITIF:[14,13,14,14,14,14],EMAILATIF:[13,13,14,14,14,14],SUBMIT:[2],TEXTBOX:[2],AUTOCOMPLETE:[2,14],SELECT:[2,14,1,1],CHECKBOX:[3],RADIOBUTTON:[2,2],COPYVALUE:[4,12,15],COPYFORMULA:[4,12,12],INSERT:[4,8,-12,-15],DELETEIF:[4,7,8],COMMAND:[4,14],COMMANDIF:[4,13,14],PANEL:[15,-12],SPLASH:[12],STYLE:[6]},h=t.Formula,p=0,f="e#VALUE!",m=n.length,g=d[o],v=[],b=[],y=-1;for(s=1;m>=s;s++){if(-1!=y)u=Math.abs(g[c+(s-1-c)%y]);else{if(s>g.length)return void h.FunctionArgsError(o,i);u=g[s-1],0>u&&(y=g.length-(s-1),c=s-1,u=Math.abs(u))}if(1==u)l=h.OperandAsNumber(r,n);else if(2==u)l=h.OperandAsText(r,n);else if(3==u)l=h.OperandValueAndType(r,n);else{var C=n[n.length-1].type,w=!1;if(("n"==C.charAt(0)&&0!=(1&u)||"t"==C.charAt(0)&&0!=(2&u))&&(w=!0,l=h.OperandValueAndType(r,n)),"coord"==C&&0!=(4&u)&&(w=!0,l=h.OperandAsCoord(r,n),l.value=t.Formula.PlainCoord(l.value)),"range"==C&&0!=(8&u)&&(w=!0,l=h.OperandAsRange(r,n),l.value=t.Formula.PlainCoord(l.value)),0==w)return void h.FunctionArgsError(o,i)}if(v[s]=l.value,b[s]=l.type,"e"==l.type.charAt(0))return void h.PushOperand(i,l.type,p)}switch(o){case"STYLE":var x=r.ioParameterList[a];if(x){var _=t.Formula.getStandardizedList(r,{value:v[1],type:b[1]});_.length>0&&(x.css=_[0],x.cssParameter="t"==b[1]?'"'+v[1]+'"':v[1]),p="",f="ni"}break;case"SELECT":var x=r.ioParameterList[a],S=t.Formula.getStandardizedList(r,x[1]);if(x.html=[],x.html[0]=1==v[4]?"multiple":"",x.html[1]=v[3]?""+v[3]:"1",S.length>0){var k="",T=new RegExp("