occam-furtle 3.0.521 → 3.0.525

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 (57) hide show
  1. package/lib/element/apply.js +126 -0
  2. package/lib/element/assignment/object.js +23 -1
  3. package/lib/element/error.js +3 -3
  4. package/lib/element/every.js +13 -13
  5. package/lib/element/expression.js +18 -2
  6. package/lib/element/importStatement.js +3 -2
  7. package/lib/element/procedure.js +2 -1
  8. package/lib/element/procedureCall.js +8 -1
  9. package/lib/element/reduce.js +5 -5
  10. package/lib/element/referenceListLiteral.js +24 -0
  11. package/lib/element/references.js +32 -0
  12. package/lib/element/some.js +7 -7
  13. package/lib/element/terms.js +2 -2
  14. package/lib/element/values.js +16 -3
  15. package/lib/example/furtle/bnf.js +3 -5
  16. package/lib/example/furtle/entries.js +2 -2
  17. package/lib/node/apply.js +39 -0
  18. package/lib/node/expression.js +5 -1
  19. package/lib/node/references.js +23 -0
  20. package/lib/node/referencesListLiteral.js +27 -0
  21. package/lib/nominalValueProperties.js +34 -18
  22. package/lib/nonTerminalNodeMap.js +8 -2
  23. package/lib/parameterNames.js +5 -1
  24. package/lib/preamble.js +7 -3
  25. package/lib/process/instantiate.js +1 -1
  26. package/lib/ruleNames.js +13 -1
  27. package/lib/utilities/element.js +110 -7
  28. package/lib/utilities/string.js +38 -5
  29. package/package.json +5 -5
  30. package/src/element/apply.js +119 -0
  31. package/src/element/assignment/object.js +48 -1
  32. package/src/element/error.js +3 -3
  33. package/src/element/every.js +14 -12
  34. package/src/element/expression.js +19 -1
  35. package/src/element/importStatement.js +3 -1
  36. package/src/element/procedure.js +2 -0
  37. package/src/element/procedureCall.js +14 -0
  38. package/src/element/reduce.js +4 -4
  39. package/src/element/referenceListLiteral.js +19 -0
  40. package/src/element/references.js +31 -0
  41. package/src/element/some.js +7 -6
  42. package/src/element/terms.js +1 -1
  43. package/src/element/values.js +26 -2
  44. package/src/example/furtle/bnf.js +2 -4
  45. package/src/example/furtle/entries.js +1 -1
  46. package/src/node/apply.js +44 -0
  47. package/src/node/expression.js +9 -1
  48. package/src/node/references.js +16 -0
  49. package/src/node/referencesListLiteral.js +23 -0
  50. package/src/nominalValueProperties.js +43 -25
  51. package/src/nonTerminalNodeMap.js +11 -2
  52. package/src/parameterNames.js +1 -0
  53. package/src/preamble.js +6 -2
  54. package/src/process/instantiate.js +6 -1
  55. package/src/ruleNames.js +3 -0
  56. package/src/utilities/element.js +147 -14
  57. package/src/utilities/string.js +49 -6
@@ -73,6 +73,7 @@ const _default = (0, _elements.define)(class Procedure extends _occamlanguages.E
73
73
  this.returnBlock = (0, _element.returnBlockFromProcedureNode)(procedureNode, context);
74
74
  }
75
75
  verify = breakable(function(context, forward, back) {
76
+ forward = cut(forward, back); ///
76
77
  const procedureString = this.getString();
77
78
  context.trace(`Verifying the '${procedureString}' function...`);
78
79
  const procedureName = this.getProcedureName(), procedurePresent = context.isProcedurePresentByProcedureName(procedureName);
@@ -137,4 +138,4 @@ const _default = (0, _elements.define)(class Procedure extends _occamlanguages.E
137
138
  }
138
139
  });
139
140
 
140
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Byb2NlZHVyZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCwgYnJlYWtQb2ludFV0aWxpdGllcywgY29udGludWF0aW9uVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgZGVmaW5lIH0gZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5pbXBvcnQgeyB2YWx1ZXNGcm9tTm9taW5hbFZhbHVlcyB9IGZyb20gXCIuLi91dGlsaXRpZXMvdmFsdWVzXCI7XG5pbXBvcnQgeyByZXR1cm5CbG9ja0Zyb21Qcm9jZWR1cmVOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9lbGVtZW50XCI7XG5pbXBvcnQgeyB2YXJpYWJsZXNGcm9tVmFsdWVzQW5kUGFyYW1ldGVycyB9IGZyb20gXCIuLi91dGlsaXRpZXMvcGFyYW1ldGVyc1wiO1xuaW1wb3J0IHsgdHlwZUZyb21KU09OLCBsYWJlbEZyb21KU09OLCBleHBvcnRlZEZyb21KU09OLCBwYXJhbWV0ZXJzRnJvbUpTT04sIHR5cGVUb1R5cGVKU09OLCBsYWJlbFRvTGFiZWxKU09OLCBleHBvcnRlZFRvRXhwb3J0ZWRKU09OLCBwYXJhbWV0ZXJzVG9QYXJhbWV0ZXJzSlNPTiB9IGZyb20gXCIuLi91dGlsaXRpZXMvanNvblwiO1xuXG5jb25zdCB7IGN1dCB9ID0gY29udGludWF0aW9uVXRpbGl0aWVzLFxuICAgICAgeyBicmVha2FibGUsIGJyZWFrUG9pbnRGcm9tSlNPTiwgYnJlYWtQb2ludFRvQnJlYWtQb2ludEpTT04gfSA9IGJyZWFrUG9pbnRVdGlsaXRpZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBQcm9jZWR1cmUgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB0eXBlLCBsYWJlbCwgZXhwb3J0ZWQsIHBhcmFtZXRlcnMsIHJldHVybkJsb2NrKSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gICAgdGhpcy5sYWJlbCA9IGxhYmVsO1xuICAgIHRoaXMuZXhwb3J0ZWQgPSBleHBvcnRlZDtcbiAgICB0aGlzLnBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzO1xuICAgIHRoaXMucmV0dXJuQmxvY2sgPSByZXR1cm5CbG9jaztcbiAgfVxuXG4gIGdldFR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgfVxuXG4gIGdldExhYmVsKCkge1xuICAgIHJldHVybiB0aGlzLmxhYmVsO1xuICB9XG5cbiAgaXNFeHBvcnRlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5leHBvcnRlZDtcbiAgfVxuXG4gIGdldFBhcmFtZXRlcnMoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyYW1ldGVycztcbiAgfVxuXG4gIGdldFJldHVybkJsb2NrKCkge1xuICAgIHJldHVybiB0aGlzLnJldHVybkJsb2NrO1xuICB9XG5cbiAgZ2V0TmFtZSgpIHsgcmV0dXJuIHRoaXMubGFiZWwuZ2V0TmFtZSgpOyB9XG5cbiAgaXNCb29sZWFuKCkge1xuICAgIGNvbnN0IHR5cGUgPSB0aGlzLmdldFR5cGUoKSxcbiAgICAgICAgICBib29sZWFuVHlwZSA9IHR5cGUuaXNCb29sZWFuVHlwZSgpLFxuICAgICAgICAgIGJvb2xlYW4gPSBib29sZWFuVHlwZTsgIC8vL1xuXG4gICAgcmV0dXJuIGJvb2xlYW47XG4gIH1cblxuICBnZXRQcm9jZWR1cmVOYW1lKCkge1xuICAgIGNvbnN0IG5hbWUgPSB0aGlzLmdldE5hbWUoKSxcbiAgICAgICAgICBwcm9jZWR1cmVOYW1lID0gbmFtZTsgLy8vXG5cbiAgICByZXR1cm4gcHJvY2VkdXJlTmFtZTtcbiAgfVxuXG4gIGdldFJldHVyblN0YXRlbWVudCgpIHsgcmV0dXJuIHRoaXMucmV0dXJuQmxvY2suZ2V0UmV0dXJuU3RhdGVtZW50KCk7IH1cblxuICBjb21wYXJlUmVsZWFzZU5hbWUocmVsZWFzZU5hbWUpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5jb21wYXJlUmVsZWFzZU5hbWUocmVsZWFzZU5hbWUpOyB9XG5cbiAgY29tcGFyZVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSkgeyByZXR1cm4gdGhpcy5sYWJlbC5jb21wYXJlUHJvY2VkdXJlTmFtZShwcm9jZWR1cmVOYW1lKTsgfVxuXG4gIGd1YXJhbnRlZVJldHVybkJsb2NrKCkge1xuICAgIGlmICh0aGlzLnJldHVybkJsb2NrICE9IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBub2RlID0gdGhpcy5nZXROb2RlKCksXG4gICAgICAgICAgY29udGV4dCA9IHRoaXMuZ2V0Q29udGV4dCgpLFxuICAgICAgICAgIHByb2NlZHVyZU5vZGUgPSBub2RlO1xuXG4gICAgdGhpcy5yZXR1cm5CbG9jayA9IHJldHVybkJsb2NrRnJvbVByb2NlZHVyZU5vZGUocHJvY2VkdXJlTm9kZSwgY29udGV4dCk7XG4gIH1cblxuICB2ZXJpZnkgPSBicmVha2FibGUoZnVuY3Rpb24gKGNvbnRleHQsIGZvcndhcmQsIGJhY2spIHtcbiAgICBjb25zdCBwcm9jZWR1cmVTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpO1xuXG4gICAgY29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtwcm9jZWR1cmVTdHJpbmd9JyBmdW5jdGlvbi4uLmApO1xuXG4gICAgY29uc3QgcHJvY2VkdXJlTmFtZSA9IHRoaXMuZ2V0UHJvY2VkdXJlTmFtZSgpLFxuICAgICAgICAgIHByb2NlZHVyZVByZXNlbnQgPSBjb250ZXh0LmlzUHJvY2VkdXJlUHJlc2VudEJ5UHJvY2VkdXJlTmFtZShwcm9jZWR1cmVOYW1lKTtcblxuICAgIGlmIChwcm9jZWR1cmVQcmVzZW50KSB7XG4gICAgICBjb250ZXh0LnRyYWNlKGBUaGUgJyR7cHJvY2VkdXJlU3RyaW5nfScgZnVuY3Rpb24gaXMgYWxyZWFkeSBwcmVzZW50LmApO1xuXG4gICAgICByZXR1cm4gYmFjaygpO1xuICAgIH1cblxuICAgIGNvbnN0IHByb2NlZHVyZSA9IHRoaXM7IC8vL1xuXG4gICAgY29udGV4dC5hZGRQcm9jZWR1cmUocHJvY2VkdXJlKTtcblxuICAgIGNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtwcm9jZWR1cmVTdHJpbmd9JyBmdW5jdGlvbi5gKTtcblxuICAgIHJldHVybiBmb3J3YXJkKGNvbnRleHQsIGJhY2spO1xuICB9KTtcblxuICBldmFsdWF0ZSA9IGJyZWFrYWJsZShmdW5jdGlvbiAodmFsdWVzLCBjb250ZXh0LCBmb3J3YXJkLCBiYWNrKSB7XG4gICAgZm9yd2FyZCA9IGN1dChmb3J3YXJkLCBiYWNrKTtcblxuICAgIGNvbnN0IHByb2NlZHVyZVN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7ICAvLy9cblxuICAgIGNvbnRleHQudHJhY2UoYENhbGxpbmcgdGhlICcke3Byb2NlZHVyZVN0cmluZ30nIGZ1bmN0aW9uLi4uYCk7XG5cbiAgICByZXR1cm4gdGhpcy5wYXJhbWV0ZXJzLmNvbXBhcmVWYWx1ZXModmFsdWVzLCBjb250ZXh0LCAoYmFjaykgPT4ge1xuICAgICAgdGhpcy5ndWFyYW50ZWVSZXR1cm5CbG9jaygpO1xuXG4gICAgICBjb25zdCB2YXJpYWJsZXMgPSB2YXJpYWJsZXNGcm9tVmFsdWVzQW5kUGFyYW1ldGVycyh2YWx1ZXMsIHRoaXMucGFyYW1ldGVycywgY29udGV4dCk7XG5cbiAgICAgIHJldHVybiB0aGlzLnJldHVybkJsb2NrLmV2YWx1YXRlKHZhcmlhYmxlcywgY29udGV4dCwgKHZhbHVlLCBiYWNrKSA9PiB7XG4gICAgICAgIGNvbnN0IHZhbHVlVHlwZSA9IHZhbHVlLmdldFR5cGUoKSxcbiAgICAgICAgICAgICAgdHlwZUVxdWFsVG9WYWx1ZVR5cGUgPSB0aGlzLnR5cGUuaXNFcXVhbFRvKHZhbHVlVHlwZSk7XG5cbiAgICAgICAgaWYgKCF0eXBlRXF1YWxUb1ZhbHVlVHlwZSkge1xuICAgICAgICAgIGNvbnN0IHR5cGVTdHJpbmcgPSB0aGlzLnR5cGUuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICAgICAgdmFsdWVTdHJpbmcgPSB2YWx1ZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgICAgICB2YWx1ZVR5cGVTdHJpbmcgPSB2YWx1ZVR5cGUuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICAgICAgbWVzc2FnZSA9IGBUaGUgJyR7dmFsdWVTdHJpbmd9JyB2YWx1ZSdzICcke3ZhbHVlVHlwZVN0cmluZ30nIHR5cGUgaXMgbm90IGVxdWFsIHRvIHRoZSAnJHtwcm9jZWR1cmVTdHJpbmd9JyBmdW5jdGlvbidzICcke3R5cGVTdHJpbmd9JyB0eXBlLmAsXG4gICAgICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICAgICAgcmV0dXJuIGJhY2soZXhjZXB0aW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnRleHQuZGVidWcoYC4uLmNhbGxlZCB0aGUgJyR7cHJvY2VkdXJlU3RyaW5nfScgZnVuY3Rpb24uYCk7XG5cbiAgICAgICAgcmV0dXJuIGZvcndhcmQodmFsdWUsIGJhY2spO1xuICAgICAgfSwgYmFjayk7XG4gICAgfSwgYmFjayk7XG4gIH0pO1xuXG4gIGNhbGxOb21pbmFsbHkobm9taW5hbFZhbHVlcywgZm9yd2FyZCwgYmFjaykge1xuICAgIGNvbnN0IGNvbnRleHQgPSB0aGlzLmdldENvbnRleHQoKSxcbiAgICAgICAgICBwcm9jZWR1cmVTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpOyAgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBDYWxsaW5nIHRoZSAnJHtwcm9jZWR1cmVTdHJpbmd9JyBmdW5jdGlvbiBub21pbmFsbHkuLi5gKTtcblxuICAgIGNvbnN0IHZhbHVlcyA9IHZhbHVlc0Zyb21Ob21pbmFsVmFsdWVzKG5vbWluYWxWYWx1ZXMsIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIHRoaXMuZXZhbHVhdGUodmFsdWVzLCBjb250ZXh0LCAodmFsdWUsIGJhY2spID0+IHtcbiAgICAgIGNvbnRleHQuZGVidWcoYC4uLmNhbGxlZCB0aGUgJyR7cHJvY2VkdXJlU3RyaW5nfScgZnVuY3Rpb24gbm9taW5hbGx5LmApO1xuXG4gICAgICByZXR1cm4gZm9yd2FyZCh2YWx1ZSwgYmFjayk7XG4gICAgfSwgYmFjayk7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgbGV0IGpzb247XG5cbiAgICBjb25zdCBzdHJpbmcgPSB0aGlzLmdldFN0cmluZygpLFxuICAgICAgICAgIHR5cGVKU09OID0gdHlwZVRvVHlwZUpTT04odGhpcy50eXBlKSxcbiAgICAgICAgICBsYWJlbEpTT04gPSBsYWJlbFRvTGFiZWxKU09OKHRoaXMubGFiZWwpLFxuICAgICAgICAgIGV4cG9ydGVkSkpTT04gPSBleHBvcnRlZFRvRXhwb3J0ZWRKU09OKHRoaXMuZXhwb3J0ZWQpLFxuICAgICAgICAgIHBhcmFtZXRlcnNKU09OID0gcGFyYW1ldGVyc1RvUGFyYW1ldGVyc0pTT04odGhpcy5wYXJhbWV0ZXJzKTtcblxuICAgIGxldCBicmVha1BvaW50O1xuXG4gICAgYnJlYWtQb2ludCA9IHRoaXMuZ2V0QnJlYWtQb2ludCgpO1xuXG4gICAgY29uc3QgYnJlYWtQb2ludEpTT04gPSBicmVha1BvaW50VG9CcmVha1BvaW50SlNPTihicmVha1BvaW50KTtcblxuICAgIGJyZWFrUG9pbnQgPSBicmVha1BvaW50SlNPTjsgIC8vL1xuXG4gICAgY29uc3QgdHlwZSA9IHR5cGVKU09OLCAgLy8vXG4gICAgICAgICAgbGFiZWwgPSBsYWJlbEpTT04sICAvLy9cbiAgICAgICAgICBleHBvcnRlZCA9IGV4cG9ydGVkSkpTT04sIC8vL1xuICAgICAgICAgIHBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzSlNPTjsgIC8vL1xuXG4gICAganNvbiA9IHtcbiAgICAgIHN0cmluZyxcbiAgICAgIGJyZWFrUG9pbnQsXG4gICAgICB0eXBlLFxuICAgICAgbGFiZWwsXG4gICAgICBleHBvcnRlZCxcbiAgICAgIHBhcmFtZXRlcnNcbiAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiUHJvY2VkdXJlXCI7XG5cbiAgc3RhdGljIGZyb21KU09OKGpzb24sIGNvbnRleHQpIHtcbiAgICBjb25zdCB7IHN0cmluZyB9ID0ganNvbixcbiAgICAgICAgICBicmVha1BvaW50ID0gYnJlYWtQb2ludEZyb21KU09OKGpzb24pLFxuICAgICAgICAgIHR5cGUgPSB0eXBlRnJvbUpTT04oanNvbiwgY29udGV4dCksXG4gICAgICAgICAgbGFiZWwgPSBsYWJlbEZyb21KU09OKGpzb24sIGNvbnRleHQpLFxuICAgICAgICAgIGV4cG9ydGVkID0gZXhwb3J0ZWRGcm9tSlNPTihqc29uLCBjb250ZXh0KSxcbiAgICAgICAgICBwYXJhbWV0ZXJzID0gcGFyYW1ldGVyc0Zyb21KU09OKGpzb24sIGNvbnRleHQpLFxuICAgICAgICAgIHByb2NlZHVyZU5vZGUgPSBjb250ZXh0LmZpbmRQcm9jZWR1cmVOb2RlKGxhYmVsKSxcbiAgICAgICAgICByZXR1cm5CbG9jayA9IG51bGwsIC8vL1xuICAgICAgICAgIG5vZGUgPSBwcm9jZWR1cmVOb2RlLCAvLy9cbiAgICAgICAgICBwcm9jZWR1cmUgPSBuZXcgUHJvY2VkdXJlKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdHlwZSwgbGFiZWwsIGV4cG9ydGVkLCBwYXJhbWV0ZXJzLCByZXR1cm5CbG9jayk7XG5cbiAgICByZXR1cm4gcHJvY2VkdXJlO1xuICB9XG59KTtcbiJdLCJuYW1lcyI6WyJjdXQiLCJjb250aW51YXRpb25VdGlsaXRpZXMiLCJicmVha2FibGUiLCJicmVha1BvaW50RnJvbUpTT04iLCJicmVha1BvaW50VG9CcmVha1BvaW50SlNPTiIsImJyZWFrUG9pbnRVdGlsaXRpZXMiLCJkZWZpbmUiLCJQcm9jZWR1cmUiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwidHlwZSIsImxhYmVsIiwiZXhwb3J0ZWQiLCJwYXJhbWV0ZXJzIiwicmV0dXJuQmxvY2siLCJnZXRUeXBlIiwiZ2V0TGFiZWwiLCJpc0V4cG9ydGVkIiwiZ2V0UGFyYW1ldGVycyIsImdldFJldHVybkJsb2NrIiwiZ2V0TmFtZSIsImlzQm9vbGVhbiIsImJvb2xlYW5UeXBlIiwiaXNCb29sZWFuVHlwZSIsImJvb2xlYW4iLCJnZXRQcm9jZWR1cmVOYW1lIiwibmFtZSIsInByb2NlZHVyZU5hbWUiLCJnZXRSZXR1cm5TdGF0ZW1lbnQiLCJjb21wYXJlUmVsZWFzZU5hbWUiLCJyZWxlYXNlTmFtZSIsImNvbXBhcmVQcm9jZWR1cmVOYW1lIiwiZ3VhcmFudGVlUmV0dXJuQmxvY2siLCJnZXROb2RlIiwiZ2V0Q29udGV4dCIsInByb2NlZHVyZU5vZGUiLCJyZXR1cm5CbG9ja0Zyb21Qcm9jZWR1cmVOb2RlIiwidmVyaWZ5IiwiZm9yd2FyZCIsImJhY2siLCJwcm9jZWR1cmVTdHJpbmciLCJnZXRTdHJpbmciLCJ0cmFjZSIsInByb2NlZHVyZVByZXNlbnQiLCJpc1Byb2NlZHVyZVByZXNlbnRCeVByb2NlZHVyZU5hbWUiLCJwcm9jZWR1cmUiLCJhZGRQcm9jZWR1cmUiLCJkZWJ1ZyIsImV2YWx1YXRlIiwidmFsdWVzIiwiY29tcGFyZVZhbHVlcyIsInZhcmlhYmxlcyIsInZhcmlhYmxlc0Zyb21WYWx1ZXNBbmRQYXJhbWV0ZXJzIiwidmFsdWUiLCJ2YWx1ZVR5cGUiLCJ0eXBlRXF1YWxUb1ZhbHVlVHlwZSIsImlzRXF1YWxUbyIsInR5cGVTdHJpbmciLCJ2YWx1ZVN0cmluZyIsInZhbHVlVHlwZVN0cmluZyIsIm1lc3NhZ2UiLCJleGNlcHRpb24iLCJFeGNlcHRpb24iLCJmcm9tTWVzc2FnZSIsImNhbGxOb21pbmFsbHkiLCJub21pbmFsVmFsdWVzIiwidmFsdWVzRnJvbU5vbWluYWxWYWx1ZXMiLCJ0b0pTT04iLCJqc29uIiwidHlwZUpTT04iLCJ0eXBlVG9UeXBlSlNPTiIsImxhYmVsSlNPTiIsImxhYmVsVG9MYWJlbEpTT04iLCJleHBvcnRlZEpKU09OIiwiZXhwb3J0ZWRUb0V4cG9ydGVkSlNPTiIsInBhcmFtZXRlcnNKU09OIiwicGFyYW1ldGVyc1RvUGFyYW1ldGVyc0pTT04iLCJnZXRCcmVha1BvaW50IiwiYnJlYWtQb2ludEpTT04iLCJmcm9tSlNPTiIsInR5cGVGcm9tSlNPTiIsImxhYmVsRnJvbUpTT04iLCJleHBvcnRlZEZyb21KU09OIiwicGFyYW1ldGVyc0Zyb21KU09OIiwiZmluZFByb2NlZHVyZU5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWVBOzs7ZUFBQTs7O2dDQWJvRTtrRUFFOUM7MEJBRUM7d0JBQ2lCO3lCQUNLOzRCQUNJO3NCQUN1SDs7Ozs7O0FBRXhLLE1BQU0sRUFBRUEsR0FBRyxFQUFFLEdBQUdDLHFDQUFxQixFQUMvQixFQUFFQyxTQUFTLEVBQUVDLGtCQUFrQixFQUFFQywwQkFBMEIsRUFBRSxHQUFHQyxtQ0FBbUI7TUFFekYsV0FBZUMsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyxrQkFBa0JDLHVCQUFPO0lBQ25ELFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsSUFBSSxFQUFFQyxLQUFLLEVBQUVDLFFBQVEsRUFBRUMsVUFBVSxFQUFFQyxXQUFXLENBQUU7UUFDN0YsS0FBSyxDQUFDUixTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLEtBQUssR0FBR0E7UUFDYixJQUFJLENBQUNDLFFBQVEsR0FBR0E7UUFDaEIsSUFBSSxDQUFDQyxVQUFVLEdBQUdBO1FBQ2xCLElBQUksQ0FBQ0MsV0FBVyxHQUFHQTtJQUNyQjtJQUVBQyxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUNMLElBQUk7SUFDbEI7SUFFQU0sV0FBVztRQUNULE9BQU8s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
141
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Byb2NlZHVyZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCwgYnJlYWtQb2ludFV0aWxpdGllcywgY29udGludWF0aW9uVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgZGVmaW5lIH0gZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5pbXBvcnQgeyB2YWx1ZXNGcm9tTm9taW5hbFZhbHVlcyB9IGZyb20gXCIuLi91dGlsaXRpZXMvdmFsdWVzXCI7XG5pbXBvcnQgeyByZXR1cm5CbG9ja0Zyb21Qcm9jZWR1cmVOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9lbGVtZW50XCI7XG5pbXBvcnQgeyB2YXJpYWJsZXNGcm9tVmFsdWVzQW5kUGFyYW1ldGVycyB9IGZyb20gXCIuLi91dGlsaXRpZXMvcGFyYW1ldGVyc1wiO1xuaW1wb3J0IHsgdHlwZUZyb21KU09OLCBsYWJlbEZyb21KU09OLCBleHBvcnRlZEZyb21KU09OLCBwYXJhbWV0ZXJzRnJvbUpTT04sIHR5cGVUb1R5cGVKU09OLCBsYWJlbFRvTGFiZWxKU09OLCBleHBvcnRlZFRvRXhwb3J0ZWRKU09OLCBwYXJhbWV0ZXJzVG9QYXJhbWV0ZXJzSlNPTiB9IGZyb20gXCIuLi91dGlsaXRpZXMvanNvblwiO1xuXG5jb25zdCB7IGN1dCB9ID0gY29udGludWF0aW9uVXRpbGl0aWVzLFxuICAgICAgeyBicmVha2FibGUsIGJyZWFrUG9pbnRGcm9tSlNPTiwgYnJlYWtQb2ludFRvQnJlYWtQb2ludEpTT04gfSA9IGJyZWFrUG9pbnRVdGlsaXRpZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBQcm9jZWR1cmUgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB0eXBlLCBsYWJlbCwgZXhwb3J0ZWQsIHBhcmFtZXRlcnMsIHJldHVybkJsb2NrKSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gICAgdGhpcy5sYWJlbCA9IGxhYmVsO1xuICAgIHRoaXMuZXhwb3J0ZWQgPSBleHBvcnRlZDtcbiAgICB0aGlzLnBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzO1xuICAgIHRoaXMucmV0dXJuQmxvY2sgPSByZXR1cm5CbG9jaztcbiAgfVxuXG4gIGdldFR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgfVxuXG4gIGdldExhYmVsKCkge1xuICAgIHJldHVybiB0aGlzLmxhYmVsO1xuICB9XG5cbiAgaXNFeHBvcnRlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5leHBvcnRlZDtcbiAgfVxuXG4gIGdldFBhcmFtZXRlcnMoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyYW1ldGVycztcbiAgfVxuXG4gIGdldFJldHVybkJsb2NrKCkge1xuICAgIHJldHVybiB0aGlzLnJldHVybkJsb2NrO1xuICB9XG5cbiAgZ2V0TmFtZSgpIHsgcmV0dXJuIHRoaXMubGFiZWwuZ2V0TmFtZSgpOyB9XG5cbiAgaXNCb29sZWFuKCkge1xuICAgIGNvbnN0IHR5cGUgPSB0aGlzLmdldFR5cGUoKSxcbiAgICAgICAgICBib29sZWFuVHlwZSA9IHR5cGUuaXNCb29sZWFuVHlwZSgpLFxuICAgICAgICAgIGJvb2xlYW4gPSBib29sZWFuVHlwZTsgIC8vL1xuXG4gICAgcmV0dXJuIGJvb2xlYW47XG4gIH1cblxuICBnZXRQcm9jZWR1cmVOYW1lKCkge1xuICAgIGNvbnN0IG5hbWUgPSB0aGlzLmdldE5hbWUoKSxcbiAgICAgICAgICBwcm9jZWR1cmVOYW1lID0gbmFtZTsgLy8vXG5cbiAgICByZXR1cm4gcHJvY2VkdXJlTmFtZTtcbiAgfVxuXG4gIGdldFJldHVyblN0YXRlbWVudCgpIHsgcmV0dXJuIHRoaXMucmV0dXJuQmxvY2suZ2V0UmV0dXJuU3RhdGVtZW50KCk7IH1cblxuICBjb21wYXJlUmVsZWFzZU5hbWUocmVsZWFzZU5hbWUpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5jb21wYXJlUmVsZWFzZU5hbWUocmVsZWFzZU5hbWUpOyB9XG5cbiAgY29tcGFyZVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSkgeyByZXR1cm4gdGhpcy5sYWJlbC5jb21wYXJlUHJvY2VkdXJlTmFtZShwcm9jZWR1cmVOYW1lKTsgfVxuXG4gIGd1YXJhbnRlZVJldHVybkJsb2NrKCkge1xuICAgIGlmICh0aGlzLnJldHVybkJsb2NrICE9IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBub2RlID0gdGhpcy5nZXROb2RlKCksXG4gICAgICAgICAgY29udGV4dCA9IHRoaXMuZ2V0Q29udGV4dCgpLFxuICAgICAgICAgIHByb2NlZHVyZU5vZGUgPSBub2RlO1xuXG4gICAgdGhpcy5yZXR1cm5CbG9jayA9IHJldHVybkJsb2NrRnJvbVByb2NlZHVyZU5vZGUocHJvY2VkdXJlTm9kZSwgY29udGV4dCk7XG4gIH1cblxuICB2ZXJpZnkgPSBicmVha2FibGUoZnVuY3Rpb24gKGNvbnRleHQsIGZvcndhcmQsIGJhY2spIHtcbiAgICBmb3J3YXJkID0gY3V0KGZvcndhcmQsIGJhY2spOyAvLy9cblxuICAgIGNvbnN0IHByb2NlZHVyZVN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7XG5cbiAgICBjb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke3Byb2NlZHVyZVN0cmluZ30nIGZ1bmN0aW9uLi4uYCk7XG5cbiAgICBjb25zdCBwcm9jZWR1cmVOYW1lID0gdGhpcy5nZXRQcm9jZWR1cmVOYW1lKCksXG4gICAgICAgICAgcHJvY2VkdXJlUHJlc2VudCA9IGNvbnRleHQuaXNQcm9jZWR1cmVQcmVzZW50QnlQcm9jZWR1cmVOYW1lKHByb2NlZHVyZU5hbWUpO1xuXG4gICAgaWYgKHByb2NlZHVyZVByZXNlbnQpIHtcbiAgICAgIGNvbnRleHQudHJhY2UoYFRoZSAnJHtwcm9jZWR1cmVTdHJpbmd9JyBmdW5jdGlvbiBpcyBhbHJlYWR5IHByZXNlbnQuYCk7XG5cbiAgICAgIHJldHVybiBiYWNrKCk7XG4gICAgfVxuXG4gICAgY29uc3QgcHJvY2VkdXJlID0gdGhpczsgLy8vXG5cbiAgICBjb250ZXh0LmFkZFByb2NlZHVyZShwcm9jZWR1cmUpO1xuXG4gICAgY29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke3Byb2NlZHVyZVN0cmluZ30nIGZ1bmN0aW9uLmApO1xuXG4gICAgcmV0dXJuIGZvcndhcmQoY29udGV4dCwgYmFjayk7XG4gIH0pO1xuXG4gIGV2YWx1YXRlID0gYnJlYWthYmxlKGZ1bmN0aW9uICh2YWx1ZXMsIGNvbnRleHQsIGZvcndhcmQsIGJhY2spIHtcbiAgICBmb3J3YXJkID0gY3V0KGZvcndhcmQsIGJhY2spO1xuXG4gICAgY29uc3QgcHJvY2VkdXJlU3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTsgIC8vL1xuXG4gICAgY29udGV4dC50cmFjZShgQ2FsbGluZyB0aGUgJyR7cHJvY2VkdXJlU3RyaW5nfScgZnVuY3Rpb24uLi5gKTtcblxuICAgIHJldHVybiB0aGlzLnBhcmFtZXRlcnMuY29tcGFyZVZhbHVlcyh2YWx1ZXMsIGNvbnRleHQsIChiYWNrKSA9PiB7XG4gICAgICB0aGlzLmd1YXJhbnRlZVJldHVybkJsb2NrKCk7XG5cbiAgICAgIGNvbnN0IHZhcmlhYmxlcyA9IHZhcmlhYmxlc0Zyb21WYWx1ZXNBbmRQYXJhbWV0ZXJzKHZhbHVlcywgdGhpcy5wYXJhbWV0ZXJzLCBjb250ZXh0KTtcblxuICAgICAgcmV0dXJuIHRoaXMucmV0dXJuQmxvY2suZXZhbHVhdGUodmFyaWFibGVzLCBjb250ZXh0LCAodmFsdWUsIGJhY2spID0+IHtcbiAgICAgICAgY29uc3QgdmFsdWVUeXBlID0gdmFsdWUuZ2V0VHlwZSgpLFxuICAgICAgICAgICAgICB0eXBlRXF1YWxUb1ZhbHVlVHlwZSA9IHRoaXMudHlwZS5pc0VxdWFsVG8odmFsdWVUeXBlKTtcblxuICAgICAgICBpZiAoIXR5cGVFcXVhbFRvVmFsdWVUeXBlKSB7XG4gICAgICAgICAgY29uc3QgdHlwZVN0cmluZyA9IHRoaXMudHlwZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgICAgICB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICAgICAgICAgIHZhbHVlVHlwZVN0cmluZyA9IHZhbHVlVHlwZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgICAgICBtZXNzYWdlID0gYFRoZSAnJHt2YWx1ZVN0cmluZ30nIHZhbHVlJ3MgJyR7dmFsdWVUeXBlU3RyaW5nfScgdHlwZSBpcyBub3QgZXF1YWwgdG8gdGhlICcke3Byb2NlZHVyZVN0cmluZ30nIGZ1bmN0aW9uJ3MgJyR7dHlwZVN0cmluZ30nIHR5cGUuYCxcbiAgICAgICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgICAgICByZXR1cm4gYmFjayhleGNlcHRpb24pO1xuICAgICAgICB9XG5cbiAgICAgICAgY29udGV4dC5kZWJ1ZyhgLi4uY2FsbGVkIHRoZSAnJHtwcm9jZWR1cmVTdHJpbmd9JyBmdW5jdGlvbi5gKTtcblxuICAgICAgICByZXR1cm4gZm9yd2FyZCh2YWx1ZSwgYmFjayk7XG4gICAgICB9LCBiYWNrKTtcbiAgICB9LCBiYWNrKTtcbiAgfSk7XG5cbiAgY2FsbE5vbWluYWxseShub21pbmFsVmFsdWVzLCBmb3J3YXJkLCBiYWNrKSB7XG4gICAgY29uc3QgY29udGV4dCA9IHRoaXMuZ2V0Q29udGV4dCgpLFxuICAgICAgICAgIHByb2NlZHVyZVN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7ICAvLy9cblxuICAgIGNvbnRleHQudHJhY2UoYENhbGxpbmcgdGhlICcke3Byb2NlZHVyZVN0cmluZ30nIGZ1bmN0aW9uIG5vbWluYWxseS4uLmApO1xuXG4gICAgY29uc3QgdmFsdWVzID0gdmFsdWVzRnJvbU5vbWluYWxWYWx1ZXMobm9taW5hbFZhbHVlcywgY29udGV4dCk7XG5cbiAgICByZXR1cm4gdGhpcy5ldmFsdWF0ZSh2YWx1ZXMsIGNvbnRleHQsICh2YWx1ZSwgYmFjaykgPT4ge1xuICAgICAgY29udGV4dC5kZWJ1ZyhgLi4uY2FsbGVkIHRoZSAnJHtwcm9jZWR1cmVTdHJpbmd9JyBmdW5jdGlvbiBub21pbmFsbHkuYCk7XG5cbiAgICAgIHJldHVybiBmb3J3YXJkKHZhbHVlLCBiYWNrKTtcbiAgICB9LCBiYWNrKTtcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBsZXQganNvbjtcblxuICAgIGNvbnN0IHN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgdHlwZUpTT04gPSB0eXBlVG9UeXBlSlNPTih0aGlzLnR5cGUpLFxuICAgICAgICAgIGxhYmVsSlNPTiA9IGxhYmVsVG9MYWJlbEpTT04odGhpcy5sYWJlbCksXG4gICAgICAgICAgZXhwb3J0ZWRKSlNPTiA9IGV4cG9ydGVkVG9FeHBvcnRlZEpTT04odGhpcy5leHBvcnRlZCksXG4gICAgICAgICAgcGFyYW1ldGVyc0pTT04gPSBwYXJhbWV0ZXJzVG9QYXJhbWV0ZXJzSlNPTih0aGlzLnBhcmFtZXRlcnMpO1xuXG4gICAgbGV0IGJyZWFrUG9pbnQ7XG5cbiAgICBicmVha1BvaW50ID0gdGhpcy5nZXRCcmVha1BvaW50KCk7XG5cbiAgICBjb25zdCBicmVha1BvaW50SlNPTiA9IGJyZWFrUG9pbnRUb0JyZWFrUG9pbnRKU09OKGJyZWFrUG9pbnQpO1xuXG4gICAgYnJlYWtQb2ludCA9IGJyZWFrUG9pbnRKU09OOyAgLy8vXG5cbiAgICBjb25zdCB0eXBlID0gdHlwZUpTT04sICAvLy9cbiAgICAgICAgICBsYWJlbCA9IGxhYmVsSlNPTiwgIC8vL1xuICAgICAgICAgIGV4cG9ydGVkID0gZXhwb3J0ZWRKSlNPTiwgLy8vXG4gICAgICAgICAgcGFyYW1ldGVycyA9IHBhcmFtZXRlcnNKU09OOyAgLy8vXG5cbiAgICBqc29uID0ge1xuICAgICAgc3RyaW5nLFxuICAgICAgYnJlYWtQb2ludCxcbiAgICAgIHR5cGUsXG4gICAgICBsYWJlbCxcbiAgICAgIGV4cG9ydGVkLFxuICAgICAgcGFyYW1ldGVyc1xuICAgIH07XG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJQcm9jZWR1cmVcIjtcblxuICBzdGF0aWMgZnJvbUpTT04oanNvbiwgY29udGV4dCkge1xuICAgIGNvbnN0IHsgc3RyaW5nIH0gPSBqc29uLFxuICAgICAgICAgIGJyZWFrUG9pbnQgPSBicmVha1BvaW50RnJvbUpTT04oanNvbiksXG4gICAgICAgICAgdHlwZSA9IHR5cGVGcm9tSlNPTihqc29uLCBjb250ZXh0KSxcbiAgICAgICAgICBsYWJlbCA9IGxhYmVsRnJvbUpTT04oanNvbiwgY29udGV4dCksXG4gICAgICAgICAgZXhwb3J0ZWQgPSBleHBvcnRlZEZyb21KU09OKGpzb24sIGNvbnRleHQpLFxuICAgICAgICAgIHBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzRnJvbUpTT04oanNvbiwgY29udGV4dCksXG4gICAgICAgICAgcHJvY2VkdXJlTm9kZSA9IGNvbnRleHQuZmluZFByb2NlZHVyZU5vZGUobGFiZWwpLFxuICAgICAgICAgIHJldHVybkJsb2NrID0gbnVsbCwgLy8vXG4gICAgICAgICAgbm9kZSA9IHByb2NlZHVyZU5vZGUsIC8vL1xuICAgICAgICAgIHByb2NlZHVyZSA9IG5ldyBQcm9jZWR1cmUoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB0eXBlLCBsYWJlbCwgZXhwb3J0ZWQsIHBhcmFtZXRlcnMsIHJldHVybkJsb2NrKTtcblxuICAgIHJldHVybiBwcm9jZWR1cmU7XG4gIH1cbn0pO1xuIl0sIm5hbWVzIjpbImN1dCIsImNvbnRpbnVhdGlvblV0aWxpdGllcyIsImJyZWFrYWJsZSIsImJyZWFrUG9pbnRGcm9tSlNPTiIsImJyZWFrUG9pbnRUb0JyZWFrUG9pbnRKU09OIiwiYnJlYWtQb2ludFV0aWxpdGllcyIsImRlZmluZSIsIlByb2NlZHVyZSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ0eXBlIiwibGFiZWwiLCJleHBvcnRlZCIsInBhcmFtZXRlcnMiLCJyZXR1cm5CbG9jayIsImdldFR5cGUiLCJnZXRMYWJlbCIsImlzRXhwb3J0ZWQiLCJnZXRQYXJhbWV0ZXJzIiwiZ2V0UmV0dXJuQmxvY2siLCJnZXROYW1lIiwiaXNCb29sZWFuIiwiYm9vbGVhblR5cGUiLCJpc0Jvb2xlYW5UeXBlIiwiYm9vbGVhbiIsImdldFByb2NlZHVyZU5hbWUiLCJuYW1lIiwicHJvY2VkdXJlTmFtZSIsImdldFJldHVyblN0YXRlbWVudCIsImNvbXBhcmVSZWxlYXNlTmFtZSIsInJlbGVhc2VOYW1lIiwiY29tcGFyZVByb2NlZHVyZU5hbWUiLCJndWFyYW50ZWVSZXR1cm5CbG9jayIsImdldE5vZGUiLCJnZXRDb250ZXh0IiwicHJvY2VkdXJlTm9kZSIsInJldHVybkJsb2NrRnJvbVByb2NlZHVyZU5vZGUiLCJ2ZXJpZnkiLCJmb3J3YXJkIiwiYmFjayIsInByb2NlZHVyZVN0cmluZyIsImdldFN0cmluZyIsInRyYWNlIiwicHJvY2VkdXJlUHJlc2VudCIsImlzUHJvY2VkdXJlUHJlc2VudEJ5UHJvY2VkdXJlTmFtZSIsInByb2NlZHVyZSIsImFkZFByb2NlZHVyZSIsImRlYnVnIiwiZXZhbHVhdGUiLCJ2YWx1ZXMiLCJjb21wYXJlVmFsdWVzIiwidmFyaWFibGVzIiwidmFyaWFibGVzRnJvbVZhbHVlc0FuZFBhcmFtZXRlcnMiLCJ2YWx1ZSIsInZhbHVlVHlwZSIsInR5cGVFcXVhbFRvVmFsdWVUeXBlIiwiaXNFcXVhbFRvIiwidHlwZVN0cmluZyIsInZhbHVlU3RyaW5nIiwidmFsdWVUeXBlU3RyaW5nIiwibWVzc2FnZSIsImV4Y2VwdGlvbiIsIkV4Y2VwdGlvbiIsImZyb21NZXNzYWdlIiwiY2FsbE5vbWluYWxseSIsIm5vbWluYWxWYWx1ZXMiLCJ2YWx1ZXNGcm9tTm9taW5hbFZhbHVlcyIsInRvSlNPTiIsImpzb24iLCJ0eXBlSlNPTiIsInR5cGVUb1R5cGVKU09OIiwibGFiZWxKU09OIiwibGFiZWxUb0xhYmVsSlNPTiIsImV4cG9ydGVkSkpTT04iLCJleHBvcnRlZFRvRXhwb3J0ZWRKU09OIiwicGFyYW1ldGVyc0pTT04iLCJwYXJhbWV0ZXJzVG9QYXJhbWV0ZXJzSlNPTiIsImdldEJyZWFrUG9pbnQiLCJicmVha1BvaW50SlNPTiIsImZyb21KU09OIiwidHlwZUZyb21KU09OIiwibGFiZWxGcm9tSlNPTiIsImV4cG9ydGVkRnJvbUpTT04iLCJwYXJhbWV0ZXJzRnJvbUpTT04iLCJmaW5kUHJvY2VkdXJlTm9kZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBZUE7OztlQUFBOzs7Z0NBYm9FO2tFQUU5QzswQkFFQzt3QkFDaUI7eUJBQ0s7NEJBQ0k7c0JBQ3VIOzs7Ozs7QUFFeEssTUFBTSxFQUFFQSxHQUFHLEVBQUUsR0FBR0MscUNBQXFCLEVBQy9CLEVBQUVDLFNBQVMsRUFBRUMsa0JBQWtCLEVBQUVDLDBCQUEwQixFQUFFLEdBQUdDLG1DQUFtQjtNQUV6RixXQUFlQyxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLGtCQUFrQkMsdUJBQU87SUFDbkQsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxJQUFJLEVBQUVDLEtBQUssRUFBRUMsUUFBUSxFQUFFQyxVQUFVLEVBQUVDLFdBQVcsQ0FBRTtRQUM3RixLQUFLLENBQUNSLFNBQVNDLFFBQVFDLE1BQU1DO1FBRTdCLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTtRQUNaLElBQUksQ0FBQ0MsS0FBSyxHQUFHQTtRQUNiLElBQUksQ0FBQ0MsUUFBUSxHQUFHQTtRQUNoQixJQUFJLENBQUNDLFVBQVUsR0FBR0E7UUFDbEIsSUFBSSxDQUFDQyxXQUFXLEdBQUdBO0lBQ3JCO0lBRUFDLFVBQVU7UUFDUixPQUFPLElB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
@@ -12,6 +12,7 @@ const _occamlanguages = require("occam-languages");
12
12
  const _exception = /*#__PURE__*/ _interop_require_default(require("../exception"));
13
13
  const _context = require("../utilities/context");
14
14
  const _elements = require("../elements");
15
+ const _string = require("../utilities/string");
15
16
  function _interop_require_default(obj) {
16
17
  return obj && obj.__esModule ? obj : {
17
18
  default: obj
@@ -58,6 +59,12 @@ const _default = (0, _elements.define)(class ProcedureCall extends _occamlanguag
58
59
  }, back);
59
60
  }
60
61
  static name = "ProcedureCall";
62
+ static fromReferenceAndValues(reference, values, context) {
63
+ const procedureCallString = (0, _string.procedureCallStringFromReferenceAndValues)(reference, values), node = null, string = procedureCallString, breakPoint = null;
64
+ context = null;
65
+ const procedureCall = new ProcedureCall(context, string, node, breakPoint, reference, values);
66
+ return procedureCall;
67
+ }
61
68
  });
62
69
 
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Byb2NlZHVyZUNhbGwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBmcmVlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9jb250ZXh0XCI7XG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIFByb2NlZHVyZUNhbGwgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCByZWZlcmVuY2UsIHZhbHVlcykge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLnJlZmVyZW5jZSA9IHJlZmVyZW5jZTtcbiAgICB0aGlzLnZhbHVlcyA9IHZhbHVlcztcbiAgfVxuXG4gIGdldFJlZmVyZW5jZSgpIHtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2U7XG4gIH1cblxuICBnZXRWYWx1ZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVzO1xuICB9XG5cbiAgZ2V0UHJvY2VkdXJlTmFtZSgpIHsgcmV0dXJuIHRoaXMucmVmZXJlbmNlLmdldFByb2NlZHVyZU5hbWUoKTsgfVxuXG4gIGV2YWx1YXRlKGNvbnRleHQsIGZvcndhcmQsIGJhY2spIHtcbiAgICBjb25zdCBwcm9jZWR1cmVDYWxsU3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTsgIC8vL1xuXG4gICAgY29udGV4dC50cmFjZShgRXZhbHVhdGluZyB0aGUgJyR7cHJvY2VkdXJlQ2FsbFN0cmluZ30nIGZ1bmN0aW9uIGNhbGwuLi5gKTtcblxuICAgIGNvbnN0IHByb2NlZHVyZU5hbWUgPSB0aGlzLmdldFByb2NlZHVyZU5hbWUoKSxcbiAgICAgICAgICBwcm9jZWR1cmVQcmVzZW50ID0gY29udGV4dC5pc1Byb2NlZHVyZVByZXNlbnRCeVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSksXG4gICAgICAgICAgaW1wb3J0ZWRQcm9jZWR1cmVQcmVzZW50ID0gY29udGV4dC5pc0ltcG9ydGVkUHJvY2VkdXJlUHJlc2VudEJ5UHJvY2VkdXJlTmFtZShwcm9jZWR1cmVOYW1lKTtcblxuICAgIGlmICghcHJvY2VkdXJlUHJlc2VudCAmJiAhaW1wb3J0ZWRQcm9jZWR1cmVQcmVzZW50KSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYFRoZSAnJHtwcm9jZWR1cmVDYWxsU3RyaW5nfScgZnVuY3Rpb24gaXMgbm90IHByZXNlbnQuJ2AsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHJldHVybiBiYWNrKGV4Y2VwdGlvbik7XG4gICAgfVxuXG4gICAgbGV0IHByb2NlZHVyZTtcblxuICAgIGlmICghaW1wb3J0ZWRQcm9jZWR1cmVQcmVzZW50KSB7XG4gICAgICBwcm9jZWR1cmUgPSBjb250ZXh0LmZpbmRQcm9jZWR1cmVCeVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGltcG9ydGVkUHJvY2VkdXJlID0gY29udGV4dC5maW5kSW1wb3J0ZWRQcm9jZWR1cmVCeVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSk7XG5cbiAgICAgIHByb2NlZHVyZSA9IGltcG9ydGVkUHJvY2VkdXJlOyAgLy8vXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMudmFsdWVzLmV2YWx1YXRlKGNvbnRleHQsICh2YWx1ZXMsIGJhY2spID0+IHtcbiAgICAgIHJldHVybiBmcmVlKChjb250ZXh0KSA9PiB7XG4gICAgICAgIHJldHVybiBwcm9jZWR1cmUuZXZhbHVhdGUodmFsdWVzLCBjb250ZXh0LCAodmFsdWUsIGJhY2spID0+IHtcbiAgICAgICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpO1xuXG4gICAgICAgICAgY29udGV4dC5kZWJ1ZyhgLi4uZXZhbHVhdGVkIHRoZSAnJHtwcm9jZWR1cmVDYWxsU3RyaW5nfScgZnVuY3Rpb24gY2FsbCBhcyAnJHt2YWx1ZVN0cmluZ30nLmApO1xuXG4gICAgICAgICAgcmV0dXJuIGZvcndhcmQodmFsdWUsIGJhY2spO1xuICAgICAgICB9LCBiYWNrKTtcbiAgICAgIH0sIGNvbnRleHQpO1xuICAgIH0sIGJhY2spO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlByb2NlZHVyZUNhbGxcIjtcbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIlByb2NlZHVyZUNhbGwiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwicmVmZXJlbmNlIiwidmFsdWVzIiwiZ2V0UmVmZXJlbmNlIiwiZ2V0VmFsdWVzIiwiZ2V0UHJvY2VkdXJlTmFtZSIsImV2YWx1YXRlIiwiZm9yd2FyZCIsImJhY2siLCJwcm9jZWR1cmVDYWxsU3RyaW5nIiwiZ2V0U3RyaW5nIiwidHJhY2UiLCJwcm9jZWR1cmVOYW1lIiwicHJvY2VkdXJlUHJlc2VudCIsImlzUHJvY2VkdXJlUHJlc2VudEJ5UHJvY2VkdXJlTmFtZSIsImltcG9ydGVkUHJvY2VkdXJlUHJlc2VudCIsImlzSW1wb3J0ZWRQcm9jZWR1cmVQcmVzZW50QnlQcm9jZWR1cmVOYW1lIiwibWVzc2FnZSIsImV4Y2VwdGlvbiIsIkV4Y2VwdGlvbiIsImZyb21NZXNzYWdlIiwicHJvY2VkdXJlIiwiZmluZFByb2NlZHVyZUJ5UHJvY2VkdXJlTmFtZSIsImltcG9ydGVkUHJvY2VkdXJlIiwiZmluZEltcG9ydGVkUHJvY2VkdXJlQnlQcm9jZWR1cmVOYW1lIiwiZnJlZSIsInZhbHVlIiwidmFsdWVTdHJpbmciLCJkZWJ1ZyIsIm5hbWUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVNBOzs7ZUFBQTs7O2dDQVB3QjtrRUFFRjt5QkFFRDswQkFDRTs7Ozs7O01BRXZCLFdBQWVBLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsc0JBQXNCQyx1QkFBTztJQUN2RCxZQUFZQyxPQUFPLEVBQUVDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxVQUFVLEVBQUVDLFNBQVMsRUFBRUMsTUFBTSxDQUFFO1FBQ2hFLEtBQUssQ0FBQ0wsU0FBU0MsUUFBUUMsTUFBTUM7UUFFN0IsSUFBSSxDQUFDQyxTQUFTLEdBQUdBO1FBQ2pCLElBQUksQ0FBQ0MsTUFBTSxHQUFHQTtJQUNoQjtJQUVBQyxlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUNGLFNBQVM7SUFDdkI7SUFFQUcsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDRixNQUFNO0lBQ3BCO0lBRUFHLG1CQUFtQjtRQUFFLE9BQU8sSUFBSSxDQUFDSixTQUFTLENBQUNJLGdCQUFnQjtJQUFJO0lBRS9EQyxTQUFTVCxPQUFPLEVBQUVVLE9BQU8sRUFBRUMsSUFBSSxFQUFFO1FBQy9CLE1BQU1DLHNCQUFzQixJQUFJLENBQUNDLFNBQVMsSUFBSyxHQUFHO1FBRWxEYixRQUFRYyxLQUFLLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRUYsb0JBQW9CLGtCQUFrQixDQUFDO1FBRXhFLE1BQU1HLGdCQUFnQixJQUFJLENBQUNQLGdCQUFnQixJQUNyQ1EsbUJBQW1CaEIsUUFBUWlCLGlDQUFpQyxDQUFDRixnQkFDN0RHLDJCQUEyQmxCLFFBQVFtQix5Q0FBeUMsQ0FBQ0o7UUFFbkYsSUFBSSxDQUFDQyxvQkFBb0IsQ0FBQ0UsMEJBQTBCO1lBQ2xELE1BQU1FLFVBQVUsQ0FBQyxLQUFLLEVBQUVSLG9CQUFvQiwyQkFBMkIsQ0FBQyxFQUNsRVMsWUFBWUMsa0JBQVMsQ0FBQ0MsV0FBVyxDQUFDSDtZQUV4QyxPQUFPVCxLQUFLVTtRQUNkO1FBRUEsSUFBSUc7UUFFSixJQUFJLENBQUNOLDBCQUEwQjtZQUM3Qk0sWUFBWXhCLFFBQVF5Qiw0QkFBNEIsQ0FBQ1Y7UUFDbkQsT0FBTztZQUNMLE1BQU1XLG9CQUFvQjFCLFFBQVEyQixvQ0FBb0MsQ0FBQ1o7WUFFdkVTLFlBQVlFLG1CQUFvQixHQUFHO1FBQ3JDO1FBRUEsT0FBTyxJQUFJLENBQUNyQixNQUFNLENBQUNJLFFBQVEsQ0FBQ1QsU0FBUyxDQUFDSyxRQUFRTTtZQUM1QyxPQUFPaUIsSUFBQUEsYUFBSSxFQUFDLENBQUM1QjtnQkFDWCxPQUFPd0IsVUFBVWYsUUFBUSxDQUFDSixRQUFRTCxTQUFTLENBQUM2QixPQUFPbEI7b0JBQ2pELE1BQU1tQixjQUFjRCxNQUFNaEIsU0FBUztvQkFFbkNiLFFBQVErQixLQUFLLENBQUMsQ0FBQyxrQkFBa0IsRUFBRW5CLG9CQUFvQixvQkFBb0IsRUFBRWtCLFlBQVksRUFBRSxDQUFDO29CQUU1RixPQUFPcEIsUUFBUW1CLE9BQU9sQjtnQkFDeEIsR0FBR0E7WUFDTCxHQUFHWDtRQUNMLEdBQUdXO0lBQ0w7SUFFQSxPQUFPcUIsT0FBTyxnQkFBZ0I7QUFDaEMifQ==
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Byb2NlZHVyZUNhbGwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBmcmVlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9jb250ZXh0XCI7XG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcbmltcG9ydCB7IHByb2NlZHVyZUNhbGxTdHJpbmdGcm9tUmVmZXJlbmNlQW5kVmFsdWVzIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9zdHJpbmdcIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIFByb2NlZHVyZUNhbGwgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCByZWZlcmVuY2UsIHZhbHVlcykge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLnJlZmVyZW5jZSA9IHJlZmVyZW5jZTtcbiAgICB0aGlzLnZhbHVlcyA9IHZhbHVlcztcbiAgfVxuXG4gIGdldFJlZmVyZW5jZSgpIHtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2U7XG4gIH1cblxuICBnZXRWYWx1ZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVzO1xuICB9XG5cbiAgZ2V0UHJvY2VkdXJlTmFtZSgpIHsgcmV0dXJuIHRoaXMucmVmZXJlbmNlLmdldFByb2NlZHVyZU5hbWUoKTsgfVxuXG4gIGV2YWx1YXRlKGNvbnRleHQsIGZvcndhcmQsIGJhY2spIHtcbiAgICBjb25zdCBwcm9jZWR1cmVDYWxsU3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTsgIC8vL1xuXG4gICAgY29udGV4dC50cmFjZShgRXZhbHVhdGluZyB0aGUgJyR7cHJvY2VkdXJlQ2FsbFN0cmluZ30nIGZ1bmN0aW9uIGNhbGwuLi5gKTtcblxuICAgIGNvbnN0IHByb2NlZHVyZU5hbWUgPSB0aGlzLmdldFByb2NlZHVyZU5hbWUoKSxcbiAgICAgICAgICBwcm9jZWR1cmVQcmVzZW50ID0gY29udGV4dC5pc1Byb2NlZHVyZVByZXNlbnRCeVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSksXG4gICAgICAgICAgaW1wb3J0ZWRQcm9jZWR1cmVQcmVzZW50ID0gY29udGV4dC5pc0ltcG9ydGVkUHJvY2VkdXJlUHJlc2VudEJ5UHJvY2VkdXJlTmFtZShwcm9jZWR1cmVOYW1lKTtcblxuICAgIGlmICghcHJvY2VkdXJlUHJlc2VudCAmJiAhaW1wb3J0ZWRQcm9jZWR1cmVQcmVzZW50KSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYFRoZSAnJHtwcm9jZWR1cmVDYWxsU3RyaW5nfScgZnVuY3Rpb24gaXMgbm90IHByZXNlbnQuJ2AsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHJldHVybiBiYWNrKGV4Y2VwdGlvbik7XG4gICAgfVxuXG4gICAgbGV0IHByb2NlZHVyZTtcblxuICAgIGlmICghaW1wb3J0ZWRQcm9jZWR1cmVQcmVzZW50KSB7XG4gICAgICBwcm9jZWR1cmUgPSBjb250ZXh0LmZpbmRQcm9jZWR1cmVCeVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGltcG9ydGVkUHJvY2VkdXJlID0gY29udGV4dC5maW5kSW1wb3J0ZWRQcm9jZWR1cmVCeVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSk7XG5cbiAgICAgIHByb2NlZHVyZSA9IGltcG9ydGVkUHJvY2VkdXJlOyAgLy8vXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMudmFsdWVzLmV2YWx1YXRlKGNvbnRleHQsICh2YWx1ZXMsIGJhY2spID0+IHtcbiAgICAgIHJldHVybiBmcmVlKChjb250ZXh0KSA9PiB7XG4gICAgICAgIHJldHVybiBwcm9jZWR1cmUuZXZhbHVhdGUodmFsdWVzLCBjb250ZXh0LCAodmFsdWUsIGJhY2spID0+IHtcbiAgICAgICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpO1xuXG4gICAgICAgICAgY29udGV4dC5kZWJ1ZyhgLi4uZXZhbHVhdGVkIHRoZSAnJHtwcm9jZWR1cmVDYWxsU3RyaW5nfScgZnVuY3Rpb24gY2FsbCBhcyAnJHt2YWx1ZVN0cmluZ30nLmApO1xuXG4gICAgICAgICAgcmV0dXJuIGZvcndhcmQodmFsdWUsIGJhY2spO1xuICAgICAgICB9LCBiYWNrKTtcbiAgICAgIH0sIGNvbnRleHQpO1xuICAgIH0sIGJhY2spO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlByb2NlZHVyZUNhbGxcIjtcblxuICBzdGF0aWMgZnJvbVJlZmVyZW5jZUFuZFZhbHVlcyhyZWZlcmVuY2UsIHZhbHVlcywgY29udGV4dCkge1xuICAgIGNvbnN0IHByb2NlZHVyZUNhbGxTdHJpbmcgPSBwcm9jZWR1cmVDYWxsU3RyaW5nRnJvbVJlZmVyZW5jZUFuZFZhbHVlcyhyZWZlcmVuY2UsIHZhbHVlcyksXG4gICAgICAgICAgbm9kZSA9IG51bGwsXG4gICAgICAgICAgc3RyaW5nID0gcHJvY2VkdXJlQ2FsbFN0cmluZywgLy8vXG4gICAgICAgICAgYnJlYWtQb2ludCA9IG51bGw7XG5cbiAgICBjb250ZXh0ID0gbnVsbDtcblxuICAgIGNvbnN0IHByb2NlZHVyZUNhbGwgPSBuZXcgUHJvY2VkdXJlQ2FsbChjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIHJlZmVyZW5jZSwgdmFsdWVzKTtcblxuICAgIHJldHVybiBwcm9jZWR1cmVDYWxsO1xuICB9XG59KTtcbiJdLCJuYW1lcyI6WyJkZWZpbmUiLCJQcm9jZWR1cmVDYWxsIiwiRWxlbWVudCIsImNvbnRleHQiLCJzdHJpbmciLCJub2RlIiwiYnJlYWtQb2ludCIsInJlZmVyZW5jZSIsInZhbHVlcyIsImdldFJlZmVyZW5jZSIsImdldFZhbHVlcyIsImdldFByb2NlZHVyZU5hbWUiLCJldmFsdWF0ZSIsImZvcndhcmQiLCJiYWNrIiwicHJvY2VkdXJlQ2FsbFN0cmluZyIsImdldFN0cmluZyIsInRyYWNlIiwicHJvY2VkdXJlTmFtZSIsInByb2NlZHVyZVByZXNlbnQiLCJpc1Byb2NlZHVyZVByZXNlbnRCeVByb2NlZHVyZU5hbWUiLCJpbXBvcnRlZFByb2NlZHVyZVByZXNlbnQiLCJpc0ltcG9ydGVkUHJvY2VkdXJlUHJlc2VudEJ5UHJvY2VkdXJlTmFtZSIsIm1lc3NhZ2UiLCJleGNlcHRpb24iLCJFeGNlcHRpb24iLCJmcm9tTWVzc2FnZSIsInByb2NlZHVyZSIsImZpbmRQcm9jZWR1cmVCeVByb2NlZHVyZU5hbWUiLCJpbXBvcnRlZFByb2NlZHVyZSIsImZpbmRJbXBvcnRlZFByb2NlZHVyZUJ5UHJvY2VkdXJlTmFtZSIsImZyZWUiLCJ2YWx1ZSIsInZhbHVlU3RyaW5nIiwiZGVidWciLCJuYW1lIiwiZnJvbVJlZmVyZW5jZUFuZFZhbHVlcyIsInByb2NlZHVyZUNhbGxTdHJpbmdGcm9tUmVmZXJlbmNlQW5kVmFsdWVzIiwicHJvY2VkdXJlQ2FsbCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBVUE7OztlQUFBOzs7Z0NBUndCO2tFQUVGO3lCQUVEOzBCQUNFO3dCQUNtQzs7Ozs7O01BRTFELFdBQWVBLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsc0JBQXNCQyx1QkFBTztJQUN2RCxZQUFZQyxPQUFPLEVBQUVDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxVQUFVLEVBQUVDLFNBQVMsRUFBRUMsTUFBTSxDQUFFO1FBQ2hFLEtBQUssQ0FBQ0wsU0FBU0MsUUFBUUMsTUFBTUM7UUFFN0IsSUFBSSxDQUFDQyxTQUFTLEdBQUdBO1FBQ2pCLElBQUksQ0FBQ0MsTUFBTSxHQUFHQTtJQUNoQjtJQUVBQyxlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUNGLFNBQVM7SUFDdkI7SUFFQUcsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDRixNQUFNO0lBQ3BCO0lBRUFHLG1CQUFtQjtRQUFFLE9BQU8sSUFBSSxDQUFDSixTQUFTLENBQUNJLGdCQUFnQjtJQUFJO0lBRS9EQyxTQUFTVCxPQUFPLEVBQUVVLE9BQU8sRUFBRUMsSUFBSSxFQUFFO1FBQy9CLE1BQU1DLHNCQUFzQixJQUFJLENBQUNDLFNBQVMsSUFBSyxHQUFHO1FBRWxEYixRQUFRYyxLQUFLLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRUYsb0JBQW9CLGtCQUFrQixDQUFDO1FBRXhFLE1BQU1HLGdCQUFnQixJQUFJLENBQUNQLGdCQUFnQixJQUNyQ1EsbUJBQW1CaEIsUUFBUWlCLGlDQUFpQyxDQUFDRixnQkFDN0RHLDJCQUEyQmxCLFFBQVFtQix5Q0FBeUMsQ0FBQ0o7UUFFbkYsSUFBSSxDQUFDQyxvQkFBb0IsQ0FBQ0UsMEJBQTBCO1lBQ2xELE1BQU1FLFVBQVUsQ0FBQyxLQUFLLEVBQUVSLG9CQUFvQiwyQkFBMkIsQ0FBQyxFQUNsRVMsWUFBWUMsa0JBQVMsQ0FBQ0MsV0FBVyxDQUFDSDtZQUV4QyxPQUFPVCxLQUFLVTtRQUNkO1FBRUEsSUFBSUc7UUFFSixJQUFJLENBQUNOLDBCQUEwQjtZQUM3Qk0sWUFBWXhCLFFBQVF5Qiw0QkFBNEIsQ0FBQ1Y7UUFDbkQsT0FBTztZQUNMLE1BQU1XLG9CQUFvQjFCLFFBQVEyQixvQ0FBb0MsQ0FBQ1o7WUFFdkVTLFlBQVlFLG1CQUFvQixHQUFHO1FBQ3JDO1FBRUEsT0FBTyxJQUFJLENBQUNyQixNQUFNLENBQUNJLFFBQVEsQ0FBQ1QsU0FBUyxDQUFDSyxRQUFRTTtZQUM1QyxPQUFPaUIsSUFBQUEsYUFBSSxFQUFDLENBQUM1QjtnQkFDWCxPQUFPd0IsVUFBVWYsUUFBUSxDQUFDSixRQUFRTCxTQUFTLENBQUM2QixPQUFPbEI7b0JBQ2pELE1BQU1tQixjQUFjRCxNQUFNaEIsU0FBUztvQkFFbkNiLFFBQVErQixLQUFLLENBQUMsQ0FBQyxrQkFBa0IsRUFBRW5CLG9CQUFvQixvQkFBb0IsRUFBRWtCLFlBQVksRUFBRSxDQUFDO29CQUU1RixPQUFPcEIsUUFBUW1CLE9BQU9sQjtnQkFDeEIsR0FBR0E7WUFDTCxHQUFHWDtRQUNMLEdBQUdXO0lBQ0w7SUFFQSxPQUFPcUIsT0FBTyxnQkFBZ0I7SUFFOUIsT0FBT0MsdUJBQXVCN0IsU0FBUyxFQUFFQyxNQUFNLEVBQUVMLE9BQU8sRUFBRTtRQUN4RCxNQUFNWSxzQkFBc0JzQixJQUFBQSxpREFBeUMsRUFBQzlCLFdBQVdDLFNBQzNFSCxPQUFPLE1BQ1BELFNBQVNXLHFCQUNUVCxhQUFhO1FBRW5CSCxVQUFVO1FBRVYsTUFBTW1DLGdCQUFnQixJQUFJckMsY0FBY0UsU0FBU0MsUUFBUUMsTUFBTUMsWUFBWUMsV0FBV0M7UUFFdEYsT0FBTzhCO0lBQ1Q7QUFDRiJ9
@@ -59,7 +59,7 @@ function _interop_require_wildcard(obj, nodeInterop) {
59
59
  }
60
60
  return newObj;
61
61
  }
62
- const { reduce } = _occamlanguages.continuationUtilities, { breakable } = _occamlanguages.breakPointUtilities;
62
+ const { reduce } = _occamlanguages.continuationUtilities, { unbreakable } = _occamlanguages.breakPointUtilities;
63
63
  const _default = (0, _elements.define)(class Reduce extends _occamlanguages.Element {
64
64
  constructor(context, string, node, breakPoint, variable, initialValue, anonymousProcedure){
65
65
  super(context, string, node, breakPoint);
@@ -76,9 +76,9 @@ const _default = (0, _elements.define)(class Reduce extends _occamlanguages.Elem
76
76
  getAnonymousProcedure() {
77
77
  return this.anonymousProcedure;
78
78
  }
79
- evaluate = breakable(function(context, forward, back) {
79
+ evaluate = unbreakable(function(context, forward, back) {
80
80
  const reduceString = this.getString();
81
- context.trace(`Evaluating the '${reduceString}' reduce...`);
81
+ context.trace(`Evaluating the '${reduceString}' function...`);
82
82
  return this.variable.evaluate(context, (value, back)=>{
83
83
  const valueType = value.getType(), valueTypeListType = valueType.isListType();
84
84
  if (!valueTypeListType) {
@@ -91,7 +91,7 @@ const _default = (0, _elements.define)(class Reduce extends _occamlanguages.Elem
91
91
  return this.evaluateAnonymousProcedure(currentValue, nominalValue, context, forward, back);
92
92
  }, initialValue, (value, back)=>{
93
93
  const valueString = value.getString();
94
- context.trace(`...evaluated the '${reduceString}' reduce as '${valueString}'.`);
94
+ context.trace(`...evaluated the '${reduceString}' function as '${valueString}'.`);
95
95
  return forward(value, back);
96
96
  }, back);
97
97
  }, back);
@@ -109,4 +109,4 @@ const _default = (0, _elements.define)(class Reduce extends _occamlanguages.Elem
109
109
  static name = "Reduce";
110
110
  });
111
111
 
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3JlZHVjZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCwgYnJlYWtQb2ludFV0aWxpdGllcywgY29udGludWF0aW9uVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgZWxlbWVudHMgZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgZGVmaW5lIH0gZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5pbXBvcnQgeyBMSVNUX1RZUEVfTkFNRSB9IGZyb20gXCIuLi90eXBlTmFtZXNcIjtcbmltcG9ydCB7IHZhbHVlRnJvbU5vbWluYWxWYWx1ZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvdmFsdWVcIjtcblxuY29uc3QgeyByZWR1Y2UgfSA9IGNvbnRpbnVhdGlvblV0aWxpdGllcyxcbiAgICAgIHsgYnJlYWthYmxlIH0gPSBicmVha1BvaW50VXRpbGl0aWVzO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgUmVkdWNlIGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdmFyaWFibGUsIGluaXRpYWxWYWx1ZSwgYW5vbnltb3VzUHJvY2VkdXJlKSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMudmFyaWFibGUgPSB2YXJpYWJsZTtcbiAgICB0aGlzLmluaXRpYWxWYWx1ZSA9IGluaXRpYWxWYWx1ZTtcbiAgICB0aGlzLmFub255bW91c1Byb2NlZHVyZSA9IGFub255bW91c1Byb2NlZHVyZTtcbiAgfVxuXG4gIGdldFZhcmlhYmxlKCkge1xuICAgIHJldHVybiB0aGlzLnZhcmlhYmxlO1xuICB9XG5cbiAgZ2V0SW5pdGlhbFZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxWYWx1ZTtcbiAgfVxuXG4gIGdldEFub255bW91c1Byb2NlZHVyZSgpIHtcbiAgICByZXR1cm4gdGhpcy5hbm9ueW1vdXNQcm9jZWR1cmU7XG4gIH1cblxuICBldmFsdWF0ZSA9IGJyZWFrYWJsZShmdW5jdGlvbiAoY29udGV4dCwgZm9yd2FyZCwgYmFjaykge1xuICAgIGNvbnN0IHJlZHVjZVN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7XG5cbiAgICBjb250ZXh0LnRyYWNlKGBFdmFsdWF0aW5nIHRoZSAnJHtyZWR1Y2VTdHJpbmd9JyByZWR1Y2UuLi5gKTtcblxuICAgIHJldHVybiB0aGlzLnZhcmlhYmxlLmV2YWx1YXRlKGNvbnRleHQsICh2YWx1ZSwgYmFjaykgPT4ge1xuICAgICAgY29uc3QgdmFsdWVUeXBlID0gdmFsdWUuZ2V0VHlwZSgpLFxuICAgICAgICAgICAgdmFsdWVUeXBlTGlzdFR5cGUgPSB2YWx1ZVR5cGUuaXNMaXN0VHlwZSgpO1xuXG4gICAgICBpZiAoIXZhbHVlVHlwZUxpc3RUeXBlKSB7XG4gICAgICAgIGNvbnN0IHZhbHVlU3RyaW5nID0gdmFsdWUuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICAgIG1lc3NhZ2UgPSBgVGhlICcke3ZhbHVlU3RyaW5nfScgdmFsdWUncyAnJHt2YWx1ZVR5cGV9JyB0eXBlIHNob3VsZCBiZSAnJHtMSVNUX1RZUEVfTkFNRX0nLmAsXG4gICAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgICByZXR1cm4gYmFjayhleGNlcHRpb24pO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBwcmltaXRpdmVWYWx1ZSA9IHZhbHVlLmdldFByaW1pdGl2ZVZhbHVlKCksXG4gICAgICAgICAgICBub21pbmFsVmFsdWVzID0gcHJpbWl0aXZlVmFsdWU7IC8vL1xuXG4gICAgICByZXR1cm4gdGhpcy5pbml0aWFsVmFsdWUuZXZhbHVhdGUoY29udGV4dCwgKGluaXRpYWxWYWx1ZSwgYmFjaykgPT4ge1xuICAgICAgICByZXR1cm4gcmVkdWNlKG5vbWluYWxWYWx1ZXMsIChjdXJyZW50VmFsdWUsIG5vbWluYWxWYWx1ZSwgZm9yd2FyZCwgYmFjaykgPT4ge1xuICAgICAgICAgIHJldHVybiB0aGlzLmV2YWx1YXRlQW5vbnltb3VzUHJvY2VkdXJlKGN1cnJlbnRWYWx1ZSwgbm9taW5hbFZhbHVlLCBjb250ZXh0LCBmb3J3YXJkLCBiYWNrKTtcbiAgICAgICAgfSwgaW5pdGlhbFZhbHVlLCAodmFsdWUsIGJhY2spID0+IHtcbiAgICAgICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpO1xuXG4gICAgICAgICAgY29udGV4dC50cmFjZShgLi4uZXZhbHVhdGVkIHRoZSAnJHtyZWR1Y2VTdHJpbmd9JyByZWR1Y2UgYXMgJyR7dmFsdWVTdHJpbmd9Jy5gKTtcblxuICAgICAgICAgIHJldHVybiBmb3J3YXJkKHZhbHVlLCBiYWNrKTtcbiAgICAgICAgfSwgYmFjayk7XG4gICAgICB9LCBiYWNrKTtcbiAgICB9LCBiYWNrKTtcbiAgfSk7XG5cbiAgZXZhbHVhdGVBbm9ueW1vdXNQcm9jZWR1cmUoY3VycmVudFZhbHVlLCBub21pbmFsVmFsdWUsIGNvbnRleHQsIGZvcndhcmQsIGJhY2spIHtcbiAgICBsZXQgdmFsdWU7XG5cbiAgICBjb25zdCB7IFZhbHVlcyB9ID0gZWxlbWVudHM7XG5cbiAgICB2YWx1ZSA9IGN1cnJlbnRWYWx1ZTsgLy8vXG5cbiAgICBjb25zdCB2YWx1ZXMgPSBWYWx1ZXMuZnJvbVZhbHVlKHZhbHVlLCBjb250ZXh0KTtcblxuICAgIHZhbHVlID0gdmFsdWVGcm9tTm9taW5hbFZhbHVlKG5vbWluYWxWYWx1ZSk7XG5cbiAgICB2YWx1ZXMuYWRkVmFsdWUodmFsdWUpO1xuXG4gICAgcmV0dXJuIHRoaXMuYW5vbnltb3VzUHJvY2VkdXJlLmV2YWx1YXRlKHZhbHVlcywgY29udGV4dCwgZm9yd2FyZCwgYmFjayk7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiUmVkdWNlXCI7XG59KTtcbiJdLCJuYW1lcyI6WyJyZWR1Y2UiLCJjb250aW51YXRpb25VdGlsaXRpZXMiLCJicmVha2FibGUiLCJicmVha1BvaW50VXRpbGl0aWVzIiwiZGVmaW5lIiwiUmVkdWNlIiwiRWxlbWVudCIsImNvbnRleHQiLCJzdHJpbmciLCJub2RlIiwiYnJlYWtQb2ludCIsInZhcmlhYmxlIiwiaW5pdGlhbFZhbHVlIiwiYW5vbnltb3VzUHJvY2VkdXJlIiwiZ2V0VmFyaWFibGUiLCJnZXRJbml0aWFsVmFsdWUiLCJnZXRBbm9ueW1vdXNQcm9jZWR1cmUiLCJldmFsdWF0ZSIsImZvcndhcmQiLCJiYWNrIiwicmVkdWNlU3RyaW5nIiwiZ2V0U3RyaW5nIiwidHJhY2UiLCJ2YWx1ZSIsInZhbHVlVHlwZSIsImdldFR5cGUiLCJ2YWx1ZVR5cGVMaXN0VHlwZSIsImlzTGlzdFR5cGUiLCJ2YWx1ZVN0cmluZyIsIm1lc3NhZ2UiLCJMSVNUX1RZUEVfTkFNRSIsImV4Y2VwdGlvbiIsIkV4Y2VwdGlvbiIsImZyb21NZXNzYWdlIiwicHJpbWl0aXZlVmFsdWUiLCJnZXRQcmltaXRpdmVWYWx1ZSIsIm5vbWluYWxWYWx1ZXMiLCJjdXJyZW50VmFsdWUiLCJub21pbmFsVmFsdWUiLCJldmFsdWF0ZUFub255bW91c1Byb2NlZHVyZSIsIlZhbHVlcyIsImVsZW1lbnRzIiwidmFsdWVzIiwiZnJvbVZhbHVlIiwidmFsdWVGcm9tTm9taW5hbFZhbHVlIiwiYWRkVmFsdWUiLCJuYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFjQTs7O2VBQUE7OztnQ0Fab0U7a0VBRS9DO2tFQUNDOzJCQUdTO3VCQUNPOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUV0QyxNQUFNLEVBQUVBLE1BQU0sRUFBRSxHQUFHQyxxQ0FBcUIsRUFDbEMsRUFBRUMsU0FBUyxFQUFFLEdBQUdDLG1DQUFtQjtNQUV6QyxXQUFl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
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3JlZHVjZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCwgYnJlYWtQb2ludFV0aWxpdGllcywgY29udGludWF0aW9uVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgZWxlbWVudHMgZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgZGVmaW5lIH0gZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5pbXBvcnQgeyBMSVNUX1RZUEVfTkFNRSB9IGZyb20gXCIuLi90eXBlTmFtZXNcIjtcbmltcG9ydCB7IHZhbHVlRnJvbU5vbWluYWxWYWx1ZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvdmFsdWVcIjtcblxuY29uc3QgeyByZWR1Y2UgfSA9IGNvbnRpbnVhdGlvblV0aWxpdGllcyxcbiAgICAgIHsgdW5icmVha2FibGUgfSA9IGJyZWFrUG9pbnRVdGlsaXRpZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBSZWR1Y2UgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB2YXJpYWJsZSwgaW5pdGlhbFZhbHVlLCBhbm9ueW1vdXNQcm9jZWR1cmUpIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQpO1xuXG4gICAgdGhpcy52YXJpYWJsZSA9IHZhcmlhYmxlO1xuICAgIHRoaXMuaW5pdGlhbFZhbHVlID0gaW5pdGlhbFZhbHVlO1xuICAgIHRoaXMuYW5vbnltb3VzUHJvY2VkdXJlID0gYW5vbnltb3VzUHJvY2VkdXJlO1xuICB9XG5cbiAgZ2V0VmFyaWFibGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFyaWFibGU7XG4gIH1cblxuICBnZXRJbml0aWFsVmFsdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuaW5pdGlhbFZhbHVlO1xuICB9XG5cbiAgZ2V0QW5vbnltb3VzUHJvY2VkdXJlKCkge1xuICAgIHJldHVybiB0aGlzLmFub255bW91c1Byb2NlZHVyZTtcbiAgfVxuXG4gIGV2YWx1YXRlID0gdW5icmVha2FibGUoZnVuY3Rpb24gKGNvbnRleHQsIGZvcndhcmQsIGJhY2spIHtcbiAgICBjb25zdCByZWR1Y2VTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpO1xuXG4gICAgY29udGV4dC50cmFjZShgRXZhbHVhdGluZyB0aGUgJyR7cmVkdWNlU3RyaW5nfScgZnVuY3Rpb24uLi5gKTtcblxuICAgIHJldHVybiB0aGlzLnZhcmlhYmxlLmV2YWx1YXRlKGNvbnRleHQsICh2YWx1ZSwgYmFjaykgPT4ge1xuICAgICAgY29uc3QgdmFsdWVUeXBlID0gdmFsdWUuZ2V0VHlwZSgpLFxuICAgICAgICAgICAgdmFsdWVUeXBlTGlzdFR5cGUgPSB2YWx1ZVR5cGUuaXNMaXN0VHlwZSgpO1xuXG4gICAgICBpZiAoIXZhbHVlVHlwZUxpc3RUeXBlKSB7XG4gICAgICAgIGNvbnN0IHZhbHVlU3RyaW5nID0gdmFsdWUuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICAgIG1lc3NhZ2UgPSBgVGhlICcke3ZhbHVlU3RyaW5nfScgdmFsdWUncyAnJHt2YWx1ZVR5cGV9JyB0eXBlIHNob3VsZCBiZSAnJHtMSVNUX1RZUEVfTkFNRX0nLmAsXG4gICAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgICByZXR1cm4gYmFjayhleGNlcHRpb24pO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBwcmltaXRpdmVWYWx1ZSA9IHZhbHVlLmdldFByaW1pdGl2ZVZhbHVlKCksXG4gICAgICAgICAgICBub21pbmFsVmFsdWVzID0gcHJpbWl0aXZlVmFsdWU7IC8vL1xuXG4gICAgICByZXR1cm4gdGhpcy5pbml0aWFsVmFsdWUuZXZhbHVhdGUoY29udGV4dCwgKGluaXRpYWxWYWx1ZSwgYmFjaykgPT4ge1xuICAgICAgICByZXR1cm4gcmVkdWNlKG5vbWluYWxWYWx1ZXMsIChjdXJyZW50VmFsdWUsIG5vbWluYWxWYWx1ZSwgZm9yd2FyZCwgYmFjaykgPT4ge1xuICAgICAgICAgIHJldHVybiB0aGlzLmV2YWx1YXRlQW5vbnltb3VzUHJvY2VkdXJlKGN1cnJlbnRWYWx1ZSwgbm9taW5hbFZhbHVlLCBjb250ZXh0LCBmb3J3YXJkLCBiYWNrKTtcbiAgICAgICAgfSwgaW5pdGlhbFZhbHVlLCAodmFsdWUsIGJhY2spID0+IHtcbiAgICAgICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpO1xuXG4gICAgICAgICAgY29udGV4dC50cmFjZShgLi4uZXZhbHVhdGVkIHRoZSAnJHtyZWR1Y2VTdHJpbmd9JyBmdW5jdGlvbiBhcyAnJHt2YWx1ZVN0cmluZ30nLmApO1xuXG4gICAgICAgICAgcmV0dXJuIGZvcndhcmQodmFsdWUsIGJhY2spO1xuICAgICAgICB9LCBiYWNrKTtcbiAgICAgIH0sIGJhY2spO1xuICAgIH0sIGJhY2spO1xuICB9KTtcblxuICBldmFsdWF0ZUFub255bW91c1Byb2NlZHVyZShjdXJyZW50VmFsdWUsIG5vbWluYWxWYWx1ZSwgY29udGV4dCwgZm9yd2FyZCwgYmFjaykge1xuICAgIGxldCB2YWx1ZTtcblxuICAgIGNvbnN0IHsgVmFsdWVzIH0gPSBlbGVtZW50cztcblxuICAgIHZhbHVlID0gY3VycmVudFZhbHVlOyAvLy9cblxuICAgIGNvbnN0IHZhbHVlcyA9IFZhbHVlcy5mcm9tVmFsdWUodmFsdWUsIGNvbnRleHQpO1xuXG4gICAgdmFsdWUgPSB2YWx1ZUZyb21Ob21pbmFsVmFsdWUobm9taW5hbFZhbHVlKTtcblxuICAgIHZhbHVlcy5hZGRWYWx1ZSh2YWx1ZSk7XG5cbiAgICByZXR1cm4gdGhpcy5hbm9ueW1vdXNQcm9jZWR1cmUuZXZhbHVhdGUodmFsdWVzLCBjb250ZXh0LCBmb3J3YXJkLCBiYWNrKTtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJSZWR1Y2VcIjtcbn0pO1xuIl0sIm5hbWVzIjpbInJlZHVjZSIsImNvbnRpbnVhdGlvblV0aWxpdGllcyIsInVuYnJlYWthYmxlIiwiYnJlYWtQb2ludFV0aWxpdGllcyIsImRlZmluZSIsIlJlZHVjZSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ2YXJpYWJsZSIsImluaXRpYWxWYWx1ZSIsImFub255bW91c1Byb2NlZHVyZSIsImdldFZhcmlhYmxlIiwiZ2V0SW5pdGlhbFZhbHVlIiwiZ2V0QW5vbnltb3VzUHJvY2VkdXJlIiwiZXZhbHVhdGUiLCJmb3J3YXJkIiwiYmFjayIsInJlZHVjZVN0cmluZyIsImdldFN0cmluZyIsInRyYWNlIiwidmFsdWUiLCJ2YWx1ZVR5cGUiLCJnZXRUeXBlIiwidmFsdWVUeXBlTGlzdFR5cGUiLCJpc0xpc3RUeXBlIiwidmFsdWVTdHJpbmciLCJtZXNzYWdlIiwiTElTVF9UWVBFX05BTUUiLCJleGNlcHRpb24iLCJFeGNlcHRpb24iLCJmcm9tTWVzc2FnZSIsInByaW1pdGl2ZVZhbHVlIiwiZ2V0UHJpbWl0aXZlVmFsdWUiLCJub21pbmFsVmFsdWVzIiwiY3VycmVudFZhbHVlIiwibm9taW5hbFZhbHVlIiwiZXZhbHVhdGVBbm9ueW1vdXNQcm9jZWR1cmUiLCJWYWx1ZXMiLCJlbGVtZW50cyIsInZhbHVlcyIsImZyb21WYWx1ZSIsInZhbHVlRnJvbU5vbWluYWxWYWx1ZSIsImFkZFZhbHVlIiwibmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBY0E7OztlQUFBOzs7Z0NBWm9FO2tFQUUvQztrRUFDQzsyQkFHUzt1QkFDTzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFdEMsTUFBTSxFQUFFQSxNQUFNLEVBQUUsR0FBR0MscUNBQXFCLEVBQ2xDLEVBQUVDLFdBQVcsRUFBRSxHQUFHQyxtQ0FBbUI7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
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ const _occamlanguages = require("occam-languages");
12
+ const _elements = require("../elements");
13
+ const _default = (0, _elements.define)(class ReferenceListLiteral extends _occamlanguages.Element {
14
+ constructor(context, string, node, breakPoint, references){
15
+ super(context, string, node, breakPoint);
16
+ this.references = references;
17
+ }
18
+ getReferences() {
19
+ return this.references;
20
+ }
21
+ static name = "ReferenceListLiteral";
22
+ });
23
+
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3JlZmVyZW5jZUxpc3RMaXRlcmFsLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIFJlZmVyZW5jZUxpc3RMaXRlcmFsIGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgcmVmZXJlbmNlcykge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLnJlZmVyZW5jZXMgPSByZWZlcmVuY2VzO1xuICB9XG5cbiAgZ2V0UmVmZXJlbmNlcygpIHtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2VzO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlJlZmVyZW5jZUxpc3RMaXRlcmFsXCI7XG59KTtcbiJdLCJuYW1lcyI6WyJkZWZpbmUiLCJSZWZlcmVuY2VMaXN0TGl0ZXJhbCIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJyZWZlcmVuY2VzIiwiZ2V0UmVmZXJlbmNlcyIsIm5hbWUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQU1BOzs7ZUFBQTs7O2dDQUp3QjswQkFFRDtNQUV2QixXQUFlQSxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLDZCQUE2QkMsdUJBQU87SUFDOUQsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxVQUFVLENBQUU7UUFDekQsS0FBSyxDQUFDSixTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLFVBQVUsR0FBR0E7SUFDcEI7SUFFQUMsZ0JBQWdCO1FBQ2QsT0FBTyxJQUFJLENBQUNELFVBQVU7SUFDeEI7SUFFQSxPQUFPRSxPQUFPLHVCQUF1QjtBQUN2QyJ9
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ const _occamlanguages = require("occam-languages");
12
+ const _elements = require("../elements");
13
+ const _default = (0, _elements.define)(class References extends _occamlanguages.Element {
14
+ constructor(context, string, node, breakPoint, array){
15
+ super(context, string, node, breakPoint);
16
+ this.array = array;
17
+ }
18
+ getArray() {
19
+ return this.array;
20
+ }
21
+ getLength() {
22
+ const length = this.array.length;
23
+ return length;
24
+ }
25
+ getReference(index) {
26
+ const reference = this.array[index] || null;
27
+ return reference;
28
+ }
29
+ static name = "References";
30
+ });
31
+
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3JlZmVyZW5jZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgUmVmZXJlbmNlcyBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIGFycmF5KSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMuYXJyYXkgPSBhcnJheTtcbiAgfVxuXG4gIGdldEFycmF5KCkge1xuICAgIHJldHVybiB0aGlzLmFycmF5O1xuICB9XG5cbiAgZ2V0TGVuZ3RoKCkge1xuICAgIGNvbnN0IGxlbmd0aCA9IHRoaXMuYXJyYXkubGVuZ3RoO1xuXG4gICAgcmV0dXJuIGxlbmd0aDtcbiAgfVxuXG4gIGdldFJlZmVyZW5jZShpbmRleCkge1xuICAgIGNvbnN0IHJlZmVyZW5jZSA9IHRoaXMuYXJyYXlbaW5kZXhdIHx8IG51bGw7XG5cbiAgICByZXR1cm4gcmVmZXJlbmNlO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlJlZmVyZW5jZXNcIjtcbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIlJlZmVyZW5jZXMiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwiYXJyYXkiLCJnZXRBcnJheSIsImdldExlbmd0aCIsImxlbmd0aCIsImdldFJlZmVyZW5jZSIsImluZGV4IiwicmVmZXJlbmNlIiwibmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBTUE7OztlQUFBOzs7Z0NBSndCOzBCQUVEO01BRXZCLFdBQWVBLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsbUJBQW1CQyx1QkFBTztJQUNwRCxZQUFZQyxPQUFPLEVBQUVDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxVQUFVLEVBQUVDLEtBQUssQ0FBRTtRQUNwRCxLQUFLLENBQUNKLFNBQVNDLFFBQVFDLE1BQU1DO1FBRTdCLElBQUksQ0FBQ0MsS0FBSyxHQUFHQTtJQUNmO0lBRUFDLFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQ0QsS0FBSztJQUNuQjtJQUVBRSxZQUFZO1FBQ1YsTUFBTUMsU0FBUyxJQUFJLENBQUNILEtBQUssQ0FBQ0csTUFBTTtRQUVoQyxPQUFPQTtJQUNUO0lBRUFDLGFBQWFDLEtBQUssRUFBRTtRQUNsQixNQUFNQyxZQUFZLElBQUksQ0FBQ04sS0FBSyxDQUFDSyxNQUFNLElBQUk7UUFFdkMsT0FBT0M7SUFDVDtJQUVBLE9BQU9DLE9BQU8sYUFBYTtBQUM3QiJ9
@@ -59,7 +59,7 @@ function _interop_require_wildcard(obj, nodeInterop) {
59
59
  }
60
60
  return newObj;
61
61
  }
62
- const { some } = _occamlanguages.continuationUtilities, { breakable } = _occamlanguages.breakPointUtilities;
62
+ const { some } = _occamlanguages.continuationUtilities, { unbreakable } = _occamlanguages.breakPointUtilities;
63
63
  const _default = (0, _elements.define)(class Some extends _occamlanguages.Element {
64
64
  constructor(context, string, node, breakPoint, variable, anonymousProcedure){
65
65
  super(context, string, node, breakPoint);
@@ -72,9 +72,9 @@ const _default = (0, _elements.define)(class Some extends _occamlanguages.Elemen
72
72
  getAnonymousProcedure() {
73
73
  return this.anonymousProcedure;
74
74
  }
75
- evaluate = breakable(function(context, forward, back) {
75
+ evaluate = unbreakable(function(context, forward, back) {
76
76
  const someString = this.getString();
77
- context.trace(`Evaluating the '${someString}' some...`);
77
+ context.trace(`Evaluating the '${someString}' function...`);
78
78
  return this.variable.evaluate(context, (value, back)=>{
79
79
  const valueType = value.getType(), valueTypeListType = valueType.isListType();
80
80
  if (!valueTypeListType) {
@@ -84,9 +84,9 @@ const _default = (0, _elements.define)(class Some extends _occamlanguages.Elemen
84
84
  const primitiveValue = value.getPrimitiveValue(), nominalValues = primitiveValue; ///
85
85
  return some(nominalValues, (nominalValue, forward, back)=>{
86
86
  return this.evaluateAnonymousProcedure(nominalValue, context, forward, back);
87
- }, (boolean, back)=>{
88
- const value = (0, _value.valueFromBoolean)(boolean, context), valueString = value.getString();
89
- context.trace(`...evaluated the '${someString}' some as '${valueString}'.`);
87
+ }, context, (context, back)=>{
88
+ const boolean = true, value = (0, _value.valueFromBoolean)(boolean, context), valueString = value.getString();
89
+ context.trace(`...evaluated the '${someString}' function as '${valueString}'.`);
90
90
  return forward(value, back);
91
91
  }, back);
92
92
  }, back);
@@ -106,4 +106,4 @@ const _default = (0, _elements.define)(class Some extends _occamlanguages.Elemen
106
106
  static name = "Some";
107
107
  });
108
108
 
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3NvbWUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQsIGJyZWFrUG9pbnRVdGlsaXRpZXMsIGNvbnRpbnVhdGlvblV0aWxpdGllcyB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcblxuaW1wb3J0IGVsZW1lbnRzIGZyb20gXCIuLi9lbGVtZW50c1wiO1xuaW1wb3J0IEV4Y2VwdGlvbiBmcm9tIFwiLi4vZXhjZXB0aW9uXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuaW1wb3J0IHsgTElTVF9UWVBFX05BTUUsIEJPT0xFQU5fVFlQRV9OQU1FIH0gZnJvbSBcIi4uL3R5cGVOYW1lc1wiO1xuaW1wb3J0IHsgdmFsdWVGcm9tQm9vbGVhbiwgdmFsdWVGcm9tTm9taW5hbFZhbHVlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy92YWx1ZVwiO1xuXG5jb25zdCB7IHNvbWUgfSA9IGNvbnRpbnVhdGlvblV0aWxpdGllcyxcbiAgICAgIHsgYnJlYWthYmxlIH0gPSBicmVha1BvaW50VXRpbGl0aWVzO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgU29tZSBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIHZhcmlhYmxlLCBhbm9ueW1vdXNQcm9jZWR1cmUpIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQpO1xuXG4gICAgdGhpcy52YXJpYWJsZSA9IHZhcmlhYmxlO1xuICAgIHRoaXMuYW5vbnltb3VzUHJvY2VkdXJlID0gYW5vbnltb3VzUHJvY2VkdXJlO1xuICB9XG5cbiAgZ2V0VmFyaWFibGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFyaWFibGU7XG4gIH1cblxuICBnZXRBbm9ueW1vdXNQcm9jZWR1cmUoKSB7XG4gICAgcmV0dXJuIHRoaXMuYW5vbnltb3VzUHJvY2VkdXJlO1xuICB9XG5cbiAgZXZhbHVhdGUgPSBicmVha2FibGUoZnVuY3Rpb24gKGNvbnRleHQsIGZvcndhcmQsIGJhY2spIHtcbiAgICBjb25zdCBzb21lU3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTtcblxuICAgIGNvbnRleHQudHJhY2UoYEV2YWx1YXRpbmcgdGhlICcke3NvbWVTdHJpbmd9JyBzb21lLi4uYCk7XG5cbiAgICByZXR1cm4gdGhpcy52YXJpYWJsZS5ldmFsdWF0ZShjb250ZXh0LCAodmFsdWUsIGJhY2spID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlVHlwZSA9IHZhbHVlLmdldFR5cGUoKSxcbiAgICAgICAgICAgIHZhbHVlVHlwZUxpc3RUeXBlID0gdmFsdWVUeXBlLmlzTGlzdFR5cGUoKTtcblxuICAgICAgaWYgKCF2YWx1ZVR5cGVMaXN0VHlwZSkge1xuICAgICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICAgICAgICBtZXNzYWdlID0gYFRoZSAnJHt2YWx1ZVN0cmluZ30nIHZhbHVlJ3MgJyR7dmFsdWVUeXBlfScgdHlwZSBzaG91bGQgYmUgJyR7TElTVF9UWVBFX05BTUV9Jy5gLFxuICAgICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgICAgcmV0dXJuIGJhY2soZXhjZXB0aW9uKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgcHJpbWl0aXZlVmFsdWUgPSB2YWx1ZS5nZXRQcmltaXRpdmVWYWx1ZSgpLFxuICAgICAgICAgICAgbm9taW5hbFZhbHVlcyA9IHByaW1pdGl2ZVZhbHVlOyAvLy9cblxuICAgICAgcmV0dXJuIHNvbWUobm9taW5hbFZhbHVlcywgKG5vbWluYWxWYWx1ZSwgZm9yd2FyZCwgYmFjaykgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5ldmFsdWF0ZUFub255bW91c1Byb2NlZHVyZShub21pbmFsVmFsdWUsIGNvbnRleHQsIGZvcndhcmQsIGJhY2spO1xuICAgICAgfSwgKGJvb2xlYW4sIGJhY2spID0+IHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB2YWx1ZUZyb21Cb29sZWFuKGJvb2xlYW4sIGNvbnRleHQpLFxuICAgICAgICAgICAgICB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpO1xuXG4gICAgICAgIGNvbnRleHQudHJhY2UoYC4uLmV2YWx1YXRlZCB0aGUgJyR7c29tZVN0cmluZ30nIHNvbWUgYXMgJyR7dmFsdWVTdHJpbmd9Jy5gKTtcblxuICAgICAgICByZXR1cm4gZm9yd2FyZCh2YWx1ZSwgYmFjayk7XG4gICAgICB9LCBiYWNrKTtcbiAgICB9LCBiYWNrKTtcbiAgfSk7XG5cbiAgZXZhbHVhdGVBbm9ueW1vdXNQcm9jZWR1cmUobm9taW5hbFZhbHVlLCBjb250ZXh0LCBmb3J3YXJkLCBiYWNrKSB7XG4gICAgY29uc3QgeyBWYWx1ZXMgfSA9IGVsZW1lbnRzLFxuICAgICAgICAgIHZhbHVlID0gdmFsdWVGcm9tTm9taW5hbFZhbHVlKG5vbWluYWxWYWx1ZSksXG4gICAgICAgICAgdmFsdWVzID0gVmFsdWVzLmZyb21WYWx1ZSh2YWx1ZSwgY29udGV4dCk7XG5cbiAgICByZXR1cm4gdGhpcy5hbm9ueW1vdXNQcm9jZWR1cmUuZXZhbHVhdGUodmFsdWVzLCBjb250ZXh0LCAodmFsdWUsIGJhY2spID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlVHlwZSA9IHZhbHVlLmdldFR5cGUoKSxcbiAgICAgICAgICAgIHZhbHVlVHlwZUJvb2xlYW5UeXBlID0gdmFsdWVUeXBlLmlzQm9vbGVhblR5cGUoKTtcblxuICAgICAgaWYgKCF2YWx1ZVR5cGVCb29sZWFuVHlwZSkge1xuICAgICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICAgICAgICBtZXNzYWdlID0gYFRoZSAnJHt2YWx1ZVN0cmluZ30nIHZhbHVlJ3MgdHlwZSBpcyAnJHt2YWx1ZVR5cGV9JyB3aGVuIGl0IHNob3VsZCBiZSBvZiB0eXBlICcke0JPT0xFQU5fVFlQRV9OQU1FfScuYCxcbiAgICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICAgIHJldHVybiBiYWNrKGV4Y2VwdGlvbik7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHByaW1pdGl2ZVZhbHVlID0gdmFsdWUuZ2V0UHJpbWl0aXZlVmFsdWUoKSxcbiAgICAgICAgICAgIGJvb2xlYW4gPSBwcmltaXRpdmVWYWx1ZTsgLy8vXG5cbiAgICAgIHJldHVybiBmb3J3YXJkKGJvb2xlYW4sIGJhY2spO1xuICAgIH0sIGJhY2spO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlNvbWVcIjtcbn0pO1xuIl0sIm5hbWVzIjpbInNvbWUiLCJjb250aW51YXRpb25VdGlsaXRpZXMiLCJicmVha2FibGUiLCJicmVha1BvaW50VXRpbGl0aWVzIiwiZGVmaW5lIiwiU29tZSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ2YXJpYWJsZSIsImFub255bW91c1Byb2NlZHVyZSIsImdldFZhcmlhYmxlIiwiZ2V0QW5vbnltb3VzUHJvY2VkdXJlIiwiZXZhbHVhdGUiLCJmb3J3YXJkIiwiYmFjayIsInNvbWVTdHJpbmciLCJnZXRTdHJpbmciLCJ0cmFjZSIsInZhbHVlIiwidmFsdWVUeXBlIiwiZ2V0VHlwZSIsInZhbHVlVHlwZUxpc3RUeXBlIiwiaXNMaXN0VHlwZSIsInZhbHVlU3RyaW5nIiwibWVzc2FnZSIsIkxJU1RfVFlQRV9OQU1FIiwiZXhjZXB0aW9uIiwiRXhjZXB0aW9uIiwiZnJvbU1lc3NhZ2UiLCJwcmltaXRpdmVWYWx1ZSIsImdldFByaW1pdGl2ZVZhbHVlIiwibm9taW5hbFZhbHVlcyIsIm5vbWluYWxWYWx1ZSIsImV2YWx1YXRlQW5vbnltb3VzUHJvY2VkdXJlIiwiYm9vbGVhbiIsInZhbHVlRnJvbUJvb2xlYW4iLCJWYWx1ZXMiLCJlbGVtZW50cyIsInZhbHVlRnJvbU5vbWluYWxWYWx1ZSIsInZhbHVlcyIsImZyb21WYWx1ZSIsInZhbHVlVHlwZUJvb2xlYW5UeXBlIiwiaXNCb29sZWFuVHlwZSIsIkJPT0xFQU5fVFlQRV9OQU1FIiwibmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBY0E7OztlQUFBOzs7Z0NBWm9FO2tFQUUvQztrRUFDQzsyQkFHNEI7dUJBQ007Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXhELE1BQU0sRUFBRUEsSUFBSSxFQUFFLEdBQUdDLHFDQUFxQixFQUNoQyxFQUFFQyxTQUFTLEVBQUUsR0FBR0MsbUNBQW1CO01BRXpDLFdBQWVDLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsYUFBYUMsdUJBQU87SUFDOUMsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxRQUFRLEVBQUVDLGtCQUFrQixDQUFFO1FBQzNFLEtBQUssQ0FBQ0wsU0FBU0MsUUFBUUMsTUFBTUM7UUFFN0IsSUFBSSxDQUFDQyxRQUFRLEdBQUdBO1FBQ2hCLElBQUksQ0FBQ0Msa0JBQWtCLEdBQUdBO0lBQzVCO0lBRUFDLGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQ0YsUUFBUTtJQUN0QjtJQUVBRyx3QkFBd0I7UUFDdEIsT0FBTyxJQUFJLENBQUNGLGtCQUFrQjtJQUNoQztJQUVBRyxXQUFXYixVQUFVLFNBQVVLLE9BQU8sRUFBRVMsT0FBTyxFQUFFQyxJQUFJO1FBQ25ELE1BQU1DLGFBQWEsSUFBSSxDQUFDQyxTQUFTO1FBRWpDWixRQUFRYSxLQUFLLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRUYsV0FBVyxTQUFTLENBQUM7UUFFdEQsT0FBTyxJQUFJLENBQUNQLFFBQVEsQ0FBQ0ksUUFBUSxDQUFDUixTQUFTLENBQUNjLE9BQU9KO1lBQzdDLE1BQU1LLFlBQVlELE1BQU1FLE9BQU8sSUFDekJDLG9CQUFvQkYsVUFBVUcsVUFBVTtZQUU5QyxJQUFJLENBQUNELG1CQUFtQjtnQkFDdEIsTUFBTUUsY0FBY0wsTUFBTUYsU0FBUyxJQUM3QlEsVUFBVSxDQUFDLEtBQUssRUFBRUQsWUFBWSxXQUFXLEVBQUVKLFVBQVUsa0JBQWtCLEVBQUVNLHlCQUFjLENBQUMsRUFBRSxDQUFDLEVBQzNGQyxZQUFZQyxrQkFBUyxDQUFDQyxXQUFXLENBQUNKO2dCQUV4QyxPQUFPVixLQUFLWTtZQUNkO1lBRUEsTUFBTUcsaUJBQWlCWCxNQUFNWSxpQkFBaUIsSUFDeENDLGdCQUFnQkYsZ0JBQWdCLEdBQUc7WUFFekMsT0FBT2hDLEtBQUtrQyxlQUFlLENBQUNDLGNBQWNuQixTQUFTQztnQkFDakQsT0FBTyxJQUFJLENBQUNtQiwwQkFBMEIsQ0FBQ0QsY0FBYzVCLFNBQVNTLFNBQVNDO1lBQ3pFLEdBQUcsQ0FBQ29CLFNBQVNwQjtnQkFDWCxNQUFNSSxRQUFRaUIsSUFBQUEsdUJBQWdCLEVBQUNELFNBQVM5QixVQUNsQ21CLGNBQWNMLE1BQU1GLFNBQVM7Z0JBRW5DWixRQUFRYSxLQUFLLENBQUMsQ0FBQyxrQkFBa0IsRUFBRUYsV0FBVyxXQUFXLEVBQUVRLFlBQVksRUFBRSxDQUFDO2dCQUUxRSxPQUFPVixRQUFRSyxPQUFPSjtZQUN4QixHQUFHQTtRQUNMLEdBQUdBO0lBQ0wsR0FBRztJQUVIbUIsMkJBQTJCRCxZQUFZLEVBQUU1QixPQUFPLEVBQUVTLE9BQU8sRUFBRUMsSUFBSSxFQUFFO1FBQy9ELE1BQU0sRUFBRXNCLE1BQU0sRUFBRSxHQUFHQyxpQkFBUSxFQUNyQm5CLFFBQVFvQixJQUFBQSw0QkFBcUIsRUFBQ04sZUFDOUJPLFNBQVNILE9BQU9JLFNBQVMsQ0FBQ3RCLE9BQU9kO1FBRXZDLE9BQU8sSUFBSSxDQUFDSyxrQkFBa0IsQ0FBQ0csUUFBUSxDQUFDMkIsUUFBUW5DLFNBQVMsQ0FBQ2MsT0FBT0o7WUFDL0QsTUFBTUssWUFBWUQsTUFBTUUsT0FBTyxJQUN6QnFCLHVCQUF1QnRCLFVBQVV1QixhQUFhO1lBRXBELElBQUksQ0FBQ0Qsc0JBQXNCO2dCQUN6QixNQUFNbEIsY0FBY0wsTUFBTUYsU0FBUyxJQUM3QlEsVUFBVSxDQUFDLEtBQUssRUFBRUQsWUFBWSxtQkFBbUIsRUFBRUosVUFBVSw2QkFBNkIsRUFBRXdCLDRCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUNqSGpCLFlBQVlDLGtCQUFTLENBQUNDLFdBQVcsQ0FBQ0o7Z0JBRXhDLE9BQU9WLEtBQUtZO1lBQ2Q7WUFFQSxNQUFNRyxpQkFBaUJYLE1BQU1ZLGlCQUFpQixJQUN4Q0ksVUFBVUwsZ0JBQWdCLEdBQUc7WUFFbkMsT0FBT2hCLFFBQVFxQixTQUFTcEI7UUFDMUIsR0FBR0E7SUFDTDtJQUVBLE9BQU84QixPQUFPLE9BQU87QUFDdkIifQ==
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3NvbWUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQsIGJyZWFrUG9pbnRVdGlsaXRpZXMsIGNvbnRpbnVhdGlvblV0aWxpdGllcyB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcblxuaW1wb3J0IGVsZW1lbnRzIGZyb20gXCIuLi9lbGVtZW50c1wiO1xuaW1wb3J0IEV4Y2VwdGlvbiBmcm9tIFwiLi4vZXhjZXB0aW9uXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuaW1wb3J0IHsgTElTVF9UWVBFX05BTUUsIEJPT0xFQU5fVFlQRV9OQU1FIH0gZnJvbSBcIi4uL3R5cGVOYW1lc1wiO1xuaW1wb3J0IHsgdmFsdWVGcm9tQm9vbGVhbiwgdmFsdWVGcm9tTm9taW5hbFZhbHVlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy92YWx1ZVwiO1xuXG5jb25zdCB7IHNvbWUgfSA9IGNvbnRpbnVhdGlvblV0aWxpdGllcyxcbiAgICAgIHsgdW5icmVha2FibGUgfSA9IGJyZWFrUG9pbnRVdGlsaXRpZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBTb21lIGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdmFyaWFibGUsIGFub255bW91c1Byb2NlZHVyZSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLnZhcmlhYmxlID0gdmFyaWFibGU7XG4gICAgdGhpcy5hbm9ueW1vdXNQcm9jZWR1cmUgPSBhbm9ueW1vdXNQcm9jZWR1cmU7XG4gIH1cblxuICBnZXRWYXJpYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YXJpYWJsZTtcbiAgfVxuXG4gIGdldEFub255bW91c1Byb2NlZHVyZSgpIHtcbiAgICByZXR1cm4gdGhpcy5hbm9ueW1vdXNQcm9jZWR1cmU7XG4gIH1cblxuICBldmFsdWF0ZSA9IHVuYnJlYWthYmxlKGZ1bmN0aW9uIChjb250ZXh0LCBmb3J3YXJkLCBiYWNrKSB7XG4gICAgY29uc3Qgc29tZVN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7XG5cbiAgICBjb250ZXh0LnRyYWNlKGBFdmFsdWF0aW5nIHRoZSAnJHtzb21lU3RyaW5nfScgZnVuY3Rpb24uLi5gKTtcblxuICAgIHJldHVybiB0aGlzLnZhcmlhYmxlLmV2YWx1YXRlKGNvbnRleHQsICh2YWx1ZSwgYmFjaykgPT4ge1xuICAgICAgY29uc3QgdmFsdWVUeXBlID0gdmFsdWUuZ2V0VHlwZSgpLFxuICAgICAgICAgICAgdmFsdWVUeXBlTGlzdFR5cGUgPSB2YWx1ZVR5cGUuaXNMaXN0VHlwZSgpO1xuXG4gICAgICBpZiAoIXZhbHVlVHlwZUxpc3RUeXBlKSB7XG4gICAgICAgIGNvbnN0IHZhbHVlU3RyaW5nID0gdmFsdWUuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICAgIG1lc3NhZ2UgPSBgVGhlICcke3ZhbHVlU3RyaW5nfScgdmFsdWUncyAnJHt2YWx1ZVR5cGV9JyB0eXBlIHNob3VsZCBiZSAnJHtMSVNUX1RZUEVfTkFNRX0nLmAsXG4gICAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgICByZXR1cm4gYmFjayhleGNlcHRpb24pO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBwcmltaXRpdmVWYWx1ZSA9IHZhbHVlLmdldFByaW1pdGl2ZVZhbHVlKCksXG4gICAgICAgICAgICBub21pbmFsVmFsdWVzID0gcHJpbWl0aXZlVmFsdWU7IC8vL1xuXG4gICAgICByZXR1cm4gc29tZShub21pbmFsVmFsdWVzLCAobm9taW5hbFZhbHVlLCBmb3J3YXJkLCBiYWNrKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmV2YWx1YXRlQW5vbnltb3VzUHJvY2VkdXJlKG5vbWluYWxWYWx1ZSwgY29udGV4dCwgZm9yd2FyZCwgYmFjayk7XG4gICAgICB9LCBjb250ZXh0LCAoY29udGV4dCwgYmFjaykgPT4ge1xuICAgICAgICBjb25zdCBib29sZWFuID0gdHJ1ZSxcbiAgICAgICAgICAgICAgdmFsdWUgPSB2YWx1ZUZyb21Cb29sZWFuKGJvb2xlYW4sIGNvbnRleHQpLFxuICAgICAgICAgICAgICB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpO1xuXG4gICAgICAgIGNvbnRleHQudHJhY2UoYC4uLmV2YWx1YXRlZCB0aGUgJyR7c29tZVN0cmluZ30nIGZ1bmN0aW9uIGFzICcke3ZhbHVlU3RyaW5nfScuYCk7XG5cbiAgICAgICAgcmV0dXJuIGZvcndhcmQodmFsdWUsIGJhY2spO1xuICAgICAgfSwgYmFjayk7XG4gICAgfSwgYmFjayk7XG4gIH0pO1xuXG4gIGV2YWx1YXRlQW5vbnltb3VzUHJvY2VkdXJlKG5vbWluYWxWYWx1ZSwgY29udGV4dCwgZm9yd2FyZCwgYmFjaykge1xuICAgIGNvbnN0IHsgVmFsdWVzIH0gPSBlbGVtZW50cyxcbiAgICAgICAgICB2YWx1ZSA9IHZhbHVlRnJvbU5vbWluYWxWYWx1ZShub21pbmFsVmFsdWUpLFxuICAgICAgICAgIHZhbHVlcyA9IFZhbHVlcy5mcm9tVmFsdWUodmFsdWUsIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIHRoaXMuYW5vbnltb3VzUHJvY2VkdXJlLmV2YWx1YXRlKHZhbHVlcywgY29udGV4dCwgKHZhbHVlLCBiYWNrKSA9PiB7XG4gICAgICBjb25zdCB2YWx1ZVR5cGUgPSB2YWx1ZS5nZXRUeXBlKCksXG4gICAgICAgICAgICB2YWx1ZVR5cGVCb29sZWFuVHlwZSA9IHZhbHVlVHlwZS5pc0Jvb2xlYW5UeXBlKCk7XG5cbiAgICAgIGlmICghdmFsdWVUeXBlQm9vbGVhblR5cGUpIHtcbiAgICAgICAgY29uc3QgdmFsdWVTdHJpbmcgPSB2YWx1ZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgICAgbWVzc2FnZSA9IGBUaGUgJyR7dmFsdWVTdHJpbmd9JyB2YWx1ZSdzIHR5cGUgaXMgJyR7dmFsdWVUeXBlfScgd2hlbiBpdCBzaG91bGQgYmUgb2YgdHlwZSAnJHtCT09MRUFOX1RZUEVfTkFNRX0nLmAsXG4gICAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgICByZXR1cm4gYmFjayhleGNlcHRpb24pO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBwcmltaXRpdmVWYWx1ZSA9IHZhbHVlLmdldFByaW1pdGl2ZVZhbHVlKCksXG4gICAgICAgICAgICBib29sZWFuID0gcHJpbWl0aXZlVmFsdWU7IC8vL1xuXG4gICAgICByZXR1cm4gZm9yd2FyZChib29sZWFuLCBiYWNrKTtcbiAgICB9LCBiYWNrKTtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJTb21lXCI7XG59KTtcbiJdLCJuYW1lcyI6WyJzb21lIiwiY29udGludWF0aW9uVXRpbGl0aWVzIiwidW5icmVha2FibGUiLCJicmVha1BvaW50VXRpbGl0aWVzIiwiZGVmaW5lIiwiU29tZSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ2YXJpYWJsZSIsImFub255bW91c1Byb2NlZHVyZSIsImdldFZhcmlhYmxlIiwiZ2V0QW5vbnltb3VzUHJvY2VkdXJlIiwiZXZhbHVhdGUiLCJmb3J3YXJkIiwiYmFjayIsInNvbWVTdHJpbmciLCJnZXRTdHJpbmciLCJ0cmFjZSIsInZhbHVlIiwidmFsdWVUeXBlIiwiZ2V0VHlwZSIsInZhbHVlVHlwZUxpc3RUeXBlIiwiaXNMaXN0VHlwZSIsInZhbHVlU3RyaW5nIiwibWVzc2FnZSIsIkxJU1RfVFlQRV9OQU1FIiwiZXhjZXB0aW9uIiwiRXhjZXB0aW9uIiwiZnJvbU1lc3NhZ2UiLCJwcmltaXRpdmVWYWx1ZSIsImdldFByaW1pdGl2ZVZhbHVlIiwibm9taW5hbFZhbHVlcyIsIm5vbWluYWxWYWx1ZSIsImV2YWx1YXRlQW5vbnltb3VzUHJvY2VkdXJlIiwiYm9vbGVhbiIsInZhbHVlRnJvbUJvb2xlYW4iLCJWYWx1ZXMiLCJlbGVtZW50cyIsInZhbHVlRnJvbU5vbWluYWxWYWx1ZSIsInZhbHVlcyIsImZyb21WYWx1ZSIsInZhbHVlVHlwZUJvb2xlYW5UeXBlIiwiaXNCb29sZWFuVHlwZSIsIkJPT0xFQU5fVFlQRV9OQU1FIiwibmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBY0E7OztlQUFBOzs7Z0NBWm9FO2tFQUUvQztrRUFDQzsyQkFHNEI7dUJBQ007Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXhELE1BQU0sRUFBRUEsSUFBSSxFQUFFLEdBQUdDLHFDQUFxQixFQUNoQyxFQUFFQyxXQUFXLEVBQUUsR0FBR0MsbUNBQW1CO01BRTNDLFdBQWVDLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsYUFBYUMsdUJBQU87SUFDOUMsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxRQUFRLEVBQUVDLGtCQUFrQixDQUFFO1FBQzNFLEtBQUssQ0FBQ0wsU0FBU0MsUUFBUUMsTUFBTUM7UUFFN0IsSUFBSSxDQUFDQyxRQUFRLEdBQUdBO1FBQ2hCLElBQUksQ0FBQ0Msa0JBQWtCLEdBQUdBO0lBQzVCO0lBRUFDLGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQ0YsUUFBUTtJQUN0QjtJQUVBRyx3QkFBd0I7UUFDdEIsT0FBTyxJQUFJLENBQUNGLGtCQUFrQjtJQUNoQztJQUVBRyxXQUFXYixZQUFZLFNBQVVLLE9BQU8sRUFBRVMsT0FBTyxFQUFFQyxJQUFJO1FBQ3JELE1BQU1DLGFBQWEsSUFBSSxDQUFDQyxTQUFTO1FBRWpDWixRQUFRYSxLQUFLLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRUYsV0FBVyxhQUFhLENBQUM7UUFFMUQsT0FBTyxJQUFJLENBQUNQLFFBQVEsQ0FBQ0ksUUFBUSxDQUFDUixTQUFTLENBQUNjLE9BQU9KO1lBQzdDLE1BQU1LLFlBQVlELE1BQU1FLE9BQU8sSUFDekJDLG9CQUFvQkYsVUFBVUcsVUFBVTtZQUU5QyxJQUFJLENBQUNELG1CQUFtQjtnQkFDdEIsTUFBTUUsY0FBY0wsTUFBTUYsU0FBUyxJQUM3QlEsVUFBVSxDQUFDLEtBQUssRUFBRUQsWUFBWSxXQUFXLEVBQUVKLFVBQVUsa0JBQWtCLEVBQUVNLHlCQUFjLENBQUMsRUFBRSxDQUFDLEVBQzNGQyxZQUFZQyxrQkFBUyxDQUFDQyxXQUFXLENBQUNKO2dCQUV4QyxPQUFPVixLQUFLWTtZQUNkO1lBRUEsTUFBTUcsaUJBQWlCWCxNQUFNWSxpQkFBaUIsSUFDeENDLGdCQUFnQkYsZ0JBQWdCLEdBQUc7WUFFekMsT0FBT2hDLEtBQUtrQyxlQUFlLENBQUNDLGNBQWNuQixTQUFTQztnQkFDakQsT0FBTyxJQUFJLENBQUNtQiwwQkFBMEIsQ0FBQ0QsY0FBYzVCLFNBQVNTLFNBQVNDO1lBQ3pFLEdBQUdWLFNBQVMsQ0FBQ0EsU0FBU1U7Z0JBQ3BCLE1BQU1vQixVQUFVLE1BQ1ZoQixRQUFRaUIsSUFBQUEsdUJBQWdCLEVBQUNELFNBQVM5QixVQUNsQ21CLGNBQWNMLE1BQU1GLFNBQVM7Z0JBRW5DWixRQUFRYSxLQUFLLENBQUMsQ0FBQyxrQkFBa0IsRUFBRUYsV0FBVyxlQUFlLEVBQUVRLFlBQVksRUFBRSxDQUFDO2dCQUU5RSxPQUFPVixRQUFRSyxPQUFPSjtZQUN4QixHQUFHQTtRQUNMLEdBQUdBO0lBQ0wsR0FBRztJQUVIbUIsMkJBQTJCRCxZQUFZLEVBQUU1QixPQUFPLEVBQUVTLE9BQU8sRUFBRUMsSUFBSSxFQUFFO1FBQy9ELE1BQU0sRUFBRXNCLE1BQU0sRUFBRSxHQUFHQyxpQkFBUSxFQUNyQm5CLFFBQVFvQixJQUFBQSw0QkFBcUIsRUFBQ04sZUFDOUJPLFNBQVNILE9BQU9JLFNBQVMsQ0FBQ3RCLE9BQU9kO1FBRXZDLE9BQU8sSUFBSSxDQUFDSyxrQkFBa0IsQ0FBQ0csUUFBUSxDQUFDMkIsUUFBUW5DLFNBQVMsQ0FBQ2MsT0FBT0o7WUFDL0QsTUFBTUssWUFBWUQsTUFBTUUsT0FBTyxJQUN6QnFCLHVCQUF1QnRCLFVBQVV1QixhQUFhO1lBRXBELElBQUksQ0FBQ0Qsc0JBQXNCO2dCQUN6QixNQUFNbEIsY0FBY0wsTUFBTUYsU0FBUyxJQUM3QlEsVUFBVSxDQUFDLEtBQUssRUFBRUQsWUFBWSxtQkFBbUIsRUFBRUosVUFBVSw2QkFBNkIsRUFBRXdCLDRCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUNqSGpCLFlBQVlDLGtCQUFTLENBQUNDLFdBQVcsQ0FBQ0o7Z0JBRXhDLE9BQU9WLEtBQUtZO1lBQ2Q7WUFFQSxNQUFNRyxpQkFBaUJYLE1BQU1ZLGlCQUFpQixJQUN4Q0ksVUFBVUwsZ0JBQWdCLEdBQUc7WUFFbkMsT0FBT2hCLFFBQVFxQixTQUFTcEI7UUFDMUIsR0FBR0E7SUFDTDtJQUVBLE9BQU84QixPQUFPLE9BQU87QUFDdkIifQ==
@@ -79,7 +79,7 @@ const _default = (0, _elements.define)(class Terms extends _occamlanguages.Eleme
79
79
  return this.mapTerm((term, forward, back)=>{
80
80
  return term.evaluate(context, forward, back);
81
81
  }, (valuesArray)=>{
82
- const valuesString = (0, _string.valuesStringFromValuesArray)(valuesArray, context), string = valuesString, array = valuesArray, node = null, breakPoint = null;
82
+ const valuesString = (0, _string.valuesStringFromValuesArray)(valuesArray), string = valuesString, array = valuesArray, node = null, breakPoint = null;
83
83
  context = null;
84
84
  const { Values } = _elements.default, values = new Values(context, string, node, breakPoint, array);
85
85
  return forward(values, back);
@@ -96,4 +96,4 @@ const _default = (0, _elements.define)(class Terms extends _occamlanguages.Eleme
96
96
  }
97
97
  });
98
98
 
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Rlcm1zLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFbGVtZW50LCBjb250aW51YXRpb25VdGlsaXRpZXMgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCBlbGVtZW50cyBmcm9tIFwiLi4vZWxlbWVudHNcIjtcblxuaW1wb3J0IHsgZGVmaW5lIH0gZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5pbXBvcnQgeyB0ZXJtc1N0cmluZ0Zyb21UZXJtc0FycmF5LCB2YWx1ZXNTdHJpbmdGcm9tVmFsdWVzQXJyYXkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuXG5jb25zdCB7IG1hcCB9ID0gY29udGludWF0aW9uVXRpbGl0aWVzO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgVGVybXMgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBhcnJheSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLmFycmF5ID0gYXJyYXk7XG4gIH1cblxuICBnZXRBcnJheSgpIHtcbiAgICByZXR1cm4gdGhpcy5hcnJheTtcbiAgfVxuXG4gIGdldExlbmd0aCgpIHtcbiAgICBjb25zdCBsZW5ndGggPSB0aGlzLmFycmF5Lmxlbmd0aDtcblxuICAgIHJldHVybiBsZW5ndGg7XG4gIH1cblxuICBnZXRUZXJtKGluZGV4KSB7XG4gICAgY29uc3QgdGVybSA9IHRoaXMuYXJyYXlbaW5kZXhdIHx8IG51bGw7ICAvLy9cblxuICAgIHJldHVybiB0ZXJtO1xuICB9XG5cbiAgYWRkVGVybSh0ZXJtKSB7XG4gICAgdGhpcy5hcnJheS5wdXNoKHRlcm0pO1xuICB9XG5cbiAgbWFwVGVybShjYWxsYmFjaywgZm9yd2FyZCwgYmFjaykge1xuICAgIHJldHVybiBtYXAodGhpcy5hcnJheSwgY2FsbGJhY2ssIGZvcndhcmQsIGJhY2spO1xuICB9XG5cbiAgZXZhbHVhdGUoY29udGV4dCwgYmFjaywgZm9yd2FyZCkge1xuICAgIHJldHVybiB0aGlzLm1hcFRlcm0oKHRlcm0sIGZvcndhcmQsIGJhY2spID0+IHtcbiAgICAgIHJldHVybiB0ZXJtLmV2YWx1YXRlKGNvbnRleHQsIGZvcndhcmQsIGJhY2spO1xuICAgIH0sICh2YWx1ZXNBcnJheSkgPT4ge1xuICAgICAgY29uc3QgdmFsdWVzU3RyaW5nID0gdmFsdWVzU3RyaW5nRnJvbVZhbHVlc0FycmF5KHZhbHVlc0FycmF5LCBjb250ZXh0KSxcbiAgICAgICAgICAgIHN0cmluZyA9IHZhbHVlc1N0cmluZywgLy8vXG4gICAgICAgICAgICBhcnJheSA9IHZhbHVlc0FycmF5LCAvLy9cbiAgICAgICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICAgICAgYnJlYWtQb2ludCA9IG51bGw7XG5cbiAgICAgIGNvbnRleHQgPSBudWxsO1xuXG4gICAgICBjb25zdCB7IFZhbHVlcyB9ID0gZWxlbWVudHMsXG4gICAgICAgICAgICB2YWx1ZXMgPSBuZXcgVmFsdWVzKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgYXJyYXkpO1xuXG4gICAgICByZXR1cm4gZm9yd2FyZCh2YWx1ZXMsIGJhY2spO1xuICAgIH0sIGJhY2spO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlRlcm1zXCI7XG5cbiAgc3RhdGljIGZyb21UZXJtKHRlcm0sIGNvbnRleHQpIHtcbiAgICBjb25zdCB0ZXJtc0FycmF5ID0gW1xuICAgICAgICAgICAgdGVybVxuICAgICAgICAgIF0sXG4gICAgICAgICAgdGVybXNTdHJpbmcgPSB0ZXJtc1N0cmluZ0Zyb21UZXJtc0FycmF5KHRlcm1zQXJyYXksIGNvbnRleHQpLFxuICAgICAgICAgIHN0cmluZyA9IHRlcm1zU3RyaW5nLCAvLy9cbiAgICAgICAgICBhcnJheSA9IHRlcm1zQXJyYXksIC8vL1xuICAgICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICAgIGJyZWFrUG9pbnQgPSBudWxsO1xuXG4gICAgY29udGV4dCA9IG51bGw7XG5cbiAgICBjb25zdCB0ZXJtcyA9IG5ldyBUZXJtcyhjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIGFycmF5KTtcblxuICAgIHJldHVybiB0ZXJtcztcbiAgfVxufSk7XG4iXSwibmFtZXMiOlsibWFwIiwiY29udGludWF0aW9uVXRpbGl0aWVzIiwiZGVmaW5lIiwiVGVybXMiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwiYXJyYXkiLCJnZXRBcnJheSIsImdldExlbmd0aCIsImxlbmd0aCIsImdldFRlcm0iLCJpbmRleCIsInRlcm0iLCJhZGRUZXJtIiwicHVzaCIsIm1hcFRlcm0iLCJjYWxsYmFjayIsImZvcndhcmQiLCJiYWNrIiwiZXZhbHVhdGUiLCJ2YWx1ZXNBcnJheSIsInZhbHVlc1N0cmluZyIsInZhbHVlc1N0cmluZ0Zyb21WYWx1ZXNBcnJheSIsIlZhbHVlcyIsImVsZW1lbnRzIiwidmFsdWVzIiwibmFtZSIsImZyb21UZXJtIiwidGVybXNBcnJheSIsInRlcm1zU3RyaW5nIiwidGVybXNTdHJpbmdGcm9tVGVybXNBcnJheSIsInRlcm1zIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFXQTs7O2VBQUE7OztnQ0FUK0M7a0VBRTFCO3dCQUdrRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXZFLE1BQU0sRUFBRUEsR0FBRyxFQUFFLEdBQUdDLHFDQUFxQjtNQUVyQyxXQUFlQyxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLGNBQWNDLHVCQUFPO0lBQy9DLFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsS0FBSyxDQUFFO1FBQ3BELEtBQUssQ0FBQ0osU0FBU0MsUUFBUUMsTUFBTUM7UUFFN0IsSUFBSSxDQUFDQyxLQUFLLEdBQUdBO0lBQ2Y7SUFFQUMsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDRCxLQUFLO0lBQ25CO0lBRUFFLFlBQVk7UUFDVixNQUFNQyxTQUFTLElBQUksQ0FBQ0gsS0FBSyxDQUFDRyxNQUFNO1FBRWhDLE9BQU9BO0lBQ1Q7SUFFQUMsUUFBUUMsS0FBSyxFQUFFO1FBQ2IsTUFBTUMsT0FBTyxJQUFJLENBQUNOLEtBQUssQ0FBQ0ssTUFBTSxJQUFJLE1BQU8sR0FBRztRQUU1QyxPQUFPQztJQUNUO0lBRUFDLFFBQVFELElBQUksRUFBRTtRQUNaLElBQUksQ0FBQ04sS0FBSyxDQUFDUSxJQUFJLENBQUNGO0lBQ2xCO0lBRUFHLFFBQVFDLFFBQVEsRUFBRUMsT0FBTyxFQUFFQyxJQUFJLEVBQUU7UUFDL0IsT0FBT3JCLElBQUksSUFBSSxDQUFDUyxLQUFLLEVBQUVVLFVBQVVDLFNBQVNDO0lBQzVDO0lBRUFDLFNBQVNqQixPQUFPLEVBQUVnQixJQUFJLEVBQUVELE9BQU8sRUFBRTtRQUMvQixPQUFPLElBQUksQ0FBQ0YsT0FBTyxDQUFDLENBQUNILE1BQU1LLFNBQVNDO1lBQ2xDLE9BQU9OLEtBQUtPLFFBQVEsQ0FBQ2pCLFNBQVNlLFNBQVNDO1FBQ3pDLEdBQUcsQ0FBQ0U7WUFDRixNQUFNQyxlQUFlQyxJQUFBQSxtQ0FBMkIsRUFBQ0YsYUFBYWxCLFVBQ3hEQyxTQUFTa0IsY0FDVGYsUUFBUWMsYUFDUmhCLE9BQU8sTUFDUEMsYUFBYTtZQUVuQkgsVUFBVTtZQUVWLE1BQU0sRUFBRXFCLE1BQU0sRUFBRSxHQUFHQyxpQkFBUSxFQUNyQkMsU0FBUyxJQUFJRixPQUFPckIsU0FBU0MsUUFBUUMsTUFBTUMsWUFBWUM7WUFFN0QsT0FBT1csUUFBUVEsUUFBUVA7UUFDekIsR0FBR0E7SUFDTDtJQUVBLE9BQU9RLE9BQU8sUUFBUTtJQUV0QixPQUFPQyxTQUFTZixJQUFJLEVBQUVWLE9BQU8sRUFBRTtRQUM3QixNQUFNMEIsYUFBYTtZQUNYaEI7U0FDRCxFQUNEaUIsY0FBY0MsSUFBQUEsaUNBQXlCLEVBQUNGLFlBQVkxQixVQUNwREMsU0FBUzBCLGFBQ1R2QixRQUFRc0IsWUFDUnhCLE9BQU8sTUFDUEMsYUFBYTtRQUVuQkgsVUFBVTtRQUVWLE1BQU02QixRQUFRLElBQUkvQixNQUFNRSxTQUFTQyxRQUFRQyxNQUFNQyxZQUFZQztRQUUzRCxPQUFPeUI7SUFDVDtBQUNGIn0=
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Rlcm1zLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFbGVtZW50LCBjb250aW51YXRpb25VdGlsaXRpZXMgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCBlbGVtZW50cyBmcm9tIFwiLi4vZWxlbWVudHNcIjtcblxuaW1wb3J0IHsgZGVmaW5lIH0gZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5pbXBvcnQgeyB0ZXJtc1N0cmluZ0Zyb21UZXJtc0FycmF5LCB2YWx1ZXNTdHJpbmdGcm9tVmFsdWVzQXJyYXkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuXG5jb25zdCB7IG1hcCB9ID0gY29udGludWF0aW9uVXRpbGl0aWVzO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgVGVybXMgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBhcnJheSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLmFycmF5ID0gYXJyYXk7XG4gIH1cblxuICBnZXRBcnJheSgpIHtcbiAgICByZXR1cm4gdGhpcy5hcnJheTtcbiAgfVxuXG4gIGdldExlbmd0aCgpIHtcbiAgICBjb25zdCBsZW5ndGggPSB0aGlzLmFycmF5Lmxlbmd0aDtcblxuICAgIHJldHVybiBsZW5ndGg7XG4gIH1cblxuICBnZXRUZXJtKGluZGV4KSB7XG4gICAgY29uc3QgdGVybSA9IHRoaXMuYXJyYXlbaW5kZXhdIHx8IG51bGw7ICAvLy9cblxuICAgIHJldHVybiB0ZXJtO1xuICB9XG5cbiAgYWRkVGVybSh0ZXJtKSB7XG4gICAgdGhpcy5hcnJheS5wdXNoKHRlcm0pO1xuICB9XG5cbiAgbWFwVGVybShjYWxsYmFjaywgZm9yd2FyZCwgYmFjaykge1xuICAgIHJldHVybiBtYXAodGhpcy5hcnJheSwgY2FsbGJhY2ssIGZvcndhcmQsIGJhY2spO1xuICB9XG5cbiAgZXZhbHVhdGUoY29udGV4dCwgYmFjaywgZm9yd2FyZCkge1xuICAgIHJldHVybiB0aGlzLm1hcFRlcm0oKHRlcm0sIGZvcndhcmQsIGJhY2spID0+IHtcbiAgICAgIHJldHVybiB0ZXJtLmV2YWx1YXRlKGNvbnRleHQsIGZvcndhcmQsIGJhY2spO1xuICAgIH0sICh2YWx1ZXNBcnJheSkgPT4ge1xuICAgICAgY29uc3QgdmFsdWVzU3RyaW5nID0gdmFsdWVzU3RyaW5nRnJvbVZhbHVlc0FycmF5KHZhbHVlc0FycmF5KSxcbiAgICAgICAgICAgIHN0cmluZyA9IHZhbHVlc1N0cmluZywgLy8vXG4gICAgICAgICAgICBhcnJheSA9IHZhbHVlc0FycmF5LCAvLy9cbiAgICAgICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICAgICAgYnJlYWtQb2ludCA9IG51bGw7XG5cbiAgICAgIGNvbnRleHQgPSBudWxsO1xuXG4gICAgICBjb25zdCB7IFZhbHVlcyB9ID0gZWxlbWVudHMsXG4gICAgICAgICAgICB2YWx1ZXMgPSBuZXcgVmFsdWVzKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgYXJyYXkpO1xuXG4gICAgICByZXR1cm4gZm9yd2FyZCh2YWx1ZXMsIGJhY2spO1xuICAgIH0sIGJhY2spO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlRlcm1zXCI7XG5cbiAgc3RhdGljIGZyb21UZXJtKHRlcm0sIGNvbnRleHQpIHtcbiAgICBjb25zdCB0ZXJtc0FycmF5ID0gW1xuICAgICAgICAgICAgdGVybVxuICAgICAgICAgIF0sXG4gICAgICAgICAgdGVybXNTdHJpbmcgPSB0ZXJtc1N0cmluZ0Zyb21UZXJtc0FycmF5KHRlcm1zQXJyYXksIGNvbnRleHQpLFxuICAgICAgICAgIHN0cmluZyA9IHRlcm1zU3RyaW5nLCAvLy9cbiAgICAgICAgICBhcnJheSA9IHRlcm1zQXJyYXksIC8vL1xuICAgICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICAgIGJyZWFrUG9pbnQgPSBudWxsO1xuXG4gICAgY29udGV4dCA9IG51bGw7XG5cbiAgICBjb25zdCB0ZXJtcyA9IG5ldyBUZXJtcyhjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIGFycmF5KTtcblxuICAgIHJldHVybiB0ZXJtcztcbiAgfVxufSk7XG4iXSwibmFtZXMiOlsibWFwIiwiY29udGludWF0aW9uVXRpbGl0aWVzIiwiZGVmaW5lIiwiVGVybXMiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwiYXJyYXkiLCJnZXRBcnJheSIsImdldExlbmd0aCIsImxlbmd0aCIsImdldFRlcm0iLCJpbmRleCIsInRlcm0iLCJhZGRUZXJtIiwicHVzaCIsIm1hcFRlcm0iLCJjYWxsYmFjayIsImZvcndhcmQiLCJiYWNrIiwiZXZhbHVhdGUiLCJ2YWx1ZXNBcnJheSIsInZhbHVlc1N0cmluZyIsInZhbHVlc1N0cmluZ0Zyb21WYWx1ZXNBcnJheSIsIlZhbHVlcyIsImVsZW1lbnRzIiwidmFsdWVzIiwibmFtZSIsImZyb21UZXJtIiwidGVybXNBcnJheSIsInRlcm1zU3RyaW5nIiwidGVybXNTdHJpbmdGcm9tVGVybXNBcnJheSIsInRlcm1zIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFXQTs7O2VBQUE7OztnQ0FUK0M7a0VBRTFCO3dCQUdrRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXZFLE1BQU0sRUFBRUEsR0FBRyxFQUFFLEdBQUdDLHFDQUFxQjtNQUVyQyxXQUFlQyxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLGNBQWNDLHVCQUFPO0lBQy9DLFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsS0FBSyxDQUFFO1FBQ3BELEtBQUssQ0FBQ0osU0FBU0MsUUFBUUMsTUFBTUM7UUFFN0IsSUFBSSxDQUFDQyxLQUFLLEdBQUdBO0lBQ2Y7SUFFQUMsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDRCxLQUFLO0lBQ25CO0lBRUFFLFlBQVk7UUFDVixNQUFNQyxTQUFTLElBQUksQ0FBQ0gsS0FBSyxDQUFDRyxNQUFNO1FBRWhDLE9BQU9BO0lBQ1Q7SUFFQUMsUUFBUUMsS0FBSyxFQUFFO1FBQ2IsTUFBTUMsT0FBTyxJQUFJLENBQUNOLEtBQUssQ0FBQ0ssTUFBTSxJQUFJLE1BQU8sR0FBRztRQUU1QyxPQUFPQztJQUNUO0lBRUFDLFFBQVFELElBQUksRUFBRTtRQUNaLElBQUksQ0FBQ04sS0FBSyxDQUFDUSxJQUFJLENBQUNGO0lBQ2xCO0lBRUFHLFFBQVFDLFFBQVEsRUFBRUMsT0FBTyxFQUFFQyxJQUFJLEVBQUU7UUFDL0IsT0FBT3JCLElBQUksSUFBSSxDQUFDUyxLQUFLLEVBQUVVLFVBQVVDLFNBQVNDO0lBQzVDO0lBRUFDLFNBQVNqQixPQUFPLEVBQUVnQixJQUFJLEVBQUVELE9BQU8sRUFBRTtRQUMvQixPQUFPLElBQUksQ0FBQ0YsT0FBTyxDQUFDLENBQUNILE1BQU1LLFNBQVNDO1lBQ2xDLE9BQU9OLEtBQUtPLFFBQVEsQ0FBQ2pCLFNBQVNlLFNBQVNDO1FBQ3pDLEdBQUcsQ0FBQ0U7WUFDRixNQUFNQyxlQUFlQyxJQUFBQSxtQ0FBMkIsRUFBQ0YsY0FDM0NqQixTQUFTa0IsY0FDVGYsUUFBUWMsYUFDUmhCLE9BQU8sTUFDUEMsYUFBYTtZQUVuQkgsVUFBVTtZQUVWLE1BQU0sRUFBRXFCLE1BQU0sRUFBRSxHQUFHQyxpQkFBUSxFQUNyQkMsU0FBUyxJQUFJRixPQUFPckIsU0FBU0MsUUFBUUMsTUFBTUMsWUFBWUM7WUFFN0QsT0FBT1csUUFBUVEsUUFBUVA7UUFDekIsR0FBR0E7SUFDTDtJQUVBLE9BQU9RLE9BQU8sUUFBUTtJQUV0QixPQUFPQyxTQUFTZixJQUFJLEVBQUVWLE9BQU8sRUFBRTtRQUM3QixNQUFNMEIsYUFBYTtZQUNYaEI7U0FDRCxFQUNEaUIsY0FBY0MsSUFBQUEsaUNBQXlCLEVBQUNGLFlBQVkxQixVQUNwREMsU0FBUzBCLGFBQ1R2QixRQUFRc0IsWUFDUnhCLE9BQU8sTUFDUEMsYUFBYTtRQUVuQkgsVUFBVTtRQUVWLE1BQU02QixRQUFRLElBQUkvQixNQUFNRSxTQUFTQyxRQUFRQyxNQUFNQyxZQUFZQztRQUUzRCxPQUFPeUI7SUFDVDtBQUNGIn0=
@@ -41,21 +41,34 @@ const _default = (0, _elements.define)(class Values extends _occamlanguages.Elem
41
41
  return this.mapValue((value, forward, back)=>{
42
42
  return value.evaluate(context, forward, back);
43
43
  }, (valuesArray, back)=>{
44
- const valuesString = (0, _string.valuesStringFromValuesArray)(valuesArray, context), string = valuesString, array = valuesArray, node = null, breakPoint = null;
44
+ const valuesString = (0, _string.valuesStringFromValuesArray)(valuesArray), string = valuesString, array = valuesArray, node = null, breakPoint = null;
45
45
  context = null;
46
46
  const values = new Values(context, string, node, breakPoint, array);
47
47
  return forward(values, back);
48
48
  }, back);
49
49
  }
50
+ merge(values, context) {
51
+ let array;
52
+ array = values.getArray();
53
+ const valuesArray = [
54
+ ...this.array,
55
+ ...array
56
+ ], valuesString = (0, _string.valuesStringFromValuesArray)(valuesArray), string = valuesString; ///
57
+ array = valuesArray; ///
58
+ const node = null, breakPoint = null;
59
+ context = null;
60
+ values = new Values(context, string, node, breakPoint, array);
61
+ return values;
62
+ }
50
63
  static name = "Values";
51
64
  static fromValue(value, context) {
52
65
  const valuesArray = [
53
66
  value
54
- ], valuesString = (0, _string.valuesStringFromValuesArray)(valuesArray, context), string = valuesString, array = valuesArray, node = null, breakPoint = null;
67
+ ], valuesString = (0, _string.valuesStringFromValuesArray)(valuesArray), string = valuesString, array = valuesArray, node = null, breakPoint = null;
55
68
  context = null;
56
69
  const values = new Values(context, string, node, breakPoint, array);
57
70
  return values;
58
71
  }
59
72
  });
60
73
 
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3ZhbHVlcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCwgY29udGludWF0aW9uVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcbmltcG9ydCB7IHZhbHVlc1N0cmluZ0Zyb21WYWx1ZXNBcnJheSB9IGZyb20gXCIuLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5cbmNvbnN0IHsgbWFwIH0gPSBjb250aW51YXRpb25VdGlsaXRpZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBWYWx1ZXMgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBhcnJheSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLmFycmF5ID0gYXJyYXk7XG4gIH1cblxuICBnZXRBcnJheSgpIHtcbiAgICByZXR1cm4gdGhpcy5hcnJheTtcbiAgfVxuXG4gIGdldExlbmd0aCgpIHtcbiAgICBjb25zdCBsZW5ndGggPSB0aGlzLmFycmF5Lmxlbmd0aDtcblxuICAgIHJldHVybiBsZW5ndGg7XG4gIH1cblxuICBnZXRWYWx1ZShpbmRleCkge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5hcnJheVtpbmRleF0gfHwgbnVsbDsgIC8vL1xuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgYWRkVmFsdWUodmFsdWUpIHtcbiAgICB0aGlzLmFycmF5LnB1c2godmFsdWUpO1xuICB9XG5cbiAgbWFwVmFsdWUoY2FsbGJhY2ssIGZvcndhcmQsIGJhY2spIHtcbiAgICByZXR1cm4gbWFwKHRoaXMuYXJyYXksIGNhbGxiYWNrLCBmb3J3YXJkLCBiYWNrKTtcbiAgfVxuXG4gIGZvckVhY2hWYWx1ZShjYWxsYmFjaykge1xuICAgIHRoaXMuYXJyYXkuZm9yRWFjaChjYWxsYmFjayk7XG4gIH1cblxuICBldmFsdWF0ZShjb250ZXh0LCBmb3J3YXJkLCBiYWNrKSB7XG4gICAgcmV0dXJuIHRoaXMubWFwVmFsdWUoKHZhbHVlLCBmb3J3YXJkLCBiYWNrKSA9PiB7XG4gICAgICByZXR1cm4gdmFsdWUuZXZhbHVhdGUoY29udGV4dCwgZm9yd2FyZCwgYmFjayk7XG4gICAgfSwgKHZhbHVlc0FycmF5LCBiYWNrKSA9PiB7XG4gICAgICBjb25zdCB2YWx1ZXNTdHJpbmcgPSB2YWx1ZXNTdHJpbmdGcm9tVmFsdWVzQXJyYXkodmFsdWVzQXJyYXksIGNvbnRleHQpLFxuICAgICAgICAgICAgc3RyaW5nID0gdmFsdWVzU3RyaW5nLCAvLy9cbiAgICAgICAgICAgIGFycmF5ID0gdmFsdWVzQXJyYXksIC8vL1xuICAgICAgICAgICAgbm9kZSA9IG51bGwsXG4gICAgICAgICAgICBicmVha1BvaW50ID0gbnVsbDtcblxuICAgICAgY29udGV4dCA9IG51bGw7XG5cbiAgICAgIGNvbnN0IHZhbHVlcyA9IG5ldyBWYWx1ZXMoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBhcnJheSk7XG5cbiAgICAgIHJldHVybiBmb3J3YXJkKHZhbHVlcywgYmFjayk7XG4gICAgfSwgYmFjayk7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiVmFsdWVzXCI7XG5cbiAgc3RhdGljIGZyb21WYWx1ZSh2YWx1ZSwgY29udGV4dCkge1xuICAgIGNvbnN0IHZhbHVlc0FycmF5ID0gW1xuICAgICAgICAgICAgdmFsdWVcbiAgICAgICAgICBdLFxuICAgICAgICAgIHZhbHVlc1N0cmluZyA9IHZhbHVlc1N0cmluZ0Zyb21WYWx1ZXNBcnJheSh2YWx1ZXNBcnJheSwgY29udGV4dCksXG4gICAgICAgICAgc3RyaW5nID0gdmFsdWVzU3RyaW5nLCAvLy9cbiAgICAgICAgICBhcnJheSA9IHZhbHVlc0FycmF5LCAvLy9cbiAgICAgICAgICBub2RlID0gbnVsbCxcbiAgICAgICAgICBicmVha1BvaW50ID0gbnVsbDtcblxuICAgIGNvbnRleHQgPSBudWxsO1xuXG4gICAgY29uc3QgdmFsdWVzID0gbmV3IFZhbHVlcyhjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIGFycmF5KTtcblxuICAgIHJldHVybiB2YWx1ZXM7XG4gIH1cbn0pO1xuIl0sIm5hbWVzIjpbIm1hcCIsImNvbnRpbnVhdGlvblV0aWxpdGllcyIsImRlZmluZSIsIlZhbHVlcyIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJhcnJheSIsImdldEFycmF5IiwiZ2V0TGVuZ3RoIiwibGVuZ3RoIiwiZ2V0VmFsdWUiLCJpbmRleCIsInZhbHVlIiwiYWRkVmFsdWUiLCJwdXNoIiwibWFwVmFsdWUiLCJjYWxsYmFjayIsImZvcndhcmQiLCJiYWNrIiwiZm9yRWFjaFZhbHVlIiwiZm9yRWFjaCIsImV2YWx1YXRlIiwidmFsdWVzQXJyYXkiLCJ2YWx1ZXNTdHJpbmciLCJ2YWx1ZXNTdHJpbmdGcm9tVmFsdWVzQXJyYXkiLCJ2YWx1ZXMiLCJuYW1lIiwiZnJvbVZhbHVlIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFTQTs7O2VBQUE7OztnQ0FQK0M7MEJBRXhCO3dCQUNxQjtBQUU1QyxNQUFNLEVBQUVBLEdBQUcsRUFBRSxHQUFHQyxxQ0FBcUI7TUFFckMsV0FBZUMsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyxlQUFlQyx1QkFBTztJQUNoRCxZQUFZQyxPQUFPLEVBQUVDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxVQUFVLEVBQUVDLEtBQUssQ0FBRTtRQUNwRCxLQUFLLENBQUNKLFNBQVNDLFFBQVFDLE1BQU1DO1FBRTdCLElBQUksQ0FBQ0MsS0FBSyxHQUFHQTtJQUNmO0lBRUFDLFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQ0QsS0FBSztJQUNuQjtJQUVBRSxZQUFZO1FBQ1YsTUFBTUMsU0FBUyxJQUFJLENBQUNILEtBQUssQ0FBQ0csTUFBTTtRQUVoQyxPQUFPQTtJQUNUO0lBRUFDLFNBQVNDLEtBQUssRUFBRTtRQUNkLE1BQU1DLFFBQVEsSUFBSSxDQUFDTixLQUFLLENBQUNLLE1BQU0sSUFBSSxNQUFPLEdBQUc7UUFFN0MsT0FBT0M7SUFDVDtJQUVBQyxTQUFTRCxLQUFLLEVBQUU7UUFDZCxJQUFJLENBQUNOLEtBQUssQ0FBQ1EsSUFBSSxDQUFDRjtJQUNsQjtJQUVBRyxTQUFTQyxRQUFRLEVBQUVDLE9BQU8sRUFBRUMsSUFBSSxFQUFFO1FBQ2hDLE9BQU9yQixJQUFJLElBQUksQ0FBQ1MsS0FBSyxFQUFFVSxVQUFVQyxTQUFTQztJQUM1QztJQUVBQyxhQUFhSCxRQUFRLEVBQUU7UUFDckIsSUFBSSxDQUFDVixLQUFLLENBQUNjLE9BQU8sQ0FBQ0o7SUFDckI7SUFFQUssU0FBU25CLE9BQU8sRUFBRWUsT0FBTyxFQUFFQyxJQUFJLEVBQUU7UUFDL0IsT0FBTyxJQUFJLENBQUNILFFBQVEsQ0FBQyxDQUFDSCxPQUFPSyxTQUFTQztZQUNwQyxPQUFPTixNQUFNUyxRQUFRLENBQUNuQixTQUFTZSxTQUFTQztRQUMxQyxHQUFHLENBQUNJLGFBQWFKO1lBQ2YsTUFBTUssZUFBZUMsSUFBQUEsbUNBQTJCLEVBQUNGLGFBQWFwQixVQUN4REMsU0FBU29CLGNBQ1RqQixRQUFRZ0IsYUFDUmxCLE9BQU8sTUFDUEMsYUFBYTtZQUVuQkgsVUFBVTtZQUVWLE1BQU11QixTQUFTLElBQUl6QixPQUFPRSxTQUFTQyxRQUFRQyxNQUFNQyxZQUFZQztZQUU3RCxPQUFPVyxRQUFRUSxRQUFRUDtRQUN6QixHQUFHQTtJQUNMO0lBRUEsT0FBT1EsT0FBTyxTQUFTO0lBRXZCLE9BQU9DLFVBQVVmLEtBQUssRUFBRVYsT0FBTyxFQUFFO1FBQy9CLE1BQU1vQixjQUFjO1lBQ1pWO1NBQ0QsRUFDRFcsZUFBZUMsSUFBQUEsbUNBQTJCLEVBQUNGLGFBQWFwQixVQUN4REMsU0FBU29CLGNBQ1RqQixRQUFRZ0IsYUFDUmxCLE9BQU8sTUFDUEMsYUFBYTtRQUVuQkgsVUFBVTtRQUVWLE1BQU11QixTQUFTLElBQUl6QixPQUFPRSxTQUFTQyxRQUFRQyxNQUFNQyxZQUFZQztRQUU3RCxPQUFPbUI7SUFDVDtBQUNGIn0=
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3ZhbHVlcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCwgY29udGludWF0aW9uVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcbmltcG9ydCB7IHZhbHVlc1N0cmluZ0Zyb21WYWx1ZXNBcnJheSB9IGZyb20gXCIuLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5cbmNvbnN0IHsgbWFwIH0gPSBjb250aW51YXRpb25VdGlsaXRpZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBWYWx1ZXMgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBhcnJheSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLmFycmF5ID0gYXJyYXk7XG4gIH1cblxuICBnZXRBcnJheSgpIHtcbiAgICByZXR1cm4gdGhpcy5hcnJheTtcbiAgfVxuXG4gIGdldExlbmd0aCgpIHtcbiAgICBjb25zdCBsZW5ndGggPSB0aGlzLmFycmF5Lmxlbmd0aDtcblxuICAgIHJldHVybiBsZW5ndGg7XG4gIH1cblxuICBnZXRWYWx1ZShpbmRleCkge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5hcnJheVtpbmRleF0gfHwgbnVsbDsgIC8vL1xuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgYWRkVmFsdWUodmFsdWUpIHtcbiAgICB0aGlzLmFycmF5LnB1c2godmFsdWUpO1xuICB9XG5cbiAgbWFwVmFsdWUoY2FsbGJhY2ssIGZvcndhcmQsIGJhY2spIHtcbiAgICByZXR1cm4gbWFwKHRoaXMuYXJyYXksIGNhbGxiYWNrLCBmb3J3YXJkLCBiYWNrKTtcbiAgfVxuXG4gIGZvckVhY2hWYWx1ZShjYWxsYmFjaykge1xuICAgIHRoaXMuYXJyYXkuZm9yRWFjaChjYWxsYmFjayk7XG4gIH1cblxuICBldmFsdWF0ZShjb250ZXh0LCBmb3J3YXJkLCBiYWNrKSB7XG4gICAgcmV0dXJuIHRoaXMubWFwVmFsdWUoKHZhbHVlLCBmb3J3YXJkLCBiYWNrKSA9PiB7XG4gICAgICByZXR1cm4gdmFsdWUuZXZhbHVhdGUoY29udGV4dCwgZm9yd2FyZCwgYmFjayk7XG4gICAgfSwgKHZhbHVlc0FycmF5LCBiYWNrKSA9PiB7XG4gICAgICBjb25zdCB2YWx1ZXNTdHJpbmcgPSB2YWx1ZXNTdHJpbmdGcm9tVmFsdWVzQXJyYXkodmFsdWVzQXJyYXkpLFxuICAgICAgICAgICAgc3RyaW5nID0gdmFsdWVzU3RyaW5nLCAvLy9cbiAgICAgICAgICAgIGFycmF5ID0gdmFsdWVzQXJyYXksIC8vL1xuICAgICAgICAgICAgbm9kZSA9IG51bGwsXG4gICAgICAgICAgICBicmVha1BvaW50ID0gbnVsbDtcblxuICAgICAgY29udGV4dCA9IG51bGw7XG5cbiAgICAgIGNvbnN0IHZhbHVlcyA9IG5ldyBWYWx1ZXMoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBhcnJheSk7XG5cbiAgICAgIHJldHVybiBmb3J3YXJkKHZhbHVlcywgYmFjayk7XG4gICAgfSwgYmFjayk7XG4gIH1cblxuICBtZXJnZSh2YWx1ZXMsIGNvbnRleHQpIHtcbiAgICBsZXQgYXJyYXk7XG5cbiAgICBhcnJheSA9IHZhbHVlcy5nZXRBcnJheSgpO1xuXG4gICAgY29uc3QgdmFsdWVzQXJyYXkgPSBbXG4gICAgICAgICAgICAuLi50aGlzLmFycmF5LFxuICAgICAgICAgICAgLi4uYXJyYXksXG4gICAgICAgICAgXSxcbiAgICAgICAgICB2YWx1ZXNTdHJpbmcgPSB2YWx1ZXNTdHJpbmdGcm9tVmFsdWVzQXJyYXkodmFsdWVzQXJyYXkpLFxuICAgICAgICAgIHN0cmluZyA9IHZhbHVlc1N0cmluZzsgLy8vXG5cbiAgICBhcnJheSA9IHZhbHVlc0FycmF5OyAvLy9cblxuICAgIGNvbnN0IG5vZGUgPSBudWxsLFxuICAgICAgICAgIGJyZWFrUG9pbnQgPSBudWxsO1xuXG4gICAgY29udGV4dCA9IG51bGw7XG5cbiAgICB2YWx1ZXMgPSBuZXcgVmFsdWVzKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgYXJyYXkpO1xuXG4gICAgcmV0dXJuIHZhbHVlcztcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJWYWx1ZXNcIjtcblxuICBzdGF0aWMgZnJvbVZhbHVlKHZhbHVlLCBjb250ZXh0KSB7XG4gICAgY29uc3QgdmFsdWVzQXJyYXkgPSBbXG4gICAgICAgICAgICB2YWx1ZVxuICAgICAgICAgIF0sXG4gICAgICAgICAgdmFsdWVzU3RyaW5nID0gdmFsdWVzU3RyaW5nRnJvbVZhbHVlc0FycmF5KHZhbHVlc0FycmF5KSxcbiAgICAgICAgICBzdHJpbmcgPSB2YWx1ZXNTdHJpbmcsIC8vL1xuICAgICAgICAgIGFycmF5ID0gdmFsdWVzQXJyYXksIC8vL1xuICAgICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICAgIGJyZWFrUG9pbnQgPSBudWxsO1xuXG4gICAgY29udGV4dCA9IG51bGw7XG5cbiAgICBjb25zdCB2YWx1ZXMgPSBuZXcgVmFsdWVzKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgYXJyYXkpO1xuXG4gICAgcmV0dXJuIHZhbHVlcztcbiAgfVxufSk7XG4iXSwibmFtZXMiOlsibWFwIiwiY29udGludWF0aW9uVXRpbGl0aWVzIiwiZGVmaW5lIiwiVmFsdWVzIiwiRWxlbWVudCIsImNvbnRleHQiLCJzdHJpbmciLCJub2RlIiwiYnJlYWtQb2ludCIsImFycmF5IiwiZ2V0QXJyYXkiLCJnZXRMZW5ndGgiLCJsZW5ndGgiLCJnZXRWYWx1ZSIsImluZGV4IiwidmFsdWUiLCJhZGRWYWx1ZSIsInB1c2giLCJtYXBWYWx1ZSIsImNhbGxiYWNrIiwiZm9yd2FyZCIsImJhY2siLCJmb3JFYWNoVmFsdWUiLCJmb3JFYWNoIiwiZXZhbHVhdGUiLCJ2YWx1ZXNBcnJheSIsInZhbHVlc1N0cmluZyIsInZhbHVlc1N0cmluZ0Zyb21WYWx1ZXNBcnJheSIsInZhbHVlcyIsIm1lcmdlIiwibmFtZSIsImZyb21WYWx1ZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBU0E7OztlQUFBOzs7Z0NBUCtDOzBCQUV4Qjt3QkFDcUI7QUFFNUMsTUFBTSxFQUFFQSxHQUFHLEVBQUUsR0FBR0MscUNBQXFCO01BRXJDLFdBQWVDLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsZUFBZUMsdUJBQU87SUFDaEQsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxLQUFLLENBQUU7UUFDcEQsS0FBSyxDQUFDSixTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLEtBQUssR0FBR0E7SUFDZjtJQUVBQyxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUNELEtBQUs7SUFDbkI7SUFFQUUsWUFBWTtRQUNWLE1BQU1DLFNBQVMsSUFBSSxDQUFDSCxLQUFLLENBQUNHLE1BQU07UUFFaEMsT0FBT0E7SUFDVDtJQUVBQyxTQUFTQyxLQUFLLEVBQUU7UUFDZCxNQUFNQyxRQUFRLElBQUksQ0FBQ04sS0FBSyxDQUFDSyxNQUFNLElBQUksTUFBTyxHQUFHO1FBRTdDLE9BQU9DO0lBQ1Q7SUFFQUMsU0FBU0QsS0FBSyxFQUFFO1FBQ2QsSUFBSSxDQUFDTixLQUFLLENBQUNRLElBQUksQ0FBQ0Y7SUFDbEI7SUFFQUcsU0FBU0MsUUFBUSxFQUFFQyxPQUFPLEVBQUVDLElBQUksRUFBRTtRQUNoQyxPQUFPckIsSUFBSSxJQUFJLENBQUNTLEtBQUssRUFBRVUsVUFBVUMsU0FBU0M7SUFDNUM7SUFFQUMsYUFBYUgsUUFBUSxFQUFFO1FBQ3JCLElBQUksQ0FBQ1YsS0FBSyxDQUFDYyxPQUFPLENBQUNKO0lBQ3JCO0lBRUFLLFNBQVNuQixPQUFPLEVBQUVlLE9BQU8sRUFBRUMsSUFBSSxFQUFFO1FBQy9CLE9BQU8sSUFBSSxDQUFDSCxRQUFRLENBQUMsQ0FBQ0gsT0FBT0ssU0FBU0M7WUFDcEMsT0FBT04sTUFBTVMsUUFBUSxDQUFDbkIsU0FBU2UsU0FBU0M7UUFDMUMsR0FBRyxDQUFDSSxhQUFhSjtZQUNmLE1BQU1LLGVBQWVDLElBQUFBLG1DQUEyQixFQUFDRixjQUMzQ25CLFNBQVNvQixjQUNUakIsUUFBUWdCLGFBQ1JsQixPQUFPLE1BQ1BDLGFBQWE7WUFFbkJILFVBQVU7WUFFVixNQUFNdUIsU0FBUyxJQUFJekIsT0FBT0UsU0FBU0MsUUFBUUMsTUFBTUMsWUFBWUM7WUFFN0QsT0FBT1csUUFBUVEsUUFBUVA7UUFDekIsR0FBR0E7SUFDTDtJQUVBUSxNQUFNRCxNQUFNLEVBQUV2QixPQUFPLEVBQUU7UUFDckIsSUFBSUk7UUFFSkEsUUFBUW1CLE9BQU9sQixRQUFRO1FBRXZCLE1BQU1lLGNBQWM7ZUFDVCxJQUFJLENBQUNoQixLQUFLO2VBQ1ZBO1NBQ0osRUFDRGlCLGVBQWVDLElBQUFBLG1DQUEyQixFQUFDRixjQUMzQ25CLFNBQVNvQixjQUFjLEdBQUc7UUFFaENqQixRQUFRZ0IsYUFBYSxHQUFHO1FBRXhCLE1BQU1sQixPQUFPLE1BQ1BDLGFBQWE7UUFFbkJILFVBQVU7UUFFVnVCLFNBQVMsSUFBSXpCLE9BQU9FLFNBQVNDLFFBQVFDLE1BQU1DLFlBQVlDO1FBRXZELE9BQU9tQjtJQUNUO0lBRUEsT0FBT0UsT0FBTyxTQUFTO0lBRXZCLE9BQU9DLFVBQVVoQixLQUFLLEVBQUVWLE9BQU8sRUFBRTtRQUMvQixNQUFNb0IsY0FBYztZQUNaVjtTQUNELEVBQ0RXLGVBQWVDLElBQUFBLG1DQUEyQixFQUFDRixjQUMzQ25CLFNBQVNvQixjQUNUakIsUUFBUWdCLGFBQ1JsQixPQUFPLE1BQ1BDLGFBQWE7UUFFbkJILFVBQVU7UUFFVixNQUFNdUIsU0FBUyxJQUFJekIsT0FBT0UsU0FBU0MsUUFBUUMsTUFBTUMsWUFBWUM7UUFFN0QsT0FBT21CO0lBQ1Q7QUFDRiJ9
@@ -36,7 +36,7 @@ const bnf = `
36
36
 
37
37
  objectAssignment ::= "{" namedBindings "}" "=" variable ";" ;
38
38
 
39
- listAssignment ::= "[" bindings "]" "=" variable ";" ;
39
+ listAssignment ::= "[" bindings "]" "=" variable ";" ;
40
40
 
41
41
 
42
42
 
@@ -52,9 +52,7 @@ const bnf = `
52
52
 
53
53
  some ::= "some"<NO_WHITESPACE>"(" variable "," anonymousProcedure ")" ;
54
54
 
55
- all ::= "all"<NO_WHITESPACE>"(" variable "," referencesListLiteral ( "," values )? ")" ;
56
-
57
- exists ::= "exists"<NO_WHITESPACE>"(" variable "," referencesListLiteral ( "," values )? ")" ;
55
+ apply ::= "all"<NO_WHITESPACE>"(" variable "," referencesListLiteral ( "," values )? ")" ;
58
56
 
59
57
 
60
58
 
@@ -229,4 +227,4 @@ const bnf = `
229
227
  `;
230
228
  const _default = bnf;
231
229
 
232
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9leGFtcGxlL2Z1cnRsZS9ibmYuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmNvbnN0IGJuZiA9IGBcblxuICAgIGRvY3VtZW50ICAgICAgICAgICAgICAgIDo6PSAgKCBpbXBvcnRTdGF0ZW1lbnQgfCBwcm9jZWR1cmUgfCBlcnJvciApKyA7XG4gICAgXG4gICAgXG4gICAgXG4gICAgcHJvY2VkdXJlICAgICAgICAgICAgICAgOjo9ICBcImV4cG9ydFwiPyB0eXBlIGxhYmVsPE5PX1dISVRFU1BBQ0U+XCIoXCIgcGFyYW1ldGVycz8gXCIpXCIgcmV0dXJuQmxvY2sgO1xuICAgIFxuICAgIGltcG9ydFN0YXRlbWVudCAgICAgICAgIDo6PSAgXCJpbXBvcnRcIiBpbXBvcnRCaW5kaW5ncyBcImZyb21cIiBbc3RyaW5nLWxpdGVyYWxdIFwiO1wiIDtcbiAgICBcbiAgICBhbm9ueW1vdXNQcm9jZWR1cmUgICAgICA6Oj0gIHR5cGUgXCIoXCIgcGFyYW1ldGVycz8gXCIpXCIgcmV0dXJuQmxvY2sgO1xuICAgIFxuICAgIHN0YXRlbWVudCAgICAgICAgICAgICAgIDo6PSAgdmFyaWFibGVBc3NpZ25tZW50c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBvYmplY3RBc3NpZ25tZW50XG4gICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgbGlzdEFzc2lnbm1lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOyAgXG4gICAgICBcbiAgICAgIFxuICAgIFxuICAgIHZhcmlhYmxlQXNzaWdubWVudHMgICAgIDo6PSAgdHlwZSB2YXJpYWJsZUFzc2lnbm1lbnQgKCBcIixcIiB2YXJpYWJsZUFzc2lnbm1lbnQgKSogXCI7XCIgO1xuICAgIFxuICAgIHZhcmlhYmxlQXNzaWdubWVudCAgICAgIDo6PSAgdmFyaWFibGUgXCI9XCIgZXhwcmVzc2lvbiA7XG4gICAgXG4gICAgb2JqZWN0QXNzaWdubWVudCAgICAgICAgOjo9ICBcIntcIiBuYW1lZEJpbmRpbmdzIFwifVwiIFwiPVwiIHZhcmlhYmxlIFwiO1wiIDtcbiAgICBcbiAgICBsaXN0QXNzaWdubWVudCAgICAgICAgIDo6PSAgXCJbXCIgYmluZGluZ3MgXCJdXCIgXCI9XCIgdmFyaWFibGUgXCI7XCIgO1xuICAgIFxuXG5cbiAgICBwcm9jZWR1cmVDYWxsICAgICAgICAgICA6Oj0gIHJlZmVyZW5jZTxOT19XSElURVNQQUNFPlwiKFwiIHZhbHVlcz8gXCIpXCIgO1xuICAgIFxuICAgIHJldHVybkJsb2NrLi4gICAgICAgICAgIDo6PSAgXCJ7XCIgKCBzdGF0ZW1lbnQgfCBub25zZW5zZSApKiByZXR1cm5TdGF0ZW1lbnQgXCJ9XCIgO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgIHRlcm5hcnkgICAgICAgICAgICAgICAgIDo6PSAgXCJpZlwiIFwiKFwiIHRlcm0gXCIpXCIgZXhwcmVzc2lvbiBcImVsc2VcIiBleHByZXNzaW9uIDtcbiAgICBcbiAgICByZWR1Y2UgICAgICAgICAgICAgICAgICA6Oj0gIFwicmVkdWNlXCI8Tk9fV0hJVEVTUEFDRT5cIihcIiB2YXJpYWJsZSBcIixcIiBhbm9ueW1vdXNQcm9jZWR1cmUgXCIsXCIgdmFsdWUgXCIpXCIgO1xuICAgIFxuICAgIGV2ZXJ5ICAgICAgICAgICAgICAgICAgIDo6PSAgXCJldmVyeVwiPE5PX1dISVRFU1BBQ0U+XCIoXCIgdmFyaWFibGUgXCIsXCIgYW5vbnltb3VzUHJvY2VkdXJlIFwiKVwiIDtcbiAgICBcbiAgICBzb21lICAgICAgICAgICAgICAgICAgICA6Oj0gIFwic29tZVwiPE5PX1dISVRFU1BBQ0U+XCIoXCIgdmFyaWFibGUgXCIsXCIgYW5vbnltb3VzUHJvY2VkdXJlIFwiKVwiIDtcblxuICAgIGFsbCAgICAgICAgICAgICAgICAgICAgIDo6PSAgXCJhbGxcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiLFwiIHJlZmVyZW5jZXNMaXN0TGl0ZXJhbCAoIFwiLFwiIHZhbHVlcyApPyBcIilcIiA7XG4gICAgXG4gICAgZXhpc3RzICAgICAgICAgICAgICAgICAgOjo9ICBcImV4aXN0c1wiPE5PX1dISVRFU1BBQ0U+XCIoXCIgdmFyaWFibGUgXCIsXCIgcmVmZXJlbmNlc0xpc3RMaXRlcmFsICggXCIsXCIgdmFsdWVzICk/IFwiKVwiIDsgICAgXG4gICAgXG4gICAgXG4gICAgXG4gICAgbm9kZXNRdWVyeSAgICAgICAgICAgICAgOjo9ICBcIm5vZGVzUXVlcnlcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiLFwiIFtzdHJpbmctbGl0ZXJhbF0gXCIpXCIgO1xuICAgIFxuICAgIG5vZGVRdWVyeSAgICAgICAgICAgICAgIDo6PSAgXCJub2RlUXVlcnlcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiLFwiIFtzdHJpbmctbGl0ZXJhbF0gXCIpXCIgO1xuICAgIFxuICAgIGxlbmd0aE9mICAgICAgICAgICAgICAgIDo6PSAgXCJsZW5ndGhPZlwiPE5PX1dISVRFU1BBQ0U+XCIoXCIgdmFyaWFibGUgXCIpXCIgO1xuICAgIFxuICAgIHRvSW50ZWdlciAgICAgICAgICAgICAgIDo6PSAgXCJ0b0ludGVnZXJcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiKVwiIDtcbiAgICBcbiAgICB0cnlJbnRlZ2VyICAgICAgICAgICAgICA6Oj0gIFwidHJ5SW50ZWdlclwiPE5PX1dISVRFU1BBQ0U+XCIoXCIgdmFyaWFibGUgXCIpXCIgO1xuICAgIFxuICAgIHN0YXJ0c1dpdGggICAgICAgICAgICAgIDo6PSAgXCJzdGFydHNXaXRoXCI8Tk9fV0hJVEVTUEFDRT5cIihcIiB2YXJpYWJsZSBcIixcIiBbc3RyaW5nLWxpdGVyYWxdIFwiKVwiIDtcbiAgICBcbiAgICBlbmRzV2l0aCAgICAgICAgICAgICAgICA6Oj0gIFwiZW5kc1dpdGhcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiLFwiIFtzdHJpbmctbGl0ZXJhbF0gXCIpXCIgO1xuICAgIFxuICAgIGNvbnRhaW5zICAgICAgICAgICAgICAgIDo6PSAgXCJjb250YWluc1wiPE5PX1dISVRFU1BBQ0U+XCIoXCIgdmFyaWFibGUgXCIsXCIgW3N0cmluZy1saXRlcmFsXSBcIilcIiA7XG4gICAgXG4gICAgXG4gICAgXG4gICAgcmV0dXJuU3RhdGVtZW50ICAgICAgICAgOjo9ICBcInJldHVyblwiIHZhbHVlIFwiO1wiIDsgXG4gICAgXG4gICAgXG4gICAgXG4gICAgcmVmZXJlbmNlc0xpc3RMaXRlcmFsICAgOjo9ICBcIltcIiByZWZlcmVuY2VzPyBcIl1cIiA7XG4gICAgIFxuICAgICBcbiAgICAgXG4gICAgaW1wb3J0QmluZGluZ3MgICAgICAgICAgOjo9ICBpbXBvcnRCaW5kaW5nICggXCIsXCIgaW1wb3J0QmluZGluZyApKiA7XG4gICAgXG4gICAgbmFtZWRCaW5kaW5ncyAgICAgICAgICAgOjo9ICBuYW1lZEJpbmRpbmcgKCBcIixcIiBuYW1lZEJpbmRpbmcgKSogO1xuICAgIFxuICAgIHBhcmFtZXRlcnMgICAgICAgICAgICAgIDo6PSAgcGFyYW1ldGVyICggXCIsXCIgcGFyYW1ldGVyICkqIDtcbiAgICBcbiAgICByZWZlcmVuY2VzICAgICAgICAgICAgICA6Oj0gIHJlZmVyZW5jZSAoIFwiLFwiIHJlZmVyZW5jZSApKiA7XG4gICAgXG4gICAgYmluZGluZ3MgICAgICAgICAgICAgICAgOjo9ICBiaW5kaW5nICggXCIsXCIgYmluZGluZyApKiA7XG4gICAgXG4gICAgdmFsdWVzICAgICAgICAgICAgICAgICAgOjo9ICB2YWx1ZSAoIFwiLFwiIHZhbHVlICkqIDtcbiAgICBcbiAgICB0ZXJtcyAgICAgICAgICAgICAgICAgICA6Oj0gIHRlcm0gKCBcIixcIiB0ZXJtICkqIDtcbiAgICBcblxuXG4gICAgaW1wb3J0QmluZGluZyAgICAgICAgICAgOjo9ICByZWZlcmVuY2UgKCBcImFzXCIgbGFiZWwgKT8gOyAgIFxuICAgIFxuICAgIG5hbWVkQmluZGluZyAgICAgICAgICAgIDo6PSAgdHlwZSBbbmFtZV0gKCBcImFzXCIgW25hbWVdICk/IDsgICBcbiAgICBcbiAgICBwYXJhbWV0ZXIgICAgICAgICAgICAgICA6Oj0gIHR5cGUgW25hbWVdIDtcblxuICAgIGJpbmRpbmcgICAgICAgICAgICAgICAgIDo6PSAgdHlwZSBbbmFtZV1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIM61IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgO1xuXG5cbiAgICBcbiAgICBjb21wYXJpc29uVGVybSAgICAgICAgICA6Oj0gIHRlcm0gKCBcIj09XCIgfCBcIiE9XCIgKSB0ZXJtIDsgXG4gICAgXG4gICAgYnJhY2tldGVkVGVybSAgICAgICAgICAgOjo9ICBcIihcIiB0ZXJtIFwiKVwiIDsgXG4gICAgXG4gICAgbmVnYXRlZFRlcm0gICAgICAgICAgICAgOjo9ICBcIiFcIjxOT19XSElURVNQQUNFPnRlcm0gOyBcbiAgICBcbiAgICBsb2dpY2FsVGVybSAgICAgICAgICAgICA6Oj0gIHRlcm0gKCBcInx8XCIgfCBcIiYmXCIgKSB0ZXJtIDsgXG5cblxuICAgIFxuICAgIGV4cHJlc3Npb24gICAgICAgICAgICAgIDo6PSAgcHJvY2VkdXJlQ2FsbFxuICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIHJldHVybkJsb2NrXG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICB0ZXJuYXJ5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIHJlZHVjZVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgZXZlcnlcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIHNvbWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgYWxsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIGV4aXN0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBub2Rlc1F1ZXJ5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIG5vZGVRdWVyeVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBsZW5ndGhPZlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIHRvSW50ZWdlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIHRyeUludGVnZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBzdGFydHNXaXRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIGVuZHNXaXRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIGNvbnRhaW5zXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIHRlcm1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgO1xuICAgIFxuICAgIFxuICAgIFxuICAgIHRlcm0gICAgICAgICAgICAgICAgICAgIDo6PSAgY29tcGFyaXNvblRlcm0gXG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBicmFja2V0ZWRUZXJtIFxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgbG9naWNhbFRlcm0gXG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBuZWdhdGVkVGVybSBcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIHByaW1pdGl2ZSBcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIHZhcmlhYmxlIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7XG5cblxuICAgIFxuICAgIHR5cGUgICAgICAgICAgICAgICAgICAgIDo6PSAgXCJMaXN0XCI8Tk9fV0hJVEVTUEFDRT5cIjxcIiAoIFwiTm9kZVwiIHwgXCJTdHJpbmdcIiB8IFwiQm9vbGVhblwiIHwgXCJJbnRlZ2VyXCIgKSBcIj5cIlxuICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIFwiTm9kZVwiICBcbiAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBcIlN0cmluZ1wiIFxuICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIFwiQm9vbGVhblwiICAgXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIFwiSW50ZWdlclwiICAgXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDtcblxuXG4gICAgXG4gICAgdmFsdWUgICAgICAgICAgICAgICAgICAgOjo9ICBwcmltaXRpdmUgXG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICB2YXJpYWJsZSBcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgO1xuXG5cbiAgICBcbiAgICBwcmltaXRpdmUgICAgICAgICAgICAgICA6Oj0gIFtzdHJpbmctbGl0ZXJhbF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgW2Jvb2xlYW5dXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIFtpbnRlZ2VyXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBbbnVsbF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7XG5cblxuXG4gICAgcmVmZXJlbmNlLiAgICAgICAgICAgICAgOjo9ICBbbmFtZV0gO1xuICAgIFxuICAgIHZhcmlhYmxlLiAgICAgICAgICAgICAgIDo6PSAgW25hbWVdIDtcbiAgICBcbiAgICBsYWJlbC4gICAgICAgICAgICAgICAgICA6Oj0gIFtuYW1lXSA7XG4gICAgXG4gICAgXG4gICAgXG4gICAgbm9uc2Vuc2UuICAgICAgICAgICAgICAgOjo9ICBbc3RyaW5nLWxpdGVyYWxdIHwgW3NlY29uZGFyeS1rZXl3b3JkXSB8IFtmdW5jdGlvbi1uYW1lXSB8IFt0eXBlXSB8IFtib29sZWFuXSB8IFtpbnRlZ2VyXSB8IFtudWxsXSB8IFtuYW1lXSB8IFtzcGVjaWFsXSB8IFt1bmFzc2lnbmVkXSA7XG5cblxuICAgIFxuICAgIGVycm9yLiAgICAgICAgICAgICAgICAgIDo6PSAgLiA7XG4gICAgXG5gO1xuXG5leHBvcnQgZGVmYXVsdCBibmY7XG4iXSwibmFtZXMiOlsiYm5mIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkE4TkE7OztlQUFBOzs7QUE1TkEsTUFBTUEsTUFBTSxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQTBOYixDQUFDO01BRUQsV0FBZUEifQ==
230
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9leGFtcGxlL2Z1cnRsZS9ibmYuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmNvbnN0IGJuZiA9IGBcblxuICAgIGRvY3VtZW50ICAgICAgICAgICAgICAgIDo6PSAgKCBpbXBvcnRTdGF0ZW1lbnQgfCBwcm9jZWR1cmUgfCBlcnJvciApKyA7XG4gICAgXG4gICAgXG4gICAgXG4gICAgcHJvY2VkdXJlICAgICAgICAgICAgICAgOjo9ICBcImV4cG9ydFwiPyB0eXBlIGxhYmVsPE5PX1dISVRFU1BBQ0U+XCIoXCIgcGFyYW1ldGVycz8gXCIpXCIgcmV0dXJuQmxvY2sgO1xuICAgIFxuICAgIGltcG9ydFN0YXRlbWVudCAgICAgICAgIDo6PSAgXCJpbXBvcnRcIiBpbXBvcnRCaW5kaW5ncyBcImZyb21cIiBbc3RyaW5nLWxpdGVyYWxdIFwiO1wiIDtcbiAgICBcbiAgICBhbm9ueW1vdXNQcm9jZWR1cmUgICAgICA6Oj0gIHR5cGUgXCIoXCIgcGFyYW1ldGVycz8gXCIpXCIgcmV0dXJuQmxvY2sgO1xuICAgIFxuICAgIHN0YXRlbWVudCAgICAgICAgICAgICAgIDo6PSAgdmFyaWFibGVBc3NpZ25tZW50c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBvYmplY3RBc3NpZ25tZW50XG4gICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgbGlzdEFzc2lnbm1lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOyAgXG4gICAgICBcbiAgICAgIFxuICAgIFxuICAgIHZhcmlhYmxlQXNzaWdubWVudHMgICAgIDo6PSAgdHlwZSB2YXJpYWJsZUFzc2lnbm1lbnQgKCBcIixcIiB2YXJpYWJsZUFzc2lnbm1lbnQgKSogXCI7XCIgO1xuICAgIFxuICAgIHZhcmlhYmxlQXNzaWdubWVudCAgICAgIDo6PSAgdmFyaWFibGUgXCI9XCIgZXhwcmVzc2lvbiA7XG4gICAgXG4gICAgb2JqZWN0QXNzaWdubWVudCAgICAgICAgOjo9ICBcIntcIiBuYW1lZEJpbmRpbmdzIFwifVwiIFwiPVwiIHZhcmlhYmxlIFwiO1wiIDtcbiAgICBcbiAgICBsaXN0QXNzaWdubWVudCAgICAgICAgICA6Oj0gIFwiW1wiIGJpbmRpbmdzIFwiXVwiIFwiPVwiIHZhcmlhYmxlIFwiO1wiIDtcbiAgICBcblxuXG4gICAgcHJvY2VkdXJlQ2FsbCAgICAgICAgICAgOjo9ICByZWZlcmVuY2U8Tk9fV0hJVEVTUEFDRT5cIihcIiB2YWx1ZXM/IFwiKVwiIDtcbiAgICBcbiAgICByZXR1cm5CbG9jay4uICAgICAgICAgICA6Oj0gIFwie1wiICggc3RhdGVtZW50IHwgbm9uc2Vuc2UgKSogcmV0dXJuU3RhdGVtZW50IFwifVwiIDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICB0ZXJuYXJ5ICAgICAgICAgICAgICAgICA6Oj0gIFwiaWZcIiBcIihcIiB0ZXJtIFwiKVwiIGV4cHJlc3Npb24gXCJlbHNlXCIgZXhwcmVzc2lvbiA7XG4gICAgXG4gICAgcmVkdWNlICAgICAgICAgICAgICAgICAgOjo9ICBcInJlZHVjZVwiPE5PX1dISVRFU1BBQ0U+XCIoXCIgdmFyaWFibGUgXCIsXCIgYW5vbnltb3VzUHJvY2VkdXJlIFwiLFwiIHZhbHVlIFwiKVwiIDtcbiAgICBcbiAgICBldmVyeSAgICAgICAgICAgICAgICAgICA6Oj0gIFwiZXZlcnlcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiLFwiIGFub255bW91c1Byb2NlZHVyZSBcIilcIiA7XG4gICAgXG4gICAgc29tZSAgICAgICAgICAgICAgICAgICAgOjo9ICBcInNvbWVcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiLFwiIGFub255bW91c1Byb2NlZHVyZSBcIilcIiA7XG5cbiAgICBhcHBseSAgICAgICAgICAgICAgICAgICA6Oj0gIFwiYWxsXCI8Tk9fV0hJVEVTUEFDRT5cIihcIiB2YXJpYWJsZSBcIixcIiByZWZlcmVuY2VzTGlzdExpdGVyYWwgKCBcIixcIiB2YWx1ZXMgKT8gXCIpXCIgO1xuICAgIFxuICAgIFxuICAgIFxuICAgIG5vZGVzUXVlcnkgICAgICAgICAgICAgIDo6PSAgXCJub2Rlc1F1ZXJ5XCI8Tk9fV0hJVEVTUEFDRT5cIihcIiB2YXJpYWJsZSBcIixcIiBbc3RyaW5nLWxpdGVyYWxdIFwiKVwiIDtcbiAgICBcbiAgICBub2RlUXVlcnkgICAgICAgICAgICAgICA6Oj0gIFwibm9kZVF1ZXJ5XCI8Tk9fV0hJVEVTUEFDRT5cIihcIiB2YXJpYWJsZSBcIixcIiBbc3RyaW5nLWxpdGVyYWxdIFwiKVwiIDtcbiAgICBcbiAgICBsZW5ndGhPZiAgICAgICAgICAgICAgICA6Oj0gIFwibGVuZ3RoT2ZcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiKVwiIDtcbiAgICBcbiAgICB0b0ludGVnZXIgICAgICAgICAgICAgICA6Oj0gIFwidG9JbnRlZ2VyXCI8Tk9fV0hJVEVTUEFDRT5cIihcIiB2YXJpYWJsZSBcIilcIiA7XG4gICAgXG4gICAgdHJ5SW50ZWdlciAgICAgICAgICAgICAgOjo9ICBcInRyeUludGVnZXJcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiKVwiIDtcbiAgICBcbiAgICBzdGFydHNXaXRoICAgICAgICAgICAgICA6Oj0gIFwic3RhcnRzV2l0aFwiPE5PX1dISVRFU1BBQ0U+XCIoXCIgdmFyaWFibGUgXCIsXCIgW3N0cmluZy1saXRlcmFsXSBcIilcIiA7XG4gICAgXG4gICAgZW5kc1dpdGggICAgICAgICAgICAgICAgOjo9ICBcImVuZHNXaXRoXCI8Tk9fV0hJVEVTUEFDRT5cIihcIiB2YXJpYWJsZSBcIixcIiBbc3RyaW5nLWxpdGVyYWxdIFwiKVwiIDtcbiAgICBcbiAgICBjb250YWlucyAgICAgICAgICAgICAgICA6Oj0gIFwiY29udGFpbnNcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiLFwiIFtzdHJpbmctbGl0ZXJhbF0gXCIpXCIgO1xuICAgIFxuICAgIFxuICAgIFxuICAgIHJldHVyblN0YXRlbWVudCAgICAgICAgIDo6PSAgXCJyZXR1cm5cIiB2YWx1ZSBcIjtcIiA7IFxuICAgIFxuICAgIFxuICAgIFxuICAgIHJlZmVyZW5jZXNMaXN0TGl0ZXJhbCAgIDo6PSAgXCJbXCIgcmVmZXJlbmNlcz8gXCJdXCIgO1xuICAgICBcbiAgICAgXG4gICAgIFxuICAgIGltcG9ydEJpbmRpbmdzICAgICAgICAgIDo6PSAgaW1wb3J0QmluZGluZyAoIFwiLFwiIGltcG9ydEJpbmRpbmcgKSogO1xuICAgIFxuICAgIG5hbWVkQmluZGluZ3MgICAgICAgICAgIDo6PSAgbmFtZWRCaW5kaW5nICggXCIsXCIgbmFtZWRCaW5kaW5nICkqIDtcbiAgICBcbiAgICBwYXJhbWV0ZXJzICAgICAgICAgICAgICA6Oj0gIHBhcmFtZXRlciAoIFwiLFwiIHBhcmFtZXRlciApKiA7XG4gICAgXG4gICAgcmVmZXJlbmNlcyAgICAgICAgICAgICAgOjo9ICByZWZlcmVuY2UgKCBcIixcIiByZWZlcmVuY2UgKSogO1xuICAgIFxuICAgIGJpbmRpbmdzICAgICAgICAgICAgICAgIDo6PSAgYmluZGluZyAoIFwiLFwiIGJpbmRpbmcgKSogO1xuICAgIFxuICAgIHZhbHVlcyAgICAgICAgICAgICAgICAgIDo6PSAgdmFsdWUgKCBcIixcIiB2YWx1ZSApKiA7XG4gICAgXG4gICAgdGVybXMgICAgICAgICAgICAgICAgICAgOjo9ICB0ZXJtICggXCIsXCIgdGVybSApKiA7XG4gICAgXG5cblxuICAgIGltcG9ydEJpbmRpbmcgICAgICAgICAgIDo6PSAgcmVmZXJlbmNlICggXCJhc1wiIGxhYmVsICk/IDsgICBcbiAgICBcbiAgICBuYW1lZEJpbmRpbmcgICAgICAgICAgICA6Oj0gIHR5cGUgW25hbWVdICggXCJhc1wiIFtuYW1lXSApPyA7ICAgXG4gICAgXG4gICAgcGFyYW1ldGVyICAgICAgICAgICAgICAgOjo9ICB0eXBlIFtuYW1lXSA7XG5cbiAgICBiaW5kaW5nICAgICAgICAgICAgICAgICA6Oj0gIHR5cGUgW25hbWVdXG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDOtSBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDtcblxuXG4gICAgXG4gICAgY29tcGFyaXNvblRlcm0gICAgICAgICAgOjo9ICB0ZXJtICggXCI9PVwiIHwgXCIhPVwiICkgdGVybSA7IFxuICAgIFxuICAgIGJyYWNrZXRlZFRlcm0gICAgICAgICAgIDo6PSAgXCIoXCIgdGVybSBcIilcIiA7IFxuICAgIFxuICAgIG5lZ2F0ZWRUZXJtICAgICAgICAgICAgIDo6PSAgXCIhXCI8Tk9fV0hJVEVTUEFDRT50ZXJtIDsgXG4gICAgXG4gICAgbG9naWNhbFRlcm0gICAgICAgICAgICAgOjo9ICB0ZXJtICggXCJ8fFwiIHwgXCImJlwiICkgdGVybSA7IFxuXG5cbiAgICBcbiAgICBleHByZXNzaW9uICAgICAgICAgICAgICA6Oj0gIHByb2NlZHVyZUNhbGxcbiAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICByZXR1cm5CbG9ja1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgdGVybmFyeVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICByZWR1Y2VcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIGV2ZXJ5XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBzb21lXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIGFsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBleGlzdHNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgbm9kZXNRdWVyeVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBub2RlUXVlcnlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgbGVuZ3RoT2ZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICB0b0ludGVnZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICB0cnlJbnRlZ2VyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgc3RhcnRzV2l0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBlbmRzV2l0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBjb250YWluc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICB0ZXJtXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDtcbiAgICBcbiAgICBcbiAgICBcbiAgICB0ZXJtICAgICAgICAgICAgICAgICAgICA6Oj0gIGNvbXBhcmlzb25UZXJtIFxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgYnJhY2tldGVkVGVybSBcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIGxvZ2ljYWxUZXJtIFxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgbmVnYXRlZFRlcm0gXG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBwcmltaXRpdmUgXG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICB2YXJpYWJsZSBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgO1xuXG5cbiAgICBcbiAgICB0eXBlICAgICAgICAgICAgICAgICAgICA6Oj0gIFwiTGlzdFwiPE5PX1dISVRFU1BBQ0U+XCI8XCIgKCBcIk5vZGVcIiB8IFwiU3RyaW5nXCIgfCBcIkJvb2xlYW5cIiB8IFwiSW50ZWdlclwiICkgXCI+XCJcbiAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBcIk5vZGVcIiAgXG4gICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgXCJTdHJpbmdcIiBcbiAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBcIkJvb2xlYW5cIiAgIFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBcIkludGVnZXJcIiAgIFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7XG5cblxuICAgIFxuICAgIHZhbHVlICAgICAgICAgICAgICAgICAgIDo6PSAgcHJpbWl0aXZlIFxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgdmFyaWFibGUgXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDtcblxuXG4gICAgXG4gICAgcHJpbWl0aXZlICAgICAgICAgICAgICAgOjo9ICBbc3RyaW5nLWxpdGVyYWxdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIFtib29sZWFuXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBbaW50ZWdlcl1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgW251bGxdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgO1xuXG5cblxuICAgIHJlZmVyZW5jZS4gICAgICAgICAgICAgIDo6PSAgW25hbWVdIDtcbiAgICBcbiAgICB2YXJpYWJsZS4gICAgICAgICAgICAgICA6Oj0gIFtuYW1lXSA7XG4gICAgXG4gICAgbGFiZWwuICAgICAgICAgICAgICAgICAgOjo9ICBbbmFtZV0gO1xuICAgIFxuICAgIFxuICAgIFxuICAgIG5vbnNlbnNlLiAgICAgICAgICAgICAgIDo6PSAgW3N0cmluZy1saXRlcmFsXSB8IFtzZWNvbmRhcnkta2V5d29yZF0gfCBbZnVuY3Rpb24tbmFtZV0gfCBbdHlwZV0gfCBbYm9vbGVhbl0gfCBbaW50ZWdlcl0gfCBbbnVsbF0gfCBbbmFtZV0gfCBbc3BlY2lhbF0gfCBbdW5hc3NpZ25lZF0gO1xuXG5cbiAgICBcbiAgICBlcnJvci4gICAgICAgICAgICAgICAgICA6Oj0gIC4gO1xuICAgIFxuYDtcblxuZXhwb3J0IGRlZmF1bHQgYm5mO1xuIl0sIm5hbWVzIjpbImJuZiJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBNE5BOzs7ZUFBQTs7O0FBMU5BLE1BQU1BLE1BQU0sQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBd05iLENBQUM7TUFFRCxXQUFlQSJ9
@@ -20,7 +20,7 @@ const entries = [
20
20
  "secondary-keyword": "^(?:as|if|else)"
21
21
  },
22
22
  {
23
- "function-name": "^(?:nodeQuery|nodesQuery|reduce|every|some|lengthOf|toInteger|tryInteger|startsWith|endsWith|contains|all|exists)"
23
+ "function-name": "^(?:nodeQuery|nodesQuery|reduce|every|some|lengthOf|toInteger|tryInteger|startsWith|endsWith|contains|apply)"
24
24
  },
25
25
  {
26
26
  "type": "^(?:List|Node|String|Boolean|Integer)"
@@ -46,4 +46,4 @@ const entries = [
46
46
  ];
47
47
  const _default = entries;
48
48
 
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9leGFtcGxlL2Z1cnRsZS9lbnRyaWVzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xyXG5cclxuY29uc3QgTEFUSU4gPSBcIltcXFxccHtTY3JpcHQ9TGF0aW59XVwiLFxyXG4gICAgICBERUNJTUFMID0gXCJbMC05XVwiO1xyXG5cclxuY29uc3QgZW50cmllcyA9IFtcclxuICB7XHJcbiAgICBcImJyYWNrZXRcIjogXCJeKD86XFxcXHt8XFxcXH0pXCJcclxuICB9LFxyXG4gIHtcclxuICAgIFwicHJpbWFyeS1rZXl3b3JkXCI6IFwiXig/OmV4cG9ydHxpbXBvcnR8ZnJvbXxyZXR1cm4pXCJcclxuICB9LFxyXG4gIHtcclxuICAgIFwic2Vjb25kYXJ5LWtleXdvcmRcIjogXCJeKD86YXN8aWZ8ZWxzZSlcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgXCJmdW5jdGlvbi1uYW1lXCI6IFwiXig/Om5vZGVRdWVyeXxub2Rlc1F1ZXJ5fHJlZHVjZXxldmVyeXxzb21lfGxlbmd0aE9mfHRvSW50ZWdlcnx0cnlJbnRlZ2VyfHN0YXJ0c1dpdGh8ZW5kc1dpdGh8Y29udGFpbnN8YWxsfGV4aXN0cylcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgXCJ0eXBlXCI6IFwiXig/Okxpc3R8Tm9kZXxTdHJpbmd8Qm9vbGVhbnxJbnRlZ2VyKVwiXHJcbiAgfSxcclxuICB7XHJcbiAgICBcImJvb2xlYW5cIjogXCJeKD86dHJ1ZXxmYWxzZSlcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgXCJpbnRlZ2VyXCI6IFwiXlsrXFxcXC1dP1xcXFxkK1wiXHJcbiAgfSxcclxuICB7XHJcbiAgICBcIm51bGxcIjogXCJebnVsbFwiXHJcbiAgfSxcclxuICB7XHJcbiAgICBcIm5hbWVcIjogYF4ke0xBVElOfSske0RFQ0lNQUx9KmAsXHJcbiAgfSxcclxuICB7XHJcbiAgICBcInNwZWNpYWxcIjogXCJeKD86PHw+fCE9fD09fCF8PXwsfDt8JiZ8XFxcXHxcXFxcfHxcXFxcKHxcXFxcKXxcXFxcW3xcXFxcXSlcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgXCJ1bmFzc2lnbmVkXCI6IFwiXlteXFxcXHNdK1wiXHJcbiAgfVxyXG5dO1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgZW50cmllcztcclxuIl0sIm5hbWVzIjpbIkxBVElOIiwiREVDSU1BTCIsImVudHJpZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQXlDQTs7O2VBQUE7OztBQXZDQSxNQUFNQSxRQUFRLHVCQUNSQyxVQUFVO0FBRWhCLE1BQU1DLFVBQVU7SUFDZDtRQUNFLFdBQVc7SUFDYjtJQUNBO1FBQ0UsbUJBQW1CO0lBQ3JCO0lBQ0E7UUFDRSxxQkFBcUI7SUFDdkI7SUFDQTtRQUNFLGlCQUFpQjtJQUNuQjtJQUNBO1FBQ0UsUUFBUTtJQUNWO0lBQ0E7UUFDRSxXQUFXO0lBQ2I7SUFDQTtRQUNFLFdBQVc7SUFDYjtJQUNBO1FBQ0UsUUFBUTtJQUNWO0lBQ0E7UUFDRSxRQUFRLENBQUMsQ0FBQyxFQUFFRixNQUFNLENBQUMsRUFBRUMsUUFBUSxDQUFDLENBQUM7SUFDakM7SUFDQTtRQUNFLFdBQVc7SUFDYjtJQUNBO1FBQ0UsY0FBYztJQUNoQjtDQUNEO01BRUQsV0FBZUMifQ==
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9leGFtcGxlL2Z1cnRsZS9lbnRyaWVzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xyXG5cclxuY29uc3QgTEFUSU4gPSBcIltcXFxccHtTY3JpcHQ9TGF0aW59XVwiLFxyXG4gICAgICBERUNJTUFMID0gXCJbMC05XVwiO1xyXG5cclxuY29uc3QgZW50cmllcyA9IFtcclxuICB7XHJcbiAgICBcImJyYWNrZXRcIjogXCJeKD86XFxcXHt8XFxcXH0pXCJcclxuICB9LFxyXG4gIHtcclxuICAgIFwicHJpbWFyeS1rZXl3b3JkXCI6IFwiXig/OmV4cG9ydHxpbXBvcnR8ZnJvbXxyZXR1cm4pXCJcclxuICB9LFxyXG4gIHtcclxuICAgIFwic2Vjb25kYXJ5LWtleXdvcmRcIjogXCJeKD86YXN8aWZ8ZWxzZSlcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgXCJmdW5jdGlvbi1uYW1lXCI6IFwiXig/Om5vZGVRdWVyeXxub2Rlc1F1ZXJ5fHJlZHVjZXxldmVyeXxzb21lfGxlbmd0aE9mfHRvSW50ZWdlcnx0cnlJbnRlZ2VyfHN0YXJ0c1dpdGh8ZW5kc1dpdGh8Y29udGFpbnN8YXBwbHkpXCJcclxuICB9LFxyXG4gIHtcclxuICAgIFwidHlwZVwiOiBcIl4oPzpMaXN0fE5vZGV8U3RyaW5nfEJvb2xlYW58SW50ZWdlcilcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgXCJib29sZWFuXCI6IFwiXig/OnRydWV8ZmFsc2UpXCJcclxuICB9LFxyXG4gIHtcclxuICAgIFwiaW50ZWdlclwiOiBcIl5bK1xcXFwtXT9cXFxcZCtcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgXCJudWxsXCI6IFwiXm51bGxcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgXCJuYW1lXCI6IGBeJHtMQVRJTn0rJHtERUNJTUFMfSpgLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgXCJzcGVjaWFsXCI6IFwiXig/Ojx8PnwhPXw9PXwhfD18LHw7fCYmfFxcXFx8XFxcXHx8XFxcXCh8XFxcXCl8XFxcXFt8XFxcXF0pXCJcclxuICB9LFxyXG4gIHtcclxuICAgIFwidW5hc3NpZ25lZFwiOiBcIl5bXlxcXFxzXStcIlxyXG4gIH1cclxuXTtcclxuXHJcbmV4cG9ydCBkZWZhdWx0IGVudHJpZXM7XHJcbiJdLCJuYW1lcyI6WyJMQVRJTiIsIkRFQ0lNQUwiLCJlbnRyaWVzIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkF5Q0E7OztlQUFBOzs7QUF2Q0EsTUFBTUEsUUFBUSx1QkFDUkMsVUFBVTtBQUVoQixNQUFNQyxVQUFVO0lBQ2Q7UUFDRSxXQUFXO0lBQ2I7SUFDQTtRQUNFLG1CQUFtQjtJQUNyQjtJQUNBO1FBQ0UscUJBQXFCO0lBQ3ZCO0lBQ0E7UUFDRSxpQkFBaUI7SUFDbkI7SUFDQTtRQUNFLFFBQVE7SUFDVjtJQUNBO1FBQ0UsV0FBVztJQUNiO0lBQ0E7UUFDRSxXQUFXO0lBQ2I7SUFDQTtRQUNFLFFBQVE7SUFDVjtJQUNBO1FBQ0UsUUFBUSxDQUFDLENBQUMsRUFBRUYsTUFBTSxDQUFDLEVBQUVDLFFBQVEsQ0FBQyxDQUFDO0lBQ2pDO0lBQ0E7UUFDRSxXQUFXO0lBQ2I7SUFDQTtRQUNFLGNBQWM7SUFDaEI7Q0FDRDtNQUVELFdBQWVDIn0=
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return AllNode;
9
+ }
10
+ });
11
+ const _occamlanguages = require("occam-languages");
12
+ const _ruleNames = require("../ruleNames");
13
+ class AllNode extends _occamlanguages.NonTerminalNode {
14
+ getReferencesNode() {
15
+ const referenceListLiteralNode = this.getReferenceListLiteralNode(), referencesNode = referenceListLiteralNode.getReferencesNode();
16
+ return referencesNode;
17
+ }
18
+ getValueNodes() {
19
+ const valuesNode = this.getValuesNode(), valueNodes = valuesNode.getValueNodes();
20
+ return valueNodes;
21
+ }
22
+ getValuesNode() {
23
+ const ruleName = _ruleNames.VALUES_RULE_NAME, valuesNode = this.getNodeByRuleName(ruleName);
24
+ return valuesNode;
25
+ }
26
+ getVariableNode() {
27
+ const ruleName = _ruleNames.VARIABLE_RULE_NAME, variableNode = this.getNodeByRuleName(ruleName);
28
+ return variableNode;
29
+ }
30
+ getReferenceListLiteralNode() {
31
+ const ruleName = _ruleNames.REFERENCE_LIST_LITERAL_RULE_NAME, referenceListLiteralNode = this.getNodeByRuleName(ruleName);
32
+ return referenceListLiteralNode;
33
+ }
34
+ static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) {
35
+ return _occamlanguages.NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(AllNode, ruleName, childNodes, opacity, precedence);
36
+ }
37
+ }
38
+
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL2FwcGx5LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBOb25UZXJtaW5hbE5vZGUgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCB7IFZBTFVFU19SVUxFX05BTUUsIFZBUklBQkxFX1JVTEVfTkFNRSwgUkVGRVJFTkNFX0xJU1RfTElURVJBTF9SVUxFX05BTUUgfSBmcm9tIFwiLi4vcnVsZU5hbWVzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEFsbE5vZGUgZXh0ZW5kcyBOb25UZXJtaW5hbE5vZGUge1xuICBnZXRSZWZlcmVuY2VzTm9kZSgpIHtcbiAgICBjb25zdCByZWZlcmVuY2VMaXN0TGl0ZXJhbE5vZGUgPSB0aGlzLmdldFJlZmVyZW5jZUxpc3RMaXRlcmFsTm9kZSgpLFxuICAgICAgICAgIHJlZmVyZW5jZXNOb2RlID0gcmVmZXJlbmNlTGlzdExpdGVyYWxOb2RlLmdldFJlZmVyZW5jZXNOb2RlKCk7XG5cbiAgICByZXR1cm4gcmVmZXJlbmNlc05vZGU7XG4gIH1cblxuICBnZXRWYWx1ZU5vZGVzKCkge1xuICAgIGNvbnN0IHZhbHVlc05vZGUgPSB0aGlzLmdldFZhbHVlc05vZGUoKSxcbiAgICAgICAgICB2YWx1ZU5vZGVzID0gdmFsdWVzTm9kZS5nZXRWYWx1ZU5vZGVzKCk7XG5cbiAgICByZXR1cm4gdmFsdWVOb2RlcztcbiAgfVxuXG4gIGdldFZhbHVlc05vZGUoKSB7XG4gICAgY29uc3QgcnVsZU5hbWUgPSBWQUxVRVNfUlVMRV9OQU1FLFxuICAgICAgICAgIHZhbHVlc05vZGUgPSB0aGlzLmdldE5vZGVCeVJ1bGVOYW1lKHJ1bGVOYW1lKTtcblxuICAgIHJldHVybiB2YWx1ZXNOb2RlO1xuICB9XG5cbiAgZ2V0VmFyaWFibGVOb2RlKCkge1xuICAgIGNvbnN0IHJ1bGVOYW1lID0gVkFSSUFCTEVfUlVMRV9OQU1FLFxuICAgICAgICAgIHZhcmlhYmxlTm9kZSA9IHRoaXMuZ2V0Tm9kZUJ5UnVsZU5hbWUocnVsZU5hbWUpO1xuXG4gICAgcmV0dXJuIHZhcmlhYmxlTm9kZTtcbiAgfVxuXG4gIGdldFJlZmVyZW5jZUxpc3RMaXRlcmFsTm9kZSgpIHtcbiAgICBjb25zdCBydWxlTmFtZSA9IFJFRkVSRU5DRV9MSVNUX0xJVEVSQUxfUlVMRV9OQU1FLFxuICAgICAgICAgIHJlZmVyZW5jZUxpc3RMaXRlcmFsTm9kZSA9IHRoaXMuZ2V0Tm9kZUJ5UnVsZU5hbWUocnVsZU5hbWUpO1xuXG4gICAgcmV0dXJuIHJlZmVyZW5jZUxpc3RMaXRlcmFsTm9kZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UocnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpIHsgcmV0dXJuIE5vblRlcm1pbmFsTm9kZS5mcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UoQWxsTm9kZSwgcnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpOyB9XG59XG4iXSwibmFtZXMiOlsiQWxsTm9kZSIsIk5vblRlcm1pbmFsTm9kZSIsImdldFJlZmVyZW5jZXNOb2RlIiwicmVmZXJlbmNlTGlzdExpdGVyYWxOb2RlIiwiZ2V0UmVmZXJlbmNlTGlzdExpdGVyYWxOb2RlIiwicmVmZXJlbmNlc05vZGUiLCJnZXRWYWx1ZU5vZGVzIiwidmFsdWVzTm9kZSIsImdldFZhbHVlc05vZGUiLCJ2YWx1ZU5vZGVzIiwicnVsZU5hbWUiLCJWQUxVRVNfUlVMRV9OQU1FIiwiZ2V0Tm9kZUJ5UnVsZU5hbWUiLCJnZXRWYXJpYWJsZU5vZGUiLCJWQVJJQUJMRV9SVUxFX05BTUUiLCJ2YXJpYWJsZU5vZGUiLCJSRUZFUkVOQ0VfTElTVF9MSVRFUkFMX1JVTEVfTkFNRSIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZSIsImNoaWxkTm9kZXMiLCJvcGFjaXR5IiwicHJlY2VkZW5jZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBTUE7OztlQUFxQkE7OztnQ0FKVzsyQkFFdUQ7QUFFeEUsTUFBTUEsZ0JBQWdCQywrQkFBZTtJQUNsREMsb0JBQW9CO1FBQ2xCLE1BQU1DLDJCQUEyQixJQUFJLENBQUNDLDJCQUEyQixJQUMzREMsaUJBQWlCRix5QkFBeUJELGlCQUFpQjtRQUVqRSxPQUFPRztJQUNUO0lBRUFDLGdCQUFnQjtRQUNkLE1BQU1DLGFBQWEsSUFBSSxDQUFDQyxhQUFhLElBQy9CQyxhQUFhRixXQUFXRCxhQUFhO1FBRTNDLE9BQU9HO0lBQ1Q7SUFFQUQsZ0JBQWdCO1FBQ2QsTUFBTUUsV0FBV0MsMkJBQWdCLEVBQzNCSixhQUFhLElBQUksQ0FBQ0ssaUJBQWlCLENBQUNGO1FBRTFDLE9BQU9IO0lBQ1Q7SUFFQU0sa0JBQWtCO1FBQ2hCLE1BQU1ILFdBQVdJLDZCQUFrQixFQUM3QkMsZUFBZSxJQUFJLENBQUNILGlCQUFpQixDQUFDRjtRQUU1QyxPQUFPSztJQUNUO0lBRUFYLDhCQUE4QjtRQUM1QixNQUFNTSxXQUFXTSwyQ0FBZ0MsRUFDM0NiLDJCQUEyQixJQUFJLENBQUNTLGlCQUFpQixDQUFDRjtRQUV4RCxPQUFPUDtJQUNUO0lBRUEsT0FBT2MsMkNBQTJDUCxRQUFRLEVBQUVRLFVBQVUsRUFBRUMsT0FBTyxFQUFFQyxVQUFVLEVBQUU7UUFBRSxPQUFPbkIsK0JBQWUsQ0FBQ2dCLDBDQUEwQyxDQUFDakIsU0FBU1UsVUFBVVEsWUFBWUMsU0FBU0M7SUFBYTtBQUN4TiJ9