occam-verify-cli 0.0.539 → 0.0.541

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/bin/utilities/releaseContext.js +30 -40
  2. package/lib/axiom.js +4 -4
  3. package/lib/axiomLemmaTheoremConjecture.js +6 -6
  4. package/lib/combinator.js +4 -4
  5. package/lib/conclusion.js +4 -4
  6. package/lib/conjecture.js +4 -4
  7. package/lib/constructor.js +6 -6
  8. package/lib/context/file.js +185 -78
  9. package/lib/context/metaproof.js +3 -3
  10. package/lib/context/release.js +222 -3
  11. package/lib/index.js +1 -9
  12. package/lib/kinds.js +9 -1
  13. package/lib/label.js +4 -4
  14. package/lib/lemma.js +4 -4
  15. package/lib/metaType.js +9 -7
  16. package/lib/metavariable.js +32 -1
  17. package/lib/premise.js +4 -4
  18. package/lib/rule.js +7 -7
  19. package/lib/ruleNames.js +16 -4
  20. package/lib/supposition.js +4 -4
  21. package/lib/theorem.js +4 -4
  22. package/lib/type.js +14 -14
  23. package/lib/utilities/node.js +31 -3
  24. package/lib/utilities/releaseContext.js +6 -5
  25. package/lib/variable.js +32 -1
  26. package/lib/verifier.js +1 -1
  27. package/lib/verify/file.js +2 -2
  28. package/lib/verify/metastatement.js +147 -3
  29. package/lib/verify/statement.js +2 -2
  30. package/package.json +3 -3
  31. package/src/axiom.js +1 -1
  32. package/src/axiomLemmaTheoremConjecture.js +4 -4
  33. package/src/combinator.js +3 -3
  34. package/src/conclusion.js +3 -3
  35. package/src/conjecture.js +1 -1
  36. package/src/constructor.js +5 -5
  37. package/src/context/file.js +161 -28
  38. package/src/context/metaproof.js +1 -1
  39. package/src/context/release.js +266 -3
  40. package/src/index.js +0 -2
  41. package/src/kinds.js +2 -0
  42. package/src/label.js +3 -3
  43. package/src/lemma.js +1 -1
  44. package/src/metaType.js +8 -5
  45. package/src/metavariable.js +36 -0
  46. package/src/premise.js +3 -3
  47. package/src/rule.js +5 -5
  48. package/src/ruleNames.js +4 -1
  49. package/src/supposition.js +3 -3
  50. package/src/theorem.js +1 -1
  51. package/src/type.js +13 -13
  52. package/src/utilities/node.js +57 -2
  53. package/src/utilities/releaseContext.js +4 -2
  54. package/src/variable.js +36 -0
  55. package/src/verifier.js +1 -1
  56. package/src/verify/file.js +1 -1
  57. package/src/verify/metastatement.js +65 -2
  58. package/src/verify/statement.js +2 -2
  59. package/lib/context/release/directory.js +0 -313
  60. package/lib/context/release/file.js +0 -387
  61. package/src/context/release/directory.js +0 -251
  62. package/src/context/release/file.js +0 -312
@@ -15,9 +15,21 @@ _export(exports, {
15
15
  labelNodeFromLabelString: function() {
16
16
  return labelNodeFromLabelString;
17
17
  },
18
+ typeNodeFromVariableString: function() {
19
+ return typeNodeFromVariableString;
20
+ },
21
+ variableNodeFromVariableString: function() {
22
+ return variableNodeFromVariableString;
23
+ },
18
24
  statementNodeFromStatementString: function() {
19
25
  return statementNodeFromStatementString;
20
26
  },
27
+ metaTypeNodeFromMetavariableString: function() {
28
+ return metaTypeNodeFromMetavariableString;
29
+ },
30
+ metavariableNodeFromMetavariableString: function() {
31
+ return metavariableNodeFromMetavariableString;
32
+ },
21
33
  metastatementNodeFromMetastatementString: function() {
22
34
  return metastatementNodeFromMetastatementString;
23
35
  }
@@ -29,19 +41,35 @@ var _ruleNames = require("../ruleNames");
29
41
  var _customGrammar = require("./customGrammar");
30
42
  var florenceLexerFromCombinedCustomGrammar = _occamCustomGrammars.lexersUtilities.florenceLexerFromCombinedCustomGrammar, florenceParserFromCombinedCustomGrammar = _occamCustomGrammars.parsersUtilities.florenceParserFromCombinedCustomGrammar;
31
43
  var combinedCustomGrammar = (0, _customGrammar.combinedCustomGrammarFromNothing)(), florenceLexer = florenceLexerFromCombinedCustomGrammar(combinedCustomGrammar), florenceParser = florenceParserFromCombinedCustomGrammar(combinedCustomGrammar);
32
- var termNodeQuery = (0, _query.nodeQuery)("/constructorDeclaration/term!"), statementNodeQuery = (0, _query.nodeQuery)("/unqualifiedStatement/statement!"), metastatementNodeQuery = (0, _query.nodeQuery)("/unqualifiedMetastatement/metastatement!");
44
+ var termNodeQuery = (0, _query.nodeQuery)("/constructorDeclaration/term!"), typeNodeQuery = (0, _query.nodeQuery)("/variableDeclaration/type!"), variableNodeQuery = (0, _query.nodeQuery)("/variableDeclaration/variable!"), metaTypeNodeQuery = (0, _query.nodeQuery)("/metavariableDeclaration/metaType!"), statementNodeQuery = (0, _query.nodeQuery)("/unqualifiedStatement/statement!"), metavariableNodeQuery = (0, _query.nodeQuery)("/metavariableDeclaration/metavariable!"), metastatementNodeQuery = (0, _query.nodeQuery)("/unqualifiedMetastatement/metastatement!");
33
45
  function termNodeFromTermString(termString, lexer, parser) {
34
- var ruleName = _ruleNames.CONSTRUCTOR_DECLARATIONRULE_NAME, content = "Constructor ".concat(termString, "\n"), node = nodeFromContentAndRuleName(content, ruleName, lexer, parser), constructorDeclarationNode = node, termNode = termNodeQuery(constructorDeclarationNode);
46
+ var ruleName = _ruleNames.CONSTRUCTOR_DECLARATION_RULE_NAME, content = "Constructor ".concat(termString, "\n"), node = nodeFromContentAndRuleName(content, ruleName, lexer, parser), constructorDeclarationNode = node, termNode = termNodeQuery(constructorDeclarationNode);
35
47
  return termNode;
36
48
  }
37
49
  function labelNodeFromLabelString(labelString, lexer, parser) {
38
50
  var content = labelString, ruleName = _ruleNames.LABEL_RULE_NAME, node = nodeFromContentAndRuleName(content, ruleName, lexer, parser), labelNode = node; ///
39
51
  return labelNode;
40
52
  }
53
+ function typeNodeFromVariableString(variableString, lexer, parser) {
54
+ var ruleName = _ruleNames.TYPE_RULE_NAME, content = "Variable ".concat(variableString, "\n"), node = nodeFromContentAndRuleName(content, ruleName, lexer, parser), typeDeclarationNode = node, typeNode = typeNodeQuery(typeDeclarationNode);
55
+ return typeNode;
56
+ }
57
+ function variableNodeFromVariableString(variableString, lexer, parser) {
58
+ var ruleName = _ruleNames.VARIABLE_RULE_NAME, content = "Variable ".concat(variableString, "\n"), node = nodeFromContentAndRuleName(content, ruleName, lexer, parser), variableDeclarationNode = node, variableNode = variableNodeQuery(variableDeclarationNode);
59
+ return variableNode;
60
+ }
41
61
  function statementNodeFromStatementString(statementString, lexer, parser) {
42
62
  var ruleName = _ruleNames.UNQUALIFIED_STATEMENT_RULE_NAME, content = "".concat(statementString, "\n"), node = nodeFromContentAndRuleName(content, ruleName, lexer, parser), unqualifiedStatementNode = node, statementNode = statementNodeQuery(unqualifiedStatementNode);
43
63
  return statementNode;
44
64
  }
65
+ function metaTypeNodeFromMetavariableString(metavariableString, lexer, parser) {
66
+ var ruleName = _ruleNames.META_TYPE_RULE_NAME, content = "Metavariable ".concat(metavariableString, "\n"), node = nodeFromContentAndRuleName(content, ruleName, lexer, parser), metaTypeDeclarationNode = node, metaTypeNode = metaTypeNodeQuery(metaTypeDeclarationNode);
67
+ return metaTypeNode;
68
+ }
69
+ function metavariableNodeFromMetavariableString(metavariableString, lexer, parser) {
70
+ var ruleName = _ruleNames.METAVARIABLE_RULE_NAME, content = "Metavariable ".concat(metavariableString, "\n"), node = nodeFromContentAndRuleName(content, ruleName, lexer, parser), metavariableDeclarationNode = node, metavariableNode = metavariableNodeQuery(metavariableDeclarationNode);
71
+ return metavariableNode;
72
+ }
45
73
  function metastatementNodeFromMetastatementString(metastatementString, lexer, parser) {
46
74
  var ruleName = _ruleNames.UNQUALIFIED_METASTATEMENT_RULE_NAME, content = "".concat(metastatementString, "\n"), node = nodeFromContentAndRuleName(content, ruleName, lexer, parser), unqualifiedMetastatementNode = node, metastatementNode = metastatementNodeQuery(unqualifiedMetastatementNode);
47
75
  return metastatementNode;
@@ -53,4 +81,4 @@ function nodeFromContentAndRuleName(content, ruleName) {
53
81
  return node;
54
82
  }
55
83
 
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbm9kZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgcmV3cml0ZU5vZGVzIH0gZnJvbSBcIm9jY2FtLWdyYW1tYXItdXRpbGl0aWVzXCI7XG5pbXBvcnQgeyBsZXhlcnNVdGlsaXRpZXMsIHBhcnNlcnNVdGlsaXRpZXMgfSBmcm9tIFwib2NjYW0tY3VzdG9tLWdyYW1tYXJzXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IExBQkVMX1JVTEVfTkFNRSwgVU5RVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRSwgVU5RVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUsIENPTlNUUlVDVE9SX0RFQ0xBUkFUSU9OUlVMRV9OQU1FIH0gZnJvbSBcIi4uL3J1bGVOYW1lc1wiO1xuXG5pbXBvcnQgeyBjb21iaW5lZEN1c3RvbUdyYW1tYXJGcm9tTm90aGluZyB9IGZyb20gXCIuL2N1c3RvbUdyYW1tYXJcIjtcblxuY29uc3QgeyBmbG9yZW5jZUxleGVyRnJvbUNvbWJpbmVkQ3VzdG9tR3JhbW1hciB9ID0gbGV4ZXJzVXRpbGl0aWVzLFxuICAgICAgeyBmbG9yZW5jZVBhcnNlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIgfSA9IHBhcnNlcnNVdGlsaXRpZXM7XG5cbmNvbnN0IGNvbWJpbmVkQ3VzdG9tR3JhbW1hciA9IGNvbWJpbmVkQ3VzdG9tR3JhbW1hckZyb21Ob3RoaW5nKCksXG4gICAgICBmbG9yZW5jZUxleGVyID0gZmxvcmVuY2VMZXhlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIoY29tYmluZWRDdXN0b21HcmFtbWFyKSxcbiAgICAgIGZsb3JlbmNlUGFyc2VyID0gZmxvcmVuY2VQYXJzZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyKGNvbWJpbmVkQ3VzdG9tR3JhbW1hcik7XG5cbmNvbnN0IHRlcm1Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvY29uc3RydWN0b3JEZWNsYXJhdGlvbi90ZXJtIVwiKSxcbiAgICAgIHN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi91bnF1YWxpZmllZFN0YXRlbWVudC9zdGF0ZW1lbnQhXCIpLFxuICAgICAgbWV0YXN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi91bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQvbWV0YXN0YXRlbWVudCFcIik7XG5cbmV4cG9ydCBmdW5jdGlvbiB0ZXJtTm9kZUZyb21UZXJtU3RyaW5nKHRlcm1TdHJpbmcsIGxleGVyLCBwYXJzZXIpIHtcbiAgY29uc3QgcnVsZU5hbWUgPSBDT05TVFJVQ1RPUl9ERUNMQVJBVElPTlJVTEVfTkFNRSxcbiAgICAgICAgY29udGVudCA9IGBDb25zdHJ1Y3RvciAke3Rlcm1TdHJpbmd9XG5gLFxuICAgICAgICBub2RlID0gbm9kZUZyb21Db250ZW50QW5kUnVsZU5hbWUoY29udGVudCwgcnVsZU5hbWUsIGxleGVyLCBwYXJzZXIpLFxuICAgICAgICBjb25zdHJ1Y3RvckRlY2xhcmF0aW9uTm9kZSA9IG5vZGUsIC8vL1xuICAgICAgICB0ZXJtTm9kZSA9IHRlcm1Ob2RlUXVlcnkoY29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGUpO1xuXG4gIHJldHVybiB0ZXJtTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxhYmVsTm9kZUZyb21MYWJlbFN0cmluZyhsYWJlbFN0cmluZywgbGV4ZXIsIHBhcnNlcikge1xuICBjb25zdCBjb250ZW50ID0gbGFiZWxTdHJpbmcsIC8vL1xuICAgICAgICBydWxlTmFtZSA9IExBQkVMX1JVTEVfTkFNRSxcbiAgICAgICAgbm9kZSA9IG5vZGVGcm9tQ29udGVudEFuZFJ1bGVOYW1lKGNvbnRlbnQsIHJ1bGVOYW1lLCBsZXhlciwgcGFyc2VyKSxcbiAgICAgICAgbGFiZWxOb2RlID0gbm9kZTsgLy8vXG5cbiAgcmV0dXJuIGxhYmVsTm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHN0YXRlbWVudE5vZGVGcm9tU3RhdGVtZW50U3RyaW5nKHN0YXRlbWVudFN0cmluZywgbGV4ZXIsIHBhcnNlcikge1xuICBjb25zdCBydWxlTmFtZSA9IFVOUVVBTElGSUVEX1NUQVRFTUVOVF9SVUxFX05BTUUsXG4gICAgICAgIGNvbnRlbnQgPSBgJHtzdGF0ZW1lbnRTdHJpbmd9XG5gLFxuICAgICAgICBub2RlID0gbm9kZUZyb21Db250ZW50QW5kUnVsZU5hbWUoY29udGVudCwgcnVsZU5hbWUsIGxleGVyLCBwYXJzZXIpLFxuICAgICAgICB1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSBub2RlLCAgLy8vXG4gICAgICAgIHN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlUXVlcnkodW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlKTtcblxuICByZXR1cm4gc3RhdGVtZW50Tm9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1ldGFzdGF0ZW1lbnROb2RlRnJvbU1ldGFzdGF0ZW1lbnRTdHJpbmcobWV0YXN0YXRlbWVudFN0cmluZywgbGV4ZXIsIHBhcnNlcikge1xuICBjb25zdCBydWxlTmFtZSA9IFVOUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FLFxuICAgICAgICBjb250ZW50ID0gYCR7bWV0YXN0YXRlbWVudFN0cmluZ31cbmAsXG4gICAgICAgIG5vZGUgPSBub2RlRnJvbUNvbnRlbnRBbmRSdWxlTmFtZShjb250ZW50LCBydWxlTmFtZSwgbGV4ZXIsIHBhcnNlciksXG4gICAgICAgIHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUgPSBub2RlLCAgLy8vXG4gICAgICAgIG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGVRdWVyeSh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICByZXR1cm4gbWV0YXN0YXRlbWVudE5vZGU7XG59XG5cbmZ1bmN0aW9uIG5vZGVGcm9tQ29udGVudEFuZFJ1bGVOYW1lKGNvbnRlbnQsIHJ1bGVOYW1lLCBsZXhlciA9IGZsb3JlbmNlTGV4ZXIsIHBhcnNlciA9IGZsb3JlbmNlUGFyc2VyKSB7XG4gIGNvbnN0IHJ1bGVNYXAgPSBwYXJzZXIuZ2V0UnVsZU1hcCgpLFxuICAgICAgICBydWxlID0gcnVsZU1hcFtydWxlTmFtZV0sXG4gICAgICAgIHRva2VucyA9IGxleGVyLnRva2VuaXNlKGNvbnRlbnQpLFxuICAgICAgICBub2RlID0gcGFyc2VyLnBhcnNlKHRva2VucywgcnVsZSksXG4gICAgICAgIG5vblRlcm1pbmFsTm9kZSA9IG5vZGU7IC8vL1xuXG4gIHJld3JpdGVOb2Rlcyhub25UZXJtaW5hbE5vZGUpO1xuXG4gIHJldHVybiBub2RlO1xufVxuIl0sIm5hbWVzIjpbInRlcm1Ob2RlRnJvbVRlcm1TdHJpbmciLCJsYWJlbE5vZGVGcm9tTGFiZWxTdHJpbmciLCJzdGF0ZW1lbnROb2RlRnJvbVN0YXRlbWVudFN0cmluZyIsIm1ldGFzdGF0ZW1lbnROb2RlRnJvbU1ldGFzdGF0ZW1lbnRTdHJpbmciLCJmbG9yZW5jZUxleGVyRnJvbUNvbWJpbmVkQ3VzdG9tR3JhbW1hciIsImxleGVyc1V0aWxpdGllcyIsImZsb3JlbmNlUGFyc2VyRnJvbUNvbWJpbmVkQ3VzdG9tR3JhbW1hciIsInBhcnNlcnNVdGlsaXRpZXMiLCJjb21iaW5lZEN1c3RvbUdyYW1tYXIiLCJjb21iaW5lZEN1c3RvbUdyYW1tYXJGcm9tTm90aGluZyIsImZsb3JlbmNlTGV4ZXIiLCJmbG9yZW5jZVBhcnNlciIsInRlcm1Ob2RlUXVlcnkiLCJub2RlUXVlcnkiLCJzdGF0ZW1lbnROb2RlUXVlcnkiLCJtZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5IiwidGVybVN0cmluZyIsImxleGVyIiwicGFyc2VyIiwicnVsZU5hbWUiLCJDT05TVFJVQ1RPUl9ERUNMQVJBVElPTlJVTEVfTkFNRSIsImNvbnRlbnQiLCJub2RlIiwibm9kZUZyb21Db250ZW50QW5kUnVsZU5hbWUiLCJjb25zdHJ1Y3RvckRlY2xhcmF0aW9uTm9kZSIsInRlcm1Ob2RlIiwibGFiZWxTdHJpbmciLCJMQUJFTF9SVUxFX05BTUUiLCJsYWJlbE5vZGUiLCJzdGF0ZW1lbnRTdHJpbmciLCJVTlFVQUxJRklFRF9TVEFURU1FTlRfUlVMRV9OQU1FIiwidW5xdWFsaWZpZWRTdGF0ZW1lbnROb2RlIiwic3RhdGVtZW50Tm9kZSIsIm1ldGFzdGF0ZW1lbnRTdHJpbmciLCJVTlFVQUxJRklFRF9NRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSIsInVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUiLCJtZXRhc3RhdGVtZW50Tm9kZSIsInJ1bGVNYXAiLCJnZXRSdWxlTWFwIiwicnVsZSIsInRva2VucyIsInRva2VuaXNlIiwicGFyc2UiLCJub25UZXJtaW5hbE5vZGUiLCJyZXdyaXRlTm9kZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQXFCZ0JBLHNCQUFzQjtlQUF0QkE7O0lBV0FDLHdCQUF3QjtlQUF4QkE7O0lBU0FDLGdDQUFnQztlQUFoQ0E7O0lBV0FDLHdDQUF3QztlQUF4Q0E7OztxQ0FsRGE7bUNBQ3FCO3FCQUV4Qjt5QkFDOEc7NkJBRXZGO0FBRWpELElBQU0sQUFBRUMseUNBQTJDQyxvQ0FBZSxDQUExREQsd0NBQ0YsQUFBRUUsMENBQTRDQyxxQ0FBZ0IsQ0FBNUREO0FBRVIsSUFBTUUsd0JBQXdCQyxJQUFBQSwrQ0FBZ0MsS0FDeERDLGdCQUFnQk4sdUNBQXVDSSx3QkFDdkRHLGlCQUFpQkwsd0NBQXdDRTtBQUUvRCxJQUFNSSxnQkFBZ0JDLElBQUFBLGdCQUFTLEVBQUMsa0NBQzFCQyxxQkFBcUJELElBQUFBLGdCQUFTLEVBQUMscUNBQy9CRSx5QkFBeUJGLElBQUFBLGdCQUFTLEVBQUM7QUFFbEMsU0FBU2IsdUJBQXVCZ0IsVUFBVSxFQUFFQyxLQUFLLEVBQUVDLE1BQU0sRUFBRTtJQUNoRSxJQUFNQyxXQUFXQywyQ0FBZ0MsRUFDM0NDLFVBQVUsQUFBQyxlQUF5QixPQUFYTCxZQUFXLE9BRXBDTSxPQUFPQywyQkFBMkJGLFNBQVNGLFVBQVVGLE9BQU9DLFNBQzVETSw2QkFBNkJGLE1BQzdCRyxXQUFXYixjQUFjWTtJQUUvQixPQUFPQztBQUNUO0FBRU8sU0FBU3hCLHlCQUF5QnlCLFdBQVcsRUFBRVQsS0FBSyxFQUFFQyxNQUFNLEVBQUU7SUFDbkUsSUFBTUcsVUFBVUssYUFDVlAsV0FBV1EsMEJBQWUsRUFDMUJMLE9BQU9DLDJCQUEyQkYsU0FBU0YsVUFBVUYsT0FBT0MsU0FDNURVLFlBQVlOLE1BQU0sR0FBRztJQUUzQixPQUFPTTtBQUNUO0FBRU8sU0FBUzFCLGlDQUFpQzJCLGVBQWUsRUFBRVosS0FBSyxFQUFFQyxNQUFNLEVBQUU7SUFDL0UsSUFBTUMsV0FBV1csMENBQStCLEVBQzFDVCxVQUFVLEFBQUMsR0FBa0IsT0FBaEJRLGlCQUFnQixPQUU3QlAsT0FBT0MsMkJBQTJCRixTQUFTRixVQUFVRixPQUFPQyxTQUM1RGEsMkJBQTJCVCxNQUMzQlUsZ0JBQWdCbEIsbUJBQW1CaUI7SUFFekMsT0FBT0M7QUFDVDtBQUVPLFNBQVM3Qix5Q0FBeUM4QixtQkFBbUIsRUFBRWhCLEtBQUssRUFBRUMsTUFBTSxFQUFFO0lBQzNGLElBQU1DLFdBQVdlLDhDQUFtQyxFQUM5Q2IsVUFBVSxBQUFDLEdBQXNCLE9BQXBCWSxxQkFBb0IsT0FFakNYLE9BQU9DLDJCQUEyQkYsU0FBU0YsVUFBVUYsT0FBT0MsU0FDNURpQiwrQkFBK0JiLE1BQy9CYyxvQkFBb0JyQix1QkFBdUJvQjtJQUVqRCxPQUFPQztBQUNUO0FBRUEsU0FBU2IsMkJBQTJCRixPQUFPLEVBQUVGLFFBQVEsRUFBa0Q7UUFBaERGLFFBQUFBLGlFQUFRUCxhQUFhLEVBQUVRLFNBQUFBLGlFQUFTUCxjQUFjO0lBQ25HLElBQU0wQixVQUFVbkIsT0FBT29CLFVBQVUsSUFDM0JDLE9BQU9GLE9BQU8sQ0FBQ2xCLFNBQVMsRUFDeEJxQixTQUFTdkIsTUFBTXdCLFFBQVEsQ0FBQ3BCLFVBQ3hCQyxPQUFPSixPQUFPd0IsS0FBSyxDQUFDRixRQUFRRCxPQUM1Qkksa0JBQWtCckIsTUFBTSxHQUFHO0lBRWpDc0IsSUFBQUEsbUNBQVksRUFBQ0Q7SUFFYixPQUFPckI7QUFDVCJ9
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbm9kZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgcmV3cml0ZU5vZGVzIH0gZnJvbSBcIm9jY2FtLWdyYW1tYXItdXRpbGl0aWVzXCI7XG5pbXBvcnQgeyBsZXhlcnNVdGlsaXRpZXMsIHBhcnNlcnNVdGlsaXRpZXMgfSBmcm9tIFwib2NjYW0tY3VzdG9tLWdyYW1tYXJzXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IFRZUEVfUlVMRV9OQU1FLFxuICAgICAgICAgTEFCRUxfUlVMRV9OQU1FLFxuICAgICAgICAgVkFSSUFCTEVfUlVMRV9OQU1FLFxuICAgICAgICAgTUVUQV9UWVBFX1JVTEVfTkFNRSxcbiAgICAgICAgIE1FVEFWQVJJQUJMRV9SVUxFX05BTUUsXG4gICAgICAgICBVTlFVQUxJRklFRF9TVEFURU1FTlRfUlVMRV9OQU1FLFxuICAgICAgICAgQ09OU1RSVUNUT1JfREVDTEFSQVRJT05fUlVMRV9OQU1FLFxuICAgICAgICAgVU5RVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUgfSBmcm9tIFwiLi4vcnVsZU5hbWVzXCI7XG5cbmltcG9ydCB7IGNvbWJpbmVkQ3VzdG9tR3JhbW1hckZyb21Ob3RoaW5nIH0gZnJvbSBcIi4vY3VzdG9tR3JhbW1hclwiO1xuXG5jb25zdCB7IGZsb3JlbmNlTGV4ZXJGcm9tQ29tYmluZWRDdXN0b21HcmFtbWFyIH0gPSBsZXhlcnNVdGlsaXRpZXMsXG4gICAgICB7IGZsb3JlbmNlUGFyc2VyRnJvbUNvbWJpbmVkQ3VzdG9tR3JhbW1hciB9ID0gcGFyc2Vyc1V0aWxpdGllcztcblxuY29uc3QgY29tYmluZWRDdXN0b21HcmFtbWFyID0gY29tYmluZWRDdXN0b21HcmFtbWFyRnJvbU5vdGhpbmcoKSxcbiAgICAgIGZsb3JlbmNlTGV4ZXIgPSBmbG9yZW5jZUxleGVyRnJvbUNvbWJpbmVkQ3VzdG9tR3JhbW1hcihjb21iaW5lZEN1c3RvbUdyYW1tYXIpLFxuICAgICAgZmxvcmVuY2VQYXJzZXIgPSBmbG9yZW5jZVBhcnNlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIoY29tYmluZWRDdXN0b21HcmFtbWFyKTtcblxuY29uc3QgdGVybU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9jb25zdHJ1Y3RvckRlY2xhcmF0aW9uL3Rlcm0hXCIpLFxuICAgICAgdHlwZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi92YXJpYWJsZURlY2xhcmF0aW9uL3R5cGUhXCIpLFxuICAgICAgdmFyaWFibGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdmFyaWFibGVEZWNsYXJhdGlvbi92YXJpYWJsZSFcIiksXG4gICAgICBtZXRhVHlwZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhdmFyaWFibGVEZWNsYXJhdGlvbi9tZXRhVHlwZSFcIiksXG4gICAgICBzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdW5xdWFsaWZpZWRTdGF0ZW1lbnQvc3RhdGVtZW50IVwiKSxcbiAgICAgIG1ldGF2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhdmFyaWFibGVEZWNsYXJhdGlvbi9tZXRhdmFyaWFibGUhXCIpLFxuICAgICAgbWV0YXN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi91bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQvbWV0YXN0YXRlbWVudCFcIik7XG5cbmV4cG9ydCBmdW5jdGlvbiB0ZXJtTm9kZUZyb21UZXJtU3RyaW5nKHRlcm1TdHJpbmcsIGxleGVyLCBwYXJzZXIpIHtcbiAgY29uc3QgcnVsZU5hbWUgPSBDT05TVFJVQ1RPUl9ERUNMQVJBVElPTl9SVUxFX05BTUUsXG4gICAgICAgIGNvbnRlbnQgPSBgQ29uc3RydWN0b3IgJHt0ZXJtU3RyaW5nfVxuYCxcbiAgICAgICAgbm9kZSA9IG5vZGVGcm9tQ29udGVudEFuZFJ1bGVOYW1lKGNvbnRlbnQsIHJ1bGVOYW1lLCBsZXhlciwgcGFyc2VyKSxcbiAgICAgICAgY29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGUgPSBub2RlLCAvLy9cbiAgICAgICAgdGVybU5vZGUgPSB0ZXJtTm9kZVF1ZXJ5KGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ob2RlKTtcblxuICByZXR1cm4gdGVybU5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsYWJlbE5vZGVGcm9tTGFiZWxTdHJpbmcobGFiZWxTdHJpbmcsIGxleGVyLCBwYXJzZXIpIHtcbiAgY29uc3QgY29udGVudCA9IGxhYmVsU3RyaW5nLCAvLy9cbiAgICAgICAgcnVsZU5hbWUgPSBMQUJFTF9SVUxFX05BTUUsXG4gICAgICAgIG5vZGUgPSBub2RlRnJvbUNvbnRlbnRBbmRSdWxlTmFtZShjb250ZW50LCBydWxlTmFtZSwgbGV4ZXIsIHBhcnNlciksXG4gICAgICAgIGxhYmVsTm9kZSA9IG5vZGU7IC8vL1xuXG4gIHJldHVybiBsYWJlbE5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0eXBlTm9kZUZyb21WYXJpYWJsZVN0cmluZyh2YXJpYWJsZVN0cmluZywgbGV4ZXIsIHBhcnNlcikge1xuICBjb25zdCBydWxlTmFtZSA9IFRZUEVfUlVMRV9OQU1FLFxuICAgICAgICBjb250ZW50ID0gYFZhcmlhYmxlICR7dmFyaWFibGVTdHJpbmd9XG5gLFxuICAgICAgICBub2RlID0gbm9kZUZyb21Db250ZW50QW5kUnVsZU5hbWUoY29udGVudCwgcnVsZU5hbWUsIGxleGVyLCBwYXJzZXIpLFxuICAgICAgICB0eXBlRGVjbGFyYXRpb25Ob2RlID0gbm9kZSwgLy8vXG4gICAgICAgIHR5cGVOb2RlID0gdHlwZU5vZGVRdWVyeSh0eXBlRGVjbGFyYXRpb25Ob2RlKTtcblxuICByZXR1cm4gdHlwZU5vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YXJpYWJsZU5vZGVGcm9tVmFyaWFibGVTdHJpbmcodmFyaWFibGVTdHJpbmcsIGxleGVyLCBwYXJzZXIpIHtcbiAgY29uc3QgcnVsZU5hbWUgPSBWQVJJQUJMRV9SVUxFX05BTUUsXG4gICAgICAgIGNvbnRlbnQgPSBgVmFyaWFibGUgJHt2YXJpYWJsZVN0cmluZ31cbmAsXG4gICAgICAgIG5vZGUgPSBub2RlRnJvbUNvbnRlbnRBbmRSdWxlTmFtZShjb250ZW50LCBydWxlTmFtZSwgbGV4ZXIsIHBhcnNlciksXG4gICAgICAgIHZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlID0gbm9kZSwgLy8vXG4gICAgICAgIHZhcmlhYmxlTm9kZSA9IHZhcmlhYmxlTm9kZVF1ZXJ5KHZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlKTtcblxuICByZXR1cm4gdmFyaWFibGVOb2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc3RhdGVtZW50Tm9kZUZyb21TdGF0ZW1lbnRTdHJpbmcoc3RhdGVtZW50U3RyaW5nLCBsZXhlciwgcGFyc2VyKSB7XG4gIGNvbnN0IHJ1bGVOYW1lID0gVU5RVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRSxcbiAgICAgICAgY29udGVudCA9IGAke3N0YXRlbWVudFN0cmluZ31cbmAsXG4gICAgICAgIG5vZGUgPSBub2RlRnJvbUNvbnRlbnRBbmRSdWxlTmFtZShjb250ZW50LCBydWxlTmFtZSwgbGV4ZXIsIHBhcnNlciksXG4gICAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSA9IG5vZGUsICAvLy9cbiAgICAgICAgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVRdWVyeSh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUpO1xuXG4gIHJldHVybiBzdGF0ZW1lbnROb2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWV0YVR5cGVOb2RlRnJvbU1ldGF2YXJpYWJsZVN0cmluZyhtZXRhdmFyaWFibGVTdHJpbmcsIGxleGVyLCBwYXJzZXIpIHtcbiAgY29uc3QgcnVsZU5hbWUgPSBNRVRBX1RZUEVfUlVMRV9OQU1FLFxuICAgICAgICBjb250ZW50ID0gYE1ldGF2YXJpYWJsZSAke21ldGF2YXJpYWJsZVN0cmluZ31cbmAsXG4gICAgICAgIG5vZGUgPSBub2RlRnJvbUNvbnRlbnRBbmRSdWxlTmFtZShjb250ZW50LCBydWxlTmFtZSwgbGV4ZXIsIHBhcnNlciksXG4gICAgICAgIG1ldGFUeXBlRGVjbGFyYXRpb25Ob2RlID0gbm9kZSwgLy8vXG4gICAgICAgIG1ldGFUeXBlTm9kZSA9IG1ldGFUeXBlTm9kZVF1ZXJ5KG1ldGFUeXBlRGVjbGFyYXRpb25Ob2RlKTtcblxuICByZXR1cm4gbWV0YVR5cGVOb2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWV0YXZhcmlhYmxlTm9kZUZyb21NZXRhdmFyaWFibGVTdHJpbmcobWV0YXZhcmlhYmxlU3RyaW5nLCBsZXhlciwgcGFyc2VyKSB7XG4gIGNvbnN0IHJ1bGVOYW1lID0gTUVUQVZBUklBQkxFX1JVTEVfTkFNRSxcbiAgICAgICAgY29udGVudCA9IGBNZXRhdmFyaWFibGUgJHttZXRhdmFyaWFibGVTdHJpbmd9XG5gLFxuICAgICAgICBub2RlID0gbm9kZUZyb21Db250ZW50QW5kUnVsZU5hbWUoY29udGVudCwgcnVsZU5hbWUsIGxleGVyLCBwYXJzZXIpLFxuICAgICAgICBtZXRhdmFyaWFibGVEZWNsYXJhdGlvbk5vZGUgPSBub2RlLCAvLy9cbiAgICAgICAgbWV0YXZhcmlhYmxlTm9kZSA9IG1ldGF2YXJpYWJsZU5vZGVRdWVyeShtZXRhdmFyaWFibGVEZWNsYXJhdGlvbk5vZGUpO1xuXG4gIHJldHVybiBtZXRhdmFyaWFibGVOb2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWV0YXN0YXRlbWVudE5vZGVGcm9tTWV0YXN0YXRlbWVudFN0cmluZyhtZXRhc3RhdGVtZW50U3RyaW5nLCBsZXhlciwgcGFyc2VyKSB7XG4gIGNvbnN0IHJ1bGVOYW1lID0gVU5RVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUsXG4gICAgICAgIGNvbnRlbnQgPSBgJHttZXRhc3RhdGVtZW50U3RyaW5nfVxuYCxcbiAgICAgICAgbm9kZSA9IG5vZGVGcm9tQ29udGVudEFuZFJ1bGVOYW1lKGNvbnRlbnQsIHJ1bGVOYW1lLCBsZXhlciwgcGFyc2VyKSxcbiAgICAgICAgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSA9IG5vZGUsICAvLy9cbiAgICAgICAgbWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5KHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gIHJldHVybiBtZXRhc3RhdGVtZW50Tm9kZTtcbn1cblxuZnVuY3Rpb24gbm9kZUZyb21Db250ZW50QW5kUnVsZU5hbWUoY29udGVudCwgcnVsZU5hbWUsIGxleGVyID0gZmxvcmVuY2VMZXhlciwgcGFyc2VyID0gZmxvcmVuY2VQYXJzZXIpIHtcbiAgY29uc3QgcnVsZU1hcCA9IHBhcnNlci5nZXRSdWxlTWFwKCksXG4gICAgICAgIHJ1bGUgPSBydWxlTWFwW3J1bGVOYW1lXSxcbiAgICAgICAgdG9rZW5zID0gbGV4ZXIudG9rZW5pc2UoY29udGVudCksXG4gICAgICAgIG5vZGUgPSBwYXJzZXIucGFyc2UodG9rZW5zLCBydWxlKSxcbiAgICAgICAgbm9uVGVybWluYWxOb2RlID0gbm9kZTsgLy8vXG5cbiAgcmV3cml0ZU5vZGVzKG5vblRlcm1pbmFsTm9kZSk7XG5cbiAgcmV0dXJuIG5vZGU7XG59XG4iXSwibmFtZXMiOlsidGVybU5vZGVGcm9tVGVybVN0cmluZyIsImxhYmVsTm9kZUZyb21MYWJlbFN0cmluZyIsInR5cGVOb2RlRnJvbVZhcmlhYmxlU3RyaW5nIiwidmFyaWFibGVOb2RlRnJvbVZhcmlhYmxlU3RyaW5nIiwic3RhdGVtZW50Tm9kZUZyb21TdGF0ZW1lbnRTdHJpbmciLCJtZXRhVHlwZU5vZGVGcm9tTWV0YXZhcmlhYmxlU3RyaW5nIiwibWV0YXZhcmlhYmxlTm9kZUZyb21NZXRhdmFyaWFibGVTdHJpbmciLCJtZXRhc3RhdGVtZW50Tm9kZUZyb21NZXRhc3RhdGVtZW50U3RyaW5nIiwiZmxvcmVuY2VMZXhlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIiLCJsZXhlcnNVdGlsaXRpZXMiLCJmbG9yZW5jZVBhcnNlckZyb21Db21iaW5lZEN1c3RvbUdyYW1tYXIiLCJwYXJzZXJzVXRpbGl0aWVzIiwiY29tYmluZWRDdXN0b21HcmFtbWFyIiwiY29tYmluZWRDdXN0b21HcmFtbWFyRnJvbU5vdGhpbmciLCJmbG9yZW5jZUxleGVyIiwiZmxvcmVuY2VQYXJzZXIiLCJ0ZXJtTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidHlwZU5vZGVRdWVyeSIsInZhcmlhYmxlTm9kZVF1ZXJ5IiwibWV0YVR5cGVOb2RlUXVlcnkiLCJzdGF0ZW1lbnROb2RlUXVlcnkiLCJtZXRhdmFyaWFibGVOb2RlUXVlcnkiLCJtZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5IiwidGVybVN0cmluZyIsImxleGVyIiwicGFyc2VyIiwicnVsZU5hbWUiLCJDT05TVFJVQ1RPUl9ERUNMQVJBVElPTl9SVUxFX05BTUUiLCJjb250ZW50Iiwibm9kZSIsIm5vZGVGcm9tQ29udGVudEFuZFJ1bGVOYW1lIiwiY29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGUiLCJ0ZXJtTm9kZSIsImxhYmVsU3RyaW5nIiwiTEFCRUxfUlVMRV9OQU1FIiwibGFiZWxOb2RlIiwidmFyaWFibGVTdHJpbmciLCJUWVBFX1JVTEVfTkFNRSIsInR5cGVEZWNsYXJhdGlvbk5vZGUiLCJ0eXBlTm9kZSIsIlZBUklBQkxFX1JVTEVfTkFNRSIsInZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlIiwidmFyaWFibGVOb2RlIiwic3RhdGVtZW50U3RyaW5nIiwiVU5RVUFMSUZJRURfU1RBVEVNRU5UX1JVTEVfTkFNRSIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSIsInN0YXRlbWVudE5vZGUiLCJtZXRhdmFyaWFibGVTdHJpbmciLCJNRVRBX1RZUEVfUlVMRV9OQU1FIiwibWV0YVR5cGVEZWNsYXJhdGlvbk5vZGUiLCJtZXRhVHlwZU5vZGUiLCJNRVRBVkFSSUFCTEVfUlVMRV9OQU1FIiwibWV0YXZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlIiwibWV0YXZhcmlhYmxlTm9kZSIsIm1ldGFzdGF0ZW1lbnRTdHJpbmciLCJVTlFVQUxJRklFRF9NRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSIsInVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUiLCJtZXRhc3RhdGVtZW50Tm9kZSIsInJ1bGVNYXAiLCJnZXRSdWxlTWFwIiwicnVsZSIsInRva2VucyIsInRva2VuaXNlIiwicGFyc2UiLCJub25UZXJtaW5hbE5vZGUiLCJyZXdyaXRlTm9kZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQWdDZ0JBLHNCQUFzQjtlQUF0QkE7O0lBV0FDLHdCQUF3QjtlQUF4QkE7O0lBU0FDLDBCQUEwQjtlQUExQkE7O0lBV0FDLDhCQUE4QjtlQUE5QkE7O0lBV0FDLGdDQUFnQztlQUFoQ0E7O0lBV0FDLGtDQUFrQztlQUFsQ0E7O0lBV0FDLHNDQUFzQztlQUF0Q0E7O0lBV0FDLHdDQUF3QztlQUF4Q0E7OztxQ0F6R2E7bUNBQ3FCO3FCQUV4Qjt5QkFRMEI7NkJBRUg7QUFFakQsSUFBTSxBQUFFQyx5Q0FBMkNDLG9DQUFlLENBQTFERCx3Q0FDRixBQUFFRSwwQ0FBNENDLHFDQUFnQixDQUE1REQ7QUFFUixJQUFNRSx3QkFBd0JDLElBQUFBLCtDQUFnQyxLQUN4REMsZ0JBQWdCTix1Q0FBdUNJLHdCQUN2REcsaUJBQWlCTCx3Q0FBd0NFO0FBRS9ELElBQU1JLGdCQUFnQkMsSUFBQUEsZ0JBQVMsRUFBQyxrQ0FDMUJDLGdCQUFnQkQsSUFBQUEsZ0JBQVMsRUFBQywrQkFDMUJFLG9CQUFvQkYsSUFBQUEsZ0JBQVMsRUFBQyxtQ0FDOUJHLG9CQUFvQkgsSUFBQUEsZ0JBQVMsRUFBQyx1Q0FDOUJJLHFCQUFxQkosSUFBQUEsZ0JBQVMsRUFBQyxxQ0FDL0JLLHdCQUF3QkwsSUFBQUEsZ0JBQVMsRUFBQywyQ0FDbENNLHlCQUF5Qk4sSUFBQUEsZ0JBQVMsRUFBQztBQUVsQyxTQUFTakIsdUJBQXVCd0IsVUFBVSxFQUFFQyxLQUFLLEVBQUVDLE1BQU0sRUFB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
@@ -138,6 +138,10 @@ function checkReleaseMatchesDependency(dependency, dependentNames, releaseContex
138
138
  return error;
139
139
  }
140
140
  function createDependencyReleaseContexts(dependency, dependentNames, context, callback) {
141
+ var done = function done() {
142
+ var error = null;
143
+ callback(error);
144
+ };
141
145
  var releaseContextMap = context.releaseContextMap, dependencyName = dependency.getName(), releaseName = dependencyName, releaseContext = releaseContextMap[releaseName], dependencies = releaseContext.getDependencies();
142
146
  dependentNames = _toConsumableArray(dependentNames).concat([
143
147
  dependencyName
@@ -155,10 +159,7 @@ function createDependencyReleaseContexts(dependency, dependentNames, context, ca
155
159
  }
156
160
  next();
157
161
  });
158
- }, function() {
159
- var error = null;
160
- callback(error);
161
- });
162
+ }, done);
162
163
  }
163
164
  function retrieveDependencyReleaseContexts(dependency, context) {
164
165
  var dependencyReleaseContexts = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : [];
@@ -178,4 +179,4 @@ function retrieveDependencyReleaseContexts(dependency, context) {
178
179
  return dependencyReleaseContexts;
179
180
  }
180
181
 
181
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvcmVsZWFzZUNvbnRleHQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IGxhc3QgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVSZWxlYXNlQ29udGV4dChkZXBlbmRlbmN5LCBkZXBlbmRlbnROYW1lcywgY29udGV4dCwgY2FsbGJhY2spIHtcbiAgY29uc3QgeyByZWxlYXNlQ29udGV4dE1hcCB9ID0gY29udGV4dCxcbiAgICAgICAgZGVwZW5kZW5jeU5hbWUgPSBkZXBlbmRlbmN5LmdldE5hbWUoKSxcbiAgICAgICAgcmVsZWFzZU5hbWUgPSBkZXBlbmRlbmN5TmFtZSwgLy8vXG4gICAgICAgIHJlbGVhc2VDb250ZXh0ID0gcmVsZWFzZUNvbnRleHRNYXBbcmVsZWFzZU5hbWVdIHx8IG51bGw7XG5cbiAgaWYgKHJlbGVhc2VDb250ZXh0ICE9PSBudWxsKSB7XG4gICAgY29uc3QgZXJyb3IgPSBjaGVja1JlbGVhc2VNYXRjaGVzRGVwZW5kZW5jeShkZXBlbmRlbmN5LCBkZXBlbmRlbnROYW1lcywgcmVsZWFzZUNvbnRleHQpO1xuXG4gICAgY2FsbGJhY2soZXJyb3IpO1xuXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgeyByZWxlYXNlQ29udGV4dEZyb21EZXBlbmRlbmN5QW5kRGVwZW5kZW50TmFtZXMgfSA9IGNvbnRleHQ7XG5cbiAgcmVsZWFzZUNvbnRleHRGcm9tRGVwZW5kZW5jeUFuZERlcGVuZGVudE5hbWVzKGRlcGVuZGVuY3ksIGRlcGVuZGVudE5hbWVzLCBjb250ZXh0LCAoZXJyb3IsIHJlbGVhc2VDb250ZXh0KSA9PiB7XG4gICAgaWYgKGVycm9yKSB7XG4gICAgICBjYWxsYmFjayhlcnJvcik7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAocmVsZWFzZUNvbnRleHQgPT09IG51bGwpIHtcbiAgICAgIGNvbnN0IGVycm9yID0gYFRoZSAnJHtyZWxlYXNlTmFtZX0nIHBhY2thZ2UgY291bGQgbm90IGJlIGNyZWF0ZWQuYDtcblxuICAgICAgY2FsbGJhY2soZXJyb3IpO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgZXJyb3IgPSBjaGVja1JlbGVhc2VNYXRjaGVzRGVwZW5kZW5jeShkZXBlbmRlbmN5LCBkZXBlbmRlbnROYW1lcywgcmVsZWFzZUNvbnRleHQpO1xuXG4gICAgaWYgKGVycm9yKSB7XG4gICAgICBjYWxsYmFjayhlcnJvcik7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICByZWxlYXNlQ29udGV4dE1hcFtyZWxlYXNlTmFtZV0gPSByZWxlYXNlQ29udGV4dDtcblxuICAgIGNyZWF0ZURlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMoZGVwZW5kZW5jeSwgZGVwZW5kZW50TmFtZXMsIGNvbnRleHQsIGNhbGxiYWNrKTtcbiAgfSwgY29udGV4dCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbml0aWFsaXNlUmVsZWFzZUNvbnRleHQoZGVwZW5kZW5jeSwgZGVwZW5kZW50TmFtZSwgdmVyaWZpZWQsIGNvbnRleHQsIGNhbGxiYWNrKSB7XG4gIGxldCBlcnJvciA9IG51bGw7XG5cbiAgY29uc3QgeyByZWxlYXNlQ29udGV4dE1hcCB9ID0gY29udGV4dCxcbiAgICAgICAgZGVwZW5kZW5jeU5hbWUgPSBkZXBlbmRlbmN5LmdldE5hbWUoKSxcbiAgICAgICAgcmVsZWFzZU5hbWUgPSBkZXBlbmRlbmN5TmFtZSwgLy8vXG4gICAgICAgIHJlbGVhc2VDb250ZXh0ID0gcmVsZWFzZUNvbnRleHRNYXBbcmVsZWFzZU5hbWVdIHx8IG51bGw7XG5cbiAgaWYgKHJlbGVhc2VDb250ZXh0ID09PSBudWxsKSB7XG4gICAgY2FsbGJhY2soZXJyb3IpO1xuXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgaW5pdGlhbGlzZWQgPSByZWxlYXNlQ29udGV4dC5pc0luaXRpYWxpc2VkKCk7XG5cbiAgaWYgKGluaXRpYWxpc2VkKSB7XG4gICAgY2FsbGJhY2soZXJyb3IpO1xuXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgcmVsZWFzZUNvbnRleHRWZXJpZmllZCA9IHJlbGVhc2VDb250ZXh0LmlzVmVyaWZpZWQoKTtcblxuICBpZiAodmVyaWZpZWQpIHtcbiAgICBpZiAoIXJlbGVhc2VDb250ZXh0VmVyaWZpZWQpIHtcbiAgICAgIGVycm9yID0gYFVuYWJsZSB0byBpbml0aWFsaXNlIHRoZSAnJHtyZWxlYXNlTmFtZX0nIGRlcGVuZGVuY3kncyBjb250ZXh0IGJlY2F1c2UgaXRzICcke2RlcGVuZGVudE5hbWV9JyBkZXBlbmRlbnQgaXMgYSBwYWNrYWdlLmA7XG5cbiAgICAgIGNhbGxiYWNrKGVycm9yKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfVxuXG4gIGRlcGVuZGVudE5hbWUgPSByZWxlYXNlTmFtZTsgIC8vL1xuXG4gIHZlcmlmaWVkID0gcmVsZWFzZUNvbnRleHRWZXJpZmllZDsgIC8vL1xuXG4gIGNvbnN0IGRlcGVuZGVuY2llcyA9IHJlbGVhc2VDb250ZXh0LmdldERlcGVuZGVuY2llcygpO1xuXG4gIGRlcGVuZGVuY2llcy5hc3luY2hyb25vdXNGb3JFYWNoRGVwZW5kZW5jeSgoZGVwZW5kZW5jeSwgbmV4dCwgZG9uZSkgPT4ge1xuICAgIGluaXRpYWxpc2VSZWxlYXNlQ29udGV4dChkZXBlbmRlbmN5LCBkZXBlbmRlbnROYW1lLCB2ZXJpZmllZCwgY29udGV4dCwgKGVycm9yKSA9PiB7XG4gICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgY2FsbGJhY2soZXJyb3IpO1xuXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgbmV4dCgpO1xuICAgIH0pO1xuICB9LCBkb25lKTtcblxuICBmdW5jdGlvbiBkb25lKCkge1xuICAgIGNvbnN0IGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMgPSByZXRyaWV2ZURlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMoZGVwZW5kZW5jeSwgY29udGV4dCk7XG5cbiAgICByZWxlYXNlQ29udGV4dC5pbml0aWFsaXNlKGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMpO1xuXG4gICAgY2FsbGJhY2soZXJyb3IpO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgY3JlYXRlUmVsZWFzZUNvbnRleHQsXG4gIGluaXRpYWxpc2VSZWxlYXNlQ29udGV4dFxufTtcblxuZnVuY3Rpb24gY2hlY2tDeWNsaWNEZXBlbmRlbmN5RXhpc3RzKGRlcGVuZGVuY3ksIGRlcGVuZGVudE5hbWVzKSB7XG4gIGxldCBlcnJvciA9IG51bGw7XG5cbiAgY29uc3QgZGVwZW5kZW5jeU5hbWUgPSBkZXBlbmRlbmN5LmdldE5hbWUoKSxcbiAgICAgICAgZGVwZW5kZW50TmFtZXNJbmNsdWRlc0RlcGVuZGVuY3lOYW1lID0gZGVwZW5kZW50TmFtZXMuaW5jbHVkZXMoZGVwZW5kZW5jeU5hbWUpLFxuICAgICAgICBjeWNsaWNEZXBlbmRlbmN5RXhpc3RzID0gZGVwZW5kZW50TmFtZXNJbmNsdWRlc0RlcGVuZGVuY3lOYW1lOyAgLy8vXG5cbiAgaWYgKGN5Y2xpY0RlcGVuZGVuY3lFeGlzdHMpIHtcbiAgICBjb25zdCBmaXJzdERlcGVuZGVudE5hbWUgPSBmaXJzdChkZXBlbmRlbnROYW1lcyksXG4gICAgICAgICAgZGVwZW5kZW5jeU5hbWVzID0gWyAgLy8vXG4gICAgICAgICAgICAuLi5kZXBlbmRlbnROYW1lcyxcbiAgICAgICAgICAgIGZpcnN0RGVwZW5kZW50TmFtZVxuICAgICAgICAgIF0sXG4gICAgICAgICAgZGVwZW5kZW5jeU5hbWVzU3RyaW5nID0gZGVwZW5kZW5jeU5hbWVzLmpvaW4oYCcgLT4gJ2ApO1xuXG4gICAgZXJyb3IgPWBUaGVyZSBpcyBhIGN5Y2xpYyBkZXBlbmRlbmN5OiAnJHtkZXBlbmRlbmN5TmFtZXNTdHJpbmd9Jy5gO1xuICB9XG5cbiAgcmV0dXJuIGVycm9yO1xufVxuXG5mdW5jdGlvbiBjaGVja1JlbGVhc2VNYXRjaGVzRGVwZW5kZW5jeShkZXBlbmRlbmN5LCBkZXBlbmRlbnROYW1lcywgcmVsZWFzZUNvbnRleHQpIHtcbiAgbGV0IGVycm9yID0gbnVsbDtcblxuICBjb25zdCBlbnRyaWVzID0gcmVsZWFzZUNvbnRleHQuZ2V0RW50cmllcygpLFxuICAgICAgICBzaG9ydGVuZWRWZXJzaW9uID0gZGVwZW5kZW5jeS5nZXRTaG9ydGVkVmVyc2lvbigpO1xuXG4gIGlmIChzaG9ydGVuZWRWZXJzaW9uICE9PSBudWxsKSB7XG4gICAgY29uc3QgZW50cmllc01hdGNoU2hvcnRlbmVkVmVyc2lvbiA9IGVudHJpZXMubWF0Y2hTaG9ydGVuZWRWZXJzaW9uKHNob3J0ZW5lZFZlcnNpb24pO1xuXG4gICAgaWYgKCFlbnRyaWVzTWF0Y2hTaG9ydGVuZWRWZXJzaW9uKSB7XG4gICAgICBjb25zdCB2ZXJzaW9uID0gcmVsZWFzZUNvbnRleHQuZ2V0VmVyc2lvbigpLFxuICAgICAgICAgICAgdmVyc2lvblN0cmluZyA9IHZlcnNpb24udG9TdHJpbmcoKSxcbiAgICAgICAgICAgIGxhc3REZXBlbmRlbnROYW1lID0gbGFzdChkZXBlbmRlbnROYW1lcyksXG4gICAgICAgICAgICBkZXBlbmRlbnROYW1lID0gbGFzdERlcGVuZGVudE5hbWUsICAvLy9cbiAgICAgICAgICAgIGRlcGVuZGVuY3lOYW1lID0gZGVwZW5kZW5jeS5nZXROYW1lKCksXG4gICAgICAgICAgICBzaG9ydGVuZWRWZXJzaW9uID0gZGVwZW5kZW5jeS5nZXRTaG9ydGVkVmVyc2lvbigpLFxuICAgICAgICAgICAgc2hvcnRlbmVkVmVyc2lvblN0cmluZyA9IHNob3J0ZW5lZFZlcnNpb24udG9TdHJpbmcoKTtcblxuICAgICAgZXJyb3IgPSBgVmVyc2lvbiBtaXNtYXRjaDogJyR7ZGVwZW5kZW50TmFtZX0nIHJlcXVpcmVzICcke2RlcGVuZGVuY3lOYW1lfScgdG8gYmUgdmVyc2lvbiAke3Nob3J0ZW5lZFZlcnNpb25TdHJpbmd9LjAgb3IgaGlnaGVyIGJ1dCB2ZXJzaW9uICR7dmVyc2lvblN0cmluZ30gaGFzIGJlZW4gc3VwcGxpZWQuYDtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZXJyb3I7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZURlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMoZGVwZW5kZW5jeSwgZGVwZW5kZW50TmFtZXMsIGNvbnRleHQsIGNhbGxiYWNrKSB7XG4gIGNvbnN0IHsgcmVsZWFzZUNvbnRleHRNYXAgfSA9IGNvbnRleHQsXG4gICAgICAgIGRlcGVuZGVuY3lOYW1lID0gZGVwZW5kZW5jeS5nZXROYW1lKCksXG4gICAgICAgIHJlbGVhc2VOYW1lID0gZGVwZW5kZW5jeU5hbWUsIC8vL1xuICAgICAgICByZWxlYXNlQ29udGV4dCA9IHJlbGVhc2VDb250ZXh0TWFwW3JlbGVhc2VOYW1lXSxcbiAgICAgICAgZGVwZW5kZW5jaWVzID0gcmVsZWFzZUNvbnRleHQuZ2V0RGVwZW5kZW5jaWVzKCk7XG5cbiAgZGVwZW5kZW50TmFtZXMgPSBbIC4uLmRlcGVuZGVudE5hbWVzLCBkZXBlbmRlbmN5TmFtZSBdOyAgLy8vXG5cbiAgZGVwZW5kZW5jaWVzLmFzeW5jaHJvbm91c0ZvckVhY2hEZXBlbmRlbmN5KChkZXBlbmRlbmN5LCBuZXh0LCBkb25lKSA9PiB7XG4gICAgY29uc3QgZXJyb3IgPSBjaGVja0N5Y2xpY0RlcGVuZGVuY3lFeGlzdHMoZGVwZW5kZW5jeSwgZGVwZW5kZW50TmFtZXMpO1xuXG4gICAgaWYgKGVycm9yKSB7XG4gICAgICBjYWxsYmFjayhlcnJvcik7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjcmVhdGVSZWxlYXNlQ29udGV4dChkZXBlbmRlbmN5LCBkZXBlbmRlbnROYW1lcywgY29udGV4dCwgKGVycm9yKSA9PiB7XG4gICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgY2FsbGJhY2soZXJyb3IpO1xuXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgbmV4dCgpO1xuICAgIH0pO1xuICB9LCAoKSA9PiB7XG4gICAgY29uc3QgZXJyb3IgPSBudWxsO1xuXG4gICAgY2FsbGJhY2soZXJyb3IpO1xuICB9KTtcbn1cblxuZnVuY3Rpb24gcmV0cmlldmVEZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzKGRlcGVuZGVuY3ksIGNvbnRleHQsIGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMgPSBbXSkge1xuICBjb25zdCB7IHJlbGVhc2VDb250ZXh0TWFwIH0gPSBjb250ZXh0LFxuICAgICAgICBkZXBlbmRlbmN5TmFtZSA9IGRlcGVuZGVuY3kuZ2V0TmFtZSgpLFxuICAgICAgICByZWxlYXNlTmFtZSA9IGRlcGVuZGVuY3lOYW1lLCAvLy9cbiAgICAgICAgcmVsZWFzZUNvbnRleHQgPSByZWxlYXNlQ29udGV4dE1hcFtyZWxlYXNlTmFtZV0sXG4gICAgICAgIGRlcGVuZGVuY2llcyA9IHJlbGVhc2VDb250ZXh0LmdldERlcGVuZGVuY2llcygpO1xuXG4gIGRlcGVuZGVuY2llcy5mb3JFYWNoRGVwZW5kZW5jeSgoZGVwZW5kZW5jeSkgPT4ge1xuICAgIGNvbnN0IGRlcGVuZGVuY3lOYW1lID0gZGVwZW5kZW5jeS5nZXROYW1lKCksXG4gICAgICAgICAgcmVsZWFzZU5hbWUgPSBkZXBlbmRlbmN5TmFtZSwgLy8vXG4gICAgICAgICAgcmVsZWFzZUNvbnRleHQgPSByZWxlYXNlQ29udGV4dE1hcFtyZWxlYXNlTmFtZV0gfHwgbnVsbDtcblxuICAgIGlmIChyZWxlYXNlQ29udGV4dCA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHNJbmNsdWRlc1JlbGVhc2VDb250ZXh0ID0gZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cy5pbmNsdWRlcyhyZWxlYXNlQ29udGV4dCk7XG5cbiAgICBpZiAoZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0c0luY2x1ZGVzUmVsZWFzZUNvbnRleHQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICByZXRyaWV2ZURlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMoZGVwZW5kZW5jeSwgY29udGV4dCwgZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cyk7XG5cbiAgICBkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzLnB1c2gocmVsZWFzZUNvbnRleHQpO1xuICB9KTtcblxuICByZXR1cm4gZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cztcbn1cbiJdLCJuYW1lcyI6WyJjcmVhdGVSZWxlYXNlQ29udGV4dCIsImluaXRpYWxpc2VSZWxlYXNlQ29udGV4dCIsImRlcGVuZGVuY3kiLCJkZXBlbmRlbnROYW1lcyIsImNvbnRleHQiLCJjYWxsYmFjayIsInJlbGVhc2VDb250ZXh0TWFwIiwiZGVwZW5kZW5jeU5hbWUiLCJnZXROYW1lIiwicmVsZWFzZU5hbWUiLCJyZWxlYXNlQ29udGV4dCIsImVycm9yIiwiY2hlY2tSZWxlYXNlTWF0Y2hlc0RlcGVuZGVuY3kiLCJyZWxlYXNlQ29udGV4dEZyb21EZXBlbmRlbmN5QW5kRGVwZW5kZW50TmFtZXMiLCJjcmVhdGVEZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzIiwiZGVwZW5kZW50TmFtZSIsInZlcmlmaWVkIiwiZG9uZSIsImRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMiLCJyZXRyaWV2ZURlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMiLCJpbml0aWFsaXNlIiwiaW5pdGlhbGlzZWQiLCJpc0luaXRpYWxpc2VkIiwicmVsZWFzZUNvbnRleHRWZXJpZmllZCIsImlzVmVyaWZpZWQiLCJkZXBlbmRlbmNpZXMiLCJnZXREZXBlbmRlbmNpZXMiLCJhc3luY2hyb25vdXNGb3JFYWNoRGVwZW5kZW5jeSIsIm5leHQiLCJjaGVja0N5Y2xpY0RlcGVuZGVuY3lFeGlzdHMiLCJkZXBlbmRlbnROYW1lc0luY2x1ZGVzRGVwZW5kZW5jeU5hbWUiLCJpbmNsdWRlcyIsImN5Y2xpY0RlcGVuZGVuY3lFeGlzdHMiLCJmaXJzdERlcGVuZGVudE5hbWUiLCJmaXJzdCIsImRlcGVuZGVuY3lOYW1lcyIsImRlcGVuZGVuY3lOYW1lc1N0cmluZyIsImpvaW4iLCJlbnRyaWVzIiwiZ2V0RW50cmllcyIsInNob3J0ZW5lZFZlcnNpb24iLCJnZXRTaG9ydGVkVmVyc2lvbiIsImVudHJpZXNNYXRjaFNob3J0ZW5lZFZlcnNpb24iLCJtYXRjaFNob3J0ZW5lZFZlcnNpb24iLCJ2ZXJzaW9uIiwiZ2V0VmVyc2lvbiIsInZlcnNpb25TdHJpbmciLCJ0b1N0cmluZyIsImxhc3REZXBlbmRlbnROYW1lIiwibGFzdCIsInNob3J0ZW5lZFZlcnNpb25TdHJpbmciLCJmb3JFYWNoRGVwZW5kZW5jeSIsImRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHNJbmNsdWRlc1JlbGVhc2VDb250ZXh0IiwicHVzaCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBSWdCQSxvQkFBb0I7ZUFBcEJBOztJQTZDQUMsd0JBQXdCO2VBQXhCQTs7SUE2RGhCLE9BR0U7ZUFIRjs7O3FCQTVHcUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRWQsU0FBU0QscUJBQXFCRSxVQUFVLEVBQUVDLGNBQWMsRUFBRUMsT0FBTyxFQUFFQyxRQUFRLEVBQUU7SUFDbEYsSUFBTSxBQUFFQyxvQkFBc0JGLFFBQXRCRSxtQkFDRkMsaUJBQWlCTCxXQUFXTSxPQUFPLElBQ25DQyxjQUFjRixnQkFDZEcsaUJBQWlCSixpQkFBaUIsQ0FBQ0csWUFBWSxJQUFJLElBQUk7SUFFN0QsSUFBSUMsbUJBQW1CLElBQUksRUFBRTtRQUMzQixJQUFNQyxRQUFRQyw4QkFBOEJWLFlBQVlDLGdCQUFnQk87UUFFeEVMLFNBQVNNO1FBRVQ7SUFDRixDQUFDO0lBRUQsSUFBTSxBQUFFRSxnREFBa0RULFFBQWxEUztJQUVSQSw4Q0FBOENYLFlBQVlDLGdCQUFnQkMsU0FBUyxTQUFDTyxPQUFPRCxnQkFBbUI7UUFDNUcsSUFBSUMsT0FBTztZQUNUTixTQUFTTTtZQUVUO1FBQ0YsQ0FBQztRQUVELElBQUlELG1CQUFtQixJQUFJLEVBQUU7WUFDM0IsSUFBTUMsVUFBUSxBQUFD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
182
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvcmVsZWFzZUNvbnRleHQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IGxhc3QgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVSZWxlYXNlQ29udGV4dChkZXBlbmRlbmN5LCBkZXBlbmRlbnROYW1lcywgY29udGV4dCwgY2FsbGJhY2spIHtcbiAgY29uc3QgeyByZWxlYXNlQ29udGV4dE1hcCB9ID0gY29udGV4dCxcbiAgICAgICAgZGVwZW5kZW5jeU5hbWUgPSBkZXBlbmRlbmN5LmdldE5hbWUoKSxcbiAgICAgICAgcmVsZWFzZU5hbWUgPSBkZXBlbmRlbmN5TmFtZSwgLy8vXG4gICAgICAgIHJlbGVhc2VDb250ZXh0ID0gcmVsZWFzZUNvbnRleHRNYXBbcmVsZWFzZU5hbWVdIHx8IG51bGw7XG5cbiAgaWYgKHJlbGVhc2VDb250ZXh0ICE9PSBudWxsKSB7XG4gICAgY29uc3QgZXJyb3IgPSBjaGVja1JlbGVhc2VNYXRjaGVzRGVwZW5kZW5jeShkZXBlbmRlbmN5LCBkZXBlbmRlbnROYW1lcywgcmVsZWFzZUNvbnRleHQpO1xuXG4gICAgY2FsbGJhY2soZXJyb3IpO1xuXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgeyByZWxlYXNlQ29udGV4dEZyb21EZXBlbmRlbmN5QW5kRGVwZW5kZW50TmFtZXMgfSA9IGNvbnRleHQ7XG5cbiAgcmVsZWFzZUNvbnRleHRGcm9tRGVwZW5kZW5jeUFuZERlcGVuZGVudE5hbWVzKGRlcGVuZGVuY3ksIGRlcGVuZGVudE5hbWVzLCBjb250ZXh0LCAoZXJyb3IsIHJlbGVhc2VDb250ZXh0KSA9PiB7XG4gICAgaWYgKGVycm9yKSB7XG4gICAgICBjYWxsYmFjayhlcnJvcik7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAocmVsZWFzZUNvbnRleHQgPT09IG51bGwpIHtcbiAgICAgIGNvbnN0IGVycm9yID0gYFRoZSAnJHtyZWxlYXNlTmFtZX0nIHBhY2thZ2UgY291bGQgbm90IGJlIGNyZWF0ZWQuYDtcblxuICAgICAgY2FsbGJhY2soZXJyb3IpO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgZXJyb3IgPSBjaGVja1JlbGVhc2VNYXRjaGVzRGVwZW5kZW5jeShkZXBlbmRlbmN5LCBkZXBlbmRlbnROYW1lcywgcmVsZWFzZUNvbnRleHQpO1xuXG4gICAgaWYgKGVycm9yKSB7XG4gICAgICBjYWxsYmFjayhlcnJvcik7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICByZWxlYXNlQ29udGV4dE1hcFtyZWxlYXNlTmFtZV0gPSByZWxlYXNlQ29udGV4dDtcblxuICAgIGNyZWF0ZURlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMoZGVwZW5kZW5jeSwgZGVwZW5kZW50TmFtZXMsIGNvbnRleHQsIGNhbGxiYWNrKTtcbiAgfSwgY29udGV4dCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbml0aWFsaXNlUmVsZWFzZUNvbnRleHQoZGVwZW5kZW5jeSwgZGVwZW5kZW50TmFtZSwgdmVyaWZpZWQsIGNvbnRleHQsIGNhbGxiYWNrKSB7XG4gIGxldCBlcnJvciA9IG51bGw7XG5cbiAgY29uc3QgeyByZWxlYXNlQ29udGV4dE1hcCB9ID0gY29udGV4dCxcbiAgICAgICAgZGVwZW5kZW5jeU5hbWUgPSBkZXBlbmRlbmN5LmdldE5hbWUoKSxcbiAgICAgICAgcmVsZWFzZU5hbWUgPSBkZXBlbmRlbmN5TmFtZSwgLy8vXG4gICAgICAgIHJlbGVhc2VDb250ZXh0ID0gcmVsZWFzZUNvbnRleHRNYXBbcmVsZWFzZU5hbWVdIHx8IG51bGw7XG5cbiAgaWYgKHJlbGVhc2VDb250ZXh0ID09PSBudWxsKSB7XG4gICAgY2FsbGJhY2soZXJyb3IpO1xuXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgaW5pdGlhbGlzZWQgPSByZWxlYXNlQ29udGV4dC5pc0luaXRpYWxpc2VkKCk7XG5cbiAgaWYgKGluaXRpYWxpc2VkKSB7XG4gICAgY2FsbGJhY2soZXJyb3IpO1xuXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgcmVsZWFzZUNvbnRleHRWZXJpZmllZCA9IHJlbGVhc2VDb250ZXh0LmlzVmVyaWZpZWQoKTtcblxuICBpZiAodmVyaWZpZWQpIHtcbiAgICBpZiAoIXJlbGVhc2VDb250ZXh0VmVyaWZpZWQpIHtcbiAgICAgIGVycm9yID0gYFVuYWJsZSB0byBpbml0aWFsaXNlIHRoZSAnJHtyZWxlYXNlTmFtZX0nIGRlcGVuZGVuY3kncyBjb250ZXh0IGJlY2F1c2UgaXRzICcke2RlcGVuZGVudE5hbWV9JyBkZXBlbmRlbnQgaXMgYSBwYWNrYWdlLmA7XG5cbiAgICAgIGNhbGxiYWNrKGVycm9yKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfVxuXG4gIGRlcGVuZGVudE5hbWUgPSByZWxlYXNlTmFtZTsgIC8vL1xuXG4gIHZlcmlmaWVkID0gcmVsZWFzZUNvbnRleHRWZXJpZmllZDsgIC8vL1xuXG4gIGNvbnN0IGRlcGVuZGVuY2llcyA9IHJlbGVhc2VDb250ZXh0LmdldERlcGVuZGVuY2llcygpO1xuXG4gIGRlcGVuZGVuY2llcy5hc3luY2hyb25vdXNGb3JFYWNoRGVwZW5kZW5jeSgoZGVwZW5kZW5jeSwgbmV4dCwgZG9uZSkgPT4ge1xuICAgIGluaXRpYWxpc2VSZWxlYXNlQ29udGV4dChkZXBlbmRlbmN5LCBkZXBlbmRlbnROYW1lLCB2ZXJpZmllZCwgY29udGV4dCwgKGVycm9yKSA9PiB7XG4gICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgY2FsbGJhY2soZXJyb3IpO1xuXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgbmV4dCgpO1xuICAgIH0pO1xuICB9LCBkb25lKTtcblxuICBmdW5jdGlvbiBkb25lKCkge1xuICAgIGNvbnN0IGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMgPSByZXRyaWV2ZURlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMoZGVwZW5kZW5jeSwgY29udGV4dCk7XG5cbiAgICByZWxlYXNlQ29udGV4dC5pbml0aWFsaXNlKGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMpO1xuXG4gICAgY2FsbGJhY2soZXJyb3IpO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgY3JlYXRlUmVsZWFzZUNvbnRleHQsXG4gIGluaXRpYWxpc2VSZWxlYXNlQ29udGV4dFxufTtcblxuZnVuY3Rpb24gY2hlY2tDeWNsaWNEZXBlbmRlbmN5RXhpc3RzKGRlcGVuZGVuY3ksIGRlcGVuZGVudE5hbWVzKSB7XG4gIGxldCBlcnJvciA9IG51bGw7XG5cbiAgY29uc3QgZGVwZW5kZW5jeU5hbWUgPSBkZXBlbmRlbmN5LmdldE5hbWUoKSxcbiAgICAgICAgZGVwZW5kZW50TmFtZXNJbmNsdWRlc0RlcGVuZGVuY3lOYW1lID0gZGVwZW5kZW50TmFtZXMuaW5jbHVkZXMoZGVwZW5kZW5jeU5hbWUpLFxuICAgICAgICBjeWNsaWNEZXBlbmRlbmN5RXhpc3RzID0gZGVwZW5kZW50TmFtZXNJbmNsdWRlc0RlcGVuZGVuY3lOYW1lOyAgLy8vXG5cbiAgaWYgKGN5Y2xpY0RlcGVuZGVuY3lFeGlzdHMpIHtcbiAgICBjb25zdCBmaXJzdERlcGVuZGVudE5hbWUgPSBmaXJzdChkZXBlbmRlbnROYW1lcyksXG4gICAgICAgICAgZGVwZW5kZW5jeU5hbWVzID0gWyAgLy8vXG4gICAgICAgICAgICAuLi5kZXBlbmRlbnROYW1lcyxcbiAgICAgICAgICAgIGZpcnN0RGVwZW5kZW50TmFtZVxuICAgICAgICAgIF0sXG4gICAgICAgICAgZGVwZW5kZW5jeU5hbWVzU3RyaW5nID0gZGVwZW5kZW5jeU5hbWVzLmpvaW4oYCcgLT4gJ2ApO1xuXG4gICAgZXJyb3IgPWBUaGVyZSBpcyBhIGN5Y2xpYyBkZXBlbmRlbmN5OiAnJHtkZXBlbmRlbmN5TmFtZXNTdHJpbmd9Jy5gO1xuICB9XG5cbiAgcmV0dXJuIGVycm9yO1xufVxuXG5mdW5jdGlvbiBjaGVja1JlbGVhc2VNYXRjaGVzRGVwZW5kZW5jeShkZXBlbmRlbmN5LCBkZXBlbmRlbnROYW1lcywgcmVsZWFzZUNvbnRleHQpIHtcbiAgbGV0IGVycm9yID0gbnVsbDtcblxuICBjb25zdCBlbnRyaWVzID0gcmVsZWFzZUNvbnRleHQuZ2V0RW50cmllcygpLFxuICAgICAgICBzaG9ydGVuZWRWZXJzaW9uID0gZGVwZW5kZW5jeS5nZXRTaG9ydGVkVmVyc2lvbigpO1xuXG4gIGlmIChzaG9ydGVuZWRWZXJzaW9uICE9PSBudWxsKSB7XG4gICAgY29uc3QgZW50cmllc01hdGNoU2hvcnRlbmVkVmVyc2lvbiA9IGVudHJpZXMubWF0Y2hTaG9ydGVuZWRWZXJzaW9uKHNob3J0ZW5lZFZlcnNpb24pO1xuXG4gICAgaWYgKCFlbnRyaWVzTWF0Y2hTaG9ydGVuZWRWZXJzaW9uKSB7XG4gICAgICBjb25zdCB2ZXJzaW9uID0gcmVsZWFzZUNvbnRleHQuZ2V0VmVyc2lvbigpLFxuICAgICAgICAgICAgdmVyc2lvblN0cmluZyA9IHZlcnNpb24udG9TdHJpbmcoKSxcbiAgICAgICAgICAgIGxhc3REZXBlbmRlbnROYW1lID0gbGFzdChkZXBlbmRlbnROYW1lcyksXG4gICAgICAgICAgICBkZXBlbmRlbnROYW1lID0gbGFzdERlcGVuZGVudE5hbWUsICAvLy9cbiAgICAgICAgICAgIGRlcGVuZGVuY3lOYW1lID0gZGVwZW5kZW5jeS5nZXROYW1lKCksXG4gICAgICAgICAgICBzaG9ydGVuZWRWZXJzaW9uID0gZGVwZW5kZW5jeS5nZXRTaG9ydGVkVmVyc2lvbigpLFxuICAgICAgICAgICAgc2hvcnRlbmVkVmVyc2lvblN0cmluZyA9IHNob3J0ZW5lZFZlcnNpb24udG9TdHJpbmcoKTtcblxuICAgICAgZXJyb3IgPSBgVmVyc2lvbiBtaXNtYXRjaDogJyR7ZGVwZW5kZW50TmFtZX0nIHJlcXVpcmVzICcke2RlcGVuZGVuY3lOYW1lfScgdG8gYmUgdmVyc2lvbiAke3Nob3J0ZW5lZFZlcnNpb25TdHJpbmd9LjAgb3IgaGlnaGVyIGJ1dCB2ZXJzaW9uICR7dmVyc2lvblN0cmluZ30gaGFzIGJlZW4gc3VwcGxpZWQuYDtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZXJyb3I7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZURlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMoZGVwZW5kZW5jeSwgZGVwZW5kZW50TmFtZXMsIGNvbnRleHQsIGNhbGxiYWNrKSB7XG4gIGNvbnN0IHsgcmVsZWFzZUNvbnRleHRNYXAgfSA9IGNvbnRleHQsXG4gICAgICAgIGRlcGVuZGVuY3lOYW1lID0gZGVwZW5kZW5jeS5nZXROYW1lKCksXG4gICAgICAgIHJlbGVhc2VOYW1lID0gZGVwZW5kZW5jeU5hbWUsIC8vL1xuICAgICAgICByZWxlYXNlQ29udGV4dCA9IHJlbGVhc2VDb250ZXh0TWFwW3JlbGVhc2VOYW1lXSxcbiAgICAgICAgZGVwZW5kZW5jaWVzID0gcmVsZWFzZUNvbnRleHQuZ2V0RGVwZW5kZW5jaWVzKCk7XG5cbiAgZGVwZW5kZW50TmFtZXMgPSBbIC4uLmRlcGVuZGVudE5hbWVzLCBkZXBlbmRlbmN5TmFtZSBdOyAgLy8vXG5cbiAgZGVwZW5kZW5jaWVzLmFzeW5jaHJvbm91c0ZvckVhY2hEZXBlbmRlbmN5KChkZXBlbmRlbmN5LCBuZXh0LCBkb25lKSA9PiB7XG4gICAgY29uc3QgZXJyb3IgPSBjaGVja0N5Y2xpY0RlcGVuZGVuY3lFeGlzdHMoZGVwZW5kZW5jeSwgZGVwZW5kZW50TmFtZXMpO1xuXG4gICAgaWYgKGVycm9yKSB7XG4gICAgICBjYWxsYmFjayhlcnJvcik7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjcmVhdGVSZWxlYXNlQ29udGV4dChkZXBlbmRlbmN5LCBkZXBlbmRlbnROYW1lcywgY29udGV4dCwgKGVycm9yKSA9PiB7XG4gICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgY2FsbGJhY2soZXJyb3IpO1xuXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgbmV4dCgpO1xuICAgIH0pO1xuICB9LCBkb25lKTtcblxuICBmdW5jdGlvbiBkb25lKCkge1xuICAgIGNvbnN0IGVycm9yID0gbnVsbDtcblxuICAgIGNhbGxiYWNrKGVycm9yKTtcbiAgfVxufVxuXG5mdW5jdGlvbiByZXRyaWV2ZURlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMoZGVwZW5kZW5jeSwgY29udGV4dCwgZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cyA9IFtdKSB7XG4gIGNvbnN0IHsgcmVsZWFzZUNvbnRleHRNYXAgfSA9IGNvbnRleHQsXG4gICAgICAgIGRlcGVuZGVuY3lOYW1lID0gZGVwZW5kZW5jeS5nZXROYW1lKCksXG4gICAgICAgIHJlbGVhc2VOYW1lID0gZGVwZW5kZW5jeU5hbWUsIC8vL1xuICAgICAgICByZWxlYXNlQ29udGV4dCA9IHJlbGVhc2VDb250ZXh0TWFwW3JlbGVhc2VOYW1lXSxcbiAgICAgICAgZGVwZW5kZW5jaWVzID0gcmVsZWFzZUNvbnRleHQuZ2V0RGVwZW5kZW5jaWVzKCk7XG5cbiAgZGVwZW5kZW5jaWVzLmZvckVhY2hEZXBlbmRlbmN5KChkZXBlbmRlbmN5KSA9PiB7XG4gICAgY29uc3QgZGVwZW5kZW5jeU5hbWUgPSBkZXBlbmRlbmN5LmdldE5hbWUoKSxcbiAgICAgICAgICByZWxlYXNlTmFtZSA9IGRlcGVuZGVuY3lOYW1lLCAvLy9cbiAgICAgICAgICByZWxlYXNlQ29udGV4dCA9IHJlbGVhc2VDb250ZXh0TWFwW3JlbGVhc2VOYW1lXSB8fCBudWxsO1xuXG4gICAgaWYgKHJlbGVhc2VDb250ZXh0ID09PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0c0luY2x1ZGVzUmVsZWFzZUNvbnRleHQgPSBkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzLmluY2x1ZGVzKHJlbGVhc2VDb250ZXh0KTtcblxuICAgIGlmIChkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzSW5jbHVkZXNSZWxlYXNlQ29udGV4dCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHJldHJpZXZlRGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cyhkZXBlbmRlbmN5LCBjb250ZXh0LCBkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzKTtcblxuICAgIGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMucHVzaChyZWxlYXNlQ29udGV4dCk7XG4gIH0pO1xuXG4gIHJldHVybiBkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzO1xufVxuIl0sIm5hbWVzIjpbImNyZWF0ZVJlbGVhc2VDb250ZXh0IiwiaW5pdGlhbGlzZVJlbGVhc2VDb250ZXh0IiwiZGVwZW5kZW5jeSIsImRlcGVuZGVudE5hbWVzIiwiY29udGV4dCIsImNhbGxiYWNrIiwicmVsZWFzZUNvbnRleHRNYXAiLCJkZXBlbmRlbmN5TmFtZSIsImdldE5hbWUiLCJyZWxlYXNlTmFtZSIsInJlbGVhc2VDb250ZXh0IiwiZXJyb3IiLCJjaGVja1JlbGVhc2VNYXRjaGVzRGVwZW5kZW5jeSIsInJlbGVhc2VDb250ZXh0RnJvbURlcGVuZGVuY3lBbmREZXBlbmRlbnROYW1lcyIsImNyZWF0ZURlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMiLCJkZXBlbmRlbnROYW1lIiwidmVyaWZpZWQiLCJkb25lIiwiZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cyIsInJldHJpZXZlRGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cyIsImluaXRpYWxpc2UiLCJpbml0aWFsaXNlZCIsImlzSW5pdGlhbGlzZWQiLCJyZWxlYXNlQ29udGV4dFZlcmlmaWVkIiwiaXNWZXJpZmllZCIsImRlcGVuZGVuY2llcyIsImdldERlcGVuZGVuY2llcyIsImFzeW5jaHJvbm91c0ZvckVhY2hEZXBlbmRlbmN5IiwibmV4dCIsImNoZWNrQ3ljbGljRGVwZW5kZW5jeUV4aXN0cyIsImRlcGVuZGVudE5hbWVzSW5jbHVkZXNEZXBlbmRlbmN5TmFtZSIsImluY2x1ZGVzIiwiY3ljbGljRGVwZW5kZW5jeUV4aXN0cyIsImZpcnN0RGVwZW5kZW50TmFtZSIsImZpcnN0IiwiZGVwZW5kZW5jeU5hbWVzIiwiZGVwZW5kZW5jeU5hbWVzU3RyaW5nIiwiam9pbiIsImVudHJpZXMiLCJnZXRFbnRyaWVzIiwic2hvcnRlbmVkVmVyc2lvbiIsImdldFNob3J0ZWRWZXJzaW9uIiwiZW50cmllc01hdGNoU2hvcnRlbmVkVmVyc2lvbiIsIm1hdGNoU2hvcnRlbmVkVmVyc2lvbiIsInZlcnNpb24iLCJnZXRWZXJzaW9uIiwidmVyc2lvblN0cmluZyIsInRvU3RyaW5nIiwibGFzdERlcGVuZGVudE5hbWUiLCJsYXN0Iiwic2hvcnRlbmVkVmVyc2lvblN0cmluZyIsImZvckVhY2hEZXBlbmRlbmN5IiwiZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0c0luY2x1ZGVzUmVsZWFzZUNvbnRleHQiLCJwdXNoIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFJZ0JBLG9CQUFvQjtlQUFwQkE7O0lBNkNBQyx3QkFBd0I7ZUFBeEJBOztJQTZEaEIsT0FHRTtlQUhGOzs7cUJBNUdxQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFZCxTQUFTRCxxQkFBcUJFLFVBQVUsRUFBRUMsY0FBYyxFQUFFQyxPQUFPLEVBQUVDLFFBQVEsRUFBRTtJQUNsRixJQUFNLEFBQUVDLG9CQUFzQkYsUUFBdEJFLG1CQUNGQyxpQkFBaUJMLFdBQVdNLE9BQU8sSUFDbkNDLGNBQWNGLGdCQUNkRyxpQkFBaUJKLGlCQUFpQixDQUFDRyxZQUFZLElBQUksSUFBSTtJQUU3RCxJQUFJQyxtQkFBbUIsSUFBSSxFQUFFO1FBQzNCLElBQU1DLFFBQVFDLDhCQUE4QlYsWUFBWUMsZ0JBQWdCTztRQUV4RUwsU0FBU007UUFFVDtJQUNGLENBQUM7SUFFRCxJQUFNLEFBQUVFLGdEQUFrRFQsUUFBbERTO0lBRVJBLDhDQUE4Q1gsWUFBWUMsZ0JBQWdCQyxTQUFTLFNBQUNPLE9BQU9ELGdCQUFtQjtRQUM1RyxJQUFJQyxPQUFPO1lBQ1ROLFNBQVNNO1lBRVQ7UUFDRixDQUFDO1FBRUQsSUFBSUQsbUJBQW1CLElBQUksRUFBRTtZ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
package/lib/variable.js CHANGED
@@ -8,6 +8,8 @@ Object.defineProperty(exports, "default", {
8
8
  return Variable;
9
9
  }
10
10
  });
11
+ var _type = /*#__PURE__*/ _interopRequireDefault(require("./type"));
12
+ var _kinds = require("./kinds");
11
13
  function _classCallCheck(instance, Constructor) {
12
14
  if (!(instance instanceof Constructor)) {
13
15
  throw new TypeError("Cannot call a class as a function");
@@ -27,6 +29,11 @@ function _createClass(Constructor, protoProps, staticProps) {
27
29
  if (staticProps) _defineProperties(Constructor, staticProps);
28
30
  return Constructor;
29
31
  }
32
+ function _interopRequireDefault(obj) {
33
+ return obj && obj.__esModule ? obj : {
34
+ default: obj
35
+ };
36
+ }
30
37
  var Variable = /*#__PURE__*/ function() {
31
38
  function Variable(name, type) {
32
39
  _classCallCheck(this, Variable);
@@ -59,6 +66,17 @@ var Variable = /*#__PURE__*/ function() {
59
66
  var typeName = this.type.getName(), string = "".concat(this.name, ":").concat(typeName);
60
67
  return string;
61
68
  }
69
+ },
70
+ {
71
+ key: "toJSON",
72
+ value: function toJSON(tokens) {
73
+ var typeJSON = this.type.toJSON(tokens), kind = _kinds.VARIABLE_KIND, name = this.name, type = typeJSON, json = {
74
+ kind: kind,
75
+ name: name,
76
+ type: type
77
+ };
78
+ return json;
79
+ }
62
80
  }
63
81
  ], [
64
82
  {
@@ -67,9 +85,22 @@ var Variable = /*#__PURE__*/ function() {
67
85
  var variable = new Variable(name, type);
68
86
  return variable;
69
87
  }
88
+ },
89
+ {
90
+ key: "fromJSONAndFileContext",
91
+ value: function fromJSONAndFileContext(json, fileContext) {
92
+ var name = json.name;
93
+ var type = json.type;
94
+ json = type; ///
95
+ type = _type.default.fromJSONAndFileContext(json, fileContext);
96
+ var typeName = type.getName();
97
+ type = fileContext.findTypeByTypeName(typeName); ///
98
+ var variable = new Variable(name, type);
99
+ return variable;
100
+ }
70
101
  }
71
102
  ]);
72
103
  return Variable;
73
104
  }();
74
105
 
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy92YXJpYWJsZS5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+PiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVmFyaWFibGUge1xuICBjb25zdHJ1Y3RvcihuYW1lLCB0eXBlKSB7XG4gICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICB9XG5cbiAgZ2V0TmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG5cbiAgZ2V0VHlwZSgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlO1xuICB9XG5cbiAgbWF0Y2hOYW1lKG5hbWUpIHtcbiAgICBjb25zdCBtYXRjaGVzTmFtZSA9ICh0aGlzLm5hbWUgPT09IG5hbWUpO1xuXG4gICAgcmV0dXJuIG1hdGNoZXNOYW1lO1xuICB9XG5cbiAgYXNTdHJpbmcodG9rZW5zKSB7XG4gICAgY29uc3QgdHlwZU5hbWUgPSB0aGlzLnR5cGUuZ2V0TmFtZSgpLFxuICAgICAgICAgIHN0cmluZyA9IGAke3RoaXMubmFtZX06JHt0eXBlTmFtZX1gO1xuXG4gICAgcmV0dXJuIHN0cmluZztcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTmFtZUFuZFR5cGUobmFtZSwgdHlwZSkge1xuICAgIGNvbnN0IHZhcmlhYmxlID0gbmV3IFZhcmlhYmxlKG5hbWUsIHR5cGUpO1xuXG4gICAgcmV0dXJuIHZhcmlhYmxlO1xuICB9XG59XG4iLCJSZWFjdC5jcmVhdGVFbGVtZW50Il0sIm5hbWVzIjpbIlZhcmlhYmxlIiwibmFtZSIsInR5cGUiLCJnZXROYW1lIiwiZ2V0VHlwZSIsIm1hdGNoTmFtZSIsIm1hdGNoZXNOYW1lIiwiYXNTdHJpbmciLCJ0b2tlbnMiLCJ0eXBlTmFtZSIsInN0cmluZyIsImZyb21OYW1lQW5kVHlwZSIsInZhcmlhYmxlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUVxQkE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBTixJQUFBLEFBQU1BLHlCQUFOO2FBQU1BLFNBQ1BDLElBQUksRUFBRUMsSUFBSTs4QkFESEY7UUFFakIsSUFBSSxDQUFDQyxJQUFJLEdBQUdBO1FBQ1osSUFBSSxDQUFDQyxJQUFJLEdBQUdBOztpQkFIS0Y7O1lBTW5CRyxLQUFBQTttQkFBQUEsU0FBQUEsVUFBVTtnQkFDUixPQUFPLElBQUksQ0FBQ0YsSUFBSTtZQUNsQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxVQUFVO2dCQUNSLE9BQU8sSUFBSSxDQUFDRixJQUFJO1lBQ2xCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLFVBQVVKLElBQUksRUFBRTtnQkFDZCxJQUFNSyxjQUFlLElBQUksQ0FBQ0wsSUFBSSxLQUFLQTtnQkFFbkMsT0FBT0s7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxTQUFTQyxNQUFNLEVBQUU7Z0JBQ2YsSUFBTUMsV0FBVyxJQUFJLENBQUNQLElBQUksQ0FBQ0MsT0FBTyxJQUM1Qk8sU0FBUyxBQUFDLEdBQWVELE9BQWIsSUFBSSxDQUFDUixJQUFJLEVBQUMsS0FBWSxPQUFUUTtnQkFFL0IsT0FBT0M7WUFDVDs7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSxnQkFBZ0JWLElBQUksRUFBRUMsSUFBSSxFQUFFO2dCQUNqQyxJQUFNVSxXQUFXLElBNUJBWixTQTRCYUMsTUFBTUM7Z0JBRXBDLE9BQU9VO1lBQ1Q7OztXQS9CbUJaIn0=
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy92YXJpYWJsZS5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+PiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFR5cGUgZnJvbSBcIi4vdHlwZVwiO1xuXG5pbXBvcnQgeyBWQVJJQUJMRV9LSU5EIH0gZnJvbSBcIi4va2luZHNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVmFyaWFibGUge1xuICBjb25zdHJ1Y3RvcihuYW1lLCB0eXBlKSB7XG4gICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICB9XG5cbiAgZ2V0TmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG5cbiAgZ2V0VHlwZSgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlO1xuICB9XG5cbiAgbWF0Y2hOYW1lKG5hbWUpIHtcbiAgICBjb25zdCBtYXRjaGVzTmFtZSA9ICh0aGlzLm5hbWUgPT09IG5hbWUpO1xuXG4gICAgcmV0dXJuIG1hdGNoZXNOYW1lO1xuICB9XG5cbiAgYXNTdHJpbmcodG9rZW5zKSB7XG4gICAgY29uc3QgdHlwZU5hbWUgPSB0aGlzLnR5cGUuZ2V0TmFtZSgpLFxuICAgICAgICAgIHN0cmluZyA9IGAke3RoaXMubmFtZX06JHt0eXBlTmFtZX1gO1xuXG4gICAgcmV0dXJuIHN0cmluZztcbiAgfVxuXG4gIHRvSlNPTih0b2tlbnMpIHtcbiAgICBjb25zdCB0eXBlSlNPTiA9IHRoaXMudHlwZS50b0pTT04odG9rZW5zKSxcbiAgICAgICAgICBraW5kID0gVkFSSUFCTEVfS0lORCxcbiAgICAgICAgICBuYW1lID0gdGhpcy5uYW1lLCAvLy9cbiAgICAgICAgICB0eXBlID0gdHlwZUpTT04sICAvLy9cbiAgICAgICAgICBqc29uID0ge1xuICAgICAgICAgICAga2luZCxcbiAgICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgICB0eXBlXG4gICAgICAgICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgc3RhdGljIGZyb21OYW1lQW5kVHlwZShuYW1lLCB0eXBlKSB7XG4gICAgY29uc3QgdmFyaWFibGUgPSBuZXcgVmFyaWFibGUobmFtZSwgdHlwZSk7XG5cbiAgICByZXR1cm4gdmFyaWFibGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbUpTT05BbmRGaWxlQ29udGV4dChqc29uLCBmaWxlQ29udGV4dCkge1xuICAgIGNvbnN0IHsgbmFtZSB9ID0ganNvbjtcblxuICAgIGxldCB7IHR5cGUgfSA9IGpzb247XG5cbiAgICBqc29uID0gdHlwZTsgIC8vL1xuXG4gICAgdHlwZSA9IFR5cGUuZnJvbUpTT05BbmRGaWxlQ29udGV4dChqc29uLCBmaWxlQ29udGV4dCk7XG5cbiAgICBjb25zdCB0eXBlTmFtZSA9IHR5cGUuZ2V0TmFtZSgpO1xuXG4gICAgdHlwZSA9IGZpbGVDb250ZXh0LmZpbmRUeXBlQnlUeXBlTmFtZSh0eXBlTmFtZSk7IC8vL1xuXG4gICAgY29uc3QgdmFyaWFibGUgPSBuZXcgVmFyaWFibGUobmFtZSwgdHlwZSk7XG5cbiAgICByZXR1cm4gdmFyaWFibGU7XG4gIH1cbn1cbiIsIlJlYWN0LmNyZWF0ZUVsZW1lbnQiXSwibmFtZXMiOlsiVmFyaWFibGUiLCJuYW1lIiwidHlwZSIsImdldE5hbWUiLCJnZXRUeXBlIiwibWF0Y2hOYW1lIiwibWF0Y2hlc05hbWUiLCJhc1N0cmluZyIsInRva2VucyIsInR5cGVOYW1lIiwic3RyaW5nIiwidG9KU09OIiwidHlwZUpTT04iLCJraW5kIiwiVkFSSUFCTEVfS0lORCIsImpzb24iLCJmcm9tTmFtZUFuZFR5cGUiLCJ2YXJpYWJsZSIsImZyb21KU09OQW5kRmlsZUNvbnRleHQiLCJmaWxlQ29udGV4dCIsIlR5cGUiLCJmaW5kVHlwZUJ5VHlwZU5hbWUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBTXFCQTs7O3lEQUpKO3FCQUVhOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRWYsSUFBQSxBQUFNQSx5QkFBTjthQUFNQSxTQUNQQyxJQUFJLEVBQUVDLElBQUk7OEJBREhGO1FBRWpCLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTtRQUNaLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTs7aUJBSEtGOztZQU1uQkcsS0FBQUE7bUJBQUFBLFNBQUFBLFVBQVU7Z0JBQ1IsT0FBTyxJQUFJLENBQUNGLElBQUk7WUFDbEI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsVUFBVTtnQkFDUixPQUFPLElBQUksQ0FBQ0YsSUFBSTtZQUNsQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxVQUFVSixJQUFJLEVBQUU7Z0JBQ2QsSUFBTUssY0FBZSxJQUFJLENBQUNMLElBQUksS0FBS0E7Z0JBRW5DLE9BQU9LO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsU0FBU0MsTUFBTSxFQUFFO2dCQUNmLElBQU1DLFdBQVcsSUFBSSxDQUFDUCxJQUFJLENBQUNDLE9BQU8sSUFDNUJPLFNBQVMsQUFBQyxHQUFlRCxPQUFiLElBQUksQ0FBQ1IsSUFBSSxFQUFDLEtBQVksT0FBVFE7Z0JBRS9CLE9BQU9DO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsT0FBT0gsTUFBTSxFQUFFO2dCQUNiLElBQU1JLFdBQVcsSUFBSSxDQUFDVixJQUFJLENBQUNTLE1BQU0sQ0FBQ0gsU0FDNUJLLE9BQU9DLG9CQUFhLEVBQ3BCYixPQUFPLElBQUksQ0FBQ0EsSUFBSSxFQUNoQkMsT0FBT1UsVUFDUEcsT0FBTztvQkFDTEYsTUFBQUE7b0JBQ0FaLE1BQUFBO29CQUNBQyxNQUFBQTtnQkFDRjtnQkFFTixPQUFPYTtZQUNUOzs7O1lBRU9DLEtBQUFBO21CQUFQLFNBQU9BLGdCQUFnQmYsSUFBSSxFQUFFQyxJQUFJLEVBQUU7Z0JBQ2pDLElBQU1lLFdBQVcsSUExQ0FqQixTQTBDYUMsTUFBTUM7Z0JBRXBDLE9BQU9lO1lBQ1Q7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSx1QkFBdUJILElBQUksRUFBRUksV0FBVyxFQUFFO2dCQUMvQyxJQUFNLEFBQUVsQixPQUFTYyxLQUFUZDtnQkFFUixJQUFJLEFBQUVDLE9BQVNhLEtBQVRiO2dCQUVOYSxPQUFPYixNQUFPLEdBQUc7Z0JBRWpCQSxPQUFPa0IsYUFBSSxDQUFDRixzQkFBc0IsQ0FBQ0gsTUFBTUk7Z0JBRXpDLElBQU1WLFdBQVdQLEtBQUtDLE9BQU87Z0JBRTdCRCxPQUFPaUIsWUFBWUUsa0JBQWtCLENBQUNaLFdBQVcsR0FBRztnQkFFcEQsSUFBTVEsV0FBVyxJQTVEQWpCLFNBNERhQyxNQUFNQztnQkFFcEMsT0FBT2U7WUFDVDs7O1dBL0RtQmpCIn0=
package/lib/verifier.js CHANGED
@@ -135,4 +135,4 @@ var Verifier = /*#__PURE__*/ function() {
135
135
  return Verifier;
136
136
  }();
137
137
 
138
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy92ZXJpZmllci5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+PiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVmVyaWZpZXIge1xuICB2ZXJpZnlOb2RlKG5vZGVBLCBub2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgbGV0IG5vZGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gICAgY29uc3Qgbm9kZUFUZXJtaW5hbE5vZGUgPSBub2RlQS5pc1Rlcm1pbmFsTm9kZSgpLFxuICAgICAgICAgIG5vZGVCVGVybWluYWxOb2RlID0gbm9kZUIuaXNUZXJtaW5hbE5vZGUoKTtcblxuICAgIGlmIChub2RlQVRlcm1pbmFsTm9kZSA9PT0gbm9kZUJUZXJtaW5hbE5vZGUpIHtcbiAgICAgIGlmIChub2RlQVRlcm1pbmFsTm9kZSkge1xuICAgICAgICBjb25zdCB0ZXJtaW5hbE5vZGVBID0gbm9kZUEsICAvLy9cbiAgICAgICAgICAgICAgdGVybWluYWxOb2RlQiA9IG5vZGVCLCAgLy8vXG4gICAgICAgICAgICAgIHRlcm1pbmFsTm9kZVZlcmlmaWVkID0gdGhpcy52ZXJpZnlUZXJtaW5hbE5vZGUodGVybWluYWxOb2RlQSwgdGVybWluYWxOb2RlQik7XG5cbiAgICAgICAgbm9kZVZlcmlmaWVkID0gdGVybWluYWxOb2RlVmVyaWZpZWQ7ICAvLy9cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZUEgPSBub2RlQSwgIC8vL1xuICAgICAgICAgICAgICBub25UZXJtaW5hbE5vZGVCID0gbm9kZUIsIC8vL1xuICAgICAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHRoaXMudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICAgICAgbm9kZVZlcmlmaWVkID0gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7IC8vL1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBub2RlVmVyaWZpZWQ7XG4gIH1cblxuICB2ZXJpZnlOb2Rlcyhub2Rlc0EsIG5vZGVzQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgbGV0IG5vZGVzVmVyaWZ5ID0gZmFsc2U7XG5cbiAgICBjb25zdCBub2Rlc0FMZW5ndGggPSBub2Rlc0EubGVuZ3RoLFxuICAgICAgICAgIG5vZGVzQkxlbmd0aCA9IG5vZGVzQi5sZW5ndGg7XG5cbiAgICBpZiAobm9kZXNBTGVuZ3RoID09PSBub2Rlc0JMZW5ndGgpIHtcbiAgICAgIG5vZGVzVmVyaWZ5ID0gbm9kZXNBLmV2ZXJ5KChub2RlQSwgaW5kZXgpID0+IHtcbiAgICAgICAgY29uc3Qgbm9kZUIgPSBub2Rlc0JbaW5kZXhdLFxuICAgICAgICAgICAgICBub2RlVmVyaWZpZWQgPSB0aGlzLnZlcmlmeU5vZGUobm9kZUEsIG5vZGVCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgICAgIGlmIChub2RlVmVyaWZpZWQpIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG5cbiAgICByZXR1cm4gbm9kZXNWZXJpZnk7XG4gIH1cblxuICB2ZXJpZnlUZXJtaW5hbE5vZGUodGVybWluYWxOb2RlQSwgdGVybWluYWxOb2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgY29uc3QgbWF0Y2hlcyA9IHRlcm1pbmFsTm9kZUEubWF0Y2godGVybWluYWxOb2RlQiksXG4gICAgICAgICAgdGVybWluYWxOb2RlVmVyaWZpZWQgPSBtYXRjaGVzOyAgLy8vXG5cbiAgICByZXR1cm4gdGVybWluYWxOb2RlVmVyaWZpZWQ7XG4gIH1cblxuICB2ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgbGV0IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCBub25UZXJtaW5hbE5vZGVBUnVsZU5hbWUgPSBub25UZXJtaW5hbE5vZGVBLmdldFJ1bGVOYW1lKCksIC8vL1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZUIuZ2V0UnVsZU5hbWUoKTsgLy8vXG5cbiAgICBpZiAobm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lID09PSBub25UZXJtaW5hbE5vZGVCUnVsZU5hbWUpIHtcbiAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZUFDaGlsZE5vZGVzID0gbm9uVGVybWluYWxOb2RlQS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgICBub25UZXJtaW5hbE5vZGVCQ2hpbGROb2RlcyA9IG5vblRlcm1pbmFsTm9kZUIuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgICAgbm9kZXNBID0gbm9uVGVybWluYWxOb2RlQUNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgICAgbm9kZXNCID0gbm9uVGVybWluYWxOb2RlQkNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgICAgbm9kZXNWZXJpZnkgPSB0aGlzLnZlcmlmeU5vZGVzKG5vZGVzQSwgbm9kZXNCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IG5vZGVzVmVyaWZ5OyAvLy9cbiAgICB9XG5cbiAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG4gIH1cbn1cbiIsIlJlYWN0LmNyZWF0ZUVsZW1lbnQiXSwibmFtZXMiOlsiVmVyaWZpZXIiLCJ2ZXJpZnlOb2RlIiwibm9kZUEiLCJub2RlQiIsInJlbWFpbmluZ0FyZ3VtZW50cyIsIm5vZGVWZXJpZmllZCIsIm5vZGVBVGVybWluYWxOb2RlIiwiaXNUZXJtaW5hbE5vZGUiLCJub2RlQlRlcm1pbmFsTm9kZSIsInRlcm1pbmFsTm9kZUEiLCJ0ZXJtaW5hbE5vZGVCIiwidGVybWluYWxOb2RlVmVyaWZpZWQiLCJ2ZXJpZnlUZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGVBIiwibm9uVGVybWluYWxOb2RlQiIsIm5vblRlcm1pbmFsTm9kZVZlcmlmaWVkIiwidmVyaWZ5Tm9uVGVybWluYWxOb2RlIiwidmVyaWZ5Tm9kZXMiLCJub2Rlc0EiLCJub2Rlc0IiLCJub2Rlc1ZlcmlmeSIsIm5vZGVzQUxlbmd0aCIsImxlbmd0aCIsIm5vZGVzQkxlbmd0aCIsImV2ZXJ5IiwiaW5kZXgiLCJtYXRjaGVzIiwibWF0Y2giLCJub25UZXJtaW5hbE5vZGVBUnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIsIm5vblRlcm1pbmFsTm9kZUJSdWxlTmFtZSIsIm5vblRlcm1pbmFsTm9kZUFDaGlsZE5vZGVzIiwiZ2V0Q2hpbGROb2RlcyIsIm5vblRlcm1pbmFsTm9kZUJDaGlsZE5vZGVzIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUVxQkE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQU4sSUFBQSxBQUFNQSx5QkFBTjthQUFNQTs4QkFBQUE7O2lCQUFBQTs7WUFDbkJDLEtBQUFBO21CQUFBQSxTQUFBQSxXQUFXQyxLQUFLLEVBQUVDLEtBQUssRUFBeUI7Z0JBQXZCLElBQUEsSUFBQSxPQUFBLFVBQUEsUUFBQSxBQUFHQyxxQkFBSCxVQUFBLE9BQUEsSUFBQSxPQUFBLEtBQXFCLEdBQXJCLE9BQUEsR0FBQSxPQUFBLE1BQUEsT0FBQTtvQkFBR0EsbUJBQUgsT0FBQSxLQUFBLFNBQUEsQ0FBQSxLQUFxQjtnQkFBRDtnQkFDM0MsSUFBSUMsZUFBZSxLQUFLO2dCQUV4QixJQUFNQyxvQkFBb0JKLE1BQU1LLGNBQWMsSUFDeENDLG9CQUFvQkwsTUFBTUksY0FBYztnQkFFOUMsSUFBSUQsc0JBQXNCRSxtQkFBbUI7b0JBQzNDLElBQUlGLG1CQUFtQjt3QkFDckIsSUFBTUcsZ0JBQWdCUCxPQUNoQlEsZ0JB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
138
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy92ZXJpZmllci5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+PiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVmVyaWZpZXIge1xuICB2ZXJpZnlOb2RlKG5vZGVBLCBub2RlQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgbGV0IG5vZGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gICAgY29uc3Qgbm9kZUFUZXJtaW5hbE5vZGUgPSBub2RlQS5pc1Rlcm1pbmFsTm9kZSgpLFxuICAgICAgICAgIG5vZGVCVGVybWluYWxOb2RlID0gbm9kZUIuaXNUZXJtaW5hbE5vZGUoKTtcblxuICAgIGlmIChub2RlQVRlcm1pbmFsTm9kZSA9PT0gbm9kZUJUZXJtaW5hbE5vZGUpIHtcbiAgICAgIGlmIChub2RlQVRlcm1pbmFsTm9kZSkge1xuICAgICAgICBjb25zdCB0ZXJtaW5hbE5vZGVBID0gbm9kZUEsICAvLy9cbiAgICAgICAgICAgICAgdGVybWluYWxOb2RlQiA9IG5vZGVCLCAgLy8vXG4gICAgICAgICAgICAgIHRlcm1pbmFsTm9kZVZlcmlmaWVkID0gdGhpcy52ZXJpZnlUZXJtaW5hbE5vZGUodGVybWluYWxOb2RlQSwgdGVybWluYWxOb2RlQik7XG5cbiAgICAgICAgbm9kZVZlcmlmaWVkID0gdGVybWluYWxOb2RlVmVyaWZpZWQ7ICAvLy9cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZUEgPSBub2RlQSwgIC8vL1xuICAgICAgICAgICAgICBub25UZXJtaW5hbE5vZGVCID0gbm9kZUIsIC8vL1xuICAgICAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IHRoaXMudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICAgICAgbm9kZVZlcmlmaWVkID0gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7IC8vL1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBub2RlVmVyaWZpZWQ7XG4gIH1cblxuICB2ZXJpZnlOb2Rlcyhub2Rlc0EsIG5vZGVzQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgbGV0IG5vZGVzVmVyaWZ5ID0gZmFsc2U7XG5cbiAgICBjb25zdCBub2Rlc0FMZW5ndGggPSBub2Rlc0EubGVuZ3RoLFxuICAgICAgICAgIG5vZGVzQkxlbmd0aCA9IG5vZGVzQi5sZW5ndGg7XG5cbiAgICBpZiAobm9kZXNBTGVuZ3RoID09PSBub2Rlc0JMZW5ndGgpIHtcbiAgICAgIG5vZGVzVmVyaWZ5ID0gbm9kZXNBLmV2ZXJ5KChub2RlQSwgaW5kZXgpID0+IHtcbiAgICAgICAgY29uc3Qgbm9kZUIgPSBub2Rlc0JbaW5kZXhdLFxuICAgICAgICAgICAgICBub2RlVmVyaWZpZWQgPSB0aGlzLnZlcmlmeU5vZGUobm9kZUEsIG5vZGVCLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgICAgIGlmIChub2RlVmVyaWZpZWQpIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vZGVzVmVyaWZ5O1xuICB9XG5cbiAgdmVyaWZ5VGVybWluYWxOb2RlKHRlcm1pbmFsTm9kZUEsIHRlcm1pbmFsTm9kZUIsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGNvbnN0IG1hdGNoZXMgPSB0ZXJtaW5hbE5vZGVBLm1hdGNoKHRlcm1pbmFsTm9kZUIpLFxuICAgICAgICAgIHRlcm1pbmFsTm9kZVZlcmlmaWVkID0gbWF0Y2hlczsgIC8vL1xuXG4gICAgcmV0dXJuIHRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuICB9XG5cbiAgdmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGxldCBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gICAgY29uc3Qgbm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlQS5nZXRSdWxlTmFtZSgpLCAvLy9cbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVCUnVsZU5hbWUgPSBub25UZXJtaW5hbE5vZGVCLmdldFJ1bGVOYW1lKCk7IC8vL1xuXG4gICAgaWYgKG5vblRlcm1pbmFsTm9kZUFSdWxlTmFtZSA9PT0gbm9uVGVybWluYWxOb2RlQlJ1bGVOYW1lKSB7XG4gICAgICBjb25zdCBub25UZXJtaW5hbE5vZGVBQ2hpbGROb2RlcyA9IG5vblRlcm1pbmFsTm9kZUEuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlQkNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGVCLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICAgIG5vZGVzQSA9IG5vblRlcm1pbmFsTm9kZUFDaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICAgIG5vZGVzQiA9IG5vblRlcm1pbmFsTm9kZUJDaGlsZE5vZGVzLCAvLy9cbiAgICAgICAgICAgIG5vZGVzVmVyaWZ5ID0gdGhpcy52ZXJpZnlOb2Rlcyhub2Rlc0EsIG5vZGVzQiwgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBub2Rlc1ZlcmlmeTsgLy8vXG4gICAgfVxuXG4gICAgcmV0dXJuIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkO1xuICB9XG59XG4iLCJSZWFjdC5jcmVhdGVFbGVtZW50Il0sIm5hbWVzIjpbIlZlcmlmaWVyIiwidmVyaWZ5Tm9kZSIsIm5vZGVBIiwibm9kZUIiLCJyZW1haW5pbmdBcmd1bWVudHMiLCJub2RlVmVyaWZpZWQiLCJub2RlQVRlcm1pbmFsTm9kZSIsImlzVGVybWluYWxOb2RlIiwibm9kZUJUZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGVBIiwidGVybWluYWxOb2RlQiIsInRlcm1pbmFsTm9kZVZlcmlmaWVkIiwidmVyaWZ5VGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlQSIsIm5vblRlcm1pbmFsTm9kZUIiLCJub25UZXJtaW5hbE5vZGVWZXJpZmllZCIsInZlcmlmeU5vblRlcm1pbmFsTm9kZSIsInZlcmlmeU5vZGVzIiwibm9kZXNBIiwibm9kZXNCIiwibm9kZXNWZXJpZnkiLCJub2Rlc0FMZW5ndGgiLCJsZW5ndGgiLCJub2Rlc0JMZW5ndGgiLCJldmVyeSIsImluZGV4IiwibWF0Y2hlcyIsIm1hdGNoIiwibm9uVGVybWluYWxOb2RlQVJ1bGVOYW1lIiwiZ2V0UnVsZU5hbWUiLCJub25UZXJtaW5hbE5vZGVCUnVsZU5hbWUiLCJub25UZXJtaW5hbE5vZGVBQ2hpbGROb2RlcyIsImdldENoaWxkTm9kZXMiLCJub25UZXJtaW5hbE5vZGVCQ2hpbGROb2RlcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFFcUJBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFOLElBQUEsQUFBTUEseUJBQU47YUFBTUE7OEJBQUFBOztpQkFBQUE7O1lBQ25CQyxLQUFBQTttQkFBQUEsU0FBQUEsV0FBV0MsS0FBSyxFQUFFQyxLQUFLLEVBQXlCO2dCQUF2QixJQUFBLElBQUEsT0FBQSxVQUFBLFFBQUEsQUFBR0MscUJBQUgsVUFBQSxPQUFBLElBQUEsT0FBQSxLQUFxQixHQUFyQixPQUFBLEdBQUEsT0FBQSxNQUFBLE9BQUE7b0JBQUdBLG1CQUFILE9BQUEsS0FBQSxTQUFBLENBQUEsS0FBcUI7Z0JBQUQ7Z0JBQzNDLElBQUlDLGVBQWUsS0FBSztnQkFFeEIsSUFBTUMsb0JBQW9CSixNQUFNSyxjQUFjLElBQ3hDQyxvQkFBb0JMLE1BQU1JLGNBQWM7Z0JBRTlDLElBQUlELHNCQUFzQkUsbUJBQW1CO29CQUMzQyxJQUFJRixtQkFBbUI7d0JBQ3JCLElBQU1HLGdCQUFnQlAsT0FDaEJRLGdC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
@@ -20,7 +20,7 @@ var errorNodesQuery = (0, _query.nodesQuery)("/document/error"), topLevelDeclara
20
20
  function verifyFile(filePath, releaseContext) {
21
21
  var fileVerified = false;
22
22
  releaseContext.debug("Verifying the '".concat(filePath, "' file..."));
23
- var fileContext = _file.default.fromReleaseContextAndFilePath(releaseContext, filePath), node = fileContext.getNode();
23
+ var fileContext = _file.default.fromFilePathAndReleaseContext(filePath, releaseContext), node = fileContext.getNode();
24
24
  if (node === null) {
25
25
  fileVerified = true;
26
26
  } else {
@@ -46,4 +46,4 @@ function verifyFile(filePath, releaseContext) {
46
46
  return fileVerified;
47
47
  }
48
48
 
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvZmlsZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEZpbGVDb250ZXh0IGZyb20gXCIuLi9jb250ZXh0L2ZpbGVcIjtcbmltcG9ydCB2ZXJpZnlUb3BMZXZlbERlY2xhcmF0aW9uIGZyb20gXCIuL2RlY2xhcmF0aW9uL3RvcExldmVsXCI7XG5cbmltcG9ydCB7IG5vZGVzUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IGVycm9yTm9kZXNRdWVyeSA9IG5vZGVzUXVlcnkoXCIvZG9jdW1lbnQvZXJyb3JcIiksXG4gICAgICB0b3BMZXZlbERlY2xhcmF0aW9uTm9kZXNRdWVyeSA9IG5vZGVzUXVlcnkoXCIvZG9jdW1lbnQvdG9wTGV2ZWxEZWNsYXJhdGlvblwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5RmlsZShmaWxlUGF0aCwgcmVsZWFzZUNvbnRleHQpIHtcbiAgbGV0IGZpbGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gIHJlbGVhc2VDb250ZXh0LmRlYnVnKGBWZXJpZnlpbmcgdGhlICcke2ZpbGVQYXRofScgZmlsZS4uLmApO1xuXG4gIGNvbnN0IGZpbGVDb250ZXh0ID0gRmlsZUNvbnRleHQuZnJvbVJlbGVhc2VDb250ZXh0QW5kRmlsZVBhdGgocmVsZWFzZUNvbnRleHQsIGZpbGVQYXRoKSxcbiAgICAgICAgbm9kZSA9IGZpbGVDb250ZXh0LmdldE5vZGUoKTtcblxuICBpZiAobm9kZSA9PT0gbnVsbCkge1xuICAgIGZpbGVWZXJpZmllZCA9IHRydWU7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgZXJyb3JOb2RlcyA9IGVycm9yTm9kZXNRdWVyeShub2RlKSxcbiAgICAgICAgICBlcnJvck5vZGVzTGVuZ3RoID0gZXJyb3JOb2Rlcy5sZW5ndGg7XG5cbiAgICBpZiAoZXJyb3JOb2Rlc0xlbmd0aCA+IDApIHtcbiAgICAgIHJlbGVhc2VDb250ZXh0LmVycm9yKGBUaGUgJyR7ZmlsZVBhdGh9JyBmaWxlIGNhbm5vdCBiZSB2ZXJpZmllZCBiZWNhdXNlIGl0IGNvbnRhaW5zIGVycm9ycy5gKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdG9wTGV2ZWxEZWNsYXJhdGlvbk5vZGVzID0gdG9wTGV2ZWxEZWNsYXJhdGlvbk5vZGVzUXVlcnkobm9kZSksXG4gICAgICAgICAgICB0b3BMZXZlbERlY2xhcmF0aW9uc1ZlcmlmaWVkID0gdG9wTGV2ZWxEZWNsYXJhdGlvbk5vZGVzLmV2ZXJ5KCh0b3BMZXZlbERlY2xhcmF0aW9uTm9kZSkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCB0b3BMZXZlbERlY2xhcmF0aW9uVmVyaWZpZWQgPSB2ZXJpZnlUb3BMZXZlbERlY2xhcmF0aW9uKHRvcExldmVsRGVjbGFyYXRpb25Ob2RlLCBmaWxlQ29udGV4dCk7XG5cbiAgICAgICAgICAgICAgaWYgKHRvcExldmVsRGVjbGFyYXRpb25WZXJpZmllZCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgaWYgKHRvcExldmVsRGVjbGFyYXRpb25zVmVyaWZpZWQpIHtcbiAgICAgICAgcmVsZWFzZUNvbnRleHQuYWRkRmlsZUNvbnRleHQoZmlsZUNvbnRleHQpO1xuXG4gICAgICAgIGZpbGVWZXJpZmllZCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKGZpbGVWZXJpZmllZCkge1xuICAgIHJlbGVhc2VDb250ZXh0LmluZm8oYFZlcmlmaWVkIHRoZSAnJHtmaWxlUGF0aH0nIGZpbGUuYCk7XG4gIH1cblxuICByZXR1cm4gZmlsZVZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeUZpbGUiLCJlcnJvck5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5IiwidG9wTGV2ZWxEZWNsYXJhdGlvbk5vZGVzUXVlcnkiLCJmaWxlUGF0aCIsInJlbGVhc2VDb250ZXh0IiwiZmlsZVZlcmlmaWVkIiwiZGVidWciLCJmaWxlQ29udGV4dCIsIkZpbGVDb250ZXh0IiwiZnJvbVJlbGVhc2VDb250ZXh0QW5kRmlsZVBhdGgiLCJub2RlIiwiZ2V0Tm9kZSIsImVycm9yTm9kZXMiLCJlcnJvck5vZGVzTGVuZ3RoIiwibGVuZ3RoIiwiZXJyb3IiLCJ0b3BMZXZlbERlY2xhcmF0aW9uTm9kZXMiLCJ0b3BMZXZlbERlY2xhcmF0aW9uc1ZlcmlmaWVkIiwiZXZlcnkiLCJ0b3BMZXZlbERlY2xhcmF0aW9uTm9kZSIsInRvcExldmVsRGVjbGFyYXRpb25WZXJpZmllZCIsInZlcmlmeVRvcExldmVsRGVjbGFyYXRpb24iLCJhZGRGaWxlQ29udGV4dCIsImluZm8iXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVVBOzs7ZUFBd0JBOzs7eURBUkE7NkRBQ2M7cUJBRVg7Ozs7OztBQUUzQixJQUFNQyxrQkFBa0JDLElBQUFBLGlCQUFVLEVBQUMsb0JBQzdCQyxnQ0FBZ0NELElBQUFBLGlCQUFVLEVBQUM7QUFFbEMsU0FBU0YsV0FBV0ksUUFBUSxFQUFFQyxjQUFjLEVBQUU7SUFDM0QsSUFBSUMsZUFBZSxLQUFLO0lBRXhCRCxlQUFlRSxLQUFLLENBQUMsQUFBQyxrQkFBMEIsT0FBVEgsVUFBUztJQUVoRCxJQUFNSSxjQUFjQyxhQUFXLENBQUNDLDZCQUE2QixDQUFDTCxnQkFBZ0JELFdBQ3hFTyxPQUFPSCxZQUFZSSxPQUFPO0lBRWhDLElBQUlELFNBQVMsSUFBSSxFQUFFO1FBQ2pCTCxlQUFlLElBQUk7SUFDckIsT0FBTztRQUNMLElBQU1PLGFBQWFaLGdCQUFnQlUsT0FDN0JHLG1CQUFtQkQsV0FBV0UsTUFBTTtRQUUxQyxJQUFJRCxtQkFBbUIsR0FBRztZQUN4QlQsZUFBZVcsS0FBSyxDQUFDLEFBQUMsUUFBZ0IsT0FBVFosVUFBUztRQUN4QyxPQUFPO1lBQ0wsSUFBTWEsMkJBQTJCZCw4QkFBOEJRLE9BQ3pETywrQkFBK0JELHlCQUF5QkUsS0FBSyxDQUFDLFNBQUNDLHlCQUE0QjtnQkFDekYsSUFBTUMsOEJBQThCQyxJQUFBQSxpQkFBeUIsRUFBQ0YseUJBQXlCWjtnQkFFdkYsSUFBSWEsNkJBQTZCO29CQUMvQixPQUFPLElBQUk7Z0JBQ2IsQ0FBQztZQUNIO1lBRU4sSUFBSUgsOEJBQThCO2dCQUNoQ2IsZUFBZWtCLGNBQWMsQ0FBQ2Y7Z0JBRTlCRixlQUFlLElBQUk7WUFDckIsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSUEsY0FBYztRQUNoQkQsZUFBZW1CLElBQUksQ0FBQyxBQUFDLGlCQUF5QixPQUFUcEIsVUFBUztJQUNoRCxDQUFDO0lBRUQsT0FBT0U7QUFDVCJ9
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvZmlsZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEZpbGVDb250ZXh0IGZyb20gXCIuLi9jb250ZXh0L2ZpbGVcIjtcbmltcG9ydCB2ZXJpZnlUb3BMZXZlbERlY2xhcmF0aW9uIGZyb20gXCIuL2RlY2xhcmF0aW9uL3RvcExldmVsXCI7XG5cbmltcG9ydCB7IG5vZGVzUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IGVycm9yTm9kZXNRdWVyeSA9IG5vZGVzUXVlcnkoXCIvZG9jdW1lbnQvZXJyb3JcIiksXG4gICAgICB0b3BMZXZlbERlY2xhcmF0aW9uTm9kZXNRdWVyeSA9IG5vZGVzUXVlcnkoXCIvZG9jdW1lbnQvdG9wTGV2ZWxEZWNsYXJhdGlvblwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5RmlsZShmaWxlUGF0aCwgcmVsZWFzZUNvbnRleHQpIHtcbiAgbGV0IGZpbGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gIHJlbGVhc2VDb250ZXh0LmRlYnVnKGBWZXJpZnlpbmcgdGhlICcke2ZpbGVQYXRofScgZmlsZS4uLmApO1xuXG4gIGNvbnN0IGZpbGVDb250ZXh0ID0gRmlsZUNvbnRleHQuZnJvbUZpbGVQYXRoQW5kUmVsZWFzZUNvbnRleHQoZmlsZVBhdGgsIHJlbGVhc2VDb250ZXh0KSxcbiAgICAgICAgbm9kZSA9IGZpbGVDb250ZXh0LmdldE5vZGUoKTtcblxuICBpZiAobm9kZSA9PT0gbnVsbCkge1xuICAgIGZpbGVWZXJpZmllZCA9IHRydWU7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgZXJyb3JOb2RlcyA9IGVycm9yTm9kZXNRdWVyeShub2RlKSxcbiAgICAgICAgICBlcnJvck5vZGVzTGVuZ3RoID0gZXJyb3JOb2Rlcy5sZW5ndGg7XG5cbiAgICBpZiAoZXJyb3JOb2Rlc0xlbmd0aCA+IDApIHtcbiAgICAgIHJlbGVhc2VDb250ZXh0LmVycm9yKGBUaGUgJyR7ZmlsZVBhdGh9JyBmaWxlIGNhbm5vdCBiZSB2ZXJpZmllZCBiZWNhdXNlIGl0IGNvbnRhaW5zIGVycm9ycy5gKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdG9wTGV2ZWxEZWNsYXJhdGlvbk5vZGVzID0gdG9wTGV2ZWxEZWNsYXJhdGlvbk5vZGVzUXVlcnkobm9kZSksXG4gICAgICAgICAgICB0b3BMZXZlbERlY2xhcmF0aW9uc1ZlcmlmaWVkID0gdG9wTGV2ZWxEZWNsYXJhdGlvbk5vZGVzLmV2ZXJ5KCh0b3BMZXZlbERlY2xhcmF0aW9uTm9kZSkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCB0b3BMZXZlbERlY2xhcmF0aW9uVmVyaWZpZWQgPSB2ZXJpZnlUb3BMZXZlbERlY2xhcmF0aW9uKHRvcExldmVsRGVjbGFyYXRpb25Ob2RlLCBmaWxlQ29udGV4dCk7XG5cbiAgICAgICAgICAgICAgaWYgKHRvcExldmVsRGVjbGFyYXRpb25WZXJpZmllZCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgaWYgKHRvcExldmVsRGVjbGFyYXRpb25zVmVyaWZpZWQpIHtcbiAgICAgICAgcmVsZWFzZUNvbnRleHQuYWRkRmlsZUNvbnRleHQoZmlsZUNvbnRleHQpO1xuXG4gICAgICAgIGZpbGVWZXJpZmllZCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKGZpbGVWZXJpZmllZCkge1xuICAgIHJlbGVhc2VDb250ZXh0LmluZm8oYFZlcmlmaWVkIHRoZSAnJHtmaWxlUGF0aH0nIGZpbGUuYCk7XG4gIH1cblxuICByZXR1cm4gZmlsZVZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeUZpbGUiLCJlcnJvck5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5IiwidG9wTGV2ZWxEZWNsYXJhdGlvbk5vZGVzUXVlcnkiLCJmaWxlUGF0aCIsInJlbGVhc2VDb250ZXh0IiwiZmlsZVZlcmlmaWVkIiwiZGVidWciLCJmaWxlQ29udGV4dCIsIkZpbGVDb250ZXh0IiwiZnJvbUZpbGVQYXRoQW5kUmVsZWFzZUNvbnRleHQiLCJub2RlIiwiZ2V0Tm9kZSIsImVycm9yTm9kZXMiLCJlcnJvck5vZGVzTGVuZ3RoIiwibGVuZ3RoIiwiZXJyb3IiLCJ0b3BMZXZlbERlY2xhcmF0aW9uTm9kZXMiLCJ0b3BMZXZlbERlY2xhcmF0aW9uc1ZlcmlmaWVkIiwiZXZlcnkiLCJ0b3BMZXZlbERlY2xhcmF0aW9uTm9kZSIsInRvcExldmVsRGVjbGFyYXRpb25WZXJpZmllZCIsInZlcmlmeVRvcExldmVsRGVjbGFyYXRpb24iLCJhZGRGaWxlQ29udGV4dCIsImluZm8iXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVVBOzs7ZUFBd0JBOzs7eURBUkE7NkRBQ2M7cUJBRVg7Ozs7OztBQUUzQixJQUFNQyxrQkFBa0JDLElBQUFBLGlCQUFVLEVBQUMsb0JBQzdCQyxnQ0FBZ0NELElBQUFBLGlCQUFVLEVBQUM7QUFFbEMsU0FBU0YsV0FBV0ksUUFBUSxFQUFFQyxjQUFjLEVBQUU7SUFDM0QsSUFBSUMsZUFBZSxLQUFLO0lBRXhCRCxlQUFlRSxLQUFLLENBQUMsQUFBQyxrQkFBMEIsT0FBVEgsVUFBUztJQUVoRCxJQUFNSSxjQUFjQyxhQUFXLENBQUNDLDZCQUE2QixDQUFDTixVQUFVQyxpQkFDbEVNLE9BQU9ILFlBQVlJLE9BQU87SUFFaEMsSUFBSUQsU0FBUyxJQUFJLEVBQUU7UUFDakJMLGVBQWUsSUFBSTtJQUNyQixPQUFPO1FBQ0wsSUFBTU8sYUFBYVosZ0JBQWdCVSxPQUM3QkcsbUJBQW1CRCxXQUFXRSxNQUFNO1FBRTFDLElBQUlELG1CQUFtQixHQUFHO1lBQ3hCVCxlQUFlVyxLQUFLLENBQUMsQUFBQyxRQUFnQixPQUFUWixVQUFTO1FBQ3hDLE9BQU87WUFDTCxJQUFNYSwyQkFBMkJkLDhCQUE4QlEsT0FDekRPLCtCQUErQkQseUJBQXlCRSxLQUFLLENBQUMsU0FBQ0MseUJBQTRCO2dCQUN6RixJQUFNQyw4QkFBOEJDLElBQUFBLGlCQUF5QixFQUFDRix5QkFBeUJaO2dCQUV2RixJQUFJYSw2QkFBNkI7b0JBQy9CLE9BQU8sSUFBSTtnQkFDYixDQUFDO1lBQ0g7WUFFTixJQUFJSCw4QkFBOEI7Z0JBQ2hDYixlQUFla0IsY0FBYyxDQUFDZjtnQkFFOUJGLGVBQWUsSUFBSTtZQUNyQixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJQSxjQUFjO1FBQ2hCRCxlQUFlbUIsSUFBSSxDQUFDLEFBQUMsaUJBQXlCLE9BQVRwQixVQUFTO0lBQ2hELENBQUM7SUFFRCxPQUFPRTtBQUNUIn0=
@@ -8,10 +8,154 @@ Object.defineProperty(exports, "default", {
8
8
  return verifyMetastatement;
9
9
  }
10
10
  });
11
+ var _verifier = /*#__PURE__*/ _interopRequireDefault(require("../verifier"));
12
+ var _ruleNames = require("../ruleNames");
13
+ var _query = require("../utilities/query");
14
+ function _assertThisInitialized(self) {
15
+ if (self === void 0) {
16
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
17
+ }
18
+ return self;
19
+ }
20
+ function _classCallCheck(instance, Constructor) {
21
+ if (!(instance instanceof Constructor)) {
22
+ throw new TypeError("Cannot call a class as a function");
23
+ }
24
+ }
25
+ function _defineProperties(target, props) {
26
+ for(var i = 0; i < props.length; i++){
27
+ var descriptor = props[i];
28
+ descriptor.enumerable = descriptor.enumerable || false;
29
+ descriptor.configurable = true;
30
+ if ("value" in descriptor) descriptor.writable = true;
31
+ Object.defineProperty(target, descriptor.key, descriptor);
32
+ }
33
+ }
34
+ function _createClass(Constructor, protoProps, staticProps) {
35
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
36
+ if (staticProps) _defineProperties(Constructor, staticProps);
37
+ return Constructor;
38
+ }
39
+ function _getPrototypeOf(o) {
40
+ _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
41
+ return o.__proto__ || Object.getPrototypeOf(o);
42
+ };
43
+ return _getPrototypeOf(o);
44
+ }
45
+ function _inherits(subClass, superClass) {
46
+ if (typeof superClass !== "function" && superClass !== null) {
47
+ throw new TypeError("Super expression must either be null or a function");
48
+ }
49
+ subClass.prototype = Object.create(superClass && superClass.prototype, {
50
+ constructor: {
51
+ value: subClass,
52
+ writable: true,
53
+ configurable: true
54
+ }
55
+ });
56
+ if (superClass) _setPrototypeOf(subClass, superClass);
57
+ }
58
+ function _interopRequireDefault(obj) {
59
+ return obj && obj.__esModule ? obj : {
60
+ default: obj
61
+ };
62
+ }
63
+ function _possibleConstructorReturn(self, call) {
64
+ if (call && (_typeof(call) === "object" || typeof call === "function")) {
65
+ return call;
66
+ }
67
+ return _assertThisInitialized(self);
68
+ }
69
+ function _setPrototypeOf(o, p) {
70
+ _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
71
+ o.__proto__ = p;
72
+ return o;
73
+ };
74
+ return _setPrototypeOf(o, p);
75
+ }
76
+ var _typeof = function(obj) {
77
+ "@swc/helpers - typeof";
78
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
79
+ };
80
+ function _isNativeReflectConstruct() {
81
+ if (typeof Reflect === "undefined" || !Reflect.construct) return false;
82
+ if (Reflect.construct.sham) return false;
83
+ if (typeof Proxy === "function") return true;
84
+ try {
85
+ Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
86
+ return true;
87
+ } catch (e) {
88
+ return false;
89
+ }
90
+ }
91
+ function _createSuper(Derived) {
92
+ var hasNativeReflectConstruct = _isNativeReflectConstruct();
93
+ return function _createSuperInternal() {
94
+ var Super = _getPrototypeOf(Derived), result;
95
+ if (hasNativeReflectConstruct) {
96
+ var NewTarget = _getPrototypeOf(this).constructor;
97
+ result = Reflect.construct(Super, arguments, NewTarget);
98
+ } else {
99
+ result = Super.apply(this, arguments);
100
+ }
101
+ return _possibleConstructorReturn(this, result);
102
+ };
103
+ }
104
+ var MetastatementVerifier = /*#__PURE__*/ function(Verifier) {
105
+ _inherits(MetastatementVerifier, Verifier);
106
+ var _super = _createSuper(MetastatementVerifier);
107
+ function MetastatementVerifier() {
108
+ _classCallCheck(this, MetastatementVerifier);
109
+ return _super.apply(this, arguments);
110
+ }
111
+ _createClass(MetastatementVerifier, [
112
+ {
113
+ key: "verifyNonTerminalNode",
114
+ value: function verifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, metaproofContext) {
115
+ var nonTerminalNodeVerified = false;
116
+ var nonTerminalNode = nonTerminalNodeA, ruleName = nonTerminalNode.getRuleName(); ///
117
+ switch(ruleName){
118
+ case _ruleNames.METAVARIABLE_RULE_NAME:
119
+ {
120
+ var metavariableNode = nonTerminalNode, metavariableNodeVerified = this.verifyMetavariableNode(metavariableNode, metaproofContext);
121
+ nonTerminalNodeVerified = metavariableNodeVerified; ///
122
+ break;
123
+ }
124
+ default:
125
+ {
126
+ var childNodes = nonTerminalNode.getChildNodes(), nodesA = childNodes, nodesB = childNodes, nodesVerified = this.verifyNodes(nodesA, nodesB, metaproofContext);
127
+ nonTerminalNodeVerified = nodesVerified; ///
128
+ break;
129
+ }
130
+ }
131
+ return nonTerminalNodeVerified;
132
+ }
133
+ },
134
+ {
135
+ key: "verifyMetavariableNode",
136
+ value: function verifyMetavariableNode(metavariableNode, metaproofContext) {
137
+ var metavariableNodeVerified = false;
138
+ var metavariableName = (0, _query.metavariableNameFromMetavariableNode)(metavariableNode), metavariablePresent = metaproofContext.isMetavariablePresentByMetavariableName(metavariableName);
139
+ if (!metavariablePresent) {
140
+ var metavariableString = metaproofContext.nodeAsString(metavariableNode);
141
+ metaproofContext.error("The '".concat(metavariableString, "' metavariable is not present."), metavariableNode);
142
+ } else {
143
+ metavariableNodeVerified = true;
144
+ }
145
+ return metavariableNodeVerified;
146
+ }
147
+ }
148
+ ]);
149
+ return MetastatementVerifier;
150
+ }(_verifier.default);
151
+ var metastatementVerifier = new MetastatementVerifier();
11
152
  function verifyMetastatement(metastatementNode, assignments, derived, metaproofContext) {
12
- var metastatementVerified = true; ///
13
- ///
153
+ var metastatementVerified = false;
154
+ if (!metastatementVerified) {
155
+ var nonTerminalNodeA = metastatementNode, nonTerminalNodeB = metastatementNode, nonTerminalNodeVerified = metastatementVerifier.verifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, metaproofContext);
156
+ metastatementVerified = nonTerminalNodeVerified; ///
157
+ }
14
158
  return metastatementVerified;
15
159
  }
16
160
 
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YXN0YXRlbWVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5TWV0YXN0YXRlbWVudChtZXRhc3RhdGVtZW50Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIG1ldGFwcm9vZkNvbnRleHQpIHtcbiAgbGV0IG1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IHRydWU7IC8vL1xuXG4gIC8vL1xuXG4gIHJldHVybiBtZXRhc3RhdGVtZW50VmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5TWV0YXN0YXRlbWVudCIsIm1ldGFzdGF0ZW1lbnROb2RlIiwiYXNzaWdubWVudHMiLCJkZXJpdmVkIiwibWV0YXByb29mQ29udGV4dCIsIm1ldGFzdGF0ZW1lbnRWZXJpZmllZCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBRUE7OztlQUF3QkE7OztBQUFULFNBQVNBLG9CQUFvQkMsaUJBQWlCLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxnQkFBZ0IsRUFBRTtJQUNyRyxJQUFJQyx3QkFBd0IsSUFBSSxFQUFFLEdBQUc7SUFFckMsR0FBRztJQUVILE9BQU9BO0FBQ1QifQ==
161
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YXN0YXRlbWVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFZlcmlmaWVyIGZyb20gXCIuLi92ZXJpZmllclwiO1xuXG5pbXBvcnQgeyBNRVRBVkFSSUFCTEVfUlVMRV9OQU1FIH0gZnJvbSBcIi4uL3J1bGVOYW1lc1wiO1xuaW1wb3J0IHsgbWV0YXZhcmlhYmxlTmFtZUZyb21NZXRhdmFyaWFibGVOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jbGFzcyBNZXRhc3RhdGVtZW50VmVyaWZpZXIgZXh0ZW5kcyBWZXJpZmllciB7XG4gIHZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGVBLCBub25UZXJtaW5hbE5vZGVCLCBtZXRhcHJvb2ZDb250ZXh0KSB7XG4gICAgbGV0IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBub25UZXJtaW5hbE5vZGVBLCAvLy9cbiAgICAgICAgICBydWxlTmFtZSA9IG5vblRlcm1pbmFsTm9kZS5nZXRSdWxlTmFtZSgpOyAvLy9cblxuICAgIHN3aXRjaCAocnVsZU5hbWUpIHtcbiAgICAgIGNhc2UgTUVUQVZBUklBQkxFX1JVTEVfTkFNRToge1xuICAgICAgICBjb25zdCBtZXRhdmFyaWFibGVOb2RlID0gbm9uVGVybWluYWxOb2RlLCAvLy9cbiAgICAgICAgICAgICAgbWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkID0gdGhpcy52ZXJpZnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUsIG1ldGFwcm9vZkNvbnRleHQpO1xuXG4gICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gbWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkOyAvLy9cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgZGVmYXVsdDoge1xuICAgICAgICBjb25zdCBjaGlsZE5vZGVzID0gbm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICAgICAgbm9kZXNBID0gY2hpbGROb2RlcywgLy8vXG4gICAgICAgICAgICAgIG5vZGVzQiA9IGNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgICAgICBub2Rlc1ZlcmlmaWVkID0gdGhpcy52ZXJpZnlOb2Rlcyhub2Rlc0EsIG5vZGVzQiwgbWV0YXByb29mQ29udGV4dCk7XG5cbiAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBub2Rlc1ZlcmlmaWVkOyAvLy9cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbm9uVGVybWluYWxOb2RlVmVyaWZpZWQ7XG4gIH1cblxuICB2ZXJpZnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUsIG1ldGFwcm9vZkNvbnRleHQpIHtcbiAgICBsZXQgbWV0YXZhcmlhYmxlTm9kZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCBtZXRhdmFyaWFibGVOYW1lID0gbWV0YXZhcmlhYmxlTmFtZUZyb21NZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUpLFxuICAgICAgICAgIG1ldGF2YXJpYWJsZVByZXNlbnQgPSBtZXRhcHJvb2ZDb250ZXh0LmlzTWV0YXZhcmlhYmxlUHJlc2VudEJ5TWV0YXZhcmlhYmxlTmFtZShtZXRhdmFyaWFibGVOYW1lKTtcblxuICAgIGlmICghbWV0YXZhcmlhYmxlUHJlc2VudCkge1xuICAgICAgY29uc3QgbWV0YXZhcmlhYmxlU3RyaW5nID0gbWV0YXByb29mQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgICAgIG1ldGFwcm9vZkNvbnRleHQuZXJyb3IoYFRoZSAnJHttZXRhdmFyaWFibGVTdHJpbmd9JyBtZXRhdmFyaWFibGUgaXMgbm90IHByZXNlbnQuYCwgbWV0YXZhcmlhYmxlTm9kZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIG1ldGF2YXJpYWJsZU5vZGVWZXJpZmllZCA9IHRydWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIG1ldGF2YXJpYWJsZU5vZGVWZXJpZmllZDtcbiAgfVxufVxuXG5jb25zdCBtZXRhc3RhdGVtZW50VmVyaWZpZXIgPSBuZXcgTWV0YXN0YXRlbWVudFZlcmlmaWVyKCk7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeU1ldGFzdGF0ZW1lbnQobWV0YXN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBtZXRhcHJvb2ZDb250ZXh0KSB7XG4gIGxldCBtZXRhc3RhdGVtZW50VmVyaWZpZWQgPSBmYWxzZTtcblxuICBpZiAoIW1ldGFzdGF0ZW1lbnRWZXJpZmllZCkge1xuICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZUEgPSBtZXRhc3RhdGVtZW50Tm9kZSwgLy8vXG4gICAgICAgICAgbm9uVGVybWluYWxOb2RlQiA9IG1ldGFzdGF0ZW1lbnROb2RlLCAvLy9cbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IG1ldGFzdGF0ZW1lbnRWZXJpZmllci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgbWV0YXByb29mQ29udGV4dCk7XG5cbiAgICBtZXRhc3RhdGVtZW50VmVyaWZpZWQgPSBub25UZXJtaW5hbE5vZGVWZXJpZmllZDsgIC8vL1xuICB9XG5cbiAgcmV0dXJuIG1ldGFzdGF0ZW1lbnRWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlNZXRhc3RhdGVtZW50IiwiTWV0YXN0YXRlbWVudFZlcmlmaWVyIiwidmVyaWZ5Tm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlQSIsIm5vblRlcm1pbmFsTm9kZUIiLCJtZXRhcHJvb2ZDb250ZXh0Iiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJub25UZXJtaW5hbE5vZGUiLCJydWxlTmFtZSIsImdldFJ1bGVOYW1lIiwiTUVUQVZBUklBQkxFX1JVTEVfTkFNRSIsIm1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhdmFyaWFibGVOb2RlVmVyaWZpZWQiLCJ2ZXJpZnlNZXRhdmFyaWFibGVOb2RlIiwiY2hpbGROb2RlcyIsImdldENoaWxkTm9kZXMiLCJub2Rlc0EiLCJub2Rlc0IiLCJub2Rlc1ZlcmlmaWVkIiwidmVyaWZ5Tm9kZXMiLCJtZXRhdmFyaWFibGVOYW1lIiwibWV0YXZhcmlhYmxlTmFtZUZyb21NZXRhdmFyaWFibGVOb2RlIiwibWV0YXZhcmlhYmxlUHJlc2VudCIsImlzTWV0YXZhcmlhYmxlUHJlc2VudEJ5TWV0YXZhcmlhYmxlTmFtZSIsIm1ldGF2YXJpYWJsZVN0cmluZyIsIm5vZGVBc1N0cmluZyIsImVycm9yIiwiVmVyaWZpZXIiLCJtZXRhc3RhdGVtZW50VmVyaWZpZXIiLCJtZXRhc3RhdGVtZW50Tm9kZSIsImFzc2lnbm1lbnRzIiwiZGVyaXZlZCIsIm1ldGFzdGF0ZW1lbnRWZXJpZmllZCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBMkRBOzs7ZUFBd0JBOzs7NkRBekRIO3lCQUVrQjtxQkFDYzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVyRCxJQUFBLEFBQU1DLHNDQWtESCxBQWxESDtjQUFNQTs4QkFBQUE7YUFBQUE7OEJBQUFBOzs7aUJBQUFBOztZQUNKQyxLQUFBQTttQkFBQUEsU0FBQUEsc0JBQXNCQyxnQkFBZ0IsRUFBRUMsZ0JBQWdCLEVBQUVDLGdCQUFnQixFQUFFO2dCQUMxRSxJQUFJQywwQkFBMEIsS0FBSztnQkFFbkMsSUFBTUMsa0JBQWtCSixrQkFDbEJLLFdBQVdELGdCQUFnQkUsV0FBVyxJQUFJLEdBQUc7Z0JBRW5ELE9BQVFEO29CQUNOLEtBQUtFLGlDQUFzQjt3QkFBRTs0QkFDM0IsSUFBTUMsbUJBQW1CSixpQkFDbkJLLDJCQUEyQixJQUFJLENBQUNDLHNCQUFzQixDQUFDRixrQkFBa0JOOzRCQUUvRUMsMEJBQTBCTSwwQkFBMEIsR0FBRzs0QkFFdkQsS0FBTTt3QkFDUjtvQkFFQTt3QkFBUzs0QkFDUCxJQUFNRSxhQUFhUCxnQkFBZ0JRLGFBQWEsSUFDMUNDLFNBQVNGLFlBQ1RHLFNBQVNILFlBQ1RJLGdCQUFnQixJQUFJLENBQUNDLFdBQVcsQ0FBQ0gsUUFBUUMsUUFBUVo7NEJBRXZEQywwQkFBMEJZLGVBQWUsR0FBRzs0QkFFNUMsS0FBTTt3QkFDUjtnQkFDRjtnQkFFQSxPQUFPWjtZQUNUOzs7WUFFQU8sS0FBQUE7bUJBQUFBLFNBQUFBLHVCQUF1QkYsZ0JBQWdCLEVBQUVOLGdCQUFnQixFQUFFO2dCQUN6RCxJQUFJTywyQkFBMkIsS0FBSztnQkFFcEMsSUFBTVEsbUJBQW1CQyxJQUFBQSwyQ0FBb0MsRUFBQ1YsbUJBQ3hEVyxzQkFBc0JqQixpQkFBaUJrQix1Q0FBdUMsQ0FBQ0g7Z0JBRXJGLElBQUksQ0FBQ0UscUJBQXFCO29CQUN4QixJQUFNRSxxQkFBcUJuQixpQkFBaUJvQixZQUFZLENBQUNkO29CQUV6RE4saUJBQWlCcUIsS0FBSyxDQUFDLEFBQUMsUUFBMEIsT0FBbkJGLG9CQUFtQixtQ0FBaUNiO2dCQUNyRixPQUFPO29CQUNMQywyQkFBMkIsSUFBSTtnQkFDakMsQ0FBQztnQkFFRCxPQUFPQTtZQUNUOzs7V0EvQ0lYO0VBQThCMEIsaUJBQVE7QUFrRDVDLElBQU1DLHdCQUF3QixJQUFJM0I7QUFFbkIsU0FBU0Qsb0JBQW9CNkIsaUJBQWlCLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFMUIsZ0JBQWdCLEVBQUU7SUFDckcsSUFBSTJCLHdCQUF3QixLQUFLO0lBRWpDLElBQUksQ0FBQ0EsdUJBQXVCO1FBQzFCLElBQU03QixtQkFBbUIwQixtQkFDbkJ6QixtQkFBbUJ5QixtQkFDbkJ2QiwwQkFBMEJzQixzQkFBc0IxQixxQkFBcUIsQ0FBQ0Msa0JBQWtCQyxrQkFBa0JDO1FBRWhIMkIsd0JBQXdCMUIseUJBQTBCLEdBQUc7SUFDdkQsQ0FBQztJQUVELE9BQU8wQjtBQUNUIn0=