From fec2141383a71eeb70398842ec3cba1fbb1b3db2 Mon Sep 17 00:00:00 2001 From: li cheng Date: Mon, 9 Sep 2024 06:08:59 -0400 Subject: [PATCH] fix some bugs and pptx --- .github/workflows/deploy.yml | 24 ++ __tests__/files/loader.pptx | Bin 35871 -> 32480 bytes __tests__/loader.js | 42 +++ dist/docx4js.js | 494 +++++++++++++++------------- lib/cheerio-fn.js | 2 +- lib/document.js | 36 +- lib/index.js | 2 +- lib/openxml/document.js | 4 +- lib/openxml/docx/document.js | 2 +- lib/openxml/docx/officeDocument.js | 134 ++++---- lib/openxml/docx/style/base.js | 2 +- lib/openxml/docx/style/numbering.js | 2 +- lib/openxml/docx/style/table.js | 2 +- lib/openxml/drawml/index.js | 3 +- lib/openxml/officeDocument.js | 122 +++---- lib/openxml/ole.js | 2 +- lib/openxml/part.js | 60 +++- lib/openxml/pptx/document.js | 2 +- lib/openxml/pptx/officeDocument.js | 22 +- lib/openxml/theme/color.js | 2 +- lib/openxml/theme/font.js | 2 +- lib/openxml/theme/format.js | 2 +- lib/openxml/vml/index.js | 16 + lib/openxml/xlsx/document.js | 2 +- lib/openxml/xlsx/officeDocument.js | 2 +- package.json | 5 +- src/openxml/document.js | 2 +- src/openxml/docx/officeDocument.js | 18 +- src/openxml/drawml/index.js | 2 + src/openxml/officeDocument.js | 125 +++---- src/openxml/part.js | 28 +- src/openxml/pptx/officeDocument.js | 16 + src/openxml/vml/grammar.peg | 98 ++++++ src/openxml/vml/index.js | 13 + 34 files changed, 834 insertions(+), 456 deletions(-) create mode 100644 .github/workflows/deploy.yml create mode 100644 lib/openxml/vml/index.js create mode 100644 src/openxml/vml/grammar.peg create mode 100644 src/openxml/vml/index.js diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 0000000..36d1e19 --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,24 @@ + +name: deployment +on: + push: + branch: master +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Use Node.js + uses: actions/setup-node@v3 + with: + node-version: 14.x + cache: 'yarn' + - run: yarn + - name: build + run: | + yarn compile + yarn build + - name: publish + uses: JS-DevTools/npm-publish@v1 + with: + token: ${{ secrets.NPM_TOKEN }} \ No newline at end of file diff --git a/__tests__/files/loader.pptx b/__tests__/files/loader.pptx index e7fb51a08ad0c1e6185898f7d9412f7e7f4d2a05..479ea0cd7e92efcc2e9897e30d8cd519478f86d5 100644 GIT binary patch literal 32480 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 + return pptx.load(`${loader}.pptx`) + .then(pptx=>{ + const slides=new Proxy([[[]]], { + get(target, key){ + if(key==="current"){ + return target[target.length-1] + }else if(key==="p"){ + const slide=slides.current + return slide[slide.length-1] + } + return target[key] + } + }) + pptx.render(function createElement(type,props,children){ + switch(type){ + case "slideLayout": + slides.current.splice(0,Number.MAX_SAFE_INTEGER,[]) + break + case "slide": + slides.current.pop() + slides.push([[]]) + break + case "p": + slides.current.push([]) + break + case "t": + slides.p.push(children) + break + } + return {type,props,children} + }) + slides.pop() + const content=slides.map((paragraphs,i)=>`slide #${i+1}:\n${paragraphs.map(a=>a.join("")).join("\n")}`).join("\n") + return content + }).then(parsed=>{ + expect(parsed.indexOf("slide #1")).not.toBe(-1) + expect(parsed.indexOf("slide #2")).not.toBe(-1) + }) + }) }) }) diff --git a/dist/docx4js.js b/dist/docx4js.js index e96d38a..5103b17 100644 --- a/dist/docx4js.js +++ b/dist/docx4js.js @@ -1,37 +1,37 @@ -require=(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i0&&void 0!==arguments[0]?arguments[0]:{};if(0==this.length)return{};var t=this.constructor,n=r.names,e=r.nameFn,i=void 0===e?function(r){return n&&n[r]||r}:e,o=r.__filter,u=void 0===o?"*":o,c=r.tidy,a=void 0===c?function(r){return r}:c,f=function(t){return Object.keys(t).filter(function(r){return!r.startsWith("xmlns")}).reduce(function(n,e){var o=t[e];e=e.split(":").pop();var u=r[e]?r[e](o):o;return void 0!=u&&(n[i(e)]=u),n},{})},d=function(t,n,e){var o=t.name.split(":").pop(),u=r[o]?r[o](t):s(t);if(void 0!=u){var c=Array.isArray(n)?e:i(o,t,n);n["[]"==c?o:c]=r["tidy_"+o]?r["tidy_"+o](u):u}return n},s=function(r,n){var e=r.children,o=r.attribs,c=r.name,a=void 0===c?"":c,s=r.tagName,p=void 0===s?a.split(":").pop():s;return e.filter(function(r){return r.name&&t(r).is(u)}).reduce(function(r,t,n){return d(t,r,n)},"[]"===i(p,r)?[]:f(o))},p=s(this[0]);return a?a(p):p},_cheerio2.default.prototype.forwardUntil=function(r,t){for(var n=this.constructor.root().not(function(r){return!0}),e=function(r){return n.not(function(r){return!0}).add(r)},i=n,o=n,u=this.get(0),c=function r(t){return t&&t.parent&&(t.parent.next||r(t.parent))},a=function(r){return r&&(r.children&&r.children[0]||r.next||c(r))};u&&(u=a(u));){var f=e(u);if(f.is(r)){i=i.add(u);break}t&&f.is(t)&&(o=o.add(u))}return t?o:i},_cheerio2.default.prototype.backwardUntil=function(r,t){for(var n=this.constructor.root().not(function(r){return!0}),e=function(r){return n.not(function(r){return!0}).add(r)},i=n,o=n,u=this.get(0),c=function r(t){return t&&t.parent&&(t.parent.prev||r(t.parent))},a=function(r){return r&&(r.children&&r.children[r.children.length-1]||r.prev||c(r))};u&&(u=a(u));){var f=e(u);if(f.is(r)){i=i.add(u);break}t&&f.is(t)&&(o=o.add(next))}return t?o:i}; },{"cheerio":21}],2:[function(require,module,exports){ -(function (__dirname){(function (){ -"use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _possibleConstructorReturn(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(exports,"__esModule",{value:!0});var _get=function e(t,r,n){null===t&&(t=Function.prototype);var i=Object.getOwnPropertyDescriptor(t,r);if(void 0===i){var o=Object.getPrototypeOf(t);return null===o?void 0:e(o,r,n)}if("value"in i)return i.value;var a=i.get;if(void 0!==a)return a.call(n)},_extends=Object.assign||function(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:"*/*";e=normalize(e);var r=this.parts[e],n=r._data.crc32;return this._shouldReleased.has(n)||this._shouldReleased.set(n,URL.createObjectURL(new Blob([this.getDataPart(e)],{type:t}))),this._shouldReleased.get(n)}},{key:"getPartCrc32",value:function(e){e=normalize(e);var t=this.parts[e],r=t._data.crc32;return r}},{key:"release",value:function(){var e=!0,t=!1,r=void 0;try{for(var n,i=this._shouldReleased[Symbol.iterator]();!(e=(n=i.next()).done);e=!0){var o=_slicedToArray(n.value,2),a=o[1];URL.revokeObjectURL(a)}}catch(e){t=!0,r=e}finally{try{!e&&i.return&&i.return()}finally{if(t)throw r}}}},{key:"getObjectPart",value:function(e){e=normalize(e);var t=this.parts[e];if(t){if(t.cheerio)return t;var r=Object.assign(this.parts[e]=this.constructor.parseXml(t.asText()),{part:e});return Object.assign(r.root()[0].attribs,{part:e}),r.prototype.part=function(){return e},r}return null}},{key:"$",value:function(e){var t=function e(t){return t.root||t.parent&&e(t.parent)};return this.getObjectPart(t(e).attribs.part)(e)}},{key:"parse",value:function(e){}},{key:"render",value:function(){}},{key:"serialize",value:function(){var e=this,t=new _jszip2.default;return Object.keys(this.parts).forEach(function(r){var n=e.parts[r];n.cheerio?t.file(r,n.xml()):t.file(r,n._data,n.options)}),t}},{key:"save",value:function(e,t){e=e||this.props.name||Date.now()+".docx";var r=this.serialize();if("undefined"==typeof document||!window.URL||!window.URL.createObjectURL){var n=r.generate(_extends({},t,{type:"nodebuffer"}));return new Promise(function(t,r){return require("fs").writeFile(e,n,function(e){e?r(e):t(n)})})}var i=r.generate(_extends({},t,{type:"blob",mimeType:this.constructor.mime})),o=window.URL.createObjectURL(i),a=document.createElement("a");document.body.appendChild(a),a.download=e,a.href=o,a.click(),document.body.removeChild(a),window.URL.revokeObjectURL(o)}},{key:"clone",value:function(){var e=this,t=new _jszip2.default,r=r?JSON.parse(JSON.stringify(this.props)):r,n=Object.keys(this.parts).reduce(function(r,n){var i=e.parts[n];return i.cheerio?(t.file(i.name,i.xml(),i.options),r[n]=t.file(i.name)):(t.file(i.name,i._data,i.options),r[n]=t.file(i.name)),r},{});return new this.constructor(n,t,r)}}],[{key:"load",value:function(t){var r=this;return t instanceof e?Promise.resolve(t):new Promise(function(e,n){function i(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};try{var o=new _jszip2.default(t),a={};o.filter(function(e,t){return a[e]=t}),e(new r(a,o,i))}catch(e){n(e)}}if("string"==typeof t)require("fs").readFile(t,function(e,r){e?n(e):r&&i(r,{name:t.split(/[\/\\]/).pop().replace(/\.docx$/i,"")})});else if(t instanceof Blob){var o=new FileReader;o.onload=function(e){i(e.target.result,t.name?{name:t.name.replace(/\.docx$/i,""),lastModified:t.lastModified,size:t.size}:{size:t.size})},o.readAsArrayBuffer(t)}else i(t)})}},{key:"create",value:function(){return this.load(__dirname+"/../templates/blank."+this.ext)}},{key:"parseXml",value:function(e){try{var t={xmlMode:!0,decodeEntities:!1},r=new ContentDomHandler(t);new _htmlparser.Parser(r,t).end(e);var n=_cheerio2.default.load(r.dom,t);return"undefined"==typeof n.cheerio&&(n.cheerio="customized"),n}catch(e){return console.error(e),null}}}]),e}();ZipDocument.ext="unknown",ZipDocument.mime="application/zip",exports.default=ZipDocument;var ContentDomHandler=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"_addDomElement",value:function(e){if("text"!=e.type||"\r"!=e.data[0]&&"\n"!=e.data[0])return _get(t.prototype.__proto__||Object.getPrototypeOf(t.prototype),"_addDomElement",this).call(this,e)}}]),t}(_htmlparser.DomHandler);module.exports=exports.default; +(function (__dirname){ +"use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _possibleConstructorReturn(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(exports,"__esModule",{value:!0});var _get=function e(t,r,n){null===t&&(t=Function.prototype);var o=Object.getOwnPropertyDescriptor(t,r);if(void 0===o){var i=Object.getPrototypeOf(t);return null===i?void 0:e(i,r,n)}if("value"in o)return o.value;var a=o.get;if(void 0!==a)return a.call(n)},_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_extends=Object.assign||function(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:"*/*";e=normalize(e);var r=this.parts[e],n=r._data.crc32;return this._shouldReleased.has(n)||this._shouldReleased.set(n,URL.createObjectURL(new Blob([this.getDataPart(e)],{type:t}))),this._shouldReleased.get(n)}},{key:"getPartCrc32",value:function(e){e=normalize(e);var t=this.parts[e],r=t._data.crc32;return r}},{key:"release",value:function(){var e=!0,t=!1,r=void 0;try{for(var n,o=this._shouldReleased[Symbol.iterator]();!(e=(n=o.next()).done);e=!0){var i=_slicedToArray(n.value,2),a=i[1];URL.revokeObjectURL(a)}}catch(e){t=!0,r=e}finally{try{!e&&o.return&&o.return()}finally{if(t)throw r}}}},{key:"getObjectPart",value:function(e){e=normalize(e);var t=this.parts[e];if(t){if(t.cheerio)return t;var r=Object.assign(this.parts[e]=this.constructor.parseXml(t.asText()),{part:e});return Object.assign(r.root()[0].attribs,{part:e}),r.prototype.part=function(){return e},r}return null}},{key:"$",value:function(e){var t=function e(t){return t.root||t.parent&&e(t.parent)};return this.getObjectPart(t(e).attribs.part)(e)}},{key:"parse",value:function(e){}},{key:"render",value:function(){}},{key:"serialize",value:function(){var e=this,t=new _jszip2.default;return Object.keys(this.parts).forEach(function(r){var n=e.parts[r];n.cheerio?t.file(r,n.xml()):t.file(r,n._data,n.options)}),t}},{key:"save",value:function(e,t){e=e||this.props.name||Date.now()+".docx";var r=this.serialize();if("undefined"!=typeof document&&window.URL&&window.URL.createObjectURL){var n=r.generate(_extends({},t,{type:"blob",mimeType:this.constructor.mime})),o=window.URL.createObjectURL(n),i=document.createElement("a");document.body.appendChild(i),i.download=e,i.href=o,i.click(),document.body.removeChild(i),window.URL.revokeObjectURL(o)}else{var a=function(){var n=r.generate(_extends({},t,{type:"nodebuffer"}));return{v:new Promise(function(t,r){return require("fs").writeFile(e,n,function(e){e?r(e):t(n)})})}}();if("object"===("undefined"==typeof a?"undefined":_typeof(a)))return a.v}}},{key:"clone",value:function(){var e=this,t=new _jszip2.default,r=r?JSON.parse(JSON.stringify(this.props)):r,n=Object.keys(this.parts).reduce(function(r,n){var o=e.parts[n];return o.cheerio?(t.file(o.name,o.xml(),o.options),r[n]=t.file(o.name)):(t.file(o.name,o._data,o.options),r[n]=t.file(o.name)),r},{});return new this.constructor(n,t,r)}}],[{key:"load",value:function(t){var r=this;return t instanceof e?Promise.resolve(t):new Promise(function(e,n){function o(t){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};try{!function(){var n=new _jszip2.default(t),i={};n.filter(function(e,t){return i[e]=t}),e(new r(i,n,o))}()}catch(e){n(e)}}if("string"==typeof t)require("fs").readFile(t,function(e,r){e?n(e):r&&o(r,{name:t.split(/[\/\\]/).pop().replace(/\.docx$/i,"")})});else if(t instanceof Blob){var i=new FileReader;i.onload=function(e){o(e.target.result,t.name?{name:t.name.replace(/\.docx$/i,""),lastModified:t.lastModified,size:t.size}:{size:t.size})},i.readAsArrayBuffer(t)}else o(t)})}},{key:"create",value:function(){return this.load(__dirname+"/../templates/blank."+this.ext)}},{key:"parseXml",value:function(e){try{var t={xmlMode:!0,decodeEntities:!1},r=new ContentDomHandler(t);new _htmlparser.Parser(r,t).end(e);var n=_cheerio2.default.load(r.dom,t);return"undefined"==typeof n.cheerio&&(n.cheerio="customized"),n}catch(e){return console.error(e),null}}}]),e}();ZipDocument.ext="unknown",ZipDocument.mime="application/zip",exports.default=ZipDocument;var ContentDomHandler=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"_addDomElement",value:function(e){if("text"!=e.type||"\r"!=e.data[0]&&"\n"!=e.data[0])return _get(t.prototype.__proto__||Object.getPrototypeOf(t.prototype),"_addDomElement",this).call(this,e)}}]),t}(_htmlparser.DomHandler);module.exports=exports.default; -}).call(this)}).call(this,"/lib") -},{"./cheerio-fn":1,"cheerio":21,"fs":17,"htmlparser2":74,"jszip":89}],3:[function(require,module,exports){ -"use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _possibleConstructorReturn(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(exports,"__esModule",{value:!0});var _createClass=function(){function e(e,t){for(var r=0;r=0||Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n]);return r}function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _possibleConstructorReturn(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(exports,"__esModule",{value:!0});var _extends=Object.assign||function(t){for(var e=1;e0;){if(r.is(e))return t(r);r=t.root().find('w\\:style[w\\:styleId="'+r.children("w\\:basedOn").attr("w:val")+'"]')}return this.not(this)}}},{key:"render",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.constructor.identify.bind(this.constructor),r=void 0,n=void 0;return this.styles&&(r=this.renderNode(this.styles("w\\:styles").get(0),t,e)),this.numbering&&(n=this.renderNode(this.numbering("w\\:numbering").get(0),t,e)),this.renderNode(this.content("w\\:document").get(0),t,e,{styles:r,numbering:n})}},{key:"parse",value:function(t){function e(){var e=r.apply(void 0,arguments);return e&&"object"==("undefined"==typeof e?"undefined":_typeof(e))&&(t.emit.apply(t,["*",e].concat(Array.prototype.slice.call(arguments))),t.emit.apply(t,[e.type,e].concat(Array.prototype.slice.call(arguments))),t["on"+e.type]&&t["on"+e.type].apply(t,[e].concat(Array.prototype.slice.call(arguments)))),e}var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.constructor.identify.bind(this.constructor),n={},i=t.createElement.bind(t);return this.styles&&(n.styles=this.renderNode(this.styles("w\\:styles").get(0),i,e)),this.numbering&&(n.numbering=this.renderNode(this.numbering("w\\:numbering").get(0),i,e)),n.document=this.renderNode(this.content("w\\:document").get(0),i,e),n}}]),e}(_officeDocument2.default);_class.identities={document:function(t,e){var r=e.content,n=null,i=r("w\\:sectPr").each(function(t,e){var i=r(e).closest("w\\:body>*");e.content=i.prevUntil(n).toArray().reverse(),i.is(e)||e.content.push(i.get(0)),n=i}).toArray();return{type:"document",children:i}},sectPr:function(t,e){var r=function(r){return t.children.filter(function(t){return t.name=="w:"+r+"Reference"}).reduce(function(t,r){return t.set(r.attribs["w:type"],e.getRel(r.attribs["r:id"])),t},new Map)};return{type:"section",children:t.content,headers:r("header"),footers:r("footer"),hasTitlePage:!!t.children.find(function(t){return"w:titlePg"==t.name})}},p:function(t,e){var r=e.content(t),n="p",i={type:n,pr:t.children.find(function(t){var e=t.name;return"w:pPr"==e}),children:t.children.filter(function(t){var e=t.name;return"w:pPr"!=e})},o=r.find("w\\:pPr");if(o.length){var a=o.find("w\\:pStyle").attr("w:val"),c=o.children("w\\:numPr");if(!c.length&&a&&(c=e.styles('w\\:style[w\\:styleId="'+a+'"]').basest(":has(w\\:numPr)").find("w\\:numPr")),c.length&&(i.type="list",i.numId=c.find("w\\:numId").attr("w:val"),i.level=parseInt(c.find("w\\:ilvl").attr("w:val")||0)),a&&a.startsWith("Heading")){var l=e.styles('w\\:style[w\\:styleId="'+a+'"]').basest(":has(w\\:outlineLvl)").find("w\\:outlineLvl").attr("w:val");l&&(i.type="heading",i.outline=parseInt(l)+1)}}return i},r:function(t){return{type:"r",pr:t.children.find(function(t){var e=t.name;return"w:rPr"==e}),children:t.children.filter(function(t){var e=t.name;return"w:rPr"!=e})}},fldChar:function(t){return t.attribs["w:fldCharType"]},inline:function(t,e){var r=e.content(t),n=r.props(_extends({},(0,_drawml2.default)(e),{__filter:"wp\\:extent,wp\\:effectExtent"}));return _extends({type:"drawing.inline"},n,{children:r.find("a\\:graphic>a\\:graphicData").children().toArray()})},anchor:function(t,e){var r=e.content(t),n=r.find(">a\\:graphic>a\\:graphicData"),i=n.attr("uri").split("/").pop(),o=n.children().toArray();return"wordprocessingGroup"==i&&(o=o[0].children.filter(function(t){return"wpg"!=t.name.split(":")[0]})),{type:"drawing.anchor",children:o}},pic:function(t,e){var r=e.$(t),n=r.props(_extends({},(0,_drawml2.default)(e),{tidy:function(t){var e=t.spPr,r=t.nvPicPr,n=r.cNvPr,i=void 0===n?{}:n,o=r.cNvSpPr,a=void 0===o?{}:o,c=r.nvPr,l=void 0===c?{}:c,u=t.style;u=void 0===u?{}:u;var s=u.lnRef,d=void 0===s?{}:s,p=u.fillRef,f=void 0===p?{}:p,y=u.effectRef,h=void 0===y?{}:y,v=_objectWithoutProperties(t,["spPr","nvPicPr","style"]);return _extends({},d,f,h,e,i,a,l,v)}}));return _extends({},n,{type:"picture"})},wsp:function(t,e){var r="wps\\:txbx",n=e.$(t),i=n.children(r).toArray(),o=function(t,e){return t.reduce(function(t,r){return t[r]=e,t},{})},a=n.props(_extends({},(0,_drawml2.default)(e),o("r,t,l,b".split(",").map(function(t){return t+"Ins"}),function(t){return e.doc.emu2Px(t)}),{__filter:":not("+r+")",tidy:function(t){var e=t.cNvSpPr,r=void 0===e?{}:e,n=t.spPr,i=void 0===n?{}:n,o=t.style;o=void 0===o?{}:o;var a=o.lnRef,c=void 0===a?{}:a,l=o.fillRef,u=void 0===l?{}:l,s=o.effectRef,d=void 0===s?{}:s,p=o.fontRef,f=void 0===p?{}:p,y=_objectWithoutProperties(t,["cNvSpPr","spPr","style"]);return _extends({},r,c,u,d,i,{textStyle:f},y)}}));return _extends({},a,{type:"shape",children:i})},Fallback:function(){return null},sdt:function(t,e){var r=e.content(t),n=r.find(">w\\:sdtPr"),i=r.find(">w\\:sdtContent"),o=i.children().toArray(),a=n.find("w\\:dataBinding").get(0);if(a){var c=a.attribs["w:xpath"],l=c.split(/[\/\:\[]/),u=(l.pop(),l.pop()),s=i.text();return{type:"property",name:u,value:s,children:o}}var d=n.get(0).children,p=d[d.length-1],f=p.name.split(":").pop(),y="text,picture,docPartList,docPartObj,comboBox,dropDownList,date,checkbox,repeatingSection,repeatingSectionItem".split(",").find(function(t){return t==f}),h={children:o};switch(y?h.type="control."+y:i.find("w\\:p,w\\:tbl,w\\:tr,w\\:tc").length?h.type="block":h.type="inline",r=e.content,h.type){case"control.dropDownList":case"control.comboBox":var v=r(i).text();h.options=r(p).find("w\\:listItem").map(function(t,e){return{displayText:e.attribs["w:displayText"],value:e.attribs["w:value"]}}).get(),h.value=(h.options.find(function(t){return t.displayText==v})||{}).value;break;case"control.checkbox":var b=p.name.split(":")[0];h.checked="1"==r(p).find(b+"\\:checked").attr(b+":val");break;case"control.text":0==i.find("w\\:r [w\\:val~=Placeholder]").length&&(h.value=i.text());break;case"control.date":h.value=new Date(r(p).attr("w:fullDate")),h.format=r(p).find("w\\:dateFormat").attr("w:val"),h.locale=r(p).find("w\\:lid").attr("w:val")}return h},hyperlink:function(t,e){if(t.attribs["r:id"]){var r=e.getRel(t.attribs["r:id"]);return{type:"hyperlink",url:r}}if(t.attribs["w:anchor"])return{type:"hyperlink",url:"#"+t.attribs["w:anchor"]}},tbl:function(t){return t.children.reduce(function(t,e){switch(e.name){case"w:tblPr":t.pr=e;break;case"w:tblGrid":t.cols=e.children;break;default:t.children.push(e)}return t},{type:"tbl",children:[],pr:null,cols:[]})},tr:function(t){return t.children.reduce(function(t,e){switch(e.name){case"w:trPr":t.pr=e,t.isHeader=!!e.children.find(function(t){return"w:tblHeader"==t.name});break;default:t.children.push(e)}return t},{type:"tr",children:[],pr:null})},tc:function(t){return t.children.reduce(function(t,e){switch(e.name){case"w:tcPr":t.pr=e;break;default:t.children.push(e)}return t},{type:"tc",children:[],pr:null})},altChunk:function(t,e){var r=t.attribs["r:id"],n=e.getRel(r),i=e.folder+e.rels("[Id="+r+"]").attr("Target"),o=e.doc.contentTypes("Override[PartName='"+i+"']").attr("ContentType");return{type:"chunk",data:n,contentType:o}},docDefaults:function(t){return{type:"style"}},style:function(t){return{type:"style",id:t.attribs["w:styleId"]}},abstractNum:function(t){return{type:"abstractNum",id:t.attribs["w:abstractNumId"]}},num:function(t){return{type:"num",id:t.attribs["w:numId"],abstractNum:t.children.find(function(t){return"w:abstractNumId"==t.name}).attribs["w:val"]}},latentStyles:function(){return null},object:function(t,e){var r=e.content(t).find("o\\:OLEObject"),n=r.attr("ProgID"),i="Embed"===r.attr("Type"),o=r.attr("r:id");return{type:"object",embed:i,prog:n,data:e.getRelOleObject(o)}}},exports.default=_class,module.exports=exports.default; +"use strict";function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _objectWithoutProperties(t,e){var r={};for(var n in t)e.indexOf(n)>=0||Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n]);return r}function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _possibleConstructorReturn(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(exports,"__esModule",{value:!0});var _extends=Object.assign||function(t){for(var e=1;e0;){if(r.is(t))return e(r);r=e.root().find('w\\:style[w\\:styleId="'+r.children("w\\:basedOn").attr("w:val")+'"]')}return this.not(this)}}()}},{key:"render",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.constructor.identify.bind(this.constructor),r=void 0,n=void 0;return this.styles&&(r=this.renderNode(this.styles("w\\:styles").get(0),t,e)),this.numbering&&(n=this.renderNode(this.numbering("w\\:numbering").get(0),t,e)),this.renderNode(this.content("w\\:document").get(0),t,e,{styles:r,numbering:n})}},{key:"parse",value:function(t){function e(){var e=r.apply(void 0,arguments);return e&&"object"==("undefined"==typeof e?"undefined":_typeof(e))&&(t.emit.apply(t,["*",e].concat(Array.prototype.slice.call(arguments))),t.emit.apply(t,[e.type,e].concat(Array.prototype.slice.call(arguments))),t["on"+e.type]&&t["on"+e.type].apply(t,[e].concat(Array.prototype.slice.call(arguments)))),e}var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.constructor.identify.bind(this.constructor),n={},i=t.createElement.bind(t);return this.styles&&(n.styles=this.renderNode(this.styles("w\\:styles").get(0),i,e)),this.numbering&&(n.numbering=this.renderNode(this.numbering("w\\:numbering").get(0),i,e)),n.document=this.renderNode(this.content("w\\:document").get(0),i,e),n}}]),e}(_officeDocument2.default);_class.identities={document:function(t,e){var r=e.content,n=null,i=r("w\\:sectPr").each(function(t,e){var i=r(e).closest("w\\:body>*");e.content=i.prevUntil(n).toArray().reverse(),i.is(e)||e.content.push(i.get(0)),n=i}).toArray();return{type:"document",children:i}},sectPr:function(t,e){var r=function(r){return t.children.filter(function(t){return t.name=="w:"+r+"Reference"}).reduce(function(t,r){return t.set(r.attribs["w:type"],e.getRel(r.attribs["r:id"])),t},new Map)};return{type:"section",children:t.content,headers:r("header"),footers:r("footer"),hasTitlePage:!!t.children.find(function(t){return"w:titlePg"==t.name})}},p:function(t,e){var r=e.content(t),n="p",i={type:n,pr:t.children.find(function(t){var e=t.name;return"w:pPr"==e}),children:t.children.filter(function(t){var e=t.name;return"w:pPr"!=e})},o=r.find("w\\:pPr");if(o.length){var a=o.find("w\\:pStyle").attr("w:val"),c=o.children("w\\:numPr");if(!c.length&&a&&(c=e.styles('w\\:style[w\\:styleId="'+a+'"]').basest(":has(w\\:numPr)").find("w\\:numPr")),c.length&&(i.type="list",i.numId=c.find("w\\:numId").attr("w:val"),i.level=parseInt(c.find("w\\:ilvl").attr("w:val")||0)),a&&a.startsWith("Heading")){var l=e.styles('w\\:style[w\\:styleId="'+a+'"]').basest(":has(w\\:outlineLvl)").find("w\\:outlineLvl").attr("w:val");l&&(i.type="heading",i.outline=parseInt(l)+1)}}return i},r:function(t){return{type:"r",pr:t.children.find(function(t){var e=t.name;return"w:rPr"==e}),children:t.children.filter(function(t){var e=t.name;return"w:rPr"!=e})}},fldChar:function(t){return t.attribs["w:fldCharType"]},inline:function(t,e){var r=e.content(t),n=r.props(_extends({},(0,_drawml2.default)(e),{__filter:"wp\\:extent,wp\\:effectExtent"}));return _extends({type:"drawing.inline"},n,{children:r.find("a\\:graphic>a\\:graphicData").children().toArray()})},anchor:function(t,e){var r=e.content(t),n=r.find(">a\\:graphic>a\\:graphicData"),i=n.attr("uri").split("/").pop(),o=n.children().toArray();return"wordprocessingGroup"==i&&(o=o[0].children.filter(function(t){return"wpg"!=t.name.split(":")[0]})),{type:"drawing.anchor",children:o}},pic:function(t,e){var r=e.$(t),n=r.props(_extends({},(0,_drawml2.default)(e),{tidy:function(t){var e=t.spPr,r=t.nvPicPr,n=r.cNvPr,i=void 0===n?{}:n,o=r.cNvSpPr,a=void 0===o?{}:o,c=r.nvPr,l=void 0===c?{}:c,u=t.style;u=void 0===u?{}:u;var s=u.lnRef,d=void 0===s?{}:s,f=u.fillRef,p=void 0===f?{}:f,y=u.effectRef,h=void 0===y?{}:y,v=_objectWithoutProperties(t,["spPr","nvPicPr","style"]);return _extends({},d,p,h,e,i,a,l,v)}}));return _extends({},n,{type:"picture"})},wsp:function(t,e){var r="wps\\:txbx",n=e.$(t),i=n.children(r).toArray(),o=function(t,e){return t.reduce(function(t,r){return t[r]=e,t},{})},a=n.props(_extends({},(0,_drawml2.default)(e),o("r,t,l,b".split(",").map(function(t){return t+"Ins"}),function(t){return e.doc.emu2Px(t)}),{__filter:":not("+r+")",tidy:function(t){var e=t.cNvSpPr,r=void 0===e?{}:e,n=t.spPr,i=void 0===n?{}:n,o=t.style;o=void 0===o?{}:o;var a=o.lnRef,c=void 0===a?{}:a,l=o.fillRef,u=void 0===l?{}:l,s=o.effectRef,d=void 0===s?{}:s,f=o.fontRef,p=void 0===f?{}:f,y=_objectWithoutProperties(t,["cNvSpPr","spPr","style"]);return _extends({},r,c,u,d,i,{textStyle:p},y)}}));return _extends({},a,{type:"shape",children:i})},Fallback:function(){return null},sdt:function(t,e){var r=e.content(t),n=r.find(">w\\:sdtPr"),i=r.find(">w\\:sdtContent"),o=i.children().toArray(),a=n.find("w\\:dataBinding").get(0);if(a){var c=a.attribs["w:xpath"],l=c.split(/[\/\:\[]/),u=(l.pop(),l.pop()),s=i.text();return{type:"property",name:u,value:s,children:o}}var d=function(){var t=n.get(0).children,a=t[t.length-1],c=a.name.split(":").pop(),l="text,picture,docPartList,docPartObj,comboBox,dropDownList,date,checkbox,repeatingSection,repeatingSectionItem".split(",").find(function(t){return t==c}),u={children:o};switch(l?u.type="control."+l:i.find("w\\:p,w\\:tbl,w\\:tr,w\\:tc").length?u.type="block":u.type="inline",r=e.content,u.type){case"control.dropDownList":case"control.comboBox":var s=function(){var t=r(i).text();return u.options=r(a).find("w\\:listItem").map(function(t,e){return{displayText:e.attribs["w:displayText"],value:e.attribs["w:value"]}}).get(),u.value=(u.options.find(function(e){return e.displayText==t})||{}).value,"break"}();if("break"===s)break;case"control.checkbox":var d=a.name.split(":")[0];u.checked="1"==r(a).find(d+"\\:checked").attr(d+":val");break;case"control.text":0==i.find("w\\:r [w\\:val~=Placeholder]").length&&(u.value=i.text());break;case"control.date":u.value=new Date(r(a).attr("w:fullDate")),u.format=r(a).find("w\\:dateFormat").attr("w:val"),u.locale=r(a).find("w\\:lid").attr("w:val")}return{v:u}}();if("object"===("undefined"==typeof d?"undefined":_typeof(d)))return d.v},hyperlink:function(t,e){if(t.attribs["r:id"]){var r=e.getRel(t.attribs["r:id"]);return{type:"hyperlink",url:r}}if(t.attribs["w:anchor"])return{type:"hyperlink",url:"#"+t.attribs["w:anchor"]}},tbl:function(t){return t.children.reduce(function(t,e){switch(e.name){case"w:tblPr":t.pr=e;break;case"w:tblGrid":t.cols=e.children;break;default:t.children.push(e)}return t},{type:"tbl",children:[],pr:null,cols:[]})},tr:function(t){return t.children.reduce(function(t,e){switch(e.name){case"w:trPr":t.pr=e,t.isHeader=!!e.children.find(function(t){return"w:tblHeader"==t.name});break;default:t.children.push(e)}return t},{type:"tr",children:[],pr:null})},tc:function(t){return t.children.reduce(function(t,e){switch(e.name){case"w:tcPr":t.pr=e;break;default:t.children.push(e)}return t},{type:"tc",children:[],pr:null})},altChunk:function(t,e){var r=t.attribs["r:id"],n=e.getRel(r),i=e.folder+e.rels("[Id="+r+"]").attr("Target"),o=e.doc.contentTypes("Override[PartName='"+i+"']").attr("ContentType");return{type:"chunk",data:n,contentType:o}},docDefaults:function(t){return{type:"style"}},style:function(t){return{type:"style",id:t.attribs["w:styleId"]}},abstractNum:function(t){return{type:"abstractNum",id:t.attribs["w:abstractNumId"]}},num:function(t){return{type:"num",id:t.attribs["w:numId"],abstractNum:t.children.find(function(t){return"w:abstractNumId"==t.name}).attribs["w:val"]}},latentStyles:function(){return null},object:function(t,e){var r=e.content(t).find("o\\:OLEObject"),n=r.attr("ProgID"),i="Embed"===r.attr("Type"),o=r.attr("r:id");return{type:"object",embed:i,prog:n,data:e.getRelOleObject(o)}}},exports.default=_class,module.exports=exports.default; },{"../drawml":6,"../officeDocument":7}],6:[function(require,module,exports){ -"use strict";function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _objectWithoutProperties(t,r){var e={};for(var n in t)r.indexOf(n)>=0||Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}Object.defineProperty(exports,"__esModule",{value:!0});var _extends=Object.assign||function(t){for(var r=1;r=0||Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}Object.defineProperty(exports,"__esModule",{value:!0});var _extends=Object.assign||function(t){for(var r=1;r=0||Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n]);return r}function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _possibleConstructorReturn(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(exports,"__esModule",{value:!0});var _slicedToArray=function(){function t(t,e){var r=[],n=!0,o=!1,i=void 0;try{for(var a,l=t[Symbol.iterator]();!(n=(a=l.next()).done)&&(r.push(a.value),!e||r.length!==e);n=!0);}catch(t){o=!0,i=t}finally{try{!n&&l.return&&l.return()}finally{if(o)throw i}}return r}return function(e,r){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,r);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),_extends=Object.assign||function(t){for(var e=1;ea\\:"+e[o]+"Font>a\\:"+("lt"==i?"latin":i)).attr("typeface"):t},color:function(t){var e=this("a\\:clrScheme>a\\:"+t).children().eq(0);return r.asColor(e.attr("lastClr")||e.attr("val"))},fillRef:function(t,e){return t=parseInt(t),0==t||1e3==t?{}:t>1e3?this("a\\:fmtScheme>a\\:bgFillStyleLst").children().eq(t-1001).props(n(e)):this("a\\:fmtScheme>a\\:fillStyleLst").children().eq(t-1).props(n(e))},lnRef:function(t,e){return this("a\\:fmtScheme>a\\:lnStyleLst").children().eq(parseInt(t)-1).props(n(e))},effectRef:function(t,e){return this("a\\:fmtScheme>a\\:effectStyleLst").children().eq(parseInt(t)-1).children("a\\:effectLst").props(n(e))},fontRef:function(t,e){var r=this("a\\:fmtScheme>a\\:fontScheme>a\\:"+t+"Font"),n=r.children("a\\:latin"),o=r.children("a\\:ea"),i=r.children("a\\:cs");return _extends({latin:n.attr("typeface"),ea:o.attr("typeface"),cs:i.attr("typeface")},e)}})}},{key:"_assignRel",value:function(t){var e=this;this.rels('Relationship[Target$=".xml"]').each(function(r,n){var o=e.rels(n),i=o.attr("Type").split("/").pop();if(t.indexOf(i)!=-1){var a=o.attr("Target");Object.defineProperty(e,i,{configurable:!0,get:function(){return this.getRelObject(a)}})}})}},{key:"render",value:function(t){arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.constructor.identify.bind(this.constructor)}}],[{key:"identify",value:function(t,e){var r=this.identities,n=t.name.split(":").pop();return r[n]?r[n].apply(r,arguments):n}}]),e}(_part2.default);_class.identities={},exports.default=_class,module.exports=exports.default; +"use strict";function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _objectWithoutProperties(t,e){var r={};for(var n in t)e.indexOf(n)>=0||Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n]);return r}function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _possibleConstructorReturn(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(exports,"__esModule",{value:!0});var _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_slicedToArray=function(){function t(t,e){var r=[],n=!0,o=!1,i=void 0;try{for(var a,l=t[Symbol.iterator]();!(n=(a=l.next()).done)&&(r.push(a.value),!e||r.length!==e);n=!0);}catch(t){o=!0,i=t}finally{try{!n&&l.return&&l.return()}finally{if(o)throw i}}return r}return function(e,r){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,r);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),_extends=Object.assign||function(t){for(var e=1;ea\\:"+e[o]+"Font>a\\:"+("lt"==i?"latin":i)).attr("typeface"):t},color:function(t){var e=this("a\\:clrScheme>a\\:"+t).children().eq(0);return r.asColor(e.attr("lastClr")||e.attr("val"))},fillRef:function(t,e){return t=parseInt(t),0==t||1e3==t?{}:t>1e3?this("a\\:fmtScheme>a\\:bgFillStyleLst").children().eq(t-1001).props(n(e)):this("a\\:fmtScheme>a\\:fillStyleLst").children().eq(t-1).props(n(e))},lnRef:function(t,e){return this("a\\:fmtScheme>a\\:lnStyleLst").children().eq(parseInt(t)-1).props(n(e))},effectRef:function(t,e){return this("a\\:fmtScheme>a\\:effectStyleLst").children().eq(parseInt(t)-1).children("a\\:effectLst").props(n(e))},fontRef:function(t,e){var r=this("a\\:fmtScheme>a\\:fontScheme>a\\:"+t+"Font"),n=r.children("a\\:latin"),o=r.children("a\\:ea"),i=r.children("a\\:cs");return _extends({latin:n.attr("typeface"),ea:o.attr("typeface"),cs:i.attr("typeface")},e)}})}},{key:"render",value:function(t){arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.constructor.identify.bind(this.constructor)}},{key:"parse",value:function(t){function e(){var e=r.apply(void 0,arguments);return e&&"object"==("undefined"==typeof e?"undefined":_typeof(e))&&(t.emit.apply(t,["*",e].concat(Array.prototype.slice.call(arguments))),t.emit.apply(t,[e.type,e].concat(Array.prototype.slice.call(arguments))),t["on"+e.type]&&t["on"+e.type].apply(t,[e].concat(Array.prototype.slice.call(arguments)))),e}var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.constructor.identify.bind(this.constructor),n=t.createElement.bind(t);return this.render(n,e)}}],[{key:"identify",value:function(t,e){var r=this.identities,n=t.name.split(":").pop();return r[n]?r[n].apply(r,arguments):n}}]),e}(_part2.default);_class.identities={},exports.default=_class,module.exports=exports.default; },{"./drawml":6,"./part":9}],8:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function parse(e){var t=_cfb2.default.parse(e),r=t.find("!ole10Native").content,n=r.slice(0,Math.min(r.length/2,512)).lastIndexOf(0)+1,i=r.indexOf(0,Math.min(n,r.length/2))-1;return new TextDecoder("utf-8").decode(new Uint8Array(r.slice(n,i)))}Object.defineProperty(exports,"__esModule",{value:!0}),exports.parse=parse;var _cfb=require("cfb"),_cfb2=_interopRequireDefault(_cfb); },{"cfb":20}],9:[function(require,module,exports){ -"use strict";function _interopRequireWildcard(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e.default=t,e}function _objectWithoutProperties(t,e){var r={};for(var a in t)e.indexOf(a)>=0||Object.prototype.hasOwnProperty.call(t,a)&&(r[a]=t[a]);return r}function _toConsumableArray(t){if(Array.isArray(t)){for(var e=0,r=Array(t.length);e0&&void 0!==arguments[0]?arguments[0]:"";return t.startsWith("/")?t.substr(1):this.folder+t}},{key:"getRelPart",value:function(e){var r=this.rels('Relationship[Id="'+e+'"]'),a=r.attr("Target");return new t(this.normalizePath(a),this.doc)}},{key:"getRelTarget",value:function(t){return this.rels('[Type$="'+t+'"]').attr("Target")}},{key:"getRelObject",value:function(t){return this.doc.getObjectPart(this.normalizePath(t))}},{key:"getRel",value:function(t){var e=this.rels('Relationship[Id="'+t+'"]'),r=e.attr("Target");if("External"===e.attr("TargetMode"))return{url:r};switch(e.attr("Type").split("/").pop()){case"image":var a=this.doc.getDataPartAsUrl(this.normalizePath(r),"image/*"),i=this.doc.getPartCrc32(this.normalizePath(r));return{url:a,crc32:i};default:return r.endsWith(".xml")?this.getRelObject(r):this.doc.getPart(this.normalizePath(r))}}},{key:"_nextrId",value:function(){return Math.max.apply(Math,_toConsumableArray(this.rels("Relationship").toArray().map(function(t){return parseInt(t.attribs.Id.substring(3))})))+1}},{key:"add",value:function(t,e,r){var a="rId"+this._nextrId();this.rels("Relationships").append('');var i=this.normalizePath(e);return this.doc.raw.file(i,r),this.doc.parts[i]=this.doc.raw.file(i),a}},{key:"addImage",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{ext:"jpg",mime:"image/jpg"},r=e.ext,a=e.mime,i="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",n="rId"+this._nextrId(),o="media/image"+(Math.max.apply(Math,[0].concat(_toConsumableArray(this.rels("Relationship[Type$='image']").toArray().map(function(t){return parseInt(t.attribs.Target.match(/\d+\./)||[0])}))))+1)+"."+r,s=this.normalizePath(o);this.doc.raw.file(s,t),this.doc.parts[s]=this.doc.raw.file(s),this.rels("Relationships").append('');var l=this.doc.getObjectPart("[Content_Types].xml")("Types"),h=l.find(">Default[Extension='"+r+"']");return 0==h.length&&l.prepend(''),n}},{key:"addExternalImage",value:function(t){var e="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",r="rId"+this._nextrId();return this.rels("Relationships").append(''),r}},{key:"addChunk",value:function(t,e,r,a){e=e||"http://schemas.openxmlformats.org/officeDocument/2006/relationships/aFChunk",r=r||this.doc.constructor.mime,a=a||this.doc.constructor.ext;var i=this._nextrId(),n="rId"+i,o="chunk/chunk"+i+"."+a,s=this.normalizePath(o);return this.doc.raw.file(s,t),this.doc.parts[s]=this.doc.raw.file(s),this.rels("Relationships").append(''),this.doc.contentTypes.append(''),n}},{key:"getRelOleObject",value:function(t){var e=this.rels("Relationship[Id="+t+"]"),r=e.attr("Type"),a=e.attr("Target"),i=this.doc.getDataPart(this.normalizePath(a));switch(r.split("/").pop()){case"oleObject":return OLE.parse(i);default:return i}}},{key:"removeRel",value:function(t){var e=this.rels('Relationship[Id="'+t+'"]');if("External"!==e.attr("TargetMode")){var r=this.normalizePath(e.attr("Target"));this.doc.contentTypes.find("[PartName='/"+r+"']").remove(),this.doc.raw.remove(r),delete this.doc.parts[r]}e.remove()}},{key:"renderNode",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(t,e,r){},r=this,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(t){return t.name.split(":").pop()},i=arguments[3],n=t.name,o=t.children,s=t.id;t.parent;if("text"==t.type)return t.data;var l=n,h={};if(a){var u=a(t,this);if(!u)return null;if("string"==typeof u)l=u;else{var c=void 0,d=u;l=d.type,c=d.children,h=_objectWithoutProperties(d,["type","children"]),void 0!==c&&(o=c)}}h.key=s,h.node=t,h.type=l,i&&Object.assign(h,i);var p=o;return Array.isArray(o)&&o.length&&(p=o.map(function(t){return t?r.renderNode(t,e,a):null}).filter(function(t){return!!t})),e(l,h,p)}},{key:"$",value:function(t){return this.doc.$(t)}}]),t}();exports.default=Part,module.exports=exports.default; +"use strict";function _interopRequireWildcard(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e.default=t,e}function _possibleConstructorReturn(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}function _objectWithoutProperties(t,e){var r={};for(var n in t)e.indexOf(n)>=0||Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n]);return r}function _toConsumableArray(t){if(Array.isArray(t)){for(var e=0,r=Array(t.length);e0&&void 0!==arguments[0])||arguments[0];this.rels('Relationship[Target$=".xml"]').each(function(r,n){var i=t.rels(n),a=i.attr("Type").split("/").pop();e!==!0&&e.indexOf(a)==-1||!function(){var e=i.attr("Target");Object.defineProperty(t,a,{configurable:!0,get:function(){return this.getRelObject(e)}})}()})}},{key:"normalizePath",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return t.startsWith("/")?t.substr(1):this.folder+t}},{key:"getRelPart",value:function(e){var r=this.rels('Relationship[Id="'+e+'"],Relationship[Type$="'+e+'"],Relationship[Target$="'+e+'"]'),n=r.attr("Target");return new t(this.normalizePath(n),this.doc)}},{key:"getRelTarget",value:function(t){return this.rels('[Type$="'+t+'"]').attr("Target")}},{key:"getRelObject",value:function(t){return this.doc.getObjectPart(this.normalizePath(t))}},{key:"getRel",value:function(t){var e=this.rels('Relationship[Id="'+t+'"]'),r=e.attr("Target");if(r){if("External"===e.attr("TargetMode"))return{url:r};switch(e.attr("Type").split("/").pop()){case"image":var n=this.doc.getDataPartAsUrl(this.normalizePath(r),"image/*"),i=this.doc.getPartCrc32(this.normalizePath(r));return{url:n,crc32:i};default:return r.endsWith(".xml")?this.getRelObject(r):this.doc.getPart(this.normalizePath(r))}}}},{key:"_nextrId",value:function(){return Math.max.apply(Math,_toConsumableArray(this.rels("Relationship").toArray().map(function(t){return parseInt(t.attribs.Id.substring(3))})))+1}},{key:"add",value:function(t,e,r){var n="rId"+this._nextrId();this.rels("Relationships").append('');var i=this.normalizePath(e);return this.doc.raw.file(i,r),this.doc.parts[i]=this.doc.raw.file(i),n}},{key:"addImage",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{ext:"jpg",mime:"image/jpg"},r=e.ext,n=e.mime,i="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",a="rId"+this._nextrId(),o="media/image"+(Math.max.apply(Math,[0].concat(_toConsumableArray(this.rels("Relationship[Type$='image']").toArray().map(function(t){return parseInt(t.attribs.Target.match(/\d+\./)||[0])}))))+1)+"."+r,s=this.normalizePath(o);this.doc.raw.file(s,t),this.doc.parts[s]=this.doc.raw.file(s),this.rels("Relationships").append('');var l=this.doc.getObjectPart("[Content_Types].xml")("Types"),u=l.find(">Default[Extension='"+r+"']");return 0==u.length&&l.prepend(''),a}},{key:"addExternalImage",value:function(t){var e="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",r="rId"+this._nextrId();return this.rels("Relationships").append(''),r}},{key:"addChunk",value:function(t,e,r,n){e=e||"http://schemas.openxmlformats.org/officeDocument/2006/relationships/aFChunk",r=r||this.doc.constructor.mime,n=n||this.doc.constructor.ext;var i=this._nextrId(),a="rId"+i,o="chunk/chunk"+i+"."+n,s=this.normalizePath(o);return this.doc.raw.file(s,t),this.doc.parts[s]=this.doc.raw.file(s),this.rels("Relationships").append(''),this.doc.contentTypes.append(''),a}},{key:"getRelOleObject",value:function(t){var e=this.rels("Relationship[Id="+t+"]"),r=e.attr("Type"),n=e.attr("Target"),i=this.doc.getDataPart(this.normalizePath(n));switch(r.split("/").pop()){case"oleObject":return OLE.parse(i);default:return i}}},{key:"removeRel",value:function(t){var e=this.rels('Relationship[Id="'+t+'"]');if("External"!==e.attr("TargetMode")){var r=this.normalizePath(e.attr("Target"));this.doc.contentTypes.find("[PartName='/"+r+"']").remove(),this.doc.raw.remove(r),delete this.doc.parts[r]}e.remove()}},{key:"renderNode",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(t,e,r){},r=this,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(t){return t.name.split(":").pop()},i=arguments[3],a=t.name,o=t.children,s=t.id;t.parent;if("text"==t.type)return t.data;var l=a,u={};if(n){var c=n(t,this);if(!c)return null;if("string"==typeof c)l=c;else{var h=void 0,p=c;l=p.type,h=p.children,u=_objectWithoutProperties(p,["type","children"]),void 0!==h&&(o=h)}}u.key=s,u.node=t,u.type=l,i&&Object.assign(u,i);var f=o;return Array.isArray(o)&&o.length&&(f=o.map(function(t){return t?r.renderNode(t,e,n):null}).filter(function(t){return!!t})),e(l,u,f)}},{key:"$",value:function(t){return this.doc.$(t)}}]),t}();exports.default=Part;var RelsPart=function(t){function e(){return _classCallCheck(this,e),_possibleConstructorReturn(this,(e.__proto__||Object.getPrototypeOf(e)).apply(this,arguments))}return _inherits(e,t),_createClass(e,[{key:"_init",value:function(){_get(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"_init",this).call(this)}}]),e}(Part);module.exports=exports.default; },{"./ole":8}],10:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _possibleConstructorReturn(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(exports,"__esModule",{value:!0});var _document=require("../document"),_document2=_interopRequireDefault(_document),_officeDocument=require("./officeDocument"),_officeDocument2=_interopRequireDefault(_officeDocument),_class=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}return _inherits(t,e),t}(_document2.default);_class.ext="pptx",_class.mime="application/vnd.openxmlformats-officedocument.presentationml.presentation",_class.OfficeDocument=_officeDocument2.default,exports.default=_class,module.exports=exports.default; },{"../document":3,"./officeDocument":11}],11:[function(require,module,exports){ -"use strict";function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _objectWithoutProperties(t,e){var r={};for(var n in t)e.indexOf(n)>=0||Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n]);return r}function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _possibleConstructorReturn(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(exports,"__esModule",{value:!0});var _extends=Object.assign||function(t){for(var e=1;e1&&void 0!==arguments[1]?arguments[1]:this.constructor.identify.bind(this.constructor);return this.tableStyles&&this.renderNode(this.tableStyles.root().children().get(0),t,e),this.renderNode(this.content("p\\:presentation").get(0),t,e)}},{key:"slide",value:function(t){var e=(t.id,t["r:id"]);return this.getRel(e)}},{key:"master",value:function(t){t.id,t["r:id"];return this.slide.apply(this,arguments)}},{key:"notesMaster",value:function(){return this.slide.apply(this,arguments)}},{key:"handoutMaster",value:function(){return this.slide.apply(this,arguments)}},{key:"masterPartOfLayout",value:function(t){var e=this.$(t).root().get(0),r=e.attribs.part;return this.doc.getRelObject(r)}}]),e}(_officeDocument2.default);OfficeDocument.identities={presentation:function(t,e){var r=e.content("p\\:presentation"),n="p\\:handoutMasterIdLst,p\\:notesMasterIdLst,p\\:sldIdLst,p\\:sldMasterIdLst",o=r.children(n).toArray(),i={"p:sldMasterIdLst":1,"p:sldIdLst":2};o.sort(function(t,e){return(i[t.name]||99)-(i[e.name]||99)});var a=function(t){var r=t.attribs,n=r.cx,o=r.cy;return{width:e.doc.emu2Px(n),height:e.doc.emu2Px(o)}},s=r.props(_extends({},(0,_drawml2.default)(e),{__filter:":not("+n+",a\\:extLst)",sldSz:a,notesSz:a}));return _extends({},s,{type:"document",children:o})},sldMasterId:function(t,e){var r="p\\:sldLayoutIdLst,p\\:cSld",n=e.master(t.attribs),o=n("p\\:sldMaster"),i=o.props(_extends({},(0,_drawml2.default)(e),{__filter:":not("+r+",a\\:extLst)"})),a=o.children(r).toArray(),s={"p:sldLayoutLst":1,"p:cSld":2};return a.sort(function(t,e){return(s[t.name]||99)-(s[e.name]||99)}),_extends({},i,{part:n.part,children:a,type:"slideMaster"})},sldId:function(t,e){var r="p\\:cSld",n=e.slide(t.attribs),o=n("p\\:sld"),i=o.props(_extends({},(0,_drawml2.default)(e),{__filter:":not("+r+",a\\:extLst)"})),a=o.children(r).toArray(),s=e.getRelPart(t.attribs["r:id"]),d=e.doc.normalizePath(s.normalizePath(s.getRelTarget("slideLayout"))),l=new _part2.default(d,e.doc),u=e.doc.normalizePath(l.normalizePath(l.getRelTarget("slideMaster")));return _extends({},i,{part:n.part,layout:d,master:u,children:a,type:"slide"})},notesMasterId:function(t,e){var r=e.notesMaster(t.attribs);return{part:r.part,type:"noteMaster"}},handoutMasterId:function(t,e){var r=e.handoutMaster(t.attribs);return{part:r.part,type:"handoutMaster"}},sldLayoutId:function(t,e){var r="p\\:cSld",n=e.$(t).part(),o=new _part2.default(n,e.doc).getRel(t.attribs["r:id"]),i=o("p\\:sldLayout"),a=i.props({__filter:":not("+r+",a\\:extLst)"}),s=i.children(r).toArray();return _extends({},a,{part:o.part,master:n,children:s,type:"slideLayout"})},spTree:function(t,e){var r=":not(p\\:nvGrpSpPr,p\\:grpSpPr)",n=e.$(t),o=n.children(r).toArray(),i=e.$(t).props(_extends({},(0,_drawml2.default)(e),{__filter:"p\\:nvGrpSpPr,p\\:grpSpPr",tidy:function(t){var e=t.grpSpPr,r=t.nvGrpSpPr,n=r.cNvPr,o=void 0===n?{}:n,i=r.cNvSpPr,a=void 0===i?{}:i,s=r.nvPr,d=void 0===s?{}:s,l=_objectWithoutProperties(t,["grpSpPr","nvGrpSpPr"]);return _extends({},e,o,a,d,l)}}));return _extends({},i,{type:"spTree",children:o})},pic:function(t,e){var r=e.$(t).props(_extends({},(0,_drawml2.default)(e),{tidy:function(t){var e=t.spPr,r=t.nvPicPr,n=r.cNvPr,o=void 0===n?{}:n,i=r.cNvSpPr,a=void 0===i?{}:i,s=r.nvPr,d=void 0===s?{}:s,l=_objectWithoutProperties(t,["spPr","nvPicPr"]);return _extends({},e,o,a,d,l)}}));return _extends({},r,{type:"picture"})},sp:function(t,e){var r="p\\:txBody",n=e.$(t),o=n.children(r).toArray(),i=(0,_drawml2.default)(e),a=_extends({spLocks:"locks",ph:"placeholder"},i.names),s=n.props(_extends({},i,{__filter:":not("+r+",a\\:extLst)",names:a,ph:function(t){var e=t.attribs,r=e.type,n=void 0===r?"body":r,o=e.idx;return{type:n,idx:o}},tidy:function(t){var e=t.spPr,r=t.nvSpPr,n=r.cNvPr,o=void 0===n?{}:n,i=r.cNvSpPr,a=void 0===i?{}:i,s=r.nvPr,d=void 0===s?{}:s;return _extends({},e,o,a,d)}})),d=OfficeDocument.identities.txBody(o[0],e);return _extends({},s,{children:o},d,{type:"shape"})},txBody:function(t,e){var r=e.$(t),n=r.children("a\\:p").toArray(),o=r.props(_extends({},(0,_drawml2.default)(e),{lnSpcReduction:function(t){return parseInt(t)},fontScale:function(t){return parseInt(t)},__filter:":not(a\\:p,a\\:extLst)",tidy:function(t){var e=t.lstStyle,r=void 0===e?{}:e,n=t.bodyPr,o=void 0===n?{}:n,i=_objectWithoutProperties(t,["lstStyle","bodyPr"]);return _extends({},i,o,r)}}));return{textStyle:o,children:n,type:"txBody"}},p:function(t,e){var r=":not(a\\:pPr,a\\:endParaRPr)",n=e.$(t),o=n.children(r).toArray(),i=n.children("a\\:pPr").props((0,_drawml2.default)(e)),a=n.children("a\\:endParaRPr").props((0,_drawml2.default)(e));return{style:_extends({lvl:0},i),defaultStyle:a,children:o,type:"p"}},r:function(t,e){var r=":not(a\\:rPr)",n=e.$(t),o=n.children(r).toArray(),i=n.children("a\\:rPr").props(_extends({},(0,_drawml2.default)(e)));return{style:i,children:o,type:"r"}},chart:function(t,e){return{type:"chart"}},relIds:function(t,e){return{type:"diagram"}},graphicFrame:function(t,e){var r="a\\:graphic",n=e.$(t),o=n.children(r).toArray(),i=n.props(_extends({},(0,_drawml2.default)(e),{__filter:":not("+r+",a\\:extLst)",tidy:function(t){var e=t.spPr,r=t.nvGraphicFramePr,n=r.cNvPr,o=void 0===n?{}:n,i=r.cNvSpPr,a=void 0===i?{}:i,s=r.nvPr,d=void 0===s?{}:s,l=_objectWithoutProperties(t,["spPr","nvGraphicFramePr"]);return _extends({},e,o,a,d,l)}}));return _extends({},i,{children:o,type:"graphicFrame"})},tbl:function(t,e){var r="a\\:tr",n=e.$(t),o=n.children(r).toArray(),i=n.props(_extends({},(0,_drawml2.default)(e),{__filter:":not("+r+", a\\:extLst)",tableStyleId:function(t){var e=t.children;return e.find(function(t){return t.data}).data},tblGrid:function(t){var r=t.children;return r.filter(function(t){return t.name}).reduce(function(t,r){var n=r.attribs.w;return t.push(e.doc.emu2Px(n)),t},[])},tidy:function(t){var e=t.tblPr,r=t.tblGrid,n=_objectWithoutProperties(t,["tblPr","tblGrid"]);return _extends({},e,{cols:r},n)}}));return _extends({},i,{children:o,type:"tbl"})},tblStyle:function(t,e){var r=e.$(t),n=r.props((0,_drawml2.default)(e));return _extends({},n,{type:"tblStyle"})},tr:function(t,e){var r=e.$(t),n=r.props(_extends({},(0,_drawml2.default)(e),{__filter:":not(*)",h:function(t){return e.doc.emu2Px(t)},names:{h:"height"}}));return _extends({},n,{children:t.children,type:"tr"})},tc:function(t,e){var r="a\\:txBody",n=e.$(t),o=n.children(r).toArray(),i=n.props({__filter:":not("+r+",a\\:extLst)"});return _extends({},i,{type:"tc",children:o})}},exports.default=OfficeDocument,module.exports=exports.default; +"use strict";function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _objectWithoutProperties(t,e){var r={};for(var n in t)e.indexOf(n)>=0||Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n]);return r}function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _possibleConstructorReturn(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(exports,"__esModule",{value:!0});var _extends=Object.assign||function(t){for(var e=1;e1&&void 0!==arguments[1]?arguments[1]:this.constructor.identify.bind(this.constructor);return this.tableStyles&&this.renderNode(this.tableStyles.root().children().get(0),t,e),this.renderNode(this.content("p\\:presentation").get(0),t,e)}},{key:"parse",value:function(t){function e(){var e=r.apply(void 0,arguments);return e&&"object"==("undefined"==typeof e?"undefined":_typeof(e))&&(t.emit.apply(t,["*",e].concat(Array.prototype.slice.call(arguments))),t.emit.apply(t,[e.type,e].concat(Array.prototype.slice.call(arguments))),t["on"+e.type]&&t["on"+e.type].apply(t,[e].concat(Array.prototype.slice.call(arguments)))),e}var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.constructor.identify.bind(this.constructor),n=t.createElement.bind(t);return this.render(n,e)}},{key:"slide",value:function(t){var e=(t.id,t["r:id"]);return this.getRel(e)}},{key:"master",value:function(t){t.id,t["r:id"];return this.slide.apply(this,arguments)}},{key:"notesMaster",value:function(){return this.slide.apply(this,arguments)}},{key:"handoutMaster",value:function(){return this.slide.apply(this,arguments)}},{key:"masterPartOfLayout",value:function(t){var e=this.$(t).root().get(0),r=e.attribs.part;return this.doc.getRelObject(r)}}]),e}(_officeDocument2.default);OfficeDocument.identities={presentation:function(t,e){var r=e.content("p\\:presentation"),n="p\\:handoutMasterIdLst,p\\:notesMasterIdLst,p\\:sldIdLst,p\\:sldMasterIdLst",o=r.children(n).toArray(),i={"p:sldMasterIdLst":1,"p:sldIdLst":2};o.sort(function(t,e){return(i[t.name]||99)-(i[e.name]||99)});var a=function(t){var r=t.attribs,n=r.cx,o=r.cy;return{width:e.doc.emu2Px(n),height:e.doc.emu2Px(o)}},s=r.props(_extends({},(0,_drawml2.default)(e),{__filter:":not("+n+",a\\:extLst)",sldSz:a,notesSz:a}));return _extends({},s,{type:"document",children:o})},sldMasterId:function(t,e){var r="p\\:sldLayoutIdLst,p\\:cSld",n=e.master(t.attribs),o=n("p\\:sldMaster"),i=o.props(_extends({},(0,_drawml2.default)(e),{__filter:":not("+r+",a\\:extLst)"})),a=o.children(r).toArray(),s={"p:sldLayoutLst":1,"p:cSld":2};return a.sort(function(t,e){return(s[t.name]||99)-(s[e.name]||99)}),_extends({},i,{part:n.part,children:a,type:"slideMaster"})},sldId:function(t,e){var r="p\\:cSld",n=e.slide(t.attribs),o=n("p\\:sld"),i=o.props(_extends({},(0,_drawml2.default)(e),{__filter:":not("+r+",a\\:extLst)"})),a=o.children(r).toArray(),s=e.getRelPart(t.attribs["r:id"]),l=e.doc.normalizePath(s.normalizePath(s.getRelTarget("slideLayout"))),p=new _part2.default(l,e.doc),d=e.doc.normalizePath(p.normalizePath(p.getRelTarget("slideMaster")));return _extends({},i,{part:n.part,layout:l,master:d,children:a,type:"slide"})},notesMasterId:function(t,e){var r=e.notesMaster(t.attribs);return{part:r.part,type:"noteMaster"}},handoutMasterId:function(t,e){var r=e.handoutMaster(t.attribs);return{part:r.part,type:"handoutMaster"}},sldLayoutId:function(t,e){var r="p\\:cSld",n=e.$(t).part(),o=new _part2.default(n,e.doc).getRel(t.attribs["r:id"]),i=o("p\\:sldLayout"),a=i.props({__filter:":not("+r+",a\\:extLst)"}),s=i.children(r).toArray();return _extends({},a,{part:o.part,master:n,children:s,type:"slideLayout"})},spTree:function(t,e){var r=":not(p\\:nvGrpSpPr,p\\:grpSpPr)",n=e.$(t),o=n.children(r).toArray(),i=e.$(t).props(_extends({},(0,_drawml2.default)(e),{__filter:"p\\:nvGrpSpPr,p\\:grpSpPr",tidy:function(t){var e=t.grpSpPr,r=t.nvGrpSpPr,n=r.cNvPr,o=void 0===n?{}:n,i=r.cNvSpPr,a=void 0===i?{}:i,s=r.nvPr,l=void 0===s?{}:s,p=_objectWithoutProperties(t,["grpSpPr","nvGrpSpPr"]);return _extends({},e,o,a,l,p)}}));return _extends({},i,{type:"spTree",children:o})},pic:function(t,e){var r=e.$(t).props(_extends({},(0,_drawml2.default)(e),{tidy:function(t){var e=t.spPr,r=t.nvPicPr,n=r.cNvPr,o=void 0===n?{}:n,i=r.cNvSpPr,a=void 0===i?{}:i,s=r.nvPr,l=void 0===s?{}:s,p=_objectWithoutProperties(t,["spPr","nvPicPr"]);return _extends({},e,o,a,l,p)}}));return _extends({},r,{type:"picture"})},sp:function(t,e){var r="p\\:txBody",n=e.$(t),o=n.children(r).toArray(),i=(0,_drawml2.default)(e),a=_extends({spLocks:"locks",ph:"placeholder"},i.names),s=n.props(_extends({},i,{__filter:":not("+r+",a\\:extLst)",names:a,ph:function(t){var e=t.attribs,r=e.type,n=void 0===r?"body":r,o=e.idx;return{type:n,idx:o}},tidy:function(t){var e=t.spPr,r=t.nvSpPr,n=r.cNvPr,o=void 0===n?{}:n,i=r.cNvSpPr,a=void 0===i?{}:i,s=r.nvPr,l=void 0===s?{}:s;return _extends({},e,o,a,l)}})),l=OfficeDocument.identities.txBody(o[0],e);return _extends({},s,{children:o},l,{type:"shape"})},txBody:function(t,e){var r=e.$(t),n=r.children("a\\:p").toArray(),o=r.props(_extends({},(0,_drawml2.default)(e),{lnSpcReduction:function(t){return parseInt(t)},fontScale:function(t){return parseInt(t)},__filter:":not(a\\:p,a\\:extLst)",tidy:function(t){var e=t.lstStyle,r=void 0===e?{}:e,n=t.bodyPr,o=void 0===n?{}:n,i=_objectWithoutProperties(t,["lstStyle","bodyPr"]);return _extends({},i,o,r)}}));return{textStyle:o,children:n,type:"txBody"}},p:function(t,e){var r=":not(a\\:pPr,a\\:endParaRPr)",n=e.$(t),o=n.children(r).toArray(),i=n.children("a\\:pPr").props((0,_drawml2.default)(e)),a=n.children("a\\:endParaRPr").props((0,_drawml2.default)(e));return{style:_extends({lvl:0},i),defaultStyle:a,children:o,type:"p"}},r:function(t,e){var r=":not(a\\:rPr)",n=e.$(t),o=n.children(r).toArray(),i=n.children("a\\:rPr").props(_extends({},(0,_drawml2.default)(e)));return{style:i,children:o,type:"r"}},chart:function(t,e){return{type:"chart"}},relIds:function(t,e){return{type:"diagram"}},graphicFrame:function(t,e){var r="a\\:graphic",n=e.$(t),o=n.children(r).toArray(),i=n.props(_extends({},(0,_drawml2.default)(e),{__filter:":not("+r+",a\\:extLst)",tidy:function(t){var e=t.spPr,r=t.nvGraphicFramePr,n=r.cNvPr,o=void 0===n?{}:n,i=r.cNvSpPr,a=void 0===i?{}:i,s=r.nvPr,l=void 0===s?{}:s,p=_objectWithoutProperties(t,["spPr","nvGraphicFramePr"]);return _extends({},e,o,a,l,p)}}));return _extends({},i,{children:o,type:"graphicFrame"})},tbl:function(t,e){var r="a\\:tr",n=e.$(t),o=n.children(r).toArray(),i=n.props(_extends({},(0,_drawml2.default)(e),{__filter:":not("+r+", a\\:extLst)",tableStyleId:function(t){var e=t.children;return e.find(function(t){return t.data}).data},tblGrid:function(t){var r=t.children;return r.filter(function(t){return t.name}).reduce(function(t,r){var n=r.attribs.w;return t.push(e.doc.emu2Px(n)),t},[])},tidy:function(t){var e=t.tblPr,r=t.tblGrid,n=_objectWithoutProperties(t,["tblPr","tblGrid"]);return _extends({},e,{cols:r},n)}}));return _extends({},i,{children:o,type:"tbl"})},tblStyle:function(t,e){var r=e.$(t),n=r.props((0,_drawml2.default)(e));return _extends({},n,{type:"tblStyle"})},tr:function(t,e){var r=e.$(t),n=r.props(_extends({},(0,_drawml2.default)(e),{__filter:":not(*)",h:function(t){return e.doc.emu2Px(t)},names:{h:"height"}}));return _extends({},n,{children:t.children,type:"tr"})},tc:function(t,e){var r="a\\:txBody",n=e.$(t),o=n.children(r).toArray(),i=n.props({__filter:":not("+r+",a\\:extLst)"});return _extends({},i,{type:"tc",children:o})}},exports.default=OfficeDocument,module.exports=exports.default; },{"../drawml":6,"../officeDocument":7,"../part":9}],12:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _possibleConstructorReturn(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(exports,"__esModule",{value:!0});var _document=require("../document"),_document2=_interopRequireDefault(_document),_officeDocument=require("./officeDocument"),_officeDocument2=_interopRequireDefault(_officeDocument),_class=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}return _inherits(t,e),t}(_document2.default);_class.ext="xlsx",_class.mime="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",_class.OfficeDocument=_officeDocument2.default,exports.default=_class,module.exports=exports.default; @@ -40,7 +40,7 @@ require=(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c= "use strict";function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _toConsumableArray(t){if(Array.isArray(t)){for(var e=0,r=Array(t.length);e=0||Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n]);return r}function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _possibleConstructorReturn(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}function colStrToInt(t){var e=t.substr(-1).charCodeAt(0)-A;return t.length>1?26*(colStrToInt(t.substring(0,t.length-1))+1)+e:e}function colIntToStr(t){var e=String.fromCharCode(A+t%26);return t>=26?colIntToStr(parseInt(t/26)-1)+e:e}Object.defineProperty(exports,"__esModule",{value:!0});var _slicedToArray=function(){function t(t,e){var r=[],n=!0,o=!1,i=void 0;try{for(var a,s=t[Symbol.iterator]();!(n=(a=s.next()).done)&&(r.push(a.value),!e||r.length!==e);n=!0);}catch(t){o=!0,i=t}finally{try{!n&&s.return&&s.return()}finally{if(o)throw i}}return r}return function(e,r){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,r);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),_extends=Object.assign||function(t){for(var e=1;ea\\:"+ColorIndex[parseInt(t)]).children().first();return r.asColor(e.attr("lastClr")||e.attr("val"))},this.color=function(e){var r=e.attribs,n=r.rgb,o=r.theme,i=r.indexed,a=r.tint,s=n&&"#"+n.substr(2)||o&&t.theme.color(o)||void 0!=i&&""+XLSIcv[parseInt(i)];return a?t.doc.asColor(s,{tint:parseFloat(a)}):s}}},{key:"cellPlainText",value:function(t,e,r){e+=1,r=colIntToStr(r);var n=this.sheet(this.content("sheets>sheet").get(t).attribs),o=n("worksheet>sheetData>row[r="+e+"]>c[r='"+r+e+"']>v").text();return o?this.sharedStrings.eq(o).text():""}},{key:"sheet",value:function(t){var e=t["r:id"];return this.getRel(e)}},{key:"render",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.constructor.identify.bind(this.constructor);return this.renderNode(this.styles("styleSheet").get(0),t,e),this.renderNode(this.content("workbook").get(0),t,e)}}]),e}(_officeDocument2.default);OfficeDocument.colStrToInt=colStrToInt,OfficeDocument.colIntToStr=colIntToStr,OfficeDocument.identities={workbook:function(t,e){var r=e.content("sheets"),n=r.children("sheet").toArray();return{type:"workbook",children:n}},sst:function(t,e){var r=t.attribs,n=r.count,o=r.uniqueCount;return{type:"sharedStrings",count:parseInt(n),uniqueCount:parseInt(o)}},sheet:function(t,e){var r=e.sheet(t.attribs),n=r("sheetFormatPr").get(0),o=n.attribs,i=o.baseColWidth,a=o.defaultRowHeight,s=r("sheetData>row").toArray(),l=t.attribs,c=(l["r:id"],_objectWithoutProperties(l,["r:id"])),u="customWidth,min,max,style,hidden".split(",").reduce(function(t,e){return t[e]=parseInt,t},{width:parseFloat,tidy:function(t){var e=t.min,r=t.max,n=_objectWithoutProperties(t,["min","max"]);return _extends({},n,{min:e-1,max:r-1})}});return _extends({},c,{type:"sheet",children:s,cols:r("cols").children().map(function(t,e){return r(e).props(u)}).get(),colWidth:parseFloat(i),rowHeight:parseFloat(a),view:r("sheetViews>sheetView").props({xSplit:parseInt,ySplit:parseInt})})},row:function(t,e){var r=e.$(t),n=t.attribs,o=n.customFormat,i=n.hidden,a=n.s,s=n.style,l=void 0===s?o&&parseInt(a)||void 0:s,c=n.r,u=n.customHeight,d=n.ht,p=n.height,f=void 0===p?d&&parseFloat(d)*(e.doc.precision||1):p,h=r.children("c").toArray();return{type:"row",children:h,customHeight:u,height:f,i:parseInt(c)-1,style:l,hidden:i}},c:function(t,e){var r=t.attribs,n=r.r,o=r.s,i=e.$(t).children().toArray(),a=/([A-Z]+)(\d+$)/.exec(n),s=_slicedToArray(a,3),l=s[1],c=s[2];return{type:"cell",name:""+(parseInt(c)-1)+l,col:colStrToInt(l),row:parseInt(c)-1,children:i,style:void 0!=o?parseInt(o):void 0}},v:function(t,e){var r=t.parent.attribs.t,n=_slicedToArray(t.children,1),o=n[0].data;switch(r){case"i":return{type:"paragraph",kind:r,children:[].concat(_toConsumableArray(t.children))};case"s":e.$(t).empty().append(e.sharedStrings.eq(o).clone().children());break;default:e.$(t).empty().append(""+o+"")}return t.parent.attribs.t="i",{type:"paragraph",kind:r,children:[].concat(_toConsumableArray(t.children))}},is:function(t,e){return t.name="v",{type:"paragraph",kind:"is",children:[].concat(_toConsumableArray(t.children))}},r:function(t,e){var r=e.$(t).find(">rPr").props(TextStyle(e));return{type:"run",style:r,children:t.children.filter(function(t){var e=t.name;return"rPr"!=e})}},numFmt:function(t,e){return _extends({children:null},e.styles(t).props())},cellStyle:function(t,e){return _extends({children:null},e.styles(t).props())},xf:function(t,e){return _extends({children:null},e.styles(t).props(_extends({names:{wrapText:"wrap",horizontal:"align",vertical:"vertAlign"},wrapText:function(t){return"true"==t||"1"==t}},parseInt4Keys("numFmtId,fontId,fillId,borderId,xfId,applyNumberFormat,applyFont,applyFill,applyBorder,applyAlignment"),{tidy:function(t){var e=t.applyNumberFormat,r=t.applyFont,n=t.applyFill,o=t.applyBorder,i=t.applyAlignment,a=_objectWithoutProperties(t,["applyNumberFormat","applyFont","applyFill","applyBorder","applyAlignment"]);return 0==e&&delete a.numFmtId,0==r&&delete a.fontId,0==n&&delete a.fillId,0==o&&delete a.borderId,0==i&&delete a.alignment,a}})))},tableStyle:function(t,e){return _extends({children:null},e.styles(t).props())},font:function(t,e){return _extends({children:null},e.styles(t).props(TextStyle(e)))},fill:function(t,e){return _extends({children:null},e.styles(t).props({bgColor:e.color,fgColor:e.color,tidy:function(t){var e=t.patternFill,r=e.fgColor,n=e.patternType;if("none"==n)return{};if(n&&n.startsWith("gray")){var o=Number(parseInt(n.substring(4))).toString(16);return{background:"#"+o+o+o}}return{background:r}}}))},border:function(t,e){return _extends({children:null},e.styles(t).props({color:e.color,tidy_left:tidy_border,tidy_right:tidy_border,tidy_bottom:tidy_border,tidy_top:tidy_border,tidy_diagonal:tidy_border}))}},exports.default=OfficeDocument;var parseInt4Keys=function(t){return t.split(",").reduce(function(t,e){return t[e]=parseInt,t},{})},ColorIndex="lt1,dk1,lt2,dk2,accent1,accent2,accent3,accent4,accent5,accent6,hlink,folHlink".split(","),tidy_border=function(t){var e=t.style,r=_objectWithoutProperties(t,["style"]);switch(e){case"thin":r.sz=1}return r},TextStyle=function(t){return{__filter:":not(scheme,family,charset)",names:{rFont:"fonts",name:"fonts",sz:"size",b:"bold",i:"italic",u:"underline",vanish:"hidden"},rFont:function(t){var e=t.attribs.val;return e},name:function(t){var e=t.attribs.val;return e},b:function(t){var e=t.attribs.val,r=void 0===e||e;return!!r},i:function(t){var e=t.attribs.val,r=void 0===e||e;return!!r},u:function(t){var e=t.attribs.val,r=void 0===e?"single":e;return r},vanish:function(t){var e=t.attribs.val,r=void 0===e||e;return!!r},sz:function(e){var r=e.attribs.val;return t.doc.pt2Px(parseInt(r))},color:t.color}},XLSIcv=["#000000","#FFFFFF","#FF0000","#00FF00","#0000FF","#FFFF00","#FF00FF","#00FFFF","#000000","#FFFFFF","#FF0000","#00FF00","#0000FF","#FFFF00","#FF00FF","#00FFFF","#800000","#008000","#000080","#808000","#800080","#008080","#C0C0C0","#808080","#9999FF","#993366","#FFFFCC","#CCFFFF","#660066","#FF8080","#0066CC","#CCCCFF","#000080","#FF00FF","#FFFF00","#00FFFF","#800080","#800000","#008080","#0000FF","#00CCFF","#CCFFFF","#CCFFCC","#FFFF99","#99CCFF","#FF99CC","#CC99FF","#FFCC99","#3366FF","#33CCCC","#99CC00","#FFCC00","#FF9900","#FF6600","#666699","#969696","#003366","#339966","#003300","#333300","#993300","#993366","#333399","#333333","#000000","#000000","#000000","#000000","#000000","#000000","#000000","#000000","#000000","#000000","#000000","#000000","#000000","#000000","#000000","#000000","#000000","#000000"];module.exports=exports.default; },{"../officeDocument":7}],14:[function(require,module,exports){ -"use strict";function getLens(o){var r=o.length;if(r%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var e=o.indexOf("=");e===-1&&(e=r);var t=e===r?0:4-e%4;return[e,t]}function byteLength(o){var r=getLens(o),e=r[0],t=r[1];return 3*(e+t)/4-t}function _byteLength(o,r,e){return 3*(r+e)/4-e}function toByteArray(o){var r,e,t=getLens(o),n=t[0],u=t[1],p=new Arr(_byteLength(o,n,u)),a=0,h=u>0?n-4:n;for(e=0;e>16&255,p[a++]=r>>8&255,p[a++]=255&r;return 2===u&&(r=revLookup[o.charCodeAt(e)]<<2|revLookup[o.charCodeAt(e+1)]>>4,p[a++]=255&r),1===u&&(r=revLookup[o.charCodeAt(e)]<<10|revLookup[o.charCodeAt(e+1)]<<4|revLookup[o.charCodeAt(e+2)]>>2,p[a++]=r>>8&255,p[a++]=255&r),p}function tripletToBase64(o){return lookup[o>>18&63]+lookup[o>>12&63]+lookup[o>>6&63]+lookup[63&o]}function encodeChunk(o,r,e){for(var t,n=[],u=r;ua?a:p+u));return 1===t?(r=o[e-1],n.push(lookup[r>>2]+lookup[r<<4&63]+"==")):2===t&&(r=(o[e-2]<<8)+o[e-1],n.push(lookup[r>>10]+lookup[r>>4&63]+lookup[r<<2&63]+"=")),n.join("")}exports.byteLength=byteLength,exports.toByteArray=toByteArray,exports.fromByteArray=fromByteArray;for(var lookup=[],revLookup=[],Arr="undefined"!=typeof Uint8Array?Uint8Array:Array,code="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i=0,len=code.length;i0)throw new Error("Invalid string. Length must be a multiple of 4");return"="===o[r-2]?2:"="===o[r-1]?1:0}function byteLength(o){return 3*o.length/4-placeHoldersCount(o)}function toByteArray(o){var r,e,t,u,n,p,a=o.length;n=placeHoldersCount(o),p=new Arr(3*a/4-n),t=n>0?a-4:a;var l=0;for(r=0,e=0;r>16&255,p[l++]=u>>8&255,p[l++]=255&u;return 2===n?(u=revLookup[o.charCodeAt(r)]<<2|revLookup[o.charCodeAt(r+1)]>>4,p[l++]=255&u):1===n&&(u=revLookup[o.charCodeAt(r)]<<10|revLookup[o.charCodeAt(r+1)]<<4|revLookup[o.charCodeAt(r+2)]>>2,p[l++]=u>>8&255,p[l++]=255&u),p}function tripletToBase64(o){return lookup[o>>18&63]+lookup[o>>12&63]+lookup[o>>6&63]+lookup[63&o]}function encodeChunk(o,r,e){for(var t,u=[],n=r;nl?l:a+p));return 1===t?(r=o[e-1],u+=lookup[r>>2],u+=lookup[r<<4&63],u+="=="):2===t&&(r=(o[e-2]<<8)+o[e-1],u+=lookup[r>>10],u+=lookup[r>>4&63],u+=lookup[r<<2&63],u+="="),n.push(u),n.join("")}exports.byteLength=byteLength,exports.toByteArray=toByteArray,exports.fromByteArray=fromByteArray;for(var lookup=[],revLookup=[],Arr="undefined"!=typeof Uint8Array?Uint8Array:Array,code="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i=0,len=code.length;i=this.charLength-this.charReceived?this.charLength-this.charReceived:e.length;if(e.copy(this.charBuffer,this.charReceived,0,r),this.charReceived+=r,this.charReceived=55296&&h<=56319)){if(this.charReceived=this.charLength=0,0===e.length)return t;break}this.charLength+=this.surrogateSize,t=""}this.detectIncompleteChar(e);var i=e.length;this.charLength&&(e.copy(this.charBuffer,0,e.length-this.charReceived,i),i-=this.charReceived),t+=e.toString(this.encoding,0,i);var i=t.length-1,h=t.charCodeAt(i);if(h>=55296&&h<=56319){var c=this.surrogateSize;return this.charLength+=c,this.charReceived+=c,this.charBuffer.copy(this.charBuffer,c,0,c),e.copy(this.charBuffer,0,0,c),t.substring(0,i)}return t},StringDecoder.prototype.detectIncompleteChar=function(e){for(var t=e.length>=3?3:e.length;t>0;t--){var r=e[e.length-t];if(1==t&&r>>5==6){this.charLength=2;break}if(t<=2&&r>>4==14){this.charLength=3;break}if(t<=3&&r>>3==30){this.charLength=4;break}}this.charReceived=t},StringDecoder.prototype.end=function(e){var t="";if(e&&e.length&&(t=this.write(e)),this.charReceived){var r=this.charReceived,h=this.charBuffer,i=this.encoding;t+=h.slice(0,r).toString(i)}return t}; +(function (global){ +"use strict";var buffer=require("buffer"),Buffer=buffer.Buffer,SlowBuffer=buffer.SlowBuffer,MAX_LEN=buffer.kMaxLength||2147483647;exports.alloc=function(r,e,f){if("function"==typeof Buffer.alloc)return Buffer.alloc(r,e,f);if("number"==typeof f)throw new TypeError("encoding must not be number");if("number"!=typeof r)throw new TypeError("size must be a number");if(r>MAX_LEN)throw new RangeError("size is too large");var n=f,o=e;void 0===o&&(n=void 0,o=0);var t=new Buffer(r);if("string"==typeof o)for(var u=new Buffer(o,n),i=u.length,a=-1;++aMAX_LEN)throw new RangeError("size is too large");return new Buffer(r)},exports.from=function(r,e,f){if("function"==typeof Buffer.from&&(!global.Uint8Array||Uint8Array.from!==Buffer.from))return Buffer.from(r,e,f);if("number"==typeof r)throw new TypeError('"value" argument must not be a number');if("string"==typeof r)return new Buffer(r,e);if("undefined"!=typeof ArrayBuffer&&r instanceof ArrayBuffer){var n=e;if(1===arguments.length)return new Buffer(r);"undefined"==typeof n&&(n=0);var o=f;if("undefined"==typeof o&&(o=r.byteLength-n),n>=r.byteLength)throw new RangeError("'offset' is out of bounds");if(o>r.byteLength-n)throw new RangeError("'length' is out of bounds");return new Buffer(r.slice(n,n+o))}if(Buffer.isBuffer(r)){var t=new Buffer(r.length);return r.copy(t,0,0,r.length),t}if(r){if(Array.isArray(r)||"undefined"!=typeof ArrayBuffer&&r.buffer instanceof ArrayBuffer||"length"in r)return new Buffer(r);if("Buffer"===r.type&&Array.isArray(r.data))return new Buffer(r.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")},exports.allocUnsafeSlow=function(r){if("function"==typeof Buffer.allocUnsafeSlow)return Buffer.allocUnsafeSlow(r);if("number"!=typeof r)throw new TypeError("size must be a number");if(r>=MAX_LEN)throw new RangeError("size is too large");return new SlowBuffer(r)}; +}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) },{"buffer":19}],19:[function(require,module,exports){ -(function (global,Buffer){(function (){ +(function (global){ "use strict";function typedArraySupport(){try{var t=new Uint8Array(1);return t.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===t.foo()&&"function"==typeof t.subarray&&0===t.subarray(1,1).byteLength}catch(t){return!1}}function kMaxLength(){return Buffer.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function createBuffer(t,e){if(kMaxLength()=kMaxLength())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+kMaxLength().toString(16)+" bytes");return 0|t}function SlowBuffer(t){return+t!=t&&(t=0),Buffer.alloc(+t)}function byteLength(t,e){if(Buffer.isBuffer(t))return t.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;"string"!=typeof t&&(t=""+t);var r=t.length;if(0===r)return 0;for(var n=!1;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return utf8ToBytes(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return base64ToBytes(t).length;default:if(n)return utf8ToBytes(t).length;e=(""+e).toLowerCase(),n=!0}}function slowToString(t,e,r){var n=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if(r>>>=0,e>>>=0,r<=e)return"";for(t||(t="utf8");;)switch(t){case"hex":return hexSlice(this,e,r);case"utf8":case"utf-8":return utf8Slice(this,e,r);case"ascii":return asciiSlice(this,e,r);case"latin1":case"binary":return latin1Slice(this,e,r);case"base64":return base64Slice(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return utf16leSlice(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function swap(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function bidirectionalIndexOf(t,e,r,n,f){if(0===t.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=f?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(f)return-1;r=t.length-1}else if(r<0){if(!f)return-1;r=0}if("string"==typeof e&&(e=Buffer.from(e,n)),Buffer.isBuffer(e))return 0===e.length?-1:arrayIndexOf(t,e,r,n,f);if("number"==typeof e)return e&=255,Buffer.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?f?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):arrayIndexOf(t,[e],r,n,f);throw new TypeError("val must be string, number or Buffer")}function arrayIndexOf(t,e,r,n,f){function i(t,e){return 1===o?t[e]:t.readUInt16BE(e*o)}var o=1,u=t.length,s=e.length;if(void 0!==n&&(n=String(n).toLowerCase(),"ucs2"===n||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||e.length<2)return-1;o=2,u/=2,s/=2,r/=2}var a;if(f){var h=-1;for(a=r;au&&(r=u-s),a=r;a>=0;a--){for(var c=!0,l=0;lf&&(n=f)):n=f;var i=e.length;if(i%2!==0)throw new TypeError("Invalid hex string");n>i/2&&(n=i/2);for(var o=0;o239?4:i>223?3:i>191?2:1;if(f+u<=r){var s,a,h,c;switch(u){case 1:i<128&&(o=i);break;case 2:s=t[f+1],128===(192&s)&&(c=(31&i)<<6|63&s,c>127&&(o=c));break;case 3:s=t[f+1],a=t[f+2],128===(192&s)&&128===(192&a)&&(c=(15&i)<<12|(63&s)<<6|63&a,c>2047&&(c<55296||c>57343)&&(o=c));break;case 4:s=t[f+1],a=t[f+2],h=t[f+3],128===(192&s)&&128===(192&a)&&128===(192&h)&&(c=(15&i)<<18|(63&s)<<12|(63&a)<<6|63&h,c>65535&&c<1114112&&(o=c))}}null===o?(o=65533,u=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|1023&o),n.push(o),f+=u}return decodeCodePointsArray(n)}function decodeCodePointsArray(t){var e=t.length;if(e<=MAX_ARGUMENTS_LENGTH)return String.fromCharCode.apply(String,t);for(var r="",n=0;nn)&&(r=n);for(var f="",i=e;ir)throw new RangeError("Trying to access beyond buffer length")}function checkInt(t,e,r,n,f,i){if(!Buffer.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>f||et.length)throw new RangeError("Index out of range")}function objectWriteUInt16(t,e,r,n){e<0&&(e=65535+e+1);for(var f=0,i=Math.min(t.length-r,2);f>>8*(n?f:1-f)}function objectWriteUInt32(t,e,r,n){e<0&&(e=4294967295+e+1);for(var f=0,i=Math.min(t.length-r,4);f>>8*(n?f:3-f)&255}function checkIEEE754(t,e,r,n,f,i){if(r+n>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function writeFloat(t,e,r,n,f){return f||checkIEEE754(t,e,r,4,3.4028234663852886e38,-3.4028234663852886e38),ieee754.write(t,e,r,n,23,4),r+4}function writeDouble(t,e,r,n,f){return f||checkIEEE754(t,e,r,8,1.7976931348623157e308,-1.7976931348623157e308),ieee754.write(t,e,r,n,52,8),r+8}function base64clean(t){if(t=stringtrim(t).replace(INVALID_BASE64_RE,""),t.length<2)return"";for(;t.length%4!==0;)t+="=";return t}function stringtrim(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function toHex(t){return t<16?"0"+t.toString(16):t.toString(16)}function utf8ToBytes(t,e){e=e||1/0;for(var r,n=t.length,f=null,i=[],o=0;o55295&&r<57344){if(!f){if(r>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(o+1===n){(e-=3)>-1&&i.push(239,191,189);continue}f=r;continue}if(r<56320){(e-=3)>-1&&i.push(239,191,189),f=r;continue}r=(f-55296<<10|r-56320)+65536}else f&&(e-=3)>-1&&i.push(239,191,189);if(f=null,r<128){if((e-=1)<0)break;i.push(r)}else if(r<2048){if((e-=2)<0)break;i.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;i.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;i.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return i}function asciiToBytes(t){for(var e=[],r=0;r>8,f=r%256,i.push(f),i.push(n);return i}function base64ToBytes(t){return base64.toByteArray(base64clean(t))}function blitBuffer(t,e,r,n){for(var f=0;f=e.length||f>=t.length);++f)e[f+r]=t[f];return f}function isnan(t){return t!==t}var base64=require("base64-js"),ieee754=require("ieee754"),isArray=require("isarray");exports.Buffer=Buffer,exports.SlowBuffer=SlowBuffer,exports.INSPECT_MAX_BYTES=50,Buffer.TYPED_ARRAY_SUPPORT=void 0!==global.TYPED_ARRAY_SUPPORT?global.TYPED_ARRAY_SUPPORT:typedArraySupport(),exports.kMaxLength=kMaxLength(),Buffer.poolSize=8192,Buffer._augment=function(t){return t.__proto__=Buffer.prototype,t},Buffer.from=function(t,e,r){return from(null,t,e,r)},Buffer.TYPED_ARRAY_SUPPORT&&(Buffer.prototype.__proto__=Uint8Array.prototype,Buffer.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&Buffer[Symbol.species]===Buffer&&Object.defineProperty(Buffer,Symbol.species,{value:null,configurable:!0})),Buffer.alloc=function(t,e,r){return alloc(null,t,e,r)},Buffer.allocUnsafe=function(t){return allocUnsafe(null,t)},Buffer.allocUnsafeSlow=function(t){return allocUnsafe(null,t)},Buffer.isBuffer=function(t){return!(null==t||!t._isBuffer)},Buffer.compare=function(t,e){if(!Buffer.isBuffer(t)||!Buffer.isBuffer(e))throw new TypeError("Arguments must be Buffers");if(t===e)return 0;for(var r=t.length,n=e.length,f=0,i=Math.min(r,n);f0&&(t=this.toString("hex",0,e).match(/.{2}/g).join(" "),this.length>e&&(t+=" ... ")),""},Buffer.prototype.compare=function(t,e,r,n,f){if(!Buffer.isBuffer(t))throw new TypeError("Argument must be a Buffer");if(void 0===e&&(e=0),void 0===r&&(r=t?t.length:0),void 0===n&&(n=0),void 0===f&&(f=this.length),e<0||r>t.length||n<0||f>this.length)throw new RangeError("out of range index");if(n>=f&&e>=r)return 0;if(n>=f)return-1;if(e>=r)return 1;if(e>>>=0,r>>>=0,n>>>=0,f>>>=0,this===t)return 0;for(var i=f-n,o=r-e,u=Math.min(i,o),s=this.slice(n,f),a=t.slice(e,r),h=0;hf)&&(r=f),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var i=!1;;)switch(n){case"hex":return hexWrite(this,t,e,r);case"utf8":case"utf-8":return utf8Write(this,t,e,r);case"ascii":return asciiWrite(this,t,e,r);case"latin1":case"binary":return latin1Write(this,t,e,r);case"base64":return base64Write(this,t,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ucs2Write(this,t,e,r);default:if(i)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),i=!0}},Buffer.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var MAX_ARGUMENTS_LENGTH=4096;Buffer.prototype.slice=function(t,e){var r=this.length;t=~~t,e=void 0===e?r:~~e,t<0?(t+=r,t<0&&(t=0)):t>r&&(t=r),e<0?(e+=r,e<0&&(e=0)):e>r&&(e=r),e0&&(f*=256);)n+=this[t+--e]*f;return n},Buffer.prototype.readUInt8=function(t,e){return e||checkOffset(t,1,this.length),this[t]},Buffer.prototype.readUInt16LE=function(t,e){return e||checkOffset(t,2,this.length),this[t]|this[t+1]<<8},Buffer.prototype.readUInt16BE=function(t,e){return e||checkOffset(t,2,this.length),this[t]<<8|this[t+1]},Buffer.prototype.readUInt32LE=function(t,e){return e||checkOffset(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},Buffer.prototype.readUInt32BE=function(t,e){return e||checkOffset(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},Buffer.prototype.readIntLE=function(t,e,r){t|=0,e|=0,r||checkOffset(t,e,this.length);for(var n=this[t],f=1,i=0;++i=f&&(n-=Math.pow(2,8*e)),n},Buffer.prototype.readIntBE=function(t,e,r){t|=0,e|=0,r||checkOffset(t,e,this.length);for(var n=e,f=1,i=this[t+--n];n>0&&(f*=256);)i+=this[t+--n]*f;return f*=128,i>=f&&(i-=Math.pow(2,8*e)),i},Buffer.prototype.readInt8=function(t,e){return e||checkOffset(t,1,this.length),128&this[t]?(255-this[t]+1)*-1:this[t]},Buffer.prototype.readInt16LE=function(t,e){e||checkOffset(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},Buffer.prototype.readInt16BE=function(t,e){e||checkOffset(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},Buffer.prototype.readInt32LE=function(t,e){return e||checkOffset(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},Buffer.prototype.readInt32BE=function(t,e){return e||checkOffset(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},Buffer.prototype.readFloatLE=function(t,e){return e||checkOffset(t,4,this.length),ieee754.read(this,t,!0,23,4)},Buffer.prototype.readFloatBE=function(t,e){return e||checkOffset(t,4,this.length),ieee754.read(this,t,!1,23,4)},Buffer.prototype.readDoubleLE=function(t,e){return e||checkOffset(t,8,this.length),ieee754.read(this,t,!0,52,8)},Buffer.prototype.readDoubleBE=function(t,e){return e||checkOffset(t,8,this.length),ieee754.read(this,t,!1,52,8)},Buffer.prototype.writeUIntLE=function(t,e,r,n){if(t=+t,e|=0,r|=0,!n){var f=Math.pow(2,8*r)-1;checkInt(this,t,e,r,f,0)}var i=1,o=0;for(this[e]=255&t;++o=0&&(o*=256);)this[e+i]=t/o&255;return e+r},Buffer.prototype.writeUInt8=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,1,255,0),Buffer.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=255&t,e+1},Buffer.prototype.writeUInt16LE=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,2,65535,0),Buffer.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):objectWriteUInt16(this,t,e,!0),e+2},Buffer.prototype.writeUInt16BE=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,2,65535,0),Buffer.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):objectWriteUInt16(this,t,e,!1),e+2},Buffer.prototype.writeUInt32LE=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,4,4294967295,0),Buffer.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t):objectWriteUInt32(this,t,e,!0),e+4},Buffer.prototype.writeUInt32BE=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,4,4294967295,0),Buffer.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):objectWriteUInt32(this,t,e,!1),e+4},Buffer.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e|=0,!n){var f=Math.pow(2,8*r-1);checkInt(this,t,e,r,f-1,-f)}var i=0,o=1,u=0;for(this[e]=255&t;++i>0)-u&255;return e+r},Buffer.prototype.writeIntBE=function(t,e,r,n){if(t=+t,e|=0,!n){var f=Math.pow(2,8*r-1);checkInt(this,t,e,r,f-1,-f)}var i=r-1,o=1,u=0;for(this[e+i]=255&t;--i>=0&&(o*=256);)t<0&&0===u&&0!==this[e+i+1]&&(u=1),this[e+i]=(t/o>>0)-u&255;return e+r},Buffer.prototype.writeInt8=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,1,127,-128),Buffer.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=255&t,e+1},Buffer.prototype.writeInt16LE=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,2,32767,-32768),Buffer.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):objectWriteUInt16(this,t,e,!0),e+2},Buffer.prototype.writeInt16BE=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,2,32767,-32768),Buffer.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):objectWriteUInt16(this,t,e,!1),e+2},Buffer.prototype.writeInt32LE=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,4,2147483647,-2147483648),Buffer.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):objectWriteUInt32(this,t,e,!0),e+4},Buffer.prototype.writeInt32BE=function(t,e,r){return t=+t,e|=0,r||checkInt(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),Buffer.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):objectWriteUInt32(this,t,e,!1),e+4},Buffer.prototype.writeFloatLE=function(t,e,r){return writeFloat(this,t,e,!0,r)},Buffer.prototype.writeFloatBE=function(t,e,r){return writeFloat(this,t,e,!1,r)},Buffer.prototype.writeDoubleLE=function(t,e,r){return writeDouble(this,t,e,!0,r)},Buffer.prototype.writeDoubleBE=function(t,e,r){return writeDouble(this,t,e,!1,r)},Buffer.prototype.copy=function(t,e,r,n){if(r||(r=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e=0;--f)t[f+e]=this[f+r];else if(i<1e3||!Buffer.TYPED_ARRAY_SUPPORT)for(f=0;f>>=0,r=void 0===r?this.length:r>>>0,t||(t=0);var i;if("number"==typeof t)for(i=e;i>1);if(t!==r)throw new Error(e+"Expected "+r+" saw "+t);this.l+=r.length>>1}function prep_blob(r,e){r.l=e,r.read_shift=ReadShift,r.chk=CheckField}var Base64=function(){var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";return{decode:function(e){var t,a,n,i,f,o,s,c="";e=e.replace(/[^\w\+\/\=]/g,"");for(var h=0;h>4,c+=String.fromCharCode(t),o=r.indexOf(e.charAt(h++)),a=(15&f)<<4|o>>2,64!==o&&(c+=String.fromCharCode(a)),s=r.indexOf(e.charAt(h++)),n=(3&o)<<6|s,64!==s&&(c+=String.fromCharCode(n));return c}}}(),chr0=/\u0000/g,chr1=/[\u0001-\u0006]/,s2a=function(r){return r.split("").map(function(r){return 255&r.charCodeAt(0)})},_s2a=s2a,__toBuffer=function(r){for(var e=[],t=0;t0&&Buffer.isBuffer(r[0][0])?Buffer.concat(r[0]):___toBuffer(r)},s2a=function(r){return new Buffer(r,"binary")},bconcat=function(r){return Buffer.isBuffer(r[0])?Buffer.concat(r):__bconcat(r)});var __readUInt8=function(r,e){return r[e]},__readUInt16LE=function(r,e){return 256*r[e+1]+r[e]},__readInt16LE=function(r,e){var t=256*r[e+1]+r[e];return t<32768?t:(65535-t+1)*-1},__readUInt32LE=function(r,e){return r[e+3]*(1<<24)+(r[e+2]<<16)+(r[e+1]<<8)+r[e]},__readInt32LE=function(r,e){return(r[e+3]<<24)+(r[e+2]<<16)+(r[e+1]<<8)+r[e]},CFB=function(){function r(r,o){var h=3,u=512,_=0,d=0,l=0,p=0,E=0,b=[],w=r.slice(0,512);prep_blob(w,0);var S=e(w);switch(h=S[0]){case 3:u=512;break;case 4:u=4096;break;default:throw new Error("Major Version: Expected 3 or 4 saw "+h)}512!==u&&(w=r.slice(0,u),prep_blob(w,28));var g=r.slice(0,u);t(w,h);var y=w.read_shift(4,"i");if(3===h&&0!==y)throw new Error("# Directory Sectors: Expected 0 saw "+y);w.l+=4,l=w.read_shift(4,"i"),w.l+=4,w.chk("00100000","Mini Stream Cutoff Size: "),p=w.read_shift(4,"i"),_=w.read_shift(4,"i"),E=w.read_shift(4,"i"),d=w.read_shift(4,"i");for(var C=-1,I=0;I<109&&(C=w.read_shift(4,"i"),!(C<0));++I)b[I]=C;var x=a(r,u);f(E,d,x,u,b);var B=s(x,l,b,u);B[l].name="!Directory",_>0&&p!==v&&(B[p].name="!MiniFAT"),B[b[0]].name="!FAT",B.fat_addrs=b,B.ssz=u;var A={},k=[],m=[],F=[],L={};c(l,B,x,k,_,A,m),n(m,L,F,k);var R=k.shift(),D=i(F,k,m,A,R);return{raw:{header:g,sectors:x},FileIndex:m,FullPaths:F,FullPathDir:L,find:D}}function e(r){r.chk(b,"Header Signature: "),r.chk(w,"CLSID: ");var e=r.read_shift(2,"u");return[r.read_shift(2,"u"),e]}function t(r,e){var t=9;switch(r.l+=2,t=r.read_shift(2)){case 9:if(3!=e)throw new Error("Sector Shift: Expected 9 saw "+t);break;case 12:if(4!=e)throw new Error("Sector Shift: Expected 12 saw "+t);break;default:throw new Error("Sector Shift: Expected 9 or 12 saw "+t)}r.chk("0600","Mini Sector Shift: "),r.chk("000000000000","Reserved: ")}function a(r,e){for(var t=Math.ceil(r.length/e)-1,a=[],n=1;n>>2)-1;if(!o)return;for(var c=0;c=0;){n[s]=!0,i[i.length]=s,f.push(r[s]);var h=t[Math.floor(4*s/a)];if(c=4*s&o,a<4+c)throw new Error("FAT boundary crossed: "+s+" 4 "+a);if(!r[h])break;s=__readInt32LE(r[h],c)}return{nodes:i,data:__toBuffer([f])}}function s(r,e,t,a){var n=r.length,i=[],f=[],o=[],s=[],c=a-1,h=0,u=0,_=0,d=0;for(h=0;h=n&&(_-=n),!f[_]){for(s=[],u=_;u>=0;){f[u]=!0,o[o.length]=u,s.push(r[u]);var l=t[Math.floor(4*u/a)];if(d=4*u&c,a<4+d)throw new Error("FAT boundary crossed: "+u+" 4 "+a);if(!r[l])break;u=__readInt32LE(r[l],d)}i[_]={nodes:o,data:__toBuffer([s])}}return i}function c(r,e,t,a,n,i,f){for(var s,c=0,u=a.length?2:0,_=e[r].data,d=0,l=0;d<_.length;d+=128){var p=_.slice(d,d+128);prep_blob(p,64),l=p.read_shift(2),s=__utf16le(p,0,l-u),a.push(s);var b={name:s,type:p.read_shift(1),color:p.read_shift(1),L:p.read_shift(4,"i"),R:p.read_shift(4,"i"),C:p.read_shift(4,"i"),clsid:p.read_shift(16),state:p.read_shift(4,"i"),start:0,size:0},w=p.read_shift(2)+p.read_shift(2)+p.read_shift(2)+p.read_shift(2);0!==w&&(b.ct=h(p,p.l-8));var S=p.read_shift(2)+p.read_shift(2)+p.read_shift(2)+p.read_shift(2);0!==S&&(b.mt=h(p,p.l-8)),b.start=p.read_shift(4,"i"),b.size=p.read_shift(4,"i"),b.size<0&&b.start<0&&(b.size=b.type=0,b.start=v,b.name=""),5===b.type?(c=b.start,n>0&&c!==v&&(e[c].name="!StreamData")):b.size>=4096?(b.storage="fat",void 0===e[b.start]&&(e[b.start]=o(t,b.start,e.fat_addrs,e.ssz)),e[b.start].name=b.name,b.content=e[b.start].data.slice(0,b.size),prep_blob(b.content,0)):(b.storage="minifat",c!==v&&b.start!==v&&e[c]&&(b.content=e[c].data.slice(b.start*E,b.start*E+b.size),prep_blob(b.content,0))),i[s]=b,f.push(b)}}function h(r,e){return new Date(1e3*(__readUInt32LE(r,e+4)/1e7*Math.pow(2,32)+__readUInt32LE(r,e)/1e7-11644473600))}function u(e,t){return null==p&&(p=require("fs")),r(p.readFileSync(e),t)}function _(e,t){switch(t&&t.type||"base64"){case"file":return u(e,t);case"base64":return r(s2a(Base64.decode(e)),t);case"binary":return r(s2a(e),t)}return r(e,t)}function d(r,e){return r.find(e)}var l={};l.version="0.12.1";var p,E=64,v=-2,b="d0cf11e0a1b11ae1",w="00000000000000000000000000000000",S={MAXREGSECT:-6,DIFSECT:-4,FATSECT:-3,ENDOFCHAIN:v,FREESECT:-1,HEADER_SIGNATURE:b,HEADER_MINOR_VERSION:"3e00",MAXREGSID:-6,NOSTREAM:-1,HEADER_CLSID:w,EntryTypes:["unknown","storage","stream","lockbytes","property","root"]};return l.find=d,l.read=_,l.parse=r,l.utils={ReadShift:ReadShift,CheckField:CheckField,prep_blob:prep_blob,bconcat:bconcat,consts:S},l}();"undefined"!=typeof require&&"undefined"!=typeof module&&"undefined"==typeof DO_NOT_EXPORT_CFB&&(module.exports=CFB); -}).call(this)}).call(this,require("buffer").Buffer) +}).call(this,require("buffer").Buffer) },{"buffer":19,"fs":16}],21:[function(require,module,exports){ exports=module.exports=require("./lib/cheerio"),exports.version=require("./package.json").version; },{"./lib/cheerio":27,"./package.json":31}],22:[function(require,module,exports){ var $=require("../static"),utils=require("../utils"),isTag=utils.isTag,domEach=utils.domEach,hasOwn=Object.prototype.hasOwnProperty,camelCase=utils.camelCase,cssCase=utils.cssCase,rspace=/\s+/,dataAttrPrefix="data-",_={forEach:require("lodash.foreach"),extend:require("lodash.assignin"),some:require("lodash.some")},primitives={null:null,true:!0,false:!1},rboolean=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,rbrace=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,getAttr=function(t,e){if(t&&isTag(t))return t.attribs||(t.attribs={}),e?hasOwn.call(t.attribs,e)?rboolean.test(e)?e:t.attribs[e]:"option"===t.name&&"value"===e?$.text(t.children):"input"!==t.name||"radio"!==t.attribs.type&&"checkbox"!==t.attribs.type||"value"!==e?void 0:"on":t.attribs},setAttr=function(t,e,s){null===s?removeAttribute(t,e):t.attribs[e]=s+""};exports.attr=function(t,e){return"object"==typeof t||void 0!==e?"function"==typeof e?domEach(this,function(s,a){setAttr(a,t,e.call(a,s,a.attribs[t]))}):domEach(this,function(s,a){isTag(a)&&("object"==typeof t?_.forEach(t,function(t,e){setAttr(a,e,t)}):setAttr(a,t,e))}):getAttr(this[0],t)};var getProp=function(t,e){if(t&&isTag(t))return t.hasOwnProperty(e)?t[e]:rboolean.test(e)?void 0!==getAttr(t,e):getAttr(t,e)},setProp=function(t,e,s){t[e]=rboolean.test(e)?!!s:s};exports.prop=function(t,e){var s,a=0;if("string"==typeof t&&void 0===e){switch(t){case"style":s=this.css(),_.forEach(s,function(t,e){s[a++]=e}),s.length=a;break;case"tagName":case"nodeName":s=this[0].name.toUpperCase();break;default:s=getProp(this[0],t)}return s}if("object"==typeof t||void 0!==e)return"function"==typeof e?domEach(this,function(s,a){setProp(a,t,e.call(a,s,getProp(a,t)))}):domEach(this,function(s,a){isTag(a)&&("object"==typeof t?_.forEach(t,function(t,e){setProp(a,e,t)}):setProp(a,t,e))})};var setData=function(t,e,s){return t.data||(t.data={}),"object"==typeof e?_.extend(t.data,e):void("string"==typeof e&&void 0!==s?t.data[e]=s:"object"==typeof e&&_.extend(t.data,e))},readData=function(t,e){var s,a,r,i,n,o,c,l=1===arguments.length;for(l?(s=Object.keys(t.attribs).filter(function(t){return t.slice(0,dataAttrPrefix.length)===dataAttrPrefix}),r=s.map(function(t){return camelCase(t.slice(dataAttrPrefix.length))})):(s=[dataAttrPrefix+cssCase(e)],r=[e]),o=0,c=s.length;o-1;)if(s=i+t.length,(0===i||rspace.test(r[i-1]))&&(s===r.length||rspace.test(r[s])))return!0})},exports.addClass=function(t){if("function"==typeof t)return domEach(this,function(e,s){var a=s.attribs.class||"";exports.addClass.call([s],t.call(s,e,a))});if(!t||"string"!=typeof t)return this;for(var e=t.split(rspace),s=this.length,a=0;a=0&&(o.splice(i,1),n=!0,c--);n&&(r.attribs.class=o.join(" "))}}))},exports.toggleClass=function(t,e){if("function"==typeof t)return domEach(this,function(s,a){exports.toggleClass.call([a],t.call(a,s,a.attribs.class||"",e),e)});if(!t||"string"!=typeof t)return this;for(var s,a,r=t.split(rspace),i=r.length,n="boolean"==typeof e?e?1:-1:0,o=this.length,c=0;c=0&&a<0?s.push(r[l]):n<=0&&a>=0&&s.splice(a,1);this[c].attribs.class=s.join(" ")}return this},exports.is=function(t){return!!t&&this.filter(t).length>0}; - -},{"../static":29,"../utils":30,"lodash.assignin":104,"lodash.foreach":109,"lodash.some":115}],23:[function(require,module,exports){ +},{"../static":29,"../utils":30,"lodash.assignin":107,"lodash.foreach":112,"lodash.some":118}],23:[function(require,module,exports){ function setCss(t,e,r,s){if("string"==typeof e){var i=getCss(t);"function"==typeof r&&(r=r.call(t,s,i[e])),""===r?delete i[e]:null!=r&&(i[e]=r),t.attribs.style=stringify(i)}else"object"==typeof e&&Object.keys(e).forEach(function(r){setCss(t,r,e[r])})}function getCss(t,e){var r=parse(t.attribs.style);return"string"==typeof e?r[e]:Array.isArray(e)?_.pick(r,e):r}function stringify(t){return Object.keys(t||{}).reduce(function(e,r){return e+=""+(e?" ":"")+r+": "+t[r]+";"},"")}function parse(t){return t=(t||"").trim(),t?t.split(";").reduce(function(t,e){var r=e.indexOf(":");return r<1||r===e.length-1?t:(t[e.slice(0,r).trim()]=e.slice(r+1).trim(),t)},{}):{}}var domEach=require("../utils").domEach,_={pick:require("lodash.pick")},toString=Object.prototype.toString;exports.css=function(t,e){return 2===arguments.length||"[object Object]"===toString.call(t)?domEach(this,function(r,s){setCss(s,t,e,r)}):getCss(this[0],t)}; -},{"../utils":30,"lodash.pick":112}],24:[function(require,module,exports){ +},{"../utils":30,"lodash.pick":115}],24:[function(require,module,exports){ var submittableSelector="input,select,textarea,keygen",r20=/%20/g,rCRLF=/\r?\n/g,_={map:require("lodash.map")};exports.serialize=function(){var e=this.serializeArray(),r=_.map(e,function(e){return encodeURIComponent(e.name)+"="+encodeURIComponent(e.value)});return r.join("&").replace(r20,"+")},exports.serializeArray=function(){var e=this.constructor;return this.map(function(){var r=this,t=e(r);return"form"===r.name?t.find(submittableSelector).toArray():t.filter(submittableSelector).toArray()}).filter('[name!=""]:not(:disabled):not(:submit, :button, :image, :reset, :file):matches([checked], :not(:checkbox, :radio))').map(function(r,t){var a=e(t),n=a.attr("name"),i=a.val();return null==i?null:Array.isArray(i)?_.map(i,function(e){return{name:n,value:e.replace(rCRLF,"\r\n")}}):{name:n,value:i.replace(rCRLF,"\r\n")}}).get()}; -},{"lodash.map":110}],25:[function(require,module,exports){ +},{"lodash.map":113}],25:[function(require,module,exports){ var parse=require("../parse"),$=require("../static"),updateDOM=parse.update,evaluate=parse.evaluate,utils=require("../utils"),domEach=utils.domEach,cloneDom=utils.cloneDom,isHtml=utils.isHtml,slice=Array.prototype.slice,_={flatten:require("lodash.flatten"),bind:require("lodash.bind"),forEach:require("lodash.foreach")};exports._makeDomArray=function(t,e){return null==t?[]:t.cheerio?e?cloneDom(t.get(),t.options):t.get():Array.isArray(t)?_.flatten(t.map(function(t){return this._makeDomArray(t,e)},this)):"string"==typeof t?evaluate(t,this.options):e?cloneDom([t]):[t]};var _insert=function(t){return function(){var e=slice.call(arguments),r=this.length-1;return domEach(this,function(n,i){var o,l;l="function"==typeof e[0]?e[0].call(i,n,$.html(i.children)):e,o=this._makeDomArray(l,n-1&&(s.children.splice(c,1),i===s&&e>c&&u[0]--),a.root=null,a.parent=i,a.prev&&(a.prev.next=a.next||null),a.next&&(a.next.prev=a.prev||null),a.prev=n[o-1]||h,a.next=n[o+1]||p;return h&&(h.next=n[0]),p&&(p.prev=n[n.length-1]),t.splice.apply(t,u)};exports.appendTo=function(t){return t.cheerio||(t=this.constructor.call(this.constructor,t,null,this._originalRoot)),t.append(this),this},exports.prependTo=function(t){return t.cheerio||(t=this.constructor.call(this.constructor,t,null,this._originalRoot)),t.prepend(this),this},exports.append=_insert(function(t,e,r){uniqueSplice(e,e.length,0,t,r)}),exports.prepend=_insert(function(t,e,r){uniqueSplice(e,0,0,t,r)}),exports.wrap=function(t){var e="function"==typeof t&&t,r=this.length-1;return _.forEach(this,_.bind(function(n,i){var o,l,c=n.parent||n.root,a=c.children;c&&(e&&(t=e.call(n,i)),"string"!=typeof t||isHtml(t)||(t=this.parents().last().find(t).clone()),o=this._makeDomArray(t,i0})},exports.first=function(){return this.length>1?this._make(this[0]):this},exports.last=function(){return this.length>1?this._make(this[this.length-1]):this},exports.eq=function(t){return t=+t,0===t&&this.length<=1?this:(t<0&&(t=this.length+t),this[t]?this._make(this[t]):this._make([]))},exports.get=function(t){return null==t?Array.prototype.slice.call(this):this[t<0?this.length+t:t]},exports.index=function(t){var e,r;return 0===arguments.length?(e=this.parent().children(),r=this[0]):"string"==typeof t?(e=this._make(t),r=this[0]):(e=this,r=t.cheerio?t[0]:t),e.get().indexOf(r)},exports.slice=function(){return this._make([].slice.apply(this,arguments))},exports.end=function(){return this.prevObject||this._make([])},exports.add=function(t,e){for(var r=this._make(t,e),i=uniqueSort(r.get().concat(this.get())),n=0;n",e)[0];return n.type="root",exports.update(t,n),n},exports.evaluate=function(r,e){var t;return t="string"==typeof r||Buffer.isBuffer(r)?htmlparser.parseDOM(r,e):r},exports.update=function(r,e){Array.isArray(r)||(r=[r]),e?e.children=r:e=null;for(var t=0;t)[^>]*$|#([\w\-]*)$)/;exports.isHtml=function(r){if("<"===r.charAt(0)&&">"===r.charAt(r.length-1)&&r.length>=3)return!0;var e=quickExpr.exec(r);return!(!e||!e[1])}; -},{"./parse":28,"dom-serializer":46}],31:[function(require,module,exports){ +},{"./parse":28,"dom-serializer":48}],31:[function(require,module,exports){ module.exports={ - "_from": "cheerio@^0.22.0", - "_id": "cheerio@0.22.0", - "_inBundle": false, - "_integrity": "sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=", - "_location": "/cheerio", - "_phantomChildren": {}, - "_requested": { - "type": "range", - "registry": true, - "raw": "cheerio@^0.22.0", - "name": "cheerio", - "escapedName": "cheerio", - "rawSpec": "^0.22.0", - "saveSpec": null, - "fetchSpec": "^0.22.0" - }, - "_requiredBy": [ - "/" + "name": "cheerio", + "version": "0.22.0", + "description": "Tiny, fast, and elegant implementation of core jQuery designed specifically for the server", + "author": "Matt Mueller (mat.io)", + "license": "MIT", + "keywords": [ + "htmlparser", + "jquery", + "selector", + "scraper", + "parser", + "html" ], - "_resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", - "_shasum": "a9baa860a3f9b595a6b81b1a86873121ed3a269e", - "_spec": "cheerio@^0.22.0", - "_where": "/Users/lir/Workspace/docx4js", - "author": { - "name": "Matt Mueller", - "email": "mattmuelle@gmail.com", - "url": "mat.io" + "repository": { + "type": "git", + "url": "git://github.com/cheeriojs/cheerio.git" }, - "bugs": { - "url": "https://github.com/cheeriojs/cheerio/issues" + "main": "./index.js", + "files": [ + "index.js", + "lib" + ], + "engines": { + "node": ">= 0.6" }, - "bundleDependencies": false, "dependencies": { "css-select": "~1.2.0", "dom-serializer": "~0.1.0", @@ -143,46 +137,20 @@ module.exports={ "lodash.reject": "^4.4.0", "lodash.some": "^4.4.0" }, - "deprecated": false, - "description": "Tiny, fast, and elegant implementation of core jQuery designed specifically for the server", "devDependencies": { "benchmark": "^2.1.0", "coveralls": "^2.11.9", "expect.js": "~0.3.1", "istanbul": "^0.4.3", - "jquery": "^3.0.0", "jsdom": "^9.2.1", + "jquery": "^3.0.0", "jshint": "^2.9.2", "mocha": "^2.5.3", "xyz": "~0.5.0" }, - "engines": { - "node": ">= 0.6" - }, - "files": [ - "index.js", - "lib" - ], - "homepage": "https://github.com/cheeriojs/cheerio#readme", - "keywords": [ - "htmlparser", - "jquery", - "selector", - "scraper", - "parser", - "html" - ], - "license": "MIT", - "main": "./index.js", - "name": "cheerio", - "repository": { - "type": "git", - "url": "git://github.com/cheeriojs/cheerio.git" - }, "scripts": { "test": "make test" - }, - "version": "0.22.0" + } } },{}],32:[function(require,module,exports){ @@ -197,22 +165,29 @@ function buildGraph(){for(var n={},r=Object.keys(conversions),e=r.length,t=0;t=4&&1!==r[3]&&(e=", "+r[3]),"hwb("+r[0]+", "+r[1]+"%, "+r[2]+"%"+e+")"},cs.to.keyword=function(r){return reverseNames[r.slice(0,3)]}; -},{"color-name":35,"simple-swizzle":135}],37:[function(require,module,exports){ -"use strict";function Color(r,t){if(!(this instanceof Color))return new Color(r,t);if(t&&t in skippedModels&&(t=null),t&&!(t in convert))throw new Error("Unknown model: "+t);var o,e;if(null==r)this.model="rgb",this.color=[0,0,0],this.valpha=1;else if(r instanceof Color)this.model=r.model,this.color=r.color.slice(),this.valpha=r.valpha;else if("string"==typeof r){var n=colorString.get(r);if(null===n)throw new Error("Unable to parse color from string: "+r);this.model=n.model,e=convert[this.model].channels,this.color=n.value.slice(0,e),this.valpha="number"==typeof n.value[e]?n.value[e]:1}else if(r.length){this.model=t||"rgb",e=convert[this.model].channels;var a=_slice.call(r,0,e);this.color=zeroArray(a,e),this.valpha="number"==typeof r[e]?r[e]:1}else if("number"==typeof r)r&=16777215,this.model="rgb",this.color=[r>>16&255,r>>8&255,255&r],this.valpha=1;else{this.valpha=1;var l=Object.keys(r);"alpha"in r&&(l.splice(l.indexOf("alpha"),1),this.valpha="number"==typeof r.alpha?r.alpha:0);var i=l.sort().join("");if(!(i in hashedModelKeys))throw new Error("Unable to parse color from object: "+JSON.stringify(r));this.model=hashedModelKeys[i];var s=convert[this.model].labels,h=[];for(o=0;oo?(t+.05)/(o+.05):(o+.05)/(t+.05)},level:function(r){var t=this.contrast(r);return t>=7.1?"AAA":t>=4.5?"AA":""},isDark:function(){var r=this.rgb().color,t=(299*r[0]+587*r[1]+114*r[2])/1e3;return t<128},isLight:function(){return!this.isDark()},negate:function(){for(var r=this.rgb(),t=0;t<3;t++)r.color[t]=255-r.color[t];return r},lighten:function(r){var t=this.hsl();return t.color[2]+=t.color[2]*r,t},darken:function(r){var t=this.hsl();return t.color[2]-=t.color[2]*r,t},saturate:function(r){var t=this.hsl();return t.color[1]+=t.color[1]*r,t},desaturate:function(r){var t=this.hsl();return t.color[1]-=t.color[1]*r,t},whiten:function(r){var t=this.hwb();return t.color[1]+=t.color[1]*r,t},blacken:function(r){var t=this.hwb();return t.color[2]+=t.color[2]*r,t},grayscale:function(){var r=this.rgb().color,t=.3*r[0]+.59*r[1]+.11*r[2];return Color.rgb(t,t,t)},fade:function(r){return this.alpha(this.valpha-this.valpha*r)},opaquer:function(r){return this.alpha(this.valpha+this.valpha*r)},rotate:function(r){var t=this.hsl(),o=t.color[0];return o=(o+r)%360,o=o<0?360+o:o,t.color[0]=o,t},mix:function(r,t){if(!r||!r.rgb)throw new Error('Argument to "mix" was not a Color instance, but rather an instance of '+typeof r);var o=r.rgb(),e=this.rgb(),n=void 0===t?.5:t,a=2*n-1,l=o.alpha()-e.alpha(),i=((a*l===-1?a:(a+l)/(1+a*l))+1)/2,s=1-i;return Color.rgb(i*o.red()+s*e.red(),i*o.green()+s*e.green(),i*o.blue()+s*e.blue(),o.alpha()*n+e.alpha()*(1-n))}},Object.keys(convert).forEach(function(r){if(skippedModels.indexOf(r)===-1){var t=convert[r].channels;Color.prototype[r]=function(){if(this.model===r)return new Color(this);if(arguments.length)return new Color(arguments,r);var o="number"==typeof arguments[t]?t:this.valpha;return new Color(assertArray(convert[this.model][r].raw(this.color)).concat(o),r)},Color[r]=function(o){return"number"==typeof o&&(o=zeroArray(_slice.call(arguments),t)),new Color(o,r)}}}),module.exports=Color; -},{"color-convert":33,"color-string":36}],38:[function(require,module,exports){ +function clamp(r,e,a){return Math.min(Math.max(e,r),a)}function hexDouble(r){var e=r.toString(16).toUpperCase();return e.length<2?"0"+e:e}var colorNames=require("color-name"),swizzle=require("simple-swizzle"),reverseNames={};for(var name in colorNames)colorNames.hasOwnProperty(name)&&(reverseNames[colorNames[name]]=name);var cs=module.exports={to:{},get:{}};cs.get=function(r){var e,a,s=r.substring(0,3).toLowerCase();switch(s){case"hsl":e=cs.get.hsl(r),a="hsl";break;case"hwb":e=cs.get.hwb(r),a="hwb";break;default:e=cs.get.rgb(r),a="rgb"}return e?{model:a,value:e}:null},cs.get.rgb=function(r){if(!r)return null;var e,a,s,t=/^#([a-f0-9]{3,4})$/i,n=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,l=/^rgba?\(\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/,o=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,\s*([+-]?[\d\.]+)\%\s*,\s*([+-]?[\d\.]+)\%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/,u=/(\D+)/,c=[0,0,0,1];if(e=r.match(n)){for(s=e[2],e=e[1],a=0;a<3;a++){var h=2*a;c[a]=parseInt(e.slice(h,h+2),16)}s&&(c[3]=Math.round(parseInt(s,16)/255*100)/100)}else if(e=r.match(t)){for(e=e[1],s=e[3],a=0;a<3;a++)c[a]=parseInt(e[a]+e[a],16);s&&(c[3]=Math.round(parseInt(s+s,16)/255*100)/100)}else if(e=r.match(l)){for(a=0;a<3;a++)c[a]=parseInt(e[a+1],0);e[4]&&(c[3]=parseFloat(e[4]))}else{if(!(e=r.match(o)))return(e=r.match(u))?"transparent"===e[1]?[0,0,0,0]:(c=colorNames[e[1]])?(c[3]=1,c):null:null;for(a=0;a<3;a++)c[a]=Math.round(2.55*parseFloat(e[a+1]));e[4]&&(c[3]=parseFloat(e[4]))}for(a=0;a<3;a++)c[a]=clamp(c[a],0,255);return c[3]=clamp(c[3],0,1),c},cs.get.hsl=function(r){if(!r)return null;var e=/^hsla?\(\s*([+-]?(?:\d*\.)?\d+)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/,a=r.match(e);if(a){var s=parseFloat(a[4]),t=(parseFloat(a[1])+360)%360,n=clamp(parseFloat(a[2]),0,100),l=clamp(parseFloat(a[3]),0,100),o=clamp(isNaN(s)?1:s,0,1);return[t,n,l,o]}return null},cs.get.hwb=function(r){if(!r)return null;var e=/^hwb\(\s*([+-]?\d*[\.]?\d+)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/,a=r.match(e);if(a){var s=parseFloat(a[4]),t=(parseFloat(a[1])%360+360)%360,n=clamp(parseFloat(a[2]),0,100),l=clamp(parseFloat(a[3]),0,100),o=clamp(isNaN(s)?1:s,0,1);return[t,n,l,o]}return null},cs.to.hex=function(){var r=swizzle(arguments);return"#"+hexDouble(r[0])+hexDouble(r[1])+hexDouble(r[2])+(r[3]<1?hexDouble(Math.round(255*r[3])):"")},cs.to.rgb=function(){var r=swizzle(arguments);return r.length<4||1===r[3]?"rgb("+Math.round(r[0])+", "+Math.round(r[1])+", "+Math.round(r[2])+")":"rgba("+Math.round(r[0])+", "+Math.round(r[1])+", "+Math.round(r[2])+", "+r[3]+")"},cs.to.rgb.percent=function(){var r=swizzle(arguments),e=Math.round(r[0]/255*100),a=Math.round(r[1]/255*100),s=Math.round(r[2]/255*100);return r.length<4||1===r[3]?"rgb("+e+"%, "+a+"%, "+s+"%)":"rgba("+e+"%, "+a+"%, "+s+"%, "+r[3]+")"},cs.to.hsl=function(){var r=swizzle(arguments);return r.length<4||1===r[3]?"hsl("+r[0]+", "+r[1]+"%, "+r[2]+"%)":"hsla("+r[0]+", "+r[1]+"%, "+r[2]+"%, "+r[3]+")"},cs.to.hwb=function(){var r=swizzle(arguments),e="";return r.length>=4&&1!==r[3]&&(e=", "+r[3]),"hwb("+r[0]+", "+r[1]+"%, "+r[2]+"%"+e+")"},cs.to.keyword=function(r){return reverseNames[r.slice(0,3)]}; +},{"color-name":37,"simple-swizzle":151}],37:[function(require,module,exports){ +arguments[4][35][0].apply(exports,arguments) +},{"dup":35}],38:[function(require,module,exports){ +"use strict";function Color(r,t){if(!(this instanceof Color))return new Color(r,t);if(t&&t in skippedModels&&(t=null),t&&!(t in convert))throw new Error("Unknown model: "+t);var o,e;if("undefined"==typeof r)this.model="rgb",this.color=[0,0,0],this.valpha=1;else if(r instanceof Color)this.model=r.model,this.color=r.color.slice(),this.valpha=r.valpha;else if("string"==typeof r){var n=colorString.get(r);if(null===n)throw new Error("Unable to parse color from string: "+r);this.model=n.model,e=convert[this.model].channels,this.color=n.value.slice(0,e),this.valpha="number"==typeof n.value[e]?n.value[e]:1}else if(r.length){this.model=t||"rgb",e=convert[this.model].channels;var a=_slice.call(r,0,e);this.color=zeroArray(a,e),this.valpha="number"==typeof r[e]?r[e]:1}else if("number"==typeof r)r&=16777215,this.model="rgb",this.color=[r>>16&255,r>>8&255,255&r],this.valpha=1;else{this.valpha=1;var l=Object.keys(r);"alpha"in r&&(l.splice(l.indexOf("alpha"),1),this.valpha="number"==typeof r.alpha?r.alpha:0);var i=l.sort().join("");if(!(i in hashedModelKeys))throw new Error("Unable to parse color from object: "+JSON.stringify(r));this.model=hashedModelKeys[i];var s=convert[this.model].labels,h=[];for(o=0;oo?(t+.05)/(o+.05):(o+.05)/(t+.05)},level:function(r){var t=this.contrast(r);return t>=7.1?"AAA":t>=4.5?"AA":""},isDark:function(){var r=this.rgb().color,t=(299*r[0]+587*r[1]+114*r[2])/1e3;return t<128},isLight:function(){return!this.isDark()},negate:function(){for(var r=this.rgb(),t=0;t<3;t++)r.color[t]=255-r.color[t];return r},lighten:function(r){var t=this.hsl();return t.color[2]+=t.color[2]*r,t},darken:function(r){var t=this.hsl();return t.color[2]-=t.color[2]*r,t},saturate:function(r){var t=this.hsl();return t.color[1]+=t.color[1]*r,t},desaturate:function(r){var t=this.hsl();return t.color[1]-=t.color[1]*r,t},whiten:function(r){var t=this.hwb();return t.color[1]+=t.color[1]*r,t},blacken:function(r){var t=this.hwb();return t.color[2]+=t.color[2]*r,t},grayscale:function(){var r=this.rgb().color,t=.3*r[0]+.59*r[1]+.11*r[2];return Color.rgb(t,t,t)},fade:function(r){return this.alpha(this.valpha-this.valpha*r)},opaquer:function(r){return this.alpha(this.valpha+this.valpha*r)},rotate:function(r){var t=this.hsl(),o=t.color[0];return o=(o+r)%360,o=o<0?360+o:o,t.color[0]=o,t},mix:function(r,t){var o=r.rgb(),e=this.rgb(),n=void 0===t?.5:t,a=2*n-1,l=o.alpha()-e.alpha(),i=((a*l===-1?a:(a+l)/(1+a*l))+1)/2,s=1-i;return Color.rgb(i*o.red()+s*e.red(),i*o.green()+s*e.green(),i*o.blue()+s*e.blue(),o.alpha()*n+e.alpha()*(1-n))}},Object.keys(convert).forEach(function(r){if(skippedModels.indexOf(r)===-1){var t=convert[r].channels;Color.prototype[r]=function(){if(this.model===r)return new Color(this);if(arguments.length)return new Color(arguments,r);var o="number"==typeof arguments[t]?t:this.valpha;return new Color(assertArray(convert[this.model][r].raw(this.color)).concat(o),r)},Color[r]=function(o){return"number"==typeof o&&(o=zeroArray(_slice.call(arguments),t)),new Color(o,r)}}}),module.exports=Color; + +},{"color-convert":33,"color-string":36}],39:[function(require,module,exports){ +(function (Buffer){ +function isArray(r){return Array.isArray?Array.isArray(r):"[object Array]"===objectToString(r)}function isBoolean(r){return"boolean"==typeof r}function isNull(r){return null===r}function isNullOrUndefined(r){return null==r}function isNumber(r){return"number"==typeof r}function isString(r){return"string"==typeof r}function isSymbol(r){return"symbol"==typeof r}function isUndefined(r){return void 0===r}function isRegExp(r){return"[object RegExp]"===objectToString(r)}function isObject(r){return"object"==typeof r&&null!==r}function isDate(r){return"[object Date]"===objectToString(r)}function isError(r){return"[object Error]"===objectToString(r)||r instanceof Error}function isFunction(r){return"function"==typeof r}function isPrimitive(r){return null===r||"boolean"==typeof r||"number"==typeof r||"string"==typeof r||"symbol"==typeof r||"undefined"==typeof r}function objectToString(r){return Object.prototype.toString.call(r)}exports.isArray=isArray,exports.isBoolean=isBoolean,exports.isNull=isNull,exports.isNullOrUndefined=isNullOrUndefined,exports.isNumber=isNumber,exports.isString=isString,exports.isSymbol=isSymbol,exports.isUndefined=isUndefined,exports.isRegExp=isRegExp,exports.isObject=isObject,exports.isDate=isDate,exports.isError=isError,exports.isFunction=isFunction,exports.isPrimitive=isPrimitive,exports.isBuffer=Buffer.isBuffer; + +}).call(this,{"isBuffer":require("../../is-buffer/index.js")}) +},{"../../is-buffer/index.js":81}],40:[function(require,module,exports){ "use strict";function getSelectorFunc(e){return function(l,s,t){return"function"!=typeof l&&(l=compileUnsafe(l,t,s)),s=Array.isArray(s)?removeSubsets(s):getChildren(s),e(l,s)}}function is(e,l,s){return("function"==typeof l?l:compile(l,s))(e)}function CSSselect(e,l,s){return selectAll(e,l,s)}module.exports=CSSselect;var Pseudos=require("./lib/pseudos.js"),DomUtils=require("domutils"),findOne=DomUtils.findOne,findAll=DomUtils.findAll,getChildren=DomUtils.getChildren,removeSubsets=DomUtils.removeSubsets,falseFunc=require("boolbase").falseFunc,compile=require("./lib/compile.js"),compileUnsafe=compile.compileUnsafe,compileToken=compile.compileToken,selectAll=getSelectorFunc(function(e,l){return e!==falseFunc&&l&&0!==l.length?findAll(e,l):[]}),selectOne=getSelectorFunc(function(e,l){return e!==falseFunc&&l&&0!==l.length?findOne(e,l):null});CSSselect.compile=compile,CSSselect.filters=Pseudos.filters,CSSselect.pseudos=Pseudos.pseudos,CSSselect.selectAll=selectAll,CSSselect.selectOne=selectOne,CSSselect.is=is,CSSselect.parse=compile,CSSselect.iterate=selectAll,CSSselect._compileUnsafe=compileUnsafe,CSSselect._compileToken=compileToken; -},{"./lib/compile.js":40,"./lib/pseudos.js":43,"boolbase":15,"domutils":51}],39:[function(require,module,exports){ +},{"./lib/compile.js":42,"./lib/pseudos.js":45,"boolbase":15,"domutils":54}],41:[function(require,module,exports){ var DomUtils=require("domutils"),hasAttrib=DomUtils.hasAttrib,getAttributeValue=DomUtils.getAttributeValue,falseFunc=require("boolbase").falseFunc,reChars=/[-[\]{}()*+?.,\\^$|#\s]/g,attributeRules={__proto__:null,equals:function(t,e){var r=e.name,u=e.value;return e.ignoreCase?(u=u.toLowerCase(),function(e){var n=getAttributeValue(e,r);return null!=n&&n.toLowerCase()===u&&t(e)}):function(e){return getAttributeValue(e,r)===u&&t(e)}},hyphen:function(t,e){var r=e.name,u=e.value,n=u.length;return e.ignoreCase?(u=u.toLowerCase(),function(e){var a=getAttributeValue(e,r);return null!=a&&(a.length===n||"-"===a.charAt(n))&&a.substr(0,n).toLowerCase()===u&&t(e)}):function(e){var a=getAttributeValue(e,r);return null!=a&&a.substr(0,n)===u&&(a.length===n||"-"===a.charAt(n))&&t(e)}},element:function(t,e){var r=e.name,u=e.value;if(/\s/.test(u))return falseFunc;u=u.replace(reChars,"\\$&");var n="(?:^|\\s)"+u+"(?:$|\\s)",a=e.ignoreCase?"i":"",l=new RegExp(n,a);return function(e){var u=getAttributeValue(e,r);return null!=u&&l.test(u)&&t(e)}},exists:function(t,e){var r=e.name;return function(e){return hasAttrib(e,r)&&t(e)}},start:function(t,e){var r=e.name,u=e.value,n=u.length;return 0===n?falseFunc:e.ignoreCase?(u=u.toLowerCase(),function(e){var a=getAttributeValue(e,r);return null!=a&&a.substr(0,n).toLowerCase()===u&&t(e)}):function(e){var a=getAttributeValue(e,r);return null!=a&&a.substr(0,n)===u&&t(e)}},end:function(t,e){var r=e.name,u=e.value,n=-u.length;return 0===n?falseFunc:e.ignoreCase?(u=u.toLowerCase(),function(e){var a=getAttributeValue(e,r);return null!=a&&a.substr(n).toLowerCase()===u&&t(e)}):function(e){var a=getAttributeValue(e,r);return null!=a&&a.substr(n)===u&&t(e)}},any:function(t,e){var r=e.name,u=e.value;if(""===u)return falseFunc;if(e.ignoreCase){var n=new RegExp(u.replace(reChars,"\\$&"),"i");return function(e){var u=getAttributeValue(e,r);return null!=u&&n.test(u)&&t(e)}}return function(e){var n=getAttributeValue(e,r);return null!=n&&n.indexOf(u)>=0&&t(e)}},not:function(t,e){var r=e.name,u=e.value;return""===u?function(e){return!!getAttributeValue(e,r)&&t(e)}:e.ignoreCase?(u=u.toLowerCase(),function(e){var n=getAttributeValue(e,r);return null!=n&&n.toLowerCase()!==u&&t(e)}):function(e){return getAttributeValue(e,r)!==u&&t(e)}}};module.exports={compile:function(t,e,r){if(r&&r.strict&&(e.ignoreCase||"not"===e.action))throw SyntaxError("Unsupported attribute selector");return attributeRules[e.action](t,e)},rules:attributeRules}; - -},{"boolbase":15,"domutils":51}],40:[function(require,module,exports){ +},{"boolbase":15,"domutils":54}],42:[function(require,module,exports){ function compile(e,n,r){var t=compileUnsafe(e,n,r);return wrap(t)}function wrap(e){return function(n){return isTag(n)&&e(n)}}function compileUnsafe(e,n,r){var t=parse(e,n);return compileToken(t,n,r)}function includesScopePseudo(e){return"pseudo"===e.type&&("scope"===e.name||Array.isArray(e.data)&&e.data.some(function(e){return e.some(includesScopePseudo)}))}function absolutize(e,n){var r=!!n&&!!n.length&&n.every(function(e){return e===PLACEHOLDER_ELEMENT||!!getParent(e)});e.forEach(function(e){if(e.length>0&&isTraversal(e[0])&&"descendant"!==e[0].type);else{if(!r||includesScopePseudo(e))return;e.unshift(DESCENDANT_TOKEN)}e.unshift(SCOPE_TOKEN)})}function compileToken(e,n,r){e=e.filter(function(e){return e.length>0}),e.forEach(sortRules);var t=Array.isArray(r);return r=n&&n.context||r,r&&!t&&(r=[r]),absolutize(e,r),e.map(function(e){return compileRules(e,n,r,t)}).reduce(reduceRules,falseFunc)}function isTraversal(e){return procedure[e.type]<0}function compileRules(e,n,r,t){var s=t&&"scope"===e[0].name&&"descendant"===e[1].type;return e.reduce(function(e,t,u){return e===falseFunc?e:Rules[t.type](e,t,n,r,s&&1===u)},n&&n.rootFunc||trueFunc)}function reduceRules(e,n){return n===falseFunc||e===trueFunc?e:e===falseFunc||n===trueFunc?n:function(r){return e(r)||n(r)}}function containsTraversal(e){return e.some(isTraversal)}module.exports=compile,module.exports.compileUnsafe=compileUnsafe,module.exports.compileToken=compileToken;var parse=require("css-what"),DomUtils=require("domutils"),isTag=DomUtils.isTag,Rules=require("./general.js"),sortRules=require("./sort.js"),BaseFuncs=require("boolbase"),trueFunc=BaseFuncs.trueFunc,falseFunc=BaseFuncs.falseFunc,procedure=require("./procedure.json"),DESCENDANT_TOKEN={type:"descendant"},SCOPE_TOKEN={type:"pseudo",name:"scope"},PLACEHOLDER_ELEMENT={},getParent=DomUtils.getParent,Pseudos=require("./pseudos.js"),filters=Pseudos.filters,existsOne=DomUtils.existsOne,isTag=DomUtils.isTag,getChildren=DomUtils.getChildren;filters.not=function(e,n,r,t){var s={xmlMode:!(!r||!r.xmlMode),strict:!(!r||!r.strict)};if(s.strict&&(n.length>1||n.some(containsTraversal)))throw new SyntaxError("complex selectors in :not aren't allowed in strict mode");var u=compileToken(n,s,t);return u===falseFunc?e:u===trueFunc?falseFunc:function(n){return!u(n)&&e(n)}},filters.has=function(e,n,r){var t={xmlMode:!(!r||!r.xmlMode),strict:!(!r||!r.strict)},s=n.some(containsTraversal)?[PLACEHOLDER_ELEMENT]:null,u=compileToken(n,t,s);return u===falseFunc?falseFunc:u===trueFunc?function(n){return getChildren(n).some(isTag)&&e(n)}:(u=wrap(u),s?function(n){return e(n)&&(s[0]=n,existsOne(u,getChildren(n)))}:function(n){return e(n)&&existsOne(u,getChildren(n))})},filters.matches=function(e,n,r,t){var s={xmlMode:!(!r||!r.xmlMode),strict:!(!r||!r.strict),rootFunc:e};return compileToken(n,s,t)}; -},{"./general.js":41,"./procedure.json":42,"./pseudos.js":43,"./sort.js":44,"boolbase":15,"css-what":45,"domutils":51}],41:[function(require,module,exports){ +},{"./general.js":43,"./procedure.json":44,"./pseudos.js":45,"./sort.js":46,"boolbase":15,"css-what":47,"domutils":54}],43:[function(require,module,exports){ var DomUtils=require("domutils"),isTag=DomUtils.isTag,getParent=DomUtils.getParent,getChildren=DomUtils.getChildren,getSiblings=DomUtils.getSiblings,getName=DomUtils.getName;module.exports={__proto__:null,attribute:require("./attributes.js").compile,pseudo:require("./pseudos.js").compile,tag:function(t,r){var e=r.name;return function(r){return getName(r)===e&&t(r)}},descendant:function(t,r,e,n,i){return function(r){if(i&&t(r))return!0;for(var e=!1;!e&&(r=getParent(r));)e=t(r);return e}},parent:function(t,r,e){function n(r){return isTag(r)&&t(r)}if(e&&e.strict)throw SyntaxError("Parent selector isn't part of CSS3");return function(t){return getChildren(t).some(n)}},child:function(t){return function(r){var e=getParent(r);return!!e&&t(e)}},sibling:function(t){return function(r){for(var e=getSiblings(r),n=0;n1&&"scope"!==e)throw new SyntaxError("pseudo-selector :"+e+" requires an argument")}else if(1===t.length)throw new SyntaxError("pseudo-selector :"+e+" doesn't have any arguments")}var DomUtils=require("domutils"),isTag=DomUtils.isTag,getText=DomUtils.getText,getParent=DomUtils.getParent,getChildren=DomUtils.getChildren,getSiblings=DomUtils.getSiblings,hasAttrib=DomUtils.hasAttrib,getName=DomUtils.getName,getAttribute=DomUtils.getAttributeValue,getNCheck=require("nth-check"),checkAttrib=require("./attributes.js").rules.equals,BaseFuncs=require("boolbase"),trueFunc=BaseFuncs.trueFunc,falseFunc=BaseFuncs.falseFunc,filters={contains:function(t,e){return function(r){return t(r)&&getText(r).indexOf(e)>=0}},icontains:function(t,e){var r=e.toLowerCase();return function(e){return t(e)&&getText(e).toLowerCase().indexOf(r)>=0}},"nth-child":function(t,e){var r=getNCheck(e);return r===falseFunc?r:r===trueFunc?getChildFunc(t):function(e){for(var n=getSiblings(e),i=0,u=0;i=0;u--)if(isTag(n[u])){if(n[u]===e)break;i++}return r(i)&&t(e)}},"nth-of-type":function(t,e){var r=getNCheck(e);return r===falseFunc?r:r===trueFunc?getChildFunc(t):function(e){for(var n=getSiblings(e),i=0,u=0;u=0;u--)if(isTag(n[u])){if(n[u]===e)break;getName(n[u])===getName(e)&&i++}return r(i)&&t(e)}},root:function(t){return function(e){return!getParent(e)&&t(e)}},scope:function(t,e,r,n){return n&&0!==n.length?1===n.length?function(e){return n[0]===e&&t(e)}:function(e){return n.indexOf(e)>=0&&t(e)}:filters.root(t)},checkbox:getAttribFunc("type","checkbox"),file:getAttribFunc("type","file"),password:getAttribFunc("type","password"),radio:getAttribFunc("type","radio"),reset:getAttribFunc("type","reset"),image:getAttribFunc("type","image"),submit:getAttribFunc("type","submit")},pseudos={empty:function(t){return!getChildren(t).some(function(t){return isTag(t)||"text"===t.type})},"first-child":function(t){return getFirstElement(getSiblings(t))===t},"last-child":function(t){for(var e=getSiblings(t),r=e.length-1;r>=0;r--){if(e[r]===t)return!0;if(isTag(e[r]))break}return!1},"first-of-type":function(t){for(var e=getSiblings(t),r=0;r=0;r--)if(isTag(e[r])){if(e[r]===t)return!0;if(getName(e[r])===getName(t))break}return!1},"only-of-type":function(t){for(var e=getSiblings(t),r=0,n=e.length;r=0&&a>=1);else if(r===procedure.pseudo)if(e.data)if("has"===e.name||"contains"===e.name)r=0;else if("matches"===e.name||"not"===e.name){r=0;for(var t=0;tr&&(r=a)}e.data.length>1&&r>0&&(r-=1)}else r=1;else r=3;return r}module.exports=sortByProcedure;var procedure=require("./procedure.json"),attributes={__proto__:null,exists:10,equals:8,not:7,start:6,end:6,any:5,hyphen:4,element:4}; -},{"./procedure.json":42}],45:[function(require,module,exports){ -"use strict";function funescape(e,t,r){var s="0x"+t-65536;return s!==s||r?t:s<0?String.fromCharCode(s+65536):String.fromCharCode(s>>10|55296,1023&s|56320)}function unescapeCSS(e){return e.replace(re_escape,funescape)}function isWhitespace(e){return" "===e||"\n"===e||"\t"===e||"\f"===e||"\r"===e}function parse(e,t){var r=[];if(e=parseSelector(r,e+"",t),""!==e)throw new SyntaxError("Unmatched selector: "+e);return r}function parseSelector(e,t,r){function s(){var e=t.match(re_name)[0];return t=t.substr(e.length),unescapeCSS(e)}function n(e){for(;isWhitespace(t.charAt(e));)e++;t=t.substr(e)}function a(e){for(var r=0;"\\"===t.charAt(--e);)r++;return 1===(1&r)}var o,u,i,c,l=[],p=!1;for(n(0);""!==t;)if(u=t.charAt(0),isWhitespace(u))p=!0,n(1);else if(u in simpleSelectors)l.push({type:simpleSelectors[u]}),p=!1,n(1);else if(","===u){if(0===l.length)throw new SyntaxError("empty sub-selector");e.push(l),l=[],p=!1,n(1)}else if(p&&(l.length>0&&l.push({type:"descendant"}),p=!1),"*"===u)t=t.substr(1),l.push({type:"universal"});else if(u in attribSelectors)t=t.substr(1),l.push({type:"attribute",name:attribSelectors[u][0],action:attribSelectors[u][1],value:s(),ignoreCase:!1});else if("["===u){if(t=t.substr(1),o=t.match(re_attr),!o)throw new SyntaxError("Malformed attribute selector: "+t);t=t.substr(o[0].length),i=unescapeCSS(o[1]),r&&("lowerCaseAttributeNames"in r?!r.lowerCaseAttributeNames:r.xmlMode)||(i=i.toLowerCase()),l.push({type:"attribute",name:i,action:actionTypes[o[2]],value:unescapeCSS(o[4]||o[5]||""),ignoreCase:!!o[6]})}else if(":"===u){if(":"===t.charAt(1)){t=t.substr(2),l.push({type:"pseudo-element",name:s().toLowerCase()});continue}if(t=t.substr(1),i=s().toLowerCase(),o=null,"("===t.charAt(0))if(i in unpackPseudos){c=t.charAt(1);var h=c in quotes;if(t=t.substr(h+1),o=[],t=parseSelector(o,t,r),h){if(t.charAt(0)!==c)throw new SyntaxError("unmatched quotes in :"+i);t=t.substr(1)}if(")"!==t.charAt(0))throw new SyntaxError("missing closing parenthesis in :"+i+" "+t);t=t.substr(1)}else{for(var f=1,d=1;d>0&&f0&&0===t.length)throw new SyntaxError("empty sub-selector");e.push(t)}module.exports=parse;var re_name=/^(?:\\.|[\w\-\u00b0-\uFFFF])+/,re_escape=/\\([\da-f]{1,6}\s?|(\s)|.)/gi,re_attr=/^\s*((?:\\.|[\w\u00b0-\uFFFF\-])+)\s*(?:(\S?)=\s*(?:(['"])([^]*?)\3|(#?(?:\\.|[\w\u00b0-\uFFFF\-])*)|)|)\s*(i)?\]/,actionTypes={__proto__:null,undefined:"exists","":"equals","~":"element","^":"start",$:"end","*":"any","!":"not","|":"hyphen"},simpleSelectors={__proto__:null,">":"child","<":"parent","~":"sibling","+":"adjacent"},attribSelectors={__proto__:null,"#":["id","equals"],".":["class","element"]},unpackPseudos={__proto__:null,has:!0,not:!0,matches:!0},stripQuotesFromPseudos={__proto__:null,contains:!0,icontains:!0},quotes={__proto__:null,'"':!0,"'":!0}; -},{}],46:[function(require,module,exports){ -function formatAttrs(e,n){if(e){var r,t="";for(var i in e)r=e[i],t&&(t+=" "),t+=i,(null!==r&&""!==r||n.xmlMode)&&(t+='="'+(n.decodeEntities?entities.encodeXML(r):r)+'"');return t}}function renderTag(e,n){"svg"===e.name&&(n={decodeEntities:n.decodeEntities,xmlMode:!0});var r="<"+e.name,t=formatAttrs(e.attribs,n);return t&&(r+=" "+t),!n.xmlMode||e.children&&0!==e.children.length?(r+=">",e.children&&(r+=render(e.children,n)),singleTag[e.name]&&!n.xmlMode||(r+="")):r+="/>",r}function renderDirective(e){return"<"+e.data+">"}function renderText(e,n){var r=e.data||"";return!n.decodeEntities||e.parent&&e.parent.name in unencodedElements||(r=entities.encodeXML(r)),r}function renderCdata(e){return""}function renderComment(e){return""}var ElementType=require("domelementtype"),entities=require("entities"),unencodedElements={__proto__:null,style:!0,script:!0,xmp:!0,iframe:!0,noembed:!0,noframes:!0,plaintext:!0,noscript:!0},singleTag={__proto__:null,area:!0,base:!0,basefont:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,isindex:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},render=module.exports=function(e,n){Array.isArray(e)||e.cheerio||(e=[e]),n=n||{};for(var r="",t=0;t>10|55296,1023&s|56320)}function unescapeCSS(e){return e.replace(re_escape,funescape)}function isWhitespace(e){return" "===e||"\n"===e||"\t"===e||"\f"===e||"\r"===e}function parse(e,t){var r=[];if(e=parseSelector(r,e+"",t),""!==e)throw new SyntaxError("Unmatched selector: "+e);return r}function parseSelector(e,t,r){function s(){var e=t.match(re_name)[0];return t=t.substr(e.length),unescapeCSS(e)}function n(e){for(;isWhitespace(t.charAt(e));)e++;t=t.substr(e)}var a,o,u,i,c=[],l=!1;for(n(0);""!==t;)if(o=t.charAt(0),isWhitespace(o))l=!0,n(1);else if(o in simpleSelectors)c.push({type:simpleSelectors[o]}),l=!1,n(1);else if(","===o){if(0===c.length)throw new SyntaxError("empty sub-selector");e.push(c),c=[],l=!1,n(1)}else if(l&&(c.length>0&&c.push({type:"descendant"}),l=!1),"*"===o)t=t.substr(1),c.push({type:"universal"});else if(o in attribSelectors)t=t.substr(1),c.push({type:"attribute",name:attribSelectors[o][0],action:attribSelectors[o][1],value:s(),ignoreCase:!1});else if("["===o){if(t=t.substr(1),a=t.match(re_attr),!a)throw new SyntaxError("Malformed attribute selector: "+t);t=t.substr(a[0].length),u=unescapeCSS(a[1]),r&&("lowerCaseAttributeNames"in r?!r.lowerCaseAttributeNames:r.xmlMode)||(u=u.toLowerCase()),c.push({type:"attribute",name:u,action:actionTypes[a[2]],value:unescapeCSS(a[4]||a[5]||""),ignoreCase:!!a[6]})}else if(":"===o){if(":"===t.charAt(1)){t=t.substr(2),c.push({type:"pseudo-element",name:s().toLowerCase()});continue}if(t=t.substr(1),u=s().toLowerCase(),a=null,"("===t.charAt(0))if(u in unpackPseudos){i=t.charAt(1);var p=i in quotes;if(t=t.substr(p+1),a=[],t=parseSelector(a,t,r),p){if(t.charAt(0)!==i)throw new SyntaxError("unmatched quotes in :"+u);t=t.substr(1)}if(")"!==t.charAt(0))throw new SyntaxError("missing closing parenthesis in :"+u+" "+t);t=t.substr(1)}else{for(var h=1,f=1;f>0&&h0&&0===t.length)throw new SyntaxError("empty sub-selector");e.push(t)}module.exports=parse;var re_name=/^(?:\\.|[\w\-\u00c0-\uFFFF])+/,re_escape=/\\([\da-f]{1,6}\s?|(\s)|.)/gi,re_attr=/^\s*((?:\\.|[\w\u00c0-\uFFFF\-])+)\s*(?:(\S?)=\s*(?:(['"])(.*?)\3|(#?(?:\\.|[\w\u00c0-\uFFFF\-])*)|)|)\s*(i)?\]/,actionTypes={__proto__:null,undefined:"exists","":"equals","~":"element","^":"start",$:"end","*":"any","!":"not","|":"hyphen"},simpleSelectors={__proto__:null,">":"child","<":"parent","~":"sibling","+":"adjacent"},attribSelectors={__proto__:null,"#":["id","equals"],".":["class","element"]},unpackPseudos={__proto__:null,has:!0,not:!0,matches:!0},stripQuotesFromPseudos={__proto__:null,contains:!0,icontains:!0},quotes={__proto__:null,'"':!0,"'":!0}; },{}],48:[function(require,module,exports){ +function formatAttrs(e,r){if(e){var n,t="";for(var a in e)n=e[a],t&&(t+=" "),t+=!n&&booleanAttributes[a]?a:a+'="'+(r.decodeEntities?entities.encodeXML(n):n)+'"';return t}}function renderTag(e,r){"svg"===e.name&&(r={decodeEntities:r.decodeEntities,xmlMode:!0});var n="<"+e.name,t=formatAttrs(e.attribs,r);return t&&(n+=" "+t),!r.xmlMode||e.children&&0!==e.children.length?(n+=">",e.children&&(n+=render(e.children,r)),singleTag[e.name]&&!r.xmlMode||(n+="")):n+="/>",n}function renderDirective(e){return"<"+e.data+">"}function renderText(e,r){var n=e.data||"";return!r.decodeEntities||e.parent&&e.parent.name in unencodedElements||(n=entities.encodeXML(n)),n}function renderCdata(e){return""}function renderComment(e){return""}var ElementType=require("domelementtype"),entities=require("entities"),booleanAttributes={__proto__:null,allowfullscreen:!0,async:!0,autofocus:!0,autoplay:!0,checked:!0,controls:!0,default:!0,defer:!0,disabled:!0,hidden:!0,ismap:!0,loop:!0,multiple:!0,muted:!0,open:!0,readonly:!0,required:!0,reversed:!0,scoped:!0,seamless:!0,selected:!0,typemustmatch:!0},unencodedElements={__proto__:null,style:!0,script:!0,xmp:!0,iframe:!0,noembed:!0,noframes:!0,plaintext:!0,noscript:!0},singleTag={__proto__:null,area:!0,base:!0,basefont:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,isindex:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},render=module.exports=function(e,r){Array.isArray(e)||e.cheerio||(e=[e]),r=r||{};for(var n="",t=0;t-1;){for(r=I=O[N],O[N]=null,e=!0;I;){if(O.indexOf(I)>-1){e=!1,O.splice(N,1);break}I=I.parent}e&&(O[N]=r)}return O};var POSITION={DISCONNECTED:1,PRECEDING:2,FOLLOWING:4,CONTAINS:8,CONTAINED_BY:16},comparePos=exports.compareDocumentPosition=function(O,r){var I,e,N,n,o,t,i=[],f=[];if(O===r)return 0;for(I=O;I;)i.unshift(I),I=I.parent;for(I=r;I;)f.unshift(I),I=I.parent;for(t=0;i[t]===f[t];)t++;return 0===t?POSITION.DISCONNECTED:(e=i[t-1],N=e.children,n=i[t],o=f[t],N.indexOf(n)>N.indexOf(o)?e===r?POSITION.FOLLOWING|POSITION.CONTAINED_BY:POSITION.FOLLOWING:e===O?POSITION.PRECEDING|POSITION.CONTAINS:POSITION.PRECEDING)};exports.uniqueSort=function(O){var r,I,e=O.length;for(O=O.slice();--e>-1;)r=O[e],I=O.indexOf(r),I>-1&&I0&&(t=find(n,t,i,r),l=l.concat(t),r-=t.length,r<=0)));f++);return l}function findOneChild(n,e){for(var i=0,r=e.length;i0&&(i=findOne(n,e[r].children)));return i}function existsOne(n,e){for(var i=0,r=e.length;i0&&existsOne(n,e[i].children)))return!0;return!1}function findAll(n,e){for(var i=[],r=0,t=e.length;r0&&(i=i.concat(findAll(n,e[r].children))));return i}var isTag=require("domelementtype").isTag;module.exports={filter:filter,find:find,findOneChild:findOneChild,findOne:findOne,existsOne:existsOne,findAll:findAll}; -},{"domelementtype":47}],56:[function(require,module,exports){ +},{"domelementtype":50}],59:[function(require,module,exports){ function getInnerHTML(e,t){return e.children?e.children.map(function(e){return getOuterHTML(e,t)}).join(""):""}function getText(e){return Array.isArray(e)?e.map(getText).join(""):isTag(e)||e.type===ElementType.CDATA?getText(e.children):e.type===ElementType.Text?e.data:""}var ElementType=require("domelementtype"),getOuterHTML=require("dom-serializer"),isTag=ElementType.isTag;module.exports={getInnerHTML:getInnerHTML,getOuterHTML:getOuterHTML,getText:getText}; -},{"dom-serializer":46,"domelementtype":47}],57:[function(require,module,exports){ +},{"dom-serializer":48,"domelementtype":50}],60:[function(require,module,exports){ var getChildren=exports.getChildren=function(t){return t.children},getParent=exports.getParent=function(t){return t.parent};exports.getSiblings=function(t){var r=getParent(t);return r?getChildren(r):[t]},exports.getAttributeValue=function(t,r){return t.attribs&&t.attribs[r]},exports.hasAttrib=function(t,r){return!!t.attribs&&hasOwnProperty.call(t.attribs,r)},exports.getName=function(t){return t.name}; -},{}],58:[function(require,module,exports){ +},{}],61:[function(require,module,exports){ var encode=require("./lib/encode.js"),decode=require("./lib/decode.js");exports.decode=function(e,d){return(!d||d<=0?decode.XML:decode.HTML)(e)},exports.decodeStrict=function(e,d){return(!d||d<=0?decode.XML:decode.HTMLStrict)(e)},exports.encode=function(e,d){return(!d||d<=0?encode.XML:encode.HTML)(e)},exports.encodeXML=encode.XML,exports.encodeHTML4=exports.encodeHTML5=exports.encodeHTML=encode.HTML,exports.decodeXML=exports.decodeXMLStrict=decode.XML,exports.decodeHTML4=exports.decodeHTML5=exports.decodeHTML=decode.HTML,exports.decodeHTML4Strict=exports.decodeHTML5Strict=exports.decodeHTMLStrict=decode.HTMLStrict,exports.escape=encode.escape; -},{"./lib/decode.js":59,"./lib/encode.js":61}],59:[function(require,module,exports){ + +},{"./lib/decode.js":62,"./lib/encode.js":64}],62:[function(require,module,exports){ function getStrictDecoder(e){var t=Object.keys(e).join("|"),r=getReplacer(e);t+="|#[xX][\\da-fA-F]+|#\\d+";var c=new RegExp("&(?:"+t+");","g");return function(e){return String(e).replace(c,r)}}function sorter(e,t){return e=55296&&e<=57343||e>1114111)return"�";e in decodeMap&&(e=decodeMap[e]);var o="";return e>65535&&(e-=65536,o+=String.fromCharCode(e>>>10&1023|55296),e=56320|1023&e),o+=String.fromCharCode(e)}var decodeMap=require("../maps/decode.json");module.exports=decodeCodePoint; -},{"../maps/decode.json":62}],61:[function(require,module,exports){ +},{"../maps/decode.json":65}],64:[function(require,module,exports){ function getInverseObj(e){return Object.keys(e).sort().reduce(function(r,n){return r[e[n]]="&"+n+";",r},{})}function getInverseReplacer(e){var r=[],n=[];return Object.keys(e).forEach(function(e){1===e.length?r.push("\\"+e):n.push(e)}),n.unshift("["+r.join("")+"]"),new RegExp(n.join("|"),"g")}function singleCharReplacer(e){return"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"}function astralReplacer(e){var r=e.charCodeAt(0),n=e.charCodeAt(1),t=1024*(r-55296)+n-56320+65536;return"&#x"+t.toString(16).toUpperCase()+";"}function getInverse(e,r){function n(r){return e[r]}return function(e){return e.replace(r,n).replace(re_astralSymbols,astralReplacer).replace(re_nonASCII,singleCharReplacer)}}function escapeXML(e){return e.replace(re_xmlChars,singleCharReplacer).replace(re_astralSymbols,astralReplacer).replace(re_nonASCII,singleCharReplacer)}var inverseXML=getInverseObj(require("../maps/xml.json")),xmlReplacer=getInverseReplacer(inverseXML);exports.XML=getInverse(inverseXML,xmlReplacer);var inverseHTML=getInverseObj(require("../maps/entities.json")),htmlReplacer=getInverseReplacer(inverseHTML);exports.HTML=getInverse(inverseHTML,htmlReplacer);var re_nonASCII=/[^\0-\x7F]/g,re_astralSymbols=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,re_xmlChars=getInverseReplacer(inverseXML);exports.escape=escapeXML; - -},{"../maps/entities.json":63,"../maps/xml.json":65}],62:[function(require,module,exports){ +},{"../maps/entities.json":66,"../maps/xml.json":68}],65:[function(require,module,exports){ module.exports={"0":65533,"128":8364,"130":8218,"131":402,"132":8222,"133":8230,"134":8224,"135":8225,"136":710,"137":8240,"138":352,"139":8249,"140":338,"142":381,"145":8216,"146":8217,"147":8220,"148":8221,"149":8226,"150":8211,"151":8212,"152":732,"153":8482,"154":353,"155":8250,"156":339,"158":382,"159":376} -},{}],63:[function(require,module,exports){ +},{}],66:[function(require,module,exports){ module.exports={"Aacute":"\u00C1","aacute":"\u00E1","Abreve":"\u0102","abreve":"\u0103","ac":"\u223E","acd":"\u223F","acE":"\u223E\u0333","Acirc":"\u00C2","acirc":"\u00E2","acute":"\u00B4","Acy":"\u0410","acy":"\u0430","AElig":"\u00C6","aelig":"\u00E6","af":"\u2061","Afr":"\uD835\uDD04","afr":"\uD835\uDD1E","Agrave":"\u00C0","agrave":"\u00E0","alefsym":"\u2135","aleph":"\u2135","Alpha":"\u0391","alpha":"\u03B1","Amacr":"\u0100","amacr":"\u0101","amalg":"\u2A3F","amp":"&","AMP":"&","andand":"\u2A55","And":"\u2A53","and":"\u2227","andd":"\u2A5C","andslope":"\u2A58","andv":"\u2A5A","ang":"\u2220","ange":"\u29A4","angle":"\u2220","angmsdaa":"\u29A8","angmsdab":"\u29A9","angmsdac":"\u29AA","angmsdad":"\u29AB","angmsdae":"\u29AC","angmsdaf":"\u29AD","angmsdag":"\u29AE","angmsdah":"\u29AF","angmsd":"\u2221","angrt":"\u221F","angrtvb":"\u22BE","angrtvbd":"\u299D","angsph":"\u2222","angst":"\u00C5","angzarr":"\u237C","Aogon":"\u0104","aogon":"\u0105","Aopf":"\uD835\uDD38","aopf":"\uD835\uDD52","apacir":"\u2A6F","ap":"\u2248","apE":"\u2A70","ape":"\u224A","apid":"\u224B","apos":"'","ApplyFunction":"\u2061","approx":"\u2248","approxeq":"\u224A","Aring":"\u00C5","aring":"\u00E5","Ascr":"\uD835\uDC9C","ascr":"\uD835\uDCB6","Assign":"\u2254","ast":"*","asymp":"\u2248","asympeq":"\u224D","Atilde":"\u00C3","atilde":"\u00E3","Auml":"\u00C4","auml":"\u00E4","awconint":"\u2233","awint":"\u2A11","backcong":"\u224C","backepsilon":"\u03F6","backprime":"\u2035","backsim":"\u223D","backsimeq":"\u22CD","Backslash":"\u2216","Barv":"\u2AE7","barvee":"\u22BD","barwed":"\u2305","Barwed":"\u2306","barwedge":"\u2305","bbrk":"\u23B5","bbrktbrk":"\u23B6","bcong":"\u224C","Bcy":"\u0411","bcy":"\u0431","bdquo":"\u201E","becaus":"\u2235","because":"\u2235","Because":"\u2235","bemptyv":"\u29B0","bepsi":"\u03F6","bernou":"\u212C","Bernoullis":"\u212C","Beta":"\u0392","beta":"\u03B2","beth":"\u2136","between":"\u226C","Bfr":"\uD835\uDD05","bfr":"\uD835\uDD1F","bigcap":"\u22C2","bigcirc":"\u25EF","bigcup":"\u22C3","bigodot":"\u2A00","bigoplus":"\u2A01","bigotimes":"\u2A02","bigsqcup":"\u2A06","bigstar":"\u2605","bigtriangledown":"\u25BD","bigtriangleup":"\u25B3","biguplus":"\u2A04","bigvee":"\u22C1","bigwedge":"\u22C0","bkarow":"\u290D","blacklozenge":"\u29EB","blacksquare":"\u25AA","blacktriangle":"\u25B4","blacktriangledown":"\u25BE","blacktriangleleft":"\u25C2","blacktriangleright":"\u25B8","blank":"\u2423","blk12":"\u2592","blk14":"\u2591","blk34":"\u2593","block":"\u2588","bne":"=\u20E5","bnequiv":"\u2261\u20E5","bNot":"\u2AED","bnot":"\u2310","Bopf":"\uD835\uDD39","bopf":"\uD835\uDD53","bot":"\u22A5","bottom":"\u22A5","bowtie":"\u22C8","boxbox":"\u29C9","boxdl":"\u2510","boxdL":"\u2555","boxDl":"\u2556","boxDL":"\u2557","boxdr":"\u250C","boxdR":"\u2552","boxDr":"\u2553","boxDR":"\u2554","boxh":"\u2500","boxH":"\u2550","boxhd":"\u252C","boxHd":"\u2564","boxhD":"\u2565","boxHD":"\u2566","boxhu":"\u2534","boxHu":"\u2567","boxhU":"\u2568","boxHU":"\u2569","boxminus":"\u229F","boxplus":"\u229E","boxtimes":"\u22A0","boxul":"\u2518","boxuL":"\u255B","boxUl":"\u255C","boxUL":"\u255D","boxur":"\u2514","boxuR":"\u2558","boxUr":"\u2559","boxUR":"\u255A","boxv":"\u2502","boxV":"\u2551","boxvh":"\u253C","boxvH":"\u256A","boxVh":"\u256B","boxVH":"\u256C","boxvl":"\u2524","boxvL":"\u2561","boxVl":"\u2562","boxVL":"\u2563","boxvr":"\u251C","boxvR":"\u255E","boxVr":"\u255F","boxVR":"\u2560","bprime":"\u2035","breve":"\u02D8","Breve":"\u02D8","brvbar":"\u00A6","bscr":"\uD835\uDCB7","Bscr":"\u212C","bsemi":"\u204F","bsim":"\u223D","bsime":"\u22CD","bsolb":"\u29C5","bsol":"\\","bsolhsub":"\u27C8","bull":"\u2022","bullet":"\u2022","bump":"\u224E","bumpE":"\u2AAE","bumpe":"\u224F","Bumpeq":"\u224E","bumpeq":"\u224F","Cacute":"\u0106","cacute":"\u0107","capand":"\u2A44","capbrcup":"\u2A49","capcap":"\u2A4B","cap":"\u2229","Cap":"\u22D2","capcup":"\u2A47","capdot":"\u2A40","CapitalDifferentialD":"\u2145","caps":"\u2229\uFE00","caret":"\u2041","caron":"\u02C7","Cayleys":"\u212D","ccaps":"\u2A4D","Ccaron":"\u010C","ccaron":"\u010D","Ccedil":"\u00C7","ccedil":"\u00E7","Ccirc":"\u0108","ccirc":"\u0109","Cconint":"\u2230","ccups":"\u2A4C","ccupssm":"\u2A50","Cdot":"\u010A","cdot":"\u010B","cedil":"\u00B8","Cedilla":"\u00B8","cemptyv":"\u29B2","cent":"\u00A2","centerdot":"\u00B7","CenterDot":"\u00B7","cfr":"\uD835\uDD20","Cfr":"\u212D","CHcy":"\u0427","chcy":"\u0447","check":"\u2713","checkmark":"\u2713","Chi":"\u03A7","chi":"\u03C7","circ":"\u02C6","circeq":"\u2257","circlearrowleft":"\u21BA","circlearrowright":"\u21BB","circledast":"\u229B","circledcirc":"\u229A","circleddash":"\u229D","CircleDot":"\u2299","circledR":"\u00AE","circledS":"\u24C8","CircleMinus":"\u2296","CirclePlus":"\u2295","CircleTimes":"\u2297","cir":"\u25CB","cirE":"\u29C3","cire":"\u2257","cirfnint":"\u2A10","cirmid":"\u2AEF","cirscir":"\u29C2","ClockwiseContourIntegral":"\u2232","CloseCurlyDoubleQuote":"\u201D","CloseCurlyQuote":"\u2019","clubs":"\u2663","clubsuit":"\u2663","colon":":","Colon":"\u2237","Colone":"\u2A74","colone":"\u2254","coloneq":"\u2254","comma":",","commat":"@","comp":"\u2201","compfn":"\u2218","complement":"\u2201","complexes":"\u2102","cong":"\u2245","congdot":"\u2A6D","Congruent":"\u2261","conint":"\u222E","Conint":"\u222F","ContourIntegral":"\u222E","copf":"\uD835\uDD54","Copf":"\u2102","coprod":"\u2210","Coproduct":"\u2210","copy":"\u00A9","COPY":"\u00A9","copysr":"\u2117","CounterClockwiseContourIntegral":"\u2233","crarr":"\u21B5","cross":"\u2717","Cross":"\u2A2F","Cscr":"\uD835\uDC9E","cscr":"\uD835\uDCB8","csub":"\u2ACF","csube":"\u2AD1","csup":"\u2AD0","csupe":"\u2AD2","ctdot":"\u22EF","cudarrl":"\u2938","cudarrr":"\u2935","cuepr":"\u22DE","cuesc":"\u22DF","cularr":"\u21B6","cularrp":"\u293D","cupbrcap":"\u2A48","cupcap":"\u2A46","CupCap":"\u224D","cup":"\u222A","Cup":"\u22D3","cupcup":"\u2A4A","cupdot":"\u228D","cupor":"\u2A45","cups":"\u222A\uFE00","curarr":"\u21B7","curarrm":"\u293C","curlyeqprec":"\u22DE","curlyeqsucc":"\u22DF","curlyvee":"\u22CE","curlywedge":"\u22CF","curren":"\u00A4","curvearrowleft":"\u21B6","curvearrowright":"\u21B7","cuvee":"\u22CE","cuwed":"\u22CF","cwconint":"\u2232","cwint":"\u2231","cylcty":"\u232D","dagger":"\u2020","Dagger":"\u2021","daleth":"\u2138","darr":"\u2193","Darr":"\u21A1","dArr":"\u21D3","dash":"\u2010","Dashv":"\u2AE4","dashv":"\u22A3","dbkarow":"\u290F","dblac":"\u02DD","Dcaron":"\u010E","dcaron":"\u010F","Dcy":"\u0414","dcy":"\u0434","ddagger":"\u2021","ddarr":"\u21CA","DD":"\u2145","dd":"\u2146","DDotrahd":"\u2911","ddotseq":"\u2A77","deg":"\u00B0","Del":"\u2207","Delta":"\u0394","delta":"\u03B4","demptyv":"\u29B1","dfisht":"\u297F","Dfr":"\uD835\uDD07","dfr":"\uD835\uDD21","dHar":"\u2965","dharl":"\u21C3","dharr":"\u21C2","DiacriticalAcute":"\u00B4","DiacriticalDot":"\u02D9","DiacriticalDoubleAcute":"\u02DD","DiacriticalGrave":"`","DiacriticalTilde":"\u02DC","diam":"\u22C4","diamond":"\u22C4","Diamond":"\u22C4","diamondsuit":"\u2666","diams":"\u2666","die":"\u00A8","DifferentialD":"\u2146","digamma":"\u03DD","disin":"\u22F2","div":"\u00F7","divide":"\u00F7","divideontimes":"\u22C7","divonx":"\u22C7","DJcy":"\u0402","djcy":"\u0452","dlcorn":"\u231E","dlcrop":"\u230D","dollar":"$","Dopf":"\uD835\uDD3B","dopf":"\uD835\uDD55","Dot":"\u00A8","dot":"\u02D9","DotDot":"\u20DC","doteq":"\u2250","doteqdot":"\u2251","DotEqual":"\u2250","dotminus":"\u2238","dotplus":"\u2214","dotsquare":"\u22A1","doublebarwedge":"\u2306","DoubleContourIntegral":"\u222F","DoubleDot":"\u00A8","DoubleDownArrow":"\u21D3","DoubleLeftArrow":"\u21D0","DoubleLeftRightArrow":"\u21D4","DoubleLeftTee":"\u2AE4","DoubleLongLeftArrow":"\u27F8","DoubleLongLeftRightArrow":"\u27FA","DoubleLongRightArrow":"\u27F9","DoubleRightArrow":"\u21D2","DoubleRightTee":"\u22A8","DoubleUpArrow":"\u21D1","DoubleUpDownArrow":"\u21D5","DoubleVerticalBar":"\u2225","DownArrowBar":"\u2913","downarrow":"\u2193","DownArrow":"\u2193","Downarrow":"\u21D3","DownArrowUpArrow":"\u21F5","DownBreve":"\u0311","downdownarrows":"\u21CA","downharpoonleft":"\u21C3","downharpoonright":"\u21C2","DownLeftRightVector":"\u2950","DownLeftTeeVector":"\u295E","DownLeftVectorBar":"\u2956","DownLeftVector":"\u21BD","DownRightTeeVector":"\u295F","DownRightVectorBar":"\u2957","DownRightVector":"\u21C1","DownTeeArrow":"\u21A7","DownTee":"\u22A4","drbkarow":"\u2910","drcorn":"\u231F","drcrop":"\u230C","Dscr":"\uD835\uDC9F","dscr":"\uD835\uDCB9","DScy":"\u0405","dscy":"\u0455","dsol":"\u29F6","Dstrok":"\u0110","dstrok":"\u0111","dtdot":"\u22F1","dtri":"\u25BF","dtrif":"\u25BE","duarr":"\u21F5","duhar":"\u296F","dwangle":"\u29A6","DZcy":"\u040F","dzcy":"\u045F","dzigrarr":"\u27FF","Eacute":"\u00C9","eacute":"\u00E9","easter":"\u2A6E","Ecaron":"\u011A","ecaron":"\u011B","Ecirc":"\u00CA","ecirc":"\u00EA","ecir":"\u2256","ecolon":"\u2255","Ecy":"\u042D","ecy":"\u044D","eDDot":"\u2A77","Edot":"\u0116","edot":"\u0117","eDot":"\u2251","ee":"\u2147","efDot":"\u2252","Efr":"\uD835\uDD08","efr":"\uD835\uDD22","eg":"\u2A9A","Egrave":"\u00C8","egrave":"\u00E8","egs":"\u2A96","egsdot":"\u2A98","el":"\u2A99","Element":"\u2208","elinters":"\u23E7","ell":"\u2113","els":"\u2A95","elsdot":"\u2A97","Emacr":"\u0112","emacr":"\u0113","empty":"\u2205","emptyset":"\u2205","EmptySmallSquare":"\u25FB","emptyv":"\u2205","EmptyVerySmallSquare":"\u25AB","emsp13":"\u2004","emsp14":"\u2005","emsp":"\u2003","ENG":"\u014A","eng":"\u014B","ensp":"\u2002","Eogon":"\u0118","eogon":"\u0119","Eopf":"\uD835\uDD3C","eopf":"\uD835\uDD56","epar":"\u22D5","eparsl":"\u29E3","eplus":"\u2A71","epsi":"\u03B5","Epsilon":"\u0395","epsilon":"\u03B5","epsiv":"\u03F5","eqcirc":"\u2256","eqcolon":"\u2255","eqsim":"\u2242","eqslantgtr":"\u2A96","eqslantless":"\u2A95","Equal":"\u2A75","equals":"=","EqualTilde":"\u2242","equest":"\u225F","Equilibrium":"\u21CC","equiv":"\u2261","equivDD":"\u2A78","eqvparsl":"\u29E5","erarr":"\u2971","erDot":"\u2253","escr":"\u212F","Escr":"\u2130","esdot":"\u2250","Esim":"\u2A73","esim":"\u2242","Eta":"\u0397","eta":"\u03B7","ETH":"\u00D0","eth":"\u00F0","Euml":"\u00CB","euml":"\u00EB","euro":"\u20AC","excl":"!","exist":"\u2203","Exists":"\u2203","expectation":"\u2130","exponentiale":"\u2147","ExponentialE":"\u2147","fallingdotseq":"\u2252","Fcy":"\u0424","fcy":"\u0444","female":"\u2640","ffilig":"\uFB03","fflig":"\uFB00","ffllig":"\uFB04","Ffr":"\uD835\uDD09","ffr":"\uD835\uDD23","filig":"\uFB01","FilledSmallSquare":"\u25FC","FilledVerySmallSquare":"\u25AA","fjlig":"fj","flat":"\u266D","fllig":"\uFB02","fltns":"\u25B1","fnof":"\u0192","Fopf":"\uD835\uDD3D","fopf":"\uD835\uDD57","forall":"\u2200","ForAll":"\u2200","fork":"\u22D4","forkv":"\u2AD9","Fouriertrf":"\u2131","fpartint":"\u2A0D","frac12":"\u00BD","frac13":"\u2153","frac14":"\u00BC","frac15":"\u2155","frac16":"\u2159","frac18":"\u215B","frac23":"\u2154","frac25":"\u2156","frac34":"\u00BE","frac35":"\u2157","frac38":"\u215C","frac45":"\u2158","frac56":"\u215A","frac58":"\u215D","frac78":"\u215E","frasl":"\u2044","frown":"\u2322","fscr":"\uD835\uDCBB","Fscr":"\u2131","gacute":"\u01F5","Gamma":"\u0393","gamma":"\u03B3","Gammad":"\u03DC","gammad":"\u03DD","gap":"\u2A86","Gbreve":"\u011E","gbreve":"\u011F","Gcedil":"\u0122","Gcirc":"\u011C","gcirc":"\u011D","Gcy":"\u0413","gcy":"\u0433","Gdot":"\u0120","gdot":"\u0121","ge":"\u2265","gE":"\u2267","gEl":"\u2A8C","gel":"\u22DB","geq":"\u2265","geqq":"\u2267","geqslant":"\u2A7E","gescc":"\u2AA9","ges":"\u2A7E","gesdot":"\u2A80","gesdoto":"\u2A82","gesdotol":"\u2A84","gesl":"\u22DB\uFE00","gesles":"\u2A94","Gfr":"\uD835\uDD0A","gfr":"\uD835\uDD24","gg":"\u226B","Gg":"\u22D9","ggg":"\u22D9","gimel":"\u2137","GJcy":"\u0403","gjcy":"\u0453","gla":"\u2AA5","gl":"\u2277","glE":"\u2A92","glj":"\u2AA4","gnap":"\u2A8A","gnapprox":"\u2A8A","gne":"\u2A88","gnE":"\u2269","gneq":"\u2A88","gneqq":"\u2269","gnsim":"\u22E7","Gopf":"\uD835\uDD3E","gopf":"\uD835\uDD58","grave":"`","GreaterEqual":"\u2265","GreaterEqualLess":"\u22DB","GreaterFullEqual":"\u2267","GreaterGreater":"\u2AA2","GreaterLess":"\u2277","GreaterSlantEqual":"\u2A7E","GreaterTilde":"\u2273","Gscr":"\uD835\uDCA2","gscr":"\u210A","gsim":"\u2273","gsime":"\u2A8E","gsiml":"\u2A90","gtcc":"\u2AA7","gtcir":"\u2A7A","gt":">","GT":">","Gt":"\u226B","gtdot":"\u22D7","gtlPar":"\u2995","gtquest":"\u2A7C","gtrapprox":"\u2A86","gtrarr":"\u2978","gtrdot":"\u22D7","gtreqless":"\u22DB","gtreqqless":"\u2A8C","gtrless":"\u2277","gtrsim":"\u2273","gvertneqq":"\u2269\uFE00","gvnE":"\u2269\uFE00","Hacek":"\u02C7","hairsp":"\u200A","half":"\u00BD","hamilt":"\u210B","HARDcy":"\u042A","hardcy":"\u044A","harrcir":"\u2948","harr":"\u2194","hArr":"\u21D4","harrw":"\u21AD","Hat":"^","hbar":"\u210F","Hcirc":"\u0124","hcirc":"\u0125","hearts":"\u2665","heartsuit":"\u2665","hellip":"\u2026","hercon":"\u22B9","hfr":"\uD835\uDD25","Hfr":"\u210C","HilbertSpace":"\u210B","hksearow":"\u2925","hkswarow":"\u2926","hoarr":"\u21FF","homtht":"\u223B","hookleftarrow":"\u21A9","hookrightarrow":"\u21AA","hopf":"\uD835\uDD59","Hopf":"\u210D","horbar":"\u2015","HorizontalLine":"\u2500","hscr":"\uD835\uDCBD","Hscr":"\u210B","hslash":"\u210F","Hstrok":"\u0126","hstrok":"\u0127","HumpDownHump":"\u224E","HumpEqual":"\u224F","hybull":"\u2043","hyphen":"\u2010","Iacute":"\u00CD","iacute":"\u00ED","ic":"\u2063","Icirc":"\u00CE","icirc":"\u00EE","Icy":"\u0418","icy":"\u0438","Idot":"\u0130","IEcy":"\u0415","iecy":"\u0435","iexcl":"\u00A1","iff":"\u21D4","ifr":"\uD835\uDD26","Ifr":"\u2111","Igrave":"\u00CC","igrave":"\u00EC","ii":"\u2148","iiiint":"\u2A0C","iiint":"\u222D","iinfin":"\u29DC","iiota":"\u2129","IJlig":"\u0132","ijlig":"\u0133","Imacr":"\u012A","imacr":"\u012B","image":"\u2111","ImaginaryI":"\u2148","imagline":"\u2110","imagpart":"\u2111","imath":"\u0131","Im":"\u2111","imof":"\u22B7","imped":"\u01B5","Implies":"\u21D2","incare":"\u2105","in":"\u2208","infin":"\u221E","infintie":"\u29DD","inodot":"\u0131","intcal":"\u22BA","int":"\u222B","Int":"\u222C","integers":"\u2124","Integral":"\u222B","intercal":"\u22BA","Intersection":"\u22C2","intlarhk":"\u2A17","intprod":"\u2A3C","InvisibleComma":"\u2063","InvisibleTimes":"\u2062","IOcy":"\u0401","iocy":"\u0451","Iogon":"\u012E","iogon":"\u012F","Iopf":"\uD835\uDD40","iopf":"\uD835\uDD5A","Iota":"\u0399","iota":"\u03B9","iprod":"\u2A3C","iquest":"\u00BF","iscr":"\uD835\uDCBE","Iscr":"\u2110","isin":"\u2208","isindot":"\u22F5","isinE":"\u22F9","isins":"\u22F4","isinsv":"\u22F3","isinv":"\u2208","it":"\u2062","Itilde":"\u0128","itilde":"\u0129","Iukcy":"\u0406","iukcy":"\u0456","Iuml":"\u00CF","iuml":"\u00EF","Jcirc":"\u0134","jcirc":"\u0135","Jcy":"\u0419","jcy":"\u0439","Jfr":"\uD835\uDD0D","jfr":"\uD835\uDD27","jmath":"\u0237","Jopf":"\uD835\uDD41","jopf":"\uD835\uDD5B","Jscr":"\uD835\uDCA5","jscr":"\uD835\uDCBF","Jsercy":"\u0408","jsercy":"\u0458","Jukcy":"\u0404","jukcy":"\u0454","Kappa":"\u039A","kappa":"\u03BA","kappav":"\u03F0","Kcedil":"\u0136","kcedil":"\u0137","Kcy":"\u041A","kcy":"\u043A","Kfr":"\uD835\uDD0E","kfr":"\uD835\uDD28","kgreen":"\u0138","KHcy":"\u0425","khcy":"\u0445","KJcy":"\u040C","kjcy":"\u045C","Kopf":"\uD835\uDD42","kopf":"\uD835\uDD5C","Kscr":"\uD835\uDCA6","kscr":"\uD835\uDCC0","lAarr":"\u21DA","Lacute":"\u0139","lacute":"\u013A","laemptyv":"\u29B4","lagran":"\u2112","Lambda":"\u039B","lambda":"\u03BB","lang":"\u27E8","Lang":"\u27EA","langd":"\u2991","langle":"\u27E8","lap":"\u2A85","Laplacetrf":"\u2112","laquo":"\u00AB","larrb":"\u21E4","larrbfs":"\u291F","larr":"\u2190","Larr":"\u219E","lArr":"\u21D0","larrfs":"\u291D","larrhk":"\u21A9","larrlp":"\u21AB","larrpl":"\u2939","larrsim":"\u2973","larrtl":"\u21A2","latail":"\u2919","lAtail":"\u291B","lat":"\u2AAB","late":"\u2AAD","lates":"\u2AAD\uFE00","lbarr":"\u290C","lBarr":"\u290E","lbbrk":"\u2772","lbrace":"{","lbrack":"[","lbrke":"\u298B","lbrksld":"\u298F","lbrkslu":"\u298D","Lcaron":"\u013D","lcaron":"\u013E","Lcedil":"\u013B","lcedil":"\u013C","lceil":"\u2308","lcub":"{","Lcy":"\u041B","lcy":"\u043B","ldca":"\u2936","ldquo":"\u201C","ldquor":"\u201E","ldrdhar":"\u2967","ldrushar":"\u294B","ldsh":"\u21B2","le":"\u2264","lE":"\u2266","LeftAngleBracket":"\u27E8","LeftArrowBar":"\u21E4","leftarrow":"\u2190","LeftArrow":"\u2190","Leftarrow":"\u21D0","LeftArrowRightArrow":"\u21C6","leftarrowtail":"\u21A2","LeftCeiling":"\u2308","LeftDoubleBracket":"\u27E6","LeftDownTeeVector":"\u2961","LeftDownVectorBar":"\u2959","LeftDownVector":"\u21C3","LeftFloor":"\u230A","leftharpoondown":"\u21BD","leftharpoonup":"\u21BC","leftleftarrows":"\u21C7","leftrightarrow":"\u2194","LeftRightArrow":"\u2194","Leftrightarrow":"\u21D4","leftrightarrows":"\u21C6","leftrightharpoons":"\u21CB","leftrightsquigarrow":"\u21AD","LeftRightVector":"\u294E","LeftTeeArrow":"\u21A4","LeftTee":"\u22A3","LeftTeeVector":"\u295A","leftthreetimes":"\u22CB","LeftTriangleBar":"\u29CF","LeftTriangle":"\u22B2","LeftTriangleEqual":"\u22B4","LeftUpDownVector":"\u2951","LeftUpTeeVector":"\u2960","LeftUpVectorBar":"\u2958","LeftUpVector":"\u21BF","LeftVectorBar":"\u2952","LeftVector":"\u21BC","lEg":"\u2A8B","leg":"\u22DA","leq":"\u2264","leqq":"\u2266","leqslant":"\u2A7D","lescc":"\u2AA8","les":"\u2A7D","lesdot":"\u2A7F","lesdoto":"\u2A81","lesdotor":"\u2A83","lesg":"\u22DA\uFE00","lesges":"\u2A93","lessapprox":"\u2A85","lessdot":"\u22D6","lesseqgtr":"\u22DA","lesseqqgtr":"\u2A8B","LessEqualGreater":"\u22DA","LessFullEqual":"\u2266","LessGreater":"\u2276","lessgtr":"\u2276","LessLess":"\u2AA1","lesssim":"\u2272","LessSlantEqual":"\u2A7D","LessTilde":"\u2272","lfisht":"\u297C","lfloor":"\u230A","Lfr":"\uD835\uDD0F","lfr":"\uD835\uDD29","lg":"\u2276","lgE":"\u2A91","lHar":"\u2962","lhard":"\u21BD","lharu":"\u21BC","lharul":"\u296A","lhblk":"\u2584","LJcy":"\u0409","ljcy":"\u0459","llarr":"\u21C7","ll":"\u226A","Ll":"\u22D8","llcorner":"\u231E","Lleftarrow":"\u21DA","llhard":"\u296B","lltri":"\u25FA","Lmidot":"\u013F","lmidot":"\u0140","lmoustache":"\u23B0","lmoust":"\u23B0","lnap":"\u2A89","lnapprox":"\u2A89","lne":"\u2A87","lnE":"\u2268","lneq":"\u2A87","lneqq":"\u2268","lnsim":"\u22E6","loang":"\u27EC","loarr":"\u21FD","lobrk":"\u27E6","longleftarrow":"\u27F5","LongLeftArrow":"\u27F5","Longleftarrow":"\u27F8","longleftrightarrow":"\u27F7","LongLeftRightArrow":"\u27F7","Longleftrightarrow":"\u27FA","longmapsto":"\u27FC","longrightarrow":"\u27F6","LongRightArrow":"\u27F6","Longrightarrow":"\u27F9","looparrowleft":"\u21AB","looparrowright":"\u21AC","lopar":"\u2985","Lopf":"\uD835\uDD43","lopf":"\uD835\uDD5D","loplus":"\u2A2D","lotimes":"\u2A34","lowast":"\u2217","lowbar":"_","LowerLeftArrow":"\u2199","LowerRightArrow":"\u2198","loz":"\u25CA","lozenge":"\u25CA","lozf":"\u29EB","lpar":"(","lparlt":"\u2993","lrarr":"\u21C6","lrcorner":"\u231F","lrhar":"\u21CB","lrhard":"\u296D","lrm":"\u200E","lrtri":"\u22BF","lsaquo":"\u2039","lscr":"\uD835\uDCC1","Lscr":"\u2112","lsh":"\u21B0","Lsh":"\u21B0","lsim":"\u2272","lsime":"\u2A8D","lsimg":"\u2A8F","lsqb":"[","lsquo":"\u2018","lsquor":"\u201A","Lstrok":"\u0141","lstrok":"\u0142","ltcc":"\u2AA6","ltcir":"\u2A79","lt":"<","LT":"<","Lt":"\u226A","ltdot":"\u22D6","lthree":"\u22CB","ltimes":"\u22C9","ltlarr":"\u2976","ltquest":"\u2A7B","ltri":"\u25C3","ltrie":"\u22B4","ltrif":"\u25C2","ltrPar":"\u2996","lurdshar":"\u294A","luruhar":"\u2966","lvertneqq":"\u2268\uFE00","lvnE":"\u2268\uFE00","macr":"\u00AF","male":"\u2642","malt":"\u2720","maltese":"\u2720","Map":"\u2905","map":"\u21A6","mapsto":"\u21A6","mapstodown":"\u21A7","mapstoleft":"\u21A4","mapstoup":"\u21A5","marker":"\u25AE","mcomma":"\u2A29","Mcy":"\u041C","mcy":"\u043C","mdash":"\u2014","mDDot":"\u223A","measuredangle":"\u2221","MediumSpace":"\u205F","Mellintrf":"\u2133","Mfr":"\uD835\uDD10","mfr":"\uD835\uDD2A","mho":"\u2127","micro":"\u00B5","midast":"*","midcir":"\u2AF0","mid":"\u2223","middot":"\u00B7","minusb":"\u229F","minus":"\u2212","minusd":"\u2238","minusdu":"\u2A2A","MinusPlus":"\u2213","mlcp":"\u2ADB","mldr":"\u2026","mnplus":"\u2213","models":"\u22A7","Mopf":"\uD835\uDD44","mopf":"\uD835\uDD5E","mp":"\u2213","mscr":"\uD835\uDCC2","Mscr":"\u2133","mstpos":"\u223E","Mu":"\u039C","mu":"\u03BC","multimap":"\u22B8","mumap":"\u22B8","nabla":"\u2207","Nacute":"\u0143","nacute":"\u0144","nang":"\u2220\u20D2","nap":"\u2249","napE":"\u2A70\u0338","napid":"\u224B\u0338","napos":"\u0149","napprox":"\u2249","natural":"\u266E","naturals":"\u2115","natur":"\u266E","nbsp":"\u00A0","nbump":"\u224E\u0338","nbumpe":"\u224F\u0338","ncap":"\u2A43","Ncaron":"\u0147","ncaron":"\u0148","Ncedil":"\u0145","ncedil":"\u0146","ncong":"\u2247","ncongdot":"\u2A6D\u0338","ncup":"\u2A42","Ncy":"\u041D","ncy":"\u043D","ndash":"\u2013","nearhk":"\u2924","nearr":"\u2197","neArr":"\u21D7","nearrow":"\u2197","ne":"\u2260","nedot":"\u2250\u0338","NegativeMediumSpace":"\u200B","NegativeThickSpace":"\u200B","NegativeThinSpace":"\u200B","NegativeVeryThinSpace":"\u200B","nequiv":"\u2262","nesear":"\u2928","nesim":"\u2242\u0338","NestedGreaterGreater":"\u226B","NestedLessLess":"\u226A","NewLine":"\n","nexist":"\u2204","nexists":"\u2204","Nfr":"\uD835\uDD11","nfr":"\uD835\uDD2B","ngE":"\u2267\u0338","nge":"\u2271","ngeq":"\u2271","ngeqq":"\u2267\u0338","ngeqslant":"\u2A7E\u0338","nges":"\u2A7E\u0338","nGg":"\u22D9\u0338","ngsim":"\u2275","nGt":"\u226B\u20D2","ngt":"\u226F","ngtr":"\u226F","nGtv":"\u226B\u0338","nharr":"\u21AE","nhArr":"\u21CE","nhpar":"\u2AF2","ni":"\u220B","nis":"\u22FC","nisd":"\u22FA","niv":"\u220B","NJcy":"\u040A","njcy":"\u045A","nlarr":"\u219A","nlArr":"\u21CD","nldr":"\u2025","nlE":"\u2266\u0338","nle":"\u2270","nleftarrow":"\u219A","nLeftarrow":"\u21CD","nleftrightarrow":"\u21AE","nLeftrightarrow":"\u21CE","nleq":"\u2270","nleqq":"\u2266\u0338","nleqslant":"\u2A7D\u0338","nles":"\u2A7D\u0338","nless":"\u226E","nLl":"\u22D8\u0338","nlsim":"\u2274","nLt":"\u226A\u20D2","nlt":"\u226E","nltri":"\u22EA","nltrie":"\u22EC","nLtv":"\u226A\u0338","nmid":"\u2224","NoBreak":"\u2060","NonBreakingSpace":"\u00A0","nopf":"\uD835\uDD5F","Nopf":"\u2115","Not":"\u2AEC","not":"\u00AC","NotCongruent":"\u2262","NotCupCap":"\u226D","NotDoubleVerticalBar":"\u2226","NotElement":"\u2209","NotEqual":"\u2260","NotEqualTilde":"\u2242\u0338","NotExists":"\u2204","NotGreater":"\u226F","NotGreaterEqual":"\u2271","NotGreaterFullEqual":"\u2267\u0338","NotGreaterGreater":"\u226B\u0338","NotGreaterLess":"\u2279","NotGreaterSlantEqual":"\u2A7E\u0338","NotGreaterTilde":"\u2275","NotHumpDownHump":"\u224E\u0338","NotHumpEqual":"\u224F\u0338","notin":"\u2209","notindot":"\u22F5\u0338","notinE":"\u22F9\u0338","notinva":"\u2209","notinvb":"\u22F7","notinvc":"\u22F6","NotLeftTriangleBar":"\u29CF\u0338","NotLeftTriangle":"\u22EA","NotLeftTriangleEqual":"\u22EC","NotLess":"\u226E","NotLessEqual":"\u2270","NotLessGreater":"\u2278","NotLessLess":"\u226A\u0338","NotLessSlantEqual":"\u2A7D\u0338","NotLessTilde":"\u2274","NotNestedGreaterGreater":"\u2AA2\u0338","NotNestedLessLess":"\u2AA1\u0338","notni":"\u220C","notniva":"\u220C","notnivb":"\u22FE","notnivc":"\u22FD","NotPrecedes":"\u2280","NotPrecedesEqual":"\u2AAF\u0338","NotPrecedesSlantEqual":"\u22E0","NotReverseElement":"\u220C","NotRightTriangleBar":"\u29D0\u0338","NotRightTriangle":"\u22EB","NotRightTriangleEqual":"\u22ED","NotSquareSubset":"\u228F\u0338","NotSquareSubsetEqual":"\u22E2","NotSquareSuperset":"\u2290\u0338","NotSquareSupersetEqual":"\u22E3","NotSubset":"\u2282\u20D2","NotSubsetEqual":"\u2288","NotSucceeds":"\u2281","NotSucceedsEqual":"\u2AB0\u0338","NotSucceedsSlantEqual":"\u22E1","NotSucceedsTilde":"\u227F\u0338","NotSuperset":"\u2283\u20D2","NotSupersetEqual":"\u2289","NotTilde":"\u2241","NotTildeEqual":"\u2244","NotTildeFullEqual":"\u2247","NotTildeTilde":"\u2249","NotVerticalBar":"\u2224","nparallel":"\u2226","npar":"\u2226","nparsl":"\u2AFD\u20E5","npart":"\u2202\u0338","npolint":"\u2A14","npr":"\u2280","nprcue":"\u22E0","nprec":"\u2280","npreceq":"\u2AAF\u0338","npre":"\u2AAF\u0338","nrarrc":"\u2933\u0338","nrarr":"\u219B","nrArr":"\u21CF","nrarrw":"\u219D\u0338","nrightarrow":"\u219B","nRightarrow":"\u21CF","nrtri":"\u22EB","nrtrie":"\u22ED","nsc":"\u2281","nsccue":"\u22E1","nsce":"\u2AB0\u0338","Nscr":"\uD835\uDCA9","nscr":"\uD835\uDCC3","nshortmid":"\u2224","nshortparallel":"\u2226","nsim":"\u2241","nsime":"\u2244","nsimeq":"\u2244","nsmid":"\u2224","nspar":"\u2226","nsqsube":"\u22E2","nsqsupe":"\u22E3","nsub":"\u2284","nsubE":"\u2AC5\u0338","nsube":"\u2288","nsubset":"\u2282\u20D2","nsubseteq":"\u2288","nsubseteqq":"\u2AC5\u0338","nsucc":"\u2281","nsucceq":"\u2AB0\u0338","nsup":"\u2285","nsupE":"\u2AC6\u0338","nsupe":"\u2289","nsupset":"\u2283\u20D2","nsupseteq":"\u2289","nsupseteqq":"\u2AC6\u0338","ntgl":"\u2279","Ntilde":"\u00D1","ntilde":"\u00F1","ntlg":"\u2278","ntriangleleft":"\u22EA","ntrianglelefteq":"\u22EC","ntriangleright":"\u22EB","ntrianglerighteq":"\u22ED","Nu":"\u039D","nu":"\u03BD","num":"#","numero":"\u2116","numsp":"\u2007","nvap":"\u224D\u20D2","nvdash":"\u22AC","nvDash":"\u22AD","nVdash":"\u22AE","nVDash":"\u22AF","nvge":"\u2265\u20D2","nvgt":">\u20D2","nvHarr":"\u2904","nvinfin":"\u29DE","nvlArr":"\u2902","nvle":"\u2264\u20D2","nvlt":"<\u20D2","nvltrie":"\u22B4\u20D2","nvrArr":"\u2903","nvrtrie":"\u22B5\u20D2","nvsim":"\u223C\u20D2","nwarhk":"\u2923","nwarr":"\u2196","nwArr":"\u21D6","nwarrow":"\u2196","nwnear":"\u2927","Oacute":"\u00D3","oacute":"\u00F3","oast":"\u229B","Ocirc":"\u00D4","ocirc":"\u00F4","ocir":"\u229A","Ocy":"\u041E","ocy":"\u043E","odash":"\u229D","Odblac":"\u0150","odblac":"\u0151","odiv":"\u2A38","odot":"\u2299","odsold":"\u29BC","OElig":"\u0152","oelig":"\u0153","ofcir":"\u29BF","Ofr":"\uD835\uDD12","ofr":"\uD835\uDD2C","ogon":"\u02DB","Ograve":"\u00D2","ograve":"\u00F2","ogt":"\u29C1","ohbar":"\u29B5","ohm":"\u03A9","oint":"\u222E","olarr":"\u21BA","olcir":"\u29BE","olcross":"\u29BB","oline":"\u203E","olt":"\u29C0","Omacr":"\u014C","omacr":"\u014D","Omega":"\u03A9","omega":"\u03C9","Omicron":"\u039F","omicron":"\u03BF","omid":"\u29B6","ominus":"\u2296","Oopf":"\uD835\uDD46","oopf":"\uD835\uDD60","opar":"\u29B7","OpenCurlyDoubleQuote":"\u201C","OpenCurlyQuote":"\u2018","operp":"\u29B9","oplus":"\u2295","orarr":"\u21BB","Or":"\u2A54","or":"\u2228","ord":"\u2A5D","order":"\u2134","orderof":"\u2134","ordf":"\u00AA","ordm":"\u00BA","origof":"\u22B6","oror":"\u2A56","orslope":"\u2A57","orv":"\u2A5B","oS":"\u24C8","Oscr":"\uD835\uDCAA","oscr":"\u2134","Oslash":"\u00D8","oslash":"\u00F8","osol":"\u2298","Otilde":"\u00D5","otilde":"\u00F5","otimesas":"\u2A36","Otimes":"\u2A37","otimes":"\u2297","Ouml":"\u00D6","ouml":"\u00F6","ovbar":"\u233D","OverBar":"\u203E","OverBrace":"\u23DE","OverBracket":"\u23B4","OverParenthesis":"\u23DC","para":"\u00B6","parallel":"\u2225","par":"\u2225","parsim":"\u2AF3","parsl":"\u2AFD","part":"\u2202","PartialD":"\u2202","Pcy":"\u041F","pcy":"\u043F","percnt":"%","period":".","permil":"\u2030","perp":"\u22A5","pertenk":"\u2031","Pfr":"\uD835\uDD13","pfr":"\uD835\uDD2D","Phi":"\u03A6","phi":"\u03C6","phiv":"\u03D5","phmmat":"\u2133","phone":"\u260E","Pi":"\u03A0","pi":"\u03C0","pitchfork":"\u22D4","piv":"\u03D6","planck":"\u210F","planckh":"\u210E","plankv":"\u210F","plusacir":"\u2A23","plusb":"\u229E","pluscir":"\u2A22","plus":"+","plusdo":"\u2214","plusdu":"\u2A25","pluse":"\u2A72","PlusMinus":"\u00B1","plusmn":"\u00B1","plussim":"\u2A26","plustwo":"\u2A27","pm":"\u00B1","Poincareplane":"\u210C","pointint":"\u2A15","popf":"\uD835\uDD61","Popf":"\u2119","pound":"\u00A3","prap":"\u2AB7","Pr":"\u2ABB","pr":"\u227A","prcue":"\u227C","precapprox":"\u2AB7","prec":"\u227A","preccurlyeq":"\u227C","Precedes":"\u227A","PrecedesEqual":"\u2AAF","PrecedesSlantEqual":"\u227C","PrecedesTilde":"\u227E","preceq":"\u2AAF","precnapprox":"\u2AB9","precneqq":"\u2AB5","precnsim":"\u22E8","pre":"\u2AAF","prE":"\u2AB3","precsim":"\u227E","prime":"\u2032","Prime":"\u2033","primes":"\u2119","prnap":"\u2AB9","prnE":"\u2AB5","prnsim":"\u22E8","prod":"\u220F","Product":"\u220F","profalar":"\u232E","profline":"\u2312","profsurf":"\u2313","prop":"\u221D","Proportional":"\u221D","Proportion":"\u2237","propto":"\u221D","prsim":"\u227E","prurel":"\u22B0","Pscr":"\uD835\uDCAB","pscr":"\uD835\uDCC5","Psi":"\u03A8","psi":"\u03C8","puncsp":"\u2008","Qfr":"\uD835\uDD14","qfr":"\uD835\uDD2E","qint":"\u2A0C","qopf":"\uD835\uDD62","Qopf":"\u211A","qprime":"\u2057","Qscr":"\uD835\uDCAC","qscr":"\uD835\uDCC6","quaternions":"\u210D","quatint":"\u2A16","quest":"?","questeq":"\u225F","quot":"\"","QUOT":"\"","rAarr":"\u21DB","race":"\u223D\u0331","Racute":"\u0154","racute":"\u0155","radic":"\u221A","raemptyv":"\u29B3","rang":"\u27E9","Rang":"\u27EB","rangd":"\u2992","range":"\u29A5","rangle":"\u27E9","raquo":"\u00BB","rarrap":"\u2975","rarrb":"\u21E5","rarrbfs":"\u2920","rarrc":"\u2933","rarr":"\u2192","Rarr":"\u21A0","rArr":"\u21D2","rarrfs":"\u291E","rarrhk":"\u21AA","rarrlp":"\u21AC","rarrpl":"\u2945","rarrsim":"\u2974","Rarrtl":"\u2916","rarrtl":"\u21A3","rarrw":"\u219D","ratail":"\u291A","rAtail":"\u291C","ratio":"\u2236","rationals":"\u211A","rbarr":"\u290D","rBarr":"\u290F","RBarr":"\u2910","rbbrk":"\u2773","rbrace":"}","rbrack":"]","rbrke":"\u298C","rbrksld":"\u298E","rbrkslu":"\u2990","Rcaron":"\u0158","rcaron":"\u0159","Rcedil":"\u0156","rcedil":"\u0157","rceil":"\u2309","rcub":"}","Rcy":"\u0420","rcy":"\u0440","rdca":"\u2937","rdldhar":"\u2969","rdquo":"\u201D","rdquor":"\u201D","rdsh":"\u21B3","real":"\u211C","realine":"\u211B","realpart":"\u211C","reals":"\u211D","Re":"\u211C","rect":"\u25AD","reg":"\u00AE","REG":"\u00AE","ReverseElement":"\u220B","ReverseEquilibrium":"\u21CB","ReverseUpEquilibrium":"\u296F","rfisht":"\u297D","rfloor":"\u230B","rfr":"\uD835\uDD2F","Rfr":"\u211C","rHar":"\u2964","rhard":"\u21C1","rharu":"\u21C0","rharul":"\u296C","Rho":"\u03A1","rho":"\u03C1","rhov":"\u03F1","RightAngleBracket":"\u27E9","RightArrowBar":"\u21E5","rightarrow":"\u2192","RightArrow":"\u2192","Rightarrow":"\u21D2","RightArrowLeftArrow":"\u21C4","rightarrowtail":"\u21A3","RightCeiling":"\u2309","RightDoubleBracket":"\u27E7","RightDownTeeVector":"\u295D","RightDownVectorBar":"\u2955","RightDownVector":"\u21C2","RightFloor":"\u230B","rightharpoondown":"\u21C1","rightharpoonup":"\u21C0","rightleftarrows":"\u21C4","rightleftharpoons":"\u21CC","rightrightarrows":"\u21C9","rightsquigarrow":"\u219D","RightTeeArrow":"\u21A6","RightTee":"\u22A2","RightTeeVector":"\u295B","rightthreetimes":"\u22CC","RightTriangleBar":"\u29D0","RightTriangle":"\u22B3","RightTriangleEqual":"\u22B5","RightUpDownVector":"\u294F","RightUpTeeVector":"\u295C","RightUpVectorBar":"\u2954","RightUpVector":"\u21BE","RightVectorBar":"\u2953","RightVector":"\u21C0","ring":"\u02DA","risingdotseq":"\u2253","rlarr":"\u21C4","rlhar":"\u21CC","rlm":"\u200F","rmoustache":"\u23B1","rmoust":"\u23B1","rnmid":"\u2AEE","roang":"\u27ED","roarr":"\u21FE","robrk":"\u27E7","ropar":"\u2986","ropf":"\uD835\uDD63","Ropf":"\u211D","roplus":"\u2A2E","rotimes":"\u2A35","RoundImplies":"\u2970","rpar":")","rpargt":"\u2994","rppolint":"\u2A12","rrarr":"\u21C9","Rrightarrow":"\u21DB","rsaquo":"\u203A","rscr":"\uD835\uDCC7","Rscr":"\u211B","rsh":"\u21B1","Rsh":"\u21B1","rsqb":"]","rsquo":"\u2019","rsquor":"\u2019","rthree":"\u22CC","rtimes":"\u22CA","rtri":"\u25B9","rtrie":"\u22B5","rtrif":"\u25B8","rtriltri":"\u29CE","RuleDelayed":"\u29F4","ruluhar":"\u2968","rx":"\u211E","Sacute":"\u015A","sacute":"\u015B","sbquo":"\u201A","scap":"\u2AB8","Scaron":"\u0160","scaron":"\u0161","Sc":"\u2ABC","sc":"\u227B","sccue":"\u227D","sce":"\u2AB0","scE":"\u2AB4","Scedil":"\u015E","scedil":"\u015F","Scirc":"\u015C","scirc":"\u015D","scnap":"\u2ABA","scnE":"\u2AB6","scnsim":"\u22E9","scpolint":"\u2A13","scsim":"\u227F","Scy":"\u0421","scy":"\u0441","sdotb":"\u22A1","sdot":"\u22C5","sdote":"\u2A66","searhk":"\u2925","searr":"\u2198","seArr":"\u21D8","searrow":"\u2198","sect":"\u00A7","semi":";","seswar":"\u2929","setminus":"\u2216","setmn":"\u2216","sext":"\u2736","Sfr":"\uD835\uDD16","sfr":"\uD835\uDD30","sfrown":"\u2322","sharp":"\u266F","SHCHcy":"\u0429","shchcy":"\u0449","SHcy":"\u0428","shcy":"\u0448","ShortDownArrow":"\u2193","ShortLeftArrow":"\u2190","shortmid":"\u2223","shortparallel":"\u2225","ShortRightArrow":"\u2192","ShortUpArrow":"\u2191","shy":"\u00AD","Sigma":"\u03A3","sigma":"\u03C3","sigmaf":"\u03C2","sigmav":"\u03C2","sim":"\u223C","simdot":"\u2A6A","sime":"\u2243","simeq":"\u2243","simg":"\u2A9E","simgE":"\u2AA0","siml":"\u2A9D","simlE":"\u2A9F","simne":"\u2246","simplus":"\u2A24","simrarr":"\u2972","slarr":"\u2190","SmallCircle":"\u2218","smallsetminus":"\u2216","smashp":"\u2A33","smeparsl":"\u29E4","smid":"\u2223","smile":"\u2323","smt":"\u2AAA","smte":"\u2AAC","smtes":"\u2AAC\uFE00","SOFTcy":"\u042C","softcy":"\u044C","solbar":"\u233F","solb":"\u29C4","sol":"/","Sopf":"\uD835\uDD4A","sopf":"\uD835\uDD64","spades":"\u2660","spadesuit":"\u2660","spar":"\u2225","sqcap":"\u2293","sqcaps":"\u2293\uFE00","sqcup":"\u2294","sqcups":"\u2294\uFE00","Sqrt":"\u221A","sqsub":"\u228F","sqsube":"\u2291","sqsubset":"\u228F","sqsubseteq":"\u2291","sqsup":"\u2290","sqsupe":"\u2292","sqsupset":"\u2290","sqsupseteq":"\u2292","square":"\u25A1","Square":"\u25A1","SquareIntersection":"\u2293","SquareSubset":"\u228F","SquareSubsetEqual":"\u2291","SquareSuperset":"\u2290","SquareSupersetEqual":"\u2292","SquareUnion":"\u2294","squarf":"\u25AA","squ":"\u25A1","squf":"\u25AA","srarr":"\u2192","Sscr":"\uD835\uDCAE","sscr":"\uD835\uDCC8","ssetmn":"\u2216","ssmile":"\u2323","sstarf":"\u22C6","Star":"\u22C6","star":"\u2606","starf":"\u2605","straightepsilon":"\u03F5","straightphi":"\u03D5","strns":"\u00AF","sub":"\u2282","Sub":"\u22D0","subdot":"\u2ABD","subE":"\u2AC5","sube":"\u2286","subedot":"\u2AC3","submult":"\u2AC1","subnE":"\u2ACB","subne":"\u228A","subplus":"\u2ABF","subrarr":"\u2979","subset":"\u2282","Subset":"\u22D0","subseteq":"\u2286","subseteqq":"\u2AC5","SubsetEqual":"\u2286","subsetneq":"\u228A","subsetneqq":"\u2ACB","subsim":"\u2AC7","subsub":"\u2AD5","subsup":"\u2AD3","succapprox":"\u2AB8","succ":"\u227B","succcurlyeq":"\u227D","Succeeds":"\u227B","SucceedsEqual":"\u2AB0","SucceedsSlantEqual":"\u227D","SucceedsTilde":"\u227F","succeq":"\u2AB0","succnapprox":"\u2ABA","succneqq":"\u2AB6","succnsim":"\u22E9","succsim":"\u227F","SuchThat":"\u220B","sum":"\u2211","Sum":"\u2211","sung":"\u266A","sup1":"\u00B9","sup2":"\u00B2","sup3":"\u00B3","sup":"\u2283","Sup":"\u22D1","supdot":"\u2ABE","supdsub":"\u2AD8","supE":"\u2AC6","supe":"\u2287","supedot":"\u2AC4","Superset":"\u2283","SupersetEqual":"\u2287","suphsol":"\u27C9","suphsub":"\u2AD7","suplarr":"\u297B","supmult":"\u2AC2","supnE":"\u2ACC","supne":"\u228B","supplus":"\u2AC0","supset":"\u2283","Supset":"\u22D1","supseteq":"\u2287","supseteqq":"\u2AC6","supsetneq":"\u228B","supsetneqq":"\u2ACC","supsim":"\u2AC8","supsub":"\u2AD4","supsup":"\u2AD6","swarhk":"\u2926","swarr":"\u2199","swArr":"\u21D9","swarrow":"\u2199","swnwar":"\u292A","szlig":"\u00DF","Tab":"\t","target":"\u2316","Tau":"\u03A4","tau":"\u03C4","tbrk":"\u23B4","Tcaron":"\u0164","tcaron":"\u0165","Tcedil":"\u0162","tcedil":"\u0163","Tcy":"\u0422","tcy":"\u0442","tdot":"\u20DB","telrec":"\u2315","Tfr":"\uD835\uDD17","tfr":"\uD835\uDD31","there4":"\u2234","therefore":"\u2234","Therefore":"\u2234","Theta":"\u0398","theta":"\u03B8","thetasym":"\u03D1","thetav":"\u03D1","thickapprox":"\u2248","thicksim":"\u223C","ThickSpace":"\u205F\u200A","ThinSpace":"\u2009","thinsp":"\u2009","thkap":"\u2248","thksim":"\u223C","THORN":"\u00DE","thorn":"\u00FE","tilde":"\u02DC","Tilde":"\u223C","TildeEqual":"\u2243","TildeFullEqual":"\u2245","TildeTilde":"\u2248","timesbar":"\u2A31","timesb":"\u22A0","times":"\u00D7","timesd":"\u2A30","tint":"\u222D","toea":"\u2928","topbot":"\u2336","topcir":"\u2AF1","top":"\u22A4","Topf":"\uD835\uDD4B","topf":"\uD835\uDD65","topfork":"\u2ADA","tosa":"\u2929","tprime":"\u2034","trade":"\u2122","TRADE":"\u2122","triangle":"\u25B5","triangledown":"\u25BF","triangleleft":"\u25C3","trianglelefteq":"\u22B4","triangleq":"\u225C","triangleright":"\u25B9","trianglerighteq":"\u22B5","tridot":"\u25EC","trie":"\u225C","triminus":"\u2A3A","TripleDot":"\u20DB","triplus":"\u2A39","trisb":"\u29CD","tritime":"\u2A3B","trpezium":"\u23E2","Tscr":"\uD835\uDCAF","tscr":"\uD835\uDCC9","TScy":"\u0426","tscy":"\u0446","TSHcy":"\u040B","tshcy":"\u045B","Tstrok":"\u0166","tstrok":"\u0167","twixt":"\u226C","twoheadleftarrow":"\u219E","twoheadrightarrow":"\u21A0","Uacute":"\u00DA","uacute":"\u00FA","uarr":"\u2191","Uarr":"\u219F","uArr":"\u21D1","Uarrocir":"\u2949","Ubrcy":"\u040E","ubrcy":"\u045E","Ubreve":"\u016C","ubreve":"\u016D","Ucirc":"\u00DB","ucirc":"\u00FB","Ucy":"\u0423","ucy":"\u0443","udarr":"\u21C5","Udblac":"\u0170","udblac":"\u0171","udhar":"\u296E","ufisht":"\u297E","Ufr":"\uD835\uDD18","ufr":"\uD835\uDD32","Ugrave":"\u00D9","ugrave":"\u00F9","uHar":"\u2963","uharl":"\u21BF","uharr":"\u21BE","uhblk":"\u2580","ulcorn":"\u231C","ulcorner":"\u231C","ulcrop":"\u230F","ultri":"\u25F8","Umacr":"\u016A","umacr":"\u016B","uml":"\u00A8","UnderBar":"_","UnderBrace":"\u23DF","UnderBracket":"\u23B5","UnderParenthesis":"\u23DD","Union":"\u22C3","UnionPlus":"\u228E","Uogon":"\u0172","uogon":"\u0173","Uopf":"\uD835\uDD4C","uopf":"\uD835\uDD66","UpArrowBar":"\u2912","uparrow":"\u2191","UpArrow":"\u2191","Uparrow":"\u21D1","UpArrowDownArrow":"\u21C5","updownarrow":"\u2195","UpDownArrow":"\u2195","Updownarrow":"\u21D5","UpEquilibrium":"\u296E","upharpoonleft":"\u21BF","upharpoonright":"\u21BE","uplus":"\u228E","UpperLeftArrow":"\u2196","UpperRightArrow":"\u2197","upsi":"\u03C5","Upsi":"\u03D2","upsih":"\u03D2","Upsilon":"\u03A5","upsilon":"\u03C5","UpTeeArrow":"\u21A5","UpTee":"\u22A5","upuparrows":"\u21C8","urcorn":"\u231D","urcorner":"\u231D","urcrop":"\u230E","Uring":"\u016E","uring":"\u016F","urtri":"\u25F9","Uscr":"\uD835\uDCB0","uscr":"\uD835\uDCCA","utdot":"\u22F0","Utilde":"\u0168","utilde":"\u0169","utri":"\u25B5","utrif":"\u25B4","uuarr":"\u21C8","Uuml":"\u00DC","uuml":"\u00FC","uwangle":"\u29A7","vangrt":"\u299C","varepsilon":"\u03F5","varkappa":"\u03F0","varnothing":"\u2205","varphi":"\u03D5","varpi":"\u03D6","varpropto":"\u221D","varr":"\u2195","vArr":"\u21D5","varrho":"\u03F1","varsigma":"\u03C2","varsubsetneq":"\u228A\uFE00","varsubsetneqq":"\u2ACB\uFE00","varsupsetneq":"\u228B\uFE00","varsupsetneqq":"\u2ACC\uFE00","vartheta":"\u03D1","vartriangleleft":"\u22B2","vartriangleright":"\u22B3","vBar":"\u2AE8","Vbar":"\u2AEB","vBarv":"\u2AE9","Vcy":"\u0412","vcy":"\u0432","vdash":"\u22A2","vDash":"\u22A8","Vdash":"\u22A9","VDash":"\u22AB","Vdashl":"\u2AE6","veebar":"\u22BB","vee":"\u2228","Vee":"\u22C1","veeeq":"\u225A","vellip":"\u22EE","verbar":"|","Verbar":"\u2016","vert":"|","Vert":"\u2016","VerticalBar":"\u2223","VerticalLine":"|","VerticalSeparator":"\u2758","VerticalTilde":"\u2240","VeryThinSpace":"\u200A","Vfr":"\uD835\uDD19","vfr":"\uD835\uDD33","vltri":"\u22B2","vnsub":"\u2282\u20D2","vnsup":"\u2283\u20D2","Vopf":"\uD835\uDD4D","vopf":"\uD835\uDD67","vprop":"\u221D","vrtri":"\u22B3","Vscr":"\uD835\uDCB1","vscr":"\uD835\uDCCB","vsubnE":"\u2ACB\uFE00","vsubne":"\u228A\uFE00","vsupnE":"\u2ACC\uFE00","vsupne":"\u228B\uFE00","Vvdash":"\u22AA","vzigzag":"\u299A","Wcirc":"\u0174","wcirc":"\u0175","wedbar":"\u2A5F","wedge":"\u2227","Wedge":"\u22C0","wedgeq":"\u2259","weierp":"\u2118","Wfr":"\uD835\uDD1A","wfr":"\uD835\uDD34","Wopf":"\uD835\uDD4E","wopf":"\uD835\uDD68","wp":"\u2118","wr":"\u2240","wreath":"\u2240","Wscr":"\uD835\uDCB2","wscr":"\uD835\uDCCC","xcap":"\u22C2","xcirc":"\u25EF","xcup":"\u22C3","xdtri":"\u25BD","Xfr":"\uD835\uDD1B","xfr":"\uD835\uDD35","xharr":"\u27F7","xhArr":"\u27FA","Xi":"\u039E","xi":"\u03BE","xlarr":"\u27F5","xlArr":"\u27F8","xmap":"\u27FC","xnis":"\u22FB","xodot":"\u2A00","Xopf":"\uD835\uDD4F","xopf":"\uD835\uDD69","xoplus":"\u2A01","xotime":"\u2A02","xrarr":"\u27F6","xrArr":"\u27F9","Xscr":"\uD835\uDCB3","xscr":"\uD835\uDCCD","xsqcup":"\u2A06","xuplus":"\u2A04","xutri":"\u25B3","xvee":"\u22C1","xwedge":"\u22C0","Yacute":"\u00DD","yacute":"\u00FD","YAcy":"\u042F","yacy":"\u044F","Ycirc":"\u0176","ycirc":"\u0177","Ycy":"\u042B","ycy":"\u044B","yen":"\u00A5","Yfr":"\uD835\uDD1C","yfr":"\uD835\uDD36","YIcy":"\u0407","yicy":"\u0457","Yopf":"\uD835\uDD50","yopf":"\uD835\uDD6A","Yscr":"\uD835\uDCB4","yscr":"\uD835\uDCCE","YUcy":"\u042E","yucy":"\u044E","yuml":"\u00FF","Yuml":"\u0178","Zacute":"\u0179","zacute":"\u017A","Zcaron":"\u017D","zcaron":"\u017E","Zcy":"\u0417","zcy":"\u0437","Zdot":"\u017B","zdot":"\u017C","zeetrf":"\u2128","ZeroWidthSpace":"\u200B","Zeta":"\u0396","zeta":"\u03B6","zfr":"\uD835\uDD37","Zfr":"\u2128","ZHcy":"\u0416","zhcy":"\u0436","zigrarr":"\u21DD","zopf":"\uD835\uDD6B","Zopf":"\u2124","Zscr":"\uD835\uDCB5","zscr":"\uD835\uDCCF","zwj":"\u200D","zwnj":"\u200C"} -},{}],64:[function(require,module,exports){ +},{}],67:[function(require,module,exports){ module.exports={"Aacute":"\u00C1","aacute":"\u00E1","Acirc":"\u00C2","acirc":"\u00E2","acute":"\u00B4","AElig":"\u00C6","aelig":"\u00E6","Agrave":"\u00C0","agrave":"\u00E0","amp":"&","AMP":"&","Aring":"\u00C5","aring":"\u00E5","Atilde":"\u00C3","atilde":"\u00E3","Auml":"\u00C4","auml":"\u00E4","brvbar":"\u00A6","Ccedil":"\u00C7","ccedil":"\u00E7","cedil":"\u00B8","cent":"\u00A2","copy":"\u00A9","COPY":"\u00A9","curren":"\u00A4","deg":"\u00B0","divide":"\u00F7","Eacute":"\u00C9","eacute":"\u00E9","Ecirc":"\u00CA","ecirc":"\u00EA","Egrave":"\u00C8","egrave":"\u00E8","ETH":"\u00D0","eth":"\u00F0","Euml":"\u00CB","euml":"\u00EB","frac12":"\u00BD","frac14":"\u00BC","frac34":"\u00BE","gt":">","GT":">","Iacute":"\u00CD","iacute":"\u00ED","Icirc":"\u00CE","icirc":"\u00EE","iexcl":"\u00A1","Igrave":"\u00CC","igrave":"\u00EC","iquest":"\u00BF","Iuml":"\u00CF","iuml":"\u00EF","laquo":"\u00AB","lt":"<","LT":"<","macr":"\u00AF","micro":"\u00B5","middot":"\u00B7","nbsp":"\u00A0","not":"\u00AC","Ntilde":"\u00D1","ntilde":"\u00F1","Oacute":"\u00D3","oacute":"\u00F3","Ocirc":"\u00D4","ocirc":"\u00F4","Ograve":"\u00D2","ograve":"\u00F2","ordf":"\u00AA","ordm":"\u00BA","Oslash":"\u00D8","oslash":"\u00F8","Otilde":"\u00D5","otilde":"\u00F5","Ouml":"\u00D6","ouml":"\u00F6","para":"\u00B6","plusmn":"\u00B1","pound":"\u00A3","quot":"\"","QUOT":"\"","raquo":"\u00BB","reg":"\u00AE","REG":"\u00AE","sect":"\u00A7","shy":"\u00AD","sup1":"\u00B9","sup2":"\u00B2","sup3":"\u00B3","szlig":"\u00DF","THORN":"\u00DE","thorn":"\u00FE","times":"\u00D7","Uacute":"\u00DA","uacute":"\u00FA","Ucirc":"\u00DB","ucirc":"\u00FB","Ugrave":"\u00D9","ugrave":"\u00F9","uml":"\u00A8","Uuml":"\u00DC","uuml":"\u00FC","Yacute":"\u00DD","yacute":"\u00FD","yen":"\u00A5","yuml":"\u00FF"} -},{}],65:[function(require,module,exports){ +},{}],68:[function(require,module,exports){ module.exports={"amp":"&","apos":"'","gt":">","lt":"<","quot":"\""} -},{}],66:[function(require,module,exports){ +},{}],69:[function(require,module,exports){ function EventEmitter(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function isFunction(e){return"function"==typeof e}function isNumber(e){return"number"==typeof e}function isObject(e){return"object"==typeof e&&null!==e}function isUndefined(e){return void 0===e}module.exports=EventEmitter,EventEmitter.EventEmitter=EventEmitter,EventEmitter.prototype._events=void 0,EventEmitter.prototype._maxListeners=void 0,EventEmitter.defaultMaxListeners=10,EventEmitter.prototype.setMaxListeners=function(e){if(!isNumber(e)||e<0||isNaN(e))throw TypeError("n must be a positive number");return this._maxListeners=e,this},EventEmitter.prototype.emit=function(e){var t,i,n,s,r,o;if(this._events||(this._events={}),"error"===e&&(!this._events.error||isObject(this._events.error)&&!this._events.error.length)){if(t=arguments[1],t instanceof Error)throw t;var h=new Error('Uncaught, unspecified "error" event. ('+t+")");throw h.context=t,h}if(i=this._events[e],isUndefined(i))return!1;if(isFunction(i))switch(arguments.length){case 1:i.call(this);break;case 2:i.call(this,arguments[1]);break;case 3:i.call(this,arguments[1],arguments[2]);break;default:s=Array.prototype.slice.call(arguments,1),i.apply(this,s)}else if(isObject(i))for(s=Array.prototype.slice.call(arguments,1),o=i.slice(),n=o.length,r=0;r0&&this._events[e].length>i&&(this._events[e].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[e].length),"function"==typeof console.trace&&console.trace())),this},EventEmitter.prototype.on=EventEmitter.prototype.addListener,EventEmitter.prototype.once=function(e,t){function i(){this.removeListener(e,i),n||(n=!0,t.apply(this,arguments))}if(!isFunction(t))throw TypeError("listener must be a function");var n=!1;return i.listener=t,this.on(e,i),this},EventEmitter.prototype.removeListener=function(e,t){var i,n,s,r;if(!isFunction(t))throw TypeError("listener must be a function");if(!this._events||!this._events[e])return this;if(i=this._events[e],s=i.length,n=-1,i===t||isFunction(i.listener)&&i.listener===t)delete this._events[e],this._events.removeListener&&this.emit("removeListener",e,t);else if(isObject(i)){for(r=s;r-- >0;)if(i[r]===t||i[r].listener&&i[r].listener===t){n=r;break}if(n<0)return this;1===i.length?(i.length=0,delete this._events[e]):i.splice(n,1),this._events.removeListener&&this.emit("removeListener",e,t)}return this},EventEmitter.prototype.removeAllListeners=function(e){var t,i;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[e]&&delete this._events[e],this;if(0===arguments.length){for(t in this._events)"removeListener"!==t&&this.removeAllListeners(t);return this.removeAllListeners("removeListener"),this._events={},this}if(i=this._events[e],isFunction(i))this.removeListener(e,i);else if(i)for(;i.length;)this.removeListener(e,i[i.length-1]);return delete this._events[e],this},EventEmitter.prototype.listeners=function(e){var t;return t=this._events&&this._events[e]?isFunction(this._events[e])?[this._events[e]]:this._events[e].slice():[]},EventEmitter.prototype.listenerCount=function(e){if(this._events){var t=this._events[e];if(isFunction(t))return 1;if(t)return t.length}return 0},EventEmitter.listenerCount=function(e,t){return e.listenerCount(t)}; -},{}],67:[function(require,module,exports){ + +},{}],70:[function(require,module,exports){ function CollectingHandler(t){this._cbs=t||{},this.events=[]}module.exports=CollectingHandler;var EVENTS=require("./").EVENTS;Object.keys(EVENTS).forEach(function(t){if(0===EVENTS[t])t="on"+t,CollectingHandler.prototype[t]=function(){this.events.push([t]),this._cbs[t]&&this._cbs[t]()};else if(1===EVENTS[t])t="on"+t,CollectingHandler.prototype[t]=function(e){this.events.push([t,e]),this._cbs[t]&&this._cbs[t](e)};else{if(2!==EVENTS[t])throw Error("wrong number of arguments");t="on"+t,CollectingHandler.prototype[t]=function(e,s){this.events.push([t,e,s]),this._cbs[t]&&this._cbs[t](e,s)}}}),CollectingHandler.prototype.onreset=function(){this.events=[],this._cbs.onreset&&this._cbs.onreset()},CollectingHandler.prototype.restart=function(){this._cbs.onreset&&this._cbs.onreset();for(var t=0,e=this.events.length;t0;this._cbs.onclosetag(this._stack[--t]));this._cbs.onend&&this._cbs.onend()},Parser.prototype.reset=function(){this._cbs.onreset&&this._cbs.onreset(),this._tokenizer.reset(),this._tagname="",this._attribname="",this._attribs=null,this._stack=[],this._cbs.onparserinit&&this._cbs.onparserinit(this)},Parser.prototype.parseComplete=function(t){this.reset(),this.end(t)},Parser.prototype.write=function(t){this._tokenizer.write(t)},Parser.prototype.end=function(t){this._tokenizer.end(t)},Parser.prototype.pause=function(){this._tokenizer.pause()},Parser.prototype.resume=function(){this._tokenizer.resume()},Parser.prototype.parseChunk=Parser.prototype.write,Parser.prototype.done=Parser.prototype.end,module.exports=Parser; +},{"./index.js":77,"inherits":79}],72:[function(require,module,exports){ +function Parser(t,s){this._options=s||{},this._cbs=t||{},this._tagname="",this._attribname="",this._attribvalue="",this._attribs=null,this._stack=[],this.startIndex=0,this.endIndex=null,this._lowerCaseTagNames="lowerCaseTags"in this._options?!!this._options.lowerCaseTags:!this._options.xmlMode,this._lowerCaseAttributeNames="lowerCaseAttributeNames"in this._options?!!this._options.lowerCaseAttributeNames:!this._options.xmlMode,this._options.Tokenizer&&(Tokenizer=this._options.Tokenizer),this._tokenizer=new Tokenizer(this._options,this),this._cbs.onparserinit&&this._cbs.onparserinit(this)}var Tokenizer=require("./Tokenizer.js"),formTags={input:!0,option:!0,optgroup:!0,select:!0,button:!0,datalist:!0,textarea:!0},openImpliesClose={tr:{tr:!0,th:!0,td:!0},th:{th:!0},td:{thead:!0,th:!0,td:!0},body:{head:!0,link:!0,script:!0},li:{li:!0},p:{p:!0},h1:{p:!0},h2:{p:!0},h3:{p:!0},h4:{p:!0},h5:{p:!0},h6:{p:!0},select:formTags,input:formTags,output:formTags,button:formTags,datalist:formTags,textarea:formTags,option:{option:!0},optgroup:{optgroup:!0}},voidElements={__proto__:null,area:!0,base:!0,basefont:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,isindex:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0,path:!0,circle:!0,ellipse:!0,line:!0,rect:!0,use:!0,stop:!0,polyline:!0,polygon:!0},re_nameEnd=/\s|\//;require("inherits")(Parser,require("events").EventEmitter),Parser.prototype._updatePosition=function(t){null===this.endIndex?this._tokenizer._sectionStart<=t?this.startIndex=0:this.startIndex=this._tokenizer._sectionStart-t:this.startIndex=this.endIndex+1,this.endIndex=this._tokenizer.getAbsoluteIndex()},Parser.prototype.ontext=function(t){this._updatePosition(1),this.endIndex--,this._cbs.ontext&&this._cbs.ontext(t)},Parser.prototype.onopentagname=function(t){if(this._lowerCaseTagNames&&(t=t.toLowerCase()),this._tagname=t,!this._options.xmlMode&&t in openImpliesClose)for(var s;(s=this._stack[this._stack.length-1])in openImpliesClose[t];this.onclosetag(s));!this._options.xmlMode&&t in voidElements||this._stack.push(t),this._cbs.onopentagname&&this._cbs.onopentagname(t),this._cbs.onopentag&&(this._attribs={})},Parser.prototype.onopentagend=function(){this._updatePosition(1),this._attribs&&(this._cbs.onopentag&&this._cbs.onopentag(this._tagname,this._attribs),this._attribs=null),!this._options.xmlMode&&this._cbs.onclosetag&&this._tagname in voidElements&&this._cbs.onclosetag(this._tagname),this._tagname=""},Parser.prototype.onclosetag=function(t){if(this._updatePosition(1),this._lowerCaseTagNames&&(t=t.toLowerCase()),!this._stack.length||t in voidElements&&!this._options.xmlMode)this._options.xmlMode||"br"!==t&&"p"!==t||(this.onopentagname(t),this._closeCurrentTag());else{var s=this._stack.lastIndexOf(t);if(s!==-1)if(this._cbs.onclosetag)for(s=this._stack.length-s;s--;)this._cbs.onclosetag(this._stack.pop());else this._stack.length=s;else"p"!==t||this._options.xmlMode||(this.onopentagname(t),this._closeCurrentTag())}},Parser.prototype.onselfclosingtag=function(){this._options.xmlMode||this._options.recognizeSelfClosing?this._closeCurrentTag():this.onopentagend()},Parser.prototype._closeCurrentTag=function(){var t=this._tagname;this.onopentagend(),this._stack[this._stack.length-1]===t&&(this._cbs.onclosetag&&this._cbs.onclosetag(t),this._stack.pop())},Parser.prototype.onattribname=function(t){this._lowerCaseAttributeNames&&(t=t.toLowerCase()),this._attribname=t},Parser.prototype.onattribdata=function(t){this._attribvalue+=t},Parser.prototype.onattribend=function(){this._cbs.onattribute&&this._cbs.onattribute(this._attribname,this._attribvalue),this._attribs&&!Object.prototype.hasOwnProperty.call(this._attribs,this._attribname)&&(this._attribs[this._attribname]=this._attribvalue),this._attribname="",this._attribvalue=""},Parser.prototype._getInstructionName=function(t){var s=t.search(re_nameEnd),e=s<0?t:t.substr(0,s);return this._lowerCaseTagNames&&(e=e.toLowerCase()),e},Parser.prototype.ondeclaration=function(t){if(this._cbs.onprocessinginstruction){var s=this._getInstructionName(t);this._cbs.onprocessinginstruction("!"+s,"!"+t)}},Parser.prototype.onprocessinginstruction=function(t){if(this._cbs.onprocessinginstruction){var s=this._getInstructionName(t);this._cbs.onprocessinginstruction("?"+s,"?"+t)}},Parser.prototype.oncomment=function(t){this._updatePosition(4),this._cbs.oncomment&&this._cbs.oncomment(t),this._cbs.oncommentend&&this._cbs.oncommentend()},Parser.prototype.oncdata=function(t){this._updatePosition(1),this._options.xmlMode||this._options.recognizeCDATA?(this._cbs.oncdatastart&&this._cbs.oncdatastart(),this._cbs.ontext&&this._cbs.ontext(t),this._cbs.oncdataend&&this._cbs.oncdataend()):this.oncomment("[CDATA["+t+"]]")},Parser.prototype.onerror=function(t){this._cbs.onerror&&this._cbs.onerror(t)},Parser.prototype.onend=function(){if(this._cbs.onclosetag)for(var t=this._stack.length;t>0;this._cbs.onclosetag(this._stack[--t]));this._cbs.onend&&this._cbs.onend()},Parser.prototype.reset=function(){this._cbs.onreset&&this._cbs.onreset(),this._tokenizer.reset(),this._tagname="",this._attribname="",this._attribs=null,this._stack=[],this._cbs.onparserinit&&this._cbs.onparserinit(this)},Parser.prototype.parseComplete=function(t){this.reset(),this.end(t)},Parser.prototype.write=function(t){this._tokenizer.write(t)},Parser.prototype.end=function(t){this._tokenizer.end(t)},Parser.prototype.pause=function(){this._tokenizer.pause()},Parser.prototype.resume=function(){this._tokenizer.resume()},Parser.prototype.parseChunk=Parser.prototype.write,Parser.prototype.done=Parser.prototype.end,module.exports=Parser; -},{"./Tokenizer.js":72,"events":66,"inherits":76}],70:[function(require,module,exports){ +},{"./Tokenizer.js":75,"events":69,"inherits":79}],73:[function(require,module,exports){ function ProxyHandler(o){this._cbs=o||{}}module.exports=ProxyHandler;var EVENTS=require("./").EVENTS;Object.keys(EVENTS).forEach(function(o){if(0===EVENTS[o])o="on"+o,ProxyHandler.prototype[o]=function(){this._cbs[o]&&this._cbs[o]()};else if(1===EVENTS[o])o="on"+o,ProxyHandler.prototype[o]=function(r){this._cbs[o]&&this._cbs[o](r)};else{if(2!==EVENTS[o])throw Error("wrong number of arguments");o="on"+o,ProxyHandler.prototype[o]=function(r,t){this._cbs[o]&&this._cbs[o](r,t)}}}); -},{"./":74}],71:[function(require,module,exports){ +},{"./":77}],74:[function(require,module,exports){ function Stream(e){Parser.call(this,new Cbs(this),e)}function Cbs(e){this.scope=e}module.exports=Stream;var Parser=require("./WritableStream.js");require("inherits")(Stream,Parser),Stream.prototype.readable=!0;var EVENTS=require("../").EVENTS;Object.keys(EVENTS).forEach(function(e){if(0===EVENTS[e])Cbs.prototype["on"+e]=function(){this.scope.emit(e)};else if(1===EVENTS[e])Cbs.prototype["on"+e]=function(r){this.scope.emit(e,r)};else{if(2!==EVENTS[e])throw Error("wrong number of arguments!");Cbs.prototype["on"+e]=function(r,t){this.scope.emit(e,r,t)}}}); -},{"../":74,"./WritableStream.js":73,"inherits":76}],72:[function(require,module,exports){ -function whitespace(t){return" "===t||"\n"===t||"\t"===t||"\f"===t||"\r"===t}function ifElseState(t,e,i){var s=t.toLowerCase();return t===s?function(t){t===s?this._state=e:(this._state=i,this._index--)}:function(_){_===s||_===t?this._state=e:(this._state=i,this._index--)}}function consumeSpecialNameChar(t,e){var i=t.toLowerCase();return function(s){s===i||s===t?this._state=e:(this._state=IN_TAG_NAME,this._index--)}}function Tokenizer(t,e){this._state=TEXT,this._buffer="",this._sectionStart=0,this._index=0,this._bufferOffset=0,this._baseState=TEXT,this._special=SPECIAL_NONE,this._cbs=e,this._running=!0,this._ended=!1,this._xmlMode=!(!t||!t.xmlMode),this._decodeEntities=!(!t||!t.decodeEntities)}module.exports=Tokenizer;var decodeCodePoint=require("entities/lib/decode_codepoint.js"),entityMap=require("entities/maps/entities.json"),legacyMap=require("entities/maps/legacy.json"),xmlMap=require("entities/maps/xml.json"),i=0,TEXT=i++,BEFORE_TAG_NAME=i++,IN_TAG_NAME=i++,IN_SELF_CLOSING_TAG=i++,BEFORE_CLOSING_TAG_NAME=i++,IN_CLOSING_TAG_NAME=i++,AFTER_CLOSING_TAG_NAME=i++,BEFORE_ATTRIBUTE_NAME=i++,IN_ATTRIBUTE_NAME=i++,AFTER_ATTRIBUTE_NAME=i++,BEFORE_ATTRIBUTE_VALUE=i++,IN_ATTRIBUTE_VALUE_DQ=i++,IN_ATTRIBUTE_VALUE_SQ=i++,IN_ATTRIBUTE_VALUE_NQ=i++,BEFORE_DECLARATION=i++,IN_DECLARATION=i++,IN_PROCESSING_INSTRUCTION=i++,BEFORE_COMMENT=i++,IN_COMMENT=i++,AFTER_COMMENT_1=i++,AFTER_COMMENT_2=i++,BEFORE_CDATA_1=i++,BEFORE_CDATA_2=i++,BEFORE_CDATA_3=i++,BEFORE_CDATA_4=i++,BEFORE_CDATA_5=i++,BEFORE_CDATA_6=i++,IN_CDATA=i++,AFTER_CDATA_1=i++,AFTER_CDATA_2=i++,BEFORE_SPECIAL=i++,BEFORE_SPECIAL_END=i++,BEFORE_SCRIPT_1=i++,BEFORE_SCRIPT_2=i++,BEFORE_SCRIPT_3=i++,BEFORE_SCRIPT_4=i++,BEFORE_SCRIPT_5=i++,AFTER_SCRIPT_1=i++,AFTER_SCRIPT_2=i++,AFTER_SCRIPT_3=i++,AFTER_SCRIPT_4=i++,AFTER_SCRIPT_5=i++,BEFORE_STYLE_1=i++,BEFORE_STYLE_2=i++,BEFORE_STYLE_3=i++,BEFORE_STYLE_4=i++,AFTER_STYLE_1=i++,AFTER_STYLE_2=i++,AFTER_STYLE_3=i++,AFTER_STYLE_4=i++,BEFORE_ENTITY=i++,BEFORE_NUMERIC_ENTITY=i++,IN_NAMED_ENTITY=i++,IN_NUMERIC_ENTITY=i++,IN_HEX_ENTITY=i++,j=0,SPECIAL_NONE=j++,SPECIAL_SCRIPT=j++,SPECIAL_STYLE=j++;Tokenizer.prototype._stateText=function(t){"<"===t?(this._index>this._sectionStart&&this._cbs.ontext(this._getSection()),this._state=BEFORE_TAG_NAME,this._sectionStart=this._index):this._decodeEntities&&this._special===SPECIAL_NONE&&"&"===t&&(this._index>this._sectionStart&&this._cbs.ontext(this._getSection()),this._baseState=TEXT,this._state=BEFORE_ENTITY,this._sectionStart=this._index)},Tokenizer.prototype._stateBeforeTagName=function(t){"/"===t?this._state=BEFORE_CLOSING_TAG_NAME:"<"===t?(this._cbs.ontext(this._getSection()),this._sectionStart=this._index):">"===t||this._special!==SPECIAL_NONE||whitespace(t)?this._state=TEXT:"!"===t?(this._state=BEFORE_DECLARATION,this._sectionStart=this._index+1):"?"===t?(this._state=IN_PROCESSING_INSTRUCTION,this._sectionStart=this._index+1):(this._state=this._xmlMode||"s"!==t&&"S"!==t?IN_TAG_NAME:BEFORE_SPECIAL,this._sectionStart=this._index)},Tokenizer.prototype._stateInTagName=function(t){("/"===t||">"===t||whitespace(t))&&(this._emitToken("onopentagname"),this._state=BEFORE_ATTRIBUTE_NAME,this._index--)},Tokenizer.prototype._stateBeforeCloseingTagName=function(t){whitespace(t)||(">"===t?this._state=TEXT:this._special!==SPECIAL_NONE?"s"===t||"S"===t?this._state=BEFORE_SPECIAL_END:(this._state=TEXT,this._index--):(this._state=IN_CLOSING_TAG_NAME,this._sectionStart=this._index))},Tokenizer.prototype._stateInCloseingTagName=function(t){(">"===t||whitespace(t))&&(this._emitToken("onclosetag"),this._state=AFTER_CLOSING_TAG_NAME,this._index--)},Tokenizer.prototype._stateAfterCloseingTagName=function(t){">"===t&&(this._state=TEXT,this._sectionStart=this._index+1)},Tokenizer.prototype._stateBeforeAttributeName=function(t){">"===t?(this._cbs.onopentagend(),this._state=TEXT,this._sectionStart=this._index+1):"/"===t?this._state=IN_SELF_CLOSING_TAG:whitespace(t)||(this._state=IN_ATTRIBUTE_NAME,this._sectionStart=this._index)},Tokenizer.prototype._stateInSelfClosingTag=function(t){">"===t?(this._cbs.onselfclosingtag(),this._state=TEXT,this._sectionStart=this._index+1):whitespace(t)||(this._state=BEFORE_ATTRIBUTE_NAME,this._index--)},Tokenizer.prototype._stateInAttributeName=function(t){("="===t||"/"===t||">"===t||whitespace(t))&&(this._cbs.onattribname(this._getSection()),this._sectionStart=-1,this._state=AFTER_ATTRIBUTE_NAME,this._index--)},Tokenizer.prototype._stateAfterAttributeName=function(t){"="===t?this._state=BEFORE_ATTRIBUTE_VALUE:"/"===t||">"===t?(this._cbs.onattribend(),this._state=BEFORE_ATTRIBUTE_NAME,this._index--):whitespace(t)||(this._cbs.onattribend(),this._state=IN_ATTRIBUTE_NAME,this._sectionStart=this._index)},Tokenizer.prototype._stateBeforeAttributeValue=function(t){'"'===t?(this._state=IN_ATTRIBUTE_VALUE_DQ,this._sectionStart=this._index+1):"'"===t?(this._state=IN_ATTRIBUTE_VALUE_SQ,this._sectionStart=this._index+1):whitespace(t)||(this._state=IN_ATTRIBUTE_VALUE_NQ,this._sectionStart=this._index,this._index--)},Tokenizer.prototype._stateInAttributeValueDoubleQuotes=function(t){'"'===t?(this._emitToken("onattribdata"),this._cbs.onattribend(),this._state=BEFORE_ATTRIBUTE_NAME):this._decodeEntities&&"&"===t&&(this._emitToken("onattribdata"),this._baseState=this._state,this._state=BEFORE_ENTITY,this._sectionStart=this._index)},Tokenizer.prototype._stateInAttributeValueSingleQuotes=function(t){"'"===t?(this._emitToken("onattribdata"),this._cbs.onattribend(),this._state=BEFORE_ATTRIBUTE_NAME):this._decodeEntities&&"&"===t&&(this._emitToken("onattribdata"),this._baseState=this._state,this._state=BEFORE_ENTITY,this._sectionStart=this._index)},Tokenizer.prototype._stateInAttributeValueNoQuotes=function(t){whitespace(t)||">"===t?(this._emitToken("onattribdata"),this._cbs.onattribend(),this._state=BEFORE_ATTRIBUTE_NAME,this._index--):this._decodeEntities&&"&"===t&&(this._emitToken("onattribdata"),this._baseState=this._state,this._state=BEFORE_ENTITY,this._sectionStart=this._index)},Tokenizer.prototype._stateBeforeDeclaration=function(t){this._state="["===t?BEFORE_CDATA_1:"-"===t?BEFORE_COMMENT:IN_DECLARATION},Tokenizer.prototype._stateInDeclaration=function(t){">"===t&&(this._cbs.ondeclaration(this._getSection()),this._state=TEXT,this._sectionStart=this._index+1)},Tokenizer.prototype._stateInProcessingInstruction=function(t){">"===t&&(this._cbs.onprocessinginstruction(this._getSection()),this._state=TEXT,this._sectionStart=this._index+1)},Tokenizer.prototype._stateBeforeComment=function(t){"-"===t?(this._state=IN_COMMENT,this._sectionStart=this._index+1):this._state=IN_DECLARATION},Tokenizer.prototype._stateInComment=function(t){"-"===t&&(this._state=AFTER_COMMENT_1)},Tokenizer.prototype._stateAfterComment1=function(t){"-"===t?this._state=AFTER_COMMENT_2:this._state=IN_COMMENT},Tokenizer.prototype._stateAfterComment2=function(t){">"===t?(this._cbs.oncomment(this._buffer.substring(this._sectionStart,this._index-2)),this._state=TEXT,this._sectionStart=this._index+1):"-"!==t&&(this._state=IN_COMMENT)},Tokenizer.prototype._stateBeforeCdata1=ifElseState("C",BEFORE_CDATA_2,IN_DECLARATION),Tokenizer.prototype._stateBeforeCdata2=ifElseState("D",BEFORE_CDATA_3,IN_DECLARATION),Tokenizer.prototype._stateBeforeCdata3=ifElseState("A",BEFORE_CDATA_4,IN_DECLARATION),Tokenizer.prototype._stateBeforeCdata4=ifElseState("T",BEFORE_CDATA_5,IN_DECLARATION),Tokenizer.prototype._stateBeforeCdata5=ifElseState("A",BEFORE_CDATA_6,IN_DECLARATION),Tokenizer.prototype._stateBeforeCdata6=function(t){"["===t?(this._state=IN_CDATA,this._sectionStart=this._index+1):(this._state=IN_DECLARATION,this._index--)},Tokenizer.prototype._stateInCdata=function(t){"]"===t&&(this._state=AFTER_CDATA_1)},Tokenizer.prototype._stateAfterCdata1=function(t){"]"===t?this._state=AFTER_CDATA_2:this._state=IN_CDATA},Tokenizer.prototype._stateAfterCdata2=function(t){">"===t?(this._cbs.oncdata(this._buffer.substring(this._sectionStart,this._index-2)),this._state=TEXT,this._sectionStart=this._index+1):"]"!==t&&(this._state=IN_CDATA)},Tokenizer.prototype._stateBeforeSpecial=function(t){"c"===t||"C"===t?this._state=BEFORE_SCRIPT_1:"t"===t||"T"===t?this._state=BEFORE_STYLE_1:(this._state=IN_TAG_NAME,this._index--)},Tokenizer.prototype._stateBeforeSpecialEnd=function(t){this._special!==SPECIAL_SCRIPT||"c"!==t&&"C"!==t?this._special!==SPECIAL_STYLE||"t"!==t&&"T"!==t?this._state=TEXT:this._state=AFTER_STYLE_1:this._state=AFTER_SCRIPT_1},Tokenizer.prototype._stateBeforeScript1=consumeSpecialNameChar("R",BEFORE_SCRIPT_2),Tokenizer.prototype._stateBeforeScript2=consumeSpecialNameChar("I",BEFORE_SCRIPT_3),Tokenizer.prototype._stateBeforeScript3=consumeSpecialNameChar("P",BEFORE_SCRIPT_4),Tokenizer.prototype._stateBeforeScript4=consumeSpecialNameChar("T",BEFORE_SCRIPT_5),Tokenizer.prototype._stateBeforeScript5=function(t){("/"===t||">"===t||whitespace(t))&&(this._special=SPECIAL_SCRIPT),this._state=IN_TAG_NAME,this._index--},Tokenizer.prototype._stateAfterScript1=ifElseState("R",AFTER_SCRIPT_2,TEXT),Tokenizer.prototype._stateAfterScript2=ifElseState("I",AFTER_SCRIPT_3,TEXT),Tokenizer.prototype._stateAfterScript3=ifElseState("P",AFTER_SCRIPT_4,TEXT),Tokenizer.prototype._stateAfterScript4=ifElseState("T",AFTER_SCRIPT_5,TEXT),Tokenizer.prototype._stateAfterScript5=function(t){">"===t||whitespace(t)?(this._special=SPECIAL_NONE,this._state=IN_CLOSING_TAG_NAME,this._sectionStart=this._index-6,this._index--):this._state=TEXT},Tokenizer.prototype._stateBeforeStyle1=consumeSpecialNameChar("Y",BEFORE_STYLE_2),Tokenizer.prototype._stateBeforeStyle2=consumeSpecialNameChar("L",BEFORE_STYLE_3),Tokenizer.prototype._stateBeforeStyle3=consumeSpecialNameChar("E",BEFORE_STYLE_4),Tokenizer.prototype._stateBeforeStyle4=function(t){("/"===t||">"===t||whitespace(t))&&(this._special=SPECIAL_STYLE),this._state=IN_TAG_NAME,this._index--},Tokenizer.prototype._stateAfterStyle1=ifElseState("Y",AFTER_STYLE_2,TEXT),Tokenizer.prototype._stateAfterStyle2=ifElseState("L",AFTER_STYLE_3,TEXT),Tokenizer.prototype._stateAfterStyle3=ifElseState("E",AFTER_STYLE_4,TEXT),Tokenizer.prototype._stateAfterStyle4=function(t){">"===t||whitespace(t)?(this._special=SPECIAL_NONE,this._state=IN_CLOSING_TAG_NAME,this._sectionStart=this._index-5,this._index--):this._state=TEXT},Tokenizer.prototype._stateBeforeEntity=ifElseState("#",BEFORE_NUMERIC_ENTITY,IN_NAMED_ENTITY),Tokenizer.prototype._stateBeforeNumericEntity=ifElseState("X",IN_HEX_ENTITY,IN_NUMERIC_ENTITY),Tokenizer.prototype._parseNamedEntityStrict=function(){if(this._sectionStart+16&&(e=6);e>=2;){var i=this._buffer.substr(t,e);if(legacyMap.hasOwnProperty(i))return this._emitPartial(legacyMap[i]),void(this._sectionStart+=e+1);e--}},Tokenizer.prototype._stateInNamedEntity=function(t){";"===t?(this._parseNamedEntityStrict(),this._sectionStart+1"z")&&(t<"A"||t>"Z")&&(t<"0"||t>"9")&&(this._xmlMode||this._sectionStart+1===this._index||(this._baseState!==TEXT?"="!==t&&this._parseNamedEntityStrict():this._parseLegacyEntity()),this._state=this._baseState,this._index--)},Tokenizer.prototype._decodeNumericEntity=function(t,e){var i=this._sectionStart+t;if(i!==this._index){var s=this._buffer.substring(i,this._index),_=parseInt(s,e);this._emitPartial(decodeCodePoint(_)),this._sectionStart=this._index}else this._sectionStart--;this._state=this._baseState},Tokenizer.prototype._stateInNumericEntity=function(t){";"===t?(this._decodeNumericEntity(2,10),this._sectionStart++):(t<"0"||t>"9")&&(this._xmlMode?this._state=this._baseState:this._decodeNumericEntity(2,10),this._index--)},Tokenizer.prototype._stateInHexEntity=function(t){";"===t?(this._decodeNumericEntity(3,16),this._sectionStart++):(t<"a"||t>"f")&&(t<"A"||t>"F")&&(t<"0"||t>"9")&&(this._xmlMode?this._state=this._baseState:this._decodeNumericEntity(3,16),this._index--)},Tokenizer.prototype._cleanup=function(){this._sectionStart<0?(this._buffer="",this._bufferOffset+=this._index,this._index=0):this._running&&(this._state===TEXT?(this._sectionStart!==this._index&&this._cbs.ontext(this._buffer.substr(this._sectionStart)),this._buffer="",this._bufferOffset+=this._index,this._index=0):this._sectionStart===this._index?(this._buffer="",this._bufferOffset+=this._index,this._index=0):(this._buffer=this._buffer.substr(this._sectionStart),this._index-=this._sectionStart,this._bufferOffset+=this._sectionStart),this._sectionStart=0)},Tokenizer.prototype.write=function(t){this._ended&&this._cbs.onerror(Error(".write() after done!")),this._buffer+=t,this._parse()},Tokenizer.prototype._parse=function(){for(;this._indexthis._sectionStart&&this._cbs.ontext(this._getSection()),this._state=BEFORE_TAG_NAME,this._sectionStart=this._index):this._decodeEntities&&this._special===SPECIAL_NONE&&"&"===t&&(this._index>this._sectionStart&&this._cbs.ontext(this._getSection()),this._baseState=TEXT,this._state=BEFORE_ENTITY,this._sectionStart=this._index)},Tokenizer.prototype._stateBeforeTagName=function(t){"/"===t?this._state=BEFORE_CLOSING_TAG_NAME:"<"===t?(this._cbs.ontext(this._getSection()),this._sectionStart=this._index):">"===t||this._special!==SPECIAL_NONE||whitespace(t)?this._state=TEXT:"!"===t?(this._state=BEFORE_DECLARATION,this._sectionStart=this._index+1):"?"===t?(this._state=IN_PROCESSING_INSTRUCTION,this._sectionStart=this._index+1):(this._state=this._xmlMode||"s"!==t&&"S"!==t?IN_TAG_NAME:BEFORE_SPECIAL,this._sectionStart=this._index)},Tokenizer.prototype._stateInTagName=function(t){("/"===t||">"===t||whitespace(t))&&(this._emitToken("onopentagname"),this._state=BEFORE_ATTRIBUTE_NAME,this._index--)},Tokenizer.prototype._stateBeforeCloseingTagName=function(t){whitespace(t)||(">"===t?this._state=TEXT:this._special!==SPECIAL_NONE?"s"===t||"S"===t?this._state=BEFORE_SPECIAL_END:(this._state=TEXT,this._index--):(this._state=IN_CLOSING_TAG_NAME,this._sectionStart=this._index))},Tokenizer.prototype._stateInCloseingTagName=function(t){(">"===t||whitespace(t))&&(this._emitToken("onclosetag"),this._state=AFTER_CLOSING_TAG_NAME,this._index--)},Tokenizer.prototype._stateAfterCloseingTagName=function(t){">"===t&&(this._state=TEXT,this._sectionStart=this._index+1)},Tokenizer.prototype._stateBeforeAttributeName=function(t){">"===t?(this._cbs.onopentagend(),this._state=TEXT,this._sectionStart=this._index+1):"/"===t?this._state=IN_SELF_CLOSING_TAG:whitespace(t)||(this._state=IN_ATTRIBUTE_NAME,this._sectionStart=this._index)},Tokenizer.prototype._stateInSelfClosingTag=function(t){">"===t?(this._cbs.onselfclosingtag(),this._state=TEXT,this._sectionStart=this._index+1):whitespace(t)||(this._state=BEFORE_ATTRIBUTE_NAME,this._index--)},Tokenizer.prototype._stateInAttributeName=function(t){("="===t||"/"===t||">"===t||whitespace(t))&&(this._cbs.onattribname(this._getSection()),this._sectionStart=-1,this._state=AFTER_ATTRIBUTE_NAME,this._index--)},Tokenizer.prototype._stateAfterAttributeName=function(t){"="===t?this._state=BEFORE_ATTRIBUTE_VALUE:"/"===t||">"===t?(this._cbs.onattribend(),this._state=BEFORE_ATTRIBUTE_NAME,this._index--):whitespace(t)||(this._cbs.onattribend(),this._state=IN_ATTRIBUTE_NAME,this._sectionStart=this._index)},Tokenizer.prototype._stateBeforeAttributeValue=function(t){'"'===t?(this._state=IN_ATTRIBUTE_VALUE_DQ,this._sectionStart=this._index+1):"'"===t?(this._state=IN_ATTRIBUTE_VALUE_SQ,this._sectionStart=this._index+1):whitespace(t)||(this._state=IN_ATTRIBUTE_VALUE_NQ,this._sectionStart=this._index,this._index--)},Tokenizer.prototype._stateInAttributeValueDoubleQuotes=function(t){'"'===t?(this._emitToken("onattribdata"),this._cbs.onattribend(),this._state=BEFORE_ATTRIBUTE_NAME):this._decodeEntities&&"&"===t&&(this._emitToken("onattribdata"),this._baseState=this._state,this._state=BEFORE_ENTITY,this._sectionStart=this._index)},Tokenizer.prototype._stateInAttributeValueSingleQuotes=function(t){"'"===t?(this._emitToken("onattribdata"),this._cbs.onattribend(),this._state=BEFORE_ATTRIBUTE_NAME):this._decodeEntities&&"&"===t&&(this._emitToken("onattribdata"),this._baseState=this._state,this._state=BEFORE_ENTITY,this._sectionStart=this._index)},Tokenizer.prototype._stateInAttributeValueNoQuotes=function(t){whitespace(t)||">"===t?(this._emitToken("onattribdata"),this._cbs.onattribend(),this._state=BEFORE_ATTRIBUTE_NAME,this._index--):this._decodeEntities&&"&"===t&&(this._emitToken("onattribdata"),this._baseState=this._state,this._state=BEFORE_ENTITY,this._sectionStart=this._index)},Tokenizer.prototype._stateBeforeDeclaration=function(t){this._state="["===t?BEFORE_CDATA_1:"-"===t?BEFORE_COMMENT:IN_DECLARATION},Tokenizer.prototype._stateInDeclaration=function(t){">"===t&&(this._cbs.ondeclaration(this._getSection()),this._state=TEXT,this._sectionStart=this._index+1)},Tokenizer.prototype._stateInProcessingInstruction=function(t){">"===t&&(this._cbs.onprocessinginstruction(this._getSection()),this._state=TEXT,this._sectionStart=this._index+1)},Tokenizer.prototype._stateBeforeComment=function(t){"-"===t?(this._state=IN_COMMENT,this._sectionStart=this._index+1):this._state=IN_DECLARATION},Tokenizer.prototype._stateInComment=function(t){"-"===t&&(this._state=AFTER_COMMENT_1)},Tokenizer.prototype._stateAfterComment1=function(t){"-"===t?this._state=AFTER_COMMENT_2:this._state=IN_COMMENT},Tokenizer.prototype._stateAfterComment2=function(t){">"===t?(this._cbs.oncomment(this._buffer.substring(this._sectionStart,this._index-2)),this._state=TEXT,this._sectionStart=this._index+1):"-"!==t&&(this._state=IN_COMMENT)},Tokenizer.prototype._stateBeforeCdata1=ifElseState("C",BEFORE_CDATA_2,IN_DECLARATION),Tokenizer.prototype._stateBeforeCdata2=ifElseState("D",BEFORE_CDATA_3,IN_DECLARATION),Tokenizer.prototype._stateBeforeCdata3=ifElseState("A",BEFORE_CDATA_4,IN_DECLARATION),Tokenizer.prototype._stateBeforeCdata4=ifElseState("T",BEFORE_CDATA_5,IN_DECLARATION),Tokenizer.prototype._stateBeforeCdata5=ifElseState("A",BEFORE_CDATA_6,IN_DECLARATION),Tokenizer.prototype._stateBeforeCdata6=function(t){"["===t?(this._state=IN_CDATA,this._sectionStart=this._index+1):(this._state=IN_DECLARATION,this._index--)},Tokenizer.prototype._stateInCdata=function(t){"]"===t&&(this._state=AFTER_CDATA_1)},Tokenizer.prototype._stateAfterCdata1=characterState("]",AFTER_CDATA_2),Tokenizer.prototype._stateAfterCdata2=function(t){">"===t?(this._cbs.oncdata(this._buffer.substring(this._sectionStart,this._index-2)),this._state=TEXT,this._sectionStart=this._index+1):"]"!==t&&(this._state=IN_CDATA)},Tokenizer.prototype._stateBeforeSpecial=function(t){"c"===t||"C"===t?this._state=BEFORE_SCRIPT_1:"t"===t||"T"===t?this._state=BEFORE_STYLE_1:(this._state=IN_TAG_NAME,this._index--)},Tokenizer.prototype._stateBeforeSpecialEnd=function(t){this._special!==SPECIAL_SCRIPT||"c"!==t&&"C"!==t?this._special!==SPECIAL_STYLE||"t"!==t&&"T"!==t?this._state=TEXT:this._state=AFTER_STYLE_1:this._state=AFTER_SCRIPT_1},Tokenizer.prototype._stateBeforeScript1=consumeSpecialNameChar("R",BEFORE_SCRIPT_2),Tokenizer.prototype._stateBeforeScript2=consumeSpecialNameChar("I",BEFORE_SCRIPT_3),Tokenizer.prototype._stateBeforeScript3=consumeSpecialNameChar("P",BEFORE_SCRIPT_4),Tokenizer.prototype._stateBeforeScript4=consumeSpecialNameChar("T",BEFORE_SCRIPT_5),Tokenizer.prototype._stateBeforeScript5=function(t){("/"===t||">"===t||whitespace(t))&&(this._special=SPECIAL_SCRIPT),this._state=IN_TAG_NAME,this._index--},Tokenizer.prototype._stateAfterScript1=ifElseState("R",AFTER_SCRIPT_2,TEXT),Tokenizer.prototype._stateAfterScript2=ifElseState("I",AFTER_SCRIPT_3,TEXT),Tokenizer.prototype._stateAfterScript3=ifElseState("P",AFTER_SCRIPT_4,TEXT),Tokenizer.prototype._stateAfterScript4=ifElseState("T",AFTER_SCRIPT_5,TEXT),Tokenizer.prototype._stateAfterScript5=function(t){">"===t||whitespace(t)?(this._special=SPECIAL_NONE,this._state=IN_CLOSING_TAG_NAME,this._sectionStart=this._index-6,this._index--):this._state=TEXT},Tokenizer.prototype._stateBeforeStyle1=consumeSpecialNameChar("Y",BEFORE_STYLE_2),Tokenizer.prototype._stateBeforeStyle2=consumeSpecialNameChar("L",BEFORE_STYLE_3),Tokenizer.prototype._stateBeforeStyle3=consumeSpecialNameChar("E",BEFORE_STYLE_4),Tokenizer.prototype._stateBeforeStyle4=function(t){("/"===t||">"===t||whitespace(t))&&(this._special=SPECIAL_STYLE),this._state=IN_TAG_NAME,this._index--},Tokenizer.prototype._stateAfterStyle1=ifElseState("Y",AFTER_STYLE_2,TEXT),Tokenizer.prototype._stateAfterStyle2=ifElseState("L",AFTER_STYLE_3,TEXT),Tokenizer.prototype._stateAfterStyle3=ifElseState("E",AFTER_STYLE_4,TEXT),Tokenizer.prototype._stateAfterStyle4=function(t){">"===t||whitespace(t)?(this._special=SPECIAL_NONE,this._state=IN_CLOSING_TAG_NAME,this._sectionStart=this._index-5,this._index--):this._state=TEXT},Tokenizer.prototype._stateBeforeEntity=ifElseState("#",BEFORE_NUMERIC_ENTITY,IN_NAMED_ENTITY),Tokenizer.prototype._stateBeforeNumericEntity=ifElseState("X",IN_HEX_ENTITY,IN_NUMERIC_ENTITY),Tokenizer.prototype._parseNamedEntityStrict=function(){if(this._sectionStart+16&&(e=6);e>=2;){var i=this._buffer.substr(t,e);if(legacyMap.hasOwnProperty(i))return this._emitPartial(legacyMap[i]),void(this._sectionStart+=e+1);e--}},Tokenizer.prototype._stateInNamedEntity=function(t){";"===t?(this._parseNamedEntityStrict(),this._sectionStart+1"z")&&(t<"A"||t>"Z")&&(t<"0"||t>"9")&&(this._xmlMode||this._sectionStart+1===this._index||(this._baseState!==TEXT?"="!==t&&this._parseNamedEntityStrict():this._parseLegacyEntity()),this._state=this._baseState,this._index--)},Tokenizer.prototype._decodeNumericEntity=function(t,e){var i=this._sectionStart+t;if(i!==this._index){var s=this._buffer.substring(i,this._index),_=parseInt(s,e);this._emitPartial(decodeCodePoint(_)),this._sectionStart=this._index}else this._sectionStart--;this._state=this._baseState},Tokenizer.prototype._stateInNumericEntity=function(t){";"===t?(this._decodeNumericEntity(2,10),this._sectionStart++):(t<"0"||t>"9")&&(this._xmlMode?this._state=this._baseState:this._decodeNumericEntity(2,10),this._index--)},Tokenizer.prototype._stateInHexEntity=function(t){";"===t?(this._decodeNumericEntity(3,16),this._sectionStart++):(t<"a"||t>"f")&&(t<"A"||t>"F")&&(t<"0"||t>"9")&&(this._xmlMode?this._state=this._baseState:this._decodeNumericEntity(3,16),this._index--)},Tokenizer.prototype._cleanup=function(){this._sectionStart<0?(this._buffer="",this._bufferOffset+=this._index,this._index=0):this._running&&(this._state===TEXT?(this._sectionStart!==this._index&&this._cbs.ontext(this._buffer.substr(this._sectionStart)),this._buffer="",this._bufferOffset+=this._index,this._index=0):this._sectionStart===this._index?(this._buffer="",this._bufferOffset+=this._index,this._index=0):(this._buffer=this._buffer.substr(this._sectionStart),this._index-=this._sectionStart,this._bufferOffset+=this._sectionStart),this._sectionStart=0)},Tokenizer.prototype.write=function(t){this._ended&&this._cbs.onerror(Error(".write() after done!")),this._buffer+=t,this._parse()},Tokenizer.prototype._parse=function(){for(;this._index>1,i=-7,N=t?h-1:0,n=t?-1:1,s=a[o+N];for(N+=n,M=s&(1<<-i)-1,s>>=-i,i+=w;i>0;M=256*M+a[o+N],N+=n,i-=8);for(p=M&(1<<-i)-1,M>>=-i,i+=r;i>0;p=256*p+a[o+N],N+=n,i-=8);if(0===M)M=1-e;else{if(M===f)return p?NaN:(s?-1:1)*(1/0);p+=Math.pow(2,r),M-=e}return(s?-1:1)*p*Math.pow(2,M-r)},exports.write=function(a,o,t,r,h,M){var p,w,f,e=8*M-h-1,i=(1<>1,n=23===h?Math.pow(2,-24)-Math.pow(2,-77):0,s=r?0:M-1,u=r?1:-1,l=o<0||0===o&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(w=isNaN(o)?1:0,p=i):(p=Math.floor(Math.log(o)/Math.LN2),o*(f=Math.pow(2,-p))<1&&(p--,f*=2),o+=p+N>=1?n/f:n*Math.pow(2,1-N),o*f>=2&&(p++,f/=2),p+N>=i?(w=0,p=i):p+N>=1?(w=(o*f-1)*Math.pow(2,h),p+=N):(w=o*Math.pow(2,N-1)*Math.pow(2,h),p=0));h>=8;a[t+s]=255&w,s+=u,w/=256,h-=8);for(p=p<0;a[t+s]=255&p,s+=u,p/=256,e-=8);a[t+s-u]|=128*l}; -},{}],76:[function(require,module,exports){ -"function"==typeof Object.create?module.exports=function(t,e){e&&(t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:module.exports=function(t,e){if(e){t.super_=e;var o=function(){};o.prototype=e.prototype,t.prototype=new o,t.prototype.constructor=t}}; +},{}],79:[function(require,module,exports){ +"function"==typeof Object.create?module.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:module.exports=function(t,e){t.super_=e;var o=function(){};o.prototype=e.prototype,t.prototype=new o,t.prototype.constructor=t}; -},{}],77:[function(require,module,exports){ +},{}],80:[function(require,module,exports){ module.exports=function(r){return!(!r||"string"==typeof r)&&(r instanceof Array||Array.isArray(r)||r.length>=0&&(r.splice instanceof Function||Object.getOwnPropertyDescriptor(r,r.length-1)&&"String"!==r.constructor.name))}; -},{}],78:[function(require,module,exports){ + +},{}],81:[function(require,module,exports){ function isBuffer(f){return!!f.constructor&&"function"==typeof f.constructor.isBuffer&&f.constructor.isBuffer(f)}function isSlowBuffer(f){return"function"==typeof f.readFloatLE&&"function"==typeof f.slice&&isBuffer(f.slice(0,0))}module.exports=function(f){return null!=f&&(isBuffer(f)||isSlowBuffer(f)||!!f._isBuffer)}; -},{}],79:[function(require,module,exports){ +},{}],82:[function(require,module,exports){ var toString={}.toString;module.exports=Array.isArray||function(r){return"[object Array]"==toString.call(r)}; -},{}],80:[function(require,module,exports){ +},{}],83:[function(require,module,exports){ "use strict";function ArrayReader(t){if(t){this.data=t,this.length=this.data.length,this.index=0,this.zero=0;for(var e=0;e=0;--d)if(this.data[d]===e&&this.data[d+1]===r&&this.data[d+2]===a&&this.data[d+3]===i)return d-this.zero;return-1},ArrayReader.prototype.readData=function(t){if(this.checkOffset(t),0===t)return[];var e=this.data.slice(this.zero+this.index,this.zero+this.index+t);return this.index+=t,e},module.exports=ArrayReader; -},{"./dataReader":85}],81:[function(require,module,exports){ +},{"./dataReader":88}],84:[function(require,module,exports){ "use strict";var _keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";exports.encode=function(r,t){for(var e,a,c,o,h,n,d,i="",A=0;A>2,h=(3&e)<<4|a>>4,n=(15&a)<<2|c>>6,d=63&c,isNaN(a)?n=d=64:isNaN(c)&&(d=64),i=i+_keyStr.charAt(o)+_keyStr.charAt(h)+_keyStr.charAt(n)+_keyStr.charAt(d);return i},exports.decode=function(r,t){var e,a,c,o,h,n,d,i="",A=0;for(r=r.replace(/[^A-Za-z0-9\+\/\=]/g,"");A>4,a=(15&h)<<4|n>>2,c=(3&n)<<6|d,i+=String.fromCharCode(e),64!=n&&(i+=String.fromCharCode(a)),64!=d&&(i+=String.fromCharCode(c));return i}; -},{}],82:[function(require,module,exports){ +},{}],85:[function(require,module,exports){ "use strict";function CompressedObject(){this.compressedSize=0,this.uncompressedSize=0,this.crc32=0,this.compressionMethod=null,this.compressedContent=null}CompressedObject.prototype={getContent:function(){return null},getCompressedContent:function(){return null}},module.exports=CompressedObject; -},{}],83:[function(require,module,exports){ +},{}],86:[function(require,module,exports){ "use strict";exports.STORE={magic:"\0\0",compress:function(e,r){return e},uncompress:function(e){return e},compressInputType:null,uncompressInputType:null},exports.DEFLATE=require("./flate"); -},{"./flate":88}],84:[function(require,module,exports){ +},{"./flate":91}],87:[function(require,module,exports){ "use strict";var utils=require("./utils"),table=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];module.exports=function(e,t){if("undefined"==typeof e||!e.length)return 0;var r="string"!==utils.getTypeOf(e);"undefined"==typeof t&&(t=0);var n=0,u=0,i=0;t^=-1;for(var f=0,l=e.length;f>>8^n;return t^-1}; -},{"./utils":101}],85:[function(require,module,exports){ +},{"./utils":104}],88:[function(require,module,exports){ "use strict";function DataReader(t){this.data=null,this.length=0,this.index=0,this.zero=0}var utils=require("./utils");DataReader.prototype={checkOffset:function(t){this.checkIndex(this.index+t)},checkIndex:function(t){if(this.length=this.index;e--)n=(n<<8)+this.byteAt(e);return this.index+=t,n},readString:function(t){return utils.transformTo("string",this.readData(t))},readData:function(t){},lastIndexOfSignature:function(t){},readDate:function(){var t=this.readInt(4);return new Date((t>>25&127)+1980,(t>>21&15)-1,t>>16&31,t>>11&31,t>>5&63,(31&t)<<1)}},module.exports=DataReader; -},{"./utils":101}],86:[function(require,module,exports){ + +},{"./utils":104}],89:[function(require,module,exports){ "use strict";exports.base64=!1,exports.binary=!1,exports.dir=!1,exports.createFolders=!1,exports.date=null,exports.compression=null,exports.compressionOptions=null,exports.comment=null,exports.unixPermissions=null,exports.dosPermissions=null; -},{}],87:[function(require,module,exports){ +},{}],90:[function(require,module,exports){ "use strict";var utils=require("./utils");exports.string2binary=function(r){return utils.string2binary(r)},exports.string2Uint8Array=function(r){return utils.transformTo("uint8array",r)},exports.uint8Array2String=function(r){return utils.transformTo("string",r)},exports.string2Blob=function(r){var t=utils.transformTo("arraybuffer",r);return utils.arrayBuffer2Blob(t)},exports.arrayBuffer2Blob=function(r){return utils.arrayBuffer2Blob(r)},exports.transformTo=function(r,t){return utils.transformTo(r,t)},exports.getTypeOf=function(r){return utils.getTypeOf(r)},exports.checkSupport=function(r){return utils.checkSupport(r)},exports.MAX_VALUE_16BITS=utils.MAX_VALUE_16BITS,exports.MAX_VALUE_32BITS=utils.MAX_VALUE_32BITS,exports.pretty=function(r){return utils.pretty(r)},exports.findCompression=function(r){return utils.findCompression(r)},exports.isRegExp=function(r){return utils.isRegExp(r)}; -},{"./utils":101}],88:[function(require,module,exports){ +},{"./utils":104}],91:[function(require,module,exports){ "use strict";var USE_TYPEDARRAY="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,pako=require("pako");exports.uncompressInputType=USE_TYPEDARRAY?"uint8array":"array",exports.compressInputType=USE_TYPEDARRAY?"uint8array":"array",exports.magic="\b\0",exports.compress=function(e,r){return pako.deflateRaw(e,{level:r.level||-1})},exports.uncompress=function(e){return pako.inflateRaw(e)}; -},{"pako":119}],89:[function(require,module,exports){ +},{"pako":122}],92:[function(require,module,exports){ "use strict";function JSZip(e,i){return this instanceof JSZip?(this.files={},this.comment=null,this.root="",e&&this.load(e,i),void(this.clone=function(){var e=new JSZip;for(var i in this)"function"!=typeof this[i]&&(e[i]=this[i]);return e})):new JSZip(e,i)}var base64=require("./base64");JSZip.prototype=require("./object"),JSZip.prototype.load=require("./load"),JSZip.support=require("./support"),JSZip.defaults=require("./defaults"),JSZip.utils=require("./deprecatedPublicUtils"),JSZip.base64={encode:function(e){return base64.encode(e)},decode:function(e){return base64.decode(e)}},JSZip.compressions=require("./compressions"),module.exports=JSZip; -},{"./base64":81,"./compressions":83,"./defaults":86,"./deprecatedPublicUtils":87,"./load":90,"./object":93,"./support":97}],90:[function(require,module,exports){ +},{"./base64":84,"./compressions":86,"./defaults":89,"./deprecatedPublicUtils":90,"./load":93,"./object":96,"./support":100}],93:[function(require,module,exports){ "use strict";var base64=require("./base64"),utf8=require("./utf8"),utils=require("./utils"),ZipEntries=require("./zipEntries");module.exports=function(e,i){var t,r,s,n;for(i=utils.extend(i||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:utf8.utf8decode}),i.base64&&(e=base64.decode(e)),r=new ZipEntries(e,i),t=r.files,s=0;s>>=8;return n},prepareFileAttrs=function(e){return e=e||{},e.base64!==!0||null!==e.binary&&void 0!==e.binary||(e.binary=!0),e=utils.extend(e,defaults),e.date=e.date||new Date,null!==e.compression&&(e.compression=e.compression.toUpperCase()),e},fileAdd=function(e,t,r){var n,i=utils.getTypeOf(t);if(r=prepareFileAttrs(r),"string"==typeof r.unixPermissions&&(r.unixPermissions=parseInt(r.unixPermissions,8)),r.unixPermissions&&16384&r.unixPermissions&&(r.dir=!0),r.dosPermissions&&16&r.dosPermissions&&(r.dir=!0),r.dir&&(e=forceTrailingSlash(e)),r.createFolders&&(n=parentFolder(e))&&folderAdd.call(this,n,!0),r.dir||null===t||"undefined"==typeof t)r.base64=!1,r.binary=!1,t=null,i=null;else if("string"===i)r.binary&&!r.base64&&r.optimizedBinaryString!==!0&&(t=utils.string2binary(t));else{if(r.base64=!1,r.binary=!0,!(i||t instanceof CompressedObject))throw new Error("The data of '"+e+"' is in an unsupported format !");"arraybuffer"===i&&(t=utils.transformTo("uint8array",t))}var s=new ZipObject(e,t,r);return this.files[e]=s,s},parentFolder=function(e){"/"==e.slice(-1)&&(e=e.substring(0,e.length-1));var t=e.lastIndexOf("/");return t>0?e.substring(0,t):""},forceTrailingSlash=function(e){return"/"!=e.slice(-1)&&(e+="/"),e},folderAdd=function(e,t){return t="undefined"!=typeof t&&t,e=forceTrailingSlash(e),this.files[e]||fileAdd.call(this,e,null,{dir:!0,createFolders:t}),this.files[e]},generateCompressedObjectFrom=function(e,t,r){var n,i=new CompressedObject;return e._data instanceof CompressedObject?(i.uncompressedSize=e._data.uncompressedSize,i.crc32=e._data.crc32,0===i.uncompressedSize||e.dir?(t=compressions.STORE,i.compressedContent="",i.crc32=0):e._data.compressionMethod===t.magic?i.compressedContent=e._data.getCompressedContent():(n=e._data.getContent(),i.compressedContent=t.compress(utils.transformTo(t.compressInputType,n),r))):(n=getBinaryData(e),n&&0!==n.length&&!e.dir||(t=compressions.STORE,n=""),i.uncompressedSize=n.length,i.crc32=crc32(n),i.compressedContent=t.compress(utils.transformTo(t.compressInputType,n),r)),i.compressedSize=i.compressedContent.length,i.compressionMethod=t.magic,i},generateUnixExternalFileAttr=function(e,t){var r=e;return e||(r=t?16893:33204),(65535&r)<<16},generateDosExternalFileAttr=function(e,t){return 63&(e||0)},generateZipParts=function(e,t,r,n,i,s){var o,a,u,d,c=(r.compressedContent,s!==utf8.utf8encode),l=utils.transformTo("string",s(t.name)),f=utils.transformTo("string",utf8.utf8encode(t.name)),p=t.comment||"",m=utils.transformTo("string",s(p)),h=utils.transformTo("string",utf8.utf8encode(p)),g=f.length!==t.name.length,T=h.length!==p.length,b=t.options,y="",x="",v="";u=t._initialMetadata.dir!==t.dir?t.dir:b.dir,d=t._initialMetadata.date!==t.date?t.date:b.date;var O=0,C=0;u&&(O|=16),"UNIX"===i?(C=798,O|=generateUnixExternalFileAttr(t.unixPermissions,u)):(C=20,O|=generateDosExternalFileAttr(t.dosPermissions,u)),o=d.getHours(),o<<=6,o|=d.getMinutes(),o<<=5,o|=d.getSeconds()/2,a=d.getFullYear()-1980,a<<=4,a|=d.getMonth()+1,a<<=5,a|=d.getDate(),g&&(x=decToHex(1,1)+decToHex(crc32(l),4)+f,y+="up"+decToHex(x.length,2)+x),T&&(v=decToHex(1,1)+decToHex(this.crc32(m),4)+h,y+="uc"+decToHex(v.length,2)+v);var H="";H+="\n\0",H+=c||!g&&!T?"\0\0":"\0\b",H+=r.compressionMethod,H+=decToHex(o,2),H+=decToHex(a,2),H+=decToHex(r.crc32,4),H+=decToHex(r.compressedSize,4),H+=decToHex(r.uncompressedSize,4),H+=decToHex(l.length,2),H+=decToHex(y.length,2);var S=signature.LOCAL_FILE_HEADER+H+l+y,_=signature.CENTRAL_FILE_HEADER+decToHex(C,2)+H+decToHex(m.length,2)+"\0\0\0\0"+decToHex(O,4)+decToHex(n,4)+l+y+m;return{fileRecord:S,dirRecord:_,compressedObject:r}},out={load:function(e,t){throw new Error("Load method is not defined. Is the file jszip-load.js included ?")},filter:function(e){var t,r,n,i,s=[];for(t in this.files)this.files.hasOwnProperty(t)&&(n=this.files[t],i=new ZipObject(n.name,n._data,utils.extend(n.options)),r=t.slice(this.root.length,t.length),t.slice(0,this.root.length)===this.root&&e(r,i)&&s.push(i));return s},file:function(e,t,r){if(1===arguments.length){if(utils.isRegExp(e)){var n=e;return this.filter(function(e,t){return!t.dir&&n.test(e)})}return this.filter(function(t,r){return!r.dir&&t===e})[0]||null}return e=this.root+e,fileAdd.call(this,e,t,r),this},folder:function(e){if(!e)return this;if(utils.isRegExp(e))return this.filter(function(t,r){return r.dir&&e.test(t)});var t=this.root+e,r=folderAdd.call(this,t),n=this.clone();return n.root=r.name,n},remove:function(e){e=this.root+e;var t=this.files[e];if(t||("/"!=e.slice(-1)&&(e+="/"),t=this.files[e]),t&&!t.dir)delete this.files[e];else for(var r=this.filter(function(t,r){return r.name.slice(0,e.length)===e}),n=0;n=252?6:i>=248?5:i>=240?4:i>=224?3:i>=192?2:1;_utf8len[254]=_utf8len[254]=1;var string2buf=function(r){var t,e,u,n,f,o=r.length,i=0;for(n=0;n>>6,t[f++]=128|63&e):e<65536?(t[f++]=224|e>>>12,t[f++]=128|e>>>6&63,t[f++]=128|63&e):(t[f++]=240|e>>>18,t[f++]=128|e>>>12&63,t[f++]=128|e>>>6&63,t[f++]=128|63&e);return t},utf8border=function(r,t){var e;for(t=t||r.length,t>r.length&&(t=r.length),e=t-1;e>=0&&128===(192&r[e]);)e--;return e<0?t:0===e?t:e+_utf8len[r[e]]>t?e:t},buf2string=function(r){var t,e,u,n,f=r.length,o=new Array(2*f);for(e=0,t=0;t4)o[e++]=65533,t+=n-1;else{for(u&=2===n?31:3===n?15:7;n>1&&t1?o[e++]=65533:u<65536?o[e++]=u:(u-=65536,o[e++]=55296|u>>10&1023,o[e++]=56320|1023&u)}return o.length!==e&&(o.subarray?o=o.subarray(0,e):o.length=e),utils.applyFromCharCode(o)};exports.utf8encode=function(r){return support.nodebuffer?nodeBuffer(r,"utf-8"):string2buf(r)},exports.utf8decode=function(r){if(support.nodebuffer)return utils.transformTo("nodebuffer",r).toString("utf-8");r=utils.transformTo(support.uint8array?"uint8array":"array",r);for(var t=[],e=0,u=r.length,n=65536;e1;)try{"array"===o||"nodebuffer"===o?t.push(String.fromCharCode.apply(null,r.slice(a,Math.min(a+n,e)))):t.push(String.fromCharCode.apply(null,r.subarray(a,Math.min(a+n,e)))),a+=n}catch(r){n=Math.floor(n/2)}return t.join("")}function arrayLikeToArrayLike(r,n){for(var t=0;t1)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var r,e;for(r=0;r0)this.isSignature(t,sig.CENTRAL_FILE_HEADER)||(this.reader.zero=s);else if(s<0)throw new Error("Corrupted zip: missing "+Math.abs(s)+" bytes.")},prepareReader:function(r){var e=utils.getTypeOf(r);if(utils.checkSupport(e),"string"!==e||support.uint8array)if("nodebuffer"===e)this.reader=new NodeBufferReader(r);else if(support.uint8array)this.reader=new Uint8ArrayReader(utils.transformTo("uint8array",r));else{if(!support.array)throw new Error("Unexpected error: unsupported type '"+e+"'");this.reader=new ArrayReader(utils.transformTo("array",r))}else this.reader=new StringReader(r,this.loadOptions.optimizedBinaryString)},load:function(r){this.prepareReader(r),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},module.exports=ZipEntries; -},{"./arrayReader":80,"./nodeBufferReader":92,"./object":93,"./signature":94,"./stringReader":95,"./support":97,"./uint8ArrayReader":98,"./utils":101,"./zipEntry":103}],103:[function(require,module,exports){ +},{"./arrayReader":83,"./nodeBufferReader":95,"./object":96,"./signature":97,"./stringReader":98,"./support":100,"./uint8ArrayReader":101,"./utils":104,"./zipEntry":106}],106:[function(require,module,exports){ "use strict";function ZipEntry(e,t){this.options=e,this.loadOptions=t}var StringReader=require("./stringReader"),utils=require("./utils"),CompressedObject=require("./compressedObject"),jszipProto=require("./object"),support=require("./support"),MADE_BY_DOS=0,MADE_BY_UNIX=3;ZipEntry.prototype={isEncrypted:function(){return 1===(1&this.bitFlag)},useUTF8:function(){return 2048===(2048&this.bitFlag)},prepareCompressedContent:function(e,t,i){return function(){var r=e.index;e.setIndex(t);var s=e.readData(i);return e.setIndex(r),s}},prepareContent:function(e,t,i,r,s){return function(){var e=utils.transformTo(r.uncompressInputType,this.getCompressedContent()),t=r.uncompress(e);if(t.length!==s)throw new Error("Bug : uncompressed data size mismatch");return t}},readLocalPart:function(e){var t,i;if(e.skip(22),this.fileNameLength=e.readInt(2),i=e.readInt(2),this.fileName=e.readData(this.fileNameLength),e.skip(i),this.compressedSize==-1||this.uncompressedSize==-1)throw new Error("Bug or corrupted zip : didn't get enough informations from the central directory (compressedSize == -1 || uncompressedSize == -1)");if(t=utils.findCompression(this.compressionMethod),null===t)throw new Error("Corrupted zip : compression "+utils.pretty(this.compressionMethod)+" unknown (inner file : "+utils.transformTo("string",this.fileName)+")");if(this.decompressed=new CompressedObject,this.decompressed.compressedSize=this.compressedSize,this.decompressed.uncompressedSize=this.uncompressedSize,this.decompressed.crc32=this.crc32,this.decompressed.compressionMethod=this.compressionMethod,this.decompressed.getCompressedContent=this.prepareCompressedContent(e,e.index,this.compressedSize,t),this.decompressed.getContent=this.prepareContent(e,e.index,this.compressedSize,t,this.uncompressedSize),this.loadOptions.checkCRC32&&(this.decompressed=utils.transformTo("string",this.decompressed.getContent()),jszipProto.crc32(this.decompressed)!==this.crc32))throw new Error("Corrupted zip : CRC32 mismatch")},readCentralPart:function(e){if(this.versionMadeBy=e.readInt(2),this.versionNeeded=e.readInt(2),this.bitFlag=e.readInt(2),this.compressionMethod=e.readString(2),this.date=e.readDate(),this.crc32=e.readInt(4),this.compressedSize=e.readInt(4),this.uncompressedSize=e.readInt(4),this.fileNameLength=e.readInt(2),this.extraFieldsLength=e.readInt(2),this.fileCommentLength=e.readInt(2),this.diskNumberStart=e.readInt(2),this.internalFileAttributes=e.readInt(2),this.externalFileAttributes=e.readInt(4),this.localHeaderOffset=e.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");this.fileName=e.readData(this.fileNameLength),this.readExtraFields(e),this.parseZIP64ExtraField(e),this.fileComment=e.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var e=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),e===MADE_BY_DOS&&(this.dosPermissions=63&this.externalFileAttributes),e===MADE_BY_UNIX&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(e){if(this.extraFields[1]){var t=new StringReader(this.extraFields[1].value);this.uncompressedSize===utils.MAX_VALUE_32BITS&&(this.uncompressedSize=t.readInt(8)),this.compressedSize===utils.MAX_VALUE_32BITS&&(this.compressedSize=t.readInt(8)),this.localHeaderOffset===utils.MAX_VALUE_32BITS&&(this.localHeaderOffset=t.readInt(8)),this.diskNumberStart===utils.MAX_VALUE_32BITS&&(this.diskNumberStart=t.readInt(4))}},readExtraFields:function(e){var t,i,r,s=e.index;for(this.extraFields=this.extraFields||{};e.index1?n[i-1]:void 0,a=i>2?n[2]:void 0;for(o=r.length>3&&"function"==typeof o?(i--,o):void 0,a&&isIterateeCall(n[0],n[1],a)&&(o=i<3?void 0:o,i=1),e=Object(e);++t-1&&r%1==0&&r-1&&r%1==0&&r<=MAX_SAFE_INTEGER}function isObject(r){var e=typeof r;return!!r&&("object"==e||"function"==e)}function isObjectLike(r){return!!r&&"object"==typeof r}function keysIn(r){return isArrayLike(r)?arrayLikeKeys(r,!0):baseKeysIn(r)}var MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",funcTag="[object Function]",genTag="[object GeneratorFunction]",reIsUint=/^(?:0|[1-9]\d*)$/,objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,objectToString=objectProto.toString,propertyIsEnumerable=objectProto.propertyIsEnumerable,nativeMax=Math.max,isArray=Array.isArray,assignIn=createAssigner(function(r,e){copyObject(e,keysIn(e),r)});module.exports=assignIn; -},{}],105:[function(require,module,exports){ -(function (global){(function (){ +},{}],108:[function(require,module,exports){ +(function (global){ function apply(r,e,t){switch(t.length){case 0:return r.call(e);case 1:return r.call(e,t[0]);case 2:return r.call(e,t[0],t[1]);case 3:return r.call(e,t[0],t[1],t[2])}return r.apply(e,t)}function arrayEach(r,e){for(var t=-1,n=r?r.length:0;++t-1}function baseFindIndex(r,e,t,n){for(var a=r.length,o=t+(n?1:-1);n?o--:++o1&&I.reverse(),f&&u1?"& ":"")+e[n],e=e.join(t>2?", ":" "),r.replace(reWrapComment,"{\n/* [wrapped with "+e+"] */\n")}function isIndex(r,e){return e=null==e?MAX_SAFE_INTEGER:e,!!e&&("number"==typeof r||reIsUint.test(r))&&r>-1&&r%1==0&&r2?r:void 0}(),setWrapToString=defineProperty?function(r,e,t){var n=e+"";return defineProperty(r,"toString",{configurable:!0,enumerable:!1,value:constant(insertWrapDetails(n,updateWrapDetails(getWrapDetails(n),t)))})}:identity,bind=baseRest(function(r,e,t){var n=BIND_FLAG;if(t.length){var a=replaceHolders(t,getHolder(bind));n|=PARTIAL_FLAG}return createWrap(r,n,e,t,a)});bind.placeholder={},module.exports=bind; -}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) -},{}],106:[function(require,module,exports){ +}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) +},{}],109:[function(require,module,exports){ function apply(e,r,t){switch(t.length){case 0:return e.call(r);case 1:return e.call(r,t[0]);case 2:return e.call(r,t[0],t[1]);case 3:return e.call(r,t[0],t[1],t[2])}return e.apply(r,t)}function baseTimes(e,r){for(var t=-1,n=Array(e);++t1?t[i-1]:void 0,a=i>2?t[2]:void 0;for(o=e.length>3&&"function"==typeof o?(i--,o):void 0,a&&isIterateeCall(t[0],t[1],a)&&(o=i<3?void 0:o,i=1),r=Object(r);++n-1&&e%1==0&&e-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function isObject(e){var r=typeof e;return!!e&&("object"==r||"function"==r)}function isObjectLike(e){return!!e&&"object"==typeof e}function keysIn(e){return isArrayLike(e)?arrayLikeKeys(e,!0):baseKeysIn(e)}var MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",funcTag="[object Function]",genTag="[object GeneratorFunction]",reIsUint=/^(?:0|[1-9]\d*)$/,objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,objectToString=objectProto.toString,propertyIsEnumerable=objectProto.propertyIsEnumerable,nativeMax=Math.max,isArray=Array.isArray,assignInWith=createAssigner(function(e,r,t,n){copyObject(r,keysIn(r),e,n)}),defaults=baseRest(function(e){return e.push(void 0,assignInDefaults),apply(assignInWith,void 0,e)});module.exports=defaults; -},{}],107:[function(require,module,exports){ -(function (global){(function (){ +},{}],110:[function(require,module,exports){ +(function (global){ function arrayFilter(e,t){for(var r=-1,a=e?e.length:0,n=0,o=[];++r-1}function listCacheSet(e,t){var r=this.__data__,a=assocIndexOf(r,e);return a<0?r.push([e,t]):r[a][1]=t,this}function MapCache(e){var t=-1,r=e?e.length:0;for(this.clear();++ti))return!1;var u=o.get(e);if(u&&o.get(t))return u==t;var l=-1,f=!0,y=n&UNORDERED_COMPARE_FLAG?new SetCache:void 0;for(o.set(e,t),o.set(t,e);++l-1&&e%1==0&&e-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function isObject(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function isObjectLike(e){return!!e&&"object"==typeof e}function isSymbol(e){return"symbol"==typeof e||isObjectLike(e)&&objectToString.call(e)==symbolTag}function toString(e){return null==e?"":baseToString(e)}function get(e,t,r){var a=null==e?void 0:baseGet(e,t);return void 0===a?r:a}function hasIn(e,t){return null!=e&&hasPath(e,t,baseHasIn)}function keys(e){return isArrayLike(e)?arrayLikeKeys(e):baseKeys(e)}function identity(e){return e}function property(e){return isKey(e)?baseProperty(toKey(e)):basePropertyDeep(e)}var LARGE_ARRAY_SIZE=200,FUNC_ERROR_TEXT="Expected a function",HASH_UNDEFINED="__lodash_hash_undefined__",UNORDERED_COMPARE_FLAG=1,PARTIAL_COMPARE_FLAG=2,INFINITY=1/0,MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",arrayTag="[object Array]",boolTag="[object Boolean]",dateTag="[object Date]",errorTag="[object Error]",funcTag="[object Function]",genTag="[object GeneratorFunction]",mapTag="[object Map]",numberTag="[object Number]",objectTag="[object Object]",promiseTag="[object Promise]",regexpTag="[object RegExp]",setTag="[object Set]",stringTag="[object String]",symbolTag="[object Symbol]",weakMapTag="[object WeakMap]",arrayBufferTag="[object ArrayBuffer]",dataViewTag="[object DataView]",float32Tag="[object Float32Array]",float64Tag="[object Float64Array]",int8Tag="[object Int8Array]",int16Tag="[object Int16Array]",int32Tag="[object Int32Array]",uint8Tag="[object Uint8Array]",uint8ClampedTag="[object Uint8ClampedArray]",uint16Tag="[object Uint16Array]",uint32Tag="[object Uint32Array]",reIsDeepProp=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,reIsPlainProp=/^\w*$/,reLeadingDot=/^\./,rePropName=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reEscapeChar=/\\(\\)?/g,reIsHostCtor=/^\[object .+?Constructor\]$/,reIsUint=/^(?:0|[1-9]\d*)$/,typedArrayTags={};typedArrayTags[float32Tag]=typedArrayTags[float64Tag]=typedArrayTags[int8Tag]=typedArrayTags[int16Tag]=typedArrayTags[int32Tag]=typedArrayTags[uint8Tag]=typedArrayTags[uint8ClampedTag]=typedArrayTags[uint16Tag]=typedArrayTags[uint32Tag]=!0,typedArrayTags[argsTag]=typedArrayTags[arrayTag]=typedArrayTags[arrayBufferTag]=typedArrayTags[boolTag]=typedArrayTags[dataViewTag]=typedArrayTags[dateTag]=typedArrayTags[errorTag]=typedArrayTags[funcTag]=typedArrayTags[mapTag]=typedArrayTags[numberTag]=typedArrayTags[objectTag]=typedArrayTags[regexpTag]=typedArrayTags[setTag]=typedArrayTags[stringTag]=typedArrayTags[weakMapTag]=!1;var freeGlobal="object"==typeof global&&global&&global.Object===Object&&global,freeSelf="object"==typeof self&&self&&self.Object===Object&&self,root=freeGlobal||freeSelf||Function("return this")(),freeExports="object"==typeof exports&&exports&&!exports.nodeType&&exports,freeModule=freeExports&&"object"==typeof module&&module&&!module.nodeType&&module,moduleExports=freeModule&&freeModule.exports===freeExports,freeProcess=moduleExports&&freeGlobal.process,nodeUtil=function(){try{return freeProcess&&freeProcess.binding("util")}catch(e){}}(),nodeIsTypedArray=nodeUtil&&nodeUtil.isTypedArray,arrayProto=Array.prototype,funcProto=Function.prototype,objectProto=Object.prototype,coreJsData=root["__core-js_shared__"],maskSrcKey=function(){var e=/[^.]+$/.exec(coreJsData&&coreJsData.keys&&coreJsData.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),funcToString=funcProto.toString,hasOwnProperty=objectProto.hasOwnProperty,objectToString=objectProto.toString,reIsNative=RegExp("^"+funcToString.call(hasOwnProperty).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Symbol=root.Symbol,Uint8Array=root.Uint8Array,propertyIsEnumerable=objectProto.propertyIsEnumerable,splice=arrayProto.splice,nativeKeys=overArg(Object.keys,Object),DataView=getNative(root,"DataView"),Map=getNative(root,"Map"),Promise=getNative(root,"Promise"),Set=getNative(root,"Set"),WeakMap=getNative(root,"WeakMap"),nativeCreate=getNative(Object,"create"),dataViewCtorString=toSource(DataView),mapCtorString=toSource(Map),promiseCtorString=toSource(Promise),setCtorString=toSource(Set),weakMapCtorString=toSource(WeakMap),symbolProto=Symbol?Symbol.prototype:void 0,symbolValueOf=symbolProto?symbolProto.valueOf:void 0,symbolToString=symbolProto?symbolProto.toString:void 0;Hash.prototype.clear=hashClear,Hash.prototype.delete=hashDelete,Hash.prototype.get=hashGet,Hash.prototype.has=hashHas,Hash.prototype.set=hashSet,ListCache.prototype.clear=listCacheClear,ListCache.prototype.delete=listCacheDelete,ListCache.prototype.get=listCacheGet,ListCache.prototype.has=listCacheHas,ListCache.prototype.set=listCacheSet,MapCache.prototype.clear=mapCacheClear,MapCache.prototype.delete=mapCacheDelete,MapCache.prototype.get=mapCacheGet,MapCache.prototype.has=mapCacheHas,MapCache.prototype.set=mapCacheSet,SetCache.prototype.add=SetCache.prototype.push=setCacheAdd,SetCache.prototype.has=setCacheHas,Stack.prototype.clear=stackClear,Stack.prototype.delete=stackDelete,Stack.prototype.get=stackGet,Stack.prototype.has=stackHas,Stack.prototype.set=stackSet;var baseEach=createBaseEach(baseForOwn),baseFor=createBaseFor(),getTag=baseGetTag;(DataView&&getTag(new DataView(new ArrayBuffer(1)))!=dataViewTag||Map&&getTag(new Map)!=mapTag||Promise&&getTag(Promise.resolve())!=promiseTag||Set&&getTag(new Set)!=setTag||WeakMap&&getTag(new WeakMap)!=weakMapTag)&&(getTag=function(e){var t=objectToString.call(e),r=t==objectTag?e.constructor:void 0,a=r?toSource(r):void 0;if(a)switch(a){case dataViewCtorString:return dataViewTag;case mapCtorString:return mapTag;case promiseCtorString:return promiseTag;case setCtorString:return setTag;case weakMapCtorString:return weakMapTag}return t});var stringToPath=memoize(function(e){e=toString(e);var t=[];return reLeadingDot.test(e)&&t.push(""),e.replace(rePropName,function(e,r,a,n){t.push(a?n.replace(reEscapeChar,"$1"):r||e)}),t});memoize.Cache=MapCache;var isArray=Array.isArray,isTypedArray=nodeIsTypedArray?baseUnary(nodeIsTypedArray):baseIsTypedArray;module.exports=filter; -}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) -},{}],108:[function(require,module,exports){ -(function (global){(function (){ +}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) +},{}],111:[function(require,module,exports){ +(function (global){ function arrayPush(e,t){for(var r=-1,n=t.length,o=e.length;++r0&&r(b)?t>1?baseFlatten(b,t-1,r,n,o):arrayPush(o,b):n||(o[o.length]=b)}return o}function isFlattenable(e){return isArray(e)||isArguments(e)||!!(spreadableSymbol&&e&&e[spreadableSymbol])}function flatten(e){var t=e?e.length:0;return t?baseFlatten(e,1):[]}function isArguments(e){return isArrayLikeObject(e)&&hasOwnProperty.call(e,"callee")&&(!propertyIsEnumerable.call(e,"callee")||objectToString.call(e)==argsTag)}function isArrayLike(e){return null!=e&&isLength(e.length)&&!isFunction(e)}function isArrayLikeObject(e){return isObjectLike(e)&&isArrayLike(e)}function isFunction(e){var t=isObject(e)?objectToString.call(e):"";return t==funcTag||t==genTag}function isLength(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function isObject(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function isObjectLike(e){return!!e&&"object"==typeof e}var MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",funcTag="[object Function]",genTag="[object GeneratorFunction]",freeGlobal="object"==typeof global&&global&&global.Object===Object&&global,freeSelf="object"==typeof self&&self&&self.Object===Object&&self,root=freeGlobal||freeSelf||Function("return this")(),objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,objectToString=objectProto.toString,Symbol=root.Symbol,propertyIsEnumerable=objectProto.propertyIsEnumerable,spreadableSymbol=Symbol?Symbol.isConcatSpreadable:void 0,isArray=Array.isArray;module.exports=flatten; -}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) -},{}],109:[function(require,module,exports){ +}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) +},{}],112:[function(require,module,exports){ function arrayEach(r,e){for(var t=-1,n=r?r.length:0;++t-1&&r%1==0&&r-1&&r%1==0&&r<=MAX_SAFE_INTEGER}function isObject(r){var e=typeof r;return!!r&&("object"==e||"function"==e)}function isObjectLike(r){return!!r&&"object"==typeof r}function keys(r){return isArrayLike(r)?arrayLikeKeys(r):baseKeys(r)}function identity(r){return r}var MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",funcTag="[object Function]",genTag="[object GeneratorFunction]",reIsUint=/^(?:0|[1-9]\d*)$/,objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,objectToString=objectProto.toString,propertyIsEnumerable=objectProto.propertyIsEnumerable,nativeKeys=overArg(Object.keys,Object),baseEach=createBaseEach(baseForOwn),baseFor=createBaseFor(),isArray=Array.isArray;module.exports=forEach; -},{}],110:[function(require,module,exports){ -(function (global){(function (){ +},{}],113:[function(require,module,exports){ +(function (global){ function arrayMap(e,t){for(var r=-1,a=e?e.length:0,n=Array(a);++r-1}function listCacheSet(e,t){var r=this.__data__,a=assocIndexOf(r,e);return a<0?r.push([e,t]):r[a][1]=t,this}function MapCache(e){var t=-1,r=e?e.length:0;for(this.clear();++ti))return!1;var u=o.get(e);if(u&&o.get(t))return u==t;var l=-1,y=!0,p=n&UNORDERED_COMPARE_FLAG?new SetCache:void 0;for(o.set(e,t),o.set(t,e);++l-1&&e%1==0&&e-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function isObject(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function isObjectLike(e){return!!e&&"object"==typeof e}function isSymbol(e){return"symbol"==typeof e||isObjectLike(e)&&objectToString.call(e)==symbolTag}function toString(e){return null==e?"":baseToString(e)}function get(e,t,r){var a=null==e?void 0:baseGet(e,t);return void 0===a?r:a}function hasIn(e,t){return null!=e&&hasPath(e,t,baseHasIn)}function keys(e){return isArrayLike(e)?arrayLikeKeys(e):baseKeys(e)}function identity(e){return e}function property(e){return isKey(e)?baseProperty(toKey(e)):basePropertyDeep(e)}var LARGE_ARRAY_SIZE=200,FUNC_ERROR_TEXT="Expected a function",HASH_UNDEFINED="__lodash_hash_undefined__",UNORDERED_COMPARE_FLAG=1,PARTIAL_COMPARE_FLAG=2,INFINITY=1/0,MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",arrayTag="[object Array]",boolTag="[object Boolean]",dateTag="[object Date]",errorTag="[object Error]",funcTag="[object Function]",genTag="[object GeneratorFunction]",mapTag="[object Map]",numberTag="[object Number]",objectTag="[object Object]",promiseTag="[object Promise]",regexpTag="[object RegExp]",setTag="[object Set]",stringTag="[object String]",symbolTag="[object Symbol]",weakMapTag="[object WeakMap]",arrayBufferTag="[object ArrayBuffer]",dataViewTag="[object DataView]",float32Tag="[object Float32Array]",float64Tag="[object Float64Array]",int8Tag="[object Int8Array]",int16Tag="[object Int16Array]",int32Tag="[object Int32Array]",uint8Tag="[object Uint8Array]",uint8ClampedTag="[object Uint8ClampedArray]",uint16Tag="[object Uint16Array]",uint32Tag="[object Uint32Array]",reIsDeepProp=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,reIsPlainProp=/^\w*$/,reLeadingDot=/^\./,rePropName=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reEscapeChar=/\\(\\)?/g,reIsHostCtor=/^\[object .+?Constructor\]$/,reIsUint=/^(?:0|[1-9]\d*)$/,typedArrayTags={};typedArrayTags[float32Tag]=typedArrayTags[float64Tag]=typedArrayTags[int8Tag]=typedArrayTags[int16Tag]=typedArrayTags[int32Tag]=typedArrayTags[uint8Tag]=typedArrayTags[uint8ClampedTag]=typedArrayTags[uint16Tag]=typedArrayTags[uint32Tag]=!0,typedArrayTags[argsTag]=typedArrayTags[arrayTag]=typedArrayTags[arrayBufferTag]=typedArrayTags[boolTag]=typedArrayTags[dataViewTag]=typedArrayTags[dateTag]=typedArrayTags[errorTag]=typedArrayTags[funcTag]=typedArrayTags[mapTag]=typedArrayTags[numberTag]=typedArrayTags[objectTag]=typedArrayTags[regexpTag]=typedArrayTags[setTag]=typedArrayTags[stringTag]=typedArrayTags[weakMapTag]=!1;var freeGlobal="object"==typeof global&&global&&global.Object===Object&&global,freeSelf="object"==typeof self&&self&&self.Object===Object&&self,root=freeGlobal||freeSelf||Function("return this")(),freeExports="object"==typeof exports&&exports&&!exports.nodeType&&exports,freeModule=freeExports&&"object"==typeof module&&module&&!module.nodeType&&module,moduleExports=freeModule&&freeModule.exports===freeExports,freeProcess=moduleExports&&freeGlobal.process,nodeUtil=function(){try{return freeProcess&&freeProcess.binding("util")}catch(e){}}(),nodeIsTypedArray=nodeUtil&&nodeUtil.isTypedArray,arrayProto=Array.prototype,funcProto=Function.prototype,objectProto=Object.prototype,coreJsData=root["__core-js_shared__"],maskSrcKey=function(){var e=/[^.]+$/.exec(coreJsData&&coreJsData.keys&&coreJsData.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),funcToString=funcProto.toString,hasOwnProperty=objectProto.hasOwnProperty,objectToString=objectProto.toString,reIsNative=RegExp("^"+funcToString.call(hasOwnProperty).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Symbol=root.Symbol,Uint8Array=root.Uint8Array,propertyIsEnumerable=objectProto.propertyIsEnumerable,splice=arrayProto.splice,nativeKeys=overArg(Object.keys,Object),DataView=getNative(root,"DataView"),Map=getNative(root,"Map"),Promise=getNative(root,"Promise"),Set=getNative(root,"Set"),WeakMap=getNative(root,"WeakMap"),nativeCreate=getNative(Object,"create"),dataViewCtorString=toSource(DataView),mapCtorString=toSource(Map),promiseCtorString=toSource(Promise),setCtorString=toSource(Set),weakMapCtorString=toSource(WeakMap),symbolProto=Symbol?Symbol.prototype:void 0,symbolValueOf=symbolProto?symbolProto.valueOf:void 0,symbolToString=symbolProto?symbolProto.toString:void 0;Hash.prototype.clear=hashClear,Hash.prototype.delete=hashDelete,Hash.prototype.get=hashGet,Hash.prototype.has=hashHas,Hash.prototype.set=hashSet,ListCache.prototype.clear=listCacheClear,ListCache.prototype.delete=listCacheDelete,ListCache.prototype.get=listCacheGet,ListCache.prototype.has=listCacheHas,ListCache.prototype.set=listCacheSet,MapCache.prototype.clear=mapCacheClear,MapCache.prototype.delete=mapCacheDelete,MapCache.prototype.get=mapCacheGet,MapCache.prototype.has=mapCacheHas,MapCache.prototype.set=mapCacheSet,SetCache.prototype.add=SetCache.prototype.push=setCacheAdd,SetCache.prototype.has=setCacheHas,Stack.prototype.clear=stackClear,Stack.prototype.delete=stackDelete,Stack.prototype.get=stackGet,Stack.prototype.has=stackHas,Stack.prototype.set=stackSet;var baseEach=createBaseEach(baseForOwn),baseFor=createBaseFor(),getTag=baseGetTag;(DataView&&getTag(new DataView(new ArrayBuffer(1)))!=dataViewTag||Map&&getTag(new Map)!=mapTag||Promise&&getTag(Promise.resolve())!=promiseTag||Set&&getTag(new Set)!=setTag||WeakMap&&getTag(new WeakMap)!=weakMapTag)&&(getTag=function(e){var t=objectToString.call(e),r=t==objectTag?e.constructor:void 0,a=r?toSource(r):void 0;if(a)switch(a){case dataViewCtorString:return dataViewTag;case mapCtorString:return mapTag;case promiseCtorString:return promiseTag;case setCtorString:return setTag;case weakMapCtorString:return weakMapTag}return t});var stringToPath=memoize(function(e){e=toString(e);var t=[];return reLeadingDot.test(e)&&t.push(""),e.replace(rePropName,function(e,r,a,n){t.push(a?n.replace(reEscapeChar,"$1"):r||e)}),t});memoize.Cache=MapCache;var isArray=Array.isArray,isTypedArray=nodeIsTypedArray?baseUnary(nodeIsTypedArray):baseIsTypedArray;module.exports=map; -}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) -},{}],111:[function(require,module,exports){ -(function (global){(function (){ -function apply(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}function baseTimes(e,t){for(var r=-1,a=Array(e);++r-1}function listCacheSet(e,t){var r=this.__data__,a=assocIndexOf(r,e);return a<0?(++this.size,r.push([e,t])):r[a][1]=t,this}function MapCache(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t1?r[n-1]:void 0,i=n>2?r[2]:void 0;for(o=e.length>3&&"function"==typeof o?(n--,o):void 0,i&&isIterateeCall(r[0],r[1],i)&&(o=n<3?void 0:o,n=1),t=Object(t);++a-1&&e%1==0&&e0){if(++t>=HOT_COUNT)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function toSource(e){if(null!=e){try{return funcToString.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function eq(e,t){return e===t||e!==e&&t!==t}function isArrayLike(e){return null!=e&&isLength(e.length)&&!isFunction(e)}function isArrayLikeObject(e){return isObjectLike(e)&&isArrayLike(e)}function isFunction(e){if(!isObject(e))return!1;var t=baseGetTag(e);return t==funcTag||t==genTag||t==asyncTag||t==proxyTag}function isLength(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function isObject(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function isObjectLike(e){return null!=e&&"object"==typeof e}function isPlainObject(e){if(!isObjectLike(e)||baseGetTag(e)!=objectTag)return!1;var t=getPrototype(e);if(null===t)return!0;var r=hasOwnProperty.call(t,"constructor")&&t.constructor;return"function"==typeof r&&r instanceof r&&funcToString.call(r)==objectCtorString}function toPlainObject(e){return copyObject(e,keysIn(e))}function keysIn(e){return isArrayLike(e)?arrayLikeKeys(e,!0):baseKeysIn(e)}function constant(e){return function(){return e}}function identity(e){return e}function stubFalse(){return!1}var LARGE_ARRAY_SIZE=200,HASH_UNDEFINED="__lodash_hash_undefined__",HOT_COUNT=800,HOT_SPAN=16,MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",arrayTag="[object Array]",asyncTag="[object AsyncFunction]",boolTag="[object Boolean]",dateTag="[object Date]",errorTag="[object Error]",funcTag="[object Function]",genTag="[object GeneratorFunction]",mapTag="[object Map]",numberTag="[object Number]",nullTag="[object Null]",objectTag="[object Object]",proxyTag="[object Proxy]",regexpTag="[object RegExp]",setTag="[object Set]",stringTag="[object String]",undefinedTag="[object Undefined]",weakMapTag="[object WeakMap]",arrayBufferTag="[object ArrayBuffer]",dataViewTag="[object DataView]",float32Tag="[object Float32Array]",float64Tag="[object Float64Array]",int8Tag="[object Int8Array]",int16Tag="[object Int16Array]",int32Tag="[object Int32Array]",uint8Tag="[object Uint8Array]",uint8ClampedTag="[object Uint8ClampedArray]",uint16Tag="[object Uint16Array]",uint32Tag="[object Uint32Array]",reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reIsHostCtor=/^\[object .+?Constructor\]$/,reIsUint=/^(?:0|[1-9]\d*)$/,typedArrayTags={};typedArrayTags[float32Tag]=typedArrayTags[float64Tag]=typedArrayTags[int8Tag]=typedArrayTags[int16Tag]=typedArrayTags[int32Tag]=typedArrayTags[uint8Tag]=typedArrayTags[uint8ClampedTag]=typedArrayTags[uint16Tag]=typedArrayTags[uint32Tag]=!0,typedArrayTags[argsTag]=typedArrayTags[arrayTag]=typedArrayTags[arrayBufferTag]=typedArrayTags[boolTag]=typedArrayTags[dataViewTag]=typedArrayTags[dateTag]=typedArrayTags[errorTag]=typedArrayTags[funcTag]=typedArrayTags[mapTag]=typedArrayTags[numberTag]=typedArrayTags[objectTag]=typedArrayTags[regexpTag]=typedArrayTags[setTag]=typedArrayTags[stringTag]=typedArrayTags[weakMapTag]=!1;var freeGlobal="object"==typeof global&&global&&global.Object===Object&&global,freeSelf="object"==typeof self&&self&&self.Object===Object&&self,root=freeGlobal||freeSelf||Function("return this")(),freeExports="object"==typeof exports&&exports&&!exports.nodeType&&exports,freeModule=freeExports&&"object"==typeof module&&module&&!module.nodeType&&module,moduleExports=freeModule&&freeModule.exports===freeExports,freeProcess=moduleExports&&freeGlobal.process,nodeUtil=function(){try{var e=freeModule&&freeModule.require&&freeModule.require("util").types;return e?e:freeProcess&&freeProcess.binding&&freeProcess.binding("util")}catch(e){}}(),nodeIsTypedArray=nodeUtil&&nodeUtil.isTypedArray,arrayProto=Array.prototype,funcProto=Function.prototype,objectProto=Object.prototype,coreJsData=root["__core-js_shared__"],funcToString=funcProto.toString,hasOwnProperty=objectProto.hasOwnProperty,maskSrcKey=function(){var e=/[^.]+$/.exec(coreJsData&&coreJsData.keys&&coreJsData.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),nativeObjectToString=objectProto.toString,objectCtorString=funcToString.call(Object),reIsNative=RegExp("^"+funcToString.call(hasOwnProperty).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Buffer=moduleExports?root.Buffer:void 0,Symbol=root.Symbol,Uint8Array=root.Uint8Array,allocUnsafe=Buffer?Buffer.allocUnsafe:void 0,getPrototype=overArg(Object.getPrototypeOf,Object),objectCreate=Object.create,propertyIsEnumerable=objectProto.propertyIsEnumerable,splice=arrayProto.splice,symToStringTag=Symbol?Symbol.toStringTag:void 0,defineProperty=function(){try{var e=getNative(Object,"defineProperty");return e({},"",{}),e}catch(e){}}(),nativeIsBuffer=Buffer?Buffer.isBuffer:void 0,nativeMax=Math.max,nativeNow=Date.now,Map=getNative(root,"Map"),nativeCreate=getNative(Object,"create"),baseCreate=function(){function e(){}return function(t){if(!isObject(t))return{};if(objectCreate)return objectCreate(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();Hash.prototype.clear=hashClear,Hash.prototype.delete=hashDelete,Hash.prototype.get=hashGet,Hash.prototype.has=hashHas,Hash.prototype.set=hashSet,ListCache.prototype.clear=listCacheClear,ListCache.prototype.delete=listCacheDelete,ListCache.prototype.get=listCacheGet,ListCache.prototype.has=listCacheHas,ListCache.prototype.set=listCacheSet,MapCache.prototype.clear=mapCacheClear,MapCache.prototype.delete=mapCacheDelete,MapCache.prototype.get=mapCacheGet,MapCache.prototype.has=mapCacheHas,MapCache.prototype.set=mapCacheSet,Stack.prototype.clear=stackClear,Stack.prototype.delete=stackDelete,Stack.prototype.get=stackGet,Stack.prototype.has=stackHas,Stack.prototype.set=stackSet;var baseFor=createBaseFor(),baseSetToString=defineProperty?function(e,t){return defineProperty(e,"toString",{configurable:!0,enumerable:!1,value:constant(t),writable:!0})}:identity,setToString=shortOut(baseSetToString),isArguments=baseIsArguments(function(){return arguments}())?baseIsArguments:function(e){return isObjectLike(e)&&hasOwnProperty.call(e,"callee")&&!propertyIsEnumerable.call(e,"callee")},isArray=Array.isArray,isBuffer=nativeIsBuffer||stubFalse,isTypedArray=nodeIsTypedArray?baseUnary(nodeIsTypedArray):baseIsTypedArray,merge=createAssigner(function(e,t,r){baseMerge(e,t,r)});module.exports=merge; +}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) +},{}],114:[function(require,module,exports){ +(function (global){ +function addMapEntry(e,t){return e.set(t[0],t[1]),e}function addSetEntry(e,t){return e.add(t),e}function apply(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}function arrayEach(e,t){for(var r=-1,a=e?e.length:0;++r-1}function listCacheSet(e,t){var r=this.__data__,a=assocIndexOf(r,e);return a<0?r.push([e,t]):r[a][1]=t,this}function MapCache(e){var t=-1,r=e?e.length:0;for(this.clear();++t1?r[n-1]:void 0,s=n>2?r[2]:void 0;for(o=e.length>3&&"function"==typeof o?(n--,o):void 0,s&&isIterateeCall(r[0],r[1],s)&&(o=n<3?void 0:o,n=1),t=Object(t);++a-1&&e%1==0&&e-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function isObject(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function isObjectLike(e){return!!e&&"object"==typeof e}function isPlainObject(e){if(!isObjectLike(e)||objectToString.call(e)!=objectTag||isHostObject(e))return!1;var t=getPrototype(e);if(null===t)return!0;var r=hasOwnProperty.call(t,"constructor")&&t.constructor;return"function"==typeof r&&r instanceof r&&funcToString.call(r)==objectCtorString}function toPlainObject(e){return copyObject(e,keysIn(e))}function keys(e){return isArrayLike(e)?arrayLikeKeys(e):baseKeys(e)}function keysIn(e){return isArrayLike(e)?arrayLikeKeys(e,!0):baseKeysIn(e)}function stubArray(){return[]}function stubFalse(){return!1}var LARGE_ARRAY_SIZE=200,HASH_UNDEFINED="__lodash_hash_undefined__",MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",arrayTag="[object Array]",boolTag="[object Boolean]",dateTag="[object Date]",errorTag="[object Error]",funcTag="[object Function]",genTag="[object GeneratorFunction]",mapTag="[object Map]",numberTag="[object Number]",objectTag="[object Object]",promiseTag="[object Promise]",regexpTag="[object RegExp]",setTag="[object Set]",stringTag="[object String]",symbolTag="[object Symbol]",weakMapTag="[object WeakMap]",arrayBufferTag="[object ArrayBuffer]",dataViewTag="[object DataView]",float32Tag="[object Float32Array]",float64Tag="[object Float64Array]",int8Tag="[object Int8Array]",int16Tag="[object Int16Array]",int32Tag="[object Int32Array]",uint8Tag="[object Uint8Array]",uint8ClampedTag="[object Uint8ClampedArray]",uint16Tag="[object Uint16Array]",uint32Tag="[object Uint32Array]",reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reFlags=/\w*$/,reIsHostCtor=/^\[object .+?Constructor\]$/,reIsUint=/^(?:0|[1-9]\d*)$/,typedArrayTags={};typedArrayTags[float32Tag]=typedArrayTags[float64Tag]=typedArrayTags[int8Tag]=typedArrayTags[int16Tag]=typedArrayTags[int32Tag]=typedArrayTags[uint8Tag]=typedArrayTags[uint8ClampedTag]=typedArrayTags[uint16Tag]=typedArrayTags[uint32Tag]=!0,typedArrayTags[argsTag]=typedArrayTags[arrayTag]=typedArrayTags[arrayBufferTag]=typedArrayTags[boolTag]=typedArrayTags[dataViewTag]=typedArrayTags[dateTag]=typedArrayTags[errorTag]=typedArrayTags[funcTag]=typedArrayTags[mapTag]=typedArrayTags[numberTag]=typedArrayTags[objectTag]=typedArrayTags[regexpTag]=typedArrayTags[setTag]=typedArrayTags[stringTag]=typedArrayTags[weakMapTag]=!1;var cloneableTags={};cloneableTags[argsTag]=cloneableTags[arrayTag]=cloneableTags[arrayBufferTag]=cloneableTags[dataViewTag]=cloneableTags[boolTag]=cloneableTags[dateTag]=cloneableTags[float32Tag]=cloneableTags[float64Tag]=cloneableTags[int8Tag]=cloneableTags[int16Tag]=cloneableTags[int32Tag]=cloneableTags[mapTag]=cloneableTags[numberTag]=cloneableTags[objectTag]=cloneableTags[regexpTag]=cloneableTags[setTag]=cloneableTags[stringTag]=cloneableTags[symbolTag]=cloneableTags[uint8Tag]=cloneableTags[uint8ClampedTag]=cloneableTags[uint16Tag]=cloneableTags[uint32Tag]=!0,cloneableTags[errorTag]=cloneableTags[funcTag]=cloneableTags[weakMapTag]=!1;var freeGlobal="object"==typeof global&&global&&global.Object===Object&&global,freeSelf="object"==typeof self&&self&&self.Object===Object&&self,root=freeGlobal||freeSelf||Function("return this")(),freeExports="object"==typeof exports&&exports&&!exports.nodeType&&exports,freeModule=freeExports&&"object"==typeof module&&module&&!module.nodeType&&module,moduleExports=freeModule&&freeModule.exports===freeExports,freeProcess=moduleExports&&freeGlobal.process,nodeUtil=function(){try{return freeProcess&&freeProcess.binding("util")}catch(e){}}(),nodeIsTypedArray=nodeUtil&&nodeUtil.isTypedArray,arrayProto=Array.prototype,funcProto=Function.prototype,objectProto=Object.prototype,coreJsData=root["__core-js_shared__"],maskSrcKey=function(){var e=/[^.]+$/.exec(coreJsData&&coreJsData.keys&&coreJsData.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),funcToString=funcProto.toString,hasOwnProperty=objectProto.hasOwnProperty,objectCtorString=funcToString.call(Object),objectToString=objectProto.toString,reIsNative=RegExp("^"+funcToString.call(hasOwnProperty).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Buffer=moduleExports?root.Buffer:void 0,Symbol=root.Symbol,Uint8Array=root.Uint8Array,getPrototype=overArg(Object.getPrototypeOf,Object),objectCreate=Object.create,propertyIsEnumerable=objectProto.propertyIsEnumerable,splice=arrayProto.splice,nativeGetSymbols=Object.getOwnPropertySymbols,nativeIsBuffer=Buffer?Buffer.isBuffer:void 0,nativeKeys=overArg(Object.keys,Object),nativeMax=Math.max,DataView=getNative(root,"DataView"),Map=getNative(root,"Map"),Promise=getNative(root,"Promise"),Set=getNative(root,"Set"),WeakMap=getNative(root,"WeakMap"),nativeCreate=getNative(Object,"create"),dataViewCtorString=toSource(DataView),mapCtorString=toSource(Map),promiseCtorString=toSource(Promise),setCtorString=toSource(Set),weakMapCtorString=toSource(WeakMap),symbolProto=Symbol?Symbol.prototype:void 0,symbolValueOf=symbolProto?symbolProto.valueOf:void 0;Hash.prototype.clear=hashClear,Hash.prototype.delete=hashDelete,Hash.prototype.get=hashGet,Hash.prototype.has=hashHas,Hash.prototype.set=hashSet,ListCache.prototype.clear=listCacheClear,ListCache.prototype.delete=listCacheDelete,ListCache.prototype.get=listCacheGet,ListCache.prototype.has=listCacheHas,ListCache.prototype.set=listCacheSet,MapCache.prototype.clear=mapCacheClear,MapCache.prototype.delete=mapCacheDelete,MapCache.prototype.get=mapCacheGet,MapCache.prototype.has=mapCacheHas,MapCache.prototype.set=mapCacheSet,Stack.prototype.clear=stackClear,Stack.prototype.delete=stackDelete,Stack.prototype.get=stackGet,Stack.prototype.has=stackHas,Stack.prototype.set=stackSet;var getSymbols=nativeGetSymbols?overArg(nativeGetSymbols,Object):stubArray,getTag=baseGetTag;(DataView&&getTag(new DataView(new ArrayBuffer(1)))!=dataViewTag||Map&&getTag(new Map)!=mapTag||Promise&&getTag(Promise.resolve())!=promiseTag||Set&&getTag(new Set)!=setTag||WeakMap&&getTag(new WeakMap)!=weakMapTag)&&(getTag=function(e){var t=objectToString.call(e),r=t==objectTag?e.constructor:void 0,a=r?toSource(r):void 0;if(a)switch(a){case dataViewCtorString:return dataViewTag;case mapCtorString:return mapTag;case promiseCtorString:return promiseTag;case setCtorString:return setTag;case weakMapCtorString:return weakMapTag}return t});var isArray=Array.isArray,isBuffer=nativeIsBuffer||stubFalse,isTypedArray=nodeIsTypedArray?baseUnary(nodeIsTypedArray):baseIsTypedArray,merge=createAssigner(function(e,t,r){baseMerge(e,t,r)});module.exports=merge; -}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) -},{}],112:[function(require,module,exports){ -(function (global){(function (){ +}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) +},{}],115:[function(require,module,exports){ +(function (global){ function apply(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}function arrayMap(e,t){for(var r=-1,n=e?e.length:0,a=Array(n);++r0&&r(c)?t>1?baseFlatten(c,t-1,r,n,a):arrayPush(a,c):n||(a[a.length]=c)}return a}function basePick(e,t){return e=Object(e),basePickBy(e,t,function(t,r){return r in e})}function basePickBy(e,t,r){for(var n=-1,a=t.length,o={};++n-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function isObject(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function isObjectLike(e){return!!e&&"object"==typeof e}function isSymbol(e){return"symbol"==typeof e||isObjectLike(e)&&objectToString.call(e)==symbolTag}var INFINITY=1/0,MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",funcTag="[object Function]",genTag="[object GeneratorFunction]",symbolTag="[object Symbol]",freeGlobal="object"==typeof global&&global&&global.Object===Object&&global,freeSelf="object"==typeof self&&self&&self.Object===Object&&self,root=freeGlobal||freeSelf||Function("return this")(),objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,objectToString=objectProto.toString,Symbol=root.Symbol,propertyIsEnumerable=objectProto.propertyIsEnumerable,spreadableSymbol=Symbol?Symbol.isConcatSpreadable:void 0,nativeMax=Math.max,isArray=Array.isArray,pick=baseRest(function(e,t){return null==e?{}:basePick(e,arrayMap(baseFlatten(t,1),toKey))});module.exports=pick; -}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) -},{}],113:[function(require,module,exports){ -(function (global){(function (){ +}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) +},{}],116:[function(require,module,exports){ +(function (global){ function arrayReduce(e,t,r,a){var n=-1,o=e?e.length:0;for(a&&o&&(r=e[++n]);++n-1}function listCacheSet(e,t){var r=this.__data__,a=assocIndexOf(r,e);return a<0?r.push([e,t]):r[a][1]=t,this}function MapCache(e){var t=-1,r=e?e.length:0;for(this.clear();++ti))return!1;var u=o.get(e);if(u&&o.get(t))return u==t;var l=-1,y=!0,f=n&UNORDERED_COMPARE_FLAG?new SetCache:void 0;for(o.set(e,t),o.set(t,e);++l-1&&e%1==0&&e-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function isObject(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function isObjectLike(e){return!!e&&"object"==typeof e}function isSymbol(e){return"symbol"==typeof e||isObjectLike(e)&&objectToString.call(e)==symbolTag}function toString(e){return null==e?"":baseToString(e)}function get(e,t,r){var a=null==e?void 0:baseGet(e,t);return void 0===a?r:a}function hasIn(e,t){return null!=e&&hasPath(e,t,baseHasIn)}function keys(e){return isArrayLike(e)?arrayLikeKeys(e):baseKeys(e)}function identity(e){return e}function property(e){return isKey(e)?baseProperty(toKey(e)):basePropertyDeep(e)}var LARGE_ARRAY_SIZE=200,FUNC_ERROR_TEXT="Expected a function",HASH_UNDEFINED="__lodash_hash_undefined__",UNORDERED_COMPARE_FLAG=1,PARTIAL_COMPARE_FLAG=2,INFINITY=1/0,MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",arrayTag="[object Array]",boolTag="[object Boolean]",dateTag="[object Date]",errorTag="[object Error]",funcTag="[object Function]",genTag="[object GeneratorFunction]",mapTag="[object Map]",numberTag="[object Number]",objectTag="[object Object]",promiseTag="[object Promise]",regexpTag="[object RegExp]",setTag="[object Set]",stringTag="[object String]",symbolTag="[object Symbol]",weakMapTag="[object WeakMap]",arrayBufferTag="[object ArrayBuffer]",dataViewTag="[object DataView]",float32Tag="[object Float32Array]",float64Tag="[object Float64Array]",int8Tag="[object Int8Array]",int16Tag="[object Int16Array]",int32Tag="[object Int32Array]",uint8Tag="[object Uint8Array]",uint8ClampedTag="[object Uint8ClampedArray]",uint16Tag="[object Uint16Array]",uint32Tag="[object Uint32Array]",reIsDeepProp=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,reIsPlainProp=/^\w*$/,reLeadingDot=/^\./,rePropName=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reEscapeChar=/\\(\\)?/g,reIsHostCtor=/^\[object .+?Constructor\]$/,reIsUint=/^(?:0|[1-9]\d*)$/,typedArrayTags={};typedArrayTags[float32Tag]=typedArrayTags[float64Tag]=typedArrayTags[int8Tag]=typedArrayTags[int16Tag]=typedArrayTags[int32Tag]=typedArrayTags[uint8Tag]=typedArrayTags[uint8ClampedTag]=typedArrayTags[uint16Tag]=typedArrayTags[uint32Tag]=!0,typedArrayTags[argsTag]=typedArrayTags[arrayTag]=typedArrayTags[arrayBufferTag]=typedArrayTags[boolTag]=typedArrayTags[dataViewTag]=typedArrayTags[dateTag]=typedArrayTags[errorTag]=typedArrayTags[funcTag]=typedArrayTags[mapTag]=typedArrayTags[numberTag]=typedArrayTags[objectTag]=typedArrayTags[regexpTag]=typedArrayTags[setTag]=typedArrayTags[stringTag]=typedArrayTags[weakMapTag]=!1;var freeGlobal="object"==typeof global&&global&&global.Object===Object&&global,freeSelf="object"==typeof self&&self&&self.Object===Object&&self,root=freeGlobal||freeSelf||Function("return this")(),freeExports="object"==typeof exports&&exports&&!exports.nodeType&&exports,freeModule=freeExports&&"object"==typeof module&&module&&!module.nodeType&&module,moduleExports=freeModule&&freeModule.exports===freeExports,freeProcess=moduleExports&&freeGlobal.process,nodeUtil=function(){try{return freeProcess&&freeProcess.binding("util")}catch(e){}}(),nodeIsTypedArray=nodeUtil&&nodeUtil.isTypedArray,arrayProto=Array.prototype,funcProto=Function.prototype,objectProto=Object.prototype,coreJsData=root["__core-js_shared__"],maskSrcKey=function(){var e=/[^.]+$/.exec(coreJsData&&coreJsData.keys&&coreJsData.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),funcToString=funcProto.toString,hasOwnProperty=objectProto.hasOwnProperty,objectToString=objectProto.toString,reIsNative=RegExp("^"+funcToString.call(hasOwnProperty).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Symbol=root.Symbol,Uint8Array=root.Uint8Array,propertyIsEnumerable=objectProto.propertyIsEnumerable,splice=arrayProto.splice,nativeKeys=overArg(Object.keys,Object),DataView=getNative(root,"DataView"),Map=getNative(root,"Map"),Promise=getNative(root,"Promise"),Set=getNative(root,"Set"),WeakMap=getNative(root,"WeakMap"),nativeCreate=getNative(Object,"create"),dataViewCtorString=toSource(DataView),mapCtorString=toSource(Map),promiseCtorString=toSource(Promise),setCtorString=toSource(Set),weakMapCtorString=toSource(WeakMap),symbolProto=Symbol?Symbol.prototype:void 0,symbolValueOf=symbolProto?symbolProto.valueOf:void 0,symbolToString=symbolProto?symbolProto.toString:void 0;Hash.prototype.clear=hashClear,Hash.prototype.delete=hashDelete,Hash.prototype.get=hashGet,Hash.prototype.has=hashHas,Hash.prototype.set=hashSet,ListCache.prototype.clear=listCacheClear,ListCache.prototype.delete=listCacheDelete,ListCache.prototype.get=listCacheGet,ListCache.prototype.has=listCacheHas,ListCache.prototype.set=listCacheSet,MapCache.prototype.clear=mapCacheClear,MapCache.prototype.delete=mapCacheDelete,MapCache.prototype.get=mapCacheGet,MapCache.prototype.has=mapCacheHas,MapCache.prototype.set=mapCacheSet,SetCache.prototype.add=SetCache.prototype.push=setCacheAdd,SetCache.prototype.has=setCacheHas,Stack.prototype.clear=stackClear,Stack.prototype.delete=stackDelete,Stack.prototype.get=stackGet,Stack.prototype.has=stackHas,Stack.prototype.set=stackSet;var baseEach=createBaseEach(baseForOwn),baseFor=createBaseFor(),getTag=baseGetTag;(DataView&&getTag(new DataView(new ArrayBuffer(1)))!=dataViewTag||Map&&getTag(new Map)!=mapTag||Promise&&getTag(Promise.resolve())!=promiseTag||Set&&getTag(new Set)!=setTag||WeakMap&&getTag(new WeakMap)!=weakMapTag)&&(getTag=function(e){var t=objectToString.call(e),r=t==objectTag?e.constructor:void 0,a=r?toSource(r):void 0;if(a)switch(a){case dataViewCtorString:return dataViewTag;case mapCtorString:return mapTag;case promiseCtorString:return promiseTag;case setCtorString:return setTag;case weakMapCtorString:return weakMapTag}return t});var stringToPath=memoize(function(e){e=toString(e);var t=[];return reLeadingDot.test(e)&&t.push(""),e.replace(rePropName,function(e,r,a,n){t.push(a?n.replace(reEscapeChar,"$1"):r||e)}),t});memoize.Cache=MapCache;var isArray=Array.isArray,isTypedArray=nodeIsTypedArray?baseUnary(nodeIsTypedArray):baseIsTypedArray;module.exports=reduce; -}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) -},{}],114:[function(require,module,exports){ -(function (global){(function (){ +}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) +},{}],117:[function(require,module,exports){ +(function (global){ function arrayFilter(e,t){for(var r=-1,a=e?e.length:0,n=0,o=[];++r-1}function listCacheSet(e,t){var r=this.__data__,a=assocIndexOf(r,e);return a<0?r.push([e,t]):r[a][1]=t,this}function MapCache(e){var t=-1,r=e?e.length:0;for(this.clear();++ti))return!1;var u=o.get(e);if(u&&o.get(t))return u==t;var l=-1,f=!0,y=n&UNORDERED_COMPARE_FLAG?new SetCache:void 0;for(o.set(e,t),o.set(t,e);++l-1&&e%1==0&&e-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function isObject(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function isObjectLike(e){return!!e&&"object"==typeof e}function isSymbol(e){return"symbol"==typeof e||isObjectLike(e)&&objectToString.call(e)==symbolTag}function toString(e){return null==e?"":baseToString(e)}function get(e,t,r){var a=null==e?void 0:baseGet(e,t);return void 0===a?r:a}function hasIn(e,t){return null!=e&&hasPath(e,t,baseHasIn)}function keys(e){return isArrayLike(e)?arrayLikeKeys(e):baseKeys(e)}function identity(e){return e}function property(e){return isKey(e)?baseProperty(toKey(e)):basePropertyDeep(e)}var LARGE_ARRAY_SIZE=200,FUNC_ERROR_TEXT="Expected a function",HASH_UNDEFINED="__lodash_hash_undefined__",UNORDERED_COMPARE_FLAG=1,PARTIAL_COMPARE_FLAG=2,INFINITY=1/0,MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",arrayTag="[object Array]",boolTag="[object Boolean]",dateTag="[object Date]",errorTag="[object Error]",funcTag="[object Function]",genTag="[object GeneratorFunction]",mapTag="[object Map]",numberTag="[object Number]",objectTag="[object Object]",promiseTag="[object Promise]",regexpTag="[object RegExp]",setTag="[object Set]",stringTag="[object String]",symbolTag="[object Symbol]",weakMapTag="[object WeakMap]",arrayBufferTag="[object ArrayBuffer]",dataViewTag="[object DataView]",float32Tag="[object Float32Array]",float64Tag="[object Float64Array]",int8Tag="[object Int8Array]",int16Tag="[object Int16Array]",int32Tag="[object Int32Array]",uint8Tag="[object Uint8Array]",uint8ClampedTag="[object Uint8ClampedArray]",uint16Tag="[object Uint16Array]",uint32Tag="[object Uint32Array]",reIsDeepProp=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,reIsPlainProp=/^\w*$/,reLeadingDot=/^\./,rePropName=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reEscapeChar=/\\(\\)?/g,reIsHostCtor=/^\[object .+?Constructor\]$/,reIsUint=/^(?:0|[1-9]\d*)$/,typedArrayTags={};typedArrayTags[float32Tag]=typedArrayTags[float64Tag]=typedArrayTags[int8Tag]=typedArrayTags[int16Tag]=typedArrayTags[int32Tag]=typedArrayTags[uint8Tag]=typedArrayTags[uint8ClampedTag]=typedArrayTags[uint16Tag]=typedArrayTags[uint32Tag]=!0,typedArrayTags[argsTag]=typedArrayTags[arrayTag]=typedArrayTags[arrayBufferTag]=typedArrayTags[boolTag]=typedArrayTags[dataViewTag]=typedArrayTags[dateTag]=typedArrayTags[errorTag]=typedArrayTags[funcTag]=typedArrayTags[mapTag]=typedArrayTags[numberTag]=typedArrayTags[objectTag]=typedArrayTags[regexpTag]=typedArrayTags[setTag]=typedArrayTags[stringTag]=typedArrayTags[weakMapTag]=!1;var freeGlobal="object"==typeof global&&global&&global.Object===Object&&global,freeSelf="object"==typeof self&&self&&self.Object===Object&&self,root=freeGlobal||freeSelf||Function("return this")(),freeExports="object"==typeof exports&&exports&&!exports.nodeType&&exports,freeModule=freeExports&&"object"==typeof module&&module&&!module.nodeType&&module,moduleExports=freeModule&&freeModule.exports===freeExports,freeProcess=moduleExports&&freeGlobal.process,nodeUtil=function(){try{return freeProcess&&freeProcess.binding("util")}catch(e){}}(),nodeIsTypedArray=nodeUtil&&nodeUtil.isTypedArray,arrayProto=Array.prototype,funcProto=Function.prototype,objectProto=Object.prototype,coreJsData=root["__core-js_shared__"],maskSrcKey=function(){var e=/[^.]+$/.exec(coreJsData&&coreJsData.keys&&coreJsData.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),funcToString=funcProto.toString,hasOwnProperty=objectProto.hasOwnProperty,objectToString=objectProto.toString,reIsNative=RegExp("^"+funcToString.call(hasOwnProperty).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Symbol=root.Symbol,Uint8Array=root.Uint8Array,propertyIsEnumerable=objectProto.propertyIsEnumerable,splice=arrayProto.splice,nativeKeys=overArg(Object.keys,Object),DataView=getNative(root,"DataView"),Map=getNative(root,"Map"),Promise=getNative(root,"Promise"),Set=getNative(root,"Set"),WeakMap=getNative(root,"WeakMap"),nativeCreate=getNative(Object,"create"),dataViewCtorString=toSource(DataView),mapCtorString=toSource(Map),promiseCtorString=toSource(Promise),setCtorString=toSource(Set),weakMapCtorString=toSource(WeakMap),symbolProto=Symbol?Symbol.prototype:void 0,symbolValueOf=symbolProto?symbolProto.valueOf:void 0,symbolToString=symbolProto?symbolProto.toString:void 0;Hash.prototype.clear=hashClear,Hash.prototype.delete=hashDelete,Hash.prototype.get=hashGet,Hash.prototype.has=hashHas,Hash.prototype.set=hashSet,ListCache.prototype.clear=listCacheClear,ListCache.prototype.delete=listCacheDelete,ListCache.prototype.get=listCacheGet,ListCache.prototype.has=listCacheHas,ListCache.prototype.set=listCacheSet,MapCache.prototype.clear=mapCacheClear,MapCache.prototype.delete=mapCacheDelete,MapCache.prototype.get=mapCacheGet,MapCache.prototype.has=mapCacheHas,MapCache.prototype.set=mapCacheSet,SetCache.prototype.add=SetCache.prototype.push=setCacheAdd,SetCache.prototype.has=setCacheHas,Stack.prototype.clear=stackClear,Stack.prototype.delete=stackDelete,Stack.prototype.get=stackGet,Stack.prototype.has=stackHas,Stack.prototype.set=stackSet;var baseEach=createBaseEach(baseForOwn),baseFor=createBaseFor(),getTag=baseGetTag;(DataView&&getTag(new DataView(new ArrayBuffer(1)))!=dataViewTag||Map&&getTag(new Map)!=mapTag||Promise&&getTag(Promise.resolve())!=promiseTag||Set&&getTag(new Set)!=setTag||WeakMap&&getTag(new WeakMap)!=weakMapTag)&&(getTag=function(e){var t=objectToString.call(e),r=t==objectTag?e.constructor:void 0,a=r?toSource(r):void 0;if(a)switch(a){case dataViewCtorString:return dataViewTag;case mapCtorString:return mapTag;case promiseCtorString:return promiseTag;case setCtorString:return setTag;case weakMapCtorString:return weakMapTag}return t});var stringToPath=memoize(function(e){e=toString(e);var t=[];return reLeadingDot.test(e)&&t.push(""),e.replace(rePropName,function(e,r,a,n){t.push(a?n.replace(reEscapeChar,"$1"):r||e)}),t});memoize.Cache=MapCache;var isArray=Array.isArray,isTypedArray=nodeIsTypedArray?baseUnary(nodeIsTypedArray):baseIsTypedArray;module.exports=reject; -}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) -},{}],115:[function(require,module,exports){ -(function (global){(function (){ +}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) +},{}],118:[function(require,module,exports){ +(function (global){ function arraySome(e,t){for(var r=-1,a=e?e.length:0;++r-1}function listCacheSet(e,t){var r=this.__data__,a=assocIndexOf(r,e);return a<0?r.push([e,t]):r[a][1]=t,this}function MapCache(e){var t=-1,r=e?e.length:0;for(this.clear();++ti))return!1;var u=o.get(e);if(u&&o.get(t))return u==t;var l=-1,y=!0,f=n&UNORDERED_COMPARE_FLAG?new SetCache:void 0;for(o.set(e,t),o.set(t,e);++l-1&&e%1==0&&e-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function isObject(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function isObjectLike(e){return!!e&&"object"==typeof e}function isSymbol(e){return"symbol"==typeof e||isObjectLike(e)&&objectToString.call(e)==symbolTag}function toString(e){return null==e?"":baseToString(e)}function get(e,t,r){var a=null==e?void 0:baseGet(e,t);return void 0===a?r:a}function hasIn(e,t){return null!=e&&hasPath(e,t,baseHasIn)}function keys(e){return isArrayLike(e)?arrayLikeKeys(e):baseKeys(e)}function identity(e){return e}function property(e){return isKey(e)?baseProperty(toKey(e)):basePropertyDeep(e)}var LARGE_ARRAY_SIZE=200,FUNC_ERROR_TEXT="Expected a function",HASH_UNDEFINED="__lodash_hash_undefined__",UNORDERED_COMPARE_FLAG=1,PARTIAL_COMPARE_FLAG=2,INFINITY=1/0,MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",arrayTag="[object Array]",boolTag="[object Boolean]",dateTag="[object Date]",errorTag="[object Error]",funcTag="[object Function]",genTag="[object GeneratorFunction]",mapTag="[object Map]",numberTag="[object Number]",objectTag="[object Object]",promiseTag="[object Promise]",regexpTag="[object RegExp]",setTag="[object Set]",stringTag="[object String]",symbolTag="[object Symbol]",weakMapTag="[object WeakMap]",arrayBufferTag="[object ArrayBuffer]",dataViewTag="[object DataView]",float32Tag="[object Float32Array]",float64Tag="[object Float64Array]",int8Tag="[object Int8Array]",int16Tag="[object Int16Array]",int32Tag="[object Int32Array]",uint8Tag="[object Uint8Array]",uint8ClampedTag="[object Uint8ClampedArray]",uint16Tag="[object Uint16Array]",uint32Tag="[object Uint32Array]",reIsDeepProp=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,reIsPlainProp=/^\w*$/,reLeadingDot=/^\./,rePropName=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reEscapeChar=/\\(\\)?/g,reIsHostCtor=/^\[object .+?Constructor\]$/,reIsUint=/^(?:0|[1-9]\d*)$/,typedArrayTags={};typedArrayTags[float32Tag]=typedArrayTags[float64Tag]=typedArrayTags[int8Tag]=typedArrayTags[int16Tag]=typedArrayTags[int32Tag]=typedArrayTags[uint8Tag]=typedArrayTags[uint8ClampedTag]=typedArrayTags[uint16Tag]=typedArrayTags[uint32Tag]=!0,typedArrayTags[argsTag]=typedArrayTags[arrayTag]=typedArrayTags[arrayBufferTag]=typedArrayTags[boolTag]=typedArrayTags[dataViewTag]=typedArrayTags[dateTag]=typedArrayTags[errorTag]=typedArrayTags[funcTag]=typedArrayTags[mapTag]=typedArrayTags[numberTag]=typedArrayTags[objectTag]=typedArrayTags[regexpTag]=typedArrayTags[setTag]=typedArrayTags[stringTag]=typedArrayTags[weakMapTag]=!1;var freeGlobal="object"==typeof global&&global&&global.Object===Object&&global,freeSelf="object"==typeof self&&self&&self.Object===Object&&self,root=freeGlobal||freeSelf||Function("return this")(),freeExports="object"==typeof exports&&exports&&!exports.nodeType&&exports,freeModule=freeExports&&"object"==typeof module&&module&&!module.nodeType&&module,moduleExports=freeModule&&freeModule.exports===freeExports,freeProcess=moduleExports&&freeGlobal.process,nodeUtil=function(){try{return freeProcess&&freeProcess.binding("util")}catch(e){}}(),nodeIsTypedArray=nodeUtil&&nodeUtil.isTypedArray,arrayProto=Array.prototype,funcProto=Function.prototype,objectProto=Object.prototype,coreJsData=root["__core-js_shared__"],maskSrcKey=function(){var e=/[^.]+$/.exec(coreJsData&&coreJsData.keys&&coreJsData.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),funcToString=funcProto.toString,hasOwnProperty=objectProto.hasOwnProperty,objectToString=objectProto.toString,reIsNative=RegExp("^"+funcToString.call(hasOwnProperty).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Symbol=root.Symbol,Uint8Array=root.Uint8Array,propertyIsEnumerable=objectProto.propertyIsEnumerable,splice=arrayProto.splice,nativeKeys=overArg(Object.keys,Object),DataView=getNative(root,"DataView"),Map=getNative(root,"Map"),Promise=getNative(root,"Promise"),Set=getNative(root,"Set"),WeakMap=getNative(root,"WeakMap"),nativeCreate=getNative(Object,"create"),dataViewCtorString=toSource(DataView),mapCtorString=toSource(Map),promiseCtorString=toSource(Promise),setCtorString=toSource(Set),weakMapCtorString=toSource(WeakMap),symbolProto=Symbol?Symbol.prototype:void 0,symbolValueOf=symbolProto?symbolProto.valueOf:void 0,symbolToString=symbolProto?symbolProto.toString:void 0;Hash.prototype.clear=hashClear,Hash.prototype.delete=hashDelete,Hash.prototype.get=hashGet,Hash.prototype.has=hashHas,Hash.prototype.set=hashSet,ListCache.prototype.clear=listCacheClear,ListCache.prototype.delete=listCacheDelete,ListCache.prototype.get=listCacheGet,ListCache.prototype.has=listCacheHas,ListCache.prototype.set=listCacheSet,MapCache.prototype.clear=mapCacheClear,MapCache.prototype.delete=mapCacheDelete,MapCache.prototype.get=mapCacheGet,MapCache.prototype.has=mapCacheHas,MapCache.prototype.set=mapCacheSet,SetCache.prototype.add=SetCache.prototype.push=setCacheAdd,SetCache.prototype.has=setCacheHas,Stack.prototype.clear=stackClear,Stack.prototype.delete=stackDelete,Stack.prototype.get=stackGet,Stack.prototype.has=stackHas,Stack.prototype.set=stackSet;var baseEach=createBaseEach(baseForOwn),baseFor=createBaseFor(),getTag=baseGetTag;(DataView&&getTag(new DataView(new ArrayBuffer(1)))!=dataViewTag||Map&&getTag(new Map)!=mapTag||Promise&&getTag(Promise.resolve())!=promiseTag||Set&&getTag(new Set)!=setTag||WeakMap&&getTag(new WeakMap)!=weakMapTag)&&(getTag=function(e){var t=objectToString.call(e),r=t==objectTag?e.constructor:void 0,a=r?toSource(r):void 0;if(a)switch(a){case dataViewCtorString:return dataViewTag;case mapCtorString:return mapTag;case promiseCtorString:return promiseTag;case setCtorString:return setTag;case weakMapCtorString:return weakMapTag}return t});var stringToPath=memoize(function(e){e=toString(e);var t=[];return reLeadingDot.test(e)&&t.push(""),e.replace(rePropName,function(e,r,a,n){t.push(a?n.replace(reEscapeChar,"$1"):r||e)}),t});memoize.Cache=MapCache;var isArray=Array.isArray,isTypedArray=nodeIsTypedArray?baseUnary(nodeIsTypedArray):baseIsTypedArray;module.exports=some; -}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) -},{}],116:[function(require,module,exports){ + +}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) +},{}],119:[function(require,module,exports){ function compile(n){var u=n[0],r=n[1]-1;if(r<0&&u<=0)return falseFunc;if(u===-1)return function(n){return n<=r};if(0===u)return function(n){return n===r};if(1===u)return r<0?trueFunc:function(n){return n>=r};var e=r%u;return e<0&&(e+=u),u>1?function(n){return n>=r&&n%u===e}:(u*=-1,function(n){return n<=r&&n%u===e})}module.exports=compile;var BaseFuncs=require("boolbase"),trueFunc=BaseFuncs.trueFunc,falseFunc=BaseFuncs.falseFunc; -},{"boolbase":15}],117:[function(require,module,exports){ -var parse=require("./parse.js"),compile=require("./compile.js");module.exports=function(e){return compile(parse(e))},module.exports.parse=parse,module.exports.compile=compile; -},{"./compile.js":116,"./parse.js":118}],118:[function(require,module,exports){ +},{"boolbase":15}],120:[function(require,module,exports){ +var parse=require("./parse.js"),compile=require("./compile.js");module.exports=function(e){return compile(parse(e))},module.exports.parse=parse,module.exports.compile=compile; +},{"./compile.js":119,"./parse.js":121}],121:[function(require,module,exports){ function parse(r){if(r=r.trim().toLowerCase(),"even"===r)return[2,0];if("odd"===r)return[2,1];var e=r.match(re_nthElement);if(!e)throw new SyntaxError("n-th rule couldn't be parsed ('"+r+"')");var t;return e[1]?(t=parseInt(e[1],10),isNaN(t)&&(t="-"===e[1].charAt(0)?-1:1)):t=0,[t,e[3]?parseInt((e[2]||"")+e[3],10):0]}module.exports=parse;var re_nthElement=/^([+\-]?\d*n)?\s*(?:([+\-]?)\s*(\d+))?$/; - -},{}],119:[function(require,module,exports){ +},{}],122:[function(require,module,exports){ "use strict";var assign=require("./lib/utils/common").assign,deflate=require("./lib/deflate"),inflate=require("./lib/inflate"),constants=require("./lib/zlib/constants"),pako={};assign(pako,deflate,inflate,constants),module.exports=pako; -},{"./lib/deflate":120,"./lib/inflate":121,"./lib/utils/common":122,"./lib/zlib/constants":125}],120:[function(require,module,exports){ +},{"./lib/deflate":123,"./lib/inflate":124,"./lib/utils/common":125,"./lib/zlib/constants":128}],123:[function(require,module,exports){ "use strict";function Deflate(t){if(!(this instanceof Deflate))return new Deflate(t);this.options=utils.assign({level:Z_DEFAULT_COMPRESSION,method:Z_DEFLATED,chunkSize:16384,windowBits:15,memLevel:8,strategy:Z_DEFAULT_STRATEGY,to:""},t||{});var i=this.options;i.raw&&i.windowBits>0?i.windowBits=-i.windowBits:i.gzip&&i.windowBits>0&&i.windowBits<16&&(i.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new ZStream,this.strm.avail_out=0;var e=zlib_deflate.deflateInit2(this.strm,i.level,i.method,i.windowBits,i.memLevel,i.strategy);if(e!==Z_OK)throw new Error(msg[e]);if(i.header&&zlib_deflate.deflateSetHeader(this.strm,i.header),i.dictionary){var s;if(s="string"==typeof i.dictionary?strings.string2buf(i.dictionary):"[object ArrayBuffer]"===toString.call(i.dictionary)?new Uint8Array(i.dictionary):i.dictionary,e=zlib_deflate.deflateSetDictionary(this.strm,s),e!==Z_OK)throw new Error(msg[e]);this._dict_set=!0}}function deflate(t,i){var e=new Deflate(i);if(e.push(t,!0),e.err)throw e.msg||msg[e.err];return e.result}function deflateRaw(t,i){return i=i||{},i.raw=!0,deflate(t,i)}function gzip(t,i){return i=i||{},i.gzip=!0,deflate(t,i)}var zlib_deflate=require("./zlib/deflate"),utils=require("./utils/common"),strings=require("./utils/strings"),msg=require("./zlib/messages"),ZStream=require("./zlib/zstream"),toString=Object.prototype.toString,Z_NO_FLUSH=0,Z_FINISH=4,Z_OK=0,Z_STREAM_END=1,Z_SYNC_FLUSH=2,Z_DEFAULT_COMPRESSION=-1,Z_DEFAULT_STRATEGY=0,Z_DEFLATED=8;Deflate.prototype.push=function(t,i){var e,s,n=this.strm,r=this.options.chunkSize;if(this.ended)return!1;s=i===~~i?i:i===!0?Z_FINISH:Z_NO_FLUSH,"string"==typeof t?n.input=strings.string2buf(t):"[object ArrayBuffer]"===toString.call(t)?n.input=new Uint8Array(t):n.input=t,n.next_in=0,n.avail_in=n.input.length;do{if(0===n.avail_out&&(n.output=new utils.Buf8(r),n.next_out=0,n.avail_out=r),e=zlib_deflate.deflate(n,s),e!==Z_STREAM_END&&e!==Z_OK)return this.onEnd(e),this.ended=!0,!1;0!==n.avail_out&&(0!==n.avail_in||s!==Z_FINISH&&s!==Z_SYNC_FLUSH)||("string"===this.options.to?this.onData(strings.buf2binstring(utils.shrinkBuf(n.output,n.next_out))):this.onData(utils.shrinkBuf(n.output,n.next_out)))}while((n.avail_in>0||0===n.avail_out)&&e!==Z_STREAM_END);return s===Z_FINISH?(e=zlib_deflate.deflateEnd(this.strm),this.onEnd(e),this.ended=!0,e===Z_OK):s!==Z_SYNC_FLUSH||(this.onEnd(Z_OK),n.avail_out=0,!0)},Deflate.prototype.onData=function(t){this.chunks.push(t)},Deflate.prototype.onEnd=function(t){t===Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=utils.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg},exports.Deflate=Deflate,exports.deflate=deflate,exports.deflateRaw=deflateRaw,exports.gzip=gzip; -},{"./utils/common":122,"./utils/strings":123,"./zlib/deflate":127,"./zlib/messages":132,"./zlib/zstream":134}],121:[function(require,module,exports){ -"use strict";function Inflate(t){if(!(this instanceof Inflate))return new Inflate(t);this.options=utils.assign({chunkSize:16384,windowBits:0,to:""},t||{});var i=this.options;i.raw&&i.windowBits>=0&&i.windowBits<16&&(i.windowBits=-i.windowBits,0===i.windowBits&&(i.windowBits=-15)),!(i.windowBits>=0&&i.windowBits<16)||t&&t.windowBits||(i.windowBits+=32),i.windowBits>15&&i.windowBits<48&&0===(15&i.windowBits)&&(i.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new ZStream,this.strm.avail_out=0;var n=zlib_inflate.inflateInit2(this.strm,i.windowBits);if(n!==c.Z_OK)throw new Error(msg[n]);if(this.header=new GZheader,zlib_inflate.inflateGetHeader(this.strm,this.header),i.dictionary&&("string"==typeof i.dictionary?i.dictionary=strings.string2buf(i.dictionary):"[object ArrayBuffer]"===toString.call(i.dictionary)&&(i.dictionary=new Uint8Array(i.dictionary)),i.raw&&(n=zlib_inflate.inflateSetDictionary(this.strm,i.dictionary),n!==c.Z_OK)))throw new Error(msg[n])}function inflate(t,i){var n=new Inflate(i);if(n.push(t,!0),n.err)throw n.msg||msg[n.err];return n.result}function inflateRaw(t,i){return i=i||{},i.raw=!0,inflate(t,i)}var zlib_inflate=require("./zlib/inflate"),utils=require("./utils/common"),strings=require("./utils/strings"),c=require("./zlib/constants"),msg=require("./zlib/messages"),ZStream=require("./zlib/zstream"),GZheader=require("./zlib/gzheader"),toString=Object.prototype.toString;Inflate.prototype.push=function(t,i){var n,s,e,r,o,a=this.strm,u=this.options.chunkSize,l=this.options.dictionary,h=!1;if(this.ended)return!1;s=i===~~i?i:i===!0?c.Z_FINISH:c.Z_NO_FLUSH,"string"==typeof t?a.input=strings.binstring2buf(t):"[object ArrayBuffer]"===toString.call(t)?a.input=new Uint8Array(t):a.input=t,a.next_in=0,a.avail_in=a.input.length;do{if(0===a.avail_out&&(a.output=new utils.Buf8(u),a.next_out=0,a.avail_out=u),n=zlib_inflate.inflate(a,c.Z_NO_FLUSH),n===c.Z_NEED_DICT&&l&&(n=zlib_inflate.inflateSetDictionary(this.strm,l)),n===c.Z_BUF_ERROR&&h===!0&&(n=c.Z_OK,h=!1),n!==c.Z_STREAM_END&&n!==c.Z_OK)return this.onEnd(n),this.ended=!0,!1;a.next_out&&(0!==a.avail_out&&n!==c.Z_STREAM_END&&(0!==a.avail_in||s!==c.Z_FINISH&&s!==c.Z_SYNC_FLUSH)||("string"===this.options.to?(e=strings.utf8border(a.output,a.next_out),r=a.next_out-e,o=strings.buf2string(a.output,e),a.next_out=r,a.avail_out=u-r,r&&utils.arraySet(a.output,a.output,e,r,0),this.onData(o)):this.onData(utils.shrinkBuf(a.output,a.next_out)))),0===a.avail_in&&0===a.avail_out&&(h=!0)}while((a.avail_in>0||0===a.avail_out)&&n!==c.Z_STREAM_END);return n===c.Z_STREAM_END&&(s=c.Z_FINISH),s===c.Z_FINISH?(n=zlib_inflate.inflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===c.Z_OK):s!==c.Z_SYNC_FLUSH||(this.onEnd(c.Z_OK),a.avail_out=0,!0)},Inflate.prototype.onData=function(t){this.chunks.push(t)},Inflate.prototype.onEnd=function(t){t===c.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=utils.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg},exports.Inflate=Inflate,exports.inflate=inflate,exports.inflateRaw=inflateRaw,exports.ungzip=inflate; +},{"./utils/common":125,"./utils/strings":126,"./zlib/deflate":130,"./zlib/messages":135,"./zlib/zstream":137}],124:[function(require,module,exports){ +"use strict";function Inflate(t){if(!(this instanceof Inflate))return new Inflate(t);this.options=utils.assign({chunkSize:16384,windowBits:0,to:""},t||{});var i=this.options;i.raw&&i.windowBits>=0&&i.windowBits<16&&(i.windowBits=-i.windowBits,0===i.windowBits&&(i.windowBits=-15)),!(i.windowBits>=0&&i.windowBits<16)||t&&t.windowBits||(i.windowBits+=32),i.windowBits>15&&i.windowBits<48&&0===(15&i.windowBits)&&(i.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new ZStream,this.strm.avail_out=0;var n=zlib_inflate.inflateInit2(this.strm,i.windowBits);if(n!==c.Z_OK)throw new Error(msg[n]);this.header=new GZheader,zlib_inflate.inflateGetHeader(this.strm,this.header)}function inflate(t,i){var n=new Inflate(i);if(n.push(t,!0),n.err)throw n.msg||msg[n.err];return n.result}function inflateRaw(t,i){return i=i||{},i.raw=!0,inflate(t,i)}var zlib_inflate=require("./zlib/inflate"),utils=require("./utils/common"),strings=require("./utils/strings"),c=require("./zlib/constants"),msg=require("./zlib/messages"),ZStream=require("./zlib/zstream"),GZheader=require("./zlib/gzheader"),toString=Object.prototype.toString;Inflate.prototype.push=function(t,i){var n,s,e,r,o,a,u=this.strm,l=this.options.chunkSize,h=this.options.dictionary,_=!1;if(this.ended)return!1;s=i===~~i?i:i===!0?c.Z_FINISH:c.Z_NO_FLUSH,"string"==typeof t?u.input=strings.binstring2buf(t):"[object ArrayBuffer]"===toString.call(t)?u.input=new Uint8Array(t):u.input=t,u.next_in=0,u.avail_in=u.input.length;do{if(0===u.avail_out&&(u.output=new utils.Buf8(l),u.next_out=0,u.avail_out=l),n=zlib_inflate.inflate(u,c.Z_NO_FLUSH),n===c.Z_NEED_DICT&&h&&(a="string"==typeof h?strings.string2buf(h):"[object ArrayBuffer]"===toString.call(h)?new Uint8Array(h):h,n=zlib_inflate.inflateSetDictionary(this.strm,a)),n===c.Z_BUF_ERROR&&_===!0&&(n=c.Z_OK,_=!1),n!==c.Z_STREAM_END&&n!==c.Z_OK)return this.onEnd(n),this.ended=!0,!1;u.next_out&&(0!==u.avail_out&&n!==c.Z_STREAM_END&&(0!==u.avail_in||s!==c.Z_FINISH&&s!==c.Z_SYNC_FLUSH)||("string"===this.options.to?(e=strings.utf8border(u.output,u.next_out),r=u.next_out-e,o=strings.buf2string(u.output,e),u.next_out=r,u.avail_out=l-r,r&&utils.arraySet(u.output,u.output,e,r,0),this.onData(o)):this.onData(utils.shrinkBuf(u.output,u.next_out)))),0===u.avail_in&&0===u.avail_out&&(_=!0)}while((u.avail_in>0||0===u.avail_out)&&n!==c.Z_STREAM_END);return n===c.Z_STREAM_END&&(s=c.Z_FINISH),s===c.Z_FINISH?(n=zlib_inflate.inflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===c.Z_OK):s!==c.Z_SYNC_FLUSH||(this.onEnd(c.Z_OK),u.avail_out=0,!0)},Inflate.prototype.onData=function(t){this.chunks.push(t)},Inflate.prototype.onEnd=function(t){t===c.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=utils.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg},exports.Inflate=Inflate,exports.inflate=inflate,exports.inflateRaw=inflateRaw,exports.ungzip=inflate; -},{"./utils/common":122,"./utils/strings":123,"./zlib/constants":125,"./zlib/gzheader":128,"./zlib/inflate":130,"./zlib/messages":132,"./zlib/zstream":134}],122:[function(require,module,exports){ -"use strict";function _has(r,t){return Object.prototype.hasOwnProperty.call(r,t)}var TYPED_OK="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;exports.assign=function(r){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var e=t.shift();if(e){if("object"!=typeof e)throw new TypeError(e+"must be non-object");for(var n in e)_has(e,n)&&(r[n]=e[n])}}return r},exports.shrinkBuf=function(r,t){return r.length===t?r:r.subarray?r.subarray(0,t):(r.length=t,r)};var fnTyped={arraySet:function(r,t,e,n,a){if(t.subarray&&r.subarray)return void r.set(t.subarray(e,e+n),a);for(var o=0;o=252?6:q>=248?5:q>=240?4:q>=224?3:q>=192?2:1;_utf8len[254]=_utf8len[254]=1,exports.string2buf=function(r){var t,n,e,u,f,o=r.length,i=0;for(u=0;u>>6,t[f++]=128|63&n):n<65536?(t[f++]=224|n>>>12,t[f++]=128|n>>>6&63,t[f++]=128|63&n):(t[f++]=240|n>>>18,t[f++]=128|n>>>12&63,t[f++]=128|n>>>6&63,t[f++]=128|63&n);return t},exports.buf2binstring=function(r){return buf2binstring(r,r.length)},exports.binstring2buf=function(r){for(var t=new utils.Buf8(r.length),n=0,e=t.length;n4)i[e++]=65533,n+=f-1;else{for(u&=2===f?31:3===f?15:7;f>1&&n1?i[e++]=65533:u<65536?i[e++]=u:(u-=65536,i[e++]=55296|u>>10&1023,i[e++]=56320|1023&u)}return buf2binstring(i,e)},exports.utf8border=function(r,t){var n;for(t=t||r.length,t>r.length&&(t=r.length),n=t-1;n>=0&&128===(192&r[n]);)n--;return n<0?t:0===n?t:n+_utf8len[r[n]]>t?n:t}; -},{}],123:[function(require,module,exports){ -"use strict";function buf2binstring(r,t){if(t<65534&&(r.subarray&&STR_APPLY_UIA_OK||!r.subarray&&STR_APPLY_OK))return String.fromCharCode.apply(null,utils.shrinkBuf(r,t));for(var n="",e=0;e=252?6:q>=248?5:q>=240?4:q>=224?3:q>=192?2:1;_utf8len[254]=_utf8len[254]=1,exports.string2buf=function(r){var t,n,e,u,f,o=r.length,i=0;for(u=0;u>>6,t[f++]=128|63&n):n<65536?(t[f++]=224|n>>>12,t[f++]=128|n>>>6&63,t[f++]=128|63&n):(t[f++]=240|n>>>18,t[f++]=128|n>>>12&63,t[f++]=128|n>>>6&63,t[f++]=128|63&n);return t},exports.buf2binstring=function(r){return buf2binstring(r,r.length)},exports.binstring2buf=function(r){for(var t=new utils.Buf8(r.length),n=0,e=t.length;n4)i[e++]=65533,n+=f-1;else{for(u&=2===f?31:3===f?15:7;f>1&&n1?i[e++]=65533:u<65536?i[e++]=u:(u-=65536,i[e++]=55296|u>>10&1023,i[e++]=56320|1023&u)}return buf2binstring(i,e)},exports.utf8border=function(r,t){var n;for(t=t||r.length,t>r.length&&(t=r.length),n=t-1;n>=0&&128===(192&r[n]);)n--;return n<0?t:0===n?t:n+_utf8len[r[n]]>t?n:t}; -},{"./common":122}],124:[function(require,module,exports){ +},{"./common":125}],127:[function(require,module,exports){ "use strict";function adler32(e,r,o,t){for(var d=65535&e|0,l=e>>>16&65535|0,u=0;0!==o;){u=o>2e3?2e3:o,o-=u;do d=d+r[t++]|0,l=l+d|0;while(--u);d%=65521,l%=65521}return d|l<<16|0}module.exports=adler32; -},{}],125:[function(require,module,exports){ +},{}],128:[function(require,module,exports){ "use strict";module.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}; -},{}],126:[function(require,module,exports){ +},{}],129:[function(require,module,exports){ "use strict";function makeTable(){for(var r,a=[],c=0;c<256;c++){r=c;for(var e=0;e<8;e++)r=1&r?3988292384^r>>>1:r>>>1;a[c]=r}return a}function crc32(r,a,c,e){var o=crcTable,t=e+c;r^=-1;for(var n=e;n>>8^o[255&(r^a[n])];return r^-1}var crcTable=makeTable();module.exports=crc32; -},{}],127:[function(require,module,exports){ +},{}],130:[function(require,module,exports){ "use strict";function err(t,e){return t.msg=msg[e],e}function rank(t){return(t<<1)-(t>4?9:0)}function zero(t){for(var e=t.length;--e>=0;)t[e]=0}function flush_pending(t){var e=t.state,_=e.pending;_>t.avail_out&&(_=t.avail_out),0!==_&&(utils.arraySet(t.output,e.pending_buf,e.pending_out,_,t.next_out),t.next_out+=_,e.pending_out+=_,t.total_out+=_,t.avail_out-=_,e.pending-=_,0===e.pending&&(e.pending_out=0))}function flush_block_only(t,e){trees._tr_flush_block(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,flush_pending(t.strm)}function put_byte(t,e){t.pending_buf[t.pending++]=e}function putShortMSB(t,e){t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e}function read_buf(t,e,_,a){var s=t.avail_in;return s>a&&(s=a),0===s?0:(t.avail_in-=s,utils.arraySet(e,t.input,t.next_in,s,_),1===t.state.wrap?t.adler=adler32(t.adler,e,s,_):2===t.state.wrap&&(t.adler=crc32(t.adler,e,s,_)),t.next_in+=s,t.total_in+=s,s)}function longest_match(t,e){var _,a,s=t.max_chain_length,i=t.strstart,n=t.prev_length,r=t.nice_match,l=t.strstart>t.w_size-MIN_LOOKAHEAD?t.strstart-(t.w_size-MIN_LOOKAHEAD):0,h=t.window,o=t.w_mask,d=t.prev,u=t.strstart+MAX_MATCH,f=h[i+n-1],E=h[i+n];t.prev_length>=t.good_match&&(s>>=2),r>t.lookahead&&(r=t.lookahead);do if(_=e,h[_+n]===E&&h[_+n-1]===f&&h[_]===h[i]&&h[++_]===h[i+1]){i+=2,_++;do;while(h[++i]===h[++_]&&h[++i]===h[++_]&&h[++i]===h[++_]&&h[++i]===h[++_]&&h[++i]===h[++_]&&h[++i]===h[++_]&&h[++i]===h[++_]&&h[++i]===h[++_]&&in){if(t.match_start=e,n=a,a>=r)break;f=h[i+n-1],E=h[i+n]}}while((e=d[e&o])>l&&0!==--s);return n<=t.lookahead?n:t.lookahead}function fill_window(t){var e,_,a,s,i,n=t.w_size;do{if(s=t.window_size-t.lookahead-t.strstart,t.strstart>=n+(n-MIN_LOOKAHEAD)){utils.arraySet(t.window,t.window,n,n,0),t.match_start-=n,t.strstart-=n,t.block_start-=n,_=t.hash_size,e=_;do a=t.head[--e],t.head[e]=a>=n?a-n:0;while(--_);_=n,e=_;do a=t.prev[--e],t.prev[e]=a>=n?a-n:0;while(--_);s+=n}if(0===t.strm.avail_in)break;if(_=read_buf(t.strm,t.window,t.strstart+t.lookahead,s),t.lookahead+=_,t.lookahead+t.insert>=MIN_MATCH)for(i=t.strstart-t.insert,t.ins_h=t.window[i],t.ins_h=(t.ins_h<t.pending_buf_size-5&&(_=t.pending_buf_size-5);;){if(t.lookahead<=1){if(fill_window(t),0===t.lookahead&&e===Z_NO_FLUSH)return BS_NEED_MORE;if(0===t.lookahead)break}t.strstart+=t.lookahead,t.lookahead=0;var a=t.block_start+_;if((0===t.strstart||t.strstart>=a)&&(t.lookahead=t.strstart-a,t.strstart=a,flush_block_only(t,!1),0===t.strm.avail_out))return BS_NEED_MORE;if(t.strstart-t.block_start>=t.w_size-MIN_LOOKAHEAD&&(flush_block_only(t,!1),0===t.strm.avail_out))return BS_NEED_MORE}return t.insert=0,e===Z_FINISH?(flush_block_only(t,!0),0===t.strm.avail_out?BS_FINISH_STARTED:BS_FINISH_DONE):t.strstart>t.block_start&&(flush_block_only(t,!1),0===t.strm.avail_out)?BS_NEED_MORE:BS_NEED_MORE}function deflate_fast(t,e){for(var _,a;;){if(t.lookahead=MIN_MATCH&&(t.ins_h=(t.ins_h<=MIN_MATCH)if(a=trees._tr_tally(t,t.strstart-t.match_start,t.match_length-MIN_MATCH),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=MIN_MATCH){t.match_length--;do t.strstart++,t.ins_h=(t.ins_h<=MIN_MATCH&&(t.ins_h=(t.ins_h<4096)&&(t.match_length=MIN_MATCH-1)),t.prev_length>=MIN_MATCH&&t.match_length<=t.prev_length){s=t.strstart+t.lookahead-MIN_MATCH,a=trees._tr_tally(t,t.strstart-1-t.prev_match,t.prev_length-MIN_MATCH),t.lookahead-=t.prev_length-1,t.prev_length-=2;do++t.strstart<=s&&(t.ins_h=(t.ins_h<=MIN_MATCH&&t.strstart>0&&(s=t.strstart-1,a=n[s],a===n[++s]&&a===n[++s]&&a===n[++s])){i=t.strstart+MAX_MATCH;do;while(a===n[++s]&&a===n[++s]&&a===n[++s]&&a===n[++s]&&a===n[++s]&&a===n[++s]&&a===n[++s]&&a===n[++s]&&st.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=MIN_MATCH?(_=trees._tr_tally(t,1,t.match_length-MIN_MATCH),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(_=trees._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),_&&(flush_block_only(t,!1),0===t.strm.avail_out))return BS_NEED_MORE}return t.insert=0,e===Z_FINISH?(flush_block_only(t,!0),0===t.strm.avail_out?BS_FINISH_STARTED:BS_FINISH_DONE):t.last_lit&&(flush_block_only(t,!1),0===t.strm.avail_out)?BS_NEED_MORE:BS_BLOCK_DONE}function deflate_huff(t,e){for(var _;;){if(0===t.lookahead&&(fill_window(t),0===t.lookahead)){if(e===Z_NO_FLUSH)return BS_NEED_MORE;break}if(t.match_length=0,_=trees._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,_&&(flush_block_only(t,!1),0===t.strm.avail_out))return BS_NEED_MORE}return t.insert=0,e===Z_FINISH?(flush_block_only(t,!0),0===t.strm.avail_out?BS_FINISH_STARTED:BS_FINISH_DONE):t.last_lit&&(flush_block_only(t,!1),0===t.strm.avail_out)?BS_NEED_MORE:BS_BLOCK_DONE}function Config(t,e,_,a,s){this.good_length=t,this.max_lazy=e,this.nice_length=_,this.max_chain=a,this.func=s}function lm_init(t){t.window_size=2*t.w_size,zero(t.head),t.max_lazy_match=configuration_table[t.level].max_lazy,t.good_match=configuration_table[t.level].good_length,t.nice_match=configuration_table[t.level].nice_length,t.max_chain_length=configuration_table[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=MIN_MATCH-1,t.match_available=0,t.ins_h=0}function DeflateState(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=Z_DEFLATED,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new utils.Buf16(2*HEAP_SIZE),this.dyn_dtree=new utils.Buf16(2*(2*D_CODES+1)),this.bl_tree=new utils.Buf16(2*(2*BL_CODES+1)),zero(this.dyn_ltree),zero(this.dyn_dtree),zero(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new utils.Buf16(MAX_BITS+1),this.heap=new utils.Buf16(2*L_CODES+1),zero(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new utils.Buf16(2*L_CODES+1),zero(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function deflateResetKeep(t){var e;return t&&t.state?(t.total_in=t.total_out=0,t.data_type=Z_UNKNOWN,e=t.state,e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=e.wrap?INIT_STATE:BUSY_STATE,t.adler=2===e.wrap?0:1,e.last_flush=Z_NO_FLUSH,trees._tr_init(e),Z_OK):err(t,Z_STREAM_ERROR)}function deflateReset(t){var e=deflateResetKeep(t);return e===Z_OK&&lm_init(t.state),e}function deflateSetHeader(t,e){return t&&t.state?2!==t.state.wrap?Z_STREAM_ERROR:(t.state.gzhead=e,Z_OK):Z_STREAM_ERROR}function deflateInit2(t,e,_,a,s,i){if(!t)return Z_STREAM_ERROR;var n=1;if(e===Z_DEFAULT_COMPRESSION&&(e=6),a<0?(n=0,a=-a):a>15&&(n=2,a-=16),s<1||s>MAX_MEM_LEVEL||_!==Z_DEFLATED||a<8||a>15||e<0||e>9||i<0||i>Z_FIXED)return err(t,Z_STREAM_ERROR);8===a&&(a=9);var r=new DeflateState;return t.state=r,r.strm=t,r.wrap=n,r.gzhead=null,r.w_bits=a,r.w_size=1<Z_BLOCK||e<0)return t?err(t,Z_STREAM_ERROR):Z_STREAM_ERROR;if(a=t.state,!t.output||!t.input&&0!==t.avail_in||a.status===FINISH_STATE&&e!==Z_FINISH)return err(t,0===t.avail_out?Z_BUF_ERROR:Z_STREAM_ERROR);if(a.strm=t,_=a.last_flush,a.last_flush=e,a.status===INIT_STATE)if(2===a.wrap)t.adler=0,put_byte(a,31),put_byte(a,139),put_byte(a,8),a.gzhead?(put_byte(a,(a.gzhead.text?1:0)+(a.gzhead.hcrc?2:0)+(a.gzhead.extra?4:0)+(a.gzhead.name?8:0)+(a.gzhead.comment?16:0)),put_byte(a,255&a.gzhead.time),put_byte(a,a.gzhead.time>>8&255),put_byte(a,a.gzhead.time>>16&255),put_byte(a,a.gzhead.time>>24&255),put_byte(a,9===a.level?2:a.strategy>=Z_HUFFMAN_ONLY||a.level<2?4:0),put_byte(a,255&a.gzhead.os),a.gzhead.extra&&a.gzhead.extra.length&&(put_byte(a,255&a.gzhead.extra.length),put_byte(a,a.gzhead.extra.length>>8&255)),a.gzhead.hcrc&&(t.adler=crc32(t.adler,a.pending_buf,a.pending,0)),a.gzindex=0,a.status=EXTRA_STATE):(put_byte(a,0),put_byte(a,0),put_byte(a,0),put_byte(a,0),put_byte(a,0),put_byte(a,9===a.level?2:a.strategy>=Z_HUFFMAN_ONLY||a.level<2?4:0),put_byte(a,OS_CODE),a.status=BUSY_STATE);else{var n=Z_DEFLATED+(a.w_bits-8<<4)<<8,r=-1;r=a.strategy>=Z_HUFFMAN_ONLY||a.level<2?0:a.level<6?1:6===a.level?2:3,n|=r<<6,0!==a.strstart&&(n|=PRESET_DICT),n+=31-n%31,a.status=BUSY_STATE,putShortMSB(a,n),0!==a.strstart&&(putShortMSB(a,t.adler>>>16),putShortMSB(a,65535&t.adler)),t.adler=1}if(a.status===EXTRA_STATE)if(a.gzhead.extra){for(s=a.pending;a.gzindex<(65535&a.gzhead.extra.length)&&(a.pending!==a.pending_buf_size||(a.gzhead.hcrc&&a.pending>s&&(t.adler=crc32(t.adler,a.pending_buf,a.pending-s,s)),flush_pending(t),s=a.pending,a.pending!==a.pending_buf_size));)put_byte(a,255&a.gzhead.extra[a.gzindex]),a.gzindex++;a.gzhead.hcrc&&a.pending>s&&(t.adler=crc32(t.adler,a.pending_buf,a.pending-s,s)),a.gzindex===a.gzhead.extra.length&&(a.gzindex=0,a.status=NAME_STATE)}else a.status=NAME_STATE;if(a.status===NAME_STATE)if(a.gzhead.name){s=a.pending;do{if(a.pending===a.pending_buf_size&&(a.gzhead.hcrc&&a.pending>s&&(t.adler=crc32(t.adler,a.pending_buf,a.pending-s,s)),flush_pending(t),s=a.pending,a.pending===a.pending_buf_size)){i=1;break}i=a.gzindexs&&(t.adler=crc32(t.adler,a.pending_buf,a.pending-s,s)),0===i&&(a.gzindex=0,a.status=COMMENT_STATE)}else a.status=COMMENT_STATE;if(a.status===COMMENT_STATE)if(a.gzhead.comment){s=a.pending;do{if(a.pending===a.pending_buf_size&&(a.gzhead.hcrc&&a.pending>s&&(t.adler=crc32(t.adler,a.pending_buf,a.pending-s,s)),flush_pending(t),s=a.pending,a.pending===a.pending_buf_size)){i=1;break}i=a.gzindexs&&(t.adler=crc32(t.adler,a.pending_buf,a.pending-s,s)),0===i&&(a.status=HCRC_STATE)}else a.status=HCRC_STATE;if(a.status===HCRC_STATE&&(a.gzhead.hcrc?(a.pending+2>a.pending_buf_size&&flush_pending(t),a.pending+2<=a.pending_buf_size&&(put_byte(a,255&t.adler),put_byte(a,t.adler>>8&255),t.adler=0,a.status=BUSY_STATE)):a.status=BUSY_STATE),0!==a.pending){if(flush_pending(t),0===t.avail_out)return a.last_flush=-1,Z_OK}else if(0===t.avail_in&&rank(e)<=rank(_)&&e!==Z_FINISH)return err(t,Z_BUF_ERROR);if(a.status===FINISH_STATE&&0!==t.avail_in)return err(t,Z_BUF_ERROR);if(0!==t.avail_in||0!==a.lookahead||e!==Z_NO_FLUSH&&a.status!==FINISH_STATE){var l=a.strategy===Z_HUFFMAN_ONLY?deflate_huff(a,e):a.strategy===Z_RLE?deflate_rle(a,e):configuration_table[a.level].func(a,e);if(l!==BS_FINISH_STARTED&&l!==BS_FINISH_DONE||(a.status=FINISH_STATE),l===BS_NEED_MORE||l===BS_FINISH_STARTED)return 0===t.avail_out&&(a.last_flush=-1),Z_OK;if(l===BS_BLOCK_DONE&&(e===Z_PARTIAL_FLUSH?trees._tr_align(a):e!==Z_BLOCK&&(trees._tr_stored_block(a,0,0,!1),e===Z_FULL_FLUSH&&(zero(a.head),0===a.lookahead&&(a.strstart=0,a.block_start=0,a.insert=0))),flush_pending(t),0===t.avail_out))return a.last_flush=-1,Z_OK}return e!==Z_FINISH?Z_OK:a.wrap<=0?Z_STREAM_END:(2===a.wrap?(put_byte(a,255&t.adler),put_byte(a,t.adler>>8&255),put_byte(a,t.adler>>16&255),put_byte(a,t.adler>>24&255),put_byte(a,255&t.total_in),put_byte(a,t.total_in>>8&255),put_byte(a,t.total_in>>16&255),put_byte(a,t.total_in>>24&255)):(putShortMSB(a,t.adler>>>16),putShortMSB(a,65535&t.adler)),flush_pending(t),a.wrap>0&&(a.wrap=-a.wrap),0!==a.pending?Z_OK:Z_STREAM_END)}function deflateEnd(t){var e;return t&&t.state?(e=t.state.status,e!==INIT_STATE&&e!==EXTRA_STATE&&e!==NAME_STATE&&e!==COMMENT_STATE&&e!==HCRC_STATE&&e!==BUSY_STATE&&e!==FINISH_STATE?err(t,Z_STREAM_ERROR):(t.state=null,e===BUSY_STATE?err(t,Z_DATA_ERROR):Z_OK)):Z_STREAM_ERROR}function deflateSetDictionary(t,e){var _,a,s,i,n,r,l,h,o=e.length;if(!t||!t.state)return Z_STREAM_ERROR;if(_=t.state,i=_.wrap,2===i||1===i&&_.status!==INIT_STATE||_.lookahead)return Z_STREAM_ERROR;for(1===i&&(t.adler=adler32(t.adler,e,o,0)),_.wrap=0,o>=_.w_size&&(0===i&&(zero(_.head),_.strstart=0,_.block_start=0,_.insert=0),h=new utils.Buf8(_.w_size),utils.arraySet(h,e,o-_.w_size,_.w_size,0),e=h,o=_.w_size),n=t.avail_in,r=t.next_in,l=t.input,t.avail_in=o,t.next_in=0,t.input=e,fill_window(_);_.lookahead>=MIN_MATCH;){a=_.strstart,s=_.lookahead-(MIN_MATCH-1);do _.ins_h=(_.ins_h<<_.hash_shift^_.window[a+MIN_MATCH-1])&_.hash_mask,_.prev[a&_.w_mask]=_.head[_.ins_h],_.head[_.ins_h]=a,a++;while(--s);_.strstart=a,_.lookahead=MIN_MATCH-1,fill_window(_)}return _.strstart+=_.lookahead,_.block_start=_.strstart,_.insert=_.lookahead,_.lookahead=0,_.match_length=_.prev_length=MIN_MATCH-1,_.match_available=0,t.next_in=r,t.input=l,t.avail_in=n,_.wrap=i,Z_OK}var utils=require("../utils/common"),trees=require("./trees"),adler32=require("./adler32"),crc32=require("./crc32"),msg=require("./messages"),Z_NO_FLUSH=0,Z_PARTIAL_FLUSH=1,Z_FULL_FLUSH=3,Z_FINISH=4,Z_BLOCK=5,Z_OK=0,Z_STREAM_END=1,Z_STREAM_ERROR=-2,Z_DATA_ERROR=-3,Z_BUF_ERROR=-5,Z_DEFAULT_COMPRESSION=-1,Z_FILTERED=1,Z_HUFFMAN_ONLY=2,Z_RLE=3,Z_FIXED=4,Z_DEFAULT_STRATEGY=0,Z_UNKNOWN=2,Z_DEFLATED=8,MAX_MEM_LEVEL=9,MAX_WBITS=15,DEF_MEM_LEVEL=8,LENGTH_CODES=29,LITERALS=256,L_CODES=LITERALS+1+LENGTH_CODES,D_CODES=30,BL_CODES=19,HEAP_SIZE=2*L_CODES+1,MAX_BITS=15,MIN_MATCH=3,MAX_MATCH=258,MIN_LOOKAHEAD=MAX_MATCH+MIN_MATCH+1,PRESET_DICT=32,INIT_STATE=42,EXTRA_STATE=69,NAME_STATE=73,COMMENT_STATE=91,HCRC_STATE=103,BUSY_STATE=113,FINISH_STATE=666,BS_NEED_MORE=1,BS_BLOCK_DONE=2,BS_FINISH_STARTED=3,BS_FINISH_DONE=4,OS_CODE=3,configuration_table;configuration_table=[new Config(0,0,0,0,deflate_stored),new Config(4,4,8,4,deflate_fast),new Config(4,5,16,8,deflate_fast),new Config(4,6,32,32,deflate_fast),new Config(4,4,16,16,deflate_slow),new Config(8,16,32,32,deflate_slow),new Config(8,16,128,128,deflate_slow),new Config(8,32,128,256,deflate_slow),new Config(32,128,258,1024,deflate_slow),new Config(32,258,258,4096,deflate_slow)],exports.deflateInit=deflateInit,exports.deflateInit2=deflateInit2,exports.deflateReset=deflateReset,exports.deflateResetKeep=deflateResetKeep,exports.deflateSetHeader=deflateSetHeader,exports.deflate=deflate,exports.deflateEnd=deflateEnd,exports.deflateSetDictionary=deflateSetDictionary,exports.deflateInfo="pako deflate (from Nodeca project)"; -},{"../utils/common":122,"./adler32":124,"./crc32":126,"./messages":132,"./trees":133}],128:[function(require,module,exports){ +},{"../utils/common":125,"./adler32":127,"./crc32":129,"./messages":135,"./trees":136}],131:[function(require,module,exports){ "use strict";function GZheader(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}module.exports=GZheader; -},{}],129:[function(require,module,exports){ +},{}],132:[function(require,module,exports){ "use strict";var BAD=30,TYPE=12;module.exports=function(i,e){var o,a,t,d,n,l,s,f,r,b,c,u,v,m,w,h,k,_,x,g,A,B,D,p,E;o=i.state,a=i.next_in,p=i.input,t=a+(i.avail_in-5),d=i.next_out,E=i.output,n=d-(e-i.avail_out),l=d+(i.avail_out-257),s=o.dmax,f=o.wsize,r=o.whave,b=o.wnext,c=o.window,u=o.hold,v=o.bits,m=o.lencode,w=o.distcode,h=(1<>>24,u>>>=x,v-=x,x=_>>>16&255,0===x)E[d++]=65535&_;else{if(!(16&x)){if(0===(64&x)){_=m[(65535&_)+(u&(1<>>=x,v-=x),v<15&&(u+=p[a++]<>>24,u>>>=x,v-=x,x=_>>>16&255,!(16&x)){if(0===(64&x)){_=w[(65535&_)+(u&(1<s){i.msg="invalid distance too far back",o.mode=BAD;break i}if(u>>>=x,v-=x,x=d-n,A>x){if(x=A-x,x>r&&o.sane){i.msg="invalid distance too far back",o.mode=BAD;break i}if(B=0,D=c,0===b){if(B+=f-x,x2;)E[d++]=D[B++],E[d++]=D[B++],E[d++]=D[B++],g-=3;g&&(E[d++]=D[B++],g>1&&(E[d++]=D[B++]))}else{B=d-A;do E[d++]=E[B++],E[d++]=E[B++],E[d++]=E[B++],g-=3;while(g>2);g&&(E[d++]=E[B++],g>1&&(E[d++]=E[B++]))}break}}break}}while(a>3,a-=g,v-=g<<3,u&=(1<>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function InflateState(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new utils.Buf16(320),this.work=new utils.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function inflateResetKeep(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=HEAD,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new utils.Buf32(ENOUGH_LENS),t.distcode=t.distdyn=new utils.Buf32(ENOUGH_DISTS),t.sane=1,t.back=-1,Z_OK):Z_STREAM_ERROR}function inflateReset(e){var t;return e&&e.state?(t=e.state,t.wsize=0,t.whave=0,t.wnext=0,inflateResetKeep(e)):Z_STREAM_ERROR}function inflateReset2(e,t){var a,i;return e&&e.state?(i=e.state,t<0?(a=0,t=-t):(a=(t>>4)+1,t<48&&(t&=15)),t&&(t<8||t>15)?Z_STREAM_ERROR:(null!==i.window&&i.wbits!==t&&(i.window=null),i.wrap=a,i.wbits=t,inflateReset(e))):Z_STREAM_ERROR}function inflateInit2(e,t){var a,i;return e?(i=new InflateState,e.state=i,i.window=null,a=inflateReset2(e,t),a!==Z_OK&&(e.state=null),a):Z_STREAM_ERROR}function inflateInit(e){return inflateInit2(e,DEF_WBITS)}function fixedtables(e){if(virgin){var t;for(lenfix=new utils.Buf32(512),distfix=new utils.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(inflate_table(LENS,e.lens,0,288,lenfix,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;inflate_table(DISTS,e.lens,0,32,distfix,0,e.work,{bits:5}),virgin=!1}e.lencode=lenfix,e.lenbits=9,e.distcode=distfix,e.distbits=5}function updatewindow(e,t,a,i){var n,s=e.state;return null===s.window&&(s.wsize=1<=s.wsize?(utils.arraySet(s.window,t,a-s.wsize,s.wsize,0),s.wnext=0,s.whave=s.wsize):(n=s.wsize-s.wnext,n>i&&(n=i),utils.arraySet(s.window,t,a-i,n,s.wnext),i-=n,i?(utils.arraySet(s.window,t,a-i,i,0),s.wnext=i,s.whave=s.wsize):(s.wnext+=n,s.wnext===s.wsize&&(s.wnext=0),s.whave>>8&255,a.check=crc32(a.check,v,2,0),d=0,f=0,a.mode=FLAGS;break}if(a.flags=0,a.head&&(a.head.done=!1),!(1&a.wrap)||(((255&d)<<8)+(d>>8))%31){e.msg="incorrect header check",a.mode=BAD;break}if((15&d)!==Z_DEFLATED){e.msg="unknown compression method",a.mode=BAD;break}if(d>>>=4,f-=4,D=(15&d)+8,0===a.wbits)a.wbits=D;else if(D>a.wbits){e.msg="invalid window size",a.mode=BAD;break}a.dmax=1<>8&1),512&a.flags&&(v[0]=255&d,v[1]=d>>>8&255,a.check=crc32(a.check,v,2,0)),d=0,f=0,a.mode=TIME;case TIME:for(;f<32;){if(0===r)break e;r--,d+=i[s++]<>>8&255,v[2]=d>>>16&255,v[3]=d>>>24&255,a.check=crc32(a.check,v,4,0)),d=0,f=0,a.mode=OS;case OS:for(;f<16;){if(0===r)break e;r--,d+=i[s++]<>8),512&a.flags&&(v[0]=255&d,v[1]=d>>>8&255,a.check=crc32(a.check,v,2,0)),d=0,f=0,a.mode=EXLEN;case EXLEN:if(1024&a.flags){for(;f<16;){if(0===r)break e;r--,d+=i[s++]<>>8&255,a.check=crc32(a.check,v,2,0)),d=0,f=0}else a.head&&(a.head.extra=null);a.mode=EXTRA;case EXTRA:if(1024&a.flags&&(E=a.length,E>r&&(E=r),E&&(a.head&&(D=a.head.extra_len-a.length,a.head.extra||(a.head.extra=new Array(a.head.extra_len)),utils.arraySet(a.head.extra,i,s,E,D)),512&a.flags&&(a.check=crc32(a.check,i,E,s)),r-=E,s+=E,a.length-=E),a.length))break e;a.length=0,a.mode=NAME;case NAME:if(2048&a.flags){if(0===r)break e;E=0;do D=i[s+E++],a.head&&D&&a.length<65536&&(a.head.name+=String.fromCharCode(D));while(D&&E>9&1,a.head.done=!0),e.adler=a.check=0,a.mode=TYPE;break;case DICTID:for(;f<32;){if(0===r)break e;r--,d+=i[s++]<>>=7&f,f-=7&f,a.mode=CHECK;break}for(;f<3;){if(0===r)break e;r--,d+=i[s++]<>>=1,f-=1,3&d){case 0:a.mode=STORED;break;case 1:if(fixedtables(a),a.mode=LEN_,t===Z_TREES){d>>>=2,f-=2;break e}break;case 2:a.mode=TABLE;break;case 3:e.msg="invalid block type",a.mode=BAD}d>>>=2,f-=2;break;case STORED:for(d>>>=7&f,f-=7&f;f<32;){if(0===r)break e;r--,d+=i[s++]<>>16^65535)){e.msg="invalid stored block lengths",a.mode=BAD;break}if(a.length=65535&d,d=0,f=0,a.mode=COPY_,t===Z_TREES)break e;case COPY_:a.mode=COPY;case COPY:if(E=a.length){if(E>r&&(E=r),E>o&&(E=o),0===E)break e;utils.arraySet(n,i,s,E,l),r-=E,s+=E,o-=E,l+=E,a.length-=E;break}a.mode=TYPE;break;case TABLE:for(;f<14;){if(0===r)break e;r--,d+=i[s++]<>>=5,f-=5,a.ndist=(31&d)+1,d>>>=5,f-=5,a.ncode=(15&d)+4,d>>>=4,f-=4,a.nlen>286||a.ndist>30){e.msg="too many length or distance symbols",a.mode=BAD;break}a.have=0,a.mode=LENLENS;case LENLENS:for(;a.have>>=3,f-=3}for(;a.have<19;)a.lens[O[a.have++]]=0;if(a.lencode=a.lendyn,a.lenbits=7,S={bits:a.lenbits},g=inflate_table(CODES,a.lens,0,19,a.lencode,0,a.work,S),a.lenbits=S.bits,g){e.msg="invalid code lengths set",a.mode=BAD;break}a.have=0,a.mode=CODELENS;case CODELENS:for(;a.have>>24,m=A>>>16&255,w=65535&A,!(k<=f);){if(0===r)break e;r--,d+=i[s++]<>>=k,f-=k,a.lens[a.have++]=w;else{if(16===w){for(x=k+2;f>>=k,f-=k,0===a.have){e.msg="invalid bit length repeat",a.mode=BAD;break}D=a.lens[a.have-1],E=3+(3&d),d>>>=2,f-=2}else if(17===w){for(x=k+3;f>>=k,f-=k,D=0,E=3+(7&d),d>>>=3,f-=3}else{for(x=k+7;f>>=k,f-=k,D=0,E=11+(127&d),d>>>=7,f-=7}if(a.have+E>a.nlen+a.ndist){e.msg="invalid bit length repeat",a.mode=BAD;break}for(;E--;)a.lens[a.have++]=D}}if(a.mode===BAD)break;if(0===a.lens[256]){e.msg="invalid code -- missing end-of-block",a.mode=BAD;break}if(a.lenbits=9,S={bits:a.lenbits},g=inflate_table(LENS,a.lens,0,a.nlen,a.lencode,0,a.work,S),a.lenbits=S.bits,g){e.msg="invalid literal/lengths set",a.mode=BAD;break}if(a.distbits=6,a.distcode=a.distdyn,S={bits:a.distbits},g=inflate_table(DISTS,a.lens,a.nlen,a.ndist,a.distcode,0,a.work,S),a.distbits=S.bits,g){e.msg="invalid distances set",a.mode=BAD;break}if(a.mode=LEN_,t===Z_TREES)break e;case LEN_:a.mode=LEN;case LEN:if(r>=6&&o>=258){e.next_out=l,e.avail_out=o,e.next_in=s,e.avail_in=r,a.hold=d,a.bits=f,inflate_fast(e,h),l=e.next_out,n=e.output,o=e.avail_out,s=e.next_in,i=e.input,r=e.avail_in,d=a.hold,f=a.bits,a.mode===TYPE&&(a.back=-1);break}for(a.back=0;A=a.lencode[d&(1<>>24,m=A>>>16&255,w=65535&A,!(k<=f);){if(0===r)break e;r--,d+=i[s++]<>u)],k=A>>>24,m=A>>>16&255,w=65535&A,!(u+k<=f);){if(0===r)break e;r--,d+=i[s++]<>>=u,f-=u,a.back+=u}if(d>>>=k,f-=k,a.back+=k,a.length=w,0===m){a.mode=LIT;break}if(32&m){a.back=-1,a.mode=TYPE;break}if(64&m){e.msg="invalid literal/length code",a.mode=BAD;break}a.extra=15&m,a.mode=LENEXT;case LENEXT:if(a.extra){for(x=a.extra;f>>=a.extra,f-=a.extra,a.back+=a.extra}a.was=a.length,a.mode=DIST;case DIST:for(;A=a.distcode[d&(1<>>24,m=A>>>16&255,w=65535&A,!(k<=f);){if(0===r)break e;r--,d+=i[s++]<>u)],k=A>>>24,m=A>>>16&255,w=65535&A,!(u+k<=f);){if(0===r)break e;r--,d+=i[s++]<>>=u,f-=u,a.back+=u}if(d>>>=k,f-=k,a.back+=k,64&m){e.msg="invalid distance code",a.mode=BAD;break}a.offset=w,a.extra=15&m,a.mode=DISTEXT;case DISTEXT:if(a.extra){for(x=a.extra;f>>=a.extra,f-=a.extra,a.back+=a.extra}if(a.offset>a.dmax){e.msg="invalid distance too far back",a.mode=BAD;break}a.mode=MATCH;case MATCH:if(0===o)break e;if(E=h-o,a.offset>E){if(E=a.offset-E,E>a.whave&&a.sane){e.msg="invalid distance too far back",a.mode=BAD;break}E>a.wnext?(E-=a.wnext,b=a.wsize-E):b=a.wnext-E,E>a.length&&(E=a.length),_=a.window}else _=n,b=l-a.offset,E=a.length;E>o&&(E=o),o-=E,a.length-=E;do n[l++]=_[b++];while(--E);0===a.length&&(a.mode=LEN);break;case LIT:if(0===o)break e;n[l++]=a.length,o--,a.mode=LEN;break;case CHECK:if(a.wrap){for(;f<32;){if(0===r)break e;r--,d|=i[s++]<=1&&0===c[L];L--);if(M>L&&(M=L),0===L)return t[i++]=20971520,t[i++]=20971520,o.bits=1,0;for(A=1;A0&&(r===CODES||1!==L))return-1;for(m[1]=0,b=1;bENOUGH_LENS||r===DISTS&&H>ENOUGH_DISTS)return 1;for(;;){T=b-d,u[a]N?(B=w[C+u[a]],D=_[x+u[a]]):(B=96,D=0),E=1<>d)+l]=T<<24|B<<16|D|0;while(0!==l);for(E=1<>=1;if(0!==E?(U&=E-1,U+=E):U=0,a++,0===--c[b]){if(b===L)break;b=S[e+u[a]]}if(b>M&&(U&n)!==s){for(0===d&&(d=M),I+=A,X=b-d,G=1<ENOUGH_LENS||r===DISTS&&H>ENOUGH_DISTS)return 1;s=U&n,t[s]=M<<24|X<<16|I-i|0}}return 0!==U&&(t[I+U]=b-d<<24|64<<16|0),o.bits=M,0}; -},{"../utils/common":122}],132:[function(require,module,exports){ +},{"../utils/common":125}],135:[function(require,module,exports){ "use strict";module.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}; -},{}],133:[function(require,module,exports){ +},{}],136:[function(require,module,exports){ "use strict";function zero(e){for(var _=e.length;--_>=0;)e[_]=0}function StaticTreeDesc(e,_,t,r,i){this.static_tree=e,this.extra_bits=_,this.extra_base=t,this.elems=r,this.max_length=i,this.has_stree=e&&e.length}function TreeDesc(e,_){this.dyn_tree=e,this.max_code=0,this.stat_desc=_}function d_code(e){return e<256?_dist_code[e]:_dist_code[256+(e>>>7)]}function put_short(e,_){e.pending_buf[e.pending++]=255&_,e.pending_buf[e.pending++]=_>>>8&255}function send_bits(e,_,t){e.bi_valid>Buf_size-t?(e.bi_buf|=_<>Buf_size-e.bi_valid,e.bi_valid+=t-Buf_size):(e.bi_buf|=_<>>=1,t<<=1;while(--_>0);return t>>>1}function bi_flush(e){16===e.bi_valid?(put_short(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}function gen_bitlen(e,_){var t,r,i,n,s,d,a=_.dyn_tree,l=_.max_code,c=_.stat_desc.static_tree,o=_.stat_desc.has_stree,b=_.stat_desc.extra_bits,f=_.stat_desc.extra_base,u=_.stat_desc.max_length,p=0;for(n=0;n<=MAX_BITS;n++)e.bl_count[n]=0;for(a[2*e.heap[e.heap_max]+1]=0,t=e.heap_max+1;tu&&(n=u,p++),a[2*r+1]=n,r>l||(e.bl_count[n]++,s=0,r>=f&&(s=b[r-f]),d=a[2*r],e.opt_len+=d*(n+s),o&&(e.static_len+=d*(c[2*r+1]+s)));if(0!==p){do{for(n=u-1;0===e.bl_count[n];)n--;e.bl_count[n]--,e.bl_count[n+1]+=2,e.bl_count[u]--,p-=2}while(p>0);for(n=u;0!==n;n--)for(r=e.bl_count[n];0!==r;)i=e.heap[--t],i>l||(a[2*i+1]!==n&&(e.opt_len+=(n-a[2*i+1])*a[2*i],a[2*i+1]=n),r--)}}function gen_codes(e,_,t){var r,i,n=new Array(MAX_BITS+1),s=0;for(r=1;r<=MAX_BITS;r++)n[r]=s=s+t[r-1]<<1;for(i=0;i<=_;i++){var d=e[2*i+1];0!==d&&(e[2*i]=bi_reverse(n[d]++,d))}}function tr_static_init(){var e,_,t,r,i,n=new Array(MAX_BITS+1);for(t=0,r=0;r>=7;r8?put_short(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function copy_block(e,_,t,r){bi_windup(e),r&&(put_short(e,t),put_short(e,~t)),utils.arraySet(e.pending_buf,e.window,_,t,e.pending),e.pending+=t}function smaller(e,_,t,r){var i=2*_,n=2*t;return e[i]>1;t>=1;t--)pqdownheap(e,n,t);i=a;do t=e.heap[1],e.heap[1]=e.heap[e.heap_len--],pqdownheap(e,n,1),r=e.heap[1],e.heap[--e.heap_max]=t,e.heap[--e.heap_max]=r,n[2*i]=n[2*t]+n[2*r],e.depth[i]=(e.depth[t]>=e.depth[r]?e.depth[t]:e.depth[r])+1,n[2*t+1]=n[2*r+1]=i,e.heap[1]=i++,pqdownheap(e,n,1);while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],gen_bitlen(e,_),gen_codes(n,l,e.bl_count)}function scan_tree(e,_,t){var r,i,n=-1,s=_[1],d=0,a=7,l=4;for(0===s&&(a=138,l=3),_[2*(t+1)+1]=65535,r=0;r<=t;r++)i=s,s=_[2*(r+1)+1],++d=3&&0===e.bl_tree[2*bl_order[_]+1];_--);return e.opt_len+=3*(_+1)+5+5+4,_}function send_all_trees(e,_,t,r){var i;for(send_bits(e,_-257,5),send_bits(e,t-1,5),send_bits(e,r-4,4),i=0;i>>=1)if(1&t&&0!==e.dyn_ltree[2*_])return Z_BINARY;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return Z_TEXT;for(_=32;_0?(e.strm.data_type===Z_UNKNOWN&&(e.strm.data_type=detect_data_type(e)),build_tree(e,e.l_desc),build_tree(e,e.d_desc),s=build_bl_tree(e),i=e.opt_len+3+7>>>3,n=e.static_len+3+7>>>3,n<=i&&(i=n)):i=n=t+5,t+4<=i&&_!==-1?_tr_stored_block(e,_,t,r):e.strategy===Z_FIXED||n===i?(send_bits(e,(STATIC_TREES<<1)+(r?1:0),3),compress_block(e,static_ltree,static_dtree)):(send_bits(e,(DYN_TREES<<1)+(r?1:0),3),send_all_trees(e,e.l_desc.max_code+1,e.d_desc.max_code+1,s+1),compress_block(e,e.dyn_ltree,e.dyn_dtree)),init_block(e),r&&bi_windup(e)}function _tr_tally(e,_,t){return e.pending_buf[e.d_buf+2*e.last_lit]=_>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&_,e.pending_buf[e.l_buf+e.last_lit]=255&t,e.last_lit++,0===_?e.dyn_ltree[2*t]++:(e.matches++,_--,e.dyn_ltree[2*(_length_code[t]+LITERALS+1)]++,e.dyn_dtree[2*d_code(_)]++),e.last_lit===e.lit_bufsize-1}var utils=require("../utils/common"),Z_FIXED=4,Z_BINARY=0,Z_TEXT=1,Z_UNKNOWN=2,STORED_BLOCK=0,STATIC_TREES=1,DYN_TREES=2,MIN_MATCH=3,MAX_MATCH=258,LENGTH_CODES=29,LITERALS=256,L_CODES=LITERALS+1+LENGTH_CODES,D_CODES=30,BL_CODES=19,HEAP_SIZE=2*L_CODES+1,MAX_BITS=15,Buf_size=16,MAX_BL_BITS=7,END_BLOCK=256,REP_3_6=16,REPZ_3_10=17,REPZ_11_138=18,extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],DIST_CODE_LEN=512,static_ltree=new Array(2*(L_CODES+2));zero(static_ltree);var static_dtree=new Array(2*D_CODES);zero(static_dtree);var _dist_code=new Array(DIST_CODE_LEN);zero(_dist_code);var _length_code=new Array(MAX_MATCH-MIN_MATCH+1);zero(_length_code);var base_length=new Array(LENGTH_CODES);zero(base_length);var base_dist=new Array(D_CODES);zero(base_dist);var static_l_desc,static_d_desc,static_bl_desc,static_init_done=!1;exports._tr_init=_tr_init,exports._tr_stored_block=_tr_stored_block,exports._tr_flush_block=_tr_flush_block,exports._tr_tally=_tr_tally,exports._tr_align=_tr_align; -},{"../utils/common":122}],134:[function(require,module,exports){ +},{"../utils/common":125}],137:[function(require,module,exports){ "use strict";function ZStream(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}module.exports=ZStream; -},{}],135:[function(require,module,exports){ +},{}],138:[function(require,module,exports){ +(function (process){ +"use strict";function nextTick(e,n,c,r){if("function"!=typeof e)throw new TypeError('"callback" argument must be a function');var s,t,o=arguments.length;switch(o){case 0:case 1:return process.nextTick(e);case 2:return process.nextTick(function(){e.call(null,n)});case 3:return process.nextTick(function(){e.call(null,n,c)});case 4:return process.nextTick(function(){e.call(null,n,c,r)});default:for(s=new Array(o-1),t=0;t1)for(var u=1;u0)if(t.ended&&!a){var d=new Error("stream.push() after EOF");e.emit("error",d)}else if(t.endEmitted&&a){var o=new Error("stream.unshift() after end event");e.emit("error",o)}else{var u;!t.decoder||a||n||(r=t.decoder.write(r),u=!t.objectMode&&0===r.length),a||(t.reading=!1),u||(t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,a?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&emitReadable(e))),maybeReadMore(e,t)}else a||(t.reading=!1);return needMoreData(t)}function needMoreData(e){return!e.ended&&(e.needReadable||e.length=MAX_HWM?e=MAX_HWM:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function howMuchToRead(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=computeNewHighWaterMark(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function chunkInvalid(e,t){var r=null;return Buffer.isBuffer(t)||"string"==typeof t||null===t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk")),r}function onEofChunk(e,t){if(!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,emitReadable(e)}}function emitReadable(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(debug("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?processNextTick(emitReadable_,e):emitReadable_(e))}function emitReadable_(e){debug("emit readable"),e.emit("readable"),flow(e)}function maybeReadMore(e,t){t.readingMore||(t.readingMore=!0,processNextTick(maybeReadMore_,e,t))}function maybeReadMore_(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=fromListPartial(e,t.buffer,t.decoder),r}function fromListPartial(e,t,r){var n;return ei.length?i.length:e;if(a+=d===i.length?i:i.slice(0,e),e-=d,0===e){d===i.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=i.slice(d));break}++n}return t.length-=n,a}function copyFromBuffer(e,t){var r=bufferShim.allocUnsafe(e),n=t.head,a=1;for(n.data.copy(r),e-=n.data.length;n=n.next;){var i=n.data,d=e>i.length?i.length:e;if(i.copy(r,r.length-e,0,d),e-=d,0===e){d===i.length?(++a,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=i.slice(d));break}++a}return t.length-=a,r}function endReadable(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,processNextTick(endReadableNT,t,e))}function endReadableNT(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function forEach(e,t){for(var r=0,n=e.length;r=t.highWaterMark||t.ended))return debug("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?endReadable(this):emitReadable(this),null;if(e=howMuchToRead(e,t),0===e&&t.ended)return 0===t.length&&endReadable(this),null;var n=t.needReadable;debug("need readable",n),(0===t.length||t.length-e0?fromList(e,t):null,null===a?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&endReadable(this)),null!==a&&this.emit("data",a),a},Readable.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},Readable.prototype.pipe=function(e,t){function r(e){debug("onunpipe"),e===s&&a()}function n(){debug("onend"),e.end()}function a(){debug("cleanup"),e.removeListener("close",o),e.removeListener("finish",u),e.removeListener("drain",c),e.removeListener("error",d),e.removeListener("unpipe",r),s.removeListener("end",n),s.removeListener("end",a),s.removeListener("data",i),g=!0,!h.awaitDrain||e._writableState&&!e._writableState.needDrain||c()}function i(t){debug("ondata"),b=!1;var r=e.write(t);!1!==r||b||((1===h.pipesCount&&h.pipes===e||h.pipesCount>1&&indexOf(h.pipes,e)!==-1)&&!g&&(debug("false write response, pause",s._readableState.awaitDrain),s._readableState.awaitDrain++,b=!0),s.pause())}function d(t){debug("onerror",t),l(),e.removeListener("error",d),0===EElistenerCount(e,"error")&&e.emit("error",t)}function o(){e.removeListener("finish",u),l()}function u(){debug("onfinish"),e.removeListener("close",o),l()}function l(){debug("unpipe"),s.unpipe(e)}var s=this,h=this._readableState;switch(h.pipesCount){case 0:h.pipes=e;break;case 1:h.pipes=[h.pipes,e];break;default:h.pipes.push(e)}h.pipesCount+=1,debug("pipe count=%d opts=%j",h.pipesCount,t);var f=(!t||t.end!==!1)&&e!==process.stdout&&e!==process.stderr,p=f?n:a;h.endEmitted?processNextTick(p):s.once("end",p),e.on("unpipe",r);var c=pipeOnDrain(s);e.on("drain",c);var g=!1,b=!1;return s.on("data",i),prependListener(e,"error",d),e.once("close",o),e.once("finish",u),e.emit("pipe",s),h.flowing||(debug("pipe resume"),s.resume()),e},Readable.prototype.unpipe=function(e){var t=this._readableState;if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this),this);if(!e){var r=t.pipes,n=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a-1?setImmediate:processNextTick,Duplex;Writable.WritableState=WritableState;var util=require("core-util-is");util.inherits=require("inherits");var internalUtil={deprecate:require("util-deprecate")},Stream;!function(){try{Stream=require("stream")}catch(e){}finally{Stream||(Stream=require("events").EventEmitter)}}();var Buffer=require("buffer").Buffer,bufferShim=require("buffer-shims");util.inherits(Writable,Stream),WritableState.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(WritableState.prototype,"buffer",{get:internalUtil.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.")})}catch(e){}}();var realHasInstance;"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(realHasInstance=Function.prototype[Symbol.hasInstance],Object.defineProperty(Writable,Symbol.hasInstance,{value:function(e){return!!realHasInstance.call(this,e)||e&&e._writableState instanceof WritableState}})):realHasInstance=function(e){return e instanceof this},Writable.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},Writable.prototype.write=function(e,t,r){var i=this._writableState,n=!1;return"function"==typeof t&&(r=t,t=null),Buffer.isBuffer(e)?t="buffer":t||(t=i.defaultEncoding),"function"!=typeof r&&(r=nop),i.ended?writeAfterEnd(this,r):validChunk(this,i,e,r)&&(i.pendingcb++,n=writeOrBuffer(this,i,e,t,r)),n},Writable.prototype.cork=function(){var e=this._writableState;e.corked++},Writable.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.finished||e.bufferProcessing||!e.bufferedRequest||clearBuffer(this,e))},Writable.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Writable.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},Writable.prototype._writev=null,Writable.prototype.end=function(e,t,r){var i=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!==e&&void 0!==e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||i.finished||endWritable(this,i,r)}; + +}).call(this,require('_process')) +},{"./_stream_duplex":141,"_process":139,"buffer":19,"buffer-shims":18,"core-util-is":39,"events":69,"inherits":79,"process-nextick-args":138,"stream":152,"util-deprecate":154}],146:[function(require,module,exports){ +"use strict";function BufferList(){this.head=null,this.tail=null,this.length=0}var Buffer=require("buffer").Buffer,bufferShim=require("buffer-shims");module.exports=BufferList,BufferList.prototype.push=function(t){var e={data:t,next:null};this.length>0?this.tail.next=e:this.head=e,this.tail=e,++this.length},BufferList.prototype.unshift=function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length},BufferList.prototype.shift=function(){if(0!==this.length){var t=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,t}},BufferList.prototype.clear=function(){this.head=this.tail=null,this.length=0},BufferList.prototype.join=function(t){if(0===this.length)return"";for(var e=this.head,i=""+e.data;e=e.next;)i+=t+e.data;return i},BufferList.prototype.concat=function(t){if(0===this.length)return bufferShim.alloc(0);if(1===this.length)return this.head.data;for(var e=bufferShim.allocUnsafe(t>>>0),i=this.head,h=0;i;)i.data.copy(e,h),h+=i.data.length,i=i.next;return e}; +},{"buffer":19,"buffer-shims":18}],147:[function(require,module,exports){ +module.exports=require("./lib/_stream_passthrough.js"); +},{"./lib/_stream_passthrough.js":142}],148:[function(require,module,exports){ +(function (process){ +var Stream=function(){try{return require("stream")}catch(r){}}();exports=module.exports=require("./lib/_stream_readable.js"),exports.Stream=Stream||exports,exports.Readable=exports,exports.Writable=require("./lib/_stream_writable.js"),exports.Duplex=require("./lib/_stream_duplex.js"),exports.Transform=require("./lib/_stream_transform.js"),exports.PassThrough=require("./lib/_stream_passthrough.js"),!process.browser&&"disable"===process.env.READABLE_STREAM&&Stream&&(module.exports=Stream); + +}).call(this,require('_process')) +},{"./lib/_stream_duplex.js":141,"./lib/_stream_passthrough.js":142,"./lib/_stream_readable.js":143,"./lib/_stream_transform.js":144,"./lib/_stream_writable.js":145,"_process":139,"stream":152}],149:[function(require,module,exports){ +module.exports=require("./lib/_stream_transform.js"); + +},{"./lib/_stream_transform.js":144}],150:[function(require,module,exports){ +module.exports=require("./lib/_stream_writable.js"); + +},{"./lib/_stream_writable.js":145}],151:[function(require,module,exports){ "use strict";var isArrayish=require("is-arrayish"),concat=Array.prototype.concat,slice=Array.prototype.slice,swizzle=module.exports=function(r){for(var e=[],i=0,t=r.length;i=this.charLength-this.charReceived?this.charLength-this.charReceived:e.length;if(e.copy(this.charBuffer,this.charReceived,0,r),this.charReceived+=r,this.charReceived=55296&&h<=56319)){if(this.charReceived=this.charLength=0,0===e.length)return t;break}this.charLength+=this.surrogateSize,t=""}this.detectIncompleteChar(e);var i=e.length;this.charLength&&(e.copy(this.charBuffer,0,e.length-this.charReceived,i),i-=this.charReceived),t+=e.toString(this.encoding,0,i);var i=t.length-1,h=t.charCodeAt(i);if(h>=55296&&h<=56319){var c=this.surrogateSize;return this.charLength+=c,this.charReceived+=c,this.charBuffer.copy(this.charBuffer,c,0,c),e.copy(this.charBuffer,0,0,c),t.substring(0,i)}return t},StringDecoder.prototype.detectIncompleteChar=function(e){for(var t=e.length>=3?3:e.length;t>0;t--){var r=e[e.length-t];if(1==t&&r>>5==6){this.charLength=2;break}if(t<=2&&r>>4==14){this.charLength=3;break}if(t<=3&&r>>3==30){this.charLength=4;break}}this.charReceived=t},StringDecoder.prototype.end=function(e){var t="";if(e&&e.length&&(t=this.write(e)),this.charReceived){var r=this.charReceived,h=this.charBuffer,i=this.encoding;t+=h.slice(0,r).toString(i)}return t}; + +},{"buffer":19}],154:[function(require,module,exports){ +(function (global){ +function deprecate(r,e){function o(){if(!t){if(config("throwDeprecation"))throw new Error(e);config("traceDeprecation")?console.trace(e):console.warn(e),t=!0}return r.apply(this,arguments)}if(config("noDeprecation"))return r;var t=!1;return o}function config(r){try{if(!global.localStorage)return!1}catch(r){return!1}var e=global.localStorage[r];return null!=e&&"true"===String(e).toLowerCase()}module.exports=deprecate; -},{"is-arrayish":77}],"docx4js":[function(require,module,exports){ +}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) +},{}],"docx4js":[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0}),exports.OfficeDocument=exports.Document=exports.Part=exports.drawml=exports.xlsx=exports.pptx=exports.docx=void 0;var _document=require("./openxml/docx/document"),_document2=_interopRequireDefault(_document),_document3=require("./openxml/pptx/document"),_document4=_interopRequireDefault(_document3),_document5=require("./openxml/xlsx/document"),_document6=_interopRequireDefault(_document5),_drawml=require("./openxml/drawml"),_drawml2=_interopRequireDefault(_drawml),_document7=require("./openxml/document"),_document8=_interopRequireDefault(_document7),_part=require("./openxml/part"),_part2=_interopRequireDefault(_part),_officeDocument=require("./openxml/officeDocument"),_officeDocument2=_interopRequireDefault(_officeDocument);exports.default=_document2.default,exports.docx=_document2.default,exports.pptx=_document4.default,exports.xlsx=_document6.default,exports.drawml=_drawml2.default,exports.Part=_part2.default,exports.Document=_document8.default,exports.OfficeDocument=_officeDocument2.default; },{"./openxml/document":3,"./openxml/docx/document":4,"./openxml/drawml":6,"./openxml/officeDocument":7,"./openxml/part":9,"./openxml/pptx/document":10,"./openxml/xlsx/document":12}]},{},[]); diff --git a/lib/cheerio-fn.js b/lib/cheerio-fn.js index ae6b532..144879c 100644 --- a/lib/cheerio-fn.js +++ b/lib/cheerio-fn.js @@ -128,4 +128,4 @@ _cheerio2.default.prototype.backwardUntil = function (selector, filter) { } return filter ? filtered : until; }; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jaGVlcmlvLWZuLmpzIl0sIm5hbWVzIjpbImNoZWVyaW8iLCJwcm90b3R5cGUiLCJwcm9wcyIsIm9wdCIsImxlbmd0aCIsIiQiLCJjb25zdHJ1Y3RvciIsIm5hbWVzIiwibmFtZUZuIiwiYSIsIl9fZmlsdGVyIiwidGlkeSIsInByb3BzQXR0cmlicyIsIk9iamVjdCIsImtleXMiLCJhdHRyaWJzIiwiZmlsdGVyIiwiayIsInN0YXJ0c1dpdGgiLCJyZWR1Y2UiLCJhdHRyaWJLZXkiLCJ2YWx1ZSIsInNwbGl0IiwicG9wIiwicGFyc2VkVmFsdWUiLCJ1bmRlZmluZWQiLCJwcm9wc0NoaWxkIiwibm9kZSIsInBhcmVudFByb3BzIiwiaW5kZXgiLCJ0YWdOYW1lIiwibmFtZSIsInBhcnNlZCIsInRvSlMiLCJrZXkiLCJBcnJheSIsImlzQXJyYXkiLCJwIiwiY2hpbGRyZW4iLCJpcyIsImNoaWxkIiwiaSIsImZvcndhcmRVbnRpbCIsInNlbGVjdG9yIiwiRW1wdHkiLCJyb290Iiwibm90IiwiYWRkIiwibiIsInVudGlsIiwiZmlsdGVyZWQiLCJuZXh0IiwiZ2V0IiwicGFyZW50TmV4dCIsInBhcmVudCIsImdldE5leHQiLCIkbiIsImJhY2t3YXJkVW50aWwiLCJwcmV2IiwicGFyZW50UHJldiIsImdldFByZXYiXSwibWFwcGluZ3MiOiI7O0FBQUE7Ozs7OztBQUVBQSxrQkFBUUMsU0FBUixDQUFrQkMsS0FBbEIsR0FBd0IsWUFBZ0I7QUFBQSxRQUFQQyxHQUFPLHVFQUFILEVBQUc7O0FBQ3BDLFFBQUcsS0FBS0MsTUFBTCxJQUFhLENBQWhCLEVBQ0ksT0FBTyxFQUFQO0FBQ0osUUFBTUMsSUFBRSxLQUFLQyxXQUFiOztBQUhvQyxRQUk3QkMsS0FKNkIsR0FJK0JKLEdBSi9CLENBSTdCSSxLQUo2QjtBQUFBLHNCQUkrQkosR0FKL0IsQ0FJdEJLLE1BSnNCO0FBQUEsUUFJdEJBLE1BSnNCLCtCQUlmO0FBQUEsZUFBR0QsU0FBT0EsTUFBTUUsQ0FBTixD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QUFLRSxRQUFRRixJQUFSLENBQWQsQ0FBTixFQUFtQztBQUMvQixZQUFJRixLQUFHbkQsRUFBRXFELElBQUYsQ0FBUDtBQUNBLFlBQUdGLEdBQUdqQixFQUFILENBQU1JLFFBQU4sQ0FBSCxFQUFtQjtBQUNmTSxvQkFBTUEsTUFBTUYsR0FBTixDQUFVVyxJQUFWLENBQU47QUFDQTtBQUNILFNBSEQsTUFHTSxJQUFHMUMsVUFBVXdDLEdBQUdqQixFQUFILENBQU12QixNQUFOLENBQWIsRUFBMkI7QUFDN0JrQyx1QkFBU0EsU0FBU0gsR0FBVCxDQUFhSSxJQUFiLENBQVQ7QUFDSDtBQUNKO0FBQ0QsV0FBT25DLFNBQVNrQyxRQUFULEdBQW9CRCxLQUEzQjtBQUNILENBbEJEIiwiZmlsZSI6ImNoZWVyaW8tZm4uanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgY2hlZXJpbyBmcm9tIFwiY2hlZXJpb1wiXG5cbmNoZWVyaW8ucHJvdG90eXBlLnByb3BzPWZ1bmN0aW9uKG9wdD17fSl7XG4gICAgaWYodGhpcy5sZW5ndGg9PTApXG4gICAgICAgIHJldHVybiB7fVxuICAgIGNvbnN0ICQ9dGhpcy5jb25zdHJ1Y3RvclxuICAgIGNvbnN0IHtuYW1lcywgbmFtZUZuPWE9Pm5hbWVzJiZuYW1lc1thXXx8YSxfX2ZpbHRlcj0nKicsdGlkeT1hPT5hfT1vcHRcblxuICAgIGNvbnN0IHByb3BzQXR0cmlicz1hdHRyaWJzPT5PYmplY3Qua2V5cyhhdHRyaWJzKVxuICAgICAgICAuZmlsdGVyKGs9PiFrLnN0YXJ0c1dpdGgoXCJ4bWxuc1wiKSlcbiAgICAgICAgLnJlZHVjZSgocHJvcHMsYXR0cmliS2V5KT0+e1xuICAgICAgICAgICAgY29uc3QgdmFsdWU9YXR0cmlic1thdHRyaWJLZXldXG4gICAgICAgICAgICBhdHRyaWJLZXk9YXR0cmliS2V5LnNwbGl0KFwiOlwiKS5wb3AoKVxuICAgICAgICAgICAgY29uc3QgcGFyc2VkVmFsdWU9b3B0W2F0dHJpYktleV0gPyBvcHRbYXR0cmliS2V5XSh2YWx1ZSkgOiB2YWx1ZVxuICAgICAgICAgICAgaWYocGFyc2VkVmFsdWUhPXVuZGVmaW5lZCl7XG4gICAgICAgICAgICAgICAgcHJvcHNbbmFtZUZuKGF0dHJpYktleSldPXBhcnNlZFZhbHVlXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gcHJvcHNcbiAgICAgICAgfSx7fSlcblxuXHRjb25zdCBwcm9wc0NoaWxkPShub2RlLHBhcmVudFByb3BzLGluZGV4KT0+e1xuICAgICAgICBjb25zdCB0YWdOYW1lPW5vZGUubmFtZS5zcGxpdChcIjpcIikucG9wKClcbiAgICAgICAgY29uc3QgcGFyc2VkPW9wdFt0YWdOYW1lXT9vcHRbdGFnTmFtZV0obm9kZSk6dG9KUyhub2RlKVxuICAgICAgICBpZihwYXJzZWQhPXVuZGVmaW5lZCl7XG4gICAgICAgICAgICBjb25zdCBrZXk9IEFycmF5LmlzQXJyYXkocGFyZW50UHJvcHMpID8gaW5kZXggOiBuYW1lRm4odGFnTmFtZSxub2RlLHBhcmVudFByb3BzKVxuICAgICAgICAgICAgcGFyZW50UHJvcHNba2V5PT1cIltdXCI/IHRhZ05hbWUgOiBrZXldPW9wdFtgdGlkeV8ke3RhZ05hbWV9YF0gPyBvcHRbYHRpZHlfJHt0YWdOYW1lfWBdKHBhcnNlZCkgOiBwYXJzZWRcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcGFyZW50UHJvcHNcbiAgICB9XG5cbiAgICBjb25zdCB0b0pTPShub2RlLHApPT57XG4gICAgICAgIGNvbnN0e2NoaWxkcmVuLGF0dHJpYnMsbmFtZT1cIlwiLHRhZ05hbWU9bmFtZS5zcGxpdChcIjpcIikucG9wKCl9PW5vZGVcbiAgICAgICAgcmV0dXJuIGNoaWxkcmVuXG4gICAgICAgICAgICAuZmlsdGVyKGE9PmEubmFtZSAmJiAkKGEpLmlzKF9fZmlsdGVyKSlcbiAgICAgICAgICAgIC5yZWR1Y2UoXG4gICAgICAgICAgICAgICAgKHBhcmVudFByb3BzLGNoaWxkLGkpPT5wcm9wc0NoaWxkKGNoaWxkLHBhcmVudFByb3BzLGkpLFxuICAgICAgICAgICAgICAgIG5hbWVGbih0YWdOYW1lLG5vZGUpPT09XCJbXVwiID8gW10gOiBwcm9wc0F0dHJpYnMoYXR0cmlicylcbiAgICAgICAgICAgIClcbiAgICB9XG5cbiAgICBjb25zdCBwcm9wcz10b0pTKHRoaXNbMF0pXG5cbiAgICByZXR1cm4gdGlkeSA/IHRpZHkocHJvcHMpIDogcHJvcHNcbn1cblxuY2hlZXJpby5wcm90b3R5cGUuZm9yd2FyZFVudGlsPWZ1bmN0aW9uKHNlbGVjdG9yLGZpbHRlcil7XG4gICAgY29uc3QgRW1wdHk9dGhpcy5jb25zdHJ1Y3Rvci5yb290KCkubm90KGE9PnRydWUpXG4gICAgY29uc3QgJD1uPT5FbXB0eS5ub3QoYT0+dHJ1ZSkuYWRkKG4pXG4gICAgbGV0IHVudGlsPUVtcHR5LCBmaWx0ZXJlZD1FbXB0eVxuXG4gICAgbGV0IG5leHQ9dGhpcy5nZXQoMClcbiAgICBjb25zdCBwYXJlbnROZXh0PW5vZGU9Pm5vZGUmJihub2RlLnBhcmVudCAmJiAobm9kZS5wYXJlbnQubmV4dCB8fCBwYXJlbnROZXh0KG5vZGUucGFyZW50KSkpXG4gICAgY29uc3QgZ2V0TmV4dD1ub2RlPT5ub2RlICYmICgobm9kZS5jaGlsZHJlbiYmbm9kZS5jaGlsZHJlblswXSl8fG5vZGUubmV4dHx8cGFyZW50TmV4dChub2RlKSlcbiAgICB3aGlsZShuZXh0ICYmIChuZXh0PWdldE5leHQobmV4dCkpKXtcbiAgICAgICAgbGV0ICRuPSQobmV4dClcbiAgICAgICAgaWYoJG4uaXMoc2VsZWN0b3IpKXtcbiAgICAgICAgICAgIHVudGlsPXVudGlsLmFkZChuZXh0KVxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgfWVsc2UgaWYoZmlsdGVyICYmICRuLmlzKGZpbHRlcikpe1xuICAgICAgICAgICAgZmlsdGVyZWQ9ZmlsdGVyZWQuYWRkKG5leHQpXG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZpbHRlciA/IGZpbHRlcmVkIDogdW50aWxcbn1cbmNoZWVyaW8ucHJvdG90eXBlLmJhY2t3YXJkVW50aWw9ZnVuY3Rpb24oc2VsZWN0b3IsZmlsdGVyKXtcbiAgICBjb25zdCBFbXB0eT10aGlzLmNvbnN0cnVjdG9yLnJvb3QoKS5ub3QoYT0+dHJ1ZSlcbiAgICBjb25zdCAkPW49PkVtcHR5Lm5vdChhPT50cnVlKS5hZGQobilcbiAgICBsZXQgdW50aWw9RW1wdHksIGZpbHRlcmVkPUVtcHR5XG5cbiAgICBsZXQgcHJldj10aGlzLmdldCgwKVxuICAgIGNvbnN0IHBhcmVudFByZXY9bm9kZT0+bm9kZSAmJiAobm9kZS5wYXJlbnQgJiYgKG5vZGUucGFyZW50LnByZXYgfHwgcGFyZW50UHJldihub2RlLnBhcmVudCkpKVxuICAgIGNvbnN0IGdldFByZXY9bm9kZT0+bm9kZSAmJiAoKG5vZGUuY2hpbGRyZW4mJm5vZGUuY2hpbGRyZW5bbm9kZS5jaGlsZHJlbi5sZW5ndGgtMV0pfHxub2RlLnByZXZ8fHBhcmVudFByZXYobm9kZSkpXG4gICAgd2hpbGUocHJldiAmJiAocHJldj1nZXRQcmV2KHByZXYpKSl7XG4gICAgICAgIGxldCAkbj0kKHByZXYpXG4gICAgICAgIGlmKCRuLmlzKHNlbGVjdG9yKSl7XG4gICAgICAgICAgICB1bnRpbD11bnRpbC5hZGQocHJldilcbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgIH1lbHNlIGlmKGZpbHRlciAmJiAkbi5pcyhmaWx0ZXIpKXtcbiAgICAgICAgICAgIGZpbHRlcmVkPWZpbHRlcmVkLmFkZChuZXh0KVxuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmaWx0ZXIgPyBmaWx0ZXJlZCA6IHVudGlsXG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jaGVlcmlvLWZuLmpzIl0sIm5hbWVzIjpbInByb3RvdHlwZSIsInByb3BzIiwib3B0IiwibGVuZ3RoIiwiJCIsImNvbnN0cnVjdG9yIiwibmFtZXMiLCJuYW1lRm4iLCJhIiwiX19maWx0ZXIiLCJ0aWR5IiwicHJvcHNBdHRyaWJzIiwiT2JqZWN0Iiwia2V5cyIsImF0dHJpYnMiLCJmaWx0ZXIiLCJrIiwic3RhcnRzV2l0aCIsInJlZHVjZSIsImF0dHJpYktleSIsInZhbHVlIiwic3BsaXQiLCJwb3AiLCJwYXJzZWRWYWx1ZSIsInVuZGVmaW5lZCIsInByb3BzQ2hpbGQiLCJub2RlIiwicGFyZW50UHJvcHMiLCJpbmRleCIsInRhZ05hbWUiLCJuYW1lIiwicGFyc2VkIiwidG9KUyIsImtleSIsIkFycmF5IiwiaXNBcnJheSIsInAiLCJjaGlsZHJlbiIsImlzIiwiY2hpbGQiLCJpIiwiZm9yd2FyZFVudGlsIiwic2VsZWN0b3IiLCJFbXB0eSIsInJvb3QiLCJub3QiLCJhZGQiLCJuIiwidW50aWwiLCJmaWx0ZXJlZCIsIm5leHQiLCJnZXQiLCJwYXJlbnROZXh0IiwicGFyZW50IiwiZ2V0TmV4dCIsIiRuIiwiYmFja3dhcmRVbnRpbCIsInByZXYiLCJwYXJlbnRQcmV2IiwiZ2V0UHJldiJdLCJtYXBwaW5ncyI6Ijs7QUFBQTs7Ozs7O0FBRUEsa0JBQVFBLFNBQVIsQ0FBa0JDLEtBQWxCLEdBQXdCLFlBQWdCO0FBQUEsUUFBUEMsR0FBTyx1RUFBSCxFQUFHOztBQUNwQyxRQUFHLEtBQUtDLE1BQUwsSUFBYSxDQUFoQixFQUNJLE9BQU8sRUFBUDtBQUNKLFFBQU1DLElBQUUsS0FBS0MsV0FBYjs7QUFIb0MsUUFJN0JDLEtBSjZCLEdBSStCSixHQUovQixDQUk3QkksS0FKNkI7QUFBQSxzQkFJK0JKLEdBSi9CLENBSXRCSyxNQUpzQjtBQUFBLFFBSXRCQSxNQUpzQiwrQkFJZjtBQUFBLGVBQUdELFNBQU9BLE1BQU1FLENBQU4sQ0FBUCxJQUFpQkEs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QVIsQ0FBZCxDQUFOLEVBQW1DO0FBQy9CLFlBQUlGLEtBQUduRCxFQUFFcUQsSUFBRixDQUFQO0FBQ0EsWUFBR0YsR0FBR2pCLEVBQUgsQ0FBTUksUUFBTixDQUFILEVBQW1CO0FBQ2ZNLG9CQUFNQSxNQUFNRixHQUFOLENBQVVXLElBQVYsQ0FBTjtBQUNBO0FBQ0gsU0FIRCxNQUdNLElBQUcxQyxVQUFVd0MsR0FBR2pCLEVBQUgsQ0FBTXZCLE1BQU4sQ0FBYixFQUEyQjtBQUM3QmtDLHVCQUFTQSxTQUFTSCxHQUFULENBQWFJLElBQWIsQ0FBVDtBQUNIO0FBQ0o7QUFDRCxXQUFPbkMsU0FBU2tDLFFBQVQsR0FBb0JELEtBQTNCO0FBQ0gsQ0FsQkQiLCJmaWxlIjoiY2hlZXJpby1mbi5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjaGVlcmlvIGZyb20gXCJjaGVlcmlvXCJcblxuY2hlZXJpby5wcm90b3R5cGUucHJvcHM9ZnVuY3Rpb24ob3B0PXt9KXtcbiAgICBpZih0aGlzLmxlbmd0aD09MClcbiAgICAgICAgcmV0dXJuIHt9XG4gICAgY29uc3QgJD10aGlzLmNvbnN0cnVjdG9yXG4gICAgY29uc3Qge25hbWVzLCBuYW1lRm49YT0+bmFtZXMmJm5hbWVzW2FdfHxhLF9fZmlsdGVyPScqJyx0aWR5PWE9PmF9PW9wdFxuXG4gICAgY29uc3QgcHJvcHNBdHRyaWJzPWF0dHJpYnM9Pk9iamVjdC5rZXlzKGF0dHJpYnMpXG4gICAgICAgIC5maWx0ZXIoaz0+IWsuc3RhcnRzV2l0aChcInhtbG5zXCIpKVxuICAgICAgICAucmVkdWNlKChwcm9wcyxhdHRyaWJLZXkpPT57XG4gICAgICAgICAgICBjb25zdCB2YWx1ZT1hdHRyaWJzW2F0dHJpYktleV1cbiAgICAgICAgICAgIGF0dHJpYktleT1hdHRyaWJLZXkuc3BsaXQoXCI6XCIpLnBvcCgpXG4gICAgICAgICAgICBjb25zdCBwYXJzZWRWYWx1ZT1vcHRbYXR0cmliS2V5XSA/IG9wdFthdHRyaWJLZXldKHZhbHVlKSA6IHZhbHVlXG4gICAgICAgICAgICBpZihwYXJzZWRWYWx1ZSE9dW5kZWZpbmVkKXtcbiAgICAgICAgICAgICAgICBwcm9wc1tuYW1lRm4oYXR0cmliS2V5KV09cGFyc2VkVmFsdWVcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBwcm9wc1xuICAgICAgICB9LHt9KVxuXG5cdGNvbnN0IHByb3BzQ2hpbGQ9KG5vZGUscGFyZW50UHJvcHMsaW5kZXgpPT57XG4gICAgICAgIGNvbnN0IHRhZ05hbWU9bm9kZS5uYW1lLnNwbGl0KFwiOlwiKS5wb3AoKVxuICAgICAgICBjb25zdCBwYXJzZWQ9b3B0W3RhZ05hbWVdP29wdFt0YWdOYW1lXShub2RlKTp0b0pTKG5vZGUpXG4gICAgICAgIGlmKHBhcnNlZCE9dW5kZWZpbmVkKXtcbiAgICAgICAgICAgIGNvbnN0IGtleT0gQXJyYXkuaXNBcnJheShwYXJlbnRQcm9wcykgPyBpbmRleCA6IG5hbWVGbih0YWdOYW1lLG5vZGUscGFyZW50UHJvcHMpXG4gICAgICAgICAgICBwYXJlbnRQcm9wc1trZXk9PVwiW11cIj8gdGFnTmFtZSA6IGtleV09b3B0W2B0aWR5XyR7dGFnTmFtZX1gXSA/IG9wdFtgdGlkeV8ke3RhZ05hbWV9YF0ocGFyc2VkKSA6IHBhcnNlZFxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBwYXJlbnRQcm9wc1xuICAgIH1cblxuICAgIGNvbnN0IHRvSlM9KG5vZGUscCk9PntcbiAgICAgICAgY29uc3R7Y2hpbGRyZW4sYXR0cmlicyxuYW1lPVwiXCIsdGFnTmFtZT1uYW1lLnNwbGl0KFwiOlwiKS5wb3AoKX09bm9kZVxuICAgICAgICByZXR1cm4gY2hpbGRyZW5cbiAgICAgICAgICAgIC5maWx0ZXIoYT0+YS5uYW1lICYmICQoYSkuaXMoX19maWx0ZXIpKVxuICAgICAgICAgICAgLnJlZHVjZShcbiAgICAgICAgICAgICAgICAocGFyZW50UHJvcHMsY2hpbGQsaSk9PnByb3BzQ2hpbGQoY2hpbGQscGFyZW50UHJvcHMsaSksXG4gICAgICAgICAgICAgICAgbmFtZUZuKHRhZ05hbWUsbm9kZSk9PT1cIltdXCIgPyBbXSA6IHByb3BzQXR0cmlicyhhdHRyaWJzKVxuICAgICAgICAgICAgKVxuICAgIH1cblxuICAgIGNvbnN0IHByb3BzPXRvSlModGhpc1swXSlcblxuICAgIHJldHVybiB0aWR5ID8gdGlkeShwcm9wcykgOiBwcm9wc1xufVxuXG5jaGVlcmlvLnByb3RvdHlwZS5mb3J3YXJkVW50aWw9ZnVuY3Rpb24oc2VsZWN0b3IsZmlsdGVyKXtcbiAgICBjb25zdCBFbXB0eT10aGlzLmNvbnN0cnVjdG9yLnJvb3QoKS5ub3QoYT0+dHJ1ZSlcbiAgICBjb25zdCAkPW49PkVtcHR5Lm5vdChhPT50cnVlKS5hZGQobilcbiAgICBsZXQgdW50aWw9RW1wdHksIGZpbHRlcmVkPUVtcHR5XG5cbiAgICBsZXQgbmV4dD10aGlzLmdldCgwKVxuICAgIGNvbnN0IHBhcmVudE5leHQ9bm9kZT0+bm9kZSYmKG5vZGUucGFyZW50ICYmIChub2RlLnBhcmVudC5uZXh0IHx8IHBhcmVudE5leHQobm9kZS5wYXJlbnQpKSlcbiAgICBjb25zdCBnZXROZXh0PW5vZGU9Pm5vZGUgJiYgKChub2RlLmNoaWxkcmVuJiZub2RlLmNoaWxkcmVuWzBdKXx8bm9kZS5uZXh0fHxwYXJlbnROZXh0KG5vZGUpKVxuICAgIHdoaWxlKG5leHQgJiYgKG5leHQ9Z2V0TmV4dChuZXh0KSkpe1xuICAgICAgICBsZXQgJG49JChuZXh0KVxuICAgICAgICBpZigkbi5pcyhzZWxlY3Rvcikpe1xuICAgICAgICAgICAgdW50aWw9dW50aWwuYWRkKG5leHQpXG4gICAgICAgICAgICBicmVha1xuICAgICAgICB9ZWxzZSBpZihmaWx0ZXIgJiYgJG4uaXMoZmlsdGVyKSl7XG4gICAgICAgICAgICBmaWx0ZXJlZD1maWx0ZXJlZC5hZGQobmV4dClcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmlsdGVyID8gZmlsdGVyZWQgOiB1bnRpbFxufVxuY2hlZXJpby5wcm90b3R5cGUuYmFja3dhcmRVbnRpbD1mdW5jdGlvbihzZWxlY3RvcixmaWx0ZXIpe1xuICAgIGNvbnN0IEVtcHR5PXRoaXMuY29uc3RydWN0b3Iucm9vdCgpLm5vdChhPT50cnVlKVxuICAgIGNvbnN0ICQ9bj0+RW1wdHkubm90KGE9PnRydWUpLmFkZChuKVxuICAgIGxldCB1bnRpbD1FbXB0eSwgZmlsdGVyZWQ9RW1wdHlcblxuICAgIGxldCBwcmV2PXRoaXMuZ2V0KDApXG4gICAgY29uc3QgcGFyZW50UHJldj1ub2RlPT5ub2RlICYmIChub2RlLnBhcmVudCAmJiAobm9kZS5wYXJlbnQucHJldiB8fCBwYXJlbnRQcmV2KG5vZGUucGFyZW50KSkpXG4gICAgY29uc3QgZ2V0UHJldj1ub2RlPT5ub2RlICYmICgobm9kZS5jaGlsZHJlbiYmbm9kZS5jaGlsZHJlbltub2RlLmNoaWxkcmVuLmxlbmd0aC0xXSl8fG5vZGUucHJldnx8cGFyZW50UHJldihub2RlKSlcbiAgICB3aGlsZShwcmV2ICYmIChwcmV2PWdldFByZXYocHJldikpKXtcbiAgICAgICAgbGV0ICRuPSQocHJldilcbiAgICAgICAgaWYoJG4uaXMoc2VsZWN0b3IpKXtcbiAgICAgICAgICAgIHVudGlsPXVudGlsLmFkZChwcmV2KVxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgfWVsc2UgaWYoZmlsdGVyICYmICRuLmlzKGZpbHRlcikpe1xuICAgICAgICAgICAgZmlsdGVyZWQ9ZmlsdGVyZWQuYWRkKG5leHQpXG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZpbHRlciA/IGZpbHRlcmVkIDogdW50aWxcbn1cbiJdfQ== \ No newline at end of file diff --git a/lib/document.js b/lib/document.js index b393e5a..9827a6c 100644 --- a/lib/document.js +++ b/lib/document.js @@ -6,6 +6,8 @@ Object.defineProperty(exports, "__esModule", { var _get = function get(object, property, receiver) { if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { return get(parent, property, receiver); } } else if ("value" in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } }; +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); @@ -197,12 +199,18 @@ var ZipDocument = function () { document.body.removeChild(link); window.URL.revokeObjectURL(url); } else { - var _data = newDoc.generate(_extends({}, options, { type: "nodebuffer" })); - return new Promise(function (resolve, reject) { - return require("f" + "s").writeFile(file, _data, function (error) { - error ? reject(error) : resolve(_data); - }); - }); + var _ret = function () { + var data = newDoc.generate(_extends({}, options, { type: "nodebuffer" })); + return { + v: new Promise(function (resolve, reject) { + return require("f" + "s").writeFile(file, data, function (error) { + error ? reject(error) : resolve(data); + }); + }) + }; + }(); + + if ((typeof _ret === "undefined" ? "undefined" : _typeof(_ret)) === "object") return _ret.v; } } }, { @@ -244,12 +252,14 @@ var ZipDocument = function () { var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; try { - var raw = new _jszip2.default(data), - parts = {}; - raw.filter(function (path, file) { - return parts[path] = file; - }); - resolve(new DocumentSelf(parts, raw, props)); + (function () { + var raw = new _jszip2.default(data), + parts = {}; + raw.filter(function (path, file) { + return parts[path] = file; + }); + resolve(new DocumentSelf(parts, raw, props)); + })(); } catch (error) { reject(error); } @@ -327,4 +337,4 @@ var ContentDomHandler = function (_DomHandler) { }(_htmlparser.DomHandler); module.exports = exports['default']; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kb2N1bWVudC5qcyJdLCJuYW1lcyI6WyJub3JtYWxpemUiLCJwYXRoIiwic3BsaXQiLCJmaWx0ZXIiLCJhIiwicmVkdWNlUmlnaHQiLCJuIiwiciIsInRyaW1lZCIsInVuc2hpZnQiLCJqb2luIiwiWmlwRG9jdW1lbnQiLCJwYXJ0cyIsInJhdyIsInByb3BzIiwiX3Nob3VsZFJlbGVhc2VkIiwiTWFwIiwiYXJndW1lbnRzIiwibmFtZSIsInBhcnQiLCJjcmMzMiIsIl9kYXRhIiwiZGF0YSIsImFzVWludDhBcnJheSIsInR5cGUiLCJoYXMiLCJzZXQiLCJVUkwiLCJjcmVhdGVPYmplY3RVUkwiLCJCbG9iIiwiZ2V0RGF0YVBhcnQiLCJnZXQiLCJ1cmwiLCJyZXZva2VPYmplY3RVUkwiLCJjaGVlcmlvIiwiJCIsIk9iamVjdCIsImFzc2lnbiIsImNvbnN0cnVjdG9yIiwicGFyc2VYbWwiLCJhc1RleHQiLCJyb290IiwiYXR0cmlicyIsInByb3RvdHlwZSIsIm5vZGUiLCJwYXJlbnQiLCJnZXRPYmplY3RQYXJ0IiwiZG9tSGFuZGxlciIsIm5ld0RvYyIsIkpTWmlwIiwia2V5cyIsImZvckVhY2giLCJmaWxlIiwieG1sIiwib3B0aW9ucyIsIkRhdGUiLCJub3ciLCJzZXJpYWxpemUiLCJkb2N1bWVudCIsIndpbmRvdyIsImdlbmVyYXRlIiwibWltZVR5cGUiLCJtaW1lIiwibGluayIsImNyZWF0ZUVsZW1lbnQiLCJib2R5IiwiYXBwZW5kQ2hpbGQiLCJkb3dubG9hZCIsImhyZWYiLCJjbGljayIsInJlbW92ZUNoaWxkIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJyZXF1aXJlIiwid3JpdGVGaWxlIiwiZXJyb3IiLCJ6aXAiLCJKU09OIiwicGFyc2UiLCJzdHJpbmdpZnkiLCJyZWR1Y2UiLCJzdGF0ZSIsImsiLCJ2IiwiaW5wdXRGaWxlIiwiRG9jdW1lbnRTZWxmIiwicmVhZEZpbGUiLCJwb3AiLCJyZXBsYWNlIiwicmVhZGVyIiwiRmlsZVJlYWRlciIsIm9ubG9hZCIsImUiLCJ0YXJnZXQiLCJyZXN1bHQiLCJsYXN0TW9kaWZpZWQiLCJzaXplIiwicmVhZEFzQXJyYXlCdWZmZXIiLCJsb2FkIiwiX19kaXJuYW1lIiwiZXh0Iiwib3B0IiwieG1sTW9kZSIsImRlY29kZUVudGl0aWVzIiwiaGFuZGxlciIsIkNvbnRlbnREb21IYW5kbGVyIiwiUGFyc2VyIiwiZW5kIiwicGFyc2VkIiwiY2hlZXIiLCJkb20iLCJjb25zb2xlIiwiZWwiLCJEb21IYW5kbGVyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUFBOzs7O0FBQ0E7Ozs7QUFDQTs7QUFDQTs7Ozs7Ozs7OztBQUVBLElBQU1BLFlBQVUsU0FBVkEsU0FBVTtBQUFBLFFBQU1DLEtBQUtDLEtBQUwsQ0FBVyxHQUFYLEVBQWdCQyxNQUFoQixDQUF1QjtBQUFBLFNBQUdDLEtBQUcsR0FBTjtBQUFBLEVBQXZCLEVBQ3BCQyxXQURvQixDQUNSLFVBQUNDLENBQUQsRUFBR0YsQ0FBSCxFQUFPO0FBQ25CLE1BQUdBLEtBQUcsSUFBTixFQUFXO0FBQ1ZFLEtBQUVDLENBQUY7QUFDQSxHQUZELE1BRU0sSUFBR0QsRUFBRUMsQ0FBTCxFQUFPO0FBQ1pELEtBQUVDLENBQUY7QUFDQSxHQUZLLE1BRUQ7QUFDSkQsS0FBRUUsTUFBRixDQUFTQyxPQUFULENBQWlCTCxDQUFqQjtBQUNBO0FBQ0QsU0FBT0UsQ0FBUDtBQUNBLEVBVm9CLEVBVW5CLEVBQUNFLFFBQU8sRUFBUixFQUFXRCxHQUFFLENBQWIsRUFWbUIsRUFVRkMsTUFWRSxDQVVLRSxJQVZMLENBVVUsR0FWVixDQUFOO0FBQUEsQ0FBaEI7QUFXQTs7Ozs7Ozs7SUFPcUJDLFc7QUFJcEIsc0JBQVlDLEtBQVosRUFBa0JDLEdBQWxCLEVBQXNCQyxLQUF0QixFQUE0QjtBQUFBOztBQUMzQixPQUFLRixLQUFMLEdBQVdBLEtBQVg7QUFDQSxPQUFLQyxHQUFMLEdBQVNBLEdBQVQ7QUFDQSxPQUFLQyxLQUFMLEdBQVdBLEtBQVg7QUFDQSxPQUFL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QUFHO0FBQ0YsUUFBSWdGLE1BQUksRUFBQ0MsU0FBUSxJQUFULEVBQWNDLGdCQUFnQixLQUE5QixFQUFSO0FBQ0EsUUFBSUMsVUFBUSxJQUFJQyxpQkFBSixDQUFzQkosR0FBdEIsQ0FBWjtBQUNBLFFBQUlLLGtCQUFKLENBQVdGLE9BQVgsRUFBbUJILEdBQW5CLEVBQXdCTSxHQUF4QixDQUE0QnRGLElBQTVCO0FBQ0EsUUFBSXVGLFNBQU9DLGtCQUFNWCxJQUFOLENBQVdNLFFBQVFNLEdBQW5CLEVBQXVCVCxHQUF2QixDQUFYO0FBQ0EsUUFBRyxPQUFPTyxPQUFPM0UsT0FBZCxJQUF3QixXQUEzQixFQUNDMkUsT0FBTzNFLE9BQVAsR0FBZSxZQUFmO0FBQ0QsV0FBTzJFLE1BQVA7QUFDQSxJQVJELENBUUMsT0FBTWpDLEtBQU4sRUFBWTtBQUNab0MsWUFBUXBDLEtBQVIsQ0FBY0EsS0FBZDtBQUNBLFdBQU8sSUFBUDtBQUNBO0FBQ0Q7Ozs7OztBQXhNbUJqRSxXLENBQ2IwRixHLEdBQUksUztBQURTMUYsVyxDQUVibUQsSSxHQUFLLGlCO2tCQUZRbkQsVzs7SUEyTWYrRixpQjs7Ozs7Ozs7Ozs7aUNBQ1VPLEUsRUFBRztBQUNqQixPQUFHQSxHQUFHekYsSUFBSCxJQUFTLE1BQVQsS0FBb0J5RixHQUFHM0YsSUFBSCxDQUFRLENBQVIsS0FBWSxJQUFaLElBQW9CMkYsR0FBRzNGLElBQUgsQ0FBUSxDQUFSLEtBQVksSUFBcEQsQ0FBSCxFQUNDLENBREQsQ0FDRTtBQURGLFFBR0MsNElBQTRCMkYsRUFBNUI7QUFDRDs7OztFQU44QkMsc0IiLCJmaWxlIjoiZG9jdW1lbnQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgSlNaaXAgZnJvbSAnanN6aXAnXG5pbXBvcnQgY2hlZXIgZnJvbSBcImNoZWVyaW9cIlxuaW1wb3J0IFwiLi9jaGVlcmlvLWZuXCJcbmltcG9ydCB7UGFyc2VyLCBEb21IYW5kbGVyfSBmcm9tIFwiaHRtbHBhcnNlcjJcIlxuXG5jb25zdCBub3JtYWxpemU9cGF0aD0+cGF0aC5zcGxpdChcIi9cIikuZmlsdGVyKGE9PmEhPVwiLlwiKVxuXHQucmVkdWNlUmlnaHQoKG4sYSk9Pntcblx0XHRpZihhPT1cIi4uXCIpe1xuXHRcdFx0bi5yKytcblx0XHR9ZWxzZSBpZihuLnIpe1xuXHRcdFx0bi5yLS1cblx0XHR9ZWxzZXtcblx0XHRcdG4udHJpbWVkLnVuc2hpZnQoYSlcblx0XHR9XG5cdFx0cmV0dXJuIG5cblx0fSx7dHJpbWVkOltdLHI6MH0pLnRyaW1lZC5qb2luKFwiL1wiKVxuLyoqXG4gKiAgZG9jdW1lbnQgcGFyc2VyXG4gKlxuICogIEBleGFtcGxlXG4gKiAgRG9jdW1lbnQubG9hZChmaWxlKVxuICogIFx0LnRoZW4oZG9jPT5kb2MucGFyc2UoKSlcbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgWmlwRG9jdW1lbnR7XG5cdHN0YXRpYyBleHQ9XCJ1bmtub3duXCJcblx0c3RhdGljIG1pbWU9XCJhcHBsaWNhdGlvbi96aXBcIlxuXG5cdGNvbnN0cnVjdG9yKHBhcnRzLHJhdyxwcm9wcyl7XG5cdFx0dGhpcy5wYXJ0cz1wYXJ0c1xuXHRcdHRoaXMucmF3PXJhd1xuXHRcdHRoaXMucHJvcHM9cHJvcHNcblx0XHR0aGlzLl9zaG91bGRSZWxlYXNlZD1uZXcgTWFwKClcblx0fVxuXG5cdG5vcm1hbGl6ZVBhdGgoKXtcblx0XHRyZXR1cm4gbm9ybWFsaXplKC4uLmFyZ3VtZW50cylcblx0fVxuXG5cdGdldFBhcnQobmFtZSl7XG5cdFx0bmFtZT1ub3JtYWxpemUobmFtZSlcblx0XHRyZXR1cm4gdGhpcy5wYXJ0c1tuYW1lXVxuXHR9XG5cblx0Z2V0RGF0YVBhcnQobmFtZSl7XG5cdFx0bmFtZT1ub3JtYWxpemUobmFtZSlcblx0XHRsZXQgcGFydD10aGlzLnBhcnRzW25hbWVdXG5cdFx0bGV0IGNyYzMyPXBhcnQuX2RhdGEuY3JjMzJcblx0XHRsZXQgZGF0YT1wYXJ0LmFzVWludDhBcnJheSgpLy91bnNhZmUgY2FsbCwgcGFydC5fZGF0YSBpcyBjaGFuZ2VkXG5cdFx0ZGF0YS5jcmMzMj1wYXJ0Ll9kYXRhLmNyYzMyPWNyYzMyLy9zbyBrZWVwIGNyYzMyIG9uIHBhcnQuX2RhdGEgZm9yIGZ1dHVyZVxuXHRcdHJldHVybiBkYXRhXG5cdH1cblxuXHRnZXREYXRhUGFydEFzVXJsKG5hbWUsdHlwZT1cIiovKlwiKXtcblx0XHRuYW1lPW5vcm1hbGl6ZShuYW1lKVxuXHRcdGxldCBwYXJ0PXRoaXMucGFydHNbbmFtZV1cblx0XHRsZXQgY3JjMzI9cGFydC5fZGF0YS5jcmMzMlxuXHRcdGlmKCF0aGlzLl9zaG91bGRSZWxlYXNlZC5oYXMoY3JjMzIpKXtcblx0XHRcdHRoaXMuX3Nob3VsZFJlbGVhc2VkLnNldChjcmMzMixVUkwuY3JlYXRlT2JqZWN0VVJMKG5ldyBCbG9iKFt0aGlzLmdldERhdGFQYXJ0KG5hbWUpXSx7dHlwZX0pKSlcblx0XHR9XG5cdFx0cmV0dXJuIHRoaXMuX3Nob3VsZFJlbGVhc2VkLmdldChjcmMzMilcblx0fVxuXG5cdGdldFBhcnRDcmMzMihuYW1lKXtcblx0XHRuYW1lPW5vcm1hbGl6ZShuYW1lKVxuXHRcdGxldCBwYXJ0PXRoaXMucGFydHNbbmFtZV1cblx0XHRsZXQgY3JjMzI9cGFydC5fZGF0YS5jcmMzMlxuXHRcdHJldHVybiBjcmMzMlxuXHR9XG5cblx0cmVsZWFzZSgpe1xuXHRcdGZvcihsZXQgWywgdXJsXSBvZiB0aGlzLl9zaG91bGRSZWxlYXNlZCl7XG5cdFx0XHRVUkwucmV2b2tlT2JqZWN0VVJMKHVybClcblx0XHR9XG5cdH1cblxuXHRnZXRPYmplY3RQYXJ0KG5hbWUpe1xuXHRcdG5hbWU9bm9ybWFsaXplKG5hbWUpXG5cdFx0Y29uc3QgcGFydD10aGlzLnBhcnRzW25hbWVdXG5cdFx0aWYoIXBhcnQpXG5cdFx0XHRyZXR1cm4gbnVsbFxuXHRcdGVsc2UgaWYocGFydC5jaGVlcmlvKVxuXHRcdFx0cmV0dXJuIHBhcnRcblx0XHRlbHNle1xuXHRcdFx0Y29uc3QgJD1PYmplY3QuYXNzaWduKHRoaXMucGFydHNbbmFtZV09dGhpcy5jb25zdHJ1Y3Rvci5wYXJzZVhtbChwYXJ0LmFzVGV4dCgpKSx7cGFydDpuYW1lfSlcblx0XHRcdE9iamVjdC5hc3NpZ24oJC5yb290KClbMF0uYXR0cmlicyx7cGFydDpuYW1lfSlcblx0XHRcdCQucHJvdG90eXBlLnBhcnQ9KCk9Pm5hbWVcblx0XHRcdHJldHVybiAkXG5cdFx0fVxuXHR9XG5cblx0JChub2RlKXtcbiAgICAgICAgY29uc3Qgcm9vdD1hPT5hLnJvb3QgfHwgKGEucGFyZW50ICYmIHJvb3QoYS5wYXJlbnQpKVxuXHRcdHJldHVybiB0aGlzLmdldE9iamVjdFBhcnQocm9vdChub2RlKS5hdHRyaWJzLnBhcnQpKG5vZGUpXG4gICAgfVxuXG5cdHBhcnNlKGRvbUhhbmRsZXIpe1xuXG5cdH1cblxuXHRyZW5kZXIoKXtcblxuXHR9XG5cblx0c2VyaWFsaXplKCl7XG5cdFx0bGV0IG5ld0RvYz1uZXcgSlNaaXAoKVxuXHRcdE9iamVjdC5rZXlzKHRoaXMucGFydHMpLmZvckVhY2gocGF0aD0+e1xuXHRcdFx0bGV0IHBhcnQ9dGhpcy5wYXJ0c1twYXRoXVxuXHRcdFx0aWYocGFydC5jaGVlcmlvKXtcblx0XHRcdFx0bmV3RG9jLmZpbGUocGF0aCxwYXJ0LnhtbCgpKVxuXHRcdFx0fWVsc2V7XG5cdFx0XHRcdG5ld0RvYy5maWxlKHBhdGgscGFydC5fZGF0YSwgcGFydC5vcHRpb25zKVxuXHRcdFx0fVxuXHRcdH0pXG5cdFx0cmV0dXJuIG5ld0RvY1xuXHR9XG5cblx0c2F2ZShmaWxlLG9wdGlvbnMpe1xuXHRcdGZpbGU9ZmlsZXx8dGhpcy5wcm9wcy5uYW1lfHxgJHtEYXRlLm5vdygpfS5kb2N4YFxuXG5cdFx0bGV0IG5ld0RvYz10aGlzLnNlcmlhbGl6ZSgpXG5cblx0XHRpZih0eXBlb2YoZG9jdW1lbnQpIT1cInVuZGVmaW5lZFwiICYmIHdpbmRvdy5VUkwgJiYgd2luZG93LlVSTC5jcmVhdGVPYmplY3RVUkwpe1xuXHRcdFx0bGV0IGRhdGE9bmV3RG9jLmdlbmVyYXRlKHsuLi5vcHRpb25zLHR5cGU6XCJibG9iXCIsbWltZVR5cGU6dGhpcy5jb25zdHJ1Y3Rvci5taW1lfSlcblx0XHRcdGxldCB1cmwgPSB3aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTChkYXRhKVxuXHRcdFx0bGV0IGxpbmsgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiYVwiKTtcblx0XHRcdGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobGluaylcblx0XHRcdGxpbmsuZG93bmxvYWQgPSBmaWxlXG5cdFx0XHRsaW5rLmhyZWYgPSB1cmw7XG5cdFx0XHRsaW5rLmNsaWNrKClcblx0XHRcdGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQobGluaylcblx0XHRcdHdpbmRvdy5VUkwucmV2b2tlT2JqZWN0VVJMKHVybClcblx0XHR9ZWxzZXtcblx0XHRcdGxldCBkYXRhPW5ld0RvYy5nZW5lcmF0ZSh7Li4ub3B0aW9ucyx0eXBlOlwibm9kZWJ1ZmZlclwifSlcblx0XHRcdHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSxyZWplY3QpPT5cblx0XHRcdFx0cmVxdWlyZShcImZcIitcInNcIikud3JpdGVGaWxlKGZpbGUsZGF0YSxlcnJvcj0+e1xuXHRcdFx0XHRcdGVycm9yID8gcmVqZWN0KGVycm9yKSA6IHJlc29sdmUoZGF0YSlcblx0XHRcdFx0fSlcblx0XHRcdClcblx0XHR9XG5cdH1cblxuXHRjbG9uZSgpe1xuXHRcdGxldCB6aXA9bmV3IEpTWmlwKClcblx0XHRsZXQgcHJvcHM9IHByb3BzID8gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh0aGlzLnByb3BzKSkgOiBwcm9wc1xuXHRcdGxldCBwYXJ0cz1PYmplY3Qua2V5cyh0aGlzLnBhcnRzKS5yZWR1Y2UoKHN0YXRlLCBrKT0+e1xuXHRcdFx0bGV0IHY9dGhpcy5wYXJ0c1trXVxuXHRcdFx0aWYodi5jaGVlcmlvKXtcblx0XHRcdFx0emlwLmZpbGUodi5uYW1lLHYueG1sKCksdi5vcHRpb25zKVxuXHRcdFx0XHRzdGF0ZVtrXT16aXAuZmlsZSh2Lm5hbWUpXG5cdFx0XHR9ZWxzZXtcblx0XHRcdFx0emlwLmZpbGUodi5uYW1lLHYuX2RhdGEsdi5vcHRpb25zKVxuXHRcdFx0XHRzdGF0ZVtrXT16aXAuZmlsZSh2Lm5hbWUpXG5cdFx0XHR9XG5cdFx0XHRyZXR1cm4gc3RhdGVcblx0XHR9LHt9KVxuXHRcdHJldHVybiBuZXcgdGhpcy5jb25zdHJ1Y3RvcihwYXJ0cyx6aXAsIHByb3BzKVxuXHR9XG5cblx0LyoqXG5cdCAqICBhIGhlbHBlciB0byBsb2FkIGRvY3VtZW50IGZpbGVcblxuXHQgKiAgQHBhcmFtIGlucHV0RmlsZSB7RmlsZX0gLSBhIGh0bWwgaW5wdXQgZmlsZSwgb3Igbm9kZWpzIGZpbGVcblx0ICogIEByZXR1cm4ge1Byb21pc2V9XG5cdCAqL1xuXG5cdHN0YXRpYyBsb2FkKGlucHV0RmlsZSl7XG5cdFx0Y29uc3QgRG9jdW1lbnRTZWxmPXRoaXNcblxuXHRcdGlmKGlucHV0RmlsZSBpbnN0YW5jZW9mIFppcERvY3VtZW50KVxuXHRcdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZShpbnB1dEZpbGUpXG5cblx0XHRyZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCk9Pntcblx0XHRcdGZ1bmN0aW9uIHBhcnNlKGRhdGEsIHByb3BzPXt9KXtcblx0XHRcdFx0dHJ5e1xuXHRcdFx0XHRcdGxldCByYXc9bmV3IEpTWmlwKGRhdGEpLHBhcnRzPXt9XG5cdFx0XHRcdFx0cmF3LmZpbHRlcigocGF0aCxmaWxlKT0+cGFydHNbcGF0aF09ZmlsZSlcblx0XHRcdFx0XHRyZXNvbHZlKG5ldyBEb2N1bWVudFNlbGYocGFydHMscmF3LHByb3BzKSlcblx0XHRcdFx0fWNhdGNoKGVycm9yKXtcblx0XHRcdFx0XHRyZWplY3QoZXJyb3IpXG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0aWYodHlwZW9mIGlucHV0RmlsZT09J3N0cmluZycpey8vZmlsZSBuYW1lXG5cdFx0XHRcdHJlcXVpcmUoJ2ZzJykucmVhZEZpbGUoaW5wdXRGaWxlLGZ1bmN0aW9uKGVycm9yLCBkYXRhKXtcblx0XHRcdFx0XHRpZihlcnJvcilcblx0XHRcdFx0XHRcdHJlamVjdChlcnJvcik7XG5cdFx0XHRcdFx0ZWxzZSBpZihkYXRhKXtcblx0XHRcdFx0XHRcdHBhcnNlKGRhdGEsIHtuYW1lOmlucHV0RmlsZS5zcGxpdCgvW1xcL1xcXFxdLykucG9wKCkucmVwbGFjZSgvXFwuZG9jeCQvaSwnJyl9KVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSlcblx0XHRcdH1lbHNlIGlmKGlucHV0RmlsZSBpbnN0YW5jZW9mIEJsb2Ipe1xuXHRcdFx0XHR2YXIgcmVhZGVyPW5ldyBGaWxlUmVhZGVyKCk7XG5cdFx0XHRcdHJlYWRlci5vbmxvYWQ9ZnVuY3Rpb24oZSl7XG5cdFx0XHRcdFx0cGFyc2UoZS50YXJnZXQucmVzdWx0LCAoaW5wdXRGaWxlLm5hbWUgPyB7XG5cdFx0XHRcdFx0XHRcdG5hbWU6aW5wdXRGaWxlLm5hbWUucmVwbGFjZSgvXFwuZG9jeCQvaSwnJyksXG5cdFx0XHRcdFx0XHRcdGxhc3RNb2RpZmllZDppbnB1dEZpbGUubGFzdE1vZGlmaWVkLFxuXHRcdFx0XHRcdFx0XHRzaXplOmlucHV0RmlsZS5zaXplXG5cdFx0XHRcdFx0XHR9IDoge3NpemU6aW5wdXRGaWxlLnNpemV9KSlcblx0XHRcdFx0fVxuXHRcdFx0XHRyZWFkZXIucmVhZEFzQXJyYXlCdWZmZXIoaW5wdXRGaWxlKTtcblx0XHRcdH1lbHNlIHtcblx0XHRcdFx0cGFyc2UoaW5wdXRGaWxlKVxuXHRcdFx0fVxuXHRcdH0pXG5cdH1cblxuXHRzdGF0aWMgY3JlYXRlKCl7XG5cdFx0cmV0dXJuIHRoaXMubG9hZChgJHtfX2Rpcm5hbWV9Ly4uL3RlbXBsYXRlcy9ibGFuay4ke3RoaXMuZXh0fWApXG5cdH1cblxuXHRzdGF0aWMgcGFyc2VYbWwoZGF0YSl7XG5cdFx0dHJ5e1xuXHRcdFx0bGV0IG9wdD17eG1sTW9kZTp0cnVlLGRlY29kZUVudGl0aWVzOiBmYWxzZX1cblx0XHRcdGxldCBoYW5kbGVyPW5ldyBDb250ZW50RG9tSGFuZGxlcihvcHQpXG5cdFx0XHRuZXcgUGFyc2VyKGhhbmRsZXIsb3B0KS5lbmQoZGF0YSlcblx0XHRcdGxldCBwYXJzZWQ9Y2hlZXIubG9hZChoYW5kbGVyLmRvbSxvcHQpXG5cdFx0XHRpZih0eXBlb2YocGFyc2VkLmNoZWVyaW8pPT1cInVuZGVmaW5lZFwiKVxuXHRcdFx0XHRwYXJzZWQuY2hlZXJpbz1cImN1c3RvbWl6ZWRcIlxuXHRcdFx0cmV0dXJuIHBhcnNlZFxuXHRcdH1jYXRjaChlcnJvcil7XG5cdFx0XHRjb25zb2xlLmVycm9yKGVycm9yKVxuXHRcdFx0cmV0dXJuIG51bGxcblx0XHR9XG5cdH1cbn1cblxuY2xhc3MgQ29udGVudERvbUhhbmRsZXIgZXh0ZW5kcyBEb21IYW5kbGVye1xuXHRfYWRkRG9tRWxlbWVudChlbCl7XG5cdFx0aWYoZWwudHlwZT09XCJ0ZXh0XCIgJiYgKGVsLmRhdGFbMF09PSdcXHInIHx8IGVsLmRhdGFbMF09PSdcXG4nKSlcblx0XHRcdDsvL3JlbW92ZSBmb3JtYXQgd2hpdGVzcGFjZXNcblx0XHRlbHNlXG5cdFx0XHRyZXR1cm4gc3VwZXIuX2FkZERvbUVsZW1lbnQoZWwpXG5cdH1cbn1cbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kb2N1bWVudC5qcyJdLCJuYW1lcyI6WyJub3JtYWxpemUiLCJwYXRoIiwic3BsaXQiLCJmaWx0ZXIiLCJhIiwicmVkdWNlUmlnaHQiLCJuIiwiciIsInRyaW1lZCIsInVuc2hpZnQiLCJqb2luIiwiWmlwRG9jdW1lbnQiLCJwYXJ0cyIsInJhdyIsInByb3BzIiwiX3Nob3VsZFJlbGVhc2VkIiwiTWFwIiwiYXJndW1lbnRzIiwibmFtZSIsInBhcnQiLCJjcmMzMiIsIl9kYXRhIiwiZGF0YSIsImFzVWludDhBcnJheSIsInR5cGUiLCJoYXMiLCJzZXQiLCJVUkwiLCJjcmVhdGVPYmplY3RVUkwiLCJCbG9iIiwiZ2V0RGF0YVBhcnQiLCJnZXQiLCJ1cmwiLCJyZXZva2VPYmplY3RVUkwiLCJjaGVlcmlvIiwiJCIsIk9iamVjdCIsImFzc2lnbiIsImNvbnN0cnVjdG9yIiwicGFyc2VYbWwiLCJhc1RleHQiLCJyb290IiwiYXR0cmlicyIsInByb3RvdHlwZSIsIm5vZGUiLCJwYXJlbnQiLCJnZXRPYmplY3RQYXJ0IiwiZG9tSGFuZGxlciIsIm5ld0RvYyIsImtleXMiLCJmb3JFYWNoIiwiZmlsZSIsInhtbCIsIm9wdGlvbnMiLCJEYXRlIiwibm93Iiwic2VyaWFsaXplIiwiZG9jdW1lbnQiLCJ3aW5kb3ciLCJnZW5lcmF0ZSIsIm1pbWVUeXBlIiwibWltZSIsImxpbmsiLCJjcmVhdGVFbGVtZW50IiwiYm9keSIsImFwcGVuZENoaWxkIiwiZG93bmxvYWQiLCJocmVmIiwiY2xpY2siLCJyZW1vdmVDaGlsZCIsIlByb21pc2UiLCJyZXNvbHZlIiwicmVqZWN0IiwicmVxdWlyZSIsIndyaXRlRmlsZSIsImVycm9yIiwiemlwIiwiSlNPTiIsInBhcnNlIiwic3RyaW5naWZ5IiwicmVkdWNlIiwic3RhdGUiLCJrIiwidiIsImlucHV0RmlsZSIsIkRvY3VtZW50U2VsZiIsInJlYWRGaWxlIiwicG9wIiwicmVwbGFjZSIsInJlYWRlciIsIkZpbGVSZWFkZXIiLCJvbmxvYWQiLCJlIiwidGFyZ2V0IiwicmVzdWx0IiwibGFzdE1vZGlmaWVkIiwic2l6ZSIsInJlYWRBc0FycmF5QnVmZmVyIiwibG9hZCIsIl9fZGlybmFtZSIsImV4dCIsIm9wdCIsInhtbE1vZGUiLCJkZWNvZGVFbnRpdGllcyIsImhhbmRsZXIiLCJDb250ZW50RG9tSGFuZGxlciIsImVuZCIsInBhcnNlZCIsImRvbSIsImNvbnNvbGUiLCJlbCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOzs7O0FBQ0E7Ozs7QUFDQTs7QUFDQTs7Ozs7Ozs7OztBQUVBLElBQU1BLFlBQVUsU0FBVkEsU0FBVTtBQUFBLFFBQU1DLEtBQUtDLEtBQUwsQ0FBVyxHQUFYLEVBQWdCQyxNQUFoQixDQUF1QjtBQUFBLFNBQUdDLEtBQUcsR0FBTjtBQUFBLEVBQXZCLEVBQ3BCQyxXQURvQixDQUNSLFVBQUNDLENBQUQsRUFBR0YsQ0FBSCxFQUFPO0FBQ25CLE1BQUdBLEtBQUcsSUFBTixFQUFXO0FBQ1ZFLEtBQUVDLENBQUY7QUFDQSxHQUZELE1BRU0sSUFBR0QsRUFBRUMsQ0FBTCxFQUFPO0FBQ1pELEtBQUVDLENBQUY7QUFDQSxHQUZLLE1BRUQ7QUFDSkQsS0FBRUUsTUFBRixDQUFTQyxPQUFULENBQWlCTCxDQUFqQjtBQUNBO0FBQ0QsU0FBT0UsQ0FBUDtBQUNBLEVBVm9CLEVBVW5CLEVBQUNFLFFBQU8sRUFBUixFQUFXRCxHQUFFLENBQWIsRUFWbUIsRUFVRkMsTUFWRSxDQVVLRSxJQVZMLENBVVUsR0FWVixDQUFOO0FBQUEsQ0FBaEI7QUFXQTs7Ozs7Ozs7SUFPcUJDLFc7QUFJcEIsc0JBQVlDLEtBQVosRUFBa0JDLEdBQWxCLEVBQXNCQyxLQUF0QixFQUE0QjtBQUFBOztBQUMzQixPQUFLRixLQUFMLEdBQVdBLEtBQVg7QUFDQSxPQUFLQyxHQUFMLEdBQVNBLEdBQVQ7QUFDQSxPQUFLQyxLQUFMLEdBQVdBLEtBQVg7QUFDQSxPQUFLQyxlQUFMLEdBQXFCLElBQUlDLEdBQUosRUFBckI7QUFDQTs7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RUFBY0MsZ0JBQWdCLEtBQTlCLEVBQVI7QUFDQSxRQUFJQyxVQUFRLElBQUlDLGlCQUFKLENBQXNCSixHQUF0QixDQUFaO0FBQ0EsMkJBQVdHLE9BQVgsRUFBbUJILEdBQW5CLEVBQXdCSyxHQUF4QixDQUE0QnBGLElBQTVCO0FBQ0EsUUFBSXFGLFNBQU8sa0JBQU1ULElBQU4sQ0FBV00sUUFBUUksR0FBbkIsRUFBdUJQLEdBQXZCLENBQVg7QUFDQSxRQUFHLE9BQU9NLE9BQU96RSxPQUFkLElBQXdCLFdBQTNCLEVBQ0N5RSxPQUFPekUsT0FBUCxHQUFlLFlBQWY7QUFDRCxXQUFPeUUsTUFBUDtBQUNBLElBUkQsQ0FRQyxPQUFNaEMsS0FBTixFQUFZO0FBQ1prQyxZQUFRbEMsS0FBUixDQUFjQSxLQUFkO0FBQ0EsV0FBTyxJQUFQO0FBQ0E7QUFDRDs7Ozs7O0FBeE1tQmhFLFcsQ0FDYnlGLEcsR0FBSSxTO0FBRFN6RixXLENBRWJrRCxJLEdBQUssaUI7a0JBRlFsRCxXOztJQTJNZjhGLGlCOzs7Ozs7Ozs7OztpQ0FDVUssRSxFQUFHO0FBQ2pCLE9BQUdBLEdBQUd0RixJQUFILElBQVMsTUFBVCxLQUFvQnNGLEdBQUd4RixJQUFILENBQVEsQ0FBUixLQUFZLElBQVosSUFBb0J3RixHQUFHeEYsSUFBSCxDQUFRLENBQVIsS0FBWSxJQUFwRCxDQUFILEVBQ0MsQ0FERCxDQUNFO0FBREYsUUFHQyw0SUFBNEJ3RixFQUE1QjtBQUNEIiwiZmlsZSI6ImRvY3VtZW50LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEpTWmlwIGZyb20gJ2pzemlwJ1xuaW1wb3J0IGNoZWVyIGZyb20gXCJjaGVlcmlvXCJcbmltcG9ydCBcIi4vY2hlZXJpby1mblwiXG5pbXBvcnQge1BhcnNlciwgRG9tSGFuZGxlcn0gZnJvbSBcImh0bWxwYXJzZXIyXCJcblxuY29uc3Qgbm9ybWFsaXplPXBhdGg9PnBhdGguc3BsaXQoXCIvXCIpLmZpbHRlcihhPT5hIT1cIi5cIilcblx0LnJlZHVjZVJpZ2h0KChuLGEpPT57XG5cdFx0aWYoYT09XCIuLlwiKXtcblx0XHRcdG4ucisrXG5cdFx0fWVsc2UgaWYobi5yKXtcblx0XHRcdG4uci0tXG5cdFx0fWVsc2V7XG5cdFx0XHRuLnRyaW1lZC51bnNoaWZ0KGEpXG5cdFx0fVxuXHRcdHJldHVybiBuXG5cdH0se3RyaW1lZDpbXSxyOjB9KS50cmltZWQuam9pbihcIi9cIilcbi8qKlxuICogIGRvY3VtZW50IHBhcnNlclxuICpcbiAqICBAZXhhbXBsZVxuICogIERvY3VtZW50LmxvYWQoZmlsZSlcbiAqICBcdC50aGVuKGRvYz0+ZG9jLnBhcnNlKCkpXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFppcERvY3VtZW50e1xuXHRzdGF0aWMgZXh0PVwidW5rbm93blwiXG5cdHN0YXRpYyBtaW1lPVwiYXBwbGljYXRpb24vemlwXCJcblxuXHRjb25zdHJ1Y3RvcihwYXJ0cyxyYXcscHJvcHMpe1xuXHRcdHRoaXMucGFydHM9cGFydHNcblx0XHR0aGlzLnJhdz1yYXdcblx0XHR0aGlzLnByb3BzPXByb3BzXG5cdFx0dGhpcy5fc2hvdWxkUmVsZWFzZWQ9bmV3IE1hcCgpXG5cdH1cblxuXHRub3JtYWxpemVQYXRoKCl7XG5cdFx0cmV0dXJuIG5vcm1hbGl6ZSguLi5hcmd1bWVudHMpXG5cdH1cblxuXHRnZXRQYXJ0KG5hbWUpe1xuXHRcdG5hbWU9bm9ybWFsaXplKG5hbWUpXG5cdFx0cmV0dXJuIHRoaXMucGFydHNbbmFtZV1cblx0fVxuXG5cdGdldERhdGFQYXJ0KG5hbWUpe1xuXHRcdG5hbWU9bm9ybWFsaXplKG5hbWUpXG5cdFx0bGV0IHBhcnQ9dGhpcy5wYXJ0c1tuYW1lXVxuXHRcdGxldCBjcmMzMj1wYXJ0Ll9kYXRhLmNyYzMyXG5cdFx0bGV0IGRhdGE9cGFydC5hc1VpbnQ4QXJyYXkoKS8vdW5zYWZlIGNhbGwsIHBhcnQuX2RhdGEgaXMgY2hhbmdlZFxuXHRcdGRhdGEuY3JjMzI9cGFydC5fZGF0YS5jcmMzMj1jcmMzMi8vc28ga2VlcCBjcmMzMiBvbiBwYXJ0Ll9kYXRhIGZvciBmdXR1cmVcblx0XHRyZXR1cm4gZGF0YVxuXHR9XG5cblx0Z2V0RGF0YVBhcnRBc1VybChuYW1lLHR5cGU9XCIqLypcIil7XG5cdFx0bmFtZT1ub3JtYWxpemUobmFtZSlcblx0XHRsZXQgcGFydD10aGlzLnBhcnRzW25hbWVdXG5cdFx0bGV0IGNyYzMyPXBhcnQuX2RhdGEuY3JjMzJcblx0XHRpZighdGhpcy5fc2hvdWxkUmVsZWFzZWQuaGFzKGNyYzMyKSl7XG5cdFx0XHR0aGlzLl9zaG91bGRSZWxlYXNlZC5zZXQoY3JjMzIsVVJMLmNyZWF0ZU9iamVjdFVSTChuZXcgQmxvYihbdGhpcy5nZXREYXRhUGFydChuYW1lKV0se3R5cGV9KSkpXG5cdFx0fVxuXHRcdHJldHVybiB0aGlzLl9zaG91bGRSZWxlYXNlZC5nZXQoY3JjMzIpXG5cdH1cblxuXHRnZXRQYXJ0Q3JjMzIobmFtZSl7XG5cdFx0bmFtZT1ub3JtYWxpemUobmFtZSlcblx0XHRsZXQgcGFydD10aGlzLnBhcnRzW25hbWVdXG5cdFx0bGV0IGNyYzMyPXBhcnQuX2RhdGEuY3JjMzJcblx0XHRyZXR1cm4gY3JjMzJcblx0fVxuXG5cdHJlbGVhc2UoKXtcblx0XHRmb3IobGV0IFssIHVybF0gb2YgdGhpcy5fc2hvdWxkUmVsZWFzZWQpe1xuXHRcdFx0VVJMLnJldm9rZU9iamVjdFVSTCh1cmwpXG5cdFx0fVxuXHR9XG5cblx0Z2V0T2JqZWN0UGFydChuYW1lKXtcblx0XHRuYW1lPW5vcm1hbGl6ZShuYW1lKVxuXHRcdGNvbnN0IHBhcnQ9dGhpcy5wYXJ0c1tuYW1lXVxuXHRcdGlmKCFwYXJ0KVxuXHRcdFx0cmV0dXJuIG51bGxcblx0XHRlbHNlIGlmKHBhcnQuY2hlZXJpbylcblx0XHRcdHJldHVybiBwYXJ0XG5cdFx0ZWxzZXtcblx0XHRcdGNvbnN0ICQ9T2JqZWN0LmFzc2lnbih0aGlzLnBhcnRzW25hbWVdPXRoaXMuY29uc3RydWN0b3IucGFyc2VYbWwocGFydC5hc1RleHQoKSkse3BhcnQ6bmFtZX0pXG5cdFx0XHRPYmplY3QuYXNzaWduKCQucm9vdCgpWzBdLmF0dHJpYnMse3BhcnQ6bmFtZX0pXG5cdFx0XHQkLnByb3RvdHlwZS5wYXJ0PSgpPT5uYW1lXG5cdFx0XHRyZXR1cm4gJFxuXHRcdH1cblx0fVxuXG5cdCQobm9kZSl7XG4gICAgICAgIGNvbnN0IHJvb3Q9YT0+YS5yb290IHx8IChhLnBhcmVudCAmJiByb290KGEucGFyZW50KSlcblx0XHRyZXR1cm4gdGhpcy5nZXRPYmplY3RQYXJ0KHJvb3Qobm9kZSkuYXR0cmlicy5wYXJ0KShub2RlKVxuICAgIH1cblxuXHRwYXJzZShkb21IYW5kbGVyKXtcblxuXHR9XG5cblx0cmVuZGVyKCl7XG5cblx0fVxuXG5cdHNlcmlhbGl6ZSgpe1xuXHRcdGxldCBuZXdEb2M9bmV3IEpTWmlwKClcblx0XHRPYmplY3Qua2V5cyh0aGlzLnBhcnRzKS5mb3JFYWNoKHBhdGg9Pntcblx0XHRcdGxldCBwYXJ0PXRoaXMucGFydHNbcGF0aF1cblx0XHRcdGlmKHBhcnQuY2hlZXJpbyl7XG5cdFx0XHRcdG5ld0RvYy5maWxlKHBhdGgscGFydC54bWwoKSlcblx0XHRcdH1lbHNle1xuXHRcdFx0XHRuZXdEb2MuZmlsZShwYXRoLHBhcnQuX2RhdGEsIHBhcnQub3B0aW9ucylcblx0XHRcdH1cblx0XHR9KVxuXHRcdHJldHVybiBuZXdEb2Ncblx0fVxuXG5cdHNhdmUoZmlsZSxvcHRpb25zKXtcblx0XHRmaWxlPWZpbGV8fHRoaXMucHJvcHMubmFtZXx8YCR7RGF0ZS5ub3coKX0uZG9jeGBcblxuXHRcdGxldCBuZXdEb2M9dGhpcy5zZXJpYWxpemUoKVxuXG5cdFx0aWYodHlwZW9mKGRvY3VtZW50KSE9XCJ1bmRlZmluZWRcIiAmJiB3aW5kb3cuVVJMICYmIHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKXtcblx0XHRcdGxldCBkYXRhPW5ld0RvYy5nZW5lcmF0ZSh7Li4ub3B0aW9ucyx0eXBlOlwiYmxvYlwiLG1pbWVUeXBlOnRoaXMuY29uc3RydWN0b3IubWltZX0pXG5cdFx0XHRsZXQgdXJsID0gd2luZG93LlVSTC5jcmVhdGVPYmplY3RVUkwoZGF0YSlcblx0XHRcdGxldCBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImFcIik7XG5cdFx0XHRkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGxpbmspXG5cdFx0XHRsaW5rLmRvd25sb2FkID0gZmlsZVxuXHRcdFx0bGluay5ocmVmID0gdXJsO1xuXHRcdFx0bGluay5jbGljaygpXG5cdFx0XHRkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGxpbmspXG5cdFx0XHR3aW5kb3cuVVJMLnJldm9rZU9iamVjdFVSTCh1cmwpXG5cdFx0fWVsc2V7XG5cdFx0XHRsZXQgZGF0YT1uZXdEb2MuZ2VuZXJhdGUoey4uLm9wdGlvbnMsdHlwZTpcIm5vZGVidWZmZXJcIn0pXG5cdFx0XHRyZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUscmVqZWN0KT0+XG5cdFx0XHRcdHJlcXVpcmUoXCJmXCIrXCJzXCIpLndyaXRlRmlsZShmaWxlLGRhdGEsZXJyb3I9Pntcblx0XHRcdFx0XHRlcnJvciA/IHJlamVjdChlcnJvcikgOiByZXNvbHZlKGRhdGEpXG5cdFx0XHRcdH0pXG5cdFx0XHQpXG5cdFx0fVxuXHR9XG5cblx0Y2xvbmUoKXtcblx0XHRsZXQgemlwPW5ldyBKU1ppcCgpXG5cdFx0bGV0IHByb3BzPSBwcm9wcyA/IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy5wcm9wcykpIDogcHJvcHNcblx0XHRsZXQgcGFydHM9T2JqZWN0LmtleXModGhpcy5wYXJ0cykucmVkdWNlKChzdGF0ZSwgayk9Pntcblx0XHRcdGxldCB2PXRoaXMucGFydHNba11cblx0XHRcdGlmKHYuY2hlZXJpbyl7XG5cdFx0XHRcdHppcC5maWxlKHYubmFtZSx2LnhtbCgpLHYub3B0aW9ucylcblx0XHRcdFx0c3RhdGVba109emlwLmZpbGUodi5uYW1lKVxuXHRcdFx0fWVsc2V7XG5cdFx0XHRcdHppcC5maWxlKHYubmFtZSx2Ll9kYXRhLHYub3B0aW9ucylcblx0XHRcdFx0c3RhdGVba109emlwLmZpbGUodi5uYW1lKVxuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIHN0YXRlXG5cdFx0fSx7fSlcblx0XHRyZXR1cm4gbmV3IHRoaXMuY29uc3RydWN0b3IocGFydHMsemlwLCBwcm9wcylcblx0fVxuXG5cdC8qKlxuXHQgKiAgYSBoZWxwZXIgdG8gbG9hZCBkb2N1bWVudCBmaWxlXG5cblx0ICogIEBwYXJhbSBpbnB1dEZpbGUge0ZpbGV9IC0gYSBodG1sIGlucHV0IGZpbGUsIG9yIG5vZGVqcyBmaWxlXG5cdCAqICBAcmV0dXJuIHtQcm9taXNlfVxuXHQgKi9cblxuXHRzdGF0aWMgbG9hZChpbnB1dEZpbGUpe1xuXHRcdGNvbnN0IERvY3VtZW50U2VsZj10aGlzXG5cblx0XHRpZihpbnB1dEZpbGUgaW5zdGFuY2VvZiBaaXBEb2N1bWVudClcblx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoaW5wdXRGaWxlKVxuXG5cdFx0cmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpPT57XG5cdFx0XHRmdW5jdGlvbiBwYXJzZShkYXRhLCBwcm9wcz17fSl7XG5cdFx0XHRcdHRyeXtcblx0XHRcdFx0XHRsZXQgcmF3PW5ldyBKU1ppcChkYXRhKSxwYXJ0cz17fVxuXHRcdFx0XHRcdHJhdy5maWx0ZXIoKHBhdGgsZmlsZSk9PnBhcnRzW3BhdGhdPWZpbGUpXG5cdFx0XHRcdFx0cmVzb2x2ZShuZXcgRG9jdW1lbnRTZWxmKHBhcnRzLHJhdyxwcm9wcykpXG5cdFx0XHRcdH1jYXRjaChlcnJvcil7XG5cdFx0XHRcdFx0cmVqZWN0KGVycm9yKVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdGlmKHR5cGVvZiBpbnB1dEZpbGU9PSdzdHJpbmcnKXsvL2ZpbGUgbmFtZVxuXHRcdFx0XHRyZXF1aXJlKCdmcycpLnJlYWRGaWxlKGlucHV0RmlsZSxmdW5jdGlvbihlcnJvciwgZGF0YSl7XG5cdFx0XHRcdFx0aWYoZXJyb3IpXG5cdFx0XHRcdFx0XHRyZWplY3QoZXJyb3IpO1xuXHRcdFx0XHRcdGVsc2UgaWYoZGF0YSl7XG5cdFx0XHRcdFx0XHRwYXJzZShkYXRhLCB7bmFtZTppbnB1dEZpbGUuc3BsaXQoL1tcXC9cXFxcXS8pLnBvcCgpLnJlcGxhY2UoL1xcLmRvY3gkL2ksJycpfSlcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pXG5cdFx0XHR9ZWxzZSBpZihpbnB1dEZpbGUgaW5zdGFuY2VvZiBCbG9iKXtcblx0XHRcdFx0dmFyIHJlYWRlcj1uZXcgRmlsZVJlYWRlcigpO1xuXHRcdFx0XHRyZWFkZXIub25sb2FkPWZ1bmN0aW9uKGUpe1xuXHRcdFx0XHRcdHBhcnNlKGUudGFyZ2V0LnJlc3VsdCwgKGlucHV0RmlsZS5uYW1lID8ge1xuXHRcdFx0XHRcdFx0XHRuYW1lOmlucHV0RmlsZS5uYW1lLnJlcGxhY2UoL1xcLmRvY3gkL2ksJycpLFxuXHRcdFx0XHRcdFx0XHRsYXN0TW9kaWZpZWQ6aW5wdXRGaWxlLmxhc3RNb2RpZmllZCxcblx0XHRcdFx0XHRcdFx0c2l6ZTppbnB1dEZpbGUuc2l6ZVxuXHRcdFx0XHRcdFx0fSA6IHtzaXplOmlucHV0RmlsZS5zaXplfSkpXG5cdFx0XHRcdH1cblx0XHRcdFx0cmVhZGVyLnJlYWRBc0FycmF5QnVmZmVyKGlucHV0RmlsZSk7XG5cdFx0XHR9ZWxzZSB7XG5cdFx0XHRcdHBhcnNlKGlucHV0RmlsZSlcblx0XHRcdH1cblx0XHR9KVxuXHR9XG5cblx0c3RhdGljIGNyZWF0ZSgpe1xuXHRcdHJldHVybiB0aGlzLmxvYWQoYCR7X19kaXJuYW1lfS8uLi90ZW1wbGF0ZXMvYmxhbmsuJHt0aGlzLmV4dH1gKVxuXHR9XG5cblx0c3RhdGljIHBhcnNlWG1sKGRhdGEpe1xuXHRcdHRyeXtcblx0XHRcdGxldCBvcHQ9e3htbE1vZGU6dHJ1ZSxkZWNvZGVFbnRpdGllczogZmFsc2V9XG5cdFx0XHRsZXQgaGFuZGxlcj1uZXcgQ29udGVudERvbUhhbmRsZXIob3B0KVxuXHRcdFx0bmV3IFBhcnNlcihoYW5kbGVyLG9wdCkuZW5kKGRhdGEpXG5cdFx0XHRsZXQgcGFyc2VkPWNoZWVyLmxvYWQoaGFuZGxlci5kb20sb3B0KVxuXHRcdFx0aWYodHlwZW9mKHBhcnNlZC5jaGVlcmlvKT09XCJ1bmRlZmluZWRcIilcblx0XHRcdFx0cGFyc2VkLmNoZWVyaW89XCJjdXN0b21pemVkXCJcblx0XHRcdHJldHVybiBwYXJzZWRcblx0XHR9Y2F0Y2goZXJyb3Ipe1xuXHRcdFx0Y29uc29sZS5lcnJvcihlcnJvcilcblx0XHRcdHJldHVybiBudWxsXG5cdFx0fVxuXHR9XG59XG5cbmNsYXNzIENvbnRlbnREb21IYW5kbGVyIGV4dGVuZHMgRG9tSGFuZGxlcntcblx0X2FkZERvbUVsZW1lbnQoZWwpe1xuXHRcdGlmKGVsLnR5cGU9PVwidGV4dFwiICYmIChlbC5kYXRhWzBdPT0nXFxyJyB8fCBlbC5kYXRhWzBdPT0nXFxuJykpXG5cdFx0XHQ7Ly9yZW1vdmUgZm9ybWF0IHdoaXRlc3BhY2VzXG5cdFx0ZWxzZVxuXHRcdFx0cmV0dXJuIHN1cGVyLl9hZGREb21FbGVtZW50KGVsKVxuXHR9XG59XG4iXX0= \ No newline at end of file diff --git a/lib/index.js b/lib/index.js index d678525..059e100 100644 --- a/lib/index.js +++ b/lib/index.js @@ -43,4 +43,4 @@ exports.drawml = _drawml2.default; exports.Part = _part2.default; exports.Document = _document8.default; exports.OfficeDocument = _officeDocument2.default; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6WyJkb2N4IiwicHB0eCIsInhsc3giLCJkcmF3bWwiLCJQYXJ0IiwiRG9jdW1lbnQiLCJPZmZpY2VEb2N1bWVudCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7O0FBRUE7Ozs7QUFDQTs7OztBQUNBOzs7Ozs7a0JBRWVBLGtCO1FBR1hBLEksR0FBQUEsa0I7UUFBS0MsSSxHQUFBQSxrQjtRQUFLQyxJLEdBQUFBLGtCO1FBQUtDLE0sR0FBQUEsZ0I7UUFDZkMsSSxHQUFBQSxjO1FBQU1DLFEsR0FBQUEsa0I7UUFBVUMsYyxHQUFBQSx3QiIsImZpbGUiOiJpbmRleC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBkb2N4IGZyb20gXCIuL29wZW54bWwvZG9jeC9kb2N1bWVudFwiXHJcbmltcG9ydCBwcHR4IGZyb20gXCIuL29wZW54bWwvcHB0eC9kb2N1bWVudFwiXHJcbmltcG9ydCB4bHN4IGZyb20gXCIuL29wZW54bWwveGxzeC9kb2N1bWVudFwiXHJcbmltcG9ydCBkcmF3bWwgZnJvbSBcIi4vb3BlbnhtbC9kcmF3bWxcIlxyXG5cclxuaW1wb3J0IERvY3VtZW50IGZyb20gXCIuL29wZW54bWwvZG9jdW1lbnRcIlxyXG5pbXBvcnQgUGFydCBmcm9tIFwiLi9vcGVueG1sL3BhcnRcIlxyXG5pbXBvcnQgT2ZmaWNlRG9jdW1lbnQgZnJvbSBcIi4vb3BlbnhtbC9vZmZpY2VEb2N1bWVudFwiXHJcblxyXG5leHBvcnQgZGVmYXVsdCBkb2N4XHJcblxyXG5leHBvcnQge1xyXG4gICAgZG9jeCxwcHR4LHhsc3gsZHJhd21sLFxyXG4gICAgUGFydCwgRG9jdW1lbnQsIE9mZmljZURvY3VtZW50XHJcbn1cclxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6WyJkb2N4IiwicHB0eCIsInhsc3giLCJkcmF3bWwiLCJQYXJ0IiwiRG9jdW1lbnQiLCJPZmZpY2VEb2N1bWVudCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7O0FBRUE7Ozs7QUFDQTs7OztBQUNBOzs7Ozs7O1FBS0lBLEk7UUFBS0MsSTtRQUFLQyxJO1FBQUtDLE07UUFDZkMsSTtRQUFNQyxRO1FBQVVDLGMiLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZG9jeCBmcm9tIFwiLi9vcGVueG1sL2RvY3gvZG9jdW1lbnRcIlxyXG5pbXBvcnQgcHB0eCBmcm9tIFwiLi9vcGVueG1sL3BwdHgvZG9jdW1lbnRcIlxyXG5pbXBvcnQgeGxzeCBmcm9tIFwiLi9vcGVueG1sL3hsc3gvZG9jdW1lbnRcIlxyXG5pbXBvcnQgZHJhd21sIGZyb20gXCIuL29wZW54bWwvZHJhd21sXCJcclxuXHJcbmltcG9ydCBEb2N1bWVudCBmcm9tIFwiLi9vcGVueG1sL2RvY3VtZW50XCJcclxuaW1wb3J0IFBhcnQgZnJvbSBcIi4vb3BlbnhtbC9wYXJ0XCJcclxuaW1wb3J0IE9mZmljZURvY3VtZW50IGZyb20gXCIuL29wZW54bWwvb2ZmaWNlRG9jdW1lbnRcIlxyXG5cclxuZXhwb3J0IGRlZmF1bHQgZG9jeFxyXG5cclxuZXhwb3J0IHtcclxuICAgIGRvY3gscHB0eCx4bHN4LGRyYXdtbCxcclxuICAgIFBhcnQsIERvY3VtZW50LCBPZmZpY2VEb2N1bWVudFxyXG59XHJcbiJdfQ== \ No newline at end of file diff --git a/lib/openxml/document.js b/lib/openxml/document.js index 81f79bc..f394e7b 100644 --- a/lib/openxml/document.js +++ b/lib/openxml/document.js @@ -34,7 +34,7 @@ var _class = function (_Base) { var _this = _possibleConstructorReturn(this, (_class.__proto__ || Object.getPrototypeOf(_class)).apply(this, arguments)); - _this.main = new _part2.default("", _this); + _this.main = _this.rels = new _part2.default("", _this); _this.officeDocument = new _this.constructor.OfficeDocument(_this.main.getRelTarget("officeDocument"), _this); return _this; } @@ -156,4 +156,4 @@ exports.default = _class; var RGB = /([a-fA-F0-9]{2}?){3}?/; var RE_LENGTH_UNIT = /^([a-zA-Z]+)$/; module.exports = exports['default']; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcGVueG1sL2RvY3VtZW50LmpzIl0sIm5hbWVzIjpbImFyZ3VtZW50cyIsIm1haW4iLCJQYXJ0Iiwib2ZmaWNlRG9jdW1lbnQiLCJjb25zdHJ1Y3RvciIsIk9mZmljZURvY3VtZW50IiwiZ2V0UmVsVGFyZ2V0IiwicmVuZGVyIiwicGFyc2UiLCJhIiwicHQyUHgiLCJwdCIsImNtIiwicGFyc2VJbnQiLCJ2IiwidHJhbnNmb3JtIiwibGVuZ3RoIiwic3BsaXQiLCJyZ2IiLCJjaGFyQXQiLCJSR0IiLCJ0ZXN0IiwibHVtTW9kIiwibHVtT2ZmIiwidGludCIsInNoYWRlIiwiY29sb3IiLCJ1bmRlZmluZWQiLCJsaWdodGVuIiwiZGFya2VuIiwicmVkIiwiZ3JlZW4iLCJibHVlIiwiaGV4IiwicmVwbGFjZSIsInZhbHVlIiwicGFyc2VGbG9hdCIsInVuaXRzIiwiU3RyaW5nIiwibWF0Y2giLCJSRV9MRU5HVEhfVU5JVCIsImNtMlB4IiwiZ2V0T2JqZWN0UGFydCIsIkJhc2UiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7Ozs7QUFDQTs7OztBQUNBOzs7Ozs7Ozs7Ozs7Ozs7QUFHQyxtQkFBYTtBQUFBOztBQUFBLCtHQUNIQSxTQURHOztBQUVaLFFBQUtDLElBQUwsR0FBVSxJQUFJQyxjQUFKLENBQVMsRUFBVCxRQUFWO0FBQ0EsUUFBS0MsY0FBTCxHQUFvQixJQUFJLE1BQUtDLFdBQUwsQ0FBaUJDLGNBQXJCLENBQW9DLE1BQUtKLElBQUwsQ0FBVUssWUFBVixDQUF1QixnQkFBdkIsQ0FBcEMsUUFBcEI7QUFIWTtBQUlaOzs7OzJCQVNPO0FBQUE7O0FBQ1AsVUFBTyx3QkFBS0gsY0FBTCxFQUFvQkksTUFBcEIsd0JBQThCUCxTQUE5QixDQUFQO0FBQ0E7OzswQkFFTTtBQUFBOztBQUNOLFVBQU8seUJBQUtHLGNBQUwsRUFBb0JLLEtBQXBCLHlCQUE2QlIsU0FBN0IsQ0FBUDtBQUNBOzs7eUJBRU1TLEMsRUFBRTtBQUNSLFVBQU8sS0FBS0Ms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QUFDakIsVUFBTyxLQUFLTyxhQUFMLENBQW1CLHFCQUFuQixFQUEwQyxPQUExQyxDQUFQO0FBQ0E7Ozs7RUFaMkJDLGtCOztPQXdGckJ0QyxjLEdBQWVILGM7OztBQUV2QixJQUFNa0IsTUFBSSx1QkFBVjtBQUNBLElBQU1vQixpQkFBZSxlQUFyQiIsImZpbGUiOiJkb2N1bWVudC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBCYXNlIGZyb20gXCIuLi9kb2N1bWVudFwiXG5pbXBvcnQgUGFydCBmcm9tICcuL3BhcnQnXG5pbXBvcnQgQ29sb3IgZnJvbSBcImNvbG9yXCJcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgZXh0ZW5kcyBCYXNle1xuXHRjb25zdHJ1Y3Rvcigpe1xuXHRcdHN1cGVyKC4uLmFyZ3VtZW50cylcblx0XHR0aGlzLm1haW49bmV3IFBhcnQoXCJcIix0aGlzKVxuXHRcdHRoaXMub2ZmaWNlRG9jdW1lbnQ9bmV3IHRoaXMuY29uc3RydWN0b3IuT2ZmaWNlRG9jdW1lbnQodGhpcy5tYWluLmdldFJlbFRhcmdldChcIm9mZmljZURvY3VtZW50XCIpLCB0aGlzKVxuXHR9XG5cdGdldCB2ZW5kZXIoKXtcIk1pY3Jvc29mdFwifVxuXG5cdGdldCBwcm9kdWN0KCl7cmV0dXJuICdPZmZpY2UgMjAxMCd9XG5cblx0Z2V0IGNvbnRlbnRUeXBlcygpe1xuXHRcdHJldHVybiB0aGlzLmdldE9iamVjdFBhcnQoXCJbQ29udGVudF9UeXBlc10ueG1sXCIpKFwiVHlwZXNcIilcblx0fVxuXG5cdHJlbmRlcigpe1xuXHRcdHJldHVybiB0aGlzLm9mZmljZURvY3VtZW50LnJlbmRlciguLi5hcmd1bWVudHMpXG5cdH1cblxuXHRwYXJzZSgpe1xuXHRcdHJldHVybiB0aGlzLm9mZmljZURvY3VtZW50LnBhcnNlKC4uLmFyZ3VtZW50cylcblx0fVxuXG5cdGR4YTJQeChhKXtcblx0XHRyZXR1cm4gdGhpcy5wdDJQeChhLzIwLjApXG5cdH1cblxuXHRlbXUyUHgoYSl7XG5cdFx0cmV0dXJuIHRoaXMucHQyUHgoYS8xMjcwMClcblx0fVxuXHRcblxuXHRwdDJQeChwdCl7XG5cdFx0cmV0dXJuIHB0Kjk2LzcyXG5cdH1cblxuXHRjbTJQeChjbSl7XG5cdFx0cmV0dXJuIHRoaXMucHQyUHgocGFyc2VJbnQoY20pKjI4LjM0NjQ1NjcpXG5cdH1cblxuXHRhc0NvbG9yKHYsIHRyYW5zZm9ybSl7XG5cdFx0aWYoIXYgfHwgdi5sZW5ndGg9PTAgfHwgdj09J2F1dG8nKVxuXHRcdFx0cmV0dXJuICcjMDAwMDAwJ1xuXHRcdHY9di5zcGxpdCgnICcpWzBdXG5cdFx0Y29uc3QgcmdiPXYuY2hhckF0KDApPT0nIycgPyB2IDogKFJHQi50ZXN0KHYpID8gJyMnK3YgOiB2KVxuXHRcdGlmKHRyYW5zZm9ybSl7XG5cdFx0XHRjb25zdCB7bHVtTW9kLGx1bU9mZix0aW50LHNoYWRlfT10cmFuc2Zvcm1cblx0XHRcdGlmKGx1bU1vZHx8bHVtT2ZmfHx0aW50KXtcblx0XHQgICAgICAgIGxldCBjb2xvcj1Db2xvcihyZ2IpXG5cblx0XHQgICAgICAgIGlmKHRpbnQhPXVuZGVmaW5lZCl7XG5cdFx0ICAgICAgICAgICAgY29sb3I9Y29sb3IubGlnaHRlbigxLXRpbnQpXG5cdFx0ICAgICAgICB9XG5cblx0XHQgICAgICAgIGlmKGx1bU1vZCE9dW5kZWZpbmVkKXtcblx0XHQgICAgICAgICAgICBjb2xvcj1jb2xvci5saWdodGVuKGx1bU1vZClcblx0XHQgICAgICAgIH1cblxuXHRcdCAgICAgICAgaWYobHVtT2ZmIT11bmRlZmluZWQpe1xuXHRcdCAgICAgICAgICAgIGNvbG9yPWNvbG9yLmRhcmtlbihsdW1PZmYpXG5cdFx0ICAgICAgICB9XG5cblx0XHRcdFx0aWYoc2hhZGUhPXVuZGVmaW5lZCl7XG5cdFx0XHRcdFx0Y29sb3I9Y29sb3Jcblx0XHRcdFx0XHRcdC5yZWQoY29sb3IucmVkKCkqKDErc2hhZGUpKVxuXHRcdFx0XHRcdFx0LmdyZWVuKGNvbG9yLmdyZWVuKCkqKDErc2hhZGUpKVxuXHRcdFx0XHRcdFx0LmJsdWUoY29sb3IuYmx1ZSgpKigxK3NoYWRlKSlcblx0XHRcdFx0fVxuXG5cdFx0ICAgICAgICByZXR1cm4gYCR7Y29sb3IuaGV4KCl9YC5yZXBsYWNlKC9eMHgvLFwiI1wiKVxuXHRcdCAgICB9XG5cdFx0fVxuXHRcdHJldHVybiByZ2Jcblx0fVxuXHRcblx0dG9QeChsZW5ndGgpIHtcblx0XHR2YXIgdmFsdWUgPSBwYXJzZUZsb2F0KGxlbmd0aCksXG5cdFx0XHR1bml0cyA9IFN0cmluZyhsZW5ndGgpLm1hdGNoKFJFX0xFTkdUSF9VTklUKVsxXTtcblxuXHRcdHN3aXRjaCAodW5pdHMpIHtcblx0XHRcdGNhc2UgJ2NtJyA6IHJldHVybiB0aGlzLmNtMlB4KHZhbHVlKTtcblx0XHRcdGNhc2UgJ21tJyA6IHJldHVybiB0aGlzLmNtMlB4KHZhbHVlIC8gMTApO1xuXHRcdFx0Y2FzZSAnaW4nIDogcmV0dXJuIHRoaXMucHQyUHgodmFsdWUgKiA3Mik7XG5cdFx0XHRjYXNlICdwdCcgOiByZXR1cm4gdGhpcy5wdDJQeCh2YWx1ZSk7XG5cdFx0XHRjYXNlICdmdCcgOiByZXR1cm4gdGhpcy5wdDJQeCh2YWx1ZSo4NjQpXG5cdFx0XHRkZWZhdWx0ICAgOiByZXR1cm4gdmFsdWU7XG5cdFx0fVxuXHR9XG5cblx0c3RhdGljIE9mZmljZURvY3VtZW50PVBhcnRcbn1cbmNvbnN0IFJHQj0vKFthLWZBLUYwLTldezJ9Pyl7M30/LztcbmNvbnN0IFJFX0xFTkdUSF9VTklUPS9eKFthLXpBLVpdKykkL1xuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcGVueG1sL2RvY3VtZW50LmpzIl0sIm5hbWVzIjpbImFyZ3VtZW50cyIsIm1haW4iLCJyZWxzIiwib2ZmaWNlRG9jdW1lbnQiLCJjb25zdHJ1Y3RvciIsIk9mZmljZURvY3VtZW50IiwiZ2V0UmVsVGFyZ2V0IiwicmVuZGVyIiwicGFyc2UiLCJhIiwicHQyUHgiLCJwdCIsImNtIiwicGFyc2VJbnQiLCJ2IiwidHJhbnNmb3JtIiwibGVuZ3RoIiwic3BsaXQiLCJyZ2IiLCJjaGFyQXQiLCJSR0IiLCJ0ZXN0IiwibHVtTW9kIiwibHVtT2ZmIiwidGludCIsInNoYWRlIiwiY29sb3IiLCJ1bmRlZmluZWQiLCJsaWdodGVuIiwiZGFya2VuIiwicmVkIiwiZ3JlZW4iLCJibHVlIiwiaGV4IiwicmVwbGFjZSIsInZhbHVlIiwicGFyc2VGbG9hdCIsInVuaXRzIiwiU3RyaW5nIiwibWF0Y2giLCJSRV9MRU5HVEhfVU5JVCIsImNtMlB4IiwiZ2V0T2JqZWN0UGFydCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTs7OztBQUNBOzs7O0FBQ0E7Ozs7Ozs7Ozs7Ozs7OztBQUdDLG1CQUFhO0FBQUE7O0FBQUEsK0dBQ0hBLFNBREc7O0FBRVosUUFBS0MsSUFBTCxHQUFVLE1BQUtDLElBQUwsR0FBVSxtQkFBUyxFQUFULFFBQXBCO0FBQ0EsUUFBS0MsY0FBTCxHQUFvQixJQUFJLE1BQUtDLFdBQUwsQ0FBaUJDLGNBQXJCLENBQW9DLE1BQUtKLElBQUwsQ0FBVUssWUFBVixDQUF1QixnQkFBdkIsQ0FBcEMsUUFBcEI7QUFIWTtBQUlaOzs7OzJCQVNPO0FBQUE7O0FBQ1AsVUFBTyx3QkFBS0gsY0FBTCxFQUFvQkksTUFBcEIsd0JBQThCUCxTQUE5QixDQUFQO0FBQ0E7OzswQkFFTTtBQUFBOztBQUNOLFVBQU8seUJBQUtHLGNBQUwsRUFBb0JLLEtBQXBCLHlCQUE2QlIsU0FBN0IsQ0FBUDtBQUNBOzs7eUJBRU1TLEMsRUFBRTtBQUNSLFVBQU8sS0FBS0Ms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QUFDakIsVUFBTyxLQUFLTyxhQUFMLENBQW1CLHFCQUFuQixFQUEwQyxPQUExQyxDQUFQO0FBQ0E7Ozs7OztPQTRFTXJDLGM7OztBQUVSLElBQU1lLE1BQUksdUJBQVY7QUFDQSxJQUFNb0IsaUJBQWUsZUFBckIiLCJmaWxlIjoiZG9jdW1lbnQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmFzZSBmcm9tIFwiLi4vZG9jdW1lbnRcIlxuaW1wb3J0IFBhcnQgZnJvbSAnLi9wYXJ0J1xuaW1wb3J0IENvbG9yIGZyb20gXCJjb2xvclwiXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIGV4dGVuZHMgQmFzZXtcblx0Y29uc3RydWN0b3IoKXtcblx0XHRzdXBlciguLi5hcmd1bWVudHMpXG5cdFx0dGhpcy5tYWluPXRoaXMucmVscz1uZXcgUGFydChcIlwiLHRoaXMpXG5cdFx0dGhpcy5vZmZpY2VEb2N1bWVudD1uZXcgdGhpcy5jb25zdHJ1Y3Rvci5PZmZpY2VEb2N1bWVudCh0aGlzLm1haW4uZ2V0UmVsVGFyZ2V0KFwib2ZmaWNlRG9jdW1lbnRcIiksIHRoaXMpXG5cdH1cblx0Z2V0IHZlbmRlcigpe1wiTWljcm9zb2Z0XCJ9XG5cblx0Z2V0IHByb2R1Y3QoKXtyZXR1cm4gJ09mZmljZSAyMDEwJ31cblxuXHRnZXQgY29udGVudFR5cGVzKCl7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0T2JqZWN0UGFydChcIltDb250ZW50X1R5cGVzXS54bWxcIikoXCJUeXBlc1wiKVxuXHR9XG5cblx0cmVuZGVyKCl7XG5cdFx0cmV0dXJuIHRoaXMub2ZmaWNlRG9jdW1lbnQucmVuZGVyKC4uLmFyZ3VtZW50cylcblx0fVxuXG5cdHBhcnNlKCl7XG5cdFx0cmV0dXJuIHRoaXMub2ZmaWNlRG9jdW1lbnQucGFyc2UoLi4uYXJndW1lbnRzKVxuXHR9XG5cblx0ZHhhMlB4KGEpe1xuXHRcdHJldHVybiB0aGlzLnB0MlB4KGEvMjAuMClcblx0fVxuXG5cdGVtdTJQeChhKXtcblx0XHRyZXR1cm4gdGhpcy5wdDJQeChhLzEyNzAwKVxuXHR9XG5cdFxuXG5cdHB0MlB4KHB0KXtcblx0XHRyZXR1cm4gcHQqOTYvNzJcblx0fVxuXG5cdGNtMlB4KGNtKXtcblx0XHRyZXR1cm4gdGhpcy5wdDJQeChwYXJzZUludChjbSkqMjguMzQ2NDU2Nylcblx0fVxuXG5cdGFzQ29sb3IodiwgdHJhbnNmb3JtKXtcblx0XHRpZighdiB8fCB2Lmxlbmd0aD09MCB8fCB2PT0nYXV0bycpXG5cdFx0XHRyZXR1cm4gJyMwMDAwMDAnXG5cdFx0dj12LnNwbGl0KCcgJylbMF1cblx0XHRjb25zdCByZ2I9di5jaGFyQXQoMCk9PScjJyA/IHYgOiAoUkdCLnRlc3QodikgPyAnIycrdiA6IHYpXG5cdFx0aWYodHJhbnNmb3JtKXtcblx0XHRcdGNvbnN0IHtsdW1Nb2QsbHVtT2ZmLHRpbnQsc2hhZGV9PXRyYW5zZm9ybVxuXHRcdFx0aWYobHVtTW9kfHxsdW1PZmZ8fHRpbnQpe1xuXHRcdCAgICAgICAgbGV0IGNvbG9yPUNvbG9yKHJnYilcblxuXHRcdCAgICAgICAgaWYodGludCE9dW5kZWZpbmVkKXtcblx0XHQgICAgICAgICAgICBjb2xvcj1jb2xvci5saWdodGVuKDEtdGludClcblx0XHQgICAgICAgIH1cblxuXHRcdCAgICAgICAgaWYobHVtTW9kIT11bmRlZmluZWQpe1xuXHRcdCAgICAgICAgICAgIGNvbG9yPWNvbG9yLmxpZ2h0ZW4obHVtTW9kKVxuXHRcdCAgICAgICAgfVxuXG5cdFx0ICAgICAgICBpZihsdW1PZmYhPXVuZGVmaW5lZCl7XG5cdFx0ICAgICAgICAgICAgY29sb3I9Y29sb3IuZGFya2VuKGx1bU9mZilcblx0XHQgICAgICAgIH1cblxuXHRcdFx0XHRpZihzaGFkZSE9dW5kZWZpbmVkKXtcblx0XHRcdFx0XHRjb2xvcj1jb2xvclxuXHRcdFx0XHRcdFx0LnJlZChjb2xvci5yZWQoKSooMStzaGFkZSkpXG5cdFx0XHRcdFx0XHQuZ3JlZW4oY29sb3IuZ3JlZW4oKSooMStzaGFkZSkpXG5cdFx0XHRcdFx0XHQuYmx1ZShjb2xvci5ibHVlKCkqKDErc2hhZGUpKVxuXHRcdFx0XHR9XG5cblx0XHQgICAgICAgIHJldHVybiBgJHtjb2xvci5oZXgoKX1gLnJlcGxhY2UoL14weC8sXCIjXCIpXG5cdFx0ICAgIH1cblx0XHR9XG5cdFx0cmV0dXJuIHJnYlxuXHR9XG5cdFxuXHR0b1B4KGxlbmd0aCkge1xuXHRcdHZhciB2YWx1ZSA9IHBhcnNlRmxvYXQobGVuZ3RoKSxcblx0XHRcdHVuaXRzID0gU3RyaW5nKGxlbmd0aCkubWF0Y2goUkVfTEVOR1RIX1VOSVQpWzFdO1xuXG5cdFx0c3dpdGNoICh1bml0cykge1xuXHRcdFx0Y2FzZSAnY20nIDogcmV0dXJuIHRoaXMuY20yUHgodmFsdWUpO1xuXHRcdFx0Y2FzZSAnbW0nIDogcmV0dXJuIHRoaXMuY20yUHgodmFsdWUgLyAxMCk7XG5cdFx0XHRjYXNlICdpbicgOiByZXR1cm4gdGhpcy5wdDJQeCh2YWx1ZSAqIDcyKTtcblx0XHRcdGNhc2UgJ3B0JyA6IHJldHVybiB0aGlzLnB0MlB4KHZhbHVlKTtcblx0XHRcdGNhc2UgJ2Z0JyA6IHJldHVybiB0aGlzLnB0MlB4KHZhbHVlKjg2NClcblx0XHRcdGRlZmF1bHQgICA6IHJldHVybiB2YWx1ZTtcblx0XHR9XG5cdH1cblxuXHRzdGF0aWMgT2ZmaWNlRG9jdW1lbnQ9UGFydFxufVxuY29uc3QgUkdCPS8oW2EtZkEtRjAtOV17Mn0/KXszfT8vO1xuY29uc3QgUkVfTEVOR1RIX1VOSVQ9L14oW2EtekEtWl0rKSQvXG4iXX0= \ No newline at end of file diff --git a/lib/openxml/docx/document.js b/lib/openxml/docx/document.js index 14d027d..0b384f4 100644 --- a/lib/openxml/docx/document.js +++ b/lib/openxml/docx/document.js @@ -37,4 +37,4 @@ _class.mime = "application/vnd.openxmlformats-officedocument.wordprocessingml.do _class.OfficeDocument = _officeDocument2.default; exports.default = _class; module.exports = exports['default']; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL2RvY3gvZG9jdW1lbnQuanMiXSwibmFtZXMiOlsiQmFzZSIsImV4dCIsIm1pbWUiLCJPZmZpY2VEb2N1bWVudCJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7Ozs7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUU2QkEsa0I7O09BQ3JCQyxHLEdBQUksTTtPQUVKQyxJLEdBQUsseUU7T0FFTEMsYyxHQUFlQSx3QiIsImZpbGUiOiJkb2N1bWVudC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBCYXNlIGZyb20gXCIuLi9kb2N1bWVudFwiXG5pbXBvcnQgT2ZmaWNlRG9jdW1lbnQgZnJvbSBcIi4vb2ZmaWNlRG9jdW1lbnRcIlxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBleHRlbmRzIEJhc2V7XG5cdHN0YXRpYyBleHQ9XCJkb2N4XCJcblx0XG5cdHN0YXRpYyBtaW1lPVwiYXBwbGljYXRpb24vdm5kLm9wZW54bWxmb3JtYXRzLW9mZmljZWRvY3VtZW50LndvcmRwcm9jZXNzaW5nbWwuZG9jdW1lbnRcIlxuXG5cdHN0YXRpYyBPZmZpY2VEb2N1bWVudD1PZmZpY2VEb2N1bWVudFxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL2RvY3gvZG9jdW1lbnQuanMiXSwibmFtZXMiOlsiZXh0IiwibWltZSIsIk9mZmljZURvY3VtZW50Il0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTs7OztBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FHUUEsRyxHQUFJLE07T0FFSkMsSSxHQUFLLHlFO09BRUxDLGMiLCJmaWxlIjoiZG9jdW1lbnQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmFzZSBmcm9tIFwiLi4vZG9jdW1lbnRcIlxuaW1wb3J0IE9mZmljZURvY3VtZW50IGZyb20gXCIuL29mZmljZURvY3VtZW50XCJcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgZXh0ZW5kcyBCYXNle1xuXHRzdGF0aWMgZXh0PVwiZG9jeFwiXG5cdFxuXHRzdGF0aWMgbWltZT1cImFwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC53b3JkcHJvY2Vzc2luZ21sLmRvY3VtZW50XCJcblxuXHRzdGF0aWMgT2ZmaWNlRG9jdW1lbnQ9T2ZmaWNlRG9jdW1lbnRcbn1cbiJdfQ== \ No newline at end of file diff --git a/lib/openxml/docx/officeDocument.js b/lib/openxml/docx/officeDocument.js index e9d5439..ae95e2b 100644 --- a/lib/openxml/docx/officeDocument.js +++ b/lib/openxml/docx/officeDocument.js @@ -42,20 +42,26 @@ var _class = function (_Base) { _createClass(_class, [{ key: "_init", value: function _init() { + var _this2 = this; + _get(_class.prototype.__proto__ || Object.getPrototypeOf(_class.prototype), "_init", this).call(this); this._assignRel("styles,numbering,settings".split(",")); - var $ = this.styles; - this.styles.prototype.basest = function (selector) { - var current = this; - while (current.length > 0) { - if (current.is(selector)) { - return $(current); - } - current = $.root().find("w\\:style[w\\:styleId=\"" + current.children("w\\:basedOn").attr("w:val") + "\"]"); - } - return this.not(this); - }; + if (this.styles) { + (function () { + var $ = _this2.styles; + _this2.styles.prototype.basest = function (selector) { + var current = this; + while (current.length > 0) { + if (current.is(selector)) { + return $(current); + } + current = $.root().find("w\\:style[w\\:styleId=\"" + current.children("w\\:basedOn").attr("w:val") + "\"]"); + } + return this.not(this); + }; + })(); + } } }, { key: "render", @@ -285,58 +291,68 @@ _class.identities = { return { type: "property", name: name, value: value, children: children }; } else { - //controls - var prChildren = pr.get(0).children; - var elType = prChildren[prChildren.length - 1]; - var _name = elType.name.split(":").pop(); - var type = "text,picture,docPartList,docPartObj,comboBox,dropDownList,date,checkbox,repeatingSection,repeatingSectionItem".split(",").find(function (a) { - return a == _name; - }); - var model = { children: children }; - if (type) { - model.type = "control." + type; - } else { - //container - if (content.find("w\\:p,w\\:tbl,w\\:tr,w\\:tc").length) { - model.type = "block"; + var _ret2 = function () { + //controls + var prChildren = pr.get(0).children; + var elType = prChildren[prChildren.length - 1]; + var name = elType.name.split(":").pop(); + var type = "text,picture,docPartList,docPartObj,comboBox,dropDownList,date,checkbox,repeatingSection,repeatingSectionItem".split(",").find(function (a) { + return a == name; + }); + var model = { children: children }; + if (type) { + model.type = "control." + type; } else { - model.type = "inline"; + //container + if (content.find("w\\:p,w\\:tbl,w\\:tr,w\\:tc").length) { + model.type = "block"; + } else { + model.type = "inline"; + } } - } - $ = officeDocument.content; - switch (model.type) { - case "control.dropDownList": - case "control.comboBox": - { - var selected = $(content).text(); - model.options = $(elType).find("w\\:listItem").map(function (i, li) { - return { - displayText: li.attribs["w:displayText"], - value: li.attribs["w:value"] - }; - }).get(); - model.value = (model.options.find(function (a) { - return a.displayText == selected; - }) || {}).value; + $ = officeDocument.content; + switch (model.type) { + case "control.dropDownList": + case "control.comboBox": + { + var _ret3 = function () { + var selected = $(content).text(); + model.options = $(elType).find("w\\:listItem").map(function (i, li) { + return { + displayText: li.attribs["w:displayText"], + value: li.attribs["w:value"] + }; + }).get(); + model.value = (model.options.find(function (a) { + return a.displayText == selected; + }) || {}).value; + return "break"; + }(); + + if (_ret3 === "break") break; + } + case "control.checkbox": + { + var ns = elType.name.split(":")[0]; + model.checked = $(elType).find(ns + "\\:checked").attr(ns + ":val") == "1"; + break; + } + case "control.text": + if (content.find('w\\:r [w\\:val~=Placeholder]').length == 0) model.value = content.text(); break; - } - case "control.checkbox": - { - var ns = elType.name.split(":")[0]; - model.checked = $(elType).find(ns + "\\:checked").attr(ns + ":val") == "1"; + case "control.date": + model.value = new Date($(elType).attr("w:fullDate")); + model.format = $(elType).find("w\\:dateFormat").attr("w:val"); + model.locale = $(elType).find("w\\:lid").attr("w:val"); break; - } - case "control.text": - if (content.find('w\\:r [w\\:val~=Placeholder]').length == 0) model.value = content.text(); - break; - case "control.date": - model.value = new Date($(elType).attr("w:fullDate")); - model.format = $(elType).find("w\\:dateFormat").attr("w:val"); - model.locale = $(elType).find("w\\:lid").attr("w:val"); - break; - } - return model; + } + return { + v: model + }; + }(); + + if ((typeof _ret2 === "undefined" ? "undefined" : _typeof(_ret2)) === "object") return _ret2.v; } }, hyperlink: function hyperlink(wXml, officeDocument) { @@ -424,4 +440,4 @@ _class.identities = { }; exports.default = _class; module.exports = exports['default']; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL2RvY3gvb2ZmaWNlRG9jdW1lbnQuanMiXSwibmFtZXMiOlsiX2Fzc2lnblJlbCIsInNwbGl0IiwiJCIsInN0eWxlcyIsInByb3RvdHlwZSIsImJhc2VzdCIsInNlbGVjdG9yIiwiY3VycmVudCIsImxlbmd0aCIsImlzIiwicm9vdCIsImZpbmQiLCJjaGlsZHJlbiIsImF0dHIiLCJub3QiLCJjcmVhdGVFbGVtZW50IiwiaWRlbnRpZnkiLCJjb25zdHJ1Y3RvciIsImJpbmQiLCJudW1iZXJpbmciLCJyZW5kZXJOb2RlIiwiZ2V0IiwiY29udGVudCIsImRvbUhhbmRsZXIiLCJkb2MiLCJfaWRlbnRpZnkiLCJtb2RlbCIsImFyZ3VtZW50cyIsImVtaXQiLCJ0eXBlIiwiZG9jdW1lbnQiLCJCYXNlIiwiaWRlbnRpdGllcyIsIndYbWwiLCJvZmZpY2VEb2N1bWVudCIsImVhY2giLCJpIiwic2VjdCIsImVuZCIsImNsb3Nlc3QiLCJwcmV2VW50aWwiLCJ0b0FycmF5IiwicmV2ZXJzZSIsInB1c2giLCJzZWN0UHIiLCJoZiIsImZpbHRlciIsImEiLCJuYW1lIiwicmVkdWNlIiwiaGVhZGVycyIsInNldCIsImF0dHJpYnMiLCJnZXRSZWwiLCJNYXAiLCJmb290ZXJzIiwiaGFzVGl0bGVQYWdlIiwicCIsImlkZW50aXR5IiwicHIiLCJwUHIiLCJzdHlsZUlkIiwibnVtUHIiLCJudW1JZCIsImxldmVsIiwicGFyc2VJbnQiLCJzdGFydHNXaXRoIiwib3V0bGluZUx2bCIsIm91dGxpbmUiLCJyIiwiZmxkQ2hhciIsImlubGluZSIsInByb3BzIiwiX19maWx0ZXIiLCJhbmNob3IiLCJncmFwaGljRGF0YSIsInBvcCIsInBpYyIsInRpZHkiLCJzcFByIiwibnZQaWNQciIsImNOdlByIiwiY052U3BQciIsIm52UHIiLCJzdHlsZSIsImxuUmVmIiwiZmlsbFJlZiIsImVmZmVjdFJlZiIsIm90aGVycyIsIndzcCIsInNhbWUiLCJrZXlzIiwiZngiLCJmcyIsImsiLCJtYXAiLCJlbXUyUHgiLCJ2IiwiZm9udFJlZiIsInRleHRTdHlsZSIsIkZhbGxiYWNrIiwic2R0IiwiZWxCaW5kaW5nIiwicGF0aCIsImQiLCJ2YWx1ZSIsInRleHQiLCJwckNoaWxkcmVuIiwiZWxUeXBlIiwic2VsZWN0ZWQiLCJvcHRpb25zIiwibGkiLCJkaXNwbGF5VGV4dCIsIm5zIiwiY2hlY2tlZCIsIkRhdGUiLCJmb3JtYXQiLCJsb2NhbGUiLCJoeXBlcmxpbmsiLCJ1cmwiLCJ0YmwiLCJzdGF0ZSIsIm5vZGUiLCJjb2xzIiwidHIiLCJpc0hlYWRlciIsInRjIiwiYWx0Q2h1bmsiLCJySWQiLCJkYXRhIiwicGFydE5hbWUiLCJmb2xkZXIiLCJyZWxzIiwiY29udGVudFR5cGUiLCJjb250ZW50VHlwZXMiLCJkb2NEZWZhdWx0cyIsImlkIiwiYWJzdHJhY3ROdW0iLCJudW0iLCJsYXRlbnRTdHlsZXMiLCJvYmplY3QiLCJvbGUiLCJlbWJlZCIsInByb2ciLCJnZXRSZWxPbGVPYmplY3QiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBQUE7Ozs7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzswQkFHUTtBQUNOO0FBQ0EsUUFBS0EsVUFBTCxDQUFnQiw0QkFBNEJDLEtBQTVCLENBQWtDLEdBQWxDLENBQWhCOztBQUVBLE9BQUlDLElBQUUsS0FBS0MsTUFBWDtBQUNBLFFBQUtBLE1BQUwsQ0FBWUMsU0FBWixDQUFzQkMsTUFBdEIsR0FBNkIsVUFBU0MsUUFBVCxFQUFrQjtBQUM5QyxRQUFJQyxVQUFRLElBQVo7QUFDQSxXQUFNQSxRQUFRQyxNQUFSLEdBQWUsQ0FBckIsRUFBdUI7QUFDdEIsU0FBR0QsUUFBUUUsRUFBUixDQUFXSCxRQUFYLENBQUgsRUFBd0I7QUFDdkIsYUFBT0osRUFBRUssT0FBRixDQUFQO0FBQ0E7QUFDREEsZUFBUUwsRUFBRVEsSUFBRixHQUFTQyxJQUFULDhCQUF3Q0osUUFBUUssUUFBUixDQUFpQixhQUFqQixFQUFnQ0MsSUFBaEMsQ0FB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dkIsRUFBUDtBQUNBLEVBNVBnQjtBQTZQakJzRixJQTdQaUIsZUE2UGJ6RyxJQTdQYSxFQTZQUjtBQUNSLFNBQU8sRUFBQ0osTUFBSyxLQUFOLEVBQVkyRyxJQUFHdkcsS0FBS21CLE9BQUwsQ0FBYSxTQUFiLENBQWYsRUFBdUNxRixhQUFZeEcsS0FBS3JCLFFBQUwsQ0FBY0QsSUFBZCxDQUFtQjtBQUFBLFdBQUdvQyxFQUFFQyxJQUFGLElBQVEsaUJBQVg7QUFBQSxJQUFuQixFQUFpREksT0FBakQsQ0FBeUQsT0FBekQsQ0FBbkQsRUFBUDtBQUNBLEVBL1BnQjtBQWdRakJ1RixhQWhRaUIsMEJBZ1FIO0FBQ2IsU0FBTyxJQUFQO0FBQ0EsRUFsUWdCO0FBbVFqQkMsT0FuUWlCLGtCQW1RVjNHLElBblFVLEVBbVFMQyxjQW5RSyxFQW1RVTtBQUMxQixNQUFJMkcsTUFBSTNHLGVBQWVaLE9BQWYsQ0FBdUJXLElBQXZCLEVBQTZCdEIsSUFBN0IsQ0FBa0MsZUFBbEMsQ0FBUjtBQUNBLE1BQUlrQixPQUFLZ0gsSUFBSWhJLElBQUosQ0FBUyxRQUFULENBQVQ7QUFDQSxNQUFJaUksUUFBTUQsSUFBSWhJLElBQUosQ0FBUyxNQUFULE1BQW1CLE9BQTdCO0FBQ0EsTUFBSW1ILE1BQUlhLElBQUloSSxJQUFKLENBQVMsTUFBVCxDQUFSO0FBQ0EsU0FBTyxFQUFDZ0IsTUFBSyxRQUFOLEVBQWVpSCxZQUFmLEVBQXNCQyxNQUFNbEgsSUFBNUIsRUFBa0NvRyxNQUFLL0YsZUFBZThHLGVBQWYsQ0FBK0JoQixHQUEvQixDQUF2QyxFQUFQO0FBQ0E7QUF6UWdCLEMiLCJmaWxlIjoib2ZmaWNlRG9jdW1lbnQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmFzZSBmcm9tIFwiLi4vb2ZmaWNlRG9jdW1lbnRcIlxyXG5pbXBvcnQgZHJhd21sIGZyb20gXCIuLi9kcmF3bWxcIlxyXG5cclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgZXh0ZW5kcyBCYXNle1xyXG5cdF9pbml0KCl7XHJcblx0XHRzdXBlci5faW5pdCgpXHJcblx0XHR0aGlzLl9hc3NpZ25SZWwoXCJzdHlsZXMsbnVtYmVyaW5nLHNldHRpbmdzXCIuc3BsaXQoXCIsXCIpKVxyXG5cclxuXHRcdHZhciAkPXRoaXMuc3R5bGVzXHJcblx0XHR0aGlzLnN0eWxlcy5wcm90b3R5cGUuYmFzZXN0PWZ1bmN0aW9uKHNlbGVjdG9yKXtcclxuXHRcdFx0bGV0IGN1cnJlbnQ9dGhpc1xyXG5cdFx0XHR3aGlsZShjdXJyZW50Lmxlbmd0aD4wKXtcclxuXHRcdFx0XHRpZihjdXJyZW50LmlzKHNlbGVjdG9yKSl7XHJcblx0XHRcdFx0XHRyZXR1cm4gJChjdXJyZW50KVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRjdXJyZW50PSQucm9vdCgpLmZpbmQoYHdcXFxcOnN0eWxlW3dcXFxcOnN0eWxlSWQ9XCIke2N1cnJlbnQuY2hpbGRyZW4oXCJ3XFxcXDpiYXNlZE9uXCIpLmF0dHIoXCJ3OnZhbFwiKX1cIl1gKVxyXG5cdFx0XHR9XHJcblx0XHRcdHJldHVybiB0aGlzLm5vdCh0aGlzKVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0cmVuZGVyKGNyZWF0ZUVsZW1lbnQsIGlkZW50aWZ5PXRoaXMuY29uc3RydWN0b3IuaWRlbnRpZnkuYmluZCh0aGlzLmNvbnN0cnVjdG9yKSl7XHJcblx0XHRsZXQgc3R5bGVzLCBudW1iZXJpbmdcclxuXHRcdGlmKHRoaXMuc3R5bGVzKVxyXG5cdFx0XHRzdHlsZXM9dGhpcy5yZW5kZXJOb2RlKHRoaXMuc3R5bGVzKFwid1xcXFw6c3R5bGVzXCIpLmdldCgwKSxjcmVhdGVFbGVtZW50LGlkZW50aWZ5KVxyXG5cdFx0aWYodGhpcy5udW1iZXJpbmcpXHJcblx0XHRcdG51bWJlcmluZz10aGlzLnJlbmRlck5vZGUodGhpcy5udW1iZXJpbmcoXCJ3XFxcXDpudW1iZXJpbmdcIikuZ2V0KDApLGNyZWF0ZUVsZW1lbnQsaWRlbnRpZnkpXHJcblx0XHRyZXR1cm4gdGhpcy5yZW5kZXJOb2RlKHRoaXMuY29udGVudChcIndcXFxcOmRvY3VtZW50XCIpLmdldCgwKSxjcmVhdGVFbGVtZW50LCBpZGVudGlmeSwge3N0eWxlcyxudW1iZXJpbmd9KVxyXG5cdH1cclxuXHJcblx0cGFyc2UoZG9tSGFuZGxlcixpZGVudGlmeT10aGlzLmNvbnN0cnVjdG9yLmlkZW50aWZ5LmJpbmQodGhpcy5jb25zdHJ1Y3Rvcikpe1xyXG5cdFx0Y29uc3QgZG9jPXt9XHJcblx0XHRjb25zdCBjcmVhdGVFbGVtZW50PWRvbUhhbmRsZXIuY3JlYXRlRWxlbWVudC5iaW5kKGRvbUhhbmRsZXIpXHJcblx0XHRmdW5jdGlvbiBfaWRlbnRpZnkoKXtcclxuXHRcdFx0bGV0IG1vZGVsPWlkZW50aWZ5KC4uLmFyZ3VtZW50cylcclxuXHRcdFx0aWYobW9kZWwgJiYgdHlwZW9mKG1vZGVsKT09XCJvYmplY3RcIil7XHJcblx0XHRcdFx0ZG9tSGFuZGxlci5lbWl0KFwiKlwiLG1vZGVsLC4uLmFyZ3VtZW50cylcclxuXHRcdFx0XHRkb21IYW5kbGVyLmVtaXQobW9kZWwudHlwZSwgbW9kZWwsLi4uYXJndW1lbnRzKVxyXG5cdFx0XHRcdGlmKGRvbUhhbmRsZXJbYG9uJHttb2RlbC50eXBlfWBdKVxyXG5cdFx0XHRcdFx0ZG9tSGFuZGxlcltgb24ke21vZGVsLnR5cGV9YF0obW9kZWwsLi4uYXJndW1lbnRzKVxyXG5cdFx0XHR9XHJcblx0XHRcdHJldHVybiBtb2RlbFxyXG5cdFx0fVxyXG5cclxuXHRcdGlmKHRoaXMuc3R5bGVzKVxyXG5cdFx0XHRkb2Muc3R5bGVzPXRoaXMucmVuZGVyTm9kZSh0aGlzLnN0eWxlcyhcIndcXFxcOnN0eWxlc1wiKS5nZXQoMCksY3JlYXRlRWxlbWVudCxfaWRlbnRpZnkpXHJcblx0XHRpZih0aGlzLm51bWJlcmluZylcclxuXHRcdFx0ZG9jLm51bWJlcmluZz10aGlzLnJlbmRlck5vZGUodGhpcy5udW1iZXJpbmcoXCJ3XFxcXDpudW1iZXJpbmdcIikuZ2V0KDApLGNyZWF0ZUVsZW1lbnQsX2lkZW50aWZ5KVxyXG5cdFx0ZG9jLmRvY3VtZW50PXRoaXMucmVuZGVyTm9kZSh0aGlzLmNvbnRlbnQoXCJ3XFxcXDpkb2N1bWVudFwiKS5nZXQoMCksY3JlYXRlRWxlbWVudCxfaWRlbnRpZnkpXHJcblx0XHRyZXR1cm4gZG9jXHJcblx0fVxyXG5cclxuXHRzdGF0aWMgaWRlbnRpdGllcz17XHJcblx0XHRkb2N1bWVudCh3WG1sLG9mZmljZURvY3VtZW50KXtcclxuXHRcdFx0bGV0ICQ9b2ZmaWNlRG9jdW1lbnQuY29udGVudFxyXG5cdFx0XHRsZXQgY3VycmVudD1udWxsXHJcblx0XHRcdGxldCBjaGlsZHJlbj0kKFwid1xcXFw6c2VjdFByXCIpLmVhY2goKGksc2VjdCk9PntcclxuXHRcdFx0XHRsZXQgZW5kPSQoc2VjdCkuY2xvc2VzdCgnd1xcXFw6Ym9keT4qJylcclxuXHRcdFx0XHRzZWN0LmNvbnRlbnQ9ZW5kLnByZXZVbnRpbChjdXJyZW50KS50b0FycmF5KCkucmV2ZXJzZSgpXHJcblx0XHRcdFx0aWYoIWVuZC5pcyhzZWN0KSlcclxuXHRcdFx0XHRcdHNlY3QuY29udGVudC5wdXNoKGVuZC5nZXQoMCkpXHJcblx0XHRcdFx0Y3VycmVudD1lbmRcclxuXHRcdFx0fSkudG9BcnJheSgpXHJcblx0XHRcdHJldHVybiB7dHlwZTpcImRvY3VtZW50XCIsIGNoaWxkcmVufVxyXG5cdFx0fSxcclxuXHRcdHNlY3RQcih3WG1sLG9mZmljZURvY3VtZW50KXtcclxuXHRcdFx0Y29uc3QgaGY9dHlwZT0+d1htbC5jaGlsZHJlbi5maWx0ZXIoYT0+YS5uYW1lPT1gdzoke3R5cGV9UmVmZXJlbmNlYCkucmVkdWNlKChoZWFkZXJzLGEpPT57XHJcblx0XHRcdFx0XHRoZWFkZXJzLnNldChhLmF0dHJpYnNbXCJ3OnR5cGVcIl0sb2ZmaWNlRG9jdW1lbnQuZ2V0UmVsKGEuYXR0cmlic1tcInI6aWRcIl0pKVxyXG5cdFx0XHRcdFx0cmV0dXJuIGhlYWRlcnNcclxuXHRcdFx0XHR9LG5ldyBNYXAoKSlcclxuXHJcblx0XHRcdHJldHVybiB7XHJcblx0XHRcdFx0dHlwZTpcInNlY3Rpb25cIixcclxuXHRcdFx0XHRjaGlsZHJlbjp3WG1sLmNvbnRlbnQsXHJcblx0XHRcdFx0aGVhZGVyczpoZihcImhlYWRlclwiKSxcclxuXHRcdFx0XHRmb290ZXJzOmhmKFwiZm9vdGVyXCIpLFxyXG5cdFx0XHRcdGhhc1RpdGxlUGFnZTogISF3WG1sLmNoaWxkcmVuLmZpbmQoYT0+YS5uYW1lPT1cInc6dGl0bGVQZ1wiKVxyXG5cdFx0XHR9XHJcblx0XHR9LFxyXG5cdFx0cCh3WG1sLG9mZmljZURvY3VtZW50KXtcclxuXHRcdFx0bGV0ICQ9b2ZmaWNlRG9jdW1lbnQuY29udGVudCh3WG1sKVxyXG5cdFx0XHRsZXQgdHlwZT1cInBcIlxyXG5cclxuXHRcdFx0bGV0IGlkZW50aXR5PXt0eXBlLHByOndYbWwuY2hpbGRyZW4uZmluZCgoe25hbWV9KT0+bmFtZT09XCJ3OnBQclwiKSxjaGlsZHJlbjp3WG1sLmNoaWxkcmVuLmZpbHRlcigoe25hbWV9KT0+bmFtZSE9XCJ3OnBQclwiKX1cclxuXHJcblx0XHRcdGxldCBwUHI9JC5maW5kKFwid1xcXFw6cFByXCIpXHJcblx0XHRcdGlmKHBQci5sZW5ndGgpe1xyXG5cdFx0XHRcdGxldCBzdHlsZUlkPXBQci5maW5kKFwid1xcXFw6cFN0eWxlXCIpLmF0dHIoXCJ3OnZhbFwiKVxyXG5cclxuXHRcdFx0XHRsZXQgbnVtUHI9cFByLmNoaWxkcmVuKFwid1xcXFw6bnVtUHJcIilcclxuXHRcdFx0XHRpZighbnVtUHIubGVuZ3RoICYmIHN0eWxlSWQpe1xyXG5cdFx0XHRcdFx0bnVtUHI9b2ZmaWNlRG9jdW1lbnRcclxuXHRcdFx0XHRcdFx0LnN0eWxlcyhgd1xcXFw6c3R5bGVbd1xcXFw6c3R5bGVJZD1cIiR7c3R5bGVJZH1cIl1gKVxyXG5cdFx0XHRcdFx0XHQuYmFzZXN0KGA6aGFzKHdcXFxcOm51bVByKWApXHJcblx0XHRcdFx0XHRcdC5maW5kKFwid1xcXFw6bnVtUHJcIilcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdGlmKG51bVByLmxlbmd0aCl7XHJcblx0XHRcdFx0XHRpZGVudGl0eS50eXBlPVwibGlzdFwiXHJcblx0XHRcdFx0XHRpZGVudGl0eS5udW1JZD1udW1Qci5maW5kKFwid1xcXFw6bnVtSWRcIikuYXR0cihcInc6dmFsXCIpXHJcblx0XHRcdFx0XHRpZGVudGl0eS5sZXZlbD1wYXJzZUludChudW1Qci5maW5kKFwid1xcXFw6aWx2bFwiKS5hdHRyKFwidzp2YWxcIil8fDApXHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRpZihzdHlsZUlkICYmIHN0eWxlSWQuc3RhcnRzV2l0aChcIkhlYWRpbmdcIikpe1xyXG5cdFx0XHRcdFx0bGV0IG91dGxpbmVMdmw9b2ZmaWNlRG9jdW1lbnRcclxuXHRcdFx0XHRcdFx0LnN0eWxlcyhgd1xcXFw6c3R5bGVbd1xcXFw6c3R5bGVJZD1cIiR7c3R5bGVJZH1cIl1gKVxyXG5cdFx0XHRcdFx0XHQuYmFzZXN0KFwiOmhhcyh3XFxcXDpvdXRsaW5lTHZsKVwiKVxyXG5cdFx0XHRcdFx0XHQuZmluZChcIndcXFxcOm91dGxpbmVMdmxcIilcclxuXHRcdFx0XHRcdFx0LmF0dHIoXCJ3OnZhbFwiKVxyXG5cdFx0XHRcdFx0aWYob3V0bGluZUx2bCl7XHJcblx0XHRcdFx0XHRcdGlkZW50aXR5LnR5cGU9XCJoZWFkaW5nXCJcclxuXHRcdFx0XHRcdFx0aWRlbnRpdHkub3V0bGluZT1wYXJzZUludChvdXRsaW5lTHZsKSsxXHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRyZXR1cm4gaWRlbnRpdHlcclxuXHRcdH0sXHJcblx0XHRyKHdYbWwpe1xyXG5cdFx0XHRyZXR1cm4ge3R5cGU6XCJyXCIsIHByOiB3WG1sLmNoaWxkcmVuLmZpbmQoKHtuYW1lfSk9Pm5hbWU9PVwidzpyUHJcIiksIGNoaWxkcmVuOiB3WG1sLmNoaWxkcmVuLmZpbHRlcigoe25hbWV9KT0+bmFtZSE9XCJ3OnJQclwiKX1cclxuXHRcdH0sXHJcblx0XHRmbGRDaGFyKHdYbWwpe1xyXG5cdFx0XHRyZXR1cm4gd1htbC5hdHRyaWJzW1widzpmbGRDaGFyVHlwZVwiXVxyXG5cdFx0fSxcclxuXHJcblx0XHRpbmxpbmUod1htbCxvZmZpY2VEb2N1bWVudCl7XHJcblx0XHRcdGxldCAkPW9mZmljZURvY3VtZW50LmNvbnRlbnQod1htbClcclxuXHRcdFx0Y29uc3QgcHJvcHM9JC5wcm9wcyh7XHJcblx0XHRcdFx0Li4uZHJhd21sKG9mZmljZURvY3VtZW50KSxcclxuXHRcdFx0XHRfX2ZpbHRlcjpcIndwXFxcXDpleHRlbnQsd3BcXFxcOmVmZmVjdEV4dGVudFwiLFxyXG5cdFx0XHR9KVxyXG5cdFx0XHRyZXR1cm4ge1xyXG5cdFx0XHRcdHR5cGU6YGRyYXdpbmcuaW5saW5lYCwgXHJcblx0XHRcdFx0Li4ucHJvcHMsXHJcblx0XHRcdFx0Y2hpbGRyZW46JC5maW5kKCdhXFxcXDpncmFwaGljPmFcXFxcOmdyYXBoaWNEYXRhJykuY2hpbGRyZW4oKS50b0FycmF5KClcclxuXHRcdFx0fVxyXG5cdFx0fSxcclxuXHRcdGFuY2hvcih3WG1sLCBvZmZpY2VEb2N1bWVudCl7XHJcblx0XHRcdGxldCAkPW9mZmljZURvY3VtZW50LmNvbnRlbnQod1htbClcclxuXHRcdFx0bGV0IGdyYXBoaWNEYXRhPSQuZmluZCgnPmFcXFxcOmdyYXBoaWM+YVxcXFw6Z3JhcGhpY0RhdGEnKVxyXG5cdFx0XHRsZXQgdHlwZT1ncmFwaGljRGF0YS5hdHRyKFwidXJpXCIpLnNwbGl0KFwiL1wiKS5wb3AoKVxyXG5cdFx0XHRsZXQgY2hpbGRyZW49Z3JhcGhpY0RhdGEuY2hpbGRyZW4oKS50b0FycmF5KClcclxuXHRcdFx0aWYodHlwZT09XCJ3b3JkcHJvY2Vzc2luZ0dyb3VwXCIpXHJcblx0XHRcdFx0Y2hpbGRyZW49Y2hpbGRyZW5bMF0uY2hpbGRyZW4uZmlsdGVyKGE9PmEubmFtZS5zcGxpdChcIjpcIilbMF0hPVwid3BnXCIpXHJcblxyXG5cdFx0XHRyZXR1cm4ge3R5cGU6XCJkcmF3aW5nLmFuY2hvclwiLGNoaWxkcmVufVxyXG5cdFx0fSxcclxuXHJcblx0XHRwaWMod1htbCwgb2ZmaWNlRG9jdW1lbnQpe1xyXG5cdFx0XHRjb25zdCAkPW9mZmljZURvY3VtZW50LiQod1htbClcclxuICAgICAgICAgICAgY29uc3QgcHJvcHM9JC5wcm9wcyh7XHJcbiAgICAgICAgICAgICAgICAuLi5kcmF3bWwob2ZmaWNlRG9jdW1lbnQpLFxyXG4gICAgICAgICAgICAgICAgdGlkeTooe3NwUHIsIG52UGljUHI6e2NOdlByPXt9LGNOdlNwUHI9e30sbnZQcj17fX0sIHN0eWxlOntsblJlZj17fSxmaWxsUmVmPXt9LGVmZmVjdFJlZj17fX09e30sLi4ub3RoZXJzfSk9Pih7Li4ubG5SZWYsLi4uZmlsbFJlZiwgLi4uZWZmZWN0UmVmLC4uLnNwUHIsIC4uLmNOdlByLC4uLmNOdlNwUHIsLi4ubnZQciwuLi5vdGhlcnN9KVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICByZXR1cm4gey4uLnByb3BzLHR5cGU6XCJwaWN0dXJlXCJ9XHJcbiAgICAgICAgfSxcclxuXHJcblx0XHR3c3Aod1htbCwgb2ZmaWNlRG9jdW1lbnQpe1xyXG5cdFx0XHRjb25zdCBjb250ZW50PVwid3BzXFxcXDp0eGJ4XCJcclxuXHRcdFx0Y29uc3QgJD1vZmZpY2VEb2N1bWVudC4kKHdYbWwpXHJcblx0XHRcdGNvbnN0IGNoaWxkcmVuPSQuY2hpbGRyZW4oY29udGVudCkudG9BcnJheSgpXHJcblx0XHRcdGNvbnN0IHNhbWU9KGtleXMsZngpPT5rZXlzLnJlZHVjZSgoZnMsIGspPT4oZnNba109ZngsIGZzKSx7fSlcclxuXHJcblx0XHRcdGNvbnN0IHByb3BzPSQucHJvcHMoe1xyXG5cdFx0XHRcdC4uLmRyYXdtbChvZmZpY2VEb2N1bWVudCksXHJcblx0XHRcdFx0Li4uc2FtZShcInIsdCxsLGJcIi5zcGxpdChcIixcIikubWFwKGE9PmAke2F9SW5zYCksIHY9Pm9mZmljZURvY3VtZW50LmRvYy5lbXUyUHgodikpLFxyXG5cdFx0XHRcdF9fZmlsdGVyOmA6bm90KCR7Y29udGVudH0pYCxcclxuXHRcdFx0XHR0aWR5Oih7Y052U3BQcj17fSwgc3BQcj17fSwgc3R5bGU6e2xuUmVmPXt9LGZpbGxSZWY9e30sZWZmZWN0UmVmPXt9LGZvbnRSZWY9e319PXt9LC4uLm90aGVyc30pPT4oey4uLmNOdlNwUHIsIC4uLmxuUmVmLC4uLmZpbGxSZWYsIC4uLmVmZmVjdFJlZiwgLi4uc3BQciwgdGV4dFN0eWxlOiBmb250UmVmLCAuLi5vdGhlcnN9KVxyXG5cdFx0XHR9KVxyXG5cdFx0XHRyZXR1cm4gey4uLnByb3BzLCB0eXBlOlwic2hhcGVcIiwgY2hpbGRyZW59XHJcblx0XHR9LFxyXG5cdFx0RmFsbGJhY2soKXtcclxuXHRcdFx0cmV0dXJuIG51bGxcclxuXHRcdH0sXHJcblx0XHRzZHQod1htbCxvZmZpY2VEb2N1bWVudCl7XHJcblx0XHRcdGxldCAkPW9mZmljZURvY3VtZW50LmNvbnRlbnQod1htbClcclxuXHRcdFx0bGV0IHByPSQuZmluZCgnPndcXFxcOnNkdFByJylcclxuXHRcdFx0bGV0IGNvbnRlbnQ9JC5maW5kKCc+d1xcXFw6c2R0Q29udGVudCcpXHJcblx0XHRcdGxldCBjaGlsZHJlbj1jb250ZW50LmNoaWxkcmVuKCkudG9BcnJheSgpXHJcblxyXG5cdFx0XHRsZXQgZWxCaW5kaW5nPXByLmZpbmQoJ3dcXFxcOmRhdGFCaW5kaW5nJykuZ2V0KDApXHJcblx0XHRcdGlmKGVsQmluZGluZyl7Ly9wcm9wZXJ0aWVzXHJcblx0XHRcdFx0bGV0IHBhdGg9ZWxCaW5kaW5nLmF0dHJpYnNbJ3c6eHBhdGgnXSxcclxuXHRcdFx0XHRcdGQ9cGF0aC5zcGxpdCgvW1xcL1xcOlxcW10vKSxcclxuXHRcdFx0XHRcdG5hbWU9KGQucG9wKCksZC5wb3AoKSk7XHJcblx0XHRcdFx0bGV0IHZhbHVlPWNvbnRlbnQudGV4dCgpXHJcblxyXG5cdFx0XHRcdHJldHVybiB7dHlwZTpcInByb3BlcnR5XCIsIG5hbWUsIHZhbHVlLCBjaGlsZHJlbn1cclxuXHRcdFx0fWVsc2V7Ly9jb250cm9sc1xyXG5cdFx0XHRcdGxldCBwckNoaWxkcmVuPXByLmdldCgwKS5jaGlsZHJlblxyXG5cdFx0XHRcdGxldCBlbFR5cGU9cHJDaGlsZHJlbltwckNoaWxkcmVuLmxlbmd0aC0xXVxyXG5cdFx0XHRcdGxldCBuYW1lPWVsVHlwZS5uYW1lLnNwbGl0KFwiOlwiKS5wb3AoKVxyXG5cdFx0XHRcdGxldCB0eXBlPVwidGV4dCxwaWN0dXJlLGRvY1BhcnRMaXN0LGRvY1BhcnRPYmosY29tYm9Cb3gsZHJvcERvd25MaXN0LGRhdGUsY2hlY2tib3gscmVwZWF0aW5nU2VjdGlvbixyZXBlYXRpbmdTZWN0aW9uSXRlbVwiLnNwbGl0KFwiLFwiKVxyXG5cdFx0XHRcdFx0LmZpbmQoYT0+YT09bmFtZSlcclxuXHRcdFx0XHRsZXQgbW9kZWw9e2NoaWxkcmVufVxyXG5cdFx0XHRcdGlmKHR5cGUpe1xyXG5cdFx0XHRcdFx0bW9kZWwudHlwZT1gY29udHJvbC4ke3R5cGV9YFxyXG5cdFx0XHRcdH1lbHNley8vY29udGFpbmVyXHJcblx0XHRcdFx0XHRpZihjb250ZW50LmZpbmQoXCJ3XFxcXDpwLHdcXFxcOnRibCx3XFxcXDp0cix3XFxcXDp0Y1wiKS5sZW5ndGgpe1xyXG5cdFx0XHRcdFx0XHRtb2RlbC50eXBlPVwiYmxvY2tcIlxyXG5cdFx0XHRcdFx0fWVsc2V7XHJcblx0XHRcdFx0XHRcdG1vZGVsLnR5cGU9XCJpbmxpbmVcIlxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0JD1vZmZpY2VEb2N1bWVudC5jb250ZW50XHJcblx0XHRcdFx0c3dpdGNoKG1vZGVsLnR5cGUpe1xyXG5cdFx0XHRcdFx0Y2FzZSBcImNvbnRyb2wuZHJvcERvd25MaXN0XCI6XHJcblx0XHRcdFx0XHRjYXNlIFwiY29udHJvbC5jb21ib0JveFwiOntcclxuXHRcdFx0XHRcdFx0bGV0IHNlbGVjdGVkPSQoY29udGVudCkudGV4dCgpXHJcblx0XHRcdFx0XHRcdG1vZGVsLm9wdGlvbnM9JChlbFR5cGUpXHJcblx0XHRcdFx0XHRcdFx0LmZpbmQoXCJ3XFxcXDpsaXN0SXRlbVwiKVxyXG5cdFx0XHRcdFx0XHRcdC5tYXAoKGksbGkpPT57XHJcblx0XHRcdFx0XHRcdFx0XHRyZXR1cm4ge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5VGV4dDogbGkuYXR0cmlic1tcInc6ZGlzcGxheVRleHRcIl0sXHJcblx0XHRcdFx0XHRcdFx0XHRcdHZhbHVlOiBsaS5hdHRyaWJzW1widzp2YWx1ZVwiXVxyXG5cdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdH0pXHJcblx0XHRcdFx0XHRcdFx0LmdldCgpXHJcblx0XHRcdFx0XHRcdG1vZGVsLnZhbHVlPShtb2RlbC5vcHRpb25zLmZpbmQoYT0+YS5kaXNwbGF5VGV4dD09c2VsZWN0ZWQpfHx7fSkudmFsdWVcclxuXHRcdFx0XHRcdFx0YnJlYWtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdGNhc2UgXCJjb250cm9sLmNoZWNrYm94XCI6e1xyXG5cdFx0XHRcdFx0XHRsZXQgbnM9ZWxUeXBlLm5hbWUuc3BsaXQoXCI6XCIpWzBdXHJcblx0XHRcdFx0XHRcdG1vZGVsLmNoZWNrZWQ9JChlbFR5cGUpLmZpbmQoYCR7bnN9XFxcXDpjaGVja2VkYCkuYXR0cihgJHtuc306dmFsYCk9PVwiMVwiXHJcblx0XHRcdFx0XHRcdGJyZWFrXHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRjYXNlIFwiY29udHJvbC50ZXh0XCI6XHJcblx0XHRcdFx0XHRcdGlmKGNvbnRlbnQuZmluZCgnd1xcXFw6ciBbd1xcXFw6dmFsfj1QbGFjZWhvbGRlcl0nKS5sZW5ndGg9PTApXHJcblx0XHRcdFx0XHRcdFx0bW9kZWwudmFsdWU9Y29udGVudC50ZXh0KClcclxuXHRcdFx0XHRcdFx0YnJlYWtcclxuXHRcdFx0XHRcdGNhc2UgXCJjb250cm9sLmRhdGVcIjpcclxuXHRcdFx0XHRcdFx0bW9kZWwudmFsdWU9bmV3IERhdGUoJChlbFR5cGUpLmF0dHIoXCJ3OmZ1bGxEYXRlXCIpKVxyXG5cdFx0XHRcdFx0XHRtb2RlbC5mb3JtYXQ9JChlbFR5cGUpLmZpbmQoXCJ3XFxcXDpkYXRlRm9ybWF0XCIpLmF0dHIoXCJ3OnZhbFwiKVxyXG5cdFx0XHRcdFx0XHRtb2RlbC5sb2NhbGU9JChlbFR5cGUpLmZpbmQoXCJ3XFxcXDpsaWRcIikuYXR0cihcInc6dmFsXCIpXHJcblx0XHRcdFx0XHRcdGJyZWFrXHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHJldHVybiBtb2RlbFxyXG5cdFx0XHR9XHJcblx0XHR9LFxyXG5cdFx0aHlwZXJsaW5rKHdYbWwsb2ZmaWNlRG9jdW1lbnQpe1xyXG5cdFx0XHRpZih3WG1sLmF0dHJpYnNbXCJyOmlkXCJdKXtcclxuXHRcdFx0XHRsZXQgdXJsPW9mZmljZURvY3VtZW50LmdldFJlbCh3WG1sLmF0dHJpYnNbXCJyOmlkXCJdKVxyXG5cdFx0XHRcdHJldHVybiB7dHlwZTpcImh5cGVybGlua1wiLCB1cmx9XHJcblx0XHRcdH1lbHNlIGlmKHdYbWwuYXR0cmlic1tcInc6YW5jaG9yXCJdKXtcclxuXHRcdFx0XHRyZXR1cm4ge3R5cGU6XCJoeXBlcmxpbmtcIiwgdXJsOmAjJHt3WG1sLmF0dHJpYnNbXCJ3OmFuY2hvclwiXX1gfVxyXG5cdFx0XHR9XHJcblx0XHR9LFxyXG5cdFx0dGJsKHdYbWwpe1xyXG5cdFx0XHRyZXR1cm4gd1htbC5jaGlsZHJlbi5yZWR1Y2UoKHN0YXRlLG5vZGUpPT57XHJcblx0XHRcdFx0c3dpdGNoKG5vZGUubmFtZSl7XHJcblx0XHRcdFx0Y2FzZSBcInc6dGJsUHJcIjpcclxuXHRcdFx0XHRcdHN0YXRlLnByPW5vZGVcclxuXHRcdFx0XHRicmVha1xyXG5cdFx0XHRcdGNhc2UgXCJ3OnRibEdyaWRcIjpcclxuXHRcdFx0XHRcdHN0YXRlLmNvbHM9bm9kZS5jaGlsZHJlblxyXG5cdFx0XHRcdGJyZWFrXHJcblx0XHRcdFx0ZGVmYXVsdDpcclxuXHRcdFx0XHRcdHN0YXRlLmNoaWxkcmVuLnB1c2gobm9kZSlcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0cmV0dXJuIHN0YXRlXHJcblx0XHRcdH0se3R5cGU6XCJ0YmxcIixjaGlsZHJlbjpbXSxwcjpudWxsLGNvbHM6W119KVxyXG5cdFx0fSxcclxuXHRcdHRyKHdYbWwpe1xyXG5cdFx0XHRyZXR1cm4gd1htbC5jaGlsZHJlbi5yZWR1Y2UoKHN0YXRlLG5vZGUpPT57XHJcblx0XHRcdFx0c3dpdGNoKG5vZGUubmFtZSl7XHJcblx0XHRcdFx0Y2FzZSBcInc6dHJQclwiOlxyXG5cdFx0XHRcdFx0c3RhdGUucHI9bm9kZVxyXG5cdFx0XHRcdFx0c3RhdGUuaXNIZWFkZXI9ISFub2RlLmNoaWxkcmVuLmZpbmQoYT0+YS5uYW1lPT1cInc6dGJsSGVhZGVyXCIpXHJcblx0XHRcdFx0YnJlYWtcclxuXHRcdFx0XHRkZWZhdWx0OlxyXG5cdFx0XHRcdFx0c3RhdGUuY2hpbGRyZW4ucHVzaChub2RlKVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRyZXR1cm4gc3RhdGVcclxuXHRcdFx0fSx7dHlwZTpcInRyXCIsY2hpbGRyZW46W10scHI6bnVsbH0pXHJcblx0XHR9LFxyXG5cdFx0dGMod1htbCl7XHJcblx0XHRcdHJldHVybiB3WG1sLmNoaWxkcmVuLnJlZHVjZSgoc3RhdGUsbm9kZSk9PntcclxuXHRcdFx0XHRzd2l0Y2gobm9kZS5uYW1lKXtcclxuXHRcdFx0XHRjYXNlIFwidzp0Y1ByXCI6XHJcblx0XHRcdFx0XHRzdGF0ZS5wcj1ub2RlXHJcblx0XHRcdFx0YnJlYWtcclxuXHRcdFx0XHRkZWZhdWx0OlxyXG5cdFx0XHRcdFx0c3RhdGUuY2hpbGRyZW4ucHVzaChub2RlKVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRyZXR1cm4gc3RhdGVcclxuXHRcdFx0fSx7dHlwZTpcInRjXCIsY2hpbGRyZW46W10scHI6bnVsbH0pXHJcblx0XHR9LFxyXG5cdFx0YWx0Q2h1bmsod1htbCwgb2ZmaWNlRG9jdW1lbnQpe1xyXG5cdFx0XHRsZXQgcklkPXdYbWwuYXR0cmlic1sncjppZCddXHJcblx0XHRcdGxldCBkYXRhPW9mZmljZURvY3VtZW50LmdldFJlbChySWQpXHJcblxyXG5cdFx0XHRsZXQgcGFydE5hbWU9b2ZmaWNlRG9jdW1lbnQuZm9sZGVyK29mZmljZURvY3VtZW50LnJlbHMoYFtJZD0ke3JJZH1dYCkuYXR0cihcIlRhcmdldFwiKVxyXG5cdFx0XHRsZXQgY29udGVudFR5cGU9b2ZmaWNlRG9jdW1lbnQuZG9jLmNvbnRlbnRUeXBlcyhgT3ZlcnJpZGVbUGFydE5hbWU9JyR7cGFydE5hbWV9J11gKS5hdHRyKFwiQ29udGVudFR5cGVcIilcclxuXHRcdFx0cmV0dXJuIHt0eXBlOlwiY2h1bmtcIiwgZGF0YSwgY29udGVudFR5cGV9XHJcblx0XHR9LFxyXG5cdFx0ZG9jRGVmYXVsdHMod1htbCl7XHJcblx0XHRcdHJldHVybiB7dHlwZTpcInN0eWxlXCJ9XHJcblx0XHR9LFxyXG5cdFx0c3R5bGUod1htbCl7XHJcblx0XHRcdHJldHVybiB7dHlwZTpcInN0eWxlXCIsIGlkOndYbWwuYXR0cmlic1sndzpzdHlsZUlkJ119XHJcblx0XHR9LFxyXG5cdFx0YWJzdHJhY3ROdW0od1htbCl7XHJcblx0XHRcdHJldHVybiB7dHlwZTpcImFic3RyYWN0TnVtXCIsaWQ6d1htbC5hdHRyaWJzW1widzphYnN0cmFjdE51bUlkXCJdfVxyXG5cdFx0fSxcclxuXHRcdG51bSh3WG1sKXtcclxuXHRcdFx0cmV0dXJuIHt0eXBlOlwibnVtXCIsaWQ6d1htbC5hdHRyaWJzW1widzpudW1JZFwiXSxhYnN0cmFjdE51bTp3WG1sLmNoaWxkcmVuLmZpbmQoYT0+YS5uYW1lPT1cInc6YWJzdHJhY3ROdW1JZFwiKS5hdHRyaWJzW1widzp2YWxcIl19XHJcblx0XHR9LFxyXG5cdFx0bGF0ZW50U3R5bGVzKCl7XHJcblx0XHRcdHJldHVybiBudWxsXHJcblx0XHR9LFxyXG5cdFx0b2JqZWN0KHdYbWwsb2ZmaWNlRG9jdW1lbnQpe1xyXG5cdFx0XHRsZXQgb2xlPW9mZmljZURvY3VtZW50LmNvbnRlbnQod1htbCkuZmluZChcIm9cXFxcOk9MRU9iamVjdFwiKVxyXG5cdFx0XHRsZXQgdHlwZT1vbGUuYXR0cihcIlByb2dJRFwiKVxyXG5cdFx0XHRsZXQgZW1iZWQ9b2xlLmF0dHIoXCJUeXBlXCIpPT09XCJFbWJlZFwiXHJcblx0XHRcdGxldCBySWQ9b2xlLmF0dHIoXCJyOmlkXCIpXHJcblx0XHRcdHJldHVybiB7dHlwZTpcIm9iamVjdFwiLGVtYmVkLCBwcm9nOiB0eXBlLCBkYXRhOm9mZmljZURvY3VtZW50LmdldFJlbE9sZU9iamVjdChySWQpfVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL2RvY3gvb2ZmaWNlRG9jdW1lbnQuanMiXSwibmFtZXMiOlsiX2Fzc2lnblJlbCIsInNwbGl0Iiwic3R5bGVzIiwiJCIsInByb3RvdHlwZSIsImJhc2VzdCIsInNlbGVjdG9yIiwiY3VycmVudCIsImxlbmd0aCIsImlzIiwicm9vdCIsImZpbmQiLCJjaGlsZHJlbiIsImF0dHIiLCJub3QiLCJjcmVhdGVFbGVtZW50IiwiaWRlbnRpZnkiLCJjb25zdHJ1Y3RvciIsImJpbmQiLCJudW1iZXJpbmciLCJyZW5kZXJOb2RlIiwiZ2V0IiwiY29udGVudCIsImRvbUhhbmRsZXIiLCJkb2MiLCJfaWRlbnRpZnkiLCJtb2RlbCIsImFyZ3VtZW50cyIsImVtaXQiLCJ0eXBlIiwiZG9jdW1lbnQiLCJpZGVudGl0aWVzIiwid1htbCIsIm9mZmljZURvY3VtZW50IiwiZWFjaCIsImkiLCJzZWN0IiwiZW5kIiwiY2xvc2VzdCIsInByZXZVbnRpbCIsInRvQXJyYXkiLCJyZXZlcnNlIiwicHVzaCIsInNlY3RQciIsImhmIiwiZmlsdGVyIiwiYSIsIm5hbWUiLCJyZWR1Y2UiLCJoZWFkZXJzIiwic2V0IiwiYXR0cmlicyIsImdldFJlbCIsIk1hcCIsImZvb3RlcnMiLCJoYXNUaXRsZVBhZ2UiLCJwIiwiaWRlbnRpdHkiLCJwciIsInBQciIsInN0eWxlSWQiLCJudW1QciIsIm51bUlkIiwibGV2ZWwiLCJwYXJzZUludCIsInN0YXJ0c1dpdGgiLCJvdXRsaW5lTHZsIiwib3V0bGluZSIsInIiLCJmbGRDaGFyIiwiaW5saW5lIiwicHJvcHMiLCJfX2ZpbHRlciIsImFuY2hvciIsImdyYXBoaWNEYXRhIiwicG9wIiwicGljIiwidGlkeSIsInNwUHIiLCJudlBpY1ByIiwiY052UHIiLCJjTnZTcFByIiwibnZQciIsInN0eWxlIiwibG5SZWYiLCJmaWxsUmVmIiwiZWZmZWN0UmVmIiwib3RoZXJzIiwid3NwIiwic2FtZSIsImtleXMiLCJmeCIsImZzIiwiayIsIm1hcCIsImVtdTJQeCIsInYiLCJmb250UmVmIiwidGV4dFN0eWxlIiwiRmFsbGJhY2siLCJzZHQiLCJlbEJpbmRpbmciLCJwYXRoIiwiZCIsInZhbHVlIiwidGV4dCIsInByQ2hpbGRyZW4iLCJlbFR5cGUiLCJzZWxlY3RlZCIsIm9wdGlvbnMiLCJsaSIsImRpc3BsYXlUZXh0IiwibnMiLCJjaGVja2VkIiwiRGF0ZSIsImZvcm1hdCIsImxvY2FsZSIsImh5cGVybGluayIsInVybCIsInRibCIsInN0YXRlIiwibm9kZSIsImNvbHMiLCJ0ciIsImlzSGVhZGVyIiwidGMiLCJhbHRDaHVuayIsInJJZCIsImRhdGEiLCJwYXJ0TmFtZSIsImZvbGRlciIsInJlbHMiLCJjb250ZW50VHlwZSIsImNvbnRlbnRUeXBlcyIsImRvY0RlZmF1bHRzIiwiaWQiLCJhYnN0cmFjdE51bSIsIm51bSIsImxhdGVudFN0eWxlcyIsIm9iamVjdCIsIm9sZSIsImVtYmVkIiwicHJvZyIsImdldFJlbE9sZU9iamVjdCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7OztBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzBCQUdRO0FBQUE7O0FBQ047QUFDQSxRQUFLQSxVQUFMLENBQWdCLDRCQUE0QkMsS0FBNUIsQ0FBa0MsR0FBbEMsQ0FBaEI7O0FBRUEsT0FBRyxLQUFLQyxNQUFSLEVBQWU7QUFBQTtBQUNkLFNBQUlDLElBQUUsT0FBS0QsTUFBWDtBQUNBLFlBQUtBLE1BQUwsQ0FBWUUsU0FBWixDQUFzQkMsTUFBdEIsR0FBNkIsVUFBU0MsUUFBVCxFQUFrQjtBQUM5QyxVQUFJQyxVQUFRLElBQVo7QUFDQSxhQUFNQSxRQUFRQyxNQUFSLEdBQWUsQ0FBckIsRUFBdUI7QUFDdEIsV0FBR0QsUUFBUUUsRUFBUixDQUFXSCxRQUFYLENBQUgsRUFBd0I7QUFDdkIsZUFBT0gsRUFBRUksT0FBRixDQUFQO0FBQ0E7QUFDREEsaUJBQVFKLEVBQUVPLElBQUYsR0FBU0MsSUFBVCw4QkFBd0NKLFFBQVFLLFFB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MVBLLEVBMFBBO0FBQ2hCLFNBQU8sRUFBQ0gsTUFBSyxhQUFOLEVBQW9CMEcsSUFBR3ZHLEtBQUttQixPQUFMLENBQWEsaUJBQWIsQ0FBdkIsRUFBUDtBQUNBLEVBNVBnQjtBQTZQakJzRixJQTdQaUIsZUE2UGJ6RyxJQTdQYSxFQTZQUjtBQUNSLFNBQU8sRUFBQ0gsTUFBSyxLQUFOLEVBQVkwRyxJQUFHdkcsS0FBS21CLE9BQUwsQ0FBYSxTQUFiLENBQWYsRUFBdUNxRixhQUFZeEcsS0FBS3BCLFFBQUwsQ0FBY0QsSUFBZCxDQUFtQjtBQUFBLFdBQUdtQyxFQUFFQyxJQUFGLElBQVEsaUJBQVg7QUFBQSxJQUFuQixFQUFpREksT0FBakQsQ0FBeUQsT0FBekQsQ0FBbkQsRUFBUDtBQUNBLEVBL1BnQjtBQWdRakJ1RixhQWhRaUIsMEJBZ1FIO0FBQ2IsU0FBTyxJQUFQO0FBQ0EsRUFsUWdCO0FBbVFqQkMsT0FuUWlCLGtCQW1RVjNHLElBblFVLEVBbVFMQyxjQW5RSyxFQW1RVTtBQUMxQixNQUFJMkcsTUFBSTNHLGVBQWVYLE9BQWYsQ0FBdUJVLElBQXZCLEVBQTZCckIsSUFBN0IsQ0FBa0MsZUFBbEMsQ0FBUjtBQUNBLE1BQUlrQixPQUFLK0csSUFBSS9ILElBQUosQ0FBUyxRQUFULENBQVQ7QUFDQSxNQUFJZ0ksUUFBTUQsSUFBSS9ILElBQUosQ0FBUyxNQUFULE1BQW1CLE9BQTdCO0FBQ0EsTUFBSWtILE1BQUlhLElBQUkvSCxJQUFKLENBQVMsTUFBVCxDQUFSO0FBQ0EsU0FBTyxFQUFDZ0IsTUFBSyxRQUFOLEVBQWVnSCxZQUFmLEVBQXNCQyxNQUFNakgsSUFBNUIsRUFBa0NtRyxNQUFLL0YsZUFBZThHLGVBQWYsQ0FBK0JoQixHQUEvQixDQUF2QyxFQUFQO0FBQ0E7QUF6UWdCLEMiLCJmaWxlIjoib2ZmaWNlRG9jdW1lbnQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmFzZSBmcm9tIFwiLi4vb2ZmaWNlRG9jdW1lbnRcIlxyXG5pbXBvcnQgZHJhd21sIGZyb20gXCIuLi9kcmF3bWxcIlxyXG5cclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgZXh0ZW5kcyBCYXNle1xyXG5cdF9pbml0KCl7XHJcblx0XHRzdXBlci5faW5pdCgpXHJcblx0XHR0aGlzLl9hc3NpZ25SZWwoXCJzdHlsZXMsbnVtYmVyaW5nLHNldHRpbmdzXCIuc3BsaXQoXCIsXCIpKVxyXG5cclxuXHRcdGlmKHRoaXMuc3R5bGVzKXtcclxuXHRcdFx0bGV0ICQ9dGhpcy5zdHlsZXNcclxuXHRcdFx0dGhpcy5zdHlsZXMucHJvdG90eXBlLmJhc2VzdD1mdW5jdGlvbihzZWxlY3Rvcil7XHJcblx0XHRcdFx0bGV0IGN1cnJlbnQ9dGhpc1xyXG5cdFx0XHRcdHdoaWxlKGN1cnJlbnQubGVuZ3RoPjApe1xyXG5cdFx0XHRcdFx0aWYoY3VycmVudC5pcyhzZWxlY3Rvcikpe1xyXG5cdFx0XHRcdFx0XHRyZXR1cm4gJChjdXJyZW50KVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0Y3VycmVudD0kLnJvb3QoKS5maW5kKGB3XFxcXDpzdHlsZVt3XFxcXDpzdHlsZUlkPVwiJHtjdXJyZW50LmNoaWxkcmVuKFwid1xcXFw6YmFzZWRPblwiKS5hdHRyKFwidzp2YWxcIil9XCJdYClcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0cmV0dXJuIHRoaXMubm90KHRoaXMpXHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHJlbmRlcihjcmVhdGVFbGVtZW50LCBpZGVudGlmeT10aGlzLmNvbnN0cnVjdG9yLmlkZW50aWZ5LmJpbmQodGhpcy5jb25zdHJ1Y3Rvcikpe1xyXG5cdFx0bGV0IHN0eWxlcywgbnVtYmVyaW5nXHJcblx0XHRpZih0aGlzLnN0eWxlcylcclxuXHRcdFx0c3R5bGVzPXRoaXMucmVuZGVyTm9kZSh0aGlzLnN0eWxlcyhcIndcXFxcOnN0eWxlc1wiKS5nZXQoMCksY3JlYXRlRWxlbWVudCxpZGVudGlmeSlcclxuXHRcdGlmKHRoaXMubnVtYmVyaW5nKVxyXG5cdFx0XHRudW1iZXJpbmc9dGhpcy5yZW5kZXJOb2RlKHRoaXMubnVtYmVyaW5nKFwid1xcXFw6bnVtYmVyaW5nXCIpLmdldCgwKSxjcmVhdGVFbGVtZW50LGlkZW50aWZ5KVxyXG5cdFx0cmV0dXJuIHRoaXMucmVuZGVyTm9kZSh0aGlzLmNvbnRlbnQoXCJ3XFxcXDpkb2N1bWVudFwiKS5nZXQoMCksY3JlYXRlRWxlbWVudCwgaWRlbnRpZnksIHtzdHlsZXMsbnVtYmVyaW5nfSlcclxuXHR9XHJcblxyXG5cdHBhcnNlKGRvbUhhbmRsZXIsaWRlbnRpZnk9dGhpcy5jb25zdHJ1Y3Rvci5pZGVudGlmeS5iaW5kKHRoaXMuY29uc3RydWN0b3IpKXtcclxuXHRcdGNvbnN0IGRvYz17fVxyXG5cdFx0Y29uc3QgY3JlYXRlRWxlbWVudD1kb21IYW5kbGVyLmNyZWF0ZUVsZW1lbnQuYmluZChkb21IYW5kbGVyKVxyXG5cdFx0ZnVuY3Rpb24gX2lkZW50aWZ5KCl7XHJcblx0XHRcdGxldCBtb2RlbD1pZGVudGlmeSguLi5hcmd1bWVudHMpXHJcblx0XHRcdGlmKG1vZGVsICYmIHR5cGVvZihtb2RlbCk9PVwib2JqZWN0XCIpe1xyXG5cdFx0XHRcdGRvbUhhbmRsZXIuZW1pdChcIipcIixtb2RlbCwuLi5hcmd1bWVudHMpXHJcblx0XHRcdFx0ZG9tSGFuZGxlci5lbWl0KG1vZGVsLnR5cGUsIG1vZGVsLC4uLmFyZ3VtZW50cylcclxuXHRcdFx0XHRpZihkb21IYW5kbGVyW2BvbiR7bW9kZWwudHlwZX1gXSlcclxuXHRcdFx0XHRcdGRvbUhhbmRsZXJbYG9uJHttb2RlbC50eXBlfWBdKG1vZGVsLC4uLmFyZ3VtZW50cylcclxuXHRcdFx0fVxyXG5cdFx0XHRyZXR1cm4gbW9kZWxcclxuXHRcdH1cclxuXHJcblx0XHRpZih0aGlzLnN0eWxlcylcclxuXHRcdFx0ZG9jLnN0eWxlcz10aGlzLnJlbmRlck5vZGUodGhpcy5zdHlsZXMoXCJ3XFxcXDpzdHlsZXNcIikuZ2V0KDApLGNyZWF0ZUVsZW1lbnQsX2lkZW50aWZ5KVxyXG5cdFx0aWYodGhpcy5udW1iZXJpbmcpXHJcblx0XHRcdGRvYy5udW1iZXJpbmc9dGhpcy5yZW5kZXJOb2RlKHRoaXMubnVtYmVyaW5nKFwid1xcXFw6bnVtYmVyaW5nXCIpLmdldCgwKSxjcmVhdGVFbGVtZW50LF9pZGVudGlmeSlcclxuXHRcdGRvYy5kb2N1bWVudD10aGlzLnJlbmRlck5vZGUodGhpcy5jb250ZW50KFwid1xcXFw6ZG9jdW1lbnRcIikuZ2V0KDApLGNyZWF0ZUVsZW1lbnQsX2lkZW50aWZ5KVxyXG5cdFx0cmV0dXJuIGRvY1xyXG5cdH1cclxuXHJcblx0c3RhdGljIGlkZW50aXRpZXM9e1xyXG5cdFx0ZG9jdW1lbnQod1htbCxvZmZpY2VEb2N1bWVudCl7XHJcblx0XHRcdGxldCAkPW9mZmljZURvY3VtZW50LmNvbnRlbnRcclxuXHRcdFx0bGV0IGN1cnJlbnQ9bnVsbFxyXG5cdFx0XHRsZXQgY2hpbGRyZW49JChcIndcXFxcOnNlY3RQclwiKS5lYWNoKChpLHNlY3QpPT57XHJcblx0XHRcdFx0bGV0IGVuZD0kKHNlY3QpLmNsb3Nlc3QoJ3dcXFxcOmJvZHk+KicpXHJcblx0XHRcdFx0c2VjdC5jb250ZW50PWVuZC5wcmV2VW50aWwoY3VycmVudCkudG9BcnJheSgpLnJldmVyc2UoKVxyXG5cdFx0XHRcdGlmKCFlbmQuaXMoc2VjdCkpXHJcblx0XHRcdFx0XHRzZWN0LmNvbnRlbnQucHVzaChlbmQuZ2V0KDApKVxyXG5cdFx0XHRcdGN1cnJlbnQ9ZW5kXHJcblx0XHRcdH0pLnRvQXJyYXkoKVxyXG5cdFx0XHRyZXR1cm4ge3R5cGU6XCJkb2N1bWVudFwiLCBjaGlsZHJlbn1cclxuXHRcdH0sXHJcblx0XHRzZWN0UHIod1htbCxvZmZpY2VEb2N1bWVudCl7XHJcblx0XHRcdGNvbnN0IGhmPXR5cGU9PndYbWwuY2hpbGRyZW4uZmlsdGVyKGE9PmEubmFtZT09YHc6JHt0eXBlfVJlZmVyZW5jZWApLnJlZHVjZSgoaGVhZGVycyxhKT0+e1xyXG5cdFx0XHRcdFx0aGVhZGVycy5zZXQoYS5hdHRyaWJzW1widzp0eXBlXCJdLG9mZmljZURvY3VtZW50LmdldFJlbChhLmF0dHJpYnNbXCJyOmlkXCJdKSlcclxuXHRcdFx0XHRcdHJldHVybiBoZWFkZXJzXHJcblx0XHRcdFx0fSxuZXcgTWFwKCkpXHJcblxyXG5cdFx0XHRyZXR1cm4ge1xyXG5cdFx0XHRcdHR5cGU6XCJzZWN0aW9uXCIsXHJcblx0XHRcdFx0Y2hpbGRyZW46d1htbC5jb250ZW50LFxyXG5cdFx0XHRcdGhlYWRlcnM6aGYoXCJoZWFkZXJcIiksXHJcblx0XHRcdFx0Zm9vdGVyczpoZihcImZvb3RlclwiKSxcclxuXHRcdFx0XHRoYXNUaXRsZVBhZ2U6ICEhd1htbC5jaGlsZHJlbi5maW5kKGE9PmEubmFtZT09XCJ3OnRpdGxlUGdcIilcclxuXHRcdFx0fVxyXG5cdFx0fSxcclxuXHRcdHAod1htbCxvZmZpY2VEb2N1bWVudCl7XHJcblx0XHRcdGxldCAkPW9mZmljZURvY3VtZW50LmNvbnRlbnQod1htbClcclxuXHRcdFx0bGV0IHR5cGU9XCJwXCJcclxuXHJcblx0XHRcdGxldCBpZGVudGl0eT17dHlwZSxwcjp3WG1sLmNoaWxkcmVuLmZpbmQoKHtuYW1lfSk9Pm5hbWU9PVwidzpwUHJcIiksY2hpbGRyZW46d1htbC5jaGlsZHJlbi5maWx0ZXIoKHtuYW1lfSk9Pm5hbWUhPVwidzpwUHJcIil9XHJcblxyXG5cdFx0XHRsZXQgcFByPSQuZmluZChcIndcXFxcOnBQclwiKVxyXG5cdFx0XHRpZihwUHIubGVuZ3RoKXtcclxuXHRcdFx0XHRsZXQgc3R5bGVJZD1wUHIuZmluZChcIndcXFxcOnBTdHlsZVwiKS5hdHRyKFwidzp2YWxcIilcclxuXHJcblx0XHRcdFx0bGV0IG51bVByPXBQci5jaGlsZHJlbihcIndcXFxcOm51bVByXCIpXHJcblx0XHRcdFx0aWYoIW51bVByLmxlbmd0aCAmJiBzdHlsZUlkKXtcclxuXHRcdFx0XHRcdG51bVByPW9mZmljZURvY3VtZW50XHJcblx0XHRcdFx0XHRcdC5zdHlsZXMoYHdcXFxcOnN0eWxlW3dcXFxcOnN0eWxlSWQ9XCIke3N0eWxlSWR9XCJdYClcclxuXHRcdFx0XHRcdFx0LmJhc2VzdChgOmhhcyh3XFxcXDpudW1QcilgKVxyXG5cdFx0XHRcdFx0XHQuZmluZChcIndcXFxcOm51bVByXCIpXHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRpZihudW1Qci5sZW5ndGgpe1xyXG5cdFx0XHRcdFx0aWRlbnRpdHkudHlwZT1cImxpc3RcIlxyXG5cdFx0XHRcdFx0aWRlbnRpdHkubnVtSWQ9bnVtUHIuZmluZChcIndcXFxcOm51bUlkXCIpLmF0dHIoXCJ3OnZhbFwiKVxyXG5cdFx0XHRcdFx0aWRlbnRpdHkubGV2ZWw9cGFyc2VJbnQobnVtUHIuZmluZChcIndcXFxcOmlsdmxcIikuYXR0cihcInc6dmFsXCIpfHwwKVxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0aWYoc3R5bGVJZCAmJiBzdHlsZUlkLnN0YXJ0c1dpdGgoXCJIZWFkaW5nXCIpKXtcclxuXHRcdFx0XHRcdGxldCBvdXRsaW5lTHZsPW9mZmljZURvY3VtZW50XHJcblx0XHRcdFx0XHRcdC5zdHlsZXMoYHdcXFxcOnN0eWxlW3dcXFxcOnN0eWxlSWQ9XCIke3N0eWxlSWR9XCJdYClcclxuXHRcdFx0XHRcdFx0LmJhc2VzdChcIjpoYXMod1xcXFw6b3V0bGluZUx2bClcIilcclxuXHRcdFx0XHRcdFx0LmZpbmQoXCJ3XFxcXDpvdXRsaW5lTHZsXCIpXHJcblx0XHRcdFx0XHRcdC5hdHRyKFwidzp2YWxcIilcclxuXHRcdFx0XHRcdGlmKG91dGxpbmVMdmwpe1xyXG5cdFx0XHRcdFx0XHRpZGVudGl0eS50eXBlPVwiaGVhZGluZ1wiXHJcblx0XHRcdFx0XHRcdGlkZW50aXR5Lm91dGxpbmU9cGFyc2VJbnQob3V0bGluZUx2bCkrMVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0cmV0dXJuIGlkZW50aXR5XHJcblx0XHR9LFxyXG5cdFx0cih3WG1sKXtcclxuXHRcdFx0cmV0dXJuIHt0eXBlOlwiclwiLCBwcjogd1htbC5jaGlsZHJlbi5maW5kKCh7bmFtZX0pPT5uYW1lPT1cInc6clByXCIpLCBjaGlsZHJlbjogd1htbC5jaGlsZHJlbi5maWx0ZXIoKHtuYW1lfSk9Pm5hbWUhPVwidzpyUHJcIil9XHJcblx0XHR9LFxyXG5cdFx0ZmxkQ2hhcih3WG1sKXtcclxuXHRcdFx0cmV0dXJuIHdYbWwuYXR0cmlic1tcInc6ZmxkQ2hhclR5cGVcIl1cclxuXHRcdH0sXHJcblxyXG5cdFx0aW5saW5lKHdYbWwsb2ZmaWNlRG9jdW1lbnQpe1xyXG5cdFx0XHRsZXQgJD1vZmZpY2VEb2N1bWVudC5jb250ZW50KHdYbWwpXHJcblx0XHRcdGNvbnN0IHByb3BzPSQucHJvcHMoe1xyXG5cdFx0XHRcdC4uLmRyYXdtbChvZmZpY2VEb2N1bWVudCksXHJcblx0XHRcdFx0X19maWx0ZXI6XCJ3cFxcXFw6ZXh0ZW50LHdwXFxcXDplZmZlY3RFeHRlbnRcIixcclxuXHRcdFx0fSlcclxuXHRcdFx0cmV0dXJuIHtcclxuXHRcdFx0XHR0eXBlOmBkcmF3aW5nLmlubGluZWAsIFxyXG5cdFx0XHRcdC4uLnByb3BzLFxyXG5cdFx0XHRcdGNoaWxkcmVuOiQuZmluZCgnYVxcXFw6Z3JhcGhpYz5hXFxcXDpncmFwaGljRGF0YScpLmNoaWxkcmVuKCkudG9BcnJheSgpXHJcblx0XHRcdH1cclxuXHRcdH0sXHJcblx0XHRhbmNob3Iod1htbCwgb2ZmaWNlRG9jdW1lbnQpe1xyXG5cdFx0XHRsZXQgJD1vZmZpY2VEb2N1bWVudC5jb250ZW50KHdYbWwpXHJcblx0XHRcdGxldCBncmFwaGljRGF0YT0kLmZpbmQoJz5hXFxcXDpncmFwaGljPmFcXFxcOmdyYXBoaWNEYXRhJylcclxuXHRcdFx0bGV0IHR5cGU9Z3JhcGhpY0RhdGEuYXR0cihcInVyaVwiKS5zcGxpdChcIi9cIikucG9wKClcclxuXHRcdFx0bGV0IGNoaWxkcmVuPWdyYXBoaWNEYXRhLmNoaWxkcmVuKCkudG9BcnJheSgpXHJcblx0XHRcdGlmKHR5cGU9PVwid29yZHByb2Nlc3NpbmdHcm91cFwiKVxyXG5cdFx0XHRcdGNoaWxkcmVuPWNoaWxkcmVuWzBdLmNoaWxkcmVuLmZpbHRlcihhPT5hLm5hbWUuc3BsaXQoXCI6XCIpWzBdIT1cIndwZ1wiKVxyXG5cclxuXHRcdFx0cmV0dXJuIHt0eXBlOlwiZHJhd2luZy5hbmNob3JcIixjaGlsZHJlbn1cclxuXHRcdH0sXHJcblxyXG5cdFx0cGljKHdYbWwsIG9mZmljZURvY3VtZW50KXtcclxuXHRcdFx0Y29uc3QgJD1vZmZpY2VEb2N1bWVudC4kKHdYbWwpXHJcbiAgICAgICAgICAgIGNvbnN0IHByb3BzPSQucHJvcHMoe1xyXG4gICAgICAgICAgICAgICAgLi4uZHJhd21sKG9mZmljZURvY3VtZW50KSxcclxuICAgICAgICAgICAgICAgIHRpZHk6KHtzcFByLCBudlBpY1ByOntjTnZQcj17fSxjTnZTcFByPXt9LG52UHI9e319LCBzdHlsZTp7bG5SZWY9e30sZmlsbFJlZj17fSxlZmZlY3RSZWY9e319PXt9LC4uLm90aGVyc30pPT4oey4uLmxuUmVmLC4uLmZpbGxSZWYsIC4uLmVmZmVjdFJlZiwuLi5zcFByLCAuLi5jTnZQciwuLi5jTnZTcFByLC4uLm52UHIsLi4ub3RoZXJzfSlcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgcmV0dXJuIHsuLi5wcm9wcyx0eXBlOlwicGljdHVyZVwifVxyXG4gICAgICAgIH0sXHJcblxyXG5cdFx0d3NwKHdYbWwsIG9mZmljZURvY3VtZW50KXtcclxuXHRcdFx0Y29uc3QgY29udGVudD1cIndwc1xcXFw6dHhieFwiXHJcblx0XHRcdGNvbnN0ICQ9b2ZmaWNlRG9jdW1lbnQuJCh3WG1sKVxyXG5cdFx0XHRjb25zdCBjaGlsZHJlbj0kLmNoaWxkcmVuKGNvbnRlbnQpLnRvQXJyYXkoKVxyXG5cdFx0XHRjb25zdCBzYW1lPShrZXlzLGZ4KT0+a2V5cy5yZWR1Y2UoKGZzLCBrKT0+KGZzW2tdPWZ4LCBmcykse30pXHJcblxyXG5cdFx0XHRjb25zdCBwcm9wcz0kLnByb3BzKHtcclxuXHRcdFx0XHQuLi5kcmF3bWwob2ZmaWNlRG9jdW1lbnQpLFxyXG5cdFx0XHRcdC4uLnNhbWUoXCJyLHQsbCxiXCIuc3BsaXQoXCIsXCIpLm1hcChhPT5gJHthfUluc2ApLCB2PT5vZmZpY2VEb2N1bWVudC5kb2MuZW11MlB4KHYpKSxcclxuXHRcdFx0XHRfX2ZpbHRlcjpgOm5vdCgke2NvbnRlbnR9KWAsXHJcblx0XHRcdFx0dGlkeTooe2NOdlNwUHI9e30sIHNwUHI9e30sIHN0eWxlOntsblJlZj17fSxmaWxsUmVmPXt9LGVmZmVjdFJlZj17fSxmb250UmVmPXt9fT17fSwuLi5vdGhlcnN9KT0+KHsuLi5jTnZTcFByLCAuLi5sblJlZiwuLi5maWxsUmVmLCAuLi5lZmZlY3RSZWYsIC4uLnNwUHIsIHRleHRTdHlsZTogZm9udFJlZiwgLi4ub3RoZXJzfSlcclxuXHRcdFx0fSlcclxuXHRcdFx0cmV0dXJuIHsuLi5wcm9wcywgdHlwZTpcInNoYXBlXCIsIGNoaWxkcmVufVxyXG5cdFx0fSxcclxuXHRcdEZhbGxiYWNrKCl7XHJcblx0XHRcdHJldHVybiBudWxsXHJcblx0XHR9LFxyXG5cdFx0c2R0KHdYbWwsb2ZmaWNlRG9jdW1lbnQpe1xyXG5cdFx0XHRsZXQgJD1vZmZpY2VEb2N1bWVudC5jb250ZW50KHdYbWwpXHJcblx0XHRcdGxldCBwcj0kLmZpbmQoJz53XFxcXDpzZHRQcicpXHJcblx0XHRcdGxldCBjb250ZW50PSQuZmluZCgnPndcXFxcOnNkdENvbnRlbnQnKVxyXG5cdFx0XHRsZXQgY2hpbGRyZW49Y29udGVudC5jaGlsZHJlbigpLnRvQXJyYXkoKVxyXG5cclxuXHRcdFx0bGV0IGVsQmluZGluZz1wci5maW5kKCd3XFxcXDpkYXRhQmluZGluZycpLmdldCgwKVxyXG5cdFx0XHRpZihlbEJpbmRpbmcpey8vcHJvcGVydGllc1xyXG5cdFx0XHRcdGxldCBwYXRoPWVsQmluZGluZy5hdHRyaWJzWyd3OnhwYXRoJ10sXHJcblx0XHRcdFx0XHRkPXBhdGguc3BsaXQoL1tcXC9cXDpcXFtdLyksXHJcblx0XHRcdFx0XHRuYW1lPShkLnBvcCgpLGQucG9wKCkpO1xyXG5cdFx0XHRcdGxldCB2YWx1ZT1jb250ZW50LnRleHQoKVxyXG5cclxuXHRcdFx0XHRyZXR1cm4ge3R5cGU6XCJwcm9wZXJ0eVwiLCBuYW1lLCB2YWx1ZSwgY2hpbGRyZW59XHJcblx0XHRcdH1lbHNley8vY29udHJvbHNcclxuXHRcdFx0XHRsZXQgcHJDaGlsZHJlbj1wci5nZXQoMCkuY2hpbGRyZW5cclxuXHRcdFx0XHRsZXQgZWxUeXBlPXByQ2hpbGRyZW5bcHJDaGlsZHJlbi5sZW5ndGgtMV1cclxuXHRcdFx0XHRsZXQgbmFtZT1lbFR5cGUubmFtZS5zcGxpdChcIjpcIikucG9wKClcclxuXHRcdFx0XHRsZXQgdHlwZT1cInRleHQscGljdHVyZSxkb2NQYXJ0TGlzdCxkb2NQYXJ0T2JqLGNvbWJvQm94LGRyb3BEb3duTGlzdCxkYXRlLGNoZWNrYm94LHJlcGVhdGluZ1NlY3Rpb24scmVwZWF0aW5nU2VjdGlvbkl0ZW1cIi5zcGxpdChcIixcIilcclxuXHRcdFx0XHRcdC5maW5kKGE9PmE9PW5hbWUpXHJcblx0XHRcdFx0bGV0IG1vZGVsPXtjaGlsZHJlbn1cclxuXHRcdFx0XHRpZih0eXBlKXtcclxuXHRcdFx0XHRcdG1vZGVsLnR5cGU9YGNvbnRyb2wuJHt0eXBlfWBcclxuXHRcdFx0XHR9ZWxzZXsvL2NvbnRhaW5lclxyXG5cdFx0XHRcdFx0aWYoY29udGVudC5maW5kKFwid1xcXFw6cCx3XFxcXDp0Ymwsd1xcXFw6dHIsd1xcXFw6dGNcIikubGVuZ3RoKXtcclxuXHRcdFx0XHRcdFx0bW9kZWwudHlwZT1cImJsb2NrXCJcclxuXHRcdFx0XHRcdH1lbHNle1xyXG5cdFx0XHRcdFx0XHRtb2RlbC50eXBlPVwiaW5saW5lXCJcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdCQ9b2ZmaWNlRG9jdW1lbnQuY29udGVudFxyXG5cdFx0XHRcdHN3aXRjaChtb2RlbC50eXBlKXtcclxuXHRcdFx0XHRcdGNhc2UgXCJjb250cm9sLmRyb3BEb3duTGlzdFwiOlxyXG5cdFx0XHRcdFx0Y2FzZSBcImNvbnRyb2wuY29tYm9Cb3hcIjp7XHJcblx0XHRcdFx0XHRcdGxldCBzZWxlY3RlZD0kKGNvbnRlbnQpLnRleHQoKVxyXG5cdFx0XHRcdFx0XHRtb2RlbC5vcHRpb25zPSQoZWxUeXBlKVxyXG5cdFx0XHRcdFx0XHRcdC5maW5kKFwid1xcXFw6bGlzdEl0ZW1cIilcclxuXHRcdFx0XHRcdFx0XHQubWFwKChpLGxpKT0+e1xyXG5cdFx0XHRcdFx0XHRcdFx0cmV0dXJuIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0ZGlzcGxheVRleHQ6IGxpLmF0dHJpYnNbXCJ3OmRpc3BsYXlUZXh0XCJdLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHR2YWx1ZTogbGkuYXR0cmlic1tcInc6dmFsdWVcIl1cclxuXHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdFx0XHRcdC5nZXQoKVxyXG5cdFx0XHRcdFx0XHRtb2RlbC52YWx1ZT0obW9kZWwub3B0aW9ucy5maW5kKGE9PmEuZGlzcGxheVRleHQ9PXNlbGVjdGVkKXx8e30pLnZhbHVlXHJcblx0XHRcdFx0XHRcdGJyZWFrXHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRjYXNlIFwiY29udHJvbC5jaGVja2JveFwiOntcclxuXHRcdFx0XHRcdFx0bGV0IG5zPWVsVHlwZS5uYW1lLnNwbGl0KFwiOlwiKVswXVxyXG5cdFx0XHRcdFx0XHRtb2RlbC5jaGVja2VkPSQoZWxUeXBlKS5maW5kKGAke25zfVxcXFw6Y2hlY2tlZGApLmF0dHIoYCR7bnN9OnZhbGApPT1cIjFcIlxyXG5cdFx0XHRcdFx0XHRicmVha1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0Y2FzZSBcImNvbnRyb2wudGV4dFwiOlxyXG5cdFx0XHRcdFx0XHRpZihjb250ZW50LmZpbmQoJ3dcXFxcOnIgW3dcXFxcOnZhbH49UGxhY2Vob2xkZXJdJykubGVuZ3RoPT0wKVxyXG5cdFx0XHRcdFx0XHRcdG1vZGVsLnZhbHVlPWNvbnRlbnQudGV4dCgpXHJcblx0XHRcdFx0XHRcdGJyZWFrXHJcblx0XHRcdFx0XHRjYXNlIFwiY29udHJvbC5kYXRlXCI6XHJcblx0XHRcdFx0XHRcdG1vZGVsLnZhbHVlPW5ldyBEYXRlKCQoZWxUeXBlKS5hdHRyKFwidzpmdWxsRGF0ZVwiKSlcclxuXHRcdFx0XHRcdFx0bW9kZWwuZm9ybWF0PSQoZWxUeXBlKS5maW5kKFwid1xcXFw6ZGF0ZUZvcm1hdFwiKS5hdHRyKFwidzp2YWxcIilcclxuXHRcdFx0XHRcdFx0bW9kZWwubG9jYWxlPSQoZWxUeXBlKS5maW5kKFwid1xcXFw6bGlkXCIpLmF0dHIoXCJ3OnZhbFwiKVxyXG5cdFx0XHRcdFx0XHRicmVha1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRyZXR1cm4gbW9kZWxcclxuXHRcdFx0fVxyXG5cdFx0fSxcclxuXHRcdGh5cGVybGluayh3WG1sLG9mZmljZURvY3VtZW50KXtcclxuXHRcdFx0aWYod1htbC5hdHRyaWJzW1wicjppZFwiXSl7XHJcblx0XHRcdFx0bGV0IHVybD1vZmZpY2VEb2N1bWVudC5nZXRSZWwod1htbC5hdHRyaWJzW1wicjppZFwiXSlcclxuXHRcdFx0XHRyZXR1cm4ge3R5cGU6XCJoeXBlcmxpbmtcIiwgdXJsfVxyXG5cdFx0XHR9ZWxzZSBpZih3WG1sLmF0dHJpYnNbXCJ3OmFuY2hvclwiXSl7XHJcblx0XHRcdFx0cmV0dXJuIHt0eXBlOlwiaHlwZXJsaW5rXCIsIHVybDpgIyR7d1htbC5hdHRyaWJzW1widzphbmNob3JcIl19YH1cclxuXHRcdFx0fVxyXG5cdFx0fSxcclxuXHRcdHRibCh3WG1sKXtcclxuXHRcdFx0cmV0dXJuIHdYbWwuY2hpbGRyZW4ucmVkdWNlKChzdGF0ZSxub2RlKT0+e1xyXG5cdFx0XHRcdHN3aXRjaChub2RlLm5hbWUpe1xyXG5cdFx0XHRcdGNhc2UgXCJ3OnRibFByXCI6XHJcblx0XHRcdFx0XHRzdGF0ZS5wcj1ub2RlXHJcblx0XHRcdFx0YnJlYWtcclxuXHRcdFx0XHRjYXNlIFwidzp0YmxHcmlkXCI6XHJcblx0XHRcdFx0XHRzdGF0ZS5jb2xzPW5vZGUuY2hpbGRyZW5cclxuXHRcdFx0XHRicmVha1xyXG5cdFx0XHRcdGRlZmF1bHQ6XHJcblx0XHRcdFx0XHRzdGF0ZS5jaGlsZHJlbi5wdXNoKG5vZGUpXHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHJldHVybiBzdGF0ZVxyXG5cdFx0XHR9LHt0eXBlOlwidGJsXCIsY2hpbGRyZW46W10scHI6bnVsbCxjb2xzOltdfSlcclxuXHRcdH0sXHJcblx0XHR0cih3WG1sKXtcclxuXHRcdFx0cmV0dXJuIHdYbWwuY2hpbGRyZW4ucmVkdWNlKChzdGF0ZSxub2RlKT0+e1xyXG5cdFx0XHRcdHN3aXRjaChub2RlLm5hbWUpe1xyXG5cdFx0XHRcdGNhc2UgXCJ3OnRyUHJcIjpcclxuXHRcdFx0XHRcdHN0YXRlLnByPW5vZGVcclxuXHRcdFx0XHRcdHN0YXRlLmlzSGVhZGVyPSEhbm9kZS5jaGlsZHJlbi5maW5kKGE9PmEubmFtZT09XCJ3OnRibEhlYWRlclwiKVxyXG5cdFx0XHRcdGJyZWFrXHJcblx0XHRcdFx0ZGVmYXVsdDpcclxuXHRcdFx0XHRcdHN0YXRlLmNoaWxkcmVuLnB1c2gobm9kZSlcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0cmV0dXJuIHN0YXRlXHJcblx0XHRcdH0se3R5cGU6XCJ0clwiLGNoaWxkcmVuOltdLHByOm51bGx9KVxyXG5cdFx0fSxcclxuXHRcdHRjKHdYbWwpe1xyXG5cdFx0XHRyZXR1cm4gd1htbC5jaGlsZHJlbi5yZWR1Y2UoKHN0YXRlLG5vZGUpPT57XHJcblx0XHRcdFx0c3dpdGNoKG5vZGUubmFtZSl7XHJcblx0XHRcdFx0Y2FzZSBcInc6dGNQclwiOlxyXG5cdFx0XHRcdFx0c3RhdGUucHI9bm9kZVxyXG5cdFx0XHRcdGJyZWFrXHJcblx0XHRcdFx0ZGVmYXVsdDpcclxuXHRcdFx0XHRcdHN0YXRlLmNoaWxkcmVuLnB1c2gobm9kZSlcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0cmV0dXJuIHN0YXRlXHJcblx0XHRcdH0se3R5cGU6XCJ0Y1wiLGNoaWxkcmVuOltdLHByOm51bGx9KVxyXG5cdFx0fSxcclxuXHRcdGFsdENodW5rKHdYbWwsIG9mZmljZURvY3VtZW50KXtcclxuXHRcdFx0bGV0IHJJZD13WG1sLmF0dHJpYnNbJ3I6aWQnXVxyXG5cdFx0XHRsZXQgZGF0YT1vZmZpY2VEb2N1bWVudC5nZXRSZWwocklkKVxyXG5cclxuXHRcdFx0bGV0IHBhcnROYW1lPW9mZmljZURvY3VtZW50LmZvbGRlcitvZmZpY2VEb2N1bWVudC5yZWxzKGBbSWQ9JHtySWR9XWApLmF0dHIoXCJUYXJnZXRcIilcclxuXHRcdFx0bGV0IGNvbnRlbnRUeXBlPW9mZmljZURvY3VtZW50LmRvYy5jb250ZW50VHlwZXMoYE92ZXJyaWRlW1BhcnROYW1lPScke3BhcnROYW1lfSddYCkuYXR0cihcIkNvbnRlbnRUeXBlXCIpXHJcblx0XHRcdHJldHVybiB7dHlwZTpcImNodW5rXCIsIGRhdGEsIGNvbnRlbnRUeXBlfVxyXG5cdFx0fSxcclxuXHRcdGRvY0RlZmF1bHRzKHdYbWwpe1xyXG5cdFx0XHRyZXR1cm4ge3R5cGU6XCJzdHlsZVwifVxyXG5cdFx0fSxcclxuXHRcdHN0eWxlKHdYbWwpe1xyXG5cdFx0XHRyZXR1cm4ge3R5cGU6XCJzdHlsZVwiLCBpZDp3WG1sLmF0dHJpYnNbJ3c6c3R5bGVJZCddfVxyXG5cdFx0fSxcclxuXHRcdGFic3RyYWN0TnVtKHdYbWwpe1xyXG5cdFx0XHRyZXR1cm4ge3R5cGU6XCJhYnN0cmFjdE51bVwiLGlkOndYbWwuYXR0cmlic1tcInc6YWJzdHJhY3ROdW1JZFwiXX1cclxuXHRcdH0sXHJcblx0XHRudW0od1htbCl7XHJcblx0XHRcdHJldHVybiB7dHlwZTpcIm51bVwiLGlkOndYbWwuYXR0cmlic1tcInc6bnVtSWRcIl0sYWJzdHJhY3ROdW06d1htbC5jaGlsZHJlbi5maW5kKGE9PmEubmFtZT09XCJ3OmFic3RyYWN0TnVtSWRcIikuYXR0cmlic1tcInc6dmFsXCJdfVxyXG5cdFx0fSxcclxuXHRcdGxhdGVudFN0eWxlcygpe1xyXG5cdFx0XHRyZXR1cm4gbnVsbFxyXG5cdFx0fSxcclxuXHRcdG9iamVjdCh3WG1sLG9mZmljZURvY3VtZW50KXtcclxuXHRcdFx0bGV0IG9sZT1vZmZpY2VEb2N1bWVudC5jb250ZW50KHdYbWwpLmZpbmQoXCJvXFxcXDpPTEVPYmplY3RcIilcclxuXHRcdFx0bGV0IHR5cGU9b2xlLmF0dHIoXCJQcm9nSURcIilcclxuXHRcdFx0bGV0IGVtYmVkPW9sZS5hdHRyKFwiVHlwZVwiKT09PVwiRW1iZWRcIlxyXG5cdFx0XHRsZXQgcklkPW9sZS5hdHRyKFwicjppZFwiKVxyXG5cdFx0XHRyZXR1cm4ge3R5cGU6XCJvYmplY3RcIixlbWJlZCwgcHJvZzogdHlwZSwgZGF0YTpvZmZpY2VEb2N1bWVudC5nZXRSZWxPbGVPYmplY3QocklkKX1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIl19 \ No newline at end of file diff --git a/lib/openxml/docx/style/base.js b/lib/openxml/docx/style/base.js index eac89ab..b2d77da 100644 --- a/lib/openxml/docx/style/base.js +++ b/lib/openxml/docx/style/base.js @@ -50,4 +50,4 @@ var Style = function () { exports.default = Style; module.exports = exports['default']; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9vcGVueG1sL2RvY3gvc3R5bGUvYmFzZS5qcyJdLCJuYW1lcyI6WyJTdHlsZSIsInN0eWxlIiwic3R5bGVzIiwiYmFzZWRPbiIsInJhdyIsImdldCIsInBhdGgiLCJ2YWx1ZSIsInVuZGVmaW5lZCIsImdldEZyb21CYXNlZE9uIiwiYXJndW1lbnRzIiwiZ2V0QmFzZWRPbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTs7OztJQUVxQkEsSztBQUNwQixnQkFBWUMsS0FBWixFQUFtQkMsTUFBbkIsRUFBNkM7QUFBQSxNQUFsQkMsT0FBa0IsdUVBQVYsU0FBVTs7QUFBQTs7QUFDNUMsT0FBS0MsR0FBTCxHQUFTSCxNQUFNSSxHQUFOLEdBQVlKLEtBQVosR0FBb0Isd0JBQVFBLEtBQVIsQ0FBN0I7QUFDQSxPQUFLQyxNQUFMLEdBQVlBLE1BQVo7QUFDQSxPQUFLQyxPQUFMLEdBQWFBLE9BQWI7QUFDQTs7OztzQkFFR0csSSxFQUFLO0FBQ1IsT0FBSUMsUUFBTSxLQUFLSCxHQUFMLENBQVNDLEdBQVQsQ0FBYUMsSUFBYixDQUFWO0FBQ0EsT0FBR0MsU0FBT0MsU0FBVixFQUNDRCxRQUFNLEtBQUtFLGNBQUwsYUFBdUJDLFNBQXZCLENBQU47QUFDRCxVQUFPSCxLQUFQO0FBQ0E7OzsrQkFFVztBQUNYLE9BQUcsQ0FBQyxLQUFLSixPQUFULEVBQ0MsT0FBT0ssU0FBUDtBQUNELE9BQUcsT0FBTyxLQUFLTCxPQUFaLEtBQXVCLFFBQTFCLEVBQ0UsT0FBTyxLQUFLQSxPQUFaO0FBQ0YsT0FBRyxLQUFLRCxNQUFSLEVBQ0MsT0FBTyxLQUFLQSxNQUFMLENBQVksS0FBS0UsR0FBTCxDQUFTQyxHQUFULENBQWEsS0FBS0YsT0FBbEIsQ0FBWixDQUFQO0FBQ0QsVUFBT0ssU0FBUDtBQUNBOzs7aUNBRWNGLEksRUFBSztBQUNuQixPQUFJSCxVQUFRLEtBQUtRLFVBQUwsRUFBWjtBQUNBLE9BQUdSLE9BQUgsRUFDQyxPQUFPQSxRQUFRRSxHQUFSLGdCQUFlSyxTQUFmLENBQVA7QUFDRCxVQUFPRixTQUFQO0FBQ0E7Ozs7OztrQkE3Qm1CUixLIiwiZmlsZSI6ImJhc2UuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2dldGFibGV9IGZyb20gXCIuLi8uLi8uLi94bWxPYmplY3RcIlxyXG5cclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3R5bGV7XHJcblx0Y29uc3RydWN0b3Ioc3R5bGUsIHN0eWxlcywgYmFzZWRPbj1cImJhc2VkT25cIil7XHJcblx0XHR0aGlzLnJhdz1zdHlsZS5nZXQgPyBzdHlsZSA6IGdldGFibGUoc3R5bGUpXHJcblx0XHR0aGlzLnN0eWxlcz1zdHlsZXNcclxuXHRcdHRoaXMuYmFzZWRPbj1iYXNlZE9uXHJcblx0fVxyXG5cclxuXHRnZXQocGF0aCl7XHJcblx0XHRsZXQgdmFsdWU9dGhpcy5yYXcuZ2V0KHBhdGgpXHJcblx0XHRpZih2YWx1ZT09dW5kZWZpbmVkKVxyXG5cdFx0XHR2YWx1ZT10aGlzLmdldEZyb21CYXNlZE9uKC4uLmFyZ3VtZW50cylcclxuXHRcdHJldHVybiB2YWx1ZVxyXG5cdH1cclxuXHJcblx0Z2V0QmFzZWRPbigpe1xyXG5cdFx0aWYoIXRoaXMuYmFzZWRPbilcclxuXHRcdFx0cmV0dXJuIHVuZGVmaW5lZFxyXG5cdFx0aWYodHlwZW9mKHRoaXMuYmFzZWRPbikhPT0nc3RyaW5nJylcclxuXHRcdCBcdHJldHVybiB0aGlzLmJhc2VkT25cclxuXHRcdGlmKHRoaXMuc3R5bGVzKVxyXG5cdFx0XHRyZXR1cm4gdGhpcy5zdHlsZXNbdGhpcy5yYXcuZ2V0KHRoaXMuYmFzZWRPbildXHJcblx0XHRyZXR1cm4gdW5kZWZpbmVkXHJcblx0fVxyXG5cclxuXHRnZXRGcm9tQmFzZWRPbihwYXRoKXtcclxuXHRcdGxldCBiYXNlZE9uPXRoaXMuZ2V0QmFzZWRPbigpXHJcblx0XHRpZihiYXNlZE9uKVxyXG5cdFx0XHRyZXR1cm4gYmFzZWRPbi5nZXQoLi4uYXJndW1lbnRzKVxyXG5cdFx0cmV0dXJuIHVuZGVmaW5lZFxyXG5cdH1cclxufVxyXG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9vcGVueG1sL2RvY3gvc3R5bGUvYmFzZS5qcyJdLCJuYW1lcyI6WyJTdHlsZSIsInN0eWxlIiwic3R5bGVzIiwiYmFzZWRPbiIsInJhdyIsImdldCIsInBhdGgiLCJ2YWx1ZSIsInVuZGVmaW5lZCIsImdldEZyb21CYXNlZE9uIiwiYXJndW1lbnRzIiwiZ2V0QmFzZWRPbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTs7OztJQUVxQkEsSztBQUNwQixnQkFBWUMsS0FBWixFQUFtQkMsTUFBbkIsRUFBNkM7QUFBQSxNQUFsQkMsT0FBa0IsdUVBQVYsU0FBVTs7QUFBQTs7QUFDNUMsT0FBS0MsR0FBTCxHQUFTSCxNQUFNSSxHQUFOLEdBQVlKLEtBQVosR0FBb0Isd0JBQVFBLEtBQVIsQ0FBN0I7QUFDQSxPQUFLQyxNQUFMLEdBQVlBLE1BQVo7QUFDQSxPQUFLQyxPQUFMLEdBQWFBLE9BQWI7QUFDQTs7OztzQkFFR0csSSxFQUFLO0FBQ1IsT0FBSUMsUUFBTSxLQUFLSCxHQUFMLENBQVNDLEdBQVQsQ0FBYUMsSUFBYixDQUFWO0FBQ0EsT0FBR0MsU0FBT0MsU0FBVixFQUNDRCxRQUFNLEtBQUtFLGNBQUwsYUFBdUJDLFNBQXZCLENBQU47QUFDRCxVQUFPSCxLQUFQO0FBQ0E7OzsrQkFFVztBQUNYLE9BQUcsQ0FBQyxLQUFLSixPQUFULEVBQ0MsT0FBT0ssU0FBUDtBQUNELE9BQUcsT0FBTyxLQUFLTCxPQUFaLEtBQXVCLFFBQTFCLEVBQ0UsT0FBTyxLQUFLQSxPQUFaO0FBQ0YsT0FBRyxLQUFLRCxNQUFSLEVBQ0MsT0FBTyxLQUFLQSxNQUFMLENBQVksS0FBS0UsR0FBTCxDQUFTQyxHQUFULENBQWEsS0FBS0YsT0FBbEIsQ0FBWixDQUFQO0FBQ0QsVUFBT0ssU0FBUDtBQUNBOzs7aUNBRWNGLEksRUFBSztBQUNuQixPQUFJSCxVQUFRLEtBQUtRLFVBQUwsRUFBWjtBQUNBLE9BQUdSLE9BQUgsRUFDQyxPQUFPQSxRQUFRRSxHQUFSLGdCQUFlSyxTQUFmLENBQVA7QUFDRCxVQUFPRixTQUFQO0FBQ0E7Ozs7OztrQkE3Qm1CUixLIiwiZmlsZSI6ImJhc2UuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2dldGFibGV9IGZyb20gXCIuLi8uLi8uLi94bWxPYmplY3RcIlxyXG5cclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3R5bGV7XHJcblx0Y29uc3RydWN0b3Ioc3R5bGUsIHN0eWxlcywgYmFzZWRPbj1cImJhc2VkT25cIil7XHJcblx0XHR0aGlzLnJhdz1zdHlsZS5nZXQgPyBzdHlsZSA6IGdldGFibGUoc3R5bGUpXHJcblx0XHR0aGlzLnN0eWxlcz1zdHlsZXNcclxuXHRcdHRoaXMuYmFzZWRPbj1iYXNlZE9uXHJcblx0fVxyXG5cclxuXHRnZXQocGF0aCl7XHJcblx0XHRsZXQgdmFsdWU9dGhpcy5yYXcuZ2V0KHBhdGgpXHJcblx0XHRpZih2YWx1ZT09dW5kZWZpbmVkKVxyXG5cdFx0XHR2YWx1ZT10aGlzLmdldEZyb21CYXNlZE9uKC4uLmFyZ3VtZW50cylcclxuXHRcdHJldHVybiB2YWx1ZVxyXG5cdH1cclxuXHJcblx0Z2V0QmFzZWRPbigpe1xyXG5cdFx0aWYoIXRoaXMuYmFzZWRPbilcclxuXHRcdFx0cmV0dXJuIHVuZGVmaW5lZFxyXG5cdFx0aWYodHlwZW9mKHRoaXMuYmFzZWRPbikhPT0nc3RyaW5nJylcclxuXHRcdCBcdHJldHVybiB0aGlzLmJhc2VkT25cclxuXHRcdGlmKHRoaXMuc3R5bGVzKVxyXG5cdFx0XHRyZXR1cm4gdGhpcy5zdHlsZXNbdGhpcy5yYXcuZ2V0KHRoaXMuYmFzZWRPbildXHJcblx0XHRyZXR1cm4gdW5kZWZpbmVkXHJcblx0fVxyXG5cclxuXHRnZXRGcm9tQmFzZWRPbihwYXRoKXtcclxuXHRcdGxldCBiYXNlZE9uPXRoaXMuZ2V0QmFzZWRPbigpXHJcblx0XHRpZihiYXNlZE9uKVxyXG5cdFx0XHRyZXR1cm4gYmFzZWRPbi5nZXQoLi4uYXJndW1lbnRzKVxyXG5cdFx0cmV0dXJuIHVuZGVmaW5lZFxyXG5cdH1cclxufVxyXG4iXX0= \ No newline at end of file diff --git a/lib/openxml/docx/style/numbering.js b/lib/openxml/docx/style/numbering.js index 2db8d71..f164040 100644 --- a/lib/openxml/docx/style/numbering.js +++ b/lib/openxml/docx/style/numbering.js @@ -170,4 +170,4 @@ var NUMFMT = { } }; module.exports = exports['default']; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9vcGVueG1sL2RvY3gvc3R5bGUvbnVtYmVyaW5nLmpzIl0sIm5hbWVzIjpbIk51bWJlcmluZ3MiLCJudW1iZXJpbmciLCJzdHlsZXMiLCJudW0iLCJhYnN0cmFjdE51bSIsImdldCIsImZvckVhY2giLCJpZCIsIiQiLCJudW1JZCIsIk51bVN0eWxlIiwiZGVmIiwiYWJzdHJhY3ROdW1JZCIsImx2bCIsImxldmVsIiwiaWx2bCIsIkxldmVsU3R5bGUiLCJudW1iZXJpbmdzIiwibnVtUGljQnVsbGV0IiwicGF0aCIsInN0eWxlIiwiYSIsInN0YXJ0T3ZlcnJpZGUiLCJzdGFydCIsInZhbCIsIk51bUxldmVsU3R5bGUiLCJTdHlsZSIsImJhc2VkT24iLCJhcmd1bWVudHMiLCJjdXJyZW50IiwiZ2V0TGFiZWwiLCJ2YWx1ZSIsInVuZGVmaW5lZCIsImx2bFBpY0J1bGxldElkIiwiRXJyb3IiLCJsdmxUZXh0IiwicmVwbGFjZSIsInBhcnNlSW50IiwicmF3IiwibnVtRm10IiwiTlVNRk1UIiwiZGVjaW1hbCIsIm4iLCJsb3dlckxldHRlciIsIlN0cmluZyIsImZyb21DaGFyQ29kZSIsImNoYXJDb2RlQXQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQTs7Ozs7Ozs7Ozs7O0lBRXFCQSxVO0FBQ3BCLHFCQUFZQyxTQUFaLEVBQXVCQyxNQUF2QixFQUE4QjtBQUFBOztBQUFBOztBQUM3QixPQUFLQyxHQUFMLEdBQVMsRUFBVDtBQUNBLE9BQUtDLFdBQUwsR0FBaUIsRUFBakI7QUFDQSxNQUFHSCxTQUFILEVBQWE7QUFDWixJQUFDLENBQUNBLFVBQVVJLEdBQVYsQ0FBYyxlQUFkLEVBQThCLEtBQTlCLEtBQXNDLEVBQXZDLEVBQTJDQyxPQUEzQyxDQUFtRCxlQUFLO0FBQ3hELFFBQUlDLEtBQUdKLElBQUlLLENBQUosQ0FBTUMsS0FBYjtBQUNBLFVBQUtOLEdBQUwsQ0FBU0ksRUFBVCxJQUFhLElBQUlHLFFBQUosQ0FBYVAsR0FBYixF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QWYsSUFBa0JKLENBQWxCLEdBQW9CLENBQXhDLENBQVA7QUFDQTtBQVBXLENBQWIiLCJmaWxlIjoibnVtYmVyaW5nLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFN0eWxlIGZyb20gXCIuL2Jhc2VcIlxyXG5cclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTnVtYmVyaW5nc3tcclxuXHRjb25zdHJ1Y3RvcihudW1iZXJpbmcsIHN0eWxlcyl7XHJcblx0XHR0aGlzLm51bT17fVxyXG5cdFx0dGhpcy5hYnN0cmFjdE51bT17fVxyXG5cdFx0aWYobnVtYmVyaW5nKXtcclxuXHRcdFx0OyhudW1iZXJpbmcuZ2V0KCdudW1iZXJpbmcubnVtJyxmYWxzZSl8fFtdKS5mb3JFYWNoKG51bT0+e1xyXG5cdFx0XHRcdGxldCBpZD1udW0uJC5udW1JZFxyXG5cdFx0XHRcdHRoaXMubnVtW2lkXT1uZXcgTnVtU3R5bGUobnVtLHN0eWxlcyx0aGlzKVxyXG5cdFx0XHR9KVxyXG5cdFx0XHQ7KG51bWJlcmluZy5nZXQoXCJudW1iZXJpbmcuYWJzdHJhY3ROdW1cIixmYWxzZSl8fFtdKS5mb3JFYWNoKGRlZj0+e1xuXHRcdFx0XHRsZXQgaWQ9ZGVmLiQuYWJzdHJhY3ROdW1JZFxyXG5cdFx0XHRcdGRlZi5sdmwuZm9yRWFjaChsZXZlbD0+e1xyXG5cdFx0XHRcdFx0dGhpcy5hYnN0cmFjdE51bVtgJHtpZH0uJHtsZXZlbC4kLmlsdmx9YF09bmV3IExldmVsU3R5bGUobGV2ZWwsc3R5bGVzLG51bGwsIHRoaXMubnVtYmVyaW5ncylcclxuXHRcdFx0XHR9KVxyXG5cdFx0XHR9KVxyXG5cclxuXHRcdH1cclxuXHRcdHRoaXMubnVtUGljQnVsbGV0PXt9XHJcblxyXG5cdH1cclxuXHJcblx0Z2V0KHBhdGgsbnVtSWQsIGxldmVsKXtcclxuXHRcdHJldHVybiB0aGlzLm51bVtudW1JZF0uZ2V0KHBhdGgsbGV2ZWwpXHJcblx0fVxyXG59XHJcblxyXG5jbGFzcyBOdW1TdHlsZSBleHRlbmRzIFN0eWxle1xyXG5cdGNvbnN0cnVjdG9yKHN0eWxlLCBzdHlsZXMsIG51bWJlcmluZ3Mpe1xyXG5cdFx0c3VwZXIoc3R5bGUsc3R5bGVzLCBudWxsKVxyXG5cdFx0dGhpcy5udW1iZXJpbmdzPW51bWJlcmluZ3NcclxuXHRcdHRoaXMuYWJzdHJhY3ROdW1JZD1zdHlsZS5nZXQoXCJhYnN0cmFjdE51bUlkXCIpXHJcblxyXG5cdFx0OyhzdHlsZS5nZXQoJ2x2bE92ZXJyaWRlJyl8fFtdKS5mb3JFYWNoKGE9PntcclxuXHRcdFx0bGV0IGxldmVsPWEuJC5pbHZsXHJcblx0XHRcdGxldCBsdmw9YS5nZXQoJ2x2bCcpfHx7JDp7aWx2bDpsZXZlbH19LCBzdGFydE92ZXJyaWRlPWEuZ2V0KCdzdGFydE92ZXJyaWRlJylcclxuXHRcdFx0aWYoc3RhcnRPdmVycmlkZSlcclxuXHRcdFx0XHRsdmwuc3RhcnQ9eyQ6e3ZhbDpzdGFydE92ZXJyaWRlfX1cclxuXHJcblx0XHRcdHRoaXNbbGV2ZWxdPW5ldyBOdW1MZXZlbFN0eWxlKGx2bCx0aGlzLnN0eWxlcyxudWxsLCB0aGlzLm51bWJlcmluZ3MpXHJcblx0XHR9KVxyXG5cdH1cclxuXHJcblx0Z2V0KHBhdGgsbGV2ZWwpe1xyXG5cdFx0cmV0dXJuIHRoaXMubGV2ZWwobGV2ZWwpLmdldChwYXRoKVxyXG5cdH1cclxuXHJcblx0bGV2ZWwobGV2ZWwpe1xyXG5cdFx0cmV0dXJuIHRoaXNbbGV2ZWxdIHx8ICh0aGlzW2xldmVsXT1uZXcgTnVtTGV2ZWxTdHlsZSh7JDp7aWx2bDpsZXZlbH19LHRoaXMuc3R5bGVzLGAke3RoaXMuYWJzdHJhY3ROdW1JZH0uJHtsZXZlbH1gLCB0aGlzLm51bWJlcmluZ3MpKVxyXG5cdH1cclxufVxyXG5cclxuY2xhc3MgTGV2ZWxTdHlsZSBleHRlbmRzIFN0eWxle1xyXG5cdGNvbnN0cnVjdG9yKHN0eWxlLHN0eWxlcyxiYXNlZE9uLCBudW1iZXJpbmdzKXtcclxuXHRcdHN1cGVyKC4uLmFyZ3VtZW50cylcclxuXHRcdHRoaXMubnVtYmVyaW5ncz1udW1iZXJpbmdzXHJcblx0fVxyXG59XHJcblxyXG5jbGFzcyBOdW1MZXZlbFN0eWxlIGV4dGVuZHMgTGV2ZWxTdHlsZXtcclxuXHRjdXJyZW50PTBcclxuXHJcblx0Z2V0QmFzZWRPbigpe1xyXG5cdFx0cmV0dXJuIHRoaXMubnVtYmVyaW5ncy5hYnN0cmFjdE51bVt0aGlzLmJhc2VkT25dXHJcblx0fVxyXG5cclxuXHRnZXQocGF0aCl7XHJcblx0XHRpZihwYXRoPT1cImxhYmVsXCIpXHJcblx0XHRcdHJldHVybiB0aGlzLmdldExhYmVsKClcclxuXHRcdGVsc2VcclxuXHRcdFx0cmV0dXJuIHN1cGVyLmdldChwYXRoKVxyXG5cdH1cclxuXHJcblx0Z2V0TGFiZWwoKXtcclxuXHRcdGxldCB2YWx1ZT11bmRlZmluZWRcclxuXHRcdGxldCBsdmxQaWNCdWxsZXRJZD10aGlzLmdldChcImx2bFBpY0J1bGxldElkXCIpXHJcblx0XHRpZihsdmxQaWNCdWxsZXRJZCE9dW5kZWZpbmVkKXtcclxuXHRcdFx0dGhyb3cgbmV3IEVycm9yKFwicGljIGJ1bGxldCBub3Qgc3VwcG9ydGVkIHlldCFcIilcclxuXHRcdH1lbHNle1xyXG5cdFx0XHRsZXQgbHZsVGV4dD10aGlzLmdldChcImx2bFRleHRcIilcclxuXHJcblx0XHRcdHZhbHVlPWx2bFRleHQucmVwbGFjZSgvJShcXGQrKS9nLCAoYSxsZXZlbCk9PntcclxuXHRcdFx0XHRsZXZlbD1wYXJzZUludChsZXZlbCktMVxyXG5cdFx0XHRcdGlmKGxldmVsPT1wYXJzZUludCh0aGlzLnJhdy4kLmlsdmwpKXtcclxuXHRcdFx0XHRcdGxldCBzdGFydD1wYXJzZUludCh0aGlzLmdldChcInN0YXJ0XCIpKVxyXG5cdFx0XHRcdFx0bGV0IG51bUZtdD10aGlzLmdldChcIm51bUZtdFwiKVxyXG5cdFx0XHRcdFx0cmV0dXJuIChOVU1GTVRbbnVtRm10XXx8TlVNRk1UWydkZWNpbWFsJ10pKHN0YXJ0K3RoaXMuY3VycmVudClcclxuXHRcdFx0XHR9ZWxzZVxyXG5cdFx0XHRcdFx0cmV0dXJuIHRoaXMuYmFzZWRPbi5sZXZlbChsZXZlbCkuZ2V0TGFiZWwodGhpcy5jdXJyZW50KVxyXG5cdFx0XHR9KVxyXG5cdFx0fVxyXG5cclxuXHRcdHRoaXMuY3VycmVudCsrXHJcblx0XHRyZXR1cm4gdmFsdWVcclxuXHR9XHJcbn1cclxuXHJcbmNvbnN0IE5VTUZNVD17XHJcblx0ZGVjaW1hbChuKXtcclxuXHRcdHJldHVybiBuXHJcblx0fSxcclxuXHJcblx0bG93ZXJMZXR0ZXIobil7XHJcblx0XHRyZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29kZShcImFcIi5jaGFyQ29kZUF0KDApK24tMSlcclxuXHR9XHJcbn1cclxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9vcGVueG1sL2RvY3gvc3R5bGUvbnVtYmVyaW5nLmpzIl0sIm5hbWVzIjpbIk51bWJlcmluZ3MiLCJudW1iZXJpbmciLCJzdHlsZXMiLCJudW0iLCJhYnN0cmFjdE51bSIsImdldCIsImZvckVhY2giLCJpZCIsIiQiLCJudW1JZCIsIk51bVN0eWxlIiwiZGVmIiwiYWJzdHJhY3ROdW1JZCIsImx2bCIsImxldmVsIiwiaWx2bCIsIkxldmVsU3R5bGUiLCJudW1iZXJpbmdzIiwibnVtUGljQnVsbGV0IiwicGF0aCIsInN0eWxlIiwiYSIsInN0YXJ0T3ZlcnJpZGUiLCJzdGFydCIsInZhbCIsIk51bUxldmVsU3R5bGUiLCJiYXNlZE9uIiwiYXJndW1lbnRzIiwiY3VycmVudCIsImdldExhYmVsIiwidmFsdWUiLCJ1bmRlZmluZWQiLCJsdmxQaWNCdWxsZXRJZCIsIkVycm9yIiwibHZsVGV4dCIsInJlcGxhY2UiLCJwYXJzZUludCIsInJhdyIsIm51bUZtdCIsIk5VTUZNVCIsImRlY2ltYWwiLCJuIiwibG93ZXJMZXR0ZXIiLCJTdHJpbmciLCJmcm9tQ2hhckNvZGUiLCJjaGFyQ29kZUF0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUE7Ozs7Ozs7Ozs7OztJQUVxQkEsVTtBQUNwQixxQkFBWUMsU0FBWixFQUF1QkMsTUFBdkIsRUFBOEI7QUFBQTs7QUFBQTs7QUFDN0IsT0FBS0MsR0FBTCxHQUFTLEVBQVQ7QUFDQSxPQUFLQyxXQUFMLEdBQWlCLEVBQWpCO0FBQ0EsTUFBR0gsU0FBSCxFQUFhO0FBQ1osSUFBQyxDQUFDQSxVQUFVSSxHQUFWLENBQWMsZUFBZCxFQUE4QixLQUE5QixLQUFzQyxFQUF2QyxFQUEyQ0MsT0FBM0MsQ0FBbUQsZUFBSztBQUN4RCxRQUFJQyxLQUFHSixJQUFJSyxDQUFKLENBQU1DLEtBQWI7QUFDQSxVQUFLTixHQUFMLENBQVNJLEVBQVQsSUFBYSxJQUFJRyxRQUFKLENBQWFQLEdBQWIsRUFBaUJELE1B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VyxDQUFiIiwiZmlsZSI6Im51bWJlcmluZy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBTdHlsZSBmcm9tIFwiLi9iYXNlXCJcclxuXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE51bWJlcmluZ3N7XHJcblx0Y29uc3RydWN0b3IobnVtYmVyaW5nLCBzdHlsZXMpe1xyXG5cdFx0dGhpcy5udW09e31cclxuXHRcdHRoaXMuYWJzdHJhY3ROdW09e31cclxuXHRcdGlmKG51bWJlcmluZyl7XHJcblx0XHRcdDsobnVtYmVyaW5nLmdldCgnbnVtYmVyaW5nLm51bScsZmFsc2UpfHxbXSkuZm9yRWFjaChudW09PntcclxuXHRcdFx0XHRsZXQgaWQ9bnVtLiQubnVtSWRcclxuXHRcdFx0XHR0aGlzLm51bVtpZF09bmV3IE51bVN0eWxlKG51bSxzdHlsZXMsdGhpcylcclxuXHRcdFx0fSlcclxuXHRcdFx0OyhudW1iZXJpbmcuZ2V0KFwibnVtYmVyaW5nLmFic3RyYWN0TnVtXCIsZmFsc2UpfHxbXSkuZm9yRWFjaChkZWY9Pntcblx0XHRcdFx0bGV0IGlkPWRlZi4kLmFic3RyYWN0TnVtSWRcclxuXHRcdFx0XHRkZWYubHZsLmZvckVhY2gobGV2ZWw9PntcclxuXHRcdFx0XHRcdHRoaXMuYWJzdHJhY3ROdW1bYCR7aWR9LiR7bGV2ZWwuJC5pbHZsfWBdPW5ldyBMZXZlbFN0eWxlKGxldmVsLHN0eWxlcyxudWxsLCB0aGlzLm51bWJlcmluZ3MpXHJcblx0XHRcdFx0fSlcclxuXHRcdFx0fSlcclxuXHJcblx0XHR9XHJcblx0XHR0aGlzLm51bVBpY0J1bGxldD17fVxyXG5cclxuXHR9XHJcblxyXG5cdGdldChwYXRoLG51bUlkLCBsZXZlbCl7XHJcblx0XHRyZXR1cm4gdGhpcy5udW1bbnVtSWRdLmdldChwYXRoLGxldmVsKVxyXG5cdH1cclxufVxyXG5cclxuY2xhc3MgTnVtU3R5bGUgZXh0ZW5kcyBTdHlsZXtcclxuXHRjb25zdHJ1Y3RvcihzdHlsZSwgc3R5bGVzLCBudW1iZXJpbmdzKXtcclxuXHRcdHN1cGVyKHN0eWxlLHN0eWxlcywgbnVsbClcclxuXHRcdHRoaXMubnVtYmVyaW5ncz1udW1iZXJpbmdzXHJcblx0XHR0aGlzLmFic3RyYWN0TnVtSWQ9c3R5bGUuZ2V0KFwiYWJzdHJhY3ROdW1JZFwiKVxyXG5cclxuXHRcdDsoc3R5bGUuZ2V0KCdsdmxPdmVycmlkZScpfHxbXSkuZm9yRWFjaChhPT57XHJcblx0XHRcdGxldCBsZXZlbD1hLiQuaWx2bFxyXG5cdFx0XHRsZXQgbHZsPWEuZ2V0KCdsdmwnKXx8eyQ6e2lsdmw6bGV2ZWx9fSwgc3RhcnRPdmVycmlkZT1hLmdldCgnc3RhcnRPdmVycmlkZScpXHJcblx0XHRcdGlmKHN0YXJ0T3ZlcnJpZGUpXHJcblx0XHRcdFx0bHZsLnN0YXJ0PXskOnt2YWw6c3RhcnRPdmVycmlkZX19XHJcblxyXG5cdFx0XHR0aGlzW2xldmVsXT1uZXcgTnVtTGV2ZWxTdHlsZShsdmwsdGhpcy5zdHlsZXMsbnVsbCwgdGhpcy5udW1iZXJpbmdzKVxyXG5cdFx0fSlcclxuXHR9XHJcblxyXG5cdGdldChwYXRoLGxldmVsKXtcclxuXHRcdHJldHVybiB0aGlzLmxldmVsKGxldmVsKS5nZXQocGF0aClcclxuXHR9XHJcblxyXG5cdGxldmVsKGxldmVsKXtcclxuXHRcdHJldHVybiB0aGlzW2xldmVsXSB8fCAodGhpc1tsZXZlbF09bmV3IE51bUxldmVsU3R5bGUoeyQ6e2lsdmw6bGV2ZWx9fSx0aGlzLnN0eWxlcyxgJHt0aGlzLmFic3RyYWN0TnVtSWR9LiR7bGV2ZWx9YCwgdGhpcy5udW1iZXJpbmdzKSlcclxuXHR9XHJcbn1cclxuXHJcbmNsYXNzIExldmVsU3R5bGUgZXh0ZW5kcyBTdHlsZXtcclxuXHRjb25zdHJ1Y3RvcihzdHlsZSxzdHlsZXMsYmFzZWRPbiwgbnVtYmVyaW5ncyl7XHJcblx0XHRzdXBlciguLi5hcmd1bWVudHMpXHJcblx0XHR0aGlzLm51bWJlcmluZ3M9bnVtYmVyaW5nc1xyXG5cdH1cclxufVxyXG5cclxuY2xhc3MgTnVtTGV2ZWxTdHlsZSBleHRlbmRzIExldmVsU3R5bGV7XHJcblx0Y3VycmVudD0wXHJcblxyXG5cdGdldEJhc2VkT24oKXtcclxuXHRcdHJldHVybiB0aGlzLm51bWJlcmluZ3MuYWJzdHJhY3ROdW1bdGhpcy5iYXNlZE9uXVxyXG5cdH1cclxuXHJcblx0Z2V0KHBhdGgpe1xyXG5cdFx0aWYocGF0aD09XCJsYWJlbFwiKVxyXG5cdFx0XHRyZXR1cm4gdGhpcy5nZXRMYWJlbCgpXHJcblx0XHRlbHNlXHJcblx0XHRcdHJldHVybiBzdXBlci5nZXQocGF0aClcclxuXHR9XHJcblxyXG5cdGdldExhYmVsKCl7XHJcblx0XHRsZXQgdmFsdWU9dW5kZWZpbmVkXHJcblx0XHRsZXQgbHZsUGljQnVsbGV0SWQ9dGhpcy5nZXQoXCJsdmxQaWNCdWxsZXRJZFwiKVxyXG5cdFx0aWYobHZsUGljQnVsbGV0SWQhPXVuZGVmaW5lZCl7XHJcblx0XHRcdHRocm93IG5ldyBFcnJvcihcInBpYyBidWxsZXQgbm90IHN1cHBvcnRlZCB5ZXQhXCIpXHJcblx0XHR9ZWxzZXtcclxuXHRcdFx0bGV0IGx2bFRleHQ9dGhpcy5nZXQoXCJsdmxUZXh0XCIpXHJcblxyXG5cdFx0XHR2YWx1ZT1sdmxUZXh0LnJlcGxhY2UoLyUoXFxkKykvZywgKGEsbGV2ZWwpPT57XHJcblx0XHRcdFx0bGV2ZWw9cGFyc2VJbnQobGV2ZWwpLTFcclxuXHRcdFx0XHRpZihsZXZlbD09cGFyc2VJbnQodGhpcy5yYXcuJC5pbHZsKSl7XHJcblx0XHRcdFx0XHRsZXQgc3RhcnQ9cGFyc2VJbnQodGhpcy5nZXQoXCJzdGFydFwiKSlcclxuXHRcdFx0XHRcdGxldCBudW1GbXQ9dGhpcy5nZXQoXCJudW1GbXRcIilcclxuXHRcdFx0XHRcdHJldHVybiAoTlVNRk1UW251bUZtdF18fE5VTUZNVFsnZGVjaW1hbCddKShzdGFydCt0aGlzLmN1cnJlbnQpXHJcblx0XHRcdFx0fWVsc2VcclxuXHRcdFx0XHRcdHJldHVybiB0aGlzLmJhc2VkT24ubGV2ZWwobGV2ZWwpLmdldExhYmVsKHRoaXMuY3VycmVudClcclxuXHRcdFx0fSlcclxuXHRcdH1cclxuXHJcblx0XHR0aGlzLmN1cnJlbnQrK1xyXG5cdFx0cmV0dXJuIHZhbHVlXHJcblx0fVxyXG59XHJcblxyXG5jb25zdCBOVU1GTVQ9e1xyXG5cdGRlY2ltYWwobil7XHJcblx0XHRyZXR1cm4gblxyXG5cdH0sXHJcblxyXG5cdGxvd2VyTGV0dGVyKG4pe1xyXG5cdFx0cmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUoXCJhXCIuY2hhckNvZGVBdCgwKStuLTEpXHJcblx0fVxyXG59XHJcbiJdfQ== \ No newline at end of file diff --git a/lib/openxml/docx/style/table.js b/lib/openxml/docx/style/table.js index 9868f60..6160bc8 100644 --- a/lib/openxml/docx/style/table.js +++ b/lib/openxml/docx/style/table.js @@ -382,4 +382,4 @@ var TableStyle = function (_WithBorder4) { exports.default = TableStyle; module.exports = exports['default']; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9vcGVueG1sL2RvY3gvc3R5bGUvdGFibGUuanMiXSwibmFtZXMiOlsiUFJJT1JJWkVEIiwic3BsaXQiLCJXaXRoQm9yZGVyIiwidHlwZSIsInZhbHVlIiwicmF3IiwiZ2V0IiwidW5kZWZpbmVkIiwidmFsIiwic3oiLCJjb25kaXRpb25zIiwiXzFib3JkZXIiLCJTdHlsZSIsIlJvd1N0eWxlIiwiZWRnZXMiLCJpbmNsdWRlcyIsImFyZ3VtZW50cyIsIkNlbGxTdHlsZSIsIkNvbFN0eWxlIiwiQmFuZEhTdHlsZSIsIkJhbmRWU3R5bGUiLCJ0eXBlcyIsInNlQ2VsbCIsInN3Q2VsbCIsIm5lQ2VsbCIsIm53Q2VsbCIsImxhc3RDb2wiLCJmaXJzdENvbCIsImxhc3RSb3ciLCJmaXJzdFJvdyIsImJhbmQySG9yeiIsImJhbmQxSG9yeiIsImJhbmQyVmVydCIsImJhbmQxVmVydCIsInJvdyIsImNlbGwiLCJUYWJsZVN0eWxlIiwic3R5bGUiLCJzdHlsZXMiLCJiYXNlZE9uIiwiZm9yRWFjaCIsImEiLCJyaWdodCIsIl9yaWdodCIsImxlZnQiLCJfbGVmdCIsInRvcCIsIl90b3AiLCJib3R0b20iLCJfYm90dG9tIiwicGF0aCIsInByaW9yaXplIiwicmVkdWNlIiwiZm91bmQiLCJjb25kaXRpb24iLCJjb25kaXRpb25TdHlsZSIsInNvcnQiLCJiIiwiaW5kZXhPZiIsImNvbmQiLCJjb25kU3R5bGUiLCJwciIsImdldEJhc2VkT24iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQTs7OztBQUVBOzs7Ozs7Ozs7O0FBR0E7Ozs7Ozs7Ozs7QUFVQSxJQUFJQSxZQUFVLHdHQUF3R0MsS0FBeEcsQ0FBOEcsR0FBOUcsQ0FBZDs7SUFFTUMsVTs7Ozs7Ozs7Ozs7MkJBRUlDLEksRUFBSztBQUNiLE9BQUlDLFFBQU0sS0FBS0MsR0FBTCxDQUFTQyxHQUFULENBQWFILElBQWIsRUFBa0IsS0FBbEIsQ0FBVjtBQUNBLE9BQUdDLFNBQU9HLFNBQVYsRUFBb0I7QUFDbkIsUUFBR0gsTUFBTUksR0FBTixJQUFXLEtBQWQsRUFDQyxPQUFPLEVBQUNDLElBQUcsQ0FBSixFQUFQO0FBQ0QsV0FBT0wsS0FBUDtBQUNBOztBQUVELFVBQU9HLFNBQVA7QUFDQTs7O3lCQUVNRyxVLEVBQVc7QUFDakIsVUFBTyxLQUFLQyxRQUFMLENBQWMsc0JBQWQsQ0FBUDtBQUNBOzs7d0JBRUtELFUsRUFBVztBQUNoQixVQUFPLEtBQUtDLFFBQUwsQ0FBYyxxQkFBZCxDQUFQO0FBQ0E7Ozt5QkFFSztBQUNMLFVBQU8sS0FBS0EsUUFBTCxDQUFjLG9CQUFkLENBQVA7QUFDQTs7OzRCQUVRO0FBQ1IsVUFBTyxLQUFLQSxRQUFMLENBQWMsdUJBQWQsQ0FBUDtBQUNBOzs7O0VBM0J1QkMsYzs7SUE4Qm5CQyxROzs7Ozs7Ozs7Ozt5QkFDRUgsVSxFQUFXSSxLLEVBQU07QUFDdkIsT0FBSVYsY0FBSjtBQUNBLE9BQUdNLFdBQVdLLFFBQVgsQ0FBb0IsU0FBcEIsS0FBa0NELE1BQU1DLFFBQU4sQ0FBZSxTQUFmLENBQXJDLEVBQ0NYLG9IQUFzQlksU0FBdEIsRUFERCxLQUdDWixRQUFNLEtBQUtPLFFBQUwsQ0FBYyx3QkFBZCxDQUFOOztBQUVELFVBQU9QLEtBQVA7QUFDQTs7O3dCQUVLTSxVLEVBQVdJLEssRUFBTTtBQUN0QixPQUFJVixjQUFKO0FBQ0EsT0FBR00sV0FBV0ssUUFBWCxDQUFvQixVQUFwQixLQUFtQ0QsTUFBTUMsUUFBTixDQUFlLFVBQWYsQ0FBdEMsRUFDQ1gsb0hBQXNCWSxTQUF0QixFQURELEtBR0NaLFFBQU0sS0FBS08sUUFBTCxDQUFjLHdCQUFkLENBQU47O0FBRUQsVUFBT1AsS0FBUDtBQUNBOzs7O0VBbkJxQkYsVTs7SUFzQmpCZSxTOzs7Ozs7Ozs7O0VBQWtCZixVOztJQUlsQmdCLFE7Ozs7Ozs7Ozs7O3VCQUNBUixVLEVBQVdJLEssRUFBTTtBQUNyQixPQUFHSixXQUFXSyxRQUFYLENBQW9CLFVBQXBCLEtBQW1DRCxNQUFNQyxRQUFOLENBQWUsVUFBZixDQUF0QyxFQUNDLGlIQUFxQkMsU0FBckI7QUFDRDs7OzBCQUVPTixVLEVBQVdJLEssRUFBTTtBQUN4QixPQUFHSixXQUFXSyxRQUFYLENBQW9CLFNBQXBCLEtBQWtDRCxNQUFNQyxRQUFOLENBQWUsU0FBZixDQUFyQyxFQUNDLG9IQUF3QkMsU0FBeEI7QUFDRDs7OztFQVRxQmQsVTs7SUFhakJpQixVOzs7Ozs7Ozs7O0VBQW1CTixROztJQUduQk8sVTs7Ozs7Ozs7OztFQUFtQkYsUTs7QUFLekIsSUFBSUcsUUFBTSxFQUFWO0FBQ0FBLE1BQU1DLE1BQU4sR0FBYUwsU0FBYjtBQUNBSSxNQUFNRSxNQUFOLEdBQWFOLFNBQWI7QUFDQUksTUFBTUcsTUFBTixHQUFhUCxTQUFiO0FBQ0FJLE1BQU1JLE1BQU4sR0FBYVIsU0FBYjtBQUNBSSxNQUFNSyxPQUFOLEdBQWNSLFFBQWQ7QUFDQUcsTUFBTU0sUUFBTixHQUFlVCxRQUFmO0FBQ0FHLE1BQU1PLE9BQU4sR0FBY2YsUUFBZDtBQUNBUSxNQUFNUSxRQUFOLEdBQWVoQixRQUFmO0FBQ0FRLE1BQU1TLFNBQU4sR0FBZ0JYLFVBQWhCO0FBQ0FFLE1BQU1VLFNBQU4sR0FBZ0JaLFVBQWhCO0FBQ0FFLE1BQU1XLFNBQU4sR0FBZ0JaLFVBQWhCO0FBQ0FDLE1BQU1ZLFNBQU4sR0FBZ0JiLFVBQWhCO0FBQ0FDLE1BQU1hLEdBQU4sR0FBVXJCLFFBQVY7QUFDQVEsTUFBTWMsSUFBTixHQUFXbEIsU0FBWDs7SUFFcUJtQixVOzs7QUFDcEIscUJBQVlDLEtBQVosRUFBa0JDLE1BQWxCLEVBQXlCQyxPQUF6QixFQUFpQztBQUFBOztBQUFBLHdIQUN2QnZCLFNBRHVCOztBQUcvQixHQUFDLE9BQUtYLEdBQUwsQ0FBU0MsR0FBVCxDQUFhLFlBQWIsS0FBNEIsRUFBN0IsRUFBaUNrQyxPQUFqQyxDQUF5QyxhQUFHO0FBQzVDQyxPQUFFLHdCQUFRQSxDQUFSLENBQUY7QUFDQSxPQUFJdEMsT0FBS3NDLEVBQUVuQyxHQUFGLENBQU0sUUFBTixDQUFUO0FBQ0EsVUFBS0gsSUFBTCxJQUFXLElBQUlrQixNQUFNbEIsSUFBTixDQUFKLENBQWdCc0MsQ0FBaEIsQ0FBWDtBQUNBLEdBSkE7QUFIK0I7QUFRaEM7Ozs7NEJBRVMvQixVLEVBQVlJLEssRUFBTTtBQUMzQixVQUFPO0FBQ040QixXQUFNLEtBQUtDLE1BQUwsYUFBZTNCLFNBQWYsS0FBMkIsRUFBQ1AsSUFBRyxDQUFKLEVBRDNCO0FBRU5tQyxVQUFNLEtBQUtDLEtBQUwsYUFBYzdCLFNBQWQsS0FBMEIsRUFBQ1AsSUFBRyxDQUFKLEVBRjFCO0FBR05xQyxTQUFLLEtBQUtDLElBQUwsYUFBYS9CLFNBQWIsS0FBeUIsRUFBQ1AsSUFBRyxDQUFKLEVBSHhCO0FBSU51QyxZQUFRLEtBQUtDLE9BQUwsYUFBZ0JqQyxTQUFoQixLQUE0QixFQUFDUCxJQUFHLENBQUo7QUFKOUIsSUFBUDtBQU1BOzs7c0JBRUd5QyxJLEVBQW9CO0FBQUE7O0FBQUEsT0FBZHhDLFVBQWMsdUVBQUgsRUFBRzs7QUFDdkIsT0FBSU4sUUFBTSxLQUFLK0MsUUFBTCxDQUFjekMsVUFBZCxFQUEwQjBDLE1BQTFCLENBQWlDLFVBQUNDLEtBQUQsRUFBUUMsU0FBUixFQUFvQjtBQUM5RCxRQUFHRCxTQUFPOUMsU0FBVixFQUNDLE9BQU84QyxLQUFQO0FBQ0QsUUFBSUUsaUJBQWUsT0FBS0QsU0FBTCxDQUFuQjtBQUNBLFFBQUdDLGNBQUgsRUFDQyxPQUFPQSxlQUFlakQsR0FBZixDQUFtQjRDLElBQW5CLEVBQXdCeEMsVUFBeEIsQ0FBUDtBQUNELFdBQU8yQyxLQUFQO0FBQ0EsSUFQUyxFQU9SOUMsU0FQUSxDQUFWOztBQVNBLE9BQUdILFNBQU9HLFNBQVYsRUFDQ0gscUhBQW1CWSxTQUFuQjs7QUFFRCxVQUFPWixLQUFQO0FBQ0E7OzsyQkFFUU0sVSxFQUFXO0FBQ25CQSxjQUFXOEMsSUFBWCxDQUFnQixVQUFDZixDQUFELEVBQUdnQixDQUFIO0FBQUEsV0FBT3pELFVBQVUwRCxPQUFWLENBQWtCakIsQ0FBbEIsSUFBcUJ6QyxVQUFVMEQsT0FBVixDQUFrQkQsQ0FBbEIsQ0FBNUI7QUFBQSxJQUFoQjtBQUNBLFVBQU8vQyxVQUFQO0FBQ0E7O0FBRUQ7Ozs7Ozs7Ozt5QkFNT0EsVSxFQUFZSSxLLEVBQU07QUFBQTtBQUFBOztBQUN4QixPQUFJVixRQUFNLEtBQUsrQyxRQUFMLENBQWN6QyxVQUFkLEVBQTBCMEMsTUFBMUIsQ0FBaUMsVUFBQ0MsS0FBRCxFQUFRTSxJQUFSLEVBQWU7QUFBQztBQUMxRCxRQUFHTixTQUFPOUMsU0FBVixFQUNDLE9BQU84QyxLQUFQO0FBQ0QsUUFBSU8sWUFBVSxPQUFLRCxJQUFMLENBQWQ7QUFDQSxRQUFHQyxhQUFhQSxVQUFVakIsTUFBMUIsRUFDQyxPQUFPaUIsVUFBVWpCLE1BQVYsa0JBQW9CM0IsVUFBcEIsQ0FBUDtBQUNELElBTlMsRUFNUlQsU0FOUSxDQUFWOztBQVFBLE9BQUlzRCxLQUFHLElBQVA7QUFDQSxPQUFHekQsU0FBT0csU0FBUCxLQUFxQnNELEtBQUcsS0FBS3hELEdBQUwsQ0FBU0MsR0FBVCxDQUFhLE1BQWIsQ0FBeEIsQ0FBSCxFQUNDRix3SEFBc0JZLFNBQXRCLEVBWHVCLENBV1M7O0FBRWpDLE9BQUdaLFNBQU9HLFNBQVAsS0FBcUJzRCxLQUFHLEtBQUt4RCxHQUFMLENBQVNDLEdBQVQsQ0FBYSxTQUFiLENBQXhCLENBQUgsRUFBb0Q7QUFBQztBQUNwRCxRQUFHSSxXQUFXSyxRQUFYLENBQW9CLFNBQXBCLEtBQWtDRCxNQUFNQyxRQUFOLENBQWUsU0FBZixDQUFyQyxFQUNDWCxRQUFNLEtBQUtPLFFBQUwsQ0FBYywwQkFBZCxDQUFOLENBREQsS0FHQ1AsUUFBTSxLQUFLTyxRQUFMLENBQWMsNEJBQWQsQ0FBTjtBQUNEOztBQUVELE9BQUdQLFNBQU9HLFNBQVAsS0FBcUJzRCxLQUFHLEtBQUt4RCxHQUFMLENBQVNDLEdBQVQsQ0FBYSxPQUFiLENBQXhCLENBQUgsRUFBa0Q7QUFBQztBQUNsRCxRQUFHSSxXQUFXSyxRQUFYLENBQW9CLFNBQXBCLEtBQWtDRCxNQUFNQyxRQUFOLENBQWUsU0FBZixDQUFyQyxFQUNDWCxRQUFNLEtBQUtPLFFBQUwsQ0FBYyx3QkFBZCxDQUFOLENBREQsS0FHQ1AsUUFBTSxLQUFLTyxRQUFMLENBQWMsMEJBQWQsQ0FBTjtBQUNEOztBQUdELE9BQUdQLFNBQU9HLFNBQVYsRUFBb0I7QUFDbkIsUUFBSWdDLFVBQVEsS0FBS3VCLFVBQUwsRUFBWjtBQUNBLFFBQUd2QixXQUFXQSxRQUFRSSxNQUF0QixFQUNDdkMsUUFBTW1DLFFBQVFJLE1BQVIsZ0JBQWtCM0IsU0FBbEIsQ0FBTjtBQUNEOztBQUVELFVBQU9aLEtBQVA7QUFDQTs7O3dCQUVLTSxVLEVBQVdJLEssRUFBTTtBQUFBO0FBQUE7O0FBQ3RCLE9BQUlWLFFBQU0sS0FBSytDLFFBQUwsQ0FBY3pDLFVBQWQsRUFBMEIwQyxNQUExQixDQUFpQyxVQUFDQyxLQUFELEVBQVFNLElBQVIsRUFBZTtBQUFDO0FBQzFELFFBQUdOLFNBQU85QyxTQUFWLEVBQ0MsT0FBTzhDLEtBQVA7QUFDRCxRQUFJTyxZQUFVLFFBQUtELElBQUwsQ0FBZDtBQUNBLFFBQUdDLGFBQWFBLFVBQVVmLEtBQTFCLEVBQ0MsT0FBT2UsVUFBVWYsS0FBVixrQkFBbUI3QixXQUFuQixDQUFQO0FBQ0QsSUFOUyxFQU1SVCxTQU5RLENBQVY7O0FBUUEsT0FBSXNELEtBQUcsSUFBUDtBQUNBLE9BQUd6RCxTQUFPRyxTQUFQLEtBQXFCc0QsS0FBRyxLQUFLeEQsR0FBTCxDQUFTQyxHQUFULENBQWEsTUFBYixDQUF4QixDQUFILEVBQ0NGLHVIQUFxQlksU0FBckIsRUFYcUIsQ0FXVTs7QUFFaEMsT0FBR1osU0FBT0csU0FBUCxLQUFxQnNELEtBQUcsS0FBS3hELEdBQUwsQ0FBU0MsR0FBVCxDQUFhLFNBQWIsQ0FBeEIsQ0FBSCxFQUFvRDtBQUFDO0FBQ3BELFFBQUdJLFdBQVdLLFFBQVgsQ0FBb0IsVUFBcEIsS0FBbUNELE1BQU1DLFFBQU4sQ0FBZSxVQUFmLENBQXRDLEVBQ0NYLFFBQU0sS0FBS08sUUFBTCxDQUFjLHlCQUFkLENBQU4sQ0FERCxLQUdDUCxRQUFNLEtBQUtPLFFBQUwsQ0FBYyw0QkFBZCxDQUFOO0FBQ0Q7O0FBRUQsT0FBR1AsU0FBT0csU0FBUCxLQUFxQnNELEtBQUcsS0FBS3hELEdBQUwsQ0FBU0MsR0FBVCxDQUFhLE9BQWIsQ0FBeEIsQ0FBSCxFQUFrRDtBQUFDO0FBQ2xELFFBQUdJLFdBQVdLLFFBQVgsQ0FBb0IsVUFBcEIsS0FBbUNELE1BQU1DLFFBQU4sQ0FBZSxVQUFmLENBQXRDLEVBQ0NYLFFBQU0sS0FBS08sUUFBTCxDQUFjLHVCQUFkLENBQU4sQ0FERCxLQUdDUCxRQUFNLEtBQUtPLFFBQUwsQ0FBYywwQkFBZCxDQUFOO0FBQ0Q7O0FBR0QsT0FBR1AsU0FBT0csU0FBVixFQUFvQjtBQUNuQixRQUFJZ0MsVUFBUSxLQUFLdUIsVUFBTCxFQUFaO0FBQ0EsUUFBR3ZCLFdBQVdBLFFBQVFNLEtBQXRCLEVBQ0N6QyxRQUFNbUMsUUFBUU0sS0FBUixnQkFBaUI3QixTQUFqQixDQUFOO0FBQ0Q7O0FBRUQsVUFBT1osS0FBUDtBQUNBOzs7dUJBRUlNLFUsRUFBV0ksSyxFQUFNO0FBQUE7QUFBQTs7QUFDckIsT0FBSVYsUUFBTSxLQUFLK0MsUUFBTCxDQUFjekMsVUFBZCxFQUEwQjBDLE1BQTFCLENBQWlDLFVBQUNDLEtBQUQsRUFBUU0sSUFBUixFQUFlO0FBQ3pELFFBQUdOLFNBQU85QyxTQUFWLEVBQ0MsT0FBTzhDLEtBQVA7QUFDRCxRQUFJTyxZQUFVLFFBQUtELElBQUwsQ0FBZDtBQUNBLFFBQUdDLGFBQWFBLFVBQVViLElBQTFCLEVBQ0MsT0FBT2EsVUFBVWIsSUFBVixrQkFBa0IvQixXQUFsQixDQUFQO0FBQ0QsSUFOUyxFQU1SVCxTQU5RLENBQVY7O0FBUUEsT0FBSXNELEtBQUcsSUFBUDtBQUNBLE9BQUd6RCxTQUFPRyxTQUFQLEtBQXFCc0QsS0FBRyxLQUFLeEQsR0FBTCxDQUFTQyxHQUFULENBQWEsTUFBYixDQUF4QixDQUFILEVBQ0NGLHNIQUFvQlksU0FBcEIsRUFYb0IsQ0FXVTs7QUFFL0IsT0FBR1osU0FBT0csU0FBUCxLQUFxQnNELEtBQUcsS0FBS3hELEdBQUwsQ0FBU0MsR0FBVCxDQUFhLFNBQWIsQ0FBeEIsQ0FBSCxFQUFvRDtBQUFDO0FBQ3BELFFBQUdJLFdBQVdLLFFBQVgsQ0FBb0IsVUFBcEIsS0FBbUNELE1BQU1DLFFBQU4sQ0FBZSxVQUFmLENBQXRDLEVBQ0NYLFFBQU0sS0FBS08sUUFBTCxDQUFjLHdCQUFkLENBQU4sQ0FERCxLQUdDUCxRQUFNLEtBQUtPLFFBQUwsQ0FBYyw0QkFBZCxDQUFOO0FBQ0Q7O0FBRUQsT0FBR1AsU0FBT0csU0FBUCxLQUFxQnNELEtBQUcsS0FBS3hELEdBQUwsQ0FBU0MsR0FBVCxDQUFhLE9BQWIsQ0FBeEIsQ0FBSCxFQUFrRDtBQUFDO0FBQ2xELFFBQUdJLFdBQVdLLFFBQVgsQ0FBb0IsVUFBcEIsS0FBbUNELE1BQU1DLFFBQU4sQ0FBZSxVQUFmLENBQXRDLEVBQ0NYLFFBQU0sS0FBS08sUUFBTCxDQUFjLHNCQUFkLENBQU4sQ0FERCxLQUdDUCxRQUFNLEtBQUtPLFFBQUwsQ0FBYywwQkFBZCxDQUFOO0FBQ0Q7O0FBRUQsT0FBR1AsU0FBT0csU0FBVixFQUFvQjtBQUNuQixRQUFJZ0MsVUFBUSxLQUFLdUIsVUFBTCxFQUFaO0FBQ0EsUUFBR3ZCLFdBQVdBLFFBQVFRLElBQXRCLEVBQ0MzQyxRQUFNbUMsUUFBUVEsSUFBUixnQkFBZ0IvQixTQUFoQixDQUFOO0FBQ0Q7O0FBRUQsVUFBT1osS0FBUDtBQUNBOzs7MEJBRU9NLFUsRUFBWUksSyxFQUFNO0FBQUE7QUFBQTs7QUFDekIsT0FBSVYsUUFBTSxLQUFLK0MsUUFBTCxDQUFjekMsVUFBZCxFQUEwQjBDLE1BQTFCLENBQWlDLFVBQUNDLEtBQUQsRUFBUU0sSUFBUixFQUFlO0FBQ3pELFFBQUdOLFNBQU85QyxTQUFWLEVBQ0MsT0FBTzhDLEtBQVA7QUFDRCxRQUFJTyxZQUFVLFFBQUtELElBQUwsQ0FBZDtBQUNBLFFBQUdDLGFBQWFBLFVBQVVYLE9BQTFCLEVBQ0MsT0FBT1csVUFBVVgsT0FBVixrQkFBcUJqQyxXQUFyQixDQUFQO0FBQ0QsSUFOUyxFQU1SVCxTQU5RLENBQVY7O0FBU0EsT0FBSXNELEtBQUcsSUFBUDtBQUNBLE9BQUd6RCxTQUFPRyxTQUFQLEtBQXFCc0QsS0FBRyxLQUFLeEQsR0FBTCxDQUFTQyxHQUFULENBQWEsTUFBYixDQUF4QixDQUFILEVBQ0NGLHNIQUFvQlksU0FBcEIsRUFad0IsQ0FZTTs7QUFFL0IsT0FBR1osU0FBT0csU0FBUCxLQUFxQnNELEtBQUcsS0FBS3hELEdBQUwsQ0FBU0MsR0FBVCxDQUFhLFNBQWIsQ0FBeEIsQ0FBSCxFQUFvRDtBQUFDO0FBQ3BELFFBQUdJLFdBQVdLLFFBQVgsQ0FBb0IsU0FBcEIsS0FBa0NELE1BQU1DLFFBQU4sQ0FBZSxTQUFmLENBQXJDLEVBQ0NYLFFBQU0sS0FBS08sUUFBTCxDQUFjLDJCQUFkLENBQU4sQ0FERCxLQUdDUCxRQUFNLEtBQUtPLFFBQUwsQ0FBYyw0QkFBZCxDQUFOO0FBQ0Q7O0FBRUQsT0FBR1AsU0FBT0csU0FBUCxLQUFxQnNELEtBQUcsS0FBS3hELEdBQUwsQ0FBU0MsR0FBVCxDQUFhLE9BQWIsQ0FBeEIsQ0FBSCxFQUFrRDtBQUFDO0FBQ2xELFFBQUdJLFdBQVdLLFFBQVgsQ0FBb0IsU0FBcEIsS0FBa0NELE1BQU1DLFFBQU4sQ0FBZSxTQUFmLENBQXJDLEVBQ0NYLFFBQU0sS0FBS08sUUFBTCxDQUFjLHlCQUFkLENBQU4sQ0FERCxLQUdDUCxRQUFNLEtBQUtPLFFBQUwsQ0FBYywwQkFBZCxDQUFOO0FBQ0Q7O0FBRUQsT0FBR1AsU0FBT0csU0FBVixFQUFvQjtBQUNuQixRQUFJZ0MsVUFBUSxLQUFLdUIsVUFBTCxFQUFaO0FBQ0EsUUFBR3ZCLFdBQVdBLFFBQVFVLE9BQXRCLEVBQ0M3QyxRQUFNbUMsUUFBUVUsT0FBUixnQkFBbUJqQyxTQUFuQixDQUFOO0FBQ0Q7O0FBRUQsVUFBT1osS0FBUDtBQUNBOzs7O0VBaE1zQ0YsVTs7a0JBQW5Ca0MsVSIsImZpbGUiOiJ0YWJsZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBTdHlsZSBmcm9tIFwiLi9iYXNlXCJcclxuXHJcbmltcG9ydCB7Z2V0YWJsZX0gZnJvbSBcIi4uLy4uLy4uL3htbE9iamVjdFwiXHJcblxyXG5cclxuLyoqXHJcbiAqIGNvbmRpdGlvbmFsIGZvcm1hdHRpbmc6IGh0dHA6Ly9vZmZpY2VvcGVueG1sLmNvbS9XUHN0eWxlVGFibGVTdHlsZXNDb25kLnBocFxyXG4gKiBUaGUgY29uZGl0aW9uYWwgZm9ybWF0cyBhcmUgYXBwbGllZCBpbiB0aGUgZm9sbG93aW5nIG9yZGVyOlxyXG5cdD5XaG9sZSB0YWJsZS90YWJsZVxyXG5cdD5CYW5kZWQgY29sdW1ucy9iYW5kMVZlcnQgLCBldmVuIGNvbHVtbiBiYW5kaW5nL2JhbmQyVmVydFxyXG5cdD5CYW5kZWQgcm93cy9iYW5kMUhvcnogLCBldmVuIHJvdyBiYW5kaW5nL2JhbmQySG9yelxyXG5cdD5GaXJzdCByb3cvZmlyc3RSb3cgLCBsYXN0IHJvdy9sYXN0Um93XHJcblx0PkZpcnN0IGNvbHVtbi9maXJzdENvbCwgbGFzdCBjb2x1bW4vbGFzdENvbFxyXG5cdD5Ub3AgbGVmdC9ud0NlbGwsIHRvcCByaWdodC9uZUNlbGwsIGJvdHRvbSBsZWZ0L3N3Q2VsbCwgYm90dG9tIHJpZ2h0L3NlQ2VsbFxyXG4gKi9cclxubGV0IFBSSU9SSVpFRD0nc2VDZWxsLHN3Q2VsbCxuZUNlbGwsbndDZWxsLGxhc3RDb2wsZmlyc3RDb2wsbGFzdFJvdyxmaXJzdFJvdyxiYW5kMkhvcnosYmFuZDFIb3J6LGJhbmQyVmVydCxiYW5kMVZlcnQnLnNwbGl0KCcsJylcclxuXHJcbmNsYXNzIFdpdGhCb3JkZXIgZXh0ZW5kcyBTdHlsZXtcclxuXHJcblx0XzFib3JkZXIodHlwZSl7XHJcblx0XHRsZXQgdmFsdWU9dGhpcy5yYXcuZ2V0KHR5cGUsZmFsc2UpXHJcblx0XHRpZih2YWx1ZSE9dW5kZWZpbmVkKXtcclxuXHRcdFx0aWYodmFsdWUudmFsPT0nbmlsJylcclxuXHRcdFx0XHRyZXR1cm4ge3N6OjB9XHJcblx0XHRcdHJldHVybiB2YWx1ZVxyXG5cdFx0fVxyXG5cclxuXHRcdHJldHVybiB1bmRlZmluZWRcclxuXHR9XHJcblxyXG5cdF9yaWdodChjb25kaXRpb25zKXtcclxuXHRcdHJldHVybiB0aGlzLl8xYm9yZGVyKCd0Y1ByLnRjQm9yZGVycy5yaWdodCcpXHJcblx0fVxyXG5cclxuXHRfbGVmdChjb25kaXRpb25zKXtcclxuXHRcdHJldHVybiB0aGlzLl8xYm9yZGVyKCd0Y1ByLnRjQm9yZGVycy5sZWZ0JylcclxuXHR9XHJcblxyXG5cdF90b3AoKXtcclxuXHRcdHJldHVybiB0aGlzLl8xYm9yZGVyKCd0Y1ByLnRjQm9yZGVycy50b3AnKVxyXG5cdH1cclxuXHJcblx0X2JvdHRvbSgpe1xyXG5cdFx0cmV0dXJuIHRoaXMuXzFib3JkZXIoJ3RjUHIudGNCb3JkZXJzLmJvdHRvbScpXHJcblx0fVxyXG59XHJcblxyXG5jbGFzcyBSb3dTdHlsZSBleHRlbmRzIFdpdGhCb3JkZXJ7XHJcblx0X3JpZ2h0KGNvbmRpdGlvbnMsZWRnZXMpe1xyXG5cdFx0bGV0IHZhbHVlXHJcblx0XHRpZihjb25kaXRpb25zLmluY2x1ZGVzKCdsYXN0Q29sJykgfHwgZWRnZXMuaW5jbHVkZXMoJ2xhc3RDb2wnKSlcclxuXHRcdFx0dmFsdWU9c3VwZXIuX3JpZ2h0KC4uLmFyZ3VtZW50cylcclxuXHRcdGVsc2VcclxuXHRcdFx0dmFsdWU9dGhpcy5fMWJvcmRlcigndGNQci50Y0JvcmRlcnMuaW5zaWRlVicpXHJcblxyXG5cdFx0cmV0dXJuIHZhbHVlXHJcblx0fVxyXG5cclxuXHRfbGVmdChjb25kaXRpb25zLGVkZ2VzKXtcclxuXHRcdGxldCB2YWx1ZVxyXG5cdFx0aWYoY29uZGl0aW9ucy5pbmNsdWRlcygnZmlyc3RDb2wnKSB8fCBlZGdlcy5pbmNsdWRlcygnZmlyc3RDb2wnKSlcclxuXHRcdFx0dmFsdWU9c3VwZXIuX3JpZ2h0KC4uLmFyZ3VtZW50cylcclxuXHRcdGVsc2VcclxuXHRcdFx0dmFsdWU9dGhpcy5fMWJvcmRlcigndGNQci50Y0JvcmRlcnMuaW5zaWRlVicpXHJcblxyXG5cdFx0cmV0dXJuIHZhbHVlXHJcblx0fVxyXG59XHJcblxyXG5jbGFzcyBDZWxsU3R5bGUgZXh0ZW5kcyBXaXRoQm9yZGVye1xyXG5cclxufVxyXG5cclxuY2xhc3MgQ29sU3R5bGUgZXh0ZW5kcyBXaXRoQm9yZGVye1xyXG5cdF90b3AoY29uZGl0aW9ucyxlZGdlcyl7XHJcblx0XHRpZihjb25kaXRpb25zLmluY2x1ZGVzKCdmaXJzdFJvdycpIHx8IGVkZ2VzLmluY2x1ZGVzKCdmaXJzdFJvdycpKVxyXG5cdFx0XHRyZXR1cm4gc3VwZXIuX3RvcCguLi5hcmd1bWVudHMpXHJcblx0fVxyXG5cclxuXHRfYm90dG9tKGNvbmRpdGlvbnMsZWRnZXMpe1xyXG5cdFx0aWYoY29uZGl0aW9ucy5pbmNsdWRlcygnbGFzdFJvdycpIHx8IGVkZ2VzLmluY2x1ZGVzKCdsYXN0Um93JykpXHJcblx0XHRcdHJldHVybiBzdXBlci5fYm90dG9tKC4uLmFyZ3VtZW50cylcclxuXHR9XHJcbn1cclxuXHJcblxyXG5jbGFzcyBCYW5kSFN0eWxlIGV4dGVuZHMgUm93U3R5bGV7XHJcblxyXG59XHJcbmNsYXNzIEJhbmRWU3R5bGUgZXh0ZW5kcyBDb2xTdHlsZXtcclxuXHJcbn1cclxuXHJcblxyXG5sZXQgdHlwZXM9e31cclxudHlwZXMuc2VDZWxsPUNlbGxTdHlsZVxyXG50eXBlcy5zd0NlbGw9Q2VsbFN0eWxlXHJcbnR5cGVzLm5lQ2VsbD1DZWxsU3R5bGVcclxudHlwZXMubndDZWxsPUNlbGxTdHlsZVxyXG50eXBlcy5sYXN0Q29sPUNvbFN0eWxlXHJcbnR5cGVzLmZpcnN0Q29sPUNvbFN0eWxlXHJcbnR5cGVzLmxhc3RSb3c9Um93U3R5bGVcclxudHlwZXMuZmlyc3RSb3c9Um93U3R5bGVcclxudHlwZXMuYmFuZDJIb3J6PUJhbmRIU3R5bGVcclxudHlwZXMuYmFuZDFIb3J6PUJhbmRIU3R5bGVcclxudHlwZXMuYmFuZDJWZXJ0PUJhbmRWU3R5bGVcclxudHlwZXMuYmFuZDFWZXJ0PUJhbmRWU3R5bGVcclxudHlwZXMucm93PVJvd1N0eWxlXHJcbnR5cGVzLmNlbGw9Q2VsbFN0eWxlXHJcblxyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUYWJsZVN0eWxlIGV4dGVuZHMgV2l0aEJvcmRlcntcclxuXHRjb25zdHJ1Y3RvcihzdHlsZSxzdHlsZXMsYmFzZWRPbil7XHJcblx0XHRzdXBlciguLi5hcmd1bWVudHMpXHJcblxyXG5cdFx0Oyh0aGlzLnJhdy5nZXQoJ3RibFN0eWxlUHInKXx8W10pLmZvckVhY2goYT0+e1xyXG5cdFx0XHRhPWdldGFibGUoYSlcclxuXHRcdFx0bGV0IHR5cGU9YS5nZXQoJyQudHlwZScpXHJcblx0XHRcdHRoaXNbdHlwZV09bmV3IHR5cGVzW3R5cGVdKGEpXHJcblx0XHR9KVxyXG5cdH1cclxuXHJcblx0Z2V0Qm9yZGVyKGNvbmRpdGlvbnMsIGVkZ2VzKXtcclxuXHRcdHJldHVybiB7XHJcblx0XHRcdHJpZ2h0OnRoaXMuX3JpZ2h0KC4uLmFyZ3VtZW50cyl8fHtzejowfSxcclxuXHRcdFx0bGVmdDogdGhpcy5fbGVmdCguLi5hcmd1bWVudHMpfHx7c3o6MH0sXHJcblx0XHRcdHRvcDogdGhpcy5fdG9wKC4uLmFyZ3VtZW50cyl8fHtzejowfSxcclxuXHRcdFx0Ym90dG9tOiB0aGlzLl9ib3R0b20oLi4uYXJndW1lbnRzKXx8e3N6OjB9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRnZXQocGF0aCwgY29uZGl0aW9ucz1bXSl7XHJcblx0XHRsZXQgdmFsdWU9dGhpcy5wcmlvcml6ZShjb25kaXRpb25zKS5yZWR1Y2UoKGZvdW5kLCBjb25kaXRpb24pPT57XHJcblx0XHRcdGlmKGZvdW5kIT11bmRlZmluZWQpXHJcblx0XHRcdFx0cmV0dXJuIGZvdW5kXHJcblx0XHRcdGxldCBjb25kaXRpb25TdHlsZT10aGlzW2NvbmRpdGlvbl1cclxuXHRcdFx0aWYoY29uZGl0aW9uU3R5bGUpXHJcblx0XHRcdFx0cmV0dXJuIGNvbmRpdGlvblN0eWxlLmdldChwYXRoLGNvbmRpdGlvbnMpXHJcblx0XHRcdHJldHVybiBmb3VuZFxyXG5cdFx0fSx1bmRlZmluZWQpXHJcblxyXG5cdFx0aWYodmFsdWU9PXVuZGVmaW5lZClcclxuXHRcdFx0dmFsdWU9c3VwZXIuZ2V0KC4uLmFyZ3VtZW50cylcclxuXHJcblx0XHRyZXR1cm4gdmFsdWVcclxuXHR9XHJcblxyXG5cdHByaW9yaXplKGNvbmRpdGlvbnMpe1xyXG5cdFx0Y29uZGl0aW9ucy5zb3J0KChhLGIpPT5QUklPUklaRUQuaW5kZXhPZihhKS1QUklPUklaRUQuaW5kZXhPZihiKSlcclxuXHRcdHJldHVybiBjb25kaXRpb25zXHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiAxLiBjb25kaXRpb25hbCBmb3JtYXR0aW5nXHJcblx0ICogMi4gdGFibGUudGNQclxyXG5cdCAqIDMuIHRhYmxlLnRyUHI9dGJsUHJFeFxyXG5cdCAqIDQuIHRhYmxlLnRibFByXHJcblx0ICovXHJcblx0X3JpZ2h0KGNvbmRpdGlvbnMsIGVkZ2VzKXtcclxuXHRcdGxldCB2YWx1ZT10aGlzLnByaW9yaXplKGNvbmRpdGlvbnMpLnJlZHVjZSgoZm91bmQsIGNvbmQpPT57Ly8xLiBjb25kaXRpb25hbFxyXG5cdFx0XHRpZihmb3VuZCE9dW5kZWZpbmVkKVxyXG5cdFx0XHRcdHJldHVybiBmb3VuZFxyXG5cdFx0XHRsZXQgY29uZFN0eWxlPXRoaXNbY29uZF1cclxuXHRcdFx0aWYoY29uZFN0eWxlICYmIGNvbmRTdHlsZS5fcmlnaHQpXHJcblx0XHRcdFx0cmV0dXJuIGNvbmRTdHlsZS5fcmlnaHQoLi4uYXJndW1lbnRzKVxyXG5cdFx0fSx1bmRlZmluZWQpXHJcblxyXG5cdFx0bGV0IHByPW51bGxcclxuXHRcdGlmKHZhbHVlPT11bmRlZmluZWQgJiYgKHByPXRoaXMucmF3LmdldCgndGNQcicpKSlcclxuXHRcdFx0dmFsdWU9c3VwZXIuX3JpZ2h0KC4uLmFyZ3VtZW50cykvLzIuIHRhYmxlLnRjUHJcclxuXHJcblx0XHRpZih2YWx1ZT09dW5kZWZpbmVkICYmIChwcj10aGlzLnJhdy5nZXQoJ3RibFByRXgnKSkpey8vMy50YWJsZS50clByXHJcblx0XHRcdGlmKGNvbmRpdGlvbnMuaW5jbHVkZXMoJ2xhc3RDb2wnKSB8fCBlZGdlcy5pbmNsdWRlcygnbGFzdENvbCcpKVxyXG5cdFx0XHRcdHZhbHVlPXRoaXMuXzFib3JkZXIoJ3RibFByRXgudGJsQm9yZGVycy5yaWdodCcpXHJcblx0XHRcdGVsc2VcclxuXHRcdFx0XHR2YWx1ZT10aGlzLl8xYm9yZGVyKCd0YmxQckV4LnRibEJvcmRlcnMuaW5zaWRlVicpXHJcblx0XHR9XHJcblxyXG5cdFx0aWYodmFsdWU9PXVuZGVmaW5lZCAmJiAocHI9dGhpcy5yYXcuZ2V0KCd0YmxQcicpKSl7Ly80LlxyXG5cdFx0XHRpZihjb25kaXRpb25zLmluY2x1ZGVzKCdsYXN0Q29sJykgfHwgZWRnZXMuaW5jbHVkZXMoJ2xhc3RDb2wnKSlcclxuXHRcdFx0XHR2YWx1ZT10aGlzLl8xYm9yZGVyKCd0YmxQci50YmxCb3JkZXJzLnJpZ2h0JylcclxuXHRcdFx0ZWxzZVxyXG5cdFx0XHRcdHZhbHVlPXRoaXMuXzFib3JkZXIoJ3RibFByLnRibEJvcmRlcnMuaW5zaWRlVicpXHJcblx0XHR9XHJcblxyXG5cclxuXHRcdGlmKHZhbHVlPT11bmRlZmluZWQpe1xyXG5cdFx0XHRsZXQgYmFzZWRPbj10aGlzLmdldEJhc2VkT24oKVxyXG5cdFx0XHRpZihiYXNlZE9uICYmIGJhc2VkT24uX3JpZ2h0KVxyXG5cdFx0XHRcdHZhbHVlPWJhc2VkT24uX3JpZ2h0KC4uLmFyZ3VtZW50cylcclxuXHRcdH1cclxuXHJcblx0XHRyZXR1cm4gdmFsdWVcclxuXHR9XHJcblxyXG5cdF9sZWZ0KGNvbmRpdGlvbnMsZWRnZXMpe1xyXG5cdFx0bGV0IHZhbHVlPXRoaXMucHJpb3JpemUoY29uZGl0aW9ucykucmVkdWNlKChmb3VuZCwgY29uZCk9PnsvLzEuIGNvbmRpdGlvbmFsXHJcblx0XHRcdGlmKGZvdW5kIT11bmRlZmluZWQpXHJcblx0XHRcdFx0cmV0dXJuIGZvdW5kXHJcblx0XHRcdGxldCBjb25kU3R5bGU9dGhpc1tjb25kXVxyXG5cdFx0XHRpZihjb25kU3R5bGUgJiYgY29uZFN0eWxlLl9sZWZ0KVxyXG5cdFx0XHRcdHJldHVybiBjb25kU3R5bGUuX2xlZnQoLi4uYXJndW1lbnRzKVxyXG5cdFx0fSx1bmRlZmluZWQpXHJcblxyXG5cdFx0bGV0IHByPW51bGxcclxuXHRcdGlmKHZhbHVlPT11bmRlZmluZWQgJiYgKHByPXRoaXMucmF3LmdldCgndGNQcicpKSlcclxuXHRcdFx0dmFsdWU9c3VwZXIuX2xlZnQoLi4uYXJndW1lbnRzKS8vMi4gdGFibGUudGNQclxyXG5cclxuXHRcdGlmKHZhbHVlPT11bmRlZmluZWQgJiYgKHByPXRoaXMucmF3LmdldCgndGJsUHJFeCcpKSl7Ly8zLnRhYmxlLnRyUHJcclxuXHRcdFx0aWYoY29uZGl0aW9ucy5pbmNsdWRlcygnZmlyc3RDb2wnKSB8fCBlZGdlcy5pbmNsdWRlcygnZmlyc3RDb2wnKSlcclxuXHRcdFx0XHR2YWx1ZT10aGlzLl8xYm9yZGVyKCd0YmxQckV4LnRibEJvcmRlcnMubGVmdCcpXHJcblx0XHRcdGVsc2VcclxuXHRcdFx0XHR2YWx1ZT10aGlzLl8xYm9yZGVyKCd0YmxQckV4LnRibEJvcmRlcnMuaW5zaWRlVicpXHJcblx0XHR9XHJcblxyXG5cdFx0aWYodmFsdWU9PXVuZGVmaW5lZCAmJiAocHI9dGhpcy5yYXcuZ2V0KCd0YmxQcicpKSl7Ly80LlxyXG5cdFx0XHRpZihjb25kaXRpb25zLmluY2x1ZGVzKCdmaXJzdENvbCcpIHx8IGVkZ2VzLmluY2x1ZGVzKCdmaXJzdENvbCcpKVxyXG5cdFx0XHRcdHZhbHVlPXRoaXMuXzFib3JkZXIoJ3RibFByLnRibEJvcmRlcnMubGVmdCcpXHJcblx0XHRcdGVsc2VcclxuXHRcdFx0XHR2YWx1ZT10aGlzLl8xYm9yZGVyKCd0YmxQci50YmxCb3JkZXJzLmluc2lkZVYnKVxyXG5cdFx0fVxyXG5cclxuXHJcblx0XHRpZih2YWx1ZT09dW5kZWZpbmVkKXtcclxuXHRcdFx0bGV0IGJhc2VkT249dGhpcy5nZXRCYXNlZE9uKClcclxuXHRcdFx0aWYoYmFzZWRPbiAmJiBiYXNlZE9uLl9sZWZ0KVxyXG5cdFx0XHRcdHZhbHVlPWJhc2VkT24uX2xlZnQoLi4uYXJndW1lbnRzKVxyXG5cdFx0fVxyXG5cclxuXHRcdHJldHVybiB2YWx1ZVxyXG5cdH1cclxuXHJcblx0X3RvcChjb25kaXRpb25zLGVkZ2VzKXtcclxuXHRcdGxldCB2YWx1ZT10aGlzLnByaW9yaXplKGNvbmRpdGlvbnMpLnJlZHVjZSgoZm91bmQsIGNvbmQpPT57XHJcblx0XHRcdGlmKGZvdW5kIT11bmRlZmluZWQpXHJcblx0XHRcdFx0cmV0dXJuIGZvdW5kXHJcblx0XHRcdGxldCBjb25kU3R5bGU9dGhpc1tjb25kXVxyXG5cdFx0XHRpZihjb25kU3R5bGUgJiYgY29uZFN0eWxlLl90b3ApXHJcblx0XHRcdFx0cmV0dXJuIGNvbmRTdHlsZS5fdG9wKC4uLmFyZ3VtZW50cylcclxuXHRcdH0sdW5kZWZpbmVkKVxyXG5cclxuXHRcdGxldCBwcj1udWxsXHJcblx0XHRpZih2YWx1ZT09dW5kZWZpbmVkICYmIChwcj10aGlzLnJhdy5nZXQoJ3RjUHInKSkpXHJcblx0XHRcdHZhbHVlPXN1cGVyLl90b3AoLi4uYXJndW1lbnRzKS8vMi4gdGFibGUudGNQclxyXG5cclxuXHRcdGlmKHZhbHVlPT11bmRlZmluZWQgJiYgKHByPXRoaXMucmF3LmdldCgndGJsUHJFeCcpKSl7Ly8zLnRhYmxlLnRyUHJcclxuXHRcdFx0aWYoY29uZGl0aW9ucy5pbmNsdWRlcygnZmlyc3RSb3cnKSB8fCBlZGdlcy5pbmNsdWRlcygnZmlyc3RSb3cnKSlcclxuXHRcdFx0XHR2YWx1ZT10aGlzLl8xYm9yZGVyKCd0YmxQckV4LnRibEJvcmRlcnMudG9wJylcclxuXHRcdFx0ZWxzZVxyXG5cdFx0XHRcdHZhbHVlPXRoaXMuXzFib3JkZXIoJ3RibFByRXgudGJsQm9yZGVycy5pbnNpZGVIJylcclxuXHRcdH1cclxuXHJcblx0XHRpZih2YWx1ZT09dW5kZWZpbmVkICYmIChwcj10aGlzLnJhdy5nZXQoJ3RibFByJykpKXsvLzQuXHJcblx0XHRcdGlmKGNvbmRpdGlvbnMuaW5jbHVkZXMoJ2ZpcnN0Um93JykgfHwgZWRnZXMuaW5jbHVkZXMoJ2ZpcnN0Um93JykpXHJcblx0XHRcdFx0dmFsdWU9dGhpcy5fMWJvcmRlcigndGJsUHIudGJsQm9yZGVycy50b3AnKVxyXG5cdFx0XHRlbHNlXHJcblx0XHRcdFx0dmFsdWU9dGhpcy5fMWJvcmRlcigndGJsUHIudGJsQm9yZGVycy5pbnNpZGVIJylcclxuXHRcdH1cclxuXHJcblx0XHRpZih2YWx1ZT09dW5kZWZpbmVkKXtcclxuXHRcdFx0bGV0IGJhc2VkT249dGhpcy5nZXRCYXNlZE9uKClcclxuXHRcdFx0aWYoYmFzZWRPbiAmJiBiYXNlZE9uLl90b3ApXHJcblx0XHRcdFx0dmFsdWU9YmFzZWRPbi5fdG9wKC4uLmFyZ3VtZW50cylcclxuXHRcdH1cclxuXHJcblx0XHRyZXR1cm4gdmFsdWVcclxuXHR9XHJcblxyXG5cdF9ib3R0b20oY29uZGl0aW9ucywgZWRnZXMpe1xyXG5cdFx0bGV0IHZhbHVlPXRoaXMucHJpb3JpemUoY29uZGl0aW9ucykucmVkdWNlKChmb3VuZCwgY29uZCk9PntcclxuXHRcdFx0aWYoZm91bmQhPXVuZGVmaW5lZClcclxuXHRcdFx0XHRyZXR1cm4gZm91bmRcclxuXHRcdFx0bGV0IGNvbmRTdHlsZT10aGlzW2NvbmRdXHJcblx0XHRcdGlmKGNvbmRTdHlsZSAmJiBjb25kU3R5bGUuX2JvdHRvbSlcclxuXHRcdFx0XHRyZXR1cm4gY29uZFN0eWxlLl9ib3R0b20oLi4uYXJndW1lbnRzKVxyXG5cdFx0fSx1bmRlZmluZWQpXHJcblxyXG5cclxuXHRcdGxldCBwcj1udWxsXHJcblx0XHRpZih2YWx1ZT09dW5kZWZpbmVkICYmIChwcj10aGlzLnJhdy5nZXQoJ3RjUHInKSkpXHJcblx0XHRcdHZhbHVlPXN1cGVyLl90b3AoLi4uYXJndW1lbnRzKS8vMi4gdGFibGUudGNQclxyXG5cclxuXHRcdGlmKHZhbHVlPT11bmRlZmluZWQgJiYgKHByPXRoaXMucmF3LmdldCgndGJsUHJFeCcpKSl7Ly8zLnRhYmxlLnRyUHJcclxuXHRcdFx0aWYoY29uZGl0aW9ucy5pbmNsdWRlcygnbGFzdFJvdycpIHx8IGVkZ2VzLmluY2x1ZGVzKCdsYXN0Um93JykpXHJcblx0XHRcdFx0dmFsdWU9dGhpcy5fMWJvcmRlcigndGJsUHJFeC50YmxCb3JkZXJzLmJvdHRvbScpXHJcblx0XHRcdGVsc2VcclxuXHRcdFx0XHR2YWx1ZT10aGlzLl8xYm9yZGVyKCd0YmxQckV4LnRibEJvcmRlcnMuaW5zaWRlSCcpXHJcblx0XHR9XHJcblxyXG5cdFx0aWYodmFsdWU9PXVuZGVmaW5lZCAmJiAocHI9dGhpcy5yYXcuZ2V0KCd0YmxQcicpKSl7Ly80LlxyXG5cdFx0XHRpZihjb25kaXRpb25zLmluY2x1ZGVzKCdsYXN0Um93JykgfHwgZWRnZXMuaW5jbHVkZXMoJ2xhc3RSb3cnKSlcclxuXHRcdFx0XHR2YWx1ZT10aGlzLl8xYm9yZGVyKCd0YmxQci50YmxCb3JkZXJzLmJvdHRvbScpXHJcblx0XHRcdGVsc2VcclxuXHRcdFx0XHR2YWx1ZT10aGlzLl8xYm9yZGVyKCd0YmxQci50YmxCb3JkZXJzLmluc2lkZUgnKVxyXG5cdFx0fVxyXG5cclxuXHRcdGlmKHZhbHVlPT11bmRlZmluZWQpe1xyXG5cdFx0XHRsZXQgYmFzZWRPbj10aGlzLmdldEJhc2VkT24oKVxyXG5cdFx0XHRpZihiYXNlZE9uICYmIGJhc2VkT24uX2JvdHRvbSlcclxuXHRcdFx0XHR2YWx1ZT1iYXNlZE9uLl9ib3R0b20oLi4uYXJndW1lbnRzKVxyXG5cdFx0fVxyXG5cclxuXHRcdHJldHVybiB2YWx1ZVxyXG5cdH1cclxufVxyXG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9vcGVueG1sL2RvY3gvc3R5bGUvdGFibGUuanMiXSwibmFtZXMiOlsiUFJJT1JJWkVEIiwic3BsaXQiLCJXaXRoQm9yZGVyIiwidHlwZSIsInZhbHVlIiwicmF3IiwiZ2V0IiwidW5kZWZpbmVkIiwidmFsIiwic3oiLCJjb25kaXRpb25zIiwiXzFib3JkZXIiLCJSb3dTdHlsZSIsImVkZ2VzIiwiaW5jbHVkZXMiLCJhcmd1bWVudHMiLCJDZWxsU3R5bGUiLCJDb2xTdHlsZSIsIkJhbmRIU3R5bGUiLCJCYW5kVlN0eWxlIiwidHlwZXMiLCJzZUNlbGwiLCJzd0NlbGwiLCJuZUNlbGwiLCJud0NlbGwiLCJsYXN0Q29sIiwiZmlyc3RDb2wiLCJsYXN0Um93IiwiZmlyc3RSb3ciLCJiYW5kMkhvcnoiLCJiYW5kMUhvcnoiLCJiYW5kMlZlcnQiLCJiYW5kMVZlcnQiLCJyb3ciLCJjZWxsIiwiVGFibGVTdHlsZSIsInN0eWxlIiwic3R5bGVzIiwiYmFzZWRPbiIsImZvckVhY2giLCJhIiwicmlnaHQiLCJfcmlnaHQiLCJsZWZ0IiwiX2xlZnQiLCJ0b3AiLCJfdG9wIiwiYm90dG9tIiwiX2JvdHRvbSIsInBhdGgiLCJwcmlvcml6ZSIsInJlZHVjZSIsImZvdW5kIiwiY29uZGl0aW9uIiwiY29uZGl0aW9uU3R5bGUiLCJzb3J0IiwiYiIsImluZGV4T2YiLCJjb25kIiwiY29uZFN0eWxlIiwicHIiLCJnZXRCYXNlZE9uIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUE7Ozs7QUFFQTs7Ozs7Ozs7OztBQUdBOzs7Ozs7Ozs7O0FBVUEsSUFBSUEsWUFBVSx3R0FBd0dDLEtBQXhHLENBQThHLEdBQTlHLENBQWQ7O0lBRU1DLFU7Ozs7Ozs7Ozs7OzJCQUVJQyxJLEVBQUs7QUFDYixPQUFJQyxRQUFNLEtBQUtDLEdBQUwsQ0FBU0MsR0FBVCxDQUFhSCxJQUFiLEVBQWtCLEtBQWxCLENBQVY7QUFDQSxPQUFHQyxTQUFPRyxTQUFWLEVBQW9CO0FB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cUQsS0FBRyxLQUFLdkQsR0FBTCxDQUFTQyxHQUFULENBQWEsTUFBYixDQUF4QixDQUFILEVBQ0NGLHNIQUFvQlcsU0FBcEIsRUFad0IsQ0FZTTs7QUFFL0IsT0FBR1gsU0FBT0csU0FBUCxLQUFxQnFELEtBQUcsS0FBS3ZELEdBQUwsQ0FBU0MsR0FBVCxDQUFhLFNBQWIsQ0FBeEIsQ0FBSCxFQUFvRDtBQUFDO0FBQ3BELFFBQUdJLFdBQVdJLFFBQVgsQ0FBb0IsU0FBcEIsS0FBa0NELE1BQU1DLFFBQU4sQ0FBZSxTQUFmLENBQXJDLEVBQ0NWLFFBQU0sS0FBS08sUUFBTCxDQUFjLDJCQUFkLENBQU4sQ0FERCxLQUdDUCxRQUFNLEtBQUtPLFFBQUwsQ0FBYyw0QkFBZCxDQUFOO0FBQ0Q7O0FBRUQsT0FBR1AsU0FBT0csU0FBUCxLQUFxQnFELEtBQUcsS0FBS3ZELEdBQUwsQ0FBU0MsR0FBVCxDQUFhLE9BQWIsQ0FBeEIsQ0FBSCxFQUFrRDtBQUFDO0FBQ2xELFFBQUdJLFdBQVdJLFFBQVgsQ0FBb0IsU0FBcEIsS0FBa0NELE1BQU1DLFFBQU4sQ0FBZSxTQUFmLENBQXJDLEVBQ0NWLFFBQU0sS0FBS08sUUFBTCxDQUFjLHlCQUFkLENBQU4sQ0FERCxLQUdDUCxRQUFNLEtBQUtPLFFBQUwsQ0FBYywwQkFBZCxDQUFOO0FBQ0Q7O0FBRUQsT0FBR1AsU0FBT0csU0FBVixFQUFvQjtBQUNuQixRQUFJK0IsVUFBUSxLQUFLdUIsVUFBTCxFQUFaO0FBQ0EsUUFBR3ZCLFdBQVdBLFFBQVFVLE9BQXRCLEVBQ0M1QyxRQUFNa0MsUUFBUVUsT0FBUixnQkFBbUJqQyxTQUFuQixDQUFOO0FBQ0Q7O0FBRUQsVUFBT1gsS0FBUDtBQUNBOzs7O0VBaE1zQ0YsVTs7a0JBQW5CaUMsVSIsImZpbGUiOiJ0YWJsZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBTdHlsZSBmcm9tIFwiLi9iYXNlXCJcclxuXHJcbmltcG9ydCB7Z2V0YWJsZX0gZnJvbSBcIi4uLy4uLy4uL3htbE9iamVjdFwiXHJcblxyXG5cclxuLyoqXHJcbiAqIGNvbmRpdGlvbmFsIGZvcm1hdHRpbmc6IGh0dHA6Ly9vZmZpY2VvcGVueG1sLmNvbS9XUHN0eWxlVGFibGVTdHlsZXNDb25kLnBocFxyXG4gKiBUaGUgY29uZGl0aW9uYWwgZm9ybWF0cyBhcmUgYXBwbGllZCBpbiB0aGUgZm9sbG93aW5nIG9yZGVyOlxyXG5cdD5XaG9sZSB0YWJsZS90YWJsZVxyXG5cdD5CYW5kZWQgY29sdW1ucy9iYW5kMVZlcnQgLCBldmVuIGNvbHVtbiBiYW5kaW5nL2JhbmQyVmVydFxyXG5cdD5CYW5kZWQgcm93cy9iYW5kMUhvcnogLCBldmVuIHJvdyBiYW5kaW5nL2JhbmQySG9yelxyXG5cdD5GaXJzdCByb3cvZmlyc3RSb3cgLCBsYXN0IHJvdy9sYXN0Um93XHJcblx0PkZpcnN0IGNvbHVtbi9maXJzdENvbCwgbGFzdCBjb2x1bW4vbGFzdENvbFxyXG5cdD5Ub3AgbGVmdC9ud0NlbGwsIHRvcCByaWdodC9uZUNlbGwsIGJvdHRvbSBsZWZ0L3N3Q2VsbCwgYm90dG9tIHJpZ2h0L3NlQ2VsbFxyXG4gKi9cclxubGV0IFBSSU9SSVpFRD0nc2VDZWxsLHN3Q2VsbCxuZUNlbGwsbndDZWxsLGxhc3RDb2wsZmlyc3RDb2wsbGFzdFJvdyxmaXJzdFJvdyxiYW5kMkhvcnosYmFuZDFIb3J6LGJhbmQyVmVydCxiYW5kMVZlcnQnLnNwbGl0KCcsJylcclxuXHJcbmNsYXNzIFdpdGhCb3JkZXIgZXh0ZW5kcyBTdHlsZXtcclxuXHJcblx0XzFib3JkZXIodHlwZSl7XHJcblx0XHRsZXQgdmFsdWU9dGhpcy5yYXcuZ2V0KHR5cGUsZmFsc2UpXHJcblx0XHRpZih2YWx1ZSE9dW5kZWZpbmVkKXtcclxuXHRcdFx0aWYodmFsdWUudmFsPT0nbmlsJylcclxuXHRcdFx0XHRyZXR1cm4ge3N6OjB9XHJcblx0XHRcdHJldHVybiB2YWx1ZVxyXG5cdFx0fVxyXG5cclxuXHRcdHJldHVybiB1bmRlZmluZWRcclxuXHR9XHJcblxyXG5cdF9yaWdodChjb25kaXRpb25zKXtcclxuXHRcdHJldHVybiB0aGlzLl8xYm9yZGVyKCd0Y1ByLnRjQm9yZGVycy5yaWdodCcpXHJcblx0fVxyXG5cclxuXHRfbGVmdChjb25kaXRpb25zKXtcclxuXHRcdHJldHVybiB0aGlzLl8xYm9yZGVyKCd0Y1ByLnRjQm9yZGVycy5sZWZ0JylcclxuXHR9XHJcblxyXG5cdF90b3AoKXtcclxuXHRcdHJldHVybiB0aGlzLl8xYm9yZGVyKCd0Y1ByLnRjQm9yZGVycy50b3AnKVxyXG5cdH1cclxuXHJcblx0X2JvdHRvbSgpe1xyXG5cdFx0cmV0dXJuIHRoaXMuXzFib3JkZXIoJ3RjUHIudGNCb3JkZXJzLmJvdHRvbScpXHJcblx0fVxyXG59XHJcblxyXG5jbGFzcyBSb3dTdHlsZSBleHRlbmRzIFdpdGhCb3JkZXJ7XHJcblx0X3JpZ2h0KGNvbmRpdGlvbnMsZWRnZXMpe1xyXG5cdFx0bGV0IHZhbHVlXHJcblx0XHRpZihjb25kaXRpb25zLmluY2x1ZGVzKCdsYXN0Q29sJykgfHwgZWRnZXMuaW5jbHVkZXMoJ2xhc3RDb2wnKSlcclxuXHRcdFx0dmFsdWU9c3VwZXIuX3JpZ2h0KC4uLmFyZ3VtZW50cylcclxuXHRcdGVsc2VcclxuXHRcdFx0dmFsdWU9dGhpcy5fMWJvcmRlcigndGNQci50Y0JvcmRlcnMuaW5zaWRlVicpXHJcblxyXG5cdFx0cmV0dXJuIHZhbHVlXHJcblx0fVxyXG5cclxuXHRfbGVmdChjb25kaXRpb25zLGVkZ2VzKXtcclxuXHRcdGxldCB2YWx1ZVxyXG5cdFx0aWYoY29uZGl0aW9ucy5pbmNsdWRlcygnZmlyc3RDb2wnKSB8fCBlZGdlcy5pbmNsdWRlcygnZmlyc3RDb2wnKSlcclxuXHRcdFx0dmFsdWU9c3VwZXIuX3JpZ2h0KC4uLmFyZ3VtZW50cylcclxuXHRcdGVsc2VcclxuXHRcdFx0dmFsdWU9dGhpcy5fMWJvcmRlcigndGNQci50Y0JvcmRlcnMuaW5zaWRlVicpXHJcblxyXG5cdFx0cmV0dXJuIHZhbHVlXHJcblx0fVxyXG59XHJcblxyXG5jbGFzcyBDZWxsU3R5bGUgZXh0ZW5kcyBXaXRoQm9yZGVye1xyXG5cclxufVxyXG5cclxuY2xhc3MgQ29sU3R5bGUgZXh0ZW5kcyBXaXRoQm9yZGVye1xyXG5cdF90b3AoY29uZGl0aW9ucyxlZGdlcyl7XHJcblx0XHRpZihjb25kaXRpb25zLmluY2x1ZGVzKCdmaXJzdFJvdycpIHx8IGVkZ2VzLmluY2x1ZGVzKCdmaXJzdFJvdycpKVxyXG5cdFx0XHRyZXR1cm4gc3VwZXIuX3RvcCguLi5hcmd1bWVudHMpXHJcblx0fVxyXG5cclxuXHRfYm90dG9tKGNvbmRpdGlvbnMsZWRnZXMpe1xyXG5cdFx0aWYoY29uZGl0aW9ucy5pbmNsdWRlcygnbGFzdFJvdycpIHx8IGVkZ2VzLmluY2x1ZGVzKCdsYXN0Um93JykpXHJcblx0XHRcdHJldHVybiBzdXBlci5fYm90dG9tKC4uLmFyZ3VtZW50cylcclxuXHR9XHJcbn1cclxuXHJcblxyXG5jbGFzcyBCYW5kSFN0eWxlIGV4dGVuZHMgUm93U3R5bGV7XHJcblxyXG59XHJcbmNsYXNzIEJhbmRWU3R5bGUgZXh0ZW5kcyBDb2xTdHlsZXtcclxuXHJcbn1cclxuXHJcblxyXG5sZXQgdHlwZXM9e31cclxudHlwZXMuc2VDZWxsPUNlbGxTdHlsZVxyXG50eXBlcy5zd0NlbGw9Q2VsbFN0eWxlXHJcbnR5cGVzLm5lQ2VsbD1DZWxsU3R5bGVcclxudHlwZXMubndDZWxsPUNlbGxTdHlsZVxyXG50eXBlcy5sYXN0Q29sPUNvbFN0eWxlXHJcbnR5cGVzLmZpcnN0Q29sPUNvbFN0eWxlXHJcbnR5cGVzLmxhc3RSb3c9Um93U3R5bGVcclxudHlwZXMuZmlyc3RSb3c9Um93U3R5bGVcclxudHlwZXMuYmFuZDJIb3J6PUJhbmRIU3R5bGVcclxudHlwZXMuYmFuZDFIb3J6PUJhbmRIU3R5bGVcclxudHlwZXMuYmFuZDJWZXJ0PUJhbmRWU3R5bGVcclxudHlwZXMuYmFuZDFWZXJ0PUJhbmRWU3R5bGVcclxudHlwZXMucm93PVJvd1N0eWxlXHJcbnR5cGVzLmNlbGw9Q2VsbFN0eWxlXHJcblxyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUYWJsZVN0eWxlIGV4dGVuZHMgV2l0aEJvcmRlcntcclxuXHRjb25zdHJ1Y3RvcihzdHlsZSxzdHlsZXMsYmFzZWRPbil7XHJcblx0XHRzdXBlciguLi5hcmd1bWVudHMpXHJcblxyXG5cdFx0Oyh0aGlzLnJhdy5nZXQoJ3RibFN0eWxlUHInKXx8W10pLmZvckVhY2goYT0+e1xyXG5cdFx0XHRhPWdldGFibGUoYSlcclxuXHRcdFx0bGV0IHR5cGU9YS5nZXQoJyQudHlwZScpXHJcblx0XHRcdHRoaXNbdHlwZV09bmV3IHR5cGVzW3R5cGVdKGEpXHJcblx0XHR9KVxyXG5cdH1cclxuXHJcblx0Z2V0Qm9yZGVyKGNvbmRpdGlvbnMsIGVkZ2VzKXtcclxuXHRcdHJldHVybiB7XHJcblx0XHRcdHJpZ2h0OnRoaXMuX3JpZ2h0KC4uLmFyZ3VtZW50cyl8fHtzejowfSxcclxuXHRcdFx0bGVmdDogdGhpcy5fbGVmdCguLi5hcmd1bWVudHMpfHx7c3o6MH0sXHJcblx0XHRcdHRvcDogdGhpcy5fdG9wKC4uLmFyZ3VtZW50cyl8fHtzejowfSxcclxuXHRcdFx0Ym90dG9tOiB0aGlzLl9ib3R0b20oLi4uYXJndW1lbnRzKXx8e3N6OjB9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRnZXQocGF0aCwgY29uZGl0aW9ucz1bXSl7XHJcblx0XHRsZXQgdmFsdWU9dGhpcy5wcmlvcml6ZShjb25kaXRpb25zKS5yZWR1Y2UoKGZvdW5kLCBjb25kaXRpb24pPT57XHJcblx0XHRcdGlmKGZvdW5kIT11bmRlZmluZWQpXHJcblx0XHRcdFx0cmV0dXJuIGZvdW5kXHJcblx0XHRcdGxldCBjb25kaXRpb25TdHlsZT10aGlzW2NvbmRpdGlvbl1cclxuXHRcdFx0aWYoY29uZGl0aW9uU3R5bGUpXHJcblx0XHRcdFx0cmV0dXJuIGNvbmRpdGlvblN0eWxlLmdldChwYXRoLGNvbmRpdGlvbnMpXHJcblx0XHRcdHJldHVybiBmb3VuZFxyXG5cdFx0fSx1bmRlZmluZWQpXHJcblxyXG5cdFx0aWYodmFsdWU9PXVuZGVmaW5lZClcclxuXHRcdFx0dmFsdWU9c3VwZXIuZ2V0KC4uLmFyZ3VtZW50cylcclxuXHJcblx0XHRyZXR1cm4gdmFsdWVcclxuXHR9XHJcblxyXG5cdHByaW9yaXplKGNvbmRpdGlvbnMpe1xyXG5cdFx0Y29uZGl0aW9ucy5zb3J0KChhLGIpPT5QUklPUklaRUQuaW5kZXhPZihhKS1QUklPUklaRUQuaW5kZXhPZihiKSlcclxuXHRcdHJldHVybiBjb25kaXRpb25zXHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiAxLiBjb25kaXRpb25hbCBmb3JtYXR0aW5nXHJcblx0ICogMi4gdGFibGUudGNQclxyXG5cdCAqIDMuIHRhYmxlLnRyUHI9dGJsUHJFeFxyXG5cdCAqIDQuIHRhYmxlLnRibFByXHJcblx0ICovXHJcblx0X3JpZ2h0KGNvbmRpdGlvbnMsIGVkZ2VzKXtcclxuXHRcdGxldCB2YWx1ZT10aGlzLnByaW9yaXplKGNvbmRpdGlvbnMpLnJlZHVjZSgoZm91bmQsIGNvbmQpPT57Ly8xLiBjb25kaXRpb25hbFxyXG5cdFx0XHRpZihmb3VuZCE9dW5kZWZpbmVkKVxyXG5cdFx0XHRcdHJldHVybiBmb3VuZFxyXG5cdFx0XHRsZXQgY29uZFN0eWxlPXRoaXNbY29uZF1cclxuXHRcdFx0aWYoY29uZFN0eWxlICYmIGNvbmRTdHlsZS5fcmlnaHQpXHJcblx0XHRcdFx0cmV0dXJuIGNvbmRTdHlsZS5fcmlnaHQoLi4uYXJndW1lbnRzKVxyXG5cdFx0fSx1bmRlZmluZWQpXHJcblxyXG5cdFx0bGV0IHByPW51bGxcclxuXHRcdGlmKHZhbHVlPT11bmRlZmluZWQgJiYgKHByPXRoaXMucmF3LmdldCgndGNQcicpKSlcclxuXHRcdFx0dmFsdWU9c3VwZXIuX3JpZ2h0KC4uLmFyZ3VtZW50cykvLzIuIHRhYmxlLnRjUHJcclxuXHJcblx0XHRpZih2YWx1ZT09dW5kZWZpbmVkICYmIChwcj10aGlzLnJhdy5nZXQoJ3RibFByRXgnKSkpey8vMy50YWJsZS50clByXHJcblx0XHRcdGlmKGNvbmRpdGlvbnMuaW5jbHVkZXMoJ2xhc3RDb2wnKSB8fCBlZGdlcy5pbmNsdWRlcygnbGFzdENvbCcpKVxyXG5cdFx0XHRcdHZhbHVlPXRoaXMuXzFib3JkZXIoJ3RibFByRXgudGJsQm9yZGVycy5yaWdodCcpXHJcblx0XHRcdGVsc2VcclxuXHRcdFx0XHR2YWx1ZT10aGlzLl8xYm9yZGVyKCd0YmxQckV4LnRibEJvcmRlcnMuaW5zaWRlVicpXHJcblx0XHR9XHJcblxyXG5cdFx0aWYodmFsdWU9PXVuZGVmaW5lZCAmJiAocHI9dGhpcy5yYXcuZ2V0KCd0YmxQcicpKSl7Ly80LlxyXG5cdFx0XHRpZihjb25kaXRpb25zLmluY2x1ZGVzKCdsYXN0Q29sJykgfHwgZWRnZXMuaW5jbHVkZXMoJ2xhc3RDb2wnKSlcclxuXHRcdFx0XHR2YWx1ZT10aGlzLl8xYm9yZGVyKCd0YmxQci50YmxCb3JkZXJzLnJpZ2h0JylcclxuXHRcdFx0ZWxzZVxyXG5cdFx0XHRcdHZhbHVlPXRoaXMuXzFib3JkZXIoJ3RibFByLnRibEJvcmRlcnMuaW5zaWRlVicpXHJcblx0XHR9XHJcblxyXG5cclxuXHRcdGlmKHZhbHVlPT11bmRlZmluZWQpe1xyXG5cdFx0XHRsZXQgYmFzZWRPbj10aGlzLmdldEJhc2VkT24oKVxyXG5cdFx0XHRpZihiYXNlZE9uICYmIGJhc2VkT24uX3JpZ2h0KVxyXG5cdFx0XHRcdHZhbHVlPWJhc2VkT24uX3JpZ2h0KC4uLmFyZ3VtZW50cylcclxuXHRcdH1cclxuXHJcblx0XHRyZXR1cm4gdmFsdWVcclxuXHR9XHJcblxyXG5cdF9sZWZ0KGNvbmRpdGlvbnMsZWRnZXMpe1xyXG5cdFx0bGV0IHZhbHVlPXRoaXMucHJpb3JpemUoY29uZGl0aW9ucykucmVkdWNlKChmb3VuZCwgY29uZCk9PnsvLzEuIGNvbmRpdGlvbmFsXHJcblx0XHRcdGlmKGZvdW5kIT11bmRlZmluZWQpXHJcblx0XHRcdFx0cmV0dXJuIGZvdW5kXHJcblx0XHRcdGxldCBjb25kU3R5bGU9dGhpc1tjb25kXVxyXG5cdFx0XHRpZihjb25kU3R5bGUgJiYgY29uZFN0eWxlLl9sZWZ0KVxyXG5cdFx0XHRcdHJldHVybiBjb25kU3R5bGUuX2xlZnQoLi4uYXJndW1lbnRzKVxyXG5cdFx0fSx1bmRlZmluZWQpXHJcblxyXG5cdFx0bGV0IHByPW51bGxcclxuXHRcdGlmKHZhbHVlPT11bmRlZmluZWQgJiYgKHByPXRoaXMucmF3LmdldCgndGNQcicpKSlcclxuXHRcdFx0dmFsdWU9c3VwZXIuX2xlZnQoLi4uYXJndW1lbnRzKS8vMi4gdGFibGUudGNQclxyXG5cclxuXHRcdGlmKHZhbHVlPT11bmRlZmluZWQgJiYgKHByPXRoaXMucmF3LmdldCgndGJsUHJFeCcpKSl7Ly8zLnRhYmxlLnRyUHJcclxuXHRcdFx0aWYoY29uZGl0aW9ucy5pbmNsdWRlcygnZmlyc3RDb2wnKSB8fCBlZGdlcy5pbmNsdWRlcygnZmlyc3RDb2wnKSlcclxuXHRcdFx0XHR2YWx1ZT10aGlzLl8xYm9yZGVyKCd0YmxQckV4LnRibEJvcmRlcnMubGVmdCcpXHJcblx0XHRcdGVsc2VcclxuXHRcdFx0XHR2YWx1ZT10aGlzLl8xYm9yZGVyKCd0YmxQckV4LnRibEJvcmRlcnMuaW5zaWRlVicpXHJcblx0XHR9XHJcblxyXG5cdFx0aWYodmFsdWU9PXVuZGVmaW5lZCAmJiAocHI9dGhpcy5yYXcuZ2V0KCd0YmxQcicpKSl7Ly80LlxyXG5cdFx0XHRpZihjb25kaXRpb25zLmluY2x1ZGVzKCdmaXJzdENvbCcpIHx8IGVkZ2VzLmluY2x1ZGVzKCdmaXJzdENvbCcpKVxyXG5cdFx0XHRcdHZhbHVlPXRoaXMuXzFib3JkZXIoJ3RibFByLnRibEJvcmRlcnMubGVmdCcpXHJcblx0XHRcdGVsc2VcclxuXHRcdFx0XHR2YWx1ZT10aGlzLl8xYm9yZGVyKCd0YmxQci50YmxCb3JkZXJzLmluc2lkZVYnKVxyXG5cdFx0fVxyXG5cclxuXHJcblx0XHRpZih2YWx1ZT09dW5kZWZpbmVkKXtcclxuXHRcdFx0bGV0IGJhc2VkT249dGhpcy5nZXRCYXNlZE9uKClcclxuXHRcdFx0aWYoYmFzZWRPbiAmJiBiYXNlZE9uLl9sZWZ0KVxyXG5cdFx0XHRcdHZhbHVlPWJhc2VkT24uX2xlZnQoLi4uYXJndW1lbnRzKVxyXG5cdFx0fVxyXG5cclxuXHRcdHJldHVybiB2YWx1ZVxyXG5cdH1cclxuXHJcblx0X3RvcChjb25kaXRpb25zLGVkZ2VzKXtcclxuXHRcdGxldCB2YWx1ZT10aGlzLnByaW9yaXplKGNvbmRpdGlvbnMpLnJlZHVjZSgoZm91bmQsIGNvbmQpPT57XHJcblx0XHRcdGlmKGZvdW5kIT11bmRlZmluZWQpXHJcblx0XHRcdFx0cmV0dXJuIGZvdW5kXHJcblx0XHRcdGxldCBjb25kU3R5bGU9dGhpc1tjb25kXVxyXG5cdFx0XHRpZihjb25kU3R5bGUgJiYgY29uZFN0eWxlLl90b3ApXHJcblx0XHRcdFx0cmV0dXJuIGNvbmRTdHlsZS5fdG9wKC4uLmFyZ3VtZW50cylcclxuXHRcdH0sdW5kZWZpbmVkKVxyXG5cclxuXHRcdGxldCBwcj1udWxsXHJcblx0XHRpZih2YWx1ZT09dW5kZWZpbmVkICYmIChwcj10aGlzLnJhdy5nZXQoJ3RjUHInKSkpXHJcblx0XHRcdHZhbHVlPXN1cGVyLl90b3AoLi4uYXJndW1lbnRzKS8vMi4gdGFibGUudGNQclxyXG5cclxuXHRcdGlmKHZhbHVlPT11bmRlZmluZWQgJiYgKHByPXRoaXMucmF3LmdldCgndGJsUHJFeCcpKSl7Ly8zLnRhYmxlLnRyUHJcclxuXHRcdFx0aWYoY29uZGl0aW9ucy5pbmNsdWRlcygnZmlyc3RSb3cnKSB8fCBlZGdlcy5pbmNsdWRlcygnZmlyc3RSb3cnKSlcclxuXHRcdFx0XHR2YWx1ZT10aGlzLl8xYm9yZGVyKCd0YmxQckV4LnRibEJvcmRlcnMudG9wJylcclxuXHRcdFx0ZWxzZVxyXG5cdFx0XHRcdHZhbHVlPXRoaXMuXzFib3JkZXIoJ3RibFByRXgudGJsQm9yZGVycy5pbnNpZGVIJylcclxuXHRcdH1cclxuXHJcblx0XHRpZih2YWx1ZT09dW5kZWZpbmVkICYmIChwcj10aGlzLnJhdy5nZXQoJ3RibFByJykpKXsvLzQuXHJcblx0XHRcdGlmKGNvbmRpdGlvbnMuaW5jbHVkZXMoJ2ZpcnN0Um93JykgfHwgZWRnZXMuaW5jbHVkZXMoJ2ZpcnN0Um93JykpXHJcblx0XHRcdFx0dmFsdWU9dGhpcy5fMWJvcmRlcigndGJsUHIudGJsQm9yZGVycy50b3AnKVxyXG5cdFx0XHRlbHNlXHJcblx0XHRcdFx0dmFsdWU9dGhpcy5fMWJvcmRlcigndGJsUHIudGJsQm9yZGVycy5pbnNpZGVIJylcclxuXHRcdH1cclxuXHJcblx0XHRpZih2YWx1ZT09dW5kZWZpbmVkKXtcclxuXHRcdFx0bGV0IGJhc2VkT249dGhpcy5nZXRCYXNlZE9uKClcclxuXHRcdFx0aWYoYmFzZWRPbiAmJiBiYXNlZE9uLl90b3ApXHJcblx0XHRcdFx0dmFsdWU9YmFzZWRPbi5fdG9wKC4uLmFyZ3VtZW50cylcclxuXHRcdH1cclxuXHJcblx0XHRyZXR1cm4gdmFsdWVcclxuXHR9XHJcblxyXG5cdF9ib3R0b20oY29uZGl0aW9ucywgZWRnZXMpe1xyXG5cdFx0bGV0IHZhbHVlPXRoaXMucHJpb3JpemUoY29uZGl0aW9ucykucmVkdWNlKChmb3VuZCwgY29uZCk9PntcclxuXHRcdFx0aWYoZm91bmQhPXVuZGVmaW5lZClcclxuXHRcdFx0XHRyZXR1cm4gZm91bmRcclxuXHRcdFx0bGV0IGNvbmRTdHlsZT10aGlzW2NvbmRdXHJcblx0XHRcdGlmKGNvbmRTdHlsZSAmJiBjb25kU3R5bGUuX2JvdHRvbSlcclxuXHRcdFx0XHRyZXR1cm4gY29uZFN0eWxlLl9ib3R0b20oLi4uYXJndW1lbnRzKVxyXG5cdFx0fSx1bmRlZmluZWQpXHJcblxyXG5cclxuXHRcdGxldCBwcj1udWxsXHJcblx0XHRpZih2YWx1ZT09dW5kZWZpbmVkICYmIChwcj10aGlzLnJhdy5nZXQoJ3RjUHInKSkpXHJcblx0XHRcdHZhbHVlPXN1cGVyLl90b3AoLi4uYXJndW1lbnRzKS8vMi4gdGFibGUudGNQclxyXG5cclxuXHRcdGlmKHZhbHVlPT11bmRlZmluZWQgJiYgKHByPXRoaXMucmF3LmdldCgndGJsUHJFeCcpKSl7Ly8zLnRhYmxlLnRyUHJcclxuXHRcdFx0aWYoY29uZGl0aW9ucy5pbmNsdWRlcygnbGFzdFJvdycpIHx8IGVkZ2VzLmluY2x1ZGVzKCdsYXN0Um93JykpXHJcblx0XHRcdFx0dmFsdWU9dGhpcy5fMWJvcmRlcigndGJsUHJFeC50YmxCb3JkZXJzLmJvdHRvbScpXHJcblx0XHRcdGVsc2VcclxuXHRcdFx0XHR2YWx1ZT10aGlzLl8xYm9yZGVyKCd0YmxQckV4LnRibEJvcmRlcnMuaW5zaWRlSCcpXHJcblx0XHR9XHJcblxyXG5cdFx0aWYodmFsdWU9PXVuZGVmaW5lZCAmJiAocHI9dGhpcy5yYXcuZ2V0KCd0YmxQcicpKSl7Ly80LlxyXG5cdFx0XHRpZihjb25kaXRpb25zLmluY2x1ZGVzKCdsYXN0Um93JykgfHwgZWRnZXMuaW5jbHVkZXMoJ2xhc3RSb3cnKSlcclxuXHRcdFx0XHR2YWx1ZT10aGlzLl8xYm9yZGVyKCd0YmxQci50YmxCb3JkZXJzLmJvdHRvbScpXHJcblx0XHRcdGVsc2VcclxuXHRcdFx0XHR2YWx1ZT10aGlzLl8xYm9yZGVyKCd0YmxQci50YmxCb3JkZXJzLmluc2lkZUgnKVxyXG5cdFx0fVxyXG5cclxuXHRcdGlmKHZhbHVlPT11bmRlZmluZWQpe1xyXG5cdFx0XHRsZXQgYmFzZWRPbj10aGlzLmdldEJhc2VkT24oKVxyXG5cdFx0XHRpZihiYXNlZE9uICYmIGJhc2VkT24uX2JvdHRvbSlcclxuXHRcdFx0XHR2YWx1ZT1iYXNlZE9uLl9ib3R0b20oLi4uYXJndW1lbnRzKVxyXG5cdFx0fVxyXG5cclxuXHRcdHJldHVybiB2YWx1ZVxyXG5cdH1cclxufVxyXG4iXX0= \ No newline at end of file diff --git a/lib/openxml/drawml/index.js b/lib/openxml/drawml/index.js index 5096ddd..879d1b8 100644 --- a/lib/openxml/drawml/index.js +++ b/lib/openxml/drawml/index.js @@ -64,6 +64,7 @@ exports.default = function (od) { url = _n$attribs["r:link"]; if (url) return { url: url }; + if (!embed) return; var part = od.$(n).part(); return new _part2.default(part, od.doc).getRel(embed); }, @@ -330,4 +331,4 @@ var same = function same(keys, fx) { }, {}); }; module.exports = exports['default']; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL2RyYXdtbC9pbmRleC5qcyJdLCJuYW1lcyI6WyJfX2ZpbHRlciIsImlkIiwidW5kZWZpbmVkIiwic2FtZSIsInNwbGl0IiwiYXR0cmlicyIsInR5cGVmYWNlIiwib2QiLCJ0aGVtZSIsImZvbnQiLCJ2YWwiLCJwYXJzZUludCIsInRpZHlfc2NoZW1lQ2xyIiwiZWZmZWN0IiwiZG9jIiwiYXNDb2xvciIsImNvbG9yIiwidGlkeV9zcmdiQ2xyIiwidGlkeV9wcnN0Q2xyIiwic3lzQ2xyIiwidGlkeV9zb2xpZEZpbGwiLCJyb3QiLCJ2IiwiYmxpcCIsIm4iLCJlbWJlZCIsInVybCIsInBhcnQiLCIkIiwiUGFydCIsImdldFJlbCIsInByc3RHZW9tIiwieCIsInByc3QiLCJwYXRoTHN0IiwiY2hpbGRyZW4iLCJweCIsImVtdTJQeCIsImZpbHRlciIsImEiLCJuYW1lIiwicmVkdWNlIiwiZCIsInBhdGgiLCJmb3JFYWNoIiwicG9wIiwicHVzaCIsInkiLCJqb2luIiwidGlkeV9jdXN0R2VvbSIsImx2bCIsInNwY1B0cyIsInB0MlB4IiwidGlkeV9zcGNBZnQiLCJ0aWR5X3NwY0JlZiIsImJ1Rm9udCIsImJ1Q2hhciIsImNoYXIiLCJidVN6UHRzIiwiYnVTelBjdCIsImJ1QXV0b051bSIsInRpZHlfYnVDbHIiLCJpbmRlbnQiLCJtYXJMIiwibWFyUiIsIm1hclQiLCJtYXJCIiwibElucyIsInJJbnMiLCJiSW5zIiwidElucyIsImRpc3RMIiwiZGlzdFIiLCJkaXN0VCIsImRpc3RCIiwiZXh0IiwiY3giLCJjeSIsIndpZHRoIiwiaGVpZ2h0IiwiZXh0ZW50IiwiZWZmZWN0RXh0ZW50IiwibCIsInQiLCJyIiwiYiIsImxlZnQiLCJyaWdodCIsInRvcCIsImJvdHRvbSIsIm9mZiIsInRpZHlfeGZybSIsInRyYW5zZm9ybSIsIm1hcCIsInciLCJwcm9wcyIsImxuIiwidGlkeV90Y1R4U3R5bGUiLCJzb2xpZEZpbGwiLCJ0aWR5X2xuUmVmIiwiaWR4IiwicGgiLCJsblJlZiIsInRpZHlfZmlsbFJlZiIsImZpbGxSZWYiLCJ0aWR5X2VmZmVjdFJlZiIsImVmZmVjdFJlZiIsInRpZHlfZm9udFJlZiIsImZvbnRSZWYiLCJ0aWR5X25vQXV0b0ZpdCIsInRpZHlfbm9ybUF1dG9GaXQiLCJ0eXBlIiwidGlkeV9zcEF1dG9GaXQiLCJuYW1lcyIsInNjaGVtZUNsciIsInNyZ2JDbHIiLCJwcnN0Q2xyIiwiY3VzdEdlb20iLCJsbkIiLCJsblIiLCJsbkwiLCJsblQiLCJzcEF1dG9GaXQiLCJub3JtQXV0b0ZpdCIsIm5vQXV0b0ZpdCIsImdzTHN0IiwiaW5oZXJpdCIsImFkZGl0aW9ucyIsIl9maWx0ZXIiLCJfbmFtZXMiLCJfb3RoZXJzIiwib3RoZXJzIiwia2V5cyIsImZ4IiwiZnMiLCJrIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBOzs7Ozs7OztrQkFFZTtBQUFBO0FBQ1hBLGtCQUFTLGtCQURFO0FBRVhDLFlBQUc7QUFBQSxtQkFBSUMsU0FBSjtBQUFBO0FBRlEsT0FHUkMsS0FBSyxjQUFjQyxLQUFkLENBQW9CLEdBQXBCLENBQUwsRUFBOEI7QUFBQSx5Q0FBRUMsT0FBRixDQUFXQyxRQUFYO0FBQUEsWUFBV0EsUUFBWCx5Q0FBb0IsRUFBcEI7QUFBQSxlQUEyQkMsR0FBR0MsS0FBSCxDQUFTQyxJQUFULENBQWNILFFBQWQsQ0FBM0I7QUFBQSxLQUE5QixDQUhRLEVBS1JILEtBQUssMkJBQTJCQyxLQUEzQixDQUFpQyxHQUFqQyxDQUFMLEVBQTJDO0FBQUEsWUFBV00sR0FBWCxTQUFFTCxPQUFGLENBQVdLLEdBQVg7QUFBQSxlQUFtQkMsU0FBU0QsR0FBVCxJQUFjLE1BQWpDO0FBQUEsS0FBM0MsQ0FMUTtBQU1YRSx3QkFBZTtBQUFBLGdCQUFFRixHQUFGLFNBQUVBLEdBQUY7QUFBQSxnQkFBU0csTUFBVDs7QUFBQSxtQkFBbUJOLEdBQUdPLEdBQUgsQ0FBT0MsT0FBUCxDQUFlUixHQUFHQyxLQUFILENBQVNRLEtBQVQsQ0FBZU4sR0FB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QUFVO0FBQUE7O0FBQ2pCLG1CQUFPQSxVQUFVdEYsTUFBVixDQUFpQiwwQkFBd0Y7QUFBQSw2Q0FBbkR6QyxRQUFtRDtBQUFBLG9CQUExQ2dJLE9BQTBDLG1DQUFsQyxFQUFrQztBQUFBLDBDQUEvQmYsS0FBK0I7QUFBQSxvQkFBekJnQixNQUF5QixnQ0FBbEIsRUFBa0I7QUFBQSxvQkFBWEMsT0FBVzs7QUFBQSw2Q0FBdEZsSSxRQUFzRjtBQUFBLG9CQUF0RkEsUUFBc0YsbUNBQTdFLEVBQTZFO0FBQUEsMENBQTFFaUgsS0FBMEU7QUFBQSxvQkFBMUVBLEtBQTBFLGdDQUFwRSxFQUFvRTtBQUFBLG9CQUE3RGtCLE1BQTZEOztBQUM1RyxvQ0FDT0EsTUFEUCxFQUVPRCxPQUZQO0FBR0lsSSw4QkFBUyxDQUFDQSxRQUFELEVBQVVnSSxPQUFWLEVBQW1CMUYsTUFBbkIsQ0FBMEI7QUFBQSwrQkFBRyxDQUFDLENBQUNDLENBQUw7QUFBQSxxQkFBMUIsRUFBa0NTLElBQWxDLENBQXVDLEdBQXZDLENBSGI7QUFJSWlFLHdDQUFVQSxLQUFWLEVBQW9CZ0IsTUFBcEI7QUFKSjtBQU1ILGFBUE0sRUFPTCxJQVBLLENBQVA7QUFRSDtBQXpIVTtBQUFBLEM7O0FBNEhmLElBQU05SCxPQUFLLFNBQUxBLElBQUssQ0FBQ2lJLElBQUQsRUFBTUMsRUFBTjtBQUFBLFdBQVdELEtBQUszRixNQUFMLENBQVksVUFBQzZGLEVBQUQsRUFBS0MsQ0FBTDtBQUFBLGVBQVVELEdBQUdDLENBQUgsSUFBTUYsRUFBTixFQUFVQyxFQUFwQjtBQUFBLEtBQVosRUFBb0MsRUFBcEMsQ0FBWDtBQUFBLENBQVgiLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUGFydCBmcm9tIFwiLi4vcGFydFwiXG5cbmV4cG9ydCBkZWZhdWx0IG9kPT4oe1xuICAgIF9fZmlsdGVyOlwiOm5vdChhXFxcXDpleHRMc3QpXCIsXG4gICAgaWQ6KCk9PnVuZGVmaW5lZCxcbiAgICAuLi5zYW1lKFwibGF0aW4sZWEsY3NcIi5zcGxpdChcIixcIiksKHthdHRyaWJzOnt0eXBlZmFjZT1cIlwifX0pPT5vZC50aGVtZS5mb250KHR5cGVmYWNlKSksXG4gICAgLy9zejp2PT5vZC5kb2MucHQyUHgocGFyc2VJbnQodikvMTAwKSxcbiAgICAuLi5zYW1lKFwibHVtTW9kLGx1bU9mZix0aW50LHNoYWRlXCIuc3BsaXQoXCIsXCIpLCh7YXR0cmliczp7dmFsfX0pPT5wYXJzZUludCh2YWwpLzEwMDAwMCksXG4gICAgdGlkeV9zY2hlbWVDbHI6KHt2YWwsLi4uZWZmZWN0fSk9Pm9kLmRvYy5hc0NvbG9yKG9kLnRoZW1lLmNvbG9yKHZhbCksZWZmZWN0KSxcbiAgICB0aWR5X3NyZ2JDbHI6KHt2YWwsLi4uZWZmZWN0fSk9Pm9kLmRvYy5hc0NvbG9yKHZhbCxlZmZlY3QpLFxuICAgIHRpZHlfcHJzdENscjooe3ZhbCwuLi5lZmZlY3R9KT0+b2QuZG9jLmFzQ29sb3IodmFsLGVmZmVjdCksXG4gICAgc3lzQ2xyOih7YXR0cmliczp7dmFsfX0pPT52YWwsXG4gICAgdGlkeV9zb2xpZEZpbGw6KHtjb2xvcn0pPT5jb2xvcixcbiAgICByb3Q6dj0+cGFyc2VJbnQodikvNjAwMDAsXG5cbiAgICBibGlwOm49PntcbiAgICAgICAgY29uc3Qge2F0dHJpYnM6e1wicjplbWJlZFwiOmVtYmVkLCBcInI6bGlua1wiOnVybH19PW5cbiAgICAgICAgaWYodXJsKVxuICAgICAgICAgICAgcmV0dXJuIHt1cmx9XG4gICAgICAgIGNvbnN0IHBhcnQ9b2QuJChuKS5wYXJ0KClcbiAgICAgICAgcmV0dXJuIG5ldyBQYXJ0KHBhcnQsb2QuZG9jKS5nZXRSZWwoZW1iZWQpXG4gICAgfSxcblxuICAgIHByc3RHZW9tKHgpe1xuXHRcdHJldHVybiB4LmF0dHJpYnMucHJzdFxuXHR9LFxuXHRwYXRoTHN0KHtjaGlsZHJlbn0pe1xuXHRcdGNvbnN0IHB4PXg9Pm9kLmRvYy5lbXUyUHgoeClcbiAgICAgICAgcmV0dXJuIGNoaWxkcmVuLmZpbHRlcihhPT5hLm5hbWU9PVwiYTpwYXRoXCIpXG4gICAgICAgICAgICAucmVkdWNlKChkLHBhdGgpPT57XG4gICAgICAgICAgICAgICAgcGF0aC5jaGlsZHJlbi5maWx0ZXIoYT0+YS5uYW1lKVxuICAgICAgICAgICAgICAgICAgICAuZm9yRWFjaChhPT57XG4gICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2goYS5uYW1lLnNwbGl0KFwiOlwiKS5wb3AoKSl7XG4gICAgICAgICAgICBcdFx0XHRjYXNlICdtb3ZlVG8nOlxuICAgICAgICAgICAgXHRcdFx0XHRkLnB1c2goJ00gJytweChhLmNoaWxkcmVuWzBdLmF0dHJpYnMueCkrJyAnK3B4KGEuY2hpbGRyZW5bMF0uYXR0cmlicy55KSlcbiAgICAgICAgICAgIFx0XHRcdFx0YnJlYWtcbiAgICAgICAgICAgIFx0XHRcdGNhc2UgJ2xuVG8nOlxuICAgICAgICAgICAgXHRcdFx0XHRkLnB1c2goJ0wgJytweChhLmNoaWxkcmVuWzBdLmF0dHJpYnMueCkrJyAnK3B4KGEuY2hpbGRyZW5bMF0uYXR0cmlicy55KSlcbiAgICAgICAgICAgIFx0XHRcdFx0YnJlYWtcbiAgICAgICAgICAgIFx0XHRcdGJyZWFrXG4gICAgICAgICAgICBcdFx0XHRjYXNlICdjdWJpY0JlelRvJzpcbiAgICAgICAgICAgIFx0XHRcdFx0ZC5wdXNoKCdMICcrcHgoYS5jaGlsZHJlblswXS5hdHRyaWJzLngpKycgJytweChhLmNoaWxkcmVuWzBdLmF0dHJpYnMueSkpXG4gICAgICAgICAgICBcdFx0XHRcdGQucHVzaCgnUSAnK3B4KGEuY2hpbGRyZW5bMV0uYXR0cmlicy54KSsnICcrcHgoYS5jaGlsZHJlblsxXS5hdHRyaWJzLnkpXG4gICAgICAgICAgICBcdFx0XHRcdFx0KycgJytweChhLmNoaWxkcmVuWzJdLmF0dHJpYnMueCkrJyAnK3B4KGEuY2hpbGRyZW5bMl0uYXR0cmlicy55KSlcbiAgICAgICAgICAgIFx0XHRcdGJyZWFrXG4gICAgICAgICAgICBcdFx0XHRjYXNlICdhcmNUbyc6XG4gICAgICAgICAgICBcdFx0XHRcdGQucHVzaChgQWApXG4gICAgICAgICAgICBcdFx0XHRicmVha1xuICAgICAgICAgICAgXHRcdFx0Y2FzZSAnY2xvc2UnOlxuICAgICAgICAgICAgXHRcdFx0XHRkLnB1c2goJ1onKVxuICAgICAgICAgICAgXHRcdFx0YnJlYWtcbiAgICAgICAgICAgIFx0XHRcdH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICByZXR1cm4gZFxuICAgICAgICAgICAgfSxbXSkuam9pbihcIiBcIilcblx0fSxcbiAgICB0aWR5X2N1c3RHZW9tOih7cGF0aExzdH0pPT5wYXRoTHN0LFxuXG4gICAgbHZsOnY9PnBhcnNlSW50KHYpLFxuICAgIHNwY1B0czooe2F0dHJpYnM6e3ZhbH19KT0+b2QuZG9jLnB0MlB4KHBhcnNlSW50KHZhbCkvMTAwKSxcbiAgICB0aWR5X3NwY0FmdDooe3NwY1B0czphfSk9PmEsXG4gICAgdGlkeV9zcGNCZWY6KHtzcGNQdHM6YX0pPT5hLFxuXG4gICAgYnVGb250Oih7YXR0cmliczp7dHlwZWZhY2V9fSk9Pm9kLnRoZW1lLmZvbnQodHlwZWZhY2UpLFxuICAgIGJ1Q2hhcjooe2F0dHJpYnM6e2NoYXJ9fSk9PmNoYXIsXG4gICAgYnVTelB0czooe2F0dHJpYnM6e3ZhbH19KT0+b2QuZG9jLnB0MlB4KHBhcnNlSW50KHZhbCkvMTAwKSxcbiAgICBidVN6UGN0Oih7YXR0cmliczp7dmFsfX0pPT5wYXJzZUludCh2YWwpLzEwMDAvMTAwLFxuICAgIGJ1QXV0b051bTooe2F0dHJpYnN9KT0+KHsuLi5hdHRyaWJzfSksXG4gICAgdGlkeV9idUNscjooe2NvbG9yfSk9PmNvbG9yLFxuXG4gICAgaW5kZW50OnY9Pm9kLmRvYy5lbXUyUHgodiksXG4gICAgbWFyTDp2PT5vZC5kb2MuZW11MlB4KHYpLFxuICAgIG1hclI6dj0+b2QuZG9jLmVtdTJQeCh2KSxcbiAgICBtYXJUOnY9Pm9kLmRvYy5lbXUyUHgodiksXG4gICAgbWFyQjp2PT5vZC5kb2MuZW11MlB4KHYpLFxuICAgIFxuICAgIGxJbnM6dj0+b2QuZG9jLmVtdTJQeCh2KSxcbiAgICBySW5zOnY9Pm9kLmRvYy5lbXUyUHgodiksXG4gICAgYkluczp2PT5vZC5kb2MuZW11MlB4KHYpLFxuICAgIHRJbnM6dj0+b2QuZG9jLmVtdTJQeCh2KSxcblxuICAgIGRpc3RMOnY9Pm9kLmRvYy5lbXUyUHgodiksXG4gICAgZGlzdFI6dj0+b2QuZG9jLmVtdTJQeCh2KSxcbiAgICBkaXN0VDp2PT5vZC5kb2MuZW11MlB4KHYpLFxuICAgIGRpc3RCOnY9Pm9kLmRvYy5lbXUyUHgodiksXG5cbiAgICBleHQ6KHthdHRyaWJzOntjeCxjeX19KT0+KHt3aWR0aDpvZC5kb2MuZW11MlB4KGN4KSxoZWlnaHQ6b2QuZG9jLmVtdTJQeChjeSl9KSxcbiAgICBleHRlbnQ6KHthdHRyaWJzOntjeCxjeX19KT0+KHt3aWR0aDpvZC5kb2MuZW11MlB4KGN4KSxoZWlnaHQ6b2QuZG9jLmVtdTJQeChjeSl9KSxcbiAgICBlZmZlY3RFeHRlbnQ6KHthdHRyaWJzOntsLHQscixifX0pPT4oe2xlZnQ6b2QuZG9jLmVtdTJQeChsKSxyaWdodDpvZC5kb2MuZW11MlB4KHIpLHRvcDpvZC5kb2MuZW11MlB4KHQpLGJvdHRvbTpvZC5kb2MuZW11MlB4KGIpfSksXG4gICAgb2ZmOih7YXR0cmliczp7eCx5fX0pPT4oe3g6b2QuZG9jLmVtdTJQeCh4KSx5Om9kLmRvYy5lbXUyUHgoeSl9KSxcbiAgICB0aWR5X3hmcm06KHtleHQ9e30sb2ZmPXt9LCAuLi50cmFuc2Zvcm19KT0+KHsuLi5leHQsIC4uLm9mZiwgLi4udHJhbnNmb3JtfSksXG5cbiAgICAuLi5zYW1lKFwibG4sbG5CLGxuUixsbkwsbG5ULGxuVGxUb0JyLGxuQmxUb1RyXCIuc3BsaXQoXCIsXCIpLm1hcChhPT4ndGlkeV8nK2EpLCh7dywuLi5wcm9wc30pPT4oey4uLnByb3BzLCB3OncgPyBvZC5kb2MuZW11MlB4KHcpIDogdW5kZWZpbmVkfSkpLFxuICAgIC4uLnNhbWUoXCJsZWZ0LHJpZ2h0LHRvcCxib3R0b21cIi5zcGxpdChcIixcIikubWFwKGE9Pid0aWR5XycrYSksKHtsbn0pPT5sbiksXG4gICAgdGlkeV90Y1R4U3R5bGU6KHtjb2xvciwuLi5wcm9wc30pPT4oey4uLnByb3BzLCBzb2xpZEZpbGw6Y29sb3J9KSxcblxuICAgIHRpZHlfbG5SZWY6KHtpZHgsLi4ucGh9KT0+b2QudGhlbWUubG5SZWYoaWR4LHBoKSxcbiAgICB0aWR5X2ZpbGxSZWY6KHtpZHgsLi4ucGh9KT0+b2QudGhlbWUuZmlsbFJlZihpZHgscGgpLFxuICAgIHRpZHlfZWZmZWN0UmVmOih7aWR4LC4uLnBofSk9Pm9kLnRoZW1lLmVmZmVjdFJlZihpZHgscGgpLFxuICAgIHRpZHlfZm9udFJlZjooe2lkeCwuLi5waH0pPT5vZC50aGVtZS5mb250UmVmKGlkeCxwaCksXG5cbiAgICB0aWR5X25vQXV0b0ZpdDooKT0+dW5kZWZpbmVkLFxuICAgIHRpZHlfbm9ybUF1dG9GaXQ6cHJvcHM9Pih7dHlwZTpcImZvbnRcIiwuLi5wcm9wc30pLFxuICAgIHRpZHlfc3BBdXRvRml0OnByb3BzPT4oe3R5cGU6XCJibG9ja1wiLC4uLnByb3BzfSksXG5cbiAgICBuYW1lczp7XG4gICAgICAgIHNjaGVtZUNscjpcImNvbG9yXCIsIHNyZ2JDbHI6XCJjb2xvclwiLCBzeXNDbHI6XCJjb2xvclwiLHByc3RDbHI6XCJjb2xvclwiLFxuICAgICAgICBwcnN0R2VvbTpcImdlb21ldHJ5XCIsIGN1c3RHZW9tOlwiZ2VvbWV0cnlcIixcbiAgICAgICAgbG5COlwiYm90dG9tXCIsIGxuUjpcInJpZ2h0XCIsIGxuTDpcImxlZnRcIiwgbG5UOlwidG9wXCIsXG4gICAgICAgIHJvdDpcInJvdGF0ZVwiLFxuICAgICAgICBzcEF1dG9GaXQ6XCJhdXRvZml0XCIsbm9ybUF1dG9GaXQ6XCJhdXRvZml0XCIsbm9BdXRvRml0OlwiYXV0b2ZpdFwiLFxuICAgICAgICBnc0xzdDpcIltdXCJcbiAgICB9LFxuXG4gICAgaW5oZXJpdCguLi5hZGRpdGlvbnMpe1xuICAgICAgICByZXR1cm4gYWRkaXRpb25zLnJlZHVjZSgoe19fZmlsdGVyPVwiXCIsbmFtZXM9e30sIC4uLm90aGVyc30sIHtfX2ZpbHRlcjpfZmlsdGVyPVwiXCIsbmFtZXM6X25hbWVzPXt9LCAuLi5fb3RoZXJzfSk9PntcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4ub3RoZXJzLFxuICAgICAgICAgICAgICAgIC4uLl9vdGhlcnMsXG4gICAgICAgICAgICAgICAgX19maWx0ZXI6W19fZmlsdGVyLF9maWx0ZXJdLmZpbHRlcihhPT4hIWEpLmpvaW4oXCIsXCIpLFxuICAgICAgICAgICAgICAgIG5hbWVzOnsuLi5uYW1lcywgLi4uX25hbWVzfSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSx0aGlzKVxuICAgIH1cbn0pXG5cbmNvbnN0IHNhbWU9KGtleXMsZngpPT5rZXlzLnJlZHVjZSgoZnMsIGspPT4oZnNba109ZngsIGZzKSx7fSlcbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL2RyYXdtbC9pbmRleC5qcyJdLCJuYW1lcyI6WyJfX2ZpbHRlciIsImlkIiwidW5kZWZpbmVkIiwic2FtZSIsInNwbGl0IiwiYXR0cmlicyIsInR5cGVmYWNlIiwib2QiLCJ0aGVtZSIsImZvbnQiLCJ2YWwiLCJwYXJzZUludCIsInRpZHlfc2NoZW1lQ2xyIiwiZWZmZWN0IiwiZG9jIiwiYXNDb2xvciIsImNvbG9yIiwidGlkeV9zcmdiQ2xyIiwidGlkeV9wcnN0Q2xyIiwic3lzQ2xyIiwidGlkeV9zb2xpZEZpbGwiLCJyb3QiLCJ2IiwiYmxpcCIsIm4iLCJlbWJlZCIsInVybCIsInBhcnQiLCIkIiwiZ2V0UmVsIiwicHJzdEdlb20iLCJ4IiwicHJzdCIsInBhdGhMc3QiLCJjaGlsZHJlbiIsInB4IiwiZW11MlB4IiwiZmlsdGVyIiwiYSIsIm5hbWUiLCJyZWR1Y2UiLCJkIiwicGF0aCIsImZvckVhY2giLCJwb3AiLCJwdXNoIiwieSIsImpvaW4iLCJ0aWR5X2N1c3RHZW9tIiwibHZsIiwic3BjUHRzIiwicHQyUHgiLCJ0aWR5X3NwY0FmdCIsInRpZHlfc3BjQmVmIiwiYnVGb250IiwiYnVDaGFyIiwiY2hhciIsImJ1U3pQdHMiLCJidVN6UGN0IiwiYnVBdXRvTnVtIiwidGlkeV9idUNsciIsImluZGVudCIsIm1hckwiLCJtYXJSIiwibWFyVCIsIm1hckIiLCJsSW5zIiwicklucyIsImJJbnMiLCJ0SW5zIiwiZGlzdEwiLCJkaXN0UiIsImRpc3RUIiwiZGlzdEIiLCJleHQiLCJjeCIsImN5Iiwid2lkdGgiLCJoZWlnaHQiLCJleHRlbnQiLCJlZmZlY3RFeHRlbnQiLCJsIiwidCIsInIiLCJiIiwibGVmdCIsInJpZ2h0IiwidG9wIiwiYm90dG9tIiwib2ZmIiwidGlkeV94ZnJtIiwidHJhbnNmb3JtIiwibWFwIiwidyIsInByb3BzIiwibG4iLCJ0aWR5X3RjVHhTdHlsZSIsInNvbGlkRmlsbCIsInRpZHlfbG5SZWYiLCJpZHgiLCJwaCIsImxuUmVmIiwidGlkeV9maWxsUmVmIiwiZmlsbFJlZiIsInRpZHlfZWZmZWN0UmVmIiwiZWZmZWN0UmVmIiwidGlkeV9mb250UmVmIiwiZm9udFJlZiIsInRpZHlfbm9BdXRvRml0IiwidGlkeV9ub3JtQXV0b0ZpdCIsInR5cGUiLCJ0aWR5X3NwQXV0b0ZpdCIsIm5hbWVzIiwic2NoZW1lQ2xyIiwic3JnYkNsciIsInByc3RDbHIiLCJjdXN0R2VvbSIsImxuQiIsImxuUiIsImxuTCIsImxuVCIsInNwQXV0b0ZpdCIsIm5vcm1BdXRvRml0Iiwibm9BdXRvRml0IiwiZ3NMc3QiLCJpbmhlcml0IiwiYWRkaXRpb25zIiwiX2ZpbHRlciIsIl9uYW1lcyIsIl9vdGhlcnMiLCJvdGhlcnMiLCJrZXlzIiwiZngiLCJmcyIsImsiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7Ozs7Ozs7O2tCQUVlO0FBQUE7QUFDWEEsa0JBQVMsa0JBREU7QUFFWEMsWUFBRztBQUFBLG1CQUFJQyxTQUFKO0FBQUE7QUFGUSxPQUdSQyxLQUFLLGNBQWNDLEtBQWQsQ0FBb0IsR0FBcEIsQ0FBTCxFQUE4QjtBQUFBLHlDQUFFQyxPQUFGLENBQVdDLFFBQVg7QUFBQSxZQUFXQSxRQUFYLHlDQUFvQixFQUFwQjtBQUFBLGVBQTJCQyxHQUFHQyxLQUFILENBQVNDLElBQVQsQ0FBY0gsUUFBZCxDQUEzQjtBQUFBLEtBQTlCLENBSFEsRUFLUkgsS0FBSywyQkFBMkJDLEtBQTNCLENBQWlDLEdBQWpDLENBQUwsRUFBMkM7QUFBQSxZQUFXTSxHQUFYLFNBQUVMLE9BQUYsQ0FBV0ssR0FBWDtBQUFBLGVBQW1CQyxTQUFTRCxHQUFULElBQWMsTUFBakM7QUFBQSxLQUEzQyxDQUxRO0FBTVhFLHdCQUFlO0FBQUEsZ0JBQUVGLEdBQUYsU0FBRUEsR0FBRjtBQUFBLGdCQUFTRyxNQUFUOztBQUFBLG1CQUFtQk4sR0FBR08sR0FBSCxDQUFPQyxPQUFQLENBQWVSLEdBQUdDLEtBQUgsQ0FBU1EsS0FBVCxDQUFlTixHQUFmLENBQWYs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O0FBQVZBLHlCQUFVO0FBQUE7O0FBQ2pCLG1CQUFPQSxVQUFVdEYsTUFBVixDQUFpQiwwQkFBd0Y7QUFBQSw2Q0FBbkR4QyxRQUFtRDtBQUFBLG9CQUExQytILE9BQTBDLG1DQUFsQyxFQUFrQztBQUFBLDBDQUEvQmYsS0FBK0I7QUFBQSxvQkFBekJnQixNQUF5QixnQ0FBbEIsRUFBa0I7QUFBQSxvQkFBWEMsT0FBVzs7QUFBQSw2Q0FBdEZqSSxRQUFzRjtBQUFBLG9CQUF0RkEsUUFBc0YsbUNBQTdFLEVBQTZFO0FBQUEsMENBQTFFZ0gsS0FBMEU7QUFBQSxvQkFBMUVBLEtBQTBFLGdDQUFwRSxFQUFvRTtBQUFBLG9CQUE3RGtCLE1BQTZEOztBQUM1RyxvQ0FDT0EsTUFEUCxFQUVPRCxPQUZQO0FBR0lqSSw4QkFBUyxDQUFDQSxRQUFELEVBQVUrSCxPQUFWLEVBQW1CMUYsTUFBbkIsQ0FBMEI7QUFBQSwrQkFBRyxDQUFDLENBQUNDLENBQUw7QUFBQSxxQkFBMUIsRUFBa0NTLElBQWxDLENBQXVDLEdBQXZDLENBSGI7QUFJSWlFLHdDQUFVQSxLQUFWLEVBQW9CZ0IsTUFBcEI7QUFKSjtBQU1ILGFBUE0sRUFPTCxJQVBLLENBQVA7QUFRSDtBQTNIVTtBQUFBLEM7O0FBOEhmLElBQU03SCxPQUFLLFNBQUxBLElBQUssQ0FBQ2dJLElBQUQsRUFBTUMsRUFBTjtBQUFBLFdBQVdELEtBQUszRixNQUFMLENBQVksVUFBQzZGLEVBQUQsRUFBS0MsQ0FBTDtBQUFBLGVBQVVELEdBQUdDLENBQUgsSUFBTUYsRUFBTixFQUFVQyxFQUFwQjtBQUFBLEtBQVosRUFBb0MsRUFBcEMsQ0FBWDtBQUFBLENBQVgiLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUGFydCBmcm9tIFwiLi4vcGFydFwiXG5cbmV4cG9ydCBkZWZhdWx0IG9kPT4oe1xuICAgIF9fZmlsdGVyOlwiOm5vdChhXFxcXDpleHRMc3QpXCIsXG4gICAgaWQ6KCk9PnVuZGVmaW5lZCxcbiAgICAuLi5zYW1lKFwibGF0aW4sZWEsY3NcIi5zcGxpdChcIixcIiksKHthdHRyaWJzOnt0eXBlZmFjZT1cIlwifX0pPT5vZC50aGVtZS5mb250KHR5cGVmYWNlKSksXG4gICAgLy9zejp2PT5vZC5kb2MucHQyUHgocGFyc2VJbnQodikvMTAwKSxcbiAgICAuLi5zYW1lKFwibHVtTW9kLGx1bU9mZix0aW50LHNoYWRlXCIuc3BsaXQoXCIsXCIpLCh7YXR0cmliczp7dmFsfX0pPT5wYXJzZUludCh2YWwpLzEwMDAwMCksXG4gICAgdGlkeV9zY2hlbWVDbHI6KHt2YWwsLi4uZWZmZWN0fSk9Pm9kLmRvYy5hc0NvbG9yKG9kLnRoZW1lLmNvbG9yKHZhbCksZWZmZWN0KSxcbiAgICB0aWR5X3NyZ2JDbHI6KHt2YWwsLi4uZWZmZWN0fSk9Pm9kLmRvYy5hc0NvbG9yKHZhbCxlZmZlY3QpLFxuICAgIHRpZHlfcHJzdENscjooe3ZhbCwuLi5lZmZlY3R9KT0+b2QuZG9jLmFzQ29sb3IodmFsLGVmZmVjdCksXG4gICAgc3lzQ2xyOih7YXR0cmliczp7dmFsfX0pPT52YWwsXG4gICAgdGlkeV9zb2xpZEZpbGw6KHtjb2xvcn0pPT5jb2xvcixcbiAgICByb3Q6dj0+cGFyc2VJbnQodikvNjAwMDAsXG5cbiAgICBibGlwOm49PntcbiAgICAgICAgY29uc3Qge2F0dHJpYnM6e1wicjplbWJlZFwiOmVtYmVkLCBcInI6bGlua1wiOnVybH19PW5cbiAgICAgICAgaWYodXJsKVxuICAgICAgICAgICAgcmV0dXJuIHt1cmx9XG4gICAgICAgIGlmKCFlbWJlZClcbiAgICAgICAgICAgIHJldHVybiBcbiAgICAgICAgY29uc3QgcGFydD1vZC4kKG4pLnBhcnQoKVxuICAgICAgICByZXR1cm4gbmV3IFBhcnQocGFydCxvZC5kb2MpLmdldFJlbChlbWJlZClcbiAgICB9LFxuXG4gICAgcHJzdEdlb20oeCl7XG5cdFx0cmV0dXJuIHguYXR0cmlicy5wcnN0XG5cdH0sXG5cdHBhdGhMc3Qoe2NoaWxkcmVufSl7XG5cdFx0Y29uc3QgcHg9eD0+b2QuZG9jLmVtdTJQeCh4KVxuICAgICAgICByZXR1cm4gY2hpbGRyZW4uZmlsdGVyKGE9PmEubmFtZT09XCJhOnBhdGhcIilcbiAgICAgICAgICAgIC5yZWR1Y2UoKGQscGF0aCk9PntcbiAgICAgICAgICAgICAgICBwYXRoLmNoaWxkcmVuLmZpbHRlcihhPT5hLm5hbWUpXG4gICAgICAgICAgICAgICAgICAgIC5mb3JFYWNoKGE9PntcbiAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaChhLm5hbWUuc3BsaXQoXCI6XCIpLnBvcCgpKXtcbiAgICAgICAgICAgIFx0XHRcdGNhc2UgJ21vdmVUbyc6XG4gICAgICAgICAgICBcdFx0XHRcdGQucHVzaCgnTSAnK3B4KGEuY2hpbGRyZW5bMF0uYXR0cmlicy54KSsnICcrcHgoYS5jaGlsZHJlblswXS5hdHRyaWJzLnkpKVxuICAgICAgICAgICAgXHRcdFx0XHRicmVha1xuICAgICAgICAgICAgXHRcdFx0Y2FzZSAnbG5Ubyc6XG4gICAgICAgICAgICBcdFx0XHRcdGQucHVzaCgnTCAnK3B4KGEuY2hpbGRyZW5bMF0uYXR0cmlicy54KSsnICcrcHgoYS5jaGlsZHJlblswXS5hdHRyaWJzLnkpKVxuICAgICAgICAgICAgXHRcdFx0XHRicmVha1xuICAgICAgICAgICAgXHRcdFx0YnJlYWtcbiAgICAgICAgICAgIFx0XHRcdGNhc2UgJ2N1YmljQmV6VG8nOlxuICAgICAgICAgICAgXHRcdFx0XHRkLnB1c2goJ0wgJytweChhLmNoaWxkcmVuWzBdLmF0dHJpYnMueCkrJyAnK3B4KGEuY2hpbGRyZW5bMF0uYXR0cmlicy55KSlcbiAgICAgICAgICAgIFx0XHRcdFx0ZC5wdXNoKCdRICcrcHgoYS5jaGlsZHJlblsxXS5hdHRyaWJzLngpKycgJytweChhLmNoaWxkcmVuWzFdLmF0dHJpYnMueSlcbiAgICAgICAgICAgIFx0XHRcdFx0XHQrJyAnK3B4KGEuY2hpbGRyZW5bMl0uYXR0cmlicy54KSsnICcrcHgoYS5jaGlsZHJlblsyXS5hdHRyaWJzLnkpKVxuICAgICAgICAgICAgXHRcdFx0YnJlYWtcbiAgICAgICAgICAgIFx0XHRcdGNhc2UgJ2FyY1RvJzpcbiAgICAgICAgICAgIFx0XHRcdFx0ZC5wdXNoKGBBYClcbiAgICAgICAgICAgIFx0XHRcdGJyZWFrXG4gICAgICAgICAgICBcdFx0XHRjYXNlICdjbG9zZSc6XG4gICAgICAgICAgICBcdFx0XHRcdGQucHVzaCgnWicpXG4gICAgICAgICAgICBcdFx0XHRicmVha1xuICAgICAgICAgICAgXHRcdFx0fVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIHJldHVybiBkXG4gICAgICAgICAgICB9LFtdKS5qb2luKFwiIFwiKVxuXHR9LFxuICAgIHRpZHlfY3VzdEdlb206KHtwYXRoTHN0fSk9PnBhdGhMc3QsXG5cbiAgICBsdmw6dj0+cGFyc2VJbnQodiksXG4gICAgc3BjUHRzOih7YXR0cmliczp7dmFsfX0pPT5vZC5kb2MucHQyUHgocGFyc2VJbnQodmFsKS8xMDApLFxuICAgIHRpZHlfc3BjQWZ0Oih7c3BjUHRzOmF9KT0+YSxcbiAgICB0aWR5X3NwY0JlZjooe3NwY1B0czphfSk9PmEsXG5cbiAgICBidUZvbnQ6KHthdHRyaWJzOnt0eXBlZmFjZX19KT0+b2QudGhlbWUuZm9udCh0eXBlZmFjZSksXG4gICAgYnVDaGFyOih7YXR0cmliczp7Y2hhcn19KT0+Y2hhcixcbiAgICBidVN6UHRzOih7YXR0cmliczp7dmFsfX0pPT5vZC5kb2MucHQyUHgocGFyc2VJbnQodmFsKS8xMDApLFxuICAgIGJ1U3pQY3Q6KHthdHRyaWJzOnt2YWx9fSk9PnBhcnNlSW50KHZhbCkvMTAwMC8xMDAsXG4gICAgYnVBdXRvTnVtOih7YXR0cmlic30pPT4oey4uLmF0dHJpYnN9KSxcbiAgICB0aWR5X2J1Q2xyOih7Y29sb3J9KT0+Y29sb3IsXG5cbiAgICBpbmRlbnQ6dj0+b2QuZG9jLmVtdTJQeCh2KSxcbiAgICBtYXJMOnY9Pm9kLmRvYy5lbXUyUHgodiksXG4gICAgbWFyUjp2PT5vZC5kb2MuZW11MlB4KHYpLFxuICAgIG1hclQ6dj0+b2QuZG9jLmVtdTJQeCh2KSxcbiAgICBtYXJCOnY9Pm9kLmRvYy5lbXUyUHgodiksXG4gICAgXG4gICAgbEluczp2PT5vZC5kb2MuZW11MlB4KHYpLFxuICAgIHJJbnM6dj0+b2QuZG9jLmVtdTJQeCh2KSxcbiAgICBiSW5zOnY9Pm9kLmRvYy5lbXUyUHgodiksXG4gICAgdEluczp2PT5vZC5kb2MuZW11MlB4KHYpLFxuXG4gICAgZGlzdEw6dj0+b2QuZG9jLmVtdTJQeCh2KSxcbiAgICBkaXN0Ujp2PT5vZC5kb2MuZW11MlB4KHYpLFxuICAgIGRpc3RUOnY9Pm9kLmRvYy5lbXUyUHgodiksXG4gICAgZGlzdEI6dj0+b2QuZG9jLmVtdTJQeCh2KSxcblxuICAgIGV4dDooe2F0dHJpYnM6e2N4LGN5fX0pPT4oe3dpZHRoOm9kLmRvYy5lbXUyUHgoY3gpLGhlaWdodDpvZC5kb2MuZW11MlB4KGN5KX0pLFxuICAgIGV4dGVudDooe2F0dHJpYnM6e2N4LGN5fX0pPT4oe3dpZHRoOm9kLmRvYy5lbXUyUHgoY3gpLGhlaWdodDpvZC5kb2MuZW11MlB4KGN5KX0pLFxuICAgIGVmZmVjdEV4dGVudDooe2F0dHJpYnM6e2wsdCxyLGJ9fSk9Pih7bGVmdDpvZC5kb2MuZW11MlB4KGwpLHJpZ2h0Om9kLmRvYy5lbXUyUHgociksdG9wOm9kLmRvYy5lbXUyUHgodCksYm90dG9tOm9kLmRvYy5lbXUyUHgoYil9KSxcbiAgICBvZmY6KHthdHRyaWJzOnt4LHl9fSk9Pih7eDpvZC5kb2MuZW11MlB4KHgpLHk6b2QuZG9jLmVtdTJQeCh5KX0pLFxuICAgIHRpZHlfeGZybTooe2V4dD17fSxvZmY9e30sIC4uLnRyYW5zZm9ybX0pPT4oey4uLmV4dCwgLi4ub2ZmLCAuLi50cmFuc2Zvcm19KSxcblxuICAgIC4uLnNhbWUoXCJsbixsbkIsbG5SLGxuTCxsblQsbG5UbFRvQnIsbG5CbFRvVHJcIi5zcGxpdChcIixcIikubWFwKGE9Pid0aWR5XycrYSksKHt3LC4uLnByb3BzfSk9Pih7Li4ucHJvcHMsIHc6dyA/IG9kLmRvYy5lbXUyUHgodykgOiB1bmRlZmluZWR9KSksXG4gICAgLi4uc2FtZShcImxlZnQscmlnaHQsdG9wLGJvdHRvbVwiLnNwbGl0KFwiLFwiKS5tYXAoYT0+J3RpZHlfJythKSwoe2xufSk9PmxuKSxcbiAgICB0aWR5X3RjVHhTdHlsZTooe2NvbG9yLC4uLnByb3BzfSk9Pih7Li4ucHJvcHMsIHNvbGlkRmlsbDpjb2xvcn0pLFxuXG4gICAgdGlkeV9sblJlZjooe2lkeCwuLi5waH0pPT5vZC50aGVtZS5sblJlZihpZHgscGgpLFxuICAgIHRpZHlfZmlsbFJlZjooe2lkeCwuLi5waH0pPT5vZC50aGVtZS5maWxsUmVmKGlkeCxwaCksXG4gICAgdGlkeV9lZmZlY3RSZWY6KHtpZHgsLi4ucGh9KT0+b2QudGhlbWUuZWZmZWN0UmVmKGlkeCxwaCksXG4gICAgdGlkeV9mb250UmVmOih7aWR4LC4uLnBofSk9Pm9kLnRoZW1lLmZvbnRSZWYoaWR4LHBoKSxcblxuICAgIHRpZHlfbm9BdXRvRml0OigpPT51bmRlZmluZWQsXG4gICAgdGlkeV9ub3JtQXV0b0ZpdDpwcm9wcz0+KHt0eXBlOlwiZm9udFwiLC4uLnByb3BzfSksXG4gICAgdGlkeV9zcEF1dG9GaXQ6cHJvcHM9Pih7dHlwZTpcImJsb2NrXCIsLi4ucHJvcHN9KSxcblxuICAgIG5hbWVzOntcbiAgICAgICAgc2NoZW1lQ2xyOlwiY29sb3JcIiwgc3JnYkNscjpcImNvbG9yXCIsIHN5c0NscjpcImNvbG9yXCIscHJzdENscjpcImNvbG9yXCIsXG4gICAgICAgIHByc3RHZW9tOlwiZ2VvbWV0cnlcIiwgY3VzdEdlb206XCJnZW9tZXRyeVwiLFxuICAgICAgICBsbkI6XCJib3R0b21cIiwgbG5SOlwicmlnaHRcIiwgbG5MOlwibGVmdFwiLCBsblQ6XCJ0b3BcIixcbiAgICAgICAgcm90Olwicm90YXRlXCIsXG4gICAgICAgIHNwQXV0b0ZpdDpcImF1dG9maXRcIixub3JtQXV0b0ZpdDpcImF1dG9maXRcIixub0F1dG9GaXQ6XCJhdXRvZml0XCIsXG4gICAgICAgIGdzTHN0OlwiW11cIlxuICAgIH0sXG5cbiAgICBpbmhlcml0KC4uLmFkZGl0aW9ucyl7XG4gICAgICAgIHJldHVybiBhZGRpdGlvbnMucmVkdWNlKCh7X19maWx0ZXI9XCJcIixuYW1lcz17fSwgLi4ub3RoZXJzfSwge19fZmlsdGVyOl9maWx0ZXI9XCJcIixuYW1lczpfbmFtZXM9e30sIC4uLl9vdGhlcnN9KT0+e1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAuLi5vdGhlcnMsXG4gICAgICAgICAgICAgICAgLi4uX290aGVycyxcbiAgICAgICAgICAgICAgICBfX2ZpbHRlcjpbX19maWx0ZXIsX2ZpbHRlcl0uZmlsdGVyKGE9PiEhYSkuam9pbihcIixcIiksXG4gICAgICAgICAgICAgICAgbmFtZXM6ey4uLm5hbWVzLCAuLi5fbmFtZXN9LFxuICAgICAgICAgICAgfVxuICAgICAgICB9LHRoaXMpXG4gICAgfVxufSlcblxuY29uc3Qgc2FtZT0oa2V5cyxmeCk9PmtleXMucmVkdWNlKChmcywgayk9Pihmc1trXT1meCwgZnMpLHt9KVxuIl19 \ No newline at end of file diff --git a/lib/openxml/officeDocument.js b/lib/openxml/officeDocument.js index 6881b6e..f9b598d 100644 --- a/lib/openxml/officeDocument.js +++ b/lib/openxml/officeDocument.js @@ -4,6 +4,8 @@ Object.defineProperty(exports, "__esModule", { value: true }); +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; @@ -58,71 +60,71 @@ var _class = function (_Part) { } }); }; - - Object.assign(this.theme, { - font: function font(typeface) { - var type = { mn: "minor", mj: "major" }; - - var _typeface$split$filte = typeface.split(/[+-]/g).filter(function (a) { - return a; - }), - _typeface$split$filte2 = _slicedToArray(_typeface$split$filte, 2), - a = _typeface$split$filte2[0], - b = _typeface$split$filte2[1]; - - if (a && b) return this("a\\:fontScheme>a\\:" + type[a] + "Font>a\\:" + (b == "lt" ? "latin" : b)).attr("typeface"); - return typeface; - }, - color: function color(k) { - var $ = this("a\\:clrScheme>a\\:" + k).children().eq(0); - return doc.asColor($.attr("lastClr") || $.attr("val")); - }, - fillRef: function fillRef(idx, ph) { - idx = parseInt(idx); - if (idx == 0 || idx == 1000) return {}; - if (idx > 1000) return this('a\\:fmtScheme>a\\:bgFillStyleLst').children().eq(idx - 1001).props(transform(ph)); - - return this('a\\:fmtScheme>a\\:fillStyleLst').children().eq(idx - 1).props(transform(ph)); - }, - lnRef: function lnRef(idx, ph) { - return this('a\\:fmtScheme>a\\:lnStyleLst').children().eq(parseInt(idx) - 1).props(transform(ph)); - }, - effectRef: function effectRef(idx, ph) { - return this('a\\:fmtScheme>a\\:effectStyleLst').children().eq(parseInt(idx) - 1).children('a\\:effectLst').props(transform(ph)); - }, - fontRef: function fontRef(idx, ph) { - var $ = this('a\\:fmtScheme>a\\:fontScheme>a\\:' + idx + 'Font'); - var latin = $.children('a\\:latin'); - var ea = $.children('a\\:ea'); - var cs = $.children('a\\:cs'); - return _extends({ latin: latin.attr("typeface"), ea: ea.attr('typeface'), cs: cs.attr("typeface") }, ph); - } - }); - } - }, { - key: "_assignRel", - value: function _assignRel(supported) { - var _this3 = this; - - this.rels("Relationship[Target$=\".xml\"]").each(function (i, rel) { - var $ = _this3.rels(rel); - var type = $.attr("Type").split("/").pop(); - if (supported.indexOf(type) != -1) { - var _target = $.attr("Target"); - Object.defineProperty(_this3, type, { - configurable: true, - get: function get() { - return this.getRelObject(_target); - } - }); - } - }); + if (this.theme) { + Object.assign(this.theme, { + font: function font(typeface) { + var type = { mn: "minor", mj: "major" }; + + var _typeface$split$filte = typeface.split(/[+-]/g).filter(function (a) { + return a; + }), + _typeface$split$filte2 = _slicedToArray(_typeface$split$filte, 2), + a = _typeface$split$filte2[0], + b = _typeface$split$filte2[1]; + + if (a && b) return this("a\\:fontScheme>a\\:" + type[a] + "Font>a\\:" + (b == "lt" ? "latin" : b)).attr("typeface"); + return typeface; + }, + color: function color(k) { + var $ = this("a\\:clrScheme>a\\:" + k).children().eq(0); + return doc.asColor($.attr("lastClr") || $.attr("val")); + }, + fillRef: function fillRef(idx, ph) { + idx = parseInt(idx); + if (idx == 0 || idx == 1000) return {}; + if (idx > 1000) return this('a\\:fmtScheme>a\\:bgFillStyleLst').children().eq(idx - 1001).props(transform(ph)); + + return this('a\\:fmtScheme>a\\:fillStyleLst').children().eq(idx - 1).props(transform(ph)); + }, + lnRef: function lnRef(idx, ph) { + return this('a\\:fmtScheme>a\\:lnStyleLst').children().eq(parseInt(idx) - 1).props(transform(ph)); + }, + effectRef: function effectRef(idx, ph) { + return this('a\\:fmtScheme>a\\:effectStyleLst').children().eq(parseInt(idx) - 1).children('a\\:effectLst').props(transform(ph)); + }, + fontRef: function fontRef(idx, ph) { + var $ = this('a\\:fmtScheme>a\\:fontScheme>a\\:' + idx + 'Font'); + var latin = $.children('a\\:latin'); + var ea = $.children('a\\:ea'); + var cs = $.children('a\\:cs'); + return _extends({ latin: latin.attr("typeface"), ea: ea.attr('typeface'), cs: cs.attr("typeface") }, ph); + } + }); + } } }, { key: "render", value: function render(createElement) { var identify = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.constructor.identify.bind(this.constructor); } + }, { + key: "parse", + value: function parse(domHandler) { + var identify = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.constructor.identify.bind(this.constructor); + + var createElement = domHandler.createElement.bind(domHandler); + function _identify() { + var model = identify.apply(undefined, arguments); + if (model && (typeof model === "undefined" ? "undefined" : _typeof(model)) == "object") { + domHandler.emit.apply(domHandler, ["*", model].concat(Array.prototype.slice.call(arguments))); + domHandler.emit.apply(domHandler, [model.type, model].concat(Array.prototype.slice.call(arguments))); + if (domHandler["on" + model.type]) domHandler["on" + model.type].apply(domHandler, [model].concat(Array.prototype.slice.call(arguments))); + } + return model; + } + + return this.render(createElement, _identify); + } }], [{ key: "identify", value: function identify(wXml, officeDocument) { @@ -140,4 +142,4 @@ var _class = function (_Part) { _class.identities = {}; exports.default = _class; module.exports = exports['default']; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcGVueG1sL29mZmljZURvY3VtZW50LmpzIl0sIm5hbWVzIjpbImFyZ3VtZW50cyIsIl9hc3NpZ25SZWwiLCJkb2MiLCJ0cmFuc2Zvcm0iLCJ0aWR5X3NjaGVtZUNsciIsInZhbCIsImVmZmVjdCIsImFzQ29sb3IiLCJwaCIsImNvbG9yIiwidGhlbWUiLCJPYmplY3QiLCJhc3NpZ24iLCJmb250IiwidHlwZWZhY2UiLCJ0eXBlIiwibW4iLCJtaiIsInNwbGl0IiwiZmlsdGVyIiwiYSIsImIiLCJhdHRyIiwiayIsIiQiLCJjaGlsZHJlbiIsImVxIiwiZmlsbFJlZiIsImlkeCIsInBhcnNlSW50IiwicHJvcHMiLCJsblJlZiIsImVmZmVjdFJlZiIsImZvbnRSZWYiLCJsYXRpbiIsImVhIiwiY3MiLCJzdXBwb3J0ZWQiLCJyZWxzIiwiZWFjaCIsImkiLCJyZWwiLCJwb3AiLCJpbmRleE9mIiwidGFyZ2V0IiwiZGVmaW5lUHJvcGVydHkiLCJjb25maWd1cmFibGUiLCJnZXQiLCJnZXRSZWxPYmplY3QiLCJjcmVhdGVFbGVtZW50IiwiaWRlbnRpZnkiLCJjb25zdHJ1Y3RvciIsImJpbmQiLCJ3WG1sIiwib2ZmaWNlRG9jdW1lbnQiLCJpZGVudGl0aWVzIiwidGFnIiwibmFtZSIsIlBhcnQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBQUE7Ozs7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztnQ0FFVztBQUFBOztBQUNILG1IQUFlQSxTQUFmO0FBQ0EsaUJBQUtDLFVBQUwsQ0FBZ0IsQ0FBQyxPQUFELENBQWhCOztBQUVBLGdCQUFNQyxNQUFJLEtBQUtBLEdBQWY7QUFDQSxnQkFBTUMsWUFBVSxTQUFWQSxTQUFVO0FBQUEsb0NBQ1Qsc0JBQU8sTUFBUCxDQURTO0FBRVpDLG9DQUFlLDhCQUFtQjtBQUFBLDRCQUFqQkMsR0FBaUIsUUFBakJBLEdBQWlCO0FBQUEsNEJBQVZDLE1BQVU7O0FBQzlCLCtCQUFPLE9BQUtKLEdBQUwsQ0FB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Q0g7Ozs7RUE5RndCRSxjOztPQWdHbEJILFUsR0FBVyxFIiwiZmlsZSI6Im9mZmljZURvY3VtZW50LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFBhcnQgZnJvbSBcIi4vcGFydFwiXG5pbXBvcnQgZHJhd21sIGZyb20gXCIuL2RyYXdtbFwiXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBleHRlbmRzIFBhcnR7XG4gICAgX2luaXQoKXtcbiAgICAgICAgc3VwZXIuX2luaXQoLi4uYXJndW1lbnRzKVxuICAgICAgICB0aGlzLl9hc3NpZ25SZWwoW1widGhlbWVcIl0pXG5cbiAgICAgICAgY29uc3QgZG9jPXRoaXMuZG9jXG4gICAgICAgIGNvbnN0IHRyYW5zZm9ybT1waD0+KHtcbiAgICAgICAgICAgIC4uLmRyYXdtbCh0aGlzKSxcbiAgICAgICAgICAgIHRpZHlfc2NoZW1lQ2xyOih7dmFsLC4uLmVmZmVjdH0pPT57XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZG9jLmFzQ29sb3IodmFsPT1cInBoQ2xyXCIgPyBwaC5jb2xvciA6dGhpcy50aGVtZS5jb2xvcih2YWwpLGVmZmVjdClcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pXG5cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLnRoZW1lLHtcbiAgICAgICAgICAgIGZvbnQodHlwZWZhY2Upe1xuICAgICAgICAgICAgICAgIGNvbnN0IHR5cGU9e21uOlwibWlub3JcIixtajpcIm1ham9yXCJ9XG4gICAgICAgICAgICAgICAgY29uc3QgW2EsYl09dHlwZWZhY2Uuc3BsaXQoL1srLV0vZykuZmlsdGVyKGE9PmEpXG4gICAgICAgICAgICAgICAgaWYoYSAmJiBiKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcyhgYVxcXFw6Zm9udFNjaGVtZT5hXFxcXDoke3R5cGVbYV19Rm9udD5hXFxcXDoke2I9PVwibHRcIj9cImxhdGluXCI6Yn1gKS5hdHRyKFwidHlwZWZhY2VcIilcbiAgICAgICAgICAgICAgICByZXR1cm4gdHlwZWZhY2VcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBjb2xvcihrKXtcbiAgICAgICAgICAgICAgICBjb25zdCAkPXRoaXMoYGFcXFxcOmNsclNjaGVtZT5hXFxcXDoke2t9YCkuY2hpbGRyZW4oKS5lcSgwKVxuICAgICAgICAgICAgICAgIHJldHVybiBkb2MuYXNDb2xvcigkLmF0dHIoXCJsYXN0Q2xyXCIpfHwkLmF0dHIoXCJ2YWxcIikpXG4gICAgICAgICAgICB9LFxuXG4gICAgICAgICAgICBmaWxsUmVmKGlkeCxwaCl7XG4gICAgICAgICAgICAgICAgaWR4PXBhcnNlSW50KGlkeClcbiAgICAgICAgICAgICAgICBpZihpZHg9PTAgfHwgaWR4PT0xMDAwKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4ge31cbiAgICAgICAgICAgICAgICBpZihpZHg+MTAwMClcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMoJ2FcXFxcOmZtdFNjaGVtZT5hXFxcXDpiZ0ZpbGxTdHlsZUxzdCcpXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2hpbGRyZW4oKVxuICAgICAgICAgICAgICAgICAgICAgICAgLmVxKGlkeC0xMDAxKVxuICAgICAgICAgICAgICAgICAgICAgICAgLnByb3BzKHRyYW5zZm9ybShwaCkpXG5cbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcygnYVxcXFw6Zm10U2NoZW1lPmFcXFxcOmZpbGxTdHlsZUxzdCcpXG4gICAgICAgICAgICAgICAgICAgIC5jaGlsZHJlbigpXG4gICAgICAgICAgICAgICAgICAgIC5lcShpZHgtMSlcbiAgICAgICAgICAgICAgICAgICAgLnByb3BzKHRyYW5zZm9ybShwaCkpXG4gICAgICAgICAgICB9LFxuXG4gICAgICAgICAgICBsblJlZihpZHgscGgpe1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzKCdhXFxcXDpmbXRTY2hlbWU+YVxcXFw6bG5TdHlsZUxzdCcpXG4gICAgICAgICAgICAgICAgICAgIC5jaGlsZHJlbigpXG4gICAgICAgICAgICAgICAgICAgIC5lcShwYXJzZUludChpZHgpLTEpXG4gICAgICAgICAgICAgICAgICAgIC5wcm9wcyh0cmFuc2Zvcm0ocGgpKVxuICAgICAgICAgICAgfSxcblxuICAgICAgICAgICAgZWZmZWN0UmVmKGlkeCwgcGgpe1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzKCdhXFxcXDpmbXRTY2hlbWU+YVxcXFw6ZWZmZWN0U3R5bGVMc3QnKVxuICAgICAgICAgICAgICAgICAgICAuY2hpbGRyZW4oKVxuICAgICAgICAgICAgICAgICAgICAuZXEocGFyc2VJbnQoaWR4KS0xKVxuICAgICAgICAgICAgICAgICAgICAuY2hpbGRyZW4oJ2FcXFxcOmVmZmVjdExzdCcpXG4gICAgICAgICAgICAgICAgICAgIC5wcm9wcyh0cmFuc2Zvcm0ocGgpKVxuICAgICAgICAgICAgfSxcblxuICAgICAgICAgICAgZm9udFJlZihpZHgscGgpe1xuICAgICAgICAgICAgICAgIGNvbnN0ICQ9dGhpcygnYVxcXFw6Zm10U2NoZW1lPmFcXFxcOmZvbnRTY2hlbWU+YVxcXFw6JytpZHgrJ0ZvbnQnKVxuICAgICAgICAgICAgICAgIGNvbnN0IGxhdGluPSQuY2hpbGRyZW4oJ2FcXFxcOmxhdGluJylcbiAgICAgICAgICAgICAgICBjb25zdCBlYT0kLmNoaWxkcmVuKCdhXFxcXDplYScpXG4gICAgICAgICAgICAgICAgY29uc3QgY3M9JC5jaGlsZHJlbignYVxcXFw6Y3MnKVxuICAgICAgICAgICAgICAgIHJldHVybiB7bGF0aW46bGF0aW4uYXR0cihcInR5cGVmYWNlXCIpLGVhOmVhLmF0dHIoJ3R5cGVmYWNlJyksY3M6Y3MuYXR0cihcInR5cGVmYWNlXCIpLC4uLnBofVxuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIH1cblxuICAgIF9hc3NpZ25SZWwoc3VwcG9ydGVkKXtcbiAgICAgICAgdGhpcy5yZWxzKGBSZWxhdGlvbnNoaXBbVGFyZ2V0JD1cIi54bWxcIl1gKS5lYWNoKChpLHJlbCk9Pntcblx0XHRcdGxldCAkPXRoaXMucmVscyhyZWwpXG5cdFx0XHRsZXQgdHlwZT0kLmF0dHIoXCJUeXBlXCIpLnNwbGl0KFwiL1wiKS5wb3AoKVxuXHRcdFx0aWYoc3VwcG9ydGVkLmluZGV4T2YodHlwZSkhPS0xKXtcblx0XHRcdFx0bGV0IHRhcmdldD0kLmF0dHIoXCJUYXJnZXRcIilcblx0XHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsdHlwZSx7XG4gICAgICAgICAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTp0cnVlLFxuXHRcdFx0XHRcdGdldCgpe1xuXHRcdFx0XHRcdFx0cmV0dXJuIHRoaXMuZ2V0UmVsT2JqZWN0KHRhcmdldClcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0pXG5cdFx0XHR9XG5cdFx0fSlcbiAgICB9XG5cbiAgICByZW5kZXIoY3JlYXRlRWxlbWVudCwgaWRlbnRpZnk9dGhpcy5jb25zdHJ1Y3Rvci5pZGVudGlmeS5iaW5kKHRoaXMuY29uc3RydWN0b3IpKXtcblxuICAgIH1cblxuICAgIHN0YXRpYyBpZGVudGlmeSh3WG1sLCBvZmZpY2VEb2N1bWVudCl7XG4gICAgICAgIGNvbnN0IGlkZW50aXRpZXM9dGhpcy5pZGVudGl0aWVzXG4gICAgICAgIGNvbnN0IHRhZz13WG1sLm5hbWUuc3BsaXQoXCI6XCIpLnBvcCgpXG4gICAgICAgIGlmKGlkZW50aXRpZXNbdGFnXSlcbiAgICAgICAgICAgIHJldHVybiBpZGVudGl0aWVzW3RhZ10oLi4uYXJndW1lbnRzKVxuXG4gICAgICAgIHJldHVybiB0YWdcbiAgICB9XG5cbiAgICBzdGF0aWMgaWRlbnRpdGllcz17XG4gICAgICAgIFxuICAgIH1cbn1cbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcGVueG1sL29mZmljZURvY3VtZW50LmpzIl0sIm5hbWVzIjpbImFyZ3VtZW50cyIsIl9hc3NpZ25SZWwiLCJkb2MiLCJ0cmFuc2Zvcm0iLCJ0aWR5X3NjaGVtZUNsciIsInZhbCIsImVmZmVjdCIsImFzQ29sb3IiLCJwaCIsImNvbG9yIiwidGhlbWUiLCJPYmplY3QiLCJhc3NpZ24iLCJmb250IiwidHlwZWZhY2UiLCJ0eXBlIiwibW4iLCJtaiIsInNwbGl0IiwiZmlsdGVyIiwiYSIsImIiLCJhdHRyIiwiayIsIiQiLCJjaGlsZHJlbiIsImVxIiwiZmlsbFJlZiIsImlkeCIsInBhcnNlSW50IiwicHJvcHMiLCJsblJlZiIsImVmZmVjdFJlZiIsImZvbnRSZWYiLCJsYXRpbiIsImVhIiwiY3MiLCJjcmVhdGVFbGVtZW50IiwiaWRlbnRpZnkiLCJjb25zdHJ1Y3RvciIsImJpbmQiLCJkb21IYW5kbGVyIiwiX2lkZW50aWZ5IiwibW9kZWwiLCJlbWl0IiwicmVuZGVyIiwid1htbCIsIm9mZmljZURvY3VtZW50IiwiaWRlbnRpdGllcyIsInRhZyIsIm5hbWUiLCJwb3AiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7OztBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2dDQUVXO0FBQUE7O0FBQ0gsbUhBQWVBLFNBQWY7QUFDQSxpQkFBS0MsVUFBTCxDQUFnQixDQUFDLE9BQUQsQ0FBaEI7O0FBRUEsZ0JBQU1DLE1BQUksS0FBS0EsR0FBZjtBQUNBLGdCQUFNQyxZQUFVLFNBQVZBLFNBQVU7QUFBQSxvQ0FDVCw2QkFEUztBQUVaQyxvQ0FBZSw4QkFBbUI7QUFBQSw0QkFBakJDLEdBQWlCLFFBQWpCQSxHQUFpQjtBQUFBLDRCQUFWQyxNQUFVOztBQUM5QiwrQkFBTyxPQUFLSixHQUFMLENBQVNLLE9BQVQsQ0FBaUJGLE9BQUssT0FBTCxHQUFlRyxHQUFHQyxLQUFsQixHQUF5QixPQUFLQyxLQUFMLENBQVdELEtBQVgsQ0FB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SCxFQUNJLE9BQU9ELFdBQVdDLEdBQVgsb0JBQW1CakQsU0FBbkIsQ0FBUDs7QUFFSixtQkFBT2lELEdBQVA7QUFDSDs7Ozs7O09BRU1ELFUsR0FBVyxFIiwiZmlsZSI6Im9mZmljZURvY3VtZW50LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFBhcnQgZnJvbSBcIi4vcGFydFwiXG5pbXBvcnQgZHJhd21sIGZyb20gXCIuL2RyYXdtbFwiXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBleHRlbmRzIFBhcnR7XG4gICAgX2luaXQoKXtcbiAgICAgICAgc3VwZXIuX2luaXQoLi4uYXJndW1lbnRzKVxuICAgICAgICB0aGlzLl9hc3NpZ25SZWwoW1widGhlbWVcIl0pXG5cbiAgICAgICAgY29uc3QgZG9jPXRoaXMuZG9jXG4gICAgICAgIGNvbnN0IHRyYW5zZm9ybT1waD0+KHtcbiAgICAgICAgICAgIC4uLmRyYXdtbCh0aGlzKSxcbiAgICAgICAgICAgIHRpZHlfc2NoZW1lQ2xyOih7dmFsLC4uLmVmZmVjdH0pPT57XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZG9jLmFzQ29sb3IodmFsPT1cInBoQ2xyXCIgPyBwaC5jb2xvciA6dGhpcy50aGVtZS5jb2xvcih2YWwpLGVmZmVjdClcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pXG4gICAgICAgIGlmKHRoaXMudGhlbWUpe1xuICAgICAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLnRoZW1lLHtcbiAgICAgICAgICAgICAgICBmb250KHR5cGVmYWNlKXtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdHlwZT17bW46XCJtaW5vclwiLG1qOlwibWFqb3JcIn1cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgW2EsYl09dHlwZWZhY2Uuc3BsaXQoL1srLV0vZykuZmlsdGVyKGE9PmEpXG4gICAgICAgICAgICAgICAgICAgIGlmKGEgJiYgYilcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzKGBhXFxcXDpmb250U2NoZW1lPmFcXFxcOiR7dHlwZVthXX1Gb250PmFcXFxcOiR7Yj09XCJsdFwiP1wibGF0aW5cIjpifWApLmF0dHIoXCJ0eXBlZmFjZVwiKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHlwZWZhY2VcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIGNvbG9yKGspe1xuICAgICAgICAgICAgICAgICAgICBjb25zdCAkPXRoaXMoYGFcXFxcOmNsclNjaGVtZT5hXFxcXDoke2t9YCkuY2hpbGRyZW4oKS5lcSgwKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZG9jLmFzQ29sb3IoJC5hdHRyKFwibGFzdENsclwiKXx8JC5hdHRyKFwidmFsXCIpKVxuICAgICAgICAgICAgICAgIH0sXG5cbiAgICAgICAgICAgICAgICBmaWxsUmVmKGlkeCxwaCl7XG4gICAgICAgICAgICAgICAgICAgIGlkeD1wYXJzZUludChpZHgpXG4gICAgICAgICAgICAgICAgICAgIGlmKGlkeD09MCB8fCBpZHg9PTEwMDApXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4ge31cbiAgICAgICAgICAgICAgICAgICAgaWYoaWR4PjEwMDApXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcygnYVxcXFw6Zm10U2NoZW1lPmFcXFxcOmJnRmlsbFN0eWxlTHN0JylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY2hpbGRyZW4oKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5lcShpZHgtMTAwMSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucHJvcHModHJhbnNmb3JtKHBoKSlcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcygnYVxcXFw6Zm10U2NoZW1lPmFcXFxcOmZpbGxTdHlsZUxzdCcpXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2hpbGRyZW4oKVxuICAgICAgICAgICAgICAgICAgICAgICAgLmVxKGlkeC0xKVxuICAgICAgICAgICAgICAgICAgICAgICAgLnByb3BzKHRyYW5zZm9ybShwaCkpXG4gICAgICAgICAgICAgICAgfSxcblxuICAgICAgICAgICAgICAgIGxuUmVmKGlkeCxwaCl7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzKCdhXFxcXDpmbXRTY2hlbWU+YVxcXFw6bG5TdHlsZUxzdCcpXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2hpbGRyZW4oKVxuICAgICAgICAgICAgICAgICAgICAgICAgLmVxKHBhcnNlSW50KGlkeCktMSlcbiAgICAgICAgICAgICAgICAgICAgICAgIC5wcm9wcyh0cmFuc2Zvcm0ocGgpKVxuICAgICAgICAgICAgICAgIH0sXG5cbiAgICAgICAgICAgICAgICBlZmZlY3RSZWYoaWR4LCBwaCl7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzKCdhXFxcXDpmbXRTY2hlbWU+YVxcXFw6ZWZmZWN0U3R5bGVMc3QnKVxuICAgICAgICAgICAgICAgICAgICAgICAgLmNoaWxkcmVuKClcbiAgICAgICAgICAgICAgICAgICAgICAgIC5lcShwYXJzZUludChpZHgpLTEpXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2hpbGRyZW4oJ2FcXFxcOmVmZmVjdExzdCcpXG4gICAgICAgICAgICAgICAgICAgICAgICAucHJvcHModHJhbnNmb3JtKHBoKSlcbiAgICAgICAgICAgICAgICB9LFxuXG4gICAgICAgICAgICAgICAgZm9udFJlZihpZHgscGgpe1xuICAgICAgICAgICAgICAgICAgICBjb25zdCAkPXRoaXMoJ2FcXFxcOmZtdFNjaGVtZT5hXFxcXDpmb250U2NoZW1lPmFcXFxcOicraWR4KydGb250JylcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbGF0aW49JC5jaGlsZHJlbignYVxcXFw6bGF0aW4nKVxuICAgICAgICAgICAgICAgICAgICBjb25zdCBlYT0kLmNoaWxkcmVuKCdhXFxcXDplYScpXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGNzPSQuY2hpbGRyZW4oJ2FcXFxcOmNzJylcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtsYXRpbjpsYXRpbi5hdHRyKFwidHlwZWZhY2VcIiksZWE6ZWEuYXR0cigndHlwZWZhY2UnKSxjczpjcy5hdHRyKFwidHlwZWZhY2VcIiksLi4ucGh9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJlbmRlcihjcmVhdGVFbGVtZW50LCBpZGVudGlmeT10aGlzLmNvbnN0cnVjdG9yLmlkZW50aWZ5LmJpbmQodGhpcy5jb25zdHJ1Y3Rvcikpe1xuXG4gICAgfVxuXG4gICAgcGFyc2UoZG9tSGFuZGxlcixpZGVudGlmeT10aGlzLmNvbnN0cnVjdG9yLmlkZW50aWZ5LmJpbmQodGhpcy5jb25zdHJ1Y3Rvcikpe1xuXHRcdGNvbnN0IGNyZWF0ZUVsZW1lbnQ9ZG9tSGFuZGxlci5jcmVhdGVFbGVtZW50LmJpbmQoZG9tSGFuZGxlcilcblx0XHRmdW5jdGlvbiBfaWRlbnRpZnkoKXtcblx0XHRcdGxldCBtb2RlbD1pZGVudGlmeSguLi5hcmd1bWVudHMpXG5cdFx0XHRpZihtb2RlbCAmJiB0eXBlb2YobW9kZWwpPT1cIm9iamVjdFwiKXtcblx0XHRcdFx0ZG9tSGFuZGxlci5lbWl0KFwiKlwiLG1vZGVsLC4uLmFyZ3VtZW50cylcblx0XHRcdFx0ZG9tSGFuZGxlci5lbWl0KG1vZGVsLnR5cGUsIG1vZGVsLC4uLmFyZ3VtZW50cylcblx0XHRcdFx0aWYoZG9tSGFuZGxlcltgb24ke21vZGVsLnR5cGV9YF0pXG5cdFx0XHRcdFx0ZG9tSGFuZGxlcltgb24ke21vZGVsLnR5cGV9YF0obW9kZWwsLi4uYXJndW1lbnRzKVxuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIG1vZGVsXG5cdFx0fVxuXG4gICAgICAgIHJldHVybiB0aGlzLnJlbmRlcihjcmVhdGVFbGVtZW50LCBfaWRlbnRpZnkpXG5cdH1cblxuICAgIHN0YXRpYyBpZGVudGlmeSh3WG1sLCBvZmZpY2VEb2N1bWVudCl7XG4gICAgICAgIGNvbnN0IGlkZW50aXRpZXM9dGhpcy5pZGVudGl0aWVzXG4gICAgICAgIGNvbnN0IHRhZz13WG1sLm5hbWUuc3BsaXQoXCI6XCIpLnBvcCgpXG4gICAgICAgIGlmKGlkZW50aXRpZXNbdGFnXSlcbiAgICAgICAgICAgIHJldHVybiBpZGVudGl0aWVzW3RhZ10oLi4uYXJndW1lbnRzKVxuXG4gICAgICAgIHJldHVybiB0YWdcbiAgICB9XG5cbiAgICBzdGF0aWMgaWRlbnRpdGllcz17XG4gICAgICAgIFxuICAgIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/lib/openxml/ole.js b/lib/openxml/ole.js index 6a8f05b..5214267 100644 --- a/lib/openxml/ole.js +++ b/lib/openxml/ole.js @@ -18,4 +18,4 @@ function parse(data) { var end = content.indexOf(0, Math.min(start, content.length / 2)) - 1; return new TextDecoder("utf-8").decode(new Uint8Array(content.slice(start, end))); } -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcGVueG1sL29sZS5qcyJdLCJuYW1lcyI6WyJwYXJzZSIsImRhdGEiLCJvbGUiLCJPTEUiLCJjb250ZW50IiwiZmluZCIsInN0YXJ0Iiwic2xpY2UiLCJNYXRoIiwibWluIiwibGVuZ3RoIiwibGFzdEluZGV4T2YiLCJlbmQiLCJpbmRleE9mIiwiVGV4dERlY29kZXIiLCJkZWNvZGUiLCJVaW50OEFycmF5Il0sIm1hcHBpbmdzIjoiOzs7OztRQUVnQkEsSyxHQUFBQSxLOztBQUZoQjs7Ozs7O0FBRU8sU0FBU0EsS0FBVCxDQUFlQyxJQUFmLEVBQW9CO0FBQzFCLEtBQUlDLE1BQUlDLGNBQUlILEtBQUosQ0FBVUMsSUFBVixDQUFSO0FBQ0EsS0FBSUcsVUFBUUYsSUFBSUcsSUFBSixDQUFTLGNBQVQsRUFBeUJELE9BQXJDO0FBQ0EsS0FBSUUsUUFBTUYsUUFBUUcsS0FBUixDQUFjLENBQWQsRUFBZ0JDLEtBQUtDLEdBQUwsQ0FBU0wsUUFBUU0sTUFBUixHQUFlLENBQXhCLEVBQTBCLEdBQTFCLENBQWhCLEVBQWdEQyxXQUFoRCxDQUE0RCxDQUE1RCxJQUErRCxDQUF6RTtBQUNBLEtBQUlDLE1BQUlSLFFBQVFTLE9BQVIsQ0FBZ0IsQ0FBaEIsRUFBa0JMLEtBQUtDLEdBQUwsQ0FBU0gsS0FBVCxFQUFlRixRQUFRTSxNQUFSLEdBQWUsQ0FBOUIsQ0FBbEIsSUFBb0QsQ0FBNUQ7QUFDQSxRQUFPLElBQUlJLFdBQUosQ0FBZ0IsT0FBaEIsRUFBeUJDLE1BQXpCLENBQWdDLElBQUlDLFVBQUosQ0FBZVosUUFBUUcsS0FBUixDQUFjRCxLQUFkLEVBQW9CTSxHQUFwQixDQUFmLENBQWhDLENBQVA7QUFDQSIsImZpbGUiOiJvbGUuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgT0xFIGZyb20gXCJjZmJcIlxuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2UoZGF0YSl7XG5cdGxldCBvbGU9T0xFLnBhcnNlKGRhdGEpXG5cdGxldCBjb250ZW50PW9sZS5maW5kKFwiIW9sZTEwTmF0aXZlXCIpLmNvbnRlbnRcblx0bGV0IHN0YXJ0PWNvbnRlbnQuc2xpY2UoMCxNYXRoLm1pbihjb250ZW50Lmxlbmd0aC8yLDUxMikpLmxhc3RJbmRleE9mKDApKzFcblx0bGV0IGVuZD1jb250ZW50LmluZGV4T2YoMCxNYXRoLm1pbihzdGFydCxjb250ZW50Lmxlbmd0aC8yKSktMVxuXHRyZXR1cm4gbmV3IFRleHREZWNvZGVyKFwidXRmLThcIikuZGVjb2RlKG5ldyBVaW50OEFycmF5KGNvbnRlbnQuc2xpY2Uoc3RhcnQsZW5kKSkpXG59Il19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcGVueG1sL29sZS5qcyJdLCJuYW1lcyI6WyJwYXJzZSIsImRhdGEiLCJvbGUiLCJjb250ZW50IiwiZmluZCIsInN0YXJ0Iiwic2xpY2UiLCJNYXRoIiwibWluIiwibGVuZ3RoIiwibGFzdEluZGV4T2YiLCJlbmQiLCJpbmRleE9mIiwiVGV4dERlY29kZXIiLCJkZWNvZGUiLCJVaW50OEFycmF5Il0sIm1hcHBpbmdzIjoiOzs7OztRQUVnQkEsSyxHQUFBQSxLOztBQUZoQjs7Ozs7O0FBRU8sU0FBU0EsS0FBVCxDQUFlQyxJQUFmLEVBQW9CO0FBQzFCLEtBQUlDLE1BQUksY0FBSUYsS0FBSixDQUFVQyxJQUFWLENBQVI7QUFDQSxLQUFJRSxVQUFRRCxJQUFJRSxJQUFKLENBQVMsY0FBVCxFQUF5QkQsT0FBckM7QUFDQSxLQUFJRSxRQUFNRixRQUFRRyxLQUFSLENBQWMsQ0FBZCxFQUFnQkMsS0FBS0MsR0FBTCxDQUFTTCxRQUFRTSxNQUFSLEdBQWUsQ0FBeEIsRUFBMEIsR0FBMUIsQ0FBaEIsRUFBZ0RDLFdBQWhELENBQTRELENBQTVELElBQStELENBQXpFO0FBQ0EsS0FBSUMsTUFBSVIsUUFBUVMsT0FBUixDQUFnQixDQUFoQixFQUFrQkwsS0FBS0MsR0FBTCxDQUFTSCxLQUFULEVBQWVGLFFBQVFNLE1BQVIsR0FBZSxDQUE5QixDQUFsQixJQUFvRCxDQUE1RDtBQUNBLFFBQU8sSUFBSUksV0FBSixDQUFnQixPQUFoQixFQUF5QkMsTUFBekIsQ0FBZ0MsSUFBSUMsVUFBSixDQUFlWixRQUFRRyxLQUFSLENBQWNELEtBQWQsRUFBb0JNLEdBQXBCLENBQWYsQ0FBaEMsQ0FBUDtBQUNBIiwiZmlsZSI6Im9sZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBPTEUgZnJvbSBcImNmYlwiXG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZShkYXRhKXtcblx0bGV0IG9sZT1PTEUucGFyc2UoZGF0YSlcblx0bGV0IGNvbnRlbnQ9b2xlLmZpbmQoXCIhb2xlMTBOYXRpdmVcIikuY29udGVudFxuXHRsZXQgc3RhcnQ9Y29udGVudC5zbGljZSgwLE1hdGgubWluKGNvbnRlbnQubGVuZ3RoLzIsNTEyKSkubGFzdEluZGV4T2YoMCkrMVxuXHRsZXQgZW5kPWNvbnRlbnQuaW5kZXhPZigwLE1hdGgubWluKHN0YXJ0LGNvbnRlbnQubGVuZ3RoLzIpKS0xXG5cdHJldHVybiBuZXcgVGV4dERlY29kZXIoXCJ1dGYtOFwiKS5kZWNvZGUobmV3IFVpbnQ4QXJyYXkoY29udGVudC5zbGljZShzdGFydCxlbmQpKSlcbn0iXX0= \ No newline at end of file diff --git a/lib/openxml/part.js b/lib/openxml/part.js index c041ae5..0292fad 100644 --- a/lib/openxml/part.js +++ b/lib/openxml/part.js @@ -4,6 +4,8 @@ Object.defineProperty(exports, "__esModule", { value: true }); +var _get = function get(object, property, receiver) { if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { return get(parent, property, receiver); } } else if ("value" in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } }; + var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); var _ole = require("./ole"); @@ -12,6 +14,10 @@ var OLE = _interopRequireWildcard(_ole); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } +function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } + +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } + function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } @@ -61,6 +67,29 @@ var Part = function () { } }); } + }, { + key: "_assignRel", + value: function _assignRel() { + var _this = this; + + var supported = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true; + + this.rels("Relationship[Target$=\".xml\"]").each(function (i, rel) { + var $ = _this.rels(rel); + var type = $.attr("Type").split("/").pop(); + if (supported === true || supported.indexOf(type) != -1) { + (function () { + var target = $.attr("Target"); + Object.defineProperty(_this, type, { + configurable: true, + get: function get() { + return this.getRelObject(target); + } + }); + })(); + } + }); + } }, { key: "normalizePath", value: function normalizePath() { @@ -72,7 +101,7 @@ var Part = function () { }, { key: "getRelPart", value: function getRelPart(id) { - var rel = this.rels("Relationship[Id=\"" + id + "\"]"); + var rel = this.rels("Relationship[Id=\"" + id + "\"],Relationship[Type$=\"" + id + "\"],Relationship[Target$=\"" + id + "\"]"); var target = rel.attr("Target"); return new Part(this.normalizePath(target), this.doc); } @@ -91,6 +120,9 @@ var Part = function () { value: function getRel(id) { var rel = this.rels("Relationship[Id=\"" + id + "\"]"); var target = rel.attr("Target"); + if (!target) { + return; + } if (rel.attr("TargetMode") === 'External') return { url: target }; switch (rel.attr("Type").split("/").pop()) { @@ -211,7 +243,7 @@ var Part = function () { type, props, children; }; - var _this = this; + var _this2 = this; var identify = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : function (node) { return node.name.split(":").pop(); @@ -255,7 +287,7 @@ var Part = function () { if (Array.isArray(children)) { if (children.length) { childElements = children.map(function (a) { - return a ? _this.renderNode(a, createElement, identify) : null; + return a ? _this2.renderNode(a, createElement, identify) : null; }).filter(function (a) { return !!a; }); @@ -275,5 +307,25 @@ var Part = function () { }(); exports.default = Part; + +var RelsPart = function (_Part) { + _inherits(RelsPart, _Part); + + function RelsPart() { + _classCallCheck(this, RelsPart); + + return _possibleConstructorReturn(this, (RelsPart.__proto__ || Object.getPrototypeOf(RelsPart)).apply(this, arguments)); + } + + _createClass(RelsPart, [{ + key: "_init", + value: function _init() { + _get(RelsPart.prototype.__proto__ || Object.getPrototypeOf(RelsPart.prototype), "_init", this).call(this); + } + }]); + + return RelsPart; +}(Part); + module.exports = exports['default']; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcGVueG1sL3BhcnQuanMiXSwibmFtZXMiOlsiT0xFIiwiUGFydCIsIm5hbWUiLCJkb2MiLCJmb2xkZXIiLCJyZWxOYW1lIiwiaSIsImxhc3RJbmRleE9mIiwic3Vic3RyaW5nIiwicGFydHMiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldCIsImdldE9iamVjdFBhcnQiLCJfaW5pdCIsImNvbmZpZ3VyYWJsZSIsInBhdGgiLCJzdGFydHNXaXRoIiwic3Vic3RyIiwiaWQiLCJyZWwiLCJyZWxzIiwidGFyZ2V0IiwiYXR0ciIsIm5vcm1hbGl6ZVBhdGgiLCJ0eXBlIiwidXJsIiwic3BsaXQiLCJwb3AiLCJnZXREYXRhUGFydEFzVXJsIiwiY3JjMzIiLCJnZXRQYXJ0Q3JjMzIiLCJlbmRzV2l0aCIsImdldFJlbE9iamVjdCIsImdldFBhcnQiLCJNYXRoIiwibWF4IiwidG9BcnJheSIsIm1hcCIsInBhcnNlSW50IiwiYSIsImF0dHJpYnMiLCJJZCIsImRhdGEiLCJySWQiLCJfbmV4dHJJZCIsImFwcGVuZCIsInBhcnROYW1lIiwicmF3IiwiZmlsZSIsImV4dCIsIm1pbWUiLCJ0YXJnZXROYW1lIiwidCIsIlRhcmdldCIsIm1hdGNoIiwiRGVmYXVsdFR5cGVzIiwiZXh0VHlwZSIsImZpbmQiLCJsZW5ndGgiLCJwcmVwZW5kIiwicmVsYXRpb25zaGlwVHlwZSIsImNvbnRlbnRUeXBlIiwiY29uc3RydWN0b3IiLCJjb250ZW50VHlwZXMiLCJyaWQiLCJnZXREYXRhUGFydCIsInBhcnNlIiwicmVtb3ZlIiwibm9kZSIsImNyZWF0ZUVsZW1lbnQiLCJwcm9wcyIsImNoaWxkcmVuIiwiaWRlbnRpZnkiLCJleHRyYSIsInRhZ05hbWUiLCJwYXJlbnQiLCJtb2RlbCIsImNvbnRlbnQiLCJ1bmRlZmluZWQiLCJrZXkiLCJhc3NpZ24iLCJjaGlsZEVsZW1lbnRzIiwiQXJyYXkiLCJpc0FycmF5IiwicmVuZGVyTm9kZSIsImZpbHRlciIsIiQiXSwi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LFNBQVNiLE1BQVosRUFBbUI7QUFDbEJ1QixxQkFBY1YsU0FBU2xDLEdBQVQsQ0FBYTtBQUFBLGFBQUdFLElBQUksTUFBSzZDLFVBQUwsQ0FBZ0I3QyxDQUFoQixFQUFrQjhCLGFBQWxCLEVBQWdDRyxRQUFoQyxDQUFKLEdBQWdELElBQW5EO0FBQUEsTUFBYixFQUFzRWEsTUFBdEUsQ0FBNkU7QUFBQSxhQUFHLENBQUMsQ0FBQzlDLENBQUw7QUFBQSxNQUE3RSxDQUFkO0FBQ0E7QUFDRDs7QUFFRCxVQUFPOEIsY0FDTDdDLElBREssRUFFTDhDLEtBRkssRUFHTFcsYUFISyxDQUFQO0FBS0E7OztvQkFFQ2IsSSxFQUFLO0FBQ04sVUFBTyxLQUFLbEUsR0FBTCxDQUFTb0YsQ0FBVCxDQUFXbEIsSUFBWCxDQUFQO0FBQ0E7Ozs7OztrQkF2Tm1CcEUsSSIsImZpbGUiOiJwYXJ0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgT0xFIGZyb20gXCIuL29sZVwiXG5cbi8qKlxuICogbmFtZTogQUJTT0xVVEUgcGF0aCBvZiBhIHBhcnQsIHdvcmQueG1sLCBwcHQvc2xpZGVzL3NsaWRlMS54bWxcbiAqIGZvbGRlcjphYnNvbHV0ZSBmb2xkZXIsIGVuZHMgd2l0aCBcIi9cIiBvciB0b3RhbGx5IGVtcHR5IFwiXCJcbiAqIHJlbE5hbWU6YWJzb2x1dGUgcGF0aCBvZiBhIHJlbGF0aW9uc2hpcCBwYXJ0XG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFBhcnR7XG5cdGNvbnN0cnVjdG9yKG5hbWUsZG9jKXtcblx0XHR0aGlzLm5hbWU9bmFtZVxuXHRcdHRoaXMuZG9jPWRvY1xuXG5cdFx0bGV0IGZvbGRlcj1cIlwiXG5cdFx0bGV0IHJlbE5hbWU9XCJfcmVscy9cIituYW1lK1wiLnJlbHNcIlxuXHRcdGxldCBpPW5hbWUubGFzdEluZGV4T2YoJy8nKVxuXG5cdFx0aWYoaSE9PS0xKXtcblx0XHRcdGZvbGRlcj1uYW1lLnN1YnN0cmluZygwLGkrMSlcblx0XHRcdHJlbE5hbWU9Zm9sZGVyK1wiX3JlbHMvXCIrbmFtZS5zdWJzdHJpbmcoaSsxKStcIi5yZWxzXCI7XG5cdFx0fVxuXG5cdFx0aWYoZG9jLnBhcnRzW3JlbE5hbWVdKXtcblx0XHRcdHRoaXMuZm9sZGVyPWZvbGRlclxuXHRcdFx0dGhpcy5yZWxOYW1lPXJlbE5hbWVcblx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLFwicmVsc1wiLHtcblx0XHRcdFx0Z2V0KCl7XG5cdFx0XHRcdFx0cmV0dXJuIHRoaXMuZG9jLmdldE9iamVjdFBhcnQodGhpcy5yZWxOYW1lKVxuXHRcdFx0XHR9XG5cdFx0XHR9KVxuXHRcdH1cblx0XHR0aGlzLl9pbml0KClcblx0fVxuXG5cdF9pbml0KCl7XG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsXCJjb250ZW50XCIse1xuXHRcdFx0Y29uZmlndXJhYmxlOnRydWUsXG5cdFx0XHRnZXQoKXtcblx0XHRcdFx0cmV0dXJuIHRoaXMuZG9jLmdldE9iamVjdFBhcnQodGhpcy5uYW1lKVxuXHRcdFx0fVxuXHRcdH0pXG5cdH1cblxuXHRub3JtYWxpemVQYXRoKHBhdGg9XCJcIil7XG5cdFx0aWYocGF0aC5zdGFydHNXaXRoKFwiL1wiKSlcblx0XHRcdHJldHVybiBwYXRoLnN1YnN0cigxKVxuXHRcdHJldHVybiB0aGlzLmZvbGRlcitwYXRoXG5cdH1cblxuXHRnZXRSZWxQYXJ0KGlkKXtcblx0XHR2YXIgcmVsPXRoaXMucmVscyhgUmVsYXRpb25zaGlwW0lkPVwiJHtpZH1cIl1gKVxuXHRcdHZhciB0YXJnZXQ9cmVsLmF0dHIoXCJUYXJnZXRcIilcblx0XHRyZXR1cm4gbmV3IFBhcnQodGhpcy5ub3JtYWxpemVQYXRoKHRhcmdldCksdGhpcy5kb2MpXG5cdH1cblxuXHRnZXRSZWxUYXJnZXQodHlwZSl7XG5cdFx0cmV0dXJuIHRoaXMucmVscyhgW1R5cGUkPVwiJHt0eXBlfVwiXWApLmF0dHIoXCJUYXJnZXRcIilcblx0fVxuXG5cdGdldFJlbE9iamVjdCh0YXJnZXQpe1xuXHRcdHJldHVybiB0aGlzLmRvYy5nZXRPYmplY3RQYXJ0KHRoaXMubm9ybWFsaXplUGF0aCh0YXJnZXQpKVxuXHR9XG5cblx0Z2V0UmVsKGlkKXtcblx0XHR2YXIgcmVsPXRoaXMucmVscyhgUmVsYXRpb25zaGlwW0lkPVwiJHtpZH1cIl1gKVxuXHRcdHZhciB0YXJnZXQ9cmVsLmF0dHIoXCJUYXJnZXRcIilcblx0XHRpZihyZWwuYXR0cihcIlRhcmdldE1vZGVcIik9PT0nRXh0ZXJuYWwnKVxuXHRcdFx0cmV0dXJuIHt1cmw6dGFyZ2V0fVxuXG5cdFx0c3dpdGNoKHJlbC5hdHRyKFwiVHlwZVwiKS5zcGxpdChcIi9cIikucG9wKCkpe1xuXHRcdGNhc2UgJ2ltYWdlJzpcblx0XHRcdGxldCB1cmw9dGhpcy5kb2MuZ2V0RGF0YVBhcnRBc1VybCh0aGlzLm5vcm1hbGl6ZVBhdGgodGFyZ2V0KSwgXCJpbWFnZS8qXCIpXG5cdFx0XHRsZXQgY3JjMzI9dGhpcy5kb2MuZ2V0UGFydENyYzMyKHRoaXMubm9ybWFsaXplUGF0aCh0YXJnZXQpKVxuXHRcdFx0cmV0dXJuIHt1cmwsY3JjMzJ9XG5cdFx0ZGVmYXVsdDpcblx0XHRcdGlmKHRhcmdldC5lbmRzV2l0aChcIi54bWxcIikpXG5cdFx0XHRcdHJldHVybiB0aGlzLmdldFJlbE9iamVjdCh0YXJnZXQpXG5cdFx0XHRlbHNlXG5cdFx0XHRcdHJldHVybiB0aGlzLmRvYy5nZXRQYXJ0KHRoaXMubm9ybWFsaXplUGF0aCh0YXJnZXQpKVxuXHRcdH1cblx0fVxuXG5cdF9uZXh0cklkKCl7XG5cdFx0cmV0dXJuIE1hdGgubWF4KC4uLnRoaXMucmVscygnUmVsYXRpb25zaGlwJykudG9BcnJheSgpLm1hcChhPT5wYXJzZUludChhLmF0dHJpYnMuSWQuc3Vic3RyaW5nKDMpKSkpKzFcblx0fVxuXG5cdGFkZCh0eXBlLHRhcmdldCxkYXRhKXtcblx0XHRjb25zdCBySWQ9YHJJZCR7dGhpcy5fbmV4dHJJZCgpfWBcblx0XHR0aGlzLnJlbHMoXCJSZWxhdGlvbnNoaXBzXCIpXG5cdFx0XHQuYXBwZW5kKGA8UmVsYXRpb25zaGlwIElkPVwiJHtySWR9XCIgdHlwZT1cIiR7dHlwZX1cIiB0YXJnZXQ9XCIke3RhcmdldH1cIi8+YClcblx0XHRjb25zdCBwYXJ0TmFtZT10aGlzLm5vcm1hbGl6ZVBhdGgodGFyZ2V0KVxuXHRcdHRoaXMuZG9jLnJhdy5maWxlKHBhcnROYW1lLCBkYXRhKVxuXHRcdHRoaXMuZG9jLnBhcnRzW3BhcnROYW1lXT10aGlzLmRvYy5yYXcuZmlsZShwYXJ0TmFtZSlcblx0XHRyZXR1cm4gcklkXG5cdH1cblxuXHRhZGRJbWFnZShkYXRhLCB7ZXh0LG1pbWV9PXtleHQ6XCJqcGdcIixtaW1lOlwiaW1hZ2UvanBnXCJ9KXtcblx0XHRjb25zdCB0eXBlPVwiaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL29mZmljZURvY3VtZW50LzIwMDYvcmVsYXRpb25zaGlwcy9pbWFnZVwiXG5cdFx0bGV0IGlkPWBySWQke3RoaXMuX25leHRySWQoKX1gXG5cblx0XHRsZXQgdGFyZ2V0TmFtZT1cIm1lZGlhL2ltYWdlXCIrKE1hdGgubWF4KDAsLi4udGhpcy5yZWxzKFwiUmVsYXRpb25zaGlwW1R5cGUkPSdpbWFnZSddXCIpLnRvQXJyYXkoKS5tYXAodD0+e1xuXHRcdFx0cmV0dXJuIHBhcnNlSW50KHQuYXR0cmlicy5UYXJnZXQubWF0Y2goL1xcZCtcXC4vKXx8WzBdKVxuXHRcdH0pKSsxKStcIi5cIitleHQ7XG5cblx0XHRsZXQgcGFydE5hbWU9dGhpcy5ub3JtYWxpemVQYXRoKHRhcmdldE5hbWUpXG5cdFx0dGhpcy5kb2MucmF3LmZpbGUocGFydE5hbWUsIGRhdGEpXG5cdFx0dGhpcy5kb2MucGFydHNbcGFydE5hbWVdPXRoaXMuZG9jLnJhdy5maWxlKHBhcnROYW1lKVxuXG5cdFx0dGhpcy5yZWxzKFwiUmVsYXRpb25zaGlwc1wiKVxuXHRcdFx0LmFwcGVuZChgPFJlbGF0aW9uc2hpcCBJZD1cIiR7aWR9XCIgVHlwZT1cIiR7dHlwZX1cIiBUYXJnZXQ9XCIke3RhcmdldE5hbWV9XCIvPmApXG5cblx0XHRjb25zdCBEZWZhdWx0VHlwZXM9dGhpcy5kb2MuZ2V0T2JqZWN0UGFydChcIltDb250ZW50X1R5cGVzXS54bWxcIikoYFR5cGVzYClcblx0XHRjb25zdCBleHRUeXBlPURlZmF1bHRUeXBlcy5maW5kKGA+RGVmYXVsdFtFeHRlbnNpb249JyR7ZXh0fSddYClcblx0XHRpZihleHRUeXBlLmxlbmd0aD09MCl7XG5cdFx0XHREZWZhdWx0VHlwZXMucHJlcGVuZChgPERlZmF1bHQgRXh0ZW5zaW9uPVwiJHtleHR9XCIgQ29udGVudFR5cGU9XCIke21pbWV9XCIvPmApXG5cdFx0fVxuXHRcdHJldHVybiBpZFxuXHR9XG5cblx0YWRkRXh0ZXJuYWxJbWFnZSh1cmwpe1xuXHRcdGNvbnN0IHR5cGU9XCJodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvb2ZmaWNlRG9jdW1lbnQvMjAwNi9yZWxhdGlvbnNoaXBzL2ltYWdlXCJcblxuXHRcdGxldCBpZD1gcklkJHt0aGlzLl9uZXh0cklkKCl9YFxuXG5cdFx0dGhpcy5yZWxzKFwiUmVsYXRpb25zaGlwc1wiKVxuXHRcdFx0LmFwcGVuZChgPFJlbGF0aW9uc2hpcCBJZD1cIiR7aWR9XCIgVHlwZT1cIiR7dHlwZX1cIiBUYXJnZXRNb2RlPVwiRXh0ZXJuYWxcIiBUYXJnZXQ9XCIke3VybH1cIi8+YClcblxuXHRcdHJldHVybiBpZFxuXHR9XG5cblx0YWRkQ2h1bmsoZGF0YSwgcmVsYXRpb25zaGlwVHlwZSwgY29udGVudFR5cGUsIGV4dCl7XG5cdFx0cmVsYXRpb25zaGlwVHlwZT1yZWxhdGlvbnNoaXBUeXBlfHxcImh0dHA6Ly9zY2hlbWFzLm9wZW54bWxmb3JtYXRzLm9yZy9vZmZpY2VEb2N1bWVudC8yMDA2L3JlbGF0aW9uc2hpcHMvYUZDaHVua1wiXG5cdFx0Y29udGVudFR5cGU9Y29udGVudFR5cGV8fHRoaXMuZG9jLmNvbnN0cnVjdG9yLm1pbWVcblx0XHRleHQ9ZXh0fHx0aGlzLmRvYy5jb25zdHJ1Y3Rvci5leHRcblxuXHRcdGxldCBpZD10aGlzLl9uZXh0cklkKClcblx0XHRsZXQgcklkPWBySWQke2lkfWBcblx0XHRsZXQgdGFyZ2V0TmFtZT1gY2h1bmsvY2h1bmske2lkfS4ke2V4dH1gXG5cblx0XHRsZXQgcGFydE5hbWU9dGhpcy5ub3JtYWxpemVQYXRoKHRhcmdldE5hbWUpXG5cdFx0dGhpcy5kb2MucmF3LmZpbGUocGFydE5hbWUsIGRhdGEpXG5cdFx0dGhpcy5kb2MucGFydHNbcGFydE5hbWVdPXRoaXMuZG9jLnJhdy5maWxlKHBhcnROYW1lKVxuXG5cdFx0dGhpcy5yZWxzKFwiUmVsYXRpb25zaGlwc1wiKVxuXHRcdFx0LmFwcGVuZChgPFJlbGF0aW9uc2hpcCBJZD1cIiR7cklkfVwiIFR5cGU9XCIke3JlbGF0aW9uc2hpcFR5cGV9XCIgVGFyZ2V0PVwiJHt0YXJnZXROYW1lfVwiLz5gKVxuXG5cdFx0dGhpcy5kb2MuY29udGVudFR5cGVzXG5cdFx0XHQuYXBwZW5kKGA8T3ZlcnJpZGUgUGFydE5hbWU9XCIvJHtwYXJ0TmFtZX1cIiBDb250ZW50VHlwZT1cIiR7Y29udGVudFR5cGV9XCIvPmApXG5cblx0XHRyZXR1cm4gcklkXG5cdH1cblxuXHRnZXRSZWxPbGVPYmplY3QocmlkKXtcblx0XHRsZXQgcmVsPXRoaXMucmVscyhgUmVsYXRpb25zaGlwW0lkPSR7cmlkfV1gKVxuXHRcdGxldCB0eXBlPXJlbC5hdHRyKFwiVHlwZVwiKVxuXHRcdGxldCB0YXJnZXROYW1lPXJlbC5hdHRyKFwiVGFyZ2V0XCIpXG5cdFx0bGV0IGRhdGE9dGhpcy5kb2MuZ2V0RGF0YVBhcnQodGhpcy5ub3JtYWxpemVQYXRoKHRhcmdldE5hbWUpKVxuXHRcdHN3aXRjaCh0eXBlLnNwbGl0KFwiL1wiKS5wb3AoKSl7XG5cdFx0XHRjYXNlIFwib2xlT2JqZWN0XCI6XG5cdFx0XHRcdHJldHVybiBPTEUucGFyc2UoZGF0YSlcblx0XHRcdGRlZmF1bHQ6XG5cdFx0XHRcdHJldHVybiBkYXRhXG5cdFx0fVxuXG5cdH1cblxuXHRyZW1vdmVSZWwoaWQpe1xuXHRcdGxldCByZWw9dGhpcy5yZWxzKGBSZWxhdGlvbnNoaXBbSWQ9XCIke2lkfVwiXWApXG5cdFx0aWYocmVsLmF0dHIoXCJUYXJnZXRNb2RlXCIpIT09XCJFeHRlcm5hbFwiKXtcblx0XHRcdGxldCBwYXJ0TmFtZT10aGlzLm5vcm1hbGl6ZVBhdGgocmVsLmF0dHIoXCJUYXJnZXRcIikpXG5cdFx0XHR0aGlzLmRvYy5jb250ZW50VHlwZXMuZmluZChgW1BhcnROYW1lPScvJHtwYXJ0TmFtZX0nXWApLnJlbW92ZSgpXG5cdFx0XHR0aGlzLmRvYy5yYXcucmVtb3ZlKHBhcnROYW1lKVxuXHRcdFx0ZGVsZXRlIHRoaXMuZG9jLnBhcnRzW3BhcnROYW1lXVxuXHRcdH1cblx0XHRyZWwucmVtb3ZlKClcblx0fVxuXG5cdHJlbmRlck5vZGUobm9kZSwgY3JlYXRlRWxlbWVudD0odHlwZSxwcm9wcyxjaGlsZHJlbik9Pnt0eXBlLHByb3BzLGNoaWxkcmVufSxpZGVudGlmeT1ub2RlPT5ub2RlLm5hbWUuc3BsaXQoXCI6XCIpLnBvcCgpLCBleHRyYSl7XG5cdFx0bGV0IHtuYW1lOnRhZ05hbWUsIGNoaWxkcmVuLGlkLCBwYXJlbnR9PW5vZGVcblx0XHRpZihub2RlLnR5cGU9PVwidGV4dFwiKXtcblx0XHRcdHJldHVybiBub2RlLmRhdGFcblx0XHR9XG5cblx0XHRsZXQgdHlwZT10YWdOYW1lXG5cdFx0bGV0IHByb3BzPXt9XG5cblx0XHRpZihpZGVudGlmeSl7XG5cdFx0XHRsZXQgbW9kZWw9aWRlbnRpZnkobm9kZSx0aGlzKVxuXHRcdFx0aWYoIW1vZGVsKVxuXHRcdFx0XHRyZXR1cm4gbnVsbFxuXG5cdFx0XHRpZih0eXBlb2YobW9kZWwpPT1cInN0cmluZ1wiKXtcblx0XHRcdFx0dHlwZT1tb2RlbFxuXHRcdFx0fWVsc2V7XG5cdFx0XHRcdGxldCBjb250ZW50O1xuXHRcdFx0XHQoe3R5cGUsIGNoaWxkcmVuOmNvbnRlbnQsIC4uLnByb3BzfT1tb2RlbCk7XG5cdFx0XHRcdGlmKGNvbnRlbnQhPT11bmRlZmluZWQpXG5cdFx0XHRcdFx0Y2hpbGRyZW49Y29udGVudFxuXHRcdFx0fVxuXHRcdH1cblx0XHRwcm9wcy5rZXk9aWRcblx0XHRwcm9wcy5ub2RlPW5vZGVcblx0XHRwcm9wcy50eXBlPXR5cGVcblxuXHRcdGlmKGV4dHJhKVxuXHRcdFx0T2JqZWN0LmFzc2lnbihwcm9wcyxleHRyYSlcblxuXHRcdGxldCBjaGlsZEVsZW1lbnRzPWNoaWxkcmVuXG5cdFx0aWYoQXJyYXkuaXNBcnJheShjaGlsZHJlbikpe1xuXHRcdFx0aWYoY2hpbGRyZW4ubGVuZ3RoKXtcblx0XHRcdFx0Y2hpbGRFbGVtZW50cz1jaGlsZHJlbi5tYXAoYT0+YSA/IHRoaXMucmVuZGVyTm9kZShhLGNyZWF0ZUVsZW1lbnQsaWRlbnRpZnkpIDogbnVsbCkuZmlsdGVyKGE9PiEhYSlcblx0XHRcdH1cblx0XHR9XG5cblx0XHRyZXR1cm4gY3JlYXRlRWxlbWVudChcblx0XHRcdFx0dHlwZSxcblx0XHRcdFx0cHJvcHMsXG5cdFx0XHRcdGNoaWxkRWxlbWVudHNcblx0XHRcdClcblx0fVxuXG5cdCQobm9kZSl7XG5cdFx0cmV0dXJuIHRoaXMuZG9jLiQobm9kZSlcblx0fVxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcGVueG1sL3BhcnQuanMiXSwibmFtZXMiOlsiT0xFIiwiUGFydCIsIm5hbWUiLCJkb2MiLCJmb2xkZXIiLCJyZWxOYW1lIiwiaSIsImxhc3RJbmRleE9mIiwic3Vic3RyaW5nIiwicGFydHMiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldCIsImdldE9iamVjdFBhcnQiLCJfaW5pdCIsImNvbmZpZ3VyYWJsZSIsInN1cHBvcnRlZCIsInJlbHMiLCJlYWNoIiwicmVsIiwiJCIsInR5cGUiLCJhdHRyIiwic3BsaXQiLCJwb3AiLCJpbmRleE9mIiwidGFyZ2V0IiwiZ2V0UmVsT2JqZWN0IiwicGF0aCIsInN0YXJ0c1dpdGgiLCJzdWJzdHIiLCJpZCIsIm5vcm1hbGl6ZVBhdGgiLCJ1cmwiLCJnZXREYXRhUGFydEFzVXJsIiwiY3JjMzIiLCJnZXRQYXJ0Q3JjMzIiLCJlbmRzV2l0aCIsImdldFBhcnQiLCJNYXRoIiwibWF4IiwidG9BcnJheSIsIm1hcCIsInBhcnNlSW50IiwiYSIsImF0dHJpYnMiLCJJZCIsImRhdGEiLCJySWQiLCJfbmV4dHJJZCIsImFwcGVuZCIsInBhcnROYW1lIiwicmF3IiwiZmlsZSIsImV4dCIsIm1pbWUiLCJ0YXJnZXROYW1lIiwidCIsIlRhcmdldCIsIm1hdGNoIiwiRGVmYXVsdFR5cGVzIiwiZXh0VHlwZSIsImZpbmQiLCJsZW5ndGgiLCJwcmVwZW5kIiwicmVsYXRpb25zaGlwVHlwZSIsImNvbnRlbnRUeXBlIiwiY29uc3RydWN0b3IiLCJjb250ZW50VHlwZXMiLCJyaWQiLCJnZXREYXRhUGFydCIsInBhcnNlIiwicmVtb3ZlIiwibm9kZSIsImNyZWF0ZUVsZW1lbnQiLCJwcm9wcyIsImNoaWxkcmVuIiwiaWRlbnRpZnkiLCJleHRyYSIsInRhZ05hbWUiLCJwYXJlbnQiLCJtb2RlbCIsImNvbnRlbnQiLCJ1bmRlZmluZWQiLCJrZXkiLCJhc3NpZ24iLCJjaGlsZEVsZW1lbnRzIiwiQXJyYXkiLCJpc0Fy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Ozs7b0JBRUNiLEksRUFBSztBQUNOLFVBQU8sS0FBS3RFLEdBQUwsQ0FBU2lCLENBQVQsQ0FBV3FELElBQVgsQ0FBUDtBQUNBOzs7Ozs7a0JBMU9tQnhFLEk7O0lBNk9mMEYsUTs7Ozs7Ozs7Ozs7MEJBQ0U7QUFDTjtBQUVBOzs7O0VBSnFCMUYsSSIsImZpbGUiOiJwYXJ0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgT0xFIGZyb20gXCIuL29sZVwiXG5cbi8qKlxuICogbmFtZTogQUJTT0xVVEUgcGF0aCBvZiBhIHBhcnQsIHdvcmQueG1sLCBwcHQvc2xpZGVzL3NsaWRlMS54bWxcbiAqIGZvbGRlcjphYnNvbHV0ZSBmb2xkZXIsIGVuZHMgd2l0aCBcIi9cIiBvciB0b3RhbGx5IGVtcHR5IFwiXCJcbiAqIHJlbE5hbWU6YWJzb2x1dGUgcGF0aCBvZiBhIHJlbGF0aW9uc2hpcCBwYXJ0XG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFBhcnR7XG5cdGNvbnN0cnVjdG9yKG5hbWUsZG9jKXtcblx0XHR0aGlzLm5hbWU9bmFtZVxuXHRcdHRoaXMuZG9jPWRvY1xuXG5cdFx0bGV0IGZvbGRlcj1cIlwiXG5cdFx0bGV0IHJlbE5hbWU9XCJfcmVscy9cIituYW1lK1wiLnJlbHNcIlxuXHRcdGxldCBpPW5hbWUubGFzdEluZGV4T2YoJy8nKVxuXG5cdFx0aWYoaSE9PS0xKXtcblx0XHRcdGZvbGRlcj1uYW1lLnN1YnN0cmluZygwLGkrMSlcblx0XHRcdHJlbE5hbWU9Zm9sZGVyK1wiX3JlbHMvXCIrbmFtZS5zdWJzdHJpbmcoaSsxKStcIi5yZWxzXCI7XG5cdFx0fVxuXG5cdFx0aWYoZG9jLnBhcnRzW3JlbE5hbWVdKXtcblx0XHRcdHRoaXMuZm9sZGVyPWZvbGRlclxuXHRcdFx0dGhpcy5yZWxOYW1lPXJlbE5hbWVcblx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLFwicmVsc1wiLHtcblx0XHRcdFx0Z2V0KCl7XG5cdFx0XHRcdFx0cmV0dXJuIHRoaXMuZG9jLmdldE9iamVjdFBhcnQodGhpcy5yZWxOYW1lKVxuXHRcdFx0XHR9XG5cdFx0XHR9KVxuXHRcdH1cblx0XHR0aGlzLl9pbml0KClcblx0fVxuXG5cdF9pbml0KCl7XG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsXCJjb250ZW50XCIse1xuXHRcdFx0Y29uZmlndXJhYmxlOnRydWUsXG5cdFx0XHRnZXQoKXtcblx0XHRcdFx0cmV0dXJuIHRoaXMuZG9jLmdldE9iamVjdFBhcnQodGhpcy5uYW1lKVxuXHRcdFx0fVxuXHRcdH0pXG5cdH1cblxuXHRfYXNzaWduUmVsKHN1cHBvcnRlZD10cnVlKXtcblx0XHR0aGlzLnJlbHMoYFJlbGF0aW9uc2hpcFtUYXJnZXQkPVwiLnhtbFwiXWApLmVhY2goKGkscmVsKT0+e1xuXHRcdFx0bGV0ICQ9dGhpcy5yZWxzKHJlbClcblx0XHRcdGxldCB0eXBlPSQuYXR0cihcIlR5cGVcIikuc3BsaXQoXCIvXCIpLnBvcCgpXG5cdFx0XHRpZihzdXBwb3J0ZWQ9PT10cnVlIHx8IHN1cHBvcnRlZC5pbmRleE9mKHR5cGUpIT0tMSl7XG5cdFx0XHRcdGxldCB0YXJnZXQ9JC5hdHRyKFwiVGFyZ2V0XCIpXG5cdFx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLHR5cGUse1xuICAgICAgICAgICAgICAgICAgICBjb25maWd1cmFibGU6dHJ1ZSxcblx0XHRcdFx0XHRnZXQoKXtcblx0XHRcdFx0XHRcdHJldHVybiB0aGlzLmdldFJlbE9iamVjdCh0YXJnZXQpXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KVxuXHRcdFx0fVxuXHRcdH0pXG4gICAgfVxuXG5cdG5vcm1hbGl6ZVBhdGgocGF0aD1cIlwiKXtcblx0XHRpZihwYXRoLnN0YXJ0c1dpdGgoXCIvXCIpKVxuXHRcdFx0cmV0dXJuIHBhdGguc3Vic3RyKDEpXG5cdFx0cmV0dXJuIHRoaXMuZm9sZGVyK3BhdGhcblx0fVxuXG5cdGdldFJlbFBhcnQoaWQpe1xuXHRcdHZhciByZWw9dGhpcy5yZWxzKGBSZWxhdGlvbnNoaXBbSWQ9XCIke2lkfVwiXSxSZWxhdGlvbnNoaXBbVHlwZSQ9XCIke2lkfVwiXSxSZWxhdGlvbnNoaXBbVGFyZ2V0JD1cIiR7aWR9XCJdYClcblx0XHR2YXIgdGFyZ2V0PXJlbC5hdHRyKFwiVGFyZ2V0XCIpXG5cdFx0cmV0dXJuIG5ldyBQYXJ0KHRoaXMubm9ybWFsaXplUGF0aCh0YXJnZXQpLHRoaXMuZG9jKVxuXHR9XG5cblx0Z2V0UmVsVGFyZ2V0KHR5cGUpe1xuXHRcdHJldHVybiB0aGlzLnJlbHMoYFtUeXBlJD1cIiR7dHlwZX1cIl1gKS5hdHRyKFwiVGFyZ2V0XCIpXG5cdH1cblxuXHRnZXRSZWxPYmplY3QodGFyZ2V0KXtcblx0XHRyZXR1cm4gdGhpcy5kb2MuZ2V0T2JqZWN0UGFydCh0aGlzLm5vcm1hbGl6ZVBhdGgodGFyZ2V0KSlcblx0fVxuXG5cdGdldFJlbChpZCl7XG5cdFx0dmFyIHJlbD10aGlzLnJlbHMoYFJlbGF0aW9uc2hpcFtJZD1cIiR7aWR9XCJdYClcblx0XHR2YXIgdGFyZ2V0PXJlbC5hdHRyKFwiVGFyZ2V0XCIpXG5cdFx0aWYoIXRhcmdldCl7XG5cdFx0XHRyZXR1cm4gXG5cdFx0fVxuXHRcdGlmKHJlbC5hdHRyKFwiVGFyZ2V0TW9kZVwiKT09PSdFeHRlcm5hbCcpXG5cdFx0XHRyZXR1cm4ge3VybDp0YXJnZXR9XG5cblx0XHRzd2l0Y2gocmVsLmF0dHIoXCJUeXBlXCIpLnNwbGl0KFwiL1wiKS5wb3AoKSl7XG5cdFx0Y2FzZSAnaW1hZ2UnOlxuXHRcdFx0bGV0IHVybD10aGlzLmRvYy5nZXREYXRhUGFydEFzVXJsKHRoaXMubm9ybWFsaXplUGF0aCh0YXJnZXQpLCBcImltYWdlLypcIilcblx0XHRcdGxldCBjcmMzMj10aGlzLmRvYy5nZXRQYXJ0Q3JjMzIodGhpcy5ub3JtYWxpemVQYXRoKHRhcmdldCkpXG5cdFx0XHRyZXR1cm4ge3VybCxjcmMzMn1cblx0XHRkZWZhdWx0OlxuXHRcdFx0aWYodGFyZ2V0LmVuZHNXaXRoKFwiLnhtbFwiKSlcblx0XHRcdFx0cmV0dXJuIHRoaXMuZ2V0UmVsT2JqZWN0KHRhcmdldClcblx0XHRcdGVsc2Vcblx0XHRcdFx0cmV0dXJuIHRoaXMuZG9jLmdldFBhcnQodGhpcy5ub3JtYWxpemVQYXRoKHRhcmdldCkpXG5cdFx0fVxuXHR9XG5cblx0X25leHRySWQoKXtcblx0XHRyZXR1cm4gTWF0aC5tYXgoLi4udGhpcy5yZWxzKCdSZWxhdGlvbnNoaXAnKS50b0FycmF5KCkubWFwKGE9PnBhcnNlSW50KGEuYXR0cmlicy5JZC5zdWJzdHJpbmcoMykpKSkrMVxuXHR9XG5cblx0YWRkKHR5cGUsdGFyZ2V0LGRhdGEpe1xuXHRcdGNvbnN0IHJJZD1gcklkJHt0aGlzLl9uZXh0cklkKCl9YFxuXHRcdHRoaXMucmVscyhcIlJlbGF0aW9uc2hpcHNcIilcblx0XHRcdC5hcHBlbmQoYDxSZWxhdGlvbnNoaXAgSWQ9XCIke3JJZH1cIiB0eXBlPVwiJHt0eXBlfVwiIHRhcmdldD1cIiR7dGFyZ2V0fVwiLz5gKVxuXHRcdGNvbnN0IHBhcnROYW1lPXRoaXMubm9ybWFsaXplUGF0aCh0YXJnZXQpXG5cdFx0dGhpcy5kb2MucmF3LmZpbGUocGFydE5hbWUsIGRhdGEpXG5cdFx0dGhpcy5kb2MucGFydHNbcGFydE5hbWVdPXRoaXMuZG9jLnJhdy5maWxlKHBhcnROYW1lKVxuXHRcdHJldHVybiBySWRcblx0fVxuXG5cdGFkZEltYWdlKGRhdGEsIHtleHQsbWltZX09e2V4dDpcImpwZ1wiLG1pbWU6XCJpbWFnZS9qcGdcIn0pe1xuXHRcdGNvbnN0IHR5cGU9XCJodHRwOi8vc2NoZW1hcy5vcGVueG1sZm9ybWF0cy5vcmcvb2ZmaWNlRG9jdW1lbnQvMjAwNi9yZWxhdGlvbnNoaXBzL2ltYWdlXCJcblx0XHRsZXQgaWQ9YHJJZCR7dGhpcy5fbmV4dHJJZCgpfWBcblxuXHRcdGxldCB0YXJnZXROYW1lPVwibWVkaWEvaW1hZ2VcIisoTWF0aC5tYXgoMCwuLi50aGlzLnJlbHMoXCJSZWxhdGlvbnNoaXBbVHlwZSQ9J2ltYWdlJ11cIikudG9BcnJheSgpLm1hcCh0PT57XG5cdFx0XHRyZXR1cm4gcGFyc2VJbnQodC5hdHRyaWJzLlRhcmdldC5tYXRjaCgvXFxkK1xcLi8pfHxbMF0pXG5cdFx0fSkpKzEpK1wiLlwiK2V4dDtcblxuXHRcdGxldCBwYXJ0TmFtZT10aGlzLm5vcm1hbGl6ZVBhdGgodGFyZ2V0TmFtZSlcblx0XHR0aGlzLmRvYy5yYXcuZmlsZShwYXJ0TmFtZSwgZGF0YSlcblx0XHR0aGlzLmRvYy5wYXJ0c1twYXJ0TmFtZV09dGhpcy5kb2MucmF3LmZpbGUocGFydE5hbWUpXG5cblx0XHR0aGlzLnJlbHMoXCJSZWxhdGlvbnNoaXBzXCIpXG5cdFx0XHQuYXBwZW5kKGA8UmVsYXRpb25zaGlwIElkPVwiJHtpZH1cIiBUeXBlPVwiJHt0eXBlfVwiIFRhcmdldD1cIiR7dGFyZ2V0TmFtZX1cIi8+YClcblxuXHRcdGNvbnN0IERlZmF1bHRUeXBlcz10aGlzLmRvYy5nZXRPYmplY3RQYXJ0KFwiW0NvbnRlbnRfVHlwZXNdLnhtbFwiKShgVHlwZXNgKVxuXHRcdGNvbnN0IGV4dFR5cGU9RGVmYXVsdFR5cGVzLmZpbmQoYD5EZWZhdWx0W0V4dGVuc2lvbj0nJHtleHR9J11gKVxuXHRcdGlmKGV4dFR5cGUubGVuZ3RoPT0wKXtcblx0XHRcdERlZmF1bHRUeXBlcy5wcmVwZW5kKGA8RGVmYXVsdCBFeHRlbnNpb249XCIke2V4dH1cIiBDb250ZW50VHlwZT1cIiR7bWltZX1cIi8+YClcblx0XHR9XG5cdFx0cmV0dXJuIGlkXG5cdH1cblxuXHRhZGRFeHRlcm5hbEltYWdlKHVybCl7XG5cdFx0Y29uc3QgdHlwZT1cImh0dHA6Ly9zY2hlbWFzLm9wZW54bWxmb3JtYXRzLm9yZy9vZmZpY2VEb2N1bWVudC8yMDA2L3JlbGF0aW9uc2hpcHMvaW1hZ2VcIlxuXG5cdFx0bGV0IGlkPWBySWQke3RoaXMuX25leHRySWQoKX1gXG5cblx0XHR0aGlzLnJlbHMoXCJSZWxhdGlvbnNoaXBzXCIpXG5cdFx0XHQuYXBwZW5kKGA8UmVsYXRpb25zaGlwIElkPVwiJHtpZH1cIiBUeXBlPVwiJHt0eXBlfVwiIFRhcmdldE1vZGU9XCJFeHRlcm5hbFwiIFRhcmdldD1cIiR7dXJsfVwiLz5gKVxuXG5cdFx0cmV0dXJuIGlkXG5cdH1cblxuXHRhZGRDaHVuayhkYXRhLCByZWxhdGlvbnNoaXBUeXBlLCBjb250ZW50VHlwZSwgZXh0KXtcblx0XHRyZWxhdGlvbnNoaXBUeXBlPXJlbGF0aW9uc2hpcFR5cGV8fFwiaHR0cDovL3NjaGVtYXMub3BlbnhtbGZvcm1hdHMub3JnL29mZmljZURvY3VtZW50LzIwMDYvcmVsYXRpb25zaGlwcy9hRkNodW5rXCJcblx0XHRjb250ZW50VHlwZT1jb250ZW50VHlwZXx8dGhpcy5kb2MuY29uc3RydWN0b3IubWltZVxuXHRcdGV4dD1leHR8fHRoaXMuZG9jLmNvbnN0cnVjdG9yLmV4dFxuXG5cdFx0bGV0IGlkPXRoaXMuX25leHRySWQoKVxuXHRcdGxldCBySWQ9YHJJZCR7aWR9YFxuXHRcdGxldCB0YXJnZXROYW1lPWBjaHVuay9jaHVuayR7aWR9LiR7ZXh0fWBcblxuXHRcdGxldCBwYXJ0TmFtZT10aGlzLm5vcm1hbGl6ZVBhdGgodGFyZ2V0TmFtZSlcblx0XHR0aGlzLmRvYy5yYXcuZmlsZShwYXJ0TmFtZSwgZGF0YSlcblx0XHR0aGlzLmRvYy5wYXJ0c1twYXJ0TmFtZV09dGhpcy5kb2MucmF3LmZpbGUocGFydE5hbWUpXG5cblx0XHR0aGlzLnJlbHMoXCJSZWxhdGlvbnNoaXBzXCIpXG5cdFx0XHQuYXBwZW5kKGA8UmVsYXRpb25zaGlwIElkPVwiJHtySWR9XCIgVHlwZT1cIiR7cmVsYXRpb25zaGlwVHlwZX1cIiBUYXJnZXQ9XCIke3RhcmdldE5hbWV9XCIvPmApXG5cblx0XHR0aGlzLmRvYy5jb250ZW50VHlwZXNcblx0XHRcdC5hcHBlbmQoYDxPdmVycmlkZSBQYXJ0TmFtZT1cIi8ke3BhcnROYW1lfVwiIENvbnRlbnRUeXBlPVwiJHtjb250ZW50VHlwZX1cIi8+YClcblxuXHRcdHJldHVybiBySWRcblx0fVxuXG5cdGdldFJlbE9sZU9iamVjdChyaWQpe1xuXHRcdGxldCByZWw9dGhpcy5yZWxzKGBSZWxhdGlvbnNoaXBbSWQ9JHtyaWR9XWApXG5cdFx0bGV0IHR5cGU9cmVsLmF0dHIoXCJUeXBlXCIpXG5cdFx0bGV0IHRhcmdldE5hbWU9cmVsLmF0dHIoXCJUYXJnZXRcIilcblx0XHRsZXQgZGF0YT10aGlzLmRvYy5nZXREYXRhUGFydCh0aGlzLm5vcm1hbGl6ZVBhdGgodGFyZ2V0TmFtZSkpXG5cdFx0c3dpdGNoKHR5cGUuc3BsaXQoXCIvXCIpLnBvcCgpKXtcblx0XHRcdGNhc2UgXCJvbGVPYmplY3RcIjpcblx0XHRcdFx0cmV0dXJuIE9MRS5wYXJzZShkYXRhKVxuXHRcdFx0ZGVmYXVsdDpcblx0XHRcdFx0cmV0dXJuIGRhdGFcblx0XHR9XG5cblx0fVxuXG5cdHJlbW92ZVJlbChpZCl7XG5cdFx0bGV0IHJlbD10aGlzLnJlbHMoYFJlbGF0aW9uc2hpcFtJZD1cIiR7aWR9XCJdYClcblx0XHRpZihyZWwuYXR0cihcIlRhcmdldE1vZGVcIikhPT1cIkV4dGVybmFsXCIpe1xuXHRcdFx0bGV0IHBhcnROYW1lPXRoaXMubm9ybWFsaXplUGF0aChyZWwuYXR0cihcIlRhcmdldFwiKSlcblx0XHRcdHRoaXMuZG9jLmNvbnRlbnRUeXBlcy5maW5kKGBbUGFydE5hbWU9Jy8ke3BhcnROYW1lfSddYCkucmVtb3ZlKClcblx0XHRcdHRoaXMuZG9jLnJhdy5yZW1vdmUocGFydE5hbWUpXG5cdFx0XHRkZWxldGUgdGhpcy5kb2MucGFydHNbcGFydE5hbWVdXG5cdFx0fVxuXHRcdHJlbC5yZW1vdmUoKVxuXHR9XG5cblx0cmVuZGVyTm9kZShub2RlLCBjcmVhdGVFbGVtZW50PSh0eXBlLHByb3BzLGNoaWxkcmVuKT0+e3R5cGUscHJvcHMsY2hpbGRyZW59LGlkZW50aWZ5PW5vZGU9Pm5vZGUubmFtZS5zcGxpdChcIjpcIikucG9wKCksIGV4dHJhKXtcblx0XHRsZXQge25hbWU6dGFnTmFtZSwgY2hpbGRyZW4saWQsIHBhcmVudH09bm9kZVxuXHRcdGlmKG5vZGUudHlwZT09XCJ0ZXh0XCIpe1xuXHRcdFx0cmV0dXJuIG5vZGUuZGF0YVxuXHRcdH1cblxuXHRcdGxldCB0eXBlPXRhZ05hbWVcblx0XHRsZXQgcHJvcHM9e31cblxuXHRcdGlmKGlkZW50aWZ5KXtcblx0XHRcdGxldCBtb2RlbD1pZGVudGlmeShub2RlLHRoaXMpXG5cdFx0XHRpZighbW9kZWwpXG5cdFx0XHRcdHJldHVybiBudWxsXG5cblx0XHRcdGlmKHR5cGVvZihtb2RlbCk9PVwic3RyaW5nXCIpe1xuXHRcdFx0XHR0eXBlPW1vZGVsXG5cdFx0XHR9ZWxzZXtcblx0XHRcdFx0bGV0IGNvbnRlbnQ7XG5cdFx0XHRcdCh7dHlwZSwgY2hpbGRyZW46Y29udGVudCwgLi4ucHJvcHN9PW1vZGVsKTtcblx0XHRcdFx0aWYoY29udGVudCE9PXVuZGVmaW5lZClcblx0XHRcdFx0XHRjaGlsZHJlbj1jb250ZW50XG5cdFx0XHR9XG5cdFx0fVxuXHRcdHByb3BzLmtleT1pZFxuXHRcdHByb3BzLm5vZGU9bm9kZVxuXHRcdHByb3BzLnR5cGU9dHlwZVxuXG5cdFx0aWYoZXh0cmEpXG5cdFx0XHRPYmplY3QuYXNzaWduKHByb3BzLGV4dHJhKVxuXG5cdFx0bGV0IGNoaWxkRWxlbWVudHM9Y2hpbGRyZW5cblx0XHRpZihBcnJheS5pc0FycmF5KGNoaWxkcmVuKSl7XG5cdFx0XHRpZihjaGlsZHJlbi5sZW5ndGgpe1xuXHRcdFx0XHRjaGlsZEVsZW1lbnRzPWNoaWxkcmVuLm1hcChhPT5hID8gdGhpcy5yZW5kZXJOb2RlKGEsY3JlYXRlRWxlbWVudCxpZGVudGlmeSkgOiBudWxsKS5maWx0ZXIoYT0+ISFhKVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHJldHVybiBjcmVhdGVFbGVtZW50KFxuXHRcdFx0XHR0eXBlLFxuXHRcdFx0XHRwcm9wcyxcblx0XHRcdFx0Y2hpbGRFbGVtZW50c1xuXHRcdFx0KVxuXHR9XG5cblx0JChub2RlKXtcblx0XHRyZXR1cm4gdGhpcy5kb2MuJChub2RlKVxuXHR9XG59XG5cbmNsYXNzIFJlbHNQYXJ0IGV4dGVuZHMgUGFydHtcblx0X2luaXQoKXtcblx0XHRzdXBlci5faW5pdCgpXG5cblx0fVxufVxuIl19 \ No newline at end of file diff --git a/lib/openxml/pptx/document.js b/lib/openxml/pptx/document.js index 777fa08..5bb5fe2 100644 --- a/lib/openxml/pptx/document.js +++ b/lib/openxml/pptx/document.js @@ -37,4 +37,4 @@ _class.mime = "application/vnd.openxmlformats-officedocument.presentationml.pres _class.OfficeDocument = _officeDocument2.default; exports.default = _class; module.exports = exports['default']; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL3BwdHgvZG9jdW1lbnQuanMiXSwibmFtZXMiOlsiQmFzZSIsImV4dCIsIm1pbWUiLCJPZmZpY2VEb2N1bWVudCJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7Ozs7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUU2QkEsa0I7O09BQ3JCQyxHLEdBQUksTTtPQUVKQyxJLEdBQUssMkU7T0FFTEMsYyxHQUFlQSx3QiIsImZpbGUiOiJkb2N1bWVudC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBCYXNlIGZyb20gXCIuLi9kb2N1bWVudFwiXG5pbXBvcnQgT2ZmaWNlRG9jdW1lbnQgZnJvbSBcIi4vb2ZmaWNlRG9jdW1lbnRcIlxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBleHRlbmRzIEJhc2V7XG5cdHN0YXRpYyBleHQ9XCJwcHR4XCJcblxuXHRzdGF0aWMgbWltZT1cImFwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5wcmVzZW50YXRpb25tbC5wcmVzZW50YXRpb25cIlxuXG5cdHN0YXRpYyBPZmZpY2VEb2N1bWVudD1PZmZpY2VEb2N1bWVudFxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL3BwdHgvZG9jdW1lbnQuanMiXSwibmFtZXMiOlsiZXh0IiwibWltZSIsIk9mZmljZURvY3VtZW50Il0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTs7OztBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FHUUEsRyxHQUFJLE07T0FFSkMsSSxHQUFLLDJFO09BRUxDLGMiLCJmaWxlIjoiZG9jdW1lbnQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmFzZSBmcm9tIFwiLi4vZG9jdW1lbnRcIlxuaW1wb3J0IE9mZmljZURvY3VtZW50IGZyb20gXCIuL29mZmljZURvY3VtZW50XCJcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgZXh0ZW5kcyBCYXNle1xuXHRzdGF0aWMgZXh0PVwicHB0eFwiXG5cblx0c3RhdGljIG1pbWU9XCJhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQucHJlc2VudGF0aW9ubWwucHJlc2VudGF0aW9uXCJcblxuXHRzdGF0aWMgT2ZmaWNlRG9jdW1lbnQ9T2ZmaWNlRG9jdW1lbnRcbn1cbiJdfQ== \ No newline at end of file diff --git a/lib/openxml/pptx/officeDocument.js b/lib/openxml/pptx/officeDocument.js index 6f8673a..0d1c6e3 100644 --- a/lib/openxml/pptx/officeDocument.js +++ b/lib/openxml/pptx/officeDocument.js @@ -6,6 +6,8 @@ Object.defineProperty(exports, "__esModule", { var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); var _get = function get(object, property, receiver) { if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { return get(parent, property, receiver); } } else if ("value" in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } }; @@ -57,6 +59,24 @@ var OfficeDocument = function (_Base) { } return this.renderNode(this.content("p\\:presentation").get(0), createElement, identify); } + }, { + key: "parse", + value: function parse(domHandler) { + var identify = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.constructor.identify.bind(this.constructor); + + var createElement = domHandler.createElement.bind(domHandler); + function _identify() { + var model = identify.apply(undefined, arguments); + if (model && (typeof model === "undefined" ? "undefined" : _typeof(model)) == "object") { + domHandler.emit.apply(domHandler, ["*", model].concat(Array.prototype.slice.call(arguments))); + domHandler.emit.apply(domHandler, [model.type, model].concat(Array.prototype.slice.call(arguments))); + if (domHandler["on" + model.type]) domHandler["on" + model.type].apply(domHandler, [model].concat(Array.prototype.slice.call(arguments))); + } + return model; + } + + return this.render(createElement, _identify); + } }, { key: "slide", value: function slide(_ref) { @@ -370,4 +390,4 @@ OfficeDocument.identities = { }; exports.default = OfficeDocument; module.exports = exports['default']; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL3BwdHgvb2ZmaWNlRG9jdW1lbnQuanMiXSwibmFtZXMiOlsiT2ZmaWNlRG9jdW1lbnQiLCJfYXNzaWduUmVsIiwic3BsaXQiLCJjcmVhdGVFbGVtZW50IiwiaWRlbnRpZnkiLCJjb25zdHJ1Y3RvciIsImJpbmQiLCJ0YWJsZVN0eWxlcyIsInJlbmRlck5vZGUiLCJyb290IiwiY2hpbGRyZW4iLCJnZXQiLCJjb250ZW50IiwiaWQiLCJyaWQiLCJnZXRSZWwiLCJzbGlkZSIsImFyZ3VtZW50cyIsIndYbWxMYXlvdXRJZEluTWFzdGVyIiwibWFzdGVyUm9vdCIsIiQiLCJtYXN0ZXJQYXJ0TmFtZSIsImF0dHJpYnMiLCJwYXJ0IiwiZG9jIiwiZ2V0UmVsT2JqZWN0IiwiQmFzZSIsImlkZW50aXRpZXMiLCJwcmVzZW50YXRpb24iLCJ3WG1sIiwib2ZmaWNlRG9jdW1lbnQiLCJ0b0FycmF5Iiwib3JkZXJzIiwic29ydCIsImEiLCJiIiwibmFtZSIsInN6IiwiY3giLCJjeSIsIndpZHRoIiwiZW11MlB4IiwiaGVpZ2h0IiwicHJvcHMiLCJfX2ZpbHRlciIsInNsZFN6Iiwibm90ZXNTeiIsInR5cGUiLCJzbGRNYXN0ZXJJZCIsIm1hc3RlciIsIiRtYXN0ZXIiLCJzbGRJZCIsIiRzbGlkZSIsInNsaWRlUGFydCIsImdldFJlbFBhcnQiLCJsYXlvdXRUYXJnZXQiLCJub3JtYWxpemVQYXRoIiwiZ2V0UmVsVGFyZ2V0IiwibGF5b3V0UGFydCIsIlBhcnQiLCJtYXN0ZXJUYXJnZXQiLCJsYXlvdXQiLCJub3Rlc01hc3RlcklkIiwibm90ZXNNYXN0ZXIiLCJoYW5kb3V0TWFzdGVySWQiLCJoYW5kb3V0TWFzdGVyIiwic2xkTGF5b3V0SWQiLCIkbGF5b3V0Iiwic3BUcmVlIiwidGlkeSIsImdycFNwUHIiLCJudkdycFNwUHIiLCJjTnZQciIsImNOdlNwUHIiLCJudlByIiwib3RoZXJzIiwicGljIiwic3BQciIsIm52UGljUHIiLCJzcCIsImNvbW1vblByb3BzIiwibmFtZXMiLCJzcExvY2tzIiwicGgiLCJpZHgiLCJudlNwUHIiLCJ0eEJvZHkiLCJ0ZXh0U3R5bGUiLCJsblNwY1JlZHVjdGlvbiIsInBhcnNlSW50IiwidiIsImZvbnRTY2FsZSIsImxzdFN0eWxlIiwiYm9keVByIiwicCIsInN0eWxlIiwiZGVmYXVsdFN0eWxlIiwibHZsIiwiciIsImNoYXJ0IiwicmVsSWRzIiwiZ3JhcGhpY0ZyYW1lIiwibnZHcmFwaGljRnJhbWVQciIsInRibCIsInRhYmxlU3R5bGVJZCIsImZpbmQiLCJkYXRhIiwidGJsR3JpZCIsImZpbHRlciIsInJlZHVjZSIsImNvbHMiLCJ3IiwicHVzaCIsInRibFByIiwidGJsU3R5bGUiLCJ0ciIsImgiLCJ0YyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUE7Ozs7QUFDQTs7OztBQUNBOzs7Ozs7Ozs7Ozs7OztJQUVxQkEsYzs7Ozs7Ozs7Ozs7Z0NBQ1Y7QUFDSDtBQUNBLGlCQUFLQyxVQUFMLENBQWdCLGtDQUFrQ0MsS0FBbEMsQ0FBd0MsR0FBeEMsQ0FBaEI7QUFDSDs7OytCQUVNQyxhLEVBQXlFO0FBQUEsZ0JBQTFEQyxRQUEwRCx1RUFBakQsS0FBS0MsV0FBTCxDQUFpQkQsUUFBakIsQ0FBMEJFLElBQTFCLENBQStCLEtBQUtELFdBQXBDLENBQWlEOztBQUM1RSxnQkFBRyxLQUFLRSxXQUFSLEVBQW9CO0FBQ2hCLHFCQUFLQyxVQUFMLENBQWdCLEtBQUtELFdBQUwsQ0FBaUJFLElBQWpCLEdBQXdCQyxRQUF4QixHQUFtQ0MsR0FBbkMsQ0FBdUMsQ0FBdkMsQ0FBaEIsRUFBMkRSLGFBQTNELEVBQTBFQyxRQUExRTtBQUNIO0FBQ0QsbUJBQU8sS0FBS0ksVUFBTCxDQUFnQixLQUFLSSxPQUFMLENBQWEsa0JBQWIsRUFBaUNELEdBQWpDLENBQXFDLENBQXJDLENBQWhCLEVBQXlEUixhQUF6RCxFQUF3RUMsUUFBeEUsQ0FBUDtBQUNIOzs7b0NBRXFCO0FBQUEsZ0JBQWZTLEVBQWUsUUFBZkEsRUFBZTtB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SCxLQXZMYTtBQXlMZG9FLE1BekxjLGNBeUxYdEYsSUF6TFcsRUF5TExDLGNBekxLLEVBeUxVO0FBQ3BCLFlBQU1WLElBQUVVLGVBQWVWLENBQWYsQ0FBaUJTLElBQWpCLENBQVI7QUFDQSxZQUFNYyxRQUFNdkIsRUFBRXVCLEtBQUYsY0FDTCxzQkFBT2IsY0FBUCxDQURLO0FBRVJjLHNCQUFTLFNBRkQ7QUFHUndFLGVBQUU7QUFBQSx1QkFBR3RGLGVBQWVOLEdBQWYsQ0FBbUJpQixNQUFuQixDQUEwQmlELENBQTFCLENBQUg7QUFBQSxhQUhNO0FBSVJULG1CQUFNLEVBQUNtQyxHQUFFLFFBQUg7QUFKRSxXQUFaO0FBTUEsNEJBQVd6RSxLQUFYLElBQWtCakMsVUFBU21CLEtBQUtuQixRQUFoQyxFQUEwQ3FDLE1BQUssSUFBL0M7QUFDSCxLQWxNYTtBQW9NZHNFLE1BcE1jLGNBb01YeEYsSUFwTVcsRUFvTUxDLGNBcE1LLEVBb01VO0FBQ3BCLFlBQU1sQixVQUFRLFlBQWQ7QUFDQSxZQUFNUSxJQUFFVSxlQUFlVixDQUFmLENBQWlCUyxJQUFqQixDQUFSO0FBQ0EsWUFBTW5CLFdBQVNVLEVBQUVWLFFBQUYsQ0FBV0UsT0FBWCxFQUFvQm1CLE9BQXBCLEVBQWY7QUFDQSxZQUFNWSxRQUFNdkIsRUFBRXVCLEtBQUYsQ0FBUTtBQUNoQkMsZ0NBQWlCaEMsT0FBakI7QUFEZ0IsU0FBUixDQUFaO0FBR0EsNEJBQVcrQixLQUFYLElBQWtCSSxNQUFLLElBQXZCLEVBQTZCckMsa0JBQTdCO0FBQ0g7QUE1TWEsQztrQkFuQ0RWLGMiLCJmaWxlIjoib2ZmaWNlRG9jdW1lbnQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmFzZSBmcm9tIFwiLi4vb2ZmaWNlRG9jdW1lbnRcIlxuaW1wb3J0IFBhcnQgZnJvbSBcIi4uL3BhcnRcIlxuaW1wb3J0IGRyYXdtbCBmcm9tIFwiLi4vZHJhd21sXCJcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgT2ZmaWNlRG9jdW1lbnQgZXh0ZW5kcyBCYXNle1xuICAgIF9pbml0KCl7XG4gICAgICAgIHN1cGVyLl9pbml0KClcbiAgICAgICAgdGhpcy5fYXNzaWduUmVsKFwidGFibGVTdHlsZXMsdmlld1Byb3BzLHByZXNQcm9wc1wiLnNwbGl0KFwiLFwiKSlcbiAgICB9XG5cbiAgICByZW5kZXIoY3JlYXRlRWxlbWVudCwgaWRlbnRpZnk9dGhpcy5jb25zdHJ1Y3Rvci5pZGVudGlmeS5iaW5kKHRoaXMuY29uc3RydWN0b3IpKXtcbiAgICAgICAgaWYodGhpcy50YWJsZVN0eWxlcyl7XG4gICAgICAgICAgICB0aGlzLnJlbmRlck5vZGUodGhpcy50YWJsZVN0eWxlcy5yb290KCkuY2hpbGRyZW4oKS5nZXQoMCksIGNyZWF0ZUVsZW1lbnQsIGlkZW50aWZ5KVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLnJlbmRlck5vZGUodGhpcy5jb250ZW50KFwicFxcXFw6cHJlc2VudGF0aW9uXCIpLmdldCgwKSwgY3JlYXRlRWxlbWVudCwgaWRlbnRpZnkpXG4gICAgfVxuXG4gICAgc2xpZGUoe2lkLFwicjppZFwiOnJpZH0pe1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRSZWwocmlkKVxuICAgIH1cblxuICAgIG1hc3Rlcih7aWQsXCJyOmlkXCI6cmlkfSl7XG4gICAgICAgIHJldHVybiB0aGlzLnNsaWRlKC4uLmFyZ3VtZW50cylcbiAgICB9XG5cbiAgICBub3Rlc01hc3Rlcigpe1xuICAgICAgICByZXR1cm4gdGhpcy5zbGlkZSguLi5hcmd1bWVudHMpXG4gICAgfVxuXG4gICAgaGFuZG91dE1hc3Rlcigpe1xuICAgICAgICByZXR1cm4gdGhpcy5zbGlkZSguLi5hcmd1bWVudHMpXG4gICAgfVxuXG4gICAgbWFzdGVyUGFydE9mTGF5b3V0KHdYbWxMYXlvdXRJZEluTWFzdGVyKXtcbiAgICAgICAgY29uc3QgbWFzdGVyUm9vdD10aGlzLiQod1htbExheW91dElkSW5NYXN0ZXIpLnJvb3QoKS5nZXQoMClcbiAgICAgICAgY29uc3Qge3BhcnQ6bWFzdGVyUGFydE5hbWV9PW1hc3RlclJvb3QuYXR0cmlic1xuICAgICAgICByZXR1cm4gdGhpcy5kb2MuZ2V0UmVsT2JqZWN0KG1hc3RlclBhcnROYW1lKVxuICAgIH1cblxuICAgIHN0YXRpYyBpZGVudGl0aWVzPXtcbiAgICAgICAgcHJlc2VudGF0aW9uKHdYbWwsb2ZmaWNlRG9jdW1lbnQpe1xuXHRcdFx0Y29uc3QgJD1vZmZpY2VEb2N1bWVudC5jb250ZW50KFwicFxcXFw6cHJlc2VudGF0aW9uXCIpXG4gICAgICAgICAgICBjb25zdCBjb250ZW50PVwicFxcXFw6aGFuZG91dE1hc3RlcklkTHN0LHBcXFxcOm5vdGVzTWFzdGVySWRMc3QscFxcXFw6c2xkSWRMc3QscFxcXFw6c2xkTWFzdGVySWRMc3RcIlxuICAgICAgICAgICAgY29uc3QgY2hpbGRyZW49JC5jaGlsZHJlbihjb250ZW50KS50b0FycmF5KClcbiAgICAgICAgICAgIGNvbnN0IG9yZGVycz17XCJwOnNsZE1hc3RlcklkTHN0XCI6MSwgXCJwOnNsZElkTHN0XCI6Mn1cbiAgICAgICAgICAgIGNoaWxkcmVuLnNvcnQoKGEsYik9PihvcmRlcnNbYS5uYW1lXXx8OTkpLShvcmRlcnNbYi5uYW1lXXx8OTkpKVxuXG4gICAgICAgICAgICBjb25zdCBzej0oe2F0dHJpYnM6e2N4LGN5fX0pPT4oe3dpZHRoOm9mZmljZURvY3VtZW50LmRvYy5lbXUyUHgoY3gpLGhlaWdodDpvZmZpY2VEb2N1bWVudC5kb2MuZW11MlB4KGN5KX0pXG4gICAgICAgICAgICBjb25zdCBwcm9wcz0kLnByb3BzKHtcbiAgICAgICAgICAgICAgICAuLi5kcmF3bWwob2ZmaWNlRG9jdW1lbnQpLFxuICAgICAgICAgICAgICAgIF9fZmlsdGVyOmA6bm90KCR7Y29udGVudH0sYVxcXFw6ZXh0THN0KWAsXG4gICAgICAgICAgICAgICAgc2xkU3o6c3osIFxuICAgICAgICAgICAgICAgIG5vdGVzU3o6c3osXG4gICAgICAgICAgICB9KVxuXG4gICAgICAgICAgICByZXR1cm4gey4uLnByb3BzLCB0eXBlOlwiZG9jdW1lbnRcIixjaGlsZHJlbn1cblx0XHR9LFxuXG4gICAgICAgIHNsZE1hc3RlcklkKHdYbWwsIG9mZmljZURvY3VtZW50KXtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRlbnQ9XCJwXFxcXDpzbGRMYXlvdXRJZExzdCxwXFxcXDpjU2xkXCJcbiAgICAgICAgICAgIGNvbnN0ICQ9b2ZmaWNlRG9jdW1lbnQubWFzdGVyKHdYbWwuYXR0cmlicylcbiAgICAgICAgICAgIGNvbnN0ICRtYXN0ZXI9JChcInBcXFxcOnNsZE1hc3RlclwiKVxuICAgICAgICAgICAgY29uc3QgcHJvcHM9JG1hc3Rlci5wcm9wcyh7XG4gICAgICAgICAgICAgICAgLi4uZHJhd21sKG9mZmljZURvY3VtZW50KSxcbiAgICAgICAgICAgICAgICBfX2ZpbHRlcjpgOm5vdCgke2NvbnRlbnR9LGFcXFxcOmV4dExzdClgLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIGNvbnN0IGNoaWxkcmVuPSRtYXN0ZXIuY2hpbGRyZW4oY29udGVudCkudG9BcnJheSgpXG4gICAgICAgICAgICBjb25zdCBvcmRlcnM9e1wicDpzbGRMYXlvdXRMc3RcIjoxLCBcInA6Y1NsZFwiOjJ9XG4gICAgICAgICAgICBjaGlsZHJlbi5zb3J0KChhLGIpPT4ob3JkZXJzW2EubmFtZV18fDk5KS0ob3JkZXJzW2IubmFtZV18fDk5KSlcblxuICAgICAgICAgICAgcmV0dXJuIHsuLi5wcm9wcywgcGFydDogJC5wYXJ0LCBjaGlsZHJlbix0eXBlOlwic2xpZGVNYXN0ZXJcIn1cbiAgICAgICAgfSxcblxuICAgICAgICBzbGRJZCh3WG1sLG9mZmljZURvY3VtZW50KXtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRlbnQ9XCJwXFxcXDpjU2xkXCJcbiAgICAgICAgICAgIGNvbnN0ICQ9b2ZmaWNlRG9jdW1lbnQuc2xpZGUod1htbC5hdHRyaWJzKVxuICAgICAgICAgICAgY29uc3QgJHNsaWRlPSQoJ3BcXFxcOnNsZCcpXG4gICAgICAgICAgICBjb25zdCBwcm9wcz0kc2xpZGUucHJvcHMoe1xuICAgICAgICAgICAgICAgIC4uLmRyYXdtbChvZmZpY2VEb2N1bWVudCksXG4gICAgICAgICAgICAgICAgX19maWx0ZXI6YDpub3QoJHtjb250ZW50fSxhXFxcXDpleHRMc3QpYCxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICBjb25zdCBjaGlsZHJlbj0kc2xpZGUuY2hpbGRyZW4oY29udGVudCkudG9BcnJheSgpXG5cbiAgICAgICAgICAgIGNvbnN0IHNsaWRlUGFydD1vZmZpY2VEb2N1bWVudC5nZXRSZWxQYXJ0KHdYbWwuYXR0cmlic1tcInI6aWRcIl0pXG4gICAgICAgICAgICBjb25zdCBsYXlvdXRUYXJnZXQ9b2ZmaWNlRG9jdW1lbnQuZG9jLm5vcm1hbGl6ZVBhdGgoc2xpZGVQYXJ0Lm5vcm1hbGl6ZVBhdGgoc2xpZGVQYXJ0LmdldFJlbFRhcmdldChcInNsaWRlTGF5b3V0XCIpKSlcbiAgICAgICAgICAgIGNvbnN0IGxheW91dFBhcnQ9bmV3IFBhcnQobGF5b3V0VGFyZ2V0LG9mZmljZURvY3VtZW50LmRvYylcbiAgICAgICAgICAgIGNvbnN0IG1hc3RlclRhcmdldD1vZmZpY2VEb2N1bWVudC5kb2Mubm9ybWFsaXplUGF0aChsYXlvdXRQYXJ0Lm5vcm1hbGl6ZVBhdGgobGF5b3V0UGFydC5nZXRSZWxUYXJnZXQoXCJzbGlkZU1hc3RlclwiKSkpXG4gICAgICAgICAgICByZXR1cm4gey4uLnByb3BzLHBhcnQ6JC5wYXJ0LCBsYXlvdXQ6bGF5b3V0VGFyZ2V0LCBtYXN0ZXI6bWFzdGVyVGFyZ2V0LCBjaGlsZHJlbiwgdHlwZTpcInNsaWRlXCJ9XG4gICAgICAgIH0sXG5cbiAgICAgICAgbm90ZXNNYXN0ZXJJZCh3WG1sLCBvZmZpY2VEb2N1bWVudCl7XG4gICAgICAgICAgICBjb25zdCAkPW9mZmljZURvY3VtZW50Lm5vdGVzTWFzdGVyKHdYbWwuYXR0cmlicylcbiAgICAgICAgICAgIHJldHVybiB7cGFydDokLnBhcnQsdHlwZTpcIm5vdGVNYXN0ZXJcIix9XG4gICAgICAgIH0sXG5cbiAgICAgICAgaGFuZG91dE1hc3RlcklkKHdYbWwsIG9mZmljZURvY3VtZW50KXtcbiAgICAgICAgICAgIGNvbnN0ICQ9b2ZmaWNlRG9jdW1lbnQuaGFuZG91dE1hc3Rlcih3WG1sLmF0dHJpYnMpXG4gICAgICAgICAgICByZXR1cm4ge3BhcnQ6JC5wYXJ0LHR5cGU6XCJoYW5kb3V0TWFzdGVyXCIsIH1cbiAgICAgICAgfSxcblxuICAgICAgICBzbGRMYXlvdXRJZCh3WG1sLG9mZmljZURvY3VtZW50KXsvL2luIG1hc3RlclxuICAgICAgICAgICAgY29uc3QgY29udGVudD1cInBcXFxcOmNTbGRcIlxuICAgICAgICAgICAgY29uc3QgbWFzdGVyPW9mZmljZURvY3VtZW50LiQod1htbCkucGFydCgpXG4gICAgICAgICAgICBjb25zdCAkPW5ldyBQYXJ0KG1hc3RlcixvZmZpY2VEb2N1bWVudC5kb2MpLmdldFJlbCh3WG1sLmF0dHJpYnNbXCJyOmlkXCJdKVxuICAgICAgICAgICAgY29uc3QgJGxheW91dD0kKFwicFxcXFw6c2xkTGF5b3V0XCIpXG4gICAgICAgICAgICBjb25zdCBwcm9wcz0kbGF5b3V0LnByb3BzKHtfX2ZpbHRlcjpgOm5vdCgke2NvbnRlbnR9LGFcXFxcOmV4dExzdClgfSlcbiAgICAgICAgICAgIGNvbnN0IGNoaWxkcmVuPSRsYXlvdXQuY2hpbGRyZW4oY29udGVudCkudG9BcnJheSgpXG5cbiAgICAgICAgICAgIHJldHVybiB7Li4ucHJvcHMscGFydDokLnBhcnQsIG1hc3RlciwgY2hpbGRyZW4sIHR5cGU6XCJzbGlkZUxheW91dFwiLCB9XG4gICAgICAgIH0sXG5cbiAgICAgICAgc3BUcmVlKHdYbWwsb2ZmaWNlRG9jdW1lbnQpe1xuICAgICAgICAgICAgY29uc3QgY29udGVudD1cIjpub3QocFxcXFw6bnZHcnBTcFByLHBcXFxcOmdycFNwUHIpXCJcbiAgICAgICAgICAgIGNvbnN0ICQ9b2ZmaWNlRG9jdW1lbnQuJCh3WG1sKVxuICAgICAgICAgICAgY29uc3QgY2hpbGRyZW49JC5jaGlsZHJlbihjb250ZW50KS50b0FycmF5KClcbiAgICAgICAgICAgIGNvbnN0IHByb3BzPW9mZmljZURvY3VtZW50LiQod1htbCkucHJvcHMoe1xuICAgICAgICAgICAgICAgIC4uLmRyYXdtbChvZmZpY2VEb2N1bWVudCksXG4gICAgICAgICAgICAgICAgX19maWx0ZXI6YHBcXFxcOm52R3JwU3BQcixwXFxcXDpncnBTcFByYCxcbiAgICAgICAgICAgICAgICB0aWR5Oih7Z3JwU3BQciwgbnZHcnBTcFByOntjTnZQcj17fSxjTnZTcFByPXt9LG52UHI9e319LCAuLi5vdGhlcnN9KT0+KHsuLi5ncnBTcFByLCAuLi5jTnZQciwuLi5jTnZTcFByLC4uLm52UHIsLi4ub3RoZXJzfSlcbiAgICAgICAgICAgIH0pXG5cbiAgICAgICAgICAgIHJldHVybiB7Li4ucHJvcHMsdHlwZTpcInNwVHJlZVwiLCBjaGlsZHJlbn1cbiAgICAgICAgfSxcblxuICAgICAgICBwaWMod1htbCwgb2ZmaWNlRG9jdW1lbnQpe1xuICAgICAgICAgICAgY29uc3QgcHJvcHM9b2ZmaWNlRG9jdW1lbnQuJCh3WG1sKS5wcm9wcyh7XG4gICAgICAgICAgICAgICAgLi4uZHJhd21sKG9mZmljZURvY3VtZW50KSxcbiAgICAgICAgICAgICAgICB0aWR5Oih7c3BQciwgbnZQaWNQcjp7Y052UHI9e30sY052U3BQcj17fSxudlByPXt9fSwgLi4ub3RoZXJzfSk9Pih7Li4uc3BQciwgLi4uY052UHIsLi4uY052U3BQciwuLi5udlByLC4uLm90aGVyc30pXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgcmV0dXJuIHsuLi5wcm9wcyx0eXBlOlwicGljdHVyZVwifVxuICAgICAgICB9LFxuXG4gICAgICAgIHNwKHdYbWwsIG9mZmljZURvY3VtZW50KXtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRlbnQ9XCJwXFxcXDp0eEJvZHlcIlxuXHRcdFx0Y29uc3QgJD1vZmZpY2VEb2N1bWVudC4kKHdYbWwpXG4gICAgICAgICAgICBjb25zdCBjaGlsZHJlbj0kLmNoaWxkcmVuKGNvbnRlbnQpLnRvQXJyYXkoKVxuICAgICAgICAgICAgY29uc3QgY29tbW9uUHJvcHM9ZHJhd21sKG9mZmljZURvY3VtZW50KVxuICAgICAgICAgICAgY29uc3QgbmFtZXM9e3NwTG9ja3M6XCJsb2Nrc1wiLCBwaDpcInBsYWNlaG9sZGVyXCIsIC4uLmNvbW1vblByb3BzLm5hbWVzfVxuICAgICAgICAgICAgY29uc3QgcHJvcHM9JC5wcm9wcyh7XG4gICAgICAgICAgICAgICAgLi4uY29tbW9uUHJvcHMsXG4gICAgICAgICAgICAgICAgX19maWx0ZXI6YDpub3QoJHtjb250ZW50fSxhXFxcXDpleHRMc3QpYCxcbiAgICAgICAgICAgICAgICBuYW1lcyxcbiAgICAgICAgICAgICAgICBwaDooe2F0dHJpYnM6e3R5cGU9XCJib2R5XCIsaWR4fX0pPT4oe3R5cGUsaWR4fSksXG4gICAgICAgICAgICAgICAgdGlkeTooe3NwUHIsIG52U3BQcjp7Y052UHI9e30sY052U3BQcj17fSxudlByPXt9fX0pPT4oey4uLnNwUHIsIC4uLmNOdlByLC4uLmNOdlNwUHIsLi4ubnZQcn0pXG4gICAgICAgICAgICB9KVxuXG4gICAgICAgICAgICBjb25zdCB0eEJvZHk9T2ZmaWNlRG9jdW1lbnQuaWRlbnRpdGllcy50eEJvZHkoY2hpbGRyZW5bMF0sb2ZmaWNlRG9jdW1lbnQpXG4gICAgICAgICAgICByZXR1cm4gey4uLnByb3BzLCBjaGlsZHJlbiwgLi4udHhCb2R5LCB0eXBlOlwic2hhcGVcIn1cbiAgICAgICAgfSxcblxuICAgICAgICB0eEJvZHkod1htbCwgb2ZmaWNlRG9jdW1lbnQpe1xuICAgICAgICAgICAgY29uc3QgY29udGVudD1cImFcXFxcOnBcIlxuXHRcdFx0Y29uc3QgJD1vZmZpY2VEb2N1bWVudC4kKHdYbWwpXG4gICAgICAgICAgICBjb25zdCBjaGlsZHJlbj0kLmNoaWxkcmVuKFwiYVxcXFw6cFwiKS50b0FycmF5KClcbiAgICAgICAgICAgIGNvbnN0IHRleHRTdHlsZT0kLnByb3BzKHtcbiAgICAgICAgICAgICAgICAuLi5kcmF3bWwob2ZmaWNlRG9jdW1lbnQpLFxuICAgICAgICAgICAgICAgIGxuU3BjUmVkdWN0aW9uOnY9PnBhcnNlSW50KHYpLFxuICAgICAgICAgICAgICAgIGZvbnRTY2FsZTogdj0+cGFyc2VJbnQodiksXG4gICAgICAgICAgICAgICAgX19maWx0ZXI6YDpub3QoYVxcXFw6cCxhXFxcXDpleHRMc3QpYCxcbiAgICAgICAgICAgICAgICB0aWR5Oih7bHN0U3R5bGU9e30sYm9keVByPXt9LC4uLm90aGVyc30pPT4oey4uLm90aGVycywgLi4uYm9keVByLCAuLi5sc3RTdHlsZX0pXG4gICAgICAgICAgICB9KVxuXHRcdFx0cmV0dXJuIHt0ZXh0U3R5bGUsIGNoaWxkcmVuLCB0eXBlOlwidHhCb2R5XCJ9XG4gICAgICAgIH0sXG5cbiAgICAgICAgcCh3WG1sLCBvZmZpY2VEb2N1bWVudCl7XG4gICAgICAgICAgICBjb25zdCBjb250ZW50PVwiOm5vdChhXFxcXDpwUHIsYVxcXFw6ZW5kUGFyYVJQcilcIlxuICAgICAgICAgICAgY29uc3QgJD1vZmZpY2VEb2N1bWVudC4kKHdYbWwpXG4gICAgICAgICAgICBjb25zdCBjaGlsZHJlbj0kLmNoaWxkcmVuKGNvbnRlbnQpLnRvQXJyYXkoKVxuICAgICAgICAgICAgY29uc3Qgc3R5bGU9JC5jaGlsZHJlbihcImFcXFxcOnBQclwiKS5wcm9wcyhkcmF3bWwob2ZmaWNlRG9jdW1lbnQpKVxuICAgICAgICAgICAgY29uc3QgZGVmYXVsdFN0eWxlPSQuY2hpbGRyZW4oXCJhXFxcXDplbmRQYXJhUlByXCIpLnByb3BzKGRyYXdtbChvZmZpY2VEb2N1bWVudCkpXG4gICAgICAgICAgICByZXR1cm4ge3N0eWxlOntsdmw6MCwgLi4uc3R5bGV9LCBkZWZhdWx0U3R5bGUsIGNoaWxkcmVuLCB0eXBlOlwicFwifVxuICAgICAgICB9LFxuXG4gICAgICAgIHIod1htbCxvZmZpY2VEb2N1bWVudCl7XG4gICAgICAgICAgICBjb25zdCBjb250ZW50PVwiOm5vdChhXFxcXDpyUHIpXCJcbiAgICAgICAgICAgIGNvbnN0ICQ9b2ZmaWNlRG9jdW1lbnQuJCh3WG1sKVxuICAgICAgICAgICAgY29uc3QgY2hpbGRyZW49JC5jaGlsZHJlbihjb250ZW50KS50b0FycmF5KClcbiAgICAgICAgICAgIGNvbnN0IHN0eWxlPSQuY2hpbGRyZW4oXCJhXFxcXDpyUHJcIikucHJvcHMoey4uLmRyYXdtbChvZmZpY2VEb2N1bWVudCl9KVxuICAgICAgICAgICAgcmV0dXJuIHtzdHlsZSwgY2hpbGRyZW4sIHR5cGU6XCJyXCJ9XG4gICAgICAgIH0sXG5cbiAgICAgICAgY2hhcnQod1htbCwgb2ZmaWNlRG9jdW1lbnQpe1xuICAgICAgICAgICAgcmV0dXJuIHt0eXBlOiBcImNoYXJ0XCJ9XG4gICAgICAgIH0sXG5cbiAgICAgICAgcmVsSWRzKHdYbWwsIG9mZmljZURvY3VtZW50KXtcbiAgICAgICAgICAgIHJldHVybiB7dHlwZTpcImRpYWdyYW1cIn1cbiAgICAgICAgfSxcblxuICAgICAgICBncmFwaGljRnJhbWUod1htbCwgb2ZmaWNlRG9jdW1lbnQpe1xuICAgICAgICAgICAgY29uc3QgY29udGVudD1cImFcXFxcOmdyYXBoaWNcIlxuICAgICAgICAgICAgY29uc3QgJD1vZmZpY2VEb2N1bWVudC4kKHdYbWwpXG4gICAgICAgICAgICBjb25zdCBjaGlsZHJlbj0kLmNoaWxkcmVuKGNvbnRlbnQpLnRvQXJyYXkoKVxuICAgICAgICAgICAgY29uc3QgcHJvcHM9JC5wcm9wcyh7XG4gICAgICAgICAgICAgICAgLi4uZHJhd21sKG9mZmljZURvY3VtZW50KSxcbiAgICAgICAgICAgICAgICBfX2ZpbHRlcjpgOm5vdCgke2NvbnRlbnR9LGFcXFxcOmV4dExzdClgLFxuICAgICAgICAgICAgICAgIHRpZHk6KHtzcFByLCBudkdyYXBoaWNGcmFtZVByOntjTnZQcj17fSxjTnZTcFByPXt9LG52UHI9e319LCAuLi5vdGhlcnN9KT0+KHsuLi5zcFByLCAuLi5jTnZQciwuLi5jTnZTcFByLC4uLm52UHIsLi4ub3RoZXJzfSlcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICByZXR1cm4gey4uLnByb3BzLCBjaGlsZHJlbiwgdHlwZTpcImdyYXBoaWNGcmFtZVwifVxuICAgICAgICB9LFxuXG4gICAgICAgIHRibCh3WG1sLCBvZmZpY2VEb2N1bWVudCl7XG4gICAgICAgICAgICBjb25zdCBjb250ZW50PVwiYVxcXFw6dHJcIlxuICAgICAgICAgICAgY29uc3QgJD1vZmZpY2VEb2N1bWVudC4kKHdYbWwpXG4gICAgICAgICAgICBjb25zdCBjaGlsZHJlbj0kLmNoaWxkcmVuKGNvbnRlbnQpLnRvQXJyYXkoKVxuICAgICAgICAgICAgY29uc3QgcHJvcHM9JC5wcm9wcyh7XG4gICAgICAgICAgICAgICAgLi4uZHJhd21sKG9mZmljZURvY3VtZW50KSxcbiAgICAgICAgICAgICAgICBfX2ZpbHRlcjpgOm5vdCgke2NvbnRlbnR9LCBhXFxcXDpleHRMc3QpYCxcbiAgICAgICAgICAgICAgICB0YWJsZVN0eWxlSWQ6KHtjaGlsZHJlbn0pPT5jaGlsZHJlbi5maW5kKGE9PmEuZGF0YSkuZGF0YSxcbiAgICAgICAgICAgICAgICB0YmxHcmlkOih7Y2hpbGRyZW59KT0+Y2hpbGRyZW4uZmlsdGVyKGE9PmEubmFtZSkucmVkdWNlKChjb2xzLHthdHRyaWJzOnt3fX0pPT57XG4gICAgICAgICAgICAgICAgICAgIGNvbHMucHVzaChvZmZpY2VEb2N1bWVudC5kb2MuZW11MlB4KHcpKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gY29sc1xuICAgICAgICAgICAgICAgIH0sW10pLFxuICAgICAgICAgICAgICAgIHRpZHk6KHt0YmxQciwgdGJsR3JpZDpjb2xzLCAuLi5vdGhlcnN9KT0+KHsuLi50YmxQciwgY29scywgLi4ub3RoZXJzfSlcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICByZXR1cm4gey4uLnByb3BzLCBjaGlsZHJlbiwgdHlwZTpcInRibFwifVxuICAgICAgICB9LFxuXG4gICAgICAgIHRibFN0eWxlKHdYbWwsIG9mZmljZURvY3VtZW50KXtcbiAgICAgICAgICAgIGNvbnN0ICQ9b2ZmaWNlRG9jdW1lbnQuJCh3WG1sKVxuICAgICAgICAgICAgY29uc3QgcHJvcHM9JC5wcm9wcyhkcmF3bWwob2ZmaWNlRG9jdW1lbnQpKVxuICAgICAgICAgICAgcmV0dXJuIHsuLi5wcm9wcywgdHlwZTpcInRibFN0eWxlXCJ9XG4gICAgICAgIH0sXG5cbiAgICAgICAgdHIod1htbCwgb2ZmaWNlRG9jdW1lbnQpe1xuICAgICAgICAgICAgY29uc3QgJD1vZmZpY2VEb2N1bWVudC4kKHdYbWwpXG4gICAgICAgICAgICBjb25zdCBwcm9wcz0kLnByb3BzKHtcbiAgICAgICAgICAgICAgICAuLi5kcmF3bWwob2ZmaWNlRG9jdW1lbnQpLFxuICAgICAgICAgICAgICAgIF9fZmlsdGVyOlwiOm5vdCgqKVwiLFxuICAgICAgICAgICAgICAgIGg6dj0+b2ZmaWNlRG9jdW1lbnQuZG9jLmVtdTJQeCh2KSxcbiAgICAgICAgICAgICAgICBuYW1lczp7aDpcImhlaWdodFwifVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIHJldHVybiB7Li4ucHJvcHMsIGNoaWxkcmVuOndYbWwuY2hpbGRyZW4sIHR5cGU6XCJ0clwifVxuICAgICAgICB9LFxuXG4gICAgICAgIHRjKHdYbWwsIG9mZmljZURvY3VtZW50KXtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRlbnQ9XCJhXFxcXDp0eEJvZHlcIlxuICAgICAgICAgICAgY29uc3QgJD1vZmZpY2VEb2N1bWVudC4kKHdYbWwpXG4gICAgICAgICAgICBjb25zdCBjaGlsZHJlbj0kLmNoaWxkcmVuKGNvbnRlbnQpLnRvQXJyYXkoKVxuICAgICAgICAgICAgY29uc3QgcHJvcHM9JC5wcm9wcyh7XG4gICAgICAgICAgICAgICAgX19maWx0ZXI6YDpub3QoJHtjb250ZW50fSxhXFxcXDpleHRMc3QpYFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIHJldHVybiB7Li4ucHJvcHMsIHR5cGU6XCJ0Y1wiLCBjaGlsZHJlbn1cbiAgICAgICAgfVxuICAgIH1cbn0iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL3BwdHgvb2ZmaWNlRG9jdW1lbnQuanMiXSwibmFtZXMiOlsiT2ZmaWNlRG9jdW1lbnQiLCJfYXNzaWduUmVsIiwic3BsaXQiLCJjcmVhdGVFbGVtZW50IiwiaWRlbnRpZnkiLCJjb25zdHJ1Y3RvciIsImJpbmQiLCJ0YWJsZVN0eWxlcyIsInJlbmRlck5vZGUiLCJyb290IiwiY2hpbGRyZW4iLCJnZXQiLCJjb250ZW50IiwiZG9tSGFuZGxlciIsIl9pZGVudGlmeSIsIm1vZGVsIiwiYXJndW1lbnRzIiwiZW1pdCIsInR5cGUiLCJyZW5kZXIiLCJpZCIsInJpZCIsImdldFJlbCIsInNsaWRlIiwid1htbExheW91dElkSW5NYXN0ZXIiLCJtYXN0ZXJSb290IiwiJCIsIm1hc3RlclBhcnROYW1lIiwiYXR0cmlicyIsInBhcnQiLCJkb2MiLCJnZXRSZWxPYmplY3QiLCJpZGVudGl0aWVzIiwicHJlc2VudGF0aW9uIiwid1htbCIsIm9mZmljZURvY3VtZW50IiwidG9BcnJheSIsIm9yZGVycyIsInNvcnQiLCJhIiwiYiIsIm5hbWUiLCJzeiIsImN4IiwiY3kiLCJ3aWR0aCIsImVtdTJQeCIsImhlaWdodCIsInByb3BzIiwiX19maWx0ZXIiLCJzbGRTeiIsIm5vdGVzU3oiLCJzbGRNYXN0ZXJJZCIsIm1hc3RlciIsIiRtYXN0ZXIiLCJzbGRJZCIsIiRzbGlkZSIsInNsaWRlUGFydCIsImdldFJlbFBhcnQiLCJsYXlvdXRUYXJnZXQiLCJub3JtYWxpemVQYXRoIiwiZ2V0UmVsVGFyZ2V0IiwibGF5b3V0UGFydCIsIm1hc3RlclRhcmdldCIsImxheW91dCIsIm5vdGVzTWFzdGVySWQiLCJub3Rlc01hc3RlciIsImhhbmRvdXRNYXN0ZXJJZCIsImhhbmRvdXRNYXN0ZXIiLCJzbGRMYXlvdXRJZCIsIiRsYXlvdXQiLCJzcFRyZWUiLCJ0aWR5IiwiZ3JwU3BQciIsIm52R3JwU3BQciIsImNOdlByIiwiY052U3BQciIsIm52UHIiLCJvdGhlcnMiLCJwaWMiLCJzcFByIiwibnZQaWNQciIsInNwIiwiY29tbW9uUHJvcHMiLCJuYW1lcyIsInNwTG9ja3MiLCJwaCIsImlkeCIsIm52U3BQciIsInR4Qm9keSIsInRleHRTdHlsZSIsImxuU3BjUmVkdWN0aW9uIiwicGFyc2VJbnQiLCJ2IiwiZm9udFNjYWxlIiwibHN0U3R5bGUiLCJib2R5UHIiLCJwIiwic3R5bGUiLCJkZWZhdWx0U3R5bGUiLCJsdmwiLCJyIiwiY2hhcnQiLCJyZWxJZHMiLCJncmFwaGljRnJhbWUiLCJudkdyYXBoaWNGcmFtZVByIiwidGJsIiwidGFibGVTdHlsZUlkIiwiZmluZCIsImRhdGEiLCJ0YmxHcmlkIiwiZmlsdGVyIiwicmVkdWNlIiwiY29scyIsInciLCJwdXNoIiwidGJsUHIiLCJ0YmxTdHlsZSIsInRyIiwiaCIsInRjIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUFBOzs7O0FBQ0E7Ozs7QUFDQTs7Ozs7Ozs7Ozs7Ozs7SUFFcUJBLGM7Ozs7Ozs7Ozs7O2dDQUNWO0FBQ0g7QUFDQSxpQkFBS0MsVUFBTCxDQUFnQixrQ0FBa0NDLEtBQWxDLENBQXdDLEdBQXhDLENBQWhCO0FBQ0g7OzsrQkFFTUMsYSxFQUF5RTtBQUFBLGdCQUExREMsUUFBMEQsdUVBQWpELEtBQUtDLFdBQUwsQ0FBaUJELFFBQWpCLENBQTBCRSxJQUExQixDQUErQixLQUFLRCxXQUFwQyxDQUFpRDs7QUFDNUUsZ0JBQUcsS0FBS0UsV0FBUixFQUFvQjtBQUNoQixxQkFBS0MsVUFBTCxDQUFnQixLQUFLRCxXQUFMLENBQWlCRSxJQUFqQixHQUF3QkMsUUFBeEIsR0FBbUNDLEdBQW5DLENBQXVDLENBQXZDLENBQWhCLEVBQTJEUixhQUEzRCxFQUEwRUMsUUFBMUU7QUFDSDtBQUNELG1CQUFPLEtBQUtJLFVBQUwsQ0FBZ0IsS0FBS0ksT0FBTCxDQUFhLGtCQUFiLEVBQWlDRCxHQUFqQyxDQUFxQyxDQUFyQyxDQUFoQixFQUF5RFIsYUFBekQsRUFBd0VDLFFBQXhFLENBQVA7QUFDSDs7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QkFBV3ZFLEtBQVgsSUFBa0J0QyxVQUFTd0IsS0FBS3hCLFFBQWhDLEVBQTBDUSxNQUFLLElBQS9DO0FBQ0gsS0FsTWE7QUFvTWRzRyxNQXBNYyxjQW9NWHRGLElBcE1XLEVBb01MQyxjQXBNSyxFQW9NVTtBQUNwQixZQUFNdkIsVUFBUSxZQUFkO0FBQ0EsWUFBTWMsSUFBRVMsZUFBZVQsQ0FBZixDQUFpQlEsSUFBakIsQ0FBUjtBQUNBLFlBQU14QixXQUFTZ0IsRUFBRWhCLFFBQUYsQ0FBV0UsT0FBWCxFQUFvQndCLE9BQXBCLEVBQWY7QUFDQSxZQUFNWSxRQUFNdEIsRUFBRXNCLEtBQUYsQ0FBUTtBQUNoQkMsZ0NBQWlCckMsT0FBakI7QUFEZ0IsU0FBUixDQUFaO0FBR0EsNEJBQVdvQyxLQUFYLElBQWtCOUIsTUFBSyxJQUF2QixFQUE2QlIsa0JBQTdCO0FBQ0g7QUE1TWEsQztrQkFuRERWLGMiLCJmaWxlIjoib2ZmaWNlRG9jdW1lbnQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmFzZSBmcm9tIFwiLi4vb2ZmaWNlRG9jdW1lbnRcIlxuaW1wb3J0IFBhcnQgZnJvbSBcIi4uL3BhcnRcIlxuaW1wb3J0IGRyYXdtbCBmcm9tIFwiLi4vZHJhd21sXCJcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgT2ZmaWNlRG9jdW1lbnQgZXh0ZW5kcyBCYXNle1xuICAgIF9pbml0KCl7XG4gICAgICAgIHN1cGVyLl9pbml0KClcbiAgICAgICAgdGhpcy5fYXNzaWduUmVsKFwidGFibGVTdHlsZXMsdmlld1Byb3BzLHByZXNQcm9wc1wiLnNwbGl0KFwiLFwiKSlcbiAgICB9XG5cbiAgICByZW5kZXIoY3JlYXRlRWxlbWVudCwgaWRlbnRpZnk9dGhpcy5jb25zdHJ1Y3Rvci5pZGVudGlmeS5iaW5kKHRoaXMuY29uc3RydWN0b3IpKXtcbiAgICAgICAgaWYodGhpcy50YWJsZVN0eWxlcyl7XG4gICAgICAgICAgICB0aGlzLnJlbmRlck5vZGUodGhpcy50YWJsZVN0eWxlcy5yb290KCkuY2hpbGRyZW4oKS5nZXQoMCksIGNyZWF0ZUVsZW1lbnQsIGlkZW50aWZ5KVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLnJlbmRlck5vZGUodGhpcy5jb250ZW50KFwicFxcXFw6cHJlc2VudGF0aW9uXCIpLmdldCgwKSwgY3JlYXRlRWxlbWVudCwgaWRlbnRpZnkpXG4gICAgfVxuXG4gICAgcGFyc2UoZG9tSGFuZGxlcixpZGVudGlmeT10aGlzLmNvbnN0cnVjdG9yLmlkZW50aWZ5LmJpbmQodGhpcy5jb25zdHJ1Y3Rvcikpe1xuXHRcdGNvbnN0IGNyZWF0ZUVsZW1lbnQ9ZG9tSGFuZGxlci5jcmVhdGVFbGVtZW50LmJpbmQoZG9tSGFuZGxlcilcblx0XHRmdW5jdGlvbiBfaWRlbnRpZnkoKXtcblx0XHRcdGxldCBtb2RlbD1pZGVudGlmeSguLi5hcmd1bWVudHMpXG5cdFx0XHRpZihtb2RlbCAmJiB0eXBlb2YobW9kZWwpPT1cIm9iamVjdFwiKXtcblx0XHRcdFx0ZG9tSGFuZGxlci5lbWl0KFwiKlwiLG1vZGVsLC4uLmFyZ3VtZW50cylcblx0XHRcdFx0ZG9tSGFuZGxlci5lbWl0KG1vZGVsLnR5cGUsIG1vZGVsLC4uLmFyZ3VtZW50cylcblx0XHRcdFx0aWYoZG9tSGFuZGxlcltgb24ke21vZGVsLnR5cGV9YF0pXG5cdFx0XHRcdFx0ZG9tSGFuZGxlcltgb24ke21vZGVsLnR5cGV9YF0obW9kZWwsLi4uYXJndW1lbnRzKVxuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIG1vZGVsXG5cdFx0fVxuXG4gICAgICAgIHJldHVybiB0aGlzLnJlbmRlcihjcmVhdGVFbGVtZW50LCBfaWRlbnRpZnkpXG5cdH1cblxuICAgIHNsaWRlKHtpZCxcInI6aWRcIjpyaWR9KXtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0UmVsKHJpZClcbiAgICB9XG5cbiAgICBtYXN0ZXIoe2lkLFwicjppZFwiOnJpZH0pe1xuICAgICAgICByZXR1cm4gdGhpcy5zbGlkZSguLi5hcmd1bWVudHMpXG4gICAgfVxuXG4gICAgbm90ZXNNYXN0ZXIoKXtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2xpZGUoLi4uYXJndW1lbnRzKVxuICAgIH1cblxuICAgIGhhbmRvdXRNYXN0ZXIoKXtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2xpZGUoLi4uYXJndW1lbnRzKVxuICAgIH1cblxuICAgIG1hc3RlclBhcnRPZkxheW91dCh3WG1sTGF5b3V0SWRJbk1hc3Rlcil7XG4gICAgICAgIGNvbnN0IG1hc3RlclJvb3Q9dGhpcy4kKHdYbWxMYXlvdXRJZEluTWFzdGVyKS5yb290KCkuZ2V0KDApXG4gICAgICAgIGNvbnN0IHtwYXJ0Om1hc3RlclBhcnROYW1lfT1tYXN0ZXJSb290LmF0dHJpYnNcbiAgICAgICAgcmV0dXJuIHRoaXMuZG9jLmdldFJlbE9iamVjdChtYXN0ZXJQYXJ0TmFtZSlcbiAgICB9XG5cbiAgICBzdGF0aWMgaWRlbnRpdGllcz17XG4gICAgICAgIHByZXNlbnRhdGlvbih3WG1sLG9mZmljZURvY3VtZW50KXtcblx0XHRcdGNvbnN0ICQ9b2ZmaWNlRG9jdW1lbnQuY29udGVudChcInBcXFxcOnByZXNlbnRhdGlvblwiKVxuICAgICAgICAgICAgY29uc3QgY29udGVudD1cInBcXFxcOmhhbmRvdXRNYXN0ZXJJZExzdCxwXFxcXDpub3Rlc01hc3RlcklkTHN0LHBcXFxcOnNsZElkTHN0LHBcXFxcOnNsZE1hc3RlcklkTHN0XCJcbiAgICAgICAgICAgIGNvbnN0IGNoaWxkcmVuPSQuY2hpbGRyZW4oY29udGVudCkudG9BcnJheSgpXG4gICAgICAgICAgICBjb25zdCBvcmRlcnM9e1wicDpzbGRNYXN0ZXJJZExzdFwiOjEsIFwicDpzbGRJZExzdFwiOjJ9XG4gICAgICAgICAgICBjaGlsZHJlbi5zb3J0KChhLGIpPT4ob3JkZXJzW2EubmFtZV18fDk5KS0ob3JkZXJzW2IubmFtZV18fDk5KSlcblxuICAgICAgICAgICAgY29uc3Qgc3o9KHthdHRyaWJzOntjeCxjeX19KT0+KHt3aWR0aDpvZmZpY2VEb2N1bWVudC5kb2MuZW11MlB4KGN4KSxoZWlnaHQ6b2ZmaWNlRG9jdW1lbnQuZG9jLmVtdTJQeChjeSl9KVxuICAgICAgICAgICAgY29uc3QgcHJvcHM9JC5wcm9wcyh7XG4gICAgICAgICAgICAgICAgLi4uZHJhd21sKG9mZmljZURvY3VtZW50KSxcbiAgICAgICAgICAgICAgICBfX2ZpbHRlcjpgOm5vdCgke2NvbnRlbnR9LGFcXFxcOmV4dExzdClgLFxuICAgICAgICAgICAgICAgIHNsZFN6OnN6LCBcbiAgICAgICAgICAgICAgICBub3Rlc1N6OnN6LFxuICAgICAgICAgICAgfSlcblxuICAgICAgICAgICAgcmV0dXJuIHsuLi5wcm9wcywgdHlwZTpcImRvY3VtZW50XCIsY2hpbGRyZW59XG5cdFx0fSxcblxuICAgICAgICBzbGRNYXN0ZXJJZCh3WG1sLCBvZmZpY2VEb2N1bWVudCl7XG4gICAgICAgICAgICBjb25zdCBjb250ZW50PVwicFxcXFw6c2xkTGF5b3V0SWRMc3QscFxcXFw6Y1NsZFwiXG4gICAgICAgICAgICBjb25zdCAkPW9mZmljZURvY3VtZW50Lm1hc3Rlcih3WG1sLmF0dHJpYnMpXG4gICAgICAgICAgICBjb25zdCAkbWFzdGVyPSQoXCJwXFxcXDpzbGRNYXN0ZXJcIilcbiAgICAgICAgICAgIGNvbnN0IHByb3BzPSRtYXN0ZXIucHJvcHMoe1xuICAgICAgICAgICAgICAgIC4uLmRyYXdtbChvZmZpY2VEb2N1bWVudCksXG4gICAgICAgICAgICAgICAgX19maWx0ZXI6YDpub3QoJHtjb250ZW50fSxhXFxcXDpleHRMc3QpYCxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICBjb25zdCBjaGlsZHJlbj0kbWFzdGVyLmNoaWxkcmVuKGNvbnRlbnQpLnRvQXJyYXkoKVxuICAgICAgICAgICAgY29uc3Qgb3JkZXJzPXtcInA6c2xkTGF5b3V0THN0XCI6MSwgXCJwOmNTbGRcIjoyfVxuICAgICAgICAgICAgY2hpbGRyZW4uc29ydCgoYSxiKT0+KG9yZGVyc1thLm5hbWVdfHw5OSktKG9yZGVyc1tiLm5hbWVdfHw5OSkpXG5cbiAgICAgICAgICAgIHJldHVybiB7Li4ucHJvcHMsIHBhcnQ6ICQucGFydCwgY2hpbGRyZW4sdHlwZTpcInNsaWRlTWFzdGVyXCJ9XG4gICAgICAgIH0sXG5cbiAgICAgICAgc2xkSWQod1htbCxvZmZpY2VEb2N1bWVudCl7XG4gICAgICAgICAgICBjb25zdCBjb250ZW50PVwicFxcXFw6Y1NsZFwiXG4gICAgICAgICAgICBjb25zdCAkPW9mZmljZURvY3VtZW50LnNsaWRlKHdYbWwuYXR0cmlicylcbiAgICAgICAgICAgIGNvbnN0ICRzbGlkZT0kKCdwXFxcXDpzbGQnKVxuICAgICAgICAgICAgY29uc3QgcHJvcHM9JHNsaWRlLnByb3BzKHtcbiAgICAgICAgICAgICAgICAuLi5kcmF3bWwob2ZmaWNlRG9jdW1lbnQpLFxuICAgICAgICAgICAgICAgIF9fZmlsdGVyOmA6bm90KCR7Y29udGVudH0sYVxcXFw6ZXh0THN0KWAsXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgY29uc3QgY2hpbGRyZW49JHNsaWRlLmNoaWxkcmVuKGNvbnRlbnQpLnRvQXJyYXkoKVxuXG4gICAgICAgICAgICBjb25zdCBzbGlkZVBhcnQ9b2ZmaWNlRG9jdW1lbnQuZ2V0UmVsUGFydCh3WG1sLmF0dHJpYnNbXCJyOmlkXCJdKVxuICAgICAgICAgICAgY29uc3QgbGF5b3V0VGFyZ2V0PW9mZmljZURvY3VtZW50LmRvYy5ub3JtYWxpemVQYXRoKHNsaWRlUGFydC5ub3JtYWxpemVQYXRoKHNsaWRlUGFydC5nZXRSZWxUYXJnZXQoXCJzbGlkZUxheW91dFwiKSkpXG4gICAgICAgICAgICBjb25zdCBsYXlvdXRQYXJ0PW5ldyBQYXJ0KGxheW91dFRhcmdldCxvZmZpY2VEb2N1bWVudC5kb2MpXG4gICAgICAgICAgICBjb25zdCBtYXN0ZXJUYXJnZXQ9b2ZmaWNlRG9jdW1lbnQuZG9jLm5vcm1hbGl6ZVBhdGgobGF5b3V0UGFydC5ub3JtYWxpemVQYXRoKGxheW91dFBhcnQuZ2V0UmVsVGFyZ2V0KFwic2xpZGVNYXN0ZXJcIikpKVxuICAgICAgICAgICAgcmV0dXJuIHsuLi5wcm9wcyxwYXJ0OiQucGFydCwgbGF5b3V0OmxheW91dFRhcmdldCwgbWFzdGVyOm1hc3RlclRhcmdldCwgY2hpbGRyZW4sIHR5cGU6XCJzbGlkZVwifVxuICAgICAgICB9LFxuXG4gICAgICAgIG5vdGVzTWFzdGVySWQod1htbCwgb2ZmaWNlRG9jdW1lbnQpe1xuICAgICAgICAgICAgY29uc3QgJD1vZmZpY2VEb2N1bWVudC5ub3Rlc01hc3Rlcih3WG1sLmF0dHJpYnMpXG4gICAgICAgICAgICByZXR1cm4ge3BhcnQ6JC5wYXJ0LHR5cGU6XCJub3RlTWFzdGVyXCIsfVxuICAgICAgICB9LFxuXG4gICAgICAgIGhhbmRvdXRNYXN0ZXJJZCh3WG1sLCBvZmZpY2VEb2N1bWVudCl7XG4gICAgICAgICAgICBjb25zdCAkPW9mZmljZURvY3VtZW50LmhhbmRvdXRNYXN0ZXIod1htbC5hdHRyaWJzKVxuICAgICAgICAgICAgcmV0dXJuIHtwYXJ0OiQucGFydCx0eXBlOlwiaGFuZG91dE1hc3RlclwiLCB9XG4gICAgICAgIH0sXG5cbiAgICAgICAgc2xkTGF5b3V0SWQod1htbCxvZmZpY2VEb2N1bWVudCl7Ly9pbiBtYXN0ZXJcbiAgICAgICAgICAgIGNvbnN0IGNvbnRlbnQ9XCJwXFxcXDpjU2xkXCJcbiAgICAgICAgICAgIGNvbnN0IG1hc3Rlcj1vZmZpY2VEb2N1bWVudC4kKHdYbWwpLnBhcnQoKVxuICAgICAgICAgICAgY29uc3QgJD1uZXcgUGFydChtYXN0ZXIsb2ZmaWNlRG9jdW1lbnQuZG9jKS5nZXRSZWwod1htbC5hdHRyaWJzW1wicjppZFwiXSlcbiAgICAgICAgICAgIGNvbnN0ICRsYXlvdXQ9JChcInBcXFxcOnNsZExheW91dFwiKVxuICAgICAgICAgICAgY29uc3QgcHJvcHM9JGxheW91dC5wcm9wcyh7X19maWx0ZXI6YDpub3QoJHtjb250ZW50fSxhXFxcXDpleHRMc3QpYH0pXG4gICAgICAgICAgICBjb25zdCBjaGlsZHJlbj0kbGF5b3V0LmNoaWxkcmVuKGNvbnRlbnQpLnRvQXJyYXkoKVxuXG4gICAgICAgICAgICByZXR1cm4gey4uLnByb3BzLHBhcnQ6JC5wYXJ0LCBtYXN0ZXIsIGNoaWxkcmVuLCB0eXBlOlwic2xpZGVMYXlvdXRcIiwgfVxuICAgICAgICB9LFxuXG4gICAgICAgIHNwVHJlZSh3WG1sLG9mZmljZURvY3VtZW50KXtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRlbnQ9XCI6bm90KHBcXFxcOm52R3JwU3BQcixwXFxcXDpncnBTcFByKVwiXG4gICAgICAgICAgICBjb25zdCAkPW9mZmljZURvY3VtZW50LiQod1htbClcbiAgICAgICAgICAgIGNvbnN0IGNoaWxkcmVuPSQuY2hpbGRyZW4oY29udGVudCkudG9BcnJheSgpXG4gICAgICAgICAgICBjb25zdCBwcm9wcz1vZmZpY2VEb2N1bWVudC4kKHdYbWwpLnByb3BzKHtcbiAgICAgICAgICAgICAgICAuLi5kcmF3bWwob2ZmaWNlRG9jdW1lbnQpLFxuICAgICAgICAgICAgICAgIF9fZmlsdGVyOmBwXFxcXDpudkdycFNwUHIscFxcXFw6Z3JwU3BQcmAsXG4gICAgICAgICAgICAgICAgdGlkeTooe2dycFNwUHIsIG52R3JwU3BQcjp7Y052UHI9e30sY052U3BQcj17fSxudlByPXt9fSwgLi4ub3RoZXJzfSk9Pih7Li4uZ3JwU3BQciwgLi4uY052UHIsLi4uY052U3BQciwuLi5udlByLC4uLm90aGVyc30pXG4gICAgICAgICAgICB9KVxuXG4gICAgICAgICAgICByZXR1cm4gey4uLnByb3BzLHR5cGU6XCJzcFRyZWVcIiwgY2hpbGRyZW59XG4gICAgICAgIH0sXG5cbiAgICAgICAgcGljKHdYbWwsIG9mZmljZURvY3VtZW50KXtcbiAgICAgICAgICAgIGNvbnN0IHByb3BzPW9mZmljZURvY3VtZW50LiQod1htbCkucHJvcHMoe1xuICAgICAgICAgICAgICAgIC4uLmRyYXdtbChvZmZpY2VEb2N1bWVudCksXG4gICAgICAgICAgICAgICAgdGlkeTooe3NwUHIsIG52UGljUHI6e2NOdlByPXt9LGNOdlNwUHI9e30sbnZQcj17fX0sIC4uLm90aGVyc30pPT4oey4uLnNwUHIsIC4uLmNOdlByLC4uLmNOdlNwUHIsLi4ubnZQciwuLi5vdGhlcnN9KVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIHJldHVybiB7Li4ucHJvcHMsdHlwZTpcInBpY3R1cmVcIn1cbiAgICAgICAgfSxcblxuICAgICAgICBzcCh3WG1sLCBvZmZpY2VEb2N1bWVudCl7XG4gICAgICAgICAgICBjb25zdCBjb250ZW50PVwicFxcXFw6dHhCb2R5XCJcblx0XHRcdGNvbnN0ICQ9b2ZmaWNlRG9jdW1lbnQuJCh3WG1sKVxuICAgICAgICAgICAgY29uc3QgY2hpbGRyZW49JC5jaGlsZHJlbihjb250ZW50KS50b0FycmF5KClcbiAgICAgICAgICAgIGNvbnN0IGNvbW1vblByb3BzPWRyYXdtbChvZmZpY2VEb2N1bWVudClcbiAgICAgICAgICAgIGNvbnN0IG5hbWVzPXtzcExvY2tzOlwibG9ja3NcIiwgcGg6XCJwbGFjZWhvbGRlclwiLCAuLi5jb21tb25Qcm9wcy5uYW1lc31cbiAgICAgICAgICAgIGNvbnN0IHByb3BzPSQucHJvcHMoe1xuICAgICAgICAgICAgICAgIC4uLmNvbW1vblByb3BzLFxuICAgICAgICAgICAgICAgIF9fZmlsdGVyOmA6bm90KCR7Y29udGVudH0sYVxcXFw6ZXh0THN0KWAsXG4gICAgICAgICAgICAgICAgbmFtZXMsXG4gICAgICAgICAgICAgICAgcGg6KHthdHRyaWJzOnt0eXBlPVwiYm9keVwiLGlkeH19KT0+KHt0eXBlLGlkeH0pLFxuICAgICAgICAgICAgICAgIHRpZHk6KHtzcFByLCBudlNwUHI6e2NOdlByPXt9LGNOdlNwUHI9e30sbnZQcj17fX19KT0+KHsuLi5zcFByLCAuLi5jTnZQciwuLi5jTnZTcFByLC4uLm52UHJ9KVxuICAgICAgICAgICAgfSlcblxuICAgICAgICAgICAgY29uc3QgdHhCb2R5PU9mZmljZURvY3VtZW50LmlkZW50aXRpZXMudHhCb2R5KGNoaWxkcmVuWzBdLG9mZmljZURvY3VtZW50KVxuICAgICAgICAgICAgcmV0dXJuIHsuLi5wcm9wcywgY2hpbGRyZW4sIC4uLnR4Qm9keSwgdHlwZTpcInNoYXBlXCJ9XG4gICAgICAgIH0sXG5cbiAgICAgICAgdHhCb2R5KHdYbWwsIG9mZmljZURvY3VtZW50KXtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRlbnQ9XCJhXFxcXDpwXCJcblx0XHRcdGNvbnN0ICQ9b2ZmaWNlRG9jdW1lbnQuJCh3WG1sKVxuICAgICAgICAgICAgY29uc3QgY2hpbGRyZW49JC5jaGlsZHJlbihcImFcXFxcOnBcIikudG9BcnJheSgpXG4gICAgICAgICAgICBjb25zdCB0ZXh0U3R5bGU9JC5wcm9wcyh7XG4gICAgICAgICAgICAgICAgLi4uZHJhd21sKG9mZmljZURvY3VtZW50KSxcbiAgICAgICAgICAgICAgICBsblNwY1JlZHVjdGlvbjp2PT5wYXJzZUludCh2KSxcbiAgICAgICAgICAgICAgICBmb250U2NhbGU6IHY9PnBhcnNlSW50KHYpLFxuICAgICAgICAgICAgICAgIF9fZmlsdGVyOmA6bm90KGFcXFxcOnAsYVxcXFw6ZXh0THN0KWAsXG4gICAgICAgICAgICAgICAgdGlkeTooe2xzdFN0eWxlPXt9LGJvZHlQcj17fSwuLi5vdGhlcnN9KT0+KHsuLi5vdGhlcnMsIC4uLmJvZHlQciwgLi4ubHN0U3R5bGV9KVxuICAgICAgICAgICAgfSlcblx0XHRcdHJldHVybiB7dGV4dFN0eWxlLCBjaGlsZHJlbiwgdHlwZTpcInR4Qm9keVwifVxuICAgICAgICB9LFxuXG4gICAgICAgIHAod1htbCwgb2ZmaWNlRG9jdW1lbnQpe1xuICAgICAgICAgICAgY29uc3QgY29udGVudD1cIjpub3QoYVxcXFw6cFByLGFcXFxcOmVuZFBhcmFSUHIpXCJcbiAgICAgICAgICAgIGNvbnN0ICQ9b2ZmaWNlRG9jdW1lbnQuJCh3WG1sKVxuICAgICAgICAgICAgY29uc3QgY2hpbGRyZW49JC5jaGlsZHJlbihjb250ZW50KS50b0FycmF5KClcbiAgICAgICAgICAgIGNvbnN0IHN0eWxlPSQuY2hpbGRyZW4oXCJhXFxcXDpwUHJcIikucHJvcHMoZHJhd21sKG9mZmljZURvY3VtZW50KSlcbiAgICAgICAgICAgIGNvbnN0IGRlZmF1bHRTdHlsZT0kLmNoaWxkcmVuKFwiYVxcXFw6ZW5kUGFyYVJQclwiKS5wcm9wcyhkcmF3bWwob2ZmaWNlRG9jdW1lbnQpKVxuICAgICAgICAgICAgcmV0dXJuIHtzdHlsZTp7bHZsOjAsIC4uLnN0eWxlfSwgZGVmYXVsdFN0eWxlLCBjaGlsZHJlbiwgdHlwZTpcInBcIn1cbiAgICAgICAgfSxcblxuICAgICAgICByKHdYbWwsb2ZmaWNlRG9jdW1lbnQpe1xuICAgICAgICAgICAgY29uc3QgY29udGVudD1cIjpub3QoYVxcXFw6clByKVwiXG4gICAgICAgICAgICBjb25zdCAkPW9mZmljZURvY3VtZW50LiQod1htbClcbiAgICAgICAgICAgIGNvbnN0IGNoaWxkcmVuPSQuY2hpbGRyZW4oY29udGVudCkudG9BcnJheSgpXG4gICAgICAgICAgICBjb25zdCBzdHlsZT0kLmNoaWxkcmVuKFwiYVxcXFw6clByXCIpLnByb3BzKHsuLi5kcmF3bWwob2ZmaWNlRG9jdW1lbnQpfSlcbiAgICAgICAgICAgIHJldHVybiB7c3R5bGUsIGNoaWxkcmVuLCB0eXBlOlwiclwifVxuICAgICAgICB9LFxuXG4gICAgICAgIGNoYXJ0KHdYbWwsIG9mZmljZURvY3VtZW50KXtcbiAgICAgICAgICAgIHJldHVybiB7dHlwZTogXCJjaGFydFwifVxuICAgICAgICB9LFxuXG4gICAgICAgIHJlbElkcyh3WG1sLCBvZmZpY2VEb2N1bWVudCl7XG4gICAgICAgICAgICByZXR1cm4ge3R5cGU6XCJkaWFncmFtXCJ9XG4gICAgICAgIH0sXG5cbiAgICAgICAgZ3JhcGhpY0ZyYW1lKHdYbWwsIG9mZmljZURvY3VtZW50KXtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRlbnQ9XCJhXFxcXDpncmFwaGljXCJcbiAgICAgICAgICAgIGNvbnN0ICQ9b2ZmaWNlRG9jdW1lbnQuJCh3WG1sKVxuICAgICAgICAgICAgY29uc3QgY2hpbGRyZW49JC5jaGlsZHJlbihjb250ZW50KS50b0FycmF5KClcbiAgICAgICAgICAgIGNvbnN0IHByb3BzPSQucHJvcHMoe1xuICAgICAgICAgICAgICAgIC4uLmRyYXdtbChvZmZpY2VEb2N1bWVudCksXG4gICAgICAgICAgICAgICAgX19maWx0ZXI6YDpub3QoJHtjb250ZW50fSxhXFxcXDpleHRMc3QpYCxcbiAgICAgICAgICAgICAgICB0aWR5Oih7c3BQciwgbnZHcmFwaGljRnJhbWVQcjp7Y052UHI9e30sY052U3BQcj17fSxudlByPXt9fSwgLi4ub3RoZXJzfSk9Pih7Li4uc3BQciwgLi4uY052UHIsLi4uY052U3BQciwuLi5udlByLC4uLm90aGVyc30pXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgcmV0dXJuIHsuLi5wcm9wcywgY2hpbGRyZW4sIHR5cGU6XCJncmFwaGljRnJhbWVcIn1cbiAgICAgICAgfSxcblxuICAgICAgICB0Ymwod1htbCwgb2ZmaWNlRG9jdW1lbnQpe1xuICAgICAgICAgICAgY29uc3QgY29udGVudD1cImFcXFxcOnRyXCJcbiAgICAgICAgICAgIGNvbnN0ICQ9b2ZmaWNlRG9jdW1lbnQuJCh3WG1sKVxuICAgICAgICAgICAgY29uc3QgY2hpbGRyZW49JC5jaGlsZHJlbihjb250ZW50KS50b0FycmF5KClcbiAgICAgICAgICAgIGNvbnN0IHByb3BzPSQucHJvcHMoe1xuICAgICAgICAgICAgICAgIC4uLmRyYXdtbChvZmZpY2VEb2N1bWVudCksXG4gICAgICAgICAgICAgICAgX19maWx0ZXI6YDpub3QoJHtjb250ZW50fSwgYVxcXFw6ZXh0THN0KWAsXG4gICAgICAgICAgICAgICAgdGFibGVTdHlsZUlkOih7Y2hpbGRyZW59KT0+Y2hpbGRyZW4uZmluZChhPT5hLmRhdGEpLmRhdGEsXG4gICAgICAgICAgICAgICAgdGJsR3JpZDooe2NoaWxkcmVufSk9PmNoaWxkcmVuLmZpbHRlcihhPT5hLm5hbWUpLnJlZHVjZSgoY29scyx7YXR0cmliczp7d319KT0+e1xuICAgICAgICAgICAgICAgICAgICBjb2xzLnB1c2gob2ZmaWNlRG9jdW1lbnQuZG9jLmVtdTJQeCh3KSlcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNvbHNcbiAgICAgICAgICAgICAgICB9LFtdKSxcbiAgICAgICAgICAgICAgICB0aWR5Oih7dGJsUHIsIHRibEdyaWQ6Y29scywgLi4ub3RoZXJzfSk9Pih7Li4udGJsUHIsIGNvbHMsIC4uLm90aGVyc30pXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgcmV0dXJuIHsuLi5wcm9wcywgY2hpbGRyZW4sIHR5cGU6XCJ0YmxcIn1cbiAgICAgICAgfSxcblxuICAgICAgICB0YmxTdHlsZSh3WG1sLCBvZmZpY2VEb2N1bWVudCl7XG4gICAgICAgICAgICBjb25zdCAkPW9mZmljZURvY3VtZW50LiQod1htbClcbiAgICAgICAgICAgIGNvbnN0IHByb3BzPSQucHJvcHMoZHJhd21sKG9mZmljZURvY3VtZW50KSlcbiAgICAgICAgICAgIHJldHVybiB7Li4ucHJvcHMsIHR5cGU6XCJ0YmxTdHlsZVwifVxuICAgICAgICB9LFxuXG4gICAgICAgIHRyKHdYbWwsIG9mZmljZURvY3VtZW50KXtcbiAgICAgICAgICAgIGNvbnN0ICQ9b2ZmaWNlRG9jdW1lbnQuJCh3WG1sKVxuICAgICAgICAgICAgY29uc3QgcHJvcHM9JC5wcm9wcyh7XG4gICAgICAgICAgICAgICAgLi4uZHJhd21sKG9mZmljZURvY3VtZW50KSxcbiAgICAgICAgICAgICAgICBfX2ZpbHRlcjpcIjpub3QoKilcIixcbiAgICAgICAgICAgICAgICBoOnY9Pm9mZmljZURvY3VtZW50LmRvYy5lbXUyUHgodiksXG4gICAgICAgICAgICAgICAgbmFtZXM6e2g6XCJoZWlnaHRcIn1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICByZXR1cm4gey4uLnByb3BzLCBjaGlsZHJlbjp3WG1sLmNoaWxkcmVuLCB0eXBlOlwidHJcIn1cbiAgICAgICAgfSxcblxuICAgICAgICB0Yyh3WG1sLCBvZmZpY2VEb2N1bWVudCl7XG4gICAgICAgICAgICBjb25zdCBjb250ZW50PVwiYVxcXFw6dHhCb2R5XCJcbiAgICAgICAgICAgIGNvbnN0ICQ9b2ZmaWNlRG9jdW1lbnQuJCh3WG1sKVxuICAgICAgICAgICAgY29uc3QgY2hpbGRyZW49JC5jaGlsZHJlbihjb250ZW50KS50b0FycmF5KClcbiAgICAgICAgICAgIGNvbnN0IHByb3BzPSQucHJvcHMoe1xuICAgICAgICAgICAgICAgIF9fZmlsdGVyOmA6bm90KCR7Y29udGVudH0sYVxcXFw6ZXh0THN0KWBcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICByZXR1cm4gey4uLnByb3BzLCB0eXBlOlwidGNcIiwgY2hpbGRyZW59XG4gICAgICAgIH1cbiAgICB9XG59Il19 \ No newline at end of file diff --git a/lib/openxml/theme/color.js b/lib/openxml/theme/color.js index 88655c6..1123165 100644 --- a/lib/openxml/theme/color.js +++ b/lib/openxml/theme/color.js @@ -31,4 +31,4 @@ var color = function () { exports.default = color; module.exports = exports['default']; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL3RoZW1lL2NvbG9yLmpzIl0sIm5hbWVzIjpbImNvbG9yIiwic2NoZW1lIiwieE1hcHBpbmciLCJtYXAiLCJuYW1lIiwiZ2V0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0lBQXFCQSxLO0FBQ3BCLGdCQUFZQyxNQUFaLEVBQW9CQyxRQUFwQixFQUE2QjtBQUFBOztBQUM1QixPQUFLQyxHQUFMLEdBQVNELFFBQVQ7QUFDQSxPQUFLRCxNQUFMLEdBQVlBLE1BQVo7QUFDQTs7OztzQkFDR0csSSxFQUFLO0FBQ1IsT0FBR0EsUUFBTSxPQUFULEVBQWlCO0FBQ2hCLFdBQU9BLElBQVA7QUFDREEsVUFBSyxLQUFLRCxHQUFMLENBQVNDLElBQVQsS0FBZ0JBLElBQXJCO0FBQ0EsVUFBTyxPQUFLLEtBQUtILE1BQUwsQ0FBWUksR0FBWixDQUFtQkQsSUFBbkIsa0JBQW9DLEtBQUtILE1BQUwsQ0FBWUksR0FBWixDQUFtQkQsSUFBbkIsdUJBQXBDLElBQWlGLFFBQXRGLENBQVA7QUFDQTs7Ozs7O2tCQVZtQkosSyIsImZpbGUiOiJjb2xvci5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBkZWZhdWx0IGNsYXNzIGNvbG9yIHtcblx0Y29uc3RydWN0b3Ioc2NoZW1lLCB4TWFwcGluZyl7XG5cdFx0dGhpcy5tYXA9eE1hcHBpbmdcblx0XHR0aGlzLnNjaGVtZT1zY2hlbWVcblx0fVxuXHRnZXQobmFtZSl7XG5cdFx0aWYobmFtZT09J3BoQ2xyJykvL3BsYWNlaG9sZGVyIGNvbG9yLCB3aXRjaCB3aWxsIGJlIHJlcGxhY2VkIHdpdGggZGlyZWN0IHN0eWxlXG5cdFx0XHRyZXR1cm4gbmFtZVxuXHRcdG5hbWU9dGhpcy5tYXBbbmFtZV18fG5hbWVcblx0XHRyZXR1cm4gJyMnKyh0aGlzLnNjaGVtZS5nZXQoYCR7bmFtZX0uc3JnYkNscmApfHx0aGlzLnNjaGVtZS5nZXQoYCR7bmFtZX0uc3lzQ2xyLiQubGFzdENscmApfHwnMDAwMDAwJylcblx0fVxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL3RoZW1lL2NvbG9yLmpzIl0sIm5hbWVzIjpbImNvbG9yIiwic2NoZW1lIiwieE1hcHBpbmciLCJtYXAiLCJuYW1lIiwiZ2V0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0lBQXFCQSxLO0FBQ3BCLGdCQUFZQyxNQUFaLEVBQW9CQyxRQUFwQixFQUE2QjtBQUFBOztBQUM1QixPQUFLQyxHQUFMLEdBQVNELFFBQVQ7QUFDQSxPQUFLRCxNQUFMLEdBQVlBLE1BQVo7QUFDQTs7OztzQkFDR0csSSxFQUFLO0FBQ1IsT0FBR0EsUUFBTSxPQUFULEVBQWlCO0FBQ2hCLFdBQU9BLElBQVA7QUFDREEsVUFBSyxLQUFLRCxHQUFMLENBQVNDLElBQVQsS0FBZ0JBLElBQXJCO0FBQ0EsVUFBTyxPQUFLLEtBQUtILE1BQUwsQ0FBWUksR0FBWixDQUFtQkQsSUFBbkIsa0JBQW9DLEtBQUtILE1BQUwsQ0FBWUksR0FBWixDQUFtQkQsSUFBbkIsdUJBQXBDLElBQWlGLFFBQXRGLENBQVA7QUFDQTs7Ozs7O2tCQVZtQkosSyIsImZpbGUiOiJjb2xvci5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBkZWZhdWx0IGNsYXNzIGNvbG9yIHtcblx0Y29uc3RydWN0b3Ioc2NoZW1lLCB4TWFwcGluZyl7XG5cdFx0dGhpcy5tYXA9eE1hcHBpbmdcblx0XHR0aGlzLnNjaGVtZT1zY2hlbWVcblx0fVxuXHRnZXQobmFtZSl7XG5cdFx0aWYobmFtZT09J3BoQ2xyJykvL3BsYWNlaG9sZGVyIGNvbG9yLCB3aXRjaCB3aWxsIGJlIHJlcGxhY2VkIHdpdGggZGlyZWN0IHN0eWxlXG5cdFx0XHRyZXR1cm4gbmFtZVxuXHRcdG5hbWU9dGhpcy5tYXBbbmFtZV18fG5hbWVcblx0XHRyZXR1cm4gJyMnKyh0aGlzLnNjaGVtZS5nZXQoYCR7bmFtZX0uc3JnYkNscmApfHx0aGlzLnNjaGVtZS5nZXQoYCR7bmFtZX0uc3lzQ2xyLiQubGFzdENscmApfHwnMDAwMDAwJylcblx0fVxufVxuIl19 \ No newline at end of file diff --git a/lib/openxml/theme/font.js b/lib/openxml/theme/font.js index 93163a5..1fab566 100644 --- a/lib/openxml/theme/font.js +++ b/lib/openxml/theme/font.js @@ -70,4 +70,4 @@ var font = function () { exports.default = font; module.exports = exports['default']; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL3RoZW1lL2ZvbnQuanMiXSwibmFtZXMiOlsiZm9udCIsInNjaGVtZSIsInhMYW5nIiwibWFqb3JGb250IiwiZ2V0IiwicmVkdWNlIiwicCIsIiQiLCJzY3JpcHQiLCJ0eXBlZmFjZSIsIm1pbm9yRm9udCIsImFzY2lpIiwiZWEiLCJiaWRpIiwibmFtZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztJQUFxQkEsSTtBQUNwQixlQUFZQyxNQUFaLEVBQW1CQyxLQUFuQixFQUF5QjtBQUFBOztBQUN4QixPQUFLQyxTQUFMLEdBQWVGLE9BQU9HLEdBQVAsQ0FBVyxnQkFBWCxFQUNiQyxNQURhLENBQ04sVUFBQ0MsQ0FBRDtBQUFBLHFCQUFJQyxDQUFKO0FBQUEsT0FBT0MsTUFBUCxVQUFPQSxNQUFQO0FBQUEsT0FBY0MsUUFBZCxVQUFjQSxRQUFkO0FBQUEsVUFBNEJILEVBQUVFLE1BQUYsSUFBVUMsUUFBVixFQUFtQkgsQ0FBL0M7QUFBQSxHQURNLEVBQzRDLEVBRDVDLENBQWY7O0FBR0EsT0FBS0ksU0FBTCxHQUFlVCxPQUFPRyxHQUFQLENBQVcsZ0JBQVgsRUFDYkMsTUFEYSxDQUNOLFVBQUNDLENBQUQ7QUFBQSx1QkFBSUMsQ0FBSjtBQUFBLE9BQU9DLE1BQVAsV0FBT0EsTUFBUDtBQUFBLE9BQWNDLFFBQWQsV0FBY0EsUUFBZDtBQUFBLFVBQTRCSCxFQUFFRSxNQUFGLElBQVVDLFFBQVYsRUFBbUJILENBQS9DO0FBQUEsR0FETSxFQUM0QyxFQUQ1QyxDQUFmOztBQUdBLE1BQUlHLGlCQUFKO0FBQ0EsTUFBR0EsV0FBU1IsT0FBT0csR0FBUCxDQUFXLDRCQUFYLENBQVosRUFDQyxLQUFLTSxTQUFMLENBQWVDLEtBQWYsR0FBcUJGLFFBQXJCOztBQUVELE1BQUdBLFdBQVNSLE9BQU9HLEdBQVAsQ0FBVyw0QkFBWCxDQUFaLEVBQ0MsS0FBS0QsU0FBTCxDQUFlUSxLQUFmLEdBQXFCRixRQUFyQjs7QUFFRCxNQUFJRyxLQUFHVixNQUFNLFVBQU4sQ0FBUDtBQUNBLE1BQUdPLFdBQVNSLE9BQU9HLEdBQVAsQ0FBVyx5QkFBWCxDQUFaLEVBQ0MsS0FBS00sU0FBTCxDQUFlRSxFQUFmLEdBQWtCSCxRQUFsQixDQURELEtBRUssSUFBR0csT0FBT0gsV0FBUyxLQUFLQyxTQUFMLENBQWVFLEVBQWYsQ0FBaEIsQ0FBSCxFQUNKLEtBQUtGLFNBQUwsQ0FBZUUsRUFBZixHQUFrQkgsUUFBbEI7O0FBRUQsTUFBR0EsV0FBU1IsT0FBT0csR0FBUCxDQUFXLHlCQUFYLENBQVosRUFDQyxLQUFLRCxTQUFMLENBQWVTLEVBQWYsR0FBa0JILFFBQWxCLENBREQsS0FFSyxJQUFHRyxPQUFPSCxXQUFTLEtBQUtOLFNBQUwsQ0FBZVMsRUFBZixDQUFoQixDQUFILEVBQ0osS0FBS1QsU0FBTCxDQUFlUyxFQUFmLEdBQWtCSCxRQUFsQjs7QUFFRCxNQUFJSSxPQUFLWCxNQUFNLE1BQU4sQ0FBVDtBQUNBLE1BQUdPLFdBQVNSLE9BQU9HLEdBQVAsQ0FBVyx5QkFBWCxDQUFaLEVBQ0MsS0FBS00sU0FBTCxDQUFlRyxJQUFmLEdBQW9CSixRQUFwQixDQURELEtBRUssSUFBR0ksU0FBU0osV0FBUyxLQUFLQyxTQUFMLENBQWVHLElBQWYsQ0FBbEIsQ0FBSCxFQUNKLEtBQUtILFNBQUwsQ0FBZUcsSUFBZixHQUFvQkosUUFBcEI7O0FBRUQsTUFBR0EsV0FBU1IsT0FBT0csR0FBUCxDQUFXLHlCQUFYLENBQVosRUFDQyxLQUFLRCxTQUFMLENBQWVVLElBQWYsR0FBb0JKLFFBQXBCLENBREQsS0FFSyxJQUFHSSxTQUFTSixXQUFTLEtBQUtOLFNBQUwsQ0FBZVUsSUFBZixDQUFsQixDQUFILEVBQ0osS0FBS1YsU0FBTCxDQUFlVSxJQUFmLEdBQW9CSixRQUFwQjtBQUNEOzs7O3NCQUNHSyxJLEVBQUs7QUFDUixXQUFPQSxJQUFQO0FBQ0EsU0FBSyxZQUFMO0FBQ0EsU0FBSyxZQUFMO0FBQ0MsWUFBTyxLQUFLSixTQUFMLENBQWVDLEtBQXRCO0FBQ0QsU0FBSyxlQUFMO0FBQ0MsWUFBTyxLQUFLRCxTQUFMLENBQWVFLEVBQXRCO0FBQ0QsU0FBSyxXQUFMO0FBQ0MsWUFBTyxLQUFLRixTQUFMLENBQWVHLElBQXRCOztBQUVELFNBQUssWUFBTDtBQUNBLFNBQUssWUFBTDtBQUNDLFlBQU8sS0FBS1YsU0FBTCxDQUFlUSxLQUF0QjtBQUNELFNBQUssZUFBTDtBQUNDLFlBQU8sS0FBS1IsU0FBTCxDQUFlUyxFQUF0QjtBQUNELFNBQUssV0FBTDtBQUNDLFlBQU8sS0FBS1QsU0FBTCxDQUFlVSxJQUF0QjtBQWZEO0FBaUJBOzs7Ozs7a0JBdkRtQmIsSSIsImZpbGUiOiJmb250LmpzIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQgY2xhc3MgZm9udHtcblx0Y29uc3RydWN0b3Ioc2NoZW1lLHhMYW5nKXtcblx0XHR0aGlzLm1ham9yRm9udD1zY2hlbWUuZ2V0KCdtYWpvckZvbnQuZm9udCcpXG5cdFx0XHQucmVkdWNlKChwLHskOntzY3JpcHQsdHlwZWZhY2V9fSk9PihwW3NjcmlwdF09dHlwZWZhY2UscCkse30pXG5cblx0XHR0aGlzLm1pbm9yRm9udD1zY2hlbWUuZ2V0KCdtaW5vckZvbnQuZm9udCcpXG5cdFx0XHQucmVkdWNlKChwLHskOntzY3JpcHQsdHlwZWZhY2V9fSk9PihwW3NjcmlwdF09dHlwZWZhY2UscCkse30pXG5cblx0XHRsZXQgdHlwZWZhY2Vcblx0XHRpZih0eXBlZmFjZT1zY2hlbWUuZ2V0KCdtaW5vckZvbnQubGF0aW4uJC50eXBlZmFjZScpKVxuXHRcdFx0dGhpcy5taW5vckZvbnQuYXNjaWk9dHlwZWZhY2VcblxuXHRcdGlmKHR5cGVmYWNlPXNjaGVtZS5nZXQoJ21ham9yRm9udC5sYXRpbi4kLnR5cGVmYWNlJykpXG5cdFx0XHR0aGlzLm1ham9yRm9udC5hc2NpaT10eXBlZmFjZVxuXG5cdFx0bGV0IGVhPXhMYW5nWydlYXN0QXNpYSddXG5cdFx0aWYodHlwZWZhY2U9c2NoZW1lLmdldCgnbWlub3JGb250LmVhLiQudHlwZWZhY2UnKSlcblx0XHRcdHRoaXMubWlub3JGb250LmVhPXR5cGVmYWNlXG5cdFx0ZWxzZSBpZihlYSAmJiAodHlwZWZhY2U9dGhpcy5taW5vckZvbnRbZWFdKSlcblx0XHRcdHRoaXMubWlub3JGb250LmVhPXR5cGVmYWNlXG5cblx0XHRpZih0eXBlZmFjZT1zY2hlbWUuZ2V0KCdtYWpvckZvbnQuZWEuJC50eXBlZmFjZScpKVxuXHRcdFx0dGhpcy5tYWpvckZvbnQuZWE9dHlwZWZhY2Vcblx0XHRlbHNlIGlmKGVhICYmICh0eXBlZmFjZT10aGlzLm1ham9yRm9udFtlYV0pKVxuXHRcdFx0dGhpcy5tYWpvckZvbnQuZWE9dHlwZWZhY2VcblxuXHRcdGxldCBiaWRpPXhMYW5nWydiaWRpJ11cblx0XHRpZih0eXBlZmFjZT1zY2hlbWUuZ2V0KCdtaW5vckZvbnQuY3MuJC50eXBlZmFjZScpKVxuXHRcdFx0dGhpcy5taW5vckZvbnQuYmlkaT10eXBlZmFjZVxuXHRcdGVsc2UgaWYoYmlkaSAmJiAodHlwZWZhY2U9dGhpcy5taW5vckZvbnRbYmlkaV0pKVxuXHRcdFx0dGhpcy5taW5vckZvbnQuYmlkaT10eXBlZmFjZVxuXG5cdFx0aWYodHlwZWZhY2U9c2NoZW1lLmdldCgnbWFqb3JGb250LmNzLiQudHlwZWZhY2UnKSlcblx0XHRcdHRoaXMubWFqb3JGb250LmJpZGk9dHlwZWZhY2Vcblx0XHRlbHNlIGlmKGJpZGkgJiYgKHR5cGVmYWNlPXRoaXMubWFqb3JGb250W2JpZGldKSlcblx0XHRcdHRoaXMubWFqb3JGb250LmJpZGk9dHlwZWZhY2Vcblx0fVxuXHRnZXQobmFtZSl7XG5cdFx0c3dpdGNoKG5hbWUpe1xuXHRcdGNhc2UgJ21pbm9ySEFuc2knOlxuXHRcdGNhc2UgJ21pbm9yQXNjaWknOlxuXHRcdFx0cmV0dXJuIHRoaXMubWlub3JGb250LmFzY2lpXG5cdFx0Y2FzZSAnbWlub3JFYXN0QXNpYSc6XG5cdFx0XHRyZXR1cm4gdGhpcy5taW5vckZvbnQuZWFcblx0XHRjYXNlICdtaW5vckJpZGknOlxuXHRcdFx0cmV0dXJuIHRoaXMubWlub3JGb250LmJpZGlcblxuXHRcdGNhc2UgJ21ham9ySEFuc2knOlxuXHRcdGNhc2UgJ21ham9yQXNjaWknOlxuXHRcdFx0cmV0dXJuIHRoaXMubWFqb3JGb250LmFzY2lpXG5cdFx0Y2FzZSAnbWFqb3JFYXN0QXNpYSc6XG5cdFx0XHRyZXR1cm4gdGhpcy5tYWpvckZvbnQuZWFcblx0XHRjYXNlICdtYWpvckJpZGknOlxuXHRcdFx0cmV0dXJuIHRoaXMubWFqb3JGb250LmJpZGlcblx0XHR9XG5cdH1cbn1cbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL3RoZW1lL2ZvbnQuanMiXSwibmFtZXMiOlsiZm9udCIsInNjaGVtZSIsInhMYW5nIiwibWFqb3JGb250IiwiZ2V0IiwicmVkdWNlIiwicCIsIiQiLCJzY3JpcHQiLCJ0eXBlZmFjZSIsIm1pbm9yRm9udCIsImFzY2lpIiwiZWEiLCJiaWRpIiwibmFtZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztJQUFxQkEsSTtBQUNwQixlQUFZQyxNQUFaLEVBQW1CQyxLQUFuQixFQUF5QjtBQUFBOztBQUN4QixPQUFLQyxTQUFMLEdBQWVGLE9BQU9HLEdBQVAsQ0FBVyxnQkFBWCxFQUNiQyxNQURhLENBQ04sVUFBQ0MsQ0FBRDtBQUFBLHFCQUFJQyxDQUFKO0FBQUEsT0FBT0MsTUFBUCxVQUFPQSxNQUFQO0FBQUEsT0FBY0MsUUFBZCxVQUFjQSxRQUFkO0FBQUEsVUFBNEJILEVBQUVFLE1BQUYsSUFBVUMsUUFBVixFQUFtQkgsQ0FBL0M7QUFBQSxHQURNLEVBQzRDLEVBRDVDLENBQWY7O0FBR0EsT0FBS0ksU0FBTCxHQUFlVCxPQUFPRyxHQUFQLENBQVcsZ0JBQVgsRUFDYkMsTUFEYSxDQUNOLFVBQUNDLENBQUQ7QUFBQSx1QkFBSUMsQ0FBSjtBQUFBLE9BQU9DLE1BQVAsV0FBT0EsTUFBUDtBQUFBLE9BQWNDLFFBQWQsV0FBY0EsUUFBZDtBQUFBLFVBQTRCSCxFQUFFRSxNQUFGLElBQVVDLFFBQVYsRUFBbUJILENBQS9DO0FBQUEsR0FETSxFQUM0QyxFQUQ1QyxDQUFmOztBQUdBLE1BQUlHLGlCQUFKO0FBQ0EsTUFBR0EsV0FBU1IsT0FBT0csR0FBUCxDQUFXLDRCQUFYLENBQVosRUFDQyxLQUFLTSxTQUFMLENBQWVDLEtBQWYsR0FBcUJGLFFBQXJCOztBQUVELE1BQUdBLFdBQVNSLE9BQU9HLEdBQVAsQ0FBVyw0QkFBWCxDQUFaLEVBQ0MsS0FBS0QsU0FBTCxDQUFlUSxLQUFmLEdBQXFCRixRQUFyQjs7QUFFRCxNQUFJRyxLQUFHVixNQUFNLFVBQU4sQ0FBUDtBQUNBLE1BQUdPLFdBQVNSLE9BQU9HLEdBQVAsQ0FBVyx5QkFBWCxDQUFaLEVBQ0MsS0FBS00sU0FBTCxDQUFlRSxFQUFmLEdBQWtCSCxRQUFsQixDQURELEtBRUssSUFBR0csT0FBT0gsV0FBUyxLQUFLQyxTQUFMLENBQWVFLEVBQWYsQ0FBaEIsQ0FBSCxFQUNKLEtBQUtGLFNBQUwsQ0FBZUUsRUFBZixHQUFrQkgsUUFBbEI7O0FBRUQsTUFBR0EsV0FBU1IsT0FBT0csR0FBUCxDQUFXLHlCQUFYLENBQVosRUFDQyxLQUFLRCxTQUFMLENBQWVTLEVBQWYsR0FBa0JILFFBQWxCLENBREQsS0FFSyxJQUFHRyxPQUFPSCxXQUFTLEtBQUtOLFNBQUwsQ0FBZVMsRUFBZixDQUFoQixDQUFILEVBQ0osS0FBS1QsU0FBTCxDQUFlUyxFQUFmLEdBQWtCSCxRQUFsQjs7QUFFRCxNQUFJSSxPQUFLWCxNQUFNLE1BQU4sQ0FBVDtBQUNBLE1BQUdPLFdBQVNSLE9BQU9HLEdBQVAsQ0FBVyx5QkFBWCxDQUFaLEVBQ0MsS0FBS00sU0FBTCxDQUFlRyxJQUFmLEdBQW9CSixRQUFwQixDQURELEtBRUssSUFBR0ksU0FBU0osV0FBUyxLQUFLQyxTQUFMLENBQWVHLElBQWYsQ0FBbEIsQ0FBSCxFQUNKLEtBQUtILFNBQUwsQ0FBZUcsSUFBZixHQUFvQkosUUFBcEI7O0FBRUQsTUFBR0EsV0FBU1IsT0FBT0csR0FBUCxDQUFXLHlCQUFYLENBQVosRUFDQyxLQUFLRCxTQUFMLENBQWVVLElBQWYsR0FBb0JKLFFBQXBCLENBREQsS0FFSyxJQUFHSSxTQUFTSixXQUFTLEtBQUtOLFNBQUwsQ0FBZVUsSUFBZixDQUFsQixDQUFILEVBQ0osS0FBS1YsU0FBTCxDQUFlVSxJQUFmLEdBQW9CSixRQUFwQjtBQUNEOzs7O3NCQUNHSyxJLEVBQUs7QUFDUixXQUFPQSxJQUFQO0FBQ0EsU0FBSyxZQUFMO0FBQ0EsU0FBSyxZQUFMO0FBQ0MsWUFBTyxLQUFLSixTQUFMLENBQWVDLEtBQXRCO0FBQ0QsU0FBSyxlQUFMO0FBQ0MsWUFBTyxLQUFLRCxTQUFMLENBQWVFLEVBQXRCO0FBQ0QsU0FBSyxXQUFMO0FBQ0MsWUFBTyxLQUFLRixTQUFMLENBQWVHLElBQXRCOztBQUVELFNBQUssWUFBTDtBQUNBLFNBQUssWUFBTDtBQUNDLFlBQU8sS0FBS1YsU0FBTCxDQUFlUSxLQUF0QjtBQUNELFNBQUssZUFBTDtBQUNDLFlBQU8sS0FBS1IsU0FBTCxDQUFlUyxFQUF0QjtBQUNELFNBQUssV0FBTDtBQUNDLFlBQU8sS0FBS1QsU0FBTCxDQUFlVSxJQUF0QjtBQWZEO0FBaUJBOzs7Ozs7a0JBdkRtQmIsSSIsImZpbGUiOiJmb250LmpzIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQgY2xhc3MgZm9udHtcblx0Y29uc3RydWN0b3Ioc2NoZW1lLHhMYW5nKXtcblx0XHR0aGlzLm1ham9yRm9udD1zY2hlbWUuZ2V0KCdtYWpvckZvbnQuZm9udCcpXG5cdFx0XHQucmVkdWNlKChwLHskOntzY3JpcHQsdHlwZWZhY2V9fSk9PihwW3NjcmlwdF09dHlwZWZhY2UscCkse30pXG5cblx0XHR0aGlzLm1pbm9yRm9udD1zY2hlbWUuZ2V0KCdtaW5vckZvbnQuZm9udCcpXG5cdFx0XHQucmVkdWNlKChwLHskOntzY3JpcHQsdHlwZWZhY2V9fSk9PihwW3NjcmlwdF09dHlwZWZhY2UscCkse30pXG5cblx0XHRsZXQgdHlwZWZhY2Vcblx0XHRpZih0eXBlZmFjZT1zY2hlbWUuZ2V0KCdtaW5vckZvbnQubGF0aW4uJC50eXBlZmFjZScpKVxuXHRcdFx0dGhpcy5taW5vckZvbnQuYXNjaWk9dHlwZWZhY2VcblxuXHRcdGlmKHR5cGVmYWNlPXNjaGVtZS5nZXQoJ21ham9yRm9udC5sYXRpbi4kLnR5cGVmYWNlJykpXG5cdFx0XHR0aGlzLm1ham9yRm9udC5hc2NpaT10eXBlZmFjZVxuXG5cdFx0bGV0IGVhPXhMYW5nWydlYXN0QXNpYSddXG5cdFx0aWYodHlwZWZhY2U9c2NoZW1lLmdldCgnbWlub3JGb250LmVhLiQudHlwZWZhY2UnKSlcblx0XHRcdHRoaXMubWlub3JGb250LmVhPXR5cGVmYWNlXG5cdFx0ZWxzZSBpZihlYSAmJiAodHlwZWZhY2U9dGhpcy5taW5vckZvbnRbZWFdKSlcblx0XHRcdHRoaXMubWlub3JGb250LmVhPXR5cGVmYWNlXG5cblx0XHRpZih0eXBlZmFjZT1zY2hlbWUuZ2V0KCdtYWpvckZvbnQuZWEuJC50eXBlZmFjZScpKVxuXHRcdFx0dGhpcy5tYWpvckZvbnQuZWE9dHlwZWZhY2Vcblx0XHRlbHNlIGlmKGVhICYmICh0eXBlZmFjZT10aGlzLm1ham9yRm9udFtlYV0pKVxuXHRcdFx0dGhpcy5tYWpvckZvbnQuZWE9dHlwZWZhY2VcblxuXHRcdGxldCBiaWRpPXhMYW5nWydiaWRpJ11cblx0XHRpZih0eXBlZmFjZT1zY2hlbWUuZ2V0KCdtaW5vckZvbnQuY3MuJC50eXBlZmFjZScpKVxuXHRcdFx0dGhpcy5taW5vckZvbnQuYmlkaT10eXBlZmFjZVxuXHRcdGVsc2UgaWYoYmlkaSAmJiAodHlwZWZhY2U9dGhpcy5taW5vckZvbnRbYmlkaV0pKVxuXHRcdFx0dGhpcy5taW5vckZvbnQuYmlkaT10eXBlZmFjZVxuXG5cdFx0aWYodHlwZWZhY2U9c2NoZW1lLmdldCgnbWFqb3JGb250LmNzLiQudHlwZWZhY2UnKSlcblx0XHRcdHRoaXMubWFqb3JGb250LmJpZGk9dHlwZWZhY2Vcblx0XHRlbHNlIGlmKGJpZGkgJiYgKHR5cGVmYWNlPXRoaXMubWFqb3JGb250W2JpZGldKSlcblx0XHRcdHRoaXMubWFqb3JGb250LmJpZGk9dHlwZWZhY2Vcblx0fVxuXHRnZXQobmFtZSl7XG5cdFx0c3dpdGNoKG5hbWUpe1xuXHRcdGNhc2UgJ21pbm9ySEFuc2knOlxuXHRcdGNhc2UgJ21pbm9yQXNjaWknOlxuXHRcdFx0cmV0dXJuIHRoaXMubWlub3JGb250LmFzY2lpXG5cdFx0Y2FzZSAnbWlub3JFYXN0QXNpYSc6XG5cdFx0XHRyZXR1cm4gdGhpcy5taW5vckZvbnQuZWFcblx0XHRjYXNlICdtaW5vckJpZGknOlxuXHRcdFx0cmV0dXJuIHRoaXMubWlub3JGb250LmJpZGlcblxuXHRcdGNhc2UgJ21ham9ySEFuc2knOlxuXHRcdGNhc2UgJ21ham9yQXNjaWknOlxuXHRcdFx0cmV0dXJuIHRoaXMubWFqb3JGb250LmFzY2lpXG5cdFx0Y2FzZSAnbWFqb3JFYXN0QXNpYSc6XG5cdFx0XHRyZXR1cm4gdGhpcy5tYWpvckZvbnQuZWFcblx0XHRjYXNlICdtYWpvckJpZGknOlxuXHRcdFx0cmV0dXJuIHRoaXMubWFqb3JGb250LmJpZGlcblx0XHR9XG5cdH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/lib/openxml/theme/format.js b/lib/openxml/theme/format.js index dd20aaf..09f2005 100644 --- a/lib/openxml/theme/format.js +++ b/lib/openxml/theme/format.js @@ -63,4 +63,4 @@ var format = function () { exports.default = format; module.exports = exports['default']; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL3RoZW1lL2Zvcm1hdC5qcyJdLCJuYW1lcyI6WyJmb3JtYXQiLCJ3WG1sIiwid0RvYyIsIl9jb252ZXJ0ZXIiLCJTaGFwZSIsIlByb3BlcnRpZXMiLCJfbGluZSIsIl9maWxsIiwiX2JnRmlsbCIsIl9lZmZlY3QiLCJfZm9udCIsImlkeCIsInQiLCIkMSIsInBhcnNlSW50IiwibG4iLCJiZ0ZpbGwiLCJsb2NhbE5hbWUiLCJlZmZlY3RMc3QiLCJhdHRyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0lBQXFCQSxNO0FBQ3BCLGlCQUFZQyxJQUFaLEVBQWtCQyxJQUFsQixFQUF1QjtBQUFBOztBQUN0QjtBQUNBLE9BQUtELElBQUwsR0FBVUEsSUFBVjtBQUNBLE9BQUtDLElBQUwsR0FBVUEsSUFBVjtBQUNBLE9BQUtDLFVBQUwsR0FBZ0IsSUFBSUMsTUFBTUMsVUFBVixDQUFxQixJQUFyQixFQUEwQkgsSUFBMUIsRUFBK0IsSUFBL0IsQ0FBaEI7QUFDQSxPQUFLSSxLQUFMLEdBQVcsRUFBWDtBQUNBLE9BQUtDLEtBQUwsR0FBVyxFQUFDLEdBQUUsRUFBSCxFQUFNLE1BQUssRUFBWCxFQUFYO0FBQ0EsT0FBS0MsT0FBTCxHQUFhLEVBQWI7QUFDQSxPQUFLQyxPQUFMLEdBQWEsRUFBYjtBQUNBLE9BQUtDLEtBQUwsR0FBVyxFQUFYO0FBRUE7Ozs7dUJBQ0lDLEcsRUFBSUMsQyxFQUFFO0FBQ1YsT0FBR0EsSUFBRSxLQUFLTixLQUFMLENBQVdLLEdBQVgsQ0FBTCxFQUNDLE9BQU9DLENBQVA7QUFDRCxVQUFPLENBQUNBLElBQUUsS0FBS1gsSUFBTCxDQUFVWSxFQUFWLENBQWEsbUJBQWlCQyxTQUFTSCxHQUFULElBQWMsQ0FBL0IsSUFBa0MsR0FBL0MsQ0FBSCxNQUE0RCxLQUFLTCxLQUFMLENBQVdLLEdBQVgsSUFBZ0IsS0FBS1IsVUFBTCxDQUFnQlksRUFBaEIsQ0FBbUJILENBQW5CLENBQTVFLENBQVA7QUFDQTs7O3VCQUNJRCxHLEVBQUtDLEMsRUFBRTtBQUNYRCxTQUFJRyxTQUFTSCxHQUFULENBQUo7QUFDQSxPQUFHQSxNQUFJLElBQVAsRUFDQyxPQUFPLEtBQUtLLE1BQUwsQ0FBWUwsTUFBSSxJQUFoQixDQUFQOztBQUVELE9BQUdDLElBQUUsS0FBS0wsS0FBTCxDQUFXSSxHQUFYLENBQUwsRUFDQyxPQUFPQyxDQUFQO0FBQ0QsVUFBTyxDQUFDQSxJQUFFLEtBQUtYLElBQUwsQ0FBVVksRUFBVixDQUFhLGdDQUE4QkMsU0FBU0gsR0FBVCxJQUFjLENBQTVDLElBQStDLEdBQTVELENBQUgsTUFBeUUsS0FBS0osS0FBTCxDQUFXSSxHQUFYLElBQWdCLEtBQUtSLFVBQUwsQ0FBZ0JTLEVBQUVLLFNBQWxCLEVBQTZCTCxDQUE3QixDQUF6RixDQUFQO0FBQ0E7Ozt5QkFDTUQsRyxFQUFLQyxDLEVBQUU7QUFDYixPQUFHQSxJQUFFLEtBQUtKLE9BQUwsQ0FBYUcsR0FBYixDQUFMLEVBQ0MsT0FBT0MsQ0FBUDtBQUNELFVBQU8sQ0FBQ0EsSUFBRSxLQUFLWCxJQUFMLENBQVVZLEVBQVYsQ0FBYSxnQ0FBOEJDLFNBQVNILEdBQVQsSUFBYyxDQUE1QyxJQUErQyxHQUE1RCxDQUFILE1BQXlFLEtBQUtILE9BQUwsQ0FBYUcsR0FBYixJQUFrQixLQUFLUixVQUFMLENBQWdCUyxFQUFFSyxTQUFsQixFQUE2QkwsQ0FBN0IsQ0FBM0YsQ0FBUDtBQUNBOzs7eUJBQ01ELEcsRUFBS0MsQyxFQUFFO0FBQ2IsT0FBR0EsSUFBRSxLQUFLSCxPQUFMLENBQWFFLEdBQWIsQ0FBTCxFQUNDLE9BQU9DLENBQVA7QUFDRCxVQUFPLENBQUNBLElBQUUsS0FBS1gsSUFBTCxDQUFVWSxFQUFWLENBQWEsNEJBQTBCQyxTQUFTSCxHQUFULElBQWMsQ0FBeEMsSUFBMkMsYUFBeEQsQ0FBSCxNQUErRSxLQUFLRixPQUFMLENBQWFFLEdBQWIsSUFBa0IsS0FBS1IsVUFBTCxDQUFnQmUsU0FBaEIsQ0FBMEJOLENBQTFCLENBQWpHLENBQVA7QUFDQTs7O3VCQUNJRCxHLEVBQUtDLEMsRUFBRTtBQUNYLE9BQUdBLElBQUUsS0FBS0YsS0FBTCxDQUFXQyxHQUFYLENBQUwsRUFDQyxPQUFPQyxDQUFQO0FBQ0QsVUFBTyxDQUFDQSxJQUFFLEtBQUtYLElBQUwsQ0FBVVksRUFBVixDQUFhLGdCQUFjRixHQUFkLEdBQWtCLFlBQS9CLENBQUgsTUFBcUQsS0FBS0YsT0FBTCxDQUFhRSxHQUFiLElBQWtCQyxFQUFFTyxJQUFGLENBQU8sVUFBUCxDQUF2RSxDQUFQO0FBQ0E7Ozs7OztrQkF6Q21CbkIsTSIsImZpbGUiOiJmb3JtYXQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBjbGFzcyBmb3JtYXR7XG5cdGNvbnN0cnVjdG9yKHdYbWwsIHdEb2Mpe1xuXHRcdHJldHVyblxuXHRcdHRoaXMud1htbD13WG1sXG5cdFx0dGhpcy53RG9jPXdEb2Ncblx0XHR0aGlzLl9jb252ZXJ0ZXI9bmV3IFNoYXBlLlByb3BlcnRpZXMobnVsbCx3RG9jLG51bGwpXG5cdFx0dGhpcy5fbGluZT17fVxuXHRcdHRoaXMuX2ZpbGw9ezA6e30sMTAwMDp7fX1cblx0XHR0aGlzLl9iZ0ZpbGw9e31cblx0XHR0aGlzLl9lZmZlY3Q9e31cblx0XHR0aGlzLl9mb250PXt9XG5cblx0fVxuXHRsaW5lKGlkeCx0KXtcblx0XHRpZih0PXRoaXMuX2xpbmVbaWR4XSlcblx0XHRcdHJldHVybiB0XG5cdFx0cmV0dXJuICh0PXRoaXMud1htbC4kMSgnbG46bnRoLWNoaWxkKCcrKHBhcnNlSW50KGlkeCkrMSkrJyknKSkgJiYgKHRoaXMuX2xpbmVbaWR4XT10aGlzLl9jb252ZXJ0ZXIubG4odCkpXG5cdH1cblx0ZmlsbChpZHgsIHQpe1xuXHRcdGlkeD1wYXJzZUludChpZHgpXG5cdFx0aWYoaWR4PjEwMDApXG5cdFx0XHRyZXR1cm4gdGhpcy5iZ0ZpbGwoaWR4LTEwMDApXG5cblx0XHRpZih0PXRoaXMuX2ZpbGxbaWR4XSlcblx0XHRcdHJldHVybiB0XG5cdFx0cmV0dXJuICh0PXRoaXMud1htbC4kMSgnYmdGaWxsU3R5bGVMc3Q+Om50aC1jaGlsZCgnKyhwYXJzZUludChpZHgpKzEpKycpJykpICYmICh0aGlzLl9maWxsW2lkeF09dGhpcy5fY29udmVydGVyW3QubG9jYWxOYW1lXSh0KSlcblx0fVxuXHRiZ0ZpbGwoaWR4LCB0KXtcblx0XHRpZih0PXRoaXMuX2JnRmlsbFtpZHhdKVxuXHRcdFx0cmV0dXJuIHRcblx0XHRyZXR1cm4gKHQ9dGhpcy53WG1sLiQxKCdiZ0ZpbGxTdHlsZUxzdD46bnRoLWNoaWxkKCcrKHBhcnNlSW50KGlkeCkrMSkrJyknKSkgJiYgKHRoaXMuX2JnRmlsbFtpZHhdPXRoaXMuX2NvbnZlcnRlclt0LmxvY2FsTmFtZV0odCkpXG5cdH1cblx0ZWZmZWN0KGlkeCwgdCl7XG5cdFx0aWYodD10aGlzLl9lZmZlY3RbaWR4XSlcblx0XHRcdHJldHVybiB0XG5cdFx0cmV0dXJuICh0PXRoaXMud1htbC4kMSgnZWZmZWN0U3R5bGU6bnRoLWNoaWxkKCcrKHBhcnNlSW50KGlkeCkrMSkrJyk+ZWZmZWN0THN0JykpICYmICh0aGlzLl9lZmZlY3RbaWR4XT10aGlzLl9jb252ZXJ0ZXIuZWZmZWN0THN0KHQpKVxuXHR9XG5cdGZvbnQoaWR4LCB0KXtcblx0XHRpZih0PXRoaXMuX2ZvbnRbaWR4XSlcblx0XHRcdHJldHVybiB0XG5cdFx0cmV0dXJuICh0PXRoaXMud1htbC4kMSgnZm9udFNjaGVtZT4nK2lkeCsnRm9udD5sYXRpbicpKSAmJiAodGhpcy5fZWZmZWN0W2lkeF09dC5hdHRyKCd0eXBlZmFjZScpKVxuXHR9XG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL3RoZW1lL2Zvcm1hdC5qcyJdLCJuYW1lcyI6WyJmb3JtYXQiLCJ3WG1sIiwid0RvYyIsIl9jb252ZXJ0ZXIiLCJTaGFwZSIsIlByb3BlcnRpZXMiLCJfbGluZSIsIl9maWxsIiwiX2JnRmlsbCIsIl9lZmZlY3QiLCJfZm9udCIsImlkeCIsInQiLCIkMSIsInBhcnNlSW50IiwibG4iLCJiZ0ZpbGwiLCJsb2NhbE5hbWUiLCJlZmZlY3RMc3QiLCJhdHRyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0lBQXFCQSxNO0FBQ3BCLGlCQUFZQyxJQUFaLEVBQWtCQyxJQUFsQixFQUF1QjtBQUFBOztBQUN0QjtBQUNBLE9BQUtELElBQUwsR0FBVUEsSUFBVjtBQUNBLE9BQUtDLElBQUwsR0FBVUEsSUFBVjtBQUNBLE9BQUtDLFVBQUwsR0FBZ0IsSUFBSUMsTUFBTUMsVUFBVixDQUFxQixJQUFyQixFQUEwQkgsSUFBMUIsRUFBK0IsSUFBL0IsQ0FBaEI7QUFDQSxPQUFLSSxLQUFMLEdBQVcsRUFBWDtBQUNBLE9BQUtDLEtBQUwsR0FBVyxFQUFDLEdBQUUsRUFBSCxFQUFNLE1BQUssRUFBWCxFQUFYO0FBQ0EsT0FBS0MsT0FBTCxHQUFhLEVBQWI7QUFDQSxPQUFLQyxPQUFMLEdBQWEsRUFBYjtBQUNBLE9BQUtDLEtBQUwsR0FBVyxFQUFYO0FBRUE7Ozs7dUJBQ0lDLEcsRUFBSUMsQyxFQUFFO0FBQ1YsT0FBR0EsSUFBRSxLQUFLTixLQUFMLENBQVdLLEdBQVgsQ0FBTCxFQUNDLE9BQU9DLENBQVA7QUFDRCxVQUFPLENBQUNBLElBQUUsS0FBS1gsSUFBTCxDQUFVWSxFQUFWLENBQWEsbUJBQWlCQyxTQUFTSCxHQUFULElBQWMsQ0FBL0IsSUFBa0MsR0FBL0MsQ0FBSCxNQUE0RCxLQUFLTCxLQUFMLENBQVdLLEdBQVgsSUFBZ0IsS0FBS1IsVUFBTCxDQUFnQlksRUFBaEIsQ0FBbUJILENBQW5CLENBQTVFLENBQVA7QUFDQTs7O3VCQUNJRCxHLEVBQUtDLEMsRUFBRTtBQUNYRCxTQUFJRyxTQUFTSCxHQUFULENBQUo7QUFDQSxPQUFHQSxNQUFJLElBQVAsRUFDQyxPQUFPLEtBQUtLLE1BQUwsQ0FBWUwsTUFBSSxJQUFoQixDQUFQOztBQUVELE9BQUdDLElBQUUsS0FBS0wsS0FBTCxDQUFXSSxHQUFYLENBQUwsRUFDQyxPQUFPQyxDQUFQO0FBQ0QsVUFBTyxDQUFDQSxJQUFFLEtBQUtYLElBQUwsQ0FBVVksRUFBVixDQUFhLGdDQUE4QkMsU0FBU0gsR0FBVCxJQUFjLENBQTVDLElBQStDLEdBQTVELENBQUgsTUFBeUUsS0FBS0osS0FBTCxDQUFXSSxHQUFYLElBQWdCLEtBQUtSLFVBQUwsQ0FBZ0JTLEVBQUVLLFNBQWxCLEVBQTZCTCxDQUE3QixDQUF6RixDQUFQO0FBQ0E7Ozt5QkFDTUQsRyxFQUFLQyxDLEVBQUU7QUFDYixPQUFHQSxJQUFFLEtBQUtKLE9BQUwsQ0FBYUcsR0FBYixDQUFMLEVBQ0MsT0FBT0MsQ0FBUDtBQUNELFVBQU8sQ0FBQ0EsSUFBRSxLQUFLWCxJQUFMLENBQVVZLEVBQVYsQ0FBYSxnQ0FBOEJDLFNBQVNILEdBQVQsSUFBYyxDQUE1QyxJQUErQyxHQUE1RCxDQUFILE1BQXlFLEtBQUtILE9BQUwsQ0FBYUcsR0FBYixJQUFrQixLQUFLUixVQUFMLENBQWdCUyxFQUFFSyxTQUFsQixFQUE2QkwsQ0FBN0IsQ0FBM0YsQ0FBUDtBQUNBOzs7eUJBQ01ELEcsRUFBS0MsQyxFQUFFO0FBQ2IsT0FBR0EsSUFBRSxLQUFLSCxPQUFMLENBQWFFLEdBQWIsQ0FBTCxFQUNDLE9BQU9DLENBQVA7QUFDRCxVQUFPLENBQUNBLElBQUUsS0FBS1gsSUFBTCxDQUFVWSxFQUFWLENBQWEsNEJBQTBCQyxTQUFTSCxHQUFULElBQWMsQ0FBeEMsSUFBMkMsYUFBeEQsQ0FBSCxNQUErRSxLQUFLRixPQUFMLENBQWFFLEdBQWIsSUFBa0IsS0FBS1IsVUFBTCxDQUFnQmUsU0FBaEIsQ0FBMEJOLENBQTFCLENBQWpHLENBQVA7QUFDQTs7O3VCQUNJRCxHLEVBQUtDLEMsRUFBRTtBQUNYLE9BQUdBLElBQUUsS0FBS0YsS0FBTCxDQUFXQyxHQUFYLENBQUwsRUFDQyxPQUFPQyxDQUFQO0FBQ0QsVUFBTyxDQUFDQSxJQUFFLEtBQUtYLElBQUwsQ0FBVVksRUFBVixDQUFhLGdCQUFjRixHQUFkLEdBQWtCLFlBQS9CLENBQUgsTUFBcUQsS0FBS0YsT0FBTCxDQUFhRSxHQUFiLElBQWtCQyxFQUFFTyxJQUFGLENBQU8sVUFBUCxDQUF2RSxDQUFQO0FBQ0E7Ozs7OztrQkF6Q21CbkIsTSIsImZpbGUiOiJmb3JtYXQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBjbGFzcyBmb3JtYXR7XG5cdGNvbnN0cnVjdG9yKHdYbWwsIHdEb2Mpe1xuXHRcdHJldHVyblxuXHRcdHRoaXMud1htbD13WG1sXG5cdFx0dGhpcy53RG9jPXdEb2Ncblx0XHR0aGlzLl9jb252ZXJ0ZXI9bmV3IFNoYXBlLlByb3BlcnRpZXMobnVsbCx3RG9jLG51bGwpXG5cdFx0dGhpcy5fbGluZT17fVxuXHRcdHRoaXMuX2ZpbGw9ezA6e30sMTAwMDp7fX1cblx0XHR0aGlzLl9iZ0ZpbGw9e31cblx0XHR0aGlzLl9lZmZlY3Q9e31cblx0XHR0aGlzLl9mb250PXt9XG5cblx0fVxuXHRsaW5lKGlkeCx0KXtcblx0XHRpZih0PXRoaXMuX2xpbmVbaWR4XSlcblx0XHRcdHJldHVybiB0XG5cdFx0cmV0dXJuICh0PXRoaXMud1htbC4kMSgnbG46bnRoLWNoaWxkKCcrKHBhcnNlSW50KGlkeCkrMSkrJyknKSkgJiYgKHRoaXMuX2xpbmVbaWR4XT10aGlzLl9jb252ZXJ0ZXIubG4odCkpXG5cdH1cblx0ZmlsbChpZHgsIHQpe1xuXHRcdGlkeD1wYXJzZUludChpZHgpXG5cdFx0aWYoaWR4PjEwMDApXG5cdFx0XHRyZXR1cm4gdGhpcy5iZ0ZpbGwoaWR4LTEwMDApXG5cblx0XHRpZih0PXRoaXMuX2ZpbGxbaWR4XSlcblx0XHRcdHJldHVybiB0XG5cdFx0cmV0dXJuICh0PXRoaXMud1htbC4kMSgnYmdGaWxsU3R5bGVMc3Q+Om50aC1jaGlsZCgnKyhwYXJzZUludChpZHgpKzEpKycpJykpICYmICh0aGlzLl9maWxsW2lkeF09dGhpcy5fY29udmVydGVyW3QubG9jYWxOYW1lXSh0KSlcblx0fVxuXHRiZ0ZpbGwoaWR4LCB0KXtcblx0XHRpZih0PXRoaXMuX2JnRmlsbFtpZHhdKVxuXHRcdFx0cmV0dXJuIHRcblx0XHRyZXR1cm4gKHQ9dGhpcy53WG1sLiQxKCdiZ0ZpbGxTdHlsZUxzdD46bnRoLWNoaWxkKCcrKHBhcnNlSW50KGlkeCkrMSkrJyknKSkgJiYgKHRoaXMuX2JnRmlsbFtpZHhdPXRoaXMuX2NvbnZlcnRlclt0LmxvY2FsTmFtZV0odCkpXG5cdH1cblx0ZWZmZWN0KGlkeCwgdCl7XG5cdFx0aWYodD10aGlzLl9lZmZlY3RbaWR4XSlcblx0XHRcdHJldHVybiB0XG5cdFx0cmV0dXJuICh0PXRoaXMud1htbC4kMSgnZWZmZWN0U3R5bGU6bnRoLWNoaWxkKCcrKHBhcnNlSW50KGlkeCkrMSkrJyk+ZWZmZWN0THN0JykpICYmICh0aGlzLl9lZmZlY3RbaWR4XT10aGlzLl9jb252ZXJ0ZXIuZWZmZWN0THN0KHQpKVxuXHR9XG5cdGZvbnQoaWR4LCB0KXtcblx0XHRpZih0PXRoaXMuX2ZvbnRbaWR4XSlcblx0XHRcdHJldHVybiB0XG5cdFx0cmV0dXJuICh0PXRoaXMud1htbC4kMSgnZm9udFNjaGVtZT4nK2lkeCsnRm9udD5sYXRpbicpKSAmJiAodGhpcy5fZWZmZWN0W2lkeF09dC5hdHRyKCd0eXBlZmFjZScpKVxuXHR9XG59XG4iXX0= \ No newline at end of file diff --git a/lib/openxml/vml/index.js b/lib/openxml/vml/index.js new file mode 100644 index 0000000..ce319b3 --- /dev/null +++ b/lib/openxml/vml/index.js @@ -0,0 +1,16 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); + +exports.default = function (officeDocument) { + return { + shapetype: function shapetype(xml) {}, + path: function path() {}, + shape: function shape(xml) {} + }; +}; + +module.exports = exports['default']; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL3ZtbC9pbmRleC5qcyJdLCJuYW1lcyI6WyJzaGFwZXR5cGUiLCJ4bWwiLCJwYXRoIiwic2hhcGUiXSwibWFwcGluZ3MiOiI7Ozs7OztrQkFBZTtBQUFBLFdBQWlCO0FBQzVCQSxpQkFENEIscUJBQ2xCQyxHQURrQixFQUNkLENBRWIsQ0FIMkI7QUFLNUJDLFlBTDRCLGtCQUt0QixDQUVMLENBUDJCO0FBUzVCQyxhQVQ0QixpQkFTdEJGLEdBVHNCLEVBU2xCLENBRVQ7QUFYMkIsS0FBakI7QUFBQSxDIiwiZmlsZSI6ImluZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQgb2ZmaWNlRG9jdW1lbnQ9Pih7XG4gICAgc2hhcGV0eXBlKHhtbCl7XG5cbiAgICB9LFxuXG4gICAgcGF0aCgpe1xuXG4gICAgfSxcblxuICAgIHNoYXBlKHhtbCl7XG5cbiAgICB9XG59KSJdfQ== \ No newline at end of file diff --git a/lib/openxml/xlsx/document.js b/lib/openxml/xlsx/document.js index 7534fcc..f1a01df 100644 --- a/lib/openxml/xlsx/document.js +++ b/lib/openxml/xlsx/document.js @@ -37,4 +37,4 @@ _class.mime = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet _class.OfficeDocument = _officeDocument2.default; exports.default = _class; module.exports = exports['default']; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL3hsc3gvZG9jdW1lbnQuanMiXSwibmFtZXMiOlsiQmFzZSIsImV4dCIsIm1pbWUiLCJPZmZpY2VEb2N1bWVudCJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7Ozs7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUU2QkEsa0I7O09BQ3JCQyxHLEdBQUksTTtPQUVKQyxJLEdBQUssbUU7T0FFTEMsYyxHQUFlQSx3QiIsImZpbGUiOiJkb2N1bWVudC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBCYXNlIGZyb20gXCIuLi9kb2N1bWVudFwiXG5pbXBvcnQgT2ZmaWNlRG9jdW1lbnQgZnJvbSBcIi4vb2ZmaWNlRG9jdW1lbnRcIlxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBleHRlbmRzIEJhc2V7XG5cdHN0YXRpYyBleHQ9XCJ4bHN4XCJcblxuXHRzdGF0aWMgbWltZT1cImFwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5zcHJlYWRzaGVldG1sLnNoZWV0XCJcblxuXHRzdGF0aWMgT2ZmaWNlRG9jdW1lbnQ9T2ZmaWNlRG9jdW1lbnRcbn1cbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL3hsc3gvZG9jdW1lbnQuanMiXSwibmFtZXMiOlsiZXh0IiwibWltZSIsIk9mZmljZURvY3VtZW50Il0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTs7OztBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FHUUEsRyxHQUFJLE07T0FFSkMsSSxHQUFLLG1FO09BRUxDLGMiLCJmaWxlIjoiZG9jdW1lbnQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmFzZSBmcm9tIFwiLi4vZG9jdW1lbnRcIlxuaW1wb3J0IE9mZmljZURvY3VtZW50IGZyb20gXCIuL29mZmljZURvY3VtZW50XCJcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgZXh0ZW5kcyBCYXNle1xuXHRzdGF0aWMgZXh0PVwieGxzeFwiXG5cblx0c3RhdGljIG1pbWU9XCJhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQuc3ByZWFkc2hlZXRtbC5zaGVldFwiXG5cblx0c3RhdGljIE9mZmljZURvY3VtZW50PU9mZmljZURvY3VtZW50XG59XG4iXX0= \ No newline at end of file diff --git a/lib/openxml/xlsx/officeDocument.js b/lib/openxml/xlsx/officeDocument.js index a2fdc71..6ab7075 100644 --- a/lib/openxml/xlsx/officeDocument.js +++ b/lib/openxml/xlsx/officeDocument.js @@ -409,4 +409,4 @@ var XLSIcv = ["#000000", "#FFFFFF", "#FF0000", "#00FF00", "#0000FF", "#FFFF00", "#000000" /* "#51 icvInfoText ?? */ ]; module.exports = exports['default']; -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL3hsc3gvb2ZmaWNlRG9jdW1lbnQuanMiXSwibmFtZXMiOlsiQSIsImNoYXJDb2RlQXQiLCJjb2xTdHJUb0ludCIsImNvbCIsImxhc3QiLCJzdWJzdHIiLCJsZW5ndGgiLCJzdWJzdHJpbmciLCJjb2xJbnRUb1N0ciIsImkwIiwiU3RyaW5nIiwiZnJvbUNoYXJDb2RlIiwicGFyc2VJbnQiLCJPZmZpY2VEb2N1bWVudCIsImRvYyIsIl9hc3NpZ25SZWwiLCJPYmplY3QiLCJhc3NpZ24iLCJzaGFyZWRTdHJpbmdzIiwiZXEiLCJpIiwicm9vdCIsImNoaWxkcmVuIiwic3R5bGVzIiwiaWRlbnRpdGllcyIsImNvbnN0cnVjdG9yIiwidGhlbWUiLCJjb2xvciIsIiQiLCJDb2xvckluZGV4IiwiZmlyc3QiLCJhc0NvbG9yIiwiYXR0ciIsImF0dHJpYnMiLCJyZ2IiLCJpbmRleGVkIiwidGludCIsInYiLCJ1bmRlZmluZWQiLCJYTFNJY3YiLCJwYXJzZUZsb2F0Iiwic2hlZXRJbmRleCIsInJvdyIsInNoZWV0IiwiY29udGVudCIsImdldCIsInMiLCJ0ZXh0IiwicmlkIiwiZ2V0UmVsIiwiY3JlYXRlRWxlbWVudCIsImlkZW50aWZ5IiwiYmluZCIsInJlbmRlck5vZGUiLCJCYXNlIiwid29ya2Jvb2siLCJ3WG1sIiwib2ZmaWNlRG9jdW1lbnQiLCJ0b0FycmF5IiwidHlwZSIsInNzdCIsIm9kIiwiY291bnQiLCJ1bmlxdWVDb3VudCIsImJhc2VDb2xXaWR0aCIsImRlZmF1bHRSb3dIZWlnaHQiLCJySWQiLCJwcm9wcyIsImNvbFByb3BzIiwic3BsaXQiLCJyZWR1Y2UiLCJvIiwiayIsIndpZHRoIiwidGlkeSIsIm1pbiIsIm1heCIsImNvbHMiLCJtYXAiLCJhIiwiY29sV2lkdGgiLCJyb3dIZWlnaHQiLCJ2aWV3IiwieFNwbGl0IiwieVNwbGl0IiwiY3VzdG9tRm9ybWF0IiwiaGlkZGVuIiwic3R5bGUiLCJyIiwiY3VzdG9tSGVpZ2h0IiwiaHQiLCJoZWlnaHQiLCJwcmVjaXNpb24iLCJjIiwiZXhlYyIsIm5hbWUiLCJraW5kIiwicGFyZW50IiwidCIsImRhdGEiLCJlbXB0eSIsImFwcGVuZCIsImNsb25lIiwiaXMiLCJmaW5kIiwiVGV4dFN0eWxlIiwiZmlsdGVyIiwibnVtRm10IiwiY2VsbFN0eWxlIiwieGYiLCJuYW1lcyIsIndyYXBUZXh0IiwiaG9yaXpvbnRhbCIsInZlcnRpY2FsIiwicGFyc2VJbnQ0S2V5cyIsImFwcGx5TnVtYmVyRm9ybWF0IiwiYXBwbHlGb250IiwiYXBwbHlGaWxsIiwiYXBwbHlCb3JkZXIiLCJhcHBseUFsaWdubWVudCIsIm51bUZtdElkIiwiZm9udElkIiwiZmlsbElkIiwiYm9yZGVySWQiLCJhbGlnbm1lbnQiLCJ0YWJsZVN0eWxlIiwiZm9udCIsImZpbGwiLCJiZ0NvbG9yIiwiZmdDb2xvciIsInBhdHRlcm5GaWxsIiwiYmFja2dyb3VuZCIsInBhdHRlcm5UeXBlIiwic3RhcnRzV2l0aCIsIk51bWJlciIsInRvU3RyaW5nIiwiYm9yZGVyIiwidGlkeV9sZWZ0IiwidGlkeV9ib3JkZXIiLCJ0aWR5X3JpZ2h0IiwidGlkeV9ib3R0b20iLCJ0aWR5X3RvcCIsInRpZHlfZGlhZ29uYWwiLCJrZXlzIiwic3oiLCJfX2ZpbHRlciIsInJGb250IiwiYiIsInUiLCJ2YW5pc2giLCJ2YWwiLCJwdDJQeCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLElBQU1BLElBQUUsSUFBSUMsVUFBSixDQUFlLENBQWYsQ0FBUjtBQUNBO0FBQ0EsU0FBU0MsV0FBVCxDQUFxQkMsR0FBckIsRUFBeUI7QUFDckIsUUFBTUMsT0FBS0QsSUFBSUUsTUFBSixDQUFXLENBQUMsQ0FBWixFQUFlSixVQUFmLENBQTBCLENBQTFCLElBQTZCRCxDQUF4QztBQUNBLFFBQUdHLElBQUlHLE1BQUosR0FBVyxDQUFkLEVBQWdCO0FBQ1osZUFBTyxNQUFJSixZQUFZQyxJQUFJSSxTQUFKLENB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RUg7QUFDWCxTQTFFYyxFQTBFSDtBQUNYLFNBM0VjLEVBMkVIO0FBQ1gsU0E1RWMsRUE0RUg7QUFDWCxTQTdFYyxFQTZFSDtBQUNYLFNBOUVjLEVBOEVIO0FBQ1gsU0EvRWMsRUErRUg7QUFDWCxTQWhGYyxFQWdGSDtBQUNYLFNBakZjLEVBaUZIO0FBQ1gsU0FsRmMsQ0FrRko7QUFsRkksQ0FBZiIsImZpbGUiOiJvZmZpY2VEb2N1bWVudC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBCYXNlIGZyb20gXCIuLi9vZmZpY2VEb2N1bWVudFwiXG5jb25zdCBBPVwiQVwiLmNoYXJDb2RlQXQoMClcbi8vQT0+MCwgWj0+MjUsIEFBPT4yNlxuZnVuY3Rpb24gY29sU3RyVG9JbnQoY29sKXtcbiAgICBjb25zdCBsYXN0PWNvbC5zdWJzdHIoLTEpLmNoYXJDb2RlQXQoMCktQVxuICAgIGlmKGNvbC5sZW5ndGg+MSl7XG4gICAgICAgIHJldHVybiAyNiooY29sU3RyVG9JbnQoY29sLnN1YnN0cmluZygwLGNvbC5sZW5ndGgtMSkpKzEpK2xhc3RcbiAgICB9XG4gICAgcmV0dXJuIGxhc3Rcbn1cbi8vMD0+QSwgMjU9PlosIDI2PT5BQVxuZnVuY3Rpb24gY29sSW50VG9TdHIoY29sKXtcbiAgICBjb25zdCBpMD1TdHJpbmcuZnJvbUNoYXJDb2RlKEErY29sJTI2KVxuICAgIGlmKGNvbD49MjYpe1xuICAgICAgICByZXR1cm4gY29sSW50VG9TdHIocGFyc2VJbnQoY29sLzI2KS0xKStpMFxuICAgIH1lbHNle1xuICAgICAgICByZXR1cm4gaTBcbiAgICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE9mZmljZURvY3VtZW50IGV4dGVuZHMgQmFzZXtcbiAgICBzdGF0aWMgY29sU3RyVG9JbnQ9Y29sU3RyVG9JbnRcbiAgICBzdGF0aWMgY29sSW50VG9TdHI9Y29sSW50VG9TdHJcbiAgICBfaW5pdCgpe1xuICAgICAgICBzdXBlci5faW5pdCgpXG4gICAgICAgIGNvbnN0IGRvYz10aGlzLmRvY1xuICAgICAgICB0aGlzLl9hc3NpZ25SZWwoW1wic3R5bGVzXCIsXCJzaGFyZWRTdHJpbmdzXCJdKVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMuc2hhcmVkU3RyaW5ncyx7XG4gICAgICAgICAgICBlcShpKXtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5yb290KCkuY2hpbGRyZW4oXCJzc3RcIikuY2hpbGRyZW4oKS5lcShwYXJzZUludChpKSlcbiAgICAgICAgICAgIH0sIFxuICAgICAgICAgICAgZG9jLCBcbiAgICAgICAgfSlcbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLnN0eWxlcyx7aWRlbnRpdGllczp0aGlzLmNvbnN0cnVjdG9yLmlkZW50aXRpZXMsZG9jfSlcbiAgICAgICAgdGhpcy50aGVtZS5jb2xvcj1mdW5jdGlvbihpKXtcbiAgICAgICAgICAgIGNvbnN0ICQ9dGhpcyhgYVxcXFw6Y2xyU2NoZW1lPmFcXFxcOiR7Q29sb3JJbmRleFtwYXJzZUludChpKV19YCkuY2hpbGRyZW4oKS5maXJzdCgpXG4gICAgICAgICAgICByZXR1cm4gZG9jLmFzQ29sb3IoJC5hdHRyKFwibGFzdENsclwiKXx8JC5hdHRyKFwidmFsXCIpKVxuICAgICAgICB9XG4gICAgICAgIHRoaXMuY29sb3I9KHthdHRyaWJzOntyZ2IsdGhlbWUsaW5kZXhlZCx0aW50fX0pPT57XG4gICAgICAgICAgICBjb25zdCB2PShyZ2ImJmAjJHtyZ2Iuc3Vic3RyKDIpfWApfHwodGhlbWUgJiYgdGhpcy50aGVtZS5jb2xvcih0aGVtZSkpfHwgKGluZGV4ZWQhPXVuZGVmaW5lZCAmJiBgJHtYTFNJY3ZbcGFyc2VJbnQoaW5kZXhlZCldfWApXG4gICAgICAgICAgICByZXR1cm4gdGludCA/IHRoaXMuZG9jLmFzQ29sb3Iodix7dGludDpwYXJzZUZsb2F0KHRpbnQpfSkgOiB2XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjZWxsUGxhaW5UZXh0KHNoZWV0SW5kZXgscm93LGNvbCl7XG4gICAgICAgIHJvdz1yb3crMVxuICAgICAgICBjb2w9Y29sSW50VG9TdHIoY29sKVxuICAgICAgICBjb25zdCBzaGVldD10aGlzLnNoZWV0KHRoaXMuY29udGVudChgc2hlZXRzPnNoZWV0YCkuZ2V0KHNoZWV0SW5kZXgpLmF0dHJpYnMpXG4gICAgICAgIGNvbnN0IHM9c2hlZXQoYHdvcmtzaGVldD5zaGVldERhdGE+cm93W3I9JHtyb3d9XT5jW3I9JyR7Y29sfSR7cm93fSddPnZgKS50ZXh0KClcbiAgICAgICAgaWYocyl7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5zaGFyZWRTdHJpbmdzLmVxKHMpLnRleHQoKVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBcIlwiXG4gICAgfVxuXG4gICAgc2hlZXQoe1wicjppZFwiOnJpZH0pe1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRSZWwocmlkKVxuICAgIH1cblxuICAgIHJlbmRlcihjcmVhdGVFbGVtZW50LCBpZGVudGlmeT10aGlzLmNvbnN0cnVjdG9yLmlkZW50aWZ5LmJpbmQodGhpcy5jb25zdHJ1Y3Rvcikpe1xuICAgICAgICB0aGlzLnJlbmRlck5vZGUodGhpcy5zdHlsZXMoXCJzdHlsZVNoZWV0XCIpLmdldCgwKSxjcmVhdGVFbGVtZW50LGlkZW50aWZ5KVxuICAgICAgICByZXR1cm4gdGhpcy5yZW5kZXJOb2RlKHRoaXMuY29udGVudChcIndvcmtib29rXCIpLmdldCgwKSwgY3JlYXRlRWxlbWVudCwgaWRlbnRpZnkpXG4gICAgfVxuXG4gICAgc3RhdGljIGlkZW50aXRpZXM9e1xuICAgICAgICB3b3JrYm9vayh3WG1sLCBvZmZpY2VEb2N1bWVudCl7XG4gICAgICAgICAgICBjb25zdCAkPW9mZmljZURvY3VtZW50LmNvbnRlbnQoXCJzaGVldHNcIilcbiAgICAgICAgICAgIGNvbnN0IGNoaWxkcmVuPSQuY2hpbGRyZW4oXCJzaGVldFwiKS50b0FycmF5KClcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgdHlwZTpcIndvcmtib29rXCIsXG4gICAgICAgICAgICAgICAgY2hpbGRyZW5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgc3N0KHthdHRyaWJzOntjb3VudCwgdW5pcXVlQ291bnR9fSxvZCl7XG4gICAgICAgICAgICByZXR1cm4ge3R5cGU6XCJzaGFyZWRTdHJpbmdzXCIsY291bnQ6cGFyc2VJbnQoY291bnQpLHVuaXF1ZUNvdW50OnBhcnNlSW50KHVuaXF1ZUNvdW50KX1cbiAgICAgICAgfSxcbiAgICAgICAgc2hlZXQod1htbCwgb2Qpe1xuICAgICAgICAgICAgY29uc3QgJD1vZC5zaGVldCh3WG1sLmF0dHJpYnMpXG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGNvbnN0IHthdHRyaWJzOntiYXNlQ29sV2lkdGgsZGVmYXVsdFJvd0hlaWdodH19PSQoXCJzaGVldEZvcm1hdFByXCIpLmdldCgwKVxuICAgICAgICAgICAgY29uc3QgY2hpbGRyZW49JChcInNoZWV0RGF0YT5yb3dcIikudG9BcnJheSgpXG4gICAgICAgICAgICBjb25zdCB7XCJyOmlkXCI6cklkLC4uLnByb3BzfT13WG1sLmF0dHJpYnNcbiAgICAgICAgICAgIGNvbnN0IGNvbFByb3BzPVwiY3VzdG9tV2lkdGgsbWluLG1heCxzdHlsZSxoaWRkZW5cIi5zcGxpdChcIixcIikucmVkdWNlKChvLGspPT4ob1trXT1wYXJzZUludCxvKSx7XG4gICAgICAgICAgICAgICAgd2lkdGg6cGFyc2VGbG9hdCxcbiAgICAgICAgICAgICAgICB0aWR5Oih7bWluLG1heCwuLi5wcm9wc30pPT4oey4uLnByb3BzLG1pbjptaW4tMSxtYXg6bWF4LTF9KVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4ucHJvcHMsXG4gICAgICAgICAgICAgICAgdHlwZTpcInNoZWV0XCIsXG4gICAgICAgICAgICAgICAgY2hpbGRyZW4sIFxuICAgICAgICAgICAgICAgIGNvbHM6ICQoXCJjb2xzXCIpLmNoaWxkcmVuKCkubWFwKChpLGEpPT4kKGEpLnByb3BzKGNvbFByb3BzKSkuZ2V0KCksXG4gICAgICAgICAgICAgICAgY29sV2lkdGg6IHBhcnNlRmxvYXQoYmFzZUNvbFdpZHRoKSwgXG4gICAgICAgICAgICAgICAgcm93SGVpZ2h0OnBhcnNlRmxvYXQoZGVmYXVsdFJvd0hlaWdodCksXG4gICAgICAgICAgICAgICAgdmlldzokKFwic2hlZXRWaWV3cz5zaGVldFZpZXdcIikucHJvcHMoe3hTcGxpdDpwYXJzZUludCx5U3BsaXQ6cGFyc2VJbnR9KVxuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICByb3cod1htbCwgb2Qpe1xuICAgICAgICAgICAgY29uc3QgJD1vZC4kKHdYbWwpXG4gICAgICAgICAgICBjb25zdCB7Y3VzdG9tRm9ybWF0LCBoaWRkZW4scywgc3R5bGU9Y3VzdG9tRm9ybWF0JiZwYXJzZUludChzKXx8dW5kZWZpbmVkLCByLGN1c3RvbUhlaWdodCxodCwgaGVpZ2h0PWh0ICYmIHBhcnNlRmxvYXQoaHQpKihvZC5kb2MucHJlY2lzaW9ufHwxKX09d1htbC5hdHRyaWJzXG4gICAgICAgICAgICBjb25zdCBjaGlsZHJlbj0kLmNoaWxkcmVuKFwiY1wiKS50b0FycmF5KClcbiAgICAgICAgICAgIHJldHVybiB7dHlwZTpcInJvd1wiLGNoaWxkcmVuLCBjdXN0b21IZWlnaHQsIGhlaWdodCwgaTpwYXJzZUludChyKS0xLCBzdHlsZSxoaWRkZW59XG4gICAgICAgIH0sXG4gICAgICAgIGMod1htbCwgb2Qpe1xuICAgICAgICAgICAgY29uc3Qge2F0dHJpYnM6e3IsczpzdHlsZX19PXdYbWxcbiAgICAgICAgICAgIGNvbnN0IGNoaWxkcmVuPW9kLiQod1htbCkuY2hpbGRyZW4oKS50b0FycmF5KClcbiAgICAgICAgICAgIGNvbnN0IFssY29sLHJvdyxdPS8oW0EtWl0rKShcXGQrJCkvLmV4ZWMocilcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgdHlwZTpcImNlbGxcIixcbiAgICAgICAgICAgICAgICBuYW1lOmAke3BhcnNlSW50KHJvdyktMX0ke2NvbH1gLFxuICAgICAgICAgICAgICAgIGNvbDpjb2xTdHJUb0ludChjb2wpLFxuICAgICAgICAgICAgICAgIHJvdzpwYXJzZUludChyb3cpLTEsIFxuICAgICAgICAgICAgICAgIGNoaWxkcmVuLFxuICAgICAgICAgICAgICAgIHN0eWxlOnN0eWxlIT11bmRlZmluZWQgPyBwYXJzZUludChzdHlsZSkgOiB1bmRlZmluZWRcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgdih3WG1sLG9kKXtcbiAgICAgICAgICAgIGNvbnN0IHthdHRyaWJzOnt0OmtpbmR9fT13WG1sLnBhcmVudFxuICAgICAgICAgICAgY29uc3Qge2NoaWxkcmVuOlt7ZGF0YX1dfT13WG1sXG4gICAgICAgICAgICBzd2l0Y2goa2luZCl7XG4gICAgICAgICAgICBjYXNlIFwiaVwiOlxuICAgICAgICAgICAgICAgIHJldHVybiB7dHlwZTpcInBhcmFncmFwaFwiLGtpbmQsY2hpbGRyZW46Wy4uLndYbWwuY2hpbGRyZW5dfVxuICAgICAgICAgICAgY2FzZSBcInNcIjpcbiAgICAgICAgICAgICAgICBvZC4kKHdYbWwpLmVtcHR5KCkuYXBwZW5kKG9kLnNoYXJlZFN0cmluZ3MuZXEoZGF0YSkuY2xvbmUoKS5jaGlsZHJlbigpKVxuICAgICAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIG9kLiQod1htbCkuZW1wdHkoKS5hcHBlbmQoYDxyPjx0PiR7ZGF0YX08L3Q+PC9yPmApXG4gICAgICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHdYbWwucGFyZW50LmF0dHJpYnMudD1cImlcIlxuICAgICAgICAgICAgcmV0dXJuIHt0eXBlOlwicGFyYWdyYXBoXCIsa2luZCxjaGlsZHJlbjpbLi4ud1htbC5jaGlsZHJlbl19XG4gICAgICAgIH0sXG4gICAgICAgIGlzKHdYbWwsb2Qpe1xuICAgICAgICAgICAgd1htbC5uYW1lPVwidlwiXG4gICAgICAgICAgICByZXR1cm4ge3R5cGU6XCJwYXJhZ3JhcGhcIixraW5kOlwiaXNcIixjaGlsZHJlbjpbLi4ud1htbC5jaGlsZHJlbl19XG4gICAgICAgIH0sXG4gICAgICAgIFxuICAgICAgICByKHdYbWwsb2Qpe1xuICAgICAgICAgICAgY29uc3Qgc3R5bGU9b2QuJCh3WG1sKS5maW5kKFwiPnJQclwiKS5wcm9wcyhUZXh0U3R5bGUob2QpKVxuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICB0eXBlOlwicnVuXCIsXG4gICAgICAgICAgICAgICAgc3R5bGUsIFxuICAgICAgICAgICAgICAgIGNoaWxkcmVuOiB3WG1sLmNoaWxkcmVuLmZpbHRlcigoe25hbWV9KT0+bmFtZSE9XCJyUHJcIilcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcblxuICAgICAgICAvL3N0eWxlc1xuICAgICAgICBudW1GbXQod1htbCxvZCl7XG4gICAgICAgICAgICByZXR1cm4ge2NoaWxkcmVuOm51bGwsLi4ub2Quc3R5bGVzKHdYbWwpLnByb3BzKCl9XG4gICAgICAgIH0sXG4gICAgICAgIGNlbGxTdHlsZSh3WG1sLG9kKXtcbiAgICAgICAgICAgIHJldHVybiB7Y2hpbGRyZW46bnVsbCwuLi5vZC5zdHlsZXMod1htbCkucHJvcHMoKX1cbiAgICAgICAgfSxcbiAgICAgICAgeGYod1htbCxvZCl7XG4gICAgICAgICAgICByZXR1cm4ge2NoaWxkcmVuOm51bGwsLi4ub2Quc3R5bGVzKHdYbWwpLnByb3BzKHtcbiAgICAgICAgICAgICAgICBuYW1lczp7XG4gICAgICAgICAgICAgICAgICAgIHdyYXBUZXh0Olwid3JhcFwiLFxuICAgICAgICAgICAgICAgICAgICBob3Jpem9udGFsOlwiYWxpZ25cIixcbiAgICAgICAgICAgICAgICAgICAgdmVydGljYWw6XCJ2ZXJ0QWxpZ25cIixcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHdyYXBUZXh0OnY9PnY9PVwidHJ1ZVwifHx2PT1cIjFcIiA/IHRydWUgOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAuLi5wYXJzZUludDRLZXlzKFwibnVtRm10SWQsZm9udElkLGZpbGxJZCxib3JkZXJJZCx4ZklkLGFwcGx5TnVtYmVyRm9ybWF0LGFwcGx5Rm9udCxhcHBseUZpbGwsYXBwbHlCb3JkZXIsYXBwbHlBbGlnbm1lbnRcIiksXG4gICAgICAgICAgICAgICAgdGlkeSh7YXBwbHlOdW1iZXJGb3JtYXQsYXBwbHlGb250LGFwcGx5RmlsbCxhcHBseUJvcmRlcixhcHBseUFsaWdubWVudCwgLi4uYX0pe1xuICAgICAgICAgICAgICAgICAgICBpZihhcHBseU51bWJlckZvcm1hdD09MClcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlbGV0ZSBhLm51bUZtdElkXG4gICAgICAgICAgICAgICAgICAgIGlmKGFwcGx5Rm9udD09MClcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlbGV0ZSBhLmZvbnRJZFxuICAgICAgICAgICAgICAgICAgICBpZihhcHBseUZpbGw9PTApXG4gICAgICAgICAgICAgICAgICAgICAgICBkZWxldGUgYS5maWxsSWRcbiAgICAgICAgICAgICAgICAgICAgaWYoYXBwbHlCb3JkZXI9PTApXG4gICAgICAgICAgICAgICAgICAgICAgICBkZWxldGUgYS5ib3JkZXJJZFxuICAgICAgICAgICAgICAgICAgICBpZihhcHBseUFsaWdubWVudD09MClcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlbGV0ZSBhLmFsaWdubWVudFxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gYVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pfVxuICAgICAgICB9LFxuICAgICAgICB0YWJsZVN0eWxlKHdYbWwsb2Qpe1xuICAgICAgICAgICAgcmV0dXJuIHtjaGlsZHJlbjpudWxsLC4uLm9kLnN0eWxlcyh3WG1sKS5wcm9wcygpfVxuICAgICAgICB9LFxuICAgICAgICBmb250KHdYbWwsb2Qpe1xuICAgICAgICAgICAgcmV0dXJuIHtjaGlsZHJlbjpudWxsLC4uLm9kLnN0eWxlcyh3WG1sKS5wcm9wcyhUZXh0U3R5bGUob2QpKX1cbiAgICAgICAgfSxcbiAgICAgICAgZmlsbCh3WG1sLG9kKXtcbiAgICAgICAgICAgIHJldHVybiB7Y2hpbGRyZW46bnVsbCwuLi5vZC5zdHlsZXMod1htbCkucHJvcHMoe1xuICAgICAgICAgICAgICAgIGJnQ29sb3I6b2QuY29sb3IsXG4gICAgICAgICAgICAgICAgZmdDb2xvcjpvZC5jb2xvcixcbiAgICAgICAgICAgICAgICB0aWR5KHtwYXR0ZXJuRmlsbDp7ZmdDb2xvcjpiYWNrZ3JvdW5kLHBhdHRlcm5UeXBlfX0pe1xuICAgICAgICAgICAgICAgICAgICBpZihwYXR0ZXJuVHlwZT09XCJub25lXCIpXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4ge31cbiAgICAgICAgICAgICAgICAgICAgaWYocGF0dGVyblR5cGUgJiYgcGF0dGVyblR5cGUuc3RhcnRzV2l0aChcImdyYXlcIikpe1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgcj1OdW1iZXIocGFyc2VJbnQocGF0dGVyblR5cGUuc3Vic3RyaW5nKDQpKSkudG9TdHJpbmcoMTYpXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4ge2JhY2tncm91bmQ6YCMke3J9JHtyfSR7cn1gfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7YmFja2dyb3VuZH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KX1cbiAgICAgICAgfSxcbiAgICAgICAgYm9yZGVyKHdYbWwsb2Qpe1xuICAgICAgICAgICAgcmV0dXJuIHtjaGlsZHJlbjpudWxsLC4uLm9kLnN0eWxlcyh3WG1sKS5wcm9wcyh7XG4gICAgICAgICAgICAgICAgY29sb3I6b2QuY29sb3IsXG4gICAgICAgICAgICAgICAgdGlkeV9sZWZ0OnRpZHlfYm9yZGVyLFxuICAgICAgICAgICAgICAgIHRpZHlfcmlnaHQ6dGlkeV9ib3JkZXIsXG4gICAgICAgICAgICAgICAgdGlkeV9ib3R0b206dGlkeV9ib3JkZXIsXG4gICAgICAgICAgICAgICAgdGlkeV90b3A6dGlkeV9ib3JkZXIsXG4gICAgICAgICAgICAgICAgdGlkeV9kaWFnb25hbDogdGlkeV9ib3JkZXIsXG4gICAgICAgICAgICB9KX1cbiAgICAgICAgfSxcbiAgICB9XG59XG5cblxuY29uc3QgcGFyc2VJbnQ0S2V5cz1rZXlzPT5rZXlzLnNwbGl0KFwiLFwiKS5yZWR1Y2UoKHMsayk9PihzW2tdPXBhcnNlSW50LHMpLHt9KVxuY29uc3QgQ29sb3JJbmRleD1cImx0MSxkazEsbHQyLGRrMixhY2NlbnQxLGFjY2VudDIsYWNjZW50MyxhY2NlbnQ0LGFjY2VudDUsYWNjZW50NixobGluayxmb2xIbGlua1wiLnNwbGl0KFwiLFwiKVxuY29uc3QgdGlkeV9ib3JkZXI9KHtzdHlsZSwuLi5hfSk9PntcbiAgICBzd2l0Y2goc3R5bGUpe1xuICAgICAgICBjYXNlIFwidGhpblwiOlxuICAgICAgICAgICAgYS5zej0xXG4gICAgICAgICAgICBicmVha1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgYnJlYWtcbiAgICB9XG4gICAgcmV0dXJuIGFcbn1cbmNvbnN0IFRleHRTdHlsZT1vZD0+KHtcbiAgICBfX2ZpbHRlcjpcIjpub3Qoc2NoZW1lLGZhbWlseSxjaGFyc2V0KVwiLFxuICAgIG5hbWVzOntcbiAgICAgICAgckZvbnQ6XCJmb250c1wiLFxuICAgICAgICBuYW1lOlwiZm9udHNcIixcbiAgICAgICAgc3o6XCJzaXplXCIsXG4gICAgICAgIGI6XCJib2xkXCIsXG4gICAgICAgIGk6XCJpdGFsaWNcIixcbiAgICAgICAgdTpcInVuZGVybGluZVwiLFxuICAgICAgICB2YW5pc2g6XCJoaWRkZW5cIlxuICAgIH0sXG4gICAgckZvbnQ6KHthdHRyaWJzOnt2YWx9fSk9PnZhbCxcbiAgICBuYW1lOih7YXR0cmliczp7dmFsfX0pPT52YWwsXG4gICAgYjooe2F0dHJpYnM6e3ZhbD10cnVlfX0pPT4hIXZhbCxcbiAgICBpOih7YXR0cmliczp7dmFsPXRydWV9fSk9PiEhdmFsLFxuICAgIHU6KHthdHRyaWJzOnt2YWw9XCJzaW5nbGVcIn19KT0+dmFsLFxuICAgIHZhbmlzaDooe2F0dHJpYnM6e3ZhbD10cnVlfX0pPT4hIXZhbCxcbiAgICBzejooe2F0dHJpYnM6e3ZhbH19KT0+b2QuZG9jLnB0MlB4KHBhcnNlSW50KHZhbCkpLFxuXG4gICAgY29sb3I6b2QuY29sb3IsXG59KVxuXG5jb25zdCBYTFNJY3YgPSBbXG4gICAgXCIjMDAwMDAwXCIsXG5cdFwiI0ZGRkZGRlwiLFxuXHRcIiNGRjAwMDBcIixcblx0XCIjMDBGRjAwXCIsXG5cdFwiIzAwMDBGRlwiLFxuXHRcIiNGRkZGMDBcIixcblx0XCIjRkYwMEZGXCIsXG5cdFwiIzAwRkZGRlwiLFxuXHRcIiMwMDAwMDBcIixcblx0XCIjRkZGRkZGXCIsXG5cdFwiI0ZGMDAwMFwiLFxuXHRcIiMwMEZGMDBcIixcblx0XCIjMDAwMEZGXCIsXG5cdFwiI0ZGRkYwMFwiLFxuXHRcIiNGRjAwRkZcIixcblx0XCIjMDBGRkZGXCIsXG5cdFwiIzgwMDAwMFwiLFxuXHRcIiMwMDgwMDBcIixcblx0XCIjMDAwMDgwXCIsXG5cdFwiIzgwODAwMFwiLFxuXHRcIiM4MDAwODBcIixcblx0XCIjMDA4MDgwXCIsXG5cdFwiI0MwQzBDMFwiLFxuXHRcIiM4MDgwODBcIixcblx0XCIjOTk5OUZGXCIsXG5cdFwiIzk5MzM2NlwiLFxuXHRcIiNGRkZGQ0NcIixcblx0XCIjQ0NGRkZGXCIsXG5cdFwiIzY2MDA2NlwiLFxuXHRcIiNGRjgwODBcIixcblx0XCIjMDA2NkNDXCIsXG5cdFwiI0NDQ0NGRlwiLFxuXHRcIiMwMDAwODBcIixcblx0XCIjRkYwMEZGXCIsXG5cdFwiI0ZGRkYwMFwiLFxuXHRcIiMwMEZGRkZcIixcblx0XCIjODAwMDgwXCIsXG5cdFwiIzgwMDAwMFwiLFxuXHRcIiMwMDgwODBcIixcblx0XCIjMDAwMEZGXCIsXG5cdFwiIzAwQ0NGRlwiLFxuXHRcIiNDQ0ZGRkZcIixcblx0XCIjQ0NGRkNDXCIsXG5cdFwiI0ZGRkY5OVwiLFxuXHRcIiM5OUNDRkZcIixcblx0XCIjRkY5OUNDXCIsXG5cdFwiI0NDOTlGRlwiLFxuXHRcIiNGRkNDOTlcIixcblx0XCIjMzM2NkZGXCIsXG5cdFwiIzMzQ0NDQ1wiLFxuXHRcIiM5OUNDMDBcIixcblx0XCIjRkZDQzAwXCIsXG5cdFwiI0ZGOTkwMFwiLFxuXHRcIiNGRjY2MDBcIixcblx0XCIjNjY2Njk5XCIsXG5cdFwiIzk2OTY5NlwiLFxuXHRcIiMwMDMzNjZcIixcblx0XCIjMzM5OTY2XCIsXG5cdFwiIzAwMzMwMFwiLFxuXHRcIiMzMzMzMDBcIixcblx0XCIjOTkzMzAwXCIsXG5cdFwiIzk5MzM2NlwiLFxuXHRcIiMzMzMzOTlcIixcblx0XCIjMzMzMzMzXCIsXG5cdFwiIzAwMDAwMFwiLCAvKiBcIiM0MCBpY3ZGb3JlZ3JvdW5kID8/ICovXG5cdFwiIzAwMDAwMFwiLCAvKiBcIiM0MSBpY3ZCYWNrZ3JvdW5kID8/ICovXG5cdFwiIzAwMDAwMFwiLCAvKiBcIiM0MiBpY3ZGcmFtZSA/PyAqL1xuXHRcIiMwMDAwMDBcIiwgLyogXCIjNDMgaWN2M0QgPz8gKi9cblx0XCIjMDAwMDAwXCIsIC8qIFwiIzQ0IGljdjNEVGV4dCA/PyAqL1xuXHRcIiMwMDAwMDBcIiwgLyogXCIjNDUgaWN2M0RIaWxpdGUgPz8gKi9cblx0XCIjMDAwMDAwXCIsIC8qIFwiIzQ2IGljdjNEU2hhZG93ID8/ICovXG5cdFwiIzAwMDAwMFwiLCAvKiBcIiM0NyBpY3ZIaWxpdGUgPz8gKi9cblx0XCIjMDAwMDAwXCIsIC8qIFwiIzQ4IGljdkN0bFRleHQgPz8gKi9cblx0XCIjMDAwMDAwXCIsIC8qIFwiIzQ5IGljdkN0bFNjcmwgPz8gKi9cblx0XCIjMDAwMDAwXCIsIC8qIFwiIzRBIGljdkN0bEludiA/PyAqL1xuXHRcIiMwMDAwMDBcIiwgLyogXCIjNEIgaWN2Q3RsQm9keSA/PyAqL1xuXHRcIiMwMDAwMDBcIiwgLyogXCIjNEMgaWN2Q3RsRnJhbWUgPz8gKi9cblx0XCIjMDAwMDAwXCIsIC8qIFwiIzREIGljdkN0bEZvcmUgPz8gKi9cblx0XCIjMDAwMDAwXCIsIC8qIFwiIzRFIGljdkN0bEJhY2sgPz8gKi9cblx0XCIjMDAwMDAwXCIsIC8qIFwiIzRGIGljdkN0bE5ldXRyYWwgKi9cblx0XCIjMDAwMDAwXCIsIC8qIFwiIzUwIGljdkluZm9CayA/PyAqL1xuXHRcIiMwMDAwMDBcIiAvKiBcIiM1MSBpY3ZJbmZvVGV4dCA/PyAqL1xuXVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVueG1sL3hsc3gvb2ZmaWNlRG9jdW1lbnQuanMiXSwibmFtZXMiOlsiQSIsImNoYXJDb2RlQXQiLCJjb2xTdHJUb0ludCIsImNvbCIsImxhc3QiLCJzdWJzdHIiLCJsZW5ndGgiLCJzdWJzdHJpbmciLCJjb2xJbnRUb1N0ciIsImkwIiwiU3RyaW5nIiwiZnJvbUNoYXJDb2RlIiwicGFyc2VJbnQiLCJPZmZpY2VEb2N1bWVudCIsImRvYyIsIl9hc3NpZ25SZWwiLCJPYmplY3QiLCJhc3NpZ24iLCJzaGFyZWRTdHJpbmdzIiwiZXEiLCJpIiwicm9vdCIsImNoaWxkcmVuIiwic3R5bGVzIiwiaWRlbnRpdGllcyIsImNvbnN0cnVjdG9yIiwidGhlbWUiLCJjb2xvciIsIiQiLCJDb2xvckluZGV4IiwiZmlyc3QiLCJhc0NvbG9yIiwiYXR0ciIsImF0dHJpYnMiLCJyZ2IiLCJpbmRleGVkIiwidGludCIsInYiLCJ1bmRlZmluZWQiLCJYTFNJY3YiLCJwYXJzZUZsb2F0Iiwic2hlZXRJbmRleCIsInJvdyIsInNoZWV0IiwiY29udGVudCIsImdldCIsInMiLCJ0ZXh0IiwicmlkIiwiZ2V0UmVsIiwiY3JlYXRlRWxlbWVudCIsImlkZW50aWZ5IiwiYmluZCIsInJlbmRlck5vZGUiLCJ3b3JrYm9vayIsIndYbWwiLCJvZmZpY2VEb2N1bWVudCIsInRvQXJyYXkiLCJ0eXBlIiwic3N0Iiwib2QiLCJjb3VudCIsInVuaXF1ZUNvdW50IiwiYmFzZUNvbFdpZHRoIiwiZGVmYXVsdFJvd0hlaWdodCIsInJJZCIsInByb3BzIiwiY29sUHJvcHMiLCJzcGxpdCIsInJlZHVjZSIsIm8iLCJrIiwid2lkdGgiLCJ0aWR5IiwibWluIiwibWF4IiwiY29scyIsIm1hcCIsImEiLCJjb2xXaWR0aCIsInJvd0hlaWdodCIsInZpZXciLCJ4U3BsaXQiLCJ5U3BsaXQiLCJjdXN0b21Gb3JtYXQiLCJoaWRkZW4iLCJzdHlsZSIsInIiLCJjdXN0b21IZWlnaHQiLCJodCIsImhlaWdodCIsInByZWNpc2lvbiIsImMiLCJleGVjIiwibmFtZSIsImtpbmQiLCJwYXJlbnQiLCJ0IiwiZGF0YSIsImVtcHR5IiwiYXBwZW5kIiwiY2xvbmUiLCJpcyIsImZpbmQiLCJUZXh0U3R5bGUiLCJmaWx0ZXIiLCJudW1GbXQiLCJjZWxsU3R5bGUiLCJ4ZiIsIm5hbWVzIiwid3JhcFRleHQiLCJob3Jpem9udGFsIiwidmVydGljYWwiLCJwYXJzZUludDRLZXlzIiwiYXBwbHlOdW1iZXJGb3JtYXQiLCJhcHBseUZvbnQiLCJhcHBseUZpbGwiLCJhcHBseUJvcmRlciIsImFwcGx5QWxpZ25tZW50IiwibnVtRm10SWQiLCJmb250SWQiLCJmaWxsSWQiLCJib3JkZXJJZCIsImFsaWdubWVudCIsInRhYmxlU3R5bGUiLCJmb250IiwiZmlsbCIsImJnQ29sb3IiLCJmZ0NvbG9yIiwicGF0dGVybkZpbGwiLCJiYWNrZ3JvdW5kIiwicGF0dGVyblR5cGUiLCJzdGFydHNXaXRoIiwiTnVtYmVyIiwidG9TdHJpbmciLCJib3JkZXIiLCJ0aWR5X2xlZnQiLCJ0aWR5X2JvcmRlciIsInRpZHlfcmlnaHQiLCJ0aWR5X2JvdHRvbSIsInRpZHlfdG9wIiwidGlkeV9kaWFnb25hbCIsImtleXMiLCJzeiIsIl9fZmlsdGVyIiwickZvbnQiLCJiIiwidSIsInZhbmlzaCIsInZhbCIsInB0MlB4Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUFBOzs7Ozs7Ozs7Ozs7Ozs7O0FBQ0EsSUFBTUEsSUFBRSxJQUFJQyxVQUFKLENBQWUsQ0FBZixDQUFSO0FBQ0E7QUFDQSxTQUFTQyxXQUFULENBQXFCQyxHQUFyQixFQUF5QjtBQUNyQixRQUFNQyxPQUFLRCxJQUFJRSxNQUFKLENBQVcsQ0FBQyxDQUFaLEVBQWVKLFVBQWYsQ0FBMEIsQ0FBMUIsSUFBNkJELENBQXhDO0FBQ0EsUUFBR0csSUFBSUcsTUFBSixHQUFXLENBQWQsRUFBZ0I7QUFDWixlQUFPLE1BQUlKLFlBQVlDLElBQUlJLFNBQUosQ0FBYyxDQUFk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MEVIO0FBQ1gsU0EzRWMsRUEyRUg7QUFDWCxTQTVFYyxFQTRFSDtBQUNYLFNBN0VjLEVBNkVIO0FBQ1gsU0E5RWMsRUE4RUg7QUFDWCxTQS9FYyxFQStFSDtBQUNYLFNBaEZjLEVBZ0ZIO0FBQ1gsU0FqRmMsRUFpRkg7QUFDWCxTQWxGYyxDQWtGSjtBQWxGSSxDQUFmIiwiZmlsZSI6Im9mZmljZURvY3VtZW50LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEJhc2UgZnJvbSBcIi4uL29mZmljZURvY3VtZW50XCJcbmNvbnN0IEE9XCJBXCIuY2hhckNvZGVBdCgwKVxuLy9BPT4wLCBaPT4yNSwgQUE9PjI2XG5mdW5jdGlvbiBjb2xTdHJUb0ludChjb2wpe1xuICAgIGNvbnN0IGxhc3Q9Y29sLnN1YnN0cigtMSkuY2hhckNvZGVBdCgwKS1BXG4gICAgaWYoY29sLmxlbmd0aD4xKXtcbiAgICAgICAgcmV0dXJuIDI2Kihjb2xTdHJUb0ludChjb2wuc3Vic3RyaW5nKDAsY29sLmxlbmd0aC0xKSkrMSkrbGFzdFxuICAgIH1cbiAgICByZXR1cm4gbGFzdFxufVxuLy8wPT5BLCAyNT0+WiwgMjY9PkFBXG5mdW5jdGlvbiBjb2xJbnRUb1N0cihjb2wpe1xuICAgIGNvbnN0IGkwPVN0cmluZy5mcm9tQ2hhckNvZGUoQStjb2wlMjYpXG4gICAgaWYoY29sPj0yNil7XG4gICAgICAgIHJldHVybiBjb2xJbnRUb1N0cihwYXJzZUludChjb2wvMjYpLTEpK2kwXG4gICAgfWVsc2V7XG4gICAgICAgIHJldHVybiBpMFxuICAgIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgT2ZmaWNlRG9jdW1lbnQgZXh0ZW5kcyBCYXNle1xuICAgIHN0YXRpYyBjb2xTdHJUb0ludD1jb2xTdHJUb0ludFxuICAgIHN0YXRpYyBjb2xJbnRUb1N0cj1jb2xJbnRUb1N0clxuICAgIF9pbml0KCl7XG4gICAgICAgIHN1cGVyLl9pbml0KClcbiAgICAgICAgY29uc3QgZG9jPXRoaXMuZG9jXG4gICAgICAgIHRoaXMuX2Fzc2lnblJlbChbXCJzdHlsZXNcIixcInNoYXJlZFN0cmluZ3NcIl0pXG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcy5zaGFyZWRTdHJpbmdzLHtcbiAgICAgICAgICAgIGVxKGkpe1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnJvb3QoKS5jaGlsZHJlbihcInNzdFwiKS5jaGlsZHJlbigpLmVxKHBhcnNlSW50KGkpKVxuICAgICAgICAgICAgfSwgXG4gICAgICAgICAgICBkb2MsIFxuICAgICAgICB9KVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMuc3R5bGVzLHtpZGVudGl0aWVzOnRoaXMuY29uc3RydWN0b3IuaWRlbnRpdGllcyxkb2N9KVxuICAgICAgICB0aGlzLnRoZW1lLmNvbG9yPWZ1bmN0aW9uKGkpe1xuICAgICAgICAgICAgY29uc3QgJD10aGlzKGBhXFxcXDpjbHJTY2hlbWU+YVxcXFw6JHtDb2xvckluZGV4W3BhcnNlSW50KGkpXX1gKS5jaGlsZHJlbigpLmZpcnN0KClcbiAgICAgICAgICAgIHJldHVybiBkb2MuYXNDb2xvcigkLmF0dHIoXCJsYXN0Q2xyXCIpfHwkLmF0dHIoXCJ2YWxcIikpXG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jb2xvcj0oe2F0dHJpYnM6e3JnYix0aGVtZSxpbmRleGVkLHRpbnR9fSk9PntcbiAgICAgICAgICAgIGNvbnN0IHY9KHJnYiYmYCMke3JnYi5zdWJzdHIoMil9YCl8fCh0aGVtZSAmJiB0aGlzLnRoZW1lLmNvbG9yKHRoZW1lKSl8fCAoaW5kZXhlZCE9dW5kZWZpbmVkICYmIGAke1hMU0ljdltwYXJzZUludChpbmRleGVkKV19YClcbiAgICAgICAgICAgIHJldHVybiB0aW50ID8gdGhpcy5kb2MuYXNDb2xvcih2LHt0aW50OnBhcnNlRmxvYXQodGludCl9KSA6IHZcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNlbGxQbGFpblRleHQoc2hlZXRJbmRleCxyb3csY29sKXtcbiAgICAgICAgcm93PXJvdysxXG4gICAgICAgIGNvbD1jb2xJbnRUb1N0cihjb2wpXG4gICAgICAgIGNvbnN0IHNoZWV0PXRoaXMuc2hlZXQodGhpcy5jb250ZW50KGBzaGVldHM+c2hlZXRgKS5nZXQoc2hlZXRJbmRleCkuYXR0cmlicylcbiAgICAgICAgY29uc3Qgcz1zaGVldChgd29ya3NoZWV0PnNoZWV0RGF0YT5yb3dbcj0ke3Jvd31dPmNbcj0nJHtjb2x9JHtyb3d9J10+dmApLnRleHQoKVxuICAgICAgICBpZihzKXtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnNoYXJlZFN0cmluZ3MuZXEocykudGV4dCgpXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIFwiXCJcbiAgICB9XG5cbiAgICBzaGVldCh7XCJyOmlkXCI6cmlkfSl7XG4gICAgICAgIHJldHVybiB0aGlzLmdldFJlbChyaWQpXG4gICAgfVxuXG4gICAgcmVuZGVyKGNyZWF0ZUVsZW1lbnQsIGlkZW50aWZ5PXRoaXMuY29uc3RydWN0b3IuaWRlbnRpZnkuYmluZCh0aGlzLmNvbnN0cnVjdG9yKSl7XG4gICAgICAgIHRoaXMucmVuZGVyTm9kZSh0aGlzLnN0eWxlcyhcInN0eWxlU2hlZXRcIikuZ2V0KDApLGNyZWF0ZUVsZW1lbnQsaWRlbnRpZnkpXG4gICAgICAgIHJldHVybiB0aGlzLnJlbmRlck5vZGUodGhpcy5jb250ZW50KFwid29ya2Jvb2tcIikuZ2V0KDApLCBjcmVhdGVFbGVtZW50LCBpZGVudGlmeSlcbiAgICB9XG5cbiAgICBzdGF0aWMgaWRlbnRpdGllcz17XG4gICAgICAgIHdvcmtib29rKHdYbWwsIG9mZmljZURvY3VtZW50KXtcbiAgICAgICAgICAgIGNvbnN0ICQ9b2ZmaWNlRG9jdW1lbnQuY29udGVudChcInNoZWV0c1wiKVxuICAgICAgICAgICAgY29uc3QgY2hpbGRyZW49JC5jaGlsZHJlbihcInNoZWV0XCIpLnRvQXJyYXkoKVxuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICB0eXBlOlwid29ya2Jvb2tcIixcbiAgICAgICAgICAgICAgICBjaGlsZHJlblxuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBzc3Qoe2F0dHJpYnM6e2NvdW50LCB1bmlxdWVDb3VudH19LG9kKXtcbiAgICAgICAgICAgIHJldHVybiB7dHlwZTpcInNoYXJlZFN0cmluZ3NcIixjb3VudDpwYXJzZUludChjb3VudCksdW5pcXVlQ291bnQ6cGFyc2VJbnQodW5pcXVlQ291bnQpfVxuICAgICAgICB9LFxuICAgICAgICBzaGVldCh3WG1sLCBvZCl7XG4gICAgICAgICAgICBjb25zdCAkPW9kLnNoZWV0KHdYbWwuYXR0cmlicylcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgY29uc3Qge2F0dHJpYnM6e2Jhc2VDb2xXaWR0aCxkZWZhdWx0Um93SGVpZ2h0fX09JChcInNoZWV0Rm9ybWF0UHJcIikuZ2V0KDApXG4gICAgICAgICAgICBjb25zdCBjaGlsZHJlbj0kKFwic2hlZXREYXRhPnJvd1wiKS50b0FycmF5KClcbiAgICAgICAgICAgIGNvbnN0IHtcInI6aWRcIjpySWQsLi4ucHJvcHN9PXdYbWwuYXR0cmlic1xuICAgICAgICAgICAgY29uc3QgY29sUHJvcHM9XCJjdXN0b21XaWR0aCxtaW4sbWF4LHN0eWxlLGhpZGRlblwiLnNwbGl0KFwiLFwiKS5yZWR1Y2UoKG8sayk9PihvW2tdPXBhcnNlSW50LG8pLHtcbiAgICAgICAgICAgICAgICB3aWR0aDpwYXJzZUZsb2F0LFxuICAgICAgICAgICAgICAgIHRpZHk6KHttaW4sbWF4LC4uLnByb3BzfSk9Pih7Li4ucHJvcHMsbWluOm1pbi0xLG1heDptYXgtMX0pXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAuLi5wcm9wcyxcbiAgICAgICAgICAgICAgICB0eXBlOlwic2hlZXRcIixcbiAgICAgICAgICAgICAgICBjaGlsZHJlbiwgXG4gICAgICAgICAgICAgICAgY29sczogJChcImNvbHNcIikuY2hpbGRyZW4oKS5tYXAoKGksYSk9PiQoYSkucHJvcHMoY29sUHJvcHMpKS5nZXQoKSxcbiAgICAgICAgICAgICAgICBjb2xXaWR0aDogcGFyc2VGbG9hdChiYXNlQ29sV2lkdGgpLCBcbiAgICAgICAgICAgICAgICByb3dIZWlnaHQ6cGFyc2VGbG9hdChkZWZhdWx0Um93SGVpZ2h0KSxcbiAgICAgICAgICAgICAgICB2aWV3OiQoXCJzaGVldFZpZXdzPnNoZWV0Vmlld1wiKS5wcm9wcyh7eFNwbGl0OnBhcnNlSW50LHlTcGxpdDpwYXJzZUludH0pXG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIHJvdyh3WG1sLCBvZCl7XG4gICAgICAgICAgICBjb25zdCAkPW9kLiQod1htbClcbiAgICAgICAgICAgIGNvbnN0IHtjdXN0b21Gb3JtYXQsIGhpZGRlbixzLCBzdHlsZT1jdXN0b21Gb3JtYXQmJnBhcnNlSW50KHMpfHx1bmRlZmluZWQsIHIsY3VzdG9tSGVpZ2h0LGh0LCBoZWlnaHQ9aHQgJiYgcGFyc2VGbG9hdChodCkqKG9kLmRvYy5wcmVjaXNpb258fDEpfT13WG1sLmF0dHJpYnNcbiAgICAgICAgICAgIGNvbnN0IGNoaWxkcmVuPSQuY2hpbGRyZW4oXCJjXCIpLnRvQXJyYXkoKVxuICAgICAgICAgICAgcmV0dXJuIHt0eXBlOlwicm93XCIsY2hpbGRyZW4sIGN1c3RvbUhlaWdodCwgaGVpZ2h0LCBpOnBhcnNlSW50KHIpLTEsIHN0eWxlLGhpZGRlbn1cbiAgICAgICAgfSxcbiAgICAgICAgYyh3WG1sLCBvZCl7XG4gICAgICAgICAgICBjb25zdCB7YXR0cmliczp7cixzOnN0eWxlfX09d1htbFxuICAgICAgICAgICAgY29uc3QgY2hpbGRyZW49b2QuJCh3WG1sKS5jaGlsZHJlbigpLnRvQXJyYXkoKVxuICAgICAgICAgICAgY29uc3QgWyxjb2wscm93LF09LyhbQS1aXSspKFxcZCskKS8uZXhlYyhyKVxuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICB0eXBlOlwiY2VsbFwiLFxuICAgICAgICAgICAgICAgIG5hbWU6YCR7cGFyc2VJbnQocm93KS0xfSR7Y29sfWAsXG4gICAgICAgICAgICAgICAgY29sOmNvbFN0clRvSW50KGNvbCksXG4gICAgICAgICAgICAgICAgcm93OnBhcnNlSW50KHJvdyktMSwgXG4gICAgICAgICAgICAgICAgY2hpbGRyZW4sXG4gICAgICAgICAgICAgICAgc3R5bGU6c3R5bGUhPXVuZGVmaW5lZCA/IHBhcnNlSW50KHN0eWxlKSA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICB2KHdYbWwsb2Qpe1xuICAgICAgICAgICAgY29uc3Qge2F0dHJpYnM6e3Q6a2luZH19PXdYbWwucGFyZW50XG4gICAgICAgICAgICBjb25zdCB7Y2hpbGRyZW46W3tkYXRhfV19PXdYbWxcbiAgICAgICAgICAgIHN3aXRjaChraW5kKXtcbiAgICAgICAgICAgIGNhc2UgXCJpXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHt0eXBlOlwicGFyYWdyYXBoXCIsa2luZCxjaGlsZHJlbjpbLi4ud1htbC5jaGlsZHJlbl19XG4gICAgICAgICAgICBjYXNlIFwic1wiOlxuICAgICAgICAgICAgICAgIG9kLiQod1htbCkuZW1wdHkoKS5hcHBlbmQob2Quc2hhcmVkU3RyaW5ncy5lcShkYXRhKS5jbG9uZSgpLmNoaWxkcmVuKCkpXG4gICAgICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgb2QuJCh3WG1sKS5lbXB0eSgpLmFwcGVuZChgPHI+PHQ+JHtkYXRhfTwvdD48L3I+YClcbiAgICAgICAgICAgICAgICBicmVha1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgd1htbC5wYXJlbnQuYXR0cmlicy50PVwiaVwiXG4gICAgICAgICAgICByZXR1cm4ge3R5cGU6XCJwYXJhZ3JhcGhcIixraW5kLGNoaWxkcmVuOlsuLi53WG1sLmNoaWxkcmVuXX1cbiAgICAgICAgfSxcbiAgICAgICAgaXMod1htbCxvZCl7XG4gICAgICAgICAgICB3WG1sLm5hbWU9XCJ2XCJcbiAgICAgICAgICAgIHJldHVybiB7dHlwZTpcInBhcmFncmFwaFwiLGtpbmQ6XCJpc1wiLGNoaWxkcmVuOlsuLi53WG1sLmNoaWxkcmVuXX1cbiAgICAgICAgfSxcbiAgICAgICAgXG4gICAgICAgIHIod1htbCxvZCl7XG4gICAgICAgICAgICBjb25zdCBzdHlsZT1vZC4kKHdYbWwpLmZpbmQoXCI+clByXCIpLnByb3BzKFRleHRTdHlsZShvZCkpXG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHR5cGU6XCJydW5cIixcbiAgICAgICAgICAgICAgICBzdHlsZSwgXG4gICAgICAgICAgICAgICAgY2hpbGRyZW46IHdYbWwuY2hpbGRyZW4uZmlsdGVyKCh7bmFtZX0pPT5uYW1lIT1cInJQclwiKVxuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuXG4gICAgICAgIC8vc3R5bGVzXG4gICAgICAgIG51bUZtdCh3WG1sLG9kKXtcbiAgICAgICAgICAgIHJldHVybiB7Y2hpbGRyZW46bnVsbCwuLi5vZC5zdHlsZXMod1htbCkucHJvcHMoKX1cbiAgICAgICAgfSxcbiAgICAgICAgY2VsbFN0eWxlKHdYbWwsb2Qpe1xuICAgICAgICAgICAgcmV0dXJuIHtjaGlsZHJlbjpudWxsLC4uLm9kLnN0eWxlcyh3WG1sKS5wcm9wcygpfVxuICAgICAgICB9LFxuICAgICAgICB4Zih3WG1sLG9kKXtcbiAgICAgICAgICAgIHJldHVybiB7Y2hpbGRyZW46bnVsbCwuLi5vZC5zdHlsZXMod1htbCkucHJvcHMoe1xuICAgICAgICAgICAgICAgIG5hbWVzOntcbiAgICAgICAgICAgICAgICAgICAgd3JhcFRleHQ6XCJ3cmFwXCIsXG4gICAgICAgICAgICAgICAgICAgIGhvcml6b250YWw6XCJhbGlnblwiLFxuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbDpcInZlcnRBbGlnblwiLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgd3JhcFRleHQ6dj0+dj09XCJ0cnVlXCJ8fHY9PVwiMVwiID8gdHJ1ZSA6IGZhbHNlLFxuICAgICAgICAgICAgICAgIC4uLnBhcnNlSW50NEtleXMoXCJudW1GbXRJZCxmb250SWQsZmlsbElkLGJvcmRlcklkLHhmSWQsYXBwbHlOdW1iZXJGb3JtYXQsYXBwbHlGb250LGFwcGx5RmlsbCxhcHBseUJvcmRlcixhcHBseUFsaWdubWVudFwiKSxcbiAgICAgICAgICAgICAgICB0aWR5KHthcHBseU51bWJlckZvcm1hdCxhcHBseUZvbnQsYXBwbHlGaWxsLGFwcGx5Qm9yZGVyLGFwcGx5QWxpZ25tZW50LCAuLi5hfSl7XG4gICAgICAgICAgICAgICAgICAgIGlmKGFwcGx5TnVtYmVyRm9ybWF0PT0wKVxuICAgICAgICAgICAgICAgICAgICAgICAgZGVsZXRlIGEubnVtRm10SWRcbiAgICAgICAgICAgICAgICAgICAgaWYoYXBwbHlGb250PT0wKVxuICAgICAgICAgICAgICAgICAgICAgICAgZGVsZXRlIGEuZm9udElkXG4gICAgICAgICAgICAgICAgICAgIGlmKGFwcGx5RmlsbD09MClcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlbGV0ZSBhLmZpbGxJZFxuICAgICAgICAgICAgICAgICAgICBpZihhcHBseUJvcmRlcj09MClcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlbGV0ZSBhLmJvcmRlcklkXG4gICAgICAgICAgICAgICAgICAgIGlmKGFwcGx5QWxpZ25tZW50PT0wKVxuICAgICAgICAgICAgICAgICAgICAgICAgZGVsZXRlIGEuYWxpZ25tZW50XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBhXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSl9XG4gICAgICAgIH0sXG4gICAgICAgIHRhYmxlU3R5bGUod1htbCxvZCl7XG4gICAgICAgICAgICByZXR1cm4ge2NoaWxkcmVuOm51bGwsLi4ub2Quc3R5bGVzKHdYbWwpLnByb3BzKCl9XG4gICAgICAgIH0sXG4gICAgICAgIGZvbnQod1htbCxvZCl7XG4gICAgICAgICAgICByZXR1cm4ge2NoaWxkcmVuOm51bGwsLi4ub2Quc3R5bGVzKHdYbWwpLnByb3BzKFRleHRTdHlsZShvZCkpfVxuICAgICAgICB9LFxuICAgICAgICBmaWxsKHdYbWwsb2Qpe1xuICAgICAgICAgICAgcmV0dXJuIHtjaGlsZHJlbjpudWxsLC4uLm9kLnN0eWxlcyh3WG1sKS5wcm9wcyh7XG4gICAgICAgICAgICAgICAgYmdDb2xvcjpvZC5jb2xvcixcbiAgICAgICAgICAgICAgICBmZ0NvbG9yOm9kLmNvbG9yLFxuICAgICAgICAgICAgICAgIHRpZHkoe3BhdHRlcm5GaWxsOntmZ0NvbG9yOmJhY2tncm91bmQscGF0dGVyblR5cGV9fSl7XG4gICAgICAgICAgICAgICAgICAgIGlmKHBhdHRlcm5UeXBlPT1cIm5vbmVcIilcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7fVxuICAgICAgICAgICAgICAgICAgICBpZihwYXR0ZXJuVHlwZSAmJiBwYXR0ZXJuVHlwZS5zdGFydHNXaXRoKFwiZ3JheVwiKSl7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByPU51bWJlcihwYXJzZUludChwYXR0ZXJuVHlwZS5zdWJzdHJpbmcoNCkpKS50b1N0cmluZygxNilcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7YmFja2dyb3VuZDpgIyR7cn0ke3J9JHtyfWB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtiYWNrZ3JvdW5kfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pfVxuICAgICAgICB9LFxuICAgICAgICBib3JkZXIod1htbCxvZCl7XG4gICAgICAgICAgICByZXR1cm4ge2NoaWxkcmVuOm51bGwsLi4ub2Quc3R5bGVzKHdYbWwpLnByb3BzKHtcbiAgICAgICAgICAgICAgICBjb2xvcjpvZC5jb2xvcixcbiAgICAgICAgICAgICAgICB0aWR5X2xlZnQ6dGlkeV9ib3JkZXIsXG4gICAgICAgICAgICAgICAgdGlkeV9yaWdodDp0aWR5X2JvcmRlcixcbiAgICAgICAgICAgICAgICB0aWR5X2JvdHRvbTp0aWR5X2JvcmRlcixcbiAgICAgICAgICAgICAgICB0aWR5X3RvcDp0aWR5X2JvcmRlcixcbiAgICAgICAgICAgICAgICB0aWR5X2RpYWdvbmFsOiB0aWR5X2JvcmRlcixcbiAgICAgICAgICAgIH0pfVxuICAgICAgICB9LFxuICAgIH1cbn1cblxuXG5jb25zdCBwYXJzZUludDRLZXlzPWtleXM9PmtleXMuc3BsaXQoXCIsXCIpLnJlZHVjZSgocyxrKT0+KHNba109cGFyc2VJbnQscykse30pXG5jb25zdCBDb2xvckluZGV4PVwibHQxLGRrMSxsdDIsZGsyLGFjY2VudDEsYWNjZW50MixhY2NlbnQzLGFjY2VudDQsYWNjZW50NSxhY2NlbnQ2LGhsaW5rLGZvbEhsaW5rXCIuc3BsaXQoXCIsXCIpXG5jb25zdCB0aWR5X2JvcmRlcj0oe3N0eWxlLC4uLmF9KT0+e1xuICAgIHN3aXRjaChzdHlsZSl7XG4gICAgICAgIGNhc2UgXCJ0aGluXCI6XG4gICAgICAgICAgICBhLnN6PTFcbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICBicmVha1xuICAgIH1cbiAgICByZXR1cm4gYVxufVxuY29uc3QgVGV4dFN0eWxlPW9kPT4oe1xuICAgIF9fZmlsdGVyOlwiOm5vdChzY2hlbWUsZmFtaWx5LGNoYXJzZXQpXCIsXG4gICAgbmFtZXM6e1xuICAgICAgICByRm9udDpcImZvbnRzXCIsXG4gICAgICAgIG5hbWU6XCJmb250c1wiLFxuICAgICAgICBzejpcInNpemVcIixcbiAgICAgICAgYjpcImJvbGRcIixcbiAgICAgICAgaTpcIml0YWxpY1wiLFxuICAgICAgICB1OlwidW5kZXJsaW5lXCIsXG4gICAgICAgIHZhbmlzaDpcImhpZGRlblwiXG4gICAgfSxcbiAgICByRm9udDooe2F0dHJpYnM6e3ZhbH19KT0+dmFsLFxuICAgIG5hbWU6KHthdHRyaWJzOnt2YWx9fSk9PnZhbCxcbiAgICBiOih7YXR0cmliczp7dmFsPXRydWV9fSk9PiEhdmFsLFxuICAgIGk6KHthdHRyaWJzOnt2YWw9dHJ1ZX19KT0+ISF2YWwsXG4gICAgdTooe2F0dHJpYnM6e3ZhbD1cInNpbmdsZVwifX0pPT52YWwsXG4gICAgdmFuaXNoOih7YXR0cmliczp7dmFsPXRydWV9fSk9PiEhdmFsLFxuICAgIHN6Oih7YXR0cmliczp7dmFsfX0pPT5vZC5kb2MucHQyUHgocGFyc2VJbnQodmFsKSksXG5cbiAgICBjb2xvcjpvZC5jb2xvcixcbn0pXG5cbmNvbnN0IFhMU0ljdiA9IFtcbiAgICBcIiMwMDAwMDBcIixcblx0XCIjRkZGRkZGXCIsXG5cdFwiI0ZGMDAwMFwiLFxuXHRcIiMwMEZGMDBcIixcblx0XCIjMDAwMEZGXCIsXG5cdFwiI0ZGRkYwMFwiLFxuXHRcIiNGRjAwRkZcIixcblx0XCIjMDBGRkZGXCIsXG5cdFwiIzAwMDAwMFwiLFxuXHRcIiNGRkZGRkZcIixcblx0XCIjRkYwMDAwXCIsXG5cdFwiIzAwRkYwMFwiLFxuXHRcIiMwMDAwRkZcIixcblx0XCIjRkZGRjAwXCIsXG5cdFwiI0ZGMDBGRlwiLFxuXHRcIiMwMEZGRkZcIixcblx0XCIjODAwMDAwXCIsXG5cdFwiIzAwODAwMFwiLFxuXHRcIiMwMDAwODBcIixcblx0XCIjODA4MDAwXCIsXG5cdFwiIzgwMDA4MFwiLFxuXHRcIiMwMDgwODBcIixcblx0XCIjQzBDMEMwXCIsXG5cdFwiIzgwODA4MFwiLFxuXHRcIiM5OTk5RkZcIixcblx0XCIjOTkzMzY2XCIsXG5cdFwiI0ZGRkZDQ1wiLFxuXHRcIiNDQ0ZGRkZcIixcblx0XCIjNjYwMDY2XCIsXG5cdFwiI0ZGODA4MFwiLFxuXHRcIiMwMDY2Q0NcIixcblx0XCIjQ0NDQ0ZGXCIsXG5cdFwiIzAwMDA4MFwiLFxuXHRcIiNGRjAwRkZcIixcblx0XCIjRkZGRjAwXCIsXG5cdFwiIzAwRkZGRlwiLFxuXHRcIiM4MDAwODBcIixcblx0XCIjODAwMDAwXCIsXG5cdFwiIzAwODA4MFwiLFxuXHRcIiMwMDAwRkZcIixcblx0XCIjMDBDQ0ZGXCIsXG5cdFwiI0NDRkZGRlwiLFxuXHRcIiNDQ0ZGQ0NcIixcblx0XCIjRkZGRjk5XCIsXG5cdFwiIzk5Q0NGRlwiLFxuXHRcIiNGRjk5Q0NcIixcblx0XCIjQ0M5OUZGXCIsXG5cdFwiI0ZGQ0M5OVwiLFxuXHRcIiMzMzY2RkZcIixcblx0XCIjMzNDQ0NDXCIsXG5cdFwiIzk5Q0MwMFwiLFxuXHRcIiNGRkNDMDBcIixcblx0XCIjRkY5OTAwXCIsXG5cdFwiI0ZGNjYwMFwiLFxuXHRcIiM2NjY2OTlcIixcblx0XCIjOTY5Njk2XCIsXG5cdFwiIzAwMzM2NlwiLFxuXHRcIiMzMzk5NjZcIixcblx0XCIjMDAzMzAwXCIsXG5cdFwiIzMzMzMwMFwiLFxuXHRcIiM5OTMzMDBcIixcblx0XCIjOTkzMzY2XCIsXG5cdFwiIzMzMzM5OVwiLFxuXHRcIiMzMzMzMzNcIixcblx0XCIjMDAwMDAwXCIsIC8qIFwiIzQwIGljdkZvcmVncm91bmQgPz8gKi9cblx0XCIjMDAwMDAwXCIsIC8qIFwiIzQxIGljdkJhY2tncm91bmQgPz8gKi9cblx0XCIjMDAwMDAwXCIsIC8qIFwiIzQyIGljdkZyYW1lID8/ICovXG5cdFwiIzAwMDAwMFwiLCAvKiBcIiM0MyBpY3YzRCA/PyAqL1xuXHRcIiMwMDAwMDBcIiwgLyogXCIjNDQgaWN2M0RUZXh0ID8/ICovXG5cdFwiIzAwMDAwMFwiLCAvKiBcIiM0NSBpY3YzREhpbGl0ZSA/PyAqL1xuXHRcIiMwMDAwMDBcIiwgLyogXCIjNDYgaWN2M0RTaGFkb3cgPz8gKi9cblx0XCIjMDAwMDAwXCIsIC8qIFwiIzQ3IGljdkhpbGl0ZSA/PyAqL1xuXHRcIiMwMDAwMDBcIiwgLyogXCIjNDggaWN2Q3RsVGV4dCA/PyAqL1xuXHRcIiMwMDAwMDBcIiwgLyogXCIjNDkgaWN2Q3RsU2NybCA/PyAqL1xuXHRcIiMwMDAwMDBcIiwgLyogXCIjNEEgaWN2Q3RsSW52ID8/ICovXG5cdFwiIzAwMDAwMFwiLCAvKiBcIiM0QiBpY3ZDdGxCb2R5ID8/ICovXG5cdFwiIzAwMDAwMFwiLCAvKiBcIiM0QyBpY3ZDdGxGcmFtZSA/PyAqL1xuXHRcIiMwMDAwMDBcIiwgLyogXCIjNEQgaWN2Q3RsRm9yZSA/PyAqL1xuXHRcIiMwMDAwMDBcIiwgLyogXCIjNEUgaWN2Q3RsQmFjayA/PyAqL1xuXHRcIiMwMDAwMDBcIiwgLyogXCIjNEYgaWN2Q3RsTmV1dHJhbCAqL1xuXHRcIiMwMDAwMDBcIiwgLyogXCIjNTAgaWN2SW5mb0JrID8/ICovXG5cdFwiIzAwMDAwMFwiIC8qIFwiIzUxIGljdkluZm9UZXh0ID8/ICovXG5dXG4iXX0= \ No newline at end of file diff --git a/package.json b/package.json index 21f79cd..4c49dae 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "docx4js", "description": "javascript docx parser", - "version": "3.2.21", + "version": "3.3.0", "author": { "name": "Raymond Li", "email": "lalalic@139.com" @@ -49,10 +49,11 @@ "sourceMaps": "inline" }, "main": "./lib/", + "module":"./src/", "scripts": { "compile": "babel src -d lib", "build": "browserify -g uglifyify -r ./lib/index.js:docx4js -o dist/docx4js.js", "dev": "watchify -v -d -r ./lib/index.js:docx4js -o docs/index.js", - "test": "jest" + "test": "node node_modules/.bin/jest" } } diff --git a/src/openxml/document.js b/src/openxml/document.js index a25c4c1..9e3e686 100644 --- a/src/openxml/document.js +++ b/src/openxml/document.js @@ -5,7 +5,7 @@ import Color from "color" export default class extends Base{ constructor(){ super(...arguments) - this.main=new Part("",this) + this.main=this.rels=new Part("",this) this.officeDocument=new this.constructor.OfficeDocument(this.main.getRelTarget("officeDocument"), this) } get vender(){"Microsoft"} diff --git a/src/openxml/docx/officeDocument.js b/src/openxml/docx/officeDocument.js index 2922aa9..68753d3 100644 --- a/src/openxml/docx/officeDocument.js +++ b/src/openxml/docx/officeDocument.js @@ -6,16 +6,18 @@ export default class extends Base{ super._init() this._assignRel("styles,numbering,settings".split(",")) - var $=this.styles - this.styles.prototype.basest=function(selector){ - let current=this - while(current.length>0){ - if(current.is(selector)){ - return $(current) + if(this.styles){ + let $=this.styles + this.styles.prototype.basest=function(selector){ + let current=this + while(current.length>0){ + if(current.is(selector)){ + return $(current) + } + current=$.root().find(`w\\:style[w\\:styleId="${current.children("w\\:basedOn").attr("w:val")}"]`) } - current=$.root().find(`w\\:style[w\\:styleId="${current.children("w\\:basedOn").attr("w:val")}"]`) + return this.not(this) } - return this.not(this) } } diff --git a/src/openxml/drawml/index.js b/src/openxml/drawml/index.js index 23f665e..d68b54a 100644 --- a/src/openxml/drawml/index.js +++ b/src/openxml/drawml/index.js @@ -17,6 +17,8 @@ export default od=>({ const {attribs:{"r:embed":embed, "r:link":url}}=n if(url) return {url} + if(!embed) + return const part=od.$(n).part() return new Part(part,od.doc).getRel(embed) }, diff --git a/src/openxml/officeDocument.js b/src/openxml/officeDocument.js index fca7c28..831c73c 100644 --- a/src/openxml/officeDocument.js +++ b/src/openxml/officeDocument.js @@ -12,81 +12,82 @@ export default class extends Part{ return this.doc.asColor(val=="phClr" ? ph.color :this.theme.color(val),effect) }, }) + if(this.theme){ + Object.assign(this.theme,{ + font(typeface){ + const type={mn:"minor",mj:"major"} + const [a,b]=typeface.split(/[+-]/g).filter(a=>a) + if(a && b) + return this(`a\\:fontScheme>a\\:${type[a]}Font>a\\:${b=="lt"?"latin":b}`).attr("typeface") + return typeface + }, + color(k){ + const $=this(`a\\:clrScheme>a\\:${k}`).children().eq(0) + return doc.asColor($.attr("lastClr")||$.attr("val")) + }, - Object.assign(this.theme,{ - font(typeface){ - const type={mn:"minor",mj:"major"} - const [a,b]=typeface.split(/[+-]/g).filter(a=>a) - if(a && b) - return this(`a\\:fontScheme>a\\:${type[a]}Font>a\\:${b=="lt"?"latin":b}`).attr("typeface") - return typeface - }, - color(k){ - const $=this(`a\\:clrScheme>a\\:${k}`).children().eq(0) - return doc.asColor($.attr("lastClr")||$.attr("val")) - }, + fillRef(idx,ph){ + idx=parseInt(idx) + if(idx==0 || idx==1000) + return {} + if(idx>1000) + return this('a\\:fmtScheme>a\\:bgFillStyleLst') + .children() + .eq(idx-1001) + .props(transform(ph)) - fillRef(idx,ph){ - idx=parseInt(idx) - if(idx==0 || idx==1000) - return {} - if(idx>1000) - return this('a\\:fmtScheme>a\\:bgFillStyleLst') + return this('a\\:fmtScheme>a\\:fillStyleLst') .children() - .eq(idx-1001) + .eq(idx-1) .props(transform(ph)) + }, - return this('a\\:fmtScheme>a\\:fillStyleLst') - .children() - .eq(idx-1) - .props(transform(ph)) - }, - - lnRef(idx,ph){ - return this('a\\:fmtScheme>a\\:lnStyleLst') - .children() - .eq(parseInt(idx)-1) - .props(transform(ph)) - }, - - effectRef(idx, ph){ - return this('a\\:fmtScheme>a\\:effectStyleLst') - .children() - .eq(parseInt(idx)-1) - .children('a\\:effectLst') - .props(transform(ph)) - }, + lnRef(idx,ph){ + return this('a\\:fmtScheme>a\\:lnStyleLst') + .children() + .eq(parseInt(idx)-1) + .props(transform(ph)) + }, - fontRef(idx,ph){ - const $=this('a\\:fmtScheme>a\\:fontScheme>a\\:'+idx+'Font') - const latin=$.children('a\\:latin') - const ea=$.children('a\\:ea') - const cs=$.children('a\\:cs') - return {latin:latin.attr("typeface"),ea:ea.attr('typeface'),cs:cs.attr("typeface"),...ph} - } - }) - } + effectRef(idx, ph){ + return this('a\\:fmtScheme>a\\:effectStyleLst') + .children() + .eq(parseInt(idx)-1) + .children('a\\:effectLst') + .props(transform(ph)) + }, - _assignRel(supported){ - this.rels(`Relationship[Target$=".xml"]`).each((i,rel)=>{ - let $=this.rels(rel) - let type=$.attr("Type").split("/").pop() - if(supported.indexOf(type)!=-1){ - let target=$.attr("Target") - Object.defineProperty(this,type,{ - configurable:true, - get(){ - return this.getRelObject(target) - } - }) - } - }) + fontRef(idx,ph){ + const $=this('a\\:fmtScheme>a\\:fontScheme>a\\:'+idx+'Font') + const latin=$.children('a\\:latin') + const ea=$.children('a\\:ea') + const cs=$.children('a\\:cs') + return {latin:latin.attr("typeface"),ea:ea.attr('typeface'),cs:cs.attr("typeface"),...ph} + } + }) + } } render(createElement, identify=this.constructor.identify.bind(this.constructor)){ } + parse(domHandler,identify=this.constructor.identify.bind(this.constructor)){ + const createElement=domHandler.createElement.bind(domHandler) + function _identify(){ + let model=identify(...arguments) + if(model && typeof(model)=="object"){ + domHandler.emit("*",model,...arguments) + domHandler.emit(model.type, model,...arguments) + if(domHandler[`on${model.type}`]) + domHandler[`on${model.type}`](model,...arguments) + } + return model + } + + return this.render(createElement, _identify) + } + static identify(wXml, officeDocument){ const identities=this.identities const tag=wXml.name.split(":").pop() diff --git a/src/openxml/part.js b/src/openxml/part.js index 1a1d690..3ee7fd2 100644 --- a/src/openxml/part.js +++ b/src/openxml/part.js @@ -40,6 +40,22 @@ export default class Part{ }) } + _assignRel(supported=true){ + this.rels(`Relationship[Target$=".xml"]`).each((i,rel)=>{ + let $=this.rels(rel) + let type=$.attr("Type").split("/").pop() + if(supported===true || supported.indexOf(type)!=-1){ + let target=$.attr("Target") + Object.defineProperty(this,type,{ + configurable:true, + get(){ + return this.getRelObject(target) + } + }) + } + }) + } + normalizePath(path=""){ if(path.startsWith("/")) return path.substr(1) @@ -47,7 +63,7 @@ export default class Part{ } getRelPart(id){ - var rel=this.rels(`Relationship[Id="${id}"]`) + var rel=this.rels(`Relationship[Id="${id}"],Relationship[Type$="${id}"],Relationship[Target$="${id}"]`) var target=rel.attr("Target") return new Part(this.normalizePath(target),this.doc) } @@ -63,6 +79,9 @@ export default class Part{ getRel(id){ var rel=this.rels(`Relationship[Id="${id}"]`) var target=rel.attr("Target") + if(!target){ + return + } if(rel.attr("TargetMode")==='External') return {url:target} @@ -222,3 +241,10 @@ export default class Part{ return this.doc.$(node) } } + +class RelsPart extends Part{ + _init(){ + super._init() + + } +} diff --git a/src/openxml/pptx/officeDocument.js b/src/openxml/pptx/officeDocument.js index 8c93677..ec9b5be 100644 --- a/src/openxml/pptx/officeDocument.js +++ b/src/openxml/pptx/officeDocument.js @@ -15,6 +15,22 @@ export default class OfficeDocument extends Base{ return this.renderNode(this.content("p\\:presentation").get(0), createElement, identify) } + parse(domHandler,identify=this.constructor.identify.bind(this.constructor)){ + const createElement=domHandler.createElement.bind(domHandler) + function _identify(){ + let model=identify(...arguments) + if(model && typeof(model)=="object"){ + domHandler.emit("*",model,...arguments) + domHandler.emit(model.type, model,...arguments) + if(domHandler[`on${model.type}`]) + domHandler[`on${model.type}`](model,...arguments) + } + return model + } + + return this.render(createElement, _identify) + } + slide({id,"r:id":rid}){ return this.getRel(rid) } diff --git a/src/openxml/vml/grammar.peg b/src/openxml/vml/grammar.peg new file mode 100644 index 0000000..11fb3cb --- /dev/null +++ b/src/openxml/vml/grammar.peg @@ -0,0 +1,98 @@ +{ + function flatten(x){ + return x.flat() + } +} +vmp_path + = wsp* commands:command* wsp* + {return commands.join("")} + +command + =close + / end + / lineto / rlineto + / moveto / rmoveto + / curveto / rcurveto + / quadraticbezier + +close + ="x" + {return "z"} +end + ="e" + {return ""} +moveto + ="m" comma_wsp* xy:xy + {return `M${xy.x},${xy.y}`} +rmoveto + ="t" comma_wsp* points:points + {return `m${points.map(a=>`${a.x},${a.y}`).join(",")}`} +lineto + ="l" comma_wsp* points:points + {return `L${points.map(a=>`${a.x},${a.y}`).join(",")}`} +rlineto + ="r" comma_wsp* points:points + {return `l${points.map(a=>`${a.x},${a.y}`).join(",")}`} +curveto + ="c" comma_wsp* points:points + {return `C${points.map(a=>`${a.x},${a.y}`).join(",")}`} +rcurveto + ="v" comma_wsp* points:points + {return `c${points.map(a=>`${a.x},${a.y}`).join(",")}`} +quadraticbezier + ="qb" comma_wsp* points:points + {return `Q${points.map(a=>`${a.x},${a.y}`).join(",")}`} + + + + + + +points + =points:(xy comma_wsp?)+ + {return points.map(a=>a[0])} + +xy + = x:coordinate comma_wsp? y:coordinate + { return { x:x, y:y } } + +coordinate + = number + +nonnegative_number + = floating_point_constant / integer_constant + +number + = parts:(sign? floating_point_constant / sign? integer_constant) + { return flatten(parts).join('')*1 } + +comma_wsp + = (wsp+ comma? wsp*) / (comma wsp*) + +comma + = [,@] + +integer_constant + = n:digit_sequence + { return n*1 } + +floating_point_constant + = n:(fractional_constant exponent? / digit_sequence exponent) + { return flatten(n).join('')*1 } + +fractional_constant + = n:(digit_sequence? "." digit_sequence / digit_sequence ".") + { return flatten(n).join('')*1 } + +exponent + = [eE] sign? digit_sequence + +sign + = "+" / "-" + +digit_sequence + = digits:[0-9]+ + { return digits.join("") } + +wsp + = [ \t\n\r] \ No newline at end of file diff --git a/src/openxml/vml/index.js b/src/openxml/vml/index.js new file mode 100644 index 0000000..00ca8bd --- /dev/null +++ b/src/openxml/vml/index.js @@ -0,0 +1,13 @@ +export default officeDocument=>({ + shapetype(xml){ + + }, + + path(){ + + }, + + shape(xml){ + + } +}) \ No newline at end of file