occam-verify-cli 0.0.977 → 0.0.978

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.
@@ -80,7 +80,9 @@ var Declaration = /*#__PURE__*/ function() {
80
80
  {
81
81
  key: "fromMetavariableNodeAndStatementNode",
82
82
  value: function fromMetavariableNodeAndStatementNode(metavariableNode, statementNode) {
83
- statementNode = (0, _brackets.stripBracketsFromStatement)(statementNode); ///
83
+ if (statementNode !== null) {
84
+ statementNode = (0, _brackets.stripBracketsFromStatement)(statementNode); ///
85
+ }
84
86
  var declaration = new Declaration(metavariableNode, statementNode);
85
87
  return declaration;
86
88
  }
@@ -89,4 +91,4 @@ var Declaration = /*#__PURE__*/ function() {
89
91
  return Declaration;
90
92
  }();
91
93
 
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZWNsYXJhdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgc3RyaXBCcmFja2V0c0Zyb21TdGF0ZW1lbnQgfSBmcm9tIFwiLi91dGlsaXRpZXMvYnJhY2tldHNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRGVjbGFyYXRpb24ge1xuICBjb25zdHJ1Y3RvcihtZXRhdmFyaWFibGVOb2RlLCBzdGF0ZW1lbnROb2RlKSB7XG4gICAgdGhpcy5tZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZTtcbiAgICB0aGlzLnN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlTm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhdmFyaWFibGVOb2RlO1xuICB9XG5cbiAgZ2V0U3RhdGVtZW50Tm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgdW5pZnlTdWJzdGl0dXRpb24oc3Vic3RpdHV0aW9uKSB7XG4gICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IHN1YnN0aXR1dGlvbi5nZXRTdGF0ZW1lbnROb2RlKCksXG4gICAgICAgICAgbWV0YXZhcmlhYmxlTm9kZSA9IHN1YnN0aXR1dGlvbi5nZXRNZXRhdmFyaWFibGVOb2RlKCksXG4gICAgICAgICAgc3RhdGVtZW50VW5pZmllZCA9IHRoaXMudW5pZnlTdGF0ZW1lbnQoc3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgbWV0YXZhcmlhYmxlVW5pZmllZCA9IHRoaXMudW5pZnlNZXRhdmFyaWFibGUobWV0YXZhcmlhYmxlTm9kZSksXG4gICAgICAgICAgc3Vic3RpdHV0aW9uVW5pZmllZCA9IChtZXRhdmFyaWFibGVVbmlmaWVkICYmIHN0YXRlbWVudFVuaWZpZWQpO1xuXG4gICAgcmV0dXJuIHN1YnN0aXR1dGlvblVuaWZpZWQ7XG4gIH1cblxuICB1bmlmeU1ldGF2YXJpYWJsZShtZXRhdmFyaWFibGVOb2RlKSB7XG4gICAgY29uc3QgbWV0YXZhcmlhYmxlTm9kZU1hdGNoZXMgPSB0aGlzLm1ldGF2YXJpYWJsZU5vZGUubWF0Y2gobWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgICByZXR1cm4gbWV0YXZhcmlhYmxlTm9kZU1hdGNoZXM7XG4gIH1cblxuICB1bmlmeVN0YXRlbWVudChzdGF0ZW1lbnROb2RlKSB7XG4gICAgc3RhdGVtZW50Tm9kZSA9IHN0cmlwQnJhY2tldHNGcm9tU3RhdGVtZW50KHN0YXRlbWVudE5vZGUpOyAvLy9cblxuICAgIGNvbnN0IHN0YXRlbWVudE5vZGVNYXRjaGVzID0gdGhpcy5zdGF0ZW1lbnROb2RlLm1hdGNoKHN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIHN0YXRlbWVudFVuaWZpZWQgPSBzdGF0ZW1lbnROb2RlTWF0Y2hlczsgIC8vL1xuXG4gICAgcmV0dXJuIHN0YXRlbWVudFVuaWZpZWQ7XG4gIH1cblxuICB1bmlmeU1ldGFMZW1tYU9yTWV0YXRoZW9yZW0obWV0YUxlbW1hTWV0YXRoZW9yZW0pIHtcbiAgICBjb25zdCBjb25zZXF1ZW50ID0gbWV0YUxlbW1hTWV0YXRoZW9yZW0uZ2V0Q29uc2VxdWVudCgpLFxuICAgICAgICAgIHN0YXRlbWVudE5vZGUgPSBjb25zZXF1ZW50LmdldFN0YXRlbWVudE5vZGUoKSxcbiAgICAgICAgICBzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IHRoaXMuc3RhdGVtZW50Tm9kZS5tYXRjaChzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICBtZXRhTGVtbWFPck1ldGFUaGVvcmVtVW5pZmllZCA9IHN0YXRlbWVudE5vZGVNYXRjaGVzOyAgLy8vXG5cbiAgICByZXR1cm4gbWV0YUxlbW1hT3JNZXRhVGhlb3JlbVVuaWZpZWQ7XG4gIH1cblxuICBzdGF0aWMgZnJvbU1ldGF2YXJpYWJsZU5vZGVBbmRTdGF0ZW1lbnROb2RlKG1ldGF2YXJpYWJsZU5vZGUsIHN0YXRlbWVudE5vZGUpIHtcbiAgICBzdGF0ZW1lbnROb2RlID0gc3RyaXBCcmFja2V0c0Zyb21TdGF0ZW1lbnQoc3RhdGVtZW50Tm9kZSk7IC8vL1xuXG4gICAgY29uc3QgZGVjbGFyYXRpb24gPSBuZXcgRGVjbGFyYXRpb24obWV0YXZhcmlhYmxlTm9kZSwgc3RhdGVtZW50Tm9kZSk7XG5cbiAgICByZXR1cm4gZGVjbGFyYXRpb247XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJEZWNsYXJhdGlvbiIsIm1ldGF2YXJpYWJsZU5vZGUiLCJzdGF0ZW1lbnROb2RlIiwiZ2V0TWV0YXZhcmlhYmxlTm9kZSIsImdldFN0YXRlbWVudE5vZGUiLCJ1bmlmeVN1YnN0aXR1dGlvbiIsInN1YnN0aXR1dGlvbiIsInN0YXRlbWVudFVuaWZpZWQiLCJ1bmlmeVN0YXRlbWVudCIsIm1ldGF2YXJpYWJsZVVuaWZpZWQiLCJ1bmlmeU1ldGF2YXJpYWJsZSIsInN1YnN0aXR1dGlvblVuaWZpZWQiLCJtZXRhdmFyaWFibGVOb2RlTWF0Y2hlcyIsIm1hdGNoIiwic3RyaXBCcmFja2V0c0Zyb21TdGF0ZW1lbnQiLCJzdGF0ZW1lbnROb2RlTWF0Y2hlcyIsInVuaWZ5TWV0YUxlbW1hT3JNZXRhdGhlb3JlbSIsIm1ldGFMZW1tYU1ldGF0aGVvcmVtIiwiY29uc2VxdWVudCIsImdldENvbnNlcXVlbnQiLCJtZXRhTGVtbWFPck1ldGFUaGVvcmVtVW5pZmllZCIsImZyb21NZXRhdmFyaWFibGVOb2RlQW5kU3RhdGVtZW50Tm9kZSIsImRlY2xhcmF0aW9uIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUlxQkE7Ozt3QkFGc0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTVCLElBQUEsQUFBTUEsNEJBQU47YUFBTUEsWUFDUEMsZ0JBQWdCLEVBQUVDLGFBQWE7Z0NBRHhCRjtRQUVqQixJQUFJLENBQUNDLGdCQUFnQixHQUFHQTtRQUN4QixJQUFJLENBQUNDLGFBQWEsR0FBR0E7O2tCQUhKRjs7WUFNbkJHLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0YsZ0JBQWdCO1lBQzlCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDRixhQUFhO1lBQzNCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLGtCQUFrQkMsWUFBWTtnQkFDNUIsSUFBTUosZ0JBQWdCSSxhQUFhRixnQkFBZ0IsSUFDN0NILG1CQUFtQkssYUFBYUgsbUJBQW1CLElBQ25ESSxtQkFBbUIsSUFBSSxDQUFDQyxjQUFjLENBQUNOLGdCQUN2Q08sc0JBQXNCLElBQUksQ0FBQ0MsaUJBQWlCLENBQUNULG1CQUM3Q1Usc0JBQXVCRix1QkFBdUJGO2dCQUVwRCxPQUFPSTtZQUNUOzs7WUFFQUQsS0FBQUE7bUJBQUFBLFNBQUFBLGtCQUFrQlQsZ0JBQWdCO2dCQUNoQyxJQUFNVywwQkFBMEIsSUFBSSxDQUFDWCxnQkFBZ0IsQ0FBQ1ksS0FBSyxDQUFDWjtnQkFFNUQsT0FBT1c7WUFDVDs7O1lBRUFKLEtBQUFBO21CQUFBQSxTQUFBQSxlQUFlTixhQUFhO2dCQUMxQkEsZ0JBQWdCWSxJQUFBQSxvQ0FBMEIsRUFBQ1osZ0JBQWdCLEdBQUc7Z0JBRTlELElBQU1hLHVCQUF1QixJQUFJLENBQUNiLGFBQWEsQ0FBQ1csS0FBSyxDQUFDWCxnQkFDaERLLG1CQUFtQlEsc0JBQXVCLEdBQUc7Z0JBRW5ELE9BQU9SO1lBQ1Q7OztZQUVBUyxLQUFBQTttQkFBQUEsU0FBQUEsNEJBQTRCQyxvQkFBb0I7Z0JBQzlDLElBQU1DLGFBQWFELHFCQUFxQkUsYUFBYSxJQUMvQ2pCLGdCQUFnQmdCLFdBQVdkLGdCQUFnQixJQUMzQ1csdUJBQXVCLElBQUksQ0FBQ2IsYUFBYSxDQUFDVyxLQUFLLENBQUNYLGdCQUNoRGtCLGdDQUFnQ0wsc0JBQXVCLEdBQUc7Z0JBRWhFLE9BQU9LO1lBQ1Q7Ozs7WUFFT0MsS0FBQUE7bUJBQVAsU0FBT0EscUNBQXFDcEIsZ0JBQWdCLEVBQUVDLGFBQWE7Z0JBQ3pFQSxnQkFBZ0JZLElBQUFBLG9DQUEwQixFQUFDWixnQkFBZ0IsR0FBRztnQkFFOUQsSUFBTW9CLGNBQWMsSUFuREh0QixZQW1EbUJDLGtCQUFrQkM7Z0JBRXRELE9BQU9vQjtZQUNUOzs7V0F0RG1CdEIifQ==
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZWNsYXJhdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgc3RyaXBCcmFja2V0c0Zyb21TdGF0ZW1lbnQgfSBmcm9tIFwiLi91dGlsaXRpZXMvYnJhY2tldHNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRGVjbGFyYXRpb24ge1xuICBjb25zdHJ1Y3RvcihtZXRhdmFyaWFibGVOb2RlLCBzdGF0ZW1lbnROb2RlKSB7XG4gICAgdGhpcy5tZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZTtcbiAgICB0aGlzLnN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlTm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhdmFyaWFibGVOb2RlO1xuICB9XG5cbiAgZ2V0U3RhdGVtZW50Tm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgdW5pZnlTdWJzdGl0dXRpb24oc3Vic3RpdHV0aW9uKSB7XG4gICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IHN1YnN0aXR1dGlvbi5nZXRTdGF0ZW1lbnROb2RlKCksXG4gICAgICAgICAgbWV0YXZhcmlhYmxlTm9kZSA9IHN1YnN0aXR1dGlvbi5nZXRNZXRhdmFyaWFibGVOb2RlKCksXG4gICAgICAgICAgc3RhdGVtZW50VW5pZmllZCA9IHRoaXMudW5pZnlTdGF0ZW1lbnQoc3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgbWV0YXZhcmlhYmxlVW5pZmllZCA9IHRoaXMudW5pZnlNZXRhdmFyaWFibGUobWV0YXZhcmlhYmxlTm9kZSksXG4gICAgICAgICAgc3Vic3RpdHV0aW9uVW5pZmllZCA9IChtZXRhdmFyaWFibGVVbmlmaWVkICYmIHN0YXRlbWVudFVuaWZpZWQpO1xuXG4gICAgcmV0dXJuIHN1YnN0aXR1dGlvblVuaWZpZWQ7XG4gIH1cblxuICB1bmlmeU1ldGF2YXJpYWJsZShtZXRhdmFyaWFibGVOb2RlKSB7XG4gICAgY29uc3QgbWV0YXZhcmlhYmxlTm9kZU1hdGNoZXMgPSB0aGlzLm1ldGF2YXJpYWJsZU5vZGUubWF0Y2gobWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgICByZXR1cm4gbWV0YXZhcmlhYmxlTm9kZU1hdGNoZXM7XG4gIH1cblxuICB1bmlmeVN0YXRlbWVudChzdGF0ZW1lbnROb2RlKSB7XG4gICAgc3RhdGVtZW50Tm9kZSA9IHN0cmlwQnJhY2tldHNGcm9tU3RhdGVtZW50KHN0YXRlbWVudE5vZGUpOyAvLy9cblxuICAgIGNvbnN0IHN0YXRlbWVudE5vZGVNYXRjaGVzID0gdGhpcy5zdGF0ZW1lbnROb2RlLm1hdGNoKHN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIHN0YXRlbWVudFVuaWZpZWQgPSBzdGF0ZW1lbnROb2RlTWF0Y2hlczsgIC8vL1xuXG4gICAgcmV0dXJuIHN0YXRlbWVudFVuaWZpZWQ7XG4gIH1cblxuICB1bmlmeU1ldGFMZW1tYU9yTWV0YXRoZW9yZW0obWV0YUxlbW1hTWV0YXRoZW9yZW0pIHtcbiAgICBjb25zdCBjb25zZXF1ZW50ID0gbWV0YUxlbW1hTWV0YXRoZW9yZW0uZ2V0Q29uc2VxdWVudCgpLFxuICAgICAgICAgIHN0YXRlbWVudE5vZGUgPSBjb25zZXF1ZW50LmdldFN0YXRlbWVudE5vZGUoKSxcbiAgICAgICAgICBzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IHRoaXMuc3RhdGVtZW50Tm9kZS5tYXRjaChzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICBtZXRhTGVtbWFPck1ldGFUaGVvcmVtVW5pZmllZCA9IHN0YXRlbWVudE5vZGVNYXRjaGVzOyAgLy8vXG5cbiAgICByZXR1cm4gbWV0YUxlbW1hT3JNZXRhVGhlb3JlbVVuaWZpZWQ7XG4gIH1cblxuICBzdGF0aWMgZnJvbU1ldGF2YXJpYWJsZU5vZGVBbmRTdGF0ZW1lbnROb2RlKG1ldGF2YXJpYWJsZU5vZGUsIHN0YXRlbWVudE5vZGUpIHtcbiAgICBpZiAoc3RhdGVtZW50Tm9kZSAhPT0gbnVsbCkge1xuICAgICAgc3RhdGVtZW50Tm9kZSA9IHN0cmlwQnJhY2tldHNGcm9tU3RhdGVtZW50KHN0YXRlbWVudE5vZGUpOyAvLy9cbiAgICB9XG5cbiAgICBjb25zdCBkZWNsYXJhdGlvbiA9IG5ldyBEZWNsYXJhdGlvbihtZXRhdmFyaWFibGVOb2RlLCBzdGF0ZW1lbnROb2RlKTtcblxuICAgIHJldHVybiBkZWNsYXJhdGlvbjtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIkRlY2xhcmF0aW9uIiwibWV0YXZhcmlhYmxlTm9kZSIsInN0YXRlbWVudE5vZGUiLCJnZXRNZXRhdmFyaWFibGVOb2RlIiwiZ2V0U3RhdGVtZW50Tm9kZSIsInVuaWZ5U3Vic3RpdHV0aW9uIiwic3Vic3RpdHV0aW9uIiwic3RhdGVtZW50VW5pZmllZCIsInVuaWZ5U3RhdGVtZW50IiwibWV0YXZhcmlhYmxlVW5pZmllZCIsInVuaWZ5TWV0YXZhcmlhYmxlIiwic3Vic3RpdHV0aW9uVW5pZmllZCIsIm1ldGF2YXJpYWJsZU5vZGVNYXRjaGVzIiwibWF0Y2giLCJzdHJpcEJyYWNrZXRzRnJvbVN0YXRlbWVudCIsInN0YXRlbWVudE5vZGVNYXRjaGVzIiwidW5pZnlNZXRhTGVtbWFPck1ldGF0aGVvcmVtIiwibWV0YUxlbW1hTWV0YXRoZW9yZW0iLCJjb25zZXF1ZW50IiwiZ2V0Q29uc2VxdWVudCIsIm1ldGFMZW1tYU9yTWV0YVRoZW9yZW1VbmlmaWVkIiwiZnJvbU1ldGF2YXJpYWJsZU5vZGVBbmRTdGF0ZW1lbnROb2RlIiwiZGVjbGFyYXRpb24iXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBSXFCQTs7O3dCQUZzQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFNUIsSUFBQSxBQUFNQSw0QkFBTjthQUFNQSxZQUNQQyxnQkFBZ0IsRUFBRUMsYUFBYTtnQ0FEeEJGO1FBRWpCLElBQUksQ0FBQ0MsZ0JBQWdCLEdBQUdBO1FBQ3hCLElBQUksQ0FBQ0MsYUFBYSxHQUFHQTs7a0JBSEpGOztZQU1uQkcsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDRixnQkFBZ0I7WUFDOUI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLGFBQWE7WUFDM0I7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsa0JBQWtCQyxZQUFZO2dCQUM1QixJQUFNSixnQkFBZ0JJLGFBQWFGLGdCQUFnQixJQUM3Q0gsbUJBQW1CSyxhQUFhSCxtQkFBbUIsSUFDbkRJLG1CQUFtQixJQUFJLENBQUNDLGNBQWMsQ0FBQ04sZ0JBQ3ZDTyxzQkFBc0IsSUFBSSxDQUFDQyxpQkFBaUIsQ0FBQ1QsbUJBQzdDVSxzQkFBdUJGLHVCQUF1QkY7Z0JBRXBELE9BQU9JO1lBQ1Q7OztZQUVBRCxLQUFBQTttQkFBQUEsU0FBQUEsa0JBQWtCVCxnQkFBZ0I7Z0JBQ2hDLElBQU1XLDBCQUEwQixJQUFJLENBQUNYLGdCQUFnQixDQUFDWSxLQUFLLENBQUNaO2dCQUU1RCxPQUFPVztZQUNUOzs7WUFFQUosS0FBQUE7bUJBQUFBLFNBQUFBLGVBQWVOLGFBQWE7Z0JBQzFCQSxnQkFBZ0JZLElBQUFBLG9DQUEwQixFQUFDWixnQkFBZ0IsR0FBRztnQkFFOUQsSUFBTWEsdUJBQXVCLElBQUksQ0FBQ2IsYUFBYSxDQUFDVyxLQUFLLENBQUNYLGdCQUNoREssbUJBQW1CUSxzQkFBdUIsR0FBRztnQkFFbkQsT0FBT1I7WUFDVDs7O1lBRUFTLEtBQUFBO21CQUFBQSxTQUFBQSw0QkFBNEJDLG9CQUFvQjtnQkFDOUMsSUFBTUMsYUFBYUQscUJBQXFCRSxhQUFhLElBQy9DakIsZ0JBQWdCZ0IsV0FBV2QsZ0JBQWdCLElBQzNDVyx1QkFBdUIsSUFBSSxDQUFDYixhQUFhLENBQUNXLEtBQUssQ0FBQ1gsZ0JBQ2hEa0IsZ0NBQWdDTCxzQkFBdUIsR0FBRztnQkFFaEUsT0FBT0s7WUFDVDs7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSxxQ0FBcUNwQixnQkFBZ0IsRUFBRUMsYUFBYTtnQkFDekUsSUFBSUEsa0JBQWtCLE1BQU07b0JBQzFCQSxnQkFBZ0JZLElBQUFBLG9DQUEwQixFQUFDWixnQkFBZ0IsR0FBRztnQkFDaEU7Z0JBRUEsSUFBTW9CLGNBQWMsSUFyREh0QixZQXFEbUJDLGtCQUFrQkM7Z0JBRXRELE9BQU9vQjtZQUNUOzs7V0F4RG1CdEIifQ==
package/lib/judgement.js CHANGED
@@ -28,11 +28,11 @@ function _create_class(Constructor, protoProps, staticProps) {
28
28
  return Constructor;
29
29
  }
30
30
  var Judgement = /*#__PURE__*/ function() {
31
- function Judgement(node, frame, metavariableNode) {
31
+ function Judgement(node, frame, declaration) {
32
32
  _class_call_check(this, Judgement);
33
33
  this.node = node;
34
34
  this.frame = frame;
35
- this.metavariableNode = metavariableNode;
35
+ this.declaration = declaration;
36
36
  }
37
37
  _create_class(Judgement, [
38
38
  {
@@ -48,35 +48,22 @@ var Judgement = /*#__PURE__*/ function() {
48
48
  }
49
49
  },
50
50
  {
51
- key: "getMetavariableNode",
52
- value: function getMetavariableNode() {
53
- return this.metavariableNode;
54
- }
55
- },
56
- {
57
- key: "getDeclarations",
58
- value: function getDeclarations() {
59
- return this.frame.getDeclarations();
60
- }
61
- },
62
- {
63
- key: "matchMetavariableNode",
64
- value: function matchMetavariableNode(metavariableNode) {
65
- var metavariableNodeMatches = this.metavariableNode.match(metavariableNode);
66
- return metavariableNodeMatches;
67
- }
68
- },
69
- {
70
- key: "unifyMetaLemmaOrMetatheorem",
71
- value: function unifyMetaLemmaOrMetatheorem(metaLemmaMetatheorem) {
72
- return this.frame.unifyMetaLemmaOrMetatheorem(metaLemmaMetatheorem);
51
+ key: "getDeclaration",
52
+ value: function getDeclaration() {
53
+ return this.declaration;
73
54
  }
74
55
  }
75
56
  ], [
76
57
  {
77
- key: "fromJudgementNodeFrameAndMetavariableNode",
78
- value: function fromJudgementNodeFrameAndMetavariableNode(judgementNode, frame, metavariableNode) {
79
- var node = judgementNode, judgement = new Judgement(node, frame, metavariableNode);
58
+ key: "fromJudgementNodeFrameAndDeclaration",
59
+ value: // matchMetavariableNode(metavariableNode) {
60
+ // const metavariableNodeMatches = this.metavariableNode.match(metavariableNode);
61
+ //
62
+ // return metavariableNodeMatches;
63
+ // }
64
+ // unifyMetaLemmaOrMetatheorem(metaLemmaMetatheorem) { return this.frame.unifyMetaLemmaOrMetatheorem(metaLemmaMetatheorem); }
65
+ function fromJudgementNodeFrameAndDeclaration(judgementNode, frame, declaration) {
66
+ var node = judgementNode, judgement = new Judgement(node, frame, declaration);
80
67
  return judgement;
81
68
  }
82
69
  }
@@ -84,4 +71,4 @@ var Judgement = /*#__PURE__*/ function() {
84
71
  return Judgement;
85
72
  }();
86
73
 
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9qdWRnZW1lbnQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEp1ZGdlbWVudCB7XG4gIGNvbnN0cnVjdG9yKG5vZGUsIGZyYW1lLCBtZXRhdmFyaWFibGVOb2RlKSB7XG4gICAgdGhpcy5ub2RlID0gbm9kZTtcbiAgICB0aGlzLmZyYW1lID0gZnJhbWU7XG4gICAgdGhpcy5tZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZTtcbiAgfVxuXG4gIGdldE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9kZTtcbiAgfVxuXG4gIGdldEZyYW1lKCkge1xuICAgIHJldHVybiB0aGlzLmZyYW1lO1xuICB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlTm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhdmFyaWFibGVOb2RlO1xuICB9XG5cbiAgZ2V0RGVjbGFyYXRpb25zKCkgeyByZXR1cm4gdGhpcy5mcmFtZS5nZXREZWNsYXJhdGlvbnMoKTsgfVxuXG4gIG1hdGNoTWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKSB7XG4gICAgY29uc3QgbWV0YXZhcmlhYmxlTm9kZU1hdGNoZXMgPSB0aGlzLm1ldGF2YXJpYWJsZU5vZGUubWF0Y2gobWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgICByZXR1cm4gbWV0YXZhcmlhYmxlTm9kZU1hdGNoZXM7XG4gIH1cblxuICB1bmlmeU1ldGFMZW1tYU9yTWV0YXRoZW9yZW0obWV0YUxlbW1hTWV0YXRoZW9yZW0pIHsgcmV0dXJuIHRoaXMuZnJhbWUudW5pZnlNZXRhTGVtbWFPck1ldGF0aGVvcmVtKG1ldGFMZW1tYU1ldGF0aGVvcmVtKTsgfVxuXG4gIHN0YXRpYyBmcm9tSnVkZ2VtZW50Tm9kZUZyYW1lQW5kTWV0YXZhcmlhYmxlTm9kZShqdWRnZW1lbnROb2RlLCBmcmFtZSwgbWV0YXZhcmlhYmxlTm9kZSkge1xuICAgIGNvbnN0IG5vZGUgPSBqdWRnZW1lbnROb2RlLFxuICAgICAgICAgIGp1ZGdlbWVudCA9IG5ldyBKdWRnZW1lbnQobm9kZSwgZnJhbWUsIG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gICAgcmV0dXJuIGp1ZGdlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIkp1ZGdlbWVudCIsIm5vZGUiLCJmcmFtZSIsIm1ldGF2YXJpYWJsZU5vZGUiLCJnZXROb2RlIiwiZ2V0RnJhbWUiLCJnZXRNZXRhdmFyaWFibGVOb2RlIiwiZ2V0RGVjbGFyYXRpb25zIiwibWF0Y2hNZXRhdmFyaWFibGVOb2RlIiwibWV0YXZhcmlhYmxlTm9kZU1hdGNoZXMiLCJtYXRjaCIsInVuaWZ5TWV0YUxlbW1hT3JNZXRhdGhlb3JlbSIsIm1ldGFMZW1tYU1ldGF0aGVvcmVtIiwiZnJvbUp1ZGdlbWVudE5vZGVGcmFtZUFuZE1ldGF2YXJpYWJsZU5vZGUiLCJqdWRnZW1lbnROb2RlIiwianVkZ2VtZW50Il0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUVxQkE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBTixJQUFBLEFBQU1BLDBCQUFOO2FBQU1BLFVBQ1BDLElBQUksRUFBRUMsS0FBSyxFQUFFQyxnQkFBZ0I7Z0NBRHRCSDtRQUVqQixJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLEtBQUssR0FBR0E7UUFDYixJQUFJLENBQUNDLGdCQUFnQixHQUFHQTs7a0JBSlBIOztZQU9uQkksS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDSCxJQUFJO1lBQ2xCOzs7WUFFQUksS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDSCxLQUFLO1lBQ25COzs7WUFFQUksS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDSCxnQkFBZ0I7WUFDOUI7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQW9CLE9BQU8sSUFBSSxDQUFDTCxLQUFLLENBQUNLLGVBQWU7WUFBSTs7O1lBRXpEQyxLQUFBQTttQkFBQUEsU0FBQUEsc0JBQXNCTCxnQkFBZ0I7Z0JBQ3BDLElBQU1NLDBCQUEwQixJQUFJLENBQUNOLGdCQUFnQixDQUFDTyxLQUFLLENBQUNQO2dCQUU1RCxPQUFPTTtZQUNUOzs7WUFFQUUsS0FBQUE7bUJBQUFBLFNBQUFBLDRCQUE0QkMsb0JBQW9CO2dCQUFJLE9BQU8sSUFBSSxDQUFDVixLQUFLLENBQUNTLDJCQUEyQixDQUFDQztZQUF1Qjs7OztZQUVsSEMsS0FBQUE7bUJBQVAsU0FBT0EsMENBQTBDQyxhQUFhLEVBQUVaLEtBQUssRUFBRUMsZ0JBQWdCO2dCQUNyRixJQUFNRixPQUFPYSxlQUNQQyxZQUFZLElBL0JEZixVQStCZUMsTUFBTUMsT0FBT0M7Z0JBRTdDLE9BQU9ZO1lBQ1Q7OztXQWxDbUJmIn0=
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9qdWRnZW1lbnQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEp1ZGdlbWVudCB7XG4gIGNvbnN0cnVjdG9yKG5vZGUsIGZyYW1lLCBkZWNsYXJhdGlvbikge1xuICAgIHRoaXMubm9kZSA9IG5vZGU7XG4gICAgdGhpcy5mcmFtZSA9IGZyYW1lO1xuICAgIHRoaXMuZGVjbGFyYXRpb24gPSBkZWNsYXJhdGlvbjtcbiAgfVxuXG4gIGdldE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9kZTtcbiAgfVxuXG4gIGdldEZyYW1lKCkge1xuICAgIHJldHVybiB0aGlzLmZyYW1lO1xuICB9XG5cbiAgZ2V0RGVjbGFyYXRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuZGVjbGFyYXRpb247XG4gIH1cblxuICAvLyBtYXRjaE1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSkge1xuICAvLyAgIGNvbnN0IG1ldGF2YXJpYWJsZU5vZGVNYXRjaGVzID0gdGhpcy5tZXRhdmFyaWFibGVOb2RlLm1hdGNoKG1ldGF2YXJpYWJsZU5vZGUpO1xuICAvL1xuICAvLyAgIHJldHVybiBtZXRhdmFyaWFibGVOb2RlTWF0Y2hlcztcbiAgLy8gfVxuXG4gIC8vIHVuaWZ5TWV0YUxlbW1hT3JNZXRhdGhlb3JlbShtZXRhTGVtbWFNZXRhdGhlb3JlbSkgeyByZXR1cm4gdGhpcy5mcmFtZS51bmlmeU1ldGFMZW1tYU9yTWV0YXRoZW9yZW0obWV0YUxlbW1hTWV0YXRoZW9yZW0pOyB9XG5cbiAgc3RhdGljIGZyb21KdWRnZW1lbnROb2RlRnJhbWVBbmREZWNsYXJhdGlvbihqdWRnZW1lbnROb2RlLCBmcmFtZSwgZGVjbGFyYXRpb24pIHtcbiAgICBjb25zdCBub2RlID0ganVkZ2VtZW50Tm9kZSxcbiAgICAgICAgICBqdWRnZW1lbnQgPSBuZXcgSnVkZ2VtZW50KG5vZGUsIGZyYW1lLCBkZWNsYXJhdGlvbik7XG5cbiAgICByZXR1cm4ganVkZ2VtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOlsiSnVkZ2VtZW50Iiwibm9kZSIsImZyYW1lIiwiZGVjbGFyYXRpb24iLCJnZXROb2RlIiwiZ2V0RnJhbWUiLCJnZXREZWNsYXJhdGlvbiIsImZyb21KdWRnZW1lbnROb2RlRnJhbWVBbmREZWNsYXJhdGlvbiIsImp1ZGdlbWVudE5vZGUiLCJqdWRnZW1lbnQiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBRXFCQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFOLElBQUEsQUFBTUEsMEJBQU47YUFBTUEsVUFDUEMsSUFBSSxFQUFFQyxLQUFLLEVBQUVDLFdBQVc7Z0NBRGpCSDtRQUVqQixJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLEtBQUssR0FBR0E7UUFDYixJQUFJLENBQUNDLFdBQVcsR0FBR0E7O2tCQUpGSDs7WUFPbkJJLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0gsSUFBSTtZQUNsQjs7O1lBRUFJLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0gsS0FBSztZQUNuQjs7O1lBRUFJLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0gsV0FBVztZQUN6Qjs7OztZQVVPSSxLQUFBQTttQkFBUCxBQVJBLDRDQUE0QztZQUM1QyxtRkFBbUY7WUFDbkYsRUFBRTtZQUNGLG9DQUFvQztZQUNwQyxJQUFJO1lBRUosNkhBQTZIO1lBRTdILFNBQU9BLHFDQUFxQ0MsYUFBYSxFQUFFTixLQUFLLEVBQUVDLFdBQVc7Z0JBQzNFLElBQU1GLE9BQU9PLGVBQ1BDLFlBQVksSUE3QkRULFVBNkJlQyxNQUFNQyxPQUFPQztnQkFFN0MsT0FBT007WUFDVDs7O1dBaENtQlQifQ==
@@ -9,8 +9,8 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- DECLARATION_META_TYPE_NAME: function() {
13
- return DECLARATION_META_TYPE_NAME;
12
+ FRAME_META_TYPE_NAME: function() {
13
+ return FRAME_META_TYPE_NAME;
14
14
  },
15
15
  REFERENCE_META_TYPE_NAME: function() {
16
16
  return REFERENCE_META_TYPE_NAME;
@@ -19,8 +19,8 @@ _export(exports, {
19
19
  return STATEMENT_META_TYPE_NAME;
20
20
  }
21
21
  });
22
+ var FRAME_META_TYPE_NAME = "Frame";
22
23
  var STATEMENT_META_TYPE_NAME = "Statement";
23
24
  var REFERENCE_META_TYPE_NAME = "Reference";
24
- var DECLARATION_META_TYPE_NAME = "Declaration";
25
25
 
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXRhVHlwZU5hbWVzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5leHBvcnQgY29uc3QgU1RBVEVNRU5UX01FVEFfVFlQRV9OQU1FID0gXCJTdGF0ZW1lbnRcIjtcbmV4cG9ydCBjb25zdCBSRUZFUkVOQ0VfTUVUQV9UWVBFX05BTUUgPSBcIlJlZmVyZW5jZVwiO1xuZXhwb3J0IGNvbnN0IERFQ0xBUkFUSU9OX01FVEFfVFlQRV9OQU1FID0gXCJEZWNsYXJhdGlvblwiO1xuIl0sIm5hbWVzIjpbIkRFQ0xBUkFUSU9OX01FVEFfVFlQRV9OQU1FIiwiUkVGRVJFTkNFX01FVEFfVFlQRV9OQU1FIiwiU1RBVEVNRU5UX01FVEFfVFlQRV9OQU1FIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFJYUEsMEJBQTBCO2VBQTFCQTs7SUFEQUMsd0JBQXdCO2VBQXhCQTs7SUFEQUMsd0JBQXdCO2VBQXhCQTs7O0FBQU4sSUFBTUEsMkJBQTJCO0FBQ2pDLElBQU1ELDJCQUEyQjtBQUNqQyxJQUFNRCw2QkFBNkIifQ==
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXRhVHlwZU5hbWVzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5leHBvcnQgY29uc3QgRlJBTUVfTUVUQV9UWVBFX05BTUUgPSBcIkZyYW1lXCI7XG5leHBvcnQgY29uc3QgU1RBVEVNRU5UX01FVEFfVFlQRV9OQU1FID0gXCJTdGF0ZW1lbnRcIjtcbmV4cG9ydCBjb25zdCBSRUZFUkVOQ0VfTUVUQV9UWVBFX05BTUUgPSBcIlJlZmVyZW5jZVwiO1xuIl0sIm5hbWVzIjpbIkZSQU1FX01FVEFfVFlQRV9OQU1FIiwiUkVGRVJFTkNFX01FVEFfVFlQRV9OQU1FIiwiU1RBVEVNRU5UX01FVEFfVFlQRV9OQU1FIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFFYUEsb0JBQW9CO2VBQXBCQTs7SUFFQUMsd0JBQXdCO2VBQXhCQTs7SUFEQUMsd0JBQXdCO2VBQXhCQTs7O0FBRE4sSUFBTUYsdUJBQXVCO0FBQzdCLElBQU1FLDJCQUEyQjtBQUNqQyxJQUFNRCwyQkFBMkIifQ==
@@ -10,6 +10,7 @@ Object.defineProperty(exports, "default", {
10
10
  });
11
11
  var _shim = /*#__PURE__*/ _interop_require_default(require("../shim"));
12
12
  var _declaration = /*#__PURE__*/ _interop_require_default(require("../declaration"));
13
+ var _frame = /*#__PURE__*/ _interop_require_default(require("../metaType/frame"));
13
14
  var _reference = /*#__PURE__*/ _interop_require_default(require("../metaType/reference"));
14
15
  var _metavariableGivenMetaType = /*#__PURE__*/ _interop_require_default(require("../verify/metavariableGivenMetaType"));
15
16
  var _query = require("../utilities/query");
@@ -18,7 +19,7 @@ function _interop_require_default(obj) {
18
19
  default: obj
19
20
  };
20
21
  }
21
- var statementNodeQuery = (0, _query.nodeQuery)("/declaration/statement[1]"), metavariableNodeQuery = (0, _query.nodeQuery)("/declaration/statement[0]/metavariable!");
22
+ var statementNodeQuery = (0, _query.nodeQuery)("/declaration/statement"), metavariableNodeQuery = (0, _query.nodeQuery)("/declaration/metavariable");
22
23
  var verifyDeclarationFunctions = [
23
24
  verifyDerivedDeclaration,
24
25
  verifyStatedDeclaration
@@ -63,9 +64,13 @@ function verifyStatedDeclaration(declarationNode, declarations, stated, localCon
63
64
  if (stated) {
64
65
  var declarationString = localContext.nodeAsString(declarationNode);
65
66
  localContext.trace("Verifying the '".concat(declarationString, "' stated declaration..."), declarationNode);
66
- var metaType = _reference.default, metavariableNode = metavariableNodeQuery(declarationNode), metavariableVerifiedGivenMetaType = (0, _metavariableGivenMetaType.default)(metavariableNode, metaType, localContext);
67
+ var statementNode = statementNodeQuery(declarationNode), metaType = statementNode === null ? _frame.default : _reference.default, metavariableNode = metavariableNodeQuery(declarationNode), metavariableVerifiedGivenMetaType = (0, _metavariableGivenMetaType.default)(metavariableNode, metaType, localContext);
67
68
  if (metavariableVerifiedGivenMetaType) {
68
- var verifyStatement = _shim.default.verifyStatement, _$stated = true, assignments = null, statementNode = statementNodeQuery(declarationNode), statementVerified = verifyStatement(statementNode, assignments, _$stated, localContext);
69
+ var statementVerified = true; ///
70
+ if (statementNode !== null) {
71
+ var verifyStatement = _shim.default.verifyStatement, _$stated = true, assignments = null;
72
+ statementVerified = verifyStatement(statementNode, assignments, _$stated, localContext);
73
+ }
69
74
  if (statementVerified) {
70
75
  var declaration = _declaration.default.fromMetavariableNodeAndStatementNode(metavariableNode, statementNode);
71
76
  declarations.push(declaration);
@@ -79,4 +84,4 @@ function verifyStatedDeclaration(declarationNode, declarations, stated, localCon
79
84
  return statedDeclarationVerified;
80
85
  }
81
86
 
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvZGVjbGFyYXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBzaGltIGZyb20gXCIuLi9zaGltXCI7XG5pbXBvcnQgRGVjbGFyYXRpb24gZnJvbSBcIi4uL2RlY2xhcmF0aW9uXCJcbmltcG9ydCByZWZlcmVuY2VNZXRhVHlwZSBmcm9tIFwiLi4vbWV0YVR5cGUvcmVmZXJlbmNlXCI7XG5pbXBvcnQgdmVyaWZ5TWV0YXZhcmlhYmxlR2l2ZW5NZXRhVHlwZSBmcm9tIFwiLi4vdmVyaWZ5L21ldGF2YXJpYWJsZUdpdmVuTWV0YVR5cGVcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvZGVjbGFyYXRpb24vc3RhdGVtZW50WzFdXCIpLFxuICAgICAgbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2RlY2xhcmF0aW9uL3N0YXRlbWVudFswXS9tZXRhdmFyaWFibGUhXCIpO1xuXG5jb25zdCB2ZXJpZnlEZWNsYXJhdGlvbkZ1bmN0aW9ucyA9IFtcbiAgdmVyaWZ5RGVyaXZlZERlY2xhcmF0aW9uLFxuICB2ZXJpZnlTdGF0ZWREZWNsYXJhdGlvblxuXTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5RGVjbGFyYXRpb24oZGVjbGFyYXRpb25Ob2RlLCBkZWNsYXJhdGlvbnMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBkZWNsYXJhdGlvblZlcmlmaWVkO1xuXG4gIGNvbnN0IGRlY2xhcmF0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhkZWNsYXJhdGlvbk5vZGUpO1xuXG4gIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtkZWNsYXJhdGlvblN0cmluZ30nIGRlY2xhcmF0aW9uLi4uYCwgZGVjbGFyYXRpb25Ob2RlKTtcblxuICBkZWNsYXJhdGlvblZlcmlmaWVkID0gdmVyaWZ5RGVjbGFyYXRpb25GdW5jdGlvbnMuc29tZSgodmVyaWZ5RGVjbGFyYXRpb25GdW5jdGlvbikgPT4ge1xuICAgIGNvbnN0IGRlY2xhcmF0aW9uVmVyaWZpZWQgPSB2ZXJpZnlEZWNsYXJhdGlvbkZ1bmN0aW9uKGRlY2xhcmF0aW9uTm9kZSwgZGVjbGFyYXRpb25zLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAoZGVjbGFyYXRpb25WZXJpZmllZCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcblxuICBpZiAoZGVjbGFyYXRpb25WZXJpZmllZCkge1xuICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2RlY2xhcmF0aW9uU3RyaW5nfScgZGVjbGFyYXRpb24uYCwgZGVjbGFyYXRpb25Ob2RlKTtcbiAgfVxuXG4gIHJldHVybiBkZWNsYXJhdGlvblZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlEZXJpdmVkRGVjbGFyYXRpb24oZGVjbGFyYXRpb25Ob2RlLCBkZWNsYXJhdGlvbnMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBkZXJpdmVkRGVjbGFyYXRpb25WZXJpZmllZDtcblxuICBpZiAoIXN0YXRlZCkge1xuICAgIGNvbnN0IGRlY2xhcmF0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhkZWNsYXJhdGlvbk5vZGUpO1xuXG4gICAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2RlY2xhcmF0aW9uU3RyaW5nfScgZGVyaXZlZCBkZWNsYXJhdGlvbi4uLmAsIGRlY2xhcmF0aW9uTm9kZSk7XG5cbiAgICBjb25zdCBtZXRhVHlwZSA9IHJlZmVyZW5jZU1ldGFUeXBlLCAvLy9cbiAgICAgICAgICBtZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5KGRlY2xhcmF0aW9uTm9kZSksXG4gICAgICAgICAgbWV0YXZhcmlhYmxlVmVyaWZpZWRHaXZlbk1ldGFUeXBlID0gdmVyaWZ5TWV0YXZhcmlhYmxlR2l2ZW5NZXRhVHlwZShtZXRhdmFyaWFibGVOb2RlLCBtZXRhVHlwZSwgbG9jYWxDb250ZXh0KTtcblxuICAgIGlmIChtZXRhdmFyaWFibGVWZXJpZmllZEdpdmVuTWV0YVR5cGUpIHtcbiAgICAgIGNvbnN0IHsgdmVyaWZ5U3RhdGVtZW50IH0gPSBzaGltLFxuICAgICAgICAgICAgc3RhdGVkID0gdHJ1ZSxcbiAgICAgICAgICAgIGFzc2lnbm1lbnRzID0gbnVsbCxcbiAgICAgICAgICAgIHN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlUXVlcnkoZGVjbGFyYXRpb25Ob2RlKSxcbiAgICAgICAgICAgIHN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5U3RhdGVtZW50KHN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgIGlmIChzdGF0ZW1lbnRWZXJpZmllZCkge1xuICAgICAgICBjb25zdCBkZWNsYXJhdGlvbiA9IERlY2xhcmF0aW9uLmZyb21NZXRhdmFyaWFibGVOb2RlQW5kU3RhdGVtZW50Tm9kZShtZXRhdmFyaWFibGVOb2RlLCBzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgICBkZWNsYXJhdGlvbnMucHVzaChkZWNsYXJhdGlvbik7XG5cbiAgICAgICAgZGVyaXZlZERlY2xhcmF0aW9uVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChkZXJpdmVkRGVjbGFyYXRpb25WZXJpZmllZCkge1xuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7ZGVjbGFyYXRpb25TdHJpbmd9JyBkZXJpdmVkIGRlY2xhcmF0aW9uLmAsIGRlY2xhcmF0aW9uTm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGRlcml2ZWREZWNsYXJhdGlvblZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlTdGF0ZWREZWNsYXJhdGlvbihkZWNsYXJhdGlvbk5vZGUsIGRlY2xhcmF0aW9ucywgc3RhdGVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IHN0YXRlZERlY2xhcmF0aW9uVmVyaWZpZWQgPSBmYWxzZTtcblxuICBpZiAoc3RhdGVkKSB7XG4gICAgY29uc3QgZGVjbGFyYXRpb25TdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGRlY2xhcmF0aW9uTm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7ZGVjbGFyYXRpb25TdHJpbmd9JyBzdGF0ZWQgZGVjbGFyYXRpb24uLi5gLCBkZWNsYXJhdGlvbk5vZGUpO1xuXG4gICAgY29uc3QgbWV0YVR5cGUgPSByZWZlcmVuY2VNZXRhVHlwZSwgLy8vXG4gICAgICAgICAgbWV0YXZhcmlhYmxlTm9kZSA9IG1ldGF2YXJpYWJsZU5vZGVRdWVyeShkZWNsYXJhdGlvbk5vZGUpLFxuICAgICAgICAgIG1ldGF2YXJpYWJsZVZlcmlmaWVkR2l2ZW5NZXRhVHlwZSA9IHZlcmlmeU1ldGF2YXJpYWJsZUdpdmVuTWV0YVR5cGUobWV0YXZhcmlhYmxlTm9kZSwgbWV0YVR5cGUsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAobWV0YXZhcmlhYmxlVmVyaWZpZWRHaXZlbk1ldGFUeXBlKSB7XG4gICAgICBjb25zdCB7IHZlcmlmeVN0YXRlbWVudCB9ID0gc2hpbSxcbiAgICAgICAgICAgIHN0YXRlZCA9IHRydWUsXG4gICAgICAgICAgICBhc3NpZ25tZW50cyA9IG51bGwsXG4gICAgICAgICAgICBzdGF0ZW1lbnROb2RlID0gc3RhdGVtZW50Tm9kZVF1ZXJ5KGRlY2xhcmF0aW9uTm9kZSksXG4gICAgICAgICAgICBzdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVN0YXRlbWVudChzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICBpZiAoc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgICAgY29uc3QgZGVjbGFyYXRpb24gPSBEZWNsYXJhdGlvbi5mcm9tTWV0YXZhcmlhYmxlTm9kZUFuZFN0YXRlbWVudE5vZGUobWV0YXZhcmlhYmxlTm9kZSwgc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgICAgZGVjbGFyYXRpb25zLnB1c2goZGVjbGFyYXRpb24pO1xuXG4gICAgICAgIHN0YXRlZERlY2xhcmF0aW9uVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChzdGF0ZWREZWNsYXJhdGlvblZlcmlmaWVkKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtkZWNsYXJhdGlvblN0cmluZ30nIHN0YXRlZCBkZWNsYXJhdGlvbi5gLCBkZWNsYXJhdGlvbk5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzdGF0ZWREZWNsYXJhdGlvblZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeURlY2xhcmF0aW9uIiwic3RhdGVtZW50Tm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwibWV0YXZhcmlhYmxlTm9kZVF1ZXJ5IiwidmVyaWZ5RGVjbGFyYXRpb25GdW5jdGlvbnMiLCJ2ZXJpZnlEZXJpdmVkRGVjbGFyYXRpb24iLCJ2ZXJpZnlTdGF0ZWREZWNsYXJhdGlvbiIsImRlY2xhcmF0aW9uTm9kZSIsImRlY2xhcmF0aW9ucyIsInN0YXRlZCIsImxvY2FsQ29udGV4dCIsImRlY2xhcmF0aW9uVmVyaWZpZWQiLCJkZWNsYXJhdGlvblN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwic29tZSIsInZlcmlmeURlY2xhcmF0aW9uRnVuY3Rpb24iLCJkZWJ1ZyIsImRlcml2ZWREZWNsYXJhdGlvblZlcmlmaWVkIiwibWV0YVR5cGUiLCJyZWZlcmVuY2VNZXRhVHlwZSIsIm1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhdmFyaWFibGVWZXJpZmllZEdpdmVuTWV0YVR5cGUiLCJ2ZXJpZnlNZXRhdmFyaWFibGVHaXZlbk1ldGFUeXBlIiwidmVyaWZ5U3RhdGVtZW50Iiwic2hpbSIsImFzc2lnbm1lbnRzIiwic3RhdGVtZW50Tm9kZSIsInN0YXRlbWVudFZlcmlmaWVkIiwiZGVjbGFyYXRpb24iLCJEZWNsYXJhdGlvbiIsImZyb21NZXRhdmFyaWFibGVOb2RlQW5kU3RhdGVtZW50Tm9kZSIsInB1c2giLCJzdGF0ZWREZWNsYXJhdGlvblZlcmlmaWVkIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFpQkE7OztlQUF3QkE7OzsyREFmUDtrRUFDTztnRUFDTTtnRkFDYztxQkFFbEI7Ozs7OztBQUUxQixJQUFNQyxxQkFBcUJDLElBQUFBLGdCQUFTLEVBQUMsOEJBQy9CQyx3QkFBd0JELElBQUFBLGdCQUFTLEVBQUM7QUFFeEMsSUFBTUUsNkJBQTZCO0lBQ2pDQztJQUNBQztDQUNEO0FBRWMsU0FBU04sa0JBQWtCTyxlQUFlLEVBQUVDLFlBQVksRUFBRUMsTUFBTSxFQUFFQyxZQUFZO0lBQzNGLElBQUlDO0lBRUosSUFBTUMsb0JBQW9CRixhQUFhRyxZQUFZLENBQUNOO0lBRXBERyxhQUFhSSxLQUFLLENBQUMsQUFBQyxrQkFBbUMsT0FBbEJGLG1CQUFrQixxQkFBbUJMO0lBRTFFSSxzQkFBc0JQLDJCQUEyQlcsSUFBSSxDQUFDLFNBQUNDO1FBQ3JELElBQU1MLHNCQUFzQkssMEJBQTBCVCxpQkFBaUJDLGNBQWNDLFFBQVFDO1FBRTdGLElBQUlDLHFCQUFxQjtZQUN2QixPQUFPO1FBQ1Q7SUFDRjtJQUVBLElBQUlBLHFCQUFxQjtRQUN2QkQsYUFBYU8sS0FBSyxDQUFDLEFBQUMsb0JBQXFDLE9BQWxCTCxtQkFBa0IsbUJBQWlCTDtJQUM1RTtJQUVBLE9BQU9JO0FBQ1Q7QUFFQSxTQUFTTix5QkFBeUJFLGVBQWUsRUFBRUMsWUFBWSxFQUFFQyxNQUFNLEVBQUVDLFlBQVk7SUFDbkYsSUFBSVE7SUFFSixJQUFJLENBQUNULFFBQVE7UUFDWCxJQUFNRyxvQkFBb0JGLGFBQWFHLFlBQVksQ0FBQ047UUFFcERHLGFBQWFJLEtBQUssQ0FBQyxBQUFDLGtCQUFtQyxPQUFsQkYsbUJBQWtCLDZCQUEyQkw7UUFFbEYsSUFBTVksV0FBV0Msa0JBQWlCLEVBQzVCQyxtQkFBbUJsQixzQkFBc0JJLGtCQUN6Q2Usb0NBQW9DQyxJQUFBQSxrQ0FBK0IsRUFBQ0Ysa0JBQWtCRixVQUFVVDtRQUV0RyxJQUFJWSxtQ0FBbUM7WUFDckMsSUFBTSxBQUFFRSxrQkFBb0JDLGFBQUksQ0FBeEJELGlCQUNGZixXQUFTLE1BQ1RpQixjQUFjLE1BQ2RDLGdCQUFnQjFCLG1CQUFtQk0sa0JBQ25DcUIsb0JBQW9CSixnQkFBZ0JHLGVBQWVELGFBQWFqQixVQUFRQztZQUU5RSxJQUFJa0IsbUJBQW1CO2dCQUNyQixJQUFNQyxjQUFjQyxvQkFBVyxDQUFDQyxvQ0FBb0MsQ0FBQ1Ysa0JBQWtCTTtnQkFFdkZuQixhQUFhd0IsSUFBSSxDQUFDSDtnQkFFbEJYLDZCQUE2QjtZQUMvQjtRQUNGO1FBRUEsSUFBSUEsNEJBQTRCO1lBQzlCUixhQUFhTyxLQUFLLENBQUMsQUFBQyxvQkFBcUMsT0FBbEJMLG1CQUFrQiwyQkFBeUJMO1FBQ3BGO0lBQ0Y7SUFFQSxPQUFPVztBQUNUO0FBRUEsU0FBU1osd0JBQXdCQyxlQUFlLEVBQUVDLFlBQVksRUFBRUMsTUFBTSxFQUFFQyxZQUFZO0lBQ2xGLElBQUl1Qiw0QkFBNEI7SUFFaEMsSUFBSXhCLFFBQVE7UUFDVixJQUFNRyxvQkFBb0JGLGFBQWFHLFlBQVksQ0FBQ047UUFFcERHLGFBQWFJLEtBQUssQ0FBQyxBQUFDLGtCQUFtQyxPQUFsQkYsbUJBQWtCLDRCQUEwQkw7UUFFakYsSUFBTVksV0FBV0Msa0JBQWlCLEVBQzVCQyxtQkFBbUJsQixzQkFBc0JJLGtCQUN6Q2Usb0NBQW9DQyxJQUFBQSxrQ0FBK0IsRUFBQ0Ysa0JBQWtCRixVQUFVVDtRQUV0RyxJQUFJWSxtQ0FBbUM7WUFDckMsSUFBTSxBQUFFRSxrQkFBb0JDLGFBQUksQ0FBeEJELGlCQUNGZixXQUFTLE1BQ1RpQixjQUFjLE1BQ2RDLGdCQUFnQjFCLG1CQUFtQk0sa0JBQ25DcUIsb0JBQW9CSixnQkFBZ0JHLGVBQWVELGFBQWFqQixVQUFRQztZQUU5RSxJQUFJa0IsbUJBQW1CO2dCQUNyQixJQUFNQyxjQUFjQyxvQkFBVyxDQUFDQyxvQ0FBb0MsQ0FBQ1Ysa0JBQWtCTTtnQkFFdkZuQixhQUFhd0IsSUFBSSxDQUFDSDtnQkFFbEJJLDRCQUE0QjtZQUM5QjtRQUNGO1FBRUEsSUFBSUEsMkJBQTJCO1lBQzdCdkIsYUFBYU8sS0FBSyxDQUFDLEFBQUMsb0JBQXFDLE9BQWxCTCxtQkFBa0IsMEJBQXdCTDtRQUNuRjtJQUNGO0lBRUEsT0FBTzBCO0FBQ1QifQ==
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvZGVjbGFyYXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBzaGltIGZyb20gXCIuLi9zaGltXCI7XG5pbXBvcnQgRGVjbGFyYXRpb24gZnJvbSBcIi4uL2RlY2xhcmF0aW9uXCJcbmltcG9ydCBmcmFtZU1ldGFUeXBlIGZyb20gXCIuLi9tZXRhVHlwZS9mcmFtZVwiO1xuaW1wb3J0IHJlZmVyZW5jZU1ldGFUeXBlIGZyb20gXCIuLi9tZXRhVHlwZS9yZWZlcmVuY2VcIjtcbmltcG9ydCB2ZXJpZnlNZXRhdmFyaWFibGVHaXZlbk1ldGFUeXBlIGZyb20gXCIuLi92ZXJpZnkvbWV0YXZhcmlhYmxlR2l2ZW5NZXRhVHlwZVwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IHN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9kZWNsYXJhdGlvbi9zdGF0ZW1lbnRcIiksXG4gICAgICBtZXRhdmFyaWFibGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvZGVjbGFyYXRpb24vbWV0YXZhcmlhYmxlXCIpO1xuXG5jb25zdCB2ZXJpZnlEZWNsYXJhdGlvbkZ1bmN0aW9ucyA9IFtcbiAgdmVyaWZ5RGVyaXZlZERlY2xhcmF0aW9uLFxuICB2ZXJpZnlTdGF0ZWREZWNsYXJhdGlvblxuXTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5RGVjbGFyYXRpb24oZGVjbGFyYXRpb25Ob2RlLCBkZWNsYXJhdGlvbnMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBkZWNsYXJhdGlvblZlcmlmaWVkO1xuXG4gIGNvbnN0IGRlY2xhcmF0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhkZWNsYXJhdGlvbk5vZGUpO1xuXG4gIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtkZWNsYXJhdGlvblN0cmluZ30nIGRlY2xhcmF0aW9uLi4uYCwgZGVjbGFyYXRpb25Ob2RlKTtcblxuICBkZWNsYXJhdGlvblZlcmlmaWVkID0gdmVyaWZ5RGVjbGFyYXRpb25GdW5jdGlvbnMuc29tZSgodmVyaWZ5RGVjbGFyYXRpb25GdW5jdGlvbikgPT4ge1xuICAgIGNvbnN0IGRlY2xhcmF0aW9uVmVyaWZpZWQgPSB2ZXJpZnlEZWNsYXJhdGlvbkZ1bmN0aW9uKGRlY2xhcmF0aW9uTm9kZSwgZGVjbGFyYXRpb25zLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAoZGVjbGFyYXRpb25WZXJpZmllZCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcblxuICBpZiAoZGVjbGFyYXRpb25WZXJpZmllZCkge1xuICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2RlY2xhcmF0aW9uU3RyaW5nfScgZGVjbGFyYXRpb24uYCwgZGVjbGFyYXRpb25Ob2RlKTtcbiAgfVxuXG4gIHJldHVybiBkZWNsYXJhdGlvblZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlEZXJpdmVkRGVjbGFyYXRpb24oZGVjbGFyYXRpb25Ob2RlLCBkZWNsYXJhdGlvbnMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBkZXJpdmVkRGVjbGFyYXRpb25WZXJpZmllZDtcblxuICBpZiAoIXN0YXRlZCkge1xuICAgIGNvbnN0IGRlY2xhcmF0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhkZWNsYXJhdGlvbk5vZGUpO1xuXG4gICAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2RlY2xhcmF0aW9uU3RyaW5nfScgZGVyaXZlZCBkZWNsYXJhdGlvbi4uLmAsIGRlY2xhcmF0aW9uTm9kZSk7XG5cbiAgICBjb25zdCBtZXRhVHlwZSA9IHJlZmVyZW5jZU1ldGFUeXBlLCAvLy9cbiAgICAgICAgICBtZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5KGRlY2xhcmF0aW9uTm9kZSksXG4gICAgICAgICAgbWV0YXZhcmlhYmxlVmVyaWZpZWRHaXZlbk1ldGFUeXBlID0gdmVyaWZ5TWV0YXZhcmlhYmxlR2l2ZW5NZXRhVHlwZShtZXRhdmFyaWFibGVOb2RlLCBtZXRhVHlwZSwgbG9jYWxDb250ZXh0KTtcblxuICAgIGlmIChtZXRhdmFyaWFibGVWZXJpZmllZEdpdmVuTWV0YVR5cGUpIHtcbiAgICAgIGNvbnN0IHsgdmVyaWZ5U3RhdGVtZW50IH0gPSBzaGltLFxuICAgICAgICAgICAgc3RhdGVkID0gdHJ1ZSxcbiAgICAgICAgICAgIGFzc2lnbm1lbnRzID0gbnVsbCxcbiAgICAgICAgICAgIHN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlUXVlcnkoZGVjbGFyYXRpb25Ob2RlKSxcbiAgICAgICAgICAgIHN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5U3RhdGVtZW50KHN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgIGlmIChzdGF0ZW1lbnRWZXJpZmllZCkge1xuICAgICAgICBjb25zdCBkZWNsYXJhdGlvbiA9IERlY2xhcmF0aW9uLmZyb21NZXRhdmFyaWFibGVOb2RlQW5kU3RhdGVtZW50Tm9kZShtZXRhdmFyaWFibGVOb2RlLCBzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgICBkZWNsYXJhdGlvbnMucHVzaChkZWNsYXJhdGlvbik7XG5cbiAgICAgICAgZGVyaXZlZERlY2xhcmF0aW9uVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChkZXJpdmVkRGVjbGFyYXRpb25WZXJpZmllZCkge1xuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7ZGVjbGFyYXRpb25TdHJpbmd9JyBkZXJpdmVkIGRlY2xhcmF0aW9uLmAsIGRlY2xhcmF0aW9uTm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGRlcml2ZWREZWNsYXJhdGlvblZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlTdGF0ZWREZWNsYXJhdGlvbihkZWNsYXJhdGlvbk5vZGUsIGRlY2xhcmF0aW9ucywgc3RhdGVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IHN0YXRlZERlY2xhcmF0aW9uVmVyaWZpZWQgPSBmYWxzZTtcblxuICBpZiAoc3RhdGVkKSB7XG4gICAgY29uc3QgZGVjbGFyYXRpb25TdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGRlY2xhcmF0aW9uTm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7ZGVjbGFyYXRpb25TdHJpbmd9JyBzdGF0ZWQgZGVjbGFyYXRpb24uLi5gLCBkZWNsYXJhdGlvbk5vZGUpO1xuXG4gICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVRdWVyeShkZWNsYXJhdGlvbk5vZGUpLFxuICAgICAgICAgIG1ldGFUeXBlID0gKHN0YXRlbWVudE5vZGUgPT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgZnJhbWVNZXRhVHlwZSA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgcmVmZXJlbmNlTWV0YVR5cGUsXG4gICAgICAgICAgbWV0YXZhcmlhYmxlTm9kZSA9IG1ldGF2YXJpYWJsZU5vZGVRdWVyeShkZWNsYXJhdGlvbk5vZGUpLFxuICAgICAgICAgIG1ldGF2YXJpYWJsZVZlcmlmaWVkR2l2ZW5NZXRhVHlwZSA9IHZlcmlmeU1ldGF2YXJpYWJsZUdpdmVuTWV0YVR5cGUobWV0YXZhcmlhYmxlTm9kZSwgbWV0YVR5cGUsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAobWV0YXZhcmlhYmxlVmVyaWZpZWRHaXZlbk1ldGFUeXBlKSB7XG4gICAgICBsZXQgc3RhdGVtZW50VmVyaWZpZWQgPSB0cnVlOyAvLy9cblxuICAgICAgaWYgKHN0YXRlbWVudE5vZGUgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3QgeyB2ZXJpZnlTdGF0ZW1lbnQgfSA9IHNoaW0sXG4gICAgICAgICAgICAgIHN0YXRlZCA9IHRydWUsXG4gICAgICAgICAgICAgIGFzc2lnbm1lbnRzID0gbnVsbDtcblxuICAgICAgICBzdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVN0YXRlbWVudChzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpO1xuICAgICAgfVxuXG4gICAgICBpZiAoc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgICAgY29uc3QgZGVjbGFyYXRpb24gPSBEZWNsYXJhdGlvbi5mcm9tTWV0YXZhcmlhYmxlTm9kZUFuZFN0YXRlbWVudE5vZGUobWV0YXZhcmlhYmxlTm9kZSwgc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgICAgZGVjbGFyYXRpb25zLnB1c2goZGVjbGFyYXRpb24pO1xuXG4gICAgICAgIHN0YXRlZERlY2xhcmF0aW9uVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChzdGF0ZWREZWNsYXJhdGlvblZlcmlmaWVkKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtkZWNsYXJhdGlvblN0cmluZ30nIHN0YXRlZCBkZWNsYXJhdGlvbi5gLCBkZWNsYXJhdGlvbk5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzdGF0ZWREZWNsYXJhdGlvblZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeURlY2xhcmF0aW9uIiwic3RhdGVtZW50Tm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwibWV0YXZhcmlhYmxlTm9kZVF1ZXJ5IiwidmVyaWZ5RGVjbGFyYXRpb25GdW5jdGlvbnMiLCJ2ZXJpZnlEZXJpdmVkRGVjbGFyYXRpb24iLCJ2ZXJpZnlTdGF0ZWREZWNsYXJhdGlvbiIsImRlY2xhcmF0aW9uTm9kZSIsImRlY2xhcmF0aW9ucyIsInN0YXRlZCIsImxvY2FsQ29udGV4dCIsImRlY2xhcmF0aW9uVmVyaWZpZWQiLCJkZWNsYXJhdGlvblN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwic29tZSIsInZlcmlmeURlY2xhcmF0aW9uRnVuY3Rpb24iLCJkZWJ1ZyIsImRlcml2ZWREZWNsYXJhdGlvblZlcmlmaWVkIiwibWV0YVR5cGUiLCJyZWZlcmVuY2VNZXRhVHlwZSIsIm1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhdmFyaWFibGVWZXJpZmllZEdpdmVuTWV0YVR5cGUiLCJ2ZXJpZnlNZXRhdmFyaWFibGVHaXZlbk1ldGFUeXBlIiwidmVyaWZ5U3RhdGVtZW50Iiwic2hpbSIsImFzc2lnbm1lbnRzIiwic3RhdGVtZW50Tm9kZSIsInN0YXRlbWVudFZlcmlmaWVkIiwiZGVjbGFyYXRpb24iLCJEZWNsYXJhdGlvbiIsImZyb21NZXRhdmFyaWFibGVOb2RlQW5kU3RhdGVtZW50Tm9kZSIsInB1c2giLCJzdGF0ZWREZWNsYXJhdGlvblZlcmlmaWVkIiwiZnJhbWVNZXRhVHlwZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBa0JBOzs7ZUFBd0JBOzs7MkRBaEJQO2tFQUNPOzREQUNFO2dFQUNJO2dGQUNjO3FCQUVsQjs7Ozs7O0FBRTFCLElBQU1DLHFCQUFxQkMsSUFBQUEsZ0JBQVMsRUFBQywyQkFDL0JDLHdCQUF3QkQsSUFBQUEsZ0JBQVMsRUFBQztBQUV4QyxJQUFNRSw2QkFBNkI7SUFDakNDO0lBQ0FDO0NBQ0Q7QUFFYyxTQUFTTixrQkFBa0JPLGVBQWUsRUFBRUMsWUFBWSxFQUFFQyxNQUFNLEVBQUVDLFlBQVk7SUFDM0YsSUFBSUM7SUFFSixJQUFNQyxvQkFBb0JGLGFBQWFHLFlBQVksQ0FBQ047SUFFcERHLGFBQWFJLEtBQUssQ0FBQyxBQUFDLGtCQUFtQyxPQUFsQkYsbUJBQWtCLHFCQUFtQkw7SUFFMUVJLHNCQUFzQlAsMkJBQTJCVyxJQUFJLENBQUMsU0FBQ0M7UUFDckQsSUFBTUwsc0JBQXNCSywwQkFBMEJULGlCQUFpQkMsY0FBY0MsUUFBUUM7UUFFN0YsSUFBSUMscUJBQXFCO1lBQ3ZCLE9BQU87UUFDVDtJQUNGO0lBRUEsSUFBSUEscUJBQXFCO1FBQ3ZCRCxhQUFhTyxLQUFLLENBQUMsQUFBQyxvQkFBcUMsT0FBbEJMLG1CQUFrQixtQkFBaUJMO0lBQzVFO0lBRUEsT0FBT0k7QUFDVDtBQUVBLFNBQVNOLHlCQUF5QkUsZUFBZSxFQUFFQyxZQUFZLEVBQUVDLE1BQU0sRUFBRUMsWUFBWTtJQUNuRixJQUFJUTtJQUVKLElBQUksQ0FBQ1QsUUFBUTtRQUNYLElBQU1HLG9CQUFvQkYsYUFBYUcsWUFBWSxDQUFDTjtRQUVwREcsYUFBYUksS0FBSyxDQUFDLEFBQUMsa0JBQW1DLE9BQWxCRixtQkFBa0IsNkJBQTJCTDtRQUVsRixJQUFNWSxXQUFXQyxrQkFBaUIsRUFDNUJDLG1CQUFtQmxCLHNCQUFzQkksa0JBQ3pDZSxvQ0FBb0NDLElBQUFBLGtDQUErQixFQUFDRixrQkFBa0JGLFVBQVVUO1FBRXRHLElBQUlZLG1DQUFtQztZQUNyQyxJQUFNLEFBQUVFLGtCQUFvQkMsYUFBSSxDQUF4QkQsaUJBQ0ZmLFdBQVMsTUFDVGlCLGNBQWMsTUFDZEMsZ0JBQWdCMUIsbUJBQW1CTSxrQkFDbkNxQixvQkFBb0JKLGdCQUFnQkcsZUFBZUQsYUFBYWpCLFVBQVFDO1lBRTlFLElBQUlrQixtQkFBbUI7Z0JBQ3JCLElBQU1DLGNBQWNDLG9CQUFXLENBQUNDLG9DQUFvQyxDQUFDVixrQkFBa0JNO2dCQUV2Rm5CLGFBQWF3QixJQUFJLENBQUNIO2dCQUVsQlgsNkJBQTZCO1lBQy9CO1FBQ0Y7UUFFQSxJQUFJQSw0QkFBNEI7WUFDOUJSLGFBQWFPLEtBQUssQ0FBQyxBQUFDLG9CQUFxQyxPQUFsQkwsbUJBQWtCLDJCQUF5Qkw7UUFDcEY7SUFDRjtJQUVBLE9BQU9XO0FBQ1Q7QUFFQSxTQUFTWix3QkFBd0JDLGVBQWUsRUFBRUMsWUFBWSxFQUFFQyxNQUFNLEVBQUVDLFlBQVk7SUFDbEYsSUFBSXVCLDRCQUE0QjtJQUVoQyxJQUFJeEIsUUFBUTtRQUNWLElBQU1HLG9CQUFvQkYsYUFBYUcsWUFBWSxDQUFDTjtRQUVwREcsYUFBYUksS0FBSyxDQUFDLEFBQUMsa0JBQW1DLE9BQWxCRixtQkFBa0IsNEJBQTBCTDtRQUVqRixJQUFNb0IsZ0JBQWdCMUIsbUJBQW1CTSxrQkFDbkNZLFdBQVcsQUFBQ1Esa0JBQWtCLE9BQ2pCTyxjQUFhLEdBQ1hkLGtCQUFpQixFQUNoQ0MsbUJBQW1CbEIsc0JBQXNCSSxrQkFDekNlLG9DQUFvQ0MsSUFBQUEsa0NBQStCLEVBQUNGLGtCQUFrQkYsVUFBVVQ7UUFFdEcsSUFBSVksbUNBQW1DO1lBQ3JDLElBQUlNLG9CQUFvQixNQUFNLEdBQUc7WUFFakMsSUFBSUQsa0JBQWtCLE1BQU07Z0JBQzFCLElBQU0sQUFBRUgsa0JBQW9CQyxhQUFJLENBQXhCRCxpQkFDRmYsV0FBUyxNQUNUaUIsY0FBYztnQkFFcEJFLG9CQUFvQkosZ0JBQWdCRyxlQUFlRCxhQUFhakIsVUFBUUM7WUFDMUU7WUFFQSxJQUFJa0IsbUJBQW1CO2dCQUNyQixJQUFNQyxjQUFjQyxvQkFBVyxDQUFDQyxvQ0FBb0MsQ0FBQ1Ysa0JBQWtCTTtnQkFFdkZuQixhQUFhd0IsSUFBSSxDQUFDSDtnQkFFbEJJLDRCQUE0QjtZQUM5QjtRQUNGO1FBRUEsSUFBSUEsMkJBQTJCO1lBQzdCdkIsYUFBYU8sS0FBSyxDQUFDLEFBQUMsb0JBQXFDLE9BQWxCTCxtQkFBa0IsMEJBQXdCTDtRQUNuRjtJQUNGO0lBRUEsT0FBTzBCO0FBQ1QifQ==
@@ -9,17 +9,15 @@ Object.defineProperty(exports, "default", {
9
9
  }
10
10
  });
11
11
  var _frame = /*#__PURE__*/ _interop_require_default(require("../frame"));
12
- var _frame1 = /*#__PURE__*/ _interop_require_default(require("../metaType/frame"));
13
12
  var _declaration = /*#__PURE__*/ _interop_require_default(require("../verify/declaration"));
14
- var _metavariableGivenMetaType = /*#__PURE__*/ _interop_require_default(require("../verify/metavariableGivenMetaType"));
15
- var _query = require("../utilities/query");
16
13
  var _array = require("../utilities/array");
14
+ var _query = require("../utilities/query");
17
15
  function _interop_require_default(obj) {
18
16
  return obj && obj.__esModule ? obj : {
19
17
  default: obj
20
18
  };
21
19
  }
22
- var declarationNodesQuery = (0, _query.nodesQuery)("/frame/declaration"), metavariableNodesQuery = (0, _query.nodesQuery)("/frame/metavariable");
20
+ var declarationNodeQuery = (0, _query.nodeQuery)("/frame/declaration!"), declarationNodesQuery = (0, _query.nodesQuery)("/frame/declaration"), metavariableNodesQuery = (0, _query.nodesQuery)("/frame/metavariable");
23
21
  var verifyFrameFunctions = [
24
22
  verifyDerivedFrame,
25
23
  verifyStatedFrame
@@ -44,11 +42,13 @@ function verifyDerivedFrame(frameNode, frames, stated, localContext) {
44
42
  if (!stated) {
45
43
  var frameString = localContext.nodeAsString(frameNode);
46
44
  localContext.trace("Verifying the '".concat(frameString, "' derived frame..."), frameNode);
47
- var declarationNodes = declarationNodesQuery(frameNode), declarationNodesLength = declarationNodes.length;
45
+ var declarationNode = declarationNodeQuery(frameNode);
46
+ if (declarationNode !== null) {}
47
+ var declarationNodesLength = declarationNodes.length;
48
48
  if (declarationNodesLength === 1) {
49
49
  var metavariableNodes = metavariableNodesQuery(frameNode), metavariableNodesLength = metavariableNodes.length;
50
50
  if (metavariableNodesLength === 0) {
51
- var firstDeclarationNode = (0, _array.first)(declarationNodes), declarationNode = firstDeclarationNode, declarations = [], declarationVerified = (0, _declaration.default)(declarationNode, declarations, stated, localContext);
51
+ var firstDeclarationNode = (0, _array.first)(declarationNodes), declarationNode1 = firstDeclarationNode, declarations = [], declarationVerified = (0, _declaration.default)(declarationNode1, declarations, stated, localContext);
52
52
  if (declarationVerified) {
53
53
  var frame = _frame.default.fromDeclarations(declarations);
54
54
  frames.push(frame);
@@ -71,20 +71,21 @@ function verifyStatedFrame(frameNode, frames, stated, localContext) {
71
71
  if (stated) {
72
72
  var frameString = localContext.nodeAsString(frameNode);
73
73
  localContext.trace("Verifying the '".concat(frameString, "' stated frame..."), frameNode);
74
- var declarations = [], declarationNodes = declarationNodesQuery(frameNode), declarationsVerified = declarationNodes.every(function(declarationNode) {
75
- var declarationVerified = (0, _declaration.default)(declarationNode, declarations, stated, localContext);
76
- return declarationVerified;
77
- });
78
- if (declarationsVerified) {
79
- var metavariableNodes = metavariableNodesQuery(frameNode), metavariablesVerified = metavariableNodes.every(function(metavariableNode) {
80
- var metavariableVerified = verifyMetavariable(metavariableNode, declarations, localContext);
81
- return metavariableVerified;
82
- });
83
- if (metavariablesVerified) {
84
- var frame = _frame.default.fromDeclarations(declarations);
85
- frames.push(frame);
86
- statedFrameVerified = true;
74
+ var declarationNode = declarationNodeQuery(frameNode);
75
+ if (declarationNode !== null) {
76
+ var declarations = [], declarationVerified = (0, _declaration.default)(declarationNode, declarations, stated, localContext);
77
+ if (declarationVerified) {
78
+ var firstDeclaration = (0, _array.first)(declarations), declaration = firstDeclaration, statementNode = declaration.getStatementNode();
79
+ if (statementNode === null) {
80
+ var frame = _frame.default.fromDeclarations(declarations);
81
+ frames.push(frame);
82
+ statedFrameVerified = true;
83
+ } else {
84
+ localContext.trace("The '".concat(frameString, "' stated frame's declaration cannot contain a statement."), frameNode);
85
+ }
87
86
  }
87
+ } else {
88
+ localContext.trace("The '".concat(frameString, "' stated frame has more than one declaration ."), frameNode);
88
89
  }
89
90
  if (statedFrameVerified) {
90
91
  localContext.debug("...verified the '".concat(frameString, "' stated frame."), frameNode);
@@ -92,21 +93,5 @@ function verifyStatedFrame(frameNode, frames, stated, localContext) {
92
93
  }
93
94
  return statedFrameVerified;
94
95
  }
95
- function verifyMetavariable(metavariableNode, declarations, localContext) {
96
- var metavariableVerified = false;
97
- var metaType = _frame1.default, metavariableVerifiedGivenMetaType = (0, _metavariableGivenMetaType.default)(metavariableNode, metaType, localContext);
98
- if (metavariableVerifiedGivenMetaType) {
99
- var judgement = localContext.findJudgementByMetavariableNode(metavariableNode);
100
- if (judgement !== null) {
101
- var judgementDeclarations = judgement.getDeclarations();
102
- (0, _array.push)(declarations, judgementDeclarations);
103
- metavariableVerified = true;
104
- } else {
105
- var metavariableString = localContext.nodeAsString(metavariableNode);
106
- localContext.debug("There is no judgement for the '".concat(metavariableString, "' metavariable."), metavariableNode);
107
- }
108
- }
109
- return metavariableVerified;
110
- }
111
96
 
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvZnJhbWUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBGcmFtZSBmcm9tIFwiLi4vZnJhbWVcIjtcbmltcG9ydCBmcmFtZU1ldGFUeXBlIGZyb20gXCIuLi9tZXRhVHlwZS9mcmFtZVwiO1xuaW1wb3J0IHZlcmlmeURlY2xhcmF0aW9uIGZyb20gXCIuLi92ZXJpZnkvZGVjbGFyYXRpb25cIjtcbmltcG9ydCB2ZXJpZnlNZXRhdmFyaWFibGVHaXZlbk1ldGFUeXBlIGZyb20gXCIuLi92ZXJpZnkvbWV0YXZhcmlhYmxlR2l2ZW5NZXRhVHlwZVwiO1xuXG5pbXBvcnQgeyBub2Rlc1F1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgZmlyc3QsIHB1c2ggfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5cbmNvbnN0IGRlY2xhcmF0aW9uTm9kZXNRdWVyeSA9IG5vZGVzUXVlcnkoXCIvZnJhbWUvZGVjbGFyYXRpb25cIiksXG4gICAgICBtZXRhdmFyaWFibGVOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9mcmFtZS9tZXRhdmFyaWFibGVcIik7XG5cbmNvbnN0IHZlcmlmeUZyYW1lRnVuY3Rpb25zID0gW1xuICB2ZXJpZnlEZXJpdmVkRnJhbWUsXG4gIHZlcmlmeVN0YXRlZEZyYW1lXG5dO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlGcmFtZShmcmFtZU5vZGUsIGZyYW1lcywgc3RhdGVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGZyYW1lVmVyaWZpZWQ7XG5cbiAgY29uc3QgZnJhbWVTdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGZyYW1lTm9kZSk7XG5cbiAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2ZyYW1lU3RyaW5nfScgZnJhbWUuLi5gLCBmcmFtZU5vZGUpO1xuXG4gIGZyYW1lVmVyaWZpZWQgPSB2ZXJpZnlGcmFtZUZ1bmN0aW9ucy5zb21lKCh2ZXJpZnlGcmFtZUZ1bmN0aW9uKSA9PiB7XG4gICAgY29uc3QgZnJhbWVWZXJpZmllZCA9IHZlcmlmeUZyYW1lRnVuY3Rpb24oZnJhbWVOb2RlLCBmcmFtZXMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KTtcblxuICAgIGlmIChmcmFtZVZlcmlmaWVkKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xuXG4gIGlmIChmcmFtZVZlcmlmaWVkKSB7XG4gICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7ZnJhbWVTdHJpbmd9JyBmcmFtZS5gLCBmcmFtZU5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIGZyYW1lVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeURlcml2ZWRGcmFtZShmcmFtZU5vZGUsIGZyYW1lcywgc3RhdGVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGRlcml2ZWRGcmFtZVZlcmlmaWVkO1xuXG4gIGlmICghc3RhdGVkKSB7XG4gICAgY29uc3QgZnJhbWVTdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGZyYW1lTm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7ZnJhbWVTdHJpbmd9JyBkZXJpdmVkIGZyYW1lLi4uYCwgZnJhbWVOb2RlKTtcblxuICAgIGNvbnN0IGRlY2xhcmF0aW9uTm9kZXMgPSBkZWNsYXJhdGlvbk5vZGVzUXVlcnkoZnJhbWVOb2RlKSxcbiAgICAgICAgICBkZWNsYXJhdGlvbk5vZGVzTGVuZ3RoID0gZGVjbGFyYXRpb25Ob2Rlcy5sZW5ndGg7XG5cbiAgICBpZiAoZGVjbGFyYXRpb25Ob2Rlc0xlbmd0aCA9PT0gMSkge1xuICAgICAgY29uc3QgbWV0YXZhcmlhYmxlTm9kZXMgPSBtZXRhdmFyaWFibGVOb2Rlc1F1ZXJ5KGZyYW1lTm9kZSksXG4gICAgICAgICAgICBtZXRhdmFyaWFibGVOb2Rlc0xlbmd0aCA9IG1ldGF2YXJpYWJsZU5vZGVzLmxlbmd0aDtcblxuICAgICAgaWYgKG1ldGF2YXJpYWJsZU5vZGVzTGVuZ3RoID09PSAwKSB7XG4gICAgICAgIGNvbnN0IGZpcnN0RGVjbGFyYXRpb25Ob2RlID0gZmlyc3QoZGVjbGFyYXRpb25Ob2RlcyksXG4gICAgICAgICAgICAgIGRlY2xhcmF0aW9uTm9kZSA9IGZpcnN0RGVjbGFyYXRpb25Ob2RlLCAvLy9cbiAgICAgICAgICAgICAgZGVjbGFyYXRpb25zID0gW10sXG4gICAgICAgICAgICAgIGRlY2xhcmF0aW9uVmVyaWZpZWQgPSB2ZXJpZnlEZWNsYXJhdGlvbihkZWNsYXJhdGlvbk5vZGUsIGRlY2xhcmF0aW9ucywgc3RhdGVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICAgIGlmIChkZWNsYXJhdGlvblZlcmlmaWVkKSB7XG4gICAgICAgICAgY29uc3QgZnJhbWUgPSBGcmFtZS5mcm9tRGVjbGFyYXRpb25zKGRlY2xhcmF0aW9ucyk7XG5cbiAgICAgICAgICBmcmFtZXMucHVzaChmcmFtZSk7XG5cbiAgICAgICAgICBkZXJpdmVkRnJhbWVWZXJpZmllZCA9IHRydWU7IC8vL1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBsb2NhbENvbnRleHQuZGVidWcoYFRoZSAnJHtmcmFtZVN0cmluZ30nIGRlcml2ZWQgZnJhbWUgbXVzdCBubyBzcHJlYWQgbWV0YXZhcmlhYmxlcy5gLCBmcmFtZU5vZGUpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYFRoZSAnJHtmcmFtZVN0cmluZ30nIGRlcml2ZWQgZnJhbWUgbXVzdCBoYXZlIG9uZSBhbmQgb25seSBvbmUgZGVjbGFyYXRpb24uYCwgZnJhbWVOb2RlKTtcbiAgICB9XG5cbiAgICBpZiAoZGVyaXZlZEZyYW1lVmVyaWZpZWQpIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2ZyYW1lU3RyaW5nfScgZGVyaXZlZCBmcmFtZS5gLCBmcmFtZU5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBkZXJpdmVkRnJhbWVWZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5U3RhdGVkRnJhbWUoZnJhbWVOb2RlLCBmcmFtZXMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBzdGF0ZWRGcmFtZVZlcmlmaWVkO1xuXG4gIGlmIChzdGF0ZWQpIHtcbiAgICBjb25zdCBmcmFtZVN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoZnJhbWVOb2RlKTtcblxuICAgIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtmcmFtZVN0cmluZ30nIHN0YXRlZCBmcmFtZS4uLmAsIGZyYW1lTm9kZSk7XG5cbiAgICBjb25zdCBkZWNsYXJhdGlvbnMgPSBbXSxcbiAgICAgICAgICBkZWNsYXJhdGlvbk5vZGVzID0gZGVjbGFyYXRpb25Ob2Rlc1F1ZXJ5KGZyYW1lTm9kZSksXG4gICAgICAgICAgZGVjbGFyYXRpb25zVmVyaWZpZWQgPSBkZWNsYXJhdGlvbk5vZGVzLmV2ZXJ5KChkZWNsYXJhdGlvbk5vZGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGRlY2xhcmF0aW9uVmVyaWZpZWQgPSB2ZXJpZnlEZWNsYXJhdGlvbihkZWNsYXJhdGlvbk5vZGUsIGRlY2xhcmF0aW9ucywgc3RhdGVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICAgICAgICByZXR1cm4gZGVjbGFyYXRpb25WZXJpZmllZDtcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIGlmIChkZWNsYXJhdGlvbnNWZXJpZmllZCkge1xuICAgICAgICAgICAgY29uc3QgbWV0YXZhcmlhYmxlTm9kZXMgPSBtZXRhdmFyaWFibGVOb2Rlc1F1ZXJ5KGZyYW1lTm9kZSksXG4gICAgICAgICAgICAgICAgICBtZXRhdmFyaWFibGVzVmVyaWZpZWQgPSBtZXRhdmFyaWFibGVOb2Rlcy5ldmVyeSgobWV0YXZhcmlhYmxlTm9kZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBtZXRhdmFyaWFibGVWZXJpZmllZCA9IHZlcmlmeU1ldGF2YXJpYWJsZShtZXRhdmFyaWFibGVOb2RlLCBkZWNsYXJhdGlvbnMsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG1ldGF2YXJpYWJsZVZlcmlmaWVkO1xuICAgICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGlmIChtZXRhdmFyaWFibGVzVmVyaWZpZWQpIHtcbiAgICAgICAgICAgICAgY29uc3QgZnJhbWUgPSBGcmFtZS5mcm9tRGVjbGFyYXRpb25zKGRlY2xhcmF0aW9ucyk7XG5cbiAgICAgICAgICAgICAgZnJhbWVzLnB1c2goZnJhbWUpO1xuXG4gICAgICAgICAgICAgIHN0YXRlZEZyYW1lVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgIGlmIChzdGF0ZWRGcmFtZVZlcmlmaWVkKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtmcmFtZVN0cmluZ30nIHN0YXRlZCBmcmFtZS5gLCBmcmFtZU5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzdGF0ZWRGcmFtZVZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlNZXRhdmFyaWFibGUobWV0YXZhcmlhYmxlTm9kZSwgZGVjbGFyYXRpb25zLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IG1ldGF2YXJpYWJsZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgY29uc3QgbWV0YVR5cGUgPSBmcmFtZU1ldGFUeXBlLCAvLy9cbiAgICAgICAgbWV0YXZhcmlhYmxlVmVyaWZpZWRHaXZlbk1ldGFUeXBlID0gdmVyaWZ5TWV0YXZhcmlhYmxlR2l2ZW5NZXRhVHlwZShtZXRhdmFyaWFibGVOb2RlLCBtZXRhVHlwZSwgbG9jYWxDb250ZXh0KTtcblxuICBpZiAobWV0YXZhcmlhYmxlVmVyaWZpZWRHaXZlbk1ldGFUeXBlKSB7XG4gICAgY29uc3QganVkZ2VtZW50ID0gbG9jYWxDb250ZXh0LmZpbmRKdWRnZW1lbnRCeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgICBpZiAoanVkZ2VtZW50ICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBqdWRnZW1lbnREZWNsYXJhdGlvbnMgPSBqdWRnZW1lbnQuZ2V0RGVjbGFyYXRpb25zKCk7XG5cbiAgICAgIHB1c2goZGVjbGFyYXRpb25zLCBqdWRnZW1lbnREZWNsYXJhdGlvbnMpO1xuXG4gICAgICBtZXRhdmFyaWFibGVWZXJpZmllZCA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IG1ldGF2YXJpYWJsZVN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgVGhlcmUgaXMgbm8ganVkZ2VtZW50IGZvciB0aGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgbWV0YXZhcmlhYmxlLmAsIG1ldGF2YXJpYWJsZU5vZGUpXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG1ldGF2YXJpYWJsZVZlcmlmaWVkO1xufSJdLCJuYW1lcyI6WyJ2ZXJpZnlGcmFtZSIsImRlY2xhcmF0aW9uTm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJtZXRhdmFyaWFibGVOb2Rlc1F1ZXJ5IiwidmVyaWZ5RnJhbWVGdW5jdGlvbnMiLCJ2ZXJpZnlEZXJpdmVkRnJhbWUiLCJ2ZXJpZnlTdGF0ZWRGcmFtZSIsImZyYW1lTm9kZSIsImZyYW1lcyIsInN0YXRlZCIsImxvY2FsQ29udGV4dCIsImZyYW1lVmVyaWZpZWQiLCJmcmFtZVN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwic29tZSIsInZlcmlmeUZyYW1lRnVuY3Rpb24iLCJkZWJ1ZyIsImRlcml2ZWRGcmFtZVZlcmlmaWVkIiwiZGVjbGFyYXRpb25Ob2RlcyIsImRlY2xhcmF0aW9uTm9kZXNMZW5ndGgiLCJsZW5ndGgiLCJtZXRhdmFyaWFibGVOb2RlcyIsIm1ldGF2YXJpYWJsZU5vZGVzTGVuZ3RoIiwiZmlyc3REZWNsYXJhdGlvbk5vZGUiLCJmaXJzdCIsImRlY2xhcmF0aW9uTm9kZSIsImRlY2xhcmF0aW9ucyIsImRlY2xhcmF0aW9uVmVyaWZpZWQiLCJ2ZXJpZnlEZWNsYXJhdGlvbiIsImZyYW1lIiwiRnJhbWUiLCJmcm9tRGVjbGFyYXRpb25zIiwicHVzaCIsInN0YXRlZEZyYW1lVmVyaWZpZWQiLCJkZWNsYXJhdGlvbnNWZXJpZmllZCIsImV2ZXJ5IiwibWV0YXZhcmlhYmxlc1ZlcmlmaWVkIiwibWV0YXZhcmlhYmxlTm9kZSIsIm1ldGF2YXJpYWJsZVZlcmlmaWVkIiwidmVyaWZ5TWV0YXZhcmlhYmxlIiwibWV0YVR5cGUiLCJmcmFtZU1ldGFUeXBlIiwibWV0YXZhcmlhYmxlVmVyaWZpZWRHaXZlbk1ldGFUeXBlIiwidmVyaWZ5TWV0YXZhcmlhYmxlR2l2ZW5NZXRhVHlwZSIsImp1ZGdlbWVudCIsImZpbmRKdWRnZW1lbnRCeU1ldGF2YXJpYWJsZU5vZGUiLCJqdWRnZW1lbnREZWNsYXJhdGlvbnMiLCJnZXREZWNsYXJhdGlvbnMiLCJtZXRhdmFyaWFibGVTdHJpbmciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWtCQTs7O2VBQXdCQTs7OzREQWhCTjs2REFDUTtrRUFDSTtnRkFDYztxQkFFakI7cUJBQ0M7Ozs7OztBQUU1QixJQUFNQyx3QkFBd0JDLElBQUFBLGlCQUFVLEVBQUMsdUJBQ25DQyx5QkFBeUJELElBQUFBLGlCQUFVLEVBQUM7QUFFMUMsSUFBTUUsdUJBQXVCO0lBQzNCQztJQUNBQztDQUNEO0FBRWMsU0FBU04sWUFBWU8sU0FBUyxFQUFFQyxNQUFNLEVBQUVDLE1BQU0sRUFBRUMsWUFBWTtJQUN6RSxJQUFJQztJQUVKLElBQU1DLGNBQWNGLGFBQWFHLFlBQVksQ0FBQ047SUFFOUNHLGFBQWFJLEtBQUssQ0FBQyxBQUFDLGtCQUE2QixPQUFaRixhQUFZLGVBQWFMO0lBRTlESSxnQkFBZ0JQ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
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvZnJhbWUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBGcmFtZSBmcm9tIFwiLi4vZnJhbWVcIjtcbmltcG9ydCB2ZXJpZnlEZWNsYXJhdGlvbiBmcm9tIFwiLi4vdmVyaWZ5L2RlY2xhcmF0aW9uXCI7XG5cbmltcG9ydCB7IGZpcnN0IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuaW1wb3J0IHsgbm9kZVF1ZXJ5LCBub2Rlc1F1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBkZWNsYXJhdGlvbk5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9mcmFtZS9kZWNsYXJhdGlvbiFcIiksXG4gICAgICBkZWNsYXJhdGlvbk5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL2ZyYW1lL2RlY2xhcmF0aW9uXCIpLFxuICAgICAgbWV0YXZhcmlhYmxlTm9kZXNRdWVyeSA9IG5vZGVzUXVlcnkoXCIvZnJhbWUvbWV0YXZhcmlhYmxlXCIpO1xuXG5jb25zdCB2ZXJpZnlGcmFtZUZ1bmN0aW9ucyA9IFtcbiAgdmVyaWZ5RGVyaXZlZEZyYW1lLFxuICB2ZXJpZnlTdGF0ZWRGcmFtZVxuXTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5RnJhbWUoZnJhbWVOb2RlLCBmcmFtZXMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBmcmFtZVZlcmlmaWVkO1xuXG4gIGNvbnN0IGZyYW1lU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhmcmFtZU5vZGUpO1xuXG4gIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtmcmFtZVN0cmluZ30nIGZyYW1lLi4uYCwgZnJhbWVOb2RlKTtcblxuICBmcmFtZVZlcmlmaWVkID0gdmVyaWZ5RnJhbWVGdW5jdGlvbnMuc29tZSgodmVyaWZ5RnJhbWVGdW5jdGlvbikgPT4ge1xuICAgIGNvbnN0IGZyYW1lVmVyaWZpZWQgPSB2ZXJpZnlGcmFtZUZ1bmN0aW9uKGZyYW1lTm9kZSwgZnJhbWVzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAoZnJhbWVWZXJpZmllZCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcblxuICBpZiAoZnJhbWVWZXJpZmllZCkge1xuICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2ZyYW1lU3RyaW5nfScgZnJhbWUuYCwgZnJhbWVOb2RlKTtcbiAgfVxuXG4gIHJldHVybiBmcmFtZVZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlEZXJpdmVkRnJhbWUoZnJhbWVOb2RlLCBmcmFtZXMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBkZXJpdmVkRnJhbWVWZXJpZmllZDtcblxuICBpZiAoIXN0YXRlZCkge1xuICAgIGNvbnN0IGZyYW1lU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhmcmFtZU5vZGUpO1xuXG4gICAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2ZyYW1lU3RyaW5nfScgZGVyaXZlZCBmcmFtZS4uLmAsIGZyYW1lTm9kZSk7XG5cbiAgICBjb25zdCBkZWNsYXJhdGlvbk5vZGUgPSBkZWNsYXJhdGlvbk5vZGVRdWVyeShmcmFtZU5vZGUpO1xuXG4gICAgaWYgKGRlY2xhcmF0aW9uTm9kZSAhPT0gbnVsbCkge1xuXG4gICAgfVxuICAgIGNvbnN0IGRlY2xhcmF0aW9uTm9kZXNMZW5ndGggPSBkZWNsYXJhdGlvbk5vZGVzLmxlbmd0aDtcblxuICAgIGlmIChkZWNsYXJhdGlvbk5vZGVzTGVuZ3RoID09PSAxKSB7XG4gICAgICBjb25zdCBtZXRhdmFyaWFibGVOb2RlcyA9IG1ldGF2YXJpYWJsZU5vZGVzUXVlcnkoZnJhbWVOb2RlKSxcbiAgICAgICAgICAgIG1ldGF2YXJpYWJsZU5vZGVzTGVuZ3RoID0gbWV0YXZhcmlhYmxlTm9kZXMubGVuZ3RoO1xuXG4gICAgICBpZiAobWV0YXZhcmlhYmxlTm9kZXNMZW5ndGggPT09IDApIHtcbiAgICAgICAgY29uc3QgZmlyc3REZWNsYXJhdGlvbk5vZGUgPSBmaXJzdChkZWNsYXJhdGlvbk5vZGVzKSxcbiAgICAgICAgICAgICAgZGVjbGFyYXRpb25Ob2RlID0gZmlyc3REZWNsYXJhdGlvbk5vZGUsIC8vL1xuICAgICAgICAgICAgICBkZWNsYXJhdGlvbnMgPSBbXSxcbiAgICAgICAgICAgICAgZGVjbGFyYXRpb25WZXJpZmllZCA9IHZlcmlmeURlY2xhcmF0aW9uKGRlY2xhcmF0aW9uTm9kZSwgZGVjbGFyYXRpb25zLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgICAgaWYgKGRlY2xhcmF0aW9uVmVyaWZpZWQpIHtcbiAgICAgICAgICBjb25zdCBmcmFtZSA9IEZyYW1lLmZyb21EZWNsYXJhdGlvbnMoZGVjbGFyYXRpb25zKTtcblxuICAgICAgICAgIGZyYW1lcy5wdXNoKGZyYW1lKTtcblxuICAgICAgICAgIGRlcml2ZWRGcmFtZVZlcmlmaWVkID0gdHJ1ZTsgLy8vXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgVGhlICcke2ZyYW1lU3RyaW5nfScgZGVyaXZlZCBmcmFtZSBtdXN0IG5vIHNwcmVhZCBtZXRhdmFyaWFibGVzLmAsIGZyYW1lTm9kZSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgVGhlICcke2ZyYW1lU3RyaW5nfScgZGVyaXZlZCBmcmFtZSBtdXN0IGhhdmUgb25lIGFuZCBvbmx5IG9uZSBkZWNsYXJhdGlvbi5gLCBmcmFtZU5vZGUpO1xuICAgIH1cblxuICAgIGlmIChkZXJpdmVkRnJhbWVWZXJpZmllZCkge1xuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7ZnJhbWVTdHJpbmd9JyBkZXJpdmVkIGZyYW1lLmAsIGZyYW1lTm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGRlcml2ZWRGcmFtZVZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlTdGF0ZWRGcmFtZShmcmFtZU5vZGUsIGZyYW1lcywgc3RhdGVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IHN0YXRlZEZyYW1lVmVyaWZpZWQ7XG5cbiAgaWYgKHN0YXRlZCkge1xuICAgIGNvbnN0IGZyYW1lU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhmcmFtZU5vZGUpO1xuXG4gICAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2ZyYW1lU3RyaW5nfScgc3RhdGVkIGZyYW1lLi4uYCwgZnJhbWVOb2RlKTtcblxuICAgIGNvbnN0IGRlY2xhcmF0aW9uTm9kZSA9IGRlY2xhcmF0aW9uTm9kZVF1ZXJ5KGZyYW1lTm9kZSk7XG5cbiAgICBpZiAoZGVjbGFyYXRpb25Ob2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBkZWNsYXJhdGlvbnMgPSBbXSxcbiAgICAgICAgICAgIGRlY2xhcmF0aW9uVmVyaWZpZWQgPSB2ZXJpZnlEZWNsYXJhdGlvbihkZWNsYXJhdGlvbk5vZGUsIGRlY2xhcmF0aW9ucywgc3RhdGVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICBpZiAoZGVjbGFyYXRpb25WZXJpZmllZCkge1xuICAgICAgICBjb25zdCBmaXJzdERlY2xhcmF0aW9uID0gZmlyc3QoZGVjbGFyYXRpb25zKSxcbiAgICAgICAgICAgICAgZGVjbGFyYXRpb24gPSBmaXJzdERlY2xhcmF0aW9uLCAvLy9cbiAgICAgICAgICAgICAgc3RhdGVtZW50Tm9kZSA9IGRlY2xhcmF0aW9uLmdldFN0YXRlbWVudE5vZGUoKTtcblxuICAgICAgICBpZiAoc3RhdGVtZW50Tm9kZSA9PT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IGZyYW1lID0gRnJhbWUuZnJvbURlY2xhcmF0aW9ucyhkZWNsYXJhdGlvbnMpO1xuXG4gICAgICAgICAgZnJhbWVzLnB1c2goZnJhbWUpO1xuXG4gICAgICAgICAgc3RhdGVkRnJhbWVWZXJpZmllZCA9IHRydWU7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbG9jYWxDb250ZXh0LnRyYWNlKGBUaGUgJyR7ZnJhbWVTdHJpbmd9JyBzdGF0ZWQgZnJhbWUncyBkZWNsYXJhdGlvbiBjYW5ub3QgY29udGFpbiBhIHN0YXRlbWVudC5gLCBmcmFtZU5vZGUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGxvY2FsQ29udGV4dC50cmFjZShgVGhlICcke2ZyYW1lU3RyaW5nfScgc3RhdGVkIGZyYW1lIGhhcyBtb3JlIHRoYW4gb25lIGRlY2xhcmF0aW9uIC5gLCBmcmFtZU5vZGUpO1xuICAgIH1cblxuICAgIGlmIChzdGF0ZWRGcmFtZVZlcmlmaWVkKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtmcmFtZVN0cmluZ30nIHN0YXRlZCBmcmFtZS5gLCBmcmFtZU5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzdGF0ZWRGcmFtZVZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeUZyYW1lIiwiZGVjbGFyYXRpb25Ob2RlUXVlcnkiLCJub2RlUXVlcnkiLCJkZWNsYXJhdGlvbk5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5IiwibWV0YXZhcmlhYmxlTm9kZXNRdWVyeSIsInZlcmlmeUZyYW1lRnVuY3Rpb25zIiwidmVyaWZ5RGVyaXZlZEZyYW1lIiwidmVyaWZ5U3RhdGVkRnJhbWUiLCJmcmFtZU5vZGUiLCJmcmFtZXMiLCJzdGF0ZWQiLCJsb2NhbENvbnRleHQiLCJmcmFtZVZlcmlmaWVkIiwiZnJhbWVTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsInNvbWUiLCJ2ZXJpZnlGcmFtZUZ1bmN0aW9uIiwiZGVidWciLCJkZXJpdmVkRnJhbWVWZXJpZmllZCIsImRlY2xhcmF0aW9uTm9kZSIsImRlY2xhcmF0aW9uTm9kZXNMZW5ndGgiLCJkZWNsYXJhdGlvbk5vZGVzIiwibGVuZ3RoIiwibWV0YXZhcmlhYmxlTm9kZXMiLCJtZXRhdmFyaWFibGVOb2Rlc0xlbmd0aCIsImZpcnN0RGVjbGFyYXRpb25Ob2RlIiwiZmlyc3QiLCJkZWNsYXJhdGlvbnMiLCJkZWNsYXJhdGlvblZlcmlmaWVkIiwidmVyaWZ5RGVjbGFyYXRpb24iLCJmcmFtZSIsIkZyYW1lIiwiZnJvbURlY2xhcmF0aW9ucyIsInB1c2giLCJzdGF0ZWRGcmFtZVZlcmlmaWVkIiwiZmlyc3REZWNsYXJhdGlvbiIsImRlY2xhcmF0aW9uIiwic3RhdGVtZW50Tm9kZSIsImdldFN0YXRlbWVudE5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWlCQTs7O2VBQXdCQTs7OzREQWZOO2tFQUNZO3FCQUVSO3FCQUNnQjs7Ozs7O0FBRXRDLElBQU1DLHVCQUF1QkMsSUFBQUEsZ0JBQVMsRUFBQyx3QkFDakNDLHdCQUF3QkMsSUFBQUEsaUJBQVUsRUFBQyx1QkFDbkNDLHlCQUF5QkQsSUFBQUEsaUJBQVUsRUFBQztBQUUxQyxJQUFNRSx1QkFBdUI7SUFDM0JDO0lBQ0FDO0NBQ0Q7QUFFYyxTQUFTUixZQUFZUyxTQUFTLEVBQUVDLE1BQU0sRUFBRUMsTUFBTSxFQUFFQyxZQUFZO0lBQ3pFLElBQUlDO0lBRUosSUFBTUMsY0FBY0YsYUFBYUcsWUFBWSxDQUFDTjtJQUU5Q0csYUFBYUksS0FBSyxDQUFDLEFBQUMsa0JBQTZCLE9BQVpGLGFBQVksZUFBYUw7SUFFOURJLGdCQUFnQlAscUJBQXFCVyxJQUFJLENBQUMsU0FBQ0M7UUFDekMsSUFBTUwsZ0JBQWdCSyxvQkFBb0JULFdBQVdDLFFBQVFDLFFBQVFDO1FBRXJFLElBQUlDLGVBQWU7WUFDakIsT0FBTztRQUNUO0lBQ0Y7SUFFQSxJQUFJQSxlQUFlO1FBQ2pCRCxhQUFhTyxLQUFLLENBQUMsQUFBQyxvQkFBK0IsT0FBWkwsYUFBWSxhQUFXTDtJQUNoRTtJQUVBLE9BQU9JO0FBQ1Q7QUFFQSxTQUFTTixtQkFBbUJFLFNBQVMsRUFBRUMs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
@@ -10,17 +10,16 @@ Object.defineProperty(exports, "default", {
10
10
  });
11
11
  var _judgement = /*#__PURE__*/ _interop_require_default(require("../judgement"));
12
12
  var _frame = /*#__PURE__*/ _interop_require_default(require("../verify/frame"));
13
- var _frame1 = /*#__PURE__*/ _interop_require_default(require("../metaType/frame"));
14
13
  var _judgement1 = /*#__PURE__*/ _interop_require_default(require("../assignment/judgement"));
15
- var _metavariableGivenMetaType = /*#__PURE__*/ _interop_require_default(require("../verify/metavariableGivenMetaType"));
16
14
  var _array = require("../utilities/array");
17
15
  var _query = require("../utilities/query");
16
+ var _declaration = /*#__PURE__*/ _interop_require_default(require("./declaration"));
18
17
  function _interop_require_default(obj) {
19
18
  return obj && obj.__esModule ? obj : {
20
19
  default: obj
21
20
  };
22
21
  }
23
- var frameNodeQuery = (0, _query.nodeQuery)("/judgement/frame!"), metavariableNodeQuery = (0, _query.nodeQuery)("/judgement/statement/metavariable!");
22
+ var frameNodeQuery = (0, _query.nodeQuery)("/judgement/frame"), declarationNodeQuery = (0, _query.nodeQuery)("/judgement/declaration");
24
23
  var verifyJudgementFunctions = [
25
24
  verifyDerivedJudgement,
26
25
  verifyStatedJudgement
@@ -45,25 +44,26 @@ function verifyDerivedJudgement(judgementNode, assignments, stated, localContext
45
44
  if (!stated) {
46
45
  var judgementString = localContext.nodeAsString(judgementNode);
47
46
  localContext.trace("Verifying the '".concat(judgementString, "' derived judgement..."), judgementNode);
48
- var metavariableNode = metavariableNodeQuery(judgementNode);
49
- if (metavariableNode !== null) {
50
- var metaType = _frame1.default, metavariableVerifiedGivenMetaType = (0, _metavariableGivenMetaType.default)(metavariableNode, metaType, localContext);
51
- if (metavariableVerifiedGivenMetaType) {
52
- var judgement = localContext.findJudgementByMetavariableNode(metavariableNode);
53
- if (judgement !== null) {
54
- var frames = [], frameNode = frameNodeQuery(judgementNode), frameVerified = (0, _frame.default)(frameNode, frames, stated, localContext);
55
- if (frameVerified) {
56
- var firstFrame = (0, _array.first)(frames), frame = firstFrame, declaration = frame.getDeclaration(), metavariableNode1 = declaration.getMetavariableNode(), metatheorem = localContext.findMetatheoremByMetavariableNode(metavariableNode1), metaLemma = localContext.findMetaLemmaByMetavariableNode(metavariableNode1), metaLemmaMetatheorem = metaLemma || metatheorem; ///
57
- if (metaLemmaMetatheorem !== null) {
58
- var metaLemmaMetatheoremUnifiedWithJudgement = judgement.unifyMetaLemmaOrMetatheorem(metaLemmaMetatheorem), metaLemmaMetatheoremUnifiedWithDeclaration = declaration.unifyMetaLemmaOrMetatheorem(metaLemmaMetatheorem);
59
- derivedJudgementVerified = metaLemmaMetatheoremUnifiedWithJudgement && metaLemmaMetatheoremUnifiedWithDeclaration;
60
- }
61
- }
62
- } else {
63
- var metavariableString = localContext.nodeAsString(metavariableNode);
64
- localContext.debug("There is no judgement for the '".concat(metavariableString, "' metavariable."), metavariableNode);
65
- }
66
- }
47
+ var frames = [], frameNode = frameNodeQuery(judgementNode), frameVerified = (0, _frame.default)(frameNode, frames, stated, localContext);
48
+ if (frameVerified) {
49
+ // const firstFrame = first(frames),
50
+ // frame = firstFrame, ///
51
+ // declaration = frame.getDeclaration(),
52
+ // metavariableNode = declaration.getMetavariableNode(),
53
+ // metatheorem = localContext.findMetatheoremByMetavariableNode(metavariableNode),
54
+ // metaLemma = localContext.findMetaLemmaByMetavariableNode(metavariableNode),
55
+ // metaLemmaMetatheorem = (metaLemma || metatheorem); ///
56
+ //
57
+ // if (metaLemmaMetatheorem !== null) {
58
+ // const metaLemmaMetatheoremUnifiedWithJudgement = judgement.unifyMetaLemmaOrMetatheorem(metaLemmaMetatheorem),
59
+ // metaLemmaMetatheoremUnifiedWithDeclaration = declaration.unifyMetaLemmaOrMetatheorem(metaLemmaMetatheorem);
60
+ //
61
+ // derivedJudgementVerified = (metaLemmaMetatheoremUnifiedWithJudgement && metaLemmaMetatheoremUnifiedWithDeclaration);
62
+ // }
63
+ } else {
64
+ // const metavariableString = localContext.nodeAsString(metavariableNode);
65
+ //
66
+ // localContext.debug(`There is no judgement for the '${metavariableString}' metavariable.`, metavariableNode)
67
67
  }
68
68
  if (derivedJudgementVerified) {
69
69
  localContext.debug("...verified the '".concat(judgementString, "' derived judgement."), judgementNode);
@@ -76,18 +76,15 @@ function verifyStatedJudgement(judgementNode, assignments, stated, localContext)
76
76
  if (stated) {
77
77
  var judgementString = localContext.nodeAsString(judgementNode);
78
78
  localContext.trace("Verifying the '".concat(judgementString, "' stated judgement..."), judgementNode);
79
- var metavariableNode = metavariableNodeQuery(judgementNode);
80
- if (metavariableNode !== null) {
81
- var metaType = _frame1.default, metavariableVerifiedGivenMetaType = (0, _metavariableGivenMetaType.default)(metavariableNode, metaType, localContext);
82
- if (metavariableVerifiedGivenMetaType) {
83
- var frames = [], frameNode = frameNodeQuery(judgementNode), frameVerified = (0, _frame.default)(frameNode, frames, stated, localContext);
84
- if (frameVerified) {
85
- if (assignments !== null) {
86
- var firstFrame = (0, _array.first)(frames), frame = firstFrame, judgement = _judgement.default.fromJudgementNodeFrameAndMetavariableNode(judgementNode, frame, metavariableNode), judgementAssignment = _judgement1.default.fromJudgement(judgement), assignment = judgementAssignment;
87
- assignments.push(assignment);
88
- }
89
- statedJudgementVerified = true;
79
+ var frames = [], frameNode = frameNodeQuery(judgementNode), frameVerified = (0, _frame.default)(frameNode, frames, stated, localContext);
80
+ if (frameVerified) {
81
+ var declarations = [], declarationNode = declarationNodeQuery(judgementNode), declarationVerified = (0, _declaration.default)(declarationNode, declarations, stated, localContext);
82
+ if (declarationVerified) {
83
+ if (assignments !== null) {
84
+ var firstDeclaration = (0, _array.first)(declarations), declaration = firstDeclaration, firstFrame = (0, _array.first)(frames), frame = firstFrame, judgement = _judgement.default.fromJudgementNodeFrameAndDeclaration(judgementNode, frame, declaration), judgementAssignment = _judgement1.default.fromJudgement(judgement), assignment = judgementAssignment;
85
+ assignments.push(assignment);
90
86
  }
87
+ statedJudgementVerified = true;
91
88
  }
92
89
  }
93
90
  if (statedJudgementVerified) {
@@ -97,4 +94,4 @@ function verifyStatedJudgement(judgementNode, assignments, stated, localContext)
97
94
  return statedJudgementVerified;
98
95
  }
99
96
 
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvanVkZ2VtZW50LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgSnVkZ2VtZW50IGZyb20gXCIuLi9qdWRnZW1lbnRcIjtcbmltcG9ydCB2ZXJpZnlGcmFtZSBmcm9tIFwiLi4vdmVyaWZ5L2ZyYW1lXCI7XG5pbXBvcnQgZGVjbGFyYXRpb25NZXRhVHlwZSBmcm9tIFwiLi4vbWV0YVR5cGUvZnJhbWVcIjtcbmltcG9ydCBKdWRnZW1lbnRBc3NpZ25tZW50IGZyb20gXCIuLi9hc3NpZ25tZW50L2p1ZGdlbWVudFwiO1xuaW1wb3J0IHZlcmlmeU1ldGF2YXJpYWJsZUdpdmVuTWV0YVR5cGUgZnJvbSBcIi4uL3ZlcmlmeS9tZXRhdmFyaWFibGVHaXZlbk1ldGFUeXBlXCI7XG5cbmltcG9ydCB7IGZpcnN0IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBmcmFtZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9qdWRnZW1lbnQvZnJhbWUhXCIpLFxuICAgICAgbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2p1ZGdlbWVudC9zdGF0ZW1lbnQvbWV0YXZhcmlhYmxlIVwiKTtcblxuY29uc3QgdmVyaWZ5SnVkZ2VtZW50RnVuY3Rpb25zID0gW1xuICB2ZXJpZnlEZXJpdmVkSnVkZ2VtZW50LFxuICB2ZXJpZnlTdGF0ZWRKdWRnZW1lbnRcbl07XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeUp1ZGdlbWVudChqdWRnZW1lbnROb2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGp1ZGdlbWVudFZlcmlmaWVkO1xuXG4gIGNvbnN0IGp1ZGdlbWVudFN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoanVkZ2VtZW50Tm9kZSk7XG5cbiAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2p1ZGdlbWVudFN0cmluZ30nIGp1ZGdlbWVudC4uLmAsIGp1ZGdlbWVudE5vZGUpO1xuXG4gIGp1ZGdlbWVudFZlcmlmaWVkID0gdmVyaWZ5SnVkZ2VtZW50RnVuY3Rpb25zLnNvbWUoKHZlcmlmeUp1ZGdlbWVudEZ1bmN0aW9uKSA9PiB7XG4gICAgY29uc3QganVkZ2VtZW50VmVyaWZpZWQgPSB2ZXJpZnlKdWRnZW1lbnRGdW5jdGlvbihqdWRnZW1lbnROb2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgaWYgKGp1ZGdlbWVudFZlcmlmaWVkKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xuXG4gIGlmIChqdWRnZW1lbnRWZXJpZmllZCkge1xuICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2p1ZGdlbWVudFN0cmluZ30nIGp1ZGdlbWVudC5gLCBqdWRnZW1lbnROb2RlKTtcbiAgfVxuXG4gIHJldHVybiBqdWRnZW1lbnRWZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5RGVyaXZlZEp1ZGdlbWVudChqdWRnZW1lbnROb2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGRlcml2ZWRKdWRnZW1lbnRWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGlmICghc3RhdGVkKSB7XG4gICAgY29uc3QganVkZ2VtZW50U3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhqdWRnZW1lbnROb2RlKTtcblxuICAgIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtqdWRnZW1lbnRTdHJpbmd9JyBkZXJpdmVkIGp1ZGdlbWVudC4uLmAsIGp1ZGdlbWVudE5vZGUpO1xuXG4gICAgY29uc3QgbWV0YXZhcmlhYmxlTm9kZSA9IG1ldGF2YXJpYWJsZU5vZGVRdWVyeShqdWRnZW1lbnROb2RlKTtcblxuICAgIGlmIChtZXRhdmFyaWFibGVOb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXRhVHlwZSA9IGRlY2xhcmF0aW9uTWV0YVR5cGUsIC8vL1xuICAgICAgICAgICAgbWV0YXZhcmlhYmxlVmVyaWZpZWRHaXZlbk1ldGFUeXBlID0gdmVyaWZ5TWV0YXZhcmlhYmxlR2l2ZW5NZXRhVHlwZShtZXRhdmFyaWFibGVOb2RlLCBtZXRhVHlwZSwgbG9jYWxDb250ZXh0KTtcblxuICAgICAgaWYgKG1ldGF2YXJpYWJsZVZlcmlmaWVkR2l2ZW5NZXRhVHlwZSkge1xuICAgICAgICBjb25zdCBqdWRnZW1lbnQgPSBsb2NhbENvbnRleHQuZmluZEp1ZGdlbWVudEJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKTtcblxuICAgICAgICBpZiAoanVkZ2VtZW50ICE9PSBudWxsKSB7XG4gICAgICAgICAgY29uc3QgZnJhbWVzID0gW10sXG4gICAgICAgICAgICAgICAgZnJhbWVOb2RlID0gZnJhbWVOb2RlUXVlcnkoanVkZ2VtZW50Tm9kZSksXG4gICAgICAgICAgICAgICAgZnJhbWVWZXJpZmllZCA9IHZlcmlmeUZyYW1lKGZyYW1lTm9kZSwgZnJhbWVzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgICAgICBpZiAoZnJhbWVWZXJpZmllZCkge1xuICAgICAgICAgICAgY29uc3QgZmlyc3RGcmFtZSA9IGZpcnN0KGZyYW1lcyksXG4gICAgICAgICAgICAgICAgICBmcmFtZSA9IGZpcnN0RnJhbWUsIC8vL1xuICAgICAgICAgICAgICAgICAgZGVjbGFyYXRpb24gPSBmcmFtZS5nZXREZWNsYXJhdGlvbigpLFxuICAgICAgICAgICAgICAgICAgbWV0YXZhcmlhYmxlTm9kZSA9IGRlY2xhcmF0aW9uLmdldE1ldGF2YXJpYWJsZU5vZGUoKSxcbiAgICAgICAgICAgICAgICAgIG1ldGF0aGVvcmVtID0gbG9jYWxDb250ZXh0LmZpbmRNZXRhdGhlb3JlbUJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKSxcbiAgICAgICAgICAgICAgICAgIG1ldGFMZW1tYSA9IGxvY2FsQ29udGV4dC5maW5kTWV0YUxlbW1hQnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpLFxuICAgICAgICAgICAgICAgICAgbWV0YUxlbW1hTWV0YXRoZW9yZW0gPSAobWV0YUxlbW1hIHx8IG1ldGF0aGVvcmVtKTsgIC8vL1xuXG4gICAgICAgICAgICBpZiAobWV0YUxlbW1hTWV0YXRoZW9yZW0gIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgY29uc3QgbWV0YUxlbW1hTWV0YXRoZW9yZW1VbmlmaWVkV2l0aEp1ZGdlbWVudCA9IGp1ZGdlbWVudC51bmlmeU1ldGFMZW1tYU9yTWV0YXRoZW9yZW0obWV0YUxlbW1hTWV0YXRoZW9yZW0pLFxuICAgICAgICAgICAgICAgICAgICBtZXRhTGVtbWFNZXRhdGhlb3JlbVVuaWZpZWRXaXRoRGVjbGFyYXRpb24gPSBkZWNsYXJhdGlvbi51bmlmeU1ldGFMZW1tYU9yTWV0YXRoZW9yZW0obWV0YUxlbW1hTWV0YXRoZW9yZW0pO1xuXG4gICAgICAgICAgICAgIGRlcml2ZWRKdWRnZW1lbnRWZXJpZmllZCA9IChtZXRhTGVtbWFNZXRhdGhlb3JlbVVuaWZpZWRXaXRoSnVkZ2VtZW50ICYmIG1ldGFMZW1tYU1ldGF0aGVvcmVtVW5pZmllZFdpdGhEZWNsYXJhdGlvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IG1ldGF2YXJpYWJsZVN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgICAgICAgICBsb2NhbENvbnRleHQuZGVidWcoYFRoZXJlIGlzIG5vIGp1ZGdlbWVudCBmb3IgdGhlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIG1ldGF2YXJpYWJsZS5gLCBtZXRhdmFyaWFibGVOb2RlKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGRlcml2ZWRKdWRnZW1lbnRWZXJpZmllZCkge1xuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7anVkZ2VtZW50U3RyaW5nfScgZGVyaXZlZCBqdWRnZW1lbnQuYCwganVkZ2VtZW50Tm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGRlcml2ZWRKdWRnZW1lbnRWZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5U3RhdGVkSnVkZ2VtZW50KGp1ZGdlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgc3RhdGVkSnVkZ2VtZW50VmVyaWZpZWQgPSBmYWxzZTtcblxuICBpZiAoc3RhdGVkKSB7XG4gICAgY29uc3QganVkZ2VtZW50U3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhqdWRnZW1lbnROb2RlKTtcblxuICAgIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtqdWRnZW1lbnRTdHJpbmd9JyBzdGF0ZWQganVkZ2VtZW50Li4uYCwganVkZ2VtZW50Tm9kZSk7XG5cbiAgICBjb25zdCBtZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5KGp1ZGdlbWVudE5vZGUpO1xuXG4gICAgaWYgKG1ldGF2YXJpYWJsZU5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG1ldGFUeXBlID0gZGVjbGFyYXRpb25NZXRhVHlwZSwgLy8vXG4gICAgICAgICAgICBtZXRhdmFyaWFibGVWZXJpZmllZEdpdmVuTWV0YVR5cGUgPSB2ZXJpZnlNZXRhdmFyaWFibGVHaXZlbk1ldGFUeXBlKG1ldGF2YXJpYWJsZU5vZGUsIG1ldGFUeXBlLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICBpZiAobWV0YXZhcmlhYmxlVmVyaWZpZWRHaXZlbk1ldGFUeXBlKSB7XG4gICAgICAgIGNvbnN0IGZyYW1lcyA9IFtdLFxuICAgICAgICAgICAgICBmcmFtZU5vZGUgPSBmcmFtZU5vZGVRdWVyeShqdWRnZW1lbnROb2RlKSxcbiAgICAgICAgICAgICAgZnJhbWVWZXJpZmllZCA9IHZlcmlmeUZyYW1lKGZyYW1lTm9kZSwgZnJhbWVzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgICAgaWYgKGZyYW1lVmVyaWZpZWQpIHtcbiAgICAgICAgICBpZiAoYXNzaWdubWVudHMgIT09IG51bGwpIHtcbiAgICAgICAgICAgIGNvbnN0IGZpcnN0RnJhbWUgPSBmaXJzdChmcmFtZXMpLFxuICAgICAgICAgICAgICAgICAgZnJhbWUgPSBmaXJzdEZyYW1lLCAvLy9cbiAgICAgICAgICAgICAgICAgIGp1ZGdlbWVudCA9IEp1ZGdlbWVudC5mcm9tSnVkZ2VtZW50Tm9kZUZyYW1lQW5kTWV0YXZhcmlhYmxlTm9kZShqdWRnZW1lbnROb2RlLCBmcmFtZSwgbWV0YXZhcmlhYmxlTm9kZSksXG4gICAgICAgICAgICAgICAgICBqdWRnZW1lbnRBc3NpZ25tZW50ID0gSnVkZ2VtZW50QXNzaWdubWVudC5mcm9tSnVkZ2VtZW50KGp1ZGdlbWVudCksXG4gICAgICAgICAgICAgICAgICBhc3NpZ25tZW50ID0ganVkZ2VtZW50QXNzaWdubWVudDtcblxuICAgICAgICAgICAgYXNzaWdubWVudHMucHVzaChhc3NpZ25tZW50KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBzdGF0ZWRKdWRnZW1lbnRWZXJpZmllZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoc3RhdGVkSnVkZ2VtZW50VmVyaWZpZWQpIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2p1ZGdlbWVudFN0cmluZ30nIHN0YXRlZCBqdWRnZW1lbnQuYCwganVkZ2VtZW50Tm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHN0YXRlZEp1ZGdlbWVudFZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeUp1ZGdlbWVudCIsImZyYW1lTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwibWV0YXZhcmlhYmxlTm9kZVF1ZXJ5IiwidmVyaWZ5SnVkZ2VtZW50RnVuY3Rpb25zIiwidmVyaWZ5RGVyaXZlZEp1ZGdlbWVudCIsInZlcmlmeVN0YXRlZEp1ZGdlbWVudCIsImp1ZGdlbWVudE5vZGUiLCJhc3NpZ25tZW50cyIsInN0YXRlZCIsImxvY2FsQ29udGV4dCIsImp1ZGdlbWVudFZlcmlmaWVkIiwianVkZ2VtZW50U3RyaW5nIiwibm9kZUFzU3RyaW5nIiwidHJhY2UiLCJzb21lIiwidmVyaWZ5SnVkZ2VtZW50RnVuY3Rpb24iLCJkZWJ1ZyIsImRlcml2ZWRKdWRnZW1lbnRWZXJpZmllZCIsIm1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhVHlwZSIsImRlY2xhcmF0aW9uTWV0YVR5cGUiLCJtZXRhdmFyaWFibGVWZXJpZmllZEdpdmVuTWV0YVR5cGUiLCJ2ZXJpZnlNZXRhdmFyaWFibGVHaXZlbk1ldGFUeXBlIiwianVkZ2VtZW50IiwiZmluZEp1ZGdlbWVudEJ5TWV0YXZhcmlhYmxlTm9kZSIsImZyYW1lcyIsImZyYW1lTm9kZSIsImZyYW1lVmVyaWZpZWQiLCJ2ZXJpZnlGcmFtZSIsImZpcnN0RnJhbWUiLCJmaXJzdCIsImZyYW1lIiwiZGVjbGFyYXRpb24iLCJnZXREZWNsYXJhdGlvbiIsImdldE1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhdGhlb3JlbSIsImZpbmRNZXRhdGhlb3JlbUJ5TWV0YXZhcmlhYmxlTm9kZSIsIm1ldGFMZW1tYSIsImZpbmRNZXRhTGVtbWFCeU1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhTGVtbWFNZXRhdGhlb3JlbSIsIm1ldGFMZW1tYU1ldGF0aGVvcmVtVW5pZmllZFdpdGhKdWRnZW1lbnQiLCJ1bmlmeU1ldGFMZW1tYU9yTWV0YXRoZW9yZW0iLCJtZXRhTGVtbWFNZXRhdGhlb3JlbVVuaWZpZWRXaXRoRGVjbGFyYXRpb24iLCJtZXRhdmFyaWFibGVTdHJpbmciLCJzdGF0ZWRKdWRnZW1lbnRWZXJpZmllZCIsIkp1ZGdlbWVudCIsImZyb21KdWRnZW1lbnROb2RlRnJhbWVBbmRNZXRhdmFyaWFibGVOb2RlIiwianVkZ2VtZW50QXNzaWdubWVudCIsIkp1ZGdlbWVudEFzc2lnbm1lbnQiLCJmcm9tSnVkZ2VtZW50IiwiYXNzaWdubWVudCIsInB1c2giXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQW1CQTs7O2VBQXdCQTs7O2dFQWpCRjs0REFDRTs2REFDUTtpRUFDQTtnRkFDWTtxQkFFdEI7cUJBQ0k7Ozs7OztBQUUxQixJQUFNQyxpQkFBaUJDLElBQUFBLGdCQUFTLEVBQUMsc0JBQzNCQyx3QkFBd0JELElBQUFBLGdCQUFTLEVBQUM7QUFFeEMsSUFBTUUsMkJBQTJCO0lBQy9CQztJQUNBQztDQUNEO0FBRWMsU0FBU04sZ0JBQWdCTyxhQUFhLEVBQUVDLFdBQVcsRUFBRUMsTUFBTSxFQUFFQyxZQUFZO0lBQ3RGLElBQUlDO0lBRUosSUFBTUMsa0JBQWtCRixhQUFhRyxZQUFZLENBQUNOO0lBRWxERyxhQUFhSSxLQUFLLENBQUMsQUFBQyxrQkFBaUMsT0FBaEJGLGlCQUFnQixtQkFBaUJMO0lBRXRFSSxvQkFBb0JQLHlCQUF5QlcsSUFBSSxDQUFDLFNBQUNDO1FBQ2pELElBQU1MLG9CQUFvQkssd0JBQXdCVCxlQUFlQyxhQUFhQyxRQUFRQztRQUV0RixJQUFJQyxtQkFBbUI7WUFDckIsT0FBTztRQUNUO0lBQ0Y7SUFFQSxJQUFJQSxtQkFBbUI7UUFDckJELGFBQWFPLEtBQUssQ0FBQyxBQUFDLG9CQUFtQyxPQUFoQkwsaUJBQWdCLGlCQUFlTDtJQUN4RTtJQUVBLE9BQU9JO0FBQ1Q7QUFFQSxTQUFTTix1QkFBdUJFLGFBQWEsRUFBRUMsV0FBVyxFQUFFQyxNQUFNLEVBQUVDLFlBQVk7SUFDOUUsSUFBSVEsMkJBQTJCO0lBRS9CLElBQUksQ0FBQ1QsUUFBUTtRQUNYLElBQU1HLGtCQUFrQkYsYUFBYUcsWUFBWSxDQUFDTjtRQUVsREcsYUFBYUksS0FBSyxDQUFDLEFBQUMsa0JBQWlDLE9BQWhCRixpQkFB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
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvanVkZ2VtZW50LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgSnVkZ2VtZW50IGZyb20gXCIuLi9qdWRnZW1lbnRcIjtcbmltcG9ydCB2ZXJpZnlGcmFtZSBmcm9tIFwiLi4vdmVyaWZ5L2ZyYW1lXCI7XG5pbXBvcnQgSnVkZ2VtZW50QXNzaWdubWVudCBmcm9tIFwiLi4vYXNzaWdubWVudC9qdWRnZW1lbnRcIjtcblxuaW1wb3J0IHsgZmlyc3QgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgdmVyaWZ5RGVjbGFyYXRpb24gZnJvbSBcIi4vZGVjbGFyYXRpb25cIjtcblxuY29uc3QgZnJhbWVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvanVkZ2VtZW50L2ZyYW1lXCIpLFxuICAgICAgZGVjbGFyYXRpb25Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvanVkZ2VtZW50L2RlY2xhcmF0aW9uXCIpO1xuXG5jb25zdCB2ZXJpZnlKdWRnZW1lbnRGdW5jdGlvbnMgPSBbXG4gIHZlcmlmeURlcml2ZWRKdWRnZW1lbnQsXG4gIHZlcmlmeVN0YXRlZEp1ZGdlbWVudFxuXTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5SnVkZ2VtZW50KGp1ZGdlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCkge1xuICBsZXQganVkZ2VtZW50VmVyaWZpZWQ7XG5cbiAgY29uc3QganVkZ2VtZW50U3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhqdWRnZW1lbnROb2RlKTtcblxuICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7anVkZ2VtZW50U3RyaW5nfScganVkZ2VtZW50Li4uYCwganVkZ2VtZW50Tm9kZSk7XG5cbiAganVkZ2VtZW50VmVyaWZpZWQgPSB2ZXJpZnlKdWRnZW1lbnRGdW5jdGlvbnMuc29tZSgodmVyaWZ5SnVkZ2VtZW50RnVuY3Rpb24pID0+IHtcbiAgICBjb25zdCBqdWRnZW1lbnRWZXJpZmllZCA9IHZlcmlmeUp1ZGdlbWVudEZ1bmN0aW9uKGp1ZGdlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAoanVkZ2VtZW50VmVyaWZpZWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG5cbiAgaWYgKGp1ZGdlbWVudFZlcmlmaWVkKSB7XG4gICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7anVkZ2VtZW50U3RyaW5nfScganVkZ2VtZW50LmAsIGp1ZGdlbWVudE5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIGp1ZGdlbWVudFZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlEZXJpdmVkSnVkZ2VtZW50KGp1ZGdlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgZGVyaXZlZEp1ZGdlbWVudFZlcmlmaWVkID0gZmFsc2U7XG5cbiAgaWYgKCFzdGF0ZWQpIHtcbiAgICBjb25zdCBqdWRnZW1lbnRTdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGp1ZGdlbWVudE5vZGUpO1xuXG4gICAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2p1ZGdlbWVudFN0cmluZ30nIGRlcml2ZWQganVkZ2VtZW50Li4uYCwganVkZ2VtZW50Tm9kZSk7XG5cbiAgICBjb25zdCBmcmFtZXMgPSBbXSxcbiAgICAgICAgICBmcmFtZU5vZGUgPSBmcmFtZU5vZGVRdWVyeShqdWRnZW1lbnROb2RlKSxcbiAgICAgICAgICBmcmFtZVZlcmlmaWVkID0gdmVyaWZ5RnJhbWUoZnJhbWVOb2RlLCBmcmFtZXMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KTtcblxuICAgIGlmIChmcmFtZVZlcmlmaWVkKSB7XG4gICAgICAvLyBjb25zdCBmaXJzdEZyYW1lID0gZmlyc3QoZnJhbWVzKSxcbiAgICAgIC8vICAgICAgIGZyYW1lID0gZmlyc3RGcmFtZSwgLy8vXG4gICAgICAvLyAgICAgICBkZWNsYXJhdGlvbiA9IGZyYW1lLmdldERlY2xhcmF0aW9uKCksXG4gICAgICAvLyAgICAgICBtZXRhdmFyaWFibGVOb2RlID0gZGVjbGFyYXRpb24uZ2V0TWV0YXZhcmlhYmxlTm9kZSgpLFxuICAgICAgLy8gICAgICAgbWV0YXRoZW9yZW0gPSBsb2NhbENvbnRleHQuZmluZE1ldGF0aGVvcmVtQnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpLFxuICAgICAgLy8gICAgICAgbWV0YUxlbW1hID0gbG9jYWxDb250ZXh0LmZpbmRNZXRhTGVtbWFCeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSksXG4gICAgICAvLyAgICAgICBtZXRhTGVtbWFNZXRhdGhlb3JlbSA9IChtZXRhTGVtbWEgfHwgbWV0YXRoZW9yZW0pOyAgLy8vXG4gICAgICAvL1xuICAgICAgLy8gaWYgKG1ldGFMZW1tYU1ldGF0aGVvcmVtICE9PSBudWxsKSB7XG4gICAgICAvLyAgIGNvbnN0IG1ldGFMZW1tYU1ldGF0aGVvcmVtVW5pZmllZFdpdGhKdWRnZW1lbnQgPSBqdWRnZW1lbnQudW5pZnlNZXRhTGVtbWFPck1ldGF0aGVvcmVtKG1ldGFMZW1tYU1ldGF0aGVvcmVtKSxcbiAgICAgIC8vICAgICAgICAgbWV0YUxlbW1hTWV0YXRoZW9yZW1VbmlmaWVkV2l0aERlY2xhcmF0aW9uID0gZGVjbGFyYXRpb24udW5pZnlNZXRhTGVtbWFPck1ldGF0aGVvcmVtKG1ldGFMZW1tYU1ldGF0aGVvcmVtKTtcbiAgICAgIC8vXG4gICAgICAvLyAgIGRlcml2ZWRKdWRnZW1lbnRWZXJpZmllZCA9IChtZXRhTGVtbWFNZXRhdGhlb3JlbVVuaWZpZWRXaXRoSnVkZ2VtZW50ICYmIG1ldGFMZW1tYU1ldGF0aGVvcmVtVW5pZmllZFdpdGhEZWNsYXJhdGlvbik7XG4gICAgICAvLyB9XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIGNvbnN0IG1ldGF2YXJpYWJsZVN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YXZhcmlhYmxlTm9kZSk7XG4gICAgICAvL1xuICAgICAgLy8gbG9jYWxDb250ZXh0LmRlYnVnKGBUaGVyZSBpcyBubyBqdWRnZW1lbnQgZm9yIHRoZSAnJHttZXRhdmFyaWFibGVTdHJpbmd9JyBtZXRhdmFyaWFibGUuYCwgbWV0YXZhcmlhYmxlTm9kZSlcbiAgICB9XG5cbiAgICBpZiAoZGVyaXZlZEp1ZGdlbWVudFZlcmlmaWVkKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtqdWRnZW1lbnRTdHJpbmd9JyBkZXJpdmVkIGp1ZGdlbWVudC5gLCBqdWRnZW1lbnROb2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZGVyaXZlZEp1ZGdlbWVudFZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlTdGF0ZWRKdWRnZW1lbnQoanVkZ2VtZW50Tm9kZSwgYXNzaWdubWVudHMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBzdGF0ZWRKdWRnZW1lbnRWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGlmIChzdGF0ZWQpIHtcbiAgICBjb25zdCBqdWRnZW1lbnRTdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGp1ZGdlbWVudE5vZGUpO1xuXG4gICAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2p1ZGdlbWVudFN0cmluZ30nIHN0YXRlZCBqdWRnZW1lbnQuLi5gLCBqdWRnZW1lbnROb2RlKTtcblxuICAgIGNvbnN0IGZyYW1lcyA9IFtdLFxuICAgICAgICAgIGZyYW1lTm9kZSA9IGZyYW1lTm9kZVF1ZXJ5KGp1ZGdlbWVudE5vZGUpLFxuICAgICAgICAgIGZyYW1lVmVyaWZpZWQgPSB2ZXJpZnlGcmFtZShmcmFtZU5vZGUsIGZyYW1lcywgc3RhdGVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgaWYgKGZyYW1lVmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IGRlY2xhcmF0aW9ucyA9IFtdLFxuICAgICAgICAgICAgZGVjbGFyYXRpb25Ob2RlID0gZGVjbGFyYXRpb25Ob2RlUXVlcnkoanVkZ2VtZW50Tm9kZSksXG4gICAgICAgICAgICBkZWNsYXJhdGlvblZlcmlmaWVkID0gdmVyaWZ5RGVjbGFyYXRpb24oZGVjbGFyYXRpb25Ob2RlLCBkZWNsYXJhdGlvbnMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KTtcblxuICAgICAgaWYgKGRlY2xhcmF0aW9uVmVyaWZpZWQpIHtcbiAgICAgICAgaWYgKGFzc2lnbm1lbnRzICE9PSBudWxsKSB7XG4gICAgICAgICAgY29uc3QgZmlyc3REZWNsYXJhdGlvbiA9IGZpcnN0KGRlY2xhcmF0aW9ucyksXG4gICAgICAgICAgICAgICAgZGVjbGFyYXRpb24gPSBmaXJzdERlY2xhcmF0aW9uLCAvLy9cbiAgICAgICAgICAgICAgICBmaXJzdEZyYW1lID0gZmlyc3QoZnJhbWVzKSxcbiAgICAgICAgICAgICAgICBmcmFtZSA9IGZpcnN0RnJhbWUsIC8vL1xuICAgICAgICAgICAgICAgIGp1ZGdlbWVudCA9IEp1ZGdlbWVudC5mcm9tSnVkZ2VtZW50Tm9kZUZyYW1lQW5kRGVjbGFyYXRpb24oanVkZ2VtZW50Tm9kZSwgZnJhbWUsIGRlY2xhcmF0aW9uKSxcbiAgICAgICAgICAgICAgICBqdWRnZW1lbnRBc3NpZ25tZW50ID0gSnVkZ2VtZW50QXNzaWdubWVudC5mcm9tSnVkZ2VtZW50KGp1ZGdlbWVudCksXG4gICAgICAgICAgICAgICAgYXNzaWdubWVudCA9IGp1ZGdlbWVudEFzc2lnbm1lbnQ7XG5cbiAgICAgICAgICBhc3NpZ25tZW50cy5wdXNoKGFzc2lnbm1lbnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgc3RhdGVkSnVkZ2VtZW50VmVyaWZpZWQgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChzdGF0ZWRKdWRnZW1lbnRWZXJpZmllZCkge1xuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7anVkZ2VtZW50U3RyaW5nfScgc3RhdGVkIGp1ZGdlbWVudC5gLCBqdWRnZW1lbnROb2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3RhdGVkSnVkZ2VtZW50VmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5SnVkZ2VtZW50IiwiZnJhbWVOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJkZWNsYXJhdGlvbk5vZGVRdWVyeSIsInZlcmlmeUp1ZGdlbWVudEZ1bmN0aW9ucyIsInZlcmlmeURlcml2ZWRKdWRnZW1lbnQiLCJ2ZXJpZnlTdGF0ZWRKdWRnZW1lbnQiLCJqdWRnZW1lbnROb2RlIiwiYXNzaWdubWVudHMiLCJzdGF0ZWQiLCJsb2NhbENvbnRleHQiLCJqdWRnZW1lbnRWZXJpZmllZCIsImp1ZGdlbWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwic29tZSIsInZlcmlmeUp1ZGdlbWVudEZ1bmN0aW9uIiwiZGVidWciLCJkZXJpdmVkSnVkZ2VtZW50VmVyaWZpZWQiLCJmcmFtZXMiLCJmcmFtZU5vZGUiLCJmcmFtZVZlcmlmaWVkIiwidmVyaWZ5RnJhbWUiLCJzdGF0ZWRKdWRnZW1lbnRWZXJpZmllZCIsImRlY2xhcmF0aW9ucyIsImRlY2xhcmF0aW9uTm9kZSIsImRlY2xhcmF0aW9uVmVyaWZpZWQiLCJ2ZXJpZnlEZWNsYXJhdGlvbiIsImZpcnN0RGVjbGFyYXRpb24iLCJmaXJzdCIsImRlY2xhcmF0aW9uIiwiZmlyc3RGcmFtZSIsImZyYW1lIiwianVkZ2VtZW50IiwiSnVkZ2VtZW50IiwiZnJvbUp1ZGdlbWVudE5vZGVGcmFtZUFuZERlY2xhcmF0aW9uIiwianVkZ2VtZW50QXNzaWdubWVudCIsIkp1ZGdlbWVudEFzc2lnbm1lbnQiLCJmcm9tSnVkZ2VtZW50IiwiYXNzaWdubWVudCIsInB1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
@@ -22,14 +22,8 @@ function verifyStatementGivenMetaType(statementNode, metaType, assignments, stat
22
22
  var statementVerifiedGivenMetaType;
23
23
  var metaTypeName = metaType.getName();
24
24
  switch(metaTypeName){
25
- case _metaTypeNames.STATEMENT_META_TYPE_NAME:
26
- {
27
- var verifyStatement = _shim.default.verifyStatement, statementVerified = verifyStatement(statementNode, assignments, stated, localContext);
28
- statementVerifiedGivenMetaType = statementVerified; ///
29
- break;
30
- }
25
+ case _metaTypeNames.FRAME_META_TYPE_NAME:
31
26
  case _metaTypeNames.REFERENCE_META_TYPE_NAME:
32
- case _metaTypeNames.DECLARATION_META_TYPE_NAME:
33
27
  {
34
28
  statementVerifiedGivenMetaType = false;
35
29
  var metavariableNode = metavariableNodeQuery(statementNode);
@@ -44,8 +38,14 @@ function verifyStatementGivenMetaType(statementNode, metaType, assignments, stat
44
38
  }
45
39
  break;
46
40
  }
41
+ case _metaTypeNames.STATEMENT_META_TYPE_NAME:
42
+ {
43
+ var verifyStatement = _shim.default.verifyStatement, statementVerified = verifyStatement(statementNode, assignments, stated, localContext);
44
+ statementVerifiedGivenMetaType = statementVerified; ///
45
+ break;
46
+ }
47
47
  }
48
48
  return statementVerifiedGivenMetaType;
49
49
  }
50
50
 
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50R2l2ZW5NZXRhVHlwZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHNoaW0gZnJvbSBcIi4uL3NoaW1cIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgbWV0YXZhcmlhYmxlTmFtZUZyb21NZXRhdmFyaWFibGVOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9uYW1lXCI7XG5pbXBvcnQgeyBERUNMQVJBVElPTl9NRVRBX1RZUEVfTkFNRSwgUkVGRVJFTkNFX01FVEFfVFlQRV9OQU1FLCBTVEFURU1FTlRfTUVUQV9UWVBFX05BTUUgfSBmcm9tIFwiLi4vbWV0YVR5cGVOYW1lc1wiO1xuXG5jb25zdCBtZXRhdmFyaWFibGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvc3RhdGVtZW50L21ldGF2YXJpYWJsZSFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVN0YXRlbWVudEdpdmVuTWV0YVR5cGUoc3RhdGVtZW50Tm9kZSwgbWV0YVR5cGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgc3RhdGVtZW50VmVyaWZpZWRHaXZlbk1ldGFUeXBlO1xuXG4gIGNvbnN0IG1ldGFUeXBlTmFtZSA9IG1ldGFUeXBlLmdldE5hbWUoKTtcblxuICBzd2l0Y2ggKG1ldGFUeXBlTmFtZSkge1xuICAgIGNhc2UgU1RBVEVNRU5UX01FVEFfVFlQRV9OQU1FOiB7XG4gICAgICBjb25zdCB7IHZlcmlmeVN0YXRlbWVudCB9ID0gc2hpbSxcbiAgICAgICAgICAgIHN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5U3RhdGVtZW50KHN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dClcblxuICAgICAgc3RhdGVtZW50VmVyaWZpZWRHaXZlbk1ldGFUeXBlID0gc3RhdGVtZW50VmVyaWZpZWQ7IC8vL1xuXG4gICAgICBicmVhaztcbiAgICB9XG5cbiAgICBjYXNlIFJFRkVSRU5DRV9NRVRBX1RZUEVfTkFNRTpcbiAgICBjYXNlIERFQ0xBUkFUSU9OX01FVEFfVFlQRV9OQU1FOiB7XG4gICAgICBzdGF0ZW1lbnRWZXJpZmllZEdpdmVuTWV0YVR5cGUgPSBmYWxzZTtcblxuICAgICAgY29uc3QgbWV0YXZhcmlhYmxlTm9kZSA9IG1ldGF2YXJpYWJsZU5vZGVRdWVyeShzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgaWYgKG1ldGF2YXJpYWJsZU5vZGUgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3QgbWV0YXZhcmlhYmxlTmFtZSA9IG1ldGF2YXJpYWJsZU5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKSxcbiAgICAgICAgICAgICAgbWV0YXZhcmlhYmxlID0gbG9jYWxDb250ZXh0LmZpbmRNZXRhdmFyaWFibGVCeU1ldGF2YXJpYWJsZU5hbWUobWV0YXZhcmlhYmxlTmFtZSk7XG5cbiAgICAgICAgaWYgKG1ldGF2YXJpYWJsZSAhPT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IG1ldGF2YXJpYWJsZU1ldGFUeXBlID0gbWV0YXZhcmlhYmxlLmdldE1ldGFUeXBlKCk7XG5cbiAgICAgICAgICBpZiAobWV0YXZhcmlhYmxlTWV0YVR5cGUgPT09IG1ldGFUeXBlKSB7XG4gICAgICAgICAgICBzdGF0ZW1lbnRWZXJpZmllZEdpdmVuTWV0YVR5cGUgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3RhdGVtZW50VmVyaWZpZWRHaXZlbk1ldGFUeXBlO1xufSJdLCJuYW1lcyI6WyJ2ZXJpZnlTdGF0ZW1lbnRHaXZlbk1ldGFUeXBlIiwibWV0YXZhcmlhYmxlTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5Iiwic3RhdGVtZW50Tm9kZSIsIm1ldGFUeXBlIiwiYXNzaWdubWVudHMiLCJzdGF0ZWQiLCJsb2NhbENvbnRleHQiLCJzdGF0ZW1lbnRWZXJpZmllZEdpdmVuTWV0YVR5cGUiLCJtZXRhVHlwZU5hbWUiLCJnZXROYW1lIiwiU1RBVEVNRU5UX01FVEFfVFlQRV9OQU1FIiwidmVyaWZ5U3RhdGVtZW50Iiwic2hpbSIsInN0YXRlbWVudFZlcmlmaWVkIiwiUkVGRVJFTkNFX01FVEFfVFlQRV9OQU1FIiwiREVDTEFSQVRJT05fTUVUQV9UWVBFX05BTUUiLCJtZXRhdmFyaWFibGVOb2RlIiwibWV0YXZhcmlhYmxlTmFtZSIsIm1ldGF2YXJpYWJsZU5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZSIsIm1ldGF2YXJpYWJsZSIsImZpbmRNZXRhdmFyaWFibGVCeU1ldGF2YXJpYWJsZU5hbWUiLCJtZXRhdmFyaWFibGVNZXRhVHlwZSIsImdldE1ldGFUeXBlIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFVQTs7O2VBQXdCQTs7OzJEQVJQO3FCQUVTO29CQUMyQjs2QkFDMEM7Ozs7OztBQUUvRixJQUFNQyx3QkFBd0JDLElBQUFBLGdCQUFTLEVBQUM7QUFFekIsU0FBU0YsNkJBQTZCRyxhQUFhLEVBQUVDLFFBQVEsRUFBRUMsV0FBVyxFQUFFQyxNQUFNLEVBQUVDLFlBQVk7SUFDN0csSUFBSUM7SUFFSixJQUFNQyxlQUFlTCxTQUFTTSxPQUFPO0lBRXJDLE9BQVFEO1FBQ04sS0FBS0UsdUNBQXdCO1lBQUU7Z0JBQzdCLElBQU0sQUFBRUMsa0JBQW9CQyxhQUFJLENBQXhCRCxpQkFDRkUsb0JBQW9CRixnQkFBZ0JULGVBQWVFLGFBQWFDLFFBQVFDO2dCQUU5RUMsaUNBQWlDTSxtQkFBbUIsR0FBRztnQkFFdkQ7WUFDRjtRQUVBLEtBQUtDLHVDQUF3QjtRQUM3QixLQUFLQyx5Q0FBMEI7WUFBRTtnQkFDL0JSLGlDQUFpQztnQkFFakMsSUFBTVMsbUJBQW1CaEIsc0JBQXNCRTtnQkFFL0MsSUFBSWMscUJBQXFCLE1BQU07b0JBQzdCLElBQU1DLG1CQUFtQkMsSUFBQUEsMENBQW9DLEVBQUNGLG1CQUN4REcsZUFBZWIsYUFBYWMsa0NBQWtDLENBQUNIO29CQUVyRSxJQUFJRSxpQkFBaUIsTUFBTTt3QkFDekIsSUFBTUUsdUJBQXVCRixhQUFhRyxXQUFXO3dCQUVyRCxJQUFJRCx5QkFBeUJsQixVQUFVOzRCQUNyQ0ksaUNBQWlDO3dCQUNuQztvQkFDRjtnQkFDRjtnQkFFQTtZQUNGO0lBQ0Y7SUFFQSxPQUFPQTtBQUNUIn0=
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50R2l2ZW5NZXRhVHlwZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHNoaW0gZnJvbSBcIi4uL3NoaW1cIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgbWV0YXZhcmlhYmxlTmFtZUZyb21NZXRhdmFyaWFibGVOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9uYW1lXCI7XG5pbXBvcnQgeyBGUkFNRV9NRVRBX1RZUEVfTkFNRSwgUkVGRVJFTkNFX01FVEFfVFlQRV9OQU1FLCBTVEFURU1FTlRfTUVUQV9UWVBFX05BTUUgfSBmcm9tIFwiLi4vbWV0YVR5cGVOYW1lc1wiO1xuXG5jb25zdCBtZXRhdmFyaWFibGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvc3RhdGVtZW50L21ldGF2YXJpYWJsZSFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVN0YXRlbWVudEdpdmVuTWV0YVR5cGUoc3RhdGVtZW50Tm9kZSwgbWV0YVR5cGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgc3RhdGVtZW50VmVyaWZpZWRHaXZlbk1ldGFUeXBlO1xuXG4gIGNvbnN0IG1ldGFUeXBlTmFtZSA9IG1ldGFUeXBlLmdldE5hbWUoKTtcblxuICBzd2l0Y2ggKG1ldGFUeXBlTmFtZSkge1xuICAgIGNhc2UgRlJBTUVfTUVUQV9UWVBFX05BTUU6XG4gICAgY2FzZSBSRUZFUkVOQ0VfTUVUQV9UWVBFX05BTUU6IHtcbiAgICAgIHN0YXRlbWVudFZlcmlmaWVkR2l2ZW5NZXRhVHlwZSA9IGZhbHNlO1xuXG4gICAgICBjb25zdCBtZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5KHN0YXRlbWVudE5vZGUpO1xuXG4gICAgICBpZiAobWV0YXZhcmlhYmxlTm9kZSAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCBtZXRhdmFyaWFibGVOYW1lID0gbWV0YXZhcmlhYmxlTmFtZUZyb21NZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpLFxuICAgICAgICAgICAgICBtZXRhdmFyaWFibGUgPSBsb2NhbENvbnRleHQuZmluZE1ldGF2YXJpYWJsZUJ5TWV0YXZhcmlhYmxlTmFtZShtZXRhdmFyaWFibGVOYW1lKTtcblxuICAgICAgICBpZiAobWV0YXZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgICAgICAgY29uc3QgbWV0YXZhcmlhYmxlTWV0YVR5cGUgPSBtZXRhdmFyaWFibGUuZ2V0TWV0YVR5cGUoKTtcblxuICAgICAgICAgIGlmIChtZXRhdmFyaWFibGVNZXRhVHlwZSA9PT0gbWV0YVR5cGUpIHtcbiAgICAgICAgICAgIHN0YXRlbWVudFZlcmlmaWVkR2l2ZW5NZXRhVHlwZSA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIGNhc2UgU1RBVEVNRU5UX01FVEFfVFlQRV9OQU1FOiB7XG4gICAgICBjb25zdCB7IHZlcmlmeVN0YXRlbWVudCB9ID0gc2hpbSxcbiAgICAgICAgICAgIHN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5U3RhdGVtZW50KHN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dClcblxuICAgICAgc3RhdGVtZW50VmVyaWZpZWRHaXZlbk1ldGFUeXBlID0gc3RhdGVtZW50VmVyaWZpZWQ7IC8vL1xuXG4gICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3RhdGVtZW50VmVyaWZpZWRHaXZlbk1ldGFUeXBlO1xufSJdLCJuYW1lcyI6WyJ2ZXJpZnlTdGF0ZW1lbnRHaXZlbk1ldGFUeXBlIiwibWV0YXZhcmlhYmxlTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5Iiwic3RhdGVtZW50Tm9kZSIsIm1ldGFUeXBlIiwiYXNzaWdubWVudHMiLCJzdGF0ZWQiLCJsb2NhbENvbnRleHQiLCJzdGF0ZW1lbnRWZXJpZmllZEdpdmVuTWV0YVR5cGUiLCJtZXRhVHlwZU5hbWUiLCJnZXROYW1lIiwiRlJBTUVfTUVUQV9UWVBFX05BTUUiLCJSRUZFUkVOQ0VfTUVUQV9UWVBFX05BTUUiLCJtZXRhdmFyaWFibGVOb2RlIiwibWV0YXZhcmlhYmxlTmFtZSIsIm1ldGF2YXJpYWJsZU5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZSIsIm1ldGF2YXJpYWJsZSIsImZpbmRNZXRhdmFyaWFibGVCeU1ldGF2YXJpYWJsZU5hbWUiLCJtZXRhdmFyaWFibGVNZXRhVHlwZSIsImdldE1ldGFUeXBlIiwiU1RBVEVNRU5UX01FVEFfVFlQRV9OQU1FIiwidmVyaWZ5U3RhdGVtZW50Iiwic2hpbSIsInN0YXRlbWVudFZlcmlmaWVkIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFVQTs7O2VBQXdCQTs7OzJEQVJQO3FCQUVTO29CQUMyQjs2QkFDb0M7Ozs7OztBQUV6RixJQUFNQyx3QkFBd0JDLElBQUFBLGdCQUFTLEVBQUM7QUFFekIsU0FBU0YsNkJBQTZCRyxhQUFhLEVBQUVDLFFBQVEsRUFBRUMsV0FBVyxFQUFFQyxNQUFNLEVBQUVDLFlBQVk7SUFDN0csSUFBSUM7SUFFSixJQUFNQyxlQUFlTCxTQUFTTSxPQUFPO0lBRXJDLE9BQVFEO1FBQ04sS0FBS0UsbUNBQW9CO1FBQ3pCLEtBQUtDLHVDQUF3QjtZQUFFO2dCQUM3QkosaUNBQWlDO2dCQUVqQyxJQUFNSyxtQkFBbUJaLHNCQUFzQkU7Z0JBRS9DLElBQUlVLHFCQUFxQixNQUFNO29CQUM3QixJQUFNQyxtQkFBbUJDLElBQUFBLDBDQUFvQyxFQUFDRixtQkFDeERHLGVBQWVULGFBQWFVLGtDQUFrQyxDQUFDSDtvQkFFckUsSUFBSUUsaUJBQWlCLE1BQU07d0JBQ3pCLElBQU1FLHVCQUF1QkYsYUFBYUcsV0FBVzt3QkFFckQsSUFBSUQseUJBQXlCZCxVQUFVOzRCQUNyQ0ksaUNBQWlDO3dCQUNuQztvQkFDRjtnQkFDRjtnQkFFQTtZQUNGO1FBRUEsS0FBS1ksdUNBQXdCO1lBQUU7Z0JBQzdCLElBQU0sQUFBRUMsa0JBQW9CQyxhQUFJLENBQXhCRCxpQkFDRkUsb0JBQW9CRixnQkFBZ0JsQixlQUFlRSxhQUFhQyxRQUFRQztnQkFFOUVDLGlDQUFpQ2UsbUJBQW1CLEdBQUc7Z0JBRXZEO1lBQ0Y7SUFDRjtJQUVBLE9BQU9mO0FBQ1QifQ==
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "occam-verify-cli",
3
3
  "author": "James Smith",
4
- "version": "0.0.977",
4
+ "version": "0.0.978",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-verify-cli",
7
7
  "description": "Occam's Verifier",
@@ -12,7 +12,7 @@
12
12
  "dependencies": {
13
13
  "argumentative": "^2.0.32",
14
14
  "necessary": "^14.0.1",
15
- "occam-custom-grammars": "^5.0.853",
15
+ "occam-custom-grammars": "^5.0.854",
16
16
  "occam-entities": "^1.0.159",
17
17
  "occam-file-system": "^6.0.199",
18
18
  "occam-grammar-utilities": "^8.0.207",
@@ -51,7 +51,9 @@ export default class Declaration {
51
51
  }
52
52
 
53
53
  static fromMetavariableNodeAndStatementNode(metavariableNode, statementNode) {
54
- statementNode = stripBracketsFromStatement(statementNode); ///
54
+ if (statementNode !== null) {
55
+ statementNode = stripBracketsFromStatement(statementNode); ///
56
+ }
55
57
 
56
58
  const declaration = new Declaration(metavariableNode, statementNode);
57
59
 
package/src/judgement.js CHANGED
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
 
3
3
  export default class Judgement {
4
- constructor(node, frame, metavariableNode) {
4
+ constructor(node, frame, declaration) {
5
5
  this.node = node;
6
6
  this.frame = frame;
7
- this.metavariableNode = metavariableNode;
7
+ this.declaration = declaration;
8
8
  }
9
9
 
10
10
  getNode() {
@@ -15,23 +15,21 @@ export default class Judgement {
15
15
  return this.frame;
16
16
  }
17
17
 
18
- getMetavariableNode() {
19
- return this.metavariableNode;
18
+ getDeclaration() {
19
+ return this.declaration;
20
20
  }
21
21
 
22
- getDeclarations() { return this.frame.getDeclarations(); }
22
+ // matchMetavariableNode(metavariableNode) {
23
+ // const metavariableNodeMatches = this.metavariableNode.match(metavariableNode);
24
+ //
25
+ // return metavariableNodeMatches;
26
+ // }
23
27
 
24
- matchMetavariableNode(metavariableNode) {
25
- const metavariableNodeMatches = this.metavariableNode.match(metavariableNode);
28
+ // unifyMetaLemmaOrMetatheorem(metaLemmaMetatheorem) { return this.frame.unifyMetaLemmaOrMetatheorem(metaLemmaMetatheorem); }
26
29
 
27
- return metavariableNodeMatches;
28
- }
29
-
30
- unifyMetaLemmaOrMetatheorem(metaLemmaMetatheorem) { return this.frame.unifyMetaLemmaOrMetatheorem(metaLemmaMetatheorem); }
31
-
32
- static fromJudgementNodeFrameAndMetavariableNode(judgementNode, frame, metavariableNode) {
30
+ static fromJudgementNodeFrameAndDeclaration(judgementNode, frame, declaration) {
33
31
  const node = judgementNode,
34
- judgement = new Judgement(node, frame, metavariableNode);
32
+ judgement = new Judgement(node, frame, declaration);
35
33
 
36
34
  return judgement;
37
35
  }
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
 
3
+ export const FRAME_META_TYPE_NAME = "Frame";
3
4
  export const STATEMENT_META_TYPE_NAME = "Statement";
4
5
  export const REFERENCE_META_TYPE_NAME = "Reference";
5
- export const DECLARATION_META_TYPE_NAME = "Declaration";
@@ -2,13 +2,14 @@
2
2
 
3
3
  import shim from "../shim";
4
4
  import Declaration from "../declaration"
5
+ import frameMetaType from "../metaType/frame";
5
6
  import referenceMetaType from "../metaType/reference";
6
7
  import verifyMetavariableGivenMetaType from "../verify/metavariableGivenMetaType";
7
8
 
8
9
  import { nodeQuery } from "../utilities/query";
9
10
 
10
- const statementNodeQuery = nodeQuery("/declaration/statement[1]"),
11
- metavariableNodeQuery = nodeQuery("/declaration/statement[0]/metavariable!");
11
+ const statementNodeQuery = nodeQuery("/declaration/statement"),
12
+ metavariableNodeQuery = nodeQuery("/declaration/metavariable");
12
13
 
13
14
  const verifyDeclarationFunctions = [
14
15
  verifyDerivedDeclaration,
@@ -81,16 +82,23 @@ function verifyStatedDeclaration(declarationNode, declarations, stated, localCon
81
82
 
82
83
  localContext.trace(`Verifying the '${declarationString}' stated declaration...`, declarationNode);
83
84
 
84
- const metaType = referenceMetaType, ///
85
+ const statementNode = statementNodeQuery(declarationNode),
86
+ metaType = (statementNode === null) ?
87
+ frameMetaType :
88
+ referenceMetaType,
85
89
  metavariableNode = metavariableNodeQuery(declarationNode),
86
90
  metavariableVerifiedGivenMetaType = verifyMetavariableGivenMetaType(metavariableNode, metaType, localContext);
87
91
 
88
92
  if (metavariableVerifiedGivenMetaType) {
89
- const { verifyStatement } = shim,
90
- stated = true,
91
- assignments = null,
92
- statementNode = statementNodeQuery(declarationNode),
93
- statementVerified = verifyStatement(statementNode, assignments, stated, localContext);
93
+ let statementVerified = true; ///
94
+
95
+ if (statementNode !== null) {
96
+ const { verifyStatement } = shim,
97
+ stated = true,
98
+ assignments = null;
99
+
100
+ statementVerified = verifyStatement(statementNode, assignments, stated, localContext);
101
+ }
94
102
 
95
103
  if (statementVerified) {
96
104
  const declaration = Declaration.fromMetavariableNodeAndStatementNode(metavariableNode, statementNode);
@@ -1,14 +1,13 @@
1
1
  "use strict";
2
2
 
3
3
  import Frame from "../frame";
4
- import frameMetaType from "../metaType/frame";
5
4
  import verifyDeclaration from "../verify/declaration";
6
- import verifyMetavariableGivenMetaType from "../verify/metavariableGivenMetaType";
7
5
 
8
- import { nodesQuery } from "../utilities/query";
9
- import { first, push } from "../utilities/array";
6
+ import { first } from "../utilities/array";
7
+ import { nodeQuery, nodesQuery } from "../utilities/query";
10
8
 
11
- const declarationNodesQuery = nodesQuery("/frame/declaration"),
9
+ const declarationNodeQuery = nodeQuery("/frame/declaration!"),
10
+ declarationNodesQuery = nodesQuery("/frame/declaration"),
12
11
  metavariableNodesQuery = nodesQuery("/frame/metavariable");
13
12
 
14
13
  const verifyFrameFunctions = [
@@ -46,8 +45,12 @@ function verifyDerivedFrame(frameNode, frames, stated, localContext) {
46
45
 
47
46
  localContext.trace(`Verifying the '${frameString}' derived frame...`, frameNode);
48
47
 
49
- const declarationNodes = declarationNodesQuery(frameNode),
50
- declarationNodesLength = declarationNodes.length;
48
+ const declarationNode = declarationNodeQuery(frameNode);
49
+
50
+ if (declarationNode !== null) {
51
+
52
+ }
53
+ const declarationNodesLength = declarationNodes.length;
51
54
 
52
55
  if (declarationNodesLength === 1) {
53
56
  const metavariableNodes = metavariableNodesQuery(frameNode),
@@ -89,30 +92,30 @@ function verifyStatedFrame(frameNode, frames, stated, localContext) {
89
92
 
90
93
  localContext.trace(`Verifying the '${frameString}' stated frame...`, frameNode);
91
94
 
92
- const declarations = [],
93
- declarationNodes = declarationNodesQuery(frameNode),
94
- declarationsVerified = declarationNodes.every((declarationNode) => {
95
- const declarationVerified = verifyDeclaration(declarationNode, declarations, stated, localContext);
95
+ const declarationNode = declarationNodeQuery(frameNode);
96
96
 
97
- return declarationVerified;
98
- });
97
+ if (declarationNode !== null) {
98
+ const declarations = [],
99
+ declarationVerified = verifyDeclaration(declarationNode, declarations, stated, localContext);
99
100
 
100
- if (declarationsVerified) {
101
- const metavariableNodes = metavariableNodesQuery(frameNode),
102
- metavariablesVerified = metavariableNodes.every((metavariableNode) => {
103
- const metavariableVerified = verifyMetavariable(metavariableNode, declarations, localContext);
101
+ if (declarationVerified) {
102
+ const firstDeclaration = first(declarations),
103
+ declaration = firstDeclaration, ///
104
+ statementNode = declaration.getStatementNode();
104
105
 
105
- return metavariableVerified;
106
- });
107
-
108
- if (metavariablesVerified) {
109
- const frame = Frame.fromDeclarations(declarations);
106
+ if (statementNode === null) {
107
+ const frame = Frame.fromDeclarations(declarations);
110
108
 
111
- frames.push(frame);
109
+ frames.push(frame);
112
110
 
113
- statedFrameVerified = true;
114
- }
115
- }
111
+ statedFrameVerified = true;
112
+ } else {
113
+ localContext.trace(`The '${frameString}' stated frame's declaration cannot contain a statement.`, frameNode);
114
+ }
115
+ }
116
+ } else {
117
+ localContext.trace(`The '${frameString}' stated frame has more than one declaration .`, frameNode);
118
+ }
116
119
 
117
120
  if (statedFrameVerified) {
118
121
  localContext.debug(`...verified the '${frameString}' stated frame.`, frameNode);
@@ -121,28 +124,3 @@ function verifyStatedFrame(frameNode, frames, stated, localContext) {
121
124
 
122
125
  return statedFrameVerified;
123
126
  }
124
-
125
- function verifyMetavariable(metavariableNode, declarations, localContext) {
126
- let metavariableVerified = false;
127
-
128
- const metaType = frameMetaType, ///
129
- metavariableVerifiedGivenMetaType = verifyMetavariableGivenMetaType(metavariableNode, metaType, localContext);
130
-
131
- if (metavariableVerifiedGivenMetaType) {
132
- const judgement = localContext.findJudgementByMetavariableNode(metavariableNode);
133
-
134
- if (judgement !== null) {
135
- const judgementDeclarations = judgement.getDeclarations();
136
-
137
- push(declarations, judgementDeclarations);
138
-
139
- metavariableVerified = true;
140
- } else {
141
- const metavariableString = localContext.nodeAsString(metavariableNode);
142
-
143
- localContext.debug(`There is no judgement for the '${metavariableString}' metavariable.`, metavariableNode)
144
- }
145
- }
146
-
147
- return metavariableVerified;
148
- }
@@ -2,15 +2,14 @@
2
2
 
3
3
  import Judgement from "../judgement";
4
4
  import verifyFrame from "../verify/frame";
5
- import declarationMetaType from "../metaType/frame";
6
5
  import JudgementAssignment from "../assignment/judgement";
7
- import verifyMetavariableGivenMetaType from "../verify/metavariableGivenMetaType";
8
6
 
9
7
  import { first } from "../utilities/array";
10
8
  import { nodeQuery } from "../utilities/query";
9
+ import verifyDeclaration from "./declaration";
11
10
 
12
- const frameNodeQuery = nodeQuery("/judgement/frame!"),
13
- metavariableNodeQuery = nodeQuery("/judgement/statement/metavariable!");
11
+ const frameNodeQuery = nodeQuery("/judgement/frame"),
12
+ declarationNodeQuery = nodeQuery("/judgement/declaration");
14
13
 
15
14
  const verifyJudgementFunctions = [
16
15
  verifyDerivedJudgement,
@@ -47,42 +46,29 @@ function verifyDerivedJudgement(judgementNode, assignments, stated, localContext
47
46
 
48
47
  localContext.trace(`Verifying the '${judgementString}' derived judgement...`, judgementNode);
49
48
 
50
- const metavariableNode = metavariableNodeQuery(judgementNode);
51
-
52
- if (metavariableNode !== null) {
53
- const metaType = declarationMetaType, ///
54
- metavariableVerifiedGivenMetaType = verifyMetavariableGivenMetaType(metavariableNode, metaType, localContext);
55
-
56
- if (metavariableVerifiedGivenMetaType) {
57
- const judgement = localContext.findJudgementByMetavariableNode(metavariableNode);
58
-
59
- if (judgement !== null) {
60
- const frames = [],
61
- frameNode = frameNodeQuery(judgementNode),
62
- frameVerified = verifyFrame(frameNode, frames, stated, localContext);
63
-
64
- if (frameVerified) {
65
- const firstFrame = first(frames),
66
- frame = firstFrame, ///
67
- declaration = frame.getDeclaration(),
68
- metavariableNode = declaration.getMetavariableNode(),
69
- metatheorem = localContext.findMetatheoremByMetavariableNode(metavariableNode),
70
- metaLemma = localContext.findMetaLemmaByMetavariableNode(metavariableNode),
71
- metaLemmaMetatheorem = (metaLemma || metatheorem); ///
72
-
73
- if (metaLemmaMetatheorem !== null) {
74
- const metaLemmaMetatheoremUnifiedWithJudgement = judgement.unifyMetaLemmaOrMetatheorem(metaLemmaMetatheorem),
75
- metaLemmaMetatheoremUnifiedWithDeclaration = declaration.unifyMetaLemmaOrMetatheorem(metaLemmaMetatheorem);
76
-
77
- derivedJudgementVerified = (metaLemmaMetatheoremUnifiedWithJudgement && metaLemmaMetatheoremUnifiedWithDeclaration);
78
- }
79
- }
80
- } else {
81
- const metavariableString = localContext.nodeAsString(metavariableNode);
82
-
83
- localContext.debug(`There is no judgement for the '${metavariableString}' metavariable.`, metavariableNode)
84
- }
85
- }
49
+ const frames = [],
50
+ frameNode = frameNodeQuery(judgementNode),
51
+ frameVerified = verifyFrame(frameNode, frames, stated, localContext);
52
+
53
+ if (frameVerified) {
54
+ // const firstFrame = first(frames),
55
+ // frame = firstFrame, ///
56
+ // declaration = frame.getDeclaration(),
57
+ // metavariableNode = declaration.getMetavariableNode(),
58
+ // metatheorem = localContext.findMetatheoremByMetavariableNode(metavariableNode),
59
+ // metaLemma = localContext.findMetaLemmaByMetavariableNode(metavariableNode),
60
+ // metaLemmaMetatheorem = (metaLemma || metatheorem); ///
61
+ //
62
+ // if (metaLemmaMetatheorem !== null) {
63
+ // const metaLemmaMetatheoremUnifiedWithJudgement = judgement.unifyMetaLemmaOrMetatheorem(metaLemmaMetatheorem),
64
+ // metaLemmaMetatheoremUnifiedWithDeclaration = declaration.unifyMetaLemmaOrMetatheorem(metaLemmaMetatheorem);
65
+ //
66
+ // derivedJudgementVerified = (metaLemmaMetatheoremUnifiedWithJudgement && metaLemmaMetatheoremUnifiedWithDeclaration);
67
+ // }
68
+ } else {
69
+ // const metavariableString = localContext.nodeAsString(metavariableNode);
70
+ //
71
+ // localContext.debug(`There is no judgement for the '${metavariableString}' metavariable.`, metavariableNode)
86
72
  }
87
73
 
88
74
  if (derivedJudgementVerified) {
@@ -101,30 +87,29 @@ function verifyStatedJudgement(judgementNode, assignments, stated, localContext)
101
87
 
102
88
  localContext.trace(`Verifying the '${judgementString}' stated judgement...`, judgementNode);
103
89
 
104
- const metavariableNode = metavariableNodeQuery(judgementNode);
105
-
106
- if (metavariableNode !== null) {
107
- const metaType = declarationMetaType, ///
108
- metavariableVerifiedGivenMetaType = verifyMetavariableGivenMetaType(metavariableNode, metaType, localContext);
109
-
110
- if (metavariableVerifiedGivenMetaType) {
111
- const frames = [],
112
- frameNode = frameNodeQuery(judgementNode),
113
- frameVerified = verifyFrame(frameNode, frames, stated, localContext);
114
-
115
- if (frameVerified) {
116
- if (assignments !== null) {
117
- const firstFrame = first(frames),
118
- frame = firstFrame, ///
119
- judgement = Judgement.fromJudgementNodeFrameAndMetavariableNode(judgementNode, frame, metavariableNode),
120
- judgementAssignment = JudgementAssignment.fromJudgement(judgement),
121
- assignment = judgementAssignment;
122
-
123
- assignments.push(assignment);
124
- }
125
-
126
- statedJudgementVerified = true;
90
+ const frames = [],
91
+ frameNode = frameNodeQuery(judgementNode),
92
+ frameVerified = verifyFrame(frameNode, frames, stated, localContext);
93
+
94
+ if (frameVerified) {
95
+ const declarations = [],
96
+ declarationNode = declarationNodeQuery(judgementNode),
97
+ declarationVerified = verifyDeclaration(declarationNode, declarations, stated, localContext);
98
+
99
+ if (declarationVerified) {
100
+ if (assignments !== null) {
101
+ const firstDeclaration = first(declarations),
102
+ declaration = firstDeclaration, ///
103
+ firstFrame = first(frames),
104
+ frame = firstFrame, ///
105
+ judgement = Judgement.fromJudgementNodeFrameAndDeclaration(judgementNode, frame, declaration),
106
+ judgementAssignment = JudgementAssignment.fromJudgement(judgement),
107
+ assignment = judgementAssignment;
108
+
109
+ assignments.push(assignment);
127
110
  }
111
+
112
+ statedJudgementVerified = true;
128
113
  }
129
114
  }
130
115
 
@@ -4,7 +4,7 @@ import shim from "../shim";
4
4
 
5
5
  import { nodeQuery } from "../utilities/query";
6
6
  import { metavariableNameFromMetavariableNode } from "../utilities/name";
7
- import { DECLARATION_META_TYPE_NAME, REFERENCE_META_TYPE_NAME, STATEMENT_META_TYPE_NAME } from "../metaTypeNames";
7
+ import { FRAME_META_TYPE_NAME, REFERENCE_META_TYPE_NAME, STATEMENT_META_TYPE_NAME } from "../metaTypeNames";
8
8
 
9
9
  const metavariableNodeQuery = nodeQuery("/statement/metavariable!");
10
10
 
@@ -14,17 +14,8 @@ export default function verifyStatementGivenMetaType(statementNode, metaType, as
14
14
  const metaTypeName = metaType.getName();
15
15
 
16
16
  switch (metaTypeName) {
17
- case STATEMENT_META_TYPE_NAME: {
18
- const { verifyStatement } = shim,
19
- statementVerified = verifyStatement(statementNode, assignments, stated, localContext)
20
-
21
- statementVerifiedGivenMetaType = statementVerified; ///
22
-
23
- break;
24
- }
25
-
26
- case REFERENCE_META_TYPE_NAME:
27
- case DECLARATION_META_TYPE_NAME: {
17
+ case FRAME_META_TYPE_NAME:
18
+ case REFERENCE_META_TYPE_NAME: {
28
19
  statementVerifiedGivenMetaType = false;
29
20
 
30
21
  const metavariableNode = metavariableNodeQuery(statementNode);
@@ -44,6 +35,15 @@ export default function verifyStatementGivenMetaType(statementNode, metaType, as
44
35
 
45
36
  break;
46
37
  }
38
+
39
+ case STATEMENT_META_TYPE_NAME: {
40
+ const { verifyStatement } = shim,
41
+ statementVerified = verifyStatement(statementNode, assignments, stated, localContext)
42
+
43
+ statementVerifiedGivenMetaType = statementVerified; ///
44
+
45
+ break;
46
+ }
47
47
  }
48
48
 
49
49
  return statementVerifiedGivenMetaType;