occam-verify-cli 1.0.192 → 1.0.198

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 (165) hide show
  1. package/lib/context/file.js +3 -3
  2. package/lib/dom/assertion/contained.js +12 -24
  3. package/lib/dom/assertion/defined.js +9 -21
  4. package/lib/dom/assertion/property.js +7 -7
  5. package/lib/dom/assertion/satisfies.js +6 -8
  6. package/lib/dom/declaration/complexType.js +3 -3
  7. package/lib/dom/declaration/constructor.js +6 -6
  8. package/lib/dom/declaration/variable.js +6 -6
  9. package/lib/dom/declaration.js +13 -13
  10. package/lib/dom/frame.js +7 -7
  11. package/lib/dom/judgement.js +7 -7
  12. package/lib/dom/propertyRelation.js +7 -7
  13. package/lib/dom/term.js +1 -3
  14. package/lib/dom/topLevelMetaAssertion.js +77 -131
  15. package/lib/dom/type.js +2 -2
  16. package/lib/equivalence.js +4 -6
  17. package/lib/mixins/term/verify.js +4 -8
  18. package/lib/node/argument.js +116 -0
  19. package/lib/node/assertion/contained.js +31 -23
  20. package/lib/node/assertion/defined.js +30 -17
  21. package/lib/node/assertion/property.js +14 -19
  22. package/lib/node/assertion/satisfies.js +20 -13
  23. package/lib/node/assertion/subproof.js +11 -11
  24. package/lib/node/assertion/type.js +12 -17
  25. package/lib/node/combinator.js +9 -4
  26. package/lib/node/conclusion.js +11 -11
  27. package/lib/node/constructor.js +9 -4
  28. package/lib/node/declaration/combinator.js +11 -11
  29. package/lib/node/declaration/complexType.js +38 -34
  30. package/lib/node/declaration/constructor.js +24 -29
  31. package/lib/node/declaration/metavariable.js +12 -17
  32. package/lib/node/declaration/property.js +19 -24
  33. package/lib/node/declaration/type.js +41 -28
  34. package/lib/node/declaration/variable.js +12 -17
  35. package/lib/node/declaration.js +12 -17
  36. package/lib/node/deduction.js +11 -11
  37. package/lib/node/derivation.js +39 -11
  38. package/lib/node/equality.js +21 -18
  39. package/lib/node/error.js +9 -4
  40. package/lib/node/frame.js +13 -30
  41. package/lib/node/judgement.js +15 -20
  42. package/lib/node/label.js +11 -11
  43. package/lib/node/labels.js +11 -11
  44. package/lib/node/metaArgument.js +116 -0
  45. package/lib/node/metaType.js +9 -8
  46. package/lib/node/metavariable.js +12 -17
  47. package/lib/node/nonTerminal.js +200 -0
  48. package/lib/node/parameter.js +9 -4
  49. package/lib/node/parenthesisedLabel.js +116 -0
  50. package/lib/node/parenthesisedLabels.js +11 -11
  51. package/lib/node/premise.js +12 -17
  52. package/lib/node/procedureCall.js +12 -17
  53. package/lib/node/proof.js +11 -11
  54. package/lib/node/property.js +9 -4
  55. package/lib/node/propertyRelation.js +12 -17
  56. package/lib/node/reference.js +11 -11
  57. package/lib/node/rule.js +44 -7
  58. package/lib/node/statement.js +92 -53
  59. package/lib/node/step.js +12 -17
  60. package/lib/node/subDerivation.js +46 -11
  61. package/lib/node/subproof.js +19 -17
  62. package/lib/node/substitution/frame.js +123 -0
  63. package/lib/node/substitution/reference.js +123 -0
  64. package/lib/node/substitution/statement.js +123 -0
  65. package/lib/node/substitution/term.js +123 -0
  66. package/lib/node/supposition.js +12 -17
  67. package/lib/node/term.js +22 -33
  68. package/lib/node/topLevelAssertion.js +14 -29
  69. package/lib/node/topLevelMetaAssertion.js +26 -41
  70. package/lib/node/type.js +9 -4
  71. package/lib/node/types.js +116 -0
  72. package/lib/node/variable.js +9 -4
  73. package/lib/nonTerminalNodeMap.js +11 -3
  74. package/lib/ruleNames.js +33 -1
  75. package/lib/substitution/frame.js +5 -7
  76. package/lib/substitution/reference.js +5 -7
  77. package/lib/substitution/term.js +5 -7
  78. package/lib/unifier/metaLevel.js +4 -4
  79. package/lib/utilities/brackets.js +5 -5
  80. package/lib/utilities/json.js +18 -1
  81. package/lib/utilities/node.js +1 -313
  82. package/lib/utilities/subproof.js +13 -4
  83. package/package.json +1 -1
  84. package/src/context/file.js +2 -2
  85. package/src/dom/assertion/contained.js +12 -34
  86. package/src/dom/assertion/defined.js +9 -30
  87. package/src/dom/assertion/property.js +6 -8
  88. package/src/dom/assertion/satisfies.js +5 -10
  89. package/src/dom/declaration/complexType.js +2 -2
  90. package/src/dom/declaration/constructor.js +6 -7
  91. package/src/dom/declaration/variable.js +6 -7
  92. package/src/dom/declaration.js +11 -15
  93. package/src/dom/frame.js +4 -6
  94. package/src/dom/judgement.js +6 -8
  95. package/src/dom/propertyRelation.js +6 -8
  96. package/src/dom/term.js +0 -3
  97. package/src/dom/topLevelMetaAssertion.js +83 -39
  98. package/src/dom/type.js +2 -2
  99. package/src/equivalence.js +3 -6
  100. package/src/mixins/term/verify.js +5 -11
  101. package/src/node/argument.js +16 -0
  102. package/src/node/assertion/contained.js +30 -22
  103. package/src/node/assertion/defined.js +28 -15
  104. package/src/node/assertion/property.js +7 -17
  105. package/src/node/assertion/satisfies.js +11 -9
  106. package/src/node/assertion/subproof.js +4 -9
  107. package/src/node/assertion/type.js +6 -16
  108. package/src/node/combinator.js +1 -1
  109. package/src/node/conclusion.js +4 -9
  110. package/src/node/constructor.js +1 -1
  111. package/src/node/declaration/combinator.js +4 -9
  112. package/src/node/declaration/complexType.js +31 -35
  113. package/src/node/declaration/constructor.js +16 -26
  114. package/src/node/declaration/metavariable.js +6 -16
  115. package/src/node/declaration/property.js +13 -23
  116. package/src/node/declaration/type.js +35 -29
  117. package/src/node/declaration/variable.js +6 -16
  118. package/src/node/declaration.js +6 -16
  119. package/src/node/deduction.js +4 -9
  120. package/src/node/derivation.js +7 -10
  121. package/src/node/equality.js +19 -18
  122. package/src/node/error.js +1 -1
  123. package/src/node/frame.js +8 -35
  124. package/src/node/judgement.js +8 -18
  125. package/src/node/label.js +4 -9
  126. package/src/node/labels.js +4 -9
  127. package/src/node/metaArgument.js +16 -0
  128. package/src/node/metaType.js +1 -5
  129. package/src/node/metavariable.js +6 -16
  130. package/src/node/nonTerminal.js +112 -0
  131. package/src/node/parameter.js +1 -1
  132. package/src/node/parenthesisedLabel.js +16 -0
  133. package/src/node/parenthesisedLabels.js +5 -10
  134. package/src/node/premise.js +6 -16
  135. package/src/node/procedureCall.js +6 -16
  136. package/src/node/proof.js +4 -9
  137. package/src/node/property.js +1 -1
  138. package/src/node/propertyRelation.js +7 -16
  139. package/src/node/reference.js +4 -9
  140. package/src/node/rule.js +40 -3
  141. package/src/node/statement.js +109 -66
  142. package/src/node/step.js +6 -16
  143. package/src/node/subDerivation.js +14 -10
  144. package/src/node/subproof.js +13 -16
  145. package/src/node/substitution/frame.js +23 -0
  146. package/src/node/substitution/reference.js +23 -0
  147. package/src/node/substitution/statement.js +23 -0
  148. package/src/node/substitution/term.js +23 -0
  149. package/src/node/supposition.js +6 -16
  150. package/src/node/term.js +15 -39
  151. package/src/node/topLevelAssertion.js +13 -33
  152. package/src/node/topLevelMetaAssertion.js +20 -39
  153. package/src/node/type.js +1 -1
  154. package/src/node/types.js +16 -0
  155. package/src/node/variable.js +1 -1
  156. package/src/nonTerminalNodeMap.js +60 -36
  157. package/src/ruleNames.js +8 -0
  158. package/src/substitution/frame.js +7 -10
  159. package/src/substitution/reference.js +7 -10
  160. package/src/substitution/term.js +7 -9
  161. package/src/unifier/metaLevel.js +2 -3
  162. package/src/utilities/brackets.js +8 -8
  163. package/src/utilities/json.js +19 -0
  164. package/src/utilities/node.js +0 -168
  165. package/src/utilities/subproof.js +22 -6
@@ -8,8 +8,8 @@ Object.defineProperty(exports, "default", {
8
8
  return StatementNode;
9
9
  }
10
10
  });
11
- var _occamparsers = require("occam-parsers");
12
- var _node = require("../utilities/node");
11
+ var _nonTerminal = /*#__PURE__*/ _interop_require_default(require("../node/nonTerminal"));
12
+ var _ruleNames = require("../ruleNames");
13
13
  function _assert_this_initialized(self) {
14
14
  if (self === void 0) {
15
15
  throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
@@ -58,6 +58,11 @@ function _inherits(subClass, superClass) {
58
58
  });
59
59
  if (superClass) _set_prototype_of(subClass, superClass);
60
60
  }
61
+ function _interop_require_default(obj) {
62
+ return obj && obj.__esModule ? obj : {
63
+ default: obj
64
+ };
65
+ }
61
66
  function _possible_constructor_return(self, call) {
62
67
  if (call && (_type_of(call) === "object" || typeof call === "function")) {
63
68
  return call;
@@ -93,108 +98,142 @@ var StatementNode = /*#__PURE__*/ function(NonTerminalNode) {
93
98
  {
94
99
  key: "getTermNodes",
95
100
  value: function getTermNodes() {
96
- var termNodes = this.filterDescendantNode(function(descendantNode) {
97
- var descendantNodeTermNode = (0, _node.isNodeTermNode)(descendantNode);
98
- if (descendantNodeTermNode) {
99
- return true;
100
- }
101
- });
101
+ var ruleName = _ruleNames.TERM_RULE_NAME, termNodes = this.getNodeByRuleName(ruleName);
102
102
  return termNodes;
103
103
  }
104
104
  },
105
105
  {
106
106
  key: "getFrameNodes",
107
107
  value: function getFrameNodes() {
108
- var frameNodes = this.filterDescendantNode(function(descendantNode) {
109
- var descendantNodeFrameNode = (0, _node.isNodeFrameNode)(descendantNode);
110
- if (descendantNodeFrameNode) {
111
- return true;
112
- }
113
- });
108
+ var ruleName = _ruleNames.FRAME_RULE_NAME, frameNodes = this.getNodeByRuleName(ruleName);
114
109
  return frameNodes;
115
110
  }
116
111
  },
117
112
  {
118
113
  key: "getEqualityNode",
119
114
  value: function getEqualityNode() {
120
- var equalityNode = this.findChildNode(function(childNode) {
121
- var childNodeEqualityNode = (0, _node.isNodeEqualityNode)(childNode);
122
- if (childNodeEqualityNode) {
123
- return true;
124
- }
125
- }) || null;
115
+ var ruleName = _ruleNames.EQUALITY_RULE_NAME, equalityNode = this.getNodeByRuleName(ruleName);
126
116
  return equalityNode;
127
117
  }
128
118
  },
129
119
  {
130
120
  key: "getJudgementNode",
131
121
  value: function getJudgementNode() {
132
- var judgementNode = this.findChildNode(function(childNode) {
133
- var childNodeJudgementNode = (0, _node.isNodeJudgementNode)(childNode);
134
- if (childNodeJudgementNode) {
135
- return true;
136
- }
137
- }) || null;
122
+ var ruleName = _ruleNames.JUDGEMENT_RULE_NAME, judgementNode = this.getNodeByRuleName(ruleName);
138
123
  return judgementNode;
139
124
  }
140
125
  },
141
126
  {
142
127
  key: "getMetavariableNode",
143
128
  value: function getMetavariableNode() {
144
- var metavariableNode = this.findChildNode(function(childNode) {
145
- var childNodeMetavariableNode = (0, _node.isNodeMetavariableNode)(childNode);
146
- if (childNodeMetavariableNode) {
147
- return true;
148
- }
149
- }) || null;
129
+ var ruleName = _ruleNames.METAVARIABLE_RULE_NAME, metavariableNode = this.getNodeByRuleName(ruleName);
150
130
  return metavariableNode;
151
131
  }
152
132
  },
153
133
  {
154
134
  key: "getTypeAssertionNode",
155
135
  value: function getTypeAssertionNode() {
156
- var typeAssertionNode = this.findChildNode(function(childNode) {
157
- var childNodeTypeAssertionNode = (0, _node.isNodeTypeAssertionNode)(childNode);
158
- if (childNodeTypeAssertionNode) {
159
- return true;
160
- }
161
- }) || null;
136
+ var ruleName = _ruleNames.TYPE_ASSERTION_RULE_NAME, typeAssertionNode = this.getNodeByRuleName(ruleName);
162
137
  return typeAssertionNode;
163
138
  }
164
139
  },
140
+ {
141
+ key: "getDefinedAssertionNode",
142
+ value: function getDefinedAssertionNode() {
143
+ var ruleName = _ruleNames.DEFINED_ASSERTION_RULE_NAME, definedAssertionNode = this.getNodeByRuleName(ruleName);
144
+ return definedAssertionNode;
145
+ }
146
+ },
147
+ {
148
+ key: "getTermSubstitutionNode",
149
+ value: function getTermSubstitutionNode() {
150
+ var ruleName = _ruleNames.TERM_SUBSTITUTION_RULE_NAME, termSubstitutionNode = this.getNodeByRuleName(ruleName);
151
+ return termSubstitutionNode;
152
+ }
153
+ },
154
+ {
155
+ key: "getFrameSubstitutionNode",
156
+ value: function getFrameSubstitutionNode() {
157
+ var ruleName = _ruleNames.FRAME_SUBSTITUTION_RULE_NAME, frameSubstitutionNode = this.getNodeByRuleName(ruleName);
158
+ return frameSubstitutionNode;
159
+ }
160
+ },
165
161
  {
166
162
  key: "getSubproofAssertionNode",
167
163
  value: function getSubproofAssertionNode() {
168
- var subproofAssertionNode = this.findChildNode(function(childNode) {
169
- var childNodeSubproofAssertionNode = (0, _node.isNodeSubproofAssertionNode)(childNode);
170
- if (childNodeSubproofAssertionNode) {
171
- return true;
172
- }
173
- }) || null;
164
+ var ruleName = _ruleNames.SUBPROOF_ASSERTION_RULE_NAME, subproofAssertionNode = this.getNodeByRuleName(ruleName);
174
165
  return subproofAssertionNode;
175
166
  }
176
167
  },
177
168
  {
178
169
  key: "getPropertyAssertionNode",
179
170
  value: function getPropertyAssertionNode() {
180
- var propertyAssertionNode = this.findChildNode(function(childNode) {
181
- var childNodePropertyAssertionNode = (0, _node.isNodePropertyAssertionNode)(childNode);
182
- if (childNodePropertyAssertionNode) {
183
- return true;
184
- }
185
- }) || null;
171
+ var ruleName = _ruleNames.PROPERTY_ASSERTION_RULE_NAME, propertyAssertionNode = this.getNodeByRuleName(ruleName);
186
172
  return propertyAssertionNode;
187
173
  }
174
+ },
175
+ {
176
+ key: "getSingularStatementNode",
177
+ value: function getSingularStatementNode() {
178
+ var singularStatementNode = null;
179
+ var singularMetaArgumentNode = this.getSingularMetaArgumentNode();
180
+ if (singularMetaArgumentNode !== null) {
181
+ singularStatementNode = singularMetaArgumentNode.getSingularStatementNode();
182
+ }
183
+ return singularStatementNode;
184
+ }
185
+ },
186
+ {
187
+ key: "getContainedAssertionNode",
188
+ value: function getContainedAssertionNode() {
189
+ var ruleName = _ruleNames.CONTAINED_ASSERTION_RULE_NAME, containedAssertionNode = this.getNodeByRuleName(ruleName);
190
+ return containedAssertionNode;
191
+ }
192
+ },
193
+ {
194
+ key: "getSatisfiedAssertionNode",
195
+ value: function getSatisfiedAssertionNode() {
196
+ var ruleName = _ruleNames.SATISFIES_ASSERTION_RULE_NAME, satisfiedAssertionNode = this.getNodeByRuleName(ruleName);
197
+ return satisfiedAssertionNode;
198
+ }
199
+ },
200
+ {
201
+ key: "getSingularMetavariableNode",
202
+ value: function getSingularMetavariableNode() {
203
+ var ruleName = _ruleNames.METAVARIABLE_RULE_NAME, singularMetavariableNode = this.getSingularTNodeByRuleName(ruleName);
204
+ return singularMetavariableNode;
205
+ }
206
+ },
207
+ {
208
+ key: "getSingularMetaArgumentNode",
209
+ value: function getSingularMetaArgumentNode() {
210
+ var ruleName = _ruleNames.META_ARGUMENT_RULE_NAME, singularMetaArgumentNode = this.getNodeByRuleName(ruleName);
211
+ return singularMetaArgumentNode;
212
+ }
213
+ },
214
+ {
215
+ key: "getReferenceSubstitutionNode",
216
+ value: function getReferenceSubstitutionNode() {
217
+ var ruleName = _ruleNames.REFERENCE_SUBSTITUTION_RULE_NAME, referenceSubstitutionNode = this.getNodeByRuleName(ruleName);
218
+ return referenceSubstitutionNode;
219
+ }
220
+ },
221
+ {
222
+ key: "getStatementSubstitutionNode",
223
+ value: function getStatementSubstitutionNode() {
224
+ var ruleName = _ruleNames.STATEMENT_SUBSTITUTION_RULE_NAME, statementSubstitutionNode = this.getNodeByRuleName(ruleName);
225
+ return statementSubstitutionNode;
226
+ }
188
227
  }
189
228
  ], [
190
229
  {
191
230
  key: "fromRuleNameChildNodesOpacityAndPrecedence",
192
231
  value: function fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) {
193
- return _occamparsers.NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(StatementNode, ruleName, childNodes, opacity, precedence);
232
+ return _nonTerminal.default.fromRuleNameChildNodesOpacityAndPrecedence(StatementNode, ruleName, childNodes, opacity, precedence);
194
233
  }
195
234
  }
196
235
  ]);
197
236
  return StatementNode;
198
- }(_occamparsers.NonTerminalNode);
237
+ }(_nonTerminal.default);
199
238
 
200
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL3N0YXRlbWVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgTm9uVGVybWluYWxOb2RlIH0gZnJvbSBcIm9jY2FtLXBhcnNlcnNcIjtcblxuaW1wb3J0IHsgaXNOb2RlVGVybU5vZGUsXG4gICAgICAgICBpc05vZGVGcmFtZU5vZGUsXG4gICAgICAgICBpc05vZGVFcXVhbGl0eU5vZGUsXG4gICAgICAgICBpc05vZGVKdWRnZW1lbnROb2RlLFxuICAgICAgICAgaXNOb2RlTWV0YXZhcmlhYmxlTm9kZSxcbiAgICAgICAgIGlzTm9kZVR5cGVBc3NlcnRpb25Ob2RlLFxuICAgICAgICAgaXNOb2RlU3VicHJvb2ZBc3NlcnRpb25Ob2RlLFxuICAgICAgICAgaXNOb2RlUHJvcGVydHlBc3NlcnRpb25Ob2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9ub2RlXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFN0YXRlbWVudE5vZGUgZXh0ZW5kcyBOb25UZXJtaW5hbE5vZGUge1xuICBnZXRUZXJtTm9kZXMoKSB7XG4gICAgY29uc3QgdGVybU5vZGVzID0gdGhpcy5maWx0ZXJEZXNjZW5kYW50Tm9kZSgoZGVzY2VuZGFudE5vZGUpID0+IHtcbiAgICAgIGNvbnN0IGRlc2NlbmRhbnROb2RlVGVybU5vZGUgPSBpc05vZGVUZXJtTm9kZShkZXNjZW5kYW50Tm9kZSk7XG5cbiAgICAgIGlmIChkZXNjZW5kYW50Tm9kZVRlcm1Ob2RlKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHRlcm1Ob2RlcztcbiAgfVxuXG4gIGdldEZyYW1lTm9kZXMoKSB7XG4gICAgY29uc3QgZnJhbWVOb2RlcyA9IHRoaXMuZmlsdGVyRGVzY2VuZGFudE5vZGUoKGRlc2NlbmRhbnROb2RlKSA9PiB7XG4gICAgICBjb25zdCBkZXNjZW5kYW50Tm9kZUZyYW1lTm9kZSA9IGlzTm9kZUZyYW1lTm9kZShkZXNjZW5kYW50Tm9kZSk7XG5cbiAgICAgIGlmIChkZXNjZW5kYW50Tm9kZUZyYW1lTm9kZSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiBmcmFtZU5vZGVzO1xuICB9XG5cbiAgZ2V0RXF1YWxpdHlOb2RlKCkge1xuICAgIGNvbnN0IGVxdWFsaXR5Tm9kZSA9IHRoaXMuZmluZENoaWxkTm9kZSgoY2hpbGROb2RlKSA9PiB7XG4gICAgICBjb25zdCBjaGlsZE5vZGVFcXVhbGl0eU5vZGUgPSBpc05vZGVFcXVhbGl0eU5vZGUoY2hpbGROb2RlKTtcblxuICAgICAgaWYgKGNoaWxkTm9kZUVxdWFsaXR5Tm9kZSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIGVxdWFsaXR5Tm9kZTtcbiAgfVxuXG4gIGdldEp1ZGdlbWVudE5vZGUoKSB7XG4gICAgY29uc3QganVkZ2VtZW50Tm9kZSA9IHRoaXMuZmluZENoaWxkTm9kZSgoY2hpbGROb2RlKSA9PiB7XG4gICAgICBjb25zdCBjaGlsZE5vZGVKdWRnZW1lbnROb2RlID0gaXNOb2RlSnVkZ2VtZW50Tm9kZShjaGlsZE5vZGUpO1xuXG4gICAgICBpZiAoY2hpbGROb2RlSnVkZ2VtZW50Tm9kZSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIGp1ZGdlbWVudE5vZGU7XG4gIH1cblxuICBnZXRNZXRhdmFyaWFibGVOb2RlKCkge1xuICAgIGNvbnN0IG1ldGF2YXJpYWJsZU5vZGUgPSB0aGlzLmZpbmRDaGlsZE5vZGUoKGNoaWxkTm9kZSkgPT4ge1xuICAgICAgY29uc3QgY2hpbGROb2RlTWV0YXZhcmlhYmxlTm9kZSA9IGlzTm9kZU1ldGF2YXJpYWJsZU5vZGUoY2hpbGROb2RlKTtcblxuICAgICAgaWYgKGNoaWxkTm9kZU1ldGF2YXJpYWJsZU5vZGUpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSkgfHwgbnVsbDtcblxuICAgIHJldHVybiBtZXRhdmFyaWFibGVOb2RlO1xuICB9XG5cbiAgZ2V0VHlwZUFzc2VydGlvbk5vZGUoKSB7XG4gICAgY29uc3QgdHlwZUFzc2VydGlvbk5vZGUgPSB0aGlzLmZpbmRDaGlsZE5vZGUoKGNoaWxkTm9kZSkgPT4ge1xuICAgICAgY29uc3QgY2hpbGROb2RlVHlwZUFzc2VydGlvbk5vZGUgPSBpc05vZGVUeXBlQXNzZXJ0aW9uTm9kZShjaGlsZE5vZGUpO1xuXG4gICAgICBpZiAoY2hpbGROb2RlVHlwZUFzc2VydGlvbk5vZGUpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSkgfHwgbnVsbDtcblxuICAgIHJldHVybiB0eXBlQXNzZXJ0aW9uTm9kZTtcbiAgfVxuXG4gIGdldFN1YnByb29mQXNzZXJ0aW9uTm9kZSgpIHtcbiAgICBjb25zdCBzdWJwcm9vZkFzc2VydGlvbk5vZGUgPSB0aGlzLmZpbmRDaGlsZE5vZGUoKGNoaWxkTm9kZSkgPT4ge1xuICAgICAgY29uc3QgY2hpbGROb2RlU3VicHJvb2ZBc3NlcnRpb25Ob2RlID0gaXNOb2RlU3VicHJvb2ZBc3NlcnRpb25Ob2RlKGNoaWxkTm9kZSk7XG5cbiAgICAgIGlmIChjaGlsZE5vZGVTdWJwcm9vZkFzc2VydGlvbk5vZGUpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSkgfHwgbnVsbDtcblxuICAgIHJldHVybiBzdWJwcm9vZkFzc2VydGlvbk5vZGU7XG4gIH1cblxuICBnZXRQcm9wZXJ0eUFzc2VydGlvbk5vZGUoKSB7XG4gICAgY29uc3QgcHJvcGVydHlBc3NlcnRpb25Ob2RlID0gdGhpcy5maW5kQ2hpbGROb2RlKChjaGlsZE5vZGUpID0+IHtcbiAgICAgIGNvbnN0IGNoaWxkTm9kZVByb3BlcnR5QXNzZXJ0aW9uTm9kZSA9IGlzTm9kZVByb3BlcnR5QXNzZXJ0aW9uTm9kZShjaGlsZE5vZGUpO1xuXG4gICAgICBpZiAoY2hpbGROb2RlUHJvcGVydHlBc3NlcnRpb25Ob2RlKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pIHx8IG51bGw7XG5cbiAgICByZXR1cm4gcHJvcGVydHlBc3NlcnRpb25Ob2RlO1xuICB9XG5cbiAgc3RhdGljIGZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSwgcHJlY2VkZW5jZSkgeyByZXR1cm4gTm9uVGVybWluYWxOb2RlLmZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShTdGF0ZW1lbnROb2RlLCBydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSwgcHJlY2VkZW5jZSk7IH1cbn1cbiJdLCJuYW1lcyI6WyJTdGF0ZW1lbnROb2RlIiwiZ2V0VGVybU5vZGVzIiwidGVybU5vZGVzIiwiZmlsdGVyRGVzY2VuZGFudE5vZGUiLCJkZXNjZW5kYW50Tm9kZSIsImRlc2NlbmRhbnROb2RlVGVybU5vZGUiLCJpc05vZGVUZXJtTm9kZSIsImdldEZyYW1lTm9kZXMiLCJmcmFtZU5vZGVzIiwiZGVzY2VuZGFudE5vZGVGcmFtZU5vZGUiLCJpc05vZGVGcmFtZU5vZGUiLCJnZXRFcXVhbGl0eU5vZGUiLCJlcXVhbGl0eU5vZGUiLCJmaW5kQ2hpbGROb2RlIiwiY2hpbGROb2RlIiwiY2hpbGROb2RlRXF1YWxpdHlOb2RlIiwiaXNOb2RlRXF1YWxpdHlOb2RlIiwiZ2V0SnVkZ2VtZW50Tm9kZSIsImp1ZGdlbWVudE5vZGUiLCJjaGlsZE5vZGVKdWRnZW1lbnROb2RlIiwiaXNOb2RlSnVkZ2VtZW50Tm9kZSIsImdldE1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhdmFyaWFibGVOb2RlIiwiY2hpbGROb2RlTWV0YXZhcmlhYmxlTm9kZSIsImlzTm9kZU1ldGF2YXJpYWJsZU5vZGUiLCJnZXRUeXBlQXNzZXJ0aW9uTm9kZSIsInR5cGVBc3NlcnRpb25Ob2RlIiwiY2hpbGROb2RlVHlwZUFzc2VydGlvbk5vZGUiLCJpc05vZGVUeXBlQXNzZXJ0aW9uTm9kZSIsImdldFN1YnByb29mQXNzZXJ0aW9uTm9kZSIsInN1YnByb29mQXNzZXJ0aW9uTm9kZSIsImNoaWxkTm9kZVN1YnByb29mQXNzZXJ0aW9uTm9kZSIsImlzTm9kZVN1YnByb29mQXNzZXJ0aW9uTm9kZSIsImdldFByb3BlcnR5QXNzZXJ0aW9uTm9kZSIsInByb3BlcnR5QXNzZXJ0aW9uTm9kZSIsImNoaWxkTm9kZVByb3BlcnR5QXNzZXJ0aW9uTm9kZSIsImlzTm9kZVByb3BlcnR5QXNzZXJ0aW9uTm9kZSIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZSIsInJ1bGVOYW1lIiwiY2hpbGROb2RlcyIsIm9wYWNpdHkiLCJwcmVjZWRlbmNlIiwiTm9uVGVybWluYWxOb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQWFxQkE7Ozs0QkFYVztvQkFTWTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFN0IsSUFBQSxBQUFNQSw4QkFBTjtjQUFNQTthQUFBQTtnQ0FBQUE7UUFBTixPQUFBLGtCQUFNQTs7a0JBQUFBOztZQUNuQkMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQU1DLFlBQVksSUFBSSxDQUFDQyxvQkFBb0IsQ0FBQyxTQUFDQztvQkFDM0MsSUFBTUMseUJBQXlCQyxJQUFBQSxvQkFBYyxFQUFDRjtvQkFFOUMsSUFBSUMsd0JBQXdCO3dCQUMxQixPQUFPO29CQUNUO2dCQUNGO2dCQUVBLE9BQU9IO1lBQ1Q7OztZQUVBSyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsYUFBYSxJQUFJLENBQUNMLG9CQUFvQixDQUFDLFNBQUNDO29CQUM1QyxJQUFNSywwQkFBMEJDLElBQUFBLHFCQUFlLEVBQUNOO29CQUVoRCxJQUFJSyx5QkFBeUI7d0JBQzNCLE9BQU87b0JBQ1Q7Z0JBQ0Y7Z0JBRUEsT0FBT0Q7WUFDVDs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyxlQUFlLElBQUksQ0FBQ0MsYUFBYSxDQUFDLFNBQUNDO29CQUN2QyxJQUFNQyx3QkFBd0JDLElBQUFBLHdCQUFrQixFQUFDRjtvQkFFakQsSUFBSUMsdUJBQXVCO3dCQUN6QixPQUFPO29CQUNUO2dCQUNGLE1BQU07Z0JBRU4sT0FBT0g7WUFDVDs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyxnQkFBZ0IsSUFBSSxDQUFDTCxhQUFhLENBQUMsU0FBQ0M7b0JBQ3hDLElBQU1LLHlCQUF5QkMsSUFBQUEseUJBQW1CLEVBQUNOO29CQUVuRCxJQUFJSyx3QkFBd0I7d0JBQzFCLE9BQU87b0JBQ1Q7Z0JBQ0YsTUFBTTtnQkFFTixPQUFPRDtZQUNUOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQU1DLG1CQUFtQixJQUFJLENBQUNULGFBQWEsQ0FBQyxTQUFDQztvQkFDM0MsSUFBTVMsNEJBQTRCQyxJQUFBQSw0QkFBc0IsRUFBQ1Y7b0JBRXpELElBQUlTLDJCQUEyQjt3QkFDN0IsT0FBTztvQkFDVDtnQkFDRixNQUFNO2dCQUVOLE9BQU9EO1lBQ1Q7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsb0JBQW9CLElBQUksQ0FBQ2IsYUFBYSxDQUFDLFNBQUNDO29CQUM1QyxJQUFNYSw2QkFBNkJDLElBQUFBLDZCQUF1QixFQUFDZDtvQkFFM0QsSUFBSWEsNEJBQTRCO3dCQUM5QixPQUFPO29CQUNUO2dCQUNGLE1BQU07Z0JBRU4sT0FBT0Q7WUFDVDs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyx3QkFBd0IsSUFBSSxDQUFDakIsYUFBYSxDQUFDLFNBQUNDO29CQUNoRCxJQUFNaUIsaUNBQWlDQyxJQUFBQSxpQ0FBMkIsRUFBQ2xCO29CQUVuRSxJQUFJaUIsZ0NBQWdDO3dCQUNsQyxPQUFPO29CQUNUO2dCQUNGLE1BQU07Z0JBRU4sT0FBT0Q7WUFDVDs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyx3QkFBd0IsSUFBSSxDQUFDckIsYUFBYSxDQUFDLFNBQUNDO29CQUNoRCxJQUFNcUIsaUNBQWlDQyxJQUFBQSxpQ0FBMkIsRUFBQ3RCO29CQUVuRSxJQUFJcUIsZ0NBQWdDO3dCQUNsQyxPQUFPO29CQUNUO2dCQUNGLE1BQU07Z0JBRU4sT0FBT0Q7WUFDVDs7OztZQUVPRyxLQUFBQTttQkFBUCxTQUFPQSwyQ0FBMkNDLFFBQVEsRUFBRUMsVUFBVSxFQUFFQyxPQUFPLEVBQUVDLFVBQVU7Z0JBQUksT0FBT0MsNkJBQWUsQ0FBQ0wsMENBQTBDLENBakc3SXJDLGVBaUc2SnNDLFVBQVVDLFlBQVlDLFNBQVNDO1lBQWE7OztXQWpHek16QztFQUFzQjBDLDZCQUFlIn0=
239
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL3N0YXRlbWVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IE5vblRlcm1pbmFsTm9kZSBmcm9tIFwiLi4vbm9kZS9ub25UZXJtaW5hbFwiO1xuXG5pbXBvcnQgeyBURVJNX1JVTEVfTkFNRSxcbiAgICAgICAgIEZSQU1FX1JVTEVfTkFNRSxcbiAgICAgICAgIEVRVUFMSVRZX1JVTEVfTkFNRSxcbiAgICAgICAgIEpVREdFTUVOVF9SVUxFX05BTUUsXG4gICAgICAgICBNRVRBVkFSSUFCTEVfUlVMRV9OQU1FLFxuICAgICAgICAgTUVUQV9BUkdVTUVOVF9SVUxFX05BTUUsXG4gICAgICAgICBUWVBFX0FTU0VSVElPTl9SVUxFX05BTUUsXG4gICAgICAgICBERUZJTkVEX0FTU0VSVElPTl9SVUxFX05BTUUsXG4gICAgICAgICBURVJNX1NVQlNUSVRVVElPTl9SVUxFX05BTUUsXG4gICAgICAgICBQUk9QRVJUWV9BU1NFUlRJT05fUlVMRV9OQU1FLFxuICAgICAgICAgU1VCUFJPT0ZfQVNTRVJUSU9OX1JVTEVfTkFNRSxcbiAgICAgICAgIEZSQU1FX1NVQlNUSVRVVElPTl9SVUxFX05BTUUsXG4gICAgICAgICBTQVRJU0ZJRVNfQVNTRVJUSU9OX1JVTEVfTkFNRSxcbiAgICAgICAgIENPTlRBSU5FRF9BU1NFUlRJT05fUlVMRV9OQU1FLFxuICAgICAgICAgUkVGRVJFTkNFX1NVQlNUSVRVVElPTl9SVUxFX05BTUUsXG4gICAgICAgICBTVEFURU1FTlRfU1VCU1RJVFVUSU9OX1JVTEVfTkFNRSB9IGZyb20gXCIuLi9ydWxlTmFtZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3RhdGVtZW50Tm9kZSBleHRlbmRzIE5vblRlcm1pbmFsTm9kZSB7XG4gIGdldFRlcm1Ob2RlcygpIHtcbiAgICBjb25zdCBydWxlTmFtZSA9IFRFUk1fUlVMRV9OQU1FLFxuICAgICAgICAgIHRlcm1Ob2RlcyA9IHRoaXMuZ2V0Tm9kZUJ5UnVsZU5hbWUocnVsZU5hbWUpO1xuXG4gICAgcmV0dXJuIHRlcm1Ob2RlcztcbiAgfVxuXG4gIGdldEZyYW1lTm9kZXMoKSB7XG4gICAgY29uc3QgcnVsZU5hbWUgPSBGUkFNRV9SVUxFX05BTUUsXG4gICAgICAgICAgZnJhbWVOb2RlcyA9IHRoaXMuZ2V0Tm9kZUJ5UnVsZU5hbWUocnVsZU5hbWUpO1xuXG4gICAgcmV0dXJuIGZyYW1lTm9kZXM7XG4gIH1cblxuICBnZXRFcXVhbGl0eU5vZGUoKSB7XG4gICAgY29uc3QgcnVsZU5hbWUgPSBFUVVBTElUWV9SVUxFX05BTUUsXG4gICAgICAgICAgZXF1YWxpdHlOb2RlID0gdGhpcy5nZXROb2RlQnlSdWxlTmFtZShydWxlTmFtZSk7XG5cbiAgICByZXR1cm4gZXF1YWxpdHlOb2RlO1xuICB9XG5cbiAgZ2V0SnVkZ2VtZW50Tm9kZSgpIHtcbiAgICBjb25zdCBydWxlTmFtZSA9IEpVREdFTUVOVF9SVUxFX05BTUUsXG4gICAgICAgICAganVkZ2VtZW50Tm9kZSA9IHRoaXMuZ2V0Tm9kZUJ5UnVsZU5hbWUocnVsZU5hbWUpO1xuXG4gICAgcmV0dXJuIGp1ZGdlbWVudE5vZGU7XG4gIH1cblxuICBnZXRNZXRhdmFyaWFibGVOb2RlKCkge1xuICAgIGNvbnN0IHJ1bGVOYW1lID0gTUVUQVZBUklBQkxFX1JVTEVfTkFNRSxcbiAgICAgICAgICBtZXRhdmFyaWFibGVOb2RlID0gdGhpcy5nZXROb2RlQnlSdWxlTmFtZShydWxlTmFtZSk7XG5cbiAgICByZXR1cm4gbWV0YXZhcmlhYmxlTm9kZTtcbiAgfVxuXG4gIGdldFR5cGVBc3NlcnRpb25Ob2RlKCkge1xuICAgIGNvbnN0IHJ1bGVOYW1lID0gVFlQRV9BU1NFUlRJT05fUlVMRV9OQU1FLFxuICAgICAgICAgIHR5cGVBc3NlcnRpb25Ob2RlID0gdGhpcy5nZXROb2RlQnlSdWxlTmFtZShydWxlTmFtZSk7XG5cbiAgICByZXR1cm4gdHlwZUFzc2VydGlvbk5vZGU7XG4gIH1cblxuICBnZXREZWZpbmVkQXNzZXJ0aW9uTm9kZSgpIHtcbiAgICBjb25zdCBydWxlTmFtZSA9IERFRklORURfQVNTRVJUSU9OX1JVTEVfTkFNRSxcbiAgICAgICAgICBkZWZpbmVkQXNzZXJ0aW9uTm9kZSA9IHRoaXMuZ2V0Tm9kZUJ5UnVsZU5hbWUocnVsZU5hbWUpO1xuXG4gICAgcmV0dXJuIGRlZmluZWRBc3NlcnRpb25Ob2RlO1xuICB9XG5cbiAgZ2V0VGVybVN1YnN0aXR1dGlvbk5vZGUoKSB7XG4gICAgY29uc3QgcnVsZU5hbWUgPSBURVJNX1NVQlNUSVRVVElPTl9SVUxFX05BTUUsXG4gICAgICAgICAgdGVybVN1YnN0aXR1dGlvbk5vZGUgPSB0aGlzLmdldE5vZGVCeVJ1bGVOYW1lKHJ1bGVOYW1lKTtcblxuICAgIHJldHVybiB0ZXJtU3Vic3RpdHV0aW9uTm9kZTtcbiAgfVxuXG4gIGdldEZyYW1lU3Vic3RpdHV0aW9uTm9kZSgpIHtcbiAgICBjb25zdCBydWxlTmFtZSA9IEZSQU1FX1NVQlNUSVRVVElPTl9SVUxFX05BTUUsXG4gICAgICAgICAgZnJhbWVTdWJzdGl0dXRpb25Ob2RlID0gdGhpcy5nZXROb2RlQnlSdWxlTmFtZShydWxlTmFtZSk7XG5cbiAgICByZXR1cm4gZnJhbWVTdWJzdGl0dXRpb25Ob2RlO1xuICB9XG5cbiAgZ2V0U3VicHJvb2ZBc3NlcnRpb25Ob2RlKCkge1xuICAgIGNvbnN0IHJ1bGVOYW1lID0gU1VCUFJPT0ZfQVNTRVJUSU9OX1JVTEVfTkFNRSxcbiAgICAgICAgICBzdWJwcm9vZkFzc2VydGlvbk5vZGUgPSB0aGlzLmdldE5vZGVCeVJ1bGVOYW1lKHJ1bGVOYW1lKTtcblxuICAgIHJldHVybiBzdWJwcm9vZkFzc2VydGlvbk5vZGU7XG4gIH1cblxuICBnZXRQcm9wZXJ0eUFzc2VydGlvbk5vZGUoKSB7XG4gICAgY29uc3QgcnVsZU5hbWUgPSBQUk9QRVJUWV9BU1NFUlRJT05fUlVMRV9OQU1FLFxuICAgICAgICAgIHByb3BlcnR5QXNzZXJ0aW9uTm9kZSA9IHRoaXMuZ2V0Tm9kZUJ5UnVsZU5hbWUocnVsZU5hbWUpO1xuXG4gICAgcmV0dXJuIHByb3BlcnR5QXNzZXJ0aW9uTm9kZTtcbiAgfVxuXG4gIGdldFNpbmd1bGFyU3RhdGVtZW50Tm9kZSgpIHtcbiAgICBsZXQgc2luZ3VsYXJTdGF0ZW1lbnROb2RlID0gbnVsbDtcblxuICAgIGNvbnN0IHNpbmd1bGFyTWV0YUFyZ3VtZW50Tm9kZSA9IHRoaXMuZ2V0U2luZ3VsYXJNZXRhQXJndW1lbnROb2RlKCk7XG5cbiAgICBpZiAoc2luZ3VsYXJNZXRhQXJndW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgICBzaW5ndWxhclN0YXRlbWVudE5vZGUgPSBzaW5ndWxhck1ldGFBcmd1bWVudE5vZGUuZ2V0U2luZ3VsYXJTdGF0ZW1lbnROb2RlKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHNpbmd1bGFyU3RhdGVtZW50Tm9kZTtcbiAgfVxuXG4gIGdldENvbnRhaW5lZEFzc2VydGlvbk5vZGUoKSB7XG4gICAgY29uc3QgcnVsZU5hbWUgPSBDT05UQUlORURfQVNTRVJUSU9OX1JVTEVfTkFNRSxcbiAgICAgICAgICBjb250YWluZWRBc3NlcnRpb25Ob2RlID0gdGhpcy5nZXROb2RlQnlSdWxlTmFtZShydWxlTmFtZSk7XG5cbiAgICByZXR1cm4gY29udGFpbmVkQXNzZXJ0aW9uTm9kZTtcbiAgfVxuXG4gIGdldFNhdGlzZmllZEFzc2VydGlvbk5vZGUoKSB7XG4gICAgY29uc3QgcnVsZU5hbWUgPSBTQVRJU0ZJRVNfQVNTRVJUSU9OX1JVTEVfTkFNRSxcbiAgICAgICAgICBzYXRpc2ZpZWRBc3NlcnRpb25Ob2RlID0gdGhpcy5nZXROb2RlQnlSdWxlTmFtZShydWxlTmFtZSk7XG5cbiAgICByZXR1cm4gc2F0aXNmaWVkQXNzZXJ0aW9uTm9kZTtcbiAgfVxuXG4gIGdldFNpbmd1bGFyTWV0YXZhcmlhYmxlTm9kZSgpIHtcbiAgICBjb25zdCBydWxlTmFtZSA9IE1FVEFWQVJJQUJMRV9SVUxFX05BTUUsXG4gICAgICAgICAgc2luZ3VsYXJNZXRhdmFyaWFibGVOb2RlID0gdGhpcy5nZXRTaW5ndWxhclROb2RlQnlSdWxlTmFtZShydWxlTmFtZSk7XG5cbiAgICByZXR1cm4gc2luZ3VsYXJNZXRhdmFyaWFibGVOb2RlO1xuICB9XG5cbiAgZ2V0U2luZ3VsYXJNZXRhQXJndW1lbnROb2RlKCkge1xuICAgIGNvbnN0IHJ1bGVOYW1lID0gTUVUQV9BUkdVTUVOVF9SVUxFX05BTUUsXG4gICAgICAgICAgc2luZ3VsYXJNZXRhQXJndW1lbnROb2RlID0gdGhpcy5nZXROb2RlQnlSdWxlTmFtZShydWxlTmFtZSk7XG5cbiAgICByZXR1cm4gc2luZ3VsYXJNZXRhQXJndW1lbnROb2RlO1xuICB9XG5cbiAgZ2V0UmVmZXJlbmNlU3Vic3RpdHV0aW9uTm9kZSgpIHtcbiAgICBjb25zdCBydWxlTmFtZSA9IFJFRkVSRU5DRV9TVUJTVElUVVRJT05fUlVMRV9OQU1FLFxuICAgICAgcmVmZXJlbmNlU3Vic3RpdHV0aW9uTm9kZSA9IHRoaXMuZ2V0Tm9kZUJ5UnVsZU5hbWUocnVsZU5hbWUpO1xuXG4gICAgcmV0dXJuIHJlZmVyZW5jZVN1YnN0aXR1dGlvbk5vZGU7XG4gIH1cblxuICBnZXRTdGF0ZW1lbnRTdWJzdGl0dXRpb25Ob2RlKCkge1xuICAgIGNvbnN0IHJ1bGVOYW1lID0gU1RBVEVNRU5UX1NVQlNUSVRVVElPTl9SVUxFX05BTUUsXG4gICAgICAgICAgc3RhdGVtZW50U3Vic3RpdHV0aW9uTm9kZSA9IHRoaXMuZ2V0Tm9kZUJ5UnVsZU5hbWUocnVsZU5hbWUpO1xuXG4gICAgcmV0dXJuIHN0YXRlbWVudFN1YnN0aXR1dGlvbk5vZGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlKHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBwcmVjZWRlbmNlKSB7IHJldHVybiBOb25UZXJtaW5hbE5vZGUuZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlKFN0YXRlbWVudE5vZGUsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBwcmVjZWRlbmNlKTsgfVxufVxuIl0sIm5hbWVzIjpbIlN0YXRlbWVudE5vZGUiLCJnZXRUZXJtTm9kZXMiLCJydWxlTmFtZSIsIlRFUk1fUlVMRV9OQU1FIiwidGVybU5vZGVzIiwiZ2V0Tm9kZUJ5UnVsZU5hbWUiLCJnZXRGcmFtZU5vZGVzIiwiRlJBTUVfUlVMRV9OQU1FIiwiZnJhbWVOb2RlcyIsImdldEVxdWFsaXR5Tm9kZSIsIkVRVUFMSVRZX1JVTEVfTkFNRSIsImVxdWFsaXR5Tm9kZSIsImdldEp1ZGdlbWVudE5vZGUiLCJKVURHRU1FTlRfUlVMRV9OQU1FIiwianVkZ2VtZW50Tm9kZSIsImdldE1ldGF2YXJpYWJsZU5vZGUiLCJNRVRBVkFSSUFCTEVfUlVMRV9OQU1FIiwibWV0YXZhcmlhYmxlTm9kZSIsImdldFR5cGVBc3NlcnRpb25Ob2RlIiwiVFlQRV9BU1NFUlRJT05fUlVMRV9OQU1FIiwidHlwZUFzc2VydGlvbk5vZGUiLCJnZXREZWZpbmVkQXNzZXJ0aW9uTm9kZSIsIkRFRklORURfQVNTRVJUSU9OX1JVTEVfTkFNRSIsImRlZmluZWRBc3NlcnRpb25Ob2RlIiwiZ2V0VGVybVN1YnN0aXR1dGlvbk5vZGUiLCJURVJNX1NVQlNUSVRVVElPTl9SVUxFX05BTUUiLCJ0ZXJtU3Vic3RpdHV0aW9uTm9kZSIsImdldEZyYW1lU3Vic3RpdHV0aW9uTm9kZSIsIkZSQU1FX1NVQlNUSVRVVElPTl9SVUxFX05BTUUiLCJmcmFtZVN1YnN0aXR1dGlvbk5vZGUiLCJnZXRTdWJwcm9vZkFzc2VydGlvbk5vZGUiLCJTVUJQUk9PRl9BU1NFUlRJT05fUlVMRV9OQU1FIiwic3VicHJvb2ZBc3NlcnRpb25Ob2RlIiwiZ2V0UHJvcGVydHlBc3NlcnRpb25Ob2RlIiwiUFJPUEVSVFlfQVNTRVJUSU9OX1JVTEVfTkFNRSIsInByb3BlcnR5QXNzZXJ0aW9uTm9kZSIsImdldFNpbmd1bGFyU3RhdGVtZW50Tm9kZSIsInNpbmd1bGFyU3RhdGVtZW50Tm9kZSIsInNpbmd1bGFyTWV0YUFyZ3VtZW50Tm9kZSIsImdldFNpbmd1bGFyTWV0YUFyZ3VtZW50Tm9kZSIsImdldENvbnRhaW5lZEFzc2VydGlvbk5vZGUiLCJDT05UQUlORURfQVNTRVJUSU9OX1JVTEVfTkFNRSIsImNvbnRhaW5lZEFzc2VydGlvbk5vZGUiLCJnZXRTYXRpc2ZpZWRBc3NlcnRpb25Ob2RlIiwiU0FUSVNGSUVTX0FTU0VSVElPTl9SVUxFX05BTUUiLCJzYXRpc2ZpZWRBc3NlcnRpb25Ob2RlIiwiZ2V0U2luZ3VsYXJNZXRhdmFyaWFibGVOb2RlIiwic2luZ3VsYXJNZXRhdmFyaWFibGVOb2RlIiwiZ2V0U2luZ3VsYXJUTm9kZUJ5UnVsZU5hbWUiLCJNRVRBX0FSR1VNRU5UX1JVTEVfTkFNRSIsImdldFJlZmVyZW5jZVN1YnN0aXR1dGlvbk5vZGUiLCJSRUZFUkVOQ0VfU1VCU1RJVFVUSU9OX1JVTEVfTkFNRSIsInJlZmVyZW5jZVN1YnN0aXR1dGlvbk5vZGUiLCJnZXRTdGF0ZW1lbnRTdWJzdGl0dXRpb25Ob2RlIiwiU1RBVEVNRU5UX1NVQlNUSVRVVElPTl9SVUxFX05BTUUiLCJzdGF0ZW1lbnRTdWJzdGl0dXRpb25Ob2RlIiwiZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlIiwiY2hpbGROb2RlcyIsIm9wYWNpdHkiLCJwcmVjZWRlbmNlIiwiTm9uVGVybWluYWxOb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQXFCcUJBOzs7a0VBbkJPO3lCQWlCcUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFbEMsSUFBQSxBQUFNQSw4QkFBTjtjQUFNQTthQUFBQTtnQ0FBQUE7UUFBTixPQUFBLGtCQUFNQTs7a0JBQUFBOztZQUNuQkMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQU1DLFdBQVdDLHlCQUFjLEVBQ3pC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
package/lib/node/step.js CHANGED
@@ -8,8 +8,8 @@ Object.defineProperty(exports, "default", {
8
8
  return StepNode;
9
9
  }
10
10
  });
11
- var _occamparsers = require("occam-parsers");
12
- var _node = require("../utilities/node");
11
+ var _nonTerminal = /*#__PURE__*/ _interop_require_default(require("../node/nonTerminal"));
12
+ var _ruleNames = require("../ruleNames");
13
13
  function _assert_this_initialized(self) {
14
14
  if (self === void 0) {
15
15
  throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
@@ -58,6 +58,11 @@ function _inherits(subClass, superClass) {
58
58
  });
59
59
  if (superClass) _set_prototype_of(subClass, superClass);
60
60
  }
61
+ function _interop_require_default(obj) {
62
+ return obj && obj.__esModule ? obj : {
63
+ default: obj
64
+ };
65
+ }
61
66
  function _possible_constructor_return(self, call) {
62
67
  if (call && (_type_of(call) === "object" || typeof call === "function")) {
63
68
  return call;
@@ -107,24 +112,14 @@ var StepNode = /*#__PURE__*/ function(NonTerminalNode) {
107
112
  {
108
113
  key: "getStatementNode",
109
114
  value: function getStatementNode() {
110
- var statementNode = this.findChildNode(function(childNode) {
111
- var childNodeStatementNode = (0, _node.isNodeStatementNode)(childNode);
112
- if (childNodeStatementNode) {
113
- return true;
114
- }
115
- }) || null;
115
+ var ruleName = _ruleNames.STATEMENT_RULE_NAME, statementNode = this.getNodeByRuleName(ruleName);
116
116
  return statementNode;
117
117
  }
118
118
  },
119
119
  {
120
120
  key: "getReferenceNode",
121
121
  value: function getReferenceNode() {
122
- var referenceNode = this.findChildNode(function(childNode) {
123
- var childNodeReferenceNode = (0, _node.isNodeReferenceNode)(childNode);
124
- if (childNodeReferenceNode) {
125
- return true;
126
- }
127
- }) || null;
122
+ var ruleName = _ruleNames.REFERENCE_RULE_NAME, referenceNode = this.getNodeByRuleName(ruleName);
128
123
  return referenceNode;
129
124
  }
130
125
  }
@@ -132,11 +127,11 @@ var StepNode = /*#__PURE__*/ function(NonTerminalNode) {
132
127
  {
133
128
  key: "fromRuleNameChildNodesOpacityAndPrecedence",
134
129
  value: function fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) {
135
- return _occamparsers.NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(StepNode, ruleName, childNodes, opacity, precedence);
130
+ return _nonTerminal.default.fromRuleNameChildNodesOpacityAndPrecedence(StepNode, ruleName, childNodes, opacity, precedence);
136
131
  }
137
132
  }
138
133
  ]);
139
134
  return StepNode;
140
- }(_occamparsers.NonTerminalNode);
135
+ }(_nonTerminal.default);
141
136
 
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL3N0ZXAuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IE5vblRlcm1pbmFsTm9kZSB9IGZyb20gXCJvY2NhbS1wYXJzZXJzXCI7XG5cbmltcG9ydCB7IGlzTm9kZVN0YXRlbWVudE5vZGUsIGlzTm9kZVJlZmVyZW5jZU5vZGUgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL25vZGVcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3RlcE5vZGUgZXh0ZW5kcyBOb25UZXJtaW5hbE5vZGUge1xuICBpc1N0ZXBOb2RlKCkge1xuICAgIGNvbnN0IHN0ZXBOb2RlID0gdHJ1ZTtcblxuICAgIHJldHVybiBzdGVwTm9kZTtcbiAgfVxuXG4gIGlzU3VicHJvb2ZOb2RlKCkge1xuICAgIGNvbnN0IHN1YnByb29mTm9kZSA9IGZhbHNlO1xuXG4gICAgcmV0dXJuIHN1YnByb29mTm9kZTtcbiAgfVxuXG4gIGdldFN0YXRlbWVudE5vZGUoKSB7XG4gICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IHRoaXMuZmluZENoaWxkTm9kZSgoY2hpbGROb2RlKSA9PiB7XG4gICAgICBjb25zdCBjaGlsZE5vZGVTdGF0ZW1lbnROb2RlID0gaXNOb2RlU3RhdGVtZW50Tm9kZShjaGlsZE5vZGUpO1xuXG4gICAgICBpZiAoY2hpbGROb2RlU3RhdGVtZW50Tm9kZSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIHN0YXRlbWVudE5vZGU7XG4gIH1cblxuICBnZXRSZWZlcmVuY2VOb2RlKCkge1xuICAgIGNvbnN0IHJlZmVyZW5jZU5vZGUgPSB0aGlzLmZpbmRDaGlsZE5vZGUoKGNoaWxkTm9kZSkgPT4ge1xuICAgICAgY29uc3QgY2hpbGROb2RlUmVmZXJlbmNlTm9kZSA9IGlzTm9kZVJlZmVyZW5jZU5vZGUoY2hpbGROb2RlKTtcblxuICAgICAgaWYgKGNoaWxkTm9kZVJlZmVyZW5jZU5vZGUpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSkgfHwgbnVsbDtcblxuICAgIHJldHVybiByZWZlcmVuY2VOb2RlO1xuICB9XG5cbiAgc3RhdGljIGZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSwgcHJlY2VkZW5jZSkgeyByZXR1cm4gTm9uVGVybWluYWxOb2RlLmZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShTdGVwTm9kZSwgcnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpOyB9XG59XG4iXSwibmFtZXMiOlsiU3RlcE5vZGUiLCJpc1N0ZXBOb2RlIiwic3RlcE5vZGUiLCJpc1N1YnByb29mTm9kZSIsInN1YnByb29mTm9kZSIsImdldFN0YXRlbWVudE5vZGUiLCJzdGF0ZW1lbnROb2RlIiwiZmluZENoaWxkTm9kZSIsImNoaWxkTm9kZSIsImNoaWxkTm9kZVN0YXRlbWVudE5vZGUiLCJpc05vZGVTdGF0ZW1lbnROb2RlIiwiZ2V0UmVmZXJlbmNlTm9kZSIsInJlZmVyZW5jZU5vZGUiLCJjaGlsZE5vZGVSZWZlcmVuY2VOb2RlIiwiaXNOb2RlUmVmZXJlbmNlTm9kZSIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZSIsInJ1bGVOYW1lIiwiY2hpbGROb2RlcyIsIm9wYWNpdHkiLCJwcmVjZWRlbmNlIiwiTm9uVGVybWluYWxOb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQU1xQkE7Ozs0QkFKVztvQkFFeUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTFDLElBQUEsQUFBTUEseUJBQU47Y0FBTUE7YUFBQUE7Z0NBQUFBO1FBQU4sT0FBQSxrQkFBTUE7O2tCQUFBQTs7WUFDbkJDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyxXQUFXO2dCQUVqQixPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQU1DLGVBQWU7Z0JBRXJCLE9BQU9BO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsZ0JBQWdCLElBQUksQ0FBQ0MsYUFBYSxDQUFDLFNBQUNDO29CQUN4QyxJQUFNQyx5QkFBeUJDLElBQUFBLHlCQUFtQixFQUFDRjtvQkFFbkQsSUFBSUMsd0JBQXdCO3dCQUMxQixPQUFPO29CQUNUO2dCQUNGLE1BQU07Z0JBRU4sT0FBT0g7WUFDVDs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyxnQkFBZ0IsSUFBSSxDQUFDTCxhQUFhLENBQUMsU0FBQ0M7b0JBQ3hDLElBQU1LLHlCQUF5QkMsSUFBQUEseUJBQW1CLEVBQUNOO29CQUVuRCxJQUFJSyx3QkFBd0I7d0JBQzFCLE9BQU87b0JBQ1Q7Z0JBQ0YsTUFBTTtnQkFFTixPQUFPRDtZQUNUOzs7O1lBRU9HLEtBQUFBO21CQUFQLFNBQU9BLDJDQUEyQ0MsUUFBUSxFQUFFQyxVQUFVLEVBQUVDLE9BQU8sRUFBRUMsVUFBVTtnQkFBSSxPQUFPQyw2QkFBZSxDQUFDTCwwQ0FBMEMsQ0FyQzdJZixVQXFDd0pnQixVQUFVQyxZQUFZQyxTQUFTQztZQUFhOzs7V0FyQ3BNbkI7RUFBaUJvQiw2QkFBZSJ9
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL3N0ZXAuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBOb25UZXJtaW5hbE5vZGUgZnJvbSBcIi4uL25vZGUvbm9uVGVybWluYWxcIjtcblxuaW1wb3J0IHsgUkVGRVJFTkNFX1JVTEVfTkFNRSwgU1RBVEVNRU5UX1JVTEVfTkFNRSB9IGZyb20gXCIuLi9ydWxlTmFtZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3RlcE5vZGUgZXh0ZW5kcyBOb25UZXJtaW5hbE5vZGUge1xuICBpc1N0ZXBOb2RlKCkge1xuICAgIGNvbnN0IHN0ZXBOb2RlID0gdHJ1ZTtcblxuICAgIHJldHVybiBzdGVwTm9kZTtcbiAgfVxuXG4gIGlzU3VicHJvb2ZOb2RlKCkge1xuICAgIGNvbnN0IHN1YnByb29mTm9kZSA9IGZhbHNlO1xuXG4gICAgcmV0dXJuIHN1YnByb29mTm9kZTtcbiAgfVxuXG4gIGdldFN0YXRlbWVudE5vZGUoKSB7XG4gICAgY29uc3QgcnVsZU5hbWUgPSBTVEFURU1FTlRfUlVMRV9OQU1FLFxuICAgICAgICAgIHN0YXRlbWVudE5vZGUgPSB0aGlzLmdldE5vZGVCeVJ1bGVOYW1lKHJ1bGVOYW1lKTtcblxuICAgIHJldHVybiBzdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgZ2V0UmVmZXJlbmNlTm9kZSgpIHtcbiAgICBjb25zdCBydWxlTmFtZSA9IFJFRkVSRU5DRV9SVUxFX05BTUUsXG4gICAgICAgICAgcmVmZXJlbmNlTm9kZSA9IHRoaXMuZ2V0Tm9kZUJ5UnVsZU5hbWUocnVsZU5hbWUpO1xuXG4gICAgcmV0dXJuIHJlZmVyZW5jZU5vZGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlKHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBwcmVjZWRlbmNlKSB7IHJldHVybiBOb25UZXJtaW5hbE5vZGUuZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlKFN0ZXBOb2RlLCBydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSwgcHJlY2VkZW5jZSk7IH1cbn1cbiJdLCJuYW1lcyI6WyJTdGVwTm9kZSIsImlzU3RlcE5vZGUiLCJzdGVwTm9kZSIsImlzU3VicHJvb2ZOb2RlIiwic3VicHJvb2ZOb2RlIiwiZ2V0U3RhdGVtZW50Tm9kZSIsInJ1bGVOYW1lIiwiU1RBVEVNRU5UX1JVTEVfTkFNRSIsInN0YXRlbWVudE5vZGUiLCJnZXROb2RlQnlSdWxlTmFtZSIsImdldFJlZmVyZW5jZU5vZGUiLCJSRUZFUkVOQ0VfUlVMRV9OQU1FIiwicmVmZXJlbmNlTm9kZSIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZSIsImNoaWxkTm9kZXMiLCJvcGFjaXR5IiwicHJlY2VkZW5jZSIsIk5vblRlcm1pbmFsTm9kZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFNcUJBOzs7a0VBSk87eUJBRTZCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTFDLElBQUEsQUFBTUEseUJBQU47Y0FBTUE7YUFBQUE7Z0NBQUFBO1FBQU4sT0FBQSxrQkFBTUE7O2tCQUFBQTs7WUFDbkJDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyxXQUFXO2dCQUVqQixPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQU1DLGVBQWU7Z0JBRXJCLE9BQU9BO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsV0FBV0MsOEJBQW1CLEVBQzlCQyxnQkFBZ0IsSUFBSSxDQUFDQyxpQkFBaUIsQ0FBQ0g7Z0JBRTdDLE9BQU9FO1lBQ1Q7OztZQUVBRSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUosV0FBV0ssOEJBQW1CLEVBQzlCQyxnQkFBZ0IsSUFBSSxDQUFDSCxpQkFBaUIsQ0FBQ0g7Z0JBRTdDLE9BQU9NO1lBQ1Q7Ozs7WUFFT0MsS0FBQUE7bUJBQVAsU0FBT0EsMkNBQTJDUCxRQUFRLEVBQUVRLFVBQVUsRUFBRUMsT0FBTyxFQUFFQyxVQUFVO2dCQUFJLE9BQU9DLG9CQUFlLENBQUNKLDBDQUEwQyxDQTNCN0liLFVBMkJ3Sk0sVUFBVVEsWUFBWUMsU0FBU0M7WUFBYTs7O1dBM0JwTWhCO0VBQWlCaUIsb0JBQWUifQ==
@@ -8,8 +8,16 @@ Object.defineProperty(exports, "default", {
8
8
  return SubDerivationNode;
9
9
  }
10
10
  });
11
- var _occamparsers = require("occam-parsers");
12
- var _node = require("../utilities/node");
11
+ var _nonTerminal = /*#__PURE__*/ _interop_require_default(require("../node/nonTerminal"));
12
+ var _ruleNames = require("../ruleNames");
13
+ function _array_like_to_array(arr, len) {
14
+ if (len == null || len > arr.length) len = arr.length;
15
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
16
+ return arr2;
17
+ }
18
+ function _array_without_holes(arr) {
19
+ if (Array.isArray(arr)) return _array_like_to_array(arr);
20
+ }
13
21
  function _assert_this_initialized(self) {
14
22
  if (self === void 0) {
15
23
  throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
@@ -58,6 +66,17 @@ function _inherits(subClass, superClass) {
58
66
  });
59
67
  if (superClass) _set_prototype_of(subClass, superClass);
60
68
  }
69
+ function _interop_require_default(obj) {
70
+ return obj && obj.__esModule ? obj : {
71
+ default: obj
72
+ };
73
+ }
74
+ function _iterable_to_array(iter) {
75
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
76
+ }
77
+ function _non_iterable_spread() {
78
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
79
+ }
61
80
  function _possible_constructor_return(self, call) {
62
81
  if (call && (_type_of(call) === "object" || typeof call === "function")) {
63
82
  return call;
@@ -71,10 +90,21 @@ function _set_prototype_of(o, p) {
71
90
  };
72
91
  return _set_prototype_of(o, p);
73
92
  }
93
+ function _to_consumable_array(arr) {
94
+ return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
95
+ }
74
96
  function _type_of(obj) {
75
97
  "@swc/helpers - typeof";
76
98
  return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
77
99
  }
100
+ function _unsupported_iterable_to_array(o, minLen) {
101
+ if (!o) return;
102
+ if (typeof o === "string") return _array_like_to_array(o, minLen);
103
+ var n = Object.prototype.toString.call(o).slice(8, -1);
104
+ if (n === "Object" && o.constructor) n = o.constructor.name;
105
+ if (n === "Map" || n === "Set") return Array.from(n);
106
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
107
+ }
78
108
  function _is_native_reflect_construct() {
79
109
  try {
80
110
  var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
@@ -90,15 +120,20 @@ var SubDerivationNode = /*#__PURE__*/ function(NonTerminalNode) {
90
120
  return _call_super(this, SubDerivationNode, arguments);
91
121
  }
92
122
  _create_class(SubDerivationNode, [
123
+ {
124
+ key: "getLastStepNode",
125
+ value: function getLastStepNode() {
126
+ var ruleName = _ruleNames.STEP_RULE_NAME, lastStepNode = this.getLastNodeByRuleName(ruleName);
127
+ return lastStepNode;
128
+ }
129
+ },
93
130
  {
94
131
  key: "getStepOrSubproofNodes",
95
132
  value: function getStepOrSubproofNodes() {
96
- var stepOrSubproofNodes = this.filterChildNode(function(childNode) {
97
- var childNodeStepNode = (0, _node.isNodeStepNode)(childNode), childNodeSubproofNode = (0, _node.isNodeSubproofNode)(childNode);
98
- if (childNodeStepNode || childNodeSubproofNode) {
99
- return true;
100
- }
101
- });
133
+ var ruleNames = [
134
+ _ruleNames.STEP_RULE_NAME,
135
+ _ruleNames.SUBPROOF_RULE_NAME
136
+ ], stepOrSubproofNodes = this.getNodesByRuleName.apply(this, _to_consumable_array(ruleNames));
102
137
  return stepOrSubproofNodes;
103
138
  }
104
139
  }
@@ -106,11 +141,11 @@ var SubDerivationNode = /*#__PURE__*/ function(NonTerminalNode) {
106
141
  {
107
142
  key: "fromRuleNameChildNodesOpacityAndPrecedence",
108
143
  value: function fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) {
109
- return _occamparsers.NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(SubDerivationNode, ruleName, childNodes, opacity, precedence);
144
+ return _nonTerminal.default.fromRuleNameChildNodesOpacityAndPrecedence(SubDerivationNode, ruleName, childNodes, opacity, precedence);
110
145
  }
111
146
  }
112
147
  ]);
113
148
  return SubDerivationNode;
114
- }(_occamparsers.NonTerminalNode);
149
+ }(_nonTerminal.default);
115
150
 
116
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL3N1YkRlcml2YXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IE5vblRlcm1pbmFsTm9kZSB9IGZyb20gXCJvY2NhbS1wYXJzZXJzXCI7XG5cbmltcG9ydCB7IGlzTm9kZVN0ZXBOb2RlLCBpc05vZGVTdWJwcm9vZk5vZGUgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL25vZGVcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3ViRGVyaXZhdGlvbk5vZGUgZXh0ZW5kcyBOb25UZXJtaW5hbE5vZGUge1xuICBnZXRTdGVwT3JTdWJwcm9vZk5vZGVzKCkge1xuICAgIGNvbnN0IHN0ZXBPclN1YnByb29mTm9kZXMgPSB0aGlzLmZpbHRlckNoaWxkTm9kZSgoY2hpbGROb2RlKSA9PiB7XG4gICAgICBjb25zdCBjaGlsZE5vZGVTdGVwTm9kZSA9IGlzTm9kZVN0ZXBOb2RlKGNoaWxkTm9kZSksXG4gICAgICAgICAgICBjaGlsZE5vZGVTdWJwcm9vZk5vZGUgPSBpc05vZGVTdWJwcm9vZk5vZGUoY2hpbGROb2RlKTtcblxuICAgICAgaWYgKGNoaWxkTm9kZVN0ZXBOb2RlIHx8IGNoaWxkTm9kZVN1YnByb29mTm9kZSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiBzdGVwT3JTdWJwcm9vZk5vZGVzO1xuICB9XG5cbiAgc3RhdGljIGZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSwgcHJlY2VkZW5jZSkgeyByZXR1cm4gTm9uVGVybWluYWxOb2RlLmZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShTdWJEZXJpdmF0aW9uTm9kZSwgcnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpOyB9XG59XG4iXSwibmFtZXMiOlsiU3ViRGVyaXZhdGlvbk5vZGUiLCJnZXRTdGVwT3JTdWJwcm9vZk5vZGVzIiwic3RlcE9yU3VicHJvb2ZOb2RlcyIsImZpbHRlckNoaWxkTm9kZSIsImNoaWxkTm9kZSIsImNoaWxkTm9kZVN0ZXBOb2RlIiwiaXNOb2RlU3RlcE5vZGUiLCJjaGlsZE5vZGVTdWJwcm9vZk5vZGUiLCJpc05vZGVTdWJwcm9vZk5vZGUiLCJmcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UiLCJydWxlTmFtZSIsImNoaWxkTm9kZXMiLCJvcGFjaXR5IiwicHJlY2VkZW5jZSIsIk5vblRlcm1pbmFsTm9kZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFNcUJBOzs7NEJBSlc7b0JBRW1COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVwQyxJQUFBLEFBQU1BLGtDQUFOO2NBQU1BO2FBQUFBO2dDQUFBQTtRQUFOLE9BQUEsa0JBQU1BOztrQkFBQUE7O1lBQ25CQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsc0JBQXNCLElBQUksQ0FBQ0MsZUFBZSxDQUFDLFNBQUNDO29CQUNoRCxJQUFNQyxvQkFBb0JDLElBQUFBLG9CQUFjLEVBQUNGLFlBQ25DRyx3QkFBd0JDLElBQUFBLHdCQUFrQixFQUFDSjtvQkFFakQsSUFBSUMscUJBQXFCRSx1QkFBdUI7d0JBQzlDLE9BQU87b0JBQ1Q7Z0JBQ0Y7Z0JBRUEsT0FBT0w7WUFDVDs7OztZQUVPTyxLQUFBQTttQkFBUCxTQUFPQSwyQ0FBMkNDLFFBQVEsRUFBRUMsVUFBVSxFQUFFQyxPQUFPLEVBQUVDLFVBQVU7Z0JBQUksT0FBT0MsNkJBQWUsQ0FBQ0wsMENBQTBDLENBZDdJVCxtQkFjaUtVLFVBQVVDLFlBQVlDLFNBQVNDO1lBQWE7OztXQWQ3TWI7RUFBMEJjLDZCQUFlIn0=
151
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL3N1YkRlcml2YXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBOb25UZXJtaW5hbE5vZGUgZnJvbSBcIi4uL25vZGUvbm9uVGVybWluYWxcIjtcblxuaW1wb3J0IHsgU1RFUF9SVUxFX05BTUUsIFNVQlBST09GX1JVTEVfTkFNRSB9IGZyb20gXCIuLi9ydWxlTmFtZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3ViRGVyaXZhdGlvbk5vZGUgZXh0ZW5kcyBOb25UZXJtaW5hbE5vZGUge1xuICBnZXRMYXN0U3RlcE5vZGUoKSB7XG4gICAgY29uc3QgcnVsZU5hbWUgPSBTVEVQX1JVTEVfTkFNRSxcbiAgICAgICAgICBsYXN0U3RlcE5vZGUgPSB0aGlzLmdldExhc3ROb2RlQnlSdWxlTmFtZShydWxlTmFtZSk7XG5cbiAgICByZXR1cm4gbGFzdFN0ZXBOb2RlO1xuICB9XG5cbiAgZ2V0U3RlcE9yU3VicHJvb2ZOb2RlcygpIHtcbiAgICBjb25zdCBydWxlTmFtZXMgPSBbXG4gICAgICAgICAgICBTVEVQX1JVTEVfTkFNRSxcbiAgICAgICAgICAgIFNVQlBST09GX1JVTEVfTkFNRSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHN0ZXBPclN1YnByb29mTm9kZXMgPSB0aGlzLmdldE5vZGVzQnlSdWxlTmFtZSguLi5ydWxlTmFtZXMpO1xuXG4gICAgcmV0dXJuIHN0ZXBPclN1YnByb29mTm9kZXM7XG4gIH1cblxuICBzdGF0aWMgZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlKHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBwcmVjZWRlbmNlKSB7IHJldHVybiBOb25UZXJtaW5hbE5vZGUuZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlKFN1YkRlcml2YXRpb25Ob2RlLCBydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSwgcHJlY2VkZW5jZSk7IH1cbn1cbiJdLCJuYW1lcyI6WyJTdWJEZXJpdmF0aW9uTm9kZSIsImdldExhc3RTdGVwTm9kZSIsInJ1bGVOYW1lIiwiU1RFUF9SVUxFX05BTUUiLCJsYXN0U3RlcE5vZGUiLCJnZXRMYXN0Tm9kZUJ5UnVsZU5hbWUiLCJnZXRTdGVwT3JTdWJwcm9vZk5vZGVzIiwicnVsZU5hbWVzIiwiU1VCUFJPT0ZfUlVMRV9OQU1FIiwic3RlcE9yU3VicHJvb2ZOb2RlcyIsImdldE5vZGVzQnlSdWxlTmFtZSIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZSIsImNoaWxkTm9kZXMiLCJvcGFjaXR5IiwicHJlY2VkZW5jZSIsIk5vblRlcm1pbmFsTm9kZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFNcUJBOzs7a0VBSk87eUJBRXVCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVwQyxJQUFBLEFBQU1BLGtDQUFOO2NBQU1BO2FBQUFBO2dDQUFBQTtRQUFOLE9BQUEsa0JBQU1BOztrQkFBQUE7O1lBQ25CQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsV0FBV0MseUJBQWMsRUFDekJDLGVBQWUsSUFBSSxDQUFDQyxxQkFBcUIsQ0FBQ0g7Z0JBRWhELE9BQU9FO1lBQ1Q7OztZQUVBRSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsWUFBWTtvQkFDVkoseUJBQWM7b0JBQ2RLLDZCQUFrQjtpQkFDbkIsRUFDREMsc0JBQXNCLElBQUksQ0FBQ0Msa0JBQWtCLE9BQXZCLElBQUksRUFBb0IscUJBQUdIO2dCQUV2RCxPQUFPRTtZQUNUOzs7O1lBRU9FLEtBQUFBO21CQUFQLFNBQU9BLDJDQUEyQ1QsUUFBUSxFQUFFVSxVQUFVLEVBQUVDLE9BQU8sRUFBRUMsVUFBVTtnQkFBSSxPQUFPQyxvQkFBZSxDQUFDSiwwQ0FBMEMsQ0FsQjdJWCxtQkFrQmlLRSxVQUFVVSxZQUFZQyxTQUFTQztZQUFhOzs7V0FsQjdNZDtFQUEwQmUsb0JBQWUifQ==
@@ -8,8 +8,8 @@ Object.defineProperty(exports, "default", {
8
8
  return SubproofNode;
9
9
  }
10
10
  });
11
- var _occamparsers = require("occam-parsers");
12
- var _node = require("../utilities/node");
11
+ var _nonTerminal = /*#__PURE__*/ _interop_require_default(require("../node/nonTerminal"));
12
+ var _ruleNames = require("../ruleNames");
13
13
  function _assert_this_initialized(self) {
14
14
  if (self === void 0) {
15
15
  throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
@@ -58,6 +58,11 @@ function _inherits(subClass, superClass) {
58
58
  });
59
59
  if (superClass) _set_prototype_of(subClass, superClass);
60
60
  }
61
+ function _interop_require_default(obj) {
62
+ return obj && obj.__esModule ? obj : {
63
+ default: obj
64
+ };
65
+ }
61
66
  function _possible_constructor_return(self, call) {
62
67
  if (call && (_type_of(call) === "object" || typeof call === "function")) {
63
68
  return call;
@@ -104,27 +109,24 @@ var SubproofNode = /*#__PURE__*/ function(NonTerminalNode) {
104
109
  return subproofNode;
105
110
  }
106
111
  },
112
+ {
113
+ key: "getLastStepNode",
114
+ value: function getLastStepNode() {
115
+ var subDerivationNode = this.getSubDerivationNode(), lastStepNode = subDerivationNode.getLastStepNode();
116
+ return lastStepNode;
117
+ }
118
+ },
107
119
  {
108
120
  key: "getSubDerivationNode",
109
121
  value: function getSubDerivationNode() {
110
- var subDerivationNode = this.findChildNode(function(childNode) {
111
- var childNodeSubDerivationNode = (0, _node.isNodeSubDerivationNode)(childNode);
112
- if (childNodeSubDerivationNode) {
113
- return true;
114
- }
115
- }) || null;
122
+ var ruleName = _ruleNames.SUB_DERIVATION_RULE_NAME, subDerivationNode = this.getNodeByRuleName(ruleName);
116
123
  return subDerivationNode;
117
124
  }
118
125
  },
119
126
  {
120
127
  key: "getSuppositionNodes",
121
128
  value: function getSuppositionNodes() {
122
- var suppositionNodes = this.filterChildNode(function(childNode) {
123
- var childNodeSuppositionNode = (0, _node.isNodeSuppositionNode)(childNode);
124
- if (childNodeSuppositionNode) {
125
- return true;
126
- }
127
- });
129
+ var ruleName = _ruleNames.SUPPOSITION_RULE_NAME, suppositionNodes = this.getNodesByRuleName(ruleName);
128
130
  return suppositionNodes;
129
131
  }
130
132
  }
@@ -132,11 +134,11 @@ var SubproofNode = /*#__PURE__*/ function(NonTerminalNode) {
132
134
  {
133
135
  key: "fromRuleNameChildNodesOpacityAndPrecedence",
134
136
  value: function fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) {
135
- return _occamparsers.NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(SubproofNode, ruleName, childNodes, opacity, precedence);
137
+ return _nonTerminal.default.fromRuleNameChildNodesOpacityAndPrecedence(SubproofNode, ruleName, childNodes, opacity, precedence);
136
138
  }
137
139
  }
138
140
  ]);
139
141
  return SubproofNode;
140
- }(_occamparsers.NonTerminalNode);
142
+ }(_nonTerminal.default);
141
143
 
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL3N1YnByb29mLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBOb25UZXJtaW5hbE5vZGUgfSBmcm9tIFwib2NjYW0tcGFyc2Vyc1wiO1xuXG5pbXBvcnQgeyBpc05vZGVTdXBwb3NpdGlvbk5vZGUsIGlzTm9kZVN1YkRlcml2YXRpb25Ob2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9ub2RlXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFN1YnByb29mTm9kZSBleHRlbmRzIE5vblRlcm1pbmFsTm9kZSB7XG4gIGlzU3RlcE5vZGUoKSB7XG4gICAgY29uc3Qgc3RlcE5vZGUgPSBmYWxzZTtcblxuICAgIHJldHVybiBzdGVwTm9kZTtcbiAgfVxuXG4gIGlzU3VicHJvb2ZOb2RlKCkge1xuICAgIGNvbnN0IHN1YnByb29mTm9kZSA9IHRydWU7XG5cbiAgICByZXR1cm4gc3VicHJvb2ZOb2RlO1xuICB9XG5cbiAgZ2V0U3ViRGVyaXZhdGlvbk5vZGUoKSB7XG4gICAgY29uc3Qgc3ViRGVyaXZhdGlvbk5vZGUgPSB0aGlzLmZpbmRDaGlsZE5vZGUoKGNoaWxkTm9kZSkgPT4ge1xuICAgICAgY29uc3QgY2hpbGROb2RlU3ViRGVyaXZhdGlvbk5vZGUgPSBpc05vZGVTdWJEZXJpdmF0aW9uTm9kZShjaGlsZE5vZGUpO1xuXG4gICAgICBpZiAoY2hpbGROb2RlU3ViRGVyaXZhdGlvbk5vZGUpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSkgfHwgbnVsbDtcblxuICAgIHJldHVybiBzdWJEZXJpdmF0aW9uTm9kZTtcbiAgfVxuXG4gIGdldFN1cHBvc2l0aW9uTm9kZXMoKSB7XG4gICAgY29uc3Qgc3VwcG9zaXRpb25Ob2RlcyA9IHRoaXMuZmlsdGVyQ2hpbGROb2RlKChjaGlsZE5vZGUpID0+IHtcbiAgICAgIGNvbnN0IGNoaWxkTm9kZVN1cHBvc2l0aW9uTm9kZSA9IGlzTm9kZVN1cHBvc2l0aW9uTm9kZShjaGlsZE5vZGUpO1xuXG4gICAgICBpZiAoY2hpbGROb2RlU3VwcG9zaXRpb25Ob2RlKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHN1cHBvc2l0aW9uTm9kZXM7XG4gIH1cblxuICBzdGF0aWMgZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlKHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBwcmVjZWRlbmNlKSB7IHJldHVybiBOb25UZXJtaW5hbE5vZGUuZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlKFN1YnByb29mTm9kZSwgcnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpOyB9XG59XG4iXSwibmFtZXMiOlsiU3VicHJvb2ZOb2RlIiwiaXNTdGVwTm9kZSIsInN0ZXBOb2RlIiwiaXNTdWJwcm9vZk5vZGUiLCJzdWJwcm9vZk5vZGUiLCJnZXRTdWJEZXJpdmF0aW9uTm9kZSIsInN1YkRlcml2YXRpb25Ob2RlIiwiZmluZENoaWxkTm9kZSIsImNoaWxkTm9kZSIsImNoaWxkTm9kZVN1YkRlcml2YXRpb25Ob2RlIiwiaXNOb2RlU3ViRGVyaXZhdGlvbk5vZGUiLCJnZXRTdXBwb3NpdGlvbk5vZGVzIiwic3VwcG9zaXRpb25Ob2RlcyIsImZpbHRlckNoaWxkTm9kZSIsImNoaWxkTm9kZVN1cHBvc2l0aW9uTm9kZSIsImlzTm9kZVN1cHBvc2l0aW9uTm9kZSIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZSIsInJ1bGVOYW1lIiwiY2hpbGROb2RlcyIsIm9wYWNpdHkiLCJwcmVjZWRlbmNlIiwiTm9uVGVybWluYWxOb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQU1xQkE7Ozs0QkFKVztvQkFFK0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRWhELElBQUEsQUFBTUEsNkJBQU47Y0FBTUE7YUFBQUE7Z0NBQUFBO1FBQU4sT0FBQSxrQkFBTUE7O2tCQUFBQTs7WUFDbkJDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyxXQUFXO2dCQUVqQixPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQU1DLGVBQWU7Z0JBRXJCLE9BQU9BO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsb0JBQW9CLElBQUksQ0FBQ0MsYUFBYSxDQUFDLFNBQUNDO29CQUM1QyxJQUFNQyw2QkFBNkJDLElBQUFBLDZCQUF1QixFQUFDRjtvQkFFM0QsSUFBSUMsNEJBQTRCO3dCQUM5QixPQUFPO29CQUNUO2dCQUNGLE1BQU07Z0JBRU4sT0FBT0g7WUFDVDs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyxtQkFBbUIsSUFBSSxDQUFDQyxlQUFlLENBQUMsU0FBQ0w7b0JBQzdDLElBQU1NLDJCQUEyQkMsSUFBQUEsMkJBQXFCLEVBQUNQO29CQUV2RCxJQUFJTSwwQkFBMEI7d0JBQzVCLE9BQU87b0JBQ1Q7Z0JBQ0Y7Z0JBRUEsT0FBT0Y7WUFDVDs7OztZQUVPSSxLQUFBQTttQkFBUCxTQUFPQSwyQ0FBMkNDLFFBQVEsRUFBRUMsVUFBVSxFQUFFQyxPQUFPLEVBQUVDLFVBQVU7Z0JBQUksT0FBT0MsNkJBQWUsQ0FBQ0wsMENBQTBDLENBckM3SWhCLGNBcUM0SmlCLFVBQVVDLFlBQVlDLFNBQVNDO1lBQWE7OztXQXJDeE1wQjtFQUFxQnFCLDZCQUFlIn0=
144
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL3N1YnByb29mLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTm9uVGVybWluYWxOb2RlIGZyb20gXCIuLi9ub2RlL25vblRlcm1pbmFsXCI7XG5cbmltcG9ydCB7IFNVUFBPU0lUSU9OX1JVTEVfTkFNRSwgU1VCX0RFUklWQVRJT05fUlVMRV9OQU1FIH0gZnJvbSBcIi4uL3J1bGVOYW1lc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTdWJwcm9vZk5vZGUgZXh0ZW5kcyBOb25UZXJtaW5hbE5vZGUge1xuICBpc1N0ZXBOb2RlKCkge1xuICAgIGNvbnN0IHN0ZXBOb2RlID0gZmFsc2U7XG5cbiAgICByZXR1cm4gc3RlcE5vZGU7XG4gIH1cblxuICBpc1N1YnByb29mTm9kZSgpIHtcbiAgICBjb25zdCBzdWJwcm9vZk5vZGUgPSB0cnVlO1xuXG4gICAgcmV0dXJuIHN1YnByb29mTm9kZTtcbiAgfVxuXG4gIGdldExhc3RTdGVwTm9kZSgpIHtcbiAgICBjb25zdCBzdWJEZXJpdmF0aW9uTm9kZSA9IHRoaXMuZ2V0U3ViRGVyaXZhdGlvbk5vZGUoKSxcbiAgICAgICAgICBsYXN0U3RlcE5vZGUgPSBzdWJEZXJpdmF0aW9uTm9kZS5nZXRMYXN0U3RlcE5vZGUoKTtcblxuICAgIHJldHVybiBsYXN0U3RlcE5vZGU7XG4gIH1cblxuICBnZXRTdWJEZXJpdmF0aW9uTm9kZSgpIHtcbiAgICBjb25zdCBydWxlTmFtZSA9IFNVQl9ERVJJVkFUSU9OX1JVTEVfTkFNRSxcbiAgICAgICAgICBzdWJEZXJpdmF0aW9uTm9kZSA9IHRoaXMuZ2V0Tm9kZUJ5UnVsZU5hbWUocnVsZU5hbWUpO1xuXG4gICAgcmV0dXJuIHN1YkRlcml2YXRpb25Ob2RlO1xuICB9XG5cbiAgZ2V0U3VwcG9zaXRpb25Ob2RlcygpIHtcbiAgICBjb25zdCBydWxlTmFtZSA9IFNVUFBPU0lUSU9OX1JVTEVfTkFNRSxcbiAgICAgICAgICBzdXBwb3NpdGlvbk5vZGVzID0gdGhpcy5nZXROb2Rlc0J5UnVsZU5hbWUocnVsZU5hbWUpO1xuXG4gICAgcmV0dXJuIHN1cHBvc2l0aW9uTm9kZXM7XG4gIH1cblxuICBzdGF0aWMgZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlKHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBwcmVjZWRlbmNlKSB7IHJldHVybiBOb25UZXJtaW5hbE5vZGUuZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlKFN1YnByb29mTm9kZSwgcnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpOyB9XG59XG4iXSwibmFtZXMiOlsiU3VicHJvb2ZOb2RlIiwiaXNTdGVwTm9kZSIsInN0ZXBOb2RlIiwiaXNTdWJwcm9vZk5vZGUiLCJzdWJwcm9vZk5vZGUiLCJnZXRMYXN0U3RlcE5vZGUiLCJzdWJEZXJpdmF0aW9uTm9kZSIsImdldFN1YkRlcml2YXRpb25Ob2RlIiwibGFzdFN0ZXBOb2RlIiwicnVsZU5hbWUiLCJTVUJfREVSSVZBVElPTl9SVUxFX05BTUUiLCJnZXROb2RlQnlSdWxlTmFtZSIsImdldFN1cHBvc2l0aW9uTm9kZXMiLCJTVVBQT1NJVElPTl9SVUxFX05BTUUiLCJzdXBwb3NpdGlvbk5vZGVzIiwiZ2V0Tm9kZXNCeVJ1bGVOYW1lIiwiZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlIiwiY2hpbGROb2RlcyIsIm9wYWNpdHkiLCJwcmVjZWRlbmNlIiwiTm9uVGVybWluYWxOb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQU1xQkE7OztrRUFKTzt5QkFFb0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFakQsSUFBQSxBQUFNQSw2QkFBTjtjQUFNQTthQUFBQTtnQ0FBQUE7UUFBTixPQUFBLGtCQUFNQTs7a0JBQUFBOztZQUNuQkMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQU1DLFdBQVc7Z0JBRWpCLE9BQU9BO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsZUFBZTtnQkFFckIsT0FBT0E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyxvQkFBb0IsSUFBSSxDQUFDQyxvQkFBb0IsSUFDN0NDLGVBQWVGLGtCQUFrQkQsZUFBZTtnQkFFdEQsT0FBT0c7WUFDVDs7O1lBRUFELEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNRSxXQUFXQyxtQ0FBd0IsRUFDbkNKLG9CQUFvQixJQUFJLENBQUNLLGlCQUFpQixDQUFDRjtnQkFFakQsT0FBT0g7WUFDVDs7O1lBRUFNLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNSCxXQUFXSSxnQ0FBcUIsRUFDaENDLG1CQUFtQixJQUFJLENBQUNDLGtCQUFrQixDQUFDTjtnQkFFakQsT0FBT0s7WUFDVDs7OztZQUVPRSxLQUFBQTttQkFBUCxTQUFPQSwyQ0FBMkNQLFFBQVEsRUFBRVEsVUFBVSxFQUFFQyxPQUFPLEVBQUVDLFVBQVU7Z0JBQUksT0FBT0Msb0JBQWUsQ0FBQ0osMENBQTBDLENBbEM3SWhCLGNBa0M0SlMsVUFBVVEsWUFBWUMsU0FBU0M7WUFBYTs7O1dBbEN4TW5CO0VBQXFCb0Isb0JBQWUifQ==