occam-verify-cli 0.0.879 → 0.0.881

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 (73) hide show
  1. package/lib/assignment/judgement.js +62 -0
  2. package/lib/context/file.js +8 -8
  3. package/lib/context/local.js +16 -10
  4. package/lib/context/localMeta.js +33 -33
  5. package/lib/frame.js +66 -0
  6. package/lib/judgement.js +68 -0
  7. package/lib/metaLemma.js +4 -4
  8. package/lib/metaLemmaMetatheorem.js +25 -9
  9. package/lib/metaType/{label.js → frame.js} +12 -12
  10. package/lib/metaType/{context.js → reference.js} +12 -12
  11. package/lib/metaTypeNames.js +7 -7
  12. package/lib/metaTypes.js +5 -5
  13. package/lib/metatheorem.js +4 -4
  14. package/lib/substitution/metastatementForMetavariable.js +20 -1
  15. package/lib/utilities/name.js +3 -11
  16. package/lib/verifier/nodes/metaLevel.js +2 -2
  17. package/lib/verify/declaration.js +5 -5
  18. package/lib/verify/frame.js +34 -0
  19. package/lib/verify/judgement.js +80 -21
  20. package/lib/verify/metaConsequent.js +2 -2
  21. package/lib/verify/metaDerivation.js +12 -12
  22. package/lib/verify/metaLemma.js +5 -5
  23. package/lib/verify/metaSuppositions.js +2 -2
  24. package/lib/verify/metaproof.js +3 -3
  25. package/lib/verify/metastatement/qualified.js +11 -4
  26. package/lib/verify/metastatement.js +5 -21
  27. package/lib/verify/metatheorem.js +5 -5
  28. package/lib/verify/metavariable.js +3 -3
  29. package/lib/verify/metavariableAgainstMetastatement.js +2 -2
  30. package/lib/verify/ruleDerivation.js +3 -3
  31. package/package.json +4 -4
  32. package/src/assignment/judgement.js +30 -0
  33. package/src/context/file.js +6 -6
  34. package/src/context/local.js +5 -3
  35. package/src/context/localMeta.js +33 -37
  36. package/src/frame.js +27 -0
  37. package/src/judgement.js +28 -0
  38. package/src/metaLemma.js +1 -1
  39. package/src/metaLemmaMetatheorem.js +27 -5
  40. package/src/metaType/frame.js +18 -0
  41. package/src/metaType/reference.js +18 -0
  42. package/src/metaTypeNames.js +2 -2
  43. package/src/metaTypes.js +4 -4
  44. package/src/metatheorem.js +1 -1
  45. package/src/substitution/metastatementForMetavariable.js +28 -0
  46. package/src/utilities/name.js +5 -15
  47. package/src/verifier/nodes/metaLevel.js +1 -1
  48. package/src/verify/declaration.js +5 -5
  49. package/src/verify/frame.js +30 -0
  50. package/src/verify/judgement.js +96 -26
  51. package/src/verify/metaConsequent.js +1 -1
  52. package/src/verify/metaDerivation.js +10 -11
  53. package/src/verify/metaLemma.js +6 -5
  54. package/src/verify/metaSuppositions.js +1 -1
  55. package/src/verify/metaproof.js +2 -2
  56. package/src/verify/metastatement/qualified.js +15 -6
  57. package/src/verify/metastatement.js +4 -30
  58. package/src/verify/metatheorem.js +6 -5
  59. package/src/verify/metavariable.js +2 -2
  60. package/src/verify/metavariableAgainstMetastatement.js +1 -1
  61. package/src/verify/ruleDerivation.js +2 -2
  62. package/lib/assignment/metaEquality.js +0 -62
  63. package/lib/metaEquality.js +0 -101
  64. package/lib/utilities/metaEquivalences.js +0 -15
  65. package/lib/verify/context.js +0 -34
  66. package/lib/verify/metaEquality.js +0 -69
  67. package/src/assignment/metaEquality.js +0 -30
  68. package/src/metaEquality.js +0 -84
  69. package/src/metaType/context.js +0 -18
  70. package/src/metaType/label.js +0 -18
  71. package/src/utilities/metaEquivalences.js +0 -5
  72. package/src/verify/context.js +0 -30
  73. package/src/verify/metaEquality.js +0 -83
@@ -10,7 +10,6 @@ Object.defineProperty(exports, "default", {
10
10
  });
11
11
  var _context = /*#__PURE__*/ _interop_require_default(require("../mixins/context"));
12
12
  var _array = require("../utilities/array");
13
- var _metaEquivalences = require("../utilities/metaEquivalences");
14
13
  function _array_like_to_array(arr, len) {
15
14
  if (len == null || len > arr.length) len = arr.length;
16
15
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
@@ -61,12 +60,12 @@ function _unsupported_iterable_to_array(o, minLen) {
61
60
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
62
61
  }
63
62
  var LocalMetaContext = /*#__PURE__*/ function() {
64
- function LocalMetaContext(context, metavariables, metaproofSteps, metaEquivalences) {
63
+ function LocalMetaContext(context, judgements, metavariables, metaproofSteps) {
65
64
  _class_call_check(this, LocalMetaContext);
66
65
  this.context = context;
66
+ this.judgements = judgements;
67
67
  this.metavariables = metavariables;
68
68
  this.metaproofSteps = metaproofSteps;
69
- this.metaEquivalences = metaEquivalences;
70
69
  }
71
70
  _create_class(LocalMetaContext, [
72
71
  {
@@ -76,10 +75,19 @@ var LocalMetaContext = /*#__PURE__*/ function() {
76
75
  }
77
76
  },
78
77
  {
79
- key: "getTermType",
80
- value: function getTermType(term) {
81
- var termType = term.getType();
82
- return termType;
78
+ key: "getJudgements",
79
+ value: function getJudgements() {
80
+ var judgements = this.context.getJudgements();
81
+ judgements = _to_consumable_array(this.judgements).concat(_to_consumable_array(judgements));
82
+ return judgements;
83
+ }
84
+ },
85
+ {
86
+ key: "getMetavariables",
87
+ value: function getMetavariables() {
88
+ var metavariables = this.context.getMetavariables();
89
+ metavariables = _to_consumable_array(this.metavariables).concat(_to_consumable_array(metavariables));
90
+ return metavariables;
83
91
  }
84
92
  },
85
93
  {
@@ -90,21 +98,18 @@ var LocalMetaContext = /*#__PURE__*/ function() {
90
98
  return metaproofSteps;
91
99
  }
92
100
  },
93
- {
94
- key: "getMetaEquivalences",
95
- value: function getMetaEquivalences() {
96
- var metaEquivalences = this.context.getMetaEquivalences();
97
- var metaEquivalencesA = this.metaEquivalences, metaEquivalencesB = metaEquivalences, localMetaContext = this; ///
98
- metaEquivalences = (0, _metaEquivalences.mergeMetaEquivalences)(metaEquivalencesA, metaEquivalencesB, localMetaContext); ///
99
- return metaEquivalences;
100
- }
101
- },
102
101
  {
103
102
  key: "getVariables",
104
103
  value: function getVariables() {
105
104
  return this.context.getVariables();
106
105
  }
107
106
  },
107
+ {
108
+ key: "getProofSteps",
109
+ value: function getProofSteps() {
110
+ return this.context.getProofSteps();
111
+ }
112
+ },
108
113
  {
109
114
  key: "getEquivalences",
110
115
  value: function getEquivalences() {
@@ -112,11 +117,10 @@ var LocalMetaContext = /*#__PURE__*/ function() {
112
117
  }
113
118
  },
114
119
  {
115
- key: "getMetavariables",
116
- value: function getMetavariables() {
117
- var metavariables = this.context.getMetavariables();
118
- metavariables = _to_consumable_array(this.metavariables).concat(_to_consumable_array(metavariables));
119
- return metavariables;
120
+ key: "getTermType",
121
+ value: function getTermType(term) {
122
+ var termType = term.getType();
123
+ return termType;
120
124
  }
121
125
  },
122
126
  {
@@ -131,8 +135,10 @@ var LocalMetaContext = /*#__PURE__*/ function() {
131
135
  }
132
136
  },
133
137
  {
134
- key: "addMetaEquality",
135
- value: function addMetaEquality(metaEquality) {}
138
+ key: "addJudgement",
139
+ value: function addJudgement(judgement) {
140
+ this.judgements.push(judgement);
141
+ }
136
142
  },
137
143
  {
138
144
  key: "addMetavariable",
@@ -157,12 +163,6 @@ var LocalMetaContext = /*#__PURE__*/ function() {
157
163
  this.metaproofSteps.push(metaproofStep);
158
164
  }
159
165
  },
160
- {
161
- key: "addMetaEquivalence",
162
- value: function addMetaEquivalence(metaEquivalence) {
163
- this.metaEquivalences.push(metaEquivalence);
164
- }
165
- },
166
166
  {
167
167
  key: "matchMetastatement",
168
168
  value: function matchMetastatement(metastatementNode) {
@@ -224,15 +224,15 @@ var LocalMetaContext = /*#__PURE__*/ function() {
224
224
  {
225
225
  key: "fromFileContext",
226
226
  value: function fromFileContext(fileContext) {
227
- var context = fileContext, metavariables = [], metaproofSteps = [], metaEquivalences = [], localMetaContext = new LocalMetaContext(context, metavariables, metaproofSteps, metaEquivalences);
227
+ var context = fileContext, judgements = [], metavariables = [], metaproofSteps = [], localMetaContext = new LocalMetaContext(context, judgements, metavariables, metaproofSteps);
228
228
  return localMetaContext;
229
229
  }
230
230
  },
231
231
  {
232
232
  key: "fromLocalMetaContext",
233
233
  value: function fromLocalMetaContext(localMetaContext) {
234
- var context = localMetaContext, metavariables = [], metaproofSteps = [], metaEquivalences = [];
235
- localMetaContext = new LocalMetaContext(context, metavariables, metaproofSteps, metaEquivalences); ///
234
+ var context = localMetaContext, judgements = [], metavariables = [], metaproofSteps = [];
235
+ localMetaContext = new LocalMetaContext(context, judgements, metavariables, metaproofSteps); ///
236
236
  return localMetaContext;
237
237
  }
238
238
  }
@@ -242,4 +242,4 @@ var LocalMetaContext = /*#__PURE__*/ function() {
242
242
  Object.assign(LocalMetaContext.prototype, _context.default);
243
243
  var _default = LocalMetaContext;
244
244
 
245
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250ZXh0L2xvY2FsTWV0YS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGNvbnRleHRNaXhpbnMgZnJvbSBcIi4uL21peGlucy9jb250ZXh0XCI7XG5cbmltcG9ydCB7IGxhc3QgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5pbXBvcnQgeyBtZXJnZU1ldGFFcXVpdmFsZW5jZXMgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL21ldGFFcXVpdmFsZW5jZXNcIjtcblxuY2xhc3MgTG9jYWxNZXRhQ29udGV4dCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIG1ldGF2YXJpYWJsZXMsIG1ldGFwcm9vZlN0ZXBzLCBtZXRhRXF1aXZhbGVuY2VzKSB7XG4gICAgdGhpcy5jb250ZXh0ID0gY29udGV4dDtcbiAgICB0aGlzLm1ldGF2YXJpYWJsZXMgPSBtZXRhdmFyaWFibGVzO1xuICAgIHRoaXMubWV0YXByb29mU3RlcHMgPSBtZXRhcHJvb2ZTdGVwcztcbiAgICB0aGlzLm1ldGFFcXVpdmFsZW5jZXMgPSBtZXRhRXF1aXZhbGVuY2VzO1xuICB9XG5cbiAgZ2V0Q29udGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZXh0O1xuICB9XG5cbiAgZ2V0VGVybVR5cGUodGVybSkge1xuICAgIGNvbnN0IHRlcm1UeXBlID0gdGVybS5nZXRUeXBlKCk7XG5cbiAgICByZXR1cm4gdGVybVR5cGU7XG4gIH1cblxuICBnZXRNZXRhcHJvb2ZTdGVwcygpIHtcbiAgICBsZXQgbWV0YXByb29mU3RlcHMgPSB0aGlzLmNvbnRleHQuZ2V0TWV0YXByb29mU3RlcHMoKTtcblxuICAgIG1ldGFwcm9vZlN0ZXBzID0gWyAgLy8vXG4gICAgICAuLi5tZXRhcHJvb2ZTdGVwcyxcbiAgICAgIC4uLnRoaXMubWV0YXByb29mU3RlcHNcbiAgICBdO1xuXG4gICAgcmV0dXJuIG1ldGFwcm9vZlN0ZXBzO1xuICB9XG5cbiAgZ2V0TWV0YUVxdWl2YWxlbmNlcygpIHtcbiAgICBsZXQgbWV0YUVxdWl2YWxlbmNlcyA9IHRoaXMuY29udGV4dC5nZXRNZXRhRXF1aXZhbGVuY2VzKCk7XG5cbiAgICBjb25zdCBtZXRhRXF1aXZhbGVuY2VzQSA9IHRoaXMubWV0YUVxdWl2YWxlbmNlcywgLy8vXG4gICAgICAgICAgbWV0YUVxdWl2YWxlbmNlc0IgPSBtZXRhRXF1aXZhbGVuY2VzLFxuICAgICAgICAgIGxvY2FsTWV0YUNvbnRleHQgPSB0aGlzOyAgLy8vXG5cbiAgICBtZXRhRXF1aXZhbGVuY2VzID0gbWVyZ2VNZXRhRXF1aXZhbGVuY2VzKG1ldGFFcXVpdmFsZW5jZXNBLCBtZXRhRXF1aXZhbGVuY2VzQiwgbG9jYWxNZXRhQ29udGV4dCk7IC8vL1xuXG4gICAgcmV0dXJuIG1ldGFFcXVpdmFsZW5jZXM7XG4gIH1cblxuICBnZXRWYXJpYWJsZXMoKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZ2V0VmFyaWFibGVzKCk7IH1cblxuICBnZXRFcXVpdmFsZW5jZXMoKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZ2V0RXF1aXZhbGVuY2VzKCk7IH1cblxuICBnZXRNZXRhdmFyaWFibGVzKCkge1xuICAgIGxldCBtZXRhdmFyaWFibGVzID0gdGhpcy5jb250ZXh0LmdldE1ldGF2YXJpYWJsZXMoKTtcblxuICAgIG1ldGF2YXJpYWJsZXMgPSBbIC8vL1xuICAgICAgLi4udGhpcy5tZXRhdmFyaWFibGVzLFxuICAgICAgLi4ubWV0YXZhcmlhYmxlc1xuICAgIF1cblxuICAgIHJldHVybiBtZXRhdmFyaWFibGVzO1xuICB9XG5cbiAgZ2V0TGFzdE1ldGFwcm9vZlN0ZXAoKSB7XG4gICAgbGV0IGxhc3RNZXRhcHJvb2ZTdGVwID0gbnVsbDtcblxuICAgIGNvbnN0IG1ldGFwcm9vZlN0ZXBzTGVuZ3RoID0gdGhpcy5tZXRhcHJvb2ZTdGVwcy5sZW5ndGg7XG5cbiAgICBpZiAobWV0YXByb29mU3RlcHNMZW5ndGggPiAwKSB7XG4gICAgICBsYXN0TWV0YXByb29mU3RlcCA9IGxhc3QodGhpcy5tZXRhcHJvb2ZTdGVwcyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGxhc3RNZXRhcHJvb2ZTdGVwO1xuICB9XG5cbiAgYWRkTWV0YUVxdWFsaXR5KG1ldGFFcXVhbGl0eSkge1xuXG4gIH1cblxuICBhZGRNZXRhdmFyaWFibGUobWV0YXZhcmlhYmxlKSB7XG4gICAgbGV0IG1ldGF2YXJpYWJsZUFkZGVkID0gZmFsc2U7XG5cbiAgICBjb25zdCBub2RlID0gbWV0YXZhcmlhYmxlLmdldE5hbWUoKSxcbiAgICAgICAgICBtZXRhdmFyaWFibGVQcmVzZW50ID0gdGhpcy5tZXRhdmFyaWFibGVzLnNvbWUoKG1ldGF2YXJpYWJsZSkgPT4ge1xuICAgICAgICAgICAgY29uc3Qgbm9kZU1hdGNoZXMgPSBtZXRhdmFyaWFibGUubWF0Y2hOb2RlKG5vZGUpO1xuXG4gICAgICAgICAgICBpZiAobm9kZU1hdGNoZXMpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG5cbiAgICBpZiAoIW1ldGF2YXJpYWJsZVByZXNlbnQpIHtcbiAgICAgIHRoaXMubWV0YXZhcmlhYmxlcy5wdXNoKG1ldGF2YXJpYWJsZSk7XG5cbiAgICAgIG1ldGF2YXJpYWJsZUFkZGVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gbWV0YXZhcmlhYmxlQWRkZWQ7XG4gIH1cblxuICBhZGRNZXRhcHJvb2ZTdGVwKG1ldGFwcm9vZlN0ZXApIHtcbiAgICB0aGlzLm1ldGFwcm9vZlN0ZXBzLnB1c2gobWV0YXByb29mU3RlcCk7XG4gIH1cblxuICBhZGRNZXRhRXF1aXZhbGVuY2UobWV0YUVxdWl2YWxlbmNlKSB7XG4gICAgdGhpcy5tZXRhRXF1aXZhbGVuY2VzLnB1c2gobWV0YUVxdWl2YWxlbmNlKTtcbiAgfVxuXG4gIG1hdGNoTWV0YXN0YXRlbWVudChtZXRhc3RhdGVtZW50Tm9kZSkge1xuICAgIGxldCBtZXRhc3RhdGVtZW50TWF0Y2hlcyA9IGZhbHNlO1xuXG4gICAgaWYgKCFtZXRhc3RhdGVtZW50TWF0Y2hlcykge1xuICAgICAgY29uc3QgcHJvb2ZTdGVwTWF0Y2hlc01ldGFzdGF0ZW1lbnQgPSB0aGlzLm1ldGFwcm9vZlN0ZXBzLnNvbWUoKG1ldGFwcm9vZlN0ZXApID0+IHtcbiAgICAgICAgY29uc3QgcHJvb2ZTdGVwTWF0Y2hlc01ldGFzdGF0ZW1lbnQgPSBtZXRhcHJvb2ZTdGVwLm1hdGNoKG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgICBpZiAocHJvb2ZTdGVwTWF0Y2hlc01ldGFzdGF0ZW1lbnQpIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIG1ldGFzdGF0ZW1lbnRNYXRjaGVzID0gcHJvb2ZTdGVwTWF0Y2hlc01ldGFzdGF0ZW1lbnQ7IC8vL1xuICAgIH1cblxuICAgIGlmICghbWV0YXN0YXRlbWVudE1hdGNoZXMpIHtcbiAgICAgIG1ldGFzdGF0ZW1lbnRNYXRjaGVzID0gdGhpcy5jb250ZXh0Lm1hdGNoTWV0YXN0YXRlbWVudChtZXRhc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG1ldGFzdGF0ZW1lbnRNYXRjaGVzO1xuICB9XG5cbiAgZmluZFZhcmlhYmxlQnlWYXJpYWJsZU5vZGUodmFyaWFibGVOb2RlKSB7XG4gICAgY29uc3Qgbm9kZSA9IHZhcmlhYmxlTm9kZSwgIC8vL1xuICAgICAgICAgIHZhcmlhYmxlcyA9IHRoaXMuZ2V0VmFyaWFibGVzKCksXG4gICAgICAgICAgdmFyaWFibGUgPSB2YXJpYWJsZXMuZmluZCgodmFyaWFibGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG1hdGNoZXMgPSB2YXJpYWJsZS5tYXRjaE5vZGUobm9kZSk7XG5cbiAgICAgICAgICAgIGlmIChtYXRjaGVzKSB7XG4gICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pIHx8IG51bGw7XG5cbiAgICByZXR1cm4gdmFyaWFibGU7XG4gIH1cblxuICBpc1ZhcmlhYmxlUHJlc2VudEJ5VmFyaWFibGVOb2RlKHZhcmlhYmxlTm9kZSkge1xuICAgIGNvbnN0IHZhcmlhYmxlID0gdGhpcy5maW5kVmFyaWFibGVCeVZhcmlhYmxlTm9kZSh2YXJpYWJsZU5vZGUpLFxuICAgICAgICAgIHZhcmlhYmxlUHJlc2VudCA9ICh2YXJpYWJsZSAhPT0gbnVsbCk7XG5cbiAgICByZXR1cm4gdmFyaWFibGVQcmVzZW50O1xuICB9XG5cbiAgZmluZE1ldGF2YXJpYWJsZUJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlLCBsb2NhbE1ldGFDb250ZXh0KSB7XG4gICAgY29uc3Qgbm9kZSA9IG1ldGF2YXJpYWJsZU5vZGUsICAvLy9cbiAgICAgICAgICBtZXRhdmFyaWFibGVzID0gdGhpcy5nZXRNZXRhdmFyaWFibGVzKCksXG4gICAgICAgICAgbWV0YXZhcmlhYmxlID0gbWV0YXZhcmlhYmxlcy5maW5kKChtZXRhdmFyaWFibGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG1hdGNoZXMgPSBtZXRhdmFyaWFibGUubWF0Y2hOb2RlKG5vZGUsIGxvY2FsTWV0YUNvbnRleHQpO1xuXG4gICAgICAgICAgICBpZiAobWF0Y2hlcykge1xuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIG1ldGF2YXJpYWJsZTtcbiAgfVxuXG4gIGlzTWV0YXZhcmlhYmxlUHJlc2VudEJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlLCBsb2NhbE1ldGFDb250ZXh0KSB7XG4gICAgY29uc3QgbWV0YXZhcmlhYmxlID0gdGhpcy5maW5kTWV0YXZhcmlhYmxlQnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUsIGxvY2FsTWV0YUNvbnRleHQpLFxuICAgICAgICAgIG1ldGF2YXJpYWJsZVByZXNlbnQgPSAobWV0YXZhcmlhYmxlICE9PSBudWxsKTtcblxuICAgIHJldHVybiBtZXRhdmFyaWFibGVQcmVzZW50O1xuICB9XG5cbiAgc3RhdGljIGZyb21GaWxlQ29udGV4dChmaWxlQ29udGV4dCkge1xuICAgIGNvbnN0IGNvbnRleHQgPSBmaWxlQ29udGV4dCwgIC8vL1xuICAgICAgICAgIG1ldGF2YXJpYWJsZXMgPSBbXSxcbiAgICAgICAgICBtZXRhcHJvb2ZTdGVwcyA9IFtdLFxuICAgICAgICAgIG1ldGFFcXVpdmFsZW5jZXMgPSBbXSxcbiAgICAgICAgICBsb2NhbE1ldGFDb250ZXh0ID0gbmV3IExvY2FsTWV0YUNvbnRleHQoY29udGV4dCwgbWV0YXZhcmlhYmxlcywgbWV0YXByb29mU3RlcHMsIG1ldGFFcXVpdmFsZW5jZXMpO1xuXG4gICAgcmV0dXJuIGxvY2FsTWV0YUNvbnRleHQ7XG4gIH1cblxuICBzdGF0aWMgZnJvbUxvY2FsTWV0YUNvbnRleHQobG9jYWxNZXRhQ29udGV4dCkge1xuICAgIGNvbnN0IGNvbnRleHQgPSBsb2NhbE1ldGFDb250ZXh0LCAgLy8vXG4gICAgICAgICAgbWV0YXZhcmlhYmxlcyA9IFtdLFxuICAgICAgICAgIG1ldGFwcm9vZlN0ZXBzID0gW10sXG4gICAgICAgICAgbWV0YUVxdWl2YWxlbmNlcyA9IFtdO1xuXG4gICAgbG9jYWxNZXRhQ29udGV4dCA9IG5ldyBMb2NhbE1ldGFDb250ZXh0KGNvbnRleHQsIG1ldGF2YXJpYWJsZXMsIG1ldGFwcm9vZlN0ZXBzLCBtZXRhRXF1aXZhbGVuY2VzKTsgIC8vL1xuXG4gICAgcmV0dXJuIGxvY2FsTWV0YUNvbnRleHQ7XG4gIH1cbn1cblxuT2JqZWN0LmFzc2lnbihMb2NhbE1ldGFDb250ZXh0LnByb3RvdHlwZSwgY29udGV4dE1peGlucyk7XG5cbmV4cG9ydCBkZWZhdWx0IExvY2FsTWV0YUNvbnRleHQ7Il0sIm5hbWVzIjpbIkxvY2FsTWV0YUNvbnRleHQiLCJjb250ZXh0IiwibWV0YXZhcmlhYmxlcyIsIm1ldGFwcm9vZlN0ZXBzIiwibWV0YUVxdWl2YWxlbmNlcyIsImdldENvbnRleHQiLCJnZXRUZXJtVHlwZSIsInRlcm0iLCJ0ZXJtVHlwZSIsImdldFR5cGUiLCJnZXRNZXRhcHJvb2ZTdGVwcyIsImdldE1ldGFFcXVpdmFsZW5jZXMiLCJtZXRhRXF1aXZhbGVuY2VzQSIsIm1ldGFFcXVpdmFsZW5jZXNCIiwibG9jYWxNZXRhQ29udGV4dCIsIm1lcmdlTWV0YUVxdWl2YWxlbmNlcyIsImdldFZhcmlhYmxlcyIsImdldEVxdWl2YWxlbmNlcyIsImdldE1ldGF2YXJpYWJsZXMiLCJnZXRMYXN0TWV0YXByb29mU3RlcCIsImxhc3RNZXRhcHJvb2ZTdGVwIiwibWV0YXByb29mU3RlcHNMZW5ndGgiLCJsZW5ndGgiLCJsYXN0IiwiYWRkTWV0YUVxdWFsaXR5IiwibWV0YUVxdWFsaXR5IiwiYWRkTWV0YXZhcmlhYmxlIiwibWV0YXZhcmlhYmxlIiwibWV0YXZhcmlhYmxlQWRkZWQiLCJub2RlIiwiZ2V0TmFtZSIsIm1ldGF2YXJpYWJsZVByZXNlbnQiLCJzb21lIiwibm9kZU1hdGNoZXMiLCJtYXRjaE5vZGUiLCJwdXNoIiwiYWRkTWV0YXByb29mU3RlcCIsIm1ldGFwcm9vZlN0ZXAiLCJhZGRNZXRhRXF1aXZhbGVuY2UiLCJtZXRhRXF1aXZhbGVuY2UiLCJtYXRjaE1ldGFzdGF0ZW1lbnQiLCJtZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGFzdGF0ZW1lbnRNYXRjaGVzIiwicHJvb2ZTdGVwTWF0Y2hlc01ldGFzdGF0ZW1lbnQiLCJtYXRjaCIsImZpbmRWYXJpYWJsZUJ5VmFyaWFibGVOb2RlIiwidmFyaWFibGVOb2RlIiwidmFyaWFibGVzIiwidmFyaWFibGUiLCJmaW5kIiwibWF0Y2hlcyIsImlzVmFyaWFibGVQcmVzZW50QnlWYXJpYWJsZU5vZGUiLCJ2YXJpYWJsZVByZXNlbnQiLCJmaW5kTWV0YXZhcmlhYmxlQnlNZXRhdmFyaWFibGVOb2RlIiwibWV0YXZhcmlhYmxlTm9kZSIsImlzTWV0YXZhcmlhYmxlUHJlc2VudEJ5TWV0YXZhcmlhYmxlTm9kZSIsImZyb21GaWxlQ29udGV4dCIsImZpbGVDb250ZXh0IiwiZnJvbUxvY2FsTWV0YUNvbnRleHQiLCJPYmplY3QiLCJhc3NpZ24iLCJwcm90b3R5cGUiLCJjb250ZXh0TWl4aW5zIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFvTUE7OztlQUFBOzs7OERBbE0wQjtxQkFFTDtnQ0FDaUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXRDLElBQUEsQUFBTUEsaUNBQUQsQUFBTDthQUFNQSxpQkFDUUMsT0FBTyxFQUFFQyxhQUFhLEVBQUVDLGNBQWMsRUFBRUMsZ0JBQWdCO2dDQURoRUo7UUFFRixJQUFJLENBQUNDLE9BQU8sR0FBR0E7UUFDZixJQUFJLENBQUNDLGFBQWEsR0FBR0E7UUFDckIsSUFBSSxDQUFDQyxjQUFjLEdBQUdBO1FBQ3RCLElBQUksQ0FBQ0MsZ0JBQWdCLEdBQUdBOztrQkFMdEJKOztZQVFKSyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNKLE9BQU87WUFDckI7OztZQUVBSyxLQUFBQTttQkFBQUEsU0FBQUEsWUFBWUMsSUFBSTtnQkFDZCxJQUFNQyxXQUFXRCxLQUFLRSxPQUFPO2dCQUU3QixPQUFPRDtZQUNUOzs7WUFFQUUsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQUlQLGlCQUFpQixJQUFJLENBQUNGLE9BQU8sQ0FBQ1MsaUJBQWlCO2dCQUVuRFAsaUJBQWlCLEFBQ2YscUJBQUdBLHVCQUNILHFCQUFHLElBQUksQ0FBQ0EsY0FBYztnQkFHeEIsT0FBT0E7WUFDVDs7O1lBRUFRLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFJUCxtQkFBbUIsSUFBSSxDQUFDSCxPQUFPLENBQUNVLG1CQUFtQjtnQkFFdkQsSUFBTUMsb0JBQW9CLElBQUksQ0FBQ1IsZ0JBQWdCLEVBQ3pDUyxvQkFBb0JULGtCQUNwQlUsbUJBQW1CLElBQUksRUFBRyxHQUFHO2dCQUVuQ1YsbUJBQW1CVyxJQUFBQSx1Q0FB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
245
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250ZXh0L2xvY2FsTWV0YS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGNvbnRleHRNaXhpbnMgZnJvbSBcIi4uL21peGlucy9jb250ZXh0XCI7XG5cbmltcG9ydCB7IGxhc3QgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5cbmNsYXNzIExvY2FsTWV0YUNvbnRleHQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBqdWRnZW1lbnRzLCBtZXRhdmFyaWFibGVzLCBtZXRhcHJvb2ZTdGVwcykge1xuICAgIHRoaXMuY29udGV4dCA9IGNvbnRleHQ7XG4gICAgdGhpcy5qdWRnZW1lbnRzID0ganVkZ2VtZW50cztcbiAgICB0aGlzLm1ldGF2YXJpYWJsZXMgPSBtZXRhdmFyaWFibGVzO1xuICAgIHRoaXMubWV0YXByb29mU3RlcHMgPSBtZXRhcHJvb2ZTdGVwcztcbiAgfVxuXG4gIGdldENvbnRleHQoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dDtcbiAgfVxuXG4gIGdldEp1ZGdlbWVudHMoKSB7XG4gICAgbGV0IGp1ZGdlbWVudHMgPSB0aGlzLmNvbnRleHQuZ2V0SnVkZ2VtZW50cygpO1xuXG4gICAganVkZ2VtZW50cyA9IFsgLy8vXG4gICAgICAuLi50aGlzLmp1ZGdlbWVudHMsXG4gICAgICAuLi5qdWRnZW1lbnRzXG4gICAgXVxuXG4gICAgcmV0dXJuIGp1ZGdlbWVudHM7XG4gIH1cblxuICBnZXRNZXRhdmFyaWFibGVzKCkge1xuICAgIGxldCBtZXRhdmFyaWFibGVzID0gdGhpcy5jb250ZXh0LmdldE1ldGF2YXJpYWJsZXMoKTtcblxuICAgIG1ldGF2YXJpYWJsZXMgPSBbIC8vL1xuICAgICAgLi4udGhpcy5tZXRhdmFyaWFibGVzLFxuICAgICAgLi4ubWV0YXZhcmlhYmxlc1xuICAgIF1cblxuICAgIHJldHVybiBtZXRhdmFyaWFibGVzO1xuICB9XG5cbiAgZ2V0TWV0YXByb29mU3RlcHMoKSB7XG4gICAgbGV0IG1ldGFwcm9vZlN0ZXBzID0gdGhpcy5jb250ZXh0LmdldE1ldGFwcm9vZlN0ZXBzKCk7XG5cbiAgICBtZXRhcHJvb2ZTdGVwcyA9IFsgIC8vL1xuICAgICAgLi4ubWV0YXByb29mU3RlcHMsXG4gICAgICAuLi50aGlzLm1ldGFwcm9vZlN0ZXBzXG4gICAgXTtcblxuICAgIHJldHVybiBtZXRhcHJvb2ZTdGVwcztcbiAgfVxuXG4gIGdldFZhcmlhYmxlcygpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5nZXRWYXJpYWJsZXMoKTsgfVxuXG4gIGdldFByb29mU3RlcHMoKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZ2V0UHJvb2ZTdGVwcygpOyB9XG5cbiAgZ2V0RXF1aXZhbGVuY2VzKCkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmdldEVxdWl2YWxlbmNlcygpOyB9XG5cbiAgZ2V0VGVybVR5cGUodGVybSkge1xuICAgIGNvbnN0IHRlcm1UeXBlID0gdGVybS5nZXRUeXBlKCk7XG5cbiAgICByZXR1cm4gdGVybVR5cGU7XG4gIH1cblxuICBnZXRMYXN0TWV0YXByb29mU3RlcCgpIHtcbiAgICBsZXQgbGFzdE1ldGFwcm9vZlN0ZXAgPSBudWxsO1xuXG4gICAgY29uc3QgbWV0YXByb29mU3RlcHNMZW5ndGggPSB0aGlzLm1ldGFwcm9vZlN0ZXBzLmxlbmd0aDtcblxuICAgIGlmIChtZXRhcHJvb2ZTdGVwc0xlbmd0aCA+IDApIHtcbiAgICAgIGxhc3RNZXRhcHJvb2ZTdGVwID0gbGFzdCh0aGlzLm1ldGFwcm9vZlN0ZXBzKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbGFzdE1ldGFwcm9vZlN0ZXA7XG4gIH1cblxuICBhZGRKdWRnZW1lbnQoanVkZ2VtZW50KSB7XG4gICAgdGhpcy5qdWRnZW1lbnRzLnB1c2goanVkZ2VtZW50KTtcbiAgfVxuXG4gIGFkZE1ldGF2YXJpYWJsZShtZXRhdmFyaWFibGUpIHtcbiAgICBsZXQgbWV0YXZhcmlhYmxlQWRkZWQgPSBmYWxzZTtcblxuICAgIGNvbnN0IG5vZGUgPSBtZXRhdmFyaWFibGUuZ2V0TmFtZSgpLFxuICAgICAgICAgIG1ldGF2YXJpYWJsZVByZXNlbnQgPSB0aGlzLm1ldGF2YXJpYWJsZXMuc29tZSgobWV0YXZhcmlhYmxlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBub2RlTWF0Y2hlcyA9IG1ldGF2YXJpYWJsZS5tYXRjaE5vZGUobm9kZSk7XG5cbiAgICAgICAgICAgIGlmIChub2RlTWF0Y2hlcykge1xuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcblxuICAgIGlmICghbWV0YXZhcmlhYmxlUHJlc2VudCkge1xuICAgICAgdGhpcy5tZXRhdmFyaWFibGVzLnB1c2gobWV0YXZhcmlhYmxlKTtcblxuICAgICAgbWV0YXZhcmlhYmxlQWRkZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIHJldHVybiBtZXRhdmFyaWFibGVBZGRlZDtcbiAgfVxuXG4gIGFkZE1ldGFwcm9vZlN0ZXAobWV0YXByb29mU3RlcCkge1xuICAgIHRoaXMubWV0YXByb29mU3RlcHMucHVzaChtZXRhcHJvb2ZTdGVwKTtcbiAgfVxuXG4gIG1hdGNoTWV0YXN0YXRlbWVudChtZXRhc3RhdGVtZW50Tm9kZSkge1xuICAgIGxldCBtZXRhc3RhdGVtZW50TWF0Y2hlcyA9IGZhbHNlO1xuXG4gICAgaWYgKCFtZXRhc3RhdGVtZW50TWF0Y2hlcykge1xuICAgICAgY29uc3QgcHJvb2ZTdGVwTWF0Y2hlc01ldGFzdGF0ZW1lbnQgPSB0aGlzLm1ldGFwcm9vZlN0ZXBzLnNvbWUoKG1ldGFwcm9vZlN0ZXApID0+IHtcbiAgICAgICAgY29uc3QgcHJvb2ZTdGVwTWF0Y2hlc01ldGFzdGF0ZW1lbnQgPSBtZXRhcHJvb2ZTdGVwLm1hdGNoKG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgICBpZiAocHJvb2ZTdGVwTWF0Y2hlc01ldGFzdGF0ZW1lbnQpIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIG1ldGFzdGF0ZW1lbnRNYXRjaGVzID0gcHJvb2ZTdGVwTWF0Y2hlc01ldGFzdGF0ZW1lbnQ7IC8vL1xuICAgIH1cblxuICAgIGlmICghbWV0YXN0YXRlbWVudE1hdGNoZXMpIHtcbiAgICAgIG1ldGFzdGF0ZW1lbnRNYXRjaGVzID0gdGhpcy5jb250ZXh0Lm1hdGNoTWV0YXN0YXRlbWVudChtZXRhc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG1ldGFzdGF0ZW1lbnRNYXRjaGVzO1xuICB9XG5cbiAgZmluZFZhcmlhYmxlQnlWYXJpYWJsZU5vZGUodmFyaWFibGVOb2RlKSB7XG4gICAgY29uc3Qgbm9kZSA9IHZhcmlhYmxlTm9kZSwgIC8vL1xuICAgICAgICAgIHZhcmlhYmxlcyA9IHRoaXMuZ2V0VmFyaWFibGVzKCksXG4gICAgICAgICAgdmFyaWFibGUgPSB2YXJpYWJsZXMuZmluZCgodmFyaWFibGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG1hdGNoZXMgPSB2YXJpYWJsZS5tYXRjaE5vZGUobm9kZSk7XG5cbiAgICAgICAgICAgIGlmIChtYXRjaGVzKSB7XG4gICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pIHx8IG51bGw7XG5cbiAgICByZXR1cm4gdmFyaWFibGU7XG4gIH1cblxuICBpc1ZhcmlhYmxlUHJlc2VudEJ5VmFyaWFibGVOb2RlKHZhcmlhYmxlTm9kZSkge1xuICAgIGNvbnN0IHZhcmlhYmxlID0gdGhpcy5maW5kVmFyaWFibGVCeVZhcmlhYmxlTm9kZSh2YXJpYWJsZU5vZGUpLFxuICAgICAgICAgIHZhcmlhYmxlUHJlc2VudCA9ICh2YXJpYWJsZSAhPT0gbnVsbCk7XG5cbiAgICByZXR1cm4gdmFyaWFibGVQcmVzZW50O1xuICB9XG5cbiAgZmluZE1ldGF2YXJpYWJsZUJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlLCBsb2NhbE1ldGFDb250ZXh0KSB7XG4gICAgY29uc3Qgbm9kZSA9IG1ldGF2YXJpYWJsZU5vZGUsICAvLy9cbiAgICAgICAgICBtZXRhdmFyaWFibGVzID0gdGhpcy5nZXRNZXRhdmFyaWFibGVzKCksXG4gICAgICAgICAgbWV0YXZhcmlhYmxlID0gbWV0YXZhcmlhYmxlcy5maW5kKChtZXRhdmFyaWFibGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG1hdGNoZXMgPSBtZXRhdmFyaWFibGUubWF0Y2hOb2RlKG5vZGUsIGxvY2FsTWV0YUNvbnRleHQpO1xuXG4gICAgICAgICAgICBpZiAobWF0Y2hlcykge1xuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIG1ldGF2YXJpYWJsZTtcbiAgfVxuXG4gIGlzTWV0YXZhcmlhYmxlUHJlc2VudEJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlLCBsb2NhbE1ldGFDb250ZXh0KSB7XG4gICAgY29uc3QgbWV0YXZhcmlhYmxlID0gdGhpcy5maW5kTWV0YXZhcmlhYmxlQnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUsIGxvY2FsTWV0YUNvbnRleHQpLFxuICAgICAgICAgIG1ldGF2YXJpYWJsZVByZXNlbnQgPSAobWV0YXZhcmlhYmxlICE9PSBudWxsKTtcblxuICAgIHJldHVybiBtZXRhdmFyaWFibGVQcmVzZW50O1xuICB9XG5cbiAgc3RhdGljIGZyb21GaWxlQ29udGV4dChmaWxlQ29udGV4dCkge1xuICAgIGNvbnN0IGNvbnRleHQgPSBmaWxlQ29udGV4dCwgIC8vL1xuICAgICAgICAgIGp1ZGdlbWVudHMgPSBbXSxcbiAgICAgICAgICBtZXRhdmFyaWFibGVzID0gW10sXG4gICAgICAgICAgbWV0YXByb29mU3RlcHMgPSBbXSxcbiAgICAgICAgICBsb2NhbE1ldGFDb250ZXh0ID0gbmV3IExvY2FsTWV0YUNvbnRleHQoY29udGV4dCwganVkZ2VtZW50cywgbWV0YXZhcmlhYmxlcywgbWV0YXByb29mU3RlcHMpO1xuXG4gICAgcmV0dXJuIGxvY2FsTWV0YUNvbnRleHQ7XG4gIH1cblxuICBzdGF0aWMgZnJvbUxvY2FsTWV0YUNvbnRleHQobG9jYWxNZXRhQ29udGV4dCkge1xuICAgIGNvbnN0IGNvbnRleHQgPSBsb2NhbE1ldGFDb250ZXh0LCAgLy8vXG4gICAgICAgICAganVkZ2VtZW50cyA9IFtdLFxuICAgICAgICAgIG1ldGF2YXJpYWJsZXMgPSBbXSxcbiAgICAgICAgICBtZXRhcHJvb2ZTdGVwcyA9IFtdO1xuXG4gICAgbG9jYWxNZXRhQ29udGV4dCA9IG5ldyBMb2NhbE1ldGFDb250ZXh0KGNvbnRleHQsIGp1ZGdlbWVudHMsIG1ldGF2YXJpYWJsZXMsIG1ldGFwcm9vZlN0ZXBzKTsgIC8vL1xuXG4gICAgcmV0dXJuIGxvY2FsTWV0YUNvbnRleHQ7XG4gIH1cbn1cblxuT2JqZWN0LmFzc2lnbihMb2NhbE1ldGFDb250ZXh0LnByb3RvdHlwZSwgY29udGV4dE1peGlucyk7XG5cbmV4cG9ydCBkZWZhdWx0IExvY2FsTWV0YUNvbnRleHQ7Il0sIm5hbWVzIjpbIkxvY2FsTWV0YUNvbnRleHQiLCJjb250ZXh0IiwianVkZ2VtZW50cyIsIm1ldGF2YXJpYWJsZXMiLCJtZXRhcHJvb2ZTdGVwcyIsImdldENvbnRleHQiLCJnZXRKdWRnZW1lbnRzIiwiZ2V0TWV0YXZhcmlhYmxlcyIsImdldE1ldGFwcm9vZlN0ZXBzIiwiZ2V0VmFyaWFibGVzIiwiZ2V0UHJvb2ZTdGVwcyIsImdldEVxdWl2YWxlbmNlcyIsImdldFRlcm1UeXBlIiwidGVybSIsInRlcm1UeXBlIiwiZ2V0VHlwZSIsImdldExhc3RNZXRhcHJvb2ZTdGVwIiwibGFzdE1ldGFwcm9vZlN0ZXAiLCJtZXRhcHJvb2ZTdGVwc0xlbmd0aCIsImxlbmd0aCIsImxhc3QiLCJhZGRKdWRnZW1lbnQiLCJqdWRnZW1lbnQiLCJwdXNoIiwiYWRkTWV0YXZhcmlhYmxlIiwibWV0YXZhcmlhYmxlIiwibWV0YXZhcmlhYmxlQWRkZWQiLCJub2RlIiwiZ2V0TmFtZSIsIm1ldGF2YXJpYWJsZVByZXNlbnQiLCJzb21lIiwibm9kZU1hdGNoZXMiLCJtYXRjaE5vZGUiLCJhZGRNZXRhcHJvb2ZTdGVwIiwibWV0YXByb29mU3RlcCIsIm1hdGNoTWV0YXN0YXRlbWVudCIsIm1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXN0YXRlbWVudE1hdGNoZXMiLCJwcm9vZlN0ZXBNYXRjaGVzTWV0YXN0YXRlbWVudCIsIm1hdGNoIiwiZmluZFZhcmlhYmxlQnlWYXJpYWJsZU5vZGUiLCJ2YXJpYWJsZU5vZGUiLCJ2YXJpYWJsZXMiLCJ2YXJpYWJsZSIsImZpbmQiLCJtYXRjaGVzIiwiaXNWYXJpYWJsZVByZXNlbnRCeVZhcmlhYmxlTm9kZSIsInZhcmlhYmxlUHJlc2VudCIsImZpbmRNZXRhdmFyaWFibGVCeU1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhdmFyaWFibGVOb2RlIiwibG9jYWxNZXRhQ29udGV4dCIsImlzTWV0YXZhcmlhYmxlUHJlc2VudEJ5TWV0YXZhcmlhYmxlTm9kZSIsImZyb21GaWxlQ29udGV4dCIsImZpbGVDb250ZXh0IiwiZnJvbUxvY2FsTWV0YUNvbnRleHQiLCJPYmplY3QiLCJhc3NpZ24iLCJwcm90b3R5cGUiLCJjb250ZXh0TWl4aW5zIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFnTUE7OztlQUFBOzs7OERBOUwwQjtxQkFFTDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFckIsSUFBQSxBQUFNQSxpQ0FBRCxBQUFMO2FBQU1BLGlCQUNRQyxPQUFPLEVBQUVDLFVBQVUsRUFBRUMsYUFBYSxFQUFFQyxjQUFjO2dDQUQxREo7UUFFRixJQUFJLENBQUNDLE9BQU8sR0FBR0E7UUFDZixJQUFJLENBQUNDLFVBQVUsR0FBR0E7UUFDbEIsSUFBSSxDQUFDQyxhQUFhLEdBQUdBO1FBQ3JCLElBQUksQ0FBQ0MsY0FBYyxHQUFHQTs7a0JBTHBCSjs7WUFRSkssS0FBQUE7bUJB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
package/lib/frame.js ADDED
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return Frame;
9
+ }
10
+ });
11
+ function _class_call_check(instance, Constructor) {
12
+ if (!(instance instanceof Constructor)) {
13
+ throw new TypeError("Cannot call a class as a function");
14
+ }
15
+ }
16
+ function _defineProperties(target, props) {
17
+ for(var i = 0; i < props.length; i++){
18
+ var descriptor = props[i];
19
+ descriptor.enumerable = descriptor.enumerable || false;
20
+ descriptor.configurable = true;
21
+ if ("value" in descriptor) descriptor.writable = true;
22
+ Object.defineProperty(target, descriptor.key, descriptor);
23
+ }
24
+ }
25
+ function _create_class(Constructor, protoProps, staticProps) {
26
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
27
+ if (staticProps) _defineProperties(Constructor, staticProps);
28
+ return Constructor;
29
+ }
30
+ var Frame = /*#__PURE__*/ function() {
31
+ function Frame(node, declarations) {
32
+ _class_call_check(this, Frame);
33
+ this.node = node;
34
+ this.declarations = declarations;
35
+ }
36
+ _create_class(Frame, [
37
+ {
38
+ key: "getNode",
39
+ value: function getNode() {
40
+ return this.node;
41
+ }
42
+ },
43
+ {
44
+ key: "getDeclarations",
45
+ value: function getDeclarations() {
46
+ return this.declarations;
47
+ }
48
+ },
49
+ {
50
+ key: "addDeclarations",
51
+ value: function addDeclarations(declarations) {
52
+ push(this.declarations, declarations);
53
+ }
54
+ },
55
+ {
56
+ key: "fromFrameNodeAndDeclarations",
57
+ value: function fromFrameNodeAndDeclarations(frameNode, declarations) {
58
+ var node = frameNode, frame = new Frame(node, declarations);
59
+ return frame;
60
+ }
61
+ }
62
+ ]);
63
+ return Frame;
64
+ }();
65
+
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9mcmFtZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRnJhbWUge1xuICBjb25zdHJ1Y3Rvcihub2RlLCBkZWNsYXJhdGlvbnMpIHtcbiAgICB0aGlzLm5vZGUgPSBub2RlO1xuICAgIHRoaXMuZGVjbGFyYXRpb25zID0gZGVjbGFyYXRpb25zO1xuICB9XG5cbiAgZ2V0Tm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5ub2RlO1xuICB9XG5cbiAgZ2V0RGVjbGFyYXRpb25zKCkge1xuICAgIHJldHVybiB0aGlzLmRlY2xhcmF0aW9ucztcbiAgfVxuXG4gIGFkZERlY2xhcmF0aW9ucyhkZWNsYXJhdGlvbnMpIHtcbiAgICBwdXNoKHRoaXMuZGVjbGFyYXRpb25zLCBkZWNsYXJhdGlvbnMpO1xuICB9XG5cbiAgZnJvbUZyYW1lTm9kZUFuZERlY2xhcmF0aW9ucyhmcmFtZU5vZGUsIGRlY2xhcmF0aW9ucykge1xuICAgIGNvbnN0IG5vZGUgPSBmcmFtZU5vZGUsIC8vL1xuICAgICAgICAgIGZyYW1lID0gbmV3IEZyYW1lKG5vZGUsIGRlY2xhcmF0aW9ucyk7XG5cbiAgICByZXR1cm4gZnJhbWU7XG4gIH1cbn0iXSwibmFtZXMiOlsiRnJhbWUiLCJub2RlIiwiZGVjbGFyYXRpb25zIiwiZ2V0Tm9kZSIsImdldERlY2xhcmF0aW9ucyIsImFkZERlY2xhcmF0aW9ucyIsInB1c2giLCJmcm9tRnJhbWVOb2RlQW5kRGVjbGFyYXRpb25zIiwiZnJhbWVOb2RlIiwiZnJhbWUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBRXFCQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFOLElBQUEsQUFBTUEsc0JBQUQsQUFBTDthQUFNQSxNQUNQQyxJQUFJLEVBQUVDLFlBQVk7Z0NBRFhGO1FBRWpCLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTtRQUNaLElBQUksQ0FBQ0MsWUFBWSxHQUFHQTs7a0JBSEhGOztZQU1uQkcsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDRixJQUFJO1lBQ2xCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDRixZQUFZO1lBQzFCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLGdCQUFnQkgsWUFBWTtnQkFDMUJJLEtBQUssSUFBSSxDQUFDSixZQUFZLEVBQUVBO1lBQzFCOzs7WUFFQUssS0FBQUE7bUJBQUFBLFNBQUFBLDZCQUE2QkMsU0FBUyxFQUFFTixZQUFZO2dCQUNsRCxJQUFNRCxPQUFPTyxXQUNQQyxRQUFRLElBcEJHVCxNQW9CT0MsTUFBTUM7Z0JBRTlCLE9BQU9PO1lBQ1Q7OztXQXZCbUJUIn0=
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return Judgement;
9
+ }
10
+ });
11
+ function _class_call_check(instance, Constructor) {
12
+ if (!(instance instanceof Constructor)) {
13
+ throw new TypeError("Cannot call a class as a function");
14
+ }
15
+ }
16
+ function _defineProperties(target, props) {
17
+ for(var i = 0; i < props.length; i++){
18
+ var descriptor = props[i];
19
+ descriptor.enumerable = descriptor.enumerable || false;
20
+ descriptor.configurable = true;
21
+ if ("value" in descriptor) descriptor.writable = true;
22
+ Object.defineProperty(target, descriptor.key, descriptor);
23
+ }
24
+ }
25
+ function _create_class(Constructor, protoProps, staticProps) {
26
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
27
+ if (staticProps) _defineProperties(Constructor, staticProps);
28
+ return Constructor;
29
+ }
30
+ var Judgement = /*#__PURE__*/ function() {
31
+ function Judgement(node, frame, metavariable) {
32
+ _class_call_check(this, Judgement);
33
+ this.node = node;
34
+ this.frame = frame;
35
+ this.metavariable = metavariable;
36
+ }
37
+ _create_class(Judgement, [
38
+ {
39
+ key: "getNode",
40
+ value: function getNode() {
41
+ return this.node;
42
+ }
43
+ },
44
+ {
45
+ key: "getFrame",
46
+ value: function getFrame() {
47
+ return this.frame;
48
+ }
49
+ },
50
+ {
51
+ key: "getMetavariable",
52
+ value: function getMetavariable() {
53
+ return this.metavariable;
54
+ }
55
+ }
56
+ ], [
57
+ {
58
+ key: "fromJudgementNodeFrameAndMetavariable",
59
+ value: function fromJudgementNodeFrameAndMetavariable(judgementNode, frame, metavariable) {
60
+ var node = judgementNode, judgement = new Judgement(node, frame, metavariable);
61
+ return judgement;
62
+ }
63
+ }
64
+ ]);
65
+ return Judgement;
66
+ }();
67
+
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9qdWRnZW1lbnQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEp1ZGdlbWVudCB7XG4gIGNvbnN0cnVjdG9yKG5vZGUsIGZyYW1lLCBtZXRhdmFyaWFibGUpIHtcbiAgICB0aGlzLm5vZGUgPSBub2RlO1xuICAgIHRoaXMuZnJhbWUgPSBmcmFtZTtcbiAgICB0aGlzLm1ldGF2YXJpYWJsZSA9IG1ldGF2YXJpYWJsZTtcbiAgfVxuXG4gIGdldE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9kZTtcbiAgfVxuXG4gIGdldEZyYW1lKCkge1xuICAgIHJldHVybiB0aGlzLmZyYW1lO1xuICB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlKCkge1xuICAgIHJldHVybiB0aGlzLm1ldGF2YXJpYWJsZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSnVkZ2VtZW50Tm9kZUZyYW1lQW5kTWV0YXZhcmlhYmxlKGp1ZGdlbWVudE5vZGUsIGZyYW1lLCBtZXRhdmFyaWFibGUpIHtcbiAgICBjb25zdCBub2RlID0ganVkZ2VtZW50Tm9kZSxcbiAgICAgICAgICBqdWRnZW1lbnQgPSBuZXcgSnVkZ2VtZW50KG5vZGUsIGZyYW1lLCBtZXRhdmFyaWFibGUpO1xuXG4gICAgcmV0dXJuIGp1ZGdlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIkp1ZGdlbWVudCIsIm5vZGUiLCJmcmFtZSIsIm1ldGF2YXJpYWJsZSIsImdldE5vZGUiLCJnZXRGcmFtZSIsImdldE1ldGF2YXJpYWJsZSIsImZyb21KdWRnZW1lbnROb2RlRnJhbWVBbmRNZXRhdmFyaWFibGUiLCJqdWRnZW1lbnROb2RlIiwianVkZ2VtZW50Il0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUVxQkE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBTixJQUFBLEFBQU1BLDBCQUFELEFBQUw7YUFBTUEsVUFDUEMsSUFBSSxFQUFFQyxLQUFLLEVBQUVDLFlBQVk7Z0NBRGxCSDtRQUVqQixJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLEtBQUssR0FBR0E7UUFDYixJQUFJLENBQUNDLFlBQVksR0FBR0E7O2tCQUpISDs7WUFPbkJJLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0gsSUFBSTtZQUNsQjs7O1lBRUFJLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0gsS0FBSztZQUNuQjs7O1lBRUFJLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0gsWUFBWTtZQUMxQjs7OztZQUVPSSxLQUFBQTttQkFBUCxTQUFPQSxzQ0FBc0NDLGFBQWEsRUFBRU4sS0FBSyxFQUFFQyxZQUFZO2dCQUM3RSxJQUFNRixPQUFPTyxlQUNQQyxZQUFZLElBckJEVCxVQXFCZUMsTUFBTUMsT0FBT0M7Z0JBRTdDLE9BQU9NO1lBQ1Q7OztXQXhCbUJUIn0=
package/lib/metaLemma.js CHANGED
@@ -114,13 +114,13 @@ var MetaLemma = /*#__PURE__*/ function(MetalemmaMetatheorem) {
114
114
  }
115
115
  },
116
116
  {
117
- key: "fromLabelsMetaSuppositionsMetaConsequentAndFileContext",
118
- value: function fromLabelsMetaSuppositionsMetaConsequentAndFileContext(labels, metaSuppositions, metaConsequent, fileContext) {
119
- return _metalemmaMetatheorem.default.fromLabelsMetaSuppositionsMetaConsequentAndFileContext(MetaLemma, labels, metaSuppositions, metaConsequent, fileContext);
117
+ key: "fromLabelsMetaSuppositionsMetaConsequentSubstitutionsAndFileContext",
118
+ value: function fromLabelsMetaSuppositionsMetaConsequentSubstitutionsAndFileContext(labels, metaSuppositions, metaConsequent, substitutions, fileContext) {
119
+ return _metalemmaMetatheorem.default.fromLabelsMetaSuppositionsMetaConsequentSubstitutionsAndFileContext(MetaLemma, labels, metaSuppositions, metaConsequent, substitutions, fileContext);
120
120
  }
121
121
  }
122
122
  ]);
123
123
  return MetaLemma;
124
124
  }(_metalemmaMetatheorem.default);
125
125
 
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXRhTGVtbWEuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBNZXRhbGVtbWFNZXRhdGhlb3JlbSBmcm9tIFwiLi9tZXRhbGVtbWFNZXRhdGhlb3JlbVwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBNZXRhTGVtbWEgZXh0ZW5kcyBNZXRhbGVtbWFNZXRhdGhlb3JlbSB7XG4gIHN0YXRpYyBmcm9tSlNPTkFuZEZpbGVDb250ZXh0KGpzb24sIGZpbGVDb250ZXh0KSB7IHJldHVybiBNZXRhbGVtbWFNZXRhdGhlb3JlbS5mcm9tSlNPTkFuZEZpbGVDb250ZXh0KE1ldGFMZW1tYSwganNvbiwgZmlsZUNvbnRleHQpOyB9XG5cbiAgc3RhdGljIGZyb21MYWJlbHNNZXRhU3VwcG9zaXRpb25zTWV0YUNvbnNlcXVlbnRBbmRGaWxlQ29udGV4dChsYWJlbHMsIG1ldGFTdXBwb3NpdGlvbnMsIG1ldGFDb25zZXF1ZW50LCBmaWxlQ29udGV4dCkgeyByZXR1cm4gTWV0YWxlbW1hTWV0YXRoZW9yZW0uZnJvbUxhYmVsc01ldGFTdXBwb3NpdGlvbnNNZXRhQ29uc2VxdWVudEFuZEZpbGVDb250ZXh0KE1ldGFMZW1tYSwgbGFiZWxzLCBtZXRhU3VwcG9zaXRpb25zLCBtZXRhQ29uc2VxdWVudCwgZmlsZUNvbnRleHQpOyB9XG59XG4iXSwibmFtZXMiOlsiTWV0YUxlbW1hIiwiZnJvbUpTT05BbmRGaWxlQ29udGV4dCIsImpzb24iLCJmaWxlQ29udGV4dCIsIk1ldGFsZW1tYU1ldGF0aGVvcmVtIiwiZnJvbUxhYmVsc01ldGFTdXBwb3NpdGlvbnNNZXRhQ29uc2VxdWVudEFuZEZpbGVDb250ZXh0IiwibGFiZWxzIiwibWV0YVN1cHBvc2l0aW9ucyIsIm1ldGFDb25zZXF1ZW50Il0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUlxQkE7OzsyRUFGWTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVsQixJQUFBLEFBQU1BLDBCQUFELEFBQUw7Y0FBTUE7K0JBQUFBO2FBQUFBO2dDQUFBQTs7O2tCQUFBQTs7WUFDWkMsS0FBQUE7bUJBQVAsU0FBT0EsdUJBQXVCQyxJQUFJLEVBQUVDLFdBQVc7Z0JBQUksT0FBT0MsNkJBQW9CLENBQUNILHNCQUFzQixDQURsRkQsV0FDOEZFLE1BQU1DO1lBQWM7OztZQUU5SEUsS0FBQUE7bUJBQVAsU0FBT0EsdURBQXVEQyxNQUFNLEVBQUVDLGdCQUFnQixFQUFFQyxjQUFjLEVBQUVMLFdBQVc7Z0JBQUksT0FBT0MsNkJBQW9CLENBQUNDLHNEQUFzRCxDQUh0TEwsV0FHa01NLFFBQVFDLGtCQUFrQkMsZ0JBQWdCTDtZQUFjOzs7V0FIMVBIO0VBQWtCSSw2QkFBb0IifQ==
126
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXRhTGVtbWEuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBNZXRhbGVtbWFNZXRhdGhlb3JlbSBmcm9tIFwiLi9tZXRhbGVtbWFNZXRhdGhlb3JlbVwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBNZXRhTGVtbWEgZXh0ZW5kcyBNZXRhbGVtbWFNZXRhdGhlb3JlbSB7XG4gIHN0YXRpYyBmcm9tSlNPTkFuZEZpbGVDb250ZXh0KGpzb24sIGZpbGVDb250ZXh0KSB7IHJldHVybiBNZXRhbGVtbWFNZXRhdGhlb3JlbS5mcm9tSlNPTkFuZEZpbGVDb250ZXh0KE1ldGFMZW1tYSwganNvbiwgZmlsZUNvbnRleHQpOyB9XG5cbiAgc3RhdGljIGZyb21MYWJlbHNNZXRhU3VwcG9zaXRpb25zTWV0YUNvbnNlcXVlbnRTdWJzdGl0dXRpb25zQW5kRmlsZUNvbnRleHQobGFiZWxzLCBtZXRhU3VwcG9zaXRpb25zLCBtZXRhQ29uc2VxdWVudCwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHQpIHsgcmV0dXJuIE1ldGFsZW1tYU1ldGF0aGVvcmVtLmZyb21MYWJlbHNNZXRhU3VwcG9zaXRpb25zTWV0YUNvbnNlcXVlbnRTdWJzdGl0dXRpb25zQW5kRmlsZUNvbnRleHQoTWV0YUxlbW1hLCBsYWJlbHMsIG1ldGFTdXBwb3NpdGlvbnMsIG1ldGFDb25zZXF1ZW50LCBzdWJzdGl0dXRpb25zLCBmaWxlQ29udGV4dCk7IH1cbn1cbiJdLCJuYW1lcyI6WyJNZXRhTGVtbWEiLCJmcm9tSlNPTkFuZEZpbGVDb250ZXh0IiwianNvbiIsImZpbGVDb250ZXh0IiwiTWV0YWxlbW1hTWV0YXRoZW9yZW0iLCJmcm9tTGFiZWxzTWV0YVN1cHBvc2l0aW9uc01ldGFDb25zZXF1ZW50U3Vic3RpdHV0aW9uc0FuZEZpbGVDb250ZXh0IiwibGFiZWxzIiwibWV0YVN1cHBvc2l0aW9ucyIsIm1ldGFDb25zZXF1ZW50Iiwic3Vic3RpdHV0aW9ucyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFJcUJBOzs7MkVBRlk7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFbEIsSUFBQSxBQUFNQSwwQkFBRCxBQUFMO2NBQU1BOytCQUFBQTthQUFBQTtnQ0FBQUE7OztrQkFBQUE7O1lBQ1pDLEtBQUFBO21CQUFQLFNBQU9BLHVCQUF1QkMsSUFBSSxFQUFFQyxXQUFXO2dCQUFJLE9BQU9DLDZCQUFvQixDQUFDSCxzQkFBc0IsQ0FEbEZELFdBQzhGRSxNQUFNQztZQUFjOzs7WUFFOUhFLEtBQUFBO21CQUFQLFNBQU9BLG9FQUFvRUMsTUFBTSxFQUFFQyxnQkFBZ0IsRUFBRUMsY0FBYyxFQUFFQyxhQUFhLEVBQUVOLFdBQVc7Z0JBQUksT0FBT0MsNkJBQW9CLENBQUNDLG1FQUFtRSxDQUgvTkwsV0FHMk9NLFFBQVFDLGtCQUFrQkMsZ0JBQWdCQyxlQUFlTjtZQUFjOzs7V0FIbFRIO0VBQWtCSSw2QkFBb0IifQ==
@@ -11,8 +11,8 @@ Object.defineProperty(exports, "default", {
11
11
  var _label = /*#__PURE__*/ _interop_require_default(require("./label"));
12
12
  var _metaConsequent = /*#__PURE__*/ _interop_require_default(require("./metaConsequent"));
13
13
  var _metaSupposition = /*#__PURE__*/ _interop_require_default(require("./metaSupposition"));
14
- var _localMeta = /*#__PURE__*/ _interop_require_default(require("./context/localMeta"));
15
14
  var _array = require("./utilities/array");
15
+ var _metastatementForMetavariable = /*#__PURE__*/ _interop_require_default(require("./substitution/metastatementForMetavariable"));
16
16
  function _class_call_check(instance, Constructor) {
17
17
  if (!(instance instanceof Constructor)) {
18
18
  throw new TypeError("Cannot call a class as a function");
@@ -38,11 +38,12 @@ function _interop_require_default(obj) {
38
38
  };
39
39
  }
40
40
  var MetaLemmaMetatheorem = /*#__PURE__*/ function() {
41
- function MetaLemmaMetatheorem(labels, metaSuppositions, metaConsequent, fileContext) {
41
+ function MetaLemmaMetatheorem(labels, metaSuppositions, metaConsequent, substitutions, fileContext) {
42
42
  _class_call_check(this, MetaLemmaMetatheorem);
43
43
  this.labels = labels;
44
44
  this.metaSuppositions = metaSuppositions;
45
45
  this.metaConsequent = metaConsequent;
46
+ this.substitutions = substitutions;
46
47
  this.fileContext = fileContext;
47
48
  }
48
49
  _create_class(MetaLemmaMetatheorem, [
@@ -64,6 +65,12 @@ var MetaLemmaMetatheorem = /*#__PURE__*/ function() {
64
65
  return this.metaConsequent;
65
66
  }
66
67
  },
68
+ {
69
+ key: "getSubstitutions",
70
+ value: function getSubstitutions() {
71
+ return this.substitutions;
72
+ }
73
+ },
67
74
  {
68
75
  key: "getFileContext",
69
76
  value: function getFileContext() {
@@ -117,10 +124,14 @@ var MetaLemmaMetatheorem = /*#__PURE__*/ function() {
117
124
  }), metaSuppositionsJSON = this.metaSuppositions.map(function(metaSupposition) {
118
125
  var metaSuppositionJSON = metaSupposition.toJSON(tokens);
119
126
  return metaSuppositionJSON;
120
- }), metaConsequentJSON = this.metaConsequent.toJSON(tokens), localContextJSON = this.fileContext.toJSON(tokens), labels = labelsJSON, metaSuppositions = metaSuppositionsJSON, metaConsequent = metaConsequentJSON, fileContext = localContextJSON, json = {
127
+ }), metaConsequentJSON = this.metaConsequent.toJSON(tokens), substitutionsJSON = this.substitutions.map(function(substitution) {
128
+ var substitutionJSON = substitution.toJSON();
129
+ return substitutionJSON;
130
+ }), localContextJSON = this.fileContext.toJSON(tokens), labels = labelsJSON, metaSuppositions = metaSuppositionsJSON, metaConsequent = metaConsequentJSON, substitutions = substitutionsJSON, fileContext = localContextJSON, json = {
121
131
  labels: labels,
122
132
  metaSuppositions: metaSuppositions,
123
133
  metaConsequent: metaConsequent,
134
+ substitutions: substitutions,
124
135
  fileContext: fileContext
125
136
  };
126
137
  return json;
@@ -136,7 +147,7 @@ var MetaLemmaMetatheorem = /*#__PURE__*/ function() {
136
147
  var _$json = labelJSON, label = _label.default.fromJSONAndFileContext(_$json, fileContext);
137
148
  return label;
138
149
  });
139
- var metaSuppositions = json.metaSuppositions, metaConsequent = json.metaConsequent;
150
+ var metaSuppositions = json.metaSuppositions, metaConsequent = json.metaConsequent, substitutions = json.substitutions;
140
151
  var metaSuppositionsJSON = metaSuppositions; ///
141
152
  metaSuppositions = metaSuppositionsJSON.map(function(metaSuppositionJSON) {
142
153
  var _$json = metaSuppositionJSON, metaSupposition = _metaSupposition.default.fromJSONAndFileContext(_$json, fileContext);
@@ -145,13 +156,18 @@ var MetaLemmaMetatheorem = /*#__PURE__*/ function() {
145
156
  var metaConsequentJSON = metaConsequent; ///
146
157
  json = metaConsequentJSON; ///
147
158
  metaConsequent = _metaConsequent.default.fromJSONAndFileContext(json, fileContext);
148
- return new Class(labels, metaSuppositions, metaConsequent, fileContext); ///
159
+ var substitutionsJSON = substitutions; ///
160
+ substitutions = substitutionsJSON.map(function(substitutionJSON) {
161
+ var _$json = substitutionJSON, metastatementForMetavariableSubstitution = _metastatementForMetavariable.default.fromJSONAndFileContext(_$json, fileContext), substitution = metastatementForMetavariableSubstitution; ///
162
+ return substitution;
163
+ });
164
+ return new Class(labels, metaSuppositions, metaConsequent, substitutions, fileContext); ///
149
165
  }
150
166
  },
151
167
  {
152
- key: "fromLabelsMetaSuppositionsMetaConsequentAndFileContext",
153
- value: function fromLabelsMetaSuppositionsMetaConsequentAndFileContext(Class, labels, metaSuppositions, metaConsequent, fileContext) {
154
- return new Class(labels, metaSuppositions, metaConsequent, fileContext);
168
+ key: "fromLabelsMetaSuppositionsMetaConsequentSubstitutionsAndFileContext",
169
+ value: function fromLabelsMetaSuppositionsMetaConsequentSubstitutionsAndFileContext(Class, labels, metaSuppositions, metaConsequent, substitutions, fileContext) {
170
+ return new Class(labels, metaSuppositions, metaConsequent, substitutions, fileContext);
155
171
  }
156
172
  }
157
173
  ]);
@@ -190,4 +206,4 @@ function matchMetaConsequent(metaConsequent, metastatementNode, substitutions, f
190
206
  return metaConsequentMatches;
191
207
  }
192
208
 
193
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXRhTGVtbWFNZXRhdGhlb3JlbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IExhYmVsIGZyb20gXCIuL2xhYmVsXCI7XG5pbXBvcnQgTWV0YUNvbnNlcXVlbnQgZnJvbSBcIi4vbWV0YUNvbnNlcXVlbnRcIjtcbmltcG9ydCBNZXRhU3VwcG9zaXRpb24gZnJvbSBcIi4vbWV0YVN1cHBvc2l0aW9uXCI7XG5pbXBvcnQgTG9jYWxNZXRhQ29udGV4dCBmcm9tIFwiLi9jb250ZXh0L2xvY2FsTWV0YVwiO1xuXG5pbXBvcnQgeyBwcnVuZSB9IGZyb20gXCIuL3V0aWxpdGllcy9hcnJheVwiO1xuaW1wb3J0IHsgc29tZVN1YkFycmF5IH0gZnJvbSBcIi4vdXRpbGl0aWVzL2FycmF5XCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE1ldGFMZW1tYU1ldGF0aGVvcmVtIHtcbiAgY29uc3RydWN0b3IobGFiZWxzLCBtZXRhU3VwcG9zaXRpb25zLCBtZXRhQ29uc2VxdWVudCwgZmlsZUNvbnRleHQpIHtcbiAgICB0aGlzLmxhYmVscyA9IGxhYmVscztcbiAgICB0aGlzLm1ldGFTdXBwb3NpdGlvbnMgPSBtZXRhU3VwcG9zaXRpb25zO1xuICAgIHRoaXMubWV0YUNvbnNlcXVlbnQgPSBtZXRhQ29uc2VxdWVudDtcbiAgICB0aGlzLmZpbGVDb250ZXh0ID0gZmlsZUNvbnRleHQ7XG4gIH1cblxuICBnZXRMYWJlbHMoKSB7XG4gICAgcmV0dXJuIHRoaXMubGFiZWxzO1xuICB9XG5cbiAgZ2V0TWV0YVN1cHBvc2l0aW9ucygpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhU3VwcG9zaXRpb25zO1xuICB9XG5cbiAgZ2V0TWV0YUNvbnNlcXVlbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMubWV0YUNvbnNlcXVlbnQ7XG4gIH1cblxuICBnZXRGaWxlQ29udGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5maWxlQ29udGV4dDtcbiAgfVxuXG4gIG1hdGNoTWV0YXN0YXRlbWVudChtZXRhc3RhdGVtZW50Tm9kZSwgbWV0YXN0YXRlbWVudExvY2FsQ29udGV4dCkge1xuICAgIGxldCBtZXRhc3RhdGVtZW50TmF0Y2hlcztcblxuICAgIGNvbnN0IG1ldGFTdXBwb3NpdGlvbnNMZW5ndGggPSB0aGlzLm1ldGFTdXBwb3NpdGlvbnMubGVuZ3RoO1xuXG4gICAgaWYgKG1ldGFTdXBwb3NpdGlvbnNMZW5ndGggPT09IDApIHtcbiAgICAgIGNvbnN0IHN1YnN0aXR1dGlvbnMgPSBbXSxcbiAgICAgICAgICAgIG1ldGFDb25zZXF1ZW50TWF0Y2hlcyA9IG1hdGNoTWV0YUNvbnNlcXVlbnQodGhpcy5tZXRhQ29uc2VxdWVudCwgbWV0YXN0YXRlbWVudE5vZGUsIHN1YnN0aXR1dGlvbnMsIHRoaXMuZmlsZUNvbnRleHQsIG1ldGFzdGF0ZW1lbnRMb2NhbENvbnRleHQpO1xuXG4gICAgICBtZXRhc3RhdGVtZW50TmF0Y2hlcyA9IG1ldGFDb25zZXF1ZW50TWF0Y2hlczsgLy8vXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IG1ldGFwcm9vZlN0ZXBzID0gbWV0YXN0YXRlbWVudExvY2FsQ29udGV4dC5nZXRQcm9vZlN0ZXBzKCk7XG5cbiAgICAgIG1ldGFzdGF0ZW1lbnROYXRjaGVzID0gc29tZVN1YkFycmF5KG1ldGFwcm9vZlN0ZXBzLCBtZXRhU3VwcG9zaXRpb25zTGVuZ3RoLCAobWV0YXByb29mU3RlcHMpID0+IHtcbiAgICAgICAgbGV0IG1ldGFTdXBwb3NpdGlvbnNNYXRjaE1ldGFDb25zZXF1ZW50ID0gZmFsc2U7XG5cbiAgICAgICAgY29uc3Qgc3Vic3RpdHV0aW9ucyA9IFtdLFxuICAgICAgICAgICAgICBtZXRhU3VwcG9zaXRpb25zTWF0Y2ggPSBtYXRjaE1ldGFTdXBwb3NpdGlvbnModGhpcy5tZXRhU3VwcG9zaXRpb25zLCBtZXRhcHJvb2ZTdGVwcywgc3Vic3RpdHV0aW9ucywgdGhpcy5maWxlQ29udGV4dCwgbWV0YXN0YXRlbWVudExvY2FsQ29udGV4dCk7XG5cbiAgICAgICAgaWYgKG1ldGFTdXBwb3NpdGlvbnNNYXRjaCkge1xuICAgICAgICAgIGNvbnN0IG1ldGFDb25zZXF1ZW50TWF0Y2hlcyA9IG1hdGNoTWV0YUNvbnNlcXVlbnQodGhpcy5tZXRhQ29uc2VxdWVudCwgbWV0YXN0YXRlbWVudE5vZGUsIHN1YnN0aXR1dGlvbnMsIHRoaXMuZmlsZUNvbnRleHQsIG1ldGFzdGF0ZW1lbnRMb2NhbENvbnRleHQpO1xuXG4gICAgICAgICAgbWV0YVN1cHBvc2l0aW9uc01hdGNoTWV0YUNvbnNlcXVlbnQgPSBtZXRhQ29uc2VxdWVudE1hdGNoZXM7ICAvLy9cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChtZXRhU3VwcG9zaXRpb25zTWF0Y2hNZXRhQ29uc2VxdWVudCkge1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gbWV0YXN0YXRlbWVudE5hdGNoZXM7XG4gIH1cblxuICBtYXRjaExhYmVsTWV0YXZhcmlhYmxlTm9kZShsYWJlbE1ldGF2YXJpYWJsZU5vZGUpIHtcbiAgICBjb25zdCBsYWJlbE1ldGF2YXJpYWJsZU5vZGVNYXRjaGVzID0gdGhpcy5sYWJlbHMuc29tZSgobGFiZWwpID0+IHtcbiAgICAgIGNvbnN0IG5vZGUgPSBsYWJlbE1ldGF2YXJpYWJsZU5vZGUsIC8vL1xuICAgICAgICAgICAgbGFiZWxNYXRjaGVzTm9kZSA9IGxhYmVsLm1hdGNoTm9kZShub2RlKTtcblxuICAgICAgaWYgKGxhYmVsTWF0Y2hlc05vZGUpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gbGFiZWxNZXRhdmFyaWFibGVOb2RlTWF0Y2hlcztcbiAgfVxuXG4gIHRvSlNPTih0b2tlbnMpIHtcbiAgICBjb25zdCBsYWJlbHNKU09OID0gdGhpcy5sYWJlbHMubWFwKChsYWJlbCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbGFiZWxKU09OID0gbGFiZWwudG9KU09OKHRva2Vucyk7XG5cbiAgICAgICAgICAgIHJldHVybiBsYWJlbEpTT047XG4gICAgICAgICAgfSksXG4gICAgICAgICAgbWV0YVN1cHBvc2l0aW9uc0pTT04gPSB0aGlzLm1ldGFTdXBwb3NpdGlvbnMubWFwKChtZXRhU3VwcG9zaXRpb24pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG1ldGFTdXBwb3NpdGlvbkpTT04gPSBtZXRhU3VwcG9zaXRpb24udG9KU09OKHRva2Vucyk7XG5cbiAgICAgICAgICAgIHJldHVybiBtZXRhU3VwcG9zaXRpb25KU09OO1xuICAgICAgICAgIH0pLFxuICAgICAgICAgIG1ldGFDb25zZXF1ZW50SlNPTiA9IHRoaXMubWV0YUNvbnNlcXVlbnQudG9KU09OKHRva2VucyksXG4gICAgICAgICAgbG9jYWxDb250ZXh0SlNPTiA9IHRoaXMuZmlsZUNvbnRleHQudG9KU09OKHRva2VucyksXG4gICAgICAgICAgbGFiZWxzID0gbGFiZWxzSlNPTiwgIC8vL1xuICAgICAgICAgIG1ldGFTdXBwb3NpdGlvbnMgPSBtZXRhU3VwcG9zaXRpb25zSlNPTiwgIC8vL1xuICAgICAgICAgIG1ldGFDb25zZXF1ZW50ID0gbWV0YUNvbnNlcXVlbnRKU09OLCAgLy8vXG4gICAgICAgICAgZmlsZUNvbnRleHQgPSBsb2NhbENvbnRleHRKU09OLCAgLy8vXG4gICAgICAgICAganNvbiA9IHtcbiAgICAgICAgICAgIGxhYmVscyxcbiAgICAgICAgICAgIG1ldGFTdXBwb3NpdGlvbnMsXG4gICAgICAgICAgICBtZXRhQ29uc2VxdWVudCxcbiAgICAgICAgICAgIGZpbGVDb250ZXh0XG4gICAgICAgICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgc3RhdGljIGZyb21KU09OQW5kRmlsZUNvbnRleHQoQ2xhc3MsIGpzb24sIGZpbGVDb250ZXh0KSB7XG4gICAgbGV0IHsgbGFiZWxzIH0gPSBqc29uO1xuXG4gICAgY29uc3QgbGFiZWxzSlNPTiA9IGxhYmVsczsgIC8vL1xuXG4gICAgbGFiZWxzID0gbGFiZWxzSlNPTi5tYXAoKGxhYmVsSlNPTikgPT4ge1xuICAgICAgY29uc3QganNvbiA9IGxhYmVsSlNPTiwgLy8vXG4gICAgICAgICAgICBsYWJlbCA9IExhYmVsLmZyb21KU09OQW5kRmlsZUNvbnRleHQoanNvbiwgZmlsZUNvbnRleHQpO1xuXG4gICAgICByZXR1cm4gbGFiZWw7XG4gICAgfSk7XG5cbiAgICBsZXQgeyBtZXRhU3VwcG9zaXRpb25zLCBtZXRhQ29uc2VxdWVudCB9ID0ganNvbjtcblxuICAgIGNvbnN0IG1ldGFTdXBwb3NpdGlvbnNKU09OID0gbWV0YVN1cHBvc2l0aW9uczsgIC8vL1xuXG4gICAgbWV0YVN1cHBvc2l0aW9ucyA9IG1ldGFTdXBwb3NpdGlvbnNKU09OLm1hcCgobWV0YVN1cHBvc2l0aW9uSlNPTikgPT4ge1xuICAgICAgY29uc3QganNvbiA9IG1ldGFTdXBwb3NpdGlvbkpTT04sIC8vL1xuICAgICAgICAgICAgbWV0YVN1cHBvc2l0aW9uID0gTWV0YVN1cHBvc2l0aW9uLmZyb21KU09OQW5kRmlsZUNvbnRleHQoanNvbiwgZmlsZUNvbnRleHQpO1xuXG4gICAgICByZXR1cm4gbWV0YVN1cHBvc2l0aW9uO1xuICAgIH0pO1xuXG4gICAgY29uc3QgbWV0YUNvbnNlcXVlbnRKU09OID0gbWV0YUNvbnNlcXVlbnQ7ICAvLy9cblxuICAgIGpzb24gPSBtZXRhQ29uc2VxdWVudEpTT047ICAvLy9cblxuICAgIG1ldGFDb25zZXF1ZW50ID0gTWV0YUNvbnNlcXVlbnQuZnJvbUpTT05BbmRGaWxlQ29udGV4dChqc29uLCBmaWxlQ29udGV4dCk7XG5cbiAgICByZXR1cm4gbmV3IENsYXNzKGxhYmVscywgbWV0YVN1cHBvc2l0aW9ucywgbWV0YUNvbnNlcXVlbnQsIGZpbGVDb250ZXh0KTsgIC8vL1xuICB9XG5cbiAgc3RhdGljIGZyb21MYWJlbHNNZXRhU3VwcG9zaXRpb25zTWV0YUNvbnNlcXVlbnRBbmRGaWxlQ29udGV4dChDbGFzcywgbGFiZWxzLCBtZXRhU3VwcG9zaXRpb25zLCBtZXRhQ29uc2VxdWVudCwgZmlsZUNvbnRleHQpIHsgcmV0dXJuIG5ldyBDbGFzcyhsYWJlbHMsIG1ldGFTdXBwb3NpdGlvbnMsIG1ldGFDb25zZXF1ZW50LCBmaWxlQ29udGV4dCk7IH1cbn1cblxuZnVuY3Rpb24gbWF0Y2hNZXRhU3VwcG9zaXRpb24obWV0YVN1cHBvc2l0aW9uLCBtZXRhcHJvb2ZTdGVwcywgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHQsIG1ldGFzdGF0ZW1lbnRMb2NhbENvbnRleHQpIHtcbiAgY29uc3QgbWV0YXByb29mU3RlcCA9IHBydW5lKG1ldGFwcm9vZlN0ZXBzLCAobWV0YXByb29mU3RlcCkgPT4ge1xuICAgIGNvbnN0IG1ldGFTdWJwcm9vZk5vZGUgPSBtZXRhcHJvb2ZTdGVwLmdldE1ldGFTdWJwcm9vZk5vZGUoKSxcbiAgICAgICAgICBtZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFwcm9vZlN0ZXAuZ2V0TWV0YXN0YXRlbWVudE5vZGUoKTtcblxuICAgIGlmIChtZXRhU3VicHJvb2ZOb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXRhU3ViUHJvb2ZNYXRjaGVzID0gbWV0YVN1cHBvc2l0aW9uLm1hdGNoTWV0YVN1YnByb29mTm9kZShtZXRhU3VicHJvb2ZOb2RlLCBzdWJzdGl0dXRpb25zLCBmaWxlQ29udGV4dCwgbWV0YXN0YXRlbWVudExvY2FsQ29udGV4dCk7XG5cbiAgICAgIGlmICghbWV0YVN1YlByb29mTWF0Y2hlcykgeyAgLy8vXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChtZXRhc3RhdGVtZW50Tm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgbWV0YXN0YXRlbWVudE1hdGNoZXMgPSBtZXRhU3VwcG9zaXRpb24ubWF0Y2hNZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZSwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHQsIG1ldGFzdGF0ZW1lbnRMb2NhbENvbnRleHQpO1xuXG4gICAgICBpZiAoIW1ldGFzdGF0ZW1lbnRNYXRjaGVzKSB7ICAvLy9cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9KSB8fCBudWxsO1xuXG4gIGNvbnN0IG1ldGFTdXBwb3NpdGlvbk1hdGNoZXMgPSAobWV0YXByb29mU3RlcCAhPT0gbnVsbCk7XG5cbiAgcmV0dXJuIG1ldGFTdXBwb3NpdGlvbk1hdGNoZXM7XG59XG5cbmZ1bmN0aW9uIG1hdGNoTWV0YVN1cHBvc2l0aW9ucyhtZXRhU3VwcG9zaXRpb25zLCBtZXRhcHJvb2ZTdGVwcywgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHQsIG1ldGFzdGF0ZW1lbnRMb2NhbENvbnRleHQpIHtcbiAgY29uc3QgbWV0YVN1cHBvc2l0aW9uc01hdGNoID0gbWV0YVN1cHBvc2l0aW9ucy5ldmVyeSgobWV0YVN1cHBvc2l0aW9uKSA9PiB7XG4gICAgY29uc3QgbWV0YVN1cHBvc2l0aW9uTWF0Y2hlcyA9IG1hdGNoTWV0YVN1cHBvc2l0aW9uKG1ldGFTdXBwb3NpdGlvbiwgbWV0YXByb29mU3RlcHMsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0LCBtZXRhc3RhdGVtZW50TG9jYWxDb250ZXh0KTtcblxuICAgIGlmIChtZXRhU3VwcG9zaXRpb25NYXRjaGVzKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiBtZXRhU3VwcG9zaXRpb25zTWF0Y2g7XG59XG5cbmZ1bmN0aW9uIG1hdGNoTWV0YUNvbnNlcXVlbnQobWV0YUNvbnNlcXVlbnQsIG1ldGFzdGF0ZW1lbnROb2RlLCBzdWJzdGl0dXRpb25zLCBmaWxlQ29udGV4dCwgbWV0YXN0YXRlbWVudExvY2FsQ29udGV4dCkge1xuICBjb25zdCBub25UZXJtaW5hbE5vZGVNYXRjaGVzID0gbWV0YUNvbnNlcXVlbnQubWF0Y2hNZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZSwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHQsIG1ldGFzdGF0ZW1lbnRMb2NhbENvbnRleHQpLFxuICAgICAgICBtZXRhQ29uc2VxdWVudE1hdGNoZXMgPSBub25UZXJtaW5hbE5vZGVNYXRjaGVzOyAvLy9cblxuICByZXR1cm4gbWV0YUNvbnNlcXVlbnRNYXRjaGVzO1xufVxuIl0sIm5hbWVzIjpbIk1ldGFMZW1tYU1ldGF0aGVvcmVtIiwibGFiZWxzIiwibWV0YVN1cHBvc2l0aW9ucyIsIm1ldGFDb25zZXF1ZW50IiwiZmlsZUNvbnRleHQiLCJnZXRMYWJlbHMiLCJnZXRNZXRhU3VwcG9zaXRpb25zIiwiZ2V0TWV0YUNvbnNlcXVlbnQiLCJnZXRGaWxlQ29udGV4dCIsIm1hdGNoTWV0YXN0YXRlbWVudCIsIm1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXN0YXRlbWVudExvY2FsQ29udGV4dCIsIm1ldGFzdGF0ZW1lbnROYXRjaGVzIiwibWV0YVN1cHBvc2l0aW9uc0xlbmd0aCIsImxlbmd0aCIsInN1YnN0aXR1dGlvbnMiLCJtZXRhQ29uc2VxdWVudE1hdGNoZXMiLCJtYXRjaE1ldGFDb25zZXF1ZW50IiwibWV0YXByb29mU3RlcHMiLCJnZXRQcm9vZlN0ZXBzIiwic29tZVN1YkFycmF5IiwibWV0YVN1cHBvc2l0aW9uc01hdGNoTWV0YUNvbnNlcXVlbnQiLCJtZXRhU3VwcG9zaXRpb25zTWF0Y2giLCJtYXRjaE1ldGFTdXBwb3NpdGlvbnMiLCJtYXRjaExhYmVsTWV0YXZhcmlhYmxlTm9kZSIsImxhYmVsTWV0YXZhcmlhYmxlTm9kZSIsImxhYmVsTWV0YXZhcmlhYmxlTm9kZU1hdGNoZXMiLCJzb21lIiwibGFiZWwiLCJub2RlIiwibGFiZWxNYXRjaGVzTm9kZSIsIm1hdGNoTm9kZSIsInRvSlNPTiIsInRva2VucyIsImxhYmVsc0pTT04iLCJtYXAiLCJsYWJlbEpTT04iLCJtZXRhU3VwcG9zaXRpb25zSlNPTiIsIm1ldGFTdXBwb3NpdGlvbiIsIm1ldGFTdXBwb3NpdGlvbkpTT04iLCJtZXRhQ29uc2VxdWVudEpTT04iLCJsb2NhbENvbnRleHRKU09OIiwianNvbiIsImZyb21KU09OQW5kRmlsZUNvbnRleHQiLCJDbGFzcyIsIkxhYmVsIiwiTWV0YVN1cHBvc2l0aW9uIiwiTWV0YUNvbnNlcXVlbnQiLCJmcm9tTGFiZWxzTWV0YVN1cHBvc2l0aW9uc01ldGFDb25zZXF1ZW50QW5kRmlsZUNvbnRleHQiLCJtYXRjaE1ldGFTdXBwb3NpdGlvbiIsIm1ldGFwcm9vZlN0ZXAiLCJwcnVuZSIsIm1ldGFTdWJwcm9vZk5vZGUiLCJnZXRNZXRhU3VicHJvb2ZOb2RlIiwiZ2V0TWV0YXN0YXRlbWVudE5vZGUiLCJtZXRhU3ViUHJvb2ZNYXRjaGVzIiwibWF0Y2hNZXRhU3VicHJvb2ZOb2RlIiwibWV0YXN0YXRlbWVudE1hdGNoZXMiLCJtYXRjaE1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YVN1cHBvc2l0aW9uTWF0Y2hlcyIsImV2ZXJ5Iiwibm9uVGVybWluYWxOb2RlTWF0Y2hlcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFVcUJBOzs7NERBUkg7cUVBQ1M7c0VBQ0M7Z0VBQ0M7cUJBRVA7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHUCxJQUFBLEFBQU1BLHFDQUFELEFBQUw7YUFBTUEscUJBQ1BDLE1BQU0sRUFBRUMsZ0JBQWdCLEVBQUVDLGNBQWMsRUFBRUMsV0FBVztnQ0FEOUNKO1FBRWpCLElBQUksQ0FBQ0MsTUFBTSxHQUFHQTtRQUNkLElBQUksQ0FBQ0MsZ0JBQWdCLEdBQUdBO1FBQ3hCLElBQUksQ0FBQ0MsY0FBYyxHQUFHQTtRQUN0QixJQUFJLENBQUNDLFdBQVcsR0FBR0E7O2tCQUxGSjs7WUFRbkJLLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0osTUFBTTtZQUNwQjs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0osZ0JBQWdCO1lBQzlCOzs7WUFFQUssS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8s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
209
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXRhTGVtbWFNZXRhdGhlb3JlbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IExhYmVsIGZyb20gXCIuL2xhYmVsXCI7XG5pbXBvcnQgTWV0YUNvbnNlcXVlbnQgZnJvbSBcIi4vbWV0YUNvbnNlcXVlbnRcIjtcbmltcG9ydCBNZXRhU3VwcG9zaXRpb24gZnJvbSBcIi4vbWV0YVN1cHBvc2l0aW9uXCI7XG5cbmltcG9ydCB7IHBydW5lIH0gZnJvbSBcIi4vdXRpbGl0aWVzL2FycmF5XCI7XG5pbXBvcnQgeyBzb21lU3ViQXJyYXkgfSBmcm9tIFwiLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCBNZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uIGZyb20gXCIuL3N1YnN0aXR1dGlvbi9tZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE1ldGFMZW1tYU1ldGF0aGVvcmVtIHtcbiAgY29uc3RydWN0b3IobGFiZWxzLCBtZXRhU3VwcG9zaXRpb25zLCBtZXRhQ29uc2VxdWVudCwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHQpIHtcbiAgICB0aGlzLmxhYmVscyA9IGxhYmVscztcbiAgICB0aGlzLm1ldGFTdXBwb3NpdGlvbnMgPSBtZXRhU3VwcG9zaXRpb25zO1xuICAgIHRoaXMubWV0YUNvbnNlcXVlbnQgPSBtZXRhQ29uc2VxdWVudDtcbiAgICB0aGlzLnN1YnN0aXR1dGlvbnMgPSBzdWJzdGl0dXRpb25zO1xuICAgIHRoaXMuZmlsZUNvbnRleHQgPSBmaWxlQ29udGV4dDtcbiAgfVxuXG4gIGdldExhYmVscygpIHtcbiAgICByZXR1cm4gdGhpcy5sYWJlbHM7XG4gIH1cblxuICBnZXRNZXRhU3VwcG9zaXRpb25zKCkge1xuICAgIHJldHVybiB0aGlzLm1ldGFTdXBwb3NpdGlvbnM7XG4gIH1cblxuICBnZXRNZXRhQ29uc2VxdWVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhQ29uc2VxdWVudDtcbiAgfVxuXG4gIGdldFN1YnN0aXR1dGlvbnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3Vic3RpdHV0aW9ucztcbiAgfVxuXG4gIGdldEZpbGVDb250ZXh0KCkge1xuICAgIHJldHVybiB0aGlzLmZpbGVDb250ZXh0O1xuICB9XG5cbiAgbWF0Y2hNZXRhc3RhdGVtZW50KG1ldGFzdGF0ZW1lbnROb2RlLCBtZXRhc3RhdGVtZW50TG9jYWxDb250ZXh0KSB7XG4gICAgbGV0IG1ldGFzdGF0ZW1lbnROYXRjaGVzO1xuXG4gICAgY29uc3QgbWV0YVN1cHBvc2l0aW9uc0xlbmd0aCA9IHRoaXMubWV0YVN1cHBvc2l0aW9ucy5sZW5ndGg7XG5cbiAgICBpZiAobWV0YVN1cHBvc2l0aW9uc0xlbmd0aCA9PT0gMCkge1xuICAgICAgY29uc3Qgc3Vic3RpdHV0aW9ucyA9IFtdLFxuICAgICAgICAgICAgbWV0YUNvbnNlcXVlbnRNYXRjaGVzID0gbWF0Y2hNZXRhQ29uc2VxdWVudCh0aGlzLm1ldGFDb25zZXF1ZW50LCBtZXRhc3RhdGVtZW50Tm9kZSwgc3Vic3RpdHV0aW9ucywgdGhpcy5maWxlQ29udGV4dCwgbWV0YXN0YXRlbWVudExvY2FsQ29udGV4dCk7XG5cbiAgICAgIG1ldGFzdGF0ZW1lbnROYXRjaGVzID0gbWV0YUNvbnNlcXVlbnRNYXRjaGVzOyAvLy9cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgbWV0YXByb29mU3RlcHMgPSBtZXRhc3RhdGVtZW50TG9jYWxDb250ZXh0LmdldFByb29mU3RlcHMoKTtcblxuICAgICAgbWV0YXN0YXRlbWVudE5hdGNoZXMgPSBzb21lU3ViQXJyYXkobWV0YXByb29mU3RlcHMsIG1ldGFTdXBwb3NpdGlvbnNMZW5ndGgsIChtZXRhcHJvb2ZTdGVwcykgPT4ge1xuICAgICAgICBsZXQgbWV0YVN1cHBvc2l0aW9uc01hdGNoTWV0YUNvbnNlcXVlbnQgPSBmYWxzZTtcblxuICAgICAgICBjb25zdCBzdWJzdGl0dXRpb25zID0gW10sXG4gICAgICAgICAgICAgIG1ldGFTdXBwb3NpdGlvbnNNYXRjaCA9IG1hdGNoTWV0YVN1cHBvc2l0aW9ucyh0aGlzLm1ldGFTdXBwb3NpdGlvbnMsIG1ldGFwcm9vZlN0ZXBzLCBzdWJzdGl0dXRpb25zLCB0aGlzLmZpbGVDb250ZXh0LCBtZXRhc3RhdGVtZW50TG9jYWxDb250ZXh0KTtcblxuICAgICAgICBpZiAobWV0YVN1cHBvc2l0aW9uc01hdGNoKSB7XG4gICAgICAgICAgY29uc3QgbWV0YUNvbnNlcXVlbnRNYXRjaGVzID0gbWF0Y2hNZXRhQ29uc2VxdWVudCh0aGlzLm1ldGFDb25zZXF1ZW50LCBtZXRhc3RhdGVtZW50Tm9kZSwgc3Vic3RpdHV0aW9ucywgdGhpcy5maWxlQ29udGV4dCwgbWV0YXN0YXRlbWVudExvY2FsQ29udGV4dCk7XG5cbiAgICAgICAgICBtZXRhU3VwcG9zaXRpb25zTWF0Y2hNZXRhQ29uc2VxdWVudCA9IG1ldGFDb25zZXF1ZW50TWF0Y2hlczsgIC8vL1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG1ldGFTdXBwb3NpdGlvbnNNYXRjaE1ldGFDb25zZXF1ZW50KSB7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBtZXRhc3RhdGVtZW50TmF0Y2hlcztcbiAgfVxuXG4gIG1hdGNoTGFiZWxNZXRhdmFyaWFibGVOb2RlKGxhYmVsTWV0YXZhcmlhYmxlTm9kZSkge1xuICAgIGNvbnN0IGxhYmVsTWV0YXZhcmlhYmxlTm9kZU1hdGNoZXMgPSB0aGlzLmxhYmVscy5zb21lKChsYWJlbCkgPT4ge1xuICAgICAgY29uc3Qgbm9kZSA9IGxhYmVsTWV0YXZhcmlhYmxlTm9kZSwgLy8vXG4gICAgICAgICAgICBsYWJlbE1hdGNoZXNOb2RlID0gbGFiZWwubWF0Y2hOb2RlKG5vZGUpO1xuXG4gICAgICBpZiAobGFiZWxNYXRjaGVzTm9kZSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiBsYWJlbE1ldGF2YXJpYWJsZU5vZGVNYXRjaGVzO1xuICB9XG5cbiAgdG9KU09OKHRva2Vucykge1xuICAgIGNvbnN0IGxhYmVsc0pTT04gPSB0aGlzLmxhYmVscy5tYXAoKGxhYmVsKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBsYWJlbEpTT04gPSBsYWJlbC50b0pTT04odG9rZW5zKTtcblxuICAgICAgICAgICAgcmV0dXJuIGxhYmVsSlNPTjtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBtZXRhU3VwcG9zaXRpb25zSlNPTiA9IHRoaXMubWV0YVN1cHBvc2l0aW9ucy5tYXAoKG1ldGFTdXBwb3NpdGlvbikgPT4ge1xuICAgICAgICAgICAgY29uc3QgbWV0YVN1cHBvc2l0aW9uSlNPTiA9IG1ldGFTdXBwb3NpdGlvbi50b0pTT04odG9rZW5zKTtcblxuICAgICAgICAgICAgcmV0dXJuIG1ldGFTdXBwb3NpdGlvbkpTT047XG4gICAgICAgICAgfSksXG4gICAgICAgICAgbWV0YUNvbnNlcXVlbnRKU09OID0gdGhpcy5tZXRhQ29uc2VxdWVudC50b0pTT04odG9rZW5zKSxcbiAgICAgICAgICBzdWJzdGl0dXRpb25zSlNPTiA9IHRoaXMuc3Vic3RpdHV0aW9ucy5tYXAoKHN1YnN0aXR1dGlvbikgPT4ge1xuICAgICAgICAgICAgY29uc3Qgc3Vic3RpdHV0aW9uSlNPTiA9IHN1YnN0aXR1dGlvbi50b0pTT04oKTtcblxuICAgICAgICAgICAgcmV0dXJuIHN1YnN0aXR1dGlvbkpTT047XG4gICAgICAgICAgfSksXG4gICAgICAgICAgbG9jYWxDb250ZXh0SlNPTiA9IHRoaXMuZmlsZUNvbnRleHQudG9KU09OKHRva2VucyksXG4gICAgICAgICAgbGFiZWxzID0gbGFiZWxzSlNPTiwgIC8vL1xuICAgICAgICAgIG1ldGFTdXBwb3NpdGlvbnMgPSBtZXRhU3VwcG9zaXRpb25zSlNPTiwgIC8vL1xuICAgICAgICAgIG1ldGFDb25zZXF1ZW50ID0gbWV0YUNvbnNlcXVlbnRKU09OLCAgLy8vXG4gICAgICAgICAgc3Vic3RpdHV0aW9ucyA9IHN1YnN0aXR1dGlvbnNKU09OLCAgLy8vXG4gICAgICAgICAgZmlsZUNvbnRleHQgPSBsb2NhbENvbnRleHRKU09OLCAgLy8vXG4gICAgICAgICAganNvbiA9IHtcbiAgICAgICAgICAgIGxhYmVscyxcbiAgICAgICAgICAgIG1ldGFTdXBwb3NpdGlvbnMsXG4gICAgICAgICAgICBtZXRhQ29uc2VxdWVudCxcbiAgICAgICAgICAgIHN1YnN0aXR1dGlvbnMsXG4gICAgICAgICAgICBmaWxlQ29udGV4dFxuICAgICAgICAgIH07XG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSlNPTkFuZEZpbGVDb250ZXh0KENsYXNzLCBqc29uLCBmaWxlQ29udGV4dCkge1xuICAgIGxldCB7IGxhYmVscyB9ID0ganNvbjtcblxuICAgIGNvbnN0IGxhYmVsc0pTT04gPSBsYWJlbHM7ICAvLy9cblxuICAgIGxhYmVscyA9IGxhYmVsc0pTT04ubWFwKChsYWJlbEpTT04pID0+IHtcbiAgICAgIGNvbnN0IGpzb24gPSBsYWJlbEpTT04sIC8vL1xuICAgICAgICAgICAgbGFiZWwgPSBMYWJlbC5mcm9tSlNPTkFuZEZpbGVDb250ZXh0KGpzb24sIGZpbGVDb250ZXh0KTtcblxuICAgICAgcmV0dXJuIGxhYmVsO1xuICAgIH0pO1xuXG4gICAgbGV0IHsgbWV0YVN1cHBvc2l0aW9ucywgbWV0YUNvbnNlcXVlbnQsIHN1YnN0aXR1dGlvbnMgfSA9IGpzb247XG5cbiAgICBjb25zdCBtZXRhU3VwcG9zaXRpb25zSlNPTiA9IG1ldGFTdXBwb3NpdGlvbnM7ICAvLy9cblxuICAgIG1ldGFTdXBwb3NpdGlvbnMgPSBtZXRhU3VwcG9zaXRpb25zSlNPTi5tYXAoKG1ldGFTdXBwb3NpdGlvbkpTT04pID0+IHtcbiAgICAgIGNvbnN0IGpzb24gPSBtZXRhU3VwcG9zaXRpb25KU09OLCAvLy9cbiAgICAgICAgICAgIG1ldGFTdXBwb3NpdGlvbiA9IE1ldGFTdXBwb3NpdGlvbi5mcm9tSlNPTkFuZEZpbGVDb250ZXh0KGpzb24sIGZpbGVDb250ZXh0KTtcblxuICAgICAgcmV0dXJuIG1ldGFTdXBwb3NpdGlvbjtcbiAgICB9KTtcblxuICAgIGNvbnN0IG1ldGFDb25zZXF1ZW50SlNPTiA9IG1ldGFDb25zZXF1ZW50OyAgLy8vXG5cbiAgICBqc29uID0gbWV0YUNvbnNlcXVlbnRKU09OOyAgLy8vXG5cbiAgICBtZXRhQ29uc2VxdWVudCA9IE1ldGFDb25zZXF1ZW50LmZyb21KU09OQW5kRmlsZUNvbnRleHQoanNvbiwgZmlsZUNvbnRleHQpO1xuXG4gICAgY29uc3Qgc3Vic3RpdHV0aW9uc0pTT04gPSBzdWJzdGl0dXRpb25zOyAgLy8vXG5cbiAgICBzdWJzdGl0dXRpb25zID0gc3Vic3RpdHV0aW9uc0pTT04ubWFwKChzdWJzdGl0dXRpb25KU09OKSA9PiB7XG4gICAgICBjb25zdCBqc29uID0gc3Vic3RpdHV0aW9uSlNPTiwgIC8vL1xuICAgICAgICAgICAgbWV0YXN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiA9IE1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24uZnJvbUpTT05BbmRGaWxlQ29udGV4dChqc29uLCBmaWxlQ29udGV4dCksXG4gICAgICAgICAgICBzdWJzdGl0dXRpb24gPSBtZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uOyAgLy8vXG5cbiAgICAgIHJldHVybiBzdWJzdGl0dXRpb247XG4gICAgfSk7XG5cbiAgICByZXR1cm4gbmV3IENsYXNzKGxhYmVscywgbWV0YVN1cHBvc2l0aW9ucywgbWV0YUNvbnNlcXVlbnQsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0KTsgIC8vL1xuICB9XG5cbiAgc3RhdGljIGZyb21MYWJlbHNNZXRhU3VwcG9zaXRpb25zTWV0YUNvbnNlcXVlbnRTdWJzdGl0dXRpb25zQW5kRmlsZUNvbnRleHQoQ2xhc3MsIGxhYmVscywgbWV0YVN1cHBvc2l0aW9ucywgbWV0YUNvbnNlcXVlbnQsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0KSB7IHJldHVybiBuZXcgQ2xhc3MobGFiZWxzLCBtZXRhU3VwcG9zaXRpb25zLCBtZXRhQ29uc2VxdWVudCwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHQpOyB9XG59XG5cbmZ1bmN0aW9uIG1hdGNoTWV0YVN1cHBvc2l0aW9uKG1ldGFTdXBwb3NpdGlvbiwgbWV0YXByb29mU3RlcHMsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0LCBtZXRhc3RhdGVtZW50TG9jYWxDb250ZXh0KSB7XG4gIGNvbnN0IG1ldGFwcm9vZlN0ZXAgPSBwcnVuZShtZXRhcHJvb2ZTdGVwcywgKG1ldGFwcm9vZlN0ZXApID0+IHtcbiAgICBjb25zdCBtZXRhU3VicHJvb2ZOb2RlID0gbWV0YXByb29mU3RlcC5nZXRNZXRhU3VicHJvb2ZOb2RlKCksXG4gICAgICAgICAgbWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhcHJvb2ZTdGVwLmdldE1ldGFzdGF0ZW1lbnROb2RlKCk7XG5cbiAgICBpZiAobWV0YVN1YnByb29mTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgbWV0YVN1YlByb29mTWF0Y2hlcyA9IG1ldGFTdXBwb3NpdGlvbi5tYXRjaE1ldGFTdWJwcm9vZk5vZGUobWV0YVN1YnByb29mTm9kZSwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHQsIG1ldGFzdGF0ZW1lbnRMb2NhbENvbnRleHQpO1xuXG4gICAgICBpZiAoIW1ldGFTdWJQcm9vZk1hdGNoZXMpIHsgIC8vL1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAobWV0YXN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnRNYXRjaGVzID0gbWV0YVN1cHBvc2l0aW9uLm1hdGNoTWV0YXN0YXRlbWVudE5vZGUobWV0YXN0YXRlbWVudE5vZGUsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0LCBtZXRhc3RhdGVtZW50TG9jYWxDb250ZXh0KTtcblxuICAgICAgaWYgKCFtZXRhc3RhdGVtZW50TWF0Y2hlcykgeyAgLy8vXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgfSkgfHwgbnVsbDtcblxuICBjb25zdCBtZXRhU3VwcG9zaXRpb25NYXRjaGVzID0gKG1ldGFwcm9vZlN0ZXAgIT09IG51bGwpO1xuXG4gIHJldHVybiBtZXRhU3VwcG9zaXRpb25NYXRjaGVzO1xufVxuXG5mdW5jdGlvbiBtYXRjaE1ldGFTdXBwb3NpdGlvbnMobWV0YVN1cHBvc2l0aW9ucywgbWV0YXByb29mU3RlcHMsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0LCBtZXRhc3RhdGVtZW50TG9jYWxDb250ZXh0KSB7XG4gIGNvbnN0IG1ldGFTdXBwb3NpdGlvbnNNYXRjaCA9IG1ldGFTdXBwb3NpdGlvbnMuZXZlcnkoKG1ldGFTdXBwb3NpdGlvbikgPT4ge1xuICAgIGNvbnN0IG1ldGFTdXBwb3NpdGlvbk1hdGNoZXMgPSBtYXRjaE1ldGFTdXBwb3NpdGlvbihtZXRhU3VwcG9zaXRpb24sIG1ldGFwcm9vZlN0ZXBzLCBzdWJzdGl0dXRpb25zLCBmaWxlQ29udGV4dCwgbWV0YXN0YXRlbWVudExvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAobWV0YVN1cHBvc2l0aW9uTWF0Y2hlcykge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gbWV0YVN1cHBvc2l0aW9uc01hdGNoO1xufVxuXG5mdW5jdGlvbiBtYXRjaE1ldGFDb25zZXF1ZW50KG1ldGFDb25zZXF1ZW50LCBtZXRhc3RhdGVtZW50Tm9kZSwgc3Vic3RpdHV0aW9ucywgZmlsZUNvbnRleHQsIG1ldGFzdGF0ZW1lbnRMb2NhbENvbnRleHQpIHtcbiAgY29uc3Qgbm9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IG1ldGFDb25zZXF1ZW50Lm1hdGNoTWV0YXN0YXRlbWVudE5vZGUobWV0YXN0YXRlbWVudE5vZGUsIHN1YnN0aXR1dGlvbnMsIGZpbGVDb250ZXh0LCBtZXRhc3RhdGVtZW50TG9jYWxDb250ZXh0KSxcbiAgICAgICAgbWV0YUNvbnNlcXVlbnRNYXRjaGVzID0gbm9uVGVybWluYWxOb2RlTWF0Y2hlczsgLy8vXG5cbiAgcmV0dXJuIG1ldGFDb25zZXF1ZW50TWF0Y2hlcztcbn1cbiJdLCJuYW1lcyI6WyJNZXRhTGVtbWFNZXRhdGhlb3JlbSIsImxhYmVscyIsIm1ldGFTdXBwb3NpdGlvbnMiLCJtZXRhQ29uc2VxdWVudCIsInN1YnN0aXR1dGlvbnMiLCJmaWxlQ29udGV4dCIsImdldExhYmVscyIsImdldE1ldGFTdXBwb3NpdGlvbnMiLCJnZXRNZXRhQ29uc2VxdWVudCIsImdldFN1YnN0aXR1dGlvbnMiLCJnZXRGaWxlQ29udGV4dCIsIm1hdGNoTWV0YXN0YXRlbWVudCIsIm1ldGFzdGF0ZW1lbnROb2RlIiwibWV0YXN0YXRlbWVudExvY2FsQ29udGV4dCIsIm1ldGFzdGF0ZW1lbnROYXRjaGVzIiwibWV0YVN1cHBvc2l0aW9uc0xlbmd0aCIsImxlbmd0aCIsIm1ldGFDb25zZXF1ZW50TWF0Y2hlcyIsIm1hdGNoTWV0YUNvbnNlcXVlbnQiLCJtZXRhcHJvb2ZTdGVwcyIsImdldFByb29mU3RlcHMiLCJzb21lU3ViQXJyYXkiLCJtZXRhU3VwcG9zaXRpb25zTWF0Y2hNZXRhQ29uc2VxdWVudCIsIm1ldGFTdXBwb3NpdGlvbnNNYXRjaCIsIm1hdGNoTWV0YVN1cHBvc2l0aW9ucyIsIm1hdGNoTGFiZWxNZXRhdmFyaWFibGVOb2RlIiwibGFiZWxNZXRhdmFyaWFibGVOb2RlIiwibGFiZWxNZXRhdmFyaWFibGVOb2RlTWF0Y2hlcyIsInNvbWUiLCJsYWJlbCIsIm5vZGUiLCJsYWJlbE1hdGNoZXNOb2RlIiwibWF0Y2hOb2RlIiwidG9KU09OIiwidG9rZW5zIiwibGFiZWxzSlNPTiIsIm1hcCIsImxhYmVsSlNPTiIsIm1ldGFTdXBwb3NpdGlvbnNKU09OIiwibWV0YVN1cHBvc2l0aW9uIiwibWV0YVN1cHBvc2l0aW9uSlNPTiIsIm1ldGFDb25zZXF1ZW50SlNPTiIsInN1YnN0aXR1dGlvbnNKU09OIiwic3Vic3RpdHV0aW9uIiwic3Vic3RpdHV0aW9uSlNPTiIsImxvY2FsQ29udGV4dEpTT04iLCJqc29uIiwiZnJvbUpTT05BbmRGaWxlQ29udGV4dCIsIkNsYXNzIiwiTGFiZWwiLCJNZXRhU3VwcG9zaXRpb24iLCJNZXRhQ29uc2VxdWVudCIsIm1ldGFzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24iLCJNZXRhc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uIiwiZnJvbUxhYmVsc01ldGFTdXBwb3NpdGlvbnNNZXRhQ29uc2VxdWVudFN1YnN0aXR1dGlvbnNBbmRGaWxlQ29udGV4dCIsIm1hdGNoTWV0YVN1cHBvc2l0aW9uIiwibWV0YXByb29mU3RlcCIsInBydW5lIiwibWV0YVN1YnByb29mTm9kZSIsImdldE1ldGFTdWJwcm9vZk5vZGUiLCJnZXRNZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGFTdWJQcm9vZk1hdGNoZXMiLCJtYXRjaE1ldGFTdWJwcm9vZk5vZGUiLCJtZXRhc3RhdGVtZW50TWF0Y2hlcyIsIm1hdGNoTWV0YXN0YXRlbWVudE5vZGUiLCJtZXRhU3VwcG9zaXRpb25NYXRjaGVzIiwiZXZlcnkiLCJub25UZXJtaW5hbE5vZGVNYXRjaGVzIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQVVxQkE7Ozs0REFSSDtxRUFDUztzRUFDQztxQkFFTjttRkFFK0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFdEMsSUFBQSxBQUFNQSxxQ0FBRCxBQUFMO2FBQU1BLHFCQUNQQyxNQUFNLEVBQUVDLGdCQUFnQixFQUFFQyxjQUFjLEVBQUVDLGFBQWEsRUFBRUMsV0FBVztnQ0FEN0RMO1FBRWpCLElBQUksQ0FBQ0MsTUFBTSxHQUFHQTtRQUNkLElBQUksQ0FBQ0MsZ0JBQWdCLEdBQUdBO1FBQ3hCLElBQUks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
@@ -100,25 +100,25 @@ function _create_super(Derived) {
100
100
  return _possible_constructor_return(this, result);
101
101
  };
102
102
  }
103
- var LabelMetaType = /*#__PURE__*/ function(MetaType) {
104
- _inherits(LabelMetaType, MetaType);
105
- var _super = _create_super(LabelMetaType);
106
- function LabelMetaType() {
107
- _class_call_check(this, LabelMetaType);
103
+ var FrameMetaType = /*#__PURE__*/ function(MetaType) {
104
+ _inherits(FrameMetaType, MetaType);
105
+ var _super = _create_super(FrameMetaType);
106
+ function FrameMetaType() {
107
+ _class_call_check(this, FrameMetaType);
108
108
  return _super.apply(this, arguments);
109
109
  }
110
- _create_class(LabelMetaType, null, [
110
+ _create_class(FrameMetaType, null, [
111
111
  {
112
112
  key: "fromNothing",
113
113
  value: function fromNothing() {
114
- var name = _metaTypeNames.LABEL_META_TYPE_NAME, labelMetaType = new LabelMetaType(name);
115
- return labelMetaType;
114
+ var name = _metaTypeNames.FRAME_META_TYPE_NAME, frameMetaType = new FrameMetaType(name);
115
+ return frameMetaType;
116
116
  }
117
117
  }
118
118
  ]);
119
- return LabelMetaType;
119
+ return FrameMetaType;
120
120
  }(_metaType.default);
121
- var labelMetaType = LabelMetaType.fromNothing();
122
- var _default = labelMetaType;
121
+ var frameMetaType = FrameMetaType.fromNothing();
122
+ var _default = frameMetaType;
123
123
 
124
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tZXRhVHlwZS9sYWJlbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IE1ldGFUeXBlIGZyb20gXCIuLi9tZXRhVHlwZVwiO1xuXG5pbXBvcnQgeyBMQUJFTF9NRVRBX1RZUEVfTkFNRSB9IGZyb20gXCIuLi9tZXRhVHlwZU5hbWVzXCI7XG5cbmNsYXNzIExhYmVsTWV0YVR5cGUgZXh0ZW5kcyBNZXRhVHlwZSB7XG4gIHN0YXRpYyBmcm9tTm90aGluZygpIHtcbiAgICBjb25zdCBuYW1lID0gTEFCRUxfTUVUQV9UWVBFX05BTUUsXG4gICAgICAgICAgbGFiZWxNZXRhVHlwZSA9IG5ldyBMYWJlbE1ldGFUeXBlKG5hbWUpO1xuXG4gICAgcmV0dXJuIGxhYmVsTWV0YVR5cGU7XG4gIH1cbn1cblxuY29uc3QgbGFiZWxNZXRhVHlwZSA9IExhYmVsTWV0YVR5cGUuZnJvbU5vdGhpbmcoKTtcblxuZXhwb3J0IGRlZmF1bHQgbGFiZWxNZXRhVHlwZTtcbiJdLCJuYW1lcyI6WyJMYWJlbE1ldGFUeXBlIiwiZnJvbU5vdGhpbmciLCJuYW1lIiwiTEFCRUxfTUVUQV9UWVBFX05BTUUiLCJsYWJlbE1ldGFUeXBlIiwiTWV0YVR5cGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWlCQTs7O2VBQUE7OzsrREFmcUI7NkJBRWdCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXJDLElBQUEsQUFBTUEsOEJBQUQsQUFBTDtjQUFNQTsrQkFBQUE7YUFBQUE7Z0NBQUFBOzs7a0JBQUFBOztZQUNHQyxLQUFBQTttQkFBUCxTQUFPQTtnQkFDTCxJQUFNQyxPQUFPQyxtQ0FBb0IsRUFDM0JDLGdCQUFnQixJQUhwQkosY0FHc0NFO2dCQUV4QyxPQUFPRTtZQUNUOzs7V0FOSUo7RUFBc0JLLGlCQUFRO0FBU3BDLElBQU1ELGdCQUFnQkosY0FBY0MsV0FBVztJQUUvQyxXQUFlRyJ9
124
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tZXRhVHlwZS9mcmFtZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IE1ldGFUeXBlIGZyb20gXCIuLi9tZXRhVHlwZVwiO1xuXG5pbXBvcnQgeyBGUkFNRV9NRVRBX1RZUEVfTkFNRSB9IGZyb20gXCIuLi9tZXRhVHlwZU5hbWVzXCI7XG5cbmNsYXNzIEZyYW1lTWV0YVR5cGUgZXh0ZW5kcyBNZXRhVHlwZSB7XG4gIHN0YXRpYyBmcm9tTm90aGluZygpIHtcbiAgICBjb25zdCBuYW1lID0gRlJBTUVfTUVUQV9UWVBFX05BTUUsXG4gICAgICAgICAgZnJhbWVNZXRhVHlwZSA9IG5ldyBGcmFtZU1ldGFUeXBlKG5hbWUpO1xuXG4gICAgcmV0dXJuIGZyYW1lTWV0YVR5cGU7XG4gIH1cbn1cblxuY29uc3QgZnJhbWVNZXRhVHlwZSA9IEZyYW1lTWV0YVR5cGUuZnJvbU5vdGhpbmcoKTtcblxuZXhwb3J0IGRlZmF1bHQgZnJhbWVNZXRhVHlwZTtcbiJdLCJuYW1lcyI6WyJGcmFtZU1ldGFUeXBlIiwiZnJvbU5vdGhpbmciLCJuYW1lIiwiRlJBTUVfTUVUQV9UWVBFX05BTUUiLCJmcmFtZU1ldGFUeXBlIiwiTWV0YVR5cGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWlCQTs7O2VBQUE7OzsrREFmcUI7NkJBRWdCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXJDLElBQUEsQUFBTUEsOEJBQUQsQUFBTDtjQUFNQTsrQkFBQUE7YUFBQUE7Z0NBQUFBOzs7a0JBQUFBOztZQUNHQyxLQUFBQTttQkFBUCxTQUFPQTtnQkFDTCxJQUFNQyxPQUFPQyxtQ0FBb0IsRUFDM0JDLGdCQUFnQixJQUhwQkosY0FHc0NFO2dCQUV4QyxPQUFPRTtZQUNUOzs7V0FOSUo7RUFBc0JLLGlCQUFRO0FBU3BDLElBQU1ELGdCQUFnQkosY0FBY0MsV0FBVztJQUUvQyxXQUFlRyJ9
@@ -100,25 +100,25 @@ function _create_super(Derived) {
100
100
  return _possible_constructor_return(this, result);
101
101
  };
102
102
  }
103
- var ContextMetaType = /*#__PURE__*/ function(MetaType) {
104
- _inherits(ContextMetaType, MetaType);
105
- var _super = _create_super(ContextMetaType);
106
- function ContextMetaType() {
107
- _class_call_check(this, ContextMetaType);
103
+ var ReferenceMetaType = /*#__PURE__*/ function(MetaType) {
104
+ _inherits(ReferenceMetaType, MetaType);
105
+ var _super = _create_super(ReferenceMetaType);
106
+ function ReferenceMetaType() {
107
+ _class_call_check(this, ReferenceMetaType);
108
108
  return _super.apply(this, arguments);
109
109
  }
110
- _create_class(ContextMetaType, null, [
110
+ _create_class(ReferenceMetaType, null, [
111
111
  {
112
112
  key: "fromNothing",
113
113
  value: function fromNothing() {
114
- var name = _metaTypeNames.CONTEXT_META_TYPE_NAME, contextMetaType = new ContextMetaType(name);
115
- return contextMetaType;
114
+ var name = _metaTypeNames.REFERENCE_META_TYPE_NAME, referenceMetaType = new ReferenceMetaType(name);
115
+ return referenceMetaType;
116
116
  }
117
117
  }
118
118
  ]);
119
- return ContextMetaType;
119
+ return ReferenceMetaType;
120
120
  }(_metaType.default);
121
- var contextMetaType = ContextMetaType.fromNothing();
122
- var _default = contextMetaType;
121
+ var referenceMetaType = ReferenceMetaType.fromNothing();
122
+ var _default = referenceMetaType;
123
123
 
124
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tZXRhVHlwZS9jb250ZXh0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTWV0YVR5cGUgZnJvbSBcIi4uL21ldGFUeXBlXCI7XG5cbmltcG9ydCB7IENPTlRFWFRfTUVUQV9UWVBFX05BTUUgfSBmcm9tIFwiLi4vbWV0YVR5cGVOYW1lc1wiO1xuXG5jbGFzcyBDb250ZXh0TWV0YVR5cGUgZXh0ZW5kcyBNZXRhVHlwZSB7XG4gIHN0YXRpYyBmcm9tTm90aGluZygpIHtcbiAgICBjb25zdCBuYW1lID0gQ09OVEVYVF9NRVRBX1RZUEVfTkFNRSxcbiAgICAgICAgICBjb250ZXh0TWV0YVR5cGUgPSBuZXcgQ29udGV4dE1ldGFUeXBlKG5hbWUpO1xuXG4gICAgcmV0dXJuIGNvbnRleHRNZXRhVHlwZTtcbiAgfVxufVxuXG5jb25zdCBjb250ZXh0TWV0YVR5cGUgPSBDb250ZXh0TWV0YVR5cGUuZnJvbU5vdGhpbmcoKTtcblxuZXhwb3J0IGRlZmF1bHQgY29udGV4dE1ldGFUeXBlO1xuIl0sIm5hbWVzIjpbIkNvbnRleHRNZXRhVHlwZSIsImZyb21Ob3RoaW5nIiwibmFtZSIsIkNPTlRFWFRfTUVUQV9UWVBFX05BTUUiLCJjb250ZXh0TWV0YVR5cGUiLCJNZXRhVHlwZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBaUJBOzs7ZUFBQTs7OytEQWZxQjs2QkFFa0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFdkMsSUFBQSxBQUFNQSxnQ0FBRCxBQUFMO2NBQU1BOytCQUFBQTthQUFBQTtnQ0FBQUE7OztrQkFBQUE7O1lBQ0dDLEtBQUFBO21CQUFQLFNBQU9BO2dCQUNMLElBQU1DLE9BQU9DLHFDQUFzQixFQUM3QkMsa0JBQWtCLElBSHRCSixnQkFHMENFO2dCQUU1QyxPQUFPRTtZQUNUOzs7V0FOSUo7RUFBd0JLLGlCQUFRO0FBU3RDLElBQU1ELGtCQUFrQkosZ0JBQWdCQyxXQUFXO0lBRW5ELFdBQWVHIn0=
124
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tZXRhVHlwZS9yZWZlcmVuY2UuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBNZXRhVHlwZSBmcm9tIFwiLi4vbWV0YVR5cGVcIjtcblxuaW1wb3J0IHsgUkVGRVJFTkNFX01FVEFfVFlQRV9OQU1FIH0gZnJvbSBcIi4uL21ldGFUeXBlTmFtZXNcIjtcblxuY2xhc3MgUmVmZXJlbmNlTWV0YVR5cGUgZXh0ZW5kcyBNZXRhVHlwZSB7XG4gIHN0YXRpYyBmcm9tTm90aGluZygpIHtcbiAgICBjb25zdCBuYW1lID0gUkVGRVJFTkNFX01FVEFfVFlQRV9OQU1FLFxuICAgICAgICAgIHJlZmVyZW5jZU1ldGFUeXBlID0gbmV3IFJlZmVyZW5jZU1ldGFUeXBlKG5hbWUpO1xuXG4gICAgcmV0dXJuIHJlZmVyZW5jZU1ldGFUeXBlO1xuICB9XG59XG5cbmNvbnN0IHJlZmVyZW5jZU1ldGFUeXBlID0gUmVmZXJlbmNlTWV0YVR5cGUuZnJvbU5vdGhpbmcoKTtcblxuZXhwb3J0IGRlZmF1bHQgcmVmZXJlbmNlTWV0YVR5cGU7XG4iXSwibmFtZXMiOlsiUmVmZXJlbmNlTWV0YVR5cGUiLCJmcm9tTm90aGluZyIsIm5hbWUiLCJSRUZFUkVOQ0VfTUVUQV9UWVBFX05BTUUiLCJyZWZlcmVuY2VNZXRhVHlwZSIsIk1ldGFUeXBlIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFpQkE7OztlQUFBOzs7K0RBZnFCOzZCQUVvQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUV6QyxJQUFBLEFBQU1BLGtDQUFELEFBQUw7Y0FBTUE7K0JBQUFBO2FBQUFBO2dDQUFBQTs7O2tCQUFBQTs7WUFDR0MsS0FBQUE7bUJBQVAsU0FBT0E7Z0JBQ0wsSUFBTUMsT0FBT0MsdUNBQXdCLEVBQy9CQyxvQkFBb0IsSUFIeEJKLGtCQUc4Q0U7Z0JBRWhELE9BQU9FO1lBQ1Q7OztXQU5JSjtFQUEwQkssaUJBQVE7QUFTeEMsSUFBTUQsb0JBQW9CSixrQkFBa0JDLFdBQVc7SUFFdkQsV0FBZUcifQ==