highmark-markdown 1.0.207 → 1.0.209

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -162,18 +162,18 @@ var DivisionHTMLNode = /*#__PURE__*/ function(HTMLNode) {
162
162
  value: function resolve(divisionHTMLNodes, context) {
163
163
  var node = this;
164
164
  (0, _division.removeNestedFootnoteLinkHTMLNodes)(node);
165
- var pageNumberDirectiveHTNLTransform = (0, _division.removePageNumberDirectiveHTMLNode)(node), footnotesDirectiveHTMLNode = (0, _division.removeFootnotesDirectiveHTMLNode)(node), footnoteHTMLTransforms = (0, _division.removeFootnoteHTMLNodes)(node);
165
+ var pageNumberDirectiveHTMLTransform = (0, _division.removePageNumberDirectiveHTMLNode)(node), footnotesDirectiveHTMLNode = (0, _division.removeFootnotesDirectiveHTMLNode)(node), footnoteHTMLTransforms = (0, _division.removeFootnoteHTMLNodes)(node);
166
166
  if (footnotesDirectiveHTMLNode !== null) {
167
167
  (0, _division.addFootnoteHTMLNodes)(footnoteHTMLTransforms, node, context);
168
168
  }
169
- this.paginate(pageNumberDirectiveHTNLTransform, divisionHTMLNodes, context);
169
+ this.paginate(pageNumberDirectiveHTMLTransform, divisionHTMLNodes, context);
170
170
  }
171
171
  },
172
172
  {
173
173
  key: "paginate",
174
- value: function paginate(pageNumberDirectiveHTNLTransform, divisionHTMLNodes, context) {
174
+ value: function paginate(pageNumberDirectiveHTMLTransform, divisionHTMLNodes, context) {
175
175
  var _this = this;
176
- var node = this, outerNode = this.getOuterNode(), pageNumbers = pageNumberDirectiveHTNLTransform !== null, identifierMap = {}, divisionClassName = outerNode.className(context);
176
+ var node = this, outerNode = this.getOuterNode(), pageNumbers = pageNumberDirectiveHTMLTransform !== null, identifierMap = {}, divisionClassName = outerNode.className(context);
177
177
  var htmlNodes = (0, _division.removeHTMLNodes)(node), groupedHTMLNodesArray = (0, _division.groupHTMLNodes)(htmlNodes), paginatedHTMLNodesArray = (0, _division.paginateGroupedHTMLNodes)(groupedHTMLNodesArray, context);
178
178
  paginatedHTMLNodesArray.forEach(function(paginatedHTMLNodes) {
179
179
  var pageNumber;
@@ -257,4 +257,4 @@ var DivisionHTMLNode = /*#__PURE__*/ function(HTMLNode) {
257
257
  _define_property(DivisionHTMLNode, "tagName", "div");
258
258
  _define_property(DivisionHTMLNode, "className", null);
259
259
 
260
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ub2RlL2h0bWwvZGl2aXNpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBIVE1MTm9kZSBmcm9tIFwiLi4vLi4vbm9kZS9odG1sXCI7XG5pbXBvcnQgUGFnZU51bWJlckhUTUxOb2RlIGZyb20gXCIuLi8uLi9ub2RlL2h0bWwvcGFnZU51bWJlclwiO1xuaW1wb3J0IFBhZ2VOdW1iZXJIVE1MVHJhbnNmb3JtIGZyb20gXCIuLi8uLi90cmFuc2Zvcm0vaHRtbC9wYWdlTnVtYmVyXCI7XG5pbXBvcnQgSW5kZXhBbmNob3JIVE1MVHJhbnNmb3JtIGZyb20gXCIuLi8uLi90cmFuc2Zvcm0vaHRtbC9pbmRleEFuY2hvclwiO1xuaW1wb3J0IEZvb3Rub3Rlc0xpc3RIVE1MVHJhbnNmb3JtIGZyb20gXCIuLi8uLi90cmFuc2Zvcm0vaHRtbC9saXN0L2Zvb3Rub3Rlc1wiO1xuXG5pbXBvcnQgeyBESVZJU0lPTl9NQVJLRE9XTl9SVUxFX05BTUUgfSBmcm9tIFwiLi4vLi4vcnVsZU5hbWVzL21hcmtkb3duXCI7XG5pbXBvcnQgeyBncm91cEhUTUxOb2RlcyxcbiAgICAgICAgIHJlbW92ZUhUTUxOb2RlcyxcbiAgICAgICAgIGFkZEZvb3Rub3RlSFRNTE5vZGVzLFxuICAgICAgICAgcmVtb3ZlRm9vdG5vdGVIVE1MTm9kZXMsXG4gICAgICAgICBwYWdpbmF0ZUdyb3VwZWRIVE1MTm9kZXMsXG4gICAgICAgICBudW1iZXJGb290bm90ZUxpbmtIVE1MTm9kZXMsXG4gICAgICAgICByZW1vdmVGb290bm90ZXNEaXJlY3RpdmVIVE1MTm9kZSxcbiAgICAgICAgIHJlbW92ZVBhZ2VOdW1iZXJEaXJlY3RpdmVIVE1MTm9kZSxcbiAgICAgICAgIHJlbW92ZU5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2RlcyxcbiAgICAgICAgIGxpbmVIVE1MVHJhbnNmb3Jtc0Zyb21Gb290bm90ZUhUTUxUcmFuc2Zvcm1zLFxuICAgICAgICAgZm9vdG5vdGVJdGVtSFRNTFRyYW5zZm9ybXNGcm9tTGluZUhUTUxUcmFuc2Zvcm1zIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9kaXZpc2lvblwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBEaXZpc2lvbkhUTUxOb2RlIGV4dGVuZHMgSFRNTE5vZGUge1xuICBjb25zdHJ1Y3RvcihvdXRlck5vZGUsIHBhcmVudE5vZGUsIGNoaWxkTm9kZXMsIGRvbUVsZW1lbnQsIGRpdmlzaW9uQ2xhc3NOYW1lKSB7XG4gICAgc3VwZXIob3V0ZXJOb2RlLCBwYXJlbnROb2RlLCBjaGlsZE5vZGVzLCBkb21FbGVtZW50KTtcblxuICAgIHRoaXMuZGl2aXNpb25DbGFzc05hbWUgPSBkaXZpc2lvbkNsYXNzTmFtZTtcbiAgfVxuXG4gIGdldERpdmlzaW9uQ2xhc3NOYW1lKCkge1xuICAgIHJldHVybiB0aGlzLmRpdmlzaW9uQ2xhc3NOYW1lO1xuICB9XG5cbiAgY2xhc3NOYW1lKGNvbnRleHQpIHtcbiAgICBjb25zdCBjbGFzc05hbWUgPSB0aGlzLmRpdmlzaW9uQ2xhc3NOYW1lOyAvLy9cblxuICAgIHJldHVybiBjbGFzc05hbWU7XG4gIH1cblxuICBnZXRSdWxlTmFtZSgpIHtcbiAgICBjb25zdCBydWxlTm1lID0gRElWSVNJT05fTUFSS0RPV05fUlVMRV9OQU1FO1xuXG4gICAgcmV0dXJuIHJ1bGVObWU7XG4gIH1cblxuICBmcm9tRmlyc3RIVE1MTm9kZShjYWxsYmFjaykge1xuICAgIHRoaXMuZnJvbUZpcnN0Q2hpbGROb2RlKChmaXJzdENoaWxkTm9kZSkgPT4ge1xuICAgICAgY29uc3QgZmlyc3RIVE1MTm9kZSA9IGZpcnN0Q2hpbGROb2RlOyAgLy8vXG5cbiAgICAgIGNhbGxiYWNrKGZpcnN0SFRNTE5vZGUpO1xuICAgIH0pO1xuICB9XG5cbiAgcmVzb2x2ZShkaXZpc2lvbkhUTUxOb2RlcywgY29udGV4dCkge1xuICAgIGNvbnN0IG5vZGUgPSB0aGlzO1xuXG4gICAgcmVtb3ZlTmVzdGVkRm9vdG5vdGVMaW5rSFRNTE5vZGVzKG5vZGUpO1xuXG4gICAgY29uc3QgcGFnZU51bWJlckRpcmVjdGl2ZUhUTkxUcmFuc2Zvcm0gPSByZW1vdmVQYWdlTnVtYmVyRGlyZWN0aXZlSFRNTE5vZGUobm9kZSksXG4gICAgICAgICAgZm9vdG5vdGVzRGlyZWN0aXZlSFRNTE5vZGUgPSByZW1vdmVGb290bm90ZXNEaXJlY3RpdmVIVE1MTm9kZShub2RlKSxcbiAgICAgICAgICBmb290bm90ZUhUTUxUcmFuc2Zvcm1zID0gcmVtb3ZlRm9vdG5vdGVIVE1MTm9kZXMobm9kZSk7XG5cbiAgICBpZiAoZm9vdG5vdGVzRGlyZWN0aXZlSFRNTE5vZGUgIT09IG51bGwpIHtcbiAgICAgIGFkZEZvb3Rub3RlSFRNTE5vZGVzKGZvb3Rub3RlSFRNTFRyYW5zZm9ybXMsIG5vZGUsIGNvbnRleHQpO1xuICAgIH1cblxuICAgIHRoaXMucGFnaW5hdGUocGFnZU51bWJlckRpcmVjdGl2ZUhUTkxUcmFuc2Zvcm0sIGRpdmlzaW9uSFRNTE5vZGVzLCBjb250ZXh0KTtcbiAgfVxuXG4gIHBhZ2luYXRlKHBhZ2VOdW1iZXJEaXJlY3RpdmVIVE5MVHJhbnNmb3JtLCBkaXZpc2lvbkhUTUxOb2RlcywgY29udGV4dCkge1xuICAgIGNvbnN0IG5vZGUgPSB0aGlzLCAgLy8vXG4gICAgICAgICAgb3V0ZXJOb2RlID0gdGhpcy5nZXRPdXRlck5vZGUoKSxcbiAgICAgICAgICBwYWdlTnVtYmVycyA9IChwYWdlTnVtYmVyRGlyZWN0aXZlSFROTFRyYW5zZm9ybSAhPT0gbnVsbCksXG4gICAgICAgICAgaWRlbnRpZmllck1hcCA9IHt9LFxuICAgICAgICAgIGRpdmlzaW9uQ2xhc3NOYW1lID0gb3V0ZXJOb2RlLmNsYXNzTmFtZShjb250ZXh0KTtcblxuICAgIGNvbnN0IGh0bWxOb2RlcyA9IHJlbW92ZUhUTUxOb2Rlcyhub2RlKSxcbiAgICAgICAgICBncm91cGVkSFRNTE5vZGVzQXJyYXkgPSBncm91cEhUTUxOb2RlcyhodG1sTm9kZXMpLFxuICAgICAgICAgIHBhZ2luYXRlZEhUTUxOb2Rlc0FycmF5ID0gcGFnaW5hdGVHcm91cGVkSFRNTE5vZGVzKGdyb3VwZWRIVE1MTm9kZXNBcnJheSwgY29udGV4dCk7XG5cbiAgICBwYWdpbmF0ZWRIVE1MTm9kZXNBcnJheS5mb3JFYWNoKChwYWdpbmF0ZWRIVE1MTm9kZXMpID0+IHtcbiAgICAgIGxldCBwYWdlTnVtYmVyO1xuXG4gICAgICAoeyBwYWdlTnVtYmVyIH0gPSBjb250ZXh0KTtcblxuICAgICAgY29uc3QgZGl2aXNpb25IVE1MTm9kZSA9IERpdmlzaW9uSFRNTE5vZGUuZnJvbVBhZ2luYXRlZEhUTUxOb2Rlc0FuZERpdmlzaW9uQ2xhc3NOYW1lKHBhZ2luYXRlZEhUTUxOb2RlcywgZGl2aXNpb25DbGFzc05hbWUpO1xuXG4gICAgICBkaXZpc2lvbkhUTUxOb2RlLnJlc29sdmVGb290bm90ZXMoaWRlbnRpZmllck1hcCwgY29udGV4dCk7XG5cbiAgICAgIGlmIChwYWdlTnVtYmVycykge1xuICAgICAgICBjb25zdCBwYWdlTnVtYmVySFRNTFRyYW5zZm9ybSA9IFBhZ2VOdW1iZXJIVE1MVHJhbnNmb3JtLmZyb21QYWdlTnVtYmVyKHBhZ2VOdW1iZXIpO1xuXG4gICAgICAgIHBhZ2VOdW1iZXJIVE1MVHJhbnNmb3JtLmFwcGVuZFRvRGl2aXNpb25IVE1MTm9kZShkaXZpc2lvbkhUTUxOb2RlKTtcblxuICAgICAgICB0aGlzLmZyb21GaXJzdEhUTUxOb2RlKChmaXJzdEhUTUxOb2RlKSA9PiB7XG4gICAgICAgICAgY29uc3QgaW5kZXhBbmNob3JIVE1MVHJhbnNmb3JtID0gSW5kZXhBbmNob3JIVE1MVHJhbnNmb3JtLmZyb21QYWdlTnVtYmVyKHBhZ2VOdW1iZXIpLFxuICAgICAgICAgICAgICAgIGh0bWxOb2RlID0gZmlyc3RIVE1MTm9kZTsgIC8vL1xuXG4gICAgICAgICAgaW5kZXhBbmNob3JIVE1MVHJhbnNmb3JtLmFwcGVuZFRvSFRNTE5vZGUoaHRtbE5vZGUpO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgZGl2aXNpb25IVE1MTm9kZXMucHVzaChkaXZpc2lvbkhUTUxOb2RlKTtcblxuICAgICAgcGFnZU51bWJlcisrO1xuXG4gICAgICBPYmplY3QuYXNzaWduKGNvbnRleHQsIHtcbiAgICAgICAgcGFnZU51bWJlclxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwYWdlTnVtYmVyKCkge1xuICAgIGNvbnN0IHBhZ2VOdW1iZXIgPSB0aGlzLmZyb21GaXJzdExhc3RDaGlsZE5vZGUoKGZpcnN0TGFzdENoaWxkTm9kZSkgPT4ge1xuICAgICAgbGV0IHBhZ2VOdW1iZXIgPSBudWxsO1xuXG4gICAgICBjb25zdCBmaXJzdExhc3RDaGlsZE5vZGVQYWdlTnVtYmVySFRNTE5vZGUgPSAoZmlyc3RMYXN0Q2hpbGROb2RlIGluc3RhbmNlb2YgUGFnZU51bWJlckhUTUxOb2RlKTtcblxuICAgICAgaWYgKGZpcnN0TGFzdENoaWxkTm9kZVBhZ2VOdW1iZXJIVE1MTm9kZSkge1xuICAgICAgICBjb25zdCBwYWdlTnVtYmVySFRNTE5vZGUgPSBmaXJzdExhc3RDaGlsZE5vZGU7ICAvLy9cblxuICAgICAgICBwYWdlTnVtYmVyID0gcGFnZU51bWJlckhUTUxOb2RlLmdldFBhZ2VOdW1iZXIoKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHBhZ2VOdW1iZXI7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gcGFnZU51bWJlcjtcbiAgfVxuXG4gIHJlc29sdmVGb290bm90ZXMoaWRlbnRpZmllck1hcCwgY29udGV4dCkge1xuICAgIGNvbnN0IG5vZGUgPSB0aGlzLCAgLy8vXG4gICAgICAgICAgZm9vdG5vdGVIVE1MVHJhbnNmb3JtcyA9IHJlbW92ZUZvb3Rub3RlSFRNTE5vZGVzKG5vZGUpLFxuICAgICAgICAgIGZvb3Rub3RlSFRNTFRyYW5zZm9ybXNMZW5ndGggPSBmb290bm90ZUhUTUxUcmFuc2Zvcm1zLmxlbmd0aDtcblxuICAgIGlmIChmb290bm90ZUhUTUxUcmFuc2Zvcm1zTGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGl2aXNpb25IVE1MTm9kZSA9IG5vZGUsICAvLy9cbiAgICAgICAgICBzdGFydCA9IG51bWJlckZvb3Rub3RlTGlua0hUTUxOb2Rlcyhmb290bm90ZUhUTUxUcmFuc2Zvcm1zLCBpZGVudGlmaWVyTWFwLCBub2RlLCBjb250ZXh0KSxcbiAgICAgICAgICBsaW5lSFRNTFRyYW5zZm9ybXMgPSBsaW5lSFRNTFRyYW5zZm9ybXNGcm9tRm9vdG5vdGVIVE1MVHJhbnNmb3Jtcyhmb290bm90ZUhUTUxUcmFuc2Zvcm1zKSxcbiAgICAgICAgICBmb290bm90ZUl0ZW1IVE1MVHJhbnNmb3JtcyA9IGZvb3Rub3RlSXRlbUhUTUxUcmFuc2Zvcm1zRnJvbUxpbmVIVE1MVHJhbnNmb3JtcyhsaW5lSFRNTFRyYW5zZm9ybXMsIGlkZW50aWZpZXJNYXAsIHN0YXJ0KSxcbiAgICAgICAgICBmb290bm90ZXNMaXN0SFRNTFRyYW5zZm9ybSA9IEZvb3Rub3Rlc0xpc3RIVE1MVHJhbnNmb3JtLmZyb21TdGFydEFuZEZvb3Rub3RlSXRlbUhUTUxUcmFuc2Zvcm1zKHN0YXJ0LCBmb290bm90ZUl0ZW1IVE1MVHJhbnNmb3Jtcyk7XG5cbiAgICBmb290bm90ZXNMaXN0SFRNTFRyYW5zZm9ybS5hcHBlbmRUb0RpdmlzaW9uSFRNTE5vZGUoZGl2aXNpb25IVE1MTm9kZSk7XG4gIH1cblxuICBhc1N0cmluZygpIHtcbiAgICBjb25zdCBydWxlTmFtZSA9IHRoaXMuZ2V0UnVsZU5hbWUoKSxcbiAgICAgICAgICBzdHJpbmcgPSBydWxlTmFtZTsgIC8vL1xuXG4gICAgcmV0dXJuIHN0cmluZztcbiAgfVxuXG4gIHN0YXRpYyB0YWdOYW1lID0gXCJkaXZcIjtcblxuICBzdGF0aWMgY2xhc3NOYW1lID0gbnVsbDtcblxuICBzdGF0aWMgZnJvbU5vdGhpbmcoKSB7XG4gICAgY29uc3QgZGl2aXNpb25DbGFzc05hbWUgPSBudWxsLFxuICAgICAgICAgIGRpdmlzaW9uSFRNTE5vZGUgPSBIVE1MTm9kZS5mcm9tTm90aGluZyhEaXZpc2lvbkhUTUxOb2RlLCBkaXZpc2lvbkNsYXNzTmFtZSk7XG5cbiAgICByZXR1cm4gZGl2aXNpb25IVE1MTm9kZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tT3V0ZXJOb2RlKG91dGVyTm9kZSkge1xuICAgIGNvbnN0IGRpdmlzaW9uTWFya2Rvd25Ob2RlID0gb3V0ZXJOb2RlLCAvLy9cbiAgICAgICAgICBkaXZpc2lvbkNsYXNzTmFtZSA9IGRpdmlzaW9uTWFya2Rvd25Ob2RlLmdldERpdmlzaW9uQ2xhc3NOYW1lKCksXG4gICAgICAgICAgZGl2aXNpb25IVE1MTm9kZSA9IEhUTUxOb2RlLmZyb21PdXRlck5vZGUoRGl2aXNpb25IVE1MTm9kZSwgb3V0ZXJOb2RlLCBkaXZpc2lvbkNsYXNzTmFtZSk7XG5cbiAgICByZXR1cm4gZGl2aXNpb25IVE1MTm9kZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tUGFnaW5hdGVkSFRNTE5vZGVzQW5kRGl2aXNpb25DbGFzc05hbWUocGFnaW5hdGVkSFRNTE5vZGVzLCBkaXZpc2lvbkNsYXNzTmFtZSkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXMgPSBwYWdpbmF0ZWRIVE1MTm9kZXMsICAvLy9cbiAgICAgICAgICBkaXZpc2lvbkhUTUxOb2RlID0gSFRNTE5vZGUuZnJvbUNoaWxkTm9kZXMoRGl2aXNpb25IVE1MTm9kZSwgY2hpbGROb2RlcywgZGl2aXNpb25DbGFzc05hbWUpO1xuXG4gICAgcmV0dXJuIGRpdmlzaW9uSFRNTE5vZGU7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJEaXZpc2lvbkhUTUxOb2RlIiwib3V0ZXJOb2RlIiwicGFyZW50Tm9kZSIsImNoaWxkTm9kZXMiLCJkb21FbGVtZW50IiwiZGl2aXNpb25DbGFzc05hbWUiLCJnZXREaXZpc2lvbkNsYXNzTmFtZSIsImNsYXNzTmFtZSIsImNvbnRleHQiLCJnZXRSdWxlTmFtZSIsInJ1bGVObWUiLCJESVZJU0lPTl9NQVJLRE9XTl9SVUxFX05BTUUiLCJmcm9tRmlyc3RIVE1MTm9kZSIsImNhbGxiYWNrIiwiZnJvbUZpcnN0Q2hpbGROb2RlIiwiZmlyc3RDaGlsZE5vZGUiLCJmaXJzdEhUTUxOb2RlIiwicmVzb2x2ZSIsImRpdmlzaW9uSFRNTE5vZGVzIiwibm9kZSIsInJlbW92ZU5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2RlcyIsInBhZ2VOdW1iZXJEaXJlY3RpdmVIVE5MVHJhbnNmb3JtIiwicmVtb3ZlUGFnZU51bWJlckRpcmVjdGl2ZUhUTUxOb2RlIiwiZm9vdG5vdGVzRGlyZWN0aXZlSFRNTE5vZGUiLCJyZW1vdmVGb290bm90ZXNEaXJlY3RpdmVIVE1MTm9kZSIsImZvb3Rub3RlSFRNTFRyYW5zZm9ybXMiLCJyZW1vdmVGb290bm90ZUhUTUxOb2RlcyIsImFkZEZvb3Rub3RlSFRNTE5vZGVzIiwicGFnaW5hdGUiLCJnZXRPdXRlck5vZGUiLCJwYWdlTnVtYmVycyIsImlkZW50aWZpZXJNYXAiLCJodG1sTm9kZXMiLCJyZW1vdmVIVE1MTm9kZXMiLCJncm91cGVkSFRNTE5vZGVzQXJyYXkiLCJncm91cEhUTUxOb2RlcyIsInBhZ2luYXRlZEhUTUxOb2Rlc0FycmF5IiwicGFnaW5hdGVHcm91cGVkSFRNTE5vZGVzIiwiZm9yRWFjaCIsInBhZ2luYXRlZEhUTUxOb2RlcyIsInBhZ2VOdW1iZXIiLCJkaXZpc2lvbkhUTUxOb2RlIiwiZnJvbVBhZ2luYXRlZEhUTUxOb2Rlc0FuZERpdmlzaW9uQ2xhc3NOYW1lIiwicmVzb2x2ZUZvb3Rub3RlcyIsInBhZ2VOdW1iZXJIVE1MVHJhbnNmb3JtIiwiUGFnZU51bWJlckhUTUxUcmFuc2Zvcm0iLCJmcm9tUGFnZU51bWJlciIsImFwcGVuZFRvRGl2aXNpb25IVE1MTm9kZSIsImluZGV4QW5jaG9ySFRNTFRyYW5zZm9ybSIsIkluZGV4QW5jaG9ySFRNTFRyYW5zZm9ybSIsImh0bWxOb2RlIiwiYXBwZW5kVG9IVE1MTm9kZSIsInB1c2giLCJPYmplY3QiLCJhc3NpZ24iLCJmcm9tRmlyc3RMYXN0Q2hpbGROb2RlIiwiZmlyc3RMYXN0Q2hpbGROb2RlIiwiZmlyc3RMYXN0Q2hpbGROb2RlUGFnZU51bWJlckhUTUxOb2RlIiwiUGFnZU51bWJlckhUTUxOb2RlIiwicGFnZU51bWJlckhUTUxOb2RlIiwiZ2V0UGFnZU51bWJlciIsImZvb3Rub3RlSFRNTFRyYW5zZm9ybXNMZW5ndGgiLCJsZW5ndGgiLCJzdGFydCIsIm51bWJlckZvb3Rub3RlTGlua0hUTUxOb2RlcyIsImxpbmVIVE1MVHJhbnNmb3JtcyIsImxpbmVIVE1MVHJhbnNmb3Jtc0Zyb21Gb290bm90ZUhUTUxUcmFuc2Zvcm1zIiwiZm9vdG5vdGVJdGVtSFRNTFRyYW5zZm9ybXMiLCJmb290bm90ZUl0ZW1IVE1MVHJhbnNmb3Jtc0Zyb21MaW5lSFRNTFRyYW5zZm9ybXMiLCJmb290bm90ZXNMaXN0SFRNTFRyYW5zZm9ybSIsIkZvb3Rub3Rlc0xpc3RIVE1MVHJhbnNmb3JtIiwiZnJvbVN0YXJ0QW5kRm9vdG5vdGVJdGVtSFRNTFRyYW5zZm9ybXMiLCJhc1N0cmluZyIsInJ1bGVOYW1lIiwic3RyaW5nIiwiZnJvbU5vdGhpbmciLCJIVE1MTm9kZSIsImZyb21PdXRlck5vZGUiLCJkaXZpc2lvbk1hcmtkb3duTm9kZSIsImZyb21DaGlsZE5vZGVzIiwidGFnTmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFxQnFCQTs7OzJEQW5CQTtpRUFDVTtrRUFDSztrRUFDQztnRUFDRTt3QkFFSzt3QkFXcUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVsRCxJQUFBLEFBQU1BLGlDQUFOO2NBQU1BO2FBQUFBLGlCQUNQQyxTQUFTLEVBQUVDLFVBQVUsRUFBRUMsVUFBVSxFQUFFQyxVQUFVLEVBQUVDLGlCQUFpQjtnQ0FEekRMOztnQkFFakIsa0JBRmlCQTtZQUVYQztZQUFXQztZQUFZQztZQUFZQzs7UUFF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
260
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ub2RlL2h0bWwvZGl2aXNpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBIVE1MTm9kZSBmcm9tIFwiLi4vLi4vbm9kZS9odG1sXCI7XG5pbXBvcnQgUGFnZU51bWJlckhUTUxOb2RlIGZyb20gXCIuLi8uLi9ub2RlL2h0bWwvcGFnZU51bWJlclwiO1xuaW1wb3J0IFBhZ2VOdW1iZXJIVE1MVHJhbnNmb3JtIGZyb20gXCIuLi8uLi90cmFuc2Zvcm0vaHRtbC9wYWdlTnVtYmVyXCI7XG5pbXBvcnQgSW5kZXhBbmNob3JIVE1MVHJhbnNmb3JtIGZyb20gXCIuLi8uLi90cmFuc2Zvcm0vaHRtbC9pbmRleEFuY2hvclwiO1xuaW1wb3J0IEZvb3Rub3Rlc0xpc3RIVE1MVHJhbnNmb3JtIGZyb20gXCIuLi8uLi90cmFuc2Zvcm0vaHRtbC9saXN0L2Zvb3Rub3Rlc1wiO1xuXG5pbXBvcnQgeyBESVZJU0lPTl9NQVJLRE9XTl9SVUxFX05BTUUgfSBmcm9tIFwiLi4vLi4vcnVsZU5hbWVzL21hcmtkb3duXCI7XG5pbXBvcnQgeyBncm91cEhUTUxOb2RlcyxcbiAgICAgICAgIHJlbW92ZUhUTUxOb2RlcyxcbiAgICAgICAgIGFkZEZvb3Rub3RlSFRNTE5vZGVzLFxuICAgICAgICAgcmVtb3ZlRm9vdG5vdGVIVE1MTm9kZXMsXG4gICAgICAgICBwYWdpbmF0ZUdyb3VwZWRIVE1MTm9kZXMsXG4gICAgICAgICBudW1iZXJGb290bm90ZUxpbmtIVE1MTm9kZXMsXG4gICAgICAgICByZW1vdmVGb290bm90ZXNEaXJlY3RpdmVIVE1MTm9kZSxcbiAgICAgICAgIHJlbW92ZVBhZ2VOdW1iZXJEaXJlY3RpdmVIVE1MTm9kZSxcbiAgICAgICAgIHJlbW92ZU5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2RlcyxcbiAgICAgICAgIGxpbmVIVE1MVHJhbnNmb3Jtc0Zyb21Gb290bm90ZUhUTUxUcmFuc2Zvcm1zLFxuICAgICAgICAgZm9vdG5vdGVJdGVtSFRNTFRyYW5zZm9ybXNGcm9tTGluZUhUTUxUcmFuc2Zvcm1zIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9kaXZpc2lvblwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBEaXZpc2lvbkhUTUxOb2RlIGV4dGVuZHMgSFRNTE5vZGUge1xuICBjb25zdHJ1Y3RvcihvdXRlck5vZGUsIHBhcmVudE5vZGUsIGNoaWxkTm9kZXMsIGRvbUVsZW1lbnQsIGRpdmlzaW9uQ2xhc3NOYW1lKSB7XG4gICAgc3VwZXIob3V0ZXJOb2RlLCBwYXJlbnROb2RlLCBjaGlsZE5vZGVzLCBkb21FbGVtZW50KTtcblxuICAgIHRoaXMuZGl2aXNpb25DbGFzc05hbWUgPSBkaXZpc2lvbkNsYXNzTmFtZTtcbiAgfVxuXG4gIGdldERpdmlzaW9uQ2xhc3NOYW1lKCkge1xuICAgIHJldHVybiB0aGlzLmRpdmlzaW9uQ2xhc3NOYW1lO1xuICB9XG5cbiAgY2xhc3NOYW1lKGNvbnRleHQpIHtcbiAgICBjb25zdCBjbGFzc05hbWUgPSB0aGlzLmRpdmlzaW9uQ2xhc3NOYW1lOyAvLy9cblxuICAgIHJldHVybiBjbGFzc05hbWU7XG4gIH1cblxuICBnZXRSdWxlTmFtZSgpIHtcbiAgICBjb25zdCBydWxlTm1lID0gRElWSVNJT05fTUFSS0RPV05fUlVMRV9OQU1FO1xuXG4gICAgcmV0dXJuIHJ1bGVObWU7XG4gIH1cblxuICBmcm9tRmlyc3RIVE1MTm9kZShjYWxsYmFjaykge1xuICAgIHRoaXMuZnJvbUZpcnN0Q2hpbGROb2RlKChmaXJzdENoaWxkTm9kZSkgPT4ge1xuICAgICAgY29uc3QgZmlyc3RIVE1MTm9kZSA9IGZpcnN0Q2hpbGROb2RlOyAgLy8vXG5cbiAgICAgIGNhbGxiYWNrKGZpcnN0SFRNTE5vZGUpO1xuICAgIH0pO1xuICB9XG5cbiAgcmVzb2x2ZShkaXZpc2lvbkhUTUxOb2RlcywgY29udGV4dCkge1xuICAgIGNvbnN0IG5vZGUgPSB0aGlzO1xuXG4gICAgcmVtb3ZlTmVzdGVkRm9vdG5vdGVMaW5rSFRNTE5vZGVzKG5vZGUpO1xuXG4gICAgY29uc3QgcGFnZU51bWJlckRpcmVjdGl2ZUhUTUxUcmFuc2Zvcm0gPSByZW1vdmVQYWdlTnVtYmVyRGlyZWN0aXZlSFRNTE5vZGUobm9kZSksXG4gICAgICAgICAgZm9vdG5vdGVzRGlyZWN0aXZlSFRNTE5vZGUgPSByZW1vdmVGb290bm90ZXNEaXJlY3RpdmVIVE1MTm9kZShub2RlKSxcbiAgICAgICAgICBmb290bm90ZUhUTUxUcmFuc2Zvcm1zID0gcmVtb3ZlRm9vdG5vdGVIVE1MTm9kZXMobm9kZSk7XG5cbiAgICBpZiAoZm9vdG5vdGVzRGlyZWN0aXZlSFRNTE5vZGUgIT09IG51bGwpIHtcbiAgICAgIGFkZEZvb3Rub3RlSFRNTE5vZGVzKGZvb3Rub3RlSFRNTFRyYW5zZm9ybXMsIG5vZGUsIGNvbnRleHQpO1xuICAgIH1cblxuICAgIHRoaXMucGFnaW5hdGUocGFnZU51bWJlckRpcmVjdGl2ZUhUTUxUcmFuc2Zvcm0sIGRpdmlzaW9uSFRNTE5vZGVzLCBjb250ZXh0KTtcbiAgfVxuXG4gIHBhZ2luYXRlKHBhZ2VOdW1iZXJEaXJlY3RpdmVIVE1MVHJhbnNmb3JtLCBkaXZpc2lvbkhUTUxOb2RlcywgY29udGV4dCkge1xuICAgIGNvbnN0IG5vZGUgPSB0aGlzLCAgLy8vXG4gICAgICAgICAgb3V0ZXJOb2RlID0gdGhpcy5nZXRPdXRlck5vZGUoKSxcbiAgICAgICAgICBwYWdlTnVtYmVycyA9IChwYWdlTnVtYmVyRGlyZWN0aXZlSFRNTFRyYW5zZm9ybSAhPT0gbnVsbCksXG4gICAgICAgICAgaWRlbnRpZmllck1hcCA9IHt9LFxuICAgICAgICAgIGRpdmlzaW9uQ2xhc3NOYW1lID0gb3V0ZXJOb2RlLmNsYXNzTmFtZShjb250ZXh0KTtcblxuICAgIGNvbnN0IGh0bWxOb2RlcyA9IHJlbW92ZUhUTUxOb2Rlcyhub2RlKSxcbiAgICAgICAgICBncm91cGVkSFRNTE5vZGVzQXJyYXkgPSBncm91cEhUTUxOb2RlcyhodG1sTm9kZXMpLFxuICAgICAgICAgIHBhZ2luYXRlZEhUTUxOb2Rlc0FycmF5ID0gcGFnaW5hdGVHcm91cGVkSFRNTE5vZGVzKGdyb3VwZWRIVE1MTm9kZXNBcnJheSwgY29udGV4dCk7XG5cbiAgICBwYWdpbmF0ZWRIVE1MTm9kZXNBcnJheS5mb3JFYWNoKChwYWdpbmF0ZWRIVE1MTm9kZXMpID0+IHtcbiAgICAgIGxldCBwYWdlTnVtYmVyO1xuXG4gICAgICAoeyBwYWdlTnVtYmVyIH0gPSBjb250ZXh0KTtcblxuICAgICAgY29uc3QgZGl2aXNpb25IVE1MTm9kZSA9IERpdmlzaW9uSFRNTE5vZGUuZnJvbVBhZ2luYXRlZEhUTUxOb2Rlc0FuZERpdmlzaW9uQ2xhc3NOYW1lKHBhZ2luYXRlZEhUTUxOb2RlcywgZGl2aXNpb25DbGFzc05hbWUpO1xuXG4gICAgICBkaXZpc2lvbkhUTUxOb2RlLnJlc29sdmVGb290bm90ZXMoaWRlbnRpZmllck1hcCwgY29udGV4dCk7XG5cbiAgICAgIGlmIChwYWdlTnVtYmVycykge1xuICAgICAgICBjb25zdCBwYWdlTnVtYmVySFRNTFRyYW5zZm9ybSA9IFBhZ2VOdW1iZXJIVE1MVHJhbnNmb3JtLmZyb21QYWdlTnVtYmVyKHBhZ2VOdW1iZXIpO1xuXG4gICAgICAgIHBhZ2VOdW1iZXJIVE1MVHJhbnNmb3JtLmFwcGVuZFRvRGl2aXNpb25IVE1MTm9kZShkaXZpc2lvbkhUTUxOb2RlKTtcblxuICAgICAgICB0aGlzLmZyb21GaXJzdEhUTUxOb2RlKChmaXJzdEhUTUxOb2RlKSA9PiB7XG4gICAgICAgICAgY29uc3QgaW5kZXhBbmNob3JIVE1MVHJhbnNmb3JtID0gSW5kZXhBbmNob3JIVE1MVHJhbnNmb3JtLmZyb21QYWdlTnVtYmVyKHBhZ2VOdW1iZXIpLFxuICAgICAgICAgICAgICAgIGh0bWxOb2RlID0gZmlyc3RIVE1MTm9kZTsgIC8vL1xuXG4gICAgICAgICAgaW5kZXhBbmNob3JIVE1MVHJhbnNmb3JtLmFwcGVuZFRvSFRNTE5vZGUoaHRtbE5vZGUpO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgZGl2aXNpb25IVE1MTm9kZXMucHVzaChkaXZpc2lvbkhUTUxOb2RlKTtcblxuICAgICAgcGFnZU51bWJlcisrO1xuXG4gICAgICBPYmplY3QuYXNzaWduKGNvbnRleHQsIHtcbiAgICAgICAgcGFnZU51bWJlclxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwYWdlTnVtYmVyKCkge1xuICAgIGNvbnN0IHBhZ2VOdW1iZXIgPSB0aGlzLmZyb21GaXJzdExhc3RDaGlsZE5vZGUoKGZpcnN0TGFzdENoaWxkTm9kZSkgPT4ge1xuICAgICAgbGV0IHBhZ2VOdW1iZXIgPSBudWxsO1xuXG4gICAgICBjb25zdCBmaXJzdExhc3RDaGlsZE5vZGVQYWdlTnVtYmVySFRNTE5vZGUgPSAoZmlyc3RMYXN0Q2hpbGROb2RlIGluc3RhbmNlb2YgUGFnZU51bWJlckhUTUxOb2RlKTtcblxuICAgICAgaWYgKGZpcnN0TGFzdENoaWxkTm9kZVBhZ2VOdW1iZXJIVE1MTm9kZSkge1xuICAgICAgICBjb25zdCBwYWdlTnVtYmVySFRNTE5vZGUgPSBmaXJzdExhc3RDaGlsZE5vZGU7ICAvLy9cblxuICAgICAgICBwYWdlTnVtYmVyID0gcGFnZU51bWJlckhUTUxOb2RlLmdldFBhZ2VOdW1iZXIoKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHBhZ2VOdW1iZXI7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gcGFnZU51bWJlcjtcbiAgfVxuXG4gIHJlc29sdmVGb290bm90ZXMoaWRlbnRpZmllck1hcCwgY29udGV4dCkge1xuICAgIGNvbnN0IG5vZGUgPSB0aGlzLCAgLy8vXG4gICAgICAgICAgZm9vdG5vdGVIVE1MVHJhbnNmb3JtcyA9IHJlbW92ZUZvb3Rub3RlSFRNTE5vZGVzKG5vZGUpLFxuICAgICAgICAgIGZvb3Rub3RlSFRNTFRyYW5zZm9ybXNMZW5ndGggPSBmb290bm90ZUhUTUxUcmFuc2Zvcm1zLmxlbmd0aDtcblxuICAgIGlmIChmb290bm90ZUhUTUxUcmFuc2Zvcm1zTGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGl2aXNpb25IVE1MTm9kZSA9IG5vZGUsICAvLy9cbiAgICAgICAgICBzdGFydCA9IG51bWJlckZvb3Rub3RlTGlua0hUTUxOb2Rlcyhmb290bm90ZUhUTUxUcmFuc2Zvcm1zLCBpZGVudGlmaWVyTWFwLCBub2RlLCBjb250ZXh0KSxcbiAgICAgICAgICBsaW5lSFRNTFRyYW5zZm9ybXMgPSBsaW5lSFRNTFRyYW5zZm9ybXNGcm9tRm9vdG5vdGVIVE1MVHJhbnNmb3Jtcyhmb290bm90ZUhUTUxUcmFuc2Zvcm1zKSxcbiAgICAgICAgICBmb290bm90ZUl0ZW1IVE1MVHJhbnNmb3JtcyA9IGZvb3Rub3RlSXRlbUhUTUxUcmFuc2Zvcm1zRnJvbUxpbmVIVE1MVHJhbnNmb3JtcyhsaW5lSFRNTFRyYW5zZm9ybXMsIGlkZW50aWZpZXJNYXAsIHN0YXJ0KSxcbiAgICAgICAgICBmb290bm90ZXNMaXN0SFRNTFRyYW5zZm9ybSA9IEZvb3Rub3Rlc0xpc3RIVE1MVHJhbnNmb3JtLmZyb21TdGFydEFuZEZvb3Rub3RlSXRlbUhUTUxUcmFuc2Zvcm1zKHN0YXJ0LCBmb290bm90ZUl0ZW1IVE1MVHJhbnNmb3Jtcyk7XG5cbiAgICBmb290bm90ZXNMaXN0SFRNTFRyYW5zZm9ybS5hcHBlbmRUb0RpdmlzaW9uSFRNTE5vZGUoZGl2aXNpb25IVE1MTm9kZSk7XG4gIH1cblxuICBhc1N0cmluZygpIHtcbiAgICBjb25zdCBydWxlTmFtZSA9IHRoaXMuZ2V0UnVsZU5hbWUoKSxcbiAgICAgICAgICBzdHJpbmcgPSBydWxlTmFtZTsgIC8vL1xuXG4gICAgcmV0dXJuIHN0cmluZztcbiAgfVxuXG4gIHN0YXRpYyB0YWdOYW1lID0gXCJkaXZcIjtcblxuICBzdGF0aWMgY2xhc3NOYW1lID0gbnVsbDtcblxuICBzdGF0aWMgZnJvbU5vdGhpbmcoKSB7XG4gICAgY29uc3QgZGl2aXNpb25DbGFzc05hbWUgPSBudWxsLFxuICAgICAgICAgIGRpdmlzaW9uSFRNTE5vZGUgPSBIVE1MTm9kZS5mcm9tTm90aGluZyhEaXZpc2lvbkhUTUxOb2RlLCBkaXZpc2lvbkNsYXNzTmFtZSk7XG5cbiAgICByZXR1cm4gZGl2aXNpb25IVE1MTm9kZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tT3V0ZXJOb2RlKG91dGVyTm9kZSkge1xuICAgIGNvbnN0IGRpdmlzaW9uTWFya2Rvd25Ob2RlID0gb3V0ZXJOb2RlLCAvLy9cbiAgICAgICAgICBkaXZpc2lvbkNsYXNzTmFtZSA9IGRpdmlzaW9uTWFya2Rvd25Ob2RlLmdldERpdmlzaW9uQ2xhc3NOYW1lKCksXG4gICAgICAgICAgZGl2aXNpb25IVE1MTm9kZSA9IEhUTUxOb2RlLmZyb21PdXRlck5vZGUoRGl2aXNpb25IVE1MTm9kZSwgb3V0ZXJOb2RlLCBkaXZpc2lvbkNsYXNzTmFtZSk7XG5cbiAgICByZXR1cm4gZGl2aXNpb25IVE1MTm9kZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tUGFnaW5hdGVkSFRNTE5vZGVzQW5kRGl2aXNpb25DbGFzc05hbWUocGFnaW5hdGVkSFRNTE5vZGVzLCBkaXZpc2lvbkNsYXNzTmFtZSkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXMgPSBwYWdpbmF0ZWRIVE1MTm9kZXMsICAvLy9cbiAgICAgICAgICBkaXZpc2lvbkhUTUxOb2RlID0gSFRNTE5vZGUuZnJvbUNoaWxkTm9kZXMoRGl2aXNpb25IVE1MTm9kZSwgY2hpbGROb2RlcywgZGl2aXNpb25DbGFzc05hbWUpO1xuXG4gICAgcmV0dXJuIGRpdmlzaW9uSFRNTE5vZGU7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJEaXZpc2lvbkhUTUxOb2RlIiwib3V0ZXJOb2RlIiwicGFyZW50Tm9kZSIsImNoaWxkTm9kZXMiLCJkb21FbGVtZW50IiwiZGl2aXNpb25DbGFzc05hbWUiLCJnZXREaXZpc2lvbkNsYXNzTmFtZSIsImNsYXNzTmFtZSIsImNvbnRleHQiLCJnZXRSdWxlTmFtZSIsInJ1bGVObWUiLCJESVZJU0lPTl9NQVJLRE9XTl9SVUxFX05BTUUiLCJmcm9tRmlyc3RIVE1MTm9kZSIsImNhbGxiYWNrIiwiZnJvbUZpcnN0Q2hpbGROb2RlIiwiZmlyc3RDaGlsZE5vZGUiLCJmaXJzdEhUTUxOb2RlIiwicmVzb2x2ZSIsImRpdmlzaW9uSFRNTE5vZGVzIiwibm9kZSIsInJlbW92ZU5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2RlcyIsInBhZ2VOdW1iZXJEaXJlY3RpdmVIVE1MVHJhbnNmb3JtIiwicmVtb3ZlUGFnZU51bWJlckRpcmVjdGl2ZUhUTUxOb2RlIiwiZm9vdG5vdGVzRGlyZWN0aXZlSFRNTE5vZGUiLCJyZW1vdmVGb290bm90ZXNEaXJlY3RpdmVIVE1MTm9kZSIsImZvb3Rub3RlSFRNTFRyYW5zZm9ybXMiLCJyZW1vdmVGb290bm90ZUhUTUxOb2RlcyIsImFkZEZvb3Rub3RlSFRNTE5vZGVzIiwicGFnaW5hdGUiLCJnZXRPdXRlck5vZGUiLCJwYWdlTnVtYmVycyIsImlkZW50aWZpZXJNYXAiLCJodG1sTm9kZXMiLCJyZW1vdmVIVE1MTm9kZXMiLCJncm91cGVkSFRNTE5vZGVzQXJyYXkiLCJncm91cEhUTUxOb2RlcyIsInBhZ2luYXRlZEhUTUxOb2Rlc0FycmF5IiwicGFnaW5hdGVHcm91cGVkSFRNTE5vZGVzIiwiZm9yRWFjaCIsInBhZ2luYXRlZEhUTUxOb2RlcyIsInBhZ2VOdW1iZXIiLCJkaXZpc2lvbkhUTUxOb2RlIiwiZnJvbVBhZ2luYXRlZEhUTUxOb2Rlc0FuZERpdmlzaW9uQ2xhc3NOYW1lIiwicmVzb2x2ZUZvb3Rub3RlcyIsInBhZ2VOdW1iZXJIVE1MVHJhbnNmb3JtIiwiUGFnZU51bWJlckhUTUxUcmFuc2Zvcm0iLCJmcm9tUGFnZU51bWJlciIsImFwcGVuZFRvRGl2aXNpb25IVE1MTm9kZSIsImluZGV4QW5jaG9ySFRNTFRyYW5zZm9ybSIsIkluZGV4QW5jaG9ySFRNTFRyYW5zZm9ybSIsImh0bWxOb2RlIiwiYXBwZW5kVG9IVE1MTm9kZSIsInB1c2giLCJPYmplY3QiLCJhc3NpZ24iLCJmcm9tRmlyc3RMYXN0Q2hpbGROb2RlIiwiZmlyc3RMYXN0Q2hpbGROb2RlIiwiZmlyc3RMYXN0Q2hpbGROb2RlUGFnZU51bWJlckhUTUxOb2RlIiwiUGFnZU51bWJlckhUTUxOb2RlIiwicGFnZU51bWJlckhUTUxOb2RlIiwiZ2V0UGFnZU51bWJlciIsImZvb3Rub3RlSFRNTFRyYW5zZm9ybXNMZW5ndGgiLCJsZW5ndGgiLCJzdGFydCIsIm51bWJlckZvb3Rub3RlTGlua0hUTUxOb2RlcyIsImxpbmVIVE1MVHJhbnNmb3JtcyIsImxpbmVIVE1MVHJhbnNmb3Jtc0Zyb21Gb290bm90ZUhUTUxUcmFuc2Zvcm1zIiwiZm9vdG5vdGVJdGVtSFRNTFRyYW5zZm9ybXMiLCJmb290bm90ZUl0ZW1IVE1MVHJhbnNmb3Jtc0Zyb21MaW5lSFRNTFRyYW5zZm9ybXMiLCJmb290bm90ZXNMaXN0SFRNTFRyYW5zZm9ybSIsIkZvb3Rub3Rlc0xpc3RIVE1MVHJhbnNmb3JtIiwiZnJvbVN0YXJ0QW5kRm9vdG5vdGVJdGVtSFRNTFRyYW5zZm9ybXMiLCJhc1N0cmluZyIsInJ1bGVOYW1lIiwic3RyaW5nIiwiZnJvbU5vdGhpbmciLCJIVE1MTm9kZSIsImZyb21PdXRlck5vZGUiLCJkaXZpc2lvbk1hcmtkb3duTm9kZSIsImZyb21DaGlsZE5vZGVzIiwidGFnTmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFxQnFCQTs7OzJEQW5CQTtpRUFDVTtrRUFDSztrRUFDQztnRUFDRTt3QkFFSzt3QkFXcUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVsRCxJQUFBLEFBQU1BLGlDQUFOO2NBQU1BO2FBQUFBLGlCQUNQQyxTQUFTLEVBQUVDLFVBQVUsRUFBRUMsVUFBVSxFQUFFQyxVQUFVLEVBQUVDLGlCQUFpQjtnQ0FEekRMOztnQkFFakIsa0JBRmlCQTtZQUVYQztZQUFXQztZQUFZQztZQUFZQzs7UUFF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
package/lib/node/html.js CHANGED
@@ -241,6 +241,12 @@ var HTMLNode = /*#__PURE__*/ function(Node) {
241
241
  return ancestorHTMLNodes;
242
242
  }
243
243
  },
244
+ {
245
+ key: "someAncestorHTMLNode",
246
+ value: function someAncestorHTMLNode(callback) {
247
+ return this.someAncestorNode(callback);
248
+ }
249
+ },
244
250
  {
245
251
  key: "matchMarkdownNode",
246
252
  value: function matchMarkdownNode(htmlNode) {
@@ -534,4 +540,4 @@ var HTMLNode = /*#__PURE__*/ function(Node) {
534
540
  Object.assign(HTMLNode.prototype, _node.default);
535
541
  var _default = HTMLNode;
536
542
 
537
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL2h0bWwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IE5vZGUgfSBmcm9tIFwib2NjYW0tZG9tXCI7XG5cbmltcG9ydCBub2RlTWl4aW5zIGZyb20gXCIuLi9taXhpbnMvbm9kZVwiO1xuXG5pbXBvcnQgeyBFTVBUWV9TVFJJTkcsIERPVUJMRV9TUEFDRSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcblxuY2xhc3MgSFRNTE5vZGUgZXh0ZW5kcyBOb2RlIHtcbiAgY29uc3RydWN0b3Iob3V0ZXJOb2RlLCBwYXJlbnROb2RlLCBjaGlsZE5vZGVzLCBkb21FbGVtZW50KSB7XG4gICAgc3VwZXIob3V0ZXJOb2RlLCBwYXJlbnROb2RlLCBjaGlsZE5vZGVzKTtcblxuICAgIHRoaXMuZG9tRWxlbWVudCA9IGRvbUVsZW1lbnQ7XG4gIH1cblxuICBnZXRET01FbGVtZW50KCkge1xuICAgIHJldHVybiB0aGlzLmRvbUVsZW1lbnQ7XG4gIH1cblxuICBzZXRET01FbGVtZW50KGRvbUVsZW1lbnQpIHtcbiAgICB0aGlzLmRvbUVsZW1lbnQgPSBkb21FbGVtZW50O1xuICB9XG5cbiAgcmVzZXRET01FbGVtZW50KCkge1xuICAgIHRoaXMuZG9tRWxlbWVudCA9IG51bGw7XG4gIH1cblxuICBnZXRSdWxlTmFtZSgpIHtcbiAgICBjb25zdCBtYXJrZG93bk5vZGUgPSB0aGlzLmdldE1hcmtkb3duTm9kZSgpLFxuICAgICAgICAgIHJ1bGVOYW1lID0gbWFya2Rvd25Ob2RlLmdldFJ1bGVOYW1lKCk7XG5cbiAgICByZXR1cm4gcnVsZU5hbWU7XG4gIH1cblxuICBpc1Rlcm1pbmFsTm9kZSgpIHtcbiAgICBjb25zdCB0ZXJtaW5hbE5vZGUgPSBmYWxzZTtcblxuICAgIHJldHVybiB0ZXJtaW5hbE5vZGU7XG4gIH1cblxuICBpc05vblRlcm1pbmFsTm9kZSgpIHtcbiAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSB0cnVlO1xuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZTtcbiAgfVxuXG4gIGdldE1hcmtkb3duTm9kZSgpIHtcbiAgICBjb25zdCBvdXRlck5vZGUgPSB0aGlzLmdldE91dGVyTm9kZSgpLFxuICAgICAgICAgIG1hcmtkb3duTm9kZSA9IG91dGVyTm9kZTsgLy8vXG5cbiAgICByZXR1cm4gbWFya2Rvd25Ob2RlO1xuICB9XG5cbiAgZ2V0UGFyZW50SFRNTE5vZGUoKSB7XG4gICAgY29uc3QgcGFyZW50Tm9kZSA9IHRoaXMuZ2V0UGFyZW50Tm9kZSgpLFxuICAgICAgICAgIHBhcmVudEhUTUxOb2RlID0gcGFyZW50Tm9kZTsgIC8vL1xuXG4gICAgcmV0dXJuIHBhcmVudEhUTUxOb2RlO1xuICB9XG5cbiAgZ2V0Q2hpbGRIVE1MTm9kZXMoKSB7XG4gICAgY29uc3QgY2hpbGROb2RlcyA9IHRoaXMuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgIGNoaWxkSFRNTE5vZGVzID0gY2hpbGROb2RlczsgIC8vL1xuXG4gICAgcmV0dXJuIGNoaWxkSFRNTE5vZGVzO1xuICB9XG5cbiAgZ2V0QW5jZXN0b3JIVE1MTm9kZXMoKSB7XG4gICAgY29uc3QgYW5jZXN0b3JOb2RlcyA9IHRoaXMuZ2V0QW5jZXN0b3JOb2RlcygpLFxuICAgICAgICAgIGFuY2VzdG9ySFRNTE5vZGVzID0gYW5jZXN0b3JOb2RlczsgIC8vL1xuXG4gICAgcmV0dXJuIGFuY2VzdG9ySFRNTE5vZGVzO1xuICB9XG5cbiAgbWF0Y2hNYXJrZG93bk5vZGUoaHRtbE5vZGUpIHtcbiAgICBjb25zdCBtYXJrZG93bk5vZGUgPSBodG1sTm9kZS5nZXRNYXJrZG93bk5vZGUoKSxcbiAgICAgICAgICBvdXRlck5vZGUgPSBtYXJrZG93bk5vZGUsIC8vL1xuICAgICAgICAgIG91dGVyTm9kZU1hdGNoZXMgPSAodGhpcy5vdXRlck5vZGUgPT09IG91dGVyTm9kZSksXG4gICAgICAgICAgbWFya2Rvd25Ob2RlTWF0Y2hlcyA9IG91dGVyTm9kZU1hdGNoZXM7IC8vL1xuXG4gICAgcmV0dXJuIG1hcmtkb3duTm9kZU1hdGNoZXM7XG4gIH1cblxuICByZXRyaWV2ZUhUTUxOb2RlKGNhbGxiYWNrKSB7XG4gICAgbGV0IGh0bWxOb2RlO1xuXG4gICAgaHRtbE5vZGUgPSB0aGlzOyAgLy8vXG5cbiAgICBjb25zdCByZXN1bHQgPSBjYWxsYmFjayhodG1sTm9kZSk7XG5cbiAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgaHRtbE5vZGUgPSBudWxsO1xuXG4gICAgICBjb25zdCBjaGlsZEhUTUxOb2RlcyA9IHRoaXMuZ2V0Q2hpbGRIVE1MTm9kZXMoKTtcblxuICAgICAgY2hpbGRIVE1MTm9kZXMuc29tZSgoY2hpbGRIVE1MTm9kZSkgPT4ge1xuICAgICAgICBodG1sTm9kZSA9IGNoaWxkSFRNTE5vZGUucmV0cmlldmVIVE1MTm9kZShjYWxsYmFjaylcblxuICAgICAgICBpZiAoaHRtbE5vZGUgIT09IG51bGwpIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGh0bWxOb2RlO1xuICB9XG5cbiAgYWRkQ2hpbGRIVE1MTm9kZXMoYWRkZWRDaGlsZEhUTUxOb2Rlcywgc3RhcnRJbmRleCkge1xuICAgIGNvbnN0IGFkZGVkQ2hpbGROb2RlcyA9IGFkZGVkQ2hpbGRIVE1MTm9kZXM7ICAvLy9cblxuICAgIHRoaXMuYWRkQ2hpbGROb2RlcyhhZGRlZENoaWxkTm9kZXMsIHN0YXJ0SW5kZXgpO1xuICB9XG5cbiAgcmVtb3ZlQ2hpbGRIVE1MTm9kZXMocmVtb3ZlZENoaWxkSFRNTE5vZGVzID0gbnVsbCkge1xuICAgIGxldCBjaGlsZEhUTUxOb2RlcztcblxuICAgIGNoaWxkSFRNTE5vZGVzID0gdGhpcy5nZXRDaGlsZEhUTUxOb2RlcygpO1xuXG4gICAgaWYgKHJlbW92ZWRDaGlsZEhUTUxOb2RlcyAhPT0gbnVsbCkge1xuICAgICAgY2hpbGRIVE1MTm9kZXMgPSBjaGlsZEhUTUxOb2Rlcy5maWx0ZXIoKGNoaWxkSFRNTE5vZGUpID0+IHtcbiAgICAgICAgY29uc3QgaW5kZXggPSByZW1vdmVkQ2hpbGRIVE1MTm9kZXMuZmluZEluZGV4KChyZW1vdmVkQ2hpbGRIVE1MTm9kZSkgPT4ge1xuICAgICAgICAgIGNvbnN0IG91dGVyTm9kZU1hdGNoZXMgPSBjaGlsZEhUTUxOb2RlLm1hdGNoT3V0ZXJOb2RlKHJlbW92ZWRDaGlsZEhUTUxOb2RlKTtcblxuICAgICAgICAgIGlmIChvdXRlck5vZGVNYXRjaGVzKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgbGV0IHJlbW92ZWRDaGlsZE5vZGVzID0gY2hpbGRIVE1MTm9kZXM7ICAvLy9cblxuICAgIHJlbW92ZWRDaGlsZE5vZGVzID0gdGhpcy5yZW1vdmVDaGlsZE5vZGVzKHJlbW92ZWRDaGlsZE5vZGVzKTtcblxuICAgIHJlbW92ZWRDaGlsZEhUTUxOb2RlcyA9IHJlbW92ZWRDaGlsZE5vZGVzOyAgLy8vXG5cbiAgICByZXR1cm4gcmVtb3ZlZENoaWxkSFRNTE5vZGVzO1xuICB9XG5cbiAgYWRqdXN0SW5kZW50KGluZGVudCkge1xuICAgIGluZGVudCA9IChpbmRlbnQgPT09IG51bGwpID9cbiAgICAgICAgICAgICAgIEVNUFRZX1NUUklORyA6XG4gICAgICAgICAgICAgICAgYCR7RE9VQkxFX1NQQUNFfSR7aW5kZW50fWA7XG5cbiAgICByZXR1cm4gaW5kZW50O1xuICB9XG5cbiAgbGluZXMoY29udGV4dCkge1xuICAgIGxldCBsaW5lcztcblxuICAgICh7IGxpbmVzID0gbnVsbCB9ID0gdGhpcy5jb25zdHJ1Y3Rvcik7XG5cbiAgICBpZiAobGluZXMgPT09IG51bGwpIHtcbiAgICAgIGxpbmVzID0gdGhpcy5yZWR1Y2VDaGlsZE5vZGUoKGxpbmVzLCBjaGlsZE5vZGUpID0+IHtcbiAgICAgICAgY29uc3QgY2hpbGROb2RlTGluZXMgPSBjaGlsZE5vZGUubGluZXMoY29udGV4dCk7XG5cbiAgICAgICAgbGluZXMgKz0gY2hpbGROb2RlTGluZXM7XG5cbiAgICAgICAgcmV0dXJuIGxpbmVzO1xuICAgICAgfSwgMCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGxpbmVzO1xuICB9XG5cbiAgdGFnTmFtZShjb250ZXh0KSB7XG4gICAgY29uc3QgeyB0YWdOYW1lIH0gPSB0aGlzLmNvbnN0cnVjdG9yO1xuXG4gICAgcmV0dXJuIHRhZ05hbWU7XG4gIH1cblxuICBkZXB0aCgpIHtcbiAgICBjb25zdCB7IGRlcHRoID0gbnVsbCB9ID0gdGhpcy5jb25zdHJ1Y3RvcjtcblxuICAgIHJldHVybiBkZXB0aDtcbiAgfVxuXG4gIGNsYXNzTmFtZShjb250ZXh0KSB7XG4gICAgY29uc3QgeyBjbGFzc05hbWUgfSA9IHRoaXMuY29uc3RydWN0b3I7XG5cbiAgICByZXR1cm4gY2xhc3NOYW1lO1xuICB9XG5cbiAgY2xvc2luZ1RhZyhjb250ZXh0KSB7XG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBjbG9zaW5nVGFnID0gYDwvJHt0YWdOYW1lfT5gO1xuXG4gICAgcmV0dXJuIGNsb3NpbmdUYWc7XG4gIH1cblxuICBzdGFydGluZ1RhZyhjb250ZXh0KSB7XG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBjbGFzc05hbWUgPSB0aGlzLmNsYXNzTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBhdHRyaWJ1dGVOYW1lID0gdGhpcy5hdHRyaWJ1dGVOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGF0dHJpYnV0ZVZhbHVlID0gdGhpcy5hdHRyaWJ1dGVWYWx1ZShjb250ZXh0KSxcbiAgICAgICAgICBjbGFzc0hUTUwgPSAoY2xhc3NOYW1lICE9PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgICAgICAgIGAgY2xhc3M9XCIke2NsYXNzTmFtZX1cImAgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICBFTVBUWV9TVFJJTkcsXG4gICAgICAgICAgYXR0cmlidXRlSFRNTCA9ICgoYXR0cmlidXRlTmFtZSAhPT0gbnVsbCkgJiYgKGF0dHJpYnV0ZVZhbHVlICE9PSBudWxsKSkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgYCAke2F0dHJpYnV0ZU5hbWV9PVwiJHthdHRyaWJ1dGVWYWx1ZX1cImAgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRU1QVFlfU1RSSU5HLFxuICAgICAgICAgIHN0YXJ0aW5nVGFnID0gYDwke3RhZ05hbWV9JHtjbGFzc0hUTUx9JHthdHRyaWJ1dGVIVE1MfT5gO1xuXG4gICAgcmV0dXJuIHN0YXJ0aW5nVGFnO1xuICB9XG5cbiAgc2VsZkNsb3NpbmdUYWcoY29udGV4dCkge1xuICAgIGNvbnN0IHRhZ05hbWUgPSB0aGlzLnRhZ05hbWUoY29udGV4dCksXG4gICAgICAgICAgY2xhc3NOYW1lID0gdGhpcy5jbGFzc05hbWUoY29udGV4dCksXG4gICAgICAgICAgYXR0cmlidXRlTmFtZSA9IHRoaXMuYXR0cmlidXRlTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBhdHRyaWJ1dGVWYWx1ZSA9IHRoaXMuYXR0cmlidXRlVmFsdWUoY29udGV4dCksXG4gICAgICAgICAgY2xhc3NIVE1MID0gKGNsYXNzTmFtZSAhPT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgICBgIGNsYXNzPVwiJHtjbGFzc05hbWV9XCJgIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgRU1QVFlfU1RSSU5HLFxuICAgICAgICAgIGF0dHJpYnV0ZUhUTUwgPSAoKGF0dHJpYnV0ZU5hbWUgIT09IG51bGwpICYmIChhdHRyaWJ1dGVWYWx1ZSAhPT0gbnVsbCkpID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgIGAgJHthdHRyaWJ1dGVOYW1lfT1cIiR7YXR0cmlidXRlVmFsdWV9XCJgIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVNUFRZX1NUUklORyxcbiAgICAgICAgICBzZWxmQ2xvc2luZ1RhZyA9IGA8JHt0YWdOYW1lfSR7Y2xhc3NIVE1MfSR7YXR0cmlidXRlSFRNTH0vPmA7XG5cbiAgICByZXR1cm4gc2VsZkNsb3NpbmdUYWc7XG4gIH1cblxuICBhdHRyaWJ1dGVOYW1lKGNvbnRleHQpIHtcbiAgICBjb25zdCBhdHRyaWJ1dGVOYW1lID0gbnVsbDtcblxuICAgIHJldHVybiBhdHRyaWJ1dGVOYW1lO1xuICB9XG5cbiAgYXR0cmlidXRlVmFsdWUoY29udGV4dCkge1xuICAgIGNvbnN0IGF0dHJpYnV0ZVZhbHVlID0gbnVsbDtcblxuICAgIHJldHVybiBhdHRyaWJ1dGVWYWx1ZTtcbiAgfVxuXG4gIGNyZWF0ZURPTUVsZW1lbnQoY29udGV4dCkge1xuICAgIGxldCBkb21FbGVtZW50O1xuXG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KTtcblxuICAgIGRvbUVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KHRhZ05hbWUpO1xuXG4gICAgY29uc3QgY2xhc3NOYW1lID0gdGhpcy5jbGFzc05hbWUoY29udGV4dCksXG4gICAgICAgICAgYXR0cmlidXRlTmFtZSA9IHRoaXMuYXR0cmlidXRlTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBhdHRyaWJ1dGVWYWx1ZSA9IHRoaXMuYXR0cmlidXRlVmFsdWUoY29udGV4dCk7XG5cbiAgICBpZiAoY2xhc3NOYW1lICE9PSBudWxsKSB7XG4gICAgICBPYmplY3QuYXNzaWduKGRvbUVsZW1lbnQsIHtcbiAgICAgICAgY2xhc3NOYW1lXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAoKGF0dHJpYnV0ZU5hbWUgIT09IG51bGwpICYmIChhdHRyaWJ1dGVWYWx1ZSAhPT0gbnVsbCkpIHtcbiAgICAgIGRvbUVsZW1lbnQuc2V0QXR0cmlidXRlKGF0dHJpYnV0ZU5hbWUsIGF0dHJpYnV0ZVZhbHVlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZG9tRWxlbWVudDtcbiAgfVxuXG4gIG1vdW50KHBhcmVudERPTUVsZW1lbnQsIHNpYmxpbmdET01FbGVtZW50LCBjb250ZXh0KSB7XG4gICAgdGhpcy5kb21FbGVtZW50ID0gdGhpcy5jcmVhdGVET01FbGVtZW50KGNvbnRleHQpO1xuXG4gICAgcGFyZW50RE9NRWxlbWVudC5pbnNlcnRCZWZvcmUodGhpcy5kb21FbGVtZW50LCBzaWJsaW5nRE9NRWxlbWVudClcblxuICAgIHBhcmVudERPTUVsZW1lbnQgPSB0aGlzLmRvbUVsZW1lbnQ7IC8vL1xuXG4gICAgc2libGluZ0RPTUVsZW1lbnQgPSBudWxsO1xuXG4gICAgdGhpcy5jaGlsZE5vZGVzLmZvckVhY2goKGNoaWxkTm9kZSkgPT4ge1xuICAgICAgY2hpbGROb2RlLm1vdW50KHBhcmVudERPTUVsZW1lbnQsIHNpYmxpbmdET01FbGVtZW50LCBjb250ZXh0KTtcbiAgICB9KTtcbiAgfVxuXG4gIHVubW91bnQocGFyZW50RE9NRWxlbWVudCwgY29udGV4dCkge1xuICAgIHtcbiAgICAgIGNvbnN0IHBhcmVudERPTUVsZW1lbnQgPSB0aGlzLmRvbUVsZW1lbnQ7IC8vL1xuXG4gICAgICB0aGlzLmNoaWxkTm9kZXMuZm9yRWFjaCgoY2hpbGROb2RlKSA9PiB7XG4gICAgICAgIGNoaWxkTm9kZS51bm1vdW50KHBhcmVudERPTUVsZW1lbnQsIGNvbnRleHQpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcGFyZW50RE9NRWxlbWVudC5yZW1vdmVDaGlsZCh0aGlzLmRvbUVsZW1lbnQpO1xuXG4gICAgdGhpcy5kb21FbGVtZW50ID0gbnVsbDtcbiAgfVxuXG4gIGFzSFRNTChpbmRlbnQsIGNvbnRleHQpIHtcbiAgICBpZiAoY29udGV4dCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBjb250ZXh0ID0gaW5kZW50OyAvLy9cblxuICAgICAgaW5kZW50ID0gRU1QVFlfU1RSSU5HO1xuICAgIH1cblxuICAgIGxldCBodG1sO1xuXG4gICAgaW5kZW50ID0gdGhpcy5hZGp1c3RJbmRlbnQoaW5kZW50KTtcblxuICAgIGNvbnN0IGNoaWxkTm9kZXNIVE1MID0gdGhpcy5jaGlsZE5vZGVzQXNIVE1MKGluZGVudCwgY29udGV4dCk7XG5cbiAgICBpZiAoY2hpbGROb2Rlc0hUTUwgIT09IEVNUFRZX1NUUklORykge1xuICAgICAgY29uc3Qgc3RhcnRpbmdUYWcgPSB0aGlzLnN0YXJ0aW5nVGFnKGNvbnRleHQpLFxuICAgICAgICAgICAgY2xvc2luZ1RhZyA9IHRoaXMuY2xvc2luZ1RhZyhjb250ZXh0KTtcblxuICAgICAgaHRtbCA9IGAke2luZGVudH0ke3N0YXJ0aW5nVGFnfVxuJHtjaGlsZE5vZGVzSFRNTH0ke2luZGVudH0ke2Nsb3NpbmdUYWd9XG5gO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBzZWxmQ2xvc2luZ1RhZyA9IHRoaXMuc2VsZkNsb3NpbmdUYWcoY29udGV4dCk7XG5cbiAgICAgIGh0bWwgPSBgJHtpbmRlbnR9JHtzZWxmQ2xvc2luZ1RhZ31cbmA7XG4gICAgfVxuXG4gICAgcmV0dXJuIGh0bWw7XG4gIH1cblxuICBhc1BsYWluVGV4dChjb250ZXh0KSB7XG4gICAgbGV0IHBsYWluVGV4dDtcblxuICAgIGNvbnN0IGNoaWxkTm9kZXNQbGFpblRleHQgPSB0aGlzLmNoaWxkTm9kZXNBc1BsYWluVGV4dChjb250ZXh0KTtcblxuICAgIHBsYWluVGV4dCA9IGNoaWxkTm9kZXNQbGFpblRleHQ7ICAvLy9cblxuICAgIHJldHVybiBwbGFpblRleHQ7XG4gIH1cblxuICBjaGlsZE5vZGVzQXNIVE1MKGluZGVudCwgY29udGV4dCkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXNIVE1MID0gdGhpcy5yZWR1Y2VDaGlsZE5vZGUoKGNoaWxkTm9kZXNIVE1MLCBjaGlsZE5vZGUpID0+IHtcbiAgICAgIGNvbnN0IGNoaWxkTm9kZUhUTUwgPSBjaGlsZE5vZGUuYXNIVE1MKGluZGVudCwgY29udGV4dCk7XG5cbiAgICAgIGNoaWxkTm9kZXNIVE1MID0gYCR7Y2hpbGROb2Rlc0hUTUx9JHtjaGlsZE5vZGVIVE1MfWA7XG5cbiAgICAgIHJldHVybiBjaGlsZE5vZGVzSFRNTDtcbiAgICB9LCBFTVBUWV9TVFJJTkcpO1xuXG4gICAgcmV0dXJuIGNoaWxkTm9kZXNIVE1MO1xuICB9XG5cbiAgY2hpbGROb2Rlc0FzUGxhaW5UZXh0KGNvbnRleHQpIHtcbiAgICBjb25zdCBjaGlsZE5vZGVzUGxhaW5UZXh0ID0gdGhpcy5yZWR1Y2VDaGlsZE5vZGUoKGNoaWxkTm9kZXNQbGFpblRleHQsIGNoaWxkTm9kZSkgPT4ge1xuICAgICAgY29uc3QgY2hpbGROb2RlUGxhaW5UZXh0ID0gY2hpbGROb2RlLmFzUGxhaW5UZXh0KGNvbnRleHQpO1xuXG4gICAgICBjaGlsZE5vZGVzUGxhaW5UZXh0ID0gYCR7Y2hpbGROb2Rlc1BsYWluVGV4dH1cbiR7Y2hpbGROb2RlUGxhaW5UZXh0fWA7XG5cbiAgICAgIHJldHVybiBjaGlsZE5vZGVzUGxhaW5UZXh0O1xuICAgIH0sIEVNUFRZX1NUUklORyk7XG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc1BsYWluVGV4dDtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTm90aGluZyhDbGFzcywgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgaWYgKENsYXNzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIENsYXNzID0gSFRNTE5vZGU7IC8vL1xuICAgIH1cblxuICAgIGNvbnN0IGRvbUVsZW1lbnQgPSBudWxsLFxuICAgICAgICAgIG5vZGUgPSBOb2RlLmZyb21Ob3RoaW5nKENsYXNzLCBkb21FbGVtZW50LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgcmV0dXJuIG5vZGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbU91dGVyTm9kZShDbGFzcywgb3V0ZXJOb2RlLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBpZiAob3V0ZXJOb2RlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIG91dGVyTm9kZSA9IENsYXNzOyAgLy8vXG5cbiAgICAgIENsYXNzID0gSFRNTE5vZGU7IC8vL1xuICAgIH1cblxuICAgIGNvbnN0IGRvbUVsZW1lbnQgPSBudWxsLFxuICAgICAgICAgIG5vZGUgPSBOb2RlLmZyb21PdXRlck5vZGUoQ2xhc3MsIG91dGVyTm9kZSwgZG9tRWxlbWVudCwgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgIHJldHVybiBub2RlO1xuICB9XG5cbiAgc3RhdGljIGZyb21DaGlsZE5vZGVzKENsYXNzLCBjaGlsZE5vZGVzLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBpZiAoY2hpbGROb2RlcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBjaGlsZE5vZGVzID0gQ2xhc3M7ICAvLy9cblxuICAgICAgQ2xhc3MgPSBIVE1MTm9kZTsgLy8vXG4gICAgfVxuXG4gICAgY29uc3QgZG9tRWxlbWVudCA9IG51bGwsXG4gICAgICAgICAgbm9kZSA9IE5vZGUuZnJvbUNoaWxkTm9kZXMoQ2xhc3MsIGNoaWxkTm9kZXMsIGRvbUVsZW1lbnQsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICByZXR1cm4gbm9kZTtcbiAgfVxufVxuXG5PYmplY3QuYXNzaWduKEhUTUxOb2RlLnByb3RvdHlwZSwgbm9kZU1peGlucyk7XG5cbmV4cG9ydCBkZWZhdWx0IEhUTUxOb2RlO1xuIl0sIm5hbWVzIjpbIkhUTUxOb2RlIiwib3V0ZXJOb2RlIiwicGFyZW50Tm9kZSIsImNoaWxkTm9kZXMiLCJkb21FbGVtZW50IiwiZ2V0RE9NRWxlbWVudCIsInNldERPTUVsZW1lbnQiLCJyZXNldERPTUVsZW1lbnQiLCJnZXRSdWxlTmFtZSIsIm1hcmtkb3duTm9kZSIsImdldE1hcmtkb3duTm9kZSIsInJ1bGVOYW1lIiwiaXNUZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGUiLCJpc05vblRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZSIsImdldE91dGVyTm9kZSIsImdldFBhcmVudEhUTUxOb2RlIiwiZ2V0UGFyZW50Tm9kZSIsInBhcmVudEhUTUxOb2RlIiwiZ2V0Q2hpbGRIVE1MTm9kZXMiLCJnZXRDaGlsZE5vZGVzIiwiY2hpbGRIVE1MTm9kZXMiLCJnZXRBbmNlc3RvckhUTUxOb2RlcyIsImFuY2VzdG9yTm9kZXMiLCJnZXRBbmNlc3Rvck5vZGVzIiwiYW5jZXN0b3JIVE1MTm9kZXMiLCJtYXRjaE1hcmtkb3duTm9kZSIsImh0bWxOb2RlIiwib3V0ZXJOb2RlTWF0Y2hlcyIsIm1hcmtkb3duTm9kZU1hdGNoZXMiLCJyZXRyaWV2ZUhUTUxOb2RlIiwiY2FsbGJhY2siLCJyZXN1bHQiLCJzb21lIiwiY2hpbGRIVE1MTm9kZSIsImFkZENoaWxkSFRNTE5vZGVzIiwiYWRkZWRDaGlsZEhUTUxOb2RlcyIsInN0YXJ0SW5kZXgiLCJhZGRlZENoaWxkTm9kZXMiLCJhZGRDaGlsZE5vZGVzIiwicmVtb3ZlQ2hpbGRIVE1MTm9kZXMiLCJyZW1vdmVkQ2hpbGRIVE1MTm9kZXMiLCJmaWx0ZXIiLCJpbmRleCIsImZpbmRJbmRleCIsInJlbW92ZWRDaGlsZEhUTUxOb2RlIiwibWF0Y2hPdXRlck5vZGUiLCJyZW1vdmVkQ2hpbGROb2RlcyIsInJlbW92ZUNoaWxkTm9kZXMiLCJhZGp1c3RJbmRlbnQiLCJpbmRlbnQiLCJFTVBUWV9TVFJJTkciLCJET1VCTEVfU1BBQ0UiLCJsaW5lcyIsImNvbnRleHQiLCJjb25zdHJ1Y3RvciIsInJlZHVjZUNoaWxkTm9kZSIsImNoaWxkTm9kZSIsImNoaWxkTm9kZUxpbmVzIiwidGFnTmFtZSIsImRlcHRoIiwiY2xhc3NOYW1lIiwiY2xvc2luZ1RhZyIsInN0YXJ0aW5nVGFnIiwiYXR0cmlidXRlTmFtZSIsImF0dHJpYnV0ZVZhbHVlIiwiY2xhc3NIVE1MIiwiYXR0cmlidXRlSFRNTCIsInNlbGZDbG9zaW5nVGFnIiwiY3JlYXRlRE9NRWxlbWVudCIsImRvY3VtZW50IiwiY3JlYXRlRWxlbWVudCIsIk9iamVjdCIsImFzc2lnbiIsInNldEF0dHJpYnV0ZSIsIm1vdW50IiwicGFyZW50RE9NRWxlbWVudCIsInNpYmxpbmdET01FbGVtZW50IiwiaW5zZXJ0QmVmb3JlIiwiZm9yRWFjaCIsInVubW91bnQiLCJyZW1vdmVDaGlsZCIsImFzSFRNTCIsInVuZGVmaW5lZCIsImh0bWwiLCJjaGlsZE5vZGVzSFRNTCIsImNoaWxkTm9kZXNBc0hUTUwiLCJhc1BsYWluVGV4dCIsInBsYWluVGV4dCIsImNoaWxkTm9kZXNQbGFpblRleHQiLCJjaGlsZE5vZGVzQXNQbGFpblRleHQiLCJjaGlsZE5vZGVIVE1MIiwiY2hpbGROb2RlUGxhaW5UZXh0IiwiZnJvbU5vdGhpbmciLCJDbGFzcyIsInJlbWFpbmluZ0FyZ3VtZW50cyIsIk5vZGUiLCJub2RlIiwiZnJvbU91dGVyTm9kZSIsImZyb21DaGlsZE5vZGVzIiwicHJvdG90eXBlIiwibm9kZU1peGlucyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBMllBOzs7ZUFBQTs7O3dCQXpZcUI7MkRBRUU7eUJBRW9COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFM0MsSUFBQSxBQUFNQSx5QkFBTjtjQUFNQTthQUFBQSxTQUNRQyxTQUFTLEVBQUVDLFVBQVUsRUFBRUMsVUFBVSxFQUFFQyxVQUFVO2dDQURyREo7O2dCQUVGLGtCQUZFQTtZQUVJQztZQUFXQztZQUFZQzs7UUFFN0IsTUFBS0MsVUFBVSxHQUFHQTs7O2tCQUpoQko7O1lBT0pLLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0QsVUFBVTtZQUN4Qjs7O1lBRUFFLEtBQUFBO21CQUFBQSxTQUFBQSxjQUFjRixVQUFVO2dCQUN0QixJQUFJLENBQUNBLFVBQVUsR0FBR0E7WUFDcEI7OztZ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
543
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL2h0bWwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IE5vZGUgfSBmcm9tIFwib2NjYW0tZG9tXCI7XG5cbmltcG9ydCBub2RlTWl4aW5zIGZyb20gXCIuLi9taXhpbnMvbm9kZVwiO1xuXG5pbXBvcnQgeyBFTVBUWV9TVFJJTkcsIERPVUJMRV9TUEFDRSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcblxuY2xhc3MgSFRNTE5vZGUgZXh0ZW5kcyBOb2RlIHtcbiAgY29uc3RydWN0b3Iob3V0ZXJOb2RlLCBwYXJlbnROb2RlLCBjaGlsZE5vZGVzLCBkb21FbGVtZW50KSB7XG4gICAgc3VwZXIob3V0ZXJOb2RlLCBwYXJlbnROb2RlLCBjaGlsZE5vZGVzKTtcblxuICAgIHRoaXMuZG9tRWxlbWVudCA9IGRvbUVsZW1lbnQ7XG4gIH1cblxuICBnZXRET01FbGVtZW50KCkge1xuICAgIHJldHVybiB0aGlzLmRvbUVsZW1lbnQ7XG4gIH1cblxuICBzZXRET01FbGVtZW50KGRvbUVsZW1lbnQpIHtcbiAgICB0aGlzLmRvbUVsZW1lbnQgPSBkb21FbGVtZW50O1xuICB9XG5cbiAgcmVzZXRET01FbGVtZW50KCkge1xuICAgIHRoaXMuZG9tRWxlbWVudCA9IG51bGw7XG4gIH1cblxuICBnZXRSdWxlTmFtZSgpIHtcbiAgICBjb25zdCBtYXJrZG93bk5vZGUgPSB0aGlzLmdldE1hcmtkb3duTm9kZSgpLFxuICAgICAgICAgIHJ1bGVOYW1lID0gbWFya2Rvd25Ob2RlLmdldFJ1bGVOYW1lKCk7XG5cbiAgICByZXR1cm4gcnVsZU5hbWU7XG4gIH1cblxuICBpc1Rlcm1pbmFsTm9kZSgpIHtcbiAgICBjb25zdCB0ZXJtaW5hbE5vZGUgPSBmYWxzZTtcblxuICAgIHJldHVybiB0ZXJtaW5hbE5vZGU7XG4gIH1cblxuICBpc05vblRlcm1pbmFsTm9kZSgpIHtcbiAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSB0cnVlO1xuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZTtcbiAgfVxuXG4gIGdldE1hcmtkb3duTm9kZSgpIHtcbiAgICBjb25zdCBvdXRlck5vZGUgPSB0aGlzLmdldE91dGVyTm9kZSgpLFxuICAgICAgICAgIG1hcmtkb3duTm9kZSA9IG91dGVyTm9kZTsgLy8vXG5cbiAgICByZXR1cm4gbWFya2Rvd25Ob2RlO1xuICB9XG5cbiAgZ2V0UGFyZW50SFRNTE5vZGUoKSB7XG4gICAgY29uc3QgcGFyZW50Tm9kZSA9IHRoaXMuZ2V0UGFyZW50Tm9kZSgpLFxuICAgICAgICAgIHBhcmVudEhUTUxOb2RlID0gcGFyZW50Tm9kZTsgIC8vL1xuXG4gICAgcmV0dXJuIHBhcmVudEhUTUxOb2RlO1xuICB9XG5cbiAgZ2V0Q2hpbGRIVE1MTm9kZXMoKSB7XG4gICAgY29uc3QgY2hpbGROb2RlcyA9IHRoaXMuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgIGNoaWxkSFRNTE5vZGVzID0gY2hpbGROb2RlczsgIC8vL1xuXG4gICAgcmV0dXJuIGNoaWxkSFRNTE5vZGVzO1xuICB9XG5cbiAgZ2V0QW5jZXN0b3JIVE1MTm9kZXMoKSB7XG4gICAgY29uc3QgYW5jZXN0b3JOb2RlcyA9IHRoaXMuZ2V0QW5jZXN0b3JOb2RlcygpLFxuICAgICAgICAgIGFuY2VzdG9ySFRNTE5vZGVzID0gYW5jZXN0b3JOb2RlczsgIC8vL1xuXG4gICAgcmV0dXJuIGFuY2VzdG9ySFRNTE5vZGVzO1xuICB9XG5cbiAgc29tZUFuY2VzdG9ySFRNTE5vZGUoY2FsbGJhY2spIHsgcmV0dXJuIHRoaXMuc29tZUFuY2VzdG9yTm9kZShjYWxsYmFjayk7IH1cblxuICBtYXRjaE1hcmtkb3duTm9kZShodG1sTm9kZSkge1xuICAgIGNvbnN0IG1hcmtkb3duTm9kZSA9IGh0bWxOb2RlLmdldE1hcmtkb3duTm9kZSgpLFxuICAgICAgICAgIG91dGVyTm9kZSA9IG1hcmtkb3duTm9kZSwgLy8vXG4gICAgICAgICAgb3V0ZXJOb2RlTWF0Y2hlcyA9ICh0aGlzLm91dGVyTm9kZSA9PT0gb3V0ZXJOb2RlKSxcbiAgICAgICAgICBtYXJrZG93bk5vZGVNYXRjaGVzID0gb3V0ZXJOb2RlTWF0Y2hlczsgLy8vXG5cbiAgICByZXR1cm4gbWFya2Rvd25Ob2RlTWF0Y2hlcztcbiAgfVxuXG4gIHJldHJpZXZlSFRNTE5vZGUoY2FsbGJhY2spIHtcbiAgICBsZXQgaHRtbE5vZGU7XG5cbiAgICBodG1sTm9kZSA9IHRoaXM7ICAvLy9cblxuICAgIGNvbnN0IHJlc3VsdCA9IGNhbGxiYWNrKGh0bWxOb2RlKTtcblxuICAgIGlmICghcmVzdWx0KSB7XG4gICAgICBodG1sTm9kZSA9IG51bGw7XG5cbiAgICAgIGNvbnN0IGNoaWxkSFRNTE5vZGVzID0gdGhpcy5nZXRDaGlsZEhUTUxOb2RlcygpO1xuXG4gICAgICBjaGlsZEhUTUxOb2Rlcy5zb21lKChjaGlsZEhUTUxOb2RlKSA9PiB7XG4gICAgICAgIGh0bWxOb2RlID0gY2hpbGRIVE1MTm9kZS5yZXRyaWV2ZUhUTUxOb2RlKGNhbGxiYWNrKVxuXG4gICAgICAgIGlmIChodG1sTm9kZSAhPT0gbnVsbCkge1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gaHRtbE5vZGU7XG4gIH1cblxuICBhZGRDaGlsZEhUTUxOb2RlcyhhZGRlZENoaWxkSFRNTE5vZGVzLCBzdGFydEluZGV4KSB7XG4gICAgY29uc3QgYWRkZWRDaGlsZE5vZGVzID0gYWRkZWRDaGlsZEhUTUxOb2RlczsgIC8vL1xuXG4gICAgdGhpcy5hZGRDaGlsZE5vZGVzKGFkZGVkQ2hpbGROb2Rlcywgc3RhcnRJbmRleCk7XG4gIH1cblxuICByZW1vdmVDaGlsZEhUTUxOb2RlcyhyZW1vdmVkQ2hpbGRIVE1MTm9kZXMgPSBudWxsKSB7XG4gICAgbGV0IGNoaWxkSFRNTE5vZGVzO1xuXG4gICAgY2hpbGRIVE1MTm9kZXMgPSB0aGlzLmdldENoaWxkSFRNTE5vZGVzKCk7XG5cbiAgICBpZiAocmVtb3ZlZENoaWxkSFRNTE5vZGVzICE9PSBudWxsKSB7XG4gICAgICBjaGlsZEhUTUxOb2RlcyA9IGNoaWxkSFRNTE5vZGVzLmZpbHRlcigoY2hpbGRIVE1MTm9kZSkgPT4ge1xuICAgICAgICBjb25zdCBpbmRleCA9IHJlbW92ZWRDaGlsZEhUTUxOb2Rlcy5maW5kSW5kZXgoKHJlbW92ZWRDaGlsZEhUTUxOb2RlKSA9PiB7XG4gICAgICAgICAgY29uc3Qgb3V0ZXJOb2RlTWF0Y2hlcyA9IGNoaWxkSFRNTE5vZGUubWF0Y2hPdXRlck5vZGUocmVtb3ZlZENoaWxkSFRNTE5vZGUpO1xuXG4gICAgICAgICAgaWYgKG91dGVyTm9kZU1hdGNoZXMpIHtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBsZXQgcmVtb3ZlZENoaWxkTm9kZXMgPSBjaGlsZEhUTUxOb2RlczsgIC8vL1xuXG4gICAgcmVtb3ZlZENoaWxkTm9kZXMgPSB0aGlzLnJlbW92ZUNoaWxkTm9kZXMocmVtb3ZlZENoaWxkTm9kZXMpO1xuXG4gICAgcmVtb3ZlZENoaWxkSFRNTE5vZGVzID0gcmVtb3ZlZENoaWxkTm9kZXM7ICAvLy9cblxuICAgIHJldHVybiByZW1vdmVkQ2hpbGRIVE1MTm9kZXM7XG4gIH1cblxuICBhZGp1c3RJbmRlbnQoaW5kZW50KSB7XG4gICAgaW5kZW50ID0gKGluZGVudCA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgRU1QVFlfU1RSSU5HIDpcbiAgICAgICAgICAgICAgICBgJHtET1VCTEVfU1BBQ0V9JHtpbmRlbnR9YDtcblxuICAgIHJldHVybiBpbmRlbnQ7XG4gIH1cblxuICBsaW5lcyhjb250ZXh0KSB7XG4gICAgbGV0IGxpbmVzO1xuXG4gICAgKHsgbGluZXMgPSBudWxsIH0gPSB0aGlzLmNvbnN0cnVjdG9yKTtcblxuICAgIGlmIChsaW5lcyA9PT0gbnVsbCkge1xuICAgICAgbGluZXMgPSB0aGlzLnJlZHVjZUNoaWxkTm9kZSgobGluZXMsIGNoaWxkTm9kZSkgPT4ge1xuICAgICAgICBjb25zdCBjaGlsZE5vZGVMaW5lcyA9IGNoaWxkTm9kZS5saW5lcyhjb250ZXh0KTtcblxuICAgICAgICBsaW5lcyArPSBjaGlsZE5vZGVMaW5lcztcblxuICAgICAgICByZXR1cm4gbGluZXM7XG4gICAgICB9LCAwKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbGluZXM7XG4gIH1cblxuICB0YWdOYW1lKGNvbnRleHQpIHtcbiAgICBjb25zdCB7IHRhZ05hbWUgfSA9IHRoaXMuY29uc3RydWN0b3I7XG5cbiAgICByZXR1cm4gdGFnTmFtZTtcbiAgfVxuXG4gIGRlcHRoKCkge1xuICAgIGNvbnN0IHsgZGVwdGggPSBudWxsIH0gPSB0aGlzLmNvbnN0cnVjdG9yO1xuXG4gICAgcmV0dXJuIGRlcHRoO1xuICB9XG5cbiAgY2xhc3NOYW1lKGNvbnRleHQpIHtcbiAgICBjb25zdCB7IGNsYXNzTmFtZSB9ID0gdGhpcy5jb25zdHJ1Y3RvcjtcblxuICAgIHJldHVybiBjbGFzc05hbWU7XG4gIH1cblxuICBjbG9zaW5nVGFnKGNvbnRleHQpIHtcbiAgICBjb25zdCB0YWdOYW1lID0gdGhpcy50YWdOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGNsb3NpbmdUYWcgPSBgPC8ke3RhZ05hbWV9PmA7XG5cbiAgICByZXR1cm4gY2xvc2luZ1RhZztcbiAgfVxuXG4gIHN0YXJ0aW5nVGFnKGNvbnRleHQpIHtcbiAgICBjb25zdCB0YWdOYW1lID0gdGhpcy50YWdOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGNsYXNzTmFtZSA9IHRoaXMuY2xhc3NOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGF0dHJpYnV0ZU5hbWUgPSB0aGlzLmF0dHJpYnV0ZU5hbWUoY29udGV4dCksXG4gICAgICAgICAgYXR0cmlidXRlVmFsdWUgPSB0aGlzLmF0dHJpYnV0ZVZhbHVlKGNvbnRleHQpLFxuICAgICAgICAgIGNsYXNzSFRNTCA9IChjbGFzc05hbWUgIT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgYCBjbGFzcz1cIiR7Y2xhc3NOYW1lfVwiYCA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIEVNUFRZX1NUUklORyxcbiAgICAgICAgICBhdHRyaWJ1dGVIVE1MID0gKChhdHRyaWJ1dGVOYW1lICE9PSBudWxsKSAmJiAoYXR0cmlidXRlVmFsdWUgIT09IG51bGwpKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICBgICR7YXR0cmlidXRlTmFtZX09XCIke2F0dHJpYnV0ZVZhbHVlfVwiYCA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFTVBUWV9TVFJJTkcsXG4gICAgICAgICAgc3RhcnRpbmdUYWcgPSBgPCR7dGFnTmFtZX0ke2NsYXNzSFRNTH0ke2F0dHJpYnV0ZUhUTUx9PmA7XG5cbiAgICByZXR1cm4gc3RhcnRpbmdUYWc7XG4gIH1cblxuICBzZWxmQ2xvc2luZ1RhZyhjb250ZXh0KSB7XG4gICAgY29uc3QgdGFnTmFtZSA9IHRoaXMudGFnTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBjbGFzc05hbWUgPSB0aGlzLmNsYXNzTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBhdHRyaWJ1dGVOYW1lID0gdGhpcy5hdHRyaWJ1dGVOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGF0dHJpYnV0ZVZhbHVlID0gdGhpcy5hdHRyaWJ1dGVWYWx1ZShjb250ZXh0KSxcbiAgICAgICAgICBjbGFzc0hUTUwgPSAoY2xhc3NOYW1lICE9PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgICAgICAgIGAgY2xhc3M9XCIke2NsYXNzTmFtZX1cImAgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICBFTVBUWV9TVFJJTkcsXG4gICAgICAgICAgYXR0cmlidXRlSFRNTCA9ICgoYXR0cmlidXRlTmFtZSAhPT0gbnVsbCkgJiYgKGF0dHJpYnV0ZVZhbHVlICE9PSBudWxsKSkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgYCAke2F0dHJpYnV0ZU5hbWV9PVwiJHthdHRyaWJ1dGVWYWx1ZX1cImAgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRU1QVFlfU1RSSU5HLFxuICAgICAgICAgIHNlbGZDbG9zaW5nVGFnID0gYDwke3RhZ05hbWV9JHtjbGFzc0hUTUx9JHthdHRyaWJ1dGVIVE1MfS8+YDtcblxuICAgIHJldHVybiBzZWxmQ2xvc2luZ1RhZztcbiAgfVxuXG4gIGF0dHJpYnV0ZU5hbWUoY29udGV4dCkge1xuICAgIGNvbnN0IGF0dHJpYnV0ZU5hbWUgPSBudWxsO1xuXG4gICAgcmV0dXJuIGF0dHJpYnV0ZU5hbWU7XG4gIH1cblxuICBhdHRyaWJ1dGVWYWx1ZShjb250ZXh0KSB7XG4gICAgY29uc3QgYXR0cmlidXRlVmFsdWUgPSBudWxsO1xuXG4gICAgcmV0dXJuIGF0dHJpYnV0ZVZhbHVlO1xuICB9XG5cbiAgY3JlYXRlRE9NRWxlbWVudChjb250ZXh0KSB7XG4gICAgbGV0IGRvbUVsZW1lbnQ7XG5cbiAgICBjb25zdCB0YWdOYW1lID0gdGhpcy50YWdOYW1lKGNvbnRleHQpO1xuXG4gICAgZG9tRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQodGFnTmFtZSk7XG5cbiAgICBjb25zdCBjbGFzc05hbWUgPSB0aGlzLmNsYXNzTmFtZShjb250ZXh0KSxcbiAgICAgICAgICBhdHRyaWJ1dGVOYW1lID0gdGhpcy5hdHRyaWJ1dGVOYW1lKGNvbnRleHQpLFxuICAgICAgICAgIGF0dHJpYnV0ZVZhbHVlID0gdGhpcy5hdHRyaWJ1dGVWYWx1ZShjb250ZXh0KTtcblxuICAgIGlmIChjbGFzc05hbWUgIT09IG51bGwpIHtcbiAgICAgIE9iamVjdC5hc3NpZ24oZG9tRWxlbWVudCwge1xuICAgICAgICBjbGFzc05hbWVcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmICgoYXR0cmlidXRlTmFtZSAhPT0gbnVsbCkgJiYgKGF0dHJpYnV0ZVZhbHVlICE9PSBudWxsKSkge1xuICAgICAgZG9tRWxlbWVudC5zZXRBdHRyaWJ1dGUoYXR0cmlidXRlTmFtZSwgYXR0cmlidXRlVmFsdWUpO1xuICAgIH1cblxuICAgIHJldHVybiBkb21FbGVtZW50O1xuICB9XG5cbiAgbW91bnQocGFyZW50RE9NRWxlbWVudCwgc2libGluZ0RPTUVsZW1lbnQsIGNvbnRleHQpIHtcbiAgICB0aGlzLmRvbUVsZW1lbnQgPSB0aGlzLmNyZWF0ZURPTUVsZW1lbnQoY29udGV4dCk7XG5cbiAgICBwYXJlbnRET01FbGVtZW50Lmluc2VydEJlZm9yZSh0aGlzLmRvbUVsZW1lbnQsIHNpYmxpbmdET01FbGVtZW50KVxuXG4gICAgcGFyZW50RE9NRWxlbWVudCA9IHRoaXMuZG9tRWxlbWVudDsgLy8vXG5cbiAgICBzaWJsaW5nRE9NRWxlbWVudCA9IG51bGw7XG5cbiAgICB0aGlzLmNoaWxkTm9kZXMuZm9yRWFjaCgoY2hpbGROb2RlKSA9PiB7XG4gICAgICBjaGlsZE5vZGUubW91bnQocGFyZW50RE9NRWxlbWVudCwgc2libGluZ0RPTUVsZW1lbnQsIGNvbnRleHQpO1xuICAgIH0pO1xuICB9XG5cbiAgdW5tb3VudChwYXJlbnRET01FbGVtZW50LCBjb250ZXh0KSB7XG4gICAge1xuICAgICAgY29uc3QgcGFyZW50RE9NRWxlbWVudCA9IHRoaXMuZG9tRWxlbWVudDsgLy8vXG5cbiAgICAgIHRoaXMuY2hpbGROb2Rlcy5mb3JFYWNoKChjaGlsZE5vZGUpID0+IHtcbiAgICAgICAgY2hpbGROb2RlLnVubW91bnQocGFyZW50RE9NRWxlbWVudCwgY29udGV4dCk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBwYXJlbnRET01FbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMuZG9tRWxlbWVudCk7XG5cbiAgICB0aGlzLmRvbUVsZW1lbnQgPSBudWxsO1xuICB9XG5cbiAgYXNIVE1MKGluZGVudCwgY29udGV4dCkge1xuICAgIGlmIChjb250ZXh0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvbnRleHQgPSBpbmRlbnQ7IC8vL1xuXG4gICAgICBpbmRlbnQgPSBFTVBUWV9TVFJJTkc7XG4gICAgfVxuXG4gICAgbGV0IGh0bWw7XG5cbiAgICBpbmRlbnQgPSB0aGlzLmFkanVzdEluZGVudChpbmRlbnQpO1xuXG4gICAgY29uc3QgY2hpbGROb2Rlc0hUTUwgPSB0aGlzLmNoaWxkTm9kZXNBc0hUTUwoaW5kZW50LCBjb250ZXh0KTtcblxuICAgIGlmIChjaGlsZE5vZGVzSFRNTCAhPT0gRU1QVFlfU1RSSU5HKSB7XG4gICAgICBjb25zdCBzdGFydGluZ1RhZyA9IHRoaXMuc3RhcnRpbmdUYWcoY29udGV4dCksXG4gICAgICAgICAgICBjbG9zaW5nVGFnID0gdGhpcy5jbG9zaW5nVGFnKGNvbnRleHQpO1xuXG4gICAgICBodG1sID0gYCR7aW5kZW50fSR7c3RhcnRpbmdUYWd9XG4ke2NoaWxkTm9kZXNIVE1MfSR7aW5kZW50fSR7Y2xvc2luZ1RhZ31cbmA7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHNlbGZDbG9zaW5nVGFnID0gdGhpcy5zZWxmQ2xvc2luZ1RhZyhjb250ZXh0KTtcblxuICAgICAgaHRtbCA9IGAke2luZGVudH0ke3NlbGZDbG9zaW5nVGFnfVxuYDtcbiAgICB9XG5cbiAgICByZXR1cm4gaHRtbDtcbiAgfVxuXG4gIGFzUGxhaW5UZXh0KGNvbnRleHQpIHtcbiAgICBsZXQgcGxhaW5UZXh0O1xuXG4gICAgY29uc3QgY2hpbGROb2Rlc1BsYWluVGV4dCA9IHRoaXMuY2hpbGROb2Rlc0FzUGxhaW5UZXh0KGNvbnRleHQpO1xuXG4gICAgcGxhaW5UZXh0ID0gY2hpbGROb2Rlc1BsYWluVGV4dDsgIC8vL1xuXG4gICAgcmV0dXJuIHBsYWluVGV4dDtcbiAgfVxuXG4gIGNoaWxkTm9kZXNBc0hUTUwoaW5kZW50LCBjb250ZXh0KSB7XG4gICAgY29uc3QgY2hpbGROb2Rlc0hUTUwgPSB0aGlzLnJlZHVjZUNoaWxkTm9kZSgoY2hpbGROb2Rlc0hUTUwsIGNoaWxkTm9kZSkgPT4ge1xuICAgICAgY29uc3QgY2hpbGROb2RlSFRNTCA9IGNoaWxkTm9kZS5hc0hUTUwoaW5kZW50LCBjb250ZXh0KTtcblxuICAgICAgY2hpbGROb2Rlc0hUTUwgPSBgJHtjaGlsZE5vZGVzSFRNTH0ke2NoaWxkTm9kZUhUTUx9YDtcblxuICAgICAgcmV0dXJuIGNoaWxkTm9kZXNIVE1MO1xuICAgIH0sIEVNUFRZX1NUUklORyk7XG5cbiAgICByZXR1cm4gY2hpbGROb2Rlc0hUTUw7XG4gIH1cblxuICBjaGlsZE5vZGVzQXNQbGFpblRleHQoY29udGV4dCkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXNQbGFpblRleHQgPSB0aGlzLnJlZHVjZUNoaWxkTm9kZSgoY2hpbGROb2Rlc1BsYWluVGV4dCwgY2hpbGROb2RlKSA9PiB7XG4gICAgICBjb25zdCBjaGlsZE5vZGVQbGFpblRleHQgPSBjaGlsZE5vZGUuYXNQbGFpblRleHQoY29udGV4dCk7XG5cbiAgICAgIGNoaWxkTm9kZXNQbGFpblRleHQgPSBgJHtjaGlsZE5vZGVzUGxhaW5UZXh0fVxuJHtjaGlsZE5vZGVQbGFpblRleHR9YDtcblxuICAgICAgcmV0dXJuIGNoaWxkTm9kZXNQbGFpblRleHQ7XG4gICAgfSwgRU1QVFlfU1RSSU5HKTtcblxuICAgIHJldHVybiBjaGlsZE5vZGVzUGxhaW5UZXh0O1xuICB9XG5cbiAgc3RhdGljIGZyb21Ob3RoaW5nKENsYXNzLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBpZiAoQ2xhc3MgPT09IHVuZGVmaW5lZCkge1xuICAgICAgQ2xhc3MgPSBIVE1MTm9kZTsgLy8vXG4gICAgfVxuXG4gICAgY29uc3QgZG9tRWxlbWVudCA9IG51bGwsXG4gICAgICAgICAgbm9kZSA9IE5vZGUuZnJvbU5vdGhpbmcoQ2xhc3MsIGRvbUVsZW1lbnQsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICByZXR1cm4gbm9kZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tT3V0ZXJOb2RlKENsYXNzLCBvdXRlck5vZGUsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGlmIChvdXRlck5vZGUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgb3V0ZXJOb2RlID0gQ2xhc3M7ICAvLy9cblxuICAgICAgQ2xhc3MgPSBIVE1MTm9kZTsgLy8vXG4gICAgfVxuXG4gICAgY29uc3QgZG9tRWxlbWVudCA9IG51bGwsXG4gICAgICAgICAgbm9kZSA9IE5vZGUuZnJvbU91dGVyTm9kZShDbGFzcywgb3V0ZXJOb2RlLCBkb21FbGVtZW50LCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgcmV0dXJuIG5vZGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbUNoaWxkTm9kZXMoQ2xhc3MsIGNoaWxkTm9kZXMsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGlmIChjaGlsZE5vZGVzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGNoaWxkTm9kZXMgPSBDbGFzczsgIC8vL1xuXG4gICAgICBDbGFzcyA9IEhUTUxOb2RlOyAvLy9cbiAgICB9XG5cbiAgICBjb25zdCBkb21FbGVtZW50ID0gbnVsbCxcbiAgICAgICAgICBub2RlID0gTm9kZS5mcm9tQ2hpbGROb2RlcyhDbGFzcywgY2hpbGROb2RlcywgZG9tRWxlbWVudCwgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgIHJldHVybiBub2RlO1xuICB9XG59XG5cbk9iamVjdC5hc3NpZ24oSFRNTE5vZGUucHJvdG90eXBlLCBub2RlTWl4aW5zKTtcblxuZXhwb3J0IGRlZmF1bHQgSFRNTE5vZGU7XG4iXSwibmFtZXMiOlsiSFRNTE5vZGUiLCJvdXRlck5vZGUiLCJwYXJlbnROb2RlIiwiY2hpbGROb2RlcyIsImRvbUVsZW1lbnQiLCJnZXRET01FbGVtZW50Iiwic2V0RE9NRWxlbWVudCIsInJlc2V0RE9NRWxlbWVudCIsImdldFJ1bGVOYW1lIiwibWFya2Rvd25Ob2RlIiwiZ2V0TWFya2Rvd25Ob2RlIiwicnVsZU5hbWUiLCJpc1Rlcm1pbmFsTm9kZSIsInRlcm1pbmFsTm9kZSIsImlzTm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlIiwiZ2V0T3V0ZXJOb2RlIiwiZ2V0UGFyZW50SFRNTE5vZGUiLCJnZXRQYXJlbnROb2RlIiwicGFyZW50SFRNTE5vZGUiLCJnZXRDaGlsZEhUTUxOb2RlcyIsImdldENoaWxkTm9kZXMiLCJjaGlsZEhUTUxOb2RlcyIsImdldEFuY2VzdG9ySFRNTE5vZGVzIiwiYW5jZXN0b3JOb2RlcyIsImdldEFuY2VzdG9yTm9kZXMiLCJhbmNlc3RvckhUTUxOb2RlcyIsInNvbWVBbmNlc3RvckhUTUxOb2RlIiwiY2FsbGJhY2siLCJzb21lQW5jZXN0b3JOb2RlIiwibWF0Y2hNYXJrZG93bk5vZGUiLCJodG1sTm9kZSIsIm91dGVyTm9kZU1hdGNoZXMiLCJtYXJrZG93bk5vZGVNYXRjaGVzIiwicmV0cmlldmVIVE1MTm9kZSIsInJlc3VsdCIsInNvbWUiLCJjaGlsZEhUTUxOb2RlIiwiYWRkQ2hpbGRIVE1MTm9kZXMiLCJhZGRlZENoaWxkSFRNTE5vZGVzIiwic3RhcnRJbmRleCIsImFkZGVkQ2hpbGROb2RlcyIsImFkZENoaWxkTm9kZXMiLCJyZW1vdmVDaGlsZEhUTUxOb2RlcyIsInJlbW92ZWRDaGlsZEhUTUxOb2RlcyIsImZpbHRlciIsImluZGV4IiwiZmluZEluZGV4IiwicmVtb3ZlZENoaWxkSFRNTE5vZGUiLCJtYXRjaE91dGVyTm9kZSIsInJlbW92ZWRDaGlsZE5vZGVzIiwicmVtb3ZlQ2hpbGROb2RlcyIsImFkanVzdEluZGVudCIsImluZGVudCIsIkVNUFRZX1NUUklORyIsIkRPVUJMRV9TUEFDRSIsImxpbmVzIiwiY29udGV4dCIsImNvbnN0cnVjdG9yIiwicmVkdWNlQ2hpbGROb2RlIiwiY2hpbGROb2RlIiwiY2hpbGROb2RlTGluZXMiLCJ0YWdOYW1lIiwiZGVwdGgiLCJjbGFzc05hbWUiLCJjbG9zaW5nVGFnIiwic3RhcnRpbmdUYWciLCJhdHRyaWJ1dGVOYW1lIiwiYXR0cmlidXRlVmFsdWUiLCJjbGFzc0hUTUwiLCJhdHRyaWJ1dGVIVE1MIiwic2VsZkNsb3NpbmdUYWciLCJjcmVhdGVET01FbGVtZW50IiwiZG9jdW1lbnQiLCJjcmVhdGVFbGVtZW50IiwiT2JqZWN0IiwiYXNzaWduIiwic2V0QXR0cmlidXRlIiwibW91bnQiLCJwYXJlbnRET01FbGVtZW50Iiwic2libGluZ0RPTUVsZW1lbnQiLCJpbnNlcnRCZWZvcmUiLCJmb3JFYWNoIiwidW5tb3VudCIsInJlbW92ZUNoaWxkIiwiYXNIVE1MIiwidW5kZWZpbmVkIiwiaHRtbCIsImNoaWxkTm9kZXNIVE1MIiwiY2hpbGROb2Rlc0FzSFRNTCIsImFzUGxhaW5UZXh0IiwicGxhaW5UZXh0IiwiY2hpbGROb2Rlc1BsYWluVGV4dCIsImNoaWxkTm9kZXNBc1BsYWluVGV4dCIsImNoaWxkTm9kZUhUTUwiLCJjaGlsZE5vZGVQbGFpblRleHQiLCJmcm9tTm90aGluZyIsIkNsYXNzIiwicmVtYWluaW5nQXJndW1lbnRzIiwiTm9kZSIsIm5vZGUiLCJmcm9tT3V0ZXJOb2RlIiwiZnJvbUNoaWxkTm9kZXMiLCJwcm90b3R5cGUiLCJub2RlTWl4aW5zIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkE2WUE7OztlQUFBOzs7d0JBM1lxQjsyREFFRTt5QkFFb0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUUzQyxJQUFBLEFBQU1BLHlCQUFOO2NBQU1BO2FBQUFBLFNBQ1FDLFNBQVMsRUFBRUMsVUFBVSxFQUFFQyxVQUFVLEVBQUVDLFVBQVU7Z0NBRHJESjs7Z0JBRUYsa0JBRkVBO1lBRUlDO1lBQVdDO1lBQVlDOztRQUU3QixNQUFLQyxVQUFVLEdBQUdBOzs7a0JBSmhCSjs7WUFPSkssS0FBQUE7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
@@ -106,7 +106,7 @@ var IndexItemHTMLTransform = /*#__PURE__*/ function(HTMLTransform) {
106
106
  {
107
107
  key: "fromIndexItem",
108
108
  value: function fromIndexItem(indexItem) {
109
- var indexItemHTNLMode = _item.default.fromIndexItem(indexItem), htmlNode = indexItemHTNLMode, indexItemHTMLTransform = _html.default.fromHTMLNode(IndexItemHTMLTransform, htmlNode);
109
+ var indexItemHTMLMode = _item.default.fromIndexItem(indexItem), htmlNode = indexItemHTMLMode, indexItemHTMLTransform = _html.default.fromHTMLNode(IndexItemHTMLTransform, htmlNode);
110
110
  return indexItemHTMLTransform;
111
111
  }
112
112
  }
@@ -114,4 +114,4 @@ var IndexItemHTMLTransform = /*#__PURE__*/ function(HTMLTransform) {
114
114
  return IndexItemHTMLTransform;
115
115
  }(_html.default);
116
116
 
117
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90cmFuc2Zvcm0vaHRtbC9pdGVtL2luZGV4LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgSFRNTFRyYW5zZm9ybSBmcm9tIFwiLi4vLi4vLi4vdHJhbnNmb3JtL2h0bWxcIjtcbmltcG9ydCBJbmRleEl0ZW1IVE1MTm9kZSBmcm9tIFwiLi4vLi4vLi4vbm9kZS9odG1sL2l0ZW1cIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgSW5kZXhJdGVtSFRNTFRyYW5zZm9ybSBleHRlbmRzIEhUTUxUcmFuc2Zvcm0ge1xuICBnZXRJbmRleEl0ZW1IVE1MTm9kZSgpIHtcbiAgICBjb25zdCBodG1sTm9kZSA9IHRoaXMuZ2V0SFRNTE5vZGUoKSxcbiAgICAgICAgICBpbmRleEl0ZW1IVE1MTm9kZSA9IGh0bWxOb2RlOyAvLy9cblxuICAgIHJldHVybiBpbmRleEl0ZW1IVE1MTm9kZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSW5kZXhJdGVtKGluZGV4SXRlbSkge1xuICAgIGNvbnN0IGluZGV4SXRlbUhUTkxNb2RlID0gSW5kZXhJdGVtSFRNTE5vZGUuZnJvbUluZGV4SXRlbShpbmRleEl0ZW0pLFxuICAgICAgICAgIGh0bWxOb2RlID0gaW5kZXhJdGVtSFROTE1vZGUsIC8vL1xuICAgICAgICAgIGluZGV4SXRlbUhUTUxUcmFuc2Zvcm0gPSBIVE1MVHJhbnNmb3JtLmZyb21IVE1MTm9kZShJbmRleEl0ZW1IVE1MVHJhbnNmb3JtLCBodG1sTm9kZSk7XG5cbiAgICByZXR1cm4gaW5kZXhJdGVtSFRNTFRyYW5zZm9ybTtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIkluZGV4SXRlbUhUTUxUcmFuc2Zvcm0iLCJnZXRJbmRleEl0ZW1IVE1MTm9kZSIsImh0bWxOb2RlIiwiZ2V0SFRNTE5vZGUiLCJpbmRleEl0ZW1IVE1MTm9kZSIsImZyb21JbmRleEl0ZW0iLCJpbmRleEl0ZW0iLCJpbmRleEl0ZW1IVE5MTW9kZSIsIkluZGV4SXRlbUhUTUxOb2RlIiwiaW5kZXhJdGVtSFRNTFRyYW5zZm9ybSIsIkhUTUxUcmFuc2Zvcm0iLCJmcm9tSFRNTE5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBS3FCQTs7OzJEQUhLOzJEQUNJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRWYsSUFBQSxBQUFNQSx1Q0FBTjtjQUFNQTthQUFBQTtnQ0FBQUE7ZUFBTixrQkFBTUE7O2tCQUFBQTs7WUFDbkJDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyxXQUFXLElBQUksQ0FBQ0MsV0FBVyxJQUMzQkMsb0JBQW9CRixVQUFVLEdBQUc7Z0JBRXZDLE9BQU9FO1lBQ1Q7Ozs7WUFFT0MsS0FBQUE7bUJBQVAsU0FBT0EsY0FBY0MsU0FBUztnQkFDNUIsSUFBTUMsb0JBQW9CQyxhQUFpQixDQUFDSCxhQUFhLENBQUNDLFlBQ3BESixXQUFXSyxtQkFDWEUseUJBQXlCQyxhQUFhLENBQUNDLFlBQVksQ0FYeENYLHdCQVdpRUU7Z0JBRWxGLE9BQU9PO1lBQ1Q7OztXQWRtQlQ7RUFBK0JVLGFBQWEifQ==
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90cmFuc2Zvcm0vaHRtbC9pdGVtL2luZGV4LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgSFRNTFRyYW5zZm9ybSBmcm9tIFwiLi4vLi4vLi4vdHJhbnNmb3JtL2h0bWxcIjtcbmltcG9ydCBJbmRleEl0ZW1IVE1MTm9kZSBmcm9tIFwiLi4vLi4vLi4vbm9kZS9odG1sL2l0ZW1cIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgSW5kZXhJdGVtSFRNTFRyYW5zZm9ybSBleHRlbmRzIEhUTUxUcmFuc2Zvcm0ge1xuICBnZXRJbmRleEl0ZW1IVE1MTm9kZSgpIHtcbiAgICBjb25zdCBodG1sTm9kZSA9IHRoaXMuZ2V0SFRNTE5vZGUoKSxcbiAgICAgICAgICBpbmRleEl0ZW1IVE1MTm9kZSA9IGh0bWxOb2RlOyAvLy9cblxuICAgIHJldHVybiBpbmRleEl0ZW1IVE1MTm9kZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSW5kZXhJdGVtKGluZGV4SXRlbSkge1xuICAgIGNvbnN0IGluZGV4SXRlbUhUTUxNb2RlID0gSW5kZXhJdGVtSFRNTE5vZGUuZnJvbUluZGV4SXRlbShpbmRleEl0ZW0pLFxuICAgICAgICAgIGh0bWxOb2RlID0gaW5kZXhJdGVtSFRNTE1vZGUsIC8vL1xuICAgICAgICAgIGluZGV4SXRlbUhUTUxUcmFuc2Zvcm0gPSBIVE1MVHJhbnNmb3JtLmZyb21IVE1MTm9kZShJbmRleEl0ZW1IVE1MVHJhbnNmb3JtLCBodG1sTm9kZSk7XG5cbiAgICByZXR1cm4gaW5kZXhJdGVtSFRNTFRyYW5zZm9ybTtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIkluZGV4SXRlbUhUTUxUcmFuc2Zvcm0iLCJnZXRJbmRleEl0ZW1IVE1MTm9kZSIsImh0bWxOb2RlIiwiZ2V0SFRNTE5vZGUiLCJpbmRleEl0ZW1IVE1MTm9kZSIsImZyb21JbmRleEl0ZW0iLCJpbmRleEl0ZW0iLCJpbmRleEl0ZW1IVE1MTW9kZSIsIkluZGV4SXRlbUhUTUxOb2RlIiwiaW5kZXhJdGVtSFRNTFRyYW5zZm9ybSIsIkhUTUxUcmFuc2Zvcm0iLCJmcm9tSFRNTE5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBS3FCQTs7OzJEQUhLOzJEQUNJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRWYsSUFBQSxBQUFNQSx1Q0FBTjtjQUFNQTthQUFBQTtnQ0FBQUE7ZUFBTixrQkFBTUE7O2tCQUFBQTs7WUFDbkJDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyxXQUFXLElBQUksQ0FBQ0MsV0FBVyxJQUMzQkMsb0JBQW9CRixVQUFVLEdBQUc7Z0JBRXZDLE9BQU9FO1lBQ1Q7Ozs7WUFFT0MsS0FBQUE7bUJBQVAsU0FBT0EsY0FBY0MsU0FBUztnQkFDNUIsSUFBTUMsb0JBQW9CQyxhQUFpQixDQUFDSCxhQUFhLENBQUNDLFlBQ3BESixXQUFXSyxtQkFDWEUseUJBQXlCQyxhQUFhLENBQUNDLFlBQVksQ0FYeENYLHdCQVdpRUU7Z0JBRWxGLE9BQU9PO1lBQ1Q7OztXQWRtQlQ7RUFBK0JVLGFBQWEifQ==
@@ -111,8 +111,8 @@ var LineHTMLTransform = /*#__PURE__*/ function(HTMLTransform) {
111
111
  },
112
112
  {
113
113
  key: "fromFootnoteHTMLTransform",
114
- value: function fromFootnoteHTMLTransform(footnoteHTNLTransform) {
115
- var lineHTMLNode = footnoteHTNLTransform.getLineHTMLNode(), htmlNode = lineHTMLNode, paragraphHTMLTransform = _html.default.fromHTMLNode(LineHTMLTransform, htmlNode);
114
+ value: function fromFootnoteHTMLTransform(footnoteHTMLTransform) {
115
+ var lineHTMLNode = footnoteHTMLTransform.getLineHTMLNode(), htmlNode = lineHTMLNode, paragraphHTMLTransform = _html.default.fromHTMLNode(LineHTMLTransform, htmlNode);
116
116
  return paragraphHTMLTransform;
117
117
  }
118
118
  }
@@ -120,4 +120,4 @@ var LineHTMLTransform = /*#__PURE__*/ function(HTMLTransform) {
120
120
  return LineHTMLTransform;
121
121
  }(_html.default);
122
122
 
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90cmFuc2Zvcm0vaHRtbC9saW5lLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgSFRNTFRyYW5zZm9ybSBmcm9tIFwiLi4vLi4vdHJhbnNmb3JtL2h0bWxcIlxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBMaW5lSFRNTFRyYW5zZm9ybSBleHRlbmRzIEhUTUxUcmFuc2Zvcm0ge1xuICBnZXRMaW5lSFRNTE5vZGUoKSB7XG4gICAgY29uc3QgaHRtbE5vZGUgPSB0aGlzLmdldEhUTUxOb2RlKCksXG4gICAgICAgICAgbGluZUhUTUxOb2RlID0gaHRtbE5vZGU7ICAvLy87XG5cbiAgICByZXR1cm4gbGluZUhUTUxOb2RlO1xuICB9XG5cbiAgc3RhdGljIGZyb21MaW5lSFRNTE5vZGUobGluZUhUTUxOb2RlKSB7XG4gICAgY29uc3QgaHRtbE5vZGUgPSBsaW5lSFRNTE5vZGUsIC8vL1xuICAgICAgICAgIHBhcmFncmFwaEhUTUxUcmFuc2Zvcm0gPSBIVE1MVHJhbnNmb3JtLmZyb21IVE1MTm9kZShMaW5lSFRNTFRyYW5zZm9ybSwgaHRtbE5vZGUpO1xuXG4gICAgcmV0dXJuIHBhcmFncmFwaEhUTUxUcmFuc2Zvcm07XG4gIH1cblxuICBzdGF0aWMgZnJvbUZvb3Rub3RlSFRNTFRyYW5zZm9ybShmb290bm90ZUhUTkxUcmFuc2Zvcm0pIHtcbiAgICBjb25zdCBsaW5lSFRNTE5vZGUgPSBmb290bm90ZUhUTkxUcmFuc2Zvcm0uZ2V0TGluZUhUTUxOb2RlKCksXG4gICAgICAgICAgaHRtbE5vZGUgPSBsaW5lSFRNTE5vZGUsIC8vL1xuICAgICAgICAgIHBhcmFncmFwaEhUTUxUcmFuc2Zvcm0gPSBIVE1MVHJhbnNmb3JtLmZyb21IVE1MTm9kZShMaW5lSFRNTFRyYW5zZm9ybSwgaHRtbE5vZGUpO1xuXG4gICAgcmV0dXJuIHBhcmFncmFwaEhUTUxUcmFuc2Zvcm07XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJMaW5lSFRNTFRyYW5zZm9ybSIsImdldExpbmVIVE1MTm9kZSIsImh0bWxOb2RlIiwiZ2V0SFRNTE5vZGUiLCJsaW5lSFRNTE5vZGUiLCJmcm9tTGluZUhUTUxOb2RlIiwicGFyYWdyYXBoSFRNTFRyYW5zZm9ybSIsIkhUTUxUcmFuc2Zvcm0iLCJmcm9tSFRNTE5vZGUiLCJmcm9tRm9vdG5vdGVIVE1MVHJhbnNmb3JtIiwiZm9vdG5vdGVIVE5MVHJhbnNmb3JtIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUlxQkE7OzsyREFGSzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVYLElBQUEsQUFBTUEsa0NBQU47Y0FBTUE7YUFBQUE7Z0NBQUFBO2VBQU4sa0JBQU1BOztrQkFBQUE7O1lBQ25CQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsV0FBVyxJQUFJLENBQUNDLFdBQVcsSUFDM0JDLGVBQWVGLFVBQVcsSUFBSTtnQkFFcEMsT0FBT0U7WUFDVDs7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSxpQkFBaUJELFlBQVk7Z0JBQ2xDLElBQU1GLFdBQVdFLGNBQ1hFLHlCQUF5QkMsYUFBYSxDQUFDQyxZQUFZLENBVnhDUixtQkFVNERFO2dCQUU3RSxPQUFPSTtZQUNUOzs7WUFFT0csS0FBQUE7bUJBQVAsU0FBT0EsMEJBQTBCQyxxQkFBcUI7Z0JBQ3BELElBQU1OLGVBQWVNLHNCQUFzQlQsZUFBZSxJQUNwREMsV0FBV0UsY0FDWEUseUJBQXlCQyxhQUFhLENBQUNDLFlBQVksQ0FsQnhDUixtQkFrQjRERTtnQkFFN0UsT0FBT0k7WUFDVDs7O1dBckJtQk47RUFBMEJPLGFBQWEifQ==
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90cmFuc2Zvcm0vaHRtbC9saW5lLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgSFRNTFRyYW5zZm9ybSBmcm9tIFwiLi4vLi4vdHJhbnNmb3JtL2h0bWxcIlxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBMaW5lSFRNTFRyYW5zZm9ybSBleHRlbmRzIEhUTUxUcmFuc2Zvcm0ge1xuICBnZXRMaW5lSFRNTE5vZGUoKSB7XG4gICAgY29uc3QgaHRtbE5vZGUgPSB0aGlzLmdldEhUTUxOb2RlKCksXG4gICAgICAgICAgbGluZUhUTUxOb2RlID0gaHRtbE5vZGU7ICAvLy87XG5cbiAgICByZXR1cm4gbGluZUhUTUxOb2RlO1xuICB9XG5cbiAgc3RhdGljIGZyb21MaW5lSFRNTE5vZGUobGluZUhUTUxOb2RlKSB7XG4gICAgY29uc3QgaHRtbE5vZGUgPSBsaW5lSFRNTE5vZGUsIC8vL1xuICAgICAgICAgIHBhcmFncmFwaEhUTUxUcmFuc2Zvcm0gPSBIVE1MVHJhbnNmb3JtLmZyb21IVE1MTm9kZShMaW5lSFRNTFRyYW5zZm9ybSwgaHRtbE5vZGUpO1xuXG4gICAgcmV0dXJuIHBhcmFncmFwaEhUTUxUcmFuc2Zvcm07XG4gIH1cblxuICBzdGF0aWMgZnJvbUZvb3Rub3RlSFRNTFRyYW5zZm9ybShmb290bm90ZUhUTUxUcmFuc2Zvcm0pIHtcbiAgICBjb25zdCBsaW5lSFRNTE5vZGUgPSBmb290bm90ZUhUTUxUcmFuc2Zvcm0uZ2V0TGluZUhUTUxOb2RlKCksXG4gICAgICAgICAgaHRtbE5vZGUgPSBsaW5lSFRNTE5vZGUsIC8vL1xuICAgICAgICAgIHBhcmFncmFwaEhUTUxUcmFuc2Zvcm0gPSBIVE1MVHJhbnNmb3JtLmZyb21IVE1MTm9kZShMaW5lSFRNTFRyYW5zZm9ybSwgaHRtbE5vZGUpO1xuXG4gICAgcmV0dXJuIHBhcmFncmFwaEhUTUxUcmFuc2Zvcm07XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJMaW5lSFRNTFRyYW5zZm9ybSIsImdldExpbmVIVE1MTm9kZSIsImh0bWxOb2RlIiwiZ2V0SFRNTE5vZGUiLCJsaW5lSFRNTE5vZGUiLCJmcm9tTGluZUhUTUxOb2RlIiwicGFyYWdyYXBoSFRNTFRyYW5zZm9ybSIsIkhUTUxUcmFuc2Zvcm0iLCJmcm9tSFRNTE5vZGUiLCJmcm9tRm9vdG5vdGVIVE1MVHJhbnNmb3JtIiwiZm9vdG5vdGVIVE1MVHJhbnNmb3JtIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUlxQkE7OzsyREFGSzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVYLElBQUEsQUFBTUEsa0NBQU47Y0FBTUE7YUFBQUE7Z0NBQUFBO2VBQU4sa0JBQU1BOztrQkFBQUE7O1lBQ25CQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsV0FBVyxJQUFJLENBQUNDLFdBQVcsSUFDM0JDLGVBQWVGLFVBQVcsSUFBSTtnQkFFcEMsT0FBT0U7WUFDVDs7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSxpQkFBaUJELFlBQVk7Z0JBQ2xDLElBQU1GLFdBQVdFLGNBQ1hFLHlCQUF5QkMsYUFBYSxDQUFDQyxZQUFZLENBVnhDUixtQkFVNERFO2dCQUU3RSxPQUFPSTtZQUNUOzs7WUFFT0csS0FBQUE7bUJBQVAsU0FBT0EsMEJBQTBCQyxxQkFBcUI7Z0JBQ3BELElBQU1OLGVBQWVNLHNCQUFzQlQsZUFBZSxJQUNwREMsV0FBV0UsY0FDWEUseUJBQXlCQyxhQUFhLENBQUNDLFlBQVksQ0FsQnhDUixtQkFrQjRERTtnQkFFN0UsT0FBT0k7WUFDVDs7O1dBckJtQk47RUFBMEJPLGFBQWEifQ==
@@ -192,13 +192,13 @@ function removeFootnotesDirectiveHTMLNode(node) {
192
192
  return footnotesDirectiveHTMLNode;
193
193
  }
194
194
  function removePageNumberDirectiveHTMLNode(node) {
195
- var pageNumberDirectiveHTNLTransform = null;
195
+ var pageNumberDirectiveHTMLTransform = null;
196
196
  var pageNumberDirectiveHTMLNode = (0, _html1.pageNumberDirectiveHTMLNodeFromNode)(node);
197
197
  if (pageNumberDirectiveHTMLNode !== null) {
198
- pageNumberDirectiveHTNLTransform = _pageNumber.default.fromPageNumberDirectiveHTMLNode(pageNumberDirectiveHTMLNode);
199
- pageNumberDirectiveHTNLTransform.remove();
198
+ pageNumberDirectiveHTMLTransform = _pageNumber.default.fromPageNumberDirectiveHTMLNode(pageNumberDirectiveHTMLNode);
199
+ pageNumberDirectiveHTMLTransform.remove();
200
200
  }
201
- return pageNumberDirectiveHTNLTransform;
201
+ return pageNumberDirectiveHTMLTransform;
202
202
  }
203
203
  function removeNestedFootnoteLinkHTMLNodes(node) {
204
204
  var nestedFootnoteLinkHTMLNodes = (0, _html1.nestedFootnoteLinkHTMLNodesFromNode)(node), nestedFootnoteLinkHTMLTransforms = nestedFootnoteLinkHTMLTransformsFromNestedFootnoteLinkHTMLNodes(nestedFootnoteLinkHTMLNodes);
@@ -244,4 +244,4 @@ function nestedFootnoteLinkHTMLTransformsFromNestedFootnoteLinkHTMLNodes(nestedF
244
244
  return nestedFootnoteLinkHTMLTransforms;
245
245
  }
246
246
 
247
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZGl2aXNpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IGFycmF5VXRpbGl0aWVzIH0gZnJvbSBcIm5lY2Vzc2FyeVwiO1xuXG5pbXBvcnQgSFRNTFRyYW5zZm9ybSBmcm9tIFwiLi4vdHJhbnNmb3JtL2h0bWxcIjtcbmltcG9ydCBGb290bm90ZUhUTUxOb2RlIGZyb20gXCIuLi9ub2RlL2h0bWwvZm9vdG5vdGVcIjtcbmltcG9ydCBMaW5lSFRNTFRyYW5zZm9ybSBmcm9tIFwiLi4vdHJhbnNmb3JtL2h0bWwvbGluZVwiO1xuaW1wb3J0IEZvb3Rub3RlSFRNTFRyYW5zZm9ybSBmcm9tIFwiLi4vdHJhbnNmb3JtL2h0bWwvZm9vdG5vdGVcIjtcbmltcG9ydCBGb290bm90ZUl0ZW1IVE1MVHJhbnNmb3JtIGZyb20gXCIuLi90cmFuc2Zvcm0vaHRtbC9pdGVtL2Zvb3Rub3RlXCI7XG5pbXBvcnQgRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybSBmcm9tIFwiLi4vdHJhbnNmb3JtL2h0bWwvbGluay9mb290bm90ZVwiO1xuaW1wb3J0IE5lc3RlZEZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm0gZnJvbSBcIi4uL3RyYW5zZm9ybS9odG1sL2xpbmsvbmVzdGVkRm9vdG5vdGVcIjtcbmltcG9ydCBGb290bm90ZXNEaXJlY3RpdmVIVE1MVHJhbnNmb3JtIGZyb20gXCIuLi90cmFuc2Zvcm0vaHRtbC9kaXJlY3RpdmUvZm9vdG5vdGVzXCI7XG5pbXBvcnQgUGFnZU51bWJlckRpcmVjdGl2ZUhUTUxUcmFuc2Zvcm0gZnJvbSBcIi4uL3RyYW5zZm9ybS9odG1sL2RpcmVjdGl2ZS9wYWdlTnVtYmVyXCI7XG5cbmltcG9ydCB7IERFRkFVTFRfTUFYSU1VTV9QQUdFX0xJTkVTIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgaHRtbE5vZGVzRnJvbU5vZGUsXG4gICAgICAgICBmb290bm90ZUhUTUxOb2Rlc0Zyb21Ob2RlLFxuICAgICAgICAgZm9vdG5vdGVMaW5rSFRNTE5vZGVzRnJvbU5vZGUsXG4gICAgICAgICBmb290bm90ZXNEaXJlY3RpdmVIVE1MTm9kZUZyb21Ob2RlLFxuICAgICAgICAgbmVzdGVkRm9vdG5vdGVMaW5rSFRNTE5vZGVzRnJvbU5vZGUsXG4gICAgICAgICBwYWdlTnVtYmVyRGlyZWN0aXZlSFRNTE5vZGVGcm9tTm9kZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvaHRtbFwiO1xuXG5jb25zdCB7IGJhY2t3YXJkc0ZvckVhY2ggfSA9IGFycmF5VXRpbGl0aWVzO1xuXG5leHBvcnQgZnVuY3Rpb24gZ3JvdXBIVE1MTm9kZXMoaHRtbE5vZGVzKSB7XG4gIGNvbnN0IGdyb3VwZWRIVE1MTm9kZXNBcnJheSA9IFtdO1xuXG4gIGxldCBncm91cGVkSFRNTE5vZGVzID0gW107XG5cbiAgaHRtbE5vZGVzLmZvckVhY2goKGh0bWxOb2RlKSA9PiB7XG4gICAgY29uc3QgaHRtbE5vZGVGb290bm90ZUhUTUxOb2RlID0gKGh0bWxOb2RlIGluc3RhbmNlb2YgRm9vdG5vdGVIVE1MTm9kZSk7XG5cbiAgICBpZiAoIWh0bWxOb2RlRm9vdG5vdGVIVE1MTm9kZSkge1xuICAgICAgY29uc3QgZ3JvdXBlZEhUTUxOb2RlTGVuZ3RoID0gZ3JvdXBlZEhUTUxOb2Rlcy5sZW5ndGg7XG5cbiAgICAgIGlmIChncm91cGVkSFRNTE5vZGVMZW5ndGggPiAwKSB7XG4gICAgICAgIGdyb3VwZWRIVE1MTm9kZXNBcnJheS5wdXNoKGdyb3VwZWRIVE1MTm9kZXMpO1xuXG4gICAgICAgIGdyb3VwZWRIVE1MTm9kZXMgPSBbXTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBncm91cGVkSFRNTE5vZGUgPSBodG1sTm9kZTsgLy8vXG5cbiAgICBncm91cGVkSFRNTE5vZGVzLnB1c2goZ3JvdXBlZEhUTUxOb2RlKTtcbiAgfSk7XG5cbiAgY29uc3QgZ3JvdXBlZEhUTUxOb2RlTGVuZ3RoID0gZ3JvdXBlZEhUTUxOb2Rlcy5sZW5ndGg7XG5cbiAgaWYgKGdyb3VwZWRIVE1MTm9kZUxlbmd0aCkge1xuICAgIGdyb3VwZWRIVE1MTm9kZXNBcnJheS5wdXNoKGdyb3VwZWRIVE1MTm9kZXMpO1xuICB9XG5cbiAgcmV0dXJuIGdyb3VwZWRIVE1MTm9kZXNBcnJheTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZUhUTUxOb2Rlcyhub2RlKSB7XG4gIGNvbnN0IGh0bWxOb2RlcyA9IGh0bWxOb2Rlc0Zyb21Ob2RlKG5vZGUpO1xuXG4gIGh0bWxOb2Rlcy5mb3JFYWNoKChodG1sTm9kZSkgPT4ge1xuICAgIGNvbnN0IGh0bWxUcmFuc2Zvcm0gPSBIVE1MVHJhbnNmb3JtLmZyb21IVE1MTm9kZShodG1sTm9kZSk7XG5cbiAgICBodG1sVHJhbnNmb3JtLnJlbW92ZSgpO1xuICB9KTtcblxuICByZXR1cm4gaHRtbE5vZGVzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYWRkRm9vdG5vdGVIVE1MTm9kZXMoZm9vdG5vdGVIVE1MVHJhbnNmb3Jtcywgbm9kZSwgY29udGV4dCkge1xuICBjb25zdCBmb290bm90ZUxpbmtIVE1MTm9kZXMgPSBmb290bm90ZUxpbmtIVE1MTm9kZXNGcm9tTm9kZShub2RlKSxcbiAgICAgICAgZm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybXMgPSBmb290bm90ZUxpbmtIVE1MVHJhbnNmb3Jtc0Zyb21Gb290bm90ZUxpbmtIVE1MTm9kZXMoZm9vdG5vdGVMaW5rSFRNTE5vZGVzKTtcblxuICBiYWNrd2FyZHNGb3JFYWNoKGZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm1zLCAoZm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybSkgPT4ge1xuICAgIGNvbnN0IGlkZW50aWZpZXIgPSBmb290bm90ZUxpbmtIVE1MVHJhbnNmb3JtLmlkZW50aWZpZXIoY29udGV4dCksXG4gICAgICAgICAgZm9vdG5vdGVIVE1MVHJhbnNmb3JtID0gZm9vdG5vdGVIVE1MVHJhbnNmb3Jtcy5maW5kKChmb290bm90ZUhUTUxUcmFuc2Zvcm0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlkZW50aWZpZXJNYXRjaGVzID0gZm9vdG5vdGVIVE1MVHJhbnNmb3JtLm1hdGNoSWRlbnRpZmllcihpZGVudGlmaWVyLCBjb250ZXh0KTtcblxuICAgICAgICAgICAgaWYgKGlkZW50aWZpZXJNYXRjaGVzKSB7XG4gICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pIHx8IG51bGw7XG5cbiAgICBpZiAoZm9vdG5vdGVIVE1MVHJhbnNmb3JtICE9PSBudWxsKSB7XG4gICAgICBmb290bm90ZUhUTUxUcmFuc2Zvcm0uYWRkQWZ0ZXJGb290bm90ZUxpbmtIVE1MVHJhbnNmb3JtKGZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm0pO1xuICAgIH1cbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVGb290bm90ZUhUTUxOb2Rlcyhub2RlKSB7XG4gIGNvbnN0IGZvb3Rub3RlSFRNTE5vZGVzID0gZm9vdG5vdGVIVE1MTm9kZXNGcm9tTm9kZShub2RlKSxcbiAgICAgICAgZm9vdG5vdGVIVE1MVHJhbnNmb3JtcyA9IGZvb3Rub3RlSFRNTFRyYW5zZm9ybXNGcm9tRm9vdG5vdGVIVE1MTm9kZXMoZm9vdG5vdGVIVE1MTm9kZXMpO1xuXG4gIGZvb3Rub3RlSFRNTFRyYW5zZm9ybXMuZm9yRWFjaCgoZm9vdG5vdGVIVE1MVHJhbnNmb3JtKSA9PiB7XG4gICAgZm9vdG5vdGVIVE1MVHJhbnNmb3JtLnJlbW92ZSgpO1xuICB9KTtcblxuICByZXR1cm4gZm9vdG5vdGVIVE1MVHJhbnNmb3Jtcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBhZ2luYXRlR3JvdXBlZEhUTUxOb2Rlcyhncm91cGVkSFRNTE5vZGVzQXJyYXksIGNvbnRleHQpIHtcbiAgY29uc3QgcGFnaW5hdGVkSFRNTE5vZGVzQXJyYXkgPSBbXTtcblxuICBjb25zdCB7IG1heGltdW1QYWdlTGluZXMgPSBERUZBVUxUX01BWElNVU1fUEFHRV9MSU5FUyB9ID0gY29udGV4dDtcblxuICBsZXQgcGFnZUxpbmVzID0gMCxcbiAgICAgIHBhZ2luYXRlZEhUTUxOb2RlcyA9IFtdO1xuXG4gIGdyb3VwZWRIVE1MTm9kZXNBcnJheS5mb3JFYWNoKChncm91cGVkSFRNTE5vZGVzKSA9PiB7XG4gICAgY29uc3QgZ3JvdXBMaW5lcyA9IGdyb3VwZWRIVE1MTm9kZXMucmVkdWNlKChncm91cExpbmVzLCBncm91cGVkSFRNTE5vZGUpID0+IHtcbiAgICAgIGNvbnN0IGxpbmVzID0gZ3JvdXBlZEhUTUxOb2RlLmxpbmVzKGNvbnRleHQpO1xuXG4gICAgICBncm91cExpbmVzICs9IGxpbmVzO1xuXG4gICAgICByZXR1cm4gZ3JvdXBMaW5lcztcbiAgICB9LCAwKTtcblxuICAgIGNvbnN0IHBhZ2luYXRlZEhUTUxOb2Rlc0xlbmd0aCA9IHBhZ2luYXRlZEhUTUxOb2Rlcy5sZW5ndGg7XG5cbiAgICBpZiAocGFnaW5hdGVkSFRNTE5vZGVzTGVuZ3RoID4gMCkge1xuICAgICAgaWYgKHBhZ2VMaW5lcyArIGdyb3VwTGluZXMgPiBtYXhpbXVtUGFnZUxpbmVzKSB7XG4gICAgICAgIHBhZ2luYXRlZEhUTUxOb2Rlc0FycmF5LnB1c2gocGFnaW5hdGVkSFRNTE5vZGVzKTtcblxuICAgICAgICBwYWdlTGluZXMgPSAwO1xuXG4gICAgICAgIHBhZ2luYXRlZEhUTUxOb2RlcyA9IFtdO1xuICAgICAgfVxuICAgIH1cblxuICAgIHBhZ2luYXRlZEhUTUxOb2Rlcy5wdXNoKC4uLmdyb3VwZWRIVE1MTm9kZXMpO1xuXG4gICAgcGFnZUxpbmVzICs9IGdyb3VwTGluZXM7XG4gIH0pO1xuXG4gIGNvbnN0IHBhZ2luYXRlZEhUTUxOb2Rlc0xlbmd0aCA9IHBhZ2luYXRlZEhUTUxOb2Rlcy5sZW5ndGg7XG5cbiAgaWYgKHBhZ2luYXRlZEhUTUxOb2Rlc0xlbmd0aCkge1xuICAgIHBhZ2luYXRlZEhUTUxOb2Rlc0FycmF5LnB1c2gocGFnaW5hdGVkSFRNTE5vZGVzKTtcbiAgfVxuXG4gIHJldHVybiBwYWdpbmF0ZWRIVE1MTm9kZXNBcnJheTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG51bWJlckZvb3Rub3RlTGlua0hUTUxOb2Rlcyhmb290bm90ZUhUTUxUcmFuc2Zvcm1zLCBpZGVudGlmaWVyTWFwLCBub2RlLCBjb250ZXh0KSB7XG4gIGNvbnN0IGZvb3Rub3RlTGlua0hUTUxOb2RlcyA9IGZvb3Rub3RlTGlua0hUTUxOb2Rlc0Zyb21Ob2RlKG5vZGUpLFxuICAgICAgICBpZGVudGlmaWVycyA9IE9iamVjdC5rZXlzKGlkZW50aWZpZXJNYXApLFxuICAgICAgICBpZGVudGlmaWVyc0xlbmd0aCA9IGlkZW50aWZpZXJzLmxlbmd0aCxcbiAgICAgICAgc3RhcnQgPSBpZGVudGlmaWVyc0xlbmd0aCArIDE7XG5cbiAgZm9vdG5vdGVIVE1MVHJhbnNmb3Jtcy5mb3JFYWNoKChmb290bm90ZUhUTUxUcmFuc2Zvcm0sIGluZGV4KSA9PiB7XG4gICAgY29uc3QgaWRlbnRpZmllciA9IGZvb3Rub3RlSFRNTFRyYW5zZm9ybS5pZGVudGlmaWVyKGNvbnRleHQpLFxuICAgICAgICAgIG51bWJlciA9IHN0YXJ0ICsgaW5kZXg7XG5cbiAgICBpZGVudGlmaWVyTWFwW2lkZW50aWZpZXJdID0gbnVtYmVyO1xuICB9KTtcblxuICBmb290bm90ZUxpbmtIVE1MTm9kZXMuZm9yRWFjaCgoZm9vdG5vdGVMaW5rSFRNTE5vZGUpID0+IHtcbiAgICBjb25zdCBpZGVudGlmaWVyID0gZm9vdG5vdGVMaW5rSFRNTE5vZGUuaWRlbnRpZmllcihjb250ZXh0KSxcbiAgICAgICAgICBudW1iZXIgPSBpZGVudGlmaWVyTWFwW2lkZW50aWZpZXJdO1xuXG4gICAgZm9vdG5vdGVMaW5rSFRNTE5vZGUuc2V0TnVtYmVyKG51bWJlcik7XG4gIH0pXG5cbiAgcmV0dXJuIHN0YXJ0O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlRm9vdG5vdGVzRGlyZWN0aXZlSFRNTE5vZGUobm9kZSkge1xuICBjb25zdCBmb290bm90ZXNEaXJlY3RpdmVIVE1MTm9kZSA9IGZvb3Rub3Rlc0RpcmVjdGl2ZUhUTUxOb2RlRnJvbU5vZGUobm9kZSk7XG5cbiAgaWYgKGZvb3Rub3Rlc0RpcmVjdGl2ZUhUTUxOb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgZm9vdG5vdGVzRGlyZWN0aXZlSFRNTFRyYW5zZm9ybSA9IEZvb3Rub3Rlc0RpcmVjdGl2ZUhUTUxUcmFuc2Zvcm0uZnJvbUZvb3Rub3Rlc0RpcmVjdGl2ZUhUTUxOb2RlKGZvb3Rub3Rlc0RpcmVjdGl2ZUhUTUxOb2RlKTtcblxuICAgIGZvb3Rub3Rlc0RpcmVjdGl2ZUhUTUxUcmFuc2Zvcm0ucmVtb3ZlKCk7XG4gIH1cblxuICByZXR1cm4gZm9vdG5vdGVzRGlyZWN0aXZlSFRNTE5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVQYWdlTnVtYmVyRGlyZWN0aXZlSFRNTE5vZGUobm9kZSkge1xuICBsZXQgcGFnZU51bWJlckRpcmVjdGl2ZUhUTkxUcmFuc2Zvcm0gPSBudWxsO1xuXG4gIGNvbnN0IHBhZ2VOdW1iZXJEaXJlY3RpdmVIVE1MTm9kZSA9IHBhZ2VOdW1iZXJEaXJlY3RpdmVIVE1MTm9kZUZyb21Ob2RlKG5vZGUpO1xuXG4gIGlmIChwYWdlTnVtYmVyRGlyZWN0aXZlSFRNTE5vZGUgIT09IG51bGwpIHtcbiAgICBwYWdlTnVtYmVyRGlyZWN0aXZlSFROTFRyYW5zZm9ybSA9IFBhZ2VOdW1iZXJEaXJlY3RpdmVIVE1MVHJhbnNmb3JtLmZyb21QYWdlTnVtYmVyRGlyZWN0aXZlSFRNTE5vZGUocGFnZU51bWJlckRpcmVjdGl2ZUhUTUxOb2RlKTtcblxuICAgIHBhZ2VOdW1iZXJEaXJlY3RpdmVIVE5MVHJhbnNmb3JtLnJlbW92ZSgpO1xuICB9XG5cbiAgcmV0dXJuIHBhZ2VOdW1iZXJEaXJlY3RpdmVIVE5MVHJhbnNmb3JtO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlTmVzdGVkRm9vdG5vdGVMaW5rSFRNTE5vZGVzKG5vZGUpIHtcbiAgY29uc3QgbmVzdGVkRm9vdG5vdGVMaW5rSFRNTE5vZGVzID0gbmVzdGVkRm9vdG5vdGVMaW5rSFRNTE5vZGVzRnJvbU5vZGUobm9kZSksXG4gICAgICAgIG5lc3RlZEZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm1zID0gbmVzdGVkRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybXNGcm9tTmVzdGVkRm9vdG5vdGVMaW5rSFRNTE5vZGVzKG5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2Rlcyk7XG5cbiAgbmVzdGVkRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybXMuZm9yRWFjaCgobmVzdGVkRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybSkgPT4ge1xuICAgIG5lc3RlZEZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm0ucmVtb3ZlKCk7XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbGluZUhUTUxUcmFuc2Zvcm1zRnJvbUZvb3Rub3RlSFRNTFRyYW5zZm9ybXMoZm9vdG5vdGVIVE1MVHJhbnNmb3Jtcykge1xuICBjb25zdCBsaW5lSFRNTFRyYW5zZm9ybXMgPSBmb290bm90ZUhUTUxUcmFuc2Zvcm1zLm1hcCgoZm9vdG5vdGVIVE1MVHJhbnNmb3JtKSA9PiB7XG4gICAgY29uc3QgbGluZUhUTUxUcmFuc2Zvcm0gPSBMaW5lSFRNTFRyYW5zZm9ybS5mcm9tRm9vdG5vdGVIVE1MVHJhbnNmb3JtKGZvb3Rub3RlSFRNTFRyYW5zZm9ybSk7XG5cbiAgICByZXR1cm4gbGluZUhUTUxUcmFuc2Zvcm07XG4gIH0pO1xuXG4gIHJldHVybiBsaW5lSFRNTFRyYW5zZm9ybXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb290bm90ZUl0ZW1IVE1MVHJhbnNmb3Jtc0Zyb21MaW5lSFRNTFRyYW5zZm9ybXMobGluZUhUTUxUcmFuc2Zvcm1zLCBpZGVudGlmaWVyTWFwLCBzdGFydCkge1xuICBjb25zdCBudW1iZXJzID0gT2JqZWN0LnZhbHVlcyhpZGVudGlmaWVyTWFwKSxcbiAgICAgICAgaWRlbnRpZmllcnMgPSBPYmplY3Qua2V5cyhpZGVudGlmaWVyTWFwKSxcbiAgICAgICAgZm9vdG5vdGVJdGVtSFRNTFRyYW5zZm9ybXMgPSBsaW5lSFRNTFRyYW5zZm9ybXMubWFwKChsaW5lSFRNTFRyYW5zZm9ybSwgaW5kZXgpID0+IHtcbiAgICAgICAgICBjb25zdCBudW1iZXIgPSBzdGFydCArIGluZGV4O1xuXG4gICAgICAgICAgaW5kZXggPSBudW1iZXJzLmluZGV4T2YobnVtYmVyKTtcblxuICAgICAgICAgIGNvbnN0IGlkZW50aWZpZXIgPSBpZGVudGlmaWVyc1tpbmRleF0sXG4gICAgICAgICAgICAgICAgZm9vdG5vdGVJdGVtSFRNTFRyYW5zZm9ybSA9IEZvb3Rub3RlSXRlbUhUTUxUcmFuc2Zvcm0uZnJvbUxpbmVUTUxUcmFuc2Zvcm1BbmRJZGVudGlmaWVyKGxpbmVIVE1MVHJhbnNmb3JtLCBpZGVudGlmaWVyKTtcblxuICAgICAgICAgIHJldHVybiBmb290bm90ZUl0ZW1IVE1MVHJhbnNmb3JtO1xuICAgICAgICB9KTtcblxuICByZXR1cm4gZm9vdG5vdGVJdGVtSFRNTFRyYW5zZm9ybXM7XG59XG5cbmZ1bmN0aW9uIGZvb3Rub3RlSFRNTFRyYW5zZm9ybXNGcm9tRm9vdG5vdGVIVE1MTm9kZXMoZm9vdG5vdGVIVE1MTm9kZXMpIHtcbiAgY29uc3QgZm9vdG5vdGVIVE1MVHJhbnNmb3JtcyA9IGZvb3Rub3RlSFRNTE5vZGVzLm1hcCgoZm9vdG5vdGVIVE1MTm9kZSkgPT4ge1xuICAgIGNvbnN0IGZvb3Rub3RlSFRNTFRyYW5zZm9ybSA9IEZvb3Rub3RlSFRNTFRyYW5zZm9ybS5mcm9tRm9vdG5vdGVIVE1MTm9kZShmb290bm90ZUhUTUxOb2RlKTtcblxuICAgIHJldHVybiBmb290bm90ZUhUTUxUcmFuc2Zvcm07XG4gIH0pO1xuXG4gIHJldHVybiBmb290bm90ZUhUTUxUcmFuc2Zvcm1zO1xufVxuXG5mdW5jdGlvbiBmb290bm90ZUxpbmtIVE1MVHJhbnNmb3Jtc0Zyb21Gb290bm90ZUxpbmtIVE1MTm9kZXMoZm9vdG5vdGVMaW5rSFRNTE5vZGVzKSB7XG4gIGNvbnN0IGZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm1zID0gZm9vdG5vdGVMaW5rSFRNTE5vZGVzLm1hcCgoZm9vdG5vdGVMaW5rSFRNTE5vZGUpID0+IHtcbiAgICBjb25zdCBmb290bm90ZUxpbmtIVE1MVHJhbnNmb3JtID0gRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybS5mcm9tRm9vdG5vdGVMaW5rSFRNTE5vZGUoZm9vdG5vdGVMaW5rSFRNTE5vZGUpO1xuXG4gICAgcmV0dXJuIGZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm07XG4gIH0pO1xuXG4gIHJldHVybiBmb290bm90ZUxpbmtIVE1MVHJhbnNmb3Jtcztcbn1cblxuZnVuY3Rpb24gbmVzdGVkRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybXNGcm9tTmVzdGVkRm9vdG5vdGVMaW5rSFRNTE5vZGVzKG5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2Rlcykge1xuICBjb25zdCBuZXN0ZWRGb290bm90ZUxpbmtIVE1MVHJhbnNmb3JtcyA9IG5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2Rlcy5tYXAoKG5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2RlKSA9PiB7XG4gICAgY29uc3QgbmVzdGVkRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybSA9IE5lc3RlZEZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm0uZnJvbU5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2RlKG5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2RlKTtcblxuICAgIHJldHVybiBuZXN0ZWRGb290bm90ZUxpbmtIVE1MVHJhbnNmb3JtO1xuICB9KTtcblxuICByZXR1cm4gbmVzdGVkRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybXM7XG59XG4iXSwibmFtZXMiOlsiYWRkRm9vdG5vdGVIVE1MTm9kZXMiLCJmb290bm90ZUl0ZW1IVE1MVHJhbnNmb3Jtc0Zyb21MaW5lSFRNTFRyYW5zZm9ybXMiLCJncm91cEhUTUxOb2RlcyIsImxpbmVIVE1MVHJhbnNmb3Jtc0Zyb21Gb290bm90ZUhUTUxUcmFuc2Zvcm1zIiwibnVtYmVyRm9vdG5vdGVMaW5rSFRNTE5vZGVzIiwicGFnaW5hdGVHcm91cGVkSFRNTE5vZGVzIiwicmVtb3ZlRm9vdG5vdGVIVE1MTm9kZXMiLCJyZW1vdmVGb290bm90ZXNEaXJlY3RpdmVIVE1MTm9kZSIsInJlbW92ZUhUTUxOb2RlcyIsInJlbW92ZU5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2RlcyIsInJlbW92ZVBhZ2VOdW1iZXJEaXJlY3RpdmVIVE1MTm9kZSIsImJhY2t3YXJkc0ZvckVhY2giLCJhcnJheVV0aWxpdGllcyIsImh0bWxOb2RlcyIsImdyb3VwZWRIVE1MTm9kZXNBcnJheSIsImdyb3VwZWRIVE1MTm9kZXMiLCJmb3JFYWNoIiwiaHRtbE5vZGUiLCJodG1sTm9kZUZvb3Rub3RlSFRNTE5vZGUiLCJGb290bm90ZUhUTUxOb2RlIiwiZ3JvdXBlZEhUTUxOb2RlTGVuZ3RoIiwibGVuZ3RoIiwicHVzaCIsImdyb3VwZWRIVE1MTm9kZSIsIm5vZGUiLCJodG1sTm9kZXNGcm9tTm9kZSIsImh0bWxUcmFuc2Zvcm0iLCJIVE1MVHJhbnNmb3JtIiwiZnJvbUhUTUxOb2RlIiwicmVtb3ZlIiwiZm9vdG5vdGVIVE1MVHJhbnNmb3JtcyIsImNvbnRleHQiLCJmb290bm90ZUxpbmtIVE1MTm9kZXMiLCJmb290bm90ZUxpbmtIVE1MTm9kZXNGcm9tTm9kZSIsImZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm1zIiwiZm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybXNGcm9tRm9vdG5vdGVMaW5rSFRNTE5vZGVzIiwiZm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybSIsImlkZW50aWZpZXIiLCJmb290bm90ZUhUTUxUcmFuc2Zvcm0iLCJmaW5kIiwiaWRlbnRpZmllck1hdGNoZXMiLCJtYXRjaElkZW50aWZpZXIiLCJhZGRBZnRlckZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm0iLCJmb290bm90ZUhUTUxOb2RlcyIsImZvb3Rub3RlSFRNTE5vZGVzRnJvbU5vZGUiLCJmb290bm90ZUhUTUxUcmFuc2Zvcm1zRnJvbUZvb3Rub3RlSFRNTE5vZGVzIiwicGFnaW5hdGVkSFRNTE5vZGVzQXJyYXkiLCJtYXhpbXVtUGFnZUxpbmVzIiwiREVGQVVMVF9NQVhJTVVNX1BBR0VfTElORVMiLCJwYWdlTGluZXMiLCJwYWdpbmF0ZWRIVE1MTm9kZXMiLCJncm91cExpbmVzIiwicmVkdWNlIiwibGluZXMiLCJwYWdpbmF0ZWRIVE1MTm9kZXNMZW5ndGgiLCJpZGVudGlmaWVyTWFwIiwiaWRlbnRpZmllcnMiLCJPYmplY3QiLCJrZXlzIiwiaWRlbnRpZmllcnNMZW5ndGgiLCJzdGFydCIsImluZGV4IiwibnVtYmVyIiwiZm9vdG5vdGVMaW5rSFRNTE5vZGUiLCJzZXROdW1iZXIiLCJmb290bm90ZXNEaXJlY3RpdmVIVE1MTm9kZSIsImZvb3Rub3Rlc0RpcmVjdGl2ZUhUTUxOb2RlRnJvbU5vZGUiLCJmb290bm90ZXNEaXJlY3RpdmVIVE1MVHJhbnNmb3JtIiwiRm9vdG5vdGVzRGlyZWN0aXZlSFRNTFRyYW5zZm9ybSIsImZyb21Gb290bm90ZXNEaXJlY3RpdmVIVE1MTm9kZSIsInBhZ2VOdW1iZXJEaXJlY3RpdmVIVE5MVHJhbnNmb3JtIiwicGFnZU51bWJlckRpcmVjdGl2ZUhUTUxOb2RlIiwicGFnZU51bWJlckRpcmVjdGl2ZUhUTUxOb2RlRnJvbU5vZGUiLCJQYWdlTnVtYmVyRGlyZWN0aXZlSFRNTFRyYW5zZm9ybSIsImZyb21QYWdlTnVtYmVyRGlyZWN0aXZlSFRNTE5vZGUiLCJuZXN0ZWRGb290bm90ZUxpbmtIVE1MTm9kZXMiLCJuZXN0ZWRGb290bm90ZUxpbmtIVE1MTm9kZXNGcm9tTm9kZSIsIm5lc3RlZEZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm1zIiwibmVzdGVkRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybXNGcm9tTmVzdGVkRm9vdG5vdGVMaW5rSFRNTE5vZGVzIiwibmVzdGVkRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybSIsImxpbmVIVE1MVHJhbnNmb3JtcyIsIm1hcCIsImxpbmVIVE1MVHJhbnNmb3JtIiwiTGluZUhUTUxUcmFuc2Zvcm0iLCJmcm9tRm9vdG5vdGVIVE1MVHJhbnNmb3JtIiwibnVtYmVycyIsInZhbHVlcyIsImZvb3Rub3RlSXRlbUhUTUxUcmFuc2Zvcm1zIiwiaW5kZXhPZiIsImZvb3Rub3RlSXRlbUhUTUxUcmFuc2Zvcm0iLCJGb290bm90ZUl0ZW1IVE1MVHJhbnNmb3JtIiwiZnJvbUxpbmVUTUxUcmFuc2Zvcm1BbmRJZGVudGlmaWVyIiwiZm9vdG5vdGVIVE1MTm9kZSIsIkZvb3Rub3RlSFRNTFRyYW5zZm9ybSIsImZyb21Gb290bm90ZUhUTUxOb2RlIiwiRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybSIsImZyb21Gb290bm90ZUxpbmtIVE1MTm9kZSIsIm5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2RlIiwiTmVzdGVkRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybSIsImZyb21OZXN0ZWRGb290bm90ZUxpbmtIVE1MTm9kZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O1FBb0VnQkE7ZUFBQUE7O1FBOElBQztlQUFBQTs7UUExTEFDO2VBQUFBOztRQWdMQUM7ZUFBQUE7O1FBMURBQztlQUFBQTs7UUEzQ0FDO2VBQUFBOztRQVhBQztlQUFBQTs7UUE2RUFDO2VBQUFBOztRQTdHQUM7ZUFBQUE7O1FBdUlBQztlQUFBQTs7UUFkQUM7ZUFBQUE7Ozt5QkEvS2U7MkRBRUw7K0RBQ0c7MkRBQ0M7Z0VBQ0k7Z0VBQ0k7Z0VBQ0E7cUVBQ007Z0VBQ0E7aUVBQ0M7eUJBRUY7cUJBTVM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXBELElBQU0sQUFBRUMsbUJBQXFCQyx5QkFBYyxDQUFuQ0Q7QUFFRCxTQUFTVCxlQUFlVyxTQUFTO0lBQ3RDLElBQU1DLHdCQUF3QixFQUFFO0lBRWhDLElBQUlDLG1CQUFtQixFQUFFO0lBRXpCRixVQUFVRyxPQUFPLENBQUMsU0FBQ0M7UUFDakIsSUFBTUMsMkJBQTRCRCxBQUFRLFlBQVJBLFVB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
247
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZGl2aXNpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IGFycmF5VXRpbGl0aWVzIH0gZnJvbSBcIm5lY2Vzc2FyeVwiO1xuXG5pbXBvcnQgSFRNTFRyYW5zZm9ybSBmcm9tIFwiLi4vdHJhbnNmb3JtL2h0bWxcIjtcbmltcG9ydCBGb290bm90ZUhUTUxOb2RlIGZyb20gXCIuLi9ub2RlL2h0bWwvZm9vdG5vdGVcIjtcbmltcG9ydCBMaW5lSFRNTFRyYW5zZm9ybSBmcm9tIFwiLi4vdHJhbnNmb3JtL2h0bWwvbGluZVwiO1xuaW1wb3J0IEZvb3Rub3RlSFRNTFRyYW5zZm9ybSBmcm9tIFwiLi4vdHJhbnNmb3JtL2h0bWwvZm9vdG5vdGVcIjtcbmltcG9ydCBGb290bm90ZUl0ZW1IVE1MVHJhbnNmb3JtIGZyb20gXCIuLi90cmFuc2Zvcm0vaHRtbC9pdGVtL2Zvb3Rub3RlXCI7XG5pbXBvcnQgRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybSBmcm9tIFwiLi4vdHJhbnNmb3JtL2h0bWwvbGluay9mb290bm90ZVwiO1xuaW1wb3J0IE5lc3RlZEZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm0gZnJvbSBcIi4uL3RyYW5zZm9ybS9odG1sL2xpbmsvbmVzdGVkRm9vdG5vdGVcIjtcbmltcG9ydCBGb290bm90ZXNEaXJlY3RpdmVIVE1MVHJhbnNmb3JtIGZyb20gXCIuLi90cmFuc2Zvcm0vaHRtbC9kaXJlY3RpdmUvZm9vdG5vdGVzXCI7XG5pbXBvcnQgUGFnZU51bWJlckRpcmVjdGl2ZUhUTUxUcmFuc2Zvcm0gZnJvbSBcIi4uL3RyYW5zZm9ybS9odG1sL2RpcmVjdGl2ZS9wYWdlTnVtYmVyXCI7XG5cbmltcG9ydCB7IERFRkFVTFRfTUFYSU1VTV9QQUdFX0xJTkVTIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgaHRtbE5vZGVzRnJvbU5vZGUsXG4gICAgICAgICBmb290bm90ZUhUTUxOb2Rlc0Zyb21Ob2RlLFxuICAgICAgICAgZm9vdG5vdGVMaW5rSFRNTE5vZGVzRnJvbU5vZGUsXG4gICAgICAgICBmb290bm90ZXNEaXJlY3RpdmVIVE1MTm9kZUZyb21Ob2RlLFxuICAgICAgICAgbmVzdGVkRm9vdG5vdGVMaW5rSFRNTE5vZGVzRnJvbU5vZGUsXG4gICAgICAgICBwYWdlTnVtYmVyRGlyZWN0aXZlSFRNTE5vZGVGcm9tTm9kZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvaHRtbFwiO1xuXG5jb25zdCB7IGJhY2t3YXJkc0ZvckVhY2ggfSA9IGFycmF5VXRpbGl0aWVzO1xuXG5leHBvcnQgZnVuY3Rpb24gZ3JvdXBIVE1MTm9kZXMoaHRtbE5vZGVzKSB7XG4gIGNvbnN0IGdyb3VwZWRIVE1MTm9kZXNBcnJheSA9IFtdO1xuXG4gIGxldCBncm91cGVkSFRNTE5vZGVzID0gW107XG5cbiAgaHRtbE5vZGVzLmZvckVhY2goKGh0bWxOb2RlKSA9PiB7XG4gICAgY29uc3QgaHRtbE5vZGVGb290bm90ZUhUTUxOb2RlID0gKGh0bWxOb2RlIGluc3RhbmNlb2YgRm9vdG5vdGVIVE1MTm9kZSk7XG5cbiAgICBpZiAoIWh0bWxOb2RlRm9vdG5vdGVIVE1MTm9kZSkge1xuICAgICAgY29uc3QgZ3JvdXBlZEhUTUxOb2RlTGVuZ3RoID0gZ3JvdXBlZEhUTUxOb2Rlcy5sZW5ndGg7XG5cbiAgICAgIGlmIChncm91cGVkSFRNTE5vZGVMZW5ndGggPiAwKSB7XG4gICAgICAgIGdyb3VwZWRIVE1MTm9kZXNBcnJheS5wdXNoKGdyb3VwZWRIVE1MTm9kZXMpO1xuXG4gICAgICAgIGdyb3VwZWRIVE1MTm9kZXMgPSBbXTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBncm91cGVkSFRNTE5vZGUgPSBodG1sTm9kZTsgLy8vXG5cbiAgICBncm91cGVkSFRNTE5vZGVzLnB1c2goZ3JvdXBlZEhUTUxOb2RlKTtcbiAgfSk7XG5cbiAgY29uc3QgZ3JvdXBlZEhUTUxOb2RlTGVuZ3RoID0gZ3JvdXBlZEhUTUxOb2Rlcy5sZW5ndGg7XG5cbiAgaWYgKGdyb3VwZWRIVE1MTm9kZUxlbmd0aCkge1xuICAgIGdyb3VwZWRIVE1MTm9kZXNBcnJheS5wdXNoKGdyb3VwZWRIVE1MTm9kZXMpO1xuICB9XG5cbiAgcmV0dXJuIGdyb3VwZWRIVE1MTm9kZXNBcnJheTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZUhUTUxOb2Rlcyhub2RlKSB7XG4gIGNvbnN0IGh0bWxOb2RlcyA9IGh0bWxOb2Rlc0Zyb21Ob2RlKG5vZGUpO1xuXG4gIGh0bWxOb2Rlcy5mb3JFYWNoKChodG1sTm9kZSkgPT4ge1xuICAgIGNvbnN0IGh0bWxUcmFuc2Zvcm0gPSBIVE1MVHJhbnNmb3JtLmZyb21IVE1MTm9kZShodG1sTm9kZSk7XG5cbiAgICBodG1sVHJhbnNmb3JtLnJlbW92ZSgpO1xuICB9KTtcblxuICByZXR1cm4gaHRtbE5vZGVzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYWRkRm9vdG5vdGVIVE1MTm9kZXMoZm9vdG5vdGVIVE1MVHJhbnNmb3Jtcywgbm9kZSwgY29udGV4dCkge1xuICBjb25zdCBmb290bm90ZUxpbmtIVE1MTm9kZXMgPSBmb290bm90ZUxpbmtIVE1MTm9kZXNGcm9tTm9kZShub2RlKSxcbiAgICAgICAgZm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybXMgPSBmb290bm90ZUxpbmtIVE1MVHJhbnNmb3Jtc0Zyb21Gb290bm90ZUxpbmtIVE1MTm9kZXMoZm9vdG5vdGVMaW5rSFRNTE5vZGVzKTtcblxuICBiYWNrd2FyZHNGb3JFYWNoKGZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm1zLCAoZm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybSkgPT4ge1xuICAgIGNvbnN0IGlkZW50aWZpZXIgPSBmb290bm90ZUxpbmtIVE1MVHJhbnNmb3JtLmlkZW50aWZpZXIoY29udGV4dCksXG4gICAgICAgICAgZm9vdG5vdGVIVE1MVHJhbnNmb3JtID0gZm9vdG5vdGVIVE1MVHJhbnNmb3Jtcy5maW5kKChmb290bm90ZUhUTUxUcmFuc2Zvcm0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlkZW50aWZpZXJNYXRjaGVzID0gZm9vdG5vdGVIVE1MVHJhbnNmb3JtLm1hdGNoSWRlbnRpZmllcihpZGVudGlmaWVyLCBjb250ZXh0KTtcblxuICAgICAgICAgICAgaWYgKGlkZW50aWZpZXJNYXRjaGVzKSB7XG4gICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pIHx8IG51bGw7XG5cbiAgICBpZiAoZm9vdG5vdGVIVE1MVHJhbnNmb3JtICE9PSBudWxsKSB7XG4gICAgICBmb290bm90ZUhUTUxUcmFuc2Zvcm0uYWRkQWZ0ZXJGb290bm90ZUxpbmtIVE1MVHJhbnNmb3JtKGZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm0pO1xuICAgIH1cbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVGb290bm90ZUhUTUxOb2Rlcyhub2RlKSB7XG4gIGNvbnN0IGZvb3Rub3RlSFRNTE5vZGVzID0gZm9vdG5vdGVIVE1MTm9kZXNGcm9tTm9kZShub2RlKSxcbiAgICAgICAgZm9vdG5vdGVIVE1MVHJhbnNmb3JtcyA9IGZvb3Rub3RlSFRNTFRyYW5zZm9ybXNGcm9tRm9vdG5vdGVIVE1MTm9kZXMoZm9vdG5vdGVIVE1MTm9kZXMpO1xuXG4gIGZvb3Rub3RlSFRNTFRyYW5zZm9ybXMuZm9yRWFjaCgoZm9vdG5vdGVIVE1MVHJhbnNmb3JtKSA9PiB7XG4gICAgZm9vdG5vdGVIVE1MVHJhbnNmb3JtLnJlbW92ZSgpO1xuICB9KTtcblxuICByZXR1cm4gZm9vdG5vdGVIVE1MVHJhbnNmb3Jtcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBhZ2luYXRlR3JvdXBlZEhUTUxOb2Rlcyhncm91cGVkSFRNTE5vZGVzQXJyYXksIGNvbnRleHQpIHtcbiAgY29uc3QgcGFnaW5hdGVkSFRNTE5vZGVzQXJyYXkgPSBbXTtcblxuICBjb25zdCB7IG1heGltdW1QYWdlTGluZXMgPSBERUZBVUxUX01BWElNVU1fUEFHRV9MSU5FUyB9ID0gY29udGV4dDtcblxuICBsZXQgcGFnZUxpbmVzID0gMCxcbiAgICAgIHBhZ2luYXRlZEhUTUxOb2RlcyA9IFtdO1xuXG4gIGdyb3VwZWRIVE1MTm9kZXNBcnJheS5mb3JFYWNoKChncm91cGVkSFRNTE5vZGVzKSA9PiB7XG4gICAgY29uc3QgZ3JvdXBMaW5lcyA9IGdyb3VwZWRIVE1MTm9kZXMucmVkdWNlKChncm91cExpbmVzLCBncm91cGVkSFRNTE5vZGUpID0+IHtcbiAgICAgIGNvbnN0IGxpbmVzID0gZ3JvdXBlZEhUTUxOb2RlLmxpbmVzKGNvbnRleHQpO1xuXG4gICAgICBncm91cExpbmVzICs9IGxpbmVzO1xuXG4gICAgICByZXR1cm4gZ3JvdXBMaW5lcztcbiAgICB9LCAwKTtcblxuICAgIGNvbnN0IHBhZ2luYXRlZEhUTUxOb2Rlc0xlbmd0aCA9IHBhZ2luYXRlZEhUTUxOb2Rlcy5sZW5ndGg7XG5cbiAgICBpZiAocGFnaW5hdGVkSFRNTE5vZGVzTGVuZ3RoID4gMCkge1xuICAgICAgaWYgKHBhZ2VMaW5lcyArIGdyb3VwTGluZXMgPiBtYXhpbXVtUGFnZUxpbmVzKSB7XG4gICAgICAgIHBhZ2luYXRlZEhUTUxOb2Rlc0FycmF5LnB1c2gocGFnaW5hdGVkSFRNTE5vZGVzKTtcblxuICAgICAgICBwYWdlTGluZXMgPSAwO1xuXG4gICAgICAgIHBhZ2luYXRlZEhUTUxOb2RlcyA9IFtdO1xuICAgICAgfVxuICAgIH1cblxuICAgIHBhZ2luYXRlZEhUTUxOb2Rlcy5wdXNoKC4uLmdyb3VwZWRIVE1MTm9kZXMpO1xuXG4gICAgcGFnZUxpbmVzICs9IGdyb3VwTGluZXM7XG4gIH0pO1xuXG4gIGNvbnN0IHBhZ2luYXRlZEhUTUxOb2Rlc0xlbmd0aCA9IHBhZ2luYXRlZEhUTUxOb2Rlcy5sZW5ndGg7XG5cbiAgaWYgKHBhZ2luYXRlZEhUTUxOb2Rlc0xlbmd0aCkge1xuICAgIHBhZ2luYXRlZEhUTUxOb2Rlc0FycmF5LnB1c2gocGFnaW5hdGVkSFRNTE5vZGVzKTtcbiAgfVxuXG4gIHJldHVybiBwYWdpbmF0ZWRIVE1MTm9kZXNBcnJheTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG51bWJlckZvb3Rub3RlTGlua0hUTUxOb2Rlcyhmb290bm90ZUhUTUxUcmFuc2Zvcm1zLCBpZGVudGlmaWVyTWFwLCBub2RlLCBjb250ZXh0KSB7XG4gIGNvbnN0IGZvb3Rub3RlTGlua0hUTUxOb2RlcyA9IGZvb3Rub3RlTGlua0hUTUxOb2Rlc0Zyb21Ob2RlKG5vZGUpLFxuICAgICAgICBpZGVudGlmaWVycyA9IE9iamVjdC5rZXlzKGlkZW50aWZpZXJNYXApLFxuICAgICAgICBpZGVudGlmaWVyc0xlbmd0aCA9IGlkZW50aWZpZXJzLmxlbmd0aCxcbiAgICAgICAgc3RhcnQgPSBpZGVudGlmaWVyc0xlbmd0aCArIDE7XG5cbiAgZm9vdG5vdGVIVE1MVHJhbnNmb3Jtcy5mb3JFYWNoKChmb290bm90ZUhUTUxUcmFuc2Zvcm0sIGluZGV4KSA9PiB7XG4gICAgY29uc3QgaWRlbnRpZmllciA9IGZvb3Rub3RlSFRNTFRyYW5zZm9ybS5pZGVudGlmaWVyKGNvbnRleHQpLFxuICAgICAgICAgIG51bWJlciA9IHN0YXJ0ICsgaW5kZXg7XG5cbiAgICBpZGVudGlmaWVyTWFwW2lkZW50aWZpZXJdID0gbnVtYmVyO1xuICB9KTtcblxuICBmb290bm90ZUxpbmtIVE1MTm9kZXMuZm9yRWFjaCgoZm9vdG5vdGVMaW5rSFRNTE5vZGUpID0+IHtcbiAgICBjb25zdCBpZGVudGlmaWVyID0gZm9vdG5vdGVMaW5rSFRNTE5vZGUuaWRlbnRpZmllcihjb250ZXh0KSxcbiAgICAgICAgICBudW1iZXIgPSBpZGVudGlmaWVyTWFwW2lkZW50aWZpZXJdO1xuXG4gICAgZm9vdG5vdGVMaW5rSFRNTE5vZGUuc2V0TnVtYmVyKG51bWJlcik7XG4gIH0pXG5cbiAgcmV0dXJuIHN0YXJ0O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlRm9vdG5vdGVzRGlyZWN0aXZlSFRNTE5vZGUobm9kZSkge1xuICBjb25zdCBmb290bm90ZXNEaXJlY3RpdmVIVE1MTm9kZSA9IGZvb3Rub3Rlc0RpcmVjdGl2ZUhUTUxOb2RlRnJvbU5vZGUobm9kZSk7XG5cbiAgaWYgKGZvb3Rub3Rlc0RpcmVjdGl2ZUhUTUxOb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgZm9vdG5vdGVzRGlyZWN0aXZlSFRNTFRyYW5zZm9ybSA9IEZvb3Rub3Rlc0RpcmVjdGl2ZUhUTUxUcmFuc2Zvcm0uZnJvbUZvb3Rub3Rlc0RpcmVjdGl2ZUhUTUxOb2RlKGZvb3Rub3Rlc0RpcmVjdGl2ZUhUTUxOb2RlKTtcblxuICAgIGZvb3Rub3Rlc0RpcmVjdGl2ZUhUTUxUcmFuc2Zvcm0ucmVtb3ZlKCk7XG4gIH1cblxuICByZXR1cm4gZm9vdG5vdGVzRGlyZWN0aXZlSFRNTE5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVQYWdlTnVtYmVyRGlyZWN0aXZlSFRNTE5vZGUobm9kZSkge1xuICBsZXQgcGFnZU51bWJlckRpcmVjdGl2ZUhUTUxUcmFuc2Zvcm0gPSBudWxsO1xuXG4gIGNvbnN0IHBhZ2VOdW1iZXJEaXJlY3RpdmVIVE1MTm9kZSA9IHBhZ2VOdW1iZXJEaXJlY3RpdmVIVE1MTm9kZUZyb21Ob2RlKG5vZGUpO1xuXG4gIGlmIChwYWdlTnVtYmVyRGlyZWN0aXZlSFRNTE5vZGUgIT09IG51bGwpIHtcbiAgICBwYWdlTnVtYmVyRGlyZWN0aXZlSFRNTFRyYW5zZm9ybSA9IFBhZ2VOdW1iZXJEaXJlY3RpdmVIVE1MVHJhbnNmb3JtLmZyb21QYWdlTnVtYmVyRGlyZWN0aXZlSFRNTE5vZGUocGFnZU51bWJlckRpcmVjdGl2ZUhUTUxOb2RlKTtcblxuICAgIHBhZ2VOdW1iZXJEaXJlY3RpdmVIVE1MVHJhbnNmb3JtLnJlbW92ZSgpO1xuICB9XG5cbiAgcmV0dXJuIHBhZ2VOdW1iZXJEaXJlY3RpdmVIVE1MVHJhbnNmb3JtO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlTmVzdGVkRm9vdG5vdGVMaW5rSFRNTE5vZGVzKG5vZGUpIHtcbiAgY29uc3QgbmVzdGVkRm9vdG5vdGVMaW5rSFRNTE5vZGVzID0gbmVzdGVkRm9vdG5vdGVMaW5rSFRNTE5vZGVzRnJvbU5vZGUobm9kZSksXG4gICAgICAgIG5lc3RlZEZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm1zID0gbmVzdGVkRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybXNGcm9tTmVzdGVkRm9vdG5vdGVMaW5rSFRNTE5vZGVzKG5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2Rlcyk7XG5cbiAgbmVzdGVkRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybXMuZm9yRWFjaCgobmVzdGVkRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybSkgPT4ge1xuICAgIG5lc3RlZEZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm0ucmVtb3ZlKCk7XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbGluZUhUTUxUcmFuc2Zvcm1zRnJvbUZvb3Rub3RlSFRNTFRyYW5zZm9ybXMoZm9vdG5vdGVIVE1MVHJhbnNmb3Jtcykge1xuICBjb25zdCBsaW5lSFRNTFRyYW5zZm9ybXMgPSBmb290bm90ZUhUTUxUcmFuc2Zvcm1zLm1hcCgoZm9vdG5vdGVIVE1MVHJhbnNmb3JtKSA9PiB7XG4gICAgY29uc3QgbGluZUhUTUxUcmFuc2Zvcm0gPSBMaW5lSFRNTFRyYW5zZm9ybS5mcm9tRm9vdG5vdGVIVE1MVHJhbnNmb3JtKGZvb3Rub3RlSFRNTFRyYW5zZm9ybSk7XG5cbiAgICByZXR1cm4gbGluZUhUTUxUcmFuc2Zvcm07XG4gIH0pO1xuXG4gIHJldHVybiBsaW5lSFRNTFRyYW5zZm9ybXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb290bm90ZUl0ZW1IVE1MVHJhbnNmb3Jtc0Zyb21MaW5lSFRNTFRyYW5zZm9ybXMobGluZUhUTUxUcmFuc2Zvcm1zLCBpZGVudGlmaWVyTWFwLCBzdGFydCkge1xuICBjb25zdCBudW1iZXJzID0gT2JqZWN0LnZhbHVlcyhpZGVudGlmaWVyTWFwKSxcbiAgICAgICAgaWRlbnRpZmllcnMgPSBPYmplY3Qua2V5cyhpZGVudGlmaWVyTWFwKSxcbiAgICAgICAgZm9vdG5vdGVJdGVtSFRNTFRyYW5zZm9ybXMgPSBsaW5lSFRNTFRyYW5zZm9ybXMubWFwKChsaW5lSFRNTFRyYW5zZm9ybSwgaW5kZXgpID0+IHtcbiAgICAgICAgICBjb25zdCBudW1iZXIgPSBzdGFydCArIGluZGV4O1xuXG4gICAgICAgICAgaW5kZXggPSBudW1iZXJzLmluZGV4T2YobnVtYmVyKTtcblxuICAgICAgICAgIGNvbnN0IGlkZW50aWZpZXIgPSBpZGVudGlmaWVyc1tpbmRleF0sXG4gICAgICAgICAgICAgICAgZm9vdG5vdGVJdGVtSFRNTFRyYW5zZm9ybSA9IEZvb3Rub3RlSXRlbUhUTUxUcmFuc2Zvcm0uZnJvbUxpbmVUTUxUcmFuc2Zvcm1BbmRJZGVudGlmaWVyKGxpbmVIVE1MVHJhbnNmb3JtLCBpZGVudGlmaWVyKTtcblxuICAgICAgICAgIHJldHVybiBmb290bm90ZUl0ZW1IVE1MVHJhbnNmb3JtO1xuICAgICAgICB9KTtcblxuICByZXR1cm4gZm9vdG5vdGVJdGVtSFRNTFRyYW5zZm9ybXM7XG59XG5cbmZ1bmN0aW9uIGZvb3Rub3RlSFRNTFRyYW5zZm9ybXNGcm9tRm9vdG5vdGVIVE1MTm9kZXMoZm9vdG5vdGVIVE1MTm9kZXMpIHtcbiAgY29uc3QgZm9vdG5vdGVIVE1MVHJhbnNmb3JtcyA9IGZvb3Rub3RlSFRNTE5vZGVzLm1hcCgoZm9vdG5vdGVIVE1MTm9kZSkgPT4ge1xuICAgIGNvbnN0IGZvb3Rub3RlSFRNTFRyYW5zZm9ybSA9IEZvb3Rub3RlSFRNTFRyYW5zZm9ybS5mcm9tRm9vdG5vdGVIVE1MTm9kZShmb290bm90ZUhUTUxOb2RlKTtcblxuICAgIHJldHVybiBmb290bm90ZUhUTUxUcmFuc2Zvcm07XG4gIH0pO1xuXG4gIHJldHVybiBmb290bm90ZUhUTUxUcmFuc2Zvcm1zO1xufVxuXG5mdW5jdGlvbiBmb290bm90ZUxpbmtIVE1MVHJhbnNmb3Jtc0Zyb21Gb290bm90ZUxpbmtIVE1MTm9kZXMoZm9vdG5vdGVMaW5rSFRNTE5vZGVzKSB7XG4gIGNvbnN0IGZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm1zID0gZm9vdG5vdGVMaW5rSFRNTE5vZGVzLm1hcCgoZm9vdG5vdGVMaW5rSFRNTE5vZGUpID0+IHtcbiAgICBjb25zdCBmb290bm90ZUxpbmtIVE1MVHJhbnNmb3JtID0gRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybS5mcm9tRm9vdG5vdGVMaW5rSFRNTE5vZGUoZm9vdG5vdGVMaW5rSFRNTE5vZGUpO1xuXG4gICAgcmV0dXJuIGZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm07XG4gIH0pO1xuXG4gIHJldHVybiBmb290bm90ZUxpbmtIVE1MVHJhbnNmb3Jtcztcbn1cblxuZnVuY3Rpb24gbmVzdGVkRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybXNGcm9tTmVzdGVkRm9vdG5vdGVMaW5rSFRNTE5vZGVzKG5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2Rlcykge1xuICBjb25zdCBuZXN0ZWRGb290bm90ZUxpbmtIVE1MVHJhbnNmb3JtcyA9IG5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2Rlcy5tYXAoKG5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2RlKSA9PiB7XG4gICAgY29uc3QgbmVzdGVkRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybSA9IE5lc3RlZEZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm0uZnJvbU5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2RlKG5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2RlKTtcblxuICAgIHJldHVybiBuZXN0ZWRGb290bm90ZUxpbmtIVE1MVHJhbnNmb3JtO1xuICB9KTtcblxuICByZXR1cm4gbmVzdGVkRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybXM7XG59XG4iXSwibmFtZXMiOlsiYWRkRm9vdG5vdGVIVE1MTm9kZXMiLCJmb290bm90ZUl0ZW1IVE1MVHJhbnNmb3Jtc0Zyb21MaW5lSFRNTFRyYW5zZm9ybXMiLCJncm91cEhUTUxOb2RlcyIsImxpbmVIVE1MVHJhbnNmb3Jtc0Zyb21Gb290bm90ZUhUTUxUcmFuc2Zvcm1zIiwibnVtYmVyRm9vdG5vdGVMaW5rSFRNTE5vZGVzIiwicGFnaW5hdGVHcm91cGVkSFRNTE5vZGVzIiwicmVtb3ZlRm9vdG5vdGVIVE1MTm9kZXMiLCJyZW1vdmVGb290bm90ZXNEaXJlY3RpdmVIVE1MTm9kZSIsInJlbW92ZUhUTUxOb2RlcyIsInJlbW92ZU5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2RlcyIsInJlbW92ZVBhZ2VOdW1iZXJEaXJlY3RpdmVIVE1MTm9kZSIsImJhY2t3YXJkc0ZvckVhY2giLCJhcnJheVV0aWxpdGllcyIsImh0bWxOb2RlcyIsImdyb3VwZWRIVE1MTm9kZXNBcnJheSIsImdyb3VwZWRIVE1MTm9kZXMiLCJmb3JFYWNoIiwiaHRtbE5vZGUiLCJodG1sTm9kZUZvb3Rub3RlSFRNTE5vZGUiLCJGb290bm90ZUhUTUxOb2RlIiwiZ3JvdXBlZEhUTUxOb2RlTGVuZ3RoIiwibGVuZ3RoIiwicHVzaCIsImdyb3VwZWRIVE1MTm9kZSIsIm5vZGUiLCJodG1sTm9kZXNGcm9tTm9kZSIsImh0bWxUcmFuc2Zvcm0iLCJIVE1MVHJhbnNmb3JtIiwiZnJvbUhUTUxOb2RlIiwicmVtb3ZlIiwiZm9vdG5vdGVIVE1MVHJhbnNmb3JtcyIsImNvbnRleHQiLCJmb290bm90ZUxpbmtIVE1MTm9kZXMiLCJmb290bm90ZUxpbmtIVE1MTm9kZXNGcm9tTm9kZSIsImZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm1zIiwiZm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybXNGcm9tRm9vdG5vdGVMaW5rSFRNTE5vZGVzIiwiZm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybSIsImlkZW50aWZpZXIiLCJmb290bm90ZUhUTUxUcmFuc2Zvcm0iLCJmaW5kIiwiaWRlbnRpZmllck1hdGNoZXMiLCJtYXRjaElkZW50aWZpZXIiLCJhZGRBZnRlckZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm0iLCJmb290bm90ZUhUTUxOb2RlcyIsImZvb3Rub3RlSFRNTE5vZGVzRnJvbU5vZGUiLCJmb290bm90ZUhUTUxUcmFuc2Zvcm1zRnJvbUZvb3Rub3RlSFRNTE5vZGVzIiwicGFnaW5hdGVkSFRNTE5vZGVzQXJyYXkiLCJtYXhpbXVtUGFnZUxpbmVzIiwiREVGQVVMVF9NQVhJTVVNX1BBR0VfTElORVMiLCJwYWdlTGluZXMiLCJwYWdpbmF0ZWRIVE1MTm9kZXMiLCJncm91cExpbmVzIiwicmVkdWNlIiwibGluZXMiLCJwYWdpbmF0ZWRIVE1MTm9kZXNMZW5ndGgiLCJpZGVudGlmaWVyTWFwIiwiaWRlbnRpZmllcnMiLCJPYmplY3QiLCJrZXlzIiwiaWRlbnRpZmllcnNMZW5ndGgiLCJzdGFydCIsImluZGV4IiwibnVtYmVyIiwiZm9vdG5vdGVMaW5rSFRNTE5vZGUiLCJzZXROdW1iZXIiLCJmb290bm90ZXNEaXJlY3RpdmVIVE1MTm9kZSIsImZvb3Rub3Rlc0RpcmVjdGl2ZUhUTUxOb2RlRnJvbU5vZGUiLCJmb290bm90ZXNEaXJlY3RpdmVIVE1MVHJhbnNmb3JtIiwiRm9vdG5vdGVzRGlyZWN0aXZlSFRNTFRyYW5zZm9ybSIsImZyb21Gb290bm90ZXNEaXJlY3RpdmVIVE1MTm9kZSIsInBhZ2VOdW1iZXJEaXJlY3RpdmVIVE1MVHJhbnNmb3JtIiwicGFnZU51bWJlckRpcmVjdGl2ZUhUTUxOb2RlIiwicGFnZU51bWJlckRpcmVjdGl2ZUhUTUxOb2RlRnJvbU5vZGUiLCJQYWdlTnVtYmVyRGlyZWN0aXZlSFRNTFRyYW5zZm9ybSIsImZyb21QYWdlTnVtYmVyRGlyZWN0aXZlSFRNTE5vZGUiLCJuZXN0ZWRGb290bm90ZUxpbmtIVE1MTm9kZXMiLCJuZXN0ZWRGb290bm90ZUxpbmtIVE1MTm9kZXNGcm9tTm9kZSIsIm5lc3RlZEZvb3Rub3RlTGlua0hUTUxUcmFuc2Zvcm1zIiwibmVzdGVkRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybXNGcm9tTmVzdGVkRm9vdG5vdGVMaW5rSFRNTE5vZGVzIiwibmVzdGVkRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybSIsImxpbmVIVE1MVHJhbnNmb3JtcyIsIm1hcCIsImxpbmVIVE1MVHJhbnNmb3JtIiwiTGluZUhUTUxUcmFuc2Zvcm0iLCJmcm9tRm9vdG5vdGVIVE1MVHJhbnNmb3JtIiwibnVtYmVycyIsInZhbHVlcyIsImZvb3Rub3RlSXRlbUhUTUxUcmFuc2Zvcm1zIiwiaW5kZXhPZiIsImZvb3Rub3RlSXRlbUhUTUxUcmFuc2Zvcm0iLCJGb290bm90ZUl0ZW1IVE1MVHJhbnNmb3JtIiwiZnJvbUxpbmVUTUxUcmFuc2Zvcm1BbmRJZGVudGlmaWVyIiwiZm9vdG5vdGVIVE1MTm9kZSIsIkZvb3Rub3RlSFRNTFRyYW5zZm9ybSIsImZyb21Gb290bm90ZUhUTUxOb2RlIiwiRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybSIsImZyb21Gb290bm90ZUxpbmtIVE1MTm9kZSIsIm5lc3RlZEZvb3Rub3RlTGlua0hUTUxOb2RlIiwiTmVzdGVkRm9vdG5vdGVMaW5rSFRNTFRyYW5zZm9ybSIsImZyb21OZXN0ZWRGb290bm90ZUxpbmtIVE1MTm9kZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O1FBb0VnQkE7ZUFBQUE7O1FBOElBQztlQUFBQTs7UUExTEFDO2VBQUFBOztRQWdMQUM7ZUFBQUE7O1FBMURBQztlQUFBQTs7UUEzQ0FDO2VBQUFBOztRQVhBQztlQUFBQTs7UUE2RUFDO2VBQUFBOztRQTdHQUM7ZUFBQUE7O1FBdUlBQztlQUFBQTs7UUFkQUM7ZUFBQUE7Ozt5QkEvS2U7MkRBRUw7K0RBQ0c7MkRBQ0M7Z0VBQ0k7Z0VBQ0k7Z0VBQ0E7cUVBQ007Z0VBQ0E7aUVBQ0M7eUJBRUY7cUJBTVM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXBELElBQU0sQUFBRUMsbUJBQXFCQyx5QkFBYyxDQUFuQ0Q7QUFFRCxTQUFTVCxlQUFlVyxTQUFTO0lBQ3RDLElBQU1DLHdCQUF3QixFQUFFO0lBRWhDLElBQUlDLG1CQUFtQixFQUFFO0lBRXpCRixVQUFVRyxPQUFPLENBQUMsU0FBQ0M7UUFDakIsSUFBTUMsMkJBQTRCRCxBQUFRLFlBQVJBLFVB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
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "highmark-markdown",
3
3
  "author": "James Smith",
4
- "version": "1.0.207",
4
+ "version": "1.0.209",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/highmark-markdown",
7
7
  "description": "Highmark's Markdown and Markdown Style languages.",
@@ -55,7 +55,7 @@ export default class DivisionHTMLNode extends HTMLNode {
55
55
 
56
56
  removeNestedFootnoteLinkHTMLNodes(node);
57
57
 
58
- const pageNumberDirectiveHTNLTransform = removePageNumberDirectiveHTMLNode(node),
58
+ const pageNumberDirectiveHTMLTransform = removePageNumberDirectiveHTMLNode(node),
59
59
  footnotesDirectiveHTMLNode = removeFootnotesDirectiveHTMLNode(node),
60
60
  footnoteHTMLTransforms = removeFootnoteHTMLNodes(node);
61
61
 
@@ -63,13 +63,13 @@ export default class DivisionHTMLNode extends HTMLNode {
63
63
  addFootnoteHTMLNodes(footnoteHTMLTransforms, node, context);
64
64
  }
65
65
 
66
- this.paginate(pageNumberDirectiveHTNLTransform, divisionHTMLNodes, context);
66
+ this.paginate(pageNumberDirectiveHTMLTransform, divisionHTMLNodes, context);
67
67
  }
68
68
 
69
- paginate(pageNumberDirectiveHTNLTransform, divisionHTMLNodes, context) {
69
+ paginate(pageNumberDirectiveHTMLTransform, divisionHTMLNodes, context) {
70
70
  const node = this, ///
71
71
  outerNode = this.getOuterNode(),
72
- pageNumbers = (pageNumberDirectiveHTNLTransform !== null),
72
+ pageNumbers = (pageNumberDirectiveHTMLTransform !== null),
73
73
  identifierMap = {},
74
74
  divisionClassName = outerNode.className(context);
75
75
 
package/src/node/html.js CHANGED
@@ -72,6 +72,8 @@ class HTMLNode extends Node {
72
72
  return ancestorHTMLNodes;
73
73
  }
74
74
 
75
+ someAncestorHTMLNode(callback) { return this.someAncestorNode(callback); }
76
+
75
77
  matchMarkdownNode(htmlNode) {
76
78
  const markdownNode = htmlNode.getMarkdownNode(),
77
79
  outerNode = markdownNode, ///
@@ -12,8 +12,8 @@ export default class IndexItemHTMLTransform extends HTMLTransform {
12
12
  }
13
13
 
14
14
  static fromIndexItem(indexItem) {
15
- const indexItemHTNLMode = IndexItemHTMLNode.fromIndexItem(indexItem),
16
- htmlNode = indexItemHTNLMode, ///
15
+ const indexItemHTMLMode = IndexItemHTMLNode.fromIndexItem(indexItem),
16
+ htmlNode = indexItemHTMLMode, ///
17
17
  indexItemHTMLTransform = HTMLTransform.fromHTMLNode(IndexItemHTMLTransform, htmlNode);
18
18
 
19
19
  return indexItemHTMLTransform;
@@ -17,8 +17,8 @@ export default class LineHTMLTransform extends HTMLTransform {
17
17
  return paragraphHTMLTransform;
18
18
  }
19
19
 
20
- static fromFootnoteHTMLTransform(footnoteHTNLTransform) {
21
- const lineHTMLNode = footnoteHTNLTransform.getLineHTMLNode(),
20
+ static fromFootnoteHTMLTransform(footnoteHTMLTransform) {
21
+ const lineHTMLNode = footnoteHTMLTransform.getLineHTMLNode(),
22
22
  htmlNode = lineHTMLNode, ///
23
23
  paragraphHTMLTransform = HTMLTransform.fromHTMLNode(LineHTMLTransform, htmlNode);
24
24
 
@@ -176,17 +176,17 @@ export function removeFootnotesDirectiveHTMLNode(node) {
176
176
  }
177
177
 
178
178
  export function removePageNumberDirectiveHTMLNode(node) {
179
- let pageNumberDirectiveHTNLTransform = null;
179
+ let pageNumberDirectiveHTMLTransform = null;
180
180
 
181
181
  const pageNumberDirectiveHTMLNode = pageNumberDirectiveHTMLNodeFromNode(node);
182
182
 
183
183
  if (pageNumberDirectiveHTMLNode !== null) {
184
- pageNumberDirectiveHTNLTransform = PageNumberDirectiveHTMLTransform.fromPageNumberDirectiveHTMLNode(pageNumberDirectiveHTMLNode);
184
+ pageNumberDirectiveHTMLTransform = PageNumberDirectiveHTMLTransform.fromPageNumberDirectiveHTMLNode(pageNumberDirectiveHTMLNode);
185
185
 
186
- pageNumberDirectiveHTNLTransform.remove();
186
+ pageNumberDirectiveHTMLTransform.remove();
187
187
  }
188
188
 
189
- return pageNumberDirectiveHTNLTransform;
189
+ return pageNumberDirectiveHTMLTransform;
190
190
  }
191
191
 
192
192
  export function removeNestedFootnoteLinkHTMLNodes(node) {