From 379b9d1a62042f347f9f42ec7c0975b74c35e30c Mon Sep 17 00:00:00 2001 From: patarapolw Date: Mon, 12 Aug 2019 01:13:27 +0700 Subject: [PATCH] first commit --- .gitignore | 125 + config.yaml | 19 + package-lock.json | 3198 +++++++++++++++++++++++ package.json | 22 + plugins/base-url/package.json | 8 + plugins/base-url/plugin.js | 13 + plugins/blog/package.json | 8 + plugins/blog/plugin.js | 200 ++ src/app.js | 15 + src/pages/index.md | 3 + src/pages/p/2019/08/welcome.md | 25 + themes/blog/README.md | 54 + themes/blog/layouts/includes/empty.pug | 13 + themes/blog/layouts/includes/header.pug | 13 + themes/blog/layouts/includes/mixins.pug | 21 + themes/blog/layouts/index.pug | 21 + themes/blog/layouts/layout.pug | 20 + themes/blog/layouts/paginator.pug | 23 + themes/blog/layouts/post.pug | 12 + themes/blog/layouts/sidebar.pug | 7 + themes/blog/resources/favicon.png | Bin 0 -> 1797 bytes themes/blog/screenshot.jpg | Bin 0 -> 63897 bytes themes/blog/theme.js | 1 + themes/blog/theme.scss | 7 + 24 files changed, 3828 insertions(+) create mode 100644 .gitignore create mode 100644 config.yaml create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 plugins/base-url/package.json create mode 100644 plugins/base-url/plugin.js create mode 100644 plugins/blog/package.json create mode 100644 plugins/blog/plugin.js create mode 100644 src/app.js create mode 100644 src/pages/index.md create mode 100644 src/pages/p/2019/08/welcome.md create mode 100644 themes/blog/README.md create mode 100644 themes/blog/layouts/includes/empty.pug create mode 100644 themes/blog/layouts/includes/header.pug create mode 100644 themes/blog/layouts/includes/mixins.pug create mode 100644 themes/blog/layouts/index.pug create mode 100644 themes/blog/layouts/layout.pug create mode 100644 themes/blog/layouts/paginator.pug create mode 100644 themes/blog/layouts/post.pug create mode 100644 themes/blog/layouts/sidebar.pug create mode 100644 themes/blog/resources/favicon.png create mode 100644 themes/blog/screenshot.jpg create mode 100644 themes/blog/theme.js create mode 100644 themes/blog/theme.scss diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..910eb0a --- /dev/null +++ b/.gitignore @@ -0,0 +1,125 @@ + +# Created by https://www.gitignore.io/api/node,macos +# Edit at https://www.gitignore.io/?templates=node,macos + +### macOS ### +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +### Node ### +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +lerna-debug.log* + +# Diagnostic reports (https://nodejs.org/api/report.html) +report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json + +# Runtime data +pids +*.pid +*.seed +*.pid.lock + +# Directory for instrumented libs generated by jscoverage/JSCover +lib-cov + +# Coverage directory used by tools like istanbul +coverage +*.lcov + +# nyc test coverage +.nyc_output + +# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) +.grunt + +# Bower dependency directory (https://bower.io/) +bower_components + +# node-waf configuration +.lock-wscript + +# Compiled binary addons (https://nodejs.org/api/addons.html) +build/Release + +# Dependency directories +node_modules/ +jspm_packages/ + +# TypeScript v1 declaration files +typings/ + +# TypeScript cache +*.tsbuildinfo + +# Optional npm cache directory +.npm + +# Optional eslint cache +.eslintcache + +# Optional REPL history +.node_repl_history + +# Output of 'npm pack' +*.tgz + +# Yarn Integrity file +.yarn-integrity + +# dotenv environment variables file +.env +.env.test + +# parcel-bundler cache (https://parceljs.org/) +.cache + +# next.js build output +.next + +# nuxt.js build output +.nuxt + +# vuepress build output +.vuepress/dist + +# Serverless directories +.serverless/ + +# FuseBox cache +.fusebox/ + +# DynamoDB Local files +.dynamodb/ + +# End of https://www.gitignore.io/api/node,macos + +/public/ diff --git a/config.yaml b/config.yaml new file mode 100644 index 0000000..96b48b0 --- /dev/null +++ b/config.yaml @@ -0,0 +1,19 @@ +title: Blog | Cogear.JS – modern static websites generator +description: +keywords: +theme: blog +baseUrl: /zhdiary/ +blog: + index: "" # Provide posts to index page + regex: "^p/" + tagUri: 'tag' + perPage: 5 + split: === + title: "中文 Diary" +pages: + ^p/: + layout: post + author: + login: polvcode + avatar: 'https://en.gravatar.com/userimage/35152960/7140205ee2a71cbe54d3f2ac43c0370d.jpg?size=24' + link: https://polvcode.dev \ No newline at end of file diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..66df861 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,3198 @@ +{ + "name": "zhdiary", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@webassemblyjs/ast": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.8.5.tgz", + "integrity": "sha512-aJMfngIZ65+t71C3y2nBBg5FFG0Okt9m0XEgWZ7Ywgn1oMAT8cNwx00Uv1cQyHtidq0Xn94R4TAywO+LCQ+ZAQ==", + "requires": { + "@webassemblyjs/helper-module-context": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/wast-parser": "1.8.5" + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.5.tgz", + "integrity": "sha512-9p+79WHru1oqBh9ewP9zW95E3XAo+90oth7S5Re3eQnECGq59ly1Ri5tsIipKGpiStHsUYmY3zMLqtk3gTcOtQ==" + }, + "@webassemblyjs/helper-api-error": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.5.tgz", + "integrity": "sha512-Za/tnzsvnqdaSPOUXHyKJ2XI7PDX64kWtURyGiJJZKVEdFOsdKUCPTNEVFZq3zJ2R0G5wc2PZ5gvdTRFgm81zA==" + }, + "@webassemblyjs/helper-buffer": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.5.tgz", + "integrity": "sha512-Ri2R8nOS0U6G49Q86goFIPNgjyl6+oE1abW1pS84BuhP1Qcr5JqMwRFT3Ah3ADDDYGEgGs1iyb1DGX+kAi/c/Q==" + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.5.tgz", + "integrity": "sha512-VQAadSubZIhNpH46IR3yWO4kZZjMxN1opDrzePLdVKAZ+DFjkGD/rf4v1jap744uPVU6yjL/smZbRIIJTOUnKQ==", + "requires": { + "@webassemblyjs/wast-printer": "1.8.5" + } + }, + "@webassemblyjs/helper-fsm": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.5.tgz", + "integrity": "sha512-kRuX/saORcg8se/ft6Q2UbRpZwP4y7YrWsLXPbbmtepKr22i8Z4O3V5QE9DbZK908dh5Xya4Un57SDIKwB9eow==" + }, + "@webassemblyjs/helper-module-context": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.5.tgz", + "integrity": "sha512-/O1B236mN7UNEU4t9X7Pj38i4VoU8CcMHyy3l2cV/kIF4U5KoHXDVqcDuOs1ltkac90IM4vZdHc52t1x8Yfs3g==", + "requires": { + "@webassemblyjs/ast": "1.8.5", + "mamacro": "^0.0.3" + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.5.tgz", + "integrity": "sha512-Cu4YMYG3Ddl72CbmpjU/wbP6SACcOPVbHN1dI4VJNJVgFwaKf1ppeFJrwydOG3NDHxVGuCfPlLZNyEdIYlQ6QQ==" + }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.5.tgz", + "integrity": "sha512-VV083zwR+VTrIWWtgIUpqfvVdK4ff38loRmrdDBgBT8ADXYsEZ5mPQ4Nde90N3UYatHdYoDIFb7oHzMncI02tA==", + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-buffer": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/wasm-gen": "1.8.5" + } + }, + "@webassemblyjs/ieee754": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz", + "integrity": "sha512-aaCvQYrvKbY/n6wKHb/ylAJr27GglahUO89CcGXMItrOBqRarUMxWLJgxm9PJNuKULwN5n1csT9bYoMeZOGF3g==", + "requires": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "@webassemblyjs/leb128": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.8.5.tgz", + "integrity": "sha512-plYUuUwleLIziknvlP8VpTgO4kqNaH57Y3JnNa6DLpu/sGcP6hbVdfdX5aHAV716pQBKrfuU26BJK29qY37J7A==", + "requires": { + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/utf8": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.8.5.tgz", + "integrity": "sha512-U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw==" + }, + "@webassemblyjs/wasm-edit": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.5.tgz", + "integrity": "sha512-A41EMy8MWw5yvqj7MQzkDjU29K7UJq1VrX2vWLzfpRHt3ISftOXqrtojn7nlPsZ9Ijhp5NwuODuycSvfAO/26Q==", + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-buffer": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/helper-wasm-section": "1.8.5", + "@webassemblyjs/wasm-gen": "1.8.5", + "@webassemblyjs/wasm-opt": "1.8.5", + "@webassemblyjs/wasm-parser": "1.8.5", + "@webassemblyjs/wast-printer": "1.8.5" + } + }, + "@webassemblyjs/wasm-gen": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz", + "integrity": "sha512-BCZBT0LURC0CXDzj5FXSc2FPTsxwp3nWcqXQdOZE4U7h7i8FqtFK5Egia6f9raQLpEKT1VL7zr4r3+QX6zArWg==", + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/ieee754": "1.8.5", + "@webassemblyjs/leb128": "1.8.5", + "@webassemblyjs/utf8": "1.8.5" + } + }, + "@webassemblyjs/wasm-opt": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz", + "integrity": "sha512-HKo2mO/Uh9A6ojzu7cjslGaHaUU14LdLbGEKqTR7PBKwT6LdPtLLh9fPY33rmr5wcOMrsWDbbdCHq4hQUdd37Q==", + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-buffer": "1.8.5", + "@webassemblyjs/wasm-gen": "1.8.5", + "@webassemblyjs/wasm-parser": "1.8.5" + } + }, + "@webassemblyjs/wasm-parser": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz", + "integrity": "sha512-pi0SYE9T6tfcMkthwcgCpL0cM9nRYr6/6fjgDtL6q/ZqKHdMWvxitRi5JcZ7RI4SNJJYnYNaWy5UUrHQy998lw==", + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-api-error": "1.8.5", + "@webassemblyjs/helper-wasm-bytecode": "1.8.5", + "@webassemblyjs/ieee754": "1.8.5", + "@webassemblyjs/leb128": "1.8.5", + "@webassemblyjs/utf8": "1.8.5" + } + }, + "@webassemblyjs/wast-parser": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.8.5.tgz", + "integrity": "sha512-daXC1FyKWHF1i11obK086QRlsMsY4+tIOKgBqI1lxAnkp9xe9YMcgOxm9kLe+ttjs5aWV2KKE1TWJCN57/Btsg==", + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/floating-point-hex-parser": "1.8.5", + "@webassemblyjs/helper-api-error": "1.8.5", + "@webassemblyjs/helper-code-frame": "1.8.5", + "@webassemblyjs/helper-fsm": "1.8.5", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.8.5.tgz", + "integrity": "sha512-w0U0pD4EhlnvRyeJzBqaVSJAo9w/ce7/WPogeXLzGkO6hzhr4GnQIZ4W4uUt5b9ooAaXPtnXlj0gzsXEOUNYMg==", + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/wast-parser": "1.8.5", + "@xtuc/long": "4.2.2" + } + }, + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" + }, + "@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" + }, + "acorn": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.2.1.tgz", + "integrity": "sha512-JD0xT5FCRDNyjDda3Lrg/IxFscp9q4tiYtxE1/nOzlKCk7hIRuYjhq1kCNkbPjMRMZuFq20HNQn1I9k8Oj0E+Q==" + }, + "ajv": { + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", + "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ajv-errors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==" + }, + "ajv-keywords": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.1.tgz", + "integrity": "sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ==" + }, + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" + }, + "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==" + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" + }, + "asn1.js": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", + "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "requires": { + "object-assign": "^4.1.1", + "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "requires": { + "inherits": "2.0.1" + } + } + } + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" + }, + "async-each": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==" + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "base64-js": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", + "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==" + }, + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==" + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==" + }, + "bluebird": { + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.5.tgz", + "integrity": "sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w==" + }, + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "requires": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "requires": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "browserify-rsa": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "requires": { + "bn.js": "^4.1.0", + "randombytes": "^2.0.1" + } + }, + "browserify-sign": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", + "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "requires": { + "bn.js": "^4.1.1", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.2", + "elliptic": "^6.0.0", + "inherits": "^2.0.1", + "parse-asn1": "^5.0.0" + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "requires": { + "pako": "~1.0.5" + } + }, + "buffer": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", + "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "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==" + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" + }, + "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=" + }, + "cacache": { + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.2.tgz", + "integrity": "sha512-ifKgxH2CKhJEg6tNdAwziu6Q33EvuG26tYcda6PT3WKisZcYDXsnEdnRv67Po3yCzFfaSoMjGZzJyD2c3DT1dg==", + "requires": { + "bluebird": "^3.5.5", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", + "glob": "^7.1.4", + "graceful-fs": "^4.1.15", + "infer-owner": "^1.0.3", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.3", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" + } + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + } + }, + "chokidar": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.6.tgz", + "integrity": "sha512-V2jUo67OKkc6ySiRpJrjlpJKl9kDuG+Xb8VgsGzb+aEouhgS1D0weyPU4lEzdAcsCAvrih2J2BqyXqHWvVLw5g==", + "requires": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + } + }, + "chownr": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.2.tgz", + "integrity": "sha512-GkfeAQh+QNy3wquu9oIZr6SS5x7wGdSgNQvD10X3r+AZr1Oys22HW8kAmDMvNg2+Dm0TeGaEuO8gFwdBXxwO8A==" + }, + "chrome-trace-event": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", + "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", + "requires": { + "tslib": "^1.9.0" + } + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "commander": { + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", + "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==" + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "console-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", + "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", + "requires": { + "date-now": "^0.1.4" + } + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" + }, + "copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "requires": { + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" + } + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" + }, + "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=" + }, + "create-ecdh": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", + "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", + "requires": { + "bn.js": "^4.1.0", + "elliptic": "^6.0.0" + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "requires": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + } + }, + "cyclist": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz", + "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=" + }, + "date-now": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", + "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "des.js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", + "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "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==" + }, + "duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "requires": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, + "elliptic": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.0.tgz", + "integrity": "sha512-eFOJTMyCYb7xtE/caJ6JJu+bhi67WCYNbkGSknu20pmM8Ke/bqOfdnZWxyoGN26JgfxTbXrsCkEw4KheCT/KGg==", + "requires": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" + } + }, + "emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=" + }, + "end-of-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "requires": { + "once": "^1.4.0" + } + }, + "enhanced-resolve": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz", + "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==", + "requires": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.4.0", + "tapable": "^1.0.0" + } + }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" + }, + "errno": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", + "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "requires": { + "prr": "~1.0.1" + } + }, + "eslint-scope": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "requires": { + "estraverse": "^4.1.0" + } + }, + "estraverse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=" + }, + "events": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.0.0.tgz", + "integrity": "sha512-Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA==" + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=" + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" + }, + "figgy-pudding": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz", + "integrity": "sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w==" + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "flush-write-stream": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "requires": { + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" + } + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "requires": { + "map-cache": "^0.2.2" + } + }, + "from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + } + }, + "fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "requires": { + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "fsevents": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz", + "integrity": "sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==", + "optional": true, + "requires": { + "nan": "^2.12.1", + "node-pre-gyp": "^0.12.0" + }, + "dependencies": { + "abbrev": { + "version": "1.1.1", + "bundled": true, + "optional": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "optional": true + }, + "aproba": { + "version": "1.2.0", + "bundled": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.5", + "bundled": true, + "optional": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true, + "optional": true + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "optional": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "chownr": { + "version": "1.1.1", + "bundled": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "optional": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "optional": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true, + "optional": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true, + "optional": true + }, + "debug": { + "version": "4.1.1", + "bundled": true, + "optional": true, + "requires": { + "ms": "^2.1.1" + } + }, + "deep-extend": { + "version": "0.6.0", + "bundled": true, + "optional": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.3", + "bundled": true, + "optional": true + }, + "fs-minipass": { + "version": "1.2.5", + "bundled": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "optional": true + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "optional": true, + "requires": { + "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" + } + }, + "glob": { + "version": "7.1.3", + "bundled": true, + "optional": true, + "requires": { + "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" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "optional": true + }, + "iconv-lite": { + "version": "0.4.24", + "bundled": true, + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore-walk": { + "version": "3.0.1", + "bundled": true, + "optional": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "optional": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "optional": true + }, + "ini": { + "version": "1.3.5", + "bundled": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "optional": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "optional": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "optional": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "optional": true + }, + "minipass": { + "version": "2.3.5", + "bundled": true, + "optional": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.2.1", + "bundled": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "optional": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.1.1", + "bundled": true, + "optional": true + }, + "needle": { + "version": "2.3.0", + "bundled": true, + "optional": true, + "requires": { + "debug": "^4.1.0", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.12.0", + "bundled": true, + "optional": true, + "requires": { + "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" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "optional": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.0.6", + "bundled": true, + "optional": true + }, + "npm-packlist": { + "version": "1.4.1", + "bundled": true, + "optional": true, + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } + }, + "npmlog": { + "version": "4.1.2", + "bundled": true, + "optional": true, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "optional": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "optional": true, + "requires": { + "wrappy": "1" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "optional": true + }, + "osenv": { + "version": "0.1.5", + "bundled": true, + "optional": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "optional": true + }, + "process-nextick-args": { + "version": "2.0.0", + "bundled": true, + "optional": true + }, + "rc": { + "version": "1.2.8", + "bundled": true, + "optional": true, + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.3.6", + "bundled": true, + "optional": true, + "requires": { + "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" + } + }, + "rimraf": { + "version": "2.6.3", + "bundled": true, + "optional": true, + "requires": { + "glob": "^7.1.3" + } + }, + "safe-buffer": { + "version": "5.1.2", + "bundled": true, + "optional": true + }, + "safer-buffer": { + "version": "2.1.2", + "bundled": true, + "optional": true + }, + "sax": { + "version": "1.2.4", + "bundled": true, + "optional": true + }, + "semver": { + "version": "5.7.0", + "bundled": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "optional": true + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "optional": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "bundled": true, + "optional": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "optional": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "optional": true + }, + "tar": { + "version": "4.4.8", + "bundled": true, + "optional": true, + "requires": { + "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" + } + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true, + "optional": true + }, + "wide-align": { + "version": "1.1.3", + "bundled": true, + "optional": true, + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "optional": true + }, + "yallist": { + "version": "3.0.3", + "bundled": true, + "optional": true + } + } + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" + }, + "glob": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", + "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", + "requires": { + "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" + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "graceful-fs": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.1.tgz", + "integrity": "sha512-b9usnbDGnD928gJB3LrCmxoibr3VE4U2SMo5PBuBnokWyDADTqDPXg4YpwKF1trpH+UbGp7QLicO3+aWEy0+mw==" + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "hash-base": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=" + }, + "ieee754": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", + "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==" + }, + "iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=" + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" + }, + "infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==" + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "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=", + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "requires": { + "isobject": "^3.0.1" + } + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" + }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "requires": { + "minimist": "^1.2.0" + } + }, + "jstransformer-markdown-it": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/jstransformer-markdown-it/-/jstransformer-markdown-it-2.1.0.tgz", + "integrity": "sha1-aewwzkUYvtWZezjwJ2SOjChekvc=", + "requires": { + "markdown-it": "^8.0.0" + } + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + }, + "linkify-it": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", + "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", + "requires": { + "uc.micro": "^1.0.1" + } + }, + "loader-runner": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", + "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==" + }, + "loader-utils": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", + "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^2.0.0", + "json5": "^1.0.1" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.15", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", + "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==" + }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "requires": { + "yallist": "^3.0.2" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "mamacro": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/mamacro/-/mamacro-0.0.3.tgz", + "integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==" + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "requires": { + "object-visit": "^1.0.0" + } + }, + "markdown-it": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz", + "integrity": "sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==", + "requires": { + "argparse": "^1.0.7", + "entities": "~1.1.1", + "linkify-it": "^2.0.0", + "mdurl": "^1.0.1", + "uc.micro": "^1.0.5" + } + }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=" + }, + "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=", + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "requires": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + } + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + }, + "mississippi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "requires": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^3.0.0", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + } + }, + "mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + } + } + }, + "move-concurrently": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", + "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "requires": { + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "nan": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", + "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", + "optional": true + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "neo-async": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", + "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==" + }, + "node-libs-browser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", + "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", + "requires": { + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^3.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "0.0.1", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", + "tty-browserify": "0.0.0", + "url": "^0.11.0", + "util": "^0.11.0", + "vm-browserify": "^1.0.1" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" + } + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "requires": { + "isobject": "^3.0.0" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "requires": { + "isobject": "^3.0.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=" + }, + "p-iteration": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/p-iteration/-/p-iteration-1.1.8.tgz", + "integrity": "sha512-IMFBSDIYcPNnW7uWYGrBqmvTiq7W0uB0fJn6shQZs7dlF3OvrHOre+JT9ikSZ7gZS3vWqclVgoQSvToJrns7uQ==" + }, + "p-limit": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" + }, + "pako": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz", + "integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==" + }, + "parallel-transform": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.1.0.tgz", + "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", + "requires": { + "cyclist": "~0.2.2", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" + } + }, + "parse-asn1": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.4.tgz", + "integrity": "sha512-Qs5duJcuvNExRfFZ99HDD3z4mAi3r9Wl/FOjEOijlxwCZs7E7mW2vjTpgQ4J8LpTF8x5v+1Vn5UQFejmWT11aw==", + "requires": { + "asn1.js": "^4.0.0", + "browserify-aes": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" + }, + "path-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", + "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==" + }, + "path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=" + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" + }, + "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=" + }, + "pbkdf2": { + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", + "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", + "requires": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "requires": { + "find-up": "^3.0.0" + } + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" + }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=" + }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=" + }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "requires": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "pumpify": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "requires": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + }, + "dependencies": { + "pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + } + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=" + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "requires": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "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==", + "requires": { + "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" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "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=" + }, + "repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==" + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" + }, + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "requires": { + "glob": "^7.1.3" + } + }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "run-queue": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", + "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "requires": { + "aproba": "^1.1.1" + } + }, + "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==" + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "requires": { + "ret": "~0.1.10" + } + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==" + }, + "serialize-javascript": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.7.0.tgz", + "integrity": "sha512-ke8UG8ulpFOxO8f8gRYabHQe/ZntKlcig2Mp+8+URDP1D8vJZ0KUt7LYo07q25Z/+JVSgpr/cui9PIp5H6/+nA==" + }, + "set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "source-list-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==" + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + }, + "source-map-resolve": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", + "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "requires": { + "atob": "^2.1.1", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, + "ssri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "requires": { + "figgy-pudding": "^3.5.1" + } + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "stream-browserify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", + "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", + "requires": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + } + }, + "stream-each": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", + "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", + "requires": { + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" + } + }, + "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==", + "requires": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + } + }, + "stream-shift": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", + "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=" + }, + "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==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==" + }, + "terser": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.1.4.tgz", + "integrity": "sha512-+ZwXJvdSwbd60jG0Illav0F06GDJF0R4ydZ21Q3wGAFKoBGyJGo34F63vzJHgvYxc1ukOtIjvwEvl9MkjzM6Pg==", + "requires": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "terser-webpack-plugin": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.1.tgz", + "integrity": "sha512-ZXmmfiwtCLfz8WKZyYUuuHf3dMYEjg8NrjHMb0JqHVHVOSkzp3cW2/XG1fP3tRhqEqSzMwzzRQGtAPbs4Cncxg==", + "requires": { + "cacache": "^12.0.2", + "find-cache-dir": "^2.1.0", + "is-wsl": "^1.1.0", + "schema-utils": "^1.0.0", + "serialize-javascript": "^1.7.0", + "source-map": "^0.6.1", + "terser": "^4.1.2", + "webpack-sources": "^1.4.0", + "worker-farm": "^1.7.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "requires": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "timers-browserify": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", + "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", + "requires": { + "setimmediate": "^1.0.4" + } + }, + "to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=" + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "tslib": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz", + "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==" + }, + "tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=" + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + }, + "uc.micro": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", + "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" + }, + "union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + } + }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "requires": { + "unique-slug": "^2.0.0" + } + }, + "unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "requires": { + "imurmurhash": "^0.1.4" + } + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" + } + } + }, + "upath": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.2.tgz", + "integrity": "sha512-kXpym8nmDmlCBr7nKdIx8P2jNBa+pBpIUFRnKJ4dr8htyYGJFokkr2ZvERRtUN+9SY+JqXouNgUPtv6JQva/2Q==" + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "requires": { + "punycode": "^2.1.0" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" + }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=" + } + } + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" + }, + "util": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", + "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", + "requires": { + "inherits": "2.0.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + } + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "vm-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.0.tgz", + "integrity": "sha512-iq+S7vZJE60yejDYM0ek6zg308+UZsdtPExWP9VZoCFCz1zkJoXFnAX7aZfd/ZwrkidzdUZL0C/ryW+JwAiIGw==" + }, + "watchpack": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz", + "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", + "requires": { + "chokidar": "^2.0.2", + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0" + } + }, + "webpack": { + "version": "4.39.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.39.1.tgz", + "integrity": "sha512-/LAb2TJ2z+eVwisldp3dqTEoNhzp/TLCZlmZm3GGGAlnfIWDgOEE758j/9atklNLfRyhKbZTCOIoPqLJXeBLbQ==", + "requires": { + "@webassemblyjs/ast": "1.8.5", + "@webassemblyjs/helper-module-context": "1.8.5", + "@webassemblyjs/wasm-edit": "1.8.5", + "@webassemblyjs/wasm-parser": "1.8.5", + "acorn": "^6.2.1", + "ajv": "^6.10.2", + "ajv-keywords": "^3.4.1", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^4.1.0", + "eslint-scope": "^4.0.3", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^2.4.0", + "loader-utils": "^1.2.3", + "memory-fs": "^0.4.1", + "micromatch": "^3.1.10", + "mkdirp": "^0.5.1", + "neo-async": "^2.6.1", + "node-libs-browser": "^2.2.1", + "schema-utils": "^1.0.0", + "tapable": "^1.1.3", + "terser-webpack-plugin": "^1.4.1", + "watchpack": "^1.6.0", + "webpack-sources": "^1.4.1" + } + }, + "webpack-merge": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.1.tgz", + "integrity": "sha512-4p8WQyS98bUJcCvFMbdGZyZmsKuWjWVnVHnAS3FFg0HDaRVrPbkivx2RYCre8UiemD67RsiFFLfn4JhLAin8Vw==", + "requires": { + "lodash": "^4.17.5" + } + }, + "webpack-sources": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", + "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", + "requires": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } + } + }, + "worker-farm": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", + "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", + "requires": { + "errno": "~0.1.7" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==" + }, + "yallist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==" + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..3caa0de --- /dev/null +++ b/package.json @@ -0,0 +1,22 @@ +{ + "name": "zhdiary", + "version": "1.0.0", + "description": "My journey through Chinese language", + "main": "index.js", + "dependencies": { + "jstransformer-markdown-it": "^2.1.0", + "p-iteration": "^1.1.8", + "webpack": "^4.39.1", + "webpack-merge": "^4.2.1" + }, + "devDependencies": {}, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "Pacharapol Withayasakpunt", + "license": "MIT", + "repository": { + "type": "git", + "url": "https://github.com/patarapolw/zhdiary" + } +} diff --git a/plugins/base-url/package.json b/plugins/base-url/package.json new file mode 100644 index 0000000..e7b8f6a --- /dev/null +++ b/plugins/base-url/package.json @@ -0,0 +1,8 @@ +{ + "name": "cogear-plugin-base-url", + "description": "Cogear.JS base URL plugin.", + "version": "1.0.0", + "author": "Pacharapol Withayasakpunt", + "homepage": "https://github.com/patarapolw/cogear-plugin-base-url", + "main": "./plugin.js" +} \ No newline at end of file diff --git a/plugins/base-url/plugin.js b/plugins/base-url/plugin.js new file mode 100644 index 0000000..a80ebc7 --- /dev/null +++ b/plugins/base-url/plugin.js @@ -0,0 +1,13 @@ +const path = require("path"); +const fs = require("fs"); + +module.exports = { + apply() { + cogear.on("build.page.writeAfter", ([page, html]) => { + let BASE_URL = cogear.config.baseUrl || "/"; + html = html.replace(/(", + "homepage": "https://github.com/patarapolw/cogear-plugin-blog", + "main": "./plugin.js" +} \ No newline at end of file diff --git a/plugins/blog/plugin.js b/plugins/blog/plugin.js new file mode 100644 index 0000000..3fcd2c2 --- /dev/null +++ b/plugins/blog/plugin.js @@ -0,0 +1,200 @@ +const path = require('path'); +const {forEach} = require('p-iteration'); +const merge = require('webpack-merge'); +module.exports = { + // Init method + async init(){ + /** + * Blog section in config.yaml must look like this (optional): + * blog: + * index: "news" # `blog` by default, virtual page. If page exists, data will be proceed to that page + */ + cogear.blog = this; + let defaults = { + index: 'blog', // Means `auto`, do it for me + regex: null, + split: '===', + tagUri: 'tag', + perPage: 5, + }; + cogear.config.blog = cogear.config.blog ? merge(defaults,cogear.config.blog) : defaults; + this.config = cogear.config.blog; + // this.perPage = cogear.config.blog.perPage || 3 + this.regex = new RegExp(cogear.config.blog.regex || '^blog\/(?!tag).+','i'); + // split: new RegExp(cogear.config.blog.regex.cut || '\[:=_-]{3,}\<\/p\>','img') + this.pages = {}; + // If no existing index page is configured, create one with 'blog' uri + if(Object.keys(cogear.pages).includes(cogear.config.blog.index)){ + this.pages[''] = cogear.pages[cogear.config.blog.index]; + } else { + await this.setIndexPage(); + } + }, + apply(){ + // 1. Init on preload (when config has already been loaded) + cogear.on('preload.done',async ()=>{ + await this.init(); + await this.build(); + }); + // 2. Handle pages preloading + // cogear.on('build.page.layout',async ([page])=>{ + // // If it's a blog page - do not render it # Will cause failure without `posts` variable (will set later) + // if(this.regex.test(page.uri)){ + // page.content = page.content.replace(this.regex.split,this.cut) // Hide splitter ==== + // } + // }) + // 3. If page changed - watcher + cogear.on('watcher.change.page',async(file)=>{ + if(this.regex.test(file)){ + await this.rebuild(); + } + }); + cogear.on('watcher.add.page',async(file)=>{ + if(this.regex.test(file)){ + await this.rebuild(); + } + }); + cogear.on('watcher.unlink.page',async([file,page])=>{ + if(this.regex.test(page.uri)){ + if(this.pages[page.uri]){ + delete this.pages[page.uri]; + } + await this.rebuild(); + } + }); + // cogear.on('preload.done',async ()=>{ + // await this.build() + // }) + }, + async setIndexPage(){ + let result = await cogear.emit('preload.page',[null,{ + // title: 'Blog', + content: '', + __content: '', + file: 'blog.md', + uri: 'blog', + }]); + this.pages[''] = result.shift(); + }, + async rebuild(){ + await this.build(); + Object.entries(this.pages).forEach(async ([uri,page])=>{ + await cogear.emit('build.page',page); + }); + }, + // Blog index build + async build(){ + let blog = this.pages['']; + // Object.keys(this.pages).forEach(key=>{ + // if(key != ''){ + // delete this.pages[key]; + // } + // }); + return new Promise(async(resolve)=>{ + this.tags = []; + // Get posts, map and sort them + this.posts = Object.entries(cogear.pages) + .filter(([file,p])=>this.regex.test(p.uri)) + .map(([file,post])=>{ + if(post.tags){ + this.tags = this.tags.concat(post.tags).filter((v, i, a) => a.indexOf(v) === i); + } + return post; + }) + // .filter(post=>{ + // let isTagPage = false; + // this.tags.forEach(tag=>{ + // isTagPage = post.uri == path.join(blog.uri,tag); + // }); + // return !isTagPage; + // }) + .filter(post => { + return !Object.keys(this.pages).includes(post.uri); + }) + .map(post=>{ + if(typeof post.content == 'string'){ + const m = new RegExp(`^(.+)${this.config.split}(.*)$`, "s").exec(post.content); + if(m){ + post.teaser = m[1]; + post.content = m[1] + m[2]; + } else { + post.teaser = post.content; + } + } + return post; + }) + .sort((a,b)=>{ + let aDate = new Date(a.date).getTime(); + let bDate = new Date(b.date).getTime(); + // Sort in DESC order + return aDate > bDate ? -1 : 1; + }); + if(!this.posts.length) resolve(); + await this.buildPages(blog,this.posts); + if(this.tags){ + await forEach(this.tags,(async(tag)=>{ + let tagPage = {...blog}; + tagPage.tag = tag; + // tagPage.pagination = null + tagPage.uri = path.join(this.config.tagUri,tag); + // tagPage.path = path.join('tags',tag,'index.html') + await this.buildPages( + tagPage, + this.posts.filter(post=>Array.isArray(post.tags) && post.tags.includes(tag)) + ); + tagPage = (await cogear.emit('preload.page',[null,tagPage])).shift(); + cogear.pages[tagPage.uri] = tagPage; + this.pages[tagPage.uri] = tagPage; + })); + } + resolve(); + }); + }, + async buildPages(page,posts){ + let paginator = { + count: posts.length, + current: 1, + perPage: this.config.perPage, + total: Math.ceil(posts.length/this.config.perPage), + next: null, + prev: null, + baseUri: page.uri, + }; + + // If there is more than 1 page + if(paginator.total > 1){ + let pageNum = 2; + + while(pageNum <= paginator.total){ + let newPage = {...page}; + let start = this.config.perPage*(pageNum-1); + let end = start + this.config.perPage; + + newPage.posts = posts.slice(start,end); + newPage.path = path.join(page.uri,pageNum + '','index.html'); + newPage.uri = path.join(page.uri,pageNum + '/'); + newPage.paginator = {...paginator}; + newPage.paginator.current = pageNum; + if(pageNum < paginator.total){ + newPage.paginator.next = path.join(page.uri,String(pageNum+1)); + } + if(pageNum > 2){ + newPage.paginator.prev = path.join(page.uri,String(pageNum-1)); + } else { + newPage.paginator.prev = page.uri; + } + newPage.content = await cogear.parser.render(newPage.__content, newPage); + + cogear.pages[newPage.uri] = newPage; + this.pages[newPage.uri] = newPage; + pageNum = pageNum+1; + } + paginator.next = path.join(page.uri,'2/'); + page.posts = posts.slice(0,this.config.perPage); + page.paginator = paginator; + } else { + page.posts = posts; + page.paginator = {...paginator}; + } + } +}; \ No newline at end of file diff --git a/src/app.js b/src/app.js new file mode 100644 index 0000000..e3b3bae --- /dev/null +++ b/src/app.js @@ -0,0 +1,15 @@ +/** +* RECOMMENDED CONFIGURATION VARIABLES: EDIT AND UNCOMMENT THE SECTION BELOW TO INSERT DYNAMIC VALUES FROM YOUR PLATFORM OR CMS. +* LEARN WHY DEFINING THESE VARIABLES IS IMPORTANT: https://disqus.com/admin/universalcode/#configuration-variables*/ +/* +var disqus_config = function () { +this.page.url = PAGE_URL; // Replace PAGE_URL with your page's canonical URL variable +this.page.identifier = PAGE_IDENTIFIER; // Replace PAGE_IDENTIFIER with your page's unique identifier variable +}; +*/ +(function() { // DON'T EDIT BELOW THIS LINE +var d = document, s = d.createElement('script'); +s.src = 'https://zhdiary.disqus.com/embed.js'; +s.setAttribute('data-timestamp', +new Date()); +(d.head || d.body).appendChild(s); +})(); \ No newline at end of file diff --git a/src/pages/index.md b/src/pages/index.md new file mode 100644 index 0000000..be011cf --- /dev/null +++ b/src/pages/index.md @@ -0,0 +1,3 @@ +--- +title: 'Cogear.JS – modern st' +--- \ No newline at end of file diff --git a/src/pages/p/2019/08/welcome.md b/src/pages/p/2019/08/welcome.md new file mode 100644 index 0000000..3e67db2 --- /dev/null +++ b/src/pages/p/2019/08/welcome.md @@ -0,0 +1,25 @@ +--- +title: Welcome to Cogear.JS blog! +date: "2019-08-08" +tags: + - news +--- + +We are happy to introduce **Cogear.JS** – modern static websites generator. +It's written in [Node.JS](https://nodejs.org) and powered by the latest [Webpack](https://wepback.js.org). + +Read [the docs](/docs) to understand how the system works. + +[Cogear.JS](https://cogearjs.org/images/cogearjs.jpg)] + +As you can see it's even suitable for blogging! Every blog post can have comments via modern services like [Disqus](https://disqus.com). Posts can also be tagged. + +All blog pages are built automatically and rebuilt when proper content pages are changed, added or deleted. + +=== + +> Posts can even have teaser which is splitted from main content by 3 and more `=`,`:`,`_`,`--` symbol (new line only). + +To create a blog on your site, please install [`cogear-plugin-blog`](https://github.com/codemotion/cogear-plugin-blog) npm package and follow the instructions in `README.md` file. + +We really appreciate your attention, so it will be great if you write a comment. \ No newline at end of file diff --git a/themes/blog/README.md b/themes/blog/README.md new file mode 100644 index 0000000..03fcdac --- /dev/null +++ b/themes/blog/README.md @@ -0,0 +1,54 @@ +# Cogear.JS theme **blog** + + +![screenshot](https://github.com/codemotion/cogear-theme-blog/raw/master/screenshot.jpg) + +Theme with blog posts on the home page. + +Simple responsive design. Posts tags support with navigation and pagination. + +# Installation + +You need to install [`cogear-plugin-blog`](https://github.com/codemotion/cogear-plugin-blog) to use this theme. + +Go to the site folder and install theme with command: +```bash +yarn add cogear-theme-blog +# or +npm install cogear-theme-blog +``` + +After that you need to edit your site `config.yaml` to set up installed theme. + +```yaml +theme: blog +``` + +# Configuration + +Use `cogear-plugin-blog` options in `./config.yaml`: +``` yaml +title: Blog | Cogear.JS – modern static websites generator +description: +keywords: +theme: blog +blog: + index: "" # Provide posts to index page + regex: "^p/" + tagUri: 'tag' + perPage: 5 +pages: + ^p/: + layout: post + author: + login: User + avatar: 'https://www.gravatar.com/avatar/400caf343d3bab57ab93f63e21a12be7?s=24' + link: https://cogearjs.org +``` +# Usage + +You may also want to install in with [`cogear-preset-blog`](https://github.com/codemotion/cogear-preset-blog). + +# Docs + +More info: [https://cogearjs.org/docs/themes](https://cogearjs.org/docs/themes). \ No newline at end of file diff --git a/themes/blog/layouts/includes/empty.pug b/themes/blog/layouts/includes/empty.pug new file mode 100644 index 0000000..3821a7a --- /dev/null +++ b/themes/blog/layouts/includes/empty.pug @@ -0,0 +1,13 @@ +article.post + header: h1 Write a post! + .post-content + p Go to ./src/pages/p folder and create your first post, creating first-post.md file filled with the following content: + pre. + --- + title: First post + tags: + - news + --- + # This is my first post! + p Any questions? More info: https://github.com/codemotion/cogear-template-blog + a(href="https://cogearjs.org"): img(src="https://cogearjs.org/images/cogearjs.jpg") \ No newline at end of file diff --git a/themes/blog/layouts/includes/header.pug b/themes/blog/layouts/includes/header.pug new file mode 100644 index 0000000..ca25db7 --- /dev/null +++ b/themes/blog/layouts/includes/header.pug @@ -0,0 +1,13 @@ +head + title=title + link(rel="shortcut icon" href=`${cogear.config.baseUrl || "/"}favicon.ico` type="image/png") +body + .navbar + .container + .brand + a(href="/") Blog + if cogear.blog.tags + ul + each t in cogear.blog.tags + - tName = t[0].toUpperCase() + t.slice(1) + li: a(href=`/tags/${t}`)= tName \ No newline at end of file diff --git a/themes/blog/layouts/includes/mixins.pug b/themes/blog/layouts/includes/mixins.pug new file mode 100644 index 0000000..cf10a34 --- /dev/null +++ b/themes/blog/layouts/includes/mixins.pug @@ -0,0 +1,21 @@ +mixin post(post) + .card.p-2.post(class=`${post.teaser ? 'teaser' : 'full'}`) + .post-meta.mb-3 + .float-right + +date(post.date) + .post-meta--author + a(href=`${post.author.link}`): img.mr-3(src=`${post.author.avatar}`) + a(href=`${post.author.link}`)= post.author.login + header + if post.teaser + h2: a(href=`/${post.uri}`)= post.title + else + h1= post.title + .post-content!= post.teaser ? post.teaser : post.content + if !post.teaser + a(href="javascript: history.back()") ← Back +mixin date(date) + - let months = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'] + - let d = new Date(date) + - month = months[d.getMonth()] + time= `${month} ${d.getDate()}` diff --git a/themes/blog/layouts/index.pug b/themes/blog/layouts/index.pug new file mode 100644 index 0000000..51ae37d --- /dev/null +++ b/themes/blog/layouts/index.pug @@ -0,0 +1,21 @@ +extends layout.pug +block head + if tag + - tagName = tag[0].toUpperCase() + tag.slice(1) + - title= `${tagName} | ${title}` + if paginator && paginator.current > 1 + - title = `Page ${paginator.current} | ${title}` + title= title +block content + if tag + h1.tag= tagName + if content + article.page!= content + else if posts + - let now = new Date() + each post in posts + if new Date(post.date) < now + +post(post) + include paginator + else + include includes/empty \ No newline at end of file diff --git a/themes/blog/layouts/layout.pug b/themes/blog/layouts/layout.pug new file mode 100644 index 0000000..bcbc0d3 --- /dev/null +++ b/themes/blog/layouts/layout.pug @@ -0,0 +1,20 @@ +include includes/mixins +head + block head + title= title + meta(content="width=device-width, height=device-height, initial-scale=1, minimum-scale=1.0, maximum-scale=1" name="viewport") + link(rel="shortcut icon" href=`${cogear.config.baseUrl || "/"}favicon.png` type="image/png") + link(rel='stylesheet' href='https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css' integrity='sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T' crossorigin='anonymous') +body + nav.navbar.navbar-dark.bg-success + a.ml-3.navbar-brand(href=cogear.config.baseUrl || "/")= cogear.config.blog.title || "BLOG" + .container.mt-3 + .row + .col-lg-8.col-md-12 + block content + .col-lg-4.col-md-12 + include sidebar + + script(src='https://code.jquery.com/jquery-3.3.1.slim.min.js' integrity='sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo' crossorigin='anonymous') + script(src='https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js' integrity='sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1' crossorigin='anonymous') + script(src='https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js' integrity='sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM' crossorigin='anonymous') \ No newline at end of file diff --git a/themes/blog/layouts/paginator.pug b/themes/blog/layouts/paginator.pug new file mode 100644 index 0000000..ae47940 --- /dev/null +++ b/themes/blog/layouts/paginator.pug @@ -0,0 +1,23 @@ +if paginator + nav.mt-3 + ul.pagination + if paginator.prev !== null + li.page-item + a.page-link(href=`${cogear.config.baseUrl || "/"}${paginator.prev}`) ← Prev + - let page = 1 + while page <= paginator.total + - let range = 2 + if page == 1 || page == paginator.total || (page >= paginator.current - range && page <= paginator.current + range) + if page == paginator.current + li.page-item.active + a.page-link(href=`${paginator.baseUri}/${page}`)= page + else + li.page-item + a.page-link(href=`${paginator.baseUri}/${page}`)= page + else if paginator.current < paginator.total - range && page == paginator.total - 1 || paginator.current > 1+range && page == range + li.page-item + a.page-link.ellipsis … + - page=page+1 + if paginator.next !== null + li.page-item + a.page-link(href=`/${paginator.next}`) Next → \ No newline at end of file diff --git a/themes/blog/layouts/post.pug b/themes/blog/layouts/post.pug new file mode 100644 index 0000000..26c6ad8 --- /dev/null +++ b/themes/blog/layouts/post.pug @@ -0,0 +1,12 @@ +extends layout.pug +block content + +post({ + title:title, + teaser: false, + tags:tags, + content:content, + date:date, + author: author + }) + + #disqus_thread \ No newline at end of file diff --git a/themes/blog/layouts/sidebar.pug b/themes/blog/layouts/sidebar.pug new file mode 100644 index 0000000..73121cb --- /dev/null +++ b/themes/blog/layouts/sidebar.pug @@ -0,0 +1,7 @@ +aside.card.p-3 + block sidebar + :markdown-it + #### Record my journey to Chinese by [@polvcode](https://polvcode.dev) + + a.twitter-timeline(href="https://twitter.com/ChinesePol" data-height="600") Tweets by ChinesePol + script(async src="https://platform.twitter.com/widgets.js" charset="utf-8") \ No newline at end of file diff --git a/themes/blog/resources/favicon.png b/themes/blog/resources/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..c80c5c2c9f456a29a5a6b4fa39639a961345e53d GIT binary patch literal 1797 zcmV+g2m1JlP)F`cdjxbm8Nzx2{uOWFY&U|aw zEpwz;pX~1Hwab{~OGwcS>M}(Ui}!D-T0i}Jcdge9YM4Q248qsiox1h8e{4K|s%4U@ zDL7KB^!S2A!clI9*=EFSH6o=nAKLlh)2II3P%;0R`yTUTIGahJkf5!(D`)MpSNEMi z)iQ~GiXyPNEEtR`H)3;|FTu4p{~1xKeGXno3_NOlOOqmJ98i|MW7x_5g|e9X**Ff4X<`2aSTh1)S~R0gFp^3jWgqvm&B zsaZsv5{t%^>I0uVOoF*jRbY2pxn0}0?Bd{#V$fkrn@`9AJ_ef>bF0^-xk1RHBwlb!*>_Yp=4|c*GMT@w`L=!_P63Pr;#Ys8+LtG zbN(K6=ETYc^(UGpqjTTF$z%-oFc`nj&+_j-N8q#-mpYU*TQ+WE2C;T4Z|->y;RsSt zbO$Sc@*cmCXH|?!hj*RT=xI2 zhJ&xXi@7rklcsS!P4%s#we}WY4mxRBZcJ7qgNa6?oPM_%6${s>no6WEij!T(4JQgX{o7DJcf$#7jjr{z*BQc4D6b(qO58p?oZG=`LtTjj}gT~x9Q z(@vrj4oJ?Oy+ATE9=RJK1lNQ^5fWvONN4^tGcj3>+(>po`U$15H1{YvLMT+fb(~~I zjvr3t(-oL327-Y;^u~Uzki~0eQ!=@L$6x#w4v&@V8BvyfRLdWoS?f%-UG%jDa_Lv~ z_mj+=HwCB5$zUc-FJ|<_d`=vz$KM{nY%@`KXEqsmsSL<2OlQe&=CWzUYh1n5Ng|8g z)Lt}h`1`8&S+6718#dJ)Z@ia&YRpJo<7Z5qT23+slSWQqI(Ll8X4t5q*xgnVS?ngt zrWR3uqLHrF0D6e4vD++mQ#(3mj9_)5IdQwWx)t}?_y>GDb z`M>bN?z4E*Toj=&z&*s#uxRyz^UQWrfPO+snT1YQYj^sF<$HEsZR{LHf`BiGKhQ;M z&m|OF6j!PZRa58-M(DcQjUi?yKdTUv(L$n>A&!Q{znc9}YNqQFI;z*}b)aLm8hge~ z8@ac!uC=JGxvPLU8IuHjK_Y!oG{uP1l!ik|#~5^@^|&zgrQk9Q#coU?76#3zp(ug@ z`6XFLf4F+qJogYs3kg)O*XtmG!K8)8RgBzccUhV~|L9`5uPtDWMq=CyDIpvRBZR=_ zH2Y@EpR{t$(rLdi+l)O7LL&(wL}>DZW7lt6bzoC0CLaeD0eRd6DQWEO4sH7JhVN|1 z8=V;j%p{@le=#5o^Z~s>hzMT@0naZeU9|?708~gACm)}|I1E&6u3Zt^ nT(W{|q?9UP1x$be5cK;mF!yiDH#{y>00000NkvXXu0mjfbp2kA literal 0 HcmV?d00001 diff --git a/themes/blog/screenshot.jpg b/themes/blog/screenshot.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b083bf0824427ec130867e47cf1620441aaf0ff2 GIT binary patch literal 63897 zcmeFZ1z1%}`zXE;MI}T8=}@|n?ot5(0qF*5iA^^Wil}t6feoUBG)Qe46p#+-2I)o` z>Hi`;$M2lu(R1$af1mr^=Pr2myfbgkJM+FXYxY|EsPE`Aa8*K7Togb+000E=4>%eG zo&iYbFCbkwkA!pq>EcDCOUPG|kuP6H#=3%zdKCu?7Z(Q$8yla9f&`y{j1U|92K@~( zN-7#!8axt)TMX2ISd3u z41}W^fDknB93sN8t>3Qm7Z4DU&Rx88Gyq&WZ9kCvhWpPF7xh2u$2G*8L5Qe&sJMT| z;IXt?*W=dm&GpXw1r{M@x4*Q76@F7!Q1@o>_ptg zGU>88%RHl%qQ+)3%ttg*yc{>&g*I3QNr1uA4E#yn0SLa$9sqzw@F{6`eHLU*%*kE@ z3ly$Zqu0YCo>sCIRmD63#7cSgi<`kSwUL{<#euMckProJm}`h@Huoostep5b645<# z_dWp70%cvixwasYUNmwD)`17D{uy9_-EN#Q{l55(XOE&qY~$`c_n{tvbLnM*@?GW` z4aabm8dc}=Y5Ib|Kmxq1V0gvdk}pC4A~rY3iONzd1OVqDD~ zdCJxW_6Ld?#RU8Yf%x$sk|#X?0Jjw+`;UvpwZhkmM`_eaul8klS7kJa{B1N4@!p@% zG6w-}Q6)Lh$`O^`cp?bS^k)E}n8dBjY!ppL>zlM&rvR#ct#;xUv$q!g5$ttds&{tk z0l+OjdGO2F>Jf17!w%Gb;!q^$j0y3$WMc1utm-@f0QC0l9vgkLCj5!2^f&v{03ay4 z-izTz(76@IzPs)8wR-6Yz}z@v1>S?eW&T#miiUH6|wfkFw^XN?jk#jxEPO1Lm6XCcf>>Jq=dx|_XT?x5IG zzfeIj=yujefUGv>acTVLY3E(4`oq!%b2rn?7>^&wYZ<1h6$l-)VHe~&plI1A*^-$$ zI6y-eNsiqu?0x^6K^iY60=5&go00J?)_exgocJ$Nn)DL=f#sL->6DkFc7tG2(1AxmwdLIB-I{ZHFUjX2O2Qi%oA~rF(Y3--p zcYw)y8Nd#?VFIA#wNI#&IpMalW*Z*=&k)xII&bk!4E7diy$29IEAwDvhAO?p*9|T@ z0suYpx;hH2gDP6vQXmW5q9{aPesuJ4a=|p~t3U^Sy;fJsizGVOY_Fv{xsT!N5IsGrp;R(iY$c|@HI5as>At} zTXI@#wH?;*h3GT`BURyv8W(gmGCOc2E;+wP)UR>uq2BcXhiJI`uY_G}O)uNbQiG<4 zt49*a6zz9qWd{`|w^J&hWGT;fv$=9o%quRMFM|BQ-vz`&5bZRz`x-33#gv%+<#DM9 zvT^b5ap!Uv_*;!BJ#YXgb2Z*E=HxoZXNp7C)(FFHC3nHygR68Z+6}tdIT^%LeG>Z1 zAi{90NcqMLFo4mbxPH}OTFOBjCuWhB9xk_j1SsuzRV?3mxAfOhgC)qm%k`UtewSlA zky!Y4feU{%%+zkC8xj&6!XsUV`bHK$nq@ zfXAB^ZP)}tKi1Bnu`2H|N(N&GGef z=LTfvOeetYgigr8&C5?U5c}Rq09VG->$u}9#~=Z?J-Fy@#39<8lf_5dcm-@!d9dF* z`}vgaRPb5lPbe_Fzx3w@(PAU+FWfu8^_q9JBujRNCmRn&H2JddsgxUR9b(XiNaD|?$9c!kr&9jp-}dQJrDC>0@^QCp z%(Scnm#jcq_Ap2Rr@TrlJERq8WqlHXrw5uq_9GX)h>O*jX4`YaU&9`x@6qm^AH*El zGBKZnY#0wS#^3+yvLU|x(mKJUpRt6$rtw~{?6$4Y@zUjSYS5oj6=7X@OnFB6<5AfX zWoD~9CGRz33ddD^EeOq|aX87f&%Lv8B~2d{6I^jG1c?$h$`XYFokst*9a9j|HZJpkKBa7J^ zp8eqrz4%gLb-TKJGgr{R1mJLt4LZ-S<+>LQ-0ciPSm3oGaJh<;>-xh1@Whx)-LUYs zi_Lkpp~t1~(hRo(_if{8g`?%YeyE?t0zn~eu>%~tHo<$P{PjO{RE>b?nmuk49sou# z3#(sF5OWMmD{4**5$Bv~1ND#DuBfkB0*E(o0X!CIxR-2i-82)G=uB2}v9Hq=w{eST zDXn$)UG3LlKkPoL@RU0hxFp~K4}pdt0CfhhR=DF3I!p26E?;%hZUA>GCrSZ?2&*95 z%B0=P_kL_7vGSVfjS~hIeE^aE$uG!{+zbM0@BF4B_*Yn*LEqIQ0jN;`&~)<`7%F7$ zdjKp59*AT&06ZhSI;o#JigJfI7aSi%0FhD%&^H1H$L*=y59cZK#qfRDBtHwl90Zz$ z1S&ItO8#8O1j51%;Ig36i?z!IJ;D3C>!o5v+Op8Xy1Ij7_fh?VnPVOs^#FQ&&F3RP z*ko0#Lu+{l+EbxUGNrP&Y41jtaWc?J2TY$Nei%SVH`XdcEg$k5;Q<$33>p^m#eO$9=ma_^1ki0;2$Ni4=?$$Cx;M^ zy{I~&WLLk9Gcqi&<I5@}wKO1BZTy#|cT|fme z637Mg>jB%*w>&=y2y@^TaTLJp_Yjf0RS29;7o~RfeiEjXpHCff78bvx1oh%uA>cH& ze@O#yGUCT!1Ul=NG@Lm4I2o|$|C$ESSG7XbH%GCEw9>4~AD$f)R)iV=MUAcBRd_%;+q5X?}l`YDdXhMarT9}cyGNw6)9HZAO+f%=_26~AQ@wlJ%%`= z0dD>9kmB6l8^nN}BDy&HU3jAr`VWV-?6K7OW6-6gn$X2RS_KE>4;Mn5%T(Xsuv%Z! z=ofm&ZfrD&rWtO@%o?)9?IU;UdoWSD=q(4*OvBqhYJGWXR;nw2b`ZJovAZ98E z@wdI$cLe$@-&MW?Nx(y0{NwXn@KE==W`uKy=aDX)9O<6B`d#~ff*KTtzct)oqV!u^ zya3z)P^|$3AwY-*p}PkFsDTFn{c8Zgva<4=bp`0+Lga*;sX+4ko)Beb{v1_M_DzMC7iHXgrW5EH(gn1M}1gr9#y0JAf{ z!xzQQ?rM&k=znkj4nhkn%4woEVWeY#qDAVRAy6WkS-bO47(!|t&Noh|=zd3k22v6r zU&Tfck~|YC5Wou}&Y`+Fp5PJYz>L70VO>XKmFa%QvGE=RgwxwRPU^&wU~!(^Y2~Db z*m+!tW(%Cu0OyB5#~{t~jBNl->r^1HF$-8O^k!)V1PBCtMo4cvB_xjVK*E&X!?^); z&v=|Pp-bOD)Rd@Q{El-BxJmu`JC@@q#qRX^gdDN+30NX!^PSWHXUnVC&VBk$*yV@p zQ{J)FECBn?8AH3r1zpq-+H19y&(3(*0PIQTXXnt|FP%2*`o{_(*yx=@IBU5q9&+tV zEQu0u;oYV4reB3lss7C;7%q6H;qpBak7HgTt!-B2 z(5~Z%x$X~~^8h^L5PSQ;aKSo_8gw*EGqVS{PE%H|ian^$eL@hrfMM_&-}zx*Kd{={ znq2tq0>A4_z^M`3(o& z_}l$P2q5HT{Ek42efWFDY~gnp(MaX@3IWgi-z$B+zrzz&#`Ve5I*}#AIgfLxkH5Y@sbAE% z@cIFus4Z~oq>9iB762&OG_Gy!wlml~`d`CA|LJyR&UC zktKpTYg_kyj|B`yUur>u^soYmP^ zg$S2`BcLZnnhMjqX55PFzX}k9sl`ZBCU~cGnXu#gizdkapAXb@S#gDBPp#6)6KTxjIA#e@IX@UQ$aeu4M~+|1Oedd+FpkUOBIK(+~hf?oc8kFE$w?s^}YoQFutEHzsR2zpXf$lqzRI#KmW}`^w zjIF7rA(w>g8or!rCz(YudXV-u4PEO-L%}i;d#f(g=B{~CS0-2cWEw+Qnw|a*PJ~h_ zzoRE*Z;@>;myc#ks-|SBnpHd-e4D!8j&V$;`Xj7IE4ZOvZZIlcJtQerRgzwO*oQuz ztt7u>pyNx`U^YD17G5^EKyy>yhPJ4@LdqrSi+CxGFEl6z=4EUGS8D34lvC;{Nilho z_B;*$ZweBxUR4MrlOY+!F1p1qPc@^*l>IM(oTllPaI;WEZ(>F-W$pfR1l>kIJa7p-GlBsif9V#|D?DrD3y6FlLasAMm$ci z16r^;Gs?J`?j$7GNDNy-ZlJJ-Owz*IA1b#@$R*Azo35U1;Va3+aAmlu<<5Y*Ug?~^ zCPOyI?gDW`+Hmj9OZ{qPwqv@pEPx+Yu0l0`V?TAdQM2`&dvg=xgz;Te)yl`jfn(Bb|vq zO|}=jW*{EJELb!12pHicG%deiCU#YpgK#!EFzc}4LyC+2REIIVOWXZW@gA&lm0o{a zzFL-4zPRG<4m;tn42Ky0Gm9gjTIa9FBSIV8d64~VF~A$1S7&%J^vqs_?jB63R-bB2 zb;6>otV(L~6|Y?zMVUOlZti`}X1V(NPq_FL4P|mONM)!0eu?odh%XdpaVNQ1?)W8W z{s{O&i2t{<=6FIem+nzc9^j=DG=_xB!Z8UG>i3mo@f_K-;i08_yw3}d0LP&&2!2U3 z5$)WiFw!p{?M%om4!07eM!!a|<2GZ_`I*od;YyfxmpVwyV^kgiXrAgv0Q_EYcSMO) zxm|FhyUEMgk5KHcH!`_Nn^-9Yqff|_x6-21l$P1X6mVIDoihT`eBOq1eJ+SLgGcnM z7j=5c>NZ@M&*e!|DUelUHx{=~TD#9E_mR<#GNk2;`1z?%?G`-!O7^Rrs`f*I6Ozj% z1trrm8K%tzMobg2H=P;bD(`D&MUgcU2tZOTsqjt%cyyXcDj4;DSAzriqur=Z1+{Ql@@Xa`{?ABHsKa0~h7eOx zxA4;FI%Fz_%c{-)te1b`fdo~y;M+A&+g05$7Bb*X+q(!`zApp0#AfO@}QMtrpWTVg!YHDx~|8M zcLM|CWLMYc1q58h>e^Di?rf5f2qa9*oT22HPf+*%0(HjqpD4c*fyZ2;09@G1qa6c|A3nKU)M!^YN6w)g=Yc-e{4L6THPf3j*CQ&8RX&vyZk$dw4URi@%1g~p5=mZ_29jPpD9S10<4Rwa6!+VX0PS5R+Am9T z1Vdz6PhC+Y9J)$hC-2~7%eJ^9hxEFeWLJ%i>M3*fL*}{@V3166_`I?|HOvTERkE{U zFtlO;i{M6H(xXtLoDfvZq%U(?{B+g({g=V@T$Se#N2#eYeC!CgdjyaeUHJ;DEVu{J zu6oKoOLd6ijP)heL0H(Tok4p^>1(XHS+7W4F%++c>r?N#<^e~gTrajhkF%Hnfyw<8D zArH^s5ioePP-@rsZhKYgnw}96+r$x|_g2u=%BKlU=eiS;FI>DS)&&D_8( za|hV%$f3-K8PLLsyS;k~qVeYp%8`#9k}d2OPGn25aF8|%s{uP>CtX{)XNoFr-{~!) zZ;?Q_RsE7KN*5YGxa(HY&C8;ni&9+B&y%K5s8nemCNU6V(f`BGbMhJ#W-4 z8hgPm$wYN~S=#8-bp0@*v>ZQgIf~6-me^E#8(%#Y^86Y#WfSSa%5YFwok)(Fgm@n1 z2$R2h@Su}QlwqIgYy?A?Y+mH^wl2s`0-q)_fgZexfKHfXqOSwfJ9T=4og-l4%ggMo z6o2PSwy&YLN4$9FH9sl8u9OH62gh{UeRn@_#olSao+4mOHaK_NKB`|)Q)|9>)SS6h zXZThPFX__7>ot}fRyI)khW@GU2?x`iNrlB8#`Vh|c_Ghj2fA{-uk^0mdkY;I6>K3d zy&Z0zSJC34Admeh?EZLc#zS`LUJ3i0fgx$BK)$-1$;^(}{3GBK266YzcP}I^+cM08 zdynA@&L|rxlhCcSeMX{fRfuWrvZ5CQJeJO&(79L%yB|^jKJ@}g>H_xzDajJ6NrK4N z=e`d4*k$7nLg1Z;f{iOjK)ick-iya#1^3Kuc0AQQn^js*4`{h54$_jta}gW+5vI&M z*5E=;>Nof@gNT*t(dqOro**v&08xB-O5@pD)@>){n|$d(uN3QLXeX(TIY0y`3PgaS zP7%kVtiRWB6V&lasb1!rj_;JG2N5gQqti~Fa1?(-C?AVDMNl1!0udUZxuA|?#q`9O=;(7|FA%eyTZET(r}78Mcfqk z2!v>G+1*XHZyKwX6V8`?V-fPgXoc&QOo)A|pS@&=KAyJOTCx3|1AaXlMqYGiv30+z%aMe`5Vj2$iy76(K;hXVKqEFwAVN8te- zc`+{VM?*GO>(^iP>`{mM1+}?oE*U~9Brm_Tx1t(AHy#d^`KX)^E)YtMOiSR`DL5Z7 zmvl7L+~W=y$zZ8LlD*dpUK|1Hy$t){;F>xe#vWA82WVjfz2w&`o>+Cg? z;gz(z)o3VIa9PpC+4za@XK{V|t?JNGD&{bu+r>F$tz-kl!ZZhBQse1T`tKf?yp0)9 zCB)CYCziy@ejRBffHGm4j9hQooy2>qADw>yYnm;SPBOJN?x$mV1f&zPKsMg8hv{m* zu!ksVdX+qjS)|H)oNC^!!_erS+U#s-%KaYdefU;)l9Kmks1XK**ZnqkiDu@l;mFJ& zgW=fX#WvC>AEzwCdY?CzqI*b_VH6CEb}Mm*Ogf_ITRmRKw&8wR*Lk&CR@Npx*1;W;Ms2>Tp3%wmx>iBbdpa!%o(T9<@7M~N` zsyB>Stc`-|MZxc2Cy}%s0jp?AqpgBlg>iGE13m2bEAyge)n(f>8tku=^e?F5ZpC`p zFZuB$Z@g-F>`T$SCltI`(BbEvD$q5YaKLNtdSM_$l~^p+p5)RX?qRZ#&VvY% zUm;|8E-;9^7$4bYQcP^5sy#Q7nM-A@!eq$rb<<;}a8io*cCucF>uafDssjPN_O;0aGz%CMRVHx)XKxe(@=CyPxLo# z9cAZiky@93+;t3y-`jUqo7bdmovoEx5{}qOtuV2OhE2cyb-u%6O4MbGT}5sXD;zhc1Lrul`5ee z#x(b?zdINYX&;BQ)99I`E3}+8Lj1ET_811^tuZ)ep`>2$o`nqYk_dHI*cq2c8YDz| z>iQ(vds&W#LCLUV5lrIc5yy1pTOA7=voKpp%p3t8-k;5;lKB;Q!7V>6GR9h5eJ4dK z`bSmBILLK|6nw6eS8m7dP#nCw$0^0-Yv@_2P^jxmq57JHuqNT=dgf-< z?S7kpR*ib`DOMW2zKv(OE8$I$$6lRgd$*(RAc#@JYHdniO{P{c;KlJ2(!KO^37Etz z+NU(&483FTZD*v@U-2r+3X}VMbcj<}pdXJ8x|gJHy{;T^-S%{ci(KeykE<(Xx zdIL>P$}%fkt4kV+Syn_?iEb95H2q(qHK%M;QCeH{C&@@N++bKsP_I`lRQ>hkeio7U z^r1C{HB))1kLv6EN2cVQ=wj3;hHPE477f8|T<5h$eQzPX(DnYil4f=}{IQHx&hL;p z+pxoG1|`@cnx=D!+lY9*omVHg7lmWuoum!7kaQtWqv#VS(=fii!r^70q6?~P<=#e) za?`Wr>%8=wahf_nlH|JSV%2rO==N4E0}T4fl#lj!&-9vuHy9E$CWviriqfb>)8S!G4FyJ$;e36U7nSW9(RB*Ty!LOTzQ}=l-T)BR*HXDbEm(fSgOv}h_ z`W|EN1+(#G!=TZk9J!%DGI=5^ zeqCC%TqPPK7x#|B@w-3X>ueW(G}Ot~Bvj^sReMm>2HA#Bz9Hs$W+=7&?~w zlHKJxhUiPNs>GHz__aDPJV}jF|DjiywkTYW#W(a7O6?C7oGXZX@HWYe=x``Z`WF>j z-ica0@X^Umj4pRxeT$vJ!M92)Iwmtcu4F^!hFS?N<7czt#MZlfn_&Q%g|lS>MMU>q zxaY$XNf8$ppD}Umz;b^%UcwM1yO^wdy+~R-WF*owZ&BmdY_eJIsrY%rBH#kGZysad zoo~pno8KXof7c#K>o+l>p2^^UlP)NMbXn$HbZ8xv42Pw(2T$stHl%|NE5%I98Z#PjymPREkG7OfzQI%B@C(oslWA+)dq-|D` zy~pP!t=XI))}zC?l*2V&GiKgD32#ityG%iJYe{s3gl^n=VVJ0Y;d#R?sYe(e>l$<%sUg$6C;~Ix~HYzVU<~H>R1jZz||%P=$%W zZQ-!d+NzESqMW-7LdQzIK`SRpE6f8!X)zI-eZtEi0p( zdt4CWr|8Bw)np|KdBpJM+@0vVx?7@2Oa@qW8kEl{RJ4%`D2Mn(8L{OA&AO?JT0G~B zkR-2_<%#yNxuCF8VNelK$7uOI5oZy@l-e^kT&VasSnRmFK&Ep4^%QM|{B_rRz07EM zLQDF(v6m)>GQ_)XbTgDH1n&|2WW!Qi1uqm<46CuB$i+>aQ^arOD!uivDhDs|eCbBi zyCqiIEC$qp4YI`LV#o90J`Iy`VmgIfP9YO5j z{3Y1tnwl!@5jf{R1+x5 z6%LLiKYxYqX#9sF!JZ>AiK(>s2q-866WKOOH~wI?t5rqOsD?!rXD`8m|7Pv(#P1DQ zzk`3meb-=CuGC#u{IeUgalKc`{pa_1XL9<*owYt@@X|Jwc^K~HD`gRV{HW65lYH>*0gA)I9Eet)N9{}eIbGe@{}22mfmLU_nLXPB4S z8Ufy7&U)WlhtYv&T}fXNDWWt(Rq~1EMU8f7uau#6$91~Yr?YS{#qSA)K;`qk){L*t z%i>pyYriPVgr%?fbrL%fd5hHFsLP{MhPXr?whWI+HtMZCl41AE!+GHrp*Lo(R?R1e zLnQLJ;&K<)_K`^GZ67=CXDy<2rIA^(SJ$xl*TZLSeQnl!i~B*epTlzQ z(dSNti7v?H zhADzZF^&fMX8qx}%eSdWVr>M&#@3YFOn=rfLHkf_Mxx^PHp;4!oNa+u6;?0E{I`DG z)lOGjO4=7Y>{&nHU2_aeUhU_CVyKud>~RKp#meW+ps#RPt*tnEEp>)gWHNgf$soF; z9^#NX*xqemf7vq0>?F4q#mDNc{@G;21t+8RUIJ8Q8sV``N|&bLN|TJ9Ic~lcPKY|= zAgPh}9e&+$B?;YYMAfLFfGQnl9?ReR9M;+bB{2KhDb6v@D{{ERoKaWMSEzgR%+5WmfdO1=FDl*NxCbe=@ zWR^4PD2{WSg14yjK76oS7i zs)J-Ln?Vg1!Fo2VtL)Bd!~L~yim2ryYml&K=@4o39O>%`F5Thv>3Q{APovPZ8EpQc9_rv6ym2m?Pm+7CVA4 zzeD5SM@jl{z``u%Jj0ij9eTrUbM>l1uK?2n4&h>pu)@d7GWq$WarJtvj8+_u3cAR{ zw+8c?_H;}_7rC(mZ1k7C+Q#FwhO2J9Yk`_~1dzw`N=UHMhSwM*u9#Y-PN!7VT1N!D zofx>aM22elk@Hs0LA1ns>CbWuH2xF8c3=H}cGx!j%B{ZsN|oRv-sQ&6u{<$;(17}W zeG8)ZX^nGh0y4>!y-LPRtp675sAL_!yYZrQTS#$crwB!{BD~X((g59G?G{J5Uw1w3oJ6BAru}&T7%E-T_@R&2BI8T{k)P zQb|2|^rg2Uf*3zrD)ZX<@eumNmM*$>sy@@_5bB`VsJ%mQCC&bx%=A^2-9`!qs))Oy zG;bz~Bd4vKb-^=$b{Kf)^ou8?zf12&Wt|DJT9f658ZGBKGnu~n^x6PwwppemQ^#c z<*w!Y#xzD3$KH}WDlT_6+LIErdORX>#~-T74wS2hzL%LkJ0B11zTv($c$ zyr*&CODIni=p<%Fnp4E(r65O1M*Q5XVqvUb_%3sh<{r)0-KN`u0fl(A{ldA$ym%8= z>7z@{T4}KvZ?a?hy!7;bKBGj+!5^lst}c26P!0}JoSf6C&mEfl%_(dt54=!EervE# zaOq;)Mi-p~BNXF!t6tc--}N`Eh27Rb5>(w@@TI8G@}l3$Mj-mV|Jo0!r%DVWbnn3( zF$4IW5BuMI+cJFUK97EoIaLui9sf692aV`sm?ck)X&l}*hovkT!o~Os)^O-7oMT_> zDe)8#B#v_W1=t^~UxbY2m~V#NZGK$4UCrC$a90~{Dre%FA>ZToV_^>x5;$IY|&*GrlH?(+{C^OlMj! zePoF+6&>fwzcZ;FUx5MSKMhz8`|#O-s7P~R$eDep$ygElqmJ^+3IXr-r7fZ+zhHS(FVg$Hp{Ir!ae5%GW-=vbrv5$U^<*MpYdHMWR`n&;8`k z@*M28xM6{vraJo?_9l}xQs!!oysVy_J(qaOVJ6CH9(jycT5c4VDRRZd-xiazK1!Ak zv=Hr_SMxb{4|k!9MFdczPQ_~>nzY@U$M4(_I8+f_hH0NWOlQKQAU*0j5(5g zK8fMhiix9*+%Y9LpUUBmx5+gImv>$k=Oqn$yv(ea`&^FV>$Hf50iknma2~aR`P2ld z?qqb4Vs(lkW;;XFM>75U3rLKlWMrT1G3l`_(DC!Qx$Ee3SIog>!OxHN@@z!&c(5pk zJ#Fv(Hv1ECJ??1+)Axuw=R5tF%;Q8SDGO|&) z#4p%i4Nt>(xS?E@vc1E?@M>`6Tb||ESdJ%HPnC4I_lDJabfvEMOO0ai?DCi0g%xA1 z&T&)v>oJRv=&G!x5Btz&@FoV=y))~{v&eH;l&zgEawN20f4Sv2cnpJE4dEV$@$KO)@Wc6E4 zqLIehqk+(92{OVv3X)8Bt|!s;u7OW=4N9m>WBVbZQ7XV0zcSz$biU_2z$f zQ8Tgi^DMJRC%2G#JB$8}G6w++t>yW2wVh7MyP-bw3{Iu91{Nq~d5pR%#J53Jyi~T-enWaAOjZFRWw@0VM?p&?NvHjxj@mx=5x;mQ zT&`&_C5gL^Yld(l#wNh3mAl%dIIW{`U@obtofaa`kqT32Ni*zbHHj*?4?Zt(((o0_ zx+=3RQ>v4xvN4s68Gr`gMzvn5G`ioVlX z$0a4@F!<;|Up1?nE+ZGpUMw4LpKZ{q(cfe@sxi{N6fdc6knO}EpVXV5CLL|lsU=R1 zmE^-2CZgDxTNBo$u3cUJ3%dtbk>&l%>>Kf~cYD4>j|?}Pa>%wYn)jnTxTE#5um0-{ zEn|1Sk2saH2^F~ywOWV(;|o?*n>~}6Xm01H%ko+g4HTvZa)scl6z{;7MNTHh>B}OI zJO^c!25Vx(;tLx4C&Y=_g8%A6H7s4CBVUxV#}}S6iADC}5`!r&pWV~BtOhPe0@a~D z{SNl9ZgO?U4l#f7zxq%zzDc#zQK}eG1P@C>JAG}X=-86)-(x9ym(vZWfmC~wD`&DZ z+Yb8~WWd-$b5I!J)62mk3KsEe*l7i6YSZErJ9hElH+BW_m+mvDf#*eam(skmys!W=`S)WGyH?>FoTMY!n5ZTvqZ0(+HnO5du3!7pYst;=_enOW1&%EjJWS32OcLbw_6}6*%nB!drfve zxo*SrF3BfVg)TVBQ|XgZpGfb#Zh%#tLUH-(v2KbS!xM_>wc+7kAG_05LJyH$M`zZH;${~At&^P7w?0j*%x$^HmA)8$|Jjm@WD@Ku&c16b z>~KAR^nkaTIB61aJ2OHVd{<`DhyQoov{k1o}MM)QUL#yB6 zrBLN^<*{Ku&P>e>_6+xz@DWVLUrA!BGn6+{Rxa^%YmYaN6{{-?R!Y4U;_HrQ#}K4L zxF#a;wo3GhG)trQjVk`hr-hVNIV@PhRh!_Qy+CIk@`s!fn}S7RM7)o9;#GR!V{@yH zA*$HcYn-`JT)ieD{q8JH=E;-pajg^ocHrpdvnQ>-YCd`E6Z__-VyQ!M<8a!&_Ng9q zyMm;?VYMy0zAsS(_R0fn5qgaI#Pa<;*9kidG{SkO_l)BtsqH;w=C7+0+Cu_qpFZg5 zt2D|`f4Gv9$Bo2xNSCkGOl-t3rX@D+nBcS%sodVby)k7V+cXuNZ8{uZV!h^Y%_sSG z*_Dwa;7aq2`|kOCN)DJ7fip}lly%7yJx6TKS1aI7C*8Iz& zstY@t`fIICS```baa}g03h#3U&0jWKnN?qbAixZQU14|h0?qtCuxQvF0fv&})(6q| zA3928MrDY#a6>Y zg_}QM?YFe_R-mbn5(1T&&Yi1(j(x>~57>@LY<5DBJ7Ty91rfctR_P#&3o_L!NyZYL ztMCE!&ZXpj8PEQ@FZcdMLICI0RA=%BC#3$2_Mwe8XAn1#LZOf5f{hZi(z)>Q&wf_)1y$Y1*B={FhuT!a}rcr zgmfg?fT^OdFkD%rRV8EiI+jwU``52vG;jF-%V_T2OZ~c!G99Ds99}G5Xu{A^?gxvY z9)h`05OypqXSP9$^%XNIi4@60l^S{@R+t`Vnw0lslIKESb4A(arfMtaqVV3X39HZ? z-c~B8FsOoRDiTQ-Y56awtutbGHoH*fbzv2JbSI5N&vPFMPSk$eUitPH7h$`O#L?Ll zB$ggLWK2c9I`R>Jf6O&ZQG`TY49ruYZ zV15iglP>&EES)*AwDpa|A;h?*^N#S_x6#oi#%v1h@*+~#*%Xq(X>=qXS#r5)lRWwN z;-5(DOPp*+){cO-(L;B#GoO0?qcs>@WwO&Mq18)o>cAIyJiTS=$98P@m(Q|HG}=F3 z6ZUBz^SFlZrLUxJ+gt2)u=#F$`lsu;b2_*ssH+~g`Wm)JGpb$qztFR5aaZCD+?GiQ z{;dpf4Q|UGmN>j?#tW_Qc6Q`Nc2372bi8YaemQ`Tl4~WUvns)n7zf``!+6XpNsmn8 zZm#@_sIX_`W(q930$jKS>He*1aA5GmC$>ck(&w;SjQO_h*HYsxam9v~*cH=Nj9Pnh zC|gLwH7|6RKXRDcEyETIR(y6-J0l+6o`)lyE>-$W!94e6w)_+1ByBNXAML=&U8-)gbSCZTbL_^Qi{tX%O%>(T zJ})TbQfMLF+{iFHsgk$Dpgn~OlhoGNxsk(!<%3e|K~s(`eL-<2D7C*)c`&NBXZD}> z`i-`7?GbRn48B~*Aw9n34*nWfyIh;B?6ay&m~28?!)@i&?3W*2-9&PHhF9rHdx$zJ z44W08&=!W(lewIi-Di*Ukz=_+&Lk6iJ1$U?Ak_{8FXk>QiN5JhOzMGUF{z^Q9srE-nGkBwA;e>qYzH21Ta_xET zxBoQpJjhlH+rip{LckvoNVcN`f8XJtfyz33%!GO%&dwR@YncmZ_w6K9lx=+{oVnNk zY!|LT*OR=nFCZn*-Cm&XPOweV`xwdiG ztvld$oq|edTuF*X!ZMRa&GJo^XQ4md3b=zq8A`$!yW@2Q3rq8Sgg6BOqi5oybaO1O z2Vf&o7K}H(z_jWGG9k_3gV0A~EiHraAoDo~>cVa-HM!+9c3}x6A17sEzVtvGJ>22K zL4(%SMID%8Oi3YjojDw;J{W^#cBd$OLV!VFDzre|Q6ni_dKt&zhQDH|HzXfE%&|Wo z26iRq&s~vOlEvTn?wzRDMY9pfTj|)gbYvG%f~U5o{53W4h&^d$)>SX8=O=7!3yQB< z*DSNtLI$KsI1@c-RJ|#cNnwsP#j}%b>0#6%xFZs4JF3sL?>8R->lbt9)Jlrh7j(3e zgC&&dbJ!-rWoN(6oJhp%7n1!7~3kwP}UAq_0lvaY^9_kPZJhn8amRs3^Uiz z4w}g&SSFhPyO+*+@DQIe*AO})4L7N#$4JJCd(`2IlVznQWVTOb=pzcToVeKvmR@Q+ zcQ#bwSje+qT3kXwbzY+B9?gSEH(xmLne4W}IJkQR?7L5AgkLXw;#vToAGD@XRR4;t zF3HeoF?wfzU(Er0NNfGhxr2c}1%mNG8ksBt%js*B^83D>DbsOY;^Yg?wCeY^UzS;z zqzu2E?w zh{S+N@;Q78KUQ9t*!-Kc807Kb>rlAFp<*57c&Y}C9p?P9CQ?t<Au8SEfux-|8le z7=-J3G#r=2*esyDdO2S=xDL__(}vhcW3S~#bgogmzgiZ=e|}-F;K_eRMRSFHD93hM zzKLB9)>68O8x}^gu;9wcyIbHZ!SX5N?cE8r4Wnv3GpMrrB9ZabABZWMF=#(r%fR5c zL~tJMDbfeThfm%K_1!SL`u`e!!5_%C?k1d_7BQ|++s1YX-Zkc5Ssfo|of?HeS}GlTg5 z*MnHcJ-4nsIR9zvy*T4jaqj_DV+bA^#VEVfW%i zt})z)R}D(2$$25W?jwK7ERz^e>VRK=_vsP05&cw5UW9e4YSVu`DEvCfi=M_XoEk*sCE@N zhk$tQ+=YvmFCbpNaQ-s*BaDc^d5jC!ZU$pA3(K}+kqXI$goYtq{r}i|%cwY;WnpxX zKmr5{5GFWGAZTzWxP{=Z!QEX#aDomD?m>eNIygzt!QEX3cL@+Aq-n?a+TWZsJ`%on(s+yq5j~{+q~ONjQXHT8I%C&#OQn!Mk#C}S zsNi>|>aR?-|3CA8vq0Egid8e;{F1yX9X~|&5Ph#1i8}mN=HQdyP7J@vP|Dd~{_GkZ zsO8NSb9_fD77^+yQNB+JwH3$k$HsJ~CHSbnxcHToowYL2oyoTK#%rA1^}qT@CF+u> zSh`jv#=3xf^0iROzhS#4_kVVF$J}28^q)ocU(U(zUeWn`+tsda(^AfgKl~{V7x1yQ zm@vNeFOmP2NT5%U>L22jxI?|rv_$=3^<(@@h9(?MJDPcbK>;<667x2k=6i%7e_IZy zoHtQ~*M(A<68u2RFd|kOAFJk>Zi+e>wVD#c3t#$#z|$>Ai$OQ+4)wdHx*HGfvCVJgNWmW9_*Xx2X_8=-vjosIfCRtJS)DZFxKG zs2fiZAHWpgXF>d6KE^nZ-G`k%h~{x$>oIjSE0!pg?3&2lPe8~&L23ybqn)xe1{xOl z_wE}kSODQKssh#fl2r;JWe*;=zBiwP98wq=5*)Ru5*ctRG8_dTr@D<_O>>lJcU!>fg?eU$rn zhG$mE)25Wp$KR}jKv8Ck&Yn*9feVgG1=8ihltHE$Iem?W4_^%Mk2d?fKrRe@ab7ei zON9=Txb;gE%-Xr7U%ymbmA;gox-Q&AEmLKR1Mp9y`caGC5%46hl(cxfM^5LE#$b%! z10dad9rCTA;UOPUkUs5ZxWNQ!(7@JBl5qI3`U(0${@AsEm~|Q9_LkFI}VEI))G3-yX{NO)Cesj$@M)KXLPSr=@K^T5Khq=4-as@Up41T`_b z!z^#lm1e1RovOSA=`{XsS?oMV4H2`q@*HI=psz)f(LcRLm1{bF)}~To)1zS#7mt99 zu>=-mMeK}Zh=iEdS*l`Ku+kV`lm~^n`@5dxk4xm^21^{e7tL`8KK($Es4CpsQ(l&| ztkV1?6_T0q?bypW)Kv`m{WzVGGdq81PDyvuvNEjRCR%wD>_y~RN8Q664oUXXFlwA6 zs9VdvHkP=g-Pw%e6A_qpH?bwJBzSQ{W3BP_fmVMppD76<&~vdp(3uU2lXA(Ju&w-(Xo4ZYDln@)8`d@? zY>7_lguZz$=^gYf+oOpi5FJ2JBs}rTLCx2pav5pl=CKuoR|}oO)ww2OS#if z0t2{}P3u-tdtRDt&ox|}Vhw$uppG<_zX$%JKkG2$_63Jb>KuIWv~jO(zJn8F?o=OT zn~gHxiGiP=a+V-9c-u-H6+}meEBuyWC*=a^3C;wP2%52$zjw9E>l@-jtP)*xVmLba zZqy)V6sNOp4dZ*miVYp1m>c1rfbXR*?DCCj(@3a;!TTW;A&(3cT20J`Pbe{j#K|L& z7~1^l8aAW)d_=>+e8}_#mpH5PFB|+Ytb9AZtI8cxw5PpwydxO9`EdLxc|kaY^ULb( z{|2C~`ipx$SOokG|3Vw+v^a9lLBmhL?*Bt<{ap&W&{hKm+FFb5jl>-4+$e@JY`~pb zfk%eFcPm^-P^K)%Uc$CDV7~QP)G!Ld)mfK=zOAQ+5!~Wj`cP+zqmjynTKUldW<5&T zS-|Cl4&4Bq;1$<7(-DEBF0jVGP?)AUlYArs}iwOx8E6OMHP6Zub|Q? z%FyZXcaas5L{_!y-Pg+(GLUSHl1g3-bR`sm=UxIx(aFM{{x8n4R1;`fQCQep_~Fis z%1yoZcDiNS#FpQEqnuXz3cR%3ngil{kZzk9CnA#e`$Na1AFU#n?T% zf@O-Xoli~noxvHYKA@?vO5Xvl^Y(mIx4)EqT>ETwUD+ZxOtlj%Gn&d{H;lGeFVs+E z9C6pj#-vFl@-7e{=H0^w$FU-uGEcr9d=e6ei~bYfM8+n{@dV^=VT{e><@TO7Sm*sm zB7Rv%9a*holqqwepl<}@%)MgovQEiD)egF~gp*vrePN;|pj^guw;Q$^-(-UoMJzYd zDD@`!QiWVIcC0X@HDqwM)0FoaM3YDJF=om}*3v?YOh=jho~_>^S`wL}UZZ5((%Ps$ ztMoFB2l*=_#Fg9hTZhZIRd4RzO;PdSAWmwl~LD5BH^($;=Mz8eXOUN}yS&=Q8&#f_G8Y?-7d~s{XCZMyNM!6qvCSSQxv6%O@E|WrJ0g@VUNmH(XnRfx#t`(*9n;KqPCl^dtji`B=imFPp}D7-7^ zh*_O<-NkNDl#AM>sw=;?Ferx1QiXr*ZU!+ zU(c!U9L}I+c>u8z!RFBgYOyqtzuobK1$Ih_aGw)y#=TZmLf! z)>X(l4wJ^=W!y>2N2_#uf<48>ZUUX56s7NFc4v$Xym z>^5SP@39pzMrz*%#ka$lHCNV;p_uC5`2-pN*9F1<%^GgMX^{P{ z{ZRu`;}=(dt5NIlpV|HLueReqqxwT6f6&nVEt22F#U}rt@lT2WgMxoqy8n!;f8j;_ z52E_}`}j{>{nLW~b-((P-9LKCKdABVy3fDTcYo9P~8DtoE_r5 z!Ha!0#o$PcGWBqGzZ7^BM;U=zj$!LeSCO3a$%Y;Y~SM*y5EeHQ-%Ot;6gv}*?k0t z-FJna{{-}zkj6_>Slw?iE#t-9hL%I@@@m-@#7AhZos0Y>TBy*tH|4| zv$kQWV0tc|P_r_Ku86GZo|QJsy7s4gu21q%=U2ZmB?F2)1$ZC`olIW#+z8PXR))@C ze+*cGwmQ-HBc^OND0+P{y7X^9$~DAMf!ch~&P|rswVi!Jbh{l&wdF?i^F@MN2Jrg6tWQ#C;!l+6brg#~BQ5LBcq`CJaqyjaX{Py)Z26Cf4bye9j z-hH7DgI}>rIb%N-eGIQJ=^$O(G{dUOJJHWR9vab#k43j|opZ0vvBp*|ghh)>M%mA) zKN$jSJ&>WHBp-!ZF4Ni>Mgz}<m+M2Mw;`Uhb#QyJv?VMD7}OJ4uc!g4H8`N@+3*CQbQBF4eaM#nr8 zl%Z^Ym=|2XP8>B=^QqU*F;K=XX$PyCUZpM3C64t`51BYuv9{ImlYr+7d-(C+iKuHC z8A}OKYdfEm!dcm!TM_<6(0$5ri2^QQg=%iYEOqvLE4Dy2Zx(Vx(Dsi%2jj)Fkfma4 z_>#C0Nt6>;uA0ng9n#-8ntp)(QF3lIm& z8eqK}bLN2OG&ITBH|aLZy-R%_V+AL0vZYu=OkwkC-u0YApUGL_>gx$|$O;bDhE9s{ z5cYuT_}jri1W7liJ1b3Iv4#|05oOSXq%L%->M^t>X@m{%x^E2s1IW!^`mNo&urF6U zpXL`H9kRSszxV(sKNtvaMYDa;%U6mvsgUeISa$K6g9@)u>LE%bnm7y*2KRdz_w?g) z7$g0g`X@_hJ#t5wF!ul<7#OWGlxG;?i020r1(P z5Yd*G_r3Vbo5fC(`f&$S6Dr?bwb)h)F7d~mIJF&uHtSNQQ0?7hWroE$sSRYBFCeU< z)(ulS)Ihdw!c(I08@k?$`#3UB<9X!kbBC`SYND6ShrTR-73kh&Y~GST8@3(1KN;Mj z`$%!qhkgP*Dv>Y!hDp3<<1AisXRZNwk10QD$unoIt1puWhz;Z;nb%quzADC1^mU#( zj=yP6&yU4vecyxAm&Y#mAS;J~u1sT%8vUg3qsBzqkx|rwppP8OVeA3r3CN!#0CrrQ zwL1mJOvy2~twS527eefR>{N@}eOA&_&NSy9wi;>gz!}=Uss?c6Qy*Wjs)Mq_pDDz4 z%I8Oo9v;kfec0>fI(1RMQpL_>y11BA&;Nl3=3Sr3U)i!pQ{eA6&H4#|TwjErQs~sj z^($33$2R41zTx=Fccay|M-n!u-A@bo1nsR0w{SC?<)_{V=snXqA6dym8NK=Zc$;_I zQ0W`)UATLkKn&eZ3tW%gZsD^j)sUZixnR+JvK0%KFEDX7l4w32T**HSVAMX%DFgM` zwj^6fj=hfa{k-MQZL%M=`9*8j@A+yoXwc5KOayhkq`K#WgL4MrOYPN>v5k9B?^a#M zp<#1M4+&U?j>N|)Yux2DW__se!FWN3PR9*n(r_kq`IH%Gs}dyx5v~1J@>EqiynVrd zv;}O$wh^PT$ubBt0k~mI9le*|JG#?Y8^N!}Wot%CC^abyMJ#4#Q+3|^yIKKsVR#%j*rf)Eiuqv z3p|h|-2E3({!RZ6GdXRQx*(-B1}$OyqX#zTpzVp`Lh5WXhn6<9^x%fAQ=QNmXf6MyO9C1GX#WqwAJ z7W3SgSwe#MJw+xLlHwHA48%VmO5OVr5yGZwY&X<#yG0#Hpfs}8ke_7ad z%DELAw1TtdC>;HZyf1sCu|LF?ns7p7yJ2soB|nZi*u4(c>~yL}GqiqNE-c~?}l zYrk>tcsw3VtCkde)1{cw6~SJ8LJ~$5fL``kqtiCCPQ}PY4{WNB>d2MpfMCiXpd?dbcBF2xO_F_IbJmBq#xfHjEY(JswpW4L_HIb5u`Fi$0aclBtT`_0Nd67kIIa6VfTm)cjc=tXI2v9BPf~6u& zw~*qBu05m-#KDz*#!wMQP}ze{%Fg>9#u+WG)I7}syK#*eJy?(1D33C1`6S&b!s33= zqlN+k)5teQs^K$32ZJ4Oq#5X4Nb+h-39!VGU$s4ul9aY|6PTyB*RiP_By3@04>c|k zb=FZsa^~+H#%9yqlDiT>J$Rl%#X_TPugef6tJ+#V)*UwFXrp~a=SyDfm^5fsu=t^& z#_JVa;q*CDWtrF~9t%`8e%~+gMt&~F1>&iNY>h}CNME1;&ewz5q&UiM(?)X>xGknk zU-@7eDWepg2sAjZYNWXh<@lD?#WR$3LHikBf0A&z35JuBzp|nU&nfK3(lMQb@p!*; zAZ8QmdoCqyeir(TGPG@2snqVdt^E|5&kNK{p%TIHKvPgzu&F(gDlE_`=*d751c)lz zmhZ5r{5?M4*3#0!f*~H{9;hBSTNR7KMy;HMy7sCCQJp=;ocq}lTDHp0DPG{k?Hbq9 zSt30((?%t2;Hgn@>Y$UfJ0}-LH@elH*Im!nm%dIzRZSu2UXRqlKin%M&qbd#n>}X1 zER-L}<9P4xas1vOVWN#D#9G5UBsA5_mH#1h9W1t2Z=KgNfQRk)l$0Z5s{T|}O<(0L z9q#s}XaOv?*laP`KJk%Cf&UwPUXx;Ke*N1DE2dzw69r9IL6>M~?Re<{yVDV@HZ%WA zjBJ%vBtva$_+|s7=O>^>0$_-htN}!{aqb+ZD>O_nl|yMf5%D>5#g$EvurJSaXNFWHt(k z$6!>An}Ch*#W9$mqxLCM)A+Hn+Y|UVYENKJM%@(j?-liJ(aZdVid!Np+xF95ul$*LoiCz4v z4Gd^4f--M5kH@Pvd{maYU-G%nReiJU)9+`DfdOW`PZ^dK>nF=9R%;qt>>*{V5i-}3 zO@^#(Y@3Nptc!MFuG0@9Dg97wiI<$)&n-8l8^T4}hg(f6%@*1c5R7R_kILKc#$>43 z@_2qsGIin%Ml&aP7*F@x+gB*(gNgeIB=Jh=-Hj`5`T*k7u?+pM(={i~>8gCIWk>e6 z%^_yMwTA7o0}(Q@|}BbDq}m%G~fhrU0|LUZBW(qq4>yD zD2si?p|`FR$X4@0KpQn;W&!)eUmDrFmYD%_{;~bMVncKFGA9qPA;?CepOQ)@(Sx2D z(&#d;ypx<<&%RKWtUS-@OEjZhgKJ@&3ZOp&OIZ&~5H;y9eiNHhPtI=vFIhbqbexF} z6X6Yg5Fm&IV2+~H5-nQLUxtsBfV!?}%NtN>6d1exs&KfZ2=08Dj7^gVm- zdnI(!)Xd+2pqmng>OQJCH1Ud*CtZ9-ok->czX@j%Mw;^uFxAN7d+vB5w*}y}b!>h_ z>ReC*?rUgxIudLiz)b7$Vz$G-$b(k&0bC6)P_%e+=i2iiTu$47GfBP~FJJvd{*eJ{ z42(Wsw^^HrDPoi0`##JEA30-Rtk2MQ2uCWAMj};CAl-28Di@J$O7$C z=q_dzy_FO7M>g3-AOn%aYG9vCZ-v(Tufm=`Bt3l5@a7b-3vG4%0U2+;w%y-Y{IMY{ z_VV2GCE3Rh(g5CYzrY6|kE-mG+63t1+TarPg9g6@H{pw@e7qTg6}PnDVY?qW=Fh{V zOqa5h$u$j8>!hSuT{1KR2&2C#aWK{FIBUOLH?{1>E<@0fB^Fzz#VtzGln|Q^N($g?Kwc11BDza4SFk^x+Cr-BNM#clF zDm?(Hlp%d}p5(wBWav^1!J<%KlGaF1r@-dJ8dNbFV`*F@x({1AM9Cw57EFP{ zpcwnZgyiNSz`PbybH+Jc|u-Lu}N6JGHLWvk()#eHWEb{v8=Mp7N-eD zrID<;O__C6#Ko*84CbI%ww^WZ}Qw9%ZYok*L8 zp%D~f*J|+ro3LaMt+b$@^LSYvqX%S_nr0Tq1|u+@ZKaGZ4e9`Ar-edY@O6_zu>*;7 z#X3PwNyhBj;m^Yb1ptIalD0?oNy$#~w&wVqaUA7iWbWMh@OP`ByDN+v535J)*CBH# z7GruM&yB~JI2@2fnPwKEGzD>x!mb5uJmZLCDXJs=(T@S|=BllETojq=?3kN6>$W=v z!VYdk6?NS*CI@V2#794Obu|rCbCC8N0V%mpwICmtxQgdN^*zPUm|>xFSf*@RbH>iC z8LO=;ypDX6%+Xzu^Su^s4(29WbI8%;-{+(jyLeB4=%M_3>M%QnO%^b41-5Mx6hPw7 zG|*|9#T*6BfkO|S9Ndhlh)!GwpGi7BNt$~_a$usEel5;qK<9TyyyK zt7rphJ^`gCFl+!;Ryio`-g(9f!?k*nzJi?wW|0!(eBU&hX)7PP6(#AhQAR-8WcCDY zm9(ymo$Vk@xh5J)gF=(!+o;?L05&*5^>lZyIoWl)+%M)4X?z&TveXNYRFrYhQ3*-C z+a`r;v1nX5`?3gX7At>X* zf+35s_WXW~U$QO*xDR&p>XvFUEPw}xP^qP%E4#<>(8-*}DEQm=YUpCntc8{1o)tz7 zpHw@pVz&=jG5{;NR9P{kRs{W;KvRjxMgJ##tLnLXk7o?=Eldjg$E}gX-DHa=3 z$Bef-CA5rJJ8dzTs$EkYxuXsw=tvc{s0M2nl*8Pl*yu# z<3g}l^^&}ZzwlRzta*|XPea$MMl7_M4-UQ^ekj1i?Bo|8pl4ZTe&yOn4fBInOJK%nLigig#>fZ*)f|dv9Ebx7c1*E08I* z%REIpHYQ7GuO1`;7r~IOZLiY{2%)W5daNs--fuF2hw{X|?OGeCh=y&J?0mekg-VK7 z)KR=dqFEizd=L%8ZQpp~Pvv1epv>OYlmI{{y)DAGdS=&EHr2z##sR|5%Xg6-GlD+> zVtnAG<8AxscMug|_gzUhj(Ga!FU1qx-@D90#Hn)uH(W-a$oWl_%uHlc|p+Qy1w+1su^ zn;cwRO7?xe_cfl$hW5L8m{bW)N?t(^sOrp7c1Wri`=gf=hNv6aeeVu642j?#+3rKQ zV1>4!hw&0ZJLi_tNl&~a2V>)a8pa`CP0K=@s>EVvQ7Dsop=O8n=XRo8FBynd`GLwt zbI7KFIoT>`-rz@cL;O)s^mm-)Y0`aE@#V*)dH^c>nn=wxOCBc==3qa&@0_NA?6Ch2C#5-b!R}T7XARV_3;3^chN3ZQ^BqrL0Ygc z!5M>Cn5pG4KdTn28YON?3*-G9&^n3eL`S#Zo-(a#(;T1k{)+OwX+oNwR|~sK+9Yhx zvh4C3>tLZ^nMaYvLc80rJ!>BD0Q$OhZlU9GjV{U49aJY+SwnmQe9g=@Gi8NWqreWM zc7O*d8)kWkOgjKK)kbcx3ntt4(h~^WH7Y(Ku%7&R=*BR5Ng~S>ZpMIh)fHu){|Dw$hwSZ zFy6ZZEB51!cyuov_8Lbg>0|e~wSIA_z$LuGeJ^UZd-tmOG@eMFAt(W7p2z1O_RcPU zo#Tx(`Dla;ZAtdV5s{cimKm}h>{C8-3um^^ZA8gi!0w1`SdAI3{&eaSLPpp++h|XX z2r+_ml2bLaOXFJGN9HyKZn-bcZWm~CpMyU)44Ydm@g5pmMiy$Jx}B`*WN=_oQRlPj ze0$wCZLgpY_Wp{~Uh5Y0TH7O^c0#bK*bdGWTetYx(CiUPsEwwa9AmhF2|?0l#?B!R zzUX=YyDYDnExr%0#wX_T2Sv5p8$kupp=+I$So!BshEXOJ=!CwYw8VkY1(JplI%$yS z_5~d-q0@xykb>f~FA?8b!LePBzlswtunx4=5ZRi#`6CH3YT$1>9T@n}uX#i(KAh8^ zVQfVSK?N_(sij!wayf9=z>Bi6xLsPKTaVjHD;OK1-C;M}PrH?A=)i0ryPHcs?bQ-3 z5-n{pH}l;(MX9&F7)A8fIpVL-C-d#ilr(fJak-9pS(!y8bc;UC&|vEhQ#q8@G!S68 zqG}nZ=#@;BY01yyKl2xIx5H#-N?!=F4-3HdLJb^ zf8b>RDpCy9>Y|69PRTh=UEq+=u)-0k>6FNxj<>tEN40YHF%BBj=0o>}$3CTGiH;T6 zIYpxHwomMlOtxKsz%`PbdyD?h6HajR&|xM2E-%~2c4;_~B;Oe+Hn437-OUD1Z(i!* z!z5##_)xTq1<|83biN%@`5ieAeKPTPOMEJds8?N5Eg_kAp4wmimEI?ybO; zY<$HPG&X`@+EqWK9t> zi^{h8ee%ld6PDpiR7kfYf$29D_K;*0x&b9L9r@^ z`vY76$D~dR_|i#XjWJp%Cuy5y353f}ogEd3wttS{**ocG(=3o7g=PX4sMGTxZO`yS z(fQPC5-SeMQlt?l_&_Y3f*nl~wlaW&r+KvDO!u0yzBX=6Bo%(4)j_CtcLHz}v_2(? zw5$ah)+IfEphHPe+#~3Hy{Dq}tyG+PSU_UQD7ufA@uC_i1LuIWS0ozzh;r{zs+Vc! zju#X_E+x$(9Vo@{t)R@?tzfW4X|9)Z zVCWKA3=hc}5YEwoBIvz)El^4yK+o_JB`A>9Gw>m0P$yoH(sCD9)EX*epM?96KHItXxW^(4AmmMh^@T7T-E>-5~RS0KR4_z+&A~Bk&;uqcSGQ#Y-?Q z%#>A{o_BlB@bj}e84@{^EJD{(n@_M(4;n`7U^ve!QQ!*i@g6Fk=Ie{JNQt^QhN_*Y zJbHgLPq3i3KWGJGYQ@LnYXeL-9z`N&Ocp7U)U!gWzqvSK-7TWYys;L;JkSypD1lyF zCsQ)7fK5VtYop%Pw2m3%z#~piX3XclAA2l_8{ax!=9JAe)Qu#v2f9>0@%p54>>4YJ zKa>~FCQzgeAaxEtM(Bij(Z+V6egYB!7c3Y_yCm#A$uT;QOD|8;>9!9|Lg%c~@Rcc8 z@D!ffMtD&0gadnc!JF6fS}7oxIo(12umOeD33wE7X6Ysv#AaW><-(ihDcRmemOs`9 z`MB&ki76$(-s*(v7NnDbX;XwX_d3-reQe2^1}>!kl*e(UrGGh zHAwi%=g~eF*<$L~Z5ljz8}jp%vb8Seg76mk1psGq@e@d$jTusuKQdEi#zyg_EgF^R-zzb{VA${VZNZ~ zs*c{AuD%VACfj^pvldMvKGL<+vmtW!23)|opG;K|>V_%QgBB$AB)Lm9~S%GRqhOJ9@B(lGv=@))L zmh!P4GYi#!)=q2@N1dIOw3CTMQ)bRCt<|?x4J`=d<0=i$#SRfK4Yupgs?@6LIT+M2 zIGD6IYOKp-&i8x`g*jDP0T_ZgErReeqRe6a0Y!eMLn)USYngKyvE z!YU`2nb*L+i4i%X(!!bVd=QQf-s2g=F zc+FwxlvZbh%oTm%=QO7MRpmyyTk(UB{hb@!_CYVnxeBc{F48m=nY$*>Gm@H{WCn~0 zvIk_}RL7OG%36M)a;kJX2ix0$P_Lo9nS?K6@e)<+XVZLJ=ji%{mJ;Nysiv z;Ar)Fbh`m!`~?oBVYh<4aO>;nvEmmo*4c6`7p^_AaCCc;?>h42k*Dvq56jHmsQIG1 zubzufct7_E>)C(6sL()5k@Pef3`OyRT*=Sp=bHpx^@zK9wO&MM8|r?I_l}Mgsk>d<6>&_q1{Tt>mp{OnQatlN;*GW?gzkLy%2;y)Xl}V_nCm5 zHcpYEp{<>8rj^cQ$i`s8NNRbR!NdIwxSF{XlGgf)tK`jf!*uTtm40<87+5lGaBQhN z2LjB00vT;k`d|+SWjK;L*??&G)T8qtBNcMbX6K6-6z7oYqrgB^kEu-WC(@HkUI&PJ zk2GH4?X5adIR{IfGSwU}PRL*jlj7+Z zR1qFz5T)6*a|LIEa#;)NaZ#i&GMeJD@wyLxTL;~wH;)SaGVA}QaP$UHydv!@?tP*w zQzL4_o#Vs|Qz&H6AaWsYYa_RRO3HRw@q4Rv@Xx)hOSzW!xy@gE!t-FT36qEmE@!-z z^b0*sGC$N<%2#TA?1=i{K-T)F z)$b>VpTLX^n5u55-kw6aTnFFm)EMZdu)NEq&r`0g`!Ye5P;E;1V?|Ub&F|t<)hoz@ zi9j20;EUXu(l4^yRsGx|NV2>ptr#O_&wkuiOJZl)tD4iSjipM7L}8I0EN&sy)582{ zCt>`D$`NQE}-IN0^*#}=TM)eu{&RA)AH{Ku-t>BOi zpz)@SKapvuso@XvJbaf6v}>bE;hv-{Mq$u|8K#YpcS}rcM3DHzJCj?^si5i$>WYYT z7Oe~hwvsw^Y79C$FdKWM*`=!=(ue_ORt^_o=Z0)FAS4~;&%=GdY@6bPsqfHQm}p(7 z)qU7pL@N@xCy(Kv_UF(-BOXyV>qAl+LaeefUUv3M$`$uOBvj4bQ9tekm%-gqY&F{mPis|;orsxgUl!hFp8wwVx%g@MeZqJm$SP!TY2yM+K>UgnfXnky$Ro5pj z56o$qA~xm38h5eOWLmie6#b?>{?t3%Gj<58e4)NPx+{#j(4{$nAT0XMI^>`vzWYti z3HpD*py6M#HTeGu9VK`t3jt}MkN2JZZ#%&u>d*CY3zd8NeIiER!BtoH7L(2xS8^!4=cnm#ThWqV8eMbS=5HdkK!LxbLZ@EpI6MZ6^=vC?NnvrWozmKH9eU}6Nhxf0#a&t zdmpkA7?SgOCTLl+E%vuS64czN9C1i1_qw;_f#Y^cPfGy;FFk@C6aMg;V=ABA@2??otoIk1ivmn`L zrE}?w{f}7Iw?R>Sp0jj#_E-h!d{IFS=O$dt&AVwC{h(sIc!C#Ucr+>^%>Iv>2@4j5jD~0m$@JKv!Pxz#;u;Ln-MfQErT4UVc zO`KKJK5pHG93j%wC45BddGK|HbMII;P^7&0k$joRLdizA z5n~pi6B!h`nQmlbxr-^tp)1c>vLOQ~dP#wGGADiS;6xTyJ#PPCX&$(qTK-Ah?9Gwn z_5=}gR3iu}!$O$RRltU~;G^l&7ahv=O9OD;T##!a(;|sUt>-J=*}1$KOXb;Nni|&= zxjNEp;(1ugkmnXd!@>38k;ETH;sReB&V9ST+r8Zxz9aQpSiV1zq`V|U)celOH|5c6EMRXAhe^KA7Ct=T?^FY75|zaRg@2#G>D+>L@@gtZ^aFKNUak zKO9D?g(8UIo`?IpP=_~3r>jI-hTuc)I0?oE_98yYpjc_6L0QvLF$g=zIi5XfF`oKv zo0r7rcyY4Ks{YAb;51&BD|jSeN)IKm8=>jQ3~qawz!^a^;~Ba*8Rb54B2L0D^-Kx_ zv*v+%?*Wqt3M`gUd)#Sy1y(=) z&vl<+?+&t-)FIgX$9*zTafONeWaUu!s$rux7F925Z2rpeLFs2M8t}0Wd{i-mXbulF z#71R~;_zdm`-x6L$hTP1*LBm6=%X%KRh({ZG{d`5YndwT zP;+mX35wpYpE^c;{_!iBu55D?e90dUQb$tC=IdR}MBLvQpSU=3^Py6HqDL)*OTz|H z2J0aM+E31ECLX^PB|8p#t-P+jq5xR)zHWHWWkw(Iy;|Ct%)PWkAdxY1QN|NNYNJ{e zc>T^*<8*;Rme#wjm`}J>t*UG+&?Gtq?Va0-J0kSGov>P0VozjK5e-G6i`;*q%BJ!{n*2m25IB0 zIwU%ZXlr*Ko>;%cK#~wInr<9E(Vjc5QmfO&c1&4hy*&O0d(TCCx*go~JGiGHuNeb7 zOcLk-=cc6OBkyni?1b-J_tdALSjomlIAYCUU9Xjfql%>d3jN+kuN1Cf9&fVUD%JVO zeBG?DJd~_1_=8}ou)XQqt(eOHD5x; z7&$R6xcl$)%}~&uvmMGqqiSBXagkh+Cwu+K9*|DE_GXQn6THJuj3FzvU;Ngb-7pF3 z$u~H+*+wD_FI}XN8qFQoSsFtqS6M*~Q+kv2%BsrV^pCE@cQPW)r~g1ZQ=B+&WTBbZ z8YdSLeq$eeXgQfLNH$ryCaFJGhhvoX_%&aCO`3TA+~*b#1^p65ZT{Smsm1(5rT?yTWX{@qjZb?KV7tI-= zge$#Y#=2MwN&FnQi@z9~tjONPz49;wK?S0Ws^$fPF4oF8Jt{x9JT*`mV^_pT$&(TZ zWXB-@ks%J;JhD*0mR9a{N&J~z2m{g24v*ZEAHlLQV-d_P8&a$S)ML3>zE0wbGf|`9E4=16V6;y?ek$6%0c-m)evcGkB7z_yw_au#8cf)eSGs$QEpySF`>M-^!FLwsE^SqriDvUKG`g3_tupzJ#w~sXr z2TTzDs8my*Oj0M$pJ(zFbrcKQiR+1{WB+N-f>d=uUkZ|993j>!BkMTxKnoY`-Ix=Y zvmS>mlEFZaDkiU<3B?I(bsi}pGh$}=SzS|vJlBRQ3MaK(0Dft+6we6~P#26%>QLeU#GW9HB&zVZgW^lNa`U9Lx;4+4^ah*$^O`ViYR^8xha3D7df6a!Am}pV zUW7vbCc^2z@2LH|PgKR&oJZ7aJP24Vj-!=)#7m=)RGw3gAB7|%&k5aM$gQ{=tBXkf z6VEFfte{r%stCb{J;DnyfAk>f0eZ<71q8VXDiO-B|7(BqMt%Rb{!jn$*6EH!^ZNb} zMqbq(Ho(0@+-d#_ zV2E6h5{SmJMP4%PhUs}O(5Uk8VCw}$s?G}#<@T*;zz_L>qKzPtj#)_8t^&w~1BLyo zWGK?3M;R;Y0UdQMnFj^nRV6zoko{B8Ax>=oF)=+PYBMC?+pcBmq*q|RWtZn*@iQWx zjhooS8LyLcdr*K;K$j}9bR}b7PfJMH(8rPsl{f0ITa5yrJ)N7nvHJYTOg6Yn+&~v%cNc#%P>qr-ghVu>WMuKK@G3|4G25ADv9TwqsLL7piz2{x zb3t!DYs0*1EuSbrzM9j_Zp!HLsg7asqU>i8TyuRp${+r}+WX3|xRPzrhQ@;gOK4~u zf)m^c?m>eS+=GP1Em(p#9taR5K;sr%g9P{BPLL3^(cqHT$xPJ=GJ-N7s!^m@Z?HqTj&wF26z& zRZ}q@2b{SlOpshJqu(yvB*KDky|TYw@^R%_cOu%O6(k|q>lu2trD42J;H5O%ZMh)y)(bR()FYY*v)w7Eat--nkS}jA zwFuofyr^blqM?4BJ=;wbVlv1Xovo#?PenR`dNR4)Lt+ky$&MDCkqGj%oVm5Qp5se# z@Li95+F?g3ujIDgHbSw)`_7iH&RigsOkngJN+|&F43fCskr`*Th;x^pnyTnDR0R{f zvvAW+$e$5rpR%)ag(mJDi?8S#Mt%5pvE@izCmna>?A&JY<**P+p#yBQxYJ}}8U(o@ z)Si0qRXs8?jEw*&=6>+OS9nKyoDIG=?a&F)&n_9539f!ou89sFnPf_YU-Ar7kO2q`?-R@XXU`~*Zbk(_d1Ihs z{07n4`VMe;;Ut#%w?91xs(d?oLBv*e&{vh$9rZ-A-MC92U~!157WXj)(a50Z6EV(} z$Jaf<|Nr#QcjLZ8vt$JcdTa4-{o9tGYo{Qbtb1>M`cO}PO%y(}rO5Y-KK*3!Rs1De zCpIpqTYeaq`{fCD=QKxAb8IN;sDZEoxe0k`^i5t?{VUcOirH1pin%TifWPY+)oBpk zrwKZY@e6^*dkJ0-6`CABGtQ1$d*Ibfe}rw8vYB~(O|W$+C~k;GQ)ojk%GE1%q}4Nv z!_^uMk)TZOdRp36+2AAC|MFD|XM?jG*uoktEd1!zee7wZ8Tq(-QG9FgI*o)3&`$eB zR%6452Az0e9~)@2xn$PDDJtrC-B|!g%=c&S`m@pR(~Cy(cU-pN9^g5;*exBdPO}<@ ztUEMWhLs7Nbd*(m!Yn$i)uV3Yq(`T^a4Sxpeu`-uI*2wZqTfZ~)Z168q|qwIu*c>m zOrPN%Z)?ibsATQZEiT!6-(8-y*>_aO@sc9bDk6`cMmT&!3o(^oH!_D-Y$L{|RQ7g2 z<^A}(CSChI(#1WCBn8ciIE)tsG(a0F%kzz3yXiN!d3O4~oQ5JjzG|8D?6071XihzK z;UWsfg|r66#ToI$&L{=7l@zqqXmg&YtJU8DiCouNDX`SV_}fW)G%!4%%@HsIm>GQH z=j@Fb4B(|BD_Nz#xOKnFv?ADCwwR>2RK9Z7_6!3pM@+VBZl{zV zZn4Y(a{xObKGu6A^%d@1)-+GsGQb-d9oZEnqn&lAiI4??CD8=%i=N%T7j@*mq5f)N zp?X|zFvEt0h2Y#_7Q}$Y{Zjw7)XiUXJ@~^nmxZeN;Wq?yk5S}?9)plH-XXq}@_Yv{ z5k58uWGlqbPL()r37A=T5pcuFQ|f`j5S#MM6cZN{s6ls<^2SaX~8z1dIBQ>yS4X zuqBR@2~#IdSeir)@fGyr-+X zbJs$Snm^cn&!wwn^iG>?D^u3!*J$b1+qnsc_pB6;g(iR{FUC;6!z0oHfifw7E>6&+Cq)sx7YxcL2p#}&Cia22auri;7Z+zNl zU_#3gQ3P4lv|*K@eHK`UgisM+5+8+X)J&l^pKTU9f1H}PTBWji)WHm&=?XNH0>7MO zn;R&Q!j7_IZOW;m7K-!t5L{c5Tl&q){li2<;}{~7UD3^&lf^}h4>*6B8g5!s7iAW~ zyDhCAkaGaQs@}{Cbi7AH?~HF9XZaeHfrLE*5>3+9wxWHHd)p&~x8bO%fm%me`%X~7 zIjv{}7k76fEsbNmN4R^j;;vq8bQj8soLPV{Gbnhno`txpW-w`-rcOVc#?m1l$dU%e zCAPJ>WH067GJrVreL3vDdEnh=X{Mqe*e954?veMXccXFQL3(KEnBOja1*75_$57;^nK*_QOOx}iGm`^28&{^YqypSw#JrRpnhY-5V8XRxNyWl zhRawyB9fJ#KpI3G$=q0s>V^^zL`GBA16oWI7{a$God=J2N@-d=Sf0C66_Si#W7Q@} zPndHW_CZ`&$5nzA;kJg6u}Jn_3tSNB1R1k`7zf2?vpfh8J8KC>3O2<}Bzq zbIf(nqF4}4s+Un4R>X5@nu9UdCbc;S918obnj)Sy_OELxv@?M5y(^&BW${L7(&l!> z^9_y^0-*$1>sE|uNNrS3d24q(e=#Lk_p_utr!e#JRH9SU-xkI7f>(V*;stSd>E!^ol^KN)`CR(@ryd zwR_NG`d(3PBFc8l*| zF?wim0irE?BsX6Alr_OsT^1$bOH#*O6(s%JFh_jUL#W=-P$tQ#+ah(Icd4dc(0WN8f zwo+Ez3w>?_`8UXFU9x(V00(=>O01LTRP?mIa#LgV$7R+^6gpu!3Xx?DfdOPl8-y4Y zb}3z}-~^qfSE4q(dhBYkffCTr-tElXZ(V;o##e~duUGbfxxRZ3gL8TYIYHlhc42@} z87L#B3=V`ecsOW~Sb*^-Csc53qHtrJX&yd&9TLyBE(?F_`HrDnum`MtT3dxv@D#DO zckM+S6*-(XNQ|hI-rnKfgXG~ilIkSt@n92^H8E?aWzQ+-)SPk$O-Z-YST{HT5vBK7 zg3cOSegwa5Dq%gTHlD;HWlvgW(Qm99Mn1FM$IOK>WV=s)3Oi!GSN>oq>kgW=naC#q zXjw%Un{=#q5{_b7s_mpc*@v}54IEmYU5Tqc5aG@*P5+`68H_(NE=Ok(7dx-{1-}!2 zjz#r|%pfdYzHShd9GB1m1W@E;&_<&g%ndm>RVEQEB%j4Lw0AlL2!LPq(3w?teXtYF zUjI_RsVU5868<%PC@4P~JxyRLlWih3TXD3wJ~G?pu>O%mH&@%q;ZuN%KCYXAXeoqj z5%m=dc9tIBdL5)~jiWM87^AM`qF{;vBTC)AW)W)JxvbWxHd^bJ(1;PjtiM z>~N)&UL*yO=;n}h^3)3YJj9-PM|j9(l=*hZdl(chD5~gPAE&L}?#j!!Tb7;SOXQfM z_Kuo_*#4#r1sKcyv3fIq6836@Rq{&-$2)<(1S=I)0PlFX93QWES9&H}nkT#%*lPVagyEG~!-ws*6H-2ARRzOFtjm}aR z0tgantjcHGo$4=jIvV-Z19D`32R9pv7U%}hGDPVPvFE$6#@^v~N+;`yqjq0KF83Vv zzy_v{-A>g^z02oUtKrXORe_RD`R+D6#4;ptmsQ>JdfU}a&= zk^sFu7{M~oQ`GkYZ}C8r$zF$O5N({*gRN=9a%&S*THf~S4MORo8tEmo+?S#61Q$3n za#Ss9`SpF}pYzu#gH=iT!%mmqqXf*ig541g*52Z~5mTpnM#7QL`9WlA2`}S01`sj0 zFh%ZjOW9j%c#!bD>}OUB9`^sx1tRtFVll*8-CeJ3jf<16}iGcXv&9HDz1xI@}7y;gUd* zC&9Z7w#k^a#~G@`uTKYI>0L0-Wb+Wtuz3-mB10a116Kv|*|9$VR8p1@JJzg@1U%6os!;%yW4V)+@ z8M*mNB*^N+`_8{0=7R) zP&^W83gO~senm2ZCtO~Z(a~#eb7@eYK3J8_LFH;GE;%o&@)h2;H|-iJpPN`lN-jqflle9LyAh~NyQ}}D~$129_;MW zol_Y^M)E+xtTrZF`N-js8Fl~{$)V_n>d|D!oIrdD;Xvh!5xlDou+O%q#-6gDL2@SQ zCv-2EmTB7w2Rdam4qJMo9xMohE!WmVI4XBGMTZ0gK)ULQGT53+9xp+K)p|Hevptv~ zr%8|MbfB{Iep?kqhEe8UouC#Zpb2BCm3B%7QhC8Fa2IZgb2q2o6e9)M30GP~I zNP(!JX%}fOvk{{_YNedX^Ah%X^!6qcRE{PBj%_>JS(eyBFG{9v6)&Qm3d_7Alb8cQ z(*m5tNvP69Vcx+fjrv_gjzdI@B?gg+sNt;6?$Pf!=asA>&NkJ~RpG6xSaa4&t-rt}$kC zF;x(qRS%rs68-6m|J6%55w|$K)I}$M`Y69@I{@I0r}$U%@o&xtf7icOpj-UZ(nr}| z>bIJz%nXTy{o(6BPelqc{$~L(6#F@U^+e0nkK>c#3J@XY^Meo}2I$?f(>p3tI>Wd( zu+e~xFvbEWc~M;uJUTY#p86?stF?^8q&&YdG=wK z$mw3UnE$r^e;yS@B~#g1(hQzlhp3@vA^oipF>C9<$J{p;o|={40S~c~jMrB*2Ckc# z_59xiD?L0qD75@VlaPE+{PBIKd)2+Cz}eXg?R<*WcEHyCa8bj|H$oGMb>=p>E$%7; zPWwGV6M%rbxdV)VxHLCE-zeko2Y~d5fizt7%Kxo`{!k`f#r$Jb8)gvsgoE#y)0$k> zpCTE^!S8Y#Y22z^0jW@Rjs=z(`=R`nPoqi1f`zfcfYy`zWUs8aVUCMoNXG$BX9(cS zsb&JFd5spN^XPi(3vigkOc+;~F}=&f1hJCc6+C-B(y9N3;>TE_KfJt`3}?y?o(m>X z6M(4m+OK`)(q0RgY_p0e(VX!YbHc%lZsuvo!WHw1?L_NR^~>C8ZmF_#*w~c^x31!A z=}m=uG;u-^MAveTFU*G{tNPNKDi0Zs4)Tp$cZSow#><7=HdLCorqhLv5g;j~DWqca z57EwpWatNdD~b!#-H8q5QM4|`q}pFwc%p`UZOKy4$M|^V-ivpmW` zzT)xr-aRu+OFpJ$gMi z{^FD{^W2xt1!Mll{NzpC?Vu83)LusRJIkQ$`D+oy%o#pM6&GXJ>p$N9GCpe&jIkYZ3h6%;aTqo}Tx zsILd4pvzzo3(u-2Oe@BUU+Gk;(SmvcNp=ATYxBBD;v}pBqp5sS4SHDC#pDg-Cm=1r za*`3f%^ik4-B$CY6Ob%yJOMMt@9W$97BhCOk6jG{*^x`$wi~w{?T~+Xk;yMZ@H$E< zZ|ZqvQy2glLvV+IXUSJR$%Kwxy`l{mBP=3#J%7(4R$8-MpWC9l4JKB zJP;IxS&Inx5pzq!3aM%#uTcuNZ&tmpgykH)0W*d@B4WV==teRQ-6G3kh((YiSY~HC z4$CMIpBbfI{H;0>?YW9u`VROsx%lnpvTc9Z_M4aa|4o=Y#LSNRoBbOc!_R+z>P2>~ zS26!Wz5kqTEQf1BWd$GImbaK9!-$-;uR;Nig`PIEU+U(dKgP9J*{=u?HCb{R@hq^& zkiB9dO=3958ZU#diM7%_zMpO_*aobvE}pFGR!TM?+21Y}4s-a@ra-|})Cq+Wo?9pC z54k+x(xzjTW3H^Pwc6e?XUQDkwG$mU4a;GR)-rXo4-K$2W5zoywkL=*WEgq&`N&CNTY;ERu0up{*nKoBK>8w)6{FTnUpgZCc;rB$$ga z;!cY~uBhTV6FLG)wO9K+X>5u0We1k63y(8<5hFAf#2+R8%lmV~LY4#qA)Qnp!oC_n z)ugcWS=>-KL+Jb*jT4coPogg?qc@&3gj=#MmTX|aPJ%%o;9;>6W=?(hEGbDuV04X% zLT|U{Em0(^kU~^x4kY#i;{qOHL2hKRDBZ0s*!=J(SAyO^oXfu@BgP%oF}^R#J1Q}M@j*FpHNU7Pi&H%#e9`jpDZ6<8 zcK~<{p2WaenbD1o=*)h;ByDO5{mbW}7nGXQ{<$3Y@9lvkwndk3(PM<(UOjvg?!M=~ zxhUM`OKiC}Lao8qwEddy<+F)L?5WN$;E?_ zBr_Ji1F$B^q|@VKhjABz<}1lA5MGmYNy8zUVg)x&7Eq5yxiLlaA+JAbDeUH<9BWjt zeXo4aL80`N%Qiu8ysW3ty&cMrjfCD7hO0AvpJZZ${e1i%%}wH_nM7&JV`p=npL76w znxR&i{j998t-N|5hAxwq)`$@jU1om`rt1eu#vsMr8^R`}&e*m>_$rH5f>vvT`V}37 zw&5w9!Ujo>uyYFKjH`MW-PAnITL)naN+D+c{?%O0*-qX6_MY?n6Yz+VE26HhK9M-V zVtEa{9L0^Y=aBd40VVqmZXG7{JK*bV=DHyfr+BVIDK%Y*_(@u3wJLTdBFHpQETF8s zJD_J>+)tAQwBLnTW?kG*Tn$Ad@B&Y1-+%Mj-aod&hPNq%#F7$D0#0j}CI}aUTIJr1 zdLa5E|E`%7S7tO7W`6uO$L$+D=8vyjp~wR1^9OP(SA5@w&u&A?_Ot$G$WQWq z-U`R1W3@1B2FF1&d;O}-8DL!absE zJ)PFh0Zita!Iv`7hi{vXMAOi5i#ErzNo2H^A5CBPT&O`&E!~;x*(Kp9-vQW9pokIG zr*bnu@L>l}oPg`h${Y9zsXT^8NkI7wOPcu{ z4{-3PhgKd9bEXnkbYq0F{RQ{bzj)H$0p2Ix_y6_Fw|g`GqdxsC_c!|k(GrbE;UDA6 zZQ*bIXsf>Y{KXUYM{D`d7=LTR{t@HfK>p7p{n4=fJ7tVNcG72>vreha^9l93MzxzV zIm37$b{jFhd(-*(NW0Z`@4g&A9ZGPyq2A zzkuUnuUypHpfD9>+0g+qVpr23j2-k1;Y4%0NHgy>HxQK{HWG?QfR89)@%9Vr+mOq@ zcHj{ArAGrqAeb?l)M)L(jR*S;|WbffEJ3&Hw!I8wA_K! zz@7`MFwe}>IC&wMR42#9N`y^%l5+e#61U+gRCy78{^t&I7)(@g@@yS=t&aRA(6til z!(!b#dkak|2bm#2?3lK%rKNh8?2$fb!^m+nZEl3;POxB@wE|ar^H>fL>?13;6;T(k zPJXu{Hn}6O16l`x4=L067&y&!Lh^0tW8YYt$9JA297AQm%Gh2v7hn^{>kx(OmLyxu zTcXfJS`A)W4Sr@>*fUuePe|+-KjLa^aj1XhNu?CU2M)z9$Tokjz3|64g3%LI7~{H9 zOz*fqP!Y29$j7t1L{_njiK-{#15}`Veezs8ve5c=FQ0^R7^u%zcsm~R9iaNBOz|(s zf0~*2jjQI_`F=NjI58DON5MIi}O-3YbQkt*Noo*NQ&sWXLa8)|L)iLQ61)- zN34EW+YTiaAfEtGyj}V{<`?siRzd!OJ8O}*>6^r+XBhtl=w=B#1>`I5VGy6+gV>VvQgO~>R3soXL|XF=E7 zx?ecOe*O+S^L8+R{z54 zHsR0pnV(f%h(WCa4L?gJW6h?zq+HyF>C1I=a0X)RqB4cu3p6G~B)NK+82XjDsxi9jWsB&`fS zWBM|KWV`$|=_|>Rb*0Go5t1V}Te^7`uQbeMXWxa2mBpi=uP+pMk1ZNyCm0<(yoLgr z>T!DfcCpP`)CQOJ7au#C&a-L%P|nSzKjOgXcG0gHOf8%;LU{GNvw5pPoyqe} zyKslA_bw4r&-dNDSobZP$1UsB-ancElsin#EnX^lP1&;Lddw-f zAj3?c>+)vFLw08hD5<4g6%DmXg6Y`?ma#}oQBq#B9roLz%{X>y-a)I()*h8@=we4Gq^ z4}egeK!%KK)=S){#>&3~I#-$_Jv8jk@wyT ziLBMXoDyT62Jx~Kvt)SyT2d8ElV2olHgeRi8v_6f67ZeEvXz<(2@z#vWSzeFiI)O9 zE3GJgg2j5-#aH3k4WFLpr(&MmYjkzear`z@cqd?x zkHOm5RH$pOG%sDys>vti@dupYW#q#vY}xB~ZDiiT{x?0}0juAZS~{e{%F3#w0z%SXPtPW^`CmV!pJ-qhN#ui@_f(l3Y_CX#!S}Le)fcJ{(RHN} z9@*H?D?`$%yA3N7jDEgCn_$fc0;#fzb;82j6@6xd3UnFAQePw1zbZ86n%Na%v+!|_ zVGP*gbRPCN;7hCPZ(lRfQ(>pS^PEg7&KMt+L&Px9d)BfocCkI6b*BCuFruwr-WYT1 zT{-DbIr{@^FoaW6)Pg;;&{ew;K!;Z;{6fI%!7xqYHT9 z`s{N!F@bZzlSJvXBD!_8eCBXLO{V@V6)mhEK*_Wsq94HE{}24{yCHvn9M4+AD4#wu zl?=urVpPlepZ|GedXgPFh)_l9I{>8%p_K2((CG+Dj{gT#`=QFaAGhh^fBa_sd|;GD zk4%pv{^uXtaZIu|)ptNUqRLo)hzL(Fj1NG>qenqQ!$1Qf0e);q0AwJ(IsqXOCkipO z1mu8&Tf@XO>#mwvU|dD}C@K|~xa1*?(@Mb4`18m}NI&Aw>%Q8IvQ3DHBn97_53?Yo z;e^+YbEFW*iAiK;Kl4lZR`uks+c)LEY^tZ+Prj*+iz#f3jO_fpKSQ9(1^KO+5n5n9MuePm?MXuN`RjAA8#)68QYmzll zLL`(J6sqxWp-d-Au!Rx>5nLSG+Gym8Z5@TWByKD~guwqBQ~*NY-ED1Tgg}Ib7;Y>` z2!YfSB`89P|7WP;m5EYg+}vm9ZY(+-h59Yzs*lzYu;aZyXN{s~xT;!@Hz^0Q$7o5| zk}(@?lX0Jg!tQsn#>c?IWTklVl-`y!D~LVjD|xRh5$QeKZ`?vz&5kpKj%<;K`{`xi zfPJG_XKPIB*2Oox^-S9UeLm79oo(zlPk1M)XMrJ)w4us9Ue&K3XHhnR@p$$}kfwCA-v5j^Fo z%?@&1Mtnu{&q`~59m>hH9BOo;ikcmKCu=7W$iv^xwAP*>Pzbi}U%-N&RR0J^up)q^ zmH(RaH;QsH2d&+lQ zl^(YFRnAe;&slXen}f`t;W7*R?IW=`^de=!+?C_y)ILCb9R zz2NQWn7afR1D%XcrN{dlUEFd$y~Kya!0j?at528CPfQxx&Q<%3-CW@vcwpdL5gN1fP-Xue{jrBY9|(vdH{g2RD|Na8TPoo0Kk3F1e)GFs#jU(3xA;p<>Qv4U+-AL3FcILGAJ-B z(nhP&S_bY)mtZRG;fNqN3qp?NoqaK>+v-eXGZEr3$8%nw8`FQvP^mmW0<24Z5&8ycxw-1i^*Bs=qyxY6o z05Z0WJ32l}zo(3`$&Kn7FF2bK0z@%3*;8HP@ec_CXEXd$din?H?|gp|^2f1e;P~mt`L4!I!{YK*>RF#i zS?NC^L7}z>Peq(Hbdu-f#{4LrxV9g$AT(P-0+mF_j)Z}OR_z9_Lyk9|?NVuNF?-Sv zt?G3iXLHOw{sQGo@0B!JK>YN>8x)>ahDkaI+1wb^dtj6nKbxyX9LRb6N*D0l)=nIk zeab0|J%9@|;zI^lGulDb#P3Q`urGg*Q|c=#tB&&W@`?@n>%5y^h^mNxI|01`n#U+3 zSn!NgkCc_~g3G$JW{R2)b^Mt3yA03Y0o_p)Go=vI(@PhGL-5u!RqrE6_3hA3wckIt zlpIIVnSJvZ`vcv`DSl&}(~0aBjoOS?5%}W8o1nDQOT0%$f$@vPA+jZDsBlA z2rA8iq?uDdU{=NGPs;%Kn`JSvTxI|l2PR4Ic7WJoN@-|T_TD23u4X}FtvAyz z;7NLxztXDVuN(s87c#Kj(zNrUXREc;=DiVN@UE-hn~$9?cAZ;r*DjtbZe}s%8)3PW z1_QqiKNKVFj7}dB|MbK?5;ct`0Zzn@|L^TQhyT`oz;nPe%Jb=O`zQkTU+$a-N#r^` zqqiTX=#E(KJ=%R$bQ|kC?fUspBvDBVwPvFU3#WbA2 zU;4os-)3UpMot}pj^xm*Yi#i3{GN&+G)VwcM`O?1_}jH7UT3vF+r3Dc>`|LRXzw5S zYO5cRYJF~6uHO?4f*?}X!pa~eE(P?bzakP>}9Dhgs4*3K1pJmdS@{MXd+mOA{fgncPj_BD=$kb2d-u%s@K0=8BsnkPCRXX^thD;?&+K2r!#kO!F63; zvvOp4VQkm&W#Fh~I<)W2`ipW0=I?;}2uXiRZa?!re|~X(y+Ow3dM3&pVQ=6IopxA? zgsz|45uAoMKe>$#-X9WiF`e3*xynS+3pUw|9rH8~J>*szL}b#27`PP%$6S78M1P(8 z{>u0-*j%LYH{|#r4ltiou|1yWF0yAlzC-u9Wd=u&=|{P`n$CD0hKq^!lU6W;pKsGy zRxooN6ChGn4!$O3FQj z=aK=@R>TW~1$HeW_A5jXs1NsT=O>zWjcLzhW{iC^VF*EPk5yY#M^`T>n;x)V4tARh z5&n>}h_G-%^eia-%Z3$M32TD`lBNLyVtrca(i|S#;D;L^dAO%(wj1mv{Gc` zt9qI{k6K-f0>whEu2osilqF{-*uu=2g!U84n!b@_=)lDkA6AB5e+RVQzL~ckYi!ND knz&Xi%~ZVg#KSTG3)-8k^mEmH&X@U|g%EUR{C)O+0rF@|)&Kwi literal 0 HcmV?d00001 diff --git a/themes/blog/theme.js b/themes/blog/theme.js new file mode 100644 index 0000000..380d142 --- /dev/null +++ b/themes/blog/theme.js @@ -0,0 +1 @@ +import "./theme.scss"; \ No newline at end of file diff --git a/themes/blog/theme.scss b/themes/blog/theme.scss new file mode 100644 index 0000000..be40cc6 --- /dev/null +++ b/themes/blog/theme.scss @@ -0,0 +1,7 @@ +.post { + .post-meta { + img { + border-radius: 50%; + } + } +} \ No newline at end of file