occam-verify-cli 0.0.539 → 0.0.541

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.
Files changed (62) hide show
  1. package/bin/utilities/releaseContext.js +30 -40
  2. package/lib/axiom.js +4 -4
  3. package/lib/axiomLemmaTheoremConjecture.js +6 -6
  4. package/lib/combinator.js +4 -4
  5. package/lib/conclusion.js +4 -4
  6. package/lib/conjecture.js +4 -4
  7. package/lib/constructor.js +6 -6
  8. package/lib/context/file.js +185 -78
  9. package/lib/context/metaproof.js +3 -3
  10. package/lib/context/release.js +222 -3
  11. package/lib/index.js +1 -9
  12. package/lib/kinds.js +9 -1
  13. package/lib/label.js +4 -4
  14. package/lib/lemma.js +4 -4
  15. package/lib/metaType.js +9 -7
  16. package/lib/metavariable.js +32 -1
  17. package/lib/premise.js +4 -4
  18. package/lib/rule.js +7 -7
  19. package/lib/ruleNames.js +16 -4
  20. package/lib/supposition.js +4 -4
  21. package/lib/theorem.js +4 -4
  22. package/lib/type.js +14 -14
  23. package/lib/utilities/node.js +31 -3
  24. package/lib/utilities/releaseContext.js +6 -5
  25. package/lib/variable.js +32 -1
  26. package/lib/verifier.js +1 -1
  27. package/lib/verify/file.js +2 -2
  28. package/lib/verify/metastatement.js +147 -3
  29. package/lib/verify/statement.js +2 -2
  30. package/package.json +3 -3
  31. package/src/axiom.js +1 -1
  32. package/src/axiomLemmaTheoremConjecture.js +4 -4
  33. package/src/combinator.js +3 -3
  34. package/src/conclusion.js +3 -3
  35. package/src/conjecture.js +1 -1
  36. package/src/constructor.js +5 -5
  37. package/src/context/file.js +161 -28
  38. package/src/context/metaproof.js +1 -1
  39. package/src/context/release.js +266 -3
  40. package/src/index.js +0 -2
  41. package/src/kinds.js +2 -0
  42. package/src/label.js +3 -3
  43. package/src/lemma.js +1 -1
  44. package/src/metaType.js +8 -5
  45. package/src/metavariable.js +36 -0
  46. package/src/premise.js +3 -3
  47. package/src/rule.js +5 -5
  48. package/src/ruleNames.js +4 -1
  49. package/src/supposition.js +3 -3
  50. package/src/theorem.js +1 -1
  51. package/src/type.js +13 -13
  52. package/src/utilities/node.js +57 -2
  53. package/src/utilities/releaseContext.js +4 -2
  54. package/src/variable.js +36 -0
  55. package/src/verifier.js +1 -1
  56. package/src/verify/file.js +1 -1
  57. package/src/verify/metastatement.js +65 -2
  58. package/src/verify/statement.js +2 -2
  59. package/lib/context/release/directory.js +0 -313
  60. package/lib/context/release/file.js +0 -387
  61. package/src/context/release/directory.js +0 -251
  62. package/src/context/release/file.js +0 -312
@@ -160,8 +160,8 @@ var MetaproofContext = /*#__PURE__*/ function() {
160
160
  }
161
161
  },
162
162
  {
163
- key: "isMetavariablePresentByVariableName",
164
- value: function isMetavariablePresentByVariableName(metavariableName) {
163
+ key: "isMetavariablePresentByMetavariableName",
164
+ value: function isMetavariablePresentByMetavariableName(metavariableName) {
165
165
  var metavariable = this.findMetavariableByMetavariableName(metavariableName), metavariablePresent = metavariable !== null;
166
166
  return metavariablePresent;
167
167
  }
@@ -189,4 +189,4 @@ Object.assign(MetaproofContext.prototype, _file.default);
189
189
  Object.assign(MetaproofContext.prototype, _logging.default);
190
190
  var _default = MetaproofContext;
191
191
 
192
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250ZXh0L21ldGFwcm9vZi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGZpbGVNaXhpbnMgZnJvbSBcIi4uL21peGlucy9maWxlXCI7XG5pbXBvcnQgbG9nZ2luZ01peGlucyBmcm9tIFwiLi4vbWl4aW5zL2xvZ2dpbmdcIjtcblxuaW1wb3J0IHsgcHVzaCwgbGFzdCwgZmlsdGVyIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuXG5jbGFzcyBNZXRhcHJvb2ZDb250ZXh0IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgbWV0YXZhcmlhYmxlcywgbWV0YXByb29mU3RlcHMpIHtcbiAgICB0aGlzLmNvbnRleHQgPSBjb250ZXh0O1xuICAgIHRoaXMubWV0YXZhcmlhYmxlcyA9IG1ldGF2YXJpYWJsZXM7XG4gICAgdGhpcy5tZXRhcHJvb2ZTdGVwcyA9IG1ldGFwcm9vZlN0ZXBzO1xuICB9XG5cbiAgZ2V0Q29udGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZXh0O1xuICB9XG5cbiAgZ2V0VmFyaWFibGVzKCkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmdldFZhcmlhYmxlcygpOyB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlcygpIHtcbiAgICBjb25zdCBtZXRhdmFyaWFibGVzID0gW107XG5cbiAgICBwdXNoKG1ldGF2YXJpYWJsZXMsIHRoaXMubWV0YXZhcmlhYmxlcyk7XG5cbiAgICBjb25zdCBjb250ZXh0TWV0YXZhcmlhYmxlcyA9IHRoaXMuY29udGV4dC5nZXRNZXRhdmFyaWFibGVzKCk7XG5cbiAgICBwdXNoKG1ldGF2YXJpYWJsZXMsIGNvbnRleHRNZXRhdmFyaWFibGVzKTtcblxuICAgIHJldHVybiBtZXRhdmFyaWFibGVzO1xuICB9XG5cbiAgZ2V0TWV0YXByb29mU3RlcHMoKSB7XG4gICAgbGV0IG1ldGFwcm9vZlN0ZXBzID0gdGhpcy5jb250ZXh0LmdldE1ldGFwcm9vZlN0ZXBzKCk7XG5cbiAgICBtZXRhcHJvb2ZTdGVwcyA9IFsgIC8vL1xuICAgICAgLi4ubWV0YXByb29mU3RlcHMsXG4gICAgICAuLi50aGlzLm1ldGFwcm9vZlN0ZXBzXG4gICAgXTtcblxuICAgIHJldHVybiBtZXRhcHJvb2ZTdGVwcztcbiAgfVxuXG4gIGdldExhc3RNZXRhcHJvb2ZTdGVwKCkge1xuICAgIGxldCBsYXN0TWV0YXByb29mU3RlcCA9IG51bGw7XG5cbiAgICBjb25zdCBtZXRhcHJvb2ZTdGVwc0xlbmd0aCA9IHRoaXMubWV0YXByb29mU3RlcHMubGVuZ3RoO1xuXG4gICAgaWYgKG1ldGFwcm9vZlN0ZXBzTGVuZ3RoID4gMCkge1xuICAgICAgbGFzdE1ldGFwcm9vZlN0ZXAgPSBsYXN0KHRoaXMubWV0YXByb29mU3RlcHMpO1xuICAgIH1cblxuICAgIHJldHVybiBsYXN0TWV0YXByb29mU3RlcDtcbiAgfVxuXG4gIGFkZE1ldGF2YXJpYWJsZShtZXRhdmFyaWFibGUpIHtcbiAgICBjb25zdCBtZXRhdmFyaWFibGVOYW1lID0gbWV0YXZhcmlhYmxlLmdldE5hbWUoKTtcblxuICAgIGZpbHRlcih0aGlzLm1ldGF2YXJpYWJsZXMsIChtZXRhdmFyaWFibGUpID0+IHtcbiAgICAgIGNvbnN0IG5hbWUgPSBtZXRhdmFyaWFibGUuZ2V0TmFtZSgpLFxuICAgICAgICAgICAgbmFtZU1ldGF2YXJpYWJsZU5hbWUgPSAobmFtZSA9PT0gbWV0YXZhcmlhYmxlTmFtZSk7XG5cbiAgICAgIGlmICghbmFtZU1ldGF2YXJpYWJsZU5hbWUpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLm1ldGF2YXJpYWJsZXMucHVzaChtZXRhdmFyaWFibGUpO1xuICB9XG5cbiAgYWRkTWV0YXByb29mU3RlcChtZXRhcHJvb2ZTdGVwKSB7XG4gICAgdGhpcy5tZXRhcHJvb2ZTdGVwcy5wdXNoKG1ldGFwcm9vZlN0ZXApO1xuICB9XG5cbiAgbWF0Y2hNZXRhc3RhdGVtZW50KG1ldGFzdGF0ZW1lbnROb2RlKSB7XG4gICAgbGV0IG1ldGFzdGF0ZW1lbnRNYXRjaGVzID0gZmFsc2U7XG5cbiAgICBpZiAoIW1ldGFzdGF0ZW1lbnRNYXRjaGVzKSB7XG4gICAgICBjb25zdCBwcm9vZlN0ZXBNYXRjaGVzTWV0YXN0YXRlbWVudCA9IHRoaXMubWV0YXByb29mU3RlcHMuc29tZSgobWV0YXByb29mU3RlcCkgPT4ge1xuICAgICAgICBjb25zdCBwcm9vZlN0ZXBNYXRjaGVzTWV0YXN0YXRlbWVudCA9IG1ldGFwcm9vZlN0ZXAubWF0Y2gobWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgICAgIGlmIChwcm9vZlN0ZXBNYXRjaGVzTWV0YXN0YXRlbWVudCkge1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgbWV0YXN0YXRlbWVudE1hdGNoZXMgPSBwcm9vZlN0ZXBNYXRjaGVzTWV0YXN0YXRlbWVudDsgLy8vXG4gICAgfVxuXG4gICAgaWYgKCFtZXRhc3RhdGVtZW50TWF0Y2hlcykge1xuICAgICAgbWV0YXN0YXRlbWVudE1hdGNoZXMgPSB0aGlzLmNvbnRleHQubWF0Y2hNZXRhc3RhdGVtZW50KG1ldGFzdGF0ZW1lbnROb2RlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbWV0YXN0YXRlbWVudE1hdGNoZXM7XG4gIH1cblxuICBmaW5kTWV0YXZhcmlhYmxlQnlNZXRhdmFyaWFibGVOYW1lKG1ldGF2YXJpYWJsZU5hbWUpIHtcbiAgICBjb25zdCBuYW1lID0gbWV0YXZhcmlhYmxlTmFtZSwgIC8vL1xuICAgICAgICAgIG1ldGF2YXJpYWJsZXMgPSB0aGlzLmdldE1ldGF2YXJpYWJsZXMoKSxcbiAgICAgICAgICBtZXRhdmFyaWFibGUgPSBtZXRhdmFyaWFibGVzLmZpbmQoKG1ldGF2YXJpYWJsZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbWF0Y2hlcyA9IG1ldGF2YXJpYWJsZS5tYXRjaE5hbWUobmFtZSk7XG5cbiAgICAgICAgICAgIGlmIChtYXRjaGVzKSB7XG4gICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pIHx8IG51bGw7XG5cbiAgICByZXR1cm4gbWV0YXZhcmlhYmxlO1xuICB9XG5cbiAgaXNNZXRhdmFyaWFibGVQcmVzZW50QnlWYXJpYWJsZU5hbWUobWV0YXZhcmlhYmxlTmFtZSkge1xuICAgIGNvbnN0IG1ldGF2YXJpYWJsZSA9IHRoaXMuZmluZE1ldGF2YXJpYWJsZUJ5TWV0YXZhcmlhYmxlTmFtZShtZXRhdmFyaWFibGVOYW1lKSxcbiAgICAgICAgICBtZXRhdmFyaWFibGVQcmVzZW50ID0gKG1ldGF2YXJpYWJsZSAhPT0gbnVsbCk7XG5cbiAgICByZXR1cm4gbWV0YXZhcmlhYmxlUHJlc2VudDtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tRmlsZUNvbnRleHQoZmlsZUNvbnRleHQpIHtcbiAgICBjb25zdCBjb250ZXh0ID0gZmlsZUNvbnRleHQsICAvLy9cbiAgICAgICAgICBtZXRhdmFyaWFibGVzID0gW10sXG4gICAgICAgICAgbWV0YXByb29mU3RlcHMgPSBbXSxcbiAgICAgICAgICBtZXRhcHJvb2ZDb250ZXh0ID0gbmV3IE1ldGFwcm9vZkNvbnRleHQoY29udGV4dCwgbWV0YXZhcmlhYmxlcywgbWV0YXByb29mU3RlcHMpO1xuXG4gICAgcmV0dXJuIG1ldGFwcm9vZkNvbnRleHQ7XG4gIH1cblxuICBzdGF0aWMgZnJvbU1ldGFwcm9vZkNvbnRleHQobWV0YXByb29mQ29udGV4dCkge1xuICAgIGNvbnN0IGNvbnRleHQgPSBtZXRhcHJvb2ZDb250ZXh0LCAgLy8vXG4gICAgICAgICAgbWV0YXZhcmlhYmxlcyA9IFtdLFxuICAgICAgICAgIG1ldGFwcm9vZlN0ZXBzID0gW107XG5cbiAgICBtZXRhcHJvb2ZDb250ZXh0ID0gbmV3IE1ldGFwcm9vZkNvbnRleHQoY29udGV4dCwgbWV0YXZhcmlhYmxlcywgbWV0YXByb29mU3RlcHMpOyAgLy8vXG5cbiAgICByZXR1cm4gbWV0YXByb29mQ29udGV4dDtcbiAgfVxufVxuXG5PYmplY3QuYXNzaWduKE1ldGFwcm9vZkNvbnRleHQucHJvdG90eXBlLCBmaWxlTWl4aW5zKTtcbk9iamVjdC5hc3NpZ24oTWV0YXByb29mQ29udGV4dC5wcm90b3R5cGUsIGxvZ2dpbmdNaXhpbnMpO1xuXG5leHBvcnQgZGVmYXVsdCBNZXRhcHJvb2ZDb250ZXh0OyJdLCJuYW1lcyI6WyJNZXRhcHJvb2ZDb250ZXh0IiwiY29udGV4dCIsIm1ldGF2YXJpYWJsZXMiLCJtZXRhcHJvb2ZTdGVwcyIsImdldENvbnRleHQiLCJnZXRWYXJpYWJsZXMiLCJnZXRNZXRhdmFyaWFibGVzIiwicHVzaCIsImNvbnRleHRNZXRhdmFyaWFibGVzIiwiZ2V0TWV0YXByb29mU3RlcHMiLCJnZXRMYXN0TWV0YXByb29mU3RlcCIsImxhc3RNZXRhcHJvb2ZTdGVwIiwibWV0YXByb29mU3RlcHNMZW5ndGgiLCJsZW5ndGgiLCJsYXN0IiwiYWRkTWV0YXZhcmlhYmxlIiwibWV0YXZhcmlhYmxlIiwibWV0YXZhcmlhYmxlTmFtZSIsImdldE5hbWUiLCJmaWx0ZXIiLCJuYW1lIiwibmFtZU1ldGF2YXJpYWJsZU5hbWUiLCJhZGRNZXRhcHJvb2ZTdGVwIiwibWV0YXByb29mU3RlcCIsIm1hdGNoTWV0YXN0YXRlbWVudCIsIm1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXN0YXRlbWVudE1hdGNoZXMiLCJwcm9vZlN0ZXBNYXRjaGVzTWV0YXN0YXRlbWVudCIsInNvbWUiLCJtYXRjaCIsImZpbmRNZXRhdmFyaWFibGVCeU1ldGF2YXJpYWJsZU5hbWUiLCJmaW5kIiwibWF0Y2hlcyIsIm1hdGNoTmFtZSIsImlzTWV0YXZhcmlhYmxlUHJlc2VudEJ5VmFyaWFibGVOYW1lIiwibWV0YXZhcmlhYmxlUHJlc2VudCIsImZyb21GaWxlQ29udGV4dCIsImZpbGVDb250ZXh0IiwibWV0YXByb29mQ29udGV4dCIsImZyb21NZXRhcHJvb2ZDb250ZXh0IiwiT2JqZWN0IiwiYXNzaWduIiwi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
192
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250ZXh0L21ldGFwcm9vZi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGZpbGVNaXhpbnMgZnJvbSBcIi4uL21peGlucy9maWxlXCI7XG5pbXBvcnQgbG9nZ2luZ01peGlucyBmcm9tIFwiLi4vbWl4aW5zL2xvZ2dpbmdcIjtcblxuaW1wb3J0IHsgcHVzaCwgbGFzdCwgZmlsdGVyIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuXG5jbGFzcyBNZXRhcHJvb2ZDb250ZXh0IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgbWV0YXZhcmlhYmxlcywgbWV0YXByb29mU3RlcHMpIHtcbiAgICB0aGlzLmNvbnRleHQgPSBjb250ZXh0O1xuICAgIHRoaXMubWV0YXZhcmlhYmxlcyA9IG1ldGF2YXJpYWJsZXM7XG4gICAgdGhpcy5tZXRhcHJvb2ZTdGVwcyA9IG1ldGFwcm9vZlN0ZXBzO1xuICB9XG5cbiAgZ2V0Q29udGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZXh0O1xuICB9XG5cbiAgZ2V0VmFyaWFibGVzKCkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmdldFZhcmlhYmxlcygpOyB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlcygpIHtcbiAgICBjb25zdCBtZXRhdmFyaWFibGVzID0gW107XG5cbiAgICBwdXNoKG1ldGF2YXJpYWJsZXMsIHRoaXMubWV0YXZhcmlhYmxlcyk7XG5cbiAgICBjb25zdCBjb250ZXh0TWV0YXZhcmlhYmxlcyA9IHRoaXMuY29udGV4dC5nZXRNZXRhdmFyaWFibGVzKCk7XG5cbiAgICBwdXNoKG1ldGF2YXJpYWJsZXMsIGNvbnRleHRNZXRhdmFyaWFibGVzKTtcblxuICAgIHJldHVybiBtZXRhdmFyaWFibGVzO1xuICB9XG5cbiAgZ2V0TWV0YXByb29mU3RlcHMoKSB7XG4gICAgbGV0IG1ldGFwcm9vZlN0ZXBzID0gdGhpcy5jb250ZXh0LmdldE1ldGFwcm9vZlN0ZXBzKCk7XG5cbiAgICBtZXRhcHJvb2ZTdGVwcyA9IFsgIC8vL1xuICAgICAgLi4ubWV0YXByb29mU3RlcHMsXG4gICAgICAuLi50aGlzLm1ldGFwcm9vZlN0ZXBzXG4gICAgXTtcblxuICAgIHJldHVybiBtZXRhcHJvb2ZTdGVwcztcbiAgfVxuXG4gIGdldExhc3RNZXRhcHJvb2ZTdGVwKCkge1xuICAgIGxldCBsYXN0TWV0YXByb29mU3RlcCA9IG51bGw7XG5cbiAgICBjb25zdCBtZXRhcHJvb2ZTdGVwc0xlbmd0aCA9IHRoaXMubWV0YXByb29mU3RlcHMubGVuZ3RoO1xuXG4gICAgaWYgKG1ldGFwcm9vZlN0ZXBzTGVuZ3RoID4gMCkge1xuICAgICAgbGFzdE1ldGFwcm9vZlN0ZXAgPSBsYXN0KHRoaXMubWV0YXByb29mU3RlcHMpO1xuICAgIH1cblxuICAgIHJldHVybiBsYXN0TWV0YXByb29mU3RlcDtcbiAgfVxuXG4gIGFkZE1ldGF2YXJpYWJsZShtZXRhdmFyaWFibGUpIHtcbiAgICBjb25zdCBtZXRhdmFyaWFibGVOYW1lID0gbWV0YXZhcmlhYmxlLmdldE5hbWUoKTtcblxuICAgIGZpbHRlcih0aGlzLm1ldGF2YXJpYWJsZXMsIChtZXRhdmFyaWFibGUpID0+IHtcbiAgICAgIGNvbnN0IG5hbWUgPSBtZXRhdmFyaWFibGUuZ2V0TmFtZSgpLFxuICAgICAgICAgICAgbmFtZU1ldGF2YXJpYWJsZU5hbWUgPSAobmFtZSA9PT0gbWV0YXZhcmlhYmxlTmFtZSk7XG5cbiAgICAgIGlmICghbmFtZU1ldGF2YXJpYWJsZU5hbWUpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLm1ldGF2YXJpYWJsZXMucHVzaChtZXRhdmFyaWFibGUpO1xuICB9XG5cbiAgYWRkTWV0YXByb29mU3RlcChtZXRhcHJvb2ZTdGVwKSB7XG4gICAgdGhpcy5tZXRhcHJvb2ZTdGVwcy5wdXNoKG1ldGFwcm9vZlN0ZXApO1xuICB9XG5cbiAgbWF0Y2hNZXRhc3RhdGVtZW50KG1ldGFzdGF0ZW1lbnROb2RlKSB7XG4gICAgbGV0IG1ldGFzdGF0ZW1lbnRNYXRjaGVzID0gZmFsc2U7XG5cbiAgICBpZiAoIW1ldGFzdGF0ZW1lbnRNYXRjaGVzKSB7XG4gICAgICBjb25zdCBwcm9vZlN0ZXBNYXRjaGVzTWV0YXN0YXRlbWVudCA9IHRoaXMubWV0YXByb29mU3RlcHMuc29tZSgobWV0YXByb29mU3RlcCkgPT4ge1xuICAgICAgICBjb25zdCBwcm9vZlN0ZXBNYXRjaGVzTWV0YXN0YXRlbWVudCA9IG1ldGFwcm9vZlN0ZXAubWF0Y2gobWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgICAgIGlmIChwcm9vZlN0ZXBNYXRjaGVzTWV0YXN0YXRlbWVudCkge1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgbWV0YXN0YXRlbWVudE1hdGNoZXMgPSBwcm9vZlN0ZXBNYXRjaGVzTWV0YXN0YXRlbWVudDsgLy8vXG4gICAgfVxuXG4gICAgaWYgKCFtZXRhc3RhdGVtZW50TWF0Y2hlcykge1xuICAgICAgbWV0YXN0YXRlbWVudE1hdGNoZXMgPSB0aGlzLmNvbnRleHQubWF0Y2hNZXRhc3RhdGVtZW50KG1ldGFzdGF0ZW1lbnROb2RlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbWV0YXN0YXRlbWVudE1hdGNoZXM7XG4gIH1cblxuICBmaW5kTWV0YXZhcmlhYmxlQnlNZXRhdmFyaWFibGVOYW1lKG1ldGF2YXJpYWJsZU5hbWUpIHtcbiAgICBjb25zdCBuYW1lID0gbWV0YXZhcmlhYmxlTmFtZSwgIC8vL1xuICAgICAgICAgIG1ldGF2YXJpYWJsZXMgPSB0aGlzLmdldE1ldGF2YXJpYWJsZXMoKSxcbiAgICAgICAgICBtZXRhdmFyaWFibGUgPSBtZXRhdmFyaWFibGVzLmZpbmQoKG1ldGF2YXJpYWJsZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbWF0Y2hlcyA9IG1ldGF2YXJpYWJsZS5tYXRjaE5hbWUobmFtZSk7XG5cbiAgICAgICAgICAgIGlmIChtYXRjaGVzKSB7XG4gICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pIHx8IG51bGw7XG5cbiAgICByZXR1cm4gbWV0YXZhcmlhYmxlO1xuICB9XG5cbiAgaXNNZXRhdmFyaWFibGVQcmVzZW50QnlNZXRhdmFyaWFibGVOYW1lKG1ldGF2YXJpYWJsZU5hbWUpIHtcbiAgICBjb25zdCBtZXRhdmFyaWFibGUgPSB0aGlzLmZpbmRNZXRhdmFyaWFibGVCeU1ldGF2YXJpYWJsZU5hbWUobWV0YXZhcmlhYmxlTmFtZSksXG4gICAgICAgICAgbWV0YXZhcmlhYmxlUHJlc2VudCA9IChtZXRhdmFyaWFibGUgIT09IG51bGwpO1xuXG4gICAgcmV0dXJuIG1ldGF2YXJpYWJsZVByZXNlbnQ7XG4gIH1cblxuICBzdGF0aWMgZnJvbUZpbGVDb250ZXh0KGZpbGVDb250ZXh0KSB7XG4gICAgY29uc3QgY29udGV4dCA9IGZpbGVDb250ZXh0LCAgLy8vXG4gICAgICAgICAgbWV0YXZhcmlhYmxlcyA9IFtdLFxuICAgICAgICAgIG1ldGFwcm9vZlN0ZXBzID0gW10sXG4gICAgICAgICAgbWV0YXByb29mQ29udGV4dCA9IG5ldyBNZXRhcHJvb2ZDb250ZXh0KGNvbnRleHQsIG1ldGF2YXJpYWJsZXMsIG1ldGFwcm9vZlN0ZXBzKTtcblxuICAgIHJldHVybiBtZXRhcHJvb2ZDb250ZXh0O1xuICB9XG5cbiAgc3RhdGljIGZyb21NZXRhcHJvb2ZDb250ZXh0KG1ldGFwcm9vZkNvbnRleHQpIHtcbiAgICBjb25zdCBjb250ZXh0ID0gbWV0YXByb29mQ29udGV4dCwgIC8vL1xuICAgICAgICAgIG1ldGF2YXJpYWJsZXMgPSBbXSxcbiAgICAgICAgICBtZXRhcHJvb2ZTdGVwcyA9IFtdO1xuXG4gICAgbWV0YXByb29mQ29udGV4dCA9IG5ldyBNZXRhcHJvb2ZDb250ZXh0KGNvbnRleHQsIG1ldGF2YXJpYWJsZXMsIG1ldGFwcm9vZlN0ZXBzKTsgIC8vL1xuXG4gICAgcmV0dXJuIG1ldGFwcm9vZkNvbnRleHQ7XG4gIH1cbn1cblxuT2JqZWN0LmFzc2lnbihNZXRhcHJvb2ZDb250ZXh0LnByb3RvdHlwZSwgZmlsZU1peGlucyk7XG5PYmplY3QuYXNzaWduKE1ldGFwcm9vZkNvbnRleHQucHJvdG90eXBlLCBsb2dnaW5nTWl4aW5zKTtcblxuZXhwb3J0IGRlZmF1bHQgTWV0YXByb29mQ29udGV4dDsiXSwibmFtZXMiOlsiTWV0YXByb29mQ29udGV4dCIsImNvbnRleHQiLCJtZXRhdmFyaWFibGVzIiwibWV0YXByb29mU3RlcHMiLCJnZXRDb250ZXh0IiwiZ2V0VmFyaWFibGVzIiwiZ2V0TWV0YXZhcmlhYmxlcyIsInB1c2giLCJjb250ZXh0TWV0YXZhcmlhYmxlcyIsImdldE1ldGFwcm9vZlN0ZXBzIiwiZ2V0TGFzdE1ldGFwcm9vZlN0ZXAiLCJsYXN0TWV0YXByb29mU3RlcCIsIm1ldGFwcm9vZlN0ZXBzTGVuZ3RoIiwibGVuZ3RoIiwibGFzdCIsImFkZE1ldGF2YXJpYWJsZSIsIm1ldGF2YXJpYWJsZSIsIm1ldGF2YXJpYWJsZU5hbWUiLCJnZXROYW1lIiwiZmlsdGVyIiwibmFtZSIsIm5hbWVNZXRhdmFyaWFibGVOYW1lIiwiYWRkTWV0YXByb29mU3RlcCIsIm1ldGFwcm9vZlN0ZXAiLCJtYXRjaE1ldGFzdGF0ZW1lbnQiLCJtZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGFzdGF0ZW1lbnRNYXRjaGVzIiwicHJvb2ZTdGVwTWF0Y2hlc01ldGFzdGF0ZW1lbnQiLCJzb21lIiwibWF0Y2giLCJmaW5kTWV0YXZhcmlhYmxlQnlNZXRhdmFyaWFibGVOYW1lIiwiZmluZCIsIm1hdGNoZXMiLCJtYXRjaE5hbWUiLCJpc01ldGF2YXJpYWJsZVByZXNlbnRCeU1ldGF2YXJpYWJsZU5hbWUiLCJtZXRhdmFyaWFibGVQcmVzZW50IiwiZnJvbUZpbGVDb250ZXh0IiwiZmlsZUNvbnRleHQiLCJtZXRhcHJvb2ZDb250ZXh0IiwiZnJvbU1ldGFwcm9vZkNvbnRleHQiLCJPYmplY3QiLCJh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
@@ -9,6 +9,8 @@ Object.defineProperty(exports, "default", {
9
9
  }
10
10
  });
11
11
  var _occamCustomGrammars = require("occam-custom-grammars");
12
+ var _file = /*#__PURE__*/ _interopRequireDefault(require("./file"));
13
+ var _array = require("../utilities/array");
12
14
  var _customGrammar = require("../utilities/customGrammar");
13
15
  function _arrayLikeToArray(arr, len) {
14
16
  if (len == null || len > arr.length) len = arr.length;
@@ -37,6 +39,11 @@ function _createClass(Constructor, protoProps, staticProps) {
37
39
  if (staticProps) _defineProperties(Constructor, staticProps);
38
40
  return Constructor;
39
41
  }
42
+ function _interopRequireDefault(obj) {
43
+ return obj && obj.__esModule ? obj : {
44
+ default: obj
45
+ };
46
+ }
40
47
  function _iterableToArray(iter) {
41
48
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
42
49
  }
@@ -56,15 +63,17 @@ function _unsupportedIterableToArray(o, minLen) {
56
63
  }
57
64
  var florenceLexerFromCombinedCustomGrammar = _occamCustomGrammars.lexersUtilities.florenceLexerFromCombinedCustomGrammar, florenceParserFromCombinedCustomGrammar = _occamCustomGrammars.parsersUtilities.florenceParserFromCombinedCustomGrammar;
58
65
  var ReleaseContext = /*#__PURE__*/ function() {
59
- function ReleaseContext(log1, name, entries, lexer, parser, verified, customGrammar, dependencyReleaseContexts) {
66
+ function ReleaseContext(log1, json, name, entries, lexer, parser, verified, customGrammar, fileContexts, dependencyReleaseContexts) {
60
67
  _classCallCheck(this, ReleaseContext);
61
68
  this.log = log1;
69
+ this.json = json;
62
70
  this.name = name;
63
71
  this.entries = entries;
64
72
  this.lexer = lexer;
65
73
  this.parser = parser;
66
74
  this.verified = verified;
67
75
  this.customGrammar = customGrammar;
76
+ this.fileContexts = fileContexts;
68
77
  this.dependencyReleaseContexts = dependencyReleaseContexts;
69
78
  }
70
79
  _createClass(ReleaseContext, [
@@ -74,6 +83,12 @@ var ReleaseContext = /*#__PURE__*/ function() {
74
83
  return log;
75
84
  }
76
85
  },
86
+ {
87
+ key: "getJSON",
88
+ value: function getJSON() {
89
+ return this.json;
90
+ }
91
+ },
77
92
  {
78
93
  key: "getName",
79
94
  value: function getName() {
@@ -110,12 +125,188 @@ var ReleaseContext = /*#__PURE__*/ function() {
110
125
  return this.customGrammar;
111
126
  }
112
127
  },
128
+ {
129
+ key: "getFileContexts",
130
+ value: function getFileContexts() {
131
+ return this.fileContexts;
132
+ }
133
+ },
113
134
  {
114
135
  key: "getDependencyReleaseContexts",
115
136
  value: function getDependencyReleaseContexts() {
116
137
  return this.dependencyReleaseContexts;
117
138
  }
118
139
  },
140
+ {
141
+ key: "getLabels",
142
+ value: function getLabels() {
143
+ var includeDependencies = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true;
144
+ var labels = [];
145
+ this.fileContexts.forEach(function(fileContext) {
146
+ var includeRelease = false, fileContextLabels = fileContext.getLabels(includeRelease);
147
+ (0, _array.push)(labels, fileContextLabels);
148
+ });
149
+ if (includeDependencies) {
150
+ var dependencyReleaseContexts = this.getDependencyReleaseContexts();
151
+ dependencyReleaseContexts.forEach(function(releaseContext) {
152
+ var includeDependencies = false, releaseContextLabels = releaseContext.getLabels(includeDependencies);
153
+ (0, _array.push)(labels, releaseContextLabels);
154
+ });
155
+ }
156
+ return labels;
157
+ }
158
+ },
159
+ {
160
+ key: "getTypes",
161
+ value: function getTypes() {
162
+ var includeDependencies = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true;
163
+ var types = [];
164
+ this.fileContexts.forEach(function(fileContext) {
165
+ var includeRelease = false, fileContextTypes = fileContext.getTypes(includeRelease);
166
+ (0, _array.push)(types, fileContextTypes);
167
+ });
168
+ if (includeDependencies) {
169
+ var dependencyReleaseContexts = this.getDependencyReleaseContexts();
170
+ dependencyReleaseContexts.forEach(function(releaseContext) {
171
+ var includeDependencies = false, releaseContextTypes = releaseContext.getTypes(includeDependencies);
172
+ (0, _array.push)(types, releaseContextTypes);
173
+ });
174
+ }
175
+ return types;
176
+ }
177
+ },
178
+ {
179
+ key: "getRules",
180
+ value: function getRules() {
181
+ var includeDependencies = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true;
182
+ var rules = [];
183
+ this.fileContexts.forEach(function(fileContext) {
184
+ var includeRelease = false, fileContextRules = fileContext.getRules(includeRelease);
185
+ (0, _array.push)(rules, fileContextRules);
186
+ });
187
+ if (includeDependencies) {
188
+ var dependencyReleaseContexts = this.getDependencyReleaseContexts();
189
+ dependencyReleaseContexts.forEach(function(releaseContext) {
190
+ var includeDependencies = false, releaseContextRules = releaseContext.getRules(includeDependencies);
191
+ (0, _array.push)(rules, releaseContextRules);
192
+ });
193
+ }
194
+ return rules;
195
+ }
196
+ },
197
+ {
198
+ key: "getAxioms",
199
+ value: function getAxioms() {
200
+ var includeDependencies = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true;
201
+ var axioms = [];
202
+ this.fileContexts.forEach(function(fileContext) {
203
+ var includeRelease = false, fileContextAxioms = fileContext.getAxioms(includeRelease);
204
+ (0, _array.push)(axioms, fileContextAxioms);
205
+ });
206
+ if (includeDependencies) {
207
+ var dependencyReleaseContexts = this.getDependencyReleaseContexts();
208
+ dependencyReleaseContexts.forEach(function(releaseContext) {
209
+ var includeDependencies = false, releaseContextAxioms = releaseContext.getAxioms(includeDependencies);
210
+ (0, _array.push)(axioms, releaseContextAxioms);
211
+ });
212
+ }
213
+ return axioms;
214
+ }
215
+ },
216
+ {
217
+ key: "getLemmas",
218
+ value: function getLemmas() {
219
+ var includeDependencies = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true;
220
+ var lemmas = [];
221
+ this.fileContexts.forEach(function(fileContext) {
222
+ var includeRelease = false, fileContextLemmas = fileContext.getLemmas(includeRelease);
223
+ (0, _array.push)(lemmas, fileContextLemmas);
224
+ });
225
+ return lemmas;
226
+ }
227
+ },
228
+ {
229
+ key: "getTheorems",
230
+ value: function getTheorems() {
231
+ var includeDependencies = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true;
232
+ var theorems = [];
233
+ this.fileContexts.forEach(function(fileContext) {
234
+ var includeRelease = false, fileContextTheorems = fileContext.getTheorems(includeRelease);
235
+ (0, _array.push)(theorems, fileContextTheorems);
236
+ });
237
+ if (includeDependencies) {
238
+ var dependencyReleaseContexts = this.getDependencyReleaseContexts();
239
+ dependencyReleaseContexts.forEach(function(releaseContext) {
240
+ var includeDependencies = false, releaseContextTheorems = releaseContext.getTheorems(includeDependencies);
241
+ (0, _array.push)(theorems, releaseContextTheorems);
242
+ });
243
+ }
244
+ return theorems;
245
+ }
246
+ },
247
+ {
248
+ key: "getConjectures",
249
+ value: function getConjectures() {
250
+ var includeDependencies = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true;
251
+ var conjectures = [];
252
+ this.fileContexts.forEach(function(fileContext) {
253
+ var includeRelease = false, fileContextConjectures = fileContext.getConjectures(includeRelease);
254
+ (0, _array.push)(conjectures, fileContextConjectures);
255
+ });
256
+ if (includeDependencies) {
257
+ var dependencyReleaseContexts = this.getDependencyReleaseContexts();
258
+ dependencyReleaseContexts.forEach(function(releaseContext) {
259
+ var includeDependencies = false, releaseContextConjectures = releaseContext.getConjectures(includeDependencies);
260
+ (0, _array.push)(conjectures, releaseContextConjectures);
261
+ });
262
+ }
263
+ return conjectures;
264
+ }
265
+ },
266
+ {
267
+ key: "getCombinators",
268
+ value: function getCombinators() {
269
+ var includeDependencies = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true;
270
+ var combinators = [];
271
+ this.fileContexts.forEach(function(fileContext) {
272
+ var includeRelease = false, fileContextCombinators = fileContext.getCombinators(includeRelease);
273
+ (0, _array.push)(combinators, fileContextCombinators);
274
+ });
275
+ if (includeDependencies) {
276
+ var dependencyReleaseContexts = this.getDependencyReleaseContexts();
277
+ dependencyReleaseContexts.forEach(function(releaseContext) {
278
+ var includeDependencies = false, releaseContextCombinators = releaseContext.getCombinators(includeDependencies);
279
+ (0, _array.push)(combinators, releaseContextCombinators);
280
+ });
281
+ }
282
+ return combinators;
283
+ }
284
+ },
285
+ {
286
+ key: "getConstructors",
287
+ value: function getConstructors() {
288
+ var includeDependencies = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true;
289
+ var constructors = [];
290
+ this.fileContexts.forEach(function(fileContext) {
291
+ var includeRelease = false, fileContextConstructors = fileContext.getConstructors(includeRelease);
292
+ (0, _array.push)(constructors, fileContextConstructors);
293
+ });
294
+ if (includeDependencies) {
295
+ var dependencyReleaseContexts = this.getDependencyReleaseContexts();
296
+ dependencyReleaseContexts.forEach(function(releaseContext) {
297
+ var includeDependencies = false, releaseContextConstructors = releaseContext.getConstructors(includeDependencies);
298
+ (0, _array.push)(constructors, releaseContextConstructors);
299
+ });
300
+ }
301
+ return constructors;
302
+ }
303
+ },
304
+ {
305
+ key: "addFileContext",
306
+ value: function addFileContext(fileContext) {
307
+ this.fileContexts.push(fileContext);
308
+ }
309
+ },
119
310
  {
120
311
  key: "findTypeByTypeName",
121
312
  value: function findTypeByTypeName(typeName) {
@@ -235,16 +426,44 @@ var ReleaseContext = /*#__PURE__*/ function() {
235
426
  {
236
427
  key: "initialise",
237
428
  value: function initialise(dependencyReleaseContexts) {
238
- var releaseContext = this, releaseContexts = [
429
+ var fileContexts = [], releaseContext = this, releaseContexts = [
239
430
  releaseContext
240
431
  ].concat(_toConsumableArray(dependencyReleaseContexts)), combinedCustomGrammar = (0, _customGrammar.combinedCustomGrammarFromReleaseContexts)(releaseContexts), florenceLexer = florenceLexerFromCombinedCustomGrammar(combinedCustomGrammar), florenceParser = florenceParserFromCombinedCustomGrammar(combinedCustomGrammar);
432
+ if (this.json !== null) {
433
+ var fileContextsJSON = this.json; ///
434
+ fileContextsJSON.forEach(function(fileContextJSON) {
435
+ var json = fileContextJSON, filePath = json.filePath, fileContext = _file.default.fromFilePathAndReleaseContext(filePath, releaseContext);
436
+ fileContext.initialise(json);
437
+ fileContexts.push(fileContext);
438
+ });
439
+ }
241
440
  this.lexer = florenceLexer; ///
242
441
  this.parser = florenceParser; ///
442
+ this.fileContexts = fileContexts;
243
443
  this.dependencyReleaseContexts = dependencyReleaseContexts;
244
444
  }
445
+ },
446
+ {
447
+ key: "toJSON",
448
+ value: function toJSON() {
449
+ var json = [];
450
+ this.fileContexts.forEach(function(fileContext) {
451
+ var fileContextJSON = fileContext.toJSON();
452
+ (0, _array.push)(json, fileContextJSON);
453
+ });
454
+ return json;
455
+ }
456
+ }
457
+ ], [
458
+ {
459
+ key: "fromLogJSONNameAndEntries",
460
+ value: function fromLogJSONNameAndEntries(log1, json, name, entries) {
461
+ var lexer = null, parser = null, verified = false, customGrammar = (0, _customGrammar.customGrammarFromNameAndEntries)(name, entries), fileContexts = null, dependencyReleaseContexts = null, releaseContext = new ReleaseContext(log1, json, name, entries, lexer, parser, verified, customGrammar, fileContexts, dependencyReleaseContexts);
462
+ return releaseContext;
463
+ }
245
464
  }
246
465
  ]);
247
466
  return ReleaseContext;
248
467
  }();
249
468
 
250
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250ZXh0L3JlbGVhc2UuanMiLCI8PGpzeC1jb25maWctcHJhZ21hLmpzPj4iXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IGxleGVyc1V0aWxpdGllcywgcGFyc2Vyc1V0aWxpdGllcyB9IGZyb20gXCJvY2NhbS1jdXN0b20tZ3JhbW1hcnNcIjtcblxuaW1wb3J0IHsgY29tYmluZWRDdXN0b21HcmFtbWFyRnJvbVJlbGVhc2VDb250ZXh0cyB9IGZyb20gXCIuLi91dGlsaXRpZXMvY3VzdG9tR3JhbW1hclwiO1xuXG5jb25zdCB7IGZsb3JlbmNlTGV4ZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyIH0gPSBsZXhlcnNVdGlsaXRpZXMsXG4gICAgICB7IGZsb3JlbmNlUGFyc2VyRnJvbUNvbWJpbmVkQ3VzdG9tR3JhbW1hciB9ID0gcGFyc2Vyc1V0aWxpdGllcztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUmVsZWFzZUNvbnRleHQge1xuICBjb25zdHJ1Y3Rvcihsb2csIG5hbWUsIGVudHJpZXMsIGxleGVyLCBwYXJzZXIsIHZlcmlmaWVkLCBjdXN0b21HcmFtbWFyLCBkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzKSB7XG4gICAgdGhpcy5sb2cgPSBsb2c7XG4gICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgICB0aGlzLmVudHJpZXMgPSBlbnRyaWVzO1xuICAgIHRoaXMubGV4ZXIgPSBsZXhlcjtcbiAgICB0aGlzLnBhcnNlciA9IHBhcnNlcjtcbiAgICB0aGlzLnZlcmlmaWVkID0gdmVyaWZpZWQ7XG4gICAgdGhpcy5jdXN0b21HcmFtbWFyID0gY3VzdG9tR3JhbW1hcjtcbiAgICB0aGlzLmRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMgPSBkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzO1xuICB9XG5cbiAgZ2V0TG9nKCkge1xuICAgIHJldHVybiBsb2c7XG4gIH1cblxuICBnZXROYW1lKCkge1xuICAgIHJldHVybiB0aGlzLm5hbWU7XG4gIH1cblxuICBnZXRFbnRyaWVzKCkge1xuICAgIHJldHVybiB0aGlzLmVudHJpZXM7XG4gIH1cblxuICBnZXRMZXhlcigpIHtcbiAgICByZXR1cm4gdGhpcy5sZXhlcjtcbiAgfVxuXG4gIGdldFBhcnNlcigpIHtcbiAgICByZXR1cm4gdGhpcy5wYXJzZXI7XG4gIH1cblxuICBpc1ZlcmlmaWVkKCkge1xuICAgIHJldHVybiB0aGlzLnZlcmlmaWVkO1xuICB9XG5cbiAgZ2V0Q3VzdG9tR3JhbW1hcigpIHtcbiAgICByZXR1cm4gdGhpcy5jdXN0b21HcmFtbWFyO1xuICB9XG5cbiAgZ2V0RGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cygpIHtcbiAgICByZXR1cm4gdGhpcy5kZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzO1xuICB9XG5cbiAgZmluZFR5cGVCeVR5cGVOYW1lKHR5cGVOYW1lKSB7XG4gICAgY29uc3QgdHlwZXMgPSB0aGlzLmdldFR5cGVzKCksXG4gICAgICAgICAgdHlwZSA9IHR5cGVzLmZpbmQoKHR5cGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG1hdGNoZXMgPSB0eXBlLm1hdGNoVHlwZU5hbWUodHlwZU5hbWUpO1xuXG4gICAgICAgICAgICBpZiAobWF0Y2hlcykge1xuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cblxuICBnZXRSZWxlYXNlTmFtZSgpIHtcbiAgICBjb25zdCBuYW1lID0gdGhpcy5nZXROYW1lKCksXG4gICAgICAgICAgcmVsZWFzZU5hbWUgPSBuYW1lOyAvLy9cblxuICAgIHJldHVybiByZWxlYXNlTmFtZTtcbiAgfVxuXG4gIGlzSW5pdGlhbGlzZWQoKSB7XG4gICAgY29uc3QgaW5pdGlhbGlzZWQgPSAodGhpcy5kZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzICE9PSBudWxsKTsgIC8vL1xuXG4gICAgcmV0dXJuIGluaXRpYWxpc2VkO1xuICB9XG5cbiAgZ2V0RmlsZShmaWxlUGF0aCkgeyByZXR1cm4gdGhpcy5lbnRyaWVzLmdldEZpbGUoZmlsZVBhdGgpOyB9XG5cbiAgZ2V0VmVyc2lvbigpIHsgcmV0dXJuIHRoaXMuZW50cmllcy5nZXRWZXJzaW9uKCk7IH1cblxuICBnZXRGaWxlUGF0aHMoKSB7IHJldHVybiB0aGlzLmVudHJpZXMuZ2V0RmlsZVBhdGhzKCk7IH1cblxuICBnZXREZXBlbmRlbmNpZXMoKSB7IHJldHVybiB0aGlzLmVudHJpZXMuZ2V0RGVwZW5kZW5jaWVzKCk7IH1cblxuICBtYXRjaFNob3J0ZW5lZFZlcnNpb24oc2hvcnRlbmVkVmVyc2lvbikgeyByZXR1cm4gdGhpcy5lbnRyaWVzLm1hdGNoU2hvcnRlbmVkVmVyc2lvbihzaG9ydGVuZWRWZXJzaW9uKTsgfVxuXG4gIHNldFZlcmlmaWVkKHZlcmlmaWVkKSB7XG4gICAgdGhpcy52ZXJpZmllZCA9IHZlcmlmaWVkO1xuICB9XG5cbiAgdG9rZW5pc2UoY29udGVudCkgeyByZXR1cm4gdGhpcy5sZXhlci50b2tlbmlzZShjb250ZW50KTsgfVxuXG4gIHBhcnNlKHRva2VucykgeyByZXR1cm4gdGhpcy5wYXJzZXIucGFyc2UodG9rZW5zKTsgfVxuXG4gIHRyYWNlKG1lc3NhZ2UsIG5vZGUgPSBudWxsLCB0b2tlbnMgPSBudWxsLCBmaWxlUGF0aCA9IG51bGwpIHsgdGhpcy5sb2cudHJhY2UobWVzc2FnZSwgbm9kZSwgdG9rZW5zLCBmaWxlUGF0aCk7IH1cblxuICBkZWJ1ZyhtZXNzYWdlLCBub2RlID0gbnVsbCwgdG9rZW5zID0gbnVsbCwgZmlsZVBhdGggPSBudWxsKSB7IHRoaXMubG9nLmRlYnVnKG1lc3NhZ2UsIG5vZGUsIHRva2VucywgZmlsZVBhdGgpOyB9XG5cbiAgaW5mbyhtZXNzYWdlLCBub2RlID0gbnVsbCwgdG9rZW5zID0gbnVsbCwgZmlsZVBhdGggPSBudWxsKSB7IHRoaXMubG9nLmluZm8obWVzc2FnZSwgbm9kZSwgdG9rZW5zLCBmaWxlUGF0aCk7IH1cblxuICB3YXJuaW5nKG1lc3NhZ2UsIG5vZGUgPSBudWxsLCB0b2tlbnMgPSBudWxsLCBmaWxlUGF0aCA9IG51bGwpIHsgdGhpcy5sb2cud2FybmluZyhtZXNzYWdlLCBub2RlLCB0b2tlbnMsIGZpbGVQYXRoKTsgfVxuXG4gIGVycm9yKG1lc3NhZ2UsIG5vZGUgPSBudWxsLCB0b2tlbnMgPSBudWxsLCBmaWxlUGF0aCA9IG51bGwpIHsgdGhpcy5sb2cuZXJyb3IobWVzc2FnZSwgbm9kZSwgdG9rZW5zLCBmaWxlUGF0aCk7IH1cblxuICBmYXRhbChtZXNzYWdlLCBub2RlID0gbnVsbCwgdG9rZW5zID0gbnVsbCwgZmlsZVBhdGggPSBudWxsKSB7IHRoaXMubG9nLmZhdGFsKG1lc3NhZ2UsIG5vZGUsIHRva2VucywgZmlsZVBhdGgpOyB9XG5cbiAgaW5pdGlhbGlzZShkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzKSB7XG4gICAgY29uc3QgcmVsZWFzZUNvbnRleHQgPSB0aGlzLCAgLy8vXG4gICAgICAgICAgcmVsZWFzZUNvbnRleHRzID0gW1xuICAgICAgICAgICAgcmVsZWFzZUNvbnRleHQsXG4gICAgICAgICAgICAuLi5kZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzXG4gICAgICAgICAgXSxcbiAgICAgICAgICBjb21iaW5lZEN1c3RvbUdyYW1tYXIgPSBjb21iaW5lZEN1c3RvbUdyYW1tYXJGcm9tUmVsZWFzZUNvbnRleHRzKHJlbGVhc2VDb250ZXh0cyksXG4gICAgICAgICAgZmxvcmVuY2VMZXhlciA9IGZsb3JlbmNlTGV4ZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyKGNvbWJpbmVkQ3VzdG9tR3JhbW1hciksXG4gICAgICAgICAgZmxvcmVuY2VQYXJzZXIgPSBmbG9yZW5jZVBhcnNlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIoY29tYmluZWRDdXN0b21HcmFtbWFyKTtcblxuICAgIHRoaXMubGV4ZXIgPSBmbG9yZW5jZUxleGVyOyAvLy9cblxuICAgIHRoaXMucGFyc2VyID0gZmxvcmVuY2VQYXJzZXI7IC8vL1xuXG4gICAgdGhpcy5kZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzID0gZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cztcbiAgfVxufVxuIiwiUmVhY3QuY3JlYXRlRWxlbWVudCJdLCJuYW1lcyI6WyJSZWxlYXNlQ29udGV4dCIsImZsb3JlbmNlTGV4ZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyIiwibGV4ZXJzVXRpbGl0aWVzIiwiZmxvcmVuY2VQYXJzZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyIiwicGFyc2Vyc1V0aWxpdGllcyIsImxvZyIsIm5hbWUiLCJlbnRyaWVzIiwibGV4ZXIiLCJwYXJzZXIiLCJ2ZXJpZmllZCIsImN1c3RvbUdyYW1tYXIiLCJkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzIiwiZ2V0TG9nIiwiZ2V0TmFtZSIsImdldEVudHJpZXMiLCJnZXRMZXhlciIsImdldFBhcnNlciIsImlzVmVyaWZpZWQiLCJnZXRDdXN0b21HcmFtbWFyIiwiZ2V0RGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cyIsImZpbmRUeXBlQnlUeXBlTmFtZSIsInR5cGVOYW1lIiwidHlwZXMiLCJnZXRUeXBlcyIsInR5cGUiLCJmaW5kIiwibWF0Y2hlcyIsIm1hdGNoVHlwZU5hbWUiLCJnZXRSZWxlYXNlTmFtZSIsInJlbGVhc2VOYW1lIiwiaXNJbml0aWFsaXNlZCIsImluaXRpYWxpc2VkIiwiZ2V0RmlsZSIsImZpbGVQYXRoIiwiZ2V0VmVyc2lvbiIsImdldEZpbGVQYXRocyIsImdldERlcGVuZGVuY2llcyIsIm1hdGNoU2hvcnRlbmVkVmVyc2lvbiIsInNob3J0ZW5lZFZlcnNpb24iLCJzZXRWZXJpZmllZCIsInRva2VuaXNlIiwiY29udGVudCIsInBhcnNlIiwidG9rZW5zIiwidHJhY2UiLCJtZXNzYWdlIiwibm9kZSIsImRlYnVnIiwiaW5mbyIsIndhcm5pbmciLCJlcnJvciIsImZhdGFsIiwiaW5pdGlhbGlzZSIsInJlbGVhc2VDb250ZXh0IiwicmVsZWFzZUNvbnRleHRzIiwiY29tYmluZWRDdXN0b21HcmFtbWFyIiwiY29tYmluZWRDdXN0b21HcmFtbWFyRnJvbVJlbGVhc2VDb250ZXh0cyIsImZsb3JlbmNlTGV4ZXIiLCJmbG9yZW5jZVBhcnNlciJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFTcUJBOzs7bUNBUDZCOzZCQUVPOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFekQsSUFBTSxBQUFFQyx5Q0FBMkNDLG9DQUFlLENBQTFERCx3Q0FDRixBQUFFRSwwQ0FBNENDLHFDQUFnQixDQUE1REQ7QUFFTyxJQUFBLEFBQU1ILCtCQUFOO2FBQU1BLGVBQ1BLLElBQUcsRUFBRUMsSUFBSSxFQUFFQyxPQUFPLEVBQUVDLEtBQUssRUFBRUMsTUFBTSxFQUFFQyxRQUFRLEVBQUVDLGFBQWEsRUFBRUMseUJBQXlCOzhCQUQ5RVo7UUFFakIsSUFBSSxDQUFDSyxHQUFHLEdBQUdBO1FBQ1gsSUFBSSxDQUFDQyxJQUFJLEdBQUdBO1FBQ1osSUFBSSxDQUFDQyxPQUFPLEdBQUdBO1FBQ2YsSUFBSSxDQUFDQyxLQUFLLEdBQUdBO1FBQ2IsSUFBSSxDQUFDQyxNQUFNLEdBQUdBO1FBQ2QsSUFBSSxDQUFDQyxRQUFRLEdBQUdBO1FBQ2hCLElBQUksQ0FBQ0MsYUFBYSxHQUFHQTtRQUNyQixJQUFJLENBQUNDLHlCQUF5QixHQUFHQTs7aUJBVGhCWjs7WUFZbkJhLEtBQUFBO21CQUFBQSxTQUFBQSxTQUFTO2dCQUNQLE9BQU9SO1lBQ1Q7OztZQUVBUyxLQUFBQTttQkFBQUEsU0FBQUEsVUFBVTtnQkFDUixPQUFPLElBQUksQ0FBQ1IsSUFBSTtZQUNsQjs7O1lBRUFTLEtBQUFBO21CQUFBQSxTQUFBQSxhQUFhO2dCQUNYLE9BQU8sSUFBSSxDQUFDUixPQUFPO1lBQ3JCOzs7WUFFQVMsS0FBQUE7bUJBQUFBLFNBQUFBLFdBQVc7Z0JBQ1QsT0FBTyxJQUFJLENBQUNSLEtBQUs7WUFDbkI7OztZQUVBUyxLQUFBQTttQkFB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
469
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250ZXh0L3JlbGVhc2UuanMiLCI8PGpzeC1jb25maWctcHJhZ21hLmpzPj4iXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IGxleGVyc1V0aWxpdGllcywgcGFyc2Vyc1V0aWxpdGllcyB9IGZyb20gXCJvY2NhbS1jdXN0b20tZ3JhbW1hcnNcIjtcblxuaW1wb3J0IEZpbGVDb250ZXh0IGZyb20gXCIuL2ZpbGVcIjtcblxuaW1wb3J0IHsgcHVzaCB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IGN1c3RvbUdyYW1tYXJGcm9tTmFtZUFuZEVudHJpZXMsIGNvbWJpbmVkQ3VzdG9tR3JhbW1hckZyb21SZWxlYXNlQ29udGV4dHMgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2N1c3RvbUdyYW1tYXJcIjtcblxuY29uc3QgeyBmbG9yZW5jZUxleGVyRnJvbUNvbWJpbmVkQ3VzdG9tR3JhbW1hciB9ID0gbGV4ZXJzVXRpbGl0aWVzLFxuICAgICAgeyBmbG9yZW5jZVBhcnNlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIgfSA9IHBhcnNlcnNVdGlsaXRpZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJlbGVhc2VDb250ZXh0IHtcbiAgY29uc3RydWN0b3IobG9nLCBqc29uLCBuYW1lLCBlbnRyaWVzLCBsZXhlciwgcGFyc2VyLCB2ZXJpZmllZCwgY3VzdG9tR3JhbW1hciwgZmlsZUNvbnRleHRzLCBkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzKSB7XG4gICAgdGhpcy5sb2cgPSBsb2c7XG4gICAgdGhpcy5qc29uID0ganNvbjtcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xuICAgIHRoaXMuZW50cmllcyA9IGVudHJpZXM7XG4gICAgdGhpcy5sZXhlciA9IGxleGVyO1xuICAgIHRoaXMucGFyc2VyID0gcGFyc2VyO1xuICAgIHRoaXMudmVyaWZpZWQgPSB2ZXJpZmllZDtcbiAgICB0aGlzLmN1c3RvbUdyYW1tYXIgPSBjdXN0b21HcmFtbWFyO1xuICAgIHRoaXMuZmlsZUNvbnRleHRzID0gZmlsZUNvbnRleHRzO1xuICAgIHRoaXMuZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cyA9IGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHM7XG4gIH1cblxuICBnZXRMb2coKSB7XG4gICAgcmV0dXJuIGxvZztcbiAgfVxuXG4gIGdldEpTT04oKSB7XG4gICAgcmV0dXJuIHRoaXMuanNvbjtcbiAgfVxuXG4gIGdldE5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMubmFtZTtcbiAgfVxuXG4gIGdldEVudHJpZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMuZW50cmllcztcbiAgfVxuXG4gIGdldExleGVyKCkge1xuICAgIHJldHVybiB0aGlzLmxleGVyO1xuICB9XG5cbiAgZ2V0UGFyc2VyKCkge1xuICAgIHJldHVybiB0aGlzLnBhcnNlcjtcbiAgfVxuXG4gIGlzVmVyaWZpZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMudmVyaWZpZWQ7XG4gIH1cblxuICBnZXRDdXN0b21HcmFtbWFyKCkge1xuICAgIHJldHVybiB0aGlzLmN1c3RvbUdyYW1tYXI7XG4gIH1cblxuICBnZXRGaWxlQ29udGV4dHMoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmlsZUNvbnRleHRzO1xuICB9XG5cbiAgZ2V0RGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cygpIHtcbiAgICByZXR1cm4gdGhpcy5kZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzO1xuICB9XG5cbiAgZ2V0TGFiZWxzKGluY2x1ZGVEZXBlbmRlbmNpZXMgPSB0cnVlKSB7XG4gICAgY29uc3QgbGFiZWxzID0gW107XG5cbiAgICB0aGlzLmZpbGVDb250ZXh0cy5mb3JFYWNoKChmaWxlQ29udGV4dCkgPT4ge1xuICAgICAgY29uc3QgaW5jbHVkZVJlbGVhc2UgPSBmYWxzZSxcbiAgICAgICAgICAgIGZpbGVDb250ZXh0TGFiZWxzID0gZmlsZUNvbnRleHQuZ2V0TGFiZWxzKGluY2x1ZGVSZWxlYXNlKTtcblxuICAgICAgcHVzaChsYWJlbHMsIGZpbGVDb250ZXh0TGFiZWxzKTtcbiAgICB9KTtcblxuICAgIGlmIChpbmNsdWRlRGVwZW5kZW5jaWVzKSB7XG4gICAgICBjb25zdCBkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzID0gdGhpcy5nZXREZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzKCk7XG5cbiAgICAgIGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMuZm9yRWFjaCgocmVsZWFzZUNvbnRleHQpID0+IHtcbiAgICAgICAgY29uc3QgaW5jbHVkZURlcGVuZGVuY2llcyA9IGZhbHNlLFxuICAgICAgICAgIHJlbGVhc2VDb250ZXh0TGFiZWxzID0gcmVsZWFzZUNvbnRleHQuZ2V0TGFiZWxzKGluY2x1ZGVEZXBlbmRlbmNpZXMpO1xuXG4gICAgICAgIHB1c2gobGFiZWxzLCByZWxlYXNlQ29udGV4dExhYmVscyk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gbGFiZWxzO1xuICB9XG5cbiAgZ2V0VHlwZXMoaW5jbHVkZURlcGVuZGVuY2llcyA9IHRydWUpIHtcbiAgICBjb25zdCB0eXBlcyA9IFtdO1xuXG4gICAgdGhpcy5maWxlQ29udGV4dHMuZm9yRWFjaCgoZmlsZUNvbnRleHQpID0+IHtcbiAgICAgIGNvbnN0IGluY2x1ZGVSZWxlYXNlID0gZmFsc2UsXG4gICAgICAgICAgICBmaWxlQ29udGV4dFR5cGVzID0gZmlsZUNvbnRleHQuZ2V0VHlwZXMoaW5jbHVkZVJlbGVhc2UpO1xuXG4gICAgICBwdXNoKHR5cGVzLCBmaWxlQ29udGV4dFR5cGVzKTtcbiAgICB9KTtcblxuICAgIGlmIChpbmNsdWRlRGVwZW5kZW5jaWVzKSB7XG4gICAgICBjb25zdCBkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzID0gdGhpcy5nZXREZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzKCk7XG5cbiAgICAgIGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMuZm9yRWFjaCgocmVsZWFzZUNvbnRleHQpID0+IHtcbiAgICAgICAgY29uc3QgaW5jbHVkZURlcGVuZGVuY2llcyA9IGZhbHNlLFxuICAgICAgICAgICAgICByZWxlYXNlQ29udGV4dFR5cGVzID0gcmVsZWFzZUNvbnRleHQuZ2V0VHlwZXMoaW5jbHVkZURlcGVuZGVuY2llcyk7XG5cbiAgICAgICAgcHVzaCh0eXBlcywgcmVsZWFzZUNvbnRleHRUeXBlcyk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHlwZXM7XG4gIH1cblxuICBnZXRSdWxlcyhpbmNsdWRlRGVwZW5kZW5jaWVzID0gdHJ1ZSkge1xuICAgIGNvbnN0IHJ1bGVzID0gW107XG5cbiAgICB0aGlzLmZpbGVDb250ZXh0cy5mb3JFYWNoKChmaWxlQ29udGV4dCkgPT4ge1xuICAgICAgY29uc3QgaW5jbHVkZVJlbGVhc2UgPSBmYWxzZSxcbiAgICAgICAgICAgIGZpbGVDb250ZXh0UnVsZXMgPSBmaWxlQ29udGV4dC5nZXRSdWxlcyhpbmNsdWRlUmVsZWFzZSk7XG5cbiAgICAgIHB1c2gocnVsZXMsIGZpbGVDb250ZXh0UnVsZXMpO1xuICAgIH0pO1xuXG4gICAgaWYgKGluY2x1ZGVEZXBlbmRlbmNpZXMpIHtcbiAgICAgIGNvbnN0IGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMgPSB0aGlzLmdldERlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMoKTtcblxuICAgICAgZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cy5mb3JFYWNoKChyZWxlYXNlQ29udGV4dCkgPT4ge1xuICAgICAgICBjb25zdCBpbmNsdWRlRGVwZW5kZW5jaWVzID0gZmFsc2UsXG4gICAgICAgICAgICAgIHJlbGVhc2VDb250ZXh0UnVsZXMgPSByZWxlYXNlQ29udGV4dC5nZXRSdWxlcyhpbmNsdWRlRGVwZW5kZW5jaWVzKTtcblxuICAgICAgICBwdXNoKHJ1bGVzLCByZWxlYXNlQ29udGV4dFJ1bGVzKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBydWxlcztcbiAgfVxuXG4gIGdldEF4aW9tcyhpbmNsdWRlRGVwZW5kZW5jaWVzID0gdHJ1ZSkge1xuICAgIGNvbnN0IGF4aW9tcyA9IFtdO1xuXG4gICAgdGhpcy5maWxlQ29udGV4dHMuZm9yRWFjaCgoZmlsZUNvbnRleHQpID0+IHtcbiAgICAgIGNvbnN0IGluY2x1ZGVSZWxlYXNlID0gZmFsc2UsXG4gICAgICAgICAgICBmaWxlQ29udGV4dEF4aW9tcyA9IGZpbGVDb250ZXh0LmdldEF4aW9tcyhpbmNsdWRlUmVsZWFzZSk7XG5cbiAgICAgIHB1c2goYXhpb21zLCBmaWxlQ29udGV4dEF4aW9tcyk7XG4gICAgfSk7XG5cbiAgICBpZiAoaW5jbHVkZURlcGVuZGVuY2llcykge1xuICAgICAgY29uc3QgZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cyA9IHRoaXMuZ2V0RGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cygpO1xuXG4gICAgICBkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzLmZvckVhY2goKHJlbGVhc2VDb250ZXh0KSA9PiB7XG4gICAgICAgIGNvbnN0IGluY2x1ZGVEZXBlbmRlbmNpZXMgPSBmYWxzZSxcbiAgICAgICAgICAgICAgcmVsZWFzZUNvbnRleHRBeGlvbXMgPSByZWxlYXNlQ29udGV4dC5nZXRBeGlvbXMoaW5jbHVkZURlcGVuZGVuY2llcyk7XG5cbiAgICAgICAgcHVzaChheGlvbXMsIHJlbGVhc2VDb250ZXh0QXhpb21zKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBheGlvbXM7XG4gIH1cblxuICBnZXRMZW1tYXMoaW5jbHVkZURlcGVuZGVuY2llcyA9IHRydWUpIHtcbiAgICBjb25zdCBsZW1tYXMgPSBbXTtcblxuICAgIHRoaXMuZmlsZUNvbnRleHRzLmZvckVhY2goKGZpbGVDb250ZXh0KSA9PiB7XG4gICAgICBjb25zdCBpbmNsdWRlUmVsZWFzZSA9IGZhbHNlLFxuICAgICAgICAgICAgZmlsZUNvbnRleHRMZW1tYXMgPSBmaWxlQ29udGV4dC5nZXRMZW1tYXMoaW5jbHVkZVJlbGVhc2UpO1xuXG4gICAgICBwdXNoKGxlbW1hcywgZmlsZUNvbnRleHRMZW1tYXMpO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIGxlbW1hcztcbiAgfVxuXG4gIGdldFRoZW9yZW1zKGluY2x1ZGVEZXBlbmRlbmNpZXMgPSB0cnVlKSB7XG4gICAgY29uc3QgdGhlb3JlbXMgPSBbXTtcblxuICAgIHRoaXMuZmlsZUNvbnRleHRzLmZvckVhY2goKGZpbGVDb250ZXh0KSA9PiB7XG4gICAgICBjb25zdCBpbmNsdWRlUmVsZWFzZSA9IGZhbHNlLFxuICAgICAgICAgICAgZmlsZUNvbnRleHRUaGVvcmVtcyA9IGZpbGVDb250ZXh0LmdldFRoZW9yZW1zKGluY2x1ZGVSZWxlYXNlKTtcblxuICAgICAgcHVzaCh0aGVvcmVtcywgZmlsZUNvbnRleHRUaGVvcmVtcyk7XG4gICAgfSk7XG5cbiAgICBpZiAoaW5jbHVkZURlcGVuZGVuY2llcykge1xuICAgICAgY29uc3QgZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cyA9IHRoaXMuZ2V0RGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cygpO1xuXG4gICAgICBkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzLmZvckVhY2goKHJlbGVhc2VDb250ZXh0KSA9PiB7XG4gICAgICAgIGNvbnN0IGluY2x1ZGVEZXBlbmRlbmNpZXMgPSBmYWxzZSxcbiAgICAgICAgICAgICAgcmVsZWFzZUNvbnRleHRUaGVvcmVtcyA9IHJlbGVhc2VDb250ZXh0LmdldFRoZW9yZW1zKGluY2x1ZGVEZXBlbmRlbmNpZXMpO1xuXG4gICAgICAgIHB1c2godGhlb3JlbXMsIHJlbGVhc2VDb250ZXh0VGhlb3JlbXMpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoZW9yZW1zO1xuICB9XG5cbiAgZ2V0Q29uamVjdHVyZXMoaW5jbHVkZURlcGVuZGVuY2llcyA9IHRydWUpIHtcbiAgICBjb25zdCBjb25qZWN0dXJlcyA9IFtdO1xuXG4gICAgdGhpcy5maWxlQ29udGV4dHMuZm9yRWFjaCgoZmlsZUNvbnRleHQpID0+IHtcbiAgICAgIGNvbnN0IGluY2x1ZGVSZWxlYXNlID0gZmFsc2UsXG4gICAgICAgICAgICBmaWxlQ29udGV4dENvbmplY3R1cmVzID0gZmlsZUNvbnRleHQuZ2V0Q29uamVjdHVyZXMoaW5jbHVkZVJlbGVhc2UpO1xuXG4gICAgICBwdXNoKGNvbmplY3R1cmVzLCBmaWxlQ29udGV4dENvbmplY3R1cmVzKTtcbiAgICB9KTtcblxuICAgIGlmIChpbmNsdWRlRGVwZW5kZW5jaWVzKSB7XG4gICAgICBjb25zdCBkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzID0gdGhpcy5nZXREZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzKCk7XG5cbiAgICAgIGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMuZm9yRWFjaCgocmVsZWFzZUNvbnRleHQpID0+IHtcbiAgICAgICAgY29uc3QgaW5jbHVkZURlcGVuZGVuY2llcyA9IGZhbHNlLFxuICAgICAgICAgICAgICByZWxlYXNlQ29udGV4dENvbmplY3R1cmVzID0gcmVsZWFzZUNvbnRleHQuZ2V0Q29uamVjdHVyZXMoaW5jbHVkZURlcGVuZGVuY2llcyk7XG5cbiAgICAgICAgcHVzaChjb25qZWN0dXJlcywgcmVsZWFzZUNvbnRleHRDb25qZWN0dXJlcyk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gY29uamVjdHVyZXM7XG4gIH1cblxuICBnZXRDb21iaW5hdG9ycyhpbmNsdWRlRGVwZW5kZW5jaWVzID0gdHJ1ZSkge1xuICAgIGNvbnN0IGNvbWJpbmF0b3JzID0gW107XG5cbiAgICB0aGlzLmZpbGVDb250ZXh0cy5mb3JFYWNoKChmaWxlQ29udGV4dCkgPT4ge1xuICAgICAgY29uc3QgaW5jbHVkZVJlbGVhc2UgPSBmYWxzZSxcbiAgICAgICAgICAgIGZpbGVDb250ZXh0Q29tYmluYXRvcnMgPSBmaWxlQ29udGV4dC5nZXRDb21iaW5hdG9ycyhpbmNsdWRlUmVsZWFzZSk7XG5cbiAgICAgIHB1c2goY29tYmluYXRvcnMsIGZpbGVDb250ZXh0Q29tYmluYXRvcnMpO1xuICAgIH0pO1xuXG4gICAgaWYgKGluY2x1ZGVEZXBlbmRlbmNpZXMpIHtcbiAgICAgIGNvbnN0IGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMgPSB0aGlzLmdldERlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMoKTtcblxuICAgICAgZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cy5mb3JFYWNoKChyZWxlYXNlQ29udGV4dCkgPT4ge1xuICAgICAgICBjb25zdCBpbmNsdWRlRGVwZW5kZW5jaWVzID0gZmFsc2UsXG4gICAgICAgICAgICAgIHJlbGVhc2VDb250ZXh0Q29tYmluYXRvcnMgPSByZWxlYXNlQ29udGV4dC5nZXRDb21iaW5hdG9ycyhpbmNsdWRlRGVwZW5kZW5jaWVzKTtcblxuICAgICAgICBwdXNoKGNvbWJpbmF0b3JzLCByZWxlYXNlQ29udGV4dENvbWJpbmF0b3JzKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBjb21iaW5hdG9ycztcbiAgfVxuXG4gIGdldENvbnN0cnVjdG9ycyhpbmNsdWRlRGVwZW5kZW5jaWVzID0gdHJ1ZSkge1xuICAgIGNvbnN0IGNvbnN0cnVjdG9ycyA9IFtdO1xuXG4gICAgdGhpcy5maWxlQ29udGV4dHMuZm9yRWFjaCgoZmlsZUNvbnRleHQpID0+IHtcbiAgICAgIGNvbnN0IGluY2x1ZGVSZWxlYXNlID0gZmFsc2UsXG4gICAgICAgICAgICBmaWxlQ29udGV4dENvbnN0cnVjdG9ycyA9IGZpbGVDb250ZXh0LmdldENvbnN0cnVjdG9ycyhpbmNsdWRlUmVsZWFzZSk7XG5cbiAgICAgIHB1c2goY29uc3RydWN0b3JzLCBmaWxlQ29udGV4dENvbnN0cnVjdG9ycyk7XG4gICAgfSk7XG5cbiAgICBpZiAoaW5jbHVkZURlcGVuZGVuY2llcykge1xuICAgICAgY29uc3QgZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cyA9IHRoaXMuZ2V0RGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cygpO1xuXG4gICAgICBkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzLmZvckVhY2goKHJlbGVhc2VDb250ZXh0KSA9PiB7XG4gICAgICAgIGNvbnN0IGluY2x1ZGVEZXBlbmRlbmNpZXMgPSBmYWxzZSxcbiAgICAgICAgICAgICAgcmVsZWFzZUNvbnRleHRDb25zdHJ1Y3RvcnMgPSByZWxlYXNlQ29udGV4dC5nZXRDb25zdHJ1Y3RvcnMoaW5jbHVkZURlcGVuZGVuY2llcyk7XG5cbiAgICAgICAgcHVzaChjb25zdHJ1Y3RvcnMsIHJlbGVhc2VDb250ZXh0Q29uc3RydWN0b3JzKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBjb25zdHJ1Y3RvcnM7XG4gIH1cblxuICBhZGRGaWxlQ29udGV4dChmaWxlQ29udGV4dCkge1xuICAgIHRoaXMuZmlsZUNvbnRleHRzLnB1c2goZmlsZUNvbnRleHQpO1xuICB9XG5cbiAgZmluZFR5cGVCeVR5cGVOYW1lKHR5cGVOYW1lKSB7XG4gICAgY29uc3QgdHlwZXMgPSB0aGlzLmdldFR5cGVzKCksXG4gICAgICAgICAgdHlwZSA9IHR5cGVzLmZpbmQoKHR5cGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG1hdGNoZXMgPSB0eXBlLm1hdGNoVHlwZU5hbWUodHlwZU5hbWUpO1xuXG4gICAgICAgICAgICBpZiAobWF0Y2hlcykge1xuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cblxuICBnZXRSZWxlYXNlTmFtZSgpIHtcbiAgICBjb25zdCBuYW1lID0gdGhpcy5nZXROYW1lKCksXG4gICAgICAgICAgcmVsZWFzZU5hbWUgPSBuYW1lOyAvLy9cblxuICAgIHJldHVybiByZWxlYXNlTmFtZTtcbiAgfVxuXG4gIGlzSW5pdGlhbGlzZWQoKSB7XG4gICAgY29uc3QgaW5pdGlhbGlzZWQgPSAodGhpcy5kZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzICE9PSBudWxsKTsgIC8vL1xuXG4gICAgcmV0dXJuIGluaXRpYWxpc2VkO1xuICB9XG5cbiAgZ2V0RmlsZShmaWxlUGF0aCkgeyByZXR1cm4gdGhpcy5lbnRyaWVzLmdldEZpbGUoZmlsZVBhdGgpOyB9XG5cbiAgZ2V0VmVyc2lvbigpIHsgcmV0dXJuIHRoaXMuZW50cmllcy5nZXRWZXJzaW9uKCk7IH1cblxuICBnZXRGaWxlUGF0aHMoKSB7IHJldHVybiB0aGlzLmVudHJpZXMuZ2V0RmlsZVBhdGhzKCk7IH1cblxuICBnZXREZXBlbmRlbmNpZXMoKSB7IHJldHVybiB0aGlzLmVudHJpZXMuZ2V0RGVwZW5kZW5jaWVzKCk7IH1cblxuICBtYXRjaFNob3J0ZW5lZFZlcnNpb24oc2hvcnRlbmVkVmVyc2lvbikgeyByZXR1cm4gdGhpcy5lbnRyaWVzLm1hdGNoU2hvcnRlbmVkVmVyc2lvbihzaG9ydGVuZWRWZXJzaW9uKTsgfVxuXG4gIHNldFZlcmlmaWVkKHZlcmlmaWVkKSB7XG4gICAgdGhpcy52ZXJpZmllZCA9IHZlcmlmaWVkO1xuICB9XG5cbiAgdG9rZW5pc2UoY29udGVudCkgeyByZXR1cm4gdGhpcy5sZXhlci50b2tlbmlzZShjb250ZW50KTsgfVxuXG4gIHBhcnNlKHRva2VucykgeyByZXR1cm4gdGhpcy5wYXJzZXIucGFyc2UodG9rZW5zKTsgfVxuXG4gIHRyYWNlKG1lc3NhZ2UsIG5vZGUgPSBudWxsLCB0b2tlbnMgPSBudWxsLCBmaWxlUGF0aCA9IG51bGwpIHsgdGhpcy5sb2cudHJhY2UobWVzc2FnZSwgbm9kZSwgdG9rZW5zLCBmaWxlUGF0aCk7IH1cblxuICBkZWJ1ZyhtZXNzYWdlLCBub2RlID0gbnVsbCwgdG9rZW5zID0gbnVsbCwgZmlsZVBhdGggPSBudWxsKSB7IHRoaXMubG9nLmRlYnVnKG1lc3NhZ2UsIG5vZGUsIHRva2VucywgZmlsZVBhdGgpOyB9XG5cbiAgaW5mbyhtZXNzYWdlLCBub2RlID0gbnVsbCwgdG9rZW5zID0gbnVsbCwgZmlsZVBhdGggPSBudWxsKSB7IHRoaXMubG9nLmluZm8obWVzc2FnZSwgbm9kZSwgdG9rZW5zLCBmaWxlUGF0aCk7IH1cblxuICB3YXJuaW5nKG1lc3NhZ2UsIG5vZGUgPSBudWxsLCB0b2tlbnMgPSBudWxsLCBmaWxlUGF0aCA9IG51bGwpIHsgdGhpcy5sb2cud2FybmluZyhtZXNzYWdlLCBub2RlLCB0b2tlbnMsIGZpbGVQYXRoKTsgfVxuXG4gIGVycm9yKG1lc3NhZ2UsIG5vZGUgPSBudWxsLCB0b2tlbnMgPSBudWxsLCBmaWxlUGF0aCA9IG51bGwpIHsgdGhpcy5sb2cuZXJyb3IobWVzc2FnZSwgbm9kZSwgdG9rZW5zLCBmaWxlUGF0aCk7IH1cblxuICBmYXRhbChtZXNzYWdlLCBub2RlID0gbnVsbCwgdG9rZW5zID0gbnVsbCwgZmlsZVBhdGggPSBudWxsKSB7IHRoaXMubG9nLmZhdGFsKG1lc3NhZ2UsIG5vZGUsIHRva2VucywgZmlsZVBhdGgpOyB9XG5cbiAgaW5pdGlhbGlzZShkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzKSB7XG4gICAgY29uc3QgZmlsZUNvbnRleHRzID0gW10sXG4gICAgICAgICAgcmVsZWFzZUNvbnRleHQgPSB0aGlzLCAgLy8vXG4gICAgICAgICAgcmVsZWFzZUNvbnRleHRzID0gW1xuICAgICAgICAgICAgcmVsZWFzZUNvbnRleHQsXG4gICAgICAgICAgICAuLi5kZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzXG4gICAgICAgICAgXSxcbiAgICAgICAgICBjb21iaW5lZEN1c3RvbUdyYW1tYXIgPSBjb21iaW5lZEN1c3RvbUdyYW1tYXJGcm9tUmVsZWFzZUNvbnRleHRzKHJlbGVhc2VDb250ZXh0cyksXG4gICAgICAgICAgZmxvcmVuY2VMZXhlciA9IGZsb3JlbmNlTGV4ZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyKGNvbWJpbmVkQ3VzdG9tR3JhbW1hciksXG4gICAgICAgICAgZmxvcmVuY2VQYXJzZXIgPSBmbG9yZW5jZVBhcnNlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIoY29tYmluZWRDdXN0b21HcmFtbWFyKTtcblxuICAgIGlmICh0aGlzLmpzb24gIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IGZpbGVDb250ZXh0c0pTT04gPSB0aGlzLmpzb247IC8vL1xuXG4gICAgICBmaWxlQ29udGV4dHNKU09OLmZvckVhY2goKGZpbGVDb250ZXh0SlNPTikgPT4ge1xuICAgICAgICBjb25zdCBqc29uID0gZmlsZUNvbnRleHRKU09OLCAvLy9cbiAgICAgICAgICAgICAgeyBmaWxlUGF0aCB9ID0ganNvbixcbiAgICAgICAgICAgICAgZmlsZUNvbnRleHQgPSBGaWxlQ29udGV4dC5mcm9tRmlsZVBhdGhBbmRSZWxlYXNlQ29udGV4dChmaWxlUGF0aCwgcmVsZWFzZUNvbnRleHQpO1xuXG4gICAgICAgIGZpbGVDb250ZXh0LmluaXRpYWxpc2UoanNvbik7XG5cbiAgICAgICAgZmlsZUNvbnRleHRzLnB1c2goZmlsZUNvbnRleHQpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5sZXhlciA9IGZsb3JlbmNlTGV4ZXI7IC8vL1xuXG4gICAgdGhpcy5wYXJzZXIgPSBmbG9yZW5jZVBhcnNlcjsgLy8vXG5cbiAgICB0aGlzLmZpbGVDb250ZXh0cyA9IGZpbGVDb250ZXh0cztcblxuICAgIHRoaXMuZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cyA9IGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHM7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgY29uc3QganNvbiA9IFtdO1xuXG4gICAgdGhpcy5maWxlQ29udGV4dHMuZm9yRWFjaCgoZmlsZUNvbnRleHQpID0+IHtcbiAgICAgIGNvbnN0IGZpbGVDb250ZXh0SlNPTiA9IGZpbGVDb250ZXh0LnRvSlNPTigpO1xuXG4gICAgICBwdXNoKGpzb24sIGZpbGVDb250ZXh0SlNPTik7XG4gICAgfSk7XG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTG9nSlNPTk5hbWVBbmRFbnRyaWVzKGxvZywganNvbiwgbmFtZSwgZW50cmllcykge1xuICAgIGNvbnN0IGxleGVyID0gbnVsbCxcbiAgICAgICAgICBwYXJzZXIgPSBudWxsLFxuICAgICAgICAgIHZlcmlmaWVkID0gZmFsc2UsXG4gICAgICAgICAgY3VzdG9tR3JhbW1hciA9IGN1c3RvbUdyYW1tYXJGcm9tTmFtZUFuZEVudHJpZXMobmFtZSwgZW50cmllcyksXG4gICAgICAgICAgZmlsZUNvbnRleHRzID0gbnVsbCxcbiAgICAgICAgICBkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzID0gbnVsbCxcbiAgICAgICAgICByZWxlYXNlQ29udGV4dCA9IG5ldyBSZWxlYXNlQ29udGV4dChsb2csIGpzb24sIG5hbWUsIGVudHJpZXMsIGxleGVyLCBwYXJzZXIsIHZlcmlmaWVkLCBjdXN0b21HcmFtbWFyLCBmaWxlQ29udGV4dHMsIGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMpO1xuXG4gICAgcmV0dXJuIHJlbGVhc2VDb250ZXh0O1xuICB9XG59XG4iLCJSZWFjdC5jcmVhdGVFbGVtZW50Il0sIm5hbWVzIjpbIlJlbGVhc2VDb250ZXh0IiwiZmxvcmVuY2VMZXhlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIiLCJsZXhlcnNVdGlsaXRpZXMiLCJmbG9yZW5jZVBhcnNlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIiLCJwYXJzZXJzVXRpbGl0aWVzIiwibG9nIiwianNvbiIsIm5hbWUiLCJlbnRyaWVzIiwibGV4ZXIiLCJwYXJzZXIiLCJ2ZXJpZmllZCIsImN1c3RvbUdyYW1tYXIiLCJmaWxlQ29udGV4dHMiLCJkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzIiwiZ2V0TG9nIiwiZ2V0SlNPTiIsImdldE5hbWUiLCJnZXRFbnRyaWVzIiwiZ2V0TGV4ZXIiLCJnZXRQYXJzZXIiLCJpc1ZlcmlmaWVkIiwiZ2V0Q3VzdG9tR3JhbW1hciIsImdldEZpbGVDb250ZXh0cyIsImdldERlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMiLCJnZXRMYWJlbHMiLCJpbmNsdWRlRGVwZW5kZW5jaWVzIiwibGFiZWxzIiwiZm9yRWFjaCIsImZpbGVDb250ZXh0IiwiaW5jbHVkZVJlbGVhc2UiLCJmaWxlQ29udGV4dExhYmVscyIsInB1c2giLCJyZWxlYXNlQ29udGV4dCIsInJlbGVhc2VDb250ZXh0TGFiZWxzIiwiZ2V0VHlwZXMiLCJ0eXBlcyIsImZpbGVDb250ZXh0VHlwZXMiLCJyZWxlYXNlQ29udGV4dFR5cGVzIiwiZ2V0UnVsZXMiLCJydWxlcyIsImZpbGVDb250ZXh0UnVsZXMiLCJyZWxlYXNlQ29udGV4dFJ1bGVzIiwiZ2V0QXhpb21zIiwiYXhpb21zIiwiZmlsZUNvbnRleHRBeGlvbXMiLCJyZWxlYXNlQ29udGV4dEF4aW9tcyIsImdldExlbW1hcyIsImxlbW1hcyIsImZpbGVDb250ZXh0TGVtbWFzIiwiZ2V0VGhlb3JlbXMiLCJ0aGVvcmVtcyIsImZpbGVDb250ZXh0VGhlb3JlbXMiLCJyZWxlYXNlQ29udGV4dFRoZW9yZW1zIiwiZ2V0Q29uamVjdHVyZXMiLCJjb25qZWN0dXJlcyIsImZpbGVDb250ZXh0Q29uamVjdHVyZXMiLCJyZWxlYXNlQ29udGV4dENvbmplY3R1cmVzIiwiZ2V0Q29tYmluYXRvcnMiLCJjb21iaW5hdG9ycyIsImZpbGVDb250ZXh0Q29tYmluYXRvcnMiLCJyZWxlYXNlQ29udGV4dENvbWJpbmF0b3JzIiwiZ2V0Q29uc3RydWN0b3JzIiwiY29uc3RydWN0b3JzIiwiZmlsZUNvbnRleHRDb25zdHJ1Y3RvcnMiLCJyZWxlYXNlQ29udGV4dENvbnN0cnVjdG9ycyIsImFkZEZpbGVDb250ZXh0IiwiZmluZFR5cGVCeVR5cGVOYW1lIiwidHlwZU5hbWUiLCJ0eXBlIiwiZmluZCIsIm1hdGNoZXMiLCJtYXRjaFR5cGVOYW1lIiwiZ2V0UmVsZWFzZU5hbWUiLCJyZWxlYXNlTmFtZSIsImlzSW5pdGlhbGlzZWQiLCJpbml0aWFsaXNlZCIsImdldEZpbGUiLCJmaWxlUGF0aCIsImdldFZlcnNpb24iLCJnZXRGaWxlUGF0aHMiLCJnZXREZXBlbmRlbmNpZXMiLCJtYXRjaFNob3J0ZW5lZFZlcnNpb24iLCJzaG9ydGVuZWRWZXJzaW9uIiwic2V0VmVyaWZpZWQiLCJ0b2tlbmlzZSIsImNvbnRlbnQiLCJwYXJzZSIsInRva2VucyIsInRyYWNlIiwibWVzc2FnZSIsIm5vZGUiLCJkZWJ1ZyIsImluZm8iLCJ3YXJuaW5nIiwiZXJyb3IiLCJmYXRhbCIsImluaXRpYWxpc2UiLCJyZWxlYXNlQ29udGV4dHMiLCJjb21iaW5lZEN1c3RvbUdyYW1tYXIiLCJjb21iaW5lZEN1c3RvbUdyYW1tYXJGcm9tUmVsZWFzZUNvbnRleHRzIiwiZmxvcmVuY2VMZXhlciIsImZsb3JlbmNlUGFyc2VyIiwiZmlsZUNvbnRleHRzSlNPTiIsImZpbGVDb250ZXh0SlNPTiIsIkZpbGVDb250ZXh0IiwiZnJvbUZpbGVQYXRoQW5kUmVsZWFzZUNvbnRleHQiLCJ0b0pTT04iLCJmcm9tTG9nSlNPTk5hbWVBbmRFbnRyaWVzIiwiY3VzdG9tR3JhbW1hckZyb21OYW1lQW5kRW50cmllcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFZcUJBOzs7bUNBVjZCO3lEQUUxQjtxQkFFSDs2QkFDcUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTFGLElBQU0sQUFBRUMseUNBQTJDQyxvQ0FBZSxDQUExREQsd0NBQ0YsQUFBRUUsMENBQTRDQyxxQ0FBZ0IsQ0FBNUREO0FBRU8sSUFBQSxBQUFNSCwrQkFBTjthQUFNQSxlQUNQSyxJQUFHLEVBQUVDLElBQUksRUFBRUMsSUFBSSxFQUFFQyxPQUFPLEVBQUVDLEtBQUssRUFBRUMsTUFBTSxFQUFFQyxRQUFRLEVBQUVDLGFBQWEsRUFBRUMsWUFBWSxFQUFFQyx5QkFBeUI7OEJBRGxHZDtRQUVqQixJQUFJLENBQUNLLEdBQUcsR0FBR0E7UUFDWCxJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLE9BQU8sR0FBR0E7UUFDZixJQUFJLENBQUNDLEtBQUssR0FBR0E7UUFDYixJQUFJLENBQUNDLE1BQU0sR0FBR0E7UUFDZCxJQUFJ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
package/lib/index.js CHANGED
@@ -18,12 +18,6 @@ _export(exports, {
18
18
  ReleaseContext: function() {
19
19
  return _release1.default;
20
20
  },
21
- FileReleaseContext: function() {
22
- return _file.default;
23
- },
24
- DirectoryReleaseContext: function() {
25
- return _directory.default;
26
- },
27
21
  customGrammarUtilities: function() {
28
22
  return _customGrammar.default;
29
23
  },
@@ -34,8 +28,6 @@ _export(exports, {
34
28
  var _log = /*#__PURE__*/ _interopRequireDefault(require("./log"));
35
29
  var _release = /*#__PURE__*/ _interopRequireDefault(require("./verify/release"));
36
30
  var _release1 = /*#__PURE__*/ _interopRequireDefault(require("./context/release"));
37
- var _file = /*#__PURE__*/ _interopRequireDefault(require("./context/release/file"));
38
- var _directory = /*#__PURE__*/ _interopRequireDefault(require("./context/release/directory"));
39
31
  var _customGrammar = /*#__PURE__*/ _interopRequireDefault(require("./utilities/customGrammar"));
40
32
  var _releaseContext = /*#__PURE__*/ _interopRequireDefault(require("./utilities/releaseContext"));
41
33
  function _interopRequireDefault(obj) {
@@ -44,4 +36,4 @@ function _interopRequireDefault(obj) {
44
36
  };
45
37
  }
46
38
 
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBMb2cgfSBmcm9tIFwiLi9sb2dcIjtcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyB2ZXJpZnlSZWxlYXNlIH0gZnJvbSBcIi4vdmVyaWZ5L3JlbGVhc2VcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUmVsZWFzZUNvbnRleHQgfSBmcm9tIFwiLi9jb250ZXh0L3JlbGVhc2VcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRmlsZVJlbGVhc2VDb250ZXh0IH0gZnJvbSBcIi4vY29udGV4dC9yZWxlYXNlL2ZpbGVcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRGlyZWN0b3J5UmVsZWFzZUNvbnRleHQgfSBmcm9tIFwiLi9jb250ZXh0L3JlbGVhc2UvZGlyZWN0b3J5XCI7XG5cbmV4cG9ydCB7IGRlZmF1bHQgYXMgY3VzdG9tR3JhbW1hclV0aWxpdGllcyB9IGZyb20gXCIuL3V0aWxpdGllcy9jdXN0b21HcmFtbWFyXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHJlbGVhc2VDb250ZXh0VXRpbGl0aWVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3JlbGVhc2VDb250ZXh0XCI7XG4iXSwibmFtZXMiOlsiTG9nIiwidmVyaWZ5UmVsZWFzZSIsIlJlbGVhc2VDb250ZXh0IiwiRmlsZVJlbGVhc2VDb250ZXh0IiwiRGlyZWN0b3J5UmVsZWFzZUNvbnRleHQiLCJjdXN0b21HcmFtbWFyVXRpbGl0aWVzIiwicmVsZWFzZUNvbnRleHRVdGlsaXRpZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQUVvQkEsR0FBRztlQUFIQSxZQUFHOztJQUVIQyxhQUFhO2VBQWJBLGdCQUFhOztJQUNiQyxjQUFjO2VBQWRBLGlCQUFjOztJQUNkQyxrQkFBa0I7ZUFBbEJBLGFBQWtCOztJQUNsQkMsdUJBQXVCO2VBQXZCQSxrQkFBdUI7O0lBRXZCQyxzQkFBc0I7ZUFBdEJBLHNCQUFzQjs7SUFDdEJDLHVCQUF1QjtlQUF2QkEsdUJBQXVCOzs7d0RBUlo7NERBRVU7NkRBQ0M7eURBQ0k7OERBQ0s7a0VBRUQ7bUVBQ0MifQ==
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBMb2cgfSBmcm9tIFwiLi9sb2dcIjtcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyB2ZXJpZnlSZWxlYXNlIH0gZnJvbSBcIi4vdmVyaWZ5L3JlbGVhc2VcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUmVsZWFzZUNvbnRleHQgfSBmcm9tIFwiLi9jb250ZXh0L3JlbGVhc2VcIjtcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBjdXN0b21HcmFtbWFyVXRpbGl0aWVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL2N1c3RvbUdyYW1tYXJcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgcmVsZWFzZUNvbnRleHRVdGlsaXRpZXMgfSBmcm9tIFwiLi91dGlsaXRpZXMvcmVsZWFzZUNvbnRleHRcIjtcbiJdLCJuYW1lcyI6WyJMb2ciLCJ2ZXJpZnlSZWxlYXNlIiwiUmVsZWFzZUNvbnRleHQiLCJjdXN0b21HcmFtbWFyVXRpbGl0aWVzIiwicmVsZWFzZUNvbnRleHRVdGlsaXRpZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQUVvQkEsR0FBRztlQUFIQSxZQUFHOztJQUVIQyxhQUFhO2VBQWJBLGdCQUFhOztJQUNiQyxjQUFjO2VBQWRBLGlCQUFjOztJQUVkQyxzQkFBc0I7ZUFBdEJBLHNCQUFzQjs7SUFDdEJDLHVCQUF1QjtlQUF2QkEsdUJBQXVCOzs7d0RBTlo7NERBRVU7NkRBQ0M7a0VBRVE7bUVBQ0MifQ==
package/lib/kinds.js CHANGED
@@ -24,6 +24,9 @@ _export(exports, {
24
24
  THEOREM_KIND: function() {
25
25
  return THEOREM_KIND;
26
26
  },
27
+ VARIABLE_KIND: function() {
28
+ return VARIABLE_KIND;
29
+ },
27
30
  META_TYPE_KIND: function() {
28
31
  return META_TYPE_KIND;
29
32
  },
@@ -35,6 +38,9 @@ _export(exports, {
35
38
  },
36
39
  CONSTRUCTOR_KIND: function() {
37
40
  return CONSTRUCTOR_KIND;
41
+ },
42
+ METAVARIABLE_KIND: function() {
43
+ return METAVARIABLE_KIND;
38
44
  }
39
45
  });
40
46
  var TYPE_KIND = "type";
@@ -42,9 +48,11 @@ var RULE_KIND = "rule";
42
48
  var AXIOM_KIND = "axiom";
43
49
  var LEMMA_KIND = "lemma";
44
50
  var THEOREM_KIND = "theorem";
51
+ var VARIABLE_KIND = "variable";
45
52
  var META_TYPE_KIND = "meta-type";
46
53
  var CONJECTURE_KIND = "conjecture";
47
54
  var COMBINATOR_KIND = "combinator";
48
55
  var CONSTRUCTOR_KIND = "constructor";
56
+ var METAVARIABLE_KIND = "metavariable";
49
57
 
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9raW5kcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGNvbnN0IFRZUEVfS0lORCA9IFwidHlwZVwiO1xuZXhwb3J0IGNvbnN0IFJVTEVfS0lORCA9IFwicnVsZVwiO1xuZXhwb3J0IGNvbnN0IEFYSU9NX0tJTkQgPSBcImF4aW9tXCI7XG5leHBvcnQgY29uc3QgTEVNTUFfS0lORCA9IFwibGVtbWFcIjtcbmV4cG9ydCBjb25zdCBUSEVPUkVNX0tJTkQgPSBcInRoZW9yZW1cIjtcbmV4cG9ydCBjb25zdCBNRVRBX1RZUEVfS0lORCA9IFwibWV0YS10eXBlXCI7XG5leHBvcnQgY29uc3QgQ09OSkVDVFVSRV9LSU5EID0gXCJjb25qZWN0dXJlXCI7XG5leHBvcnQgY29uc3QgQ09NQklOQVRPUl9LSU5EID0gXCJjb21iaW5hdG9yXCI7XG5leHBvcnQgY29uc3QgQ09OU1RSVUNUT1JfS0lORCA9IFwiY29uc3RydWN0b3JcIjtcbiJdLCJuYW1lcyI6WyJUWVBFX0tJTkQiLCJSVUxFX0tJTkQiLCJBWElPTV9LSU5EIiwiTEVNTUFfS0lORCIsIlRIRU9SRU1fS0lORCIsIk1FVEFfVFlQRV9LSU5EIiwiQ09OSkVDVFVSRV9LSU5EIiwiQ09NQklOQVRPUl9LSU5EIiwiQ09OU1RSVUNUT1JfS0lORCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBRWFBLFNBQVM7ZUFBVEE7O0lBQ0FDLFNBQVM7ZUFBVEE7O0lBQ0FDLFVBQVU7ZUFBVkE7O0lBQ0FDLFVBQVU7ZUFBVkE7O0lBQ0FDLFlBQVk7ZUFBWkE7O0lBQ0FDLGNBQWM7ZUFBZEE7O0lBQ0FDLGVBQWU7ZUFBZkE7O0lBQ0FDLGVBQWU7ZUFBZkE7O0lBQ0FDLGdCQUFnQjtlQUFoQkE7OztBQVJOLElBQU1SLFlBQVk7QUFDbEIsSUFBTUMsWUFBWTtBQUNsQixJQUFNQyxhQUFhO0FBQ25CLElBQU1DLGFBQWE7QUFDbkIsSUFBTUMsZUFBZTtBQUNyQixJQUFNQyxpQkFBaUI7QUFDdkIsSUFBTUMsa0JBQWtCO0FBQ3hCLElBQU1DLGtCQUFrQjtBQUN4QixJQUFNQyxtQkFBbUIifQ==
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9raW5kcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGNvbnN0IFRZUEVfS0lORCA9IFwidHlwZVwiO1xuZXhwb3J0IGNvbnN0IFJVTEVfS0lORCA9IFwicnVsZVwiO1xuZXhwb3J0IGNvbnN0IEFYSU9NX0tJTkQgPSBcImF4aW9tXCI7XG5leHBvcnQgY29uc3QgTEVNTUFfS0lORCA9IFwibGVtbWFcIjtcbmV4cG9ydCBjb25zdCBUSEVPUkVNX0tJTkQgPSBcInRoZW9yZW1cIjtcbmV4cG9ydCBjb25zdCBWQVJJQUJMRV9LSU5EID0gXCJ2YXJpYWJsZVwiO1xuZXhwb3J0IGNvbnN0IE1FVEFfVFlQRV9LSU5EID0gXCJtZXRhLXR5cGVcIjtcbmV4cG9ydCBjb25zdCBDT05KRUNUVVJFX0tJTkQgPSBcImNvbmplY3R1cmVcIjtcbmV4cG9ydCBjb25zdCBDT01CSU5BVE9SX0tJTkQgPSBcImNvbWJpbmF0b3JcIjtcbmV4cG9ydCBjb25zdCBDT05TVFJVQ1RPUl9LSU5EID0gXCJjb25zdHJ1Y3RvclwiO1xuZXhwb3J0IGNvbnN0IE1FVEFWQVJJQUJMRV9LSU5EID0gXCJtZXRhdmFyaWFibGVcIjtcbiJdLCJuYW1lcyI6WyJUWVBFX0tJTkQiLCJSVUxFX0tJTkQiLCJBWElPTV9LSU5EIiwiTEVNTUFfS0lORCIsIlRIRU9SRU1fS0lORCIsIlZBUklBQkxFX0tJTkQiLCJNRVRBX1RZUEVfS0lORCIsIkNPTkpFQ1RVUkVfS0lORCIsIkNPTUJJTkFUT1JfS0lORCIsIkNPTlNUUlVDVE9SX0tJTkQiLCJNRVRBVkFSSUFCTEVfS0lORCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBRWFBLFNBQVM7ZUFBVEE7O0lBQ0FDLFNBQVM7ZUFBVEE7O0lBQ0FDLFVBQVU7ZUFBVkE7O0lBQ0FDLFVBQVU7ZUFBVkE7O0lBQ0FDLFlBQVk7ZUFBWkE7O0lBQ0FDLGFBQWE7ZUFBYkE7O0lBQ0FDLGNBQWM7ZUFBZEE7O0lBQ0FDLGVBQWU7ZUFBZkE7O0lBQ0FDLGVBQWU7ZUFBZkE7O0lBQ0FDLGdCQUFnQjtlQUFoQkE7O0lBQ0FDLGlCQUFpQjtlQUFqQkE7OztBQVZOLElBQU1WLFlBQVk7QUFDbEIsSUFBTUMsWUFBWTtBQUNsQixJQUFNQyxhQUFhO0FBQ25CLElBQU1DLGFBQWE7QUFDbkIsSUFBTUMsZUFBZTtBQUNyQixJQUFNQyxnQkFBZ0I7QUFDdEIsSUFBTUMsaUJBQWlCO0FBQ3ZCLElBQU1DLGtCQUFrQjtBQUN4QixJQUFNQyxrQkFBa0I7QUFDeEIsSUFBTUMsbUJBQW1CO0FBQ3pCLElBQU1DLG9CQUFvQiJ9
package/lib/label.js CHANGED
@@ -65,9 +65,9 @@ var Label = /*#__PURE__*/ function() {
65
65
  }
66
66
  ], [
67
67
  {
68
- key: "fromJSON",
69
- value: function fromJSON(json, context) {
70
- var labelString = json, lexer = context.getLexer(), parser = context.getParser(), labelNode = (0, _node.labelNodeFromLabelString)(labelString, lexer, parser), node = labelNode, label = new Label(node);
68
+ key: "fromJSONAndFileContext",
69
+ value: function fromJSONAndFileContext(json, fileContext) {
70
+ var labelString = json, lexer = fileContext.getLexer(), parser = fileContext.getParser(), labelNode = (0, _node.labelNodeFromLabelString)(labelString, lexer, parser), node = labelNode, label = new Label(node);
71
71
  return label;
72
72
  }
73
73
  },
@@ -82,4 +82,4 @@ var Label = /*#__PURE__*/ function() {
82
82
  return Label;
83
83
  }();
84
84
 
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9sYWJlbC5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+PiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgbm9kZUFzU3RyaW5nIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuaW1wb3J0IHsgbGFiZWxOYW1lRnJvbUxhYmVsTm9kZSB9IGZyb20gXCIuL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgbGFiZWxOb2RlRnJvbUxhYmVsU3RyaW5nIH0gZnJvbSBcIi4vdXRpbGl0aWVzL25vZGVcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTGFiZWwge1xuICBjb25zdHJ1Y3Rvcihub2RlKSB7XG4gICAgdGhpcy5ub2RlID0gbm9kZTtcbiAgfVxuXG4gIGdldE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9kZTtcbiAgfVxuXG4gIG1hdGNoTmFtZShuYW1lKSB7XG4gICAgY29uc3QgbGFiZWxOb2RlID0gdGhpcy5ub2RlLFxuICAgICAgICAgIGxhYmVsTmFtZSA9IGxhYmVsTmFtZUZyb21MYWJlbE5vZGUobGFiZWxOb2RlKSxcbiAgICAgICAgICBtYXRjaGVzTmFtZSA9IChsYWJlbE5hbWUgPT09IG5hbWUpO1xuXG4gICAgcmV0dXJuIG1hdGNoZXNOYW1lO1xuICB9XG5cbiAgYXNTdHJpbmcodG9rZW5zKSB7XG4gICAgY29uc3Qgc3RyaW5nID0gbm9kZUFzU3RyaW5nKHRoaXMubm9kZSwgdG9rZW5zKTtcblxuICAgIHJldHVybiBzdHJpbmc7XG4gIH1cblxuICB0b0pTT04odG9rZW5zKSB7XG4gICAgY29uc3Qgc3RyaW5nID0gbm9kZUFzU3RyaW5nKHRoaXMubm9kZSwgdG9rZW5zKSxcbiAgICAgICAgICBqc29uID0gc3RyaW5nOyAgLy8vXG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uLCBjb250ZXh0KSB7XG4gICAgY29uc3QgbGFiZWxTdHJpbmcgPSBqc29uLCAvLy9cbiAgICAgICAgICBsZXhlciAgPSBjb250ZXh0LmdldExleGVyKCksXG4gICAgICAgICAgcGFyc2VyID0gY29udGV4dC5nZXRQYXJzZXIoKSxcbiAgICAgICAgICBsYWJlbE5vZGUgPSBsYWJlbE5vZGVGcm9tTGFiZWxTdHJpbmcobGFiZWxTdHJpbmcsIGxleGVyLCBwYXJzZXIpLFxuICAgICAgICAgIG5vZGUgPSBsYWJlbE5vZGUsIC8vL1xuICAgICAgICAgIGxhYmVsID0gbmV3IExhYmVsKG5vZGUpO1xuXG4gICAgcmV0dXJuIGxhYmVsO1xuICB9XG5cbiAgc3RhdGljIGZyb21MYWJlbE5vZGUobGFiZWxOb2RlKSB7XG4gICAgY29uc3Qgbm9kZSA9IGxhYmVsTm9kZSwgLy8vXG4gICAgICAgICAgdmFyaWFibGUgPSBuZXcgTGFiZWwobm9kZSk7XG5cbiAgICByZXR1cm4gdmFyaWFibGU7XG4gIH1cbn1cbiIsIlJlYWN0LmNyZWF0ZUVsZW1lbnQiXSwibmFtZXMiOlsiTGFiZWwiLCJub2RlIiwiZ2V0Tm9kZSIsIm1hdGNoTmFtZSIsIm5hbWUiLCJsYWJlbE5vZGUiLCJsYWJlbE5hbWUiLCJsYWJlbE5hbWVGcm9tTGFiZWxOb2RlIiwibWF0Y2hlc05hbWUiLCJhc1N0cmluZyIsInRva2VucyIsInN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRvSlNPTiIsImpzb24iLCJmcm9tSlNPTiIsImNvbnRleHQiLCJsYWJlbFN0cmluZyIsImxleGVyIiwiZ2V0TGV4ZXIiLCJwYXJzZXIiLCJnZXRQYXJzZXIiLCJsYWJlbE5vZGVGcm9tTGFiZWxTdHJpbmciLCJsYWJlbCIsImZyb21MYWJlbE5vZGUiLCJ2YXJpYWJsZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFNcUJBOzs7c0JBSlE7cUJBQ1U7b0JBQ0U7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTFCLElBQUEsQUFBTUEsc0JBQU47YUFBTUEsTUFDUEMsSUFBSTs4QkFER0Q7UUFFakIsSUFBSSxDQUFDQyxJQUFJLEdBQUdBOztpQkFGS0Q7O1lBS25CRSxLQUFBQTttQkFBQUEsU0FBQUEsVUFBVTtnQkFDUixPQUFPLElBQUksQ0FBQ0QsSUFBSTtZQUNsQjs7O1lBRUFFLEtBQUFBO21CQUFBQSxTQUFBQSxVQUFVQyxJQUFJLEVBQUU7Z0JBQ2QsSUFBTUMsWUFBWSxJQUFJLENBQUNKLElBQUksRUFDckJLLFlBQVlDLElBQUFBLDZCQUFzQixFQUFDRixZQUNuQ0csY0FBZUYsY0FBY0Y7Z0JBRW5DLE9BQU9JO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsU0FBU0MsTUFBTSxFQUFFO2dCQUNmLElBQU1DLFNBQVNDLElBQUFBLG9CQUFZLEVBQUMsSUFBSSxDQUFDWCxJQUFJLEVBQUVTO2dCQUV2QyxPQUFPQztZQUNUOzs7WUFFQUUsS0FBQUE7bUJBQUFBLFNBQUFBLE9BQU9ILE1BQU0sRUFBRTtnQkFDYixJQUFNQyxTQUFTQyxJQUFBQSxvQkFBWSxFQUFDLElBQUksQ0FBQ1gsSUFBSSxFQUFFUyxTQUNqQ0ksT0FBT0gsUUFBUyxHQUFHO2dCQUV6QixPQUFPRztZQUNUOzs7O1lBRU9DLEtBQUFBO21CQUFQLFNBQU9BLFNBQVNELElBQUksRUFBRUUsT0FBTyxFQUFFO2dCQUM3QixJQUFNQyxjQUFjSCxNQUNkSSxRQUFTRixRQUFRRyxRQUFRLElBQ3pCQyxTQUFTSixRQUFRSyxTQUFTLElBQzFCaEIsWUFBWWlCLElBQUFBLDhCQUF3QixFQUFDTCxhQUFhQyxPQUFPRSxTQUN6RG5CLE9BQU9JLFdBQ1BrQixRQUFRLElBcENHdkIsTUFvQ09DO2dCQUV4QixPQUFPc0I7WUFDVDs7O1lBRU9DLEtBQUFBO21CQUFQLFNBQU9BLGNBQWNuQixTQUFTLEVBQUU7Z0JBQzlCLElBQU1KLE9BQU9JLFdBQ1BvQixXQUFXLElBM0NBekIsTUEyQ1VDO2dCQUUzQixPQUFPd0I7WUFDVDs7O1dBOUNtQnpCIn0=
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9sYWJlbC5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+PiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgbm9kZUFzU3RyaW5nIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuaW1wb3J0IHsgbGFiZWxOYW1lRnJvbUxhYmVsTm9kZSB9IGZyb20gXCIuL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgbGFiZWxOb2RlRnJvbUxhYmVsU3RyaW5nIH0gZnJvbSBcIi4vdXRpbGl0aWVzL25vZGVcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTGFiZWwge1xuICBjb25zdHJ1Y3Rvcihub2RlKSB7XG4gICAgdGhpcy5ub2RlID0gbm9kZTtcbiAgfVxuXG4gIGdldE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9kZTtcbiAgfVxuXG4gIG1hdGNoTmFtZShuYW1lKSB7XG4gICAgY29uc3QgbGFiZWxOb2RlID0gdGhpcy5ub2RlLFxuICAgICAgICAgIGxhYmVsTmFtZSA9IGxhYmVsTmFtZUZyb21MYWJlbE5vZGUobGFiZWxOb2RlKSxcbiAgICAgICAgICBtYXRjaGVzTmFtZSA9IChsYWJlbE5hbWUgPT09IG5hbWUpO1xuXG4gICAgcmV0dXJuIG1hdGNoZXNOYW1lO1xuICB9XG5cbiAgYXNTdHJpbmcodG9rZW5zKSB7XG4gICAgY29uc3Qgc3RyaW5nID0gbm9kZUFzU3RyaW5nKHRoaXMubm9kZSwgdG9rZW5zKTtcblxuICAgIHJldHVybiBzdHJpbmc7XG4gIH1cblxuICB0b0pTT04odG9rZW5zKSB7XG4gICAgY29uc3Qgc3RyaW5nID0gbm9kZUFzU3RyaW5nKHRoaXMubm9kZSwgdG9rZW5zKSxcbiAgICAgICAgICBqc29uID0gc3RyaW5nOyAgLy8vXG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSlNPTkFuZEZpbGVDb250ZXh0KGpzb24sIGZpbGVDb250ZXh0KSB7XG4gICAgY29uc3QgbGFiZWxTdHJpbmcgPSBqc29uLCAvLy9cbiAgICAgICAgICBsZXhlciAgPSBmaWxlQ29udGV4dC5nZXRMZXhlcigpLFxuICAgICAgICAgIHBhcnNlciA9IGZpbGVDb250ZXh0LmdldFBhcnNlcigpLFxuICAgICAgICAgIGxhYmVsTm9kZSA9IGxhYmVsTm9kZUZyb21MYWJlbFN0cmluZyhsYWJlbFN0cmluZywgbGV4ZXIsIHBhcnNlciksXG4gICAgICAgICAgbm9kZSA9IGxhYmVsTm9kZSwgLy8vXG4gICAgICAgICAgbGFiZWwgPSBuZXcgTGFiZWwobm9kZSk7XG5cbiAgICByZXR1cm4gbGFiZWw7XG4gIH1cblxuICBzdGF0aWMgZnJvbUxhYmVsTm9kZShsYWJlbE5vZGUpIHtcbiAgICBjb25zdCBub2RlID0gbGFiZWxOb2RlLCAvLy9cbiAgICAgICAgICB2YXJpYWJsZSA9IG5ldyBMYWJlbChub2RlKTtcblxuICAgIHJldHVybiB2YXJpYWJsZTtcbiAgfVxufVxuIiwiUmVhY3QuY3JlYXRlRWxlbWVudCJdLCJuYW1lcyI6WyJMYWJlbCIsIm5vZGUiLCJnZXROb2RlIiwibWF0Y2hOYW1lIiwibmFtZSIsImxhYmVsTm9kZSIsImxhYmVsTmFtZSIsImxhYmVsTmFtZUZyb21MYWJlbE5vZGUiLCJtYXRjaGVzTmFtZSIsImFzU3RyaW5nIiwidG9rZW5zIiwic3RyaW5nIiwibm9kZUFzU3RyaW5nIiwidG9KU09OIiwianNvbiIsImZyb21KU09OQW5kRmlsZUNvbnRleHQiLCJmaWxlQ29udGV4dCIsImxhYmVsU3RyaW5nIiwibGV4ZXIiLCJnZXRMZXhlciIsInBhcnNlciIsImdldFBhcnNlciIsImxhYmVsTm9kZUZyb21MYWJlbFN0cmluZyIsImxhYmVsIiwiZnJvbUxhYmVsTm9kZSIsInZhcmlhYmxlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQU1xQkE7OztzQkFKUTtxQkFDVTtvQkFDRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFMUIsSUFBQSxBQUFNQSxzQkFBTjthQUFNQSxNQUNQQyxJQUFJOzhCQURHRDtRQUVqQixJQUFJLENBQUNDLElBQUksR0FBR0E7O2lCQUZLRDs7WUFLbkJFLEtBQUFBO21CQUFBQSxTQUFBQSxVQUFVO2dCQUNSLE9BQU8sSUFBSSxDQUFDRCxJQUFJO1lBQ2xCOzs7WUFFQUUsS0FBQUE7bUJBQUFBLFNBQUFBLFVBQVVDLElBQUksRUFBRTtnQkFDZCxJQUFNQyxZQUFZLElBQUksQ0FBQ0osSUFBSSxFQUNyQkssWUFBWUMsSUFBQUEsNkJBQXNCLEVBQUNGLFlBQ25DRyxjQUFlRixjQUFjRjtnQkFFbkMsT0FBT0k7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxTQUFTQyxNQUFNLEVBQUU7Z0JBQ2YsSUFBTUMsU0FBU0MsSUFBQUEsb0JBQVksRUFBQyxJQUFJLENBQUNYLElBQUksRUFBRVM7Z0JBRXZDLE9BQU9DO1lBQ1Q7OztZQUVBRSxLQUFBQTttQkFBQUEsU0FBQUEsT0FBT0gsTUFBTSxFQUFFO2dCQUNiLElBQU1DLFNBQVNDLElBQUFBLG9CQUFZLEVBQUMsSUFBSSxDQUFDWCxJQUFJLEVBQUVTLFNBQ2pDSSxPQUFPSCxRQUFTLEdBQUc7Z0JBRXpCLE9BQU9HO1lBQ1Q7Ozs7WUFFT0MsS0FBQUE7bUJBQVAsU0FBT0EsdUJBQXVCRCxJQUFJLEVBQUVFLFdBQVcsRUFBRTtnQkFDL0MsSUFBTUMsY0FBY0gsTUFDZEksUUFBU0YsWUFBWUcsUUFBUSxJQUM3QkMsU0FBU0osWUFBWUssU0FBUyxJQUM5QmhCLFlBQVlpQixJQUFBQSw4QkFBd0IsRUFBQ0wsYUFBYUMsT0FBT0UsU0FDekRuQixPQUFPSSxXQUNQa0IsUUFBUSxJQXBDR3ZCLE1Bb0NPQztnQkFFeEIsT0FBT3NCO1lBQ1Q7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSxjQUFjbkIsU0FBUyxFQUFFO2dCQUM5QixJQUFNSixPQUFPSSxXQUNQb0IsV0FBVyxJQTNDQXpCLE1BMkNVQztnQkFFM0IsT0FBT3dCO1lBQ1Q7OztXQTlDbUJ6QiJ9
package/lib/lemma.js CHANGED
@@ -122,9 +122,9 @@ var Lemma = /*#__PURE__*/ function(AxiomLemmaTheoremConjecture) {
122
122
  }
123
123
  _createClass(Lemma, null, [
124
124
  {
125
- key: "fromJSON",
126
- value: function fromJSON(json, context) {
127
- return _axiomLemmaTheoremConjecture.default.fromJSON(Lemma, json, context);
125
+ key: "fromJSONAndFileContext",
126
+ value: function fromJSONAndFileContext(json, fileContext) {
127
+ return _axiomLemmaTheoremConjecture.default.fromJSONAndFileContext(Lemma, json, fileContext);
128
128
  }
129
129
  },
130
130
  {
@@ -138,4 +138,4 @@ var Lemma = /*#__PURE__*/ function(AxiomLemmaTheoremConjecture) {
138
138
  }(_axiomLemmaTheoremConjecture.default);
139
139
  _defineProperty(Lemma, "kind", _kinds.LEMMA_KIND);
140
140
 
141
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9sZW1tYS5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+PiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEF4aW9tTGVtbWFUaGVvcmVtQ29uamVjdHVyZSBmcm9tIFwiLi9heGlvbUxlbW1hVGhlb3JlbUNvbmplY3R1cmVcIjtcblxuaW1wb3J0IHsgTEVNTUFfS0lORCB9IGZyb20gXCIuL2tpbmRzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIExlbW1hIGV4dGVuZHMgQXhpb21MZW1tYVRoZW9yZW1Db25qZWN0dXJlIHtcbiAgc3RhdGljIGtpbmQgPSBMRU1NQV9LSU5EO1xuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uLCBjb250ZXh0KSB7IHJldHVybiBBeGlvbUxlbW1hVGhlb3JlbUNvbmplY3R1cmUuZnJvbUpTT04oTGVtbWEsIGpzb24sIGNvbnRleHQpOyB9XG5cbiAgc3RhdGljIGZyb21MYWJlbHNTdXBwb3NpdGlvbnNDb25zZXF1ZW5jZUFuZFByb29mQ29udGV4dChsYWJlbHMsIHN1cHBvc2l0aW9ucywgY29uc2VxdWVuY2UsIHByb29mQ29udGV4dCkgeyByZXR1cm4gQXhpb21MZW1tYVRoZW9yZW1Db25qZWN0dXJlLmZyb21MYWJlbHNTdXBwb3NpdGlvbnNDb25zZXF1ZW5jZUFuZFByb29mQ29udGV4dChMZW1tYSwgbGFiZWxzLCBzdXBwb3NpdGlvbnMsIGNvbnNlcXVlbmNlLCBwcm9vZkNvbnRleHQpOyB9XG59XG4iLCJSZWFjdC5jcmVhdGVFbGVtZW50Il0sIm5hbWVzIjpbIkxlbW1hIiwiZnJvbUpTT04iLCJqc29uIiwiY29udGV4dCIsIkF4aW9tTGVtbWFUaGVvcmVtQ29uamVjdHVyZSIsImZyb21MYWJlbHNTdXBwb3NpdGlvbnNDb25zZXF1ZW5jZUFuZFByb29mQ29udGV4dCIsImxhYmVscyIsInN1cHBvc2l0aW9ucyIsImNvbnNlcXVlbmNlIiwicHJvb2ZDb250ZXh0Iiwia2luZCIsIkxFTU1BX0tJTkQiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBTXFCQTs7O2dGQUptQjtxQkFFYjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFWixJQUFBLEFBQU1BLHNCQUFOO2NBQU1BOzhCQUFBQTthQUFBQTs4QkFBQUE7OztpQkFBQUE7O1lBR1pDLEtBQUFBO21CQUFQLFNBQU9BLFNBQVNDLElBQUksRUFBRUMsT0FBTyxFQUFFO2dCQUFFLE9BQU9DLG9DQUEyQixDQUFDSCxRQUFRLENBSHpERCxPQUdpRUUsTUFBTUM7WUFBVTs7O1lBRTdGRSxLQUFBQTttQkFBUCxTQUFPQSxpREFBaURDLE1BQU0sRUFBRUMsWUFBWSxFQUFFQyxXQUFXLEVBQUVDLFlBQVksRUFBRTtnQkFBRSxPQUFPTCxvQ0FBMkIsQ0FBQ0MsZ0RBQWdELENBTDNLTCxPQUttTE0sUUFBUUMsY0FBY0MsYUFBYUM7WUFBZTs7O1dBTHJPVDtFQUFjSSxvQ0FBMkI7QUFDNUQsZ0JBRG1CSixPQUNaVSxRQUFPQyxpQkFBVSJ9
141
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9sZW1tYS5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+PiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEF4aW9tTGVtbWFUaGVvcmVtQ29uamVjdHVyZSBmcm9tIFwiLi9heGlvbUxlbW1hVGhlb3JlbUNvbmplY3R1cmVcIjtcblxuaW1wb3J0IHsgTEVNTUFfS0lORCB9IGZyb20gXCIuL2tpbmRzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIExlbW1hIGV4dGVuZHMgQXhpb21MZW1tYVRoZW9yZW1Db25qZWN0dXJlIHtcbiAgc3RhdGljIGtpbmQgPSBMRU1NQV9LSU5EO1xuXG4gIHN0YXRpYyBmcm9tSlNPTkFuZEZpbGVDb250ZXh0KGpzb24sIGZpbGVDb250ZXh0KSB7IHJldHVybiBBeGlvbUxlbW1hVGhlb3JlbUNvbmplY3R1cmUuZnJvbUpTT05BbmRGaWxlQ29udGV4dChMZW1tYSxqc29uLCBmaWxlQ29udGV4dCk7IH1cblxuICBzdGF0aWMgZnJvbUxhYmVsc1N1cHBvc2l0aW9uc0NvbnNlcXVlbmNlQW5kUHJvb2ZDb250ZXh0KGxhYmVscywgc3VwcG9zaXRpb25zLCBjb25zZXF1ZW5jZSwgcHJvb2ZDb250ZXh0KSB7IHJldHVybiBBeGlvbUxlbW1hVGhlb3JlbUNvbmplY3R1cmUuZnJvbUxhYmVsc1N1cHBvc2l0aW9uc0NvbnNlcXVlbmNlQW5kUHJvb2ZDb250ZXh0KExlbW1hLCBsYWJlbHMsIHN1cHBvc2l0aW9ucywgY29uc2VxdWVuY2UsIHByb29mQ29udGV4dCk7IH1cbn1cbiIsIlJlYWN0LmNyZWF0ZUVsZW1lbnQiXSwibmFtZXMiOlsiTGVtbWEiLCJmcm9tSlNPTkFuZEZpbGVDb250ZXh0IiwianNvbiIsImZpbGVDb250ZXh0IiwiQXhpb21MZW1tYVRoZW9yZW1Db25qZWN0dXJlIiwiZnJvbUxhYmVsc1N1cHBvc2l0aW9uc0NvbnNlcXVlbmNlQW5kUHJvb2ZDb250ZXh0IiwibGFiZWxzIiwic3VwcG9zaXRpb25zIiwiY29uc2VxdWVuY2UiLCJwcm9vZkNvbnRleHQiLCJraW5kIiwiTEVNTUFfS0lORCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFNcUJBOzs7Z0ZBSm1CO3FCQUViOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVaLElBQUEsQUFBTUEsc0JBQU47Y0FBTUE7OEJBQUFBO2FBQUFBOzhCQUFBQTs7O2lCQUFBQTs7WUFHWkMsS0FBQUE7bUJBQVAsU0FBT0EsdUJBQXVCQyxJQUFJLEVBQUVDLFdBQVcsRUFBRTtnQkFBRSxPQUFPQyxvQ0FBMkIsQ0FBQ0gsc0JBQXNCLENBSHpGRCxPQUdnR0UsTUFBTUM7WUFBYzs7O1lBRWhJRSxLQUFBQTttQkFBUCxTQUFPQSxpREFBaURDLE1BQU0sRUFBRUMsWUFBWSxFQUFFQyxXQUFXLEVBQUVDLFlBQVksRUFBRTtnQkFBRSxPQUFPTCxvQ0FBMkIsQ0FBQ0MsZ0RBQWdELENBTDNLTCxPQUttTE0sUUFBUUMsY0FBY0MsYUFBYUM7WUFBZTs7O1dBTHJPVDtFQUFjSSxvQ0FBMkI7QUFDNUQsZ0JBRG1CSixPQUNaVSxRQUFPQyxpQkFBVSJ9
package/lib/metaType.js CHANGED
@@ -162,16 +162,18 @@ var MetaType = /*#__PURE__*/ function() {
162
162
  }
163
163
  ], [
164
164
  {
165
- key: "fromJSON",
166
- value: function fromJSON(json, context) {
167
- var name = json.name, metaType = new MetaType(name);
165
+ key: "fromMetaTypeName",
166
+ value: function fromMetaTypeName(metaTypeName) {
167
+ var name = metaTypeName, metaType = new MetaType(name);
168
168
  return metaType;
169
169
  }
170
170
  },
171
171
  {
172
- key: "fromMetaTypeName",
173
- value: function fromMetaTypeName(metaTypeName) {
174
- var name = metaTypeName, metaType = new MetaType(name);
172
+ key: "fromJSONAndFileContext",
173
+ value: function fromJSONAndFileContext(json, fileContext) {
174
+ var metaType;
175
+ var name = json.name;
176
+ metaType = new MetaType(name);
175
177
  return metaType;
176
178
  }
177
179
  }
@@ -198,4 +200,4 @@ var StatementMetaType = /*#__PURE__*/ function(MetaType) {
198
200
  }(MetaType);
199
201
  var statementMetaType = StatementMetaType.fromNothing();
200
202
 
201
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXRhVHlwZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgTUVUQV9UWVBFX0tJTkQgfSBmcm9tIFwiLi9raW5kc1wiO1xuaW1wb3J0IHsgU1RBVEVNRU5UX01FVEFfVFlQRV9OQU1FIH0gZnJvbSBcIi4vbWV0YVR5cGVOYW1lc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBNZXRhVHlwZSB7XG4gIGNvbnN0cnVjdG9yKG5hbWUpIHtcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xuICB9XG5cbiAgZ2V0TmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG5cbiAgaXNFcXVhbFRvKG1ldGFUeXBlKSB7XG4gICAgY29uc3QgZXF1YWxUbyA9ICh0aGlzID09PSBtZXRhVHlwZSk7XG5cbiAgICByZXR1cm4gZXF1YWxUbztcbiAgfVxuXG4gIG1hdGNoKG1ldGFUeXBlKSB7XG4gICAgY29uc3QgZXF1YWxUb01ldGFUeXBlID0gdGhpcy5pc0VxdWFsVG8obWV0YVR5cGUpLFxuICAgICAgICAgIG1hdGNoZXMgPSBlcXVhbFRvTWV0YVR5cGU7ICAvLy9cblxuICAgIHJldHVybiBtYXRjaGVzO1xuICB9XG5cbiAgbWF0Y2hOYW1lKG5hbWUpIHtcbiAgICBjb25zdCBtYXRjaGVzTmFtZSA9ICh0aGlzLm5hbWUgPT09IG5hbWUpO1xuXG4gICAgcmV0dXJuIG1hdGNoZXNOYW1lO1xuICB9XG5cbiAgbWF0Y2hNZXRhVHlwZU5hbWUobWV0YVR5cGVOYW1lKSB7XG4gICAgY29uc3QgbWF0Y2hlc01ldGFUeXBlTmFtZSA9ICh0aGlzLm5hbWUgPT09IG1ldGFUeXBlTmFtZSk7XG5cbiAgICByZXR1cm4gbWF0Y2hlc01ldGFUeXBlTmFtZTtcbiAgfVxuXG4gIGFzU3RyaW5nKHRva2Vucykge1xuICAgIGNvbnN0IHN0cmluZyA9IGAke3RoaXMubmFtZX1gO1xuXG4gICAgcmV0dXJuIHN0cmluZztcbiAgfVxuXG4gIHRvSlNPTih0b2tlbnMpIHtcbiAgICBjb25zdCBraW5kID0gTUVUQV9UWVBFX0tJTkQsXG4gICAgICAgICAgbmFtZSA9IHRoaXMubmFtZSxcbiAgICAgICAgICBqc29uID0ge1xuICAgICAgICAgICAga2luZCxcbiAgICAgICAgICAgIG5hbWVcbiAgICAgICAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgZnJvbUpTT04oanNvbiwgY29udGV4dCkge1xuICAgIGNvbnN0IHsgbmFtZSB9ID0ganNvbixcbiAgICAgICAgICBtZXRhVHlwZSA9IG5ldyBNZXRhVHlwZShuYW1lKTtcblxuICAgIHJldHVybiBtZXRhVHlwZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTWV0YVR5cGVOYW1lKG1ldGFUeXBlTmFtZSkge1xuICAgIGNvbnN0IG5hbWUgPSBtZXRhVHlwZU5hbWUsICAvLy9cbiAgICAgICAgICBtZXRhVHlwZSA9IG5ldyBNZXRhVHlwZShuYW1lKTtcblxuICAgIHJldHVybiBtZXRhVHlwZTtcbiAgfVxufVxuXG5jbGFzcyBTdGF0ZW1lbnRNZXRhVHlwZSBleHRlbmRzIE1ldGFUeXBlIHtcbiAgc3RhdGljIGZyb21Ob3RoaW5nKCkge1xuICAgIGNvbnN0IG5hbWUgPSBTVEFURU1FTlRfTUVUQV9UWVBFX05BTUUsXG4gICAgICAgICAgb2JqZWN0TWV0YVR5cGUgPSBuZXcgU3RhdGVtZW50TWV0YVR5cGUobmFtZSk7XG5cbiAgICByZXR1cm4gb2JqZWN0TWV0YVR5cGU7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IHN0YXRlbWVudE1ldGFUeXBlID0gU3RhdGVtZW50TWV0YVR5cGUuZnJvbU5vdGhpbmcoKTtcbiJdLCJuYW1lcyI6WyJNZXRhVHlwZSIsInN0YXRlbWVudE1ldGFUeXBlIiwibmFtZSIsImdldE5hbWUiLCJpc0VxdWFsVG8iLCJtZXRhVHlwZSIsImVxdWFsVG8iLCJtYXRjaCIsImVxdWFsVG9NZXRhVHlwZSIsIm1hdGNoZXMiLCJtYXRjaE5hbWUiLCJtYXRjaGVzTmFtZSIsIm1hdGNoTWV0YVR5cGVOYW1lIiwibWV0YVR5cGVOYW1lIiwibWF0Y2hlc01ldGFUeXBlTmFtZSIsImFzU3RyaW5nIiwidG9rZW5zIiwic3RyaW5nIiwidG9KU09OIiwia2luZCIsIk1FVEFfVFlQRV9LSU5EIiwianNvbiIsImZyb21KU09OIiwiY29udGV4dCIsImZyb21NZXRhVHlwZU5hbWUiLCJTdGF0ZW1lbnRNZXRhVHlwZSIsImZyb21Ob3RoaW5nIiwiU1RBVEVNRU5UX01FVEFfVFlQRV9OQU1FIiwib2JqZWN0TWV0YVR5cGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7ZUFLcUJBOztJQTJFUkMsaUJBQWlCO2VBQWpCQTs7O3FCQTlFa0I7NkJBQ1U7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTFCLElBQUEsQUFBTUQseUJBa0VsQixBQWxFWTthQUFNQSxTQUNQRSxJQUFJOzhCQURHRjtRQUVqQixJQUFJLENBQUNFLElBQUksR0FBR0E7O2lCQUZLRjs7WUFLbkJHLEtBQUFBO21CQUFBQSxTQUFBQSxVQUFVO2dCQUNSLE9BQU8sSUFBSSxDQUFDRCxJQUFJO1lBQ2xCOzs7WUFFQUUsS0FBQUE7bUJBQUFBLFNBQUFBLFVBQVVDLFFBQVEsRUFBRTtnQkFDbEIsSUFBTUMsVUFBVyxJQUFJLEtBQUtEO2dCQUUxQixPQUFPQztZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLE1BQU1GLFFBQVEsRUFBRTtnQkFDZCxJQUFNRyxrQkFBa0IsSUFBSSxDQUFDSixTQUFTLENBQUNDLFdBQ2pDSSxVQUFVRCxpQkFBa0IsR0FBRztnQkFFckMsT0FBT0M7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxVQUFVUixJQUFJLEVBQUU7Z0JBQ2QsSUFBTVMsY0FBZSxJQUFJLENBQUNULElBQUksS0FBS0E7Z0JBRW5DLE9BQU9TO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsa0JBQWtCQyxZQUFZLEVBQUU7Z0JBQzlCLElBQU1DLHNCQUF1QixJQUFJLENBQUNaLElBQUksS0FBS1c7Z0JBRTNDLE9BQU9DO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsU0FBU0MsTUFBTSxFQUFFO2dCQUNmLElBQU1DLFNBQVMsQUFBQyxHQUFZLE9BQVYsSUFBSSxDQUFDZixJQUFJO2dCQUUzQixPQUFPZTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLE9BQU9GLE1BQU0sRUFBRTtnQkFDYixJQUFNRyxPQUFPQyxxQkFBYyxFQUNyQmxCLE9BQU8sSUFBSSxDQUFDQSxJQUFJLEVBQ2hCbUIsT0FBTztvQkFDTEYsTUFBQUE7b0JBQ0FqQixNQUFBQTtnQkFDRjtnQkFFTixPQUFPbUI7WUFDVDs7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSxTQUFTRCxJQUFJLEVBQUVFLE9BQU8sRUFBRTtnQkFDN0IsSUFBTSxBQUFFckIsT0FBU21CLEtBQVRuQixNQUNGRyxXQUFXLElBckRBTCxTQXFEYUU7Z0JBRTlCLE9BQU9HO1lBQ1Q7OztZQUVPbUIsS0FBQUE7bUJBQVAsU0FBT0EsaUJBQWlCWCxZQUFZLEVBQUU7Z0JBQ3BDLElBQU1YLE9BQU9XLGNBQ1BSLFdBQVcsSUE1REFMLFNBNERhRTtnQkFFOUIsT0FBT0c7WUFDVDs7O1dBL0RtQkw7O0FBa0VyQixJQUFBLEFBQU15QixrQ0FTSCxBQVRIO2NBQU1BOzhCQUFBQTthQUFBQTs4QkFBQUE7OztpQkFBQUE7O1lBQ0dDLEtBQUFBO21CQUFQLFNBQU9BLGNBQWM7Z0JBQ25CLElBQU14QixPQUFPeUIsdUNBQXdCLEVBQy9CQyxpQkFBaUIsSUFIckJILGtCQUcyQ3ZCO2dCQUU3QyxPQUFPMEI7WUFDVDs7O1dBTklIO0VBQTBCekI7QUFTekIsSUFBTUMsb0JBQW9Cd0Isa0JBQWtCQyxXQUFXIn0=
203
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXRhVHlwZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgTUVUQV9UWVBFX0tJTkQgfSBmcm9tIFwiLi9raW5kc1wiO1xuaW1wb3J0IHsgU1RBVEVNRU5UX01FVEFfVFlQRV9OQU1FIH0gZnJvbSBcIi4vbWV0YVR5cGVOYW1lc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBNZXRhVHlwZSB7XG4gIGNvbnN0cnVjdG9yKG5hbWUpIHtcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xuICB9XG5cbiAgZ2V0TmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG5cbiAgaXNFcXVhbFRvKG1ldGFUeXBlKSB7XG4gICAgY29uc3QgZXF1YWxUbyA9ICh0aGlzID09PSBtZXRhVHlwZSk7XG5cbiAgICByZXR1cm4gZXF1YWxUbztcbiAgfVxuXG4gIG1hdGNoKG1ldGFUeXBlKSB7XG4gICAgY29uc3QgZXF1YWxUb01ldGFUeXBlID0gdGhpcy5pc0VxdWFsVG8obWV0YVR5cGUpLFxuICAgICAgICAgIG1hdGNoZXMgPSBlcXVhbFRvTWV0YVR5cGU7ICAvLy9cblxuICAgIHJldHVybiBtYXRjaGVzO1xuICB9XG5cbiAgbWF0Y2hOYW1lKG5hbWUpIHtcbiAgICBjb25zdCBtYXRjaGVzTmFtZSA9ICh0aGlzLm5hbWUgPT09IG5hbWUpO1xuXG4gICAgcmV0dXJuIG1hdGNoZXNOYW1lO1xuICB9XG5cbiAgbWF0Y2hNZXRhVHlwZU5hbWUobWV0YVR5cGVOYW1lKSB7XG4gICAgY29uc3QgbWF0Y2hlc01ldGFUeXBlTmFtZSA9ICh0aGlzLm5hbWUgPT09IG1ldGFUeXBlTmFtZSk7XG5cbiAgICByZXR1cm4gbWF0Y2hlc01ldGFUeXBlTmFtZTtcbiAgfVxuXG4gIGFzU3RyaW5nKHRva2Vucykge1xuICAgIGNvbnN0IHN0cmluZyA9IGAke3RoaXMubmFtZX1gO1xuXG4gICAgcmV0dXJuIHN0cmluZztcbiAgfVxuXG4gIHRvSlNPTih0b2tlbnMpIHtcbiAgICBjb25zdCBraW5kID0gTUVUQV9UWVBFX0tJTkQsXG4gICAgICAgICAgbmFtZSA9IHRoaXMubmFtZSxcbiAgICAgICAgICBqc29uID0ge1xuICAgICAgICAgICAga2luZCxcbiAgICAgICAgICAgIG5hbWVcbiAgICAgICAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgZnJvbU1ldGFUeXBlTmFtZShtZXRhVHlwZU5hbWUpIHtcbiAgICBjb25zdCBuYW1lID0gbWV0YVR5cGVOYW1lLCAgLy8vXG4gICAgICAgICAgbWV0YVR5cGUgPSBuZXcgTWV0YVR5cGUobmFtZSk7XG5cbiAgICByZXR1cm4gbWV0YVR5cGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbUpTT05BbmRGaWxlQ29udGV4dChqc29uLCBmaWxlQ29udGV4dCkge1xuICAgIGxldCBtZXRhVHlwZTtcblxuICAgIGNvbnN0IHsgbmFtZSB9ID0ganNvbjtcblxuICAgIG1ldGFUeXBlID0gbmV3IE1ldGFUeXBlKG5hbWUpO1xuXG4gICAgcmV0dXJuIG1ldGFUeXBlO1xuICB9XG59XG5cbmNsYXNzIFN0YXRlbWVudE1ldGFUeXBlIGV4dGVuZHMgTWV0YVR5cGUge1xuICBzdGF0aWMgZnJvbU5vdGhpbmcoKSB7XG4gICAgY29uc3QgbmFtZSA9IFNUQVRFTUVOVF9NRVRBX1RZUEVfTkFNRSxcbiAgICAgICAgICBvYmplY3RNZXRhVHlwZSA9IG5ldyBTdGF0ZW1lbnRNZXRhVHlwZShuYW1lKTtcblxuICAgIHJldHVybiBvYmplY3RNZXRhVHlwZTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3Qgc3RhdGVtZW50TWV0YVR5cGUgPSBTdGF0ZW1lbnRNZXRhVHlwZS5mcm9tTm90aGluZygpO1xuIl0sIm5hbWVzIjpbIk1ldGFUeXBlIiwic3RhdGVtZW50TWV0YVR5cGUiLCJuYW1lIiwiZ2V0TmFtZSIsImlzRXF1YWxUbyIsIm1ldGFUeXBlIiwiZXF1YWxUbyIsIm1hdGNoIiwiZXF1YWxUb01ldGFUeXBlIiwibWF0Y2hlcyIsIm1hdGNoTmFtZSIsIm1hdGNoZXNOYW1lIiwibWF0Y2hNZXRhVHlwZU5hbWUiLCJtZXRhVHlwZU5hbWUiLCJtYXRjaGVzTWV0YVR5cGVOYW1lIiwiYXNTdHJpbmciLCJ0b2tlbnMiLCJzdHJpbmciLCJ0b0pTT04iLCJraW5kIiwiTUVUQV9UWVBFX0tJTkQiLCJqc29uIiwiZnJvbU1ldGFUeXBlTmFtZSIsImZyb21KU09OQW5kRmlsZUNvbnRleHQiLCJmaWxlQ29udGV4dCIsIlN0YXRlbWVudE1ldGFUeXBlIiwiZnJvbU5vdGhpbmciLCJTVEFURU1FTlRfTUVUQV9UWVBFX05BTUUiLCJvYmplY3RNZXRhVHlwZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7OztlQUtxQkE7O0lBOEVSQyxpQkFBaUI7ZUFBakJBOzs7cUJBakZrQjs2QkFDVTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFMUIsSUFBQSxBQUFNRCx5QkFxRWxCLEFBckVZO2FBQU1BLFNBQ1BFLElBQUk7OEJBREdGO1FBRWpCLElBQUksQ0FBQ0UsSUFBSSxHQUFHQTs7aUJBRktGOztZQUtuQkcsS0FBQUE7bUJBQUFBLFNBQUFBLFVBQVU7Z0JBQ1IsT0FBTyxJQUFJLENBQUNELElBQUk7WUFDbEI7OztZQUVBRSxLQUFBQTttQkFBQUEsU0FBQUEsVUFBVUMsUUFBUSxFQUFFO2dCQUNsQixJQUFNQyxVQUFXLElBQUksS0FBS0Q7Z0JBRTFCLE9BQU9DO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsTUFBTUYsUUFBUSxFQUFFO2dCQUNkLElBQU1HLGtCQUFrQixJQUFJLENBQUNKLFNBQVMsQ0FBQ0MsV0FDakNJLFVBQVVELGlCQUFrQixHQUFHO2dCQUVyQyxPQUFPQztZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLFVBQVVSLElBQUksRUFBRTtnQkFDZCxJQUFNUyxjQUFlLElBQUksQ0FBQ1QsSUFBSSxLQUFLQTtnQkFFbkMsT0FBT1M7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxrQkFBa0JDLFlBQVksRUFBRTtnQkFDOUIsSUFBTUMsc0JBQXVCLElBQUksQ0FBQ1osSUFBSSxLQUFLVztnQkFFM0MsT0FBT0M7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxTQUFTQyxNQUFNLEVBQUU7Z0JBQ2YsSUFBTUMsU0FBUyxBQUFDLEdBQVksT0FBVixJQUFJLENBQUNmLElBQUk7Z0JBRTNCLE9BQU9lO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsT0FBT0YsTUFBTSxFQUFFO2dCQUNiLElBQU1HLE9BQU9DLHFCQUFjLEVBQ3JCbEIsT0FBTyxJQUFJLENBQUNBLElBQUksRUFDaEJtQixPQUFPO29CQUNMRixNQUFBQTtvQkFDQWpCLE1BQUFBO2dCQUNGO2dCQUVOLE9BQU9tQjtZQUNUOzs7O1lBRU9DLEtBQUFBO21CQUFQLFNBQU9BLGlCQUFpQlQsWUFBWSxFQUFFO2dCQUNwQyxJQUFNWCxPQUFPVyxjQUNQUixXQUFXLElBckRBTCxTQXFEYUU7Z0JBRTlCLE9BQU9HO1lBQ1Q7OztZQUVPa0IsS0FBQUE7bUJBQVAsU0FBT0EsdUJBQXVCRixJQUFJLEVBQUVHLFdBQVcsRUFBRTtnQkFDL0MsSUFBSW5CO2dCQUVKLElBQU0sQUFBRUgsT0FBU21CLEtBQVRuQjtnQkFFUkcsV0FBVyxJQS9ETUwsU0ErRE9FO2dCQUV4QixPQUFPRztZQUNUOzs7V0FsRW1CTDs7QUFxRXJCLElBQUEsQUFBTXlCLGtDQVNILEFBVEg7Y0FBTUE7OEJBQUFBO2FBQUFBOzhCQUFBQTs7O2lCQUFBQTs7WUFDR0MsS0FBQUE7bUJBQVAsU0FBT0EsY0FBYztnQkFDbkIsSUFBTXhCLE9BQU95Qix1Q0FBd0IsRUFDL0JDLGlCQUFpQixJQUhyQkgsa0JBRzJDdkI7Z0JBRTdDLE9BQU8wQjtZQUNUOzs7V0FOSUg7RUFBMEJ6QjtBQVN6QixJQUFNQyxvQkFBb0J3QixrQkFBa0JDLFdBQVcifQ==