occam-furtle 3.0.307 → 3.0.310

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.
@@ -60,9 +60,6 @@ _export(exports, {
60
60
  get ternaryStringFromTerm () {
61
61
  return ternaryStringFromTerm;
62
62
  },
63
- get typeStringFromNameAndArgumentType () {
64
- return typeStringFromNameAndArgumentType;
65
- },
66
63
  get typeStringFromTypeNameAndArgumentTypeName () {
67
64
  return typeStringFromTypeNameAndArgumentTypeName;
68
65
  },
@@ -160,15 +157,6 @@ function primtiveStringFromNominalValues(nominalValues) {
160
157
  }, null);
161
158
  return primtiveString;
162
159
  }
163
- function typeStringFromNameAndArgumentType(name, argumentType) {
164
- let typeString;
165
- typeString = `${name}`;
166
- if (argumentType !== null) {
167
- const argumentTypeString = argumentType.getString();
168
- typeString = `${typeString}${argumentTypeString}`;
169
- }
170
- return typeString;
171
- }
172
160
  function procedureDeclarationStringFromProcedure(procedure) {
173
161
  const type = procedure.getType(), label = procedure.getLabel(), parameters = procedure.getParameters(), returnStatement = procedure.getReturnStatement(), typeString = type.getString(), labelString = label.getString(), parametersString = parameters.getString(), returnStatementString = returnStatement.getString(), procedureDelcarationString = `${typeString} ${labelString}(${parametersString}) { ... ${returnStatementString} }`;
174
162
  return procedureDelcarationString;
@@ -237,4 +225,4 @@ function reduceStringFromVariableInitialExpressionAndAnonymousProcedure(variable
237
225
  return reduceString;
238
226
  }
239
227
 
240
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvc3RyaW5nLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBzdHJpbmdGcm9tU3RyaW5nTGl0ZXJhbCB9IGZyb20gXCIuL3N0cmluZ0xpdGVyYWxcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIHRlcm5hcnlTdHJpbmdGcm9tVGVybSh0ZXJtKSB7XG4gIGNvbnN0IHRlcm1TdHJpbmcgPSB0ZXJtLmdldFN0cmluZygpLFxuICAgICAgICB0ZXJuYXJ5U3RyaW5nID0gYGlmICgke3Rlcm1TdHJpbmd9KSB7IC4uLiB9IGVsc2UgeyAuLi4gfWA7XG5cbiAgcmV0dXJuIHRlcm5hcnlTdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YXJpYWJsZVN0cmluZ0Zyb21OYW1lKG5hbWUpIHtcbiAgY29uc3QgdmFyaWFibGVTdHJpbmcgPSBuYW1lOyAgLy8vXG5cbiAgcmV0dXJuIHZhcmlhYmxlU3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdGVybVN0cmluZ0Zyb21Qcm9wZXJ0aWVzKHByb3BlcnRpZXMpIHtcbiAgbGV0IHRlcm1TdHJpbmc7XG5cbiAgcHJvcGVydGllcy5mb3JFYWNoKChwcm9wZXJ0eSkgPT4ge1xuICAgIGlmIChwcm9wZXJ0eSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgcHJvcGVydHlTdHJpbmcgPSBwcm9wZXJ0eS5nZXRTdHJpbmcoKTtcblxuICAgICAgdGVybVN0cmluZyA9IHByb3BlcnR5U3RyaW5nOyAgLy8vXG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gdGVybVN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbHVlU3RyaW5nRnJvbVByb3BlcnRpZXMocHJvcGVydGllcykge1xuICBsZXQgdmFsdWVTdHJpbmc7XG5cbiAgcHJvcGVydGllcy5mb3JFYWNoKChwcm9wZXJ0eSkgPT4ge1xuICAgIGlmIChwcm9wZXJ0eSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgcHJvcGVydHlTdHJpbmcgPSBwcm9wZXJ0eS5nZXRTdHJpbmcoKTtcblxuICAgICAgdmFsdWVTdHJpbmcgPSBwcm9wZXJ0eVN0cmluZzsgIC8vL1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIHZhbHVlU3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJpbXRpdmVTdHJpbmdGcm9tQm9vbGVhbihib29sZWFuKSB7XG4gIGNvbnN0IGV4cHJlc3NzaW9uU3RyaW5nID0gYCR7Ym9vbGVhbn1gO1xuXG4gIHJldHVybiBleHByZXNzc2lvblN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRlcm1zU3RyaW5nRnJvbVRlcm1zQXJyYXkodGVybXNBcnJheSkge1xuICBjb25zdCB0ZXJtc1N0cmluZyA9IHRlcm1zQXJyYXkucmVkdWNlKCh0ZXJtc1N0cmluZywgdGVybSkgPT4ge1xuICAgIGNvbnN0IHRlcm1TdHJpbmcgPSB0ZXJtLmdldFN0cmluZygpO1xuXG4gICAgdGVybXNTdHJpbmcgPSAodGVybXNTdHJpbmcgPT09IG51bGwpID9cbiAgICAgIHRlcm1TdHJpbmcgOlxuICAgICAgYCR7dGVybXNTdHJpbmd9LCAke3Rlcm1TdHJpbmd9YDtcblxuICAgIHJldHVybiB0ZXJtc1N0cmluZztcbiAgfSwgbnVsbCk7IC8vL1xuXG4gIHJldHVybiB0ZXJtc1N0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbHVlc1N0cmluZ0Zyb21WYWx1ZXNBcnJheSh2YWx1ZXNBcnJheSkge1xuICBjb25zdCB2YWx1ZXNTdHJpbmcgPSB2YWx1ZXNBcnJheS5yZWR1Y2UoKHZhbHVlc1N0cmluZywgdmFsdWUpID0+IHtcbiAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpO1xuXG4gICAgdmFsdWVzU3RyaW5nID0gKHZhbHVlc1N0cmluZyA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgdmFsdWVTdHJpbmcgOlxuICAgICAgICAgICAgICAgICAgICAgICBgJHt2YWx1ZXNTdHJpbmd9LCAke3ZhbHVlU3RyaW5nfWA7XG5cbiAgICByZXR1cm4gdmFsdWVzU3RyaW5nO1xuICB9LCBudWxsKTsgLy8vXG5cbiAgcmV0dXJuIHZhbHVlc1N0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByaW10aXZlU3RyaW5nRnJvbU5vbWluYWxWYWx1ZShub21pbmFsVmFsdWUpIHtcbiAgY29uc3Qgc3RyaW5nID0gbm9taW5hbFZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICBwcmltdGl2ZVN0cmluZyA9IHN0cmluZzsgIC8vL1xuXG4gIHJldHVybiBwcmltdGl2ZVN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGV4cHJlc3Npb25TdHJpbmdGcm9tUHJvcGVydGllcyhwcm9wZXJ0aWVzKSB7XG4gIGxldCBleHByZXNzaW9uU3RyaW5nO1xuXG4gIHByb3BlcnRpZXMuZm9yRWFjaCgocHJvcGVydHkpID0+IHtcbiAgICBpZiAocHJvcGVydHkgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHByb3BlcnR5U3RyaW5nID0gcHJvcGVydHkuZ2V0U3RyaW5nKCk7XG5cbiAgICAgIGV4cHJlc3Npb25TdHJpbmcgPSBwcm9wZXJ0eVN0cmluZzsgIC8vL1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIGV4cHJlc3Npb25TdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwcmltdGl2ZVN0cmluZ0Zyb21TdHJpbmdMaXRlcmFsKHN0cmluZ0xpdGVyYWwpIHtcbiAgY29uc3Qgc3RyaW5nID0gc3RyaW5nRnJvbVN0cmluZ0xpdGVyYWwoc3RyaW5nTGl0ZXJhbCksXG4gICAgICAgIHByaW10aXZlU3RyaW5nID0gc3RyaW5nOyAgLy8vXG5cbiAgcmV0dXJuIHByaW10aXZlU3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJpbXRpdmVTdHJpbmdGcm9tTm9taW5hbFZhbHVlcyhub21pbmFsVmFsdWVzKSB7XG4gIGNvbnN0IHByaW10aXZlU3RyaW5nID0gbm9taW5hbFZhbHVlcy5yZWR1Y2UoKHByaW1pdGl2ZVN0cmluZywgbm9taW5hbFZhbHVlKSA9PiB7XG4gICAgY29uc3Qgbm9taW5hbFZhbHVlU3RyaW5nID0gbm9taW5hbFZhbHVlLmdldFN0cmluZygpO1xuXG4gICAgcHJpbWl0aXZlU3RyaW5nID0gKHByaW1pdGl2ZVN0cmluZyAhPT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgICBgJHtwcmltaXRpdmVTdHJpbmd9LCAke25vbWluYWxWYWx1ZVN0cmluZ31gIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbm9taW5hbFZhbHVlU3RyaW5nOyAvLy9cblxuICAgIHJldHVybiBwcmltaXRpdmVTdHJpbmc7XG4gIH0sIG51bGwpO1xuXG4gIHJldHVybiBwcmltdGl2ZVN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHR5cGVTdHJpbmdGcm9tTmFtZUFuZEFyZ3VtZW50VHlwZShuYW1lLCBhcmd1bWVudFR5cGUpIHtcbiAgbGV0IHR5cGVTdHJpbmc7XG5cbiAgdHlwZVN0cmluZyA9IGAke25hbWV9YDtcblxuICBpZiAoYXJndW1lbnRUeXBlICE9PSBudWxsKSB7XG4gICAgY29uc3QgYXJndW1lbnRUeXBlU3RyaW5nID0gYXJndW1lbnRUeXBlLmdldFN0cmluZygpO1xuXG4gICAgdHlwZVN0cmluZyA9IGAke3R5cGVTdHJpbmd9JHthcmd1bWVudFR5cGVTdHJpbmd9YDtcbiAgfVxuXG4gIHJldHVybiB0eXBlU3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJvY2VkdXJlRGVjbGFyYXRpb25TdHJpbmdGcm9tUHJvY2VkdXJlKHByb2NlZHVyZSkge1xuICBjb25zdCB0eXBlID0gcHJvY2VkdXJlLmdldFR5cGUoKSxcbiAgICAgICAgbGFiZWwgPSBwcm9jZWR1cmUuZ2V0TGFiZWwoKSxcbiAgICAgICAgcGFyYW1ldGVycyA9IHByb2NlZHVyZS5nZXRQYXJhbWV0ZXJzKCksXG4gICAgICAgIHJldHVyblN0YXRlbWVudCA9IHByb2NlZHVyZS5nZXRSZXR1cm5TdGF0ZW1lbnQoKSxcbiAgICAgICAgdHlwZVN0cmluZyA9IHR5cGUuZ2V0U3RyaW5nKCksXG4gICAgICAgIGxhYmVsU3RyaW5nID0gbGFiZWwuZ2V0U3RyaW5nKCksXG4gICAgICAgIHBhcmFtZXRlcnNTdHJpbmcgPSBwYXJhbWV0ZXJzLmdldFN0cmluZygpLFxuICAgICAgICByZXR1cm5TdGF0ZW1lbnRTdHJpbmcgPSByZXR1cm5TdGF0ZW1lbnQuZ2V0U3RyaW5nKCksXG4gICAgICAgIHByb2NlZHVyZURlbGNhcmF0aW9uU3RyaW5nID0gYCR7dHlwZVN0cmluZ30gJHtsYWJlbFN0cmluZyB9KCR7cGFyYW1ldGVyc1N0cmluZ30pIHsgLi4uICR7cmV0dXJuU3RhdGVtZW50U3RyaW5nfSB9YDtcblxuICByZXR1cm4gcHJvY2VkdXJlRGVsY2FyYXRpb25TdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZXR1cm5CbG9ja1N0cmluZ0Zyb21SZXR1cm5TdGF0ZW1lbnROb2RlKHJldHVyblN0YXRlbWVudCkge1xuICBjb25zdCByZXR1cm5TdGF0ZW1lbnRTdHJpbmcgPSByZXR1cm5TdGF0ZW1lbnQuZ2V0U3RyaW5nKCksXG4gICAgICAgIHJldHVybkJsb2NrU3RyaW5nID0gYHsgLi4uICR7cmV0dXJuU3RhdGVtZW50U3RyaW5nfSB9YDtcblxuICByZXR1cm4gcmV0dXJuQmxvY2tTdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub21pbmFsVmFsdWVQcm9wZXJ0eVN0cmluZ0Zyb21OYW1lQW5kVHlwZShuYW1lLCB0eXBlKSB7XG4gIGNvbnN0IG5hbWVTdHJpbmcgPSBuYW1lLCAgLy8vXG4gICAgICAgIHR5cGVTdHJpbmcgPSB0eXBlLmdldFN0cmluZygpLFxuICAgICAgICBub21pbmFsVmFsdWVQcm9wZXJ0eVN0cmluZyA9IGAke3R5cGVTdHJpbmd9ICR7bmFtZVN0cmluZ31gO1xuXG4gIHJldHVybiBub21pbmFsVmFsdWVQcm9wZXJ0eVN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHR5cGVTdHJpbmdGcm9tVHlwZU5hbWVBbmRBcmd1bWVudFR5cGVOYW1lKHR5cGVOYW1lLCBhcmd1bWVudFR5cGVOYW1lKSB7XG4gIGxldCB0eXBlU3RyaW5nO1xuXG4gIHR5cGVTdHJpbmcgPSBgJHt0eXBlTmFtZX1gO1xuXG4gIGlmIChhcmd1bWVudFR5cGVOYW1lICE9PSBudWxsKSB7XG4gICAgdHlwZVN0cmluZyA9IGAke3R5cGVTdHJpbmd9PCR7YXJndW1lbnRUeXBlTmFtZX0+YDtcbiAgfVxuXG4gIHJldHVybiB0eXBlU3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFyaWFibGVBc3NpZ25tZW50U3RyaW5nRnJvbVR5cGVBbmRWYXJpYWJsZSh0eXBlLCB2YXJpYWJsZSkge1xuICBjb25zdCB0eXBlU3RyaW5nID0gdHlwZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgdmFyaWFibGVTdHJpbmcgPSB2YXJpYWJsZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgdmFyaWFibGVBc3NpZ25tZW50U3RyaW5nID0gYCR7dHlwZVN0cmluZ30gJHt2YXJpYWJsZVN0cmluZ30gPSAuLi4gO2A7XG5cbiAgcmV0dXJuIHZhcmlhYmxlQXNzaWdubWVudFN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNvbWVTdHJpbmdGcm9tVmFyaWFibGVBbmRBbm9ueW1vdXNQcm9jZWR1cmUodmFyaWFibGUsIGFub255bW91c1Byb2NlZHVyZSkge1xuICBjb25zdCB2YXJpYWJsZVN0cmluZyA9IHZhcmlhYmxlLmdldFN0cmluZygpLFxuICAgICAgICBhbm9ueW1vdXNQcm9jZWR1cmVTdHJpbmcgPSBhbm9ueW1vdXNQcm9jZWR1cmUuZ2V0U3RyaW5nKCksXG4gICAgICAgIHNvbWVTdHJpbmcgPSBgU29tZSgke3ZhcmlhYmxlU3RyaW5nfSwgJHthbm9ueW1vdXNQcm9jZWR1cmVTdHJpbmd9KSBgO1xuXG4gIHJldHVybiBzb21lU3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZXZlcnlTdHJpbmdGcm9tVmFyaWFibGVBbmRBbm9ueW1vdXNQcm9jZWR1cmUodmFyaWFibGUsIGFub255bW91c1Byb2NlZHVyZSkge1xuICBjb25zdCB2YXJpYWJsZVN0cmluZyA9IHZhcmlhYmxlLmdldFN0cmluZygpLFxuICAgICAgICBhbm9ueW1vdXNQcm9jZWR1cmVTdHJpbmcgPSBhbm9ueW1vdXNQcm9jZWR1cmUuZ2V0U3RyaW5nKCksXG4gICAgICAgIGV2ZXJ5U3RyaW5nID0gYEV2ZXJ5KCR7dmFyaWFibGVTdHJpbmd9LCAke2Fub255bW91c1Byb2NlZHVyZVN0cmluZ30pIGA7XG5cbiAgcmV0dXJuIGV2ZXJ5U3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFyaWFibGVBc3NpZ25tZW50U3RyaW5nRnJvbVZhcmlhYmxlQXNzaWdubWVudCh2YXJpYWJsZUFzc2lnbm1lbnQpIHtcbiAgY29uc3QgdmFyaWFibGUgPSB2YXJpYWJsZUFzc2lnbm1lbnQuZ2V0VmFyaWFibGUoKSxcbiAgICAgICAgdmFyaWFibGVTdHJpbmcgPSB2YXJpYWJsZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgdmFyaWFibGVBc3NpZ25tZW50U3RyaW5nID0gYCR7dmFyaWFibGVTdHJpbmd9ID0gLi4uYDtcblxuICByZXR1cm4gdmFyaWFibGVBc3NpZ25tZW50U3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJvY2VkdXJlU3RyaW5nRnJvbVR5cGVMYWJlbFBhcmFtZXRlcnNBbmRSZXR1cm5CbG9jayh0eXBlLCBsYWJlbCwgcGFyYW1ldGVycywgcmV0dXJuQmxvY2spIHtcbiAgY29uc3QgdHlwZVN0cmluZyA9IHR5cGUuZ2V0U3RyaW5nKCksXG4gICAgICAgIGxhYmVsU3RyaW5nID0gbGFiZWwuZ2V0U3RyaW5nKCksXG4gICAgICAgIHBhcmFtZXRlcnNTdHJpbmcgPSBwYXJhbWV0ZXJzLmdldFN0cmluZygpLFxuICAgICAgICByZXR1cm5CbG9ja1N0cmluZyA9IHJldHVybkJsb2NrLmdldFN0cmluZygpLFxuICAgICAgICBwcm9jZWR1cmVTdHJpbmcgPSBgJHt0eXBlU3RyaW5nfSAke2xhYmVsU3RyaW5nfSgke3BhcmFtZXRlcnNTdHJpbmd9KSAke3JldHVybkJsb2NrU3RyaW5nfWA7XG5cbiAgcmV0dXJuIHByb2NlZHVyZVN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFub255bW91c1Byb2NlZHVyZVN0cmluZ0Zyb21UeXBlUGFyYW1ldGVyc0FuZFJldHVybkJsb2NrKHR5cGUsIHBhcmFtZXRlcnMsIHJldHVybkJsb2NrKSB7XG4gIGNvbnN0IHR5cGVTdHJpbmcgPSB0eXBlLmdldFN0cmluZygpLFxuICAgICAgICBwYXJhbWV0ZXJzU3RyaW5nID0gcGFyYW1ldGVycy5nZXRTdHJpbmcoKSxcbiAgICAgICAgcmV0dXJuQmxvY2tTdHJpbmcgPSByZXR1cm5CbG9jay5nZXRTdHJpbmcoKSxcbiAgICAgICAgYW5vbnltb3VzUHJvY2VkdXJlU3RyaW5nID0gYCR7dHlwZVN0cmluZ30gKCR7cGFyYW1ldGVyc1N0cmluZ30pICR7cmV0dXJuQmxvY2tTdHJpbmd9YDtcblxuICByZXR1cm4gYW5vbnltb3VzUHJvY2VkdXJlU3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbm9taW5hbFZhbHVlUHJvcGVydGllc1N0cmluZ0Zyb21Ob21pbmFsVmFsdWVQcm9wZXJ0aWVzQXJyYXkobm9taW5hbFZhbHVlUHJvcGVydGllc0FycmF5KSB7XG4gIGNvbnN0IG5vbWluYWxWYWx1ZVByb3BlcnRpZXNTdHJpbmcgPSBub21pbmFsVmFsdWVQcm9wZXJ0aWVzQXJyYXkucmVkdWNlKChub21pbmFsVmFsdWVQcm9wZXJ0aWVzU3RyaW5nLCBub21pbmFsVmFsdWVQcm9wZXJ0eSkgPT4ge1xuICAgIGNvbnN0IG5vbWluYWxWYWx1ZVByb3BlcnR5U3RyaW5nID0gbm9taW5hbFZhbHVlUHJvcGVydHkuZ2V0U3RyaW5nKCk7XG5cbiAgICBub21pbmFsVmFsdWVQcm9wZXJ0aWVzU3RyaW5nID0gKG5vbWluYWxWYWx1ZVByb3BlcnRpZXNTdHJpbmcgPT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBub21pbmFsVmFsdWVQcm9wZXJ0eVN0cmluZyA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAke25vbWluYWxWYWx1ZVByb3BlcnRpZXNTdHJpbmd9LCAke25vbWluYWxWYWx1ZVByb3BlcnR5U3RyaW5nfWA7XG5cbiAgICByZXR1cm4gbm9taW5hbFZhbHVlUHJvcGVydGllc1N0cmluZztcbiAgfSwgbnVsbCk7XG5cbiAgcmV0dXJuIG5vbWluYWxWYWx1ZVByb3BlcnRpZXNTdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YXJpYWJsZUFzc2lnbm1lbnRTdHJpbmdGcm9tVHlwZUFuZFZhcmlhYmxlQXNzaWdubWVudHNBcnJheSh0eXBlLCB2YXJpYWJsZUFzc2lnbm1lbnRzQXJyYXkpIHtcbiAgbGV0IHZhcmlhYmxlQXNzaWdubWVudHNTdHJpbmc7XG5cbiAgY29uc3QgdHlwZVN0cmluZyA9IHR5cGUuZ2V0U3RyaW5nKCk7XG5cbiAgdmFyaWFibGVBc3NpZ25tZW50c1N0cmluZyA9IHZhcmlhYmxlQXNzaWdubWVudHNBcnJheS5yZWR1Y2UoKHZhcmlhYmxlQXNzaWdubWVudHNTdHJpbmcsIHZhcmlhYmxlQXNzaWdubWVudCkgPT4ge1xuICAgIGNvbnN0IHZhcmlhYmxlQXNzaWdubWVudFN0cmluZyA9IHZhcmlhYmxlQXNzaWdubWVudFN0cmluZ0Zyb21WYXJpYWJsZUFzc2lnbm1lbnQodmFyaWFibGVBc3NpZ25tZW50KTtcblxuICAgIHZhcmlhYmxlQXNzaWdubWVudHNTdHJpbmcgPSAodmFyaWFibGVBc3NpZ25tZW50c1N0cmluZyA9PT0gbnVsbCkgP1xuICAgICAgdmFyaWFibGVBc3NpZ25tZW50U3RyaW5nIDpcbiAgICAgIGAke3ZhcmlhYmxlQXNzaWdubWVudHNTdHJpbmd9LCAke3ZhcmlhYmxlQXNzaWdubWVudFN0cmluZ31gO1xuXG4gICAgcmV0dXJuIHZhcmlhYmxlQXNzaWdubWVudHNTdHJpbmc7XG4gIH0sIG51bGwpOyAvLy9cblxuICB2YXJpYWJsZUFzc2lnbm1lbnRzU3RyaW5nID0gYCR7dHlwZVN0cmluZ30gJHt2YXJpYWJsZUFzc2lnbm1lbnRzU3RyaW5nfSA7YDsgLy8vXG5cbiAgcmV0dXJuIHZhcmlhYmxlQXNzaWdubWVudHNTdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZWR1Y2VTdHJpbmdGcm9tVmFyaWFibGVJbml0aWFsRXhwcmVzc2lvbkFuZEFub255bW91c1Byb2NlZHVyZSh2YXJpYWJsZSwgaW5pdGlhbEV4cHJlc3Npb24sIGFub255bW91c1Byb2NlZHVyZSkge1xuICBjb25zdCB2YXJpYWJsZVN0cmluZyA9IHZhcmlhYmxlLmdldFN0cmluZygpLFxuICAgICAgICBpbml0aWFsRXhwcmVzc2lvblN0cmluZyA9IGluaXRpYWxFeHByZXNzaW9uLmdldFN0cmluZygpLFxuICAgICAgICBhbm9ueW1vdXNQcm9jZWR1cmVTdHJpbmcgPSBhbm9ueW1vdXNQcm9jZWR1cmUuZ2V0U3RyaW5nKCksXG4gICAgICAgIHJlZHVjZVN0cmluZyA9IGBSZWR1Y2UoJHt2YXJpYWJsZVN0cmluZ30sICR7YW5vbnltb3VzUHJvY2VkdXJlU3RyaW5nfSwgJHtpbml0aWFsRXhwcmVzc2lvblN0cmluZ30pYDtcblxuICByZXR1cm4gcmVkdWNlU3RyaW5nO1xufVxuXG4iXSwibmFtZXMiOlsiYW5vbnltb3VzUHJvY2VkdXJlU3RyaW5nRnJvbVR5cGVQYXJhbWV0ZXJzQW5kUmV0dXJuQmxvY2siLCJldmVyeVN0cmluZ0Zyb21WYXJpYWJsZUFuZEFub255bW91c1Byb2NlZHVyZSIsImV4cHJlc3Npb25TdHJpbmdGcm9tUHJvcGVydGllcyIsIm5vbWluYWxWYWx1ZVByb3BlcnRpZXNTdHJpbmdGcm9tTm9taW5hbFZhbHVlUHJvcGVydGllc0FycmF5Iiwibm9taW5hbFZhbHVlUHJvcGVydHlTdHJpbmdGcm9tTmFtZUFuZFR5cGUiLCJwcmltdGl2ZVN0cmluZ0Zyb21Cb29sZWFuIiwicHJpbXRpdmVTdHJpbmdGcm9tTm9taW5hbFZhbHVlIiwicHJpbXRpdmVTdHJpbmdGcm9tTm9taW5hbFZhbHVlcyIsInByaW10aXZlU3RyaW5nRnJvbVN0cmluZ0xpdGVyYWwiLCJwcm9jZWR1cmVEZWNsYXJhdGlvblN0cmluZ0Zyb21Qcm9jZWR1cmUiLCJwcm9jZWR1cmVTdHJpbmdGcm9tVHlwZUxhYmVsUGFyYW1ldGVyc0FuZFJldHVybkJsb2NrIiwicmVkdWNlU3RyaW5nRnJvbVZhcmlhYmxlSW5pdGlhbEV4cHJlc3Npb25BbmRBbm9ueW1vdXNQcm9jZWR1cmUiLCJyZXR1cm5CbG9ja1N0cmluZ0Zyb21SZXR1cm5TdGF0ZW1lbnROb2RlIiwic29tZVN0cmluZ0Zyb21WYXJpYWJsZUFuZEFub255bW91c1Byb2NlZHVyZSIsInRlcm1TdHJpbmdGcm9tUHJvcGVydGllcyIsInRlcm1zU3RyaW5nRnJvbVRlcm1zQXJyYXkiLCJ0ZXJuYXJ5U3RyaW5nRnJvbVRlcm0iLCJ0eXBlU3RyaW5nRnJvbU5hbWVBbmRBcmd1bWVudFR5cGUiLCJ0eXBlU3RyaW5nRnJvbVR5cGVOYW1lQW5kQXJndW1lbnRUeXBlTmFtZSIsInZhbHVlU3RyaW5nRnJvbVByb3BlcnRpZXMiLCJ2YWx1ZXNTdHJpbmdGcm9tVmFsdWVzQXJyYXkiLCJ2YXJpYWJsZUFzc2lnbm1lbnRTdHJpbmdGcm9tVHlwZUFuZFZhcmlhYmxlIiwidmFyaWFibGVBc3NpZ25tZW50U3RyaW5nRnJvbVR5cGVBbmRWYXJpYWJsZUFzc2lnbm1lbnRzQXJyYXkiLCJ2YXJpYWJsZUFzc2lnbm1lbnRTdHJpbmdGcm9tVmFyaWFibGVBc3NpZ25tZW50IiwidmFyaWFibGVTdHJpbmdGcm9tTmFtZSIsInRlcm0iLCJ0ZXJtU3RyaW5nIiwiZ2V0U3RyaW5nIiwidGVybmFyeVN0cmluZyIsIm5hbWUiLCJ2YXJpYWJsZVN0cmluZyIsInByb3BlcnRpZXMiLCJmb3JFYWNoIiwicHJvcGVydHkiLCJwcm9wZXJ0eVN0cmluZyIsInZhbHVlU3RyaW5nIiwiYm9vbGVhbiIsImV4cHJlc3NzaW9uU3RyaW5nIiwidGVybXNBcnJheSIsInRlcm1zU3RyaW5nIiwicmVkdWNlIiwidmFsdWVzQXJyYXkiLCJ2YWx1ZXNTdHJpbmciLCJ2YWx1ZSIsIm5vbWluYWxWYWx1ZSIsInN0cmluZyIsInByaW10aXZlU3RyaW5nIiwiZXhwcmVzc2lvblN0cmluZyIsInN0cmluZ0xpdGVyYWwiLCJzdHJpbmdGcm9tU3RyaW5nTGl0ZXJhbCIsIm5vbWluYWxWYWx1ZXMiLCJwcmltaXRpdmVTdHJpbmciLCJub21pbmFsVmFsdWVTdHJpbmciLCJhcmd1bWVudFR5cGUiLCJ0eXBlU3RyaW5nIiwiYXJndW1lbnRUeXBlU3RyaW5nIiwicHJvY2VkdXJlIiwidHlwZSIsImdldFR5cGUiLCJsYWJlbCIsImdldExhYmVsIiwicGFyYW1ldGVycyIsImdldFBhcmFtZXRlcnMiLCJyZXR1cm5TdGF0ZW1lbnQiLCJnZXRSZXR1cm5TdGF0ZW1lbnQiLCJsYWJlbFN0cmluZyIsInBhcmFtZXRlcnNTdHJpbmciLCJyZXR1cm5TdGF0ZW1lbnRTdHJpbmciLCJwcm9jZWR1cmVEZWxjYXJhdGlvblN0cmluZyIsInJldHVybkJsb2NrU3RyaW5nIiwibmFtZVN0cmluZyIsIm5vbWluYWxWYWx1ZVByb3BlcnR5U3RyaW5nIiwidHlwZU5hbWUiLCJhcmd1bWVudFR5cGVOYW1lIiwidmFyaWFibGUiLCJ2YXJpYWJsZUFzc2lnbm1lbnRTdHJpbmciLCJhbm9ueW1vdXNQcm9jZWR1cmUiLCJhbm9ueW1vdXNQcm9jZWR1cmVTdHJpbmciLCJzb21lU3RyaW5nIiwiZXZlcnlTdHJpbmciLCJ2YXJpYWJsZUFzc2lnbm1lbnQiLCJnZXRWYXJpYWJsZSIsInJldHVybkJsb2NrIiwicHJvY2VkdXJlU3RyaW5nIiwibm9taW5hbFZhbHVlUHJvcGVydGllc0FycmF5Iiwibm9taW5hbFZhbHVlUHJvcGVydGllc1N0cmluZyIsIm5vbWluYWxWYWx1ZVByb3BlcnR5IiwidmFyaWFibGVBc3NpZ25tZW50c0FycmF5IiwidmFyaWFibGVBc3NpZ25tZW50c1N0cmluZyIsImluaXRpYWxFeHByZXNzaW9u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
228
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvc3RyaW5nLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBzdHJpbmdGcm9tU3RyaW5nTGl0ZXJhbCB9IGZyb20gXCIuL3N0cmluZ0xpdGVyYWxcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIHRlcm5hcnlTdHJpbmdGcm9tVGVybSh0ZXJtKSB7XG4gIGNvbnN0IHRlcm1TdHJpbmcgPSB0ZXJtLmdldFN0cmluZygpLFxuICAgICAgICB0ZXJuYXJ5U3RyaW5nID0gYGlmICgke3Rlcm1TdHJpbmd9KSB7IC4uLiB9IGVsc2UgeyAuLi4gfWA7XG5cbiAgcmV0dXJuIHRlcm5hcnlTdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YXJpYWJsZVN0cmluZ0Zyb21OYW1lKG5hbWUpIHtcbiAgY29uc3QgdmFyaWFibGVTdHJpbmcgPSBuYW1lOyAgLy8vXG5cbiAgcmV0dXJuIHZhcmlhYmxlU3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdGVybVN0cmluZ0Zyb21Qcm9wZXJ0aWVzKHByb3BlcnRpZXMpIHtcbiAgbGV0IHRlcm1TdHJpbmc7XG5cbiAgcHJvcGVydGllcy5mb3JFYWNoKChwcm9wZXJ0eSkgPT4ge1xuICAgIGlmIChwcm9wZXJ0eSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgcHJvcGVydHlTdHJpbmcgPSBwcm9wZXJ0eS5nZXRTdHJpbmcoKTtcblxuICAgICAgdGVybVN0cmluZyA9IHByb3BlcnR5U3RyaW5nOyAgLy8vXG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gdGVybVN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbHVlU3RyaW5nRnJvbVByb3BlcnRpZXMocHJvcGVydGllcykge1xuICBsZXQgdmFsdWVTdHJpbmc7XG5cbiAgcHJvcGVydGllcy5mb3JFYWNoKChwcm9wZXJ0eSkgPT4ge1xuICAgIGlmIChwcm9wZXJ0eSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgcHJvcGVydHlTdHJpbmcgPSBwcm9wZXJ0eS5nZXRTdHJpbmcoKTtcblxuICAgICAgdmFsdWVTdHJpbmcgPSBwcm9wZXJ0eVN0cmluZzsgIC8vL1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIHZhbHVlU3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJpbXRpdmVTdHJpbmdGcm9tQm9vbGVhbihib29sZWFuKSB7XG4gIGNvbnN0IGV4cHJlc3NzaW9uU3RyaW5nID0gYCR7Ym9vbGVhbn1gO1xuXG4gIHJldHVybiBleHByZXNzc2lvblN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRlcm1zU3RyaW5nRnJvbVRlcm1zQXJyYXkodGVybXNBcnJheSkge1xuICBjb25zdCB0ZXJtc1N0cmluZyA9IHRlcm1zQXJyYXkucmVkdWNlKCh0ZXJtc1N0cmluZywgdGVybSkgPT4ge1xuICAgIGNvbnN0IHRlcm1TdHJpbmcgPSB0ZXJtLmdldFN0cmluZygpO1xuXG4gICAgdGVybXNTdHJpbmcgPSAodGVybXNTdHJpbmcgPT09IG51bGwpID9cbiAgICAgIHRlcm1TdHJpbmcgOlxuICAgICAgYCR7dGVybXNTdHJpbmd9LCAke3Rlcm1TdHJpbmd9YDtcblxuICAgIHJldHVybiB0ZXJtc1N0cmluZztcbiAgfSwgbnVsbCk7IC8vL1xuXG4gIHJldHVybiB0ZXJtc1N0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbHVlc1N0cmluZ0Zyb21WYWx1ZXNBcnJheSh2YWx1ZXNBcnJheSkge1xuICBjb25zdCB2YWx1ZXNTdHJpbmcgPSB2YWx1ZXNBcnJheS5yZWR1Y2UoKHZhbHVlc1N0cmluZywgdmFsdWUpID0+IHtcbiAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpO1xuXG4gICAgdmFsdWVzU3RyaW5nID0gKHZhbHVlc1N0cmluZyA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgdmFsdWVTdHJpbmcgOlxuICAgICAgICAgICAgICAgICAgICAgICBgJHt2YWx1ZXNTdHJpbmd9LCAke3ZhbHVlU3RyaW5nfWA7XG5cbiAgICByZXR1cm4gdmFsdWVzU3RyaW5nO1xuICB9LCBudWxsKTsgLy8vXG5cbiAgcmV0dXJuIHZhbHVlc1N0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByaW10aXZlU3RyaW5nRnJvbU5vbWluYWxWYWx1ZShub21pbmFsVmFsdWUpIHtcbiAgY29uc3Qgc3RyaW5nID0gbm9taW5hbFZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICBwcmltdGl2ZVN0cmluZyA9IHN0cmluZzsgIC8vL1xuXG4gIHJldHVybiBwcmltdGl2ZVN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGV4cHJlc3Npb25TdHJpbmdGcm9tUHJvcGVydGllcyhwcm9wZXJ0aWVzKSB7XG4gIGxldCBleHByZXNzaW9uU3RyaW5nO1xuXG4gIHByb3BlcnRpZXMuZm9yRWFjaCgocHJvcGVydHkpID0+IHtcbiAgICBpZiAocHJvcGVydHkgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHByb3BlcnR5U3RyaW5nID0gcHJvcGVydHkuZ2V0U3RyaW5nKCk7XG5cbiAgICAgIGV4cHJlc3Npb25TdHJpbmcgPSBwcm9wZXJ0eVN0cmluZzsgIC8vL1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIGV4cHJlc3Npb25TdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwcmltdGl2ZVN0cmluZ0Zyb21TdHJpbmdMaXRlcmFsKHN0cmluZ0xpdGVyYWwpIHtcbiAgY29uc3Qgc3RyaW5nID0gc3RyaW5nRnJvbVN0cmluZ0xpdGVyYWwoc3RyaW5nTGl0ZXJhbCksXG4gICAgICAgIHByaW10aXZlU3RyaW5nID0gc3RyaW5nOyAgLy8vXG5cbiAgcmV0dXJuIHByaW10aXZlU3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJpbXRpdmVTdHJpbmdGcm9tTm9taW5hbFZhbHVlcyhub21pbmFsVmFsdWVzKSB7XG4gIGNvbnN0IHByaW10aXZlU3RyaW5nID0gbm9taW5hbFZhbHVlcy5yZWR1Y2UoKHByaW1pdGl2ZVN0cmluZywgbm9taW5hbFZhbHVlKSA9PiB7XG4gICAgY29uc3Qgbm9taW5hbFZhbHVlU3RyaW5nID0gbm9taW5hbFZhbHVlLmdldFN0cmluZygpO1xuXG4gICAgcHJpbWl0aXZlU3RyaW5nID0gKHByaW1pdGl2ZVN0cmluZyAhPT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgICBgJHtwcmltaXRpdmVTdHJpbmd9LCAke25vbWluYWxWYWx1ZVN0cmluZ31gIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbm9taW5hbFZhbHVlU3RyaW5nOyAvLy9cblxuICAgIHJldHVybiBwcmltaXRpdmVTdHJpbmc7XG4gIH0sIG51bGwpO1xuXG4gIHJldHVybiBwcmltdGl2ZVN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByb2NlZHVyZURlY2xhcmF0aW9uU3RyaW5nRnJvbVByb2NlZHVyZShwcm9jZWR1cmUpIHtcbiAgY29uc3QgdHlwZSA9IHByb2NlZHVyZS5nZXRUeXBlKCksXG4gICAgICAgIGxhYmVsID0gcHJvY2VkdXJlLmdldExhYmVsKCksXG4gICAgICAgIHBhcmFtZXRlcnMgPSBwcm9jZWR1cmUuZ2V0UGFyYW1ldGVycygpLFxuICAgICAgICByZXR1cm5TdGF0ZW1lbnQgPSBwcm9jZWR1cmUuZ2V0UmV0dXJuU3RhdGVtZW50KCksXG4gICAgICAgIHR5cGVTdHJpbmcgPSB0eXBlLmdldFN0cmluZygpLFxuICAgICAgICBsYWJlbFN0cmluZyA9IGxhYmVsLmdldFN0cmluZygpLFxuICAgICAgICBwYXJhbWV0ZXJzU3RyaW5nID0gcGFyYW1ldGVycy5nZXRTdHJpbmcoKSxcbiAgICAgICAgcmV0dXJuU3RhdGVtZW50U3RyaW5nID0gcmV0dXJuU3RhdGVtZW50LmdldFN0cmluZygpLFxuICAgICAgICBwcm9jZWR1cmVEZWxjYXJhdGlvblN0cmluZyA9IGAke3R5cGVTdHJpbmd9ICR7bGFiZWxTdHJpbmcgfSgke3BhcmFtZXRlcnNTdHJpbmd9KSB7IC4uLiAke3JldHVyblN0YXRlbWVudFN0cmluZ30gfWA7XG5cbiAgcmV0dXJuIHByb2NlZHVyZURlbGNhcmF0aW9uU3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmV0dXJuQmxvY2tTdHJpbmdGcm9tUmV0dXJuU3RhdGVtZW50Tm9kZShyZXR1cm5TdGF0ZW1lbnQpIHtcbiAgY29uc3QgcmV0dXJuU3RhdGVtZW50U3RyaW5nID0gcmV0dXJuU3RhdGVtZW50LmdldFN0cmluZygpLFxuICAgICAgICByZXR1cm5CbG9ja1N0cmluZyA9IGB7IC4uLiAke3JldHVyblN0YXRlbWVudFN0cmluZ30gfWA7XG5cbiAgcmV0dXJuIHJldHVybkJsb2NrU3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbm9taW5hbFZhbHVlUHJvcGVydHlTdHJpbmdGcm9tTmFtZUFuZFR5cGUobmFtZSwgdHlwZSkge1xuICBjb25zdCBuYW1lU3RyaW5nID0gbmFtZSwgIC8vL1xuICAgICAgICB0eXBlU3RyaW5nID0gdHlwZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgbm9taW5hbFZhbHVlUHJvcGVydHlTdHJpbmcgPSBgJHt0eXBlU3RyaW5nfSAke25hbWVTdHJpbmd9YDtcblxuICByZXR1cm4gbm9taW5hbFZhbHVlUHJvcGVydHlTdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0eXBlU3RyaW5nRnJvbVR5cGVOYW1lQW5kQXJndW1lbnRUeXBlTmFtZSh0eXBlTmFtZSwgYXJndW1lbnRUeXBlTmFtZSkge1xuICBsZXQgdHlwZVN0cmluZztcblxuICB0eXBlU3RyaW5nID0gYCR7dHlwZU5hbWV9YDtcblxuICBpZiAoYXJndW1lbnRUeXBlTmFtZSAhPT0gbnVsbCkge1xuICAgIHR5cGVTdHJpbmcgPSBgJHt0eXBlU3RyaW5nfTwke2FyZ3VtZW50VHlwZU5hbWV9PmA7XG4gIH1cblxuICByZXR1cm4gdHlwZVN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhcmlhYmxlQXNzaWdubWVudFN0cmluZ0Zyb21UeXBlQW5kVmFyaWFibGUodHlwZSwgdmFyaWFibGUpIHtcbiAgY29uc3QgdHlwZVN0cmluZyA9IHR5cGUuZ2V0U3RyaW5nKCksXG4gICAgICAgIHZhcmlhYmxlU3RyaW5nID0gdmFyaWFibGUuZ2V0U3RyaW5nKCksXG4gICAgICAgIHZhcmlhYmxlQXNzaWdubWVudFN0cmluZyA9IGAke3R5cGVTdHJpbmd9ICR7dmFyaWFibGVTdHJpbmd9ID0gLi4uIDtgO1xuXG4gIHJldHVybiB2YXJpYWJsZUFzc2lnbm1lbnRTdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzb21lU3RyaW5nRnJvbVZhcmlhYmxlQW5kQW5vbnltb3VzUHJvY2VkdXJlKHZhcmlhYmxlLCBhbm9ueW1vdXNQcm9jZWR1cmUpIHtcbiAgY29uc3QgdmFyaWFibGVTdHJpbmcgPSB2YXJpYWJsZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgYW5vbnltb3VzUHJvY2VkdXJlU3RyaW5nID0gYW5vbnltb3VzUHJvY2VkdXJlLmdldFN0cmluZygpLFxuICAgICAgICBzb21lU3RyaW5nID0gYFNvbWUoJHt2YXJpYWJsZVN0cmluZ30sICR7YW5vbnltb3VzUHJvY2VkdXJlU3RyaW5nfSkgYDtcblxuICByZXR1cm4gc29tZVN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGV2ZXJ5U3RyaW5nRnJvbVZhcmlhYmxlQW5kQW5vbnltb3VzUHJvY2VkdXJlKHZhcmlhYmxlLCBhbm9ueW1vdXNQcm9jZWR1cmUpIHtcbiAgY29uc3QgdmFyaWFibGVTdHJpbmcgPSB2YXJpYWJsZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgYW5vbnltb3VzUHJvY2VkdXJlU3RyaW5nID0gYW5vbnltb3VzUHJvY2VkdXJlLmdldFN0cmluZygpLFxuICAgICAgICBldmVyeVN0cmluZyA9IGBFdmVyeSgke3ZhcmlhYmxlU3RyaW5nfSwgJHthbm9ueW1vdXNQcm9jZWR1cmVTdHJpbmd9KSBgO1xuXG4gIHJldHVybiBldmVyeVN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhcmlhYmxlQXNzaWdubWVudFN0cmluZ0Zyb21WYXJpYWJsZUFzc2lnbm1lbnQodmFyaWFibGVBc3NpZ25tZW50KSB7XG4gIGNvbnN0IHZhcmlhYmxlID0gdmFyaWFibGVBc3NpZ25tZW50LmdldFZhcmlhYmxlKCksXG4gICAgICAgIHZhcmlhYmxlU3RyaW5nID0gdmFyaWFibGUuZ2V0U3RyaW5nKCksXG4gICAgICAgIHZhcmlhYmxlQXNzaWdubWVudFN0cmluZyA9IGAke3ZhcmlhYmxlU3RyaW5nfSA9IC4uLmA7XG5cbiAgcmV0dXJuIHZhcmlhYmxlQXNzaWdubWVudFN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByb2NlZHVyZVN0cmluZ0Zyb21UeXBlTGFiZWxQYXJhbWV0ZXJzQW5kUmV0dXJuQmxvY2sodHlwZSwgbGFiZWwsIHBhcmFtZXRlcnMsIHJldHVybkJsb2NrKSB7XG4gIGNvbnN0IHR5cGVTdHJpbmcgPSB0eXBlLmdldFN0cmluZygpLFxuICAgICAgICBsYWJlbFN0cmluZyA9IGxhYmVsLmdldFN0cmluZygpLFxuICAgICAgICBwYXJhbWV0ZXJzU3RyaW5nID0gcGFyYW1ldGVycy5nZXRTdHJpbmcoKSxcbiAgICAgICAgcmV0dXJuQmxvY2tTdHJpbmcgPSByZXR1cm5CbG9jay5nZXRTdHJpbmcoKSxcbiAgICAgICAgcHJvY2VkdXJlU3RyaW5nID0gYCR7dHlwZVN0cmluZ30gJHtsYWJlbFN0cmluZ30oJHtwYXJhbWV0ZXJzU3RyaW5nfSkgJHtyZXR1cm5CbG9ja1N0cmluZ31gO1xuXG4gIHJldHVybiBwcm9jZWR1cmVTdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhbm9ueW1vdXNQcm9jZWR1cmVTdHJpbmdGcm9tVHlwZVBhcmFtZXRlcnNBbmRSZXR1cm5CbG9jayh0eXBlLCBwYXJhbWV0ZXJzLCByZXR1cm5CbG9jaykge1xuICBjb25zdCB0eXBlU3RyaW5nID0gdHlwZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgcGFyYW1ldGVyc1N0cmluZyA9IHBhcmFtZXRlcnMuZ2V0U3RyaW5nKCksXG4gICAgICAgIHJldHVybkJsb2NrU3RyaW5nID0gcmV0dXJuQmxvY2suZ2V0U3RyaW5nKCksXG4gICAgICAgIGFub255bW91c1Byb2NlZHVyZVN0cmluZyA9IGAke3R5cGVTdHJpbmd9ICgke3BhcmFtZXRlcnNTdHJpbmd9KSAke3JldHVybkJsb2NrU3RyaW5nfWA7XG5cbiAgcmV0dXJuIGFub255bW91c1Byb2NlZHVyZVN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vbWluYWxWYWx1ZVByb3BlcnRpZXNTdHJpbmdGcm9tTm9taW5hbFZhbHVlUHJvcGVydGllc0FycmF5KG5vbWluYWxWYWx1ZVByb3BlcnRpZXNBcnJheSkge1xuICBjb25zdCBub21pbmFsVmFsdWVQcm9wZXJ0aWVzU3RyaW5nID0gbm9taW5hbFZhbHVlUHJvcGVydGllc0FycmF5LnJlZHVjZSgobm9taW5hbFZhbHVlUHJvcGVydGllc1N0cmluZywgbm9taW5hbFZhbHVlUHJvcGVydHkpID0+IHtcbiAgICBjb25zdCBub21pbmFsVmFsdWVQcm9wZXJ0eVN0cmluZyA9IG5vbWluYWxWYWx1ZVByb3BlcnR5LmdldFN0cmluZygpO1xuXG4gICAgbm9taW5hbFZhbHVlUHJvcGVydGllc1N0cmluZyA9IChub21pbmFsVmFsdWVQcm9wZXJ0aWVzU3RyaW5nID09PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9taW5hbFZhbHVlUHJvcGVydHlTdHJpbmcgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgJHtub21pbmFsVmFsdWVQcm9wZXJ0aWVzU3RyaW5nfSwgJHtub21pbmFsVmFsdWVQcm9wZXJ0eVN0cmluZ31gO1xuXG4gICAgcmV0dXJuIG5vbWluYWxWYWx1ZVByb3BlcnRpZXNTdHJpbmc7XG4gIH0sIG51bGwpO1xuXG4gIHJldHVybiBub21pbmFsVmFsdWVQcm9wZXJ0aWVzU3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFyaWFibGVBc3NpZ25tZW50U3RyaW5nRnJvbVR5cGVBbmRWYXJpYWJsZUFzc2lnbm1lbnRzQXJyYXkodHlwZSwgdmFyaWFibGVBc3NpZ25tZW50c0FycmF5KSB7XG4gIGxldCB2YXJpYWJsZUFzc2lnbm1lbnRzU3RyaW5nO1xuXG4gIGNvbnN0IHR5cGVTdHJpbmcgPSB0eXBlLmdldFN0cmluZygpO1xuXG4gIHZhcmlhYmxlQXNzaWdubWVudHNTdHJpbmcgPSB2YXJpYWJsZUFzc2lnbm1lbnRzQXJyYXkucmVkdWNlKCh2YXJpYWJsZUFzc2lnbm1lbnRzU3RyaW5nLCB2YXJpYWJsZUFzc2lnbm1lbnQpID0+IHtcbiAgICBjb25zdCB2YXJpYWJsZUFzc2lnbm1lbnRTdHJpbmcgPSB2YXJpYWJsZUFzc2lnbm1lbnRTdHJpbmdGcm9tVmFyaWFibGVBc3NpZ25tZW50KHZhcmlhYmxlQXNzaWdubWVudCk7XG5cbiAgICB2YXJpYWJsZUFzc2lnbm1lbnRzU3RyaW5nID0gKHZhcmlhYmxlQXNzaWdubWVudHNTdHJpbmcgPT09IG51bGwpID9cbiAgICAgIHZhcmlhYmxlQXNzaWdubWVudFN0cmluZyA6XG4gICAgICBgJHt2YXJpYWJsZUFzc2lnbm1lbnRzU3RyaW5nfSwgJHt2YXJpYWJsZUFzc2lnbm1lbnRTdHJpbmd9YDtcblxuICAgIHJldHVybiB2YXJpYWJsZUFzc2lnbm1lbnRzU3RyaW5nO1xuICB9LCBudWxsKTsgLy8vXG5cbiAgdmFyaWFibGVBc3NpZ25tZW50c1N0cmluZyA9IGAke3R5cGVTdHJpbmd9ICR7dmFyaWFibGVBc3NpZ25tZW50c1N0cmluZ30gO2A7IC8vL1xuXG4gIHJldHVybiB2YXJpYWJsZUFzc2lnbm1lbnRzU3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVkdWNlU3RyaW5nRnJvbVZhcmlhYmxlSW5pdGlhbEV4cHJlc3Npb25BbmRBbm9ueW1vdXNQcm9jZWR1cmUodmFyaWFibGUsIGluaXRpYWxFeHByZXNzaW9uLCBhbm9ueW1vdXNQcm9jZWR1cmUpIHtcbiAgY29uc3QgdmFyaWFibGVTdHJpbmcgPSB2YXJpYWJsZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgaW5pdGlhbEV4cHJlc3Npb25TdHJpbmcgPSBpbml0aWFsRXhwcmVzc2lvbi5nZXRTdHJpbmcoKSxcbiAgICAgICAgYW5vbnltb3VzUHJvY2VkdXJlU3RyaW5nID0gYW5vbnltb3VzUHJvY2VkdXJlLmdldFN0cmluZygpLFxuICAgICAgICByZWR1Y2VTdHJpbmcgPSBgUmVkdWNlKCR7dmFyaWFibGVTdHJpbmd9LCAke2Fub255bW91c1Byb2NlZHVyZVN0cmluZ30sICR7aW5pdGlhbEV4cHJlc3Npb25TdHJpbmd9KWA7XG5cbiAgcmV0dXJuIHJlZHVjZVN0cmluZztcbn1cblxuIl0sIm5hbWVzIjpbImFub255bW91c1Byb2NlZHVyZVN0cmluZ0Zyb21UeXBlUGFyYW1ldGVyc0FuZFJldHVybkJsb2NrIiwiZXZlcnlTdHJpbmdGcm9tVmFyaWFibGVBbmRBbm9ueW1vdXNQcm9jZWR1cmUiLCJleHByZXNzaW9uU3RyaW5nRnJvbVByb3BlcnRpZXMiLCJub21pbmFsVmFsdWVQcm9wZXJ0aWVzU3RyaW5nRnJvbU5vbWluYWxWYWx1ZVByb3BlcnRpZXNBcnJheSIsIm5vbWluYWxWYWx1ZVByb3BlcnR5U3RyaW5nRnJvbU5hbWVBbmRUeXBlIiwicHJpbXRpdmVTdHJpbmdGcm9tQm9vbGVhbiIsInByaW10aXZlU3RyaW5nRnJvbU5vbWluYWxWYWx1ZSIsInByaW10aXZlU3RyaW5nRnJvbU5vbWluYWxWYWx1ZXMiLCJwcmltdGl2ZVN0cmluZ0Zyb21TdHJpbmdMaXRlcmFsIiwicHJvY2VkdXJlRGVjbGFyYXRpb25TdHJpbmdGcm9tUHJvY2VkdXJlIiwicHJvY2VkdXJlU3RyaW5nRnJvbVR5cGVMYWJlbFBhcmFtZXRlcnNBbmRSZXR1cm5CbG9jayIsInJlZHVjZVN0cmluZ0Zyb21WYXJpYWJsZUluaXRpYWxFeHByZXNzaW9uQW5kQW5vbnltb3VzUHJvY2VkdXJlIiwicmV0dXJuQmxvY2tTdHJpbmdGcm9tUmV0dXJuU3RhdGVtZW50Tm9kZSIsInNvbWVTdHJpbmdGcm9tVmFyaWFibGVBbmRBbm9ueW1vdXNQcm9jZWR1cmUiLCJ0ZXJtU3RyaW5nRnJvbVByb3BlcnRpZXMiLCJ0ZXJtc1N0cmluZ0Zyb21UZXJtc0FycmF5IiwidGVybmFyeVN0cmluZ0Zyb21UZXJtIiwidHlwZVN0cmluZ0Zyb21UeXBlTmFtZUFuZEFyZ3VtZW50VHlwZU5hbWUiLCJ2YWx1ZVN0cmluZ0Zyb21Qcm9wZXJ0aWVzIiwidmFsdWVzU3RyaW5nRnJvbVZhbHVlc0FycmF5IiwidmFyaWFibGVBc3NpZ25tZW50U3RyaW5nRnJvbVR5cGVBbmRWYXJpYWJsZSIsInZhcmlhYmxlQXNzaWdubWVudFN0cmluZ0Zyb21UeXBlQW5kVmFyaWFibGVBc3NpZ25tZW50c0FycmF5IiwidmFyaWFibGVBc3NpZ25tZW50U3RyaW5nRnJvbVZhcmlhYmxlQXNzaWdubWVudCIsInZhcmlhYmxlU3RyaW5nRnJvbU5hbWUiLCJ0ZXJtIiwidGVybVN0cmluZyIsImdldFN0cmluZyIsInRlcm5hcnlTdHJpbmciLCJuYW1lIiwidmFyaWFibGVTdHJpbmciLCJwcm9wZXJ0aWVzIiwiZm9yRWFjaCIsInByb3BlcnR5IiwicHJvcGVydHlTdHJpbmciLCJ2YWx1ZVN0cmluZyIsImJvb2xlYW4iLCJleHByZXNzc2lvblN0cmluZyIsInRlcm1zQXJyYXkiLCJ0ZXJtc1N0cmluZyIsInJlZHVjZSIsInZhbHVlc0FycmF5IiwidmFsdWVzU3RyaW5nIiwidmFsdWUiLCJub21pbmFsVmFsdWUiLCJzdHJpbmciLCJwcmltdGl2ZVN0cmluZyIsImV4cHJlc3Npb25TdHJpbmciLCJzdHJpbmdMaXRlcmFsIiwic3RyaW5nRnJvbVN0cmluZ0xpdGVyYWwiLCJub21pbmFsVmFsdWVzIiwicHJpbWl0aXZlU3RyaW5nIiwibm9taW5hbFZhbHVlU3RyaW5nIiwicHJvY2VkdXJlIiwidHlwZSIsImdldFR5cGUiLCJsYWJlbCIsImdldExhYmVsIiwicGFyYW1ldGVycyIsImdldFBhcmFtZXRlcnMiLCJyZXR1cm5TdGF0ZW1lbnQiLCJnZXRSZXR1cm5TdGF0ZW1lbnQiLCJ0eXBlU3RyaW5nIiwibGFiZWxTdHJpbmciLCJwYXJhbWV0ZXJzU3RyaW5nIiwicmV0dXJuU3RhdGVtZW50U3RyaW5nIiwicHJvY2VkdXJlRGVsY2FyYXRpb25TdHJpbmciLCJyZXR1cm5CbG9ja1N0cmluZyIsIm5hbWVTdHJpbmciLCJub21pbmFsVmFsdWVQcm9wZXJ0eVN0cmluZyIsInR5cGVOYW1lIiwiYXJndW1lbnRUeXBlTmFtZSIsInZhcmlhYmxlIiwidmFyaWFibGVBc3NpZ25tZW50U3RyaW5nIiwiYW5vbnltb3VzUHJvY2VkdXJlIiwiYW5vbnltb3VzUHJvY2VkdXJlU3RyaW5nIiwic29tZVN0cmluZyIsImV2ZXJ5U3RyaW5nIiwidmFyaWFibGVBc3NpZ25tZW50IiwiZ2V0VmFyaWFibGUiLCJyZXR1cm5CbG9jayIsInByb2NlZHVyZVN0cmluZyIsIm5vbWluYWxWYWx1ZVByb3BlcnRpZXNBcnJheSIsIm5vbWluYWxWYWx1ZVByb3BlcnRpZXNTdHJpbmciLCJub21pbmFsVmFsdWVQcm9wZXJ0eSIsInZhcmlhYmxlQXNzaWdubWVudHNBcnJheSIsInZhcmlhYmxlQXNzaWdubWVudHNTdHJpbmciLCJpbml0aWFsRXhwcmVzc2lvbiIsImluaXRpYWxFeHByZXNzaW9uU3RyaW5nIiwicmVkdWNlU3RyaW5nIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7UUE0TWdCQTtlQUFBQTs7UUExQkFDO2VBQUFBOztRQTVGQUM7ZUFBQUE7O1FBK0hBQztlQUFBQTs7UUF2RUFDO2VBQUFBOztRQWpHQUM7ZUFBQUE7O1FBa0NBQztlQUFBQTs7UUE0QkFDO2VBQUFBOztRQVBBQztlQUFBQTs7UUFxQkFDO2VBQUFBOztRQXlFQUM7ZUFBQUE7O1FBcURBQztlQUFBQTs7UUFoSEFDO2VBQUFBOztRQW1DQUM7ZUFBQUE7O1FBekpBQztlQUFBQTs7UUFrQ0FDO2VBQUFBOztRQS9DQUM7ZUFBQUE7O1FBa0pBQztlQUFBQTs7UUF2SEFDO2VBQUFBOztRQWtDQUM7ZUFBQUE7O1FBaUdBQztlQUFBQTs7UUFpRUFDO2VBQUFB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
@@ -15,9 +15,6 @@ _export(exports, {
15
15
  get valueFromBoolean () {
16
16
  return valueFromBoolean;
17
17
  },
18
- get valueFromList () {
19
- return valueFromList;
20
- },
21
18
  get valueFromNodeAndNominalValue () {
22
19
  return valueFromNodeAndNominalValue;
23
20
  },
@@ -27,9 +24,6 @@ _export(exports, {
27
24
  get valueFromNominalValue () {
28
25
  return valueFromNominalValue;
29
26
  },
30
- get valueFromPrimitive () {
31
- return valueFromPrimitive;
32
- },
33
27
  get valueFromStringLiteral () {
34
28
  return valueFromStringLiteral;
35
29
  }
@@ -42,24 +36,14 @@ function _interop_require_default(obj) {
42
36
  default: obj
43
37
  };
44
38
  }
45
- function valueFromList(list, context) {
46
- const { Value } = _elements.default, variable = null, primitive = (0, _primitive.primitiveFromList)(list, context), string = primitive.getString(), node = null, breakPoint = null;
47
- context = null;
48
- const value = new Value(context, string, node, breakPoint, variable, primitive);
49
- return value;
50
- }
51
39
  function valueFromBoolean(boolean, context) {
52
40
  const { Value } = _elements.default, variable = null, primitive = (0, _primitive.primitiveFromBoolean)(boolean, context), string = primitive.getString(), node = null, breakPoint = null;
53
41
  context = null;
54
42
  const value = new Value(context, string, node, breakPoint, variable, primitive);
55
43
  return value;
56
44
  }
57
- function valueFromPrimitive(primitive) {
58
- const { Value } = _elements.default, context = null, string = primitive.getString(), node = null, breakPoint = null, variable = null, value = new Value(context, string, node, breakPoint, variable, primitive);
59
- return value;
60
- }
61
- function valueFromNominalValue(nominalValue, context) {
62
- const { Value } = _elements.default, variable = null, primitive = (0, _primitive.primitiveFromNominalValue)(nominalValue, context), string = primitive.getString(), breakPoint = null, node = null, value = new Value(context, string, node, breakPoint, variable, primitive);
45
+ function valueFromNominalValue(nominalValue) {
46
+ const { Value } = _elements.default, variable = null, primitive = (0, _primitive.primitiveFromNominalValue)(nominalValue), string = primitive.getString(), breakPoint = null, node = null, context = null, value = new Value(context, string, node, breakPoint, variable, primitive);
63
47
  return value;
64
48
  }
65
49
  function valueFromStringLiteral(stringLiteral, context) {
@@ -75,18 +59,21 @@ function valueFromNodeAndNominalValue(node, nominalValue) {
75
59
  return value;
76
60
  }
77
61
  function valueFromNodesAndNominalValue(nodes, nominalValue) {
78
- const context = nominalValue.getContext(), list = nodes.map((node)=>{
62
+ const context = nominalValue.getContext(), nominalVvalues = nodes.map((node)=>{
79
63
  const nominalValue = _nominalValue.default.fromNode(node, context);
80
64
  return nominalValue;
81
- }), value = valueFromList(list, context);
65
+ }), value = valueFromNominalValues(nominalVvalues);
82
66
  return value;
83
67
  }
84
68
  const _default = {
85
- valueFromList,
86
69
  valueFromBoolean,
87
- valueFromNominalValue,
88
70
  valueFromStringLiteral,
89
- valueFromPrimitive
71
+ valueFromNodeAndNominalValue,
72
+ valueFromNodesAndNominalValue
90
73
  };
74
+ function valueFromNominalValues(nominalValues) {
75
+ const { Value } = _elements.default, variable = null, context = null, primitive = (0, _primitive.primitiveFromNominalValues)(nominalValues, context), string = primitive.getString(), node = null, breakPoint = null, value = new Value(context, string, node, breakPoint, variable, primitive);
76
+ return value;
77
+ }
91
78
 
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvdmFsdWUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBlbGVtZW50cyBmcm9tIFwiLi4vZWxlbWVudHNcIjtcbmltcG9ydCBOb21pbmFsVmFsdWUgZnJvbSBcIi4uL25vbWluYWxWYWx1ZVwiO1xuXG5pbXBvcnQgeyBwcmltaXRpdmVGcm9tTGlzdCwgcHJpbWl0aXZlRnJvbUJvb2xlYW4sIHByaW1pdGl2ZUZyb21Ob21pbmFsVmFsdWUsIHByaW1pdGl2ZUZyb21TdHJpbmdMaXRlcmFsIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9wcmltaXRpdmVcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIHZhbHVlRnJvbUxpc3QobGlzdCwgY29udGV4dCkge1xuICBjb25zdCB7IFZhbHVlIH0gPSBlbGVtZW50cyxcbiAgICB2YXJpYWJsZSA9IG51bGwsXG4gICAgcHJpbWl0aXZlID0gcHJpbWl0aXZlRnJvbUxpc3QobGlzdCwgY29udGV4dCksXG4gICAgc3RyaW5nID0gcHJpbWl0aXZlLmdldFN0cmluZygpLFxuICAgIG5vZGUgPSBudWxsLFxuICAgIGJyZWFrUG9pbnQgPSBudWxsO1xuXG4gIGNvbnRleHQgPSBudWxsO1xuXG4gIGNvbnN0IHZhbHVlID0gbmV3IFZhbHVlKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdmFyaWFibGUsIHByaW1pdGl2ZSk7XG5cbiAgcmV0dXJuIHZhbHVlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsdWVGcm9tQm9vbGVhbihib29sZWFuLCBjb250ZXh0KSB7XG4gIGNvbnN0IHsgVmFsdWUgfSA9IGVsZW1lbnRzLFxuICAgICAgICB2YXJpYWJsZSA9IG51bGwsXG4gICAgICAgIHByaW1pdGl2ZSA9IHByaW1pdGl2ZUZyb21Cb29sZWFuKGJvb2xlYW4sIGNvbnRleHQpLFxuICAgICAgICBzdHJpbmcgPSBwcmltaXRpdmUuZ2V0U3RyaW5nKCksXG4gICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICBicmVha1BvaW50ID0gbnVsbDtcblxuICBjb250ZXh0ID0gbnVsbDtcblxuICBjb25zdCB2YWx1ZSA9IG5ldyBWYWx1ZShjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIHZhcmlhYmxlLCBwcmltaXRpdmUpO1xuXG4gIHJldHVybiB2YWx1ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbHVlRnJvbVByaW1pdGl2ZShwcmltaXRpdmUpIHtcbiAgY29uc3QgeyBWYWx1ZSB9ID0gZWxlbWVudHMsXG4gICAgICAgIGNvbnRleHQgPSBudWxsLFxuICAgICAgICBzdHJpbmcgPSBwcmltaXRpdmUuZ2V0U3RyaW5nKCksXG4gICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICBicmVha1BvaW50ID0gbnVsbCxcbiAgICAgICAgdmFyaWFibGUgPSBudWxsLFxuICAgICAgICB2YWx1ZSA9IG5ldyBWYWx1ZShjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIHZhcmlhYmxlLCBwcmltaXRpdmUpO1xuXG4gIHJldHVybiB2YWx1ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbHVlRnJvbU5vbWluYWxWYWx1ZShub21pbmFsVmFsdWUsIGNvbnRleHQpIHtcbiAgY29uc3QgeyBWYWx1ZSB9ID0gZWxlbWVudHMsXG4gICAgICAgIHZhcmlhYmxlID0gbnVsbCxcbiAgICAgICAgcHJpbWl0aXZlID0gcHJpbWl0aXZlRnJvbU5vbWluYWxWYWx1ZShub21pbmFsVmFsdWUsIGNvbnRleHQpLFxuICAgICAgICBzdHJpbmcgPSBwcmltaXRpdmUuZ2V0U3RyaW5nKCksXG4gICAgICAgIGJyZWFrUG9pbnQgPSBudWxsLFxuICAgICAgICBub2RlID0gbnVsbCxcbiAgICAgICAgdmFsdWUgPSBuZXcgVmFsdWUoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB2YXJpYWJsZSwgcHJpbWl0aXZlKTtcblxuICByZXR1cm4gdmFsdWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWx1ZUZyb21TdHJpbmdMaXRlcmFsKHN0cmluZ0xpdGVyYWwsIGNvbnRleHQpIHtcbiAgY29uc3QgeyBWYWx1ZSB9ID0gZWxlbWVudHMsXG4gICAgICAgIHZhcmlhYmxlID0gbnVsbCxcbiAgICAgICAgcHJpbWl0aXZlID0gcHJpbWl0aXZlRnJvbVN0cmluZ0xpdGVyYWwoc3RyaW5nTGl0ZXJhbCwgY29udGV4dCksXG4gICAgICAgIHN0cmluZyA9IHByaW1pdGl2ZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgbm9kZSA9IG51bGwsXG4gICAgICAgIGJyZWFrUG9pbnQgPSBudWxsO1xuXG4gIGNvbnRleHQgPSBudWxsO1xuXG4gIGNvbnN0IHZhbHVlID0gbmV3IFZhbHVlKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdmFyaWFibGUsIHByaW1pdGl2ZSk7XG5cbiAgcmV0dXJuIHZhbHVlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsdWVGcm9tTm9kZUFuZE5vbWluYWxWYWx1ZShub2RlLCBub21pbmFsVmFsdWUpIHtcbiAgY29uc3QgY29udGV4dCA9IG5vbWluYWxWYWx1ZS5nZXRDb250ZXh0KCk7XG5cbiAgbm9taW5hbFZhbHVlID0gTm9taW5hbFZhbHVlLmZyb21Ob2RlKG5vZGUsIGNvbnRleHQpO1xuXG4gIGNvbnN0IHZhbHVlID0gdmFsdWVGcm9tTm9taW5hbFZhbHVlKG5vbWluYWxWYWx1ZSk7XG5cbiAgcmV0dXJuIHZhbHVlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsdWVGcm9tTm9kZXNBbmROb21pbmFsVmFsdWUobm9kZXMsIG5vbWluYWxWYWx1ZSkge1xuICBjb25zdCBjb250ZXh0ID0gbm9taW5hbFZhbHVlLmdldENvbnRleHQoKSxcbiAgICAgICAgbGlzdCA9IG5vZGVzLm1hcCgobm9kZSkgPT4ge1xuICAgICAgICAgIGNvbnN0IG5vbWluYWxWYWx1ZSA9IE5vbWluYWxWYWx1ZS5mcm9tTm9kZShub2RlLCBjb250ZXh0KTtcblxuICAgICAgICAgIHJldHVybiBub21pbmFsVmFsdWU7XG4gICAgICAgIH0pLFxuICAgICAgICB2YWx1ZSA9IHZhbHVlRnJvbUxpc3QobGlzdCwgY29udGV4dCk7XG5cbiAgcmV0dXJuIHZhbHVlO1xufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIHZhbHVlRnJvbUxpc3QsXG4gIHZhbHVlRnJvbUJvb2xlYW4sXG4gIHZhbHVlRnJvbU5vbWluYWxWYWx1ZSxcbiAgdmFsdWVGcm9tU3RyaW5nTGl0ZXJhbCxcbiAgdmFsdWVGcm9tUHJpbWl0aXZlXG59O1xuIl0sIm5hbWVzIjpbInZhbHVlRnJvbUJvb2xlYW4iLCJ2YWx1ZUZyb21MaXN0IiwidmFsdWVGcm9tTm9kZUFuZE5vbWluYWxWYWx1ZSIsInZhbHVlRnJvbU5vZGVzQW5kTm9taW5hbFZhbHVlIiwidmFsdWVGcm9tTm9taW5hbFZhbHVlIiwidmFsdWVGcm9tUHJpbWl0aXZlIiwidmFsdWVGcm9tU3RyaW5nTGl0ZXJhbCIsImxpc3QiLCJjb250ZXh0IiwiVmFsdWUiLCJlbGVtZW50cyIsInZhcmlhYmxlIiwicHJpbWl0aXZlIiwicHJpbWl0aXZlRnJvbUxpc3QiLCJzdHJpbmciLCJnZXRTdHJpbmciLCJub2RlIiwiYnJlYWtQb2ludCIsInZhbHVlIiwiYm9vbGVhbiIsInByaW1pdGl2ZUZyb21Cb29sZWFuIiwibm9taW5hbFZhbHVlIiwicHJpbWl0aXZlRnJvbU5vbWluYWxWYWx1ZSIsInN0cmluZ0xpdGVyYWwiLCJwcmltaXRpdmVGcm9tU3RyaW5nTGl0ZXJhbCIsImdldENvbnRleHQiLCJOb21pbmFsVmFsdWUiLCJmcm9tTm9kZSIsIm5vZGVzIiwibWFwIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7UUFrR0E7ZUFBQTs7UUE1RWdCQTtlQUFBQTs7UUFmQUM7ZUFBQUE7O1FBcUVBQztlQUFBQTs7UUFVQUM7ZUFBQUE7O1FBckNBQztlQUFBQTs7UUFaQUM7ZUFBQUE7O1FBd0JBQztlQUFBQTs7O2lFQTNESztxRUFDSTsyQkFFc0Y7Ozs7OztBQUV4RyxT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
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvdmFsdWUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBlbGVtZW50cyBmcm9tIFwiLi4vZWxlbWVudHNcIjtcbmltcG9ydCBOb21pbmFsVmFsdWUgZnJvbSBcIi4uL25vbWluYWxWYWx1ZVwiO1xuXG5pbXBvcnQgeyBwcmltaXRpdmVGcm9tQm9vbGVhbiwgcHJpbWl0aXZlRnJvbU5vbWluYWxWYWx1ZSwgcHJpbWl0aXZlRnJvbU5vbWluYWxWYWx1ZXMsIHByaW1pdGl2ZUZyb21TdHJpbmdMaXRlcmFsIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9wcmltaXRpdmVcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIHZhbHVlRnJvbUJvb2xlYW4oYm9vbGVhbiwgY29udGV4dCkge1xuICBjb25zdCB7IFZhbHVlIH0gPSBlbGVtZW50cyxcbiAgICAgICAgdmFyaWFibGUgPSBudWxsLFxuICAgICAgICBwcmltaXRpdmUgPSBwcmltaXRpdmVGcm9tQm9vbGVhbihib29sZWFuLCBjb250ZXh0KSxcbiAgICAgICAgc3RyaW5nID0gcHJpbWl0aXZlLmdldFN0cmluZygpLFxuICAgICAgICBub2RlID0gbnVsbCxcbiAgICAgICAgYnJlYWtQb2ludCA9IG51bGw7XG5cbiAgY29udGV4dCA9IG51bGw7XG5cbiAgY29uc3QgdmFsdWUgPSBuZXcgVmFsdWUoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB2YXJpYWJsZSwgcHJpbWl0aXZlKTtcblxuICByZXR1cm4gdmFsdWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWx1ZUZyb21Ob21pbmFsVmFsdWUobm9taW5hbFZhbHVlKSB7XG4gIGNvbnN0IHsgVmFsdWUgfSA9IGVsZW1lbnRzLFxuICAgICAgICB2YXJpYWJsZSA9IG51bGwsXG4gICAgICAgIHByaW1pdGl2ZSA9IHByaW1pdGl2ZUZyb21Ob21pbmFsVmFsdWUobm9taW5hbFZhbHVlKSxcbiAgICAgICAgc3RyaW5nID0gcHJpbWl0aXZlLmdldFN0cmluZygpLFxuICAgICAgICBicmVha1BvaW50ID0gbnVsbCxcbiAgICAgICAgbm9kZSA9IG51bGwsXG4gICAgICAgIGNvbnRleHQgPSBudWxsLCAgLy8vXG4gICAgICAgIHZhbHVlID0gbmV3IFZhbHVlKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdmFyaWFibGUsIHByaW1pdGl2ZSk7XG5cbiAgcmV0dXJuIHZhbHVlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsdWVGcm9tU3RyaW5nTGl0ZXJhbChzdHJpbmdMaXRlcmFsLCBjb250ZXh0KSB7XG4gIGNvbnN0IHsgVmFsdWUgfSA9IGVsZW1lbnRzLFxuICAgICAgICB2YXJpYWJsZSA9IG51bGwsXG4gICAgICAgIHByaW1pdGl2ZSA9IHByaW1pdGl2ZUZyb21TdHJpbmdMaXRlcmFsKHN0cmluZ0xpdGVyYWwsIGNvbnRleHQpLFxuICAgICAgICBzdHJpbmcgPSBwcmltaXRpdmUuZ2V0U3RyaW5nKCksXG4gICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICBicmVha1BvaW50ID0gbnVsbDtcblxuICBjb250ZXh0ID0gbnVsbDtcblxuICBjb25zdCB2YWx1ZSA9IG5ldyBWYWx1ZShjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIHZhcmlhYmxlLCBwcmltaXRpdmUpO1xuXG4gIHJldHVybiB2YWx1ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbHVlRnJvbU5vZGVBbmROb21pbmFsVmFsdWUobm9kZSwgbm9taW5hbFZhbHVlKSB7XG4gIGNvbnN0IGNvbnRleHQgPSBub21pbmFsVmFsdWUuZ2V0Q29udGV4dCgpO1xuXG4gIG5vbWluYWxWYWx1ZSA9IE5vbWluYWxWYWx1ZS5mcm9tTm9kZShub2RlLCBjb250ZXh0KTtcblxuICBjb25zdCB2YWx1ZSA9IHZhbHVlRnJvbU5vbWluYWxWYWx1ZShub21pbmFsVmFsdWUpO1xuXG4gIHJldHVybiB2YWx1ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbHVlRnJvbU5vZGVzQW5kTm9taW5hbFZhbHVlKG5vZGVzLCBub21pbmFsVmFsdWUpIHtcbiAgY29uc3QgY29udGV4dCA9IG5vbWluYWxWYWx1ZS5nZXRDb250ZXh0KCksXG4gICAgICAgIG5vbWluYWxWdmFsdWVzID0gbm9kZXMubWFwKChub2RlKSA9PiB7XG4gICAgICAgICAgY29uc3Qgbm9taW5hbFZhbHVlID0gTm9taW5hbFZhbHVlLmZyb21Ob2RlKG5vZGUsIGNvbnRleHQpO1xuXG4gICAgICAgICAgcmV0dXJuIG5vbWluYWxWYWx1ZTtcbiAgICAgICAgfSksXG4gICAgICAgIHZhbHVlID0gdmFsdWVGcm9tTm9taW5hbFZhbHVlcyhub21pbmFsVnZhbHVlcyk7XG5cbiAgcmV0dXJuIHZhbHVlO1xufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIHZhbHVlRnJvbUJvb2xlYW4sXG4gIHZhbHVlRnJvbVN0cmluZ0xpdGVyYWwsXG4gIHZhbHVlRnJvbU5vZGVBbmROb21pbmFsVmFsdWUsXG4gIHZhbHVlRnJvbU5vZGVzQW5kTm9taW5hbFZhbHVlXG59O1xuXG5mdW5jdGlvbiB2YWx1ZUZyb21Ob21pbmFsVmFsdWVzKG5vbWluYWxWYWx1ZXMpIHtcbiAgY29uc3QgeyBWYWx1ZSB9ID0gZWxlbWVudHMsXG4gICAgICAgIHZhcmlhYmxlID0gbnVsbCxcbiAgICAgICAgY29udGV4dCA9IG51bGwsXG4gICAgICAgIHByaW1pdGl2ZSA9IHByaW1pdGl2ZUZyb21Ob21pbmFsVmFsdWVzKG5vbWluYWxWYWx1ZXMsIGNvbnRleHQpLFxuICAgICAgICBzdHJpbmcgPSBwcmltaXRpdmUuZ2V0U3RyaW5nKCksXG4gICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICBicmVha1BvaW50ID0gbnVsbCxcbiAgICAgICAgdmFsdWUgPSBuZXcgVmFsdWUoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB2YXJpYWJsZSwgcHJpbWl0aXZlKTtcblxuICByZXR1cm4gdmFsdWU7XG59XG4iXSwibmFtZXMiOlsidmFsdWVGcm9tQm9vbGVhbiIsInZhbHVlRnJvbU5vZGVBbmROb21pbmFsVmFsdWUiLCJ2YWx1ZUZyb21Ob2Rlc0FuZE5vbWluYWxWYWx1ZSIsInZhbHVlRnJvbU5vbWluYWxWYWx1ZSIsInZhbHVlRnJvbVN0cmluZ0xpdGVyYWwiLCJib29sZWFuIiwiY29udGV4dCIsIlZhbHVlIiwiZWxlbWVudHMiLCJ2YXJpYWJsZSIsInByaW1pdGl2ZSIsInByaW1pdGl2ZUZyb21Cb29sZWFuIiwic3RyaW5nIiwiZ2V0U3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ2YWx1ZSIsIm5vbWluYWxWYWx1ZSIsInByaW1pdGl2ZUZyb21Ob21pbmFsVmFsdWUiLCJzdHJpbmdMaXRlcmFsIiwicHJpbWl0aXZlRnJvbVN0cmluZ0xpdGVyYWwiLCJnZXRDb250ZXh0IiwiTm9taW5hbFZhbHVlIiwiZnJvbU5vZGUiLCJub2RlcyIsIm5vbWluYWxWdmFsdWVzIiwibWFwIiwidmFsdWVGcm9tTm9taW5hbFZhbHVlcyIsIm5vbWluYWxWYWx1ZXMiLCJwcmltaXRpdmVGcm9tTm9taW5hbFZhbHVlcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O1FBd0VBO2VBQUE7O1FBakVnQkE7ZUFBQUE7O1FBMkNBQztlQUFBQTs7UUFVQUM7ZUFBQUE7O1FBdENBQztlQUFBQTs7UUFhQUM7ZUFBQUE7OztpRUFqQ0s7cUVBQ0k7MkJBRStGOzs7Ozs7QUFFakgsU0FBU0osaUJBQWlCSyxPQUFPLEVBQUVDLE9BQU87SUFDL0MsTUFBTSxFQUFFQyxLQUFLLEVBQUUsR0FBR0MsaUJBQVEsRUFDcEJDLFdBQVcsTUFDWEMsWUFBWUMsSUFBQUEsK0JBQW9CLEVBQUNOLFNBQVNDLFVBQzFDTSxTQUFTRixVQUFVRyxTQUFTLElBQzVCQyxPQUFPLE1BQ1BDLGFBQWE7SUFFbkJULFVBQVU7SUFFVixNQUFNVSxRQUFRLElBQUlULE1BQU1ELFNBQVNNLFFBQVFFLE1BQU1DLFlBQVlOLFVBQVVDO0lBRXJFLE9BQU9NO0FBQ1Q7QUFFTyxTQUFTYixzQkFBc0JjLFlBQVk7SUFDaEQsTUFBTSxFQUFFVixLQUFLLEVBQUUsR0FBR0MsaUJBQVEsRUFDcEJDLFdBQVcsTUFDWEMsWUFBWVEsSUFBQUEsb0NBQXlCLEVBQUNELGVBQ3RDTCxTQUFTRixVQUFVRyxTQUFTLElBQzVCRSxhQUFhLE1BQ2JELE9BQU8sTUFDUFIsVUFBVSxNQUNWVSxRQUFRLElBQUlULE1BQU1ELFNBQVNNLFFBQVFFLE1BQU1DLFlBQVlOLFVBQVVDO0lBRXJFLE9BQU9NO0FBQ1Q7QUFFTyxTQUFTWix1QkFBdUJlLGFBQWEsRUFBRWIsT0FBTztJQUMzRCxNQUFNLEVBQUVDLEtBQUssRUFBRSxHQUFHQyxpQkFBUSxFQUNwQkMsV0FBVyxNQUNYQyxZQUFZVSxJQUFBQSxxQ0FBMEIsRUFBQ0QsZUFBZWIsVUFDdERNLFNBQVNGLFVBQVVHLFNBQVMsSUFDNUJDLE9BQU8sTUFDUEMsYUFBYTtJQUVuQlQsVUFBVTtJQUVWLE1BQU1VLFFBQVEsSUFBSVQsTUFBTUQsU0FBU00sUUFBUUUsTUFBTUMsWUFBWU4sVUFBVUM7SUFFckUsT0FBT007QUFDVDtBQUVPLFNBQVNmLDZCQUE2QmEsSUFBSSxFQUFFRyxZQUFZO0lBQzdELE1BQU1YLFVBQVVXLGFBQWFJLFVBQVU7SUFFdkNKLGVBQWVLLHFCQUFZLENBQUNDLFFBQVEsQ0FBQ1QsTUFBTVI7SUFFM0MsTUFBTVUsUUFBUWIsc0JBQXNCYztJQUVwQyxPQUFPRDtBQUNUO0FBRU8sU0FBU2QsOEJBQThCc0IsS0FBSyxFQUFFUCxZQUFZO0lBQy9ELE1BQU1YLFVBQVVXLGFBQWFJLFVBQVUsSUFDakNJLGlCQUFpQkQsTUFBTUUsR0FBRyxDQUFDLENBQUNaO1FBQzFCLE1BQU1HLGVBQWVLLHFCQUFZLENBQUNDLFFBQVEsQ0FBQ1QsTUFBTVI7UUFFakQsT0FBT1c7SUFDVCxJQUNBRCxRQUFRVyx1QkFBdUJGO0lBRXJDLE9BQU9UO0FBQ1Q7TUFFQSxXQUFlO0lBQ2JoQjtJQUNBSTtJQUNBSDtJQUNBQztBQUNGO0FBRUEsU0FBU3lCLHVCQUF1QkMsYUFBYTtJQUMzQyxNQUFNLEVBQUVyQixLQUFLLEVBQUUsR0FBR0MsaUJBQVEsRUFDcEJDLFdBQVcsTUFDWEgsVUFBVSxNQUNWSSxZQUFZbUIsSUFBQUEscUNBQTBCLEVBQUNELGVBQWV0QixVQUN0RE0sU0FBU0YsVUFBVUcsU0FBUyxJQUM1QkMsT0FBTyxNQUNQQyxhQUFhLE1BQ2JDLFFBQVEsSUFBSVQsTUFBTUQsU0FBU00sUUFBUUUsTUFBTUMsWUFBWU4sVUFBVUM7SUFFckUsT0FBT007QUFDVCJ9
@@ -17,15 +17,15 @@ function _interop_require_default(obj) {
17
17
  };
18
18
  }
19
19
  function valuesFromNominalValues(nominalValues, context) {
20
- const { Values } = _elements.default, valuesArray = valuesArrayFromNominalValues(nominalValues, context), valuesString = (0, _string.valuesStringFromValuesArray)(valuesArray), string = valuesString, array = valuesArray, node = null, breakPoint = null, values = new Values(context, string, node, breakPoint, array);
20
+ const { Values } = _elements.default, valuesArray = valuesArrayFromNominalValues(nominalValues), valuesString = (0, _string.valuesStringFromValuesArray)(valuesArray), string = valuesString, array = valuesArray, node = null, breakPoint = null, values = new Values(context, string, node, breakPoint, array);
21
21
  return values;
22
22
  }
23
- function valuesArrayFromNominalValues(nominalValues, context) {
23
+ function valuesArrayFromNominalValues(nominalValues) {
24
24
  const valuesArray = nominalValues.map((nominalValue)=>{
25
- const value = (0, _value.valueFromNominalValue)(nominalValue, context);
25
+ const value = (0, _value.valueFromNominalValue)(nominalValue);
26
26
  return value;
27
27
  });
28
28
  return valuesArray;
29
29
  }
30
30
 
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvdmFsdWVzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgZWxlbWVudHMgZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5cbmltcG9ydCB7IHZhbHVlRnJvbU5vbWluYWxWYWx1ZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvdmFsdWVcIjtcbmltcG9ydCB7IHZhbHVlc1N0cmluZ0Zyb21WYWx1ZXNBcnJheSB9IGZyb20gXCIuLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWx1ZXNGcm9tTm9taW5hbFZhbHVlcyhub21pbmFsVmFsdWVzLCBjb250ZXh0KSB7XG4gIGNvbnN0IHsgVmFsdWVzIH0gPSBlbGVtZW50cyxcbiAgICAgICAgdmFsdWVzQXJyYXkgPSB2YWx1ZXNBcnJheUZyb21Ob21pbmFsVmFsdWVzKG5vbWluYWxWYWx1ZXMsIGNvbnRleHQpLFxuICAgICAgICB2YWx1ZXNTdHJpbmcgPSB2YWx1ZXNTdHJpbmdGcm9tVmFsdWVzQXJyYXkodmFsdWVzQXJyYXkpLFxuICAgICAgICBzdHJpbmcgPSB2YWx1ZXNTdHJpbmcsIC8vL1xuICAgICAgICBhcnJheSA9IHZhbHVlc0FycmF5LCAgLy8vXG4gICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICBicmVha1BvaW50ID0gbnVsbCxcbiAgICAgICAgdmFsdWVzID0gbmV3IFZhbHVlcyhjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIGFycmF5KTtcblxuICByZXR1cm4gdmFsdWVzO1xufVxuXG5mdW5jdGlvbiB2YWx1ZXNBcnJheUZyb21Ob21pbmFsVmFsdWVzKG5vbWluYWxWYWx1ZXMsIGNvbnRleHQpIHtcbiAgY29uc3QgdmFsdWVzQXJyYXkgPSBub21pbmFsVmFsdWVzLm1hcCgobm9taW5hbFZhbHVlKSA9PiB7XG4gICAgY29uc3QgdmFsdWUgPSB2YWx1ZUZyb21Ob21pbmFsVmFsdWUobm9taW5hbFZhbHVlLCBjb250ZXh0KTtcblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfSk7XG5cbiAgcmV0dXJuIHZhbHVlc0FycmF5O1xufVxuIl0sIm5hbWVzIjpbInZhbHVlc0Zyb21Ob21pbmFsVmFsdWVzIiwibm9taW5hbFZhbHVlcyIsImNvbnRleHQiLCJWYWx1ZXMiLCJlbGVtZW50cyIsInZhbHVlc0FycmF5IiwidmFsdWVzQXJyYXlGcm9tTm9taW5hbFZhbHVlcyIsInZhbHVlc1N0cmluZyIsInZhbHVlc1N0cmluZ0Zyb21WYWx1ZXNBcnJheSIsInN0cmluZyIsImFycmF5Iiwibm9kZSIsImJyZWFrUG9pbnQiLCJ2YWx1ZXMiLCJtYXAiLCJub21pbmFsVmFsdWUiLCJ2YWx1ZSIsInZhbHVlRnJvbU5vbWluYWxWYWx1ZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBT2dCQTs7O2VBQUFBOzs7aUVBTEs7dUJBRWlCO3dCQUNNOzs7Ozs7QUFFckMsU0FBU0Esd0JBQXdCQyxhQUFhLEVBQUVDLE9BQU87SUFDNUQsTUFBTSxFQUFFQyxNQUFNLEVBQUUsR0FBR0MsaUJBQVEsRUFDckJDLGNBQWNDLDZCQUE2QkwsZUFBZUMsVUFDMURLLGVBQWVDLElBQUFBLG1DQUEyQixFQUFDSCxjQUMzQ0ksU0FBU0YsY0FDVEcsUUFBUUwsYUFDUk0sT0FBTyxNQUNQQyxhQUFhLE1BQ2JDLFNBQVMsSUFBSVYsT0FBT0QsU0FBU08sUUFBUUUsTUFBTUMsWUFBWUY7SUFFN0QsT0FBT0c7QUFDVDtBQUVBLFNBQVNQLDZCQUE2QkwsYUFBYSxFQUFFQyxPQUFPO0lBQzFELE1BQU1HLGNBQWNKLGNBQWNhLEdBQUcsQ0FBQyxDQUFDQztRQUNyQyxNQUFNQyxRQUFRQyxJQUFBQSw0QkFBcUIsRUFBQ0YsY0FBY2I7UUFFbEQsT0FBT2M7SUFDVDtJQUVBLE9BQU9YO0FBQ1QifQ==
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvdmFsdWVzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgZWxlbWVudHMgZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5cbmltcG9ydCB7IHZhbHVlRnJvbU5vbWluYWxWYWx1ZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvdmFsdWVcIjtcbmltcG9ydCB7IHZhbHVlc1N0cmluZ0Zyb21WYWx1ZXNBcnJheSB9IGZyb20gXCIuLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWx1ZXNGcm9tTm9taW5hbFZhbHVlcyhub21pbmFsVmFsdWVzLCBjb250ZXh0KSB7XG4gIGNvbnN0IHsgVmFsdWVzIH0gPSBlbGVtZW50cyxcbiAgICAgICAgdmFsdWVzQXJyYXkgPSB2YWx1ZXNBcnJheUZyb21Ob21pbmFsVmFsdWVzKG5vbWluYWxWYWx1ZXMpLFxuICAgICAgICB2YWx1ZXNTdHJpbmcgPSB2YWx1ZXNTdHJpbmdGcm9tVmFsdWVzQXJyYXkodmFsdWVzQXJyYXkpLFxuICAgICAgICBzdHJpbmcgPSB2YWx1ZXNTdHJpbmcsIC8vL1xuICAgICAgICBhcnJheSA9IHZhbHVlc0FycmF5LCAgLy8vXG4gICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICBicmVha1BvaW50ID0gbnVsbCxcbiAgICAgICAgdmFsdWVzID0gbmV3IFZhbHVlcyhjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIGFycmF5KTtcblxuICByZXR1cm4gdmFsdWVzO1xufVxuXG5mdW5jdGlvbiB2YWx1ZXNBcnJheUZyb21Ob21pbmFsVmFsdWVzKG5vbWluYWxWYWx1ZXMpIHtcbiAgY29uc3QgdmFsdWVzQXJyYXkgPSBub21pbmFsVmFsdWVzLm1hcCgobm9taW5hbFZhbHVlKSA9PiB7XG4gICAgY29uc3QgdmFsdWUgPSB2YWx1ZUZyb21Ob21pbmFsVmFsdWUobm9taW5hbFZhbHVlKTtcblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfSk7XG5cbiAgcmV0dXJuIHZhbHVlc0FycmF5O1xufVxuIl0sIm5hbWVzIjpbInZhbHVlc0Zyb21Ob21pbmFsVmFsdWVzIiwibm9taW5hbFZhbHVlcyIsImNvbnRleHQiLCJWYWx1ZXMiLCJlbGVtZW50cyIsInZhbHVlc0FycmF5IiwidmFsdWVzQXJyYXlGcm9tTm9taW5hbFZhbHVlcyIsInZhbHVlc1N0cmluZyIsInZhbHVlc1N0cmluZ0Zyb21WYWx1ZXNBcnJheSIsInN0cmluZyIsImFycmF5Iiwibm9kZSIsImJyZWFrUG9pbnQiLCJ2YWx1ZXMiLCJtYXAiLCJub21pbmFsVmFsdWUiLCJ2YWx1ZSIsInZhbHVlRnJvbU5vbWluYWxWYWx1ZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBT2dCQTs7O2VBQUFBOzs7aUVBTEs7dUJBRWlCO3dCQUNNOzs7Ozs7QUFFckMsU0FBU0Esd0JBQXdCQyxhQUFhLEVBQUVDLE9BQU87SUFDNUQsTUFBTSxFQUFFQyxNQUFNLEVBQUUsR0FBR0MsaUJBQVEsRUFDckJDLGNBQWNDLDZCQUE2QkwsZ0JBQzNDTSxlQUFlQyxJQUFBQSxtQ0FBMkIsRUFBQ0gsY0FDM0NJLFNBQVNGLGNBQ1RHLFFBQVFMLGFBQ1JNLE9BQU8sTUFDUEMsYUFBYSxNQUNiQyxTQUFTLElBQUlWLE9BQU9ELFNBQVNPLFFBQVFFLE1BQU1DLFlBQVlGO0lBRTdELE9BQU9HO0FBQ1Q7QUFFQSxTQUFTUCw2QkFBNkJMLGFBQWE7SUFDakQsTUFBTUksY0FBY0osY0FBY2EsR0FBRyxDQUFDLENBQUNDO1FBQ3JDLE1BQU1DLFFBQVFDLElBQUFBLDRCQUFxQixFQUFDRjtRQUVwQyxPQUFPQztJQUNUO0lBRUEsT0FBT1g7QUFDVCJ9
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "occam-furtle",
3
3
  "author": "James Smith",
4
- "version": "3.0.307",
4
+ "version": "3.0.310",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-furtle",
7
7
  "description": "Occam's Furtle language.",
@@ -6,9 +6,8 @@ import elements from "../../elements";
6
6
  import Exception from "../../exception";
7
7
 
8
8
  import { define } from "../../elements";
9
- import { valueFromNominalValue } from "../../utilities/value";
9
+ import { LIST_TYPE_NAME } from "../../typeNames";
10
10
  import { primtiveStringFromNominalValues } from "../../utilities/string";
11
- import { LIST_TYPE_NAME, NOMINAL_VALUE_TYPE_NAME } from "../../typeNames";
12
11
 
13
12
  export default define(class ArrayAssigment extends Element {
14
13
  constructor(context, string, node, breakPoint, variable, bindings) {
@@ -43,26 +42,26 @@ export default define(class ArrayAssigment extends Element {
43
42
  throw exception;
44
43
  }
45
44
 
46
- const primitiveValue = value.getPrimitiveValue(),
47
- listValues = primitiveValue, ///
48
- bindingsLength = this.bindings.getLength(),
49
- listValuesLength = listValues.length;
45
+ const bindingsLength = this.bindings.getLength(),
46
+ primitiveValue = value.getPrimitiveValue(),
47
+ primitiveValueLength = primitiveValue.length;
50
48
 
51
- if (bindingsLength > listValuesLength) {
52
- const bindingsString = this.bindings.getString(),
53
- primitiveString = primtiveStringFromNominalValues(listValues),
54
- message = `The length of the '${bindingsString}' bindings is greater than the length of the '${primitiveString}' list.`,
49
+ if (bindingsLength > primitiveValueLength) {
50
+ const valueString = value.getString(),
51
+ bindingsString = this.bindings.getString(),
52
+ message = `The length of the '${bindingsString}' bindings is greater than the length of the '${valueString}' list.`,
55
53
  exception = Exception.fromMessage(message);
56
54
 
57
55
  throw exception;
58
56
  }
59
57
 
58
+ const values = value.lift(context);
59
+
60
60
  this.bindings.forEachBinding((binding, index) => {
61
61
  const elided = binding.isElided();
62
62
 
63
63
  if (!elided) {
64
- const listValue = listValues[index],
65
- value = listValue; ///
64
+ const value = values[index];
66
65
 
67
66
  this.evaluateBinding(binding, value, context);
68
67
  }
@@ -7,8 +7,8 @@ import Exception from "../../exception";
7
7
  import nominalValueProperties from "../../nominalValueProperties";
8
8
 
9
9
  import { define } from "../../elements";
10
- import { stringLiteralFromString } from "../../utilities/stringLiteral";
11
10
  import { valueFromNodesAndNominalValue } from "../../utilities/value";
11
+ import { stringLiteralFromString } from "../../utilities/stringLiteral";
12
12
  import { termFromBoolean, termFromStringLiteral } from "../../utilities/term";
13
13
  import { CONTENT_PARAMETER_NAME, TERMINAL_PARAMETER_NAME, CHILD_NODES_PARAMETER_NAME } from "../../parameterNames";
14
14
  import { LIST_TYPE_NAME, STRING_TYPE_NAME, BOOLEAN_TYPE_NAME, NOMINAL_VALUE_TYPE_NAME } from "../../typeNames";
@@ -114,4 +114,33 @@ export default define(class Primitive extends Element {
114
114
  }
115
115
 
116
116
  static name = "Primitive";
117
+
118
+ static fromPrimitiveValueAndType(primitiveValue, type, context) {
119
+ const value = primitiveValue, ///
120
+ typeName = type.getName();
121
+
122
+ let string;
123
+
124
+ switch (typeName) {
125
+ case NOMINAL_VALUE_TYPE_NAME: {
126
+ const nominalValue = value; ///
127
+
128
+ string = nominalValue.getString();
129
+
130
+ break;
131
+ }
132
+
133
+ default: {
134
+ string = `${value}`;
135
+
136
+ break;
137
+ }
138
+ }
139
+
140
+ const node = null,
141
+ breakPoint = null,
142
+ primitive = new Primitive(context, string, node, breakPoint, type, value);
143
+
144
+ return primitive;
145
+ }
117
146
  });
@@ -67,7 +67,7 @@ export default define(class Reduce extends Element {
67
67
 
68
68
  const values = Values.fromValue(value, context);
69
69
 
70
- value = valueFromNominalValue(nominalValue, context);
70
+ value = valueFromNominalValue(nominalValue);
71
71
 
72
72
  values.addValue(value);
73
73
 
@@ -2,6 +2,8 @@
2
2
 
3
3
  import { Element } from "occam-languages";
4
4
 
5
+ import elements from "../elements";
6
+
5
7
  import { define } from "../elements";
6
8
 
7
9
  export default define(class Value extends Element {
@@ -84,6 +86,29 @@ export default define(class Value extends Element {
84
86
  return equalTo;
85
87
  }
86
88
 
89
+ lift(context) {
90
+ const { Primitive } = elements,
91
+ primitiveValue = this.getPrimitiveValue(),
92
+ primitiveValues = primitiveValue; ///
93
+
94
+ let type;
95
+
96
+ type = this.getType();
97
+
98
+ const argumentType = type.getArgumentType();
99
+
100
+ type = argumentType; ///
101
+
102
+ const values = primitiveValues.map((primitiveValue)=> {
103
+ const primitive = Primitive.fromPrimitiveValueAndType(primitiveValue, type, context),
104
+ value = Value.fromPrimitive(primitive, context);
105
+
106
+ return value;
107
+ });
108
+
109
+ return values;
110
+ }
111
+
87
112
  static name = "Value";
88
113
 
89
114
  static fromPrimitive(primitive, context) {
@@ -11,7 +11,7 @@ export default class NamedBindingNode extends BindingNode {
11
11
  const tokenType = NAME_TOKEN_TYPE;
12
12
 
13
13
  this.someTerminalNode((terminalNode, index) => {
14
- if (index === 3) {
14
+ if (index === 1) {
15
15
  const content = terminalNode.getContent();
16
16
 
17
17
  alias = content; //
@@ -10,7 +10,6 @@ import { ternaryStringFromTerm,
10
10
  termStringFromProperties,
11
11
  valueStringFromProperties,
12
12
  expressionStringFromProperties,
13
- typeStringFromNameAndArgumentType,
14
13
  procedureDeclarationStringFromProcedure,
15
14
  returnBlockStringFromReturnStatementNode,
16
15
  variableAssignmentStringFromTypeAndVariable,
@@ -84,10 +83,9 @@ export function termFromTermNode(termNode, context) {
84
83
  export function typeFromTypeNode(typeNode, context) {
85
84
  const { Type } = elements,
86
85
  node = typeNode, ///
86
+ string = context.nodeAsString(node),
87
87
  name = nameFromTypeNode(typeNode, context),
88
88
  argumentType = argumentTypeFromTypeNode(typeNode, context),
89
- typeString = typeStringFromNameAndArgumentType(name, argumentType),
90
- string = typeString, ///
91
89
  breakPoint = null;
92
90
 
93
91
  context = null;
@@ -917,7 +915,9 @@ export function argumentTypeFromTypeNode(typeNode, context) {
917
915
  const argumentTypeName = typeNode.getArgumentTypeName();
918
916
 
919
917
  if (argumentTypeName !== null) {
920
- debugger
918
+ const { Type } = elements;
919
+
920
+ argumentType = Type.fromTypeName(argumentTypeName, context);
921
921
  }
922
922
 
923
923
  return argumentType;
@@ -2,27 +2,9 @@
2
2
 
3
3
  import elements from "../elements";
4
4
 
5
- import { typeFromTypeName } from "../utilities/element";
6
5
  import { STRING_TYPE_NAME, BOOLEAN_TYPE_NAME, NOMINAL_VALUE_TYPE_NAME, LIST_TYPE_NAME } from "../typeNames";
7
6
  import { primtiveStringFromBoolean, primtiveStringFromNominalValue, primtiveStringFromNominalValues, primtiveStringFromStringLiteral } from "../utilities/string";
8
7
 
9
- export function primitiveFromList(list, context) {
10
- const { Type, Primitive } = elements,
11
- primitiveString = primtiveStringFromNominalValues(list),
12
- string = primitiveString, ///
13
- typeName = LIST_TYPE_NAME,
14
- type = Type.fromTypeName(typeName, context),
15
- value = list, ///
16
- node = null,
17
- breakPoint = null;
18
-
19
- context = null;
20
-
21
- const primitive = new Primitive(context, string, node, breakPoint, type, value);
22
-
23
- return primitive;
24
- }
25
-
26
8
  export function primitiveFromBoolean(boolean, context) {
27
9
  const { Type, Primitive } = elements,
28
10
  primitiveString = primtiveStringFromBoolean(boolean),
@@ -73,3 +55,21 @@ export function primitiveFromStringLiteral(stringLiteral, context) {
73
55
 
74
56
  return primitive;
75
57
  }
58
+
59
+ export function primitiveFromNominalValues(nominalValues, context) {
60
+ const { Type, Primitive } = elements,
61
+ primitiveString = primtiveStringFromNominalValues(nominalValues),
62
+ string = primitiveString, ///
63
+ argumentTypeName = NOMINAL_VALUE_TYPE_NAME,
64
+ typeName = LIST_TYPE_NAME,
65
+ type = Type.fromTypeNameAndArgumentTypeName(typeName, argumentTypeName, context),
66
+ value = nominalValues, ///
67
+ node = null,
68
+ breakPoint = null;
69
+
70
+ context = null;
71
+
72
+ const primitive = new Primitive(context, string, node, breakPoint, type, value);
73
+
74
+ return primitive;
75
+ }
@@ -119,20 +119,6 @@ export function primtiveStringFromNominalValues(nominalValues) {
119
119
  return primtiveString;
120
120
  }
121
121
 
122
- export function typeStringFromNameAndArgumentType(name, argumentType) {
123
- let typeString;
124
-
125
- typeString = `${name}`;
126
-
127
- if (argumentType !== null) {
128
- const argumentTypeString = argumentType.getString();
129
-
130
- typeString = `${typeString}${argumentTypeString}`;
131
- }
132
-
133
- return typeString;
134
- }
135
-
136
122
  export function procedureDeclarationStringFromProcedure(procedure) {
137
123
  const type = procedure.getType(),
138
124
  label = procedure.getLabel(),
@@ -3,22 +3,7 @@
3
3
  import elements from "../elements";
4
4
  import NominalValue from "../nominalValue";
5
5
 
6
- import { primitiveFromList, primitiveFromBoolean, primitiveFromNominalValue, primitiveFromStringLiteral } from "../utilities/primitive";
7
-
8
- export function valueFromList(list, context) {
9
- const { Value } = elements,
10
- variable = null,
11
- primitive = primitiveFromList(list, context),
12
- string = primitive.getString(),
13
- node = null,
14
- breakPoint = null;
15
-
16
- context = null;
17
-
18
- const value = new Value(context, string, node, breakPoint, variable, primitive);
19
-
20
- return value;
21
- }
6
+ import { primitiveFromBoolean, primitiveFromNominalValue, primitiveFromNominalValues, primitiveFromStringLiteral } from "../utilities/primitive";
22
7
 
23
8
  export function valueFromBoolean(boolean, context) {
24
9
  const { Value } = elements,
@@ -35,25 +20,14 @@ export function valueFromBoolean(boolean, context) {
35
20
  return value;
36
21
  }
37
22
 
38
- export function valueFromPrimitive(primitive) {
23
+ export function valueFromNominalValue(nominalValue) {
39
24
  const { Value } = elements,
40
- context = null,
41
- string = primitive.getString(),
42
- node = null,
43
- breakPoint = null,
44
25
  variable = null,
45
- value = new Value(context, string, node, breakPoint, variable, primitive);
46
-
47
- return value;
48
- }
49
-
50
- export function valueFromNominalValue(nominalValue, context) {
51
- const { Value } = elements,
52
- variable = null,
53
- primitive = primitiveFromNominalValue(nominalValue, context),
26
+ primitive = primitiveFromNominalValue(nominalValue),
54
27
  string = primitive.getString(),
55
28
  breakPoint = null,
56
29
  node = null,
30
+ context = null, ///
57
31
  value = new Value(context, string, node, breakPoint, variable, primitive);
58
32
 
59
33
  return value;
@@ -86,20 +60,32 @@ export function valueFromNodeAndNominalValue(node, nominalValue) {
86
60
 
87
61
  export function valueFromNodesAndNominalValue(nodes, nominalValue) {
88
62
  const context = nominalValue.getContext(),
89
- list = nodes.map((node) => {
63
+ nominalVvalues = nodes.map((node) => {
90
64
  const nominalValue = NominalValue.fromNode(node, context);
91
65
 
92
66
  return nominalValue;
93
67
  }),
94
- value = valueFromList(list, context);
68
+ value = valueFromNominalValues(nominalVvalues);
95
69
 
96
70
  return value;
97
71
  }
98
72
 
99
73
  export default {
100
- valueFromList,
101
74
  valueFromBoolean,
102
- valueFromNominalValue,
103
75
  valueFromStringLiteral,
104
- valueFromPrimitive
76
+ valueFromNodeAndNominalValue,
77
+ valueFromNodesAndNominalValue
105
78
  };
79
+
80
+ function valueFromNominalValues(nominalValues) {
81
+ const { Value } = elements,
82
+ variable = null,
83
+ context = null,
84
+ primitive = primitiveFromNominalValues(nominalValues, context),
85
+ string = primitive.getString(),
86
+ node = null,
87
+ breakPoint = null,
88
+ value = new Value(context, string, node, breakPoint, variable, primitive);
89
+
90
+ return value;
91
+ }
@@ -7,7 +7,7 @@ import { valuesStringFromValuesArray } from "../utilities/string";
7
7
 
8
8
  export function valuesFromNominalValues(nominalValues, context) {
9
9
  const { Values } = elements,
10
- valuesArray = valuesArrayFromNominalValues(nominalValues, context),
10
+ valuesArray = valuesArrayFromNominalValues(nominalValues),
11
11
  valuesString = valuesStringFromValuesArray(valuesArray),
12
12
  string = valuesString, ///
13
13
  array = valuesArray, ///
@@ -18,9 +18,9 @@ export function valuesFromNominalValues(nominalValues, context) {
18
18
  return values;
19
19
  }
20
20
 
21
- function valuesArrayFromNominalValues(nominalValues, context) {
21
+ function valuesArrayFromNominalValues(nominalValues) {
22
22
  const valuesArray = nominalValues.map((nominalValue) => {
23
- const value = valueFromNominalValue(nominalValue, context);
23
+ const value = valueFromNominalValue(nominalValue);
24
24
 
25
25
  return value;
26
26
  });