occam-furtle 3.0.364 → 3.0.366
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.
- package/lib/context/file/furtle.js +13 -8
- package/lib/utilities/json.js +42 -0
- package/package.json +5 -5
- package/src/context/file/furtle.js +16 -9
- package/src/element/procedure.js +9 -0
- package/src/utilities/json.js +29 -0
- package/lib/element/procedure.js +0 -79
|
@@ -12,6 +12,7 @@ const _occamlanguages = require("occam-languages");
|
|
|
12
12
|
const _lexer = /*#__PURE__*/ _interop_require_default(require("../../furtle/lexer"));
|
|
13
13
|
const _parser = /*#__PURE__*/ _interop_require_default(require("../../furtle/parser"));
|
|
14
14
|
const _verify = require("../../process/verify");
|
|
15
|
+
const _json = require("../../utilities/json");
|
|
15
16
|
function _interop_require_default(obj) {
|
|
16
17
|
return obj && obj.__esModule ? obj : {
|
|
17
18
|
default: obj
|
|
@@ -121,20 +122,24 @@ class FurtleFileContext extends _occamlanguages.FileContext {
|
|
|
121
122
|
complete() {
|
|
122
123
|
///
|
|
123
124
|
}
|
|
124
|
-
initialise(
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
125
|
+
initialise() {
|
|
126
|
+
const json = this.getJSON();
|
|
127
|
+
if (json === null) {
|
|
128
|
+
super.initialise();
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
const fileContext = this; ///
|
|
132
|
+
this.procedures = (0, _json.proceduresFromJSON)(json, fileContext);
|
|
129
133
|
}
|
|
130
134
|
async verifyFile() {
|
|
131
135
|
const node = this.getNode(), context = this, fileNode = node, fileVerifies = (0, _verify.verifyFile)(fileNode, context);
|
|
132
136
|
return fileVerifies;
|
|
133
137
|
}
|
|
134
138
|
toJSON() {
|
|
135
|
-
const
|
|
139
|
+
const proceduresJSON = (0, _json.proceduresToProceduresJSON)(this.procedures), fileContent = this.getFileContent(), filePath = this.getFilePath(), procedures = proceduresJSON, json = {
|
|
140
|
+
fileContent,
|
|
136
141
|
filePath,
|
|
137
|
-
|
|
142
|
+
procedures
|
|
138
143
|
};
|
|
139
144
|
return json;
|
|
140
145
|
}
|
|
@@ -148,4 +153,4 @@ class FurtleFileContext extends _occamlanguages.FileContext {
|
|
|
148
153
|
}
|
|
149
154
|
}
|
|
150
155
|
|
|
151
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250ZXh0L2ZpbGUvZnVydGxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBGaWxlQ29udGV4dCwgZnVydGxlVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgRnVydGxlTGV4ZXIgZnJvbSBcIi4uLy4uL2Z1cnRsZS9sZXhlclwiO1xuaW1wb3J0IEZ1cnRsZVBhcnNlciBmcm9tIFwiLi4vLi4vZnVydGxlL3BhcnNlclwiO1xuXG5pbXBvcnQgeyB2ZXJpZnlGaWxlIH0gZnJvbSBcIi4uLy4uL3Byb2Nlc3MvdmVyaWZ5XCI7XG5cbmNvbnN0IHsgZnVydGxlTGV4ZXJGcm9tTm90aGluZywgZnVydGxlUGFyc2VyRnJvbU5vdGhpbmcgfSA9IGZ1cnRsZVV0aWxpdGllcztcblxuY29uc3QgZnVydGxlTGV4ZXIgPSBmdXJ0bGVMZXhlckZyb21Ob3RoaW5nKEZ1cnRsZUxleGVyKSxcbiAgICAgIGZ1cnRsZVBhcnNlciA9IGZ1cnRsZVBhcnNlckZyb21Ob3RoaW5nKEZ1cnRsZVBhcnNlcik7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEZ1cnRsZUZpbGVDb250ZXh0IGV4dGVuZHMgRmlsZUNvbnRleHQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBmaWxlQ29udGVudCwgZmlsZVBhdGgsIHRva2Vucywgbm9kZSwganNvbiwgbGV4ZXIsIHBhcnNlciwgcHJvY2VkdXJlcykge1xuICAgIHN1cGVyKGNvbnRleHQsIGZpbGVDb250ZW50LCBmaWxlUGF0aCwgdG9rZW5zLCBub2RlLCBqc29uKTtcblxuICAgIHRoaXMubGV4ZXIgPSBsZXhlcjtcbiAgICB0aGlzLnBhcnNlciA9IHBhcnNlcjtcbiAgICB0aGlzLnByb2NlZHVyZXMgPSBwcm9jZWR1cmVzO1xuICB9XG5cbiAgZ2V0TGV4ZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMubGV4ZXI7XG4gIH1cblxuICBnZXRQYXJzZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyc2VyO1xuICB9XG5cbiAgZ2V0TGFiZWxzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGxhYmVscyA9IFtdO1xuXG4gICAgcmV0dXJuIGxhYmVscztcbiAgfVxuXG4gIGdldFR5cGVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHR5cGVzID0gW107XG5cbiAgICByZXR1cm4gdHlwZXM7XG4gIH1cblxuICBnZXRSdWxlcyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBydWxlcyA9IFtdXG5cbiAgICByZXR1cm4gcnVsZXM7XG4gIH1cblxuICBnZXRBeGlvbXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgYXhpb21zID0gW107XG5cbiAgICByZXR1cm4gYXhpb21zO1xuICB9XG5cbiAgZ2V0TGVtbWFzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGxlbW1hcyA9IFtdO1xuXG4gICAgcmV0dXJuIGxlbW1hcztcbiAgfVxuXG4gIGdldFRoZW9yZW1zKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHRoZW9yZW1zID0gW107XG5cbiAgICByZXR1cm4gdGhlb3JlbXM7XG4gIH1cblxuICBnZXRNZXRhTGVtbWFzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IG1ldGFMZW1tYXMgPSBbXTtcblxuICAgIHJldHVybiBtZXRhTGVtbWFzO1xuICB9XG5cbiAgZ2V0R2VuZXJhdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBnZW5lcmF0b3JzID0gW107XG5cbiAgICByZXR1cm4gZ2VuZXJhdG9ycztcbiAgfVxuXG4gIGdldENvbmplY3R1cmVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGNvbmplY3R1cmVzID0gW107XG5cbiAgICByZXR1cm4gY29uamVjdHVyZXM7XG4gIH1cblxuICBnZXRDb21iaW5hdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBjb21iaW5hdG9ycyA9IFtdO1xuXG4gICAgcmV0dXJuIGNvbWJpbmF0b3JzO1xuICB9XG5cbiAgZ2V0VHlwZVByZWZpeGVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHR5cGVQcmVmaXhlcyA9IFtdO1xuXG4gICAgcmV0dXJuIHR5cGVQcmVmaXhlcztcbiAgfVxuXG4gIGdldENvbnN0cnVjdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBjb25zdHJ1Y3RvcnMgPSBbXTtcblxuICAgIHJldHVybiBjb25zdHJ1Y3RvcnM7XG4gIH1cblxuICBnZXRNZXRhdGhlb3JlbXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgbWV0YXRoZW9yZW1zID0gW107XG5cbiAgICByZXR1cm4gbWV0YXRoZW9yZW1zO1xuICB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlcyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBtZXRhdmFyaWFibGVzID0gW107XG5cbiAgICByZXR1cm4gbWV0YXZhcmlhYmxlcztcbiAgfVxuXG4gIGdldFByb2NlZHVyZXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgcHJvY2VkdXJlcyA9IGluY2x1ZGVSZWxlYXNlID9cbiAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRleHQuZ2V0UHJvY2VkdXJlcygpIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucHJvY2VkdXJlcztcblxuICAgIHJldHVybiBwcm9jZWR1cmVzO1xuICB9XG5cbiAgZ2V0VmFyaWFibGVzKG5lc3RlZCA9IHRydWUpIHtcbiAgICBjb25zdCB2YXJpYWJsZXMgPSBbXTtcblxuICAgIHJldHVybiB2YXJpYWJsZXM7XG4gIH1cblxuICBhZGRQcm9jZWR1cmUocHJvY2VkdXJlKSB7XG4gICAgY29uc3QgcHJvY2VkdXJlU3RyaW5nID0gcHJvY2VkdXJlLmdldFN0cmluZygpO1xuXG4gICAgdGhpcy5wcm9jZWR1cmVzLnB1c2gocHJvY2VkdXJlKTtcblxuICAgIGNvbnN0IGZpbGVQYXRoID0gdGhpcy5nZXRGaWxlUGF0aCgpO1xuXG4gICAgdGhpcy5kZWJ1ZyhgQWRkZWQgdGhlICcke3Byb2NlZHVyZVN0cmluZ30nIGZ1bmN0aW9uIHRvIHRoZSAnJHtmaWxlUGF0aH0nIGZpbGUgY29udGV4dC5gKTtcbiAgfVxuXG4gIGZpbmRQcm9jZWR1cmVCeVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSkge1xuICAgIGNvbnN0IHByb2NlZHVyZXMgPSB0aGlzLmdldFByb2NlZHVyZXMoKSxcbiAgICAgICAgICBwcm9jZWR1cmUgPSBwcm9jZWR1cmVzLmZpbmQoKHByb2NlZHVyZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcHJvY2VkdXJlQ29tcGFyZXNUb1Byb2NlZHVyZU5hbWUgPSBwcm9jZWR1cmUuY29tcGFyZVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSk7XG5cbiAgICAgICAgICAgIGlmIChwcm9jZWR1cmVDb21wYXJlc1RvUHJvY2VkdXJlTmFtZSkge1xuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIHByb2NlZHVyZTtcbiAgfVxuXG4gIGlzUHJvY2VkdXJlUHJlc2VudEJ5UHJvY2VkdXJlTmFtZShwcm9jZWR1cmVOYW1lKSB7XG4gICAgY29uc3QgcHJvY2VkdXJlID0gdGhpcy5maW5kUHJvY2VkdXJlQnlQcm9jZWR1cmVOYW1lKHByb2NlZHVyZU5hbWUpLFxuICAgICAgICAgIHByb2NlZHVyZVByZXNlbnQgPSAocHJvY2VkdXJlICE9PSBudWxsKTtcblxuICAgIHJldHVybiBwcm9jZWR1cmVQcmVzZW50O1xuICB9XG5cbiAgY2xlYXIoKSB7XG4gICAgdGhpcy5wcm9jZWR1cmVzID0gW107XG4gIH1cblxuICBjb21wbGV0ZSgpIHtcbiAgICAvLy9cbiAgfVxuXG4gIGluaXRpYWxpc2UoanNvbikge1xuICAgIHN1cGVyLmluaXRpYWxpc2UoKTtcblxuICAgIHRoaXMucHJvY2VkdXJlcyA9IFtdO1xuXG4gICAgY29uc3Qgbm9kZSA9IHRoaXMuZ2V0Tm9kZSgpLFxuICAgICAgICAgIGNvbnRleHQgPSB0aGlzLCAvLy9cbiAgICAgICAgICBmaWxlTm9kZSA9IG5vZGU7ICAvLy9cblxuICAgIHZlcmlmeUZpbGUoZmlsZU5vZGUsIGNvbnRleHQpO1xuICB9XG5cbiAgYXN5bmMgdmVyaWZ5RmlsZSgpIHtcbiAgICBjb25zdCBub2RlID0gdGhpcy5nZXROb2RlKCksXG4gICAgICAgICAgY29udGV4dCA9IHRoaXMsIC8vL1xuICAgICAgICAgIGZpbGVOb2RlID0gbm9kZSwgIC8vL1xuICAgICAgICAgIGZpbGVWZXJpZmllcyA9IHZlcmlmeUZpbGUoZmlsZU5vZGUsIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIGZpbGVWZXJpZmllcztcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBjb25zdCBmaWxlUGF0aCA9IHRoaXMuZ2V0RmlsZVBhdGgoKSxcbiAgICAgICAgICBmaWxlQ29udGVudCA9IHRoaXMuZ2V0RmlsZUNvbnRlbnQoKSxcbiAgICAgICAgICBqc29uID0ge1xuICAgICAgICAgICAgZmlsZVBhdGgsXG4gICAgICAgICAgICBmaWxlQ29udGVudFxuICAgICAgICAgIH07XG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tRmlsZShmaWxlLCBjb250ZXh0KSB7XG4gICAgY29uc3QgbGV4ZXIgPSBmdXJ0bGVMZXhlciwgIC8vL1xuICAgICAgICAgIHBhcnNlciA9IGZ1cnRsZVBhcnNlciwgIC8vL1xuICAgICAgICAgIHByb2NlZHVyZXMgPSBbXSxcbiAgICAgICAgICBmdXJ0bGVGaWxlQ29udGV4dCA9IEZpbGVDb250ZXh0LmZyb21GaWxlKEZ1cnRsZUZpbGVDb250ZXh0LCBmaWxlLCBsZXhlciwgcGFyc2VyLCBwcm9jZWR1cmVzLCBjb250ZXh0KTtcblxuICAgIHJldHVybiBmdXJ0bGVGaWxlQ29udGV4dDtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uLCBjb250ZXh0KSB7XG4gICAgY29uc3QgbGV4ZXIgPSBmdXJ0bGVMZXhlciwgIC8vL1xuICAgICAgICAgIHBhcnNlciA9IGZ1cnRsZVBhcnNlciwgIC8vL1xuICAgICAgICAgIHByb2NlZHVyZXMgPSBudWxsLFxuICAgICAgICAgIGZ1cnRsZUZpbGVDb250ZXh0ID0gRmlsZUNvbnRleHQuZnJvbUpTT04oRnVydGxlRmlsZUNvbnRleHQsIGpzb24sIGxleGVyLCBwYXJzZXIsIHByb2NlZHVyZXMsIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIGZ1cnRsZUZpbGVDb250ZXh0O1xuICB9XG59XG4iXSwibmFtZXMiOlsiRnVydGxlRmlsZUNvbnRleHQiLCJmdXJ0bGVMZXhlckZyb21Ob3RoaW5nIiwiZnVydGxlUGFyc2VyRnJvbU5vdGhpbmciLCJmdXJ0bGVVdGlsaXRpZXMiLCJmdXJ0bGVMZXhlciIsIkZ1cnRsZUxleGVyIiwiZnVydGxlUGFyc2VyIiwiRnVydGxlUGFyc2VyIiwiRmlsZUNvbnRleHQiLCJjb250ZXh0IiwiZmlsZUNvbnRlbnQiLCJmaWxlUGF0aCIsInRva2VucyIsIm5vZGUiLCJqc29uIiwibGV4ZXIiLCJwYXJzZXIiLCJwcm9jZWR1cmVzIiwiZ2V0TGV4ZXIiLCJnZXRQYXJzZXIiLCJnZXRMYWJlbHMiLCJpbmNsdWRlUmVsZWFzZSIsImxhYmVscyIsImdldFR5cGVzIiwidHlwZXMiLCJnZXRSdWxlcyIsInJ1bGVzIiwiZ2V0QXhpb21zIiwiYXhpb21zIiwiZ2V0TGVtbWFzIiwibGVtbWFzIiwiZ2V0VGhlb3JlbXMiLCJ0aGVvcmVtcyIsImdldE1ldGFMZW1tYXMiLCJtZXRhTGVtbWFzIiwiZ2V0R2VuZXJhdG9ycyIsImdlbmVyYXRvcnMiLCJnZXRDb25qZWN0dXJlcyIsImNvbmplY3R1cmVzIiwiZ2V0Q29tYmluYXRvcnMiLCJjb21iaW5hdG9ycyIsImdldFR5cGVQcmVmaXhlcyIsInR5cGVQcmVmaXhlcyIsImdldENvbnN0cnVjdG9ycyIsImNvbnN0cnVjdG9ycyIsImdldE1ldGF0aGVvcmVtcyIsIm1ldGF0aGVvcmVtcyIsImdldE1ldGF2YXJpYWJsZXMiLCJtZXRhdmFyaWFibGVzIiwiZ2V0UHJvY2VkdXJlcyIsImdldFZhcmlhYmxlcyIsIm5lc3RlZCIsInZhcmlhYmxlcyIsImFkZFByb2NlZHVyZSIsInByb2NlZHVyZSIsInByb2NlZHVyZVN0cmluZyIsImdldFN0cmluZyIsInB1c2giLCJnZXRGaWxlUGF0aCIsImRlYnVnIiwiZmluZFByb2NlZHVyZUJ5UHJvY2VkdXJlTmFtZSIsInByb2NlZHVyZU5hbWUiLCJmaW5kIiwicHJvY2VkdXJlQ29tcGFyZXNUb1Byb2NlZHVyZU5hbWUiLCJjb21wYXJlUHJvY2VkdXJlTmFtZSIsImlzUHJvY2VkdXJlUHJlc2VudEJ5UHJvY2VkdXJlTmFtZSIsInByb2NlZHVyZVByZXNlbnQiLCJjbGVhciIsImNvbXBsZXRlIiwiaW5pdGlhbGlzZSIsImdldE5vZGUiLCJmaWxlTm9kZSIsInZlcmlmeUZpbGUiLCJmaWxlVmVyaWZpZXMiLCJ0b0pTT04iLCJnZXRGaWxlQ29udGVudCIsImZyb21GaWxlIiwiZmlsZSIsImZ1cnRsZUZpbGVDb250ZXh0IiwiZnJvbUpTT04iXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWNBOzs7ZUFBcUJBOzs7Z0NBWndCOzhEQUVyQjsrREFDQzt3QkFFRTs7Ozs7O0FBRTNCLE1BQU0sRUFBRUMsc0JBQXNCLEVBQUVDLHVCQUF1QixFQUFFLEdBQUdDLCtCQUFlO0FBRTNFLE1BQU1DLGNBQWNILHVCQUF1QkksY0FBVyxHQUNoREMsZUFBZUosd0JBQXdCSyxlQUFZO0FBRTFDLE1BQU1QLDBCQUEwQlEsMkJBQVc7SUFDeEQsWUFBWUMsT0FBTyxFQUFFQyxXQUFXLEVBQUVDLFFBQVEsRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLElBQUksRUFBRUMsS0FBSyxFQUFFQyxNQUFNLEVBQUVDLFVBQVUsQ0FBRTtRQUN6RixLQUFLLENBQUNSLFNBQVNDLGFBQWFDLFVBQVVDLFFBQVFDLE1BQU1DO1FBRXBELElBQUksQ0FBQ0MsS0FBSyxHQUFHQTtRQUNiLElBQUksQ0FBQ0MsTUFBTSxHQUFHQTtRQUNkLElBQUksQ0FBQ0MsVUFBVSxHQUFHQTtJQUNwQjtJQUVBQyxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUNILEtBQUs7SUFDbkI7SUFFQUksWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDSCxNQUFNO0lBQ3BCO0lBRUFJLFVBQVVDLGlCQUFpQixJQUFJLEVBQUU7UUFDL0IsTUFBTUMsU0FBUyxFQUFFO1FBRWpCLE9BQU9BO0lBQ1Q7SUFFQUMsU0FBU0YsaUJBQWlCLElBQUksRUFBRTtRQUM5QixNQUFNRyxRQUFRLEVBQUU7UUFFaEIsT0FBT0E7SUFDVDtJQUVBQyxTQUFTSixpQkFBaUIsSUFBSSxFQUFFO1FBQzlCLE1BQU1LLFFBQVEsRUFBRTtRQUVoQixPQUFPQTtJQUNUO0lBRUFDLFVBQVVOLGlCQUFpQixJQUFJLEVBQUU7UUFDL0IsTUFBTU8sU0FBUyxFQUFFO1FBRWpCLE9BQU9BO0lBQ1Q7SUFFQUMsVUFBVVIsaUJBQWlCLElBQUksRUFBRTtRQUMvQixNQUFNUyxTQUFTLEVBQUU7UUFFakIsT0FBT0E7SUFDVDtJQUVBQyxZQUFZVixpQkFBaUIsSUFBSSxFQUFFO1FBQ2pDLE1BQU1XLFdBQVcsRUFBRTtRQUVuQixPQUFPQTtJQUNUO0lBRUFDLGNBQWNaLGlCQUFpQixJQUFJLEVBQUU7UUFDbkMsTUFBTWEsYUFBYSxFQUFFO1FBRXJCLE9BQU9BO0lBQ1Q7SUFFQUMsY0FBY2QsaUJBQWlCLElBQUksRUFBRTtRQUNuQyxNQUFNZSxhQUFhLEVBQUU7UUFFckIsT0FBT0E7SUFDVDtJQUVBQyxlQUFlaEIsaUJBQWlCLElBQUksRUFBRTtRQUNwQyxNQUFNaUIsY0FBYyxFQUFFO1FBRXRCLE9BQU9BO0lBQ1Q7SUFFQUMsZUFBZWxCLGlCQUFpQixJQUFJLEVBQUU7UUFDcEMsTUFBTW1CLGNBQWMsRUFBRTtRQUV0QixPQUFPQTtJQUNUO0lBRUFDLGdCQUFnQnBCLGlCQUFpQixJQUFJLEVBQUU7UUFDckMsTUFBTXFCLGVBQWUsRUFBRTtRQUV2QixPQUFPQTtJQUNUO0lBRUFDLGdCQUFnQnRCLGlCQUFpQixJQUFJLEVBQUU7UUFDckMsTUFBTXVCLGVBQWUsRUFBRTtRQUV2QixPQUFPQTtJQUNUO0lBRUFDLGdCQUFnQnhCLGlCQUFpQixJQUFJLEVBQUU7UUFDckMsTUFBTXlCLGVBQWUsRUFBRTtRQUV2QixPQUFPQTtJQUNUO0lBRUFDLGlCQUFpQjFCLGlCQUFpQixJQUFJLEVBQUU7UUFDdEMsTUFBTTJCLGdCQUFnQixFQUFFO1FBRXhCLE9BQU9BO0lBQ1Q7SUFFQUMsY0FBYzVCLGlCQUFpQixJQUFJLEVBQUU7UUFDbkMsTUFBTUosYUFBYUksaUJBQ0UsSUFBSSxDQUFDWixPQUFPLENBQUN3QyxhQUFhLEtBQ3hCLElBQUksQ0FBQ2hDLFVBQVU7UUFFdEMsT0FBT0E7SUFDVDtJQUVBaUMsYUFBYUMsU0FBUyxJQUFJLEVBQUU7UUFDMUIsTUFBTUMsWUFBWSxFQUFFO1FBRXBCLE9BQU9BO0lBQ1Q7SUFFQUMsYUFBYUMsU0FBUyxFQUFFO1FBQ3RCLE1BQU1DLGtCQUFrQkQsVUFBVUUsU0FBUztRQUUzQyxJQUFJLENBQUN2QyxVQUFVLENBQUN3QyxJQUFJLENBQUNIO1FBRXJCLE1BQU0zQyxXQUFXLElBQUksQ0FBQytDLFdBQVc7UUFFakMsSUFBSSxDQUFDQyxLQUFLLENBQUMsQ0FBQyxXQUFXLEVBQUVKLGdCQUFnQixtQkFBbUIsRUFBRTVDLFNBQVMsZUFBZSxDQUFDO0lBQ3pGO0lBRUFpRCw2QkFBNkJDLGFBQWEsRUFBRTtRQUMxQyxNQUFNNUMsYUFBYSxJQUFJLENBQUNnQyxhQUFhLElBQy9CSyxZQUFZckMsV0FBVzZDLElBQUksQ0FBQyxDQUFDUjtZQUMzQixNQUFNUyxtQ0FBbUNULFVBQVVVLG9CQUFvQixDQUFDSDtZQUV4RSxJQUFJRSxrQ0FBa0M7Z0JBQ3BDLE9BQU87WUFDVDtRQUNGLE1BQU07UUFFWixPQUFPVDtJQUNUO0lBRUFXLGtDQUFrQ0osYUFBYSxFQUFFO1FBQy9DLE1BQU1QLFlBQVksSUFBSSxDQUFDTSw0QkFBNEIsQ0FBQ0MsZ0JBQzlDSyxtQkFBb0JaLGNBQWM7UUFFeEMsT0FBT1k7SUFDVDtJQUVBQyxRQUFRO1FBQ04sSUFBSSxDQUFDbEQsVUFBVSxHQUFHLEVBQUU7SUFDdEI7SUFFQW1ELFdBQVc7SUFDVCxHQUFHO0lBQ0w7SUFFQUMsV0FBV3ZELElBQUksRUFBRTtRQUNmLEtBQUssQ0FBQ3VEO1FBRU4sSUFBSSxDQUFDcEQsVUFBVSxHQUFHLEVBQUU7UUFFcEIsTUFBTUosT0FBTyxJQUFJLENBQUN5RCxPQUFPLElBQ25CN0QsVUFBVSxJQUFJLEVBQ2Q4RCxXQUFXMUQsTUFBTyxHQUFHO1FBRTNCMkQsSUFBQUEsa0JBQVUsRUFBQ0QsVUFBVTlEO0lBQ3ZCO0lBRUEsTUFBTStELGFBQWE7UUFDakIsTUFBTTNELE9BQU8sSUFBSSxDQUFDeUQsT0FBTyxJQUNuQjdELFVBQVUsSUFBSSxFQUNkOEQsV0FBVzFELE1BQ1g0RCxlQUFlRCxJQUFBQSxrQkFBVSxFQUFDRCxVQUFVOUQ7UUFFMUMsT0FBT2dFO0lBQ1Q7SUFFQUMsU0FBUztRQUNQLE1BQU0vRCxXQUFXLElBQUksQ0FBQytDLFdBQVcsSUFDM0JoRCxjQUFjLElBQUksQ0FBQ2lFLGNBQWMsSUFDakM3RCxPQUFPO1lBQ0xIO1lBQ0FEO1FBQ0Y7UUFFTixPQUFPSTtJQUNUO0lBRUEsT0FBTzhELFNBQVNDLElBQUksRUFBRXBFLE9BQU8sRUFBRTtRQUM3QixNQUFNTSxRQUFRWCxhQUNSWSxTQUFTVixjQUNUVyxhQUFhLEVBQUUsRUFDZjZELG9CQUFvQnRFLDJCQUFXLENBQUNvRSxRQUFRLENBQUM1RSxtQkFBbUI2RSxNQUFNOUQsT0FBT0MsUUFBUUMsWUFBWVI7UUFFbkcsT0FBT3FFO0lBQ1Q7SUFFQSxPQUFPQyxTQUFTakUsSUFBSSxFQUFFTCxPQUFPLEVBQUU7UUFDN0IsTUFBTU0sUUFBUVgsYUFDUlksU0FBU1YsY0FDVFcsYUFBYSxNQUNiNkQsb0JBQW9CdEUsMkJBQVcsQ0FBQ3VFLFFBQVEsQ0FBQy9FLG1CQUFtQmMsTUFBTUMsT0FBT0MsUUFBUUMsWUFBWVI7UUFFbkcsT0FBT3FFO0lBQ1Q7QUFDRiJ9
|
|
156
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250ZXh0L2ZpbGUvZnVydGxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBGaWxlQ29udGV4dCwgZnVydGxlVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgRnVydGxlTGV4ZXIgZnJvbSBcIi4uLy4uL2Z1cnRsZS9sZXhlclwiO1xuaW1wb3J0IEZ1cnRsZVBhcnNlciBmcm9tIFwiLi4vLi4vZnVydGxlL3BhcnNlclwiO1xuXG5pbXBvcnQgeyB2ZXJpZnlGaWxlIH0gZnJvbSBcIi4uLy4uL3Byb2Nlc3MvdmVyaWZ5XCI7XG5pbXBvcnQgeyBwcm9jZWR1cmVzRnJvbUpTT04sIHByb2NlZHVyZXNUb1Byb2NlZHVyZXNKU09OIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9qc29uXCI7XG5cbmNvbnN0IHsgZnVydGxlTGV4ZXJGcm9tTm90aGluZywgZnVydGxlUGFyc2VyRnJvbU5vdGhpbmcgfSA9IGZ1cnRsZVV0aWxpdGllcztcblxuY29uc3QgZnVydGxlTGV4ZXIgPSBmdXJ0bGVMZXhlckZyb21Ob3RoaW5nKEZ1cnRsZUxleGVyKSxcbiAgICAgIGZ1cnRsZVBhcnNlciA9IGZ1cnRsZVBhcnNlckZyb21Ob3RoaW5nKEZ1cnRsZVBhcnNlcik7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEZ1cnRsZUZpbGVDb250ZXh0IGV4dGVuZHMgRmlsZUNvbnRleHQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBmaWxlQ29udGVudCwgZmlsZVBhdGgsIHRva2Vucywgbm9kZSwganNvbiwgbGV4ZXIsIHBhcnNlciwgcHJvY2VkdXJlcykge1xuICAgIHN1cGVyKGNvbnRleHQsIGZpbGVDb250ZW50LCBmaWxlUGF0aCwgdG9rZW5zLCBub2RlLCBqc29uKTtcblxuICAgIHRoaXMubGV4ZXIgPSBsZXhlcjtcbiAgICB0aGlzLnBhcnNlciA9IHBhcnNlcjtcbiAgICB0aGlzLnByb2NlZHVyZXMgPSBwcm9jZWR1cmVzO1xuICB9XG5cbiAgZ2V0TGV4ZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMubGV4ZXI7XG4gIH1cblxuICBnZXRQYXJzZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyc2VyO1xuICB9XG5cbiAgZ2V0TGFiZWxzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGxhYmVscyA9IFtdO1xuXG4gICAgcmV0dXJuIGxhYmVscztcbiAgfVxuXG4gIGdldFR5cGVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHR5cGVzID0gW107XG5cbiAgICByZXR1cm4gdHlwZXM7XG4gIH1cblxuICBnZXRSdWxlcyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBydWxlcyA9IFtdXG5cbiAgICByZXR1cm4gcnVsZXM7XG4gIH1cblxuICBnZXRBeGlvbXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgYXhpb21zID0gW107XG5cbiAgICByZXR1cm4gYXhpb21zO1xuICB9XG5cbiAgZ2V0TGVtbWFzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGxlbW1hcyA9IFtdO1xuXG4gICAgcmV0dXJuIGxlbW1hcztcbiAgfVxuXG4gIGdldFRoZW9yZW1zKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHRoZW9yZW1zID0gW107XG5cbiAgICByZXR1cm4gdGhlb3JlbXM7XG4gIH1cblxuICBnZXRNZXRhTGVtbWFzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IG1ldGFMZW1tYXMgPSBbXTtcblxuICAgIHJldHVybiBtZXRhTGVtbWFzO1xuICB9XG5cbiAgZ2V0R2VuZXJhdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBnZW5lcmF0b3JzID0gW107XG5cbiAgICByZXR1cm4gZ2VuZXJhdG9ycztcbiAgfVxuXG4gIGdldENvbmplY3R1cmVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGNvbmplY3R1cmVzID0gW107XG5cbiAgICByZXR1cm4gY29uamVjdHVyZXM7XG4gIH1cblxuICBnZXRDb21iaW5hdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBjb21iaW5hdG9ycyA9IFtdO1xuXG4gICAgcmV0dXJuIGNvbWJpbmF0b3JzO1xuICB9XG5cbiAgZ2V0VHlwZVByZWZpeGVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHR5cGVQcmVmaXhlcyA9IFtdO1xuXG4gICAgcmV0dXJuIHR5cGVQcmVmaXhlcztcbiAgfVxuXG4gIGdldENvbnN0cnVjdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBjb25zdHJ1Y3RvcnMgPSBbXTtcblxuICAgIHJldHVybiBjb25zdHJ1Y3RvcnM7XG4gIH1cblxuICBnZXRNZXRhdGhlb3JlbXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgbWV0YXRoZW9yZW1zID0gW107XG5cbiAgICByZXR1cm4gbWV0YXRoZW9yZW1zO1xuICB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlcyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBtZXRhdmFyaWFibGVzID0gW107XG5cbiAgICByZXR1cm4gbWV0YXZhcmlhYmxlcztcbiAgfVxuXG4gIGdldFByb2NlZHVyZXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgcHJvY2VkdXJlcyA9IGluY2x1ZGVSZWxlYXNlID9cbiAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRleHQuZ2V0UHJvY2VkdXJlcygpIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucHJvY2VkdXJlcztcblxuICAgIHJldHVybiBwcm9jZWR1cmVzO1xuICB9XG5cbiAgZ2V0VmFyaWFibGVzKG5lc3RlZCA9IHRydWUpIHtcbiAgICBjb25zdCB2YXJpYWJsZXMgPSBbXTtcblxuICAgIHJldHVybiB2YXJpYWJsZXM7XG4gIH1cblxuICBhZGRQcm9jZWR1cmUocHJvY2VkdXJlKSB7XG4gICAgY29uc3QgcHJvY2VkdXJlU3RyaW5nID0gcHJvY2VkdXJlLmdldFN0cmluZygpO1xuXG4gICAgdGhpcy5wcm9jZWR1cmVzLnB1c2gocHJvY2VkdXJlKTtcblxuICAgIGNvbnN0IGZpbGVQYXRoID0gdGhpcy5nZXRGaWxlUGF0aCgpO1xuXG4gICAgdGhpcy5kZWJ1ZyhgQWRkZWQgdGhlICcke3Byb2NlZHVyZVN0cmluZ30nIGZ1bmN0aW9uIHRvIHRoZSAnJHtmaWxlUGF0aH0nIGZpbGUgY29udGV4dC5gKTtcbiAgfVxuXG4gIGZpbmRQcm9jZWR1cmVCeVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSkge1xuICAgIGNvbnN0IHByb2NlZHVyZXMgPSB0aGlzLmdldFByb2NlZHVyZXMoKSxcbiAgICAgICAgICBwcm9jZWR1cmUgPSBwcm9jZWR1cmVzLmZpbmQoKHByb2NlZHVyZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcHJvY2VkdXJlQ29tcGFyZXNUb1Byb2NlZHVyZU5hbWUgPSBwcm9jZWR1cmUuY29tcGFyZVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSk7XG5cbiAgICAgICAgICAgIGlmIChwcm9jZWR1cmVDb21wYXJlc1RvUHJvY2VkdXJlTmFtZSkge1xuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIHByb2NlZHVyZTtcbiAgfVxuXG4gIGlzUHJvY2VkdXJlUHJlc2VudEJ5UHJvY2VkdXJlTmFtZShwcm9jZWR1cmVOYW1lKSB7XG4gICAgY29uc3QgcHJvY2VkdXJlID0gdGhpcy5maW5kUHJvY2VkdXJlQnlQcm9jZWR1cmVOYW1lKHByb2NlZHVyZU5hbWUpLFxuICAgICAgICAgIHByb2NlZHVyZVByZXNlbnQgPSAocHJvY2VkdXJlICE9PSBudWxsKTtcblxuICAgIHJldHVybiBwcm9jZWR1cmVQcmVzZW50O1xuICB9XG5cbiAgY2xlYXIoKSB7XG4gICAgdGhpcy5wcm9jZWR1cmVzID0gW107XG4gIH1cblxuICBjb21wbGV0ZSgpIHtcbiAgICAvLy9cbiAgfVxuXG4gIGluaXRpYWxpc2UoKSB7XG4gICAgY29uc3QganNvbiA9IHRoaXMuZ2V0SlNPTigpO1xuXG4gICAgaWYgKGpzb24gPT09IG51bGwpIHtcbiAgICAgIHN1cGVyLmluaXRpYWxpc2UoKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGZpbGVDb250ZXh0ID0gdGhpczsgLy8vXG5cbiAgICB0aGlzLnByb2NlZHVyZXMgPSBwcm9jZWR1cmVzRnJvbUpTT04oanNvbiwgZmlsZUNvbnRleHQpO1xuICB9XG5cbiAgYXN5bmMgdmVyaWZ5RmlsZSgpIHtcbiAgICBjb25zdCBub2RlID0gdGhpcy5nZXROb2RlKCksXG4gICAgICAgICAgY29udGV4dCA9IHRoaXMsIC8vL1xuICAgICAgICAgIGZpbGVOb2RlID0gbm9kZSwgIC8vL1xuICAgICAgICAgIGZpbGVWZXJpZmllcyA9IHZlcmlmeUZpbGUoZmlsZU5vZGUsIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIGZpbGVWZXJpZmllcztcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBjb25zdCBwcm9jZWR1cmVzSlNPTiA9IHByb2NlZHVyZXNUb1Byb2NlZHVyZXNKU09OKHRoaXMucHJvY2VkdXJlcyksXG4gICAgICAgICAgZmlsZUNvbnRlbnQgPSB0aGlzLmdldEZpbGVDb250ZW50KCksXG4gICAgICAgICAgZmlsZVBhdGggPSB0aGlzLmdldEZpbGVQYXRoKCksXG4gICAgICAgICAgcHJvY2VkdXJlcyA9IHByb2NlZHVyZXNKU09OLCAgLy8vXG4gICAgICAgICAganNvbiA9IHtcbiAgICAgICAgICAgIGZpbGVDb250ZW50LFxuICAgICAgICAgICAgZmlsZVBhdGgsXG4gICAgICAgICAgICBwcm9jZWR1cmVzXG4gICAgICAgICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cblxuICBzdGF0aWMgZnJvbUZpbGUoZmlsZSwgY29udGV4dCkge1xuICAgIGNvbnN0IGxleGVyID0gZnVydGxlTGV4ZXIsICAvLy9cbiAgICAgICAgICBwYXJzZXIgPSBmdXJ0bGVQYXJzZXIsICAvLy9cbiAgICAgICAgICBwcm9jZWR1cmVzID0gW10sXG4gICAgICAgICAgZnVydGxlRmlsZUNvbnRleHQgPSBGaWxlQ29udGV4dC5mcm9tRmlsZShGdXJ0bGVGaWxlQ29udGV4dCwgZmlsZSwgbGV4ZXIsIHBhcnNlciwgcHJvY2VkdXJlcywgY29udGV4dCk7XG5cbiAgICByZXR1cm4gZnVydGxlRmlsZUNvbnRleHQ7XG4gIH1cblxuICBzdGF0aWMgZnJvbUpTT04oanNvbiwgY29udGV4dCkge1xuICAgIGNvbnN0IGxleGVyID0gZnVydGxlTGV4ZXIsICAvLy9cbiAgICAgICAgICBwYXJzZXIgPSBmdXJ0bGVQYXJzZXIsICAvLy9cbiAgICAgICAgICBwcm9jZWR1cmVzID0gbnVsbCxcbiAgICAgICAgICBmdXJ0bGVGaWxlQ29udGV4dCA9IEZpbGVDb250ZXh0LmZyb21KU09OKEZ1cnRsZUZpbGVDb250ZXh0LCBqc29uLCBsZXhlciwgcGFyc2VyLCBwcm9jZWR1cmVzLCBjb250ZXh0KTtcblxuICAgIHJldHVybiBmdXJ0bGVGaWxlQ29udGV4dDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIkZ1cnRsZUZpbGVDb250ZXh0IiwiZnVydGxlTGV4ZXJGcm9tTm90aGluZyIsImZ1cnRsZVBhcnNlckZyb21Ob3RoaW5nIiwiZnVydGxlVXRpbGl0aWVzIiwiZnVydGxlTGV4ZXIiLCJGdXJ0bGVMZXhlciIsImZ1cnRsZVBhcnNlciIsIkZ1cnRsZVBhcnNlciIsIkZpbGVDb250ZXh0IiwiY29udGV4dCIsImZpbGVDb250ZW50IiwiZmlsZVBhdGgiLCJ0b2tlbnMiLCJub2RlIiwianNvbiIsImxleGVyIiwicGFyc2VyIiwicHJvY2VkdXJlcyIsImdldExleGVyIiwiZ2V0UGFyc2VyIiwiZ2V0TGFiZWxzIiwiaW5jbHVkZVJlbGVhc2UiLCJsYWJlbHMiLCJnZXRUeXBlcyIsInR5cGVzIiwiZ2V0UnVsZXMiLCJydWxlcyIsImdldEF4aW9tcyIsImF4aW9tcyIsImdldExlbW1hcyIsImxlbW1hcyIsImdldFRoZW9yZW1zIiwidGhlb3JlbXMiLCJnZXRNZXRhTGVtbWFzIiwibWV0YUxlbW1hcyIsImdldEdlbmVyYXRvcnMiLCJnZW5lcmF0b3JzIiwiZ2V0Q29uamVjdHVyZXMiLCJjb25qZWN0dXJlcyIsImdldENvbWJpbmF0b3JzIiwiY29tYmluYXRvcnMiLCJnZXRUeXBlUHJlZml4ZXMiLCJ0eXBlUHJlZml4ZXMiLCJnZXRDb25zdHJ1Y3RvcnMiLCJjb25zdHJ1Y3RvcnMiLCJnZXRNZXRhdGhlb3JlbXMiLCJtZXRhdGhlb3JlbXMiLCJnZXRNZXRhdmFyaWFibGVzIiwibWV0YXZhcmlhYmxlcyIsImdldFByb2NlZHVyZXMiLCJnZXRWYXJpYWJsZXMiLCJuZXN0ZWQiLCJ2YXJpYWJsZXMiLCJhZGRQcm9jZWR1cmUiLCJwcm9jZWR1cmUiLCJwcm9jZWR1cmVTdHJpbmciLCJnZXRTdHJpbmciLCJwdXNoIiwiZ2V0RmlsZVBhdGgiLCJkZWJ1ZyIsImZpbmRQcm9jZWR1cmVCeVByb2NlZHVyZU5hbWUiLCJwcm9jZWR1cmVOYW1lIiwiZmluZCIsInByb2NlZHVyZUNvbXBhcmVzVG9Qcm9jZWR1cmVOYW1lIiwiY29tcGFyZVByb2NlZHVyZU5hbWUiLCJpc1Byb2NlZHVyZVByZXNlbnRCeVByb2NlZHVyZU5hbWUiLCJwcm9jZWR1cmVQcmVzZW50IiwiY2xlYXIiLCJjb21wbGV0ZSIsImluaXRpYWxpc2UiLCJnZXRKU09OIiwiZmlsZUNvbnRleHQiLCJwcm9jZWR1cmVzRnJvbUpTT04iLCJ2ZXJpZnlGaWxlIiwiZ2V0Tm9kZSIsImZpbGVOb2RlIiwiZmlsZVZlcmlmaWVzIiwidG9KU09OIiwicHJvY2VkdXJlc0pTT04iLCJwcm9jZWR1cmVzVG9Qcm9jZWR1cmVzSlNPTiIsImdldEZpbGVDb250ZW50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
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: Object.getOwnPropertyDescriptor(all, name).get
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
get proceduresFromJSON () {
|
|
13
|
+
return proceduresFromJSON;
|
|
14
|
+
},
|
|
15
|
+
get proceduresToProceduresJSON () {
|
|
16
|
+
return proceduresToProceduresJSON;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
const _elements = /*#__PURE__*/ _interop_require_default(require("../elements"));
|
|
20
|
+
function _interop_require_default(obj) {
|
|
21
|
+
return obj && obj.__esModule ? obj : {
|
|
22
|
+
default: obj
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
function proceduresFromJSON(json, context) {
|
|
26
|
+
let { procedures } = json;
|
|
27
|
+
const { Procedure } = _elements.default, proceduresJSON = procedures; ///
|
|
28
|
+
procedures = proceduresJSON.map((procedureJSON)=>{
|
|
29
|
+
const json = procedureJSON, procedure = Procedure.fromJSON(json, context);
|
|
30
|
+
return procedure;
|
|
31
|
+
});
|
|
32
|
+
return procedures;
|
|
33
|
+
}
|
|
34
|
+
function proceduresToProceduresJSON(procedures) {
|
|
35
|
+
const proceduresJSON = procedures.map((procedure)=>{
|
|
36
|
+
const procedureJSON = procedure.toJSON();
|
|
37
|
+
return procedureJSON;
|
|
38
|
+
});
|
|
39
|
+
return proceduresJSON;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvanNvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGVsZW1lbnRzIGZyb20gXCIuLi9lbGVtZW50c1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvY2VkdXJlc0Zyb21KU09OKGpzb24sIGNvbnRleHQpIHtcbiAgbGV0IHsgcHJvY2VkdXJlcyB9ID0ganNvbjtcblxuICBjb25zdCB7IFByb2NlZHVyZSB9ID0gZWxlbWVudHMsXG4gICAgICAgIHByb2NlZHVyZXNKU09OID0gcHJvY2VkdXJlczsgLy8vXG5cbiAgcHJvY2VkdXJlcyA9IHByb2NlZHVyZXNKU09OLm1hcCgocHJvY2VkdXJlSlNPTikgPT4ge1xuICAgIGNvbnN0IGpzb24gPSBwcm9jZWR1cmVKU09OLCAgLy8vXG4gICAgICAgICAgcHJvY2VkdXJlID0gUHJvY2VkdXJlLmZyb21KU09OKGpzb24sIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIHByb2NlZHVyZTtcbiAgfSk7XG5cbiAgcmV0dXJuIHByb2NlZHVyZXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm9jZWR1cmVzVG9Qcm9jZWR1cmVzSlNPTihwcm9jZWR1cmVzKSB7XG4gIGNvbnN0IHByb2NlZHVyZXNKU09OID0gcHJvY2VkdXJlcy5tYXAoKHByb2NlZHVyZSkgPT4ge1xuICAgIGNvbnN0IHByb2NlZHVyZUpTT04gPSBwcm9jZWR1cmUudG9KU09OKCk7XG5cbiAgICByZXR1cm4gcHJvY2VkdXJlSlNPTjtcbiAgfSk7XG5cbiAgcmV0dXJuIHByb2NlZHVyZXNKU09OO1xufVxuIl0sIm5hbWVzIjpbInByb2NlZHVyZXNGcm9tSlNPTiIsInByb2NlZHVyZXNUb1Byb2NlZHVyZXNKU09OIiwianNvbiIsImNvbnRleHQiLCJwcm9jZWR1cmVzIiwiUHJvY2VkdXJlIiwiZWxlbWVudHMiLCJwcm9jZWR1cmVzSlNPTiIsIm1hcCIsInByb2NlZHVyZUpTT04iLCJwcm9jZWR1cmUiLCJmcm9tSlNPTiIsInRvSlNPTiJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O1FBSWdCQTtlQUFBQTs7UUFnQkFDO2VBQUFBOzs7aUVBbEJLOzs7Ozs7QUFFZCxTQUFTRCxtQkFBbUJFLElBQUksRUFBRUMsT0FBTztJQUM5QyxJQUFJLEVBQUVDLFVBQVUsRUFBRSxHQUFHRjtJQUVyQixNQUFNLEVBQUVHLFNBQVMsRUFBRSxHQUFHQyxpQkFBUSxFQUN4QkMsaUJBQWlCSCxZQUFZLEdBQUc7SUFFdENBLGFBQWFHLGVBQWVDLEdBQUcsQ0FBQyxDQUFDQztRQUMvQixNQUFNUCxPQUFPTyxlQUNQQyxZQUFZTCxVQUFVTSxRQUFRLENBQUNULE1BQU1DO1FBRTNDLE9BQU9PO0lBQ1Q7SUFFQSxPQUFPTjtBQUNUO0FBRU8sU0FBU0gsMkJBQTJCRyxVQUFVO0lBQ25ELE1BQU1HLGlCQUFpQkgsV0FBV0ksR0FBRyxDQUFDLENBQUNFO1FBQ3JDLE1BQU1ELGdCQUFnQkMsVUFBVUUsTUFBTTtRQUV0QyxPQUFPSDtJQUNUO0lBRUEsT0FBT0Y7QUFDVCJ9
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "occam-furtle",
|
|
3
3
|
"author": "James Smith",
|
|
4
|
-
"version": "3.0.
|
|
4
|
+
"version": "3.0.366",
|
|
5
5
|
"license": "MIT, Anti-996",
|
|
6
6
|
"homepage": "https://github.com/djalbat/occam-furtle",
|
|
7
7
|
"description": "Occam's Furtle language.",
|
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
13
|
"necessary": "^17.5.2",
|
|
14
|
-
"occam-grammars": "^1.3.
|
|
15
|
-
"occam-languages": "^1.0.
|
|
14
|
+
"occam-grammars": "^1.3.626",
|
|
15
|
+
"occam-languages": "^1.0.25",
|
|
16
16
|
"occam-lexers": "^23.2.2",
|
|
17
17
|
"occam-parsers": "^23.2.4",
|
|
18
18
|
"occam-query": "^4.1.198"
|
|
@@ -28,8 +28,8 @@
|
|
|
28
28
|
"juxtapose": "^4.0.143",
|
|
29
29
|
"lively-cli": "^3.0.3",
|
|
30
30
|
"occam-grammar-utilities": "^8.1.17",
|
|
31
|
-
"occam-model": "^1.0.
|
|
32
|
-
"occam-server": "^7.0.
|
|
31
|
+
"occam-model": "^1.0.558",
|
|
32
|
+
"occam-server": "^7.0.58",
|
|
33
33
|
"watchful-cli": "^1.7.102"
|
|
34
34
|
},
|
|
35
35
|
"scripts": {
|
|
@@ -6,6 +6,7 @@ import FurtleLexer from "../../furtle/lexer";
|
|
|
6
6
|
import FurtleParser from "../../furtle/parser";
|
|
7
7
|
|
|
8
8
|
import { verifyFile } from "../../process/verify";
|
|
9
|
+
import { proceduresFromJSON, proceduresToProceduresJSON } from "../../utilities/json";
|
|
9
10
|
|
|
10
11
|
const { furtleLexerFromNothing, furtleParserFromNothing } = furtleUtilities;
|
|
11
12
|
|
|
@@ -165,16 +166,18 @@ export default class FurtleFileContext extends FileContext {
|
|
|
165
166
|
///
|
|
166
167
|
}
|
|
167
168
|
|
|
168
|
-
initialise(
|
|
169
|
-
|
|
169
|
+
initialise() {
|
|
170
|
+
const json = this.getJSON();
|
|
170
171
|
|
|
171
|
-
|
|
172
|
+
if (json === null) {
|
|
173
|
+
super.initialise();
|
|
172
174
|
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
fileNode = node; ///
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
176
177
|
|
|
177
|
-
|
|
178
|
+
const fileContext = this; ///
|
|
179
|
+
|
|
180
|
+
this.procedures = proceduresFromJSON(json, fileContext);
|
|
178
181
|
}
|
|
179
182
|
|
|
180
183
|
async verifyFile() {
|
|
@@ -187,16 +190,20 @@ export default class FurtleFileContext extends FileContext {
|
|
|
187
190
|
}
|
|
188
191
|
|
|
189
192
|
toJSON() {
|
|
190
|
-
const
|
|
193
|
+
const proceduresJSON = proceduresToProceduresJSON(this.procedures),
|
|
191
194
|
fileContent = this.getFileContent(),
|
|
195
|
+
filePath = this.getFilePath(),
|
|
196
|
+
procedures = proceduresJSON, ///
|
|
192
197
|
json = {
|
|
198
|
+
fileContent,
|
|
193
199
|
filePath,
|
|
194
|
-
|
|
200
|
+
procedures
|
|
195
201
|
};
|
|
196
202
|
|
|
197
203
|
return json;
|
|
198
204
|
}
|
|
199
205
|
|
|
206
|
+
|
|
200
207
|
static fromFile(file, context) {
|
|
201
208
|
const lexer = furtleLexer, ///
|
|
202
209
|
parser = furtleParser, ///
|
package/src/element/procedure.js
CHANGED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import elements from "../elements";
|
|
4
|
+
|
|
5
|
+
export function proceduresFromJSON(json, context) {
|
|
6
|
+
let { procedures } = json;
|
|
7
|
+
|
|
8
|
+
const { Procedure } = elements,
|
|
9
|
+
proceduresJSON = procedures; ///
|
|
10
|
+
|
|
11
|
+
procedures = proceduresJSON.map((procedureJSON) => {
|
|
12
|
+
const json = procedureJSON, ///
|
|
13
|
+
procedure = Procedure.fromJSON(json, context);
|
|
14
|
+
|
|
15
|
+
return procedure;
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
return procedures;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export function proceduresToProceduresJSON(procedures) {
|
|
22
|
+
const proceduresJSON = procedures.map((procedure) => {
|
|
23
|
+
const procedureJSON = procedure.toJSON();
|
|
24
|
+
|
|
25
|
+
return procedureJSON;
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
return proceduresJSON;
|
|
29
|
+
}
|
package/lib/element/procedure.js
DELETED
|
@@ -1,79 +0,0 @@
|
|
|
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 _exception = /*#__PURE__*/ _interop_require_default(require("../exception"));
|
|
13
|
-
const _elements = require("../elements");
|
|
14
|
-
const _values = require("../utilities/values");
|
|
15
|
-
const _parameters = require("../utilities/parameters");
|
|
16
|
-
function _interop_require_default(obj) {
|
|
17
|
-
return obj && obj.__esModule ? obj : {
|
|
18
|
-
default: obj
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
const _default = (0, _elements.define)(class Procedure extends _occamlanguages.Element {
|
|
22
|
-
constructor(context, string, node, breakPoint, type, label, parameters, returnBlock){
|
|
23
|
-
super(context, string, node, breakPoint);
|
|
24
|
-
this.type = type;
|
|
25
|
-
this.label = label;
|
|
26
|
-
this.parameters = parameters;
|
|
27
|
-
this.returnBlock = returnBlock;
|
|
28
|
-
}
|
|
29
|
-
getType() {
|
|
30
|
-
return this.type;
|
|
31
|
-
}
|
|
32
|
-
getLabel() {
|
|
33
|
-
return this.label;
|
|
34
|
-
}
|
|
35
|
-
getParameters() {
|
|
36
|
-
return this.parameters;
|
|
37
|
-
}
|
|
38
|
-
getReturnBlock() {
|
|
39
|
-
return this.returnBlock;
|
|
40
|
-
}
|
|
41
|
-
getName() {
|
|
42
|
-
return this.label.getName();
|
|
43
|
-
}
|
|
44
|
-
isBoolean() {
|
|
45
|
-
const type = this.getType(), booleanType = type.isBooleanType(), boolean = booleanType; ///
|
|
46
|
-
return boolean;
|
|
47
|
-
}
|
|
48
|
-
getReturnStatement() {
|
|
49
|
-
return this.returnBlock.getReturnStatement();
|
|
50
|
-
}
|
|
51
|
-
compareProcedureName(procedureName) {
|
|
52
|
-
return this.label.compareProcedureName(procedureName);
|
|
53
|
-
}
|
|
54
|
-
async call(values, context) {
|
|
55
|
-
await this.break(context);
|
|
56
|
-
const procedureString = this.getString(); ///
|
|
57
|
-
context.trace(`Calling the '${procedureString}' procedure...`);
|
|
58
|
-
this.parameters.compareValues(values, context);
|
|
59
|
-
const variables = (0, _parameters.variablesFromValuesAndParameters)(values, this.parameters, context), value = await this.returnBlock.evaluate(variables, context), valueType = value.getType(), typeEqualToValueType = this.type.isEqualTo(valueType);
|
|
60
|
-
if (!typeEqualToValueType) {
|
|
61
|
-
const valueString = value.getString(), typeString = this.type.getString(), message = `The '${valueString}' value's '${typeString}' type is not equal to the '${procedureString}' procedure's '${typeString}' type.`, exception = _exception.default.fromMessage(message);
|
|
62
|
-
throw exception;
|
|
63
|
-
}
|
|
64
|
-
context.debug(`...called the '${procedureString}' procedure.`);
|
|
65
|
-
return value;
|
|
66
|
-
}
|
|
67
|
-
async callNominally(nominalValues) {
|
|
68
|
-
const context = this.getContext();
|
|
69
|
-
await this.break(context);
|
|
70
|
-
const procedureString = this.getString(); ///
|
|
71
|
-
context.trace(`Calling the '${procedureString}' function nominally...`);
|
|
72
|
-
const values = (0, _values.valuesFromNominalValues)(nominalValues, context), term = await this.call(values, context);
|
|
73
|
-
context.debug(`...called the '${procedureString}' function nominally.`);
|
|
74
|
-
return term;
|
|
75
|
-
}
|
|
76
|
-
static name = "Procedure";
|
|
77
|
-
});
|
|
78
|
-
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Byb2NlZHVyZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcblxuaW1wb3J0IEV4Y2VwdGlvbiBmcm9tIFwiLi4vZXhjZXB0aW9uXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuaW1wb3J0IHsgdmFsdWVzRnJvbU5vbWluYWxWYWx1ZXMgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3ZhbHVlc1wiO1xuaW1wb3J0IHsgdmFyaWFibGVzRnJvbVZhbHVlc0FuZFBhcmFtZXRlcnMgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3BhcmFtZXRlcnNcIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIFByb2NlZHVyZSBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIHR5cGUsIGxhYmVsLCBwYXJhbWV0ZXJzLCByZXR1cm5CbG9jaykge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIHRoaXMubGFiZWwgPSBsYWJlbDtcbiAgICB0aGlzLnBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzO1xuICAgIHRoaXMucmV0dXJuQmxvY2sgPSByZXR1cm5CbG9jaztcbiAgfVxuXG4gIGdldFR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgfVxuXG4gIGdldExhYmVsKCkge1xuICAgIHJldHVybiB0aGlzLmxhYmVsO1xuICB9XG5cbiAgZ2V0UGFyYW1ldGVycygpIHtcbiAgICByZXR1cm4gdGhpcy5wYXJhbWV0ZXJzO1xuICB9XG5cbiAgZ2V0UmV0dXJuQmxvY2soKSB7XG4gICAgcmV0dXJuIHRoaXMucmV0dXJuQmxvY2s7XG4gIH1cblxuICBnZXROYW1lKCkgeyByZXR1cm4gdGhpcy5sYWJlbC5nZXROYW1lKCk7IH1cblxuICBpc0Jvb2xlYW4oKSB7XG4gICAgY29uc3QgdHlwZSA9IHRoaXMuZ2V0VHlwZSgpLFxuICAgICAgICAgIGJvb2xlYW5UeXBlID0gdHlwZS5pc0Jvb2xlYW5UeXBlKCksXG4gICAgICAgICAgYm9vbGVhbiA9IGJvb2xlYW5UeXBlOyAgLy8vXG5cbiAgICByZXR1cm4gYm9vbGVhbjtcbiAgfVxuXG4gIGdldFJldHVyblN0YXRlbWVudCgpIHsgcmV0dXJuIHRoaXMucmV0dXJuQmxvY2suZ2V0UmV0dXJuU3RhdGVtZW50KCk7IH1cblxuICBjb21wYXJlUHJvY2VkdXJlTmFtZShwcm9jZWR1cmVOYW1lKSB7IHJldHVybiB0aGlzLmxhYmVsLmNvbXBhcmVQcm9jZWR1cmVOYW1lKHByb2NlZHVyZU5hbWUpOyB9XG5cbiAgYXN5bmMgY2FsbCh2YWx1ZXMsIGNvbnRleHQpIHtcbiAgICBhd2FpdCB0aGlzLmJyZWFrKGNvbnRleHQpO1xuXG4gICAgY29uc3QgcHJvY2VkdXJlU3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTsgIC8vL1xuXG4gICAgY29udGV4dC50cmFjZShgQ2FsbGluZyB0aGUgJyR7cHJvY2VkdXJlU3RyaW5nfScgcHJvY2VkdXJlLi4uYCk7XG5cbiAgICB0aGlzLnBhcmFtZXRlcnMuY29tcGFyZVZhbHVlcyh2YWx1ZXMsIGNvbnRleHQpO1xuXG4gICAgY29uc3QgdmFyaWFibGVzID0gdmFyaWFibGVzRnJvbVZhbHVlc0FuZFBhcmFtZXRlcnModmFsdWVzLCB0aGlzLnBhcmFtZXRlcnMsIGNvbnRleHQpLFxuICAgICAgICAgIHZhbHVlID0gYXdhaXQgdGhpcy5yZXR1cm5CbG9jay5ldmFsdWF0ZSh2YXJpYWJsZXMsIGNvbnRleHQpLFxuICAgICAgICAgIHZhbHVlVHlwZSA9IHZhbHVlLmdldFR5cGUoKSxcbiAgICAgICAgICB0eXBlRXF1YWxUb1ZhbHVlVHlwZSA9IHRoaXMudHlwZS5pc0VxdWFsVG8odmFsdWVUeXBlKTtcblxuICAgIGlmICghdHlwZUVxdWFsVG9WYWx1ZVR5cGUpIHtcbiAgICAgIGNvbnN0IHZhbHVlU3RyaW5nID0gdmFsdWUuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICB0eXBlU3RyaW5nID0gdGhpcy50eXBlLmdldFN0cmluZygpLFxuICAgICAgICAgICAgbWVzc2FnZSA9IGBUaGUgJyR7dmFsdWVTdHJpbmd9JyB2YWx1ZSdzICcke3R5cGVTdHJpbmd9JyB0eXBlIGlzIG5vdCBlcXVhbCB0byB0aGUgJyR7cHJvY2VkdXJlU3RyaW5nfScgcHJvY2VkdXJlJ3MgJyR7dHlwZVN0cmluZ30nIHR5cGUuYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgdGhyb3cgZXhjZXB0aW9uO1xuICAgIH1cblxuICAgIGNvbnRleHQuZGVidWcoYC4uLmNhbGxlZCB0aGUgJyR7cHJvY2VkdXJlU3RyaW5nfScgcHJvY2VkdXJlLmApO1xuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgYXN5bmMgY2FsbE5vbWluYWxseShub21pbmFsVmFsdWVzKSB7XG4gICAgY29uc3QgY29udGV4dCA9IHRoaXMuZ2V0Q29udGV4dCgpO1xuXG4gICAgYXdhaXQgdGhpcy5icmVhayhjb250ZXh0KTtcblxuICAgIGNvbnN0IHByb2NlZHVyZVN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7ICAvLy9cblxuICAgIGNvbnRleHQudHJhY2UoYENhbGxpbmcgdGhlICcke3Byb2NlZHVyZVN0cmluZ30nIGZ1bmN0aW9uIG5vbWluYWxseS4uLmApO1xuXG4gICAgY29uc3QgdmFsdWVzID0gdmFsdWVzRnJvbU5vbWluYWxWYWx1ZXMobm9taW5hbFZhbHVlcywgY29udGV4dCksXG4gICAgICAgICAgdGVybSA9IGF3YWl0IHRoaXMuY2FsbCh2YWx1ZXMsIGNvbnRleHQpO1xuXG4gICAgY29udGV4dC5kZWJ1ZyhgLi4uY2FsbGVkIHRoZSAnJHtwcm9jZWR1cmVTdHJpbmd9JyBmdW5jdGlvbiBub21pbmFsbHkuYCk7XG5cbiAgICByZXR1cm4gdGVybTtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJQcm9jZWR1cmVcIjtcbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIlByb2NlZHVyZSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ0eXBlIiwibGFiZWwiLCJwYXJhbWV0ZXJzIiwicmV0dXJuQmxvY2siLCJnZXRUeXBlIiwiZ2V0TGFiZWwiLCJnZXRQYXJhbWV0ZXJzIiwiZ2V0UmV0dXJuQmxvY2siLCJnZXROYW1lIiwiaXNCb29sZWFuIiwiYm9vbGVhblR5cGUiLCJpc0Jvb2xlYW5UeXBlIiwiYm9vbGVhbiIsImdldFJldHVyblN0YXRlbWVudCIsImNvbXBhcmVQcm9jZWR1cmVOYW1lIiwicHJvY2VkdXJlTmFtZSIsImNhbGwiLCJ2YWx1ZXMiLCJicmVhayIsInByb2NlZHVyZVN0cmluZyIsImdldFN0cmluZyIsInRyYWNlIiwiY29tcGFyZVZhbHVlcyIsInZhcmlhYmxlcyIsInZhcmlhYmxlc0Zyb21WYWx1ZXNBbmRQYXJhbWV0ZXJzIiwidmFsdWUiLCJldmFsdWF0ZSIsInZhbHVlVHlwZSIsInR5cGVFcXVhbFRvVmFsdWVUeXBlIiwiaXNFcXVhbFRvIiwidmFsdWVTdHJpbmciLCJ0eXBlU3RyaW5nIiwibWVzc2FnZSIsImV4Y2VwdGlvbiIsIkV4Y2VwdGlvbiIsImZyb21NZXNzYWdlIiwiZGVidWciLCJjYWxsTm9taW5hbGx5Iiwibm9taW5hbFZhbHVlcyIsImdldENvbnRleHQiLCJ2YWx1ZXNGcm9tTm9taW5hbFZhbHVlcyIsInRlcm0iLCJuYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFVQTs7O2VBQUE7OztnQ0FSd0I7a0VBRUY7MEJBRUM7d0JBQ2lCOzRCQUNTOzs7Ozs7TUFFakQsV0FBZUEsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyxrQkFBa0JDLHVCQUFPO0lBQ25ELFlBQVlDLE9BQU8sRUFB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
|