@kontur.candy/tools 2.177.0 → 2.178.2

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/CHANGELOG.md CHANGED
@@ -1,3 +1,23 @@
1
+ <a name="2.178.2"></a>
2
+ ## [2.178.2](https://git.skbkontur.ru/ke/candy-utils/compare/release/tools/v2.178.0...release/tools/v2.178.2) (2024-03-13)
3
+
4
+
5
+ ### Bug Fixes
6
+
7
+ * **Tools:** Более правильный шаблон для init form ([330c0f1](https://git.skbkontur.ru/ke/candy-utils/commit/330c0f1))
8
+ * **Tools:** Исправлена работае candy init-form ([df83806](https://git.skbkontur.ru/ke/candy-utils/commit/df83806))
9
+
10
+ <a name="2.178.1"></a>
11
+ ## [2.178.1](https://git.skbkontur.ru/ke/candy-utils/compare/release/tools/v2.178.0...release/tools/v2.178.1) (2024-03-13)
12
+
13
+
14
+ ### Bug Fixes
15
+
16
+ * **Tools:** Исправлена работае candy init-form ([df83806](https://git.skbkontur.ru/ke/candy-utils/commit/df83806))
17
+
18
+ <a name="2.178.0"></a>
19
+ # [2.178.0](https://git.skbkontur.ru/ke/candy-utils/compare/release/tools/v2.177.0...release/tools/v2.178.0) (2024-03-11)
20
+
1
21
  <a name="2.177.0"></a>
2
22
  # [2.177.0](https://git.skbkontur.ru/ke/candy-utils/compare/release/tools/v2.176.2...release/tools/v2.177.0) (2024-03-11)
3
23
 
@@ -6,8 +6,9 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.WellKnownDirectories = void 0;
7
7
  class WellKnownDirectories {}
8
8
  exports.WellKnownDirectories = WellKnownDirectories;
9
+ WellKnownDirectories.FormsDirectory = "forms";
9
10
  WellKnownDirectories.CandySubdirectoryName = "Candy";
10
11
  WellKnownDirectories.FormJsonFileName = "form.json";
11
12
  WellKnownDirectories.GeneratedFormSubdirectory = "form";
12
13
  WellKnownDirectories.TestFarmDir = "TestFarm";
13
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJXZWxsS25vd25EaXJlY3RvcmllcyIsImV4cG9ydHMiLCJDYW5keVN1YmRpcmVjdG9yeU5hbWUiLCJGb3JtSnNvbkZpbGVOYW1lIiwiR2VuZXJhdGVkRm9ybVN1YmRpcmVjdG9yeSIsIlRlc3RGYXJtRGlyIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vQ29tbW9uL1dlbGxLbm93bkRpcmVjdG9yaWVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBXZWxsS25vd25EaXJlY3RvcmllcyB7XG4gICAgcHVibGljIHN0YXRpYyBDYW5keVN1YmRpcmVjdG9yeU5hbWUgPSBcIkNhbmR5XCI7XG4gICAgcHVibGljIHN0YXRpYyBGb3JtSnNvbkZpbGVOYW1lID0gXCJmb3JtLmpzb25cIjtcbiAgICBwdWJsaWMgc3RhdGljIEdlbmVyYXRlZEZvcm1TdWJkaXJlY3RvcnkgPSBcImZvcm1cIjtcblxuICAgIHB1YmxpYyBzdGF0aWMgVGVzdEZhcm1EaXIgPSBcIlRlc3RGYXJtXCI7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFPLE1BQU1BLG9CQUFvQixDQUFDO0FBTWpDQyxPQUFBLENBQUFELG9CQUFBLEdBQUFBLG9CQUFBO0FBTllBLG9CQUFvQixDQUNmRSxxQkFBcUIsR0FBRyxPQUFPO0FBRHBDRixvQkFBb0IsQ0FFZkcsZ0JBQWdCLEdBQUcsV0FBVztBQUZuQ0gsb0JBQW9CLENBR2ZJLHlCQUF5QixHQUFHLE1BQU07QUFIdkNKLG9CQUFvQixDQUtmSyxXQUFXLEdBQUcsVUFBVSJ9
14
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJXZWxsS25vd25EaXJlY3RvcmllcyIsImV4cG9ydHMiLCJGb3Jtc0RpcmVjdG9yeSIsIkNhbmR5U3ViZGlyZWN0b3J5TmFtZSIsIkZvcm1Kc29uRmlsZU5hbWUiLCJHZW5lcmF0ZWRGb3JtU3ViZGlyZWN0b3J5IiwiVGVzdEZhcm1EaXIiXSwic291cmNlcyI6WyIuLi8uLi8uLi9Db21tb24vV2VsbEtub3duRGlyZWN0b3JpZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIFdlbGxLbm93bkRpcmVjdG9yaWVzIHtcbiAgICBwdWJsaWMgc3RhdGljIEZvcm1zRGlyZWN0b3J5ID0gXCJmb3Jtc1wiO1xuXG4gICAgcHVibGljIHN0YXRpYyBDYW5keVN1YmRpcmVjdG9yeU5hbWUgPSBcIkNhbmR5XCI7XG4gICAgcHVibGljIHN0YXRpYyBGb3JtSnNvbkZpbGVOYW1lID0gXCJmb3JtLmpzb25cIjtcbiAgICBwdWJsaWMgc3RhdGljIEdlbmVyYXRlZEZvcm1TdWJkaXJlY3RvcnkgPSBcImZvcm1cIjtcblxuICAgIHB1YmxpYyBzdGF0aWMgVGVzdEZhcm1EaXIgPSBcIlRlc3RGYXJtXCI7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFPLE1BQU1BLG9CQUFvQixDQUFDO0FBUWpDQyxPQUFBLENBQUFELG9CQUFBLEdBQUFBLG9CQUFBO0FBUllBLG9CQUFvQixDQUNmRSxjQUFjLEdBQUcsT0FBTztBQUQ3QkYsb0JBQW9CLENBR2ZHLHFCQUFxQixHQUFHLE9BQU87QUFIcENILG9CQUFvQixDQUlmSSxnQkFBZ0IsR0FBRyxXQUFXO0FBSm5DSixvQkFBb0IsQ0FLZksseUJBQXlCLEdBQUcsTUFBTTtBQUx2Q0wsb0JBQW9CLENBT2ZNLFdBQVcsR0FBRyxVQUFVIn0=
@@ -36,7 +36,7 @@ async function runDevBuild(context, options, engineDirectory, resourcesDirectory
36
36
  const pickListsChain = _Observe.Observe.files(_path.default.join(farmDirectory, "picklists"), "*.json").do(x => _FSTask.FSTask.copyRecursively(context.logger.withPrefix("PICKLISTS"), x, _path.default.join(resourcesDirectory, "picklists")));
37
37
  const repositoryRoot = _path.default.join(farmDirectory, "..");
38
38
  await _FormGlobsUtils.FormGlobs.ensureEachGlobResolvesIntoExistingForm(options.formGlobs, farmDirectory);
39
- const formGlobs = await _FormGlobsUtils.FormGlobs.resolveGfvGlobs(options.formGlobs, farmDirectory);
39
+ const formInfos = await _FormGlobsUtils.FormGlobs.resolveGfvGlobs(options.formGlobs, farmDirectory);
40
40
 
41
41
  /** Конвертеры описи для форм, которые пока не реализованы на кенди, сама механика описи перенесена в формы в кенди апи, поэтому они должны быть в candy.resources
42
42
  * Реализуется только при общем билде форм: candy build *
@@ -45,7 +45,7 @@ async function runDevBuild(context, options, engineDirectory, resourcesDirectory
45
45
  if (options.formGlobs[0] === "*") {
46
46
  resourcesExternalConvertersChain = _Observe.Observe.files(_path.default.join(farmDirectory, "externalConverters"), "*.xslt").do(x => _FSTask.FSTask.copyRecursively((0, _StaticLogger.getLogger)().withPrefix("EXTERNAL-CONVERTERS"), x, _path.default.join(resourcesDirectory, "converters")));
47
47
  }
48
- const buildFormsChain = _Observe.Observe.fixedFormDirectories(formGlobs.map(x => x.formPath)).splitToParallelChains(x => x, x => x, async formRelativePath => {
48
+ const buildFormsChain = _Observe.Observe.fixedFormDirectories(formInfos.map(x => _path.default.relative(repositoryRoot, x.formPath))).splitToParallelChains(x => x, x => x, async formRelativePath => {
49
49
  const gfv = (0, _FormPathUtils.extractGfvFromFormPath)(formRelativePath);
50
50
  const formDirPath = _path.default.join(repositoryRoot, formRelativePath);
51
51
  const formSchemasDirPath = _path.default.join(formDirPath, "schemas");
@@ -103,4 +103,4 @@ async function runDevBuild(context, options, engineDirectory, resourcesDirectory
103
103
  console.log(`${_chalk.default.greenBright("Build success")} Total time: ${(0, _TimingUtils.printTime)(totalTime)}`);
104
104
  }
105
105
  }
106
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcGF0aCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX2NoYWxrIiwiX0J1aWxkQ2xpZW50SnNUYXNrIiwiX0J1aWxkTG9jYWxFbmdpbmVUYXNrIiwiX0VuZ2luZVN0cnVjdHVyZVV0aWxzIiwiX0NvbXBpbGVGb3JtIiwiX0dlbmVyYXRlRm9ybSIsIl9Xcml0ZUZMYW5nTm9ybWFsaXphdGlvbkZpbGVzIiwiX0ZTVGFzayIsIl9BY3F1aXJlRm9ybUdlbmVyYXRvciIsIl9QdWJsaXNoZWRWZXJzaW9uVXRpbHMiLCJfUmVzb2x2ZUZvcm1JbmZvIiwiX1dyaXRlRm9ybU1ldGEiLCJfRm9ybUdsb2JzVXRpbHMiLCJfU3RhdGljTG9nZ2VyIiwiX09ic2VydmUiLCJfVGltaW5nVXRpbHMiLCJfV3JpdGVBdHRhY2htZW50UGF0aEZpbGVzIiwiX2dldFJuZ1NjaGVtYUZpbGVuYW1lIiwiX0Zvcm1QYXRoVXRpbHMiLCJfV2VsbEtub3duRGlyZWN0b3JpZXMiLCJydW5EZXZCdWlsZCIsImNvbnRleHQiLCJvcHRpb25zIiwiZW5naW5lRGlyZWN0b3J5IiwicmVzb3VyY2VzRGlyZWN0b3J5IiwiZmFybURpcmVjdG9yeSIsImNhbmR5TW9kdWxlc0RpcmVjdG9yeSIsImhsRmFybURpcmVjdG9yeVBhdGgiLCJkZXZCdWlsZE9wdGlvbnMiLCJlbmdpbmVXZWJwYWNrQ29uZmlnVGFzayIsImNyZWF0ZUVuZ2luZVdlYnBhY2tDb25maWdUYXNrIiwiYnVpbGRFbmdpbmVDaGFpbiIsImNoYWluV2l0aCIsInAiLCJCdWlsZExvY2FsRW5naW5lVGFzayIsImJ1aWxkRGVidWdPbmx5IiwiY2xpZW50V2VicGFja0NvbmZpZ1Rhc2siLCJjcmVhdGVDbGllbnRXZWJwYWNrQ29uZmlnVGFzayIsImJ1aWxkQ2xpZW50SnNDaGFpbiIsIkJ1aWxkQ2xpZW50SnNUYXNrIiwic3RhdGljUmVzb3VyY2VzQ2hhaW4iLCJPYnNlcnZlIiwiZmlsZXMiLCJwYXRoIiwiam9pbiIsIl9fZGlybmFtZSIsImRvIiwieCIsIkZTVGFzayIsImNvcHlSZWN1cnNpdmVseSIsImdldExvZ2dlciIsIndpdGhQcmVmaXgiLCJwaWNrTGlzdHNDaGFpbiIsImxvZ2dlciIsInJlcG9zaXRvcnlSb290IiwiRm9ybUdsb2JzIiwiZW5zdXJlRWFjaEdsb2JSZXNvbHZlc0ludG9FeGlzdGluZ0Zvcm0iLCJmb3JtR2xvYnMiLCJyZXNvbHZlR2Z2R2xvYnMiLCJyZXNvdXJjZXNFeHRlcm5hbENvbnZlcnRlcnNDaGFpbiIsImVtcHR5IiwiYnVpbGRGb3Jtc0NoYWluIiwiZml4ZWRGb3JtRGlyZWN0b3JpZXMiLCJtYXAiLCJmb3JtUGF0aCIsInNwbGl0VG9QYXJhbGxlbENoYWlucyIsImZvcm1SZWxhdGl2ZVBhdGgiLCJnZnYiLCJleHRyYWN0R2Z2RnJvbUZvcm1QYXRoIiwiZm9ybURpclBhdGgiLCJmb3JtU2NoZW1hc0RpclBhdGgiLCJybmdTY2hlbWFNYXNrIiwiZ2V0Um5nU2NoZW1hRmlsZW5hbWUiLCJmaWxlIiwiV2VsbEtub3duRGlyZWN0b3JpZXMiLCJGb3JtSnNvbkZpbGVOYW1lIiwidHJhbnNmb3JtIiwiZm9ybUpzb25GaWxlIiwicmVzb2x2ZUZvcm1JbmZvIiwiZ2VuZXJhdG9yU291cmNlIiwicmVzb2x2ZUxvY2FsR2VuZXJhdG9yU291cmNlIiwiZW5naW5lU291cmNlIiwicmVzb2x2ZUxvY2FsRW5naW5lU291cmNlIiwiYXR0YWNoIiwiZmkiLCJnZW5lcmF0b3JGYWN0b3J5IiwidW5kZWZpbmVkIiwieSIsImdlbmVyYXRvciIsImdldEdlbmVyYXRvclNvdXJjZUtleSIsImZvcm1Tb3VyY2VzUGF0aCIsImRlcGVuZGVuY2llc0hhc2giLCJnZXRBbGxEZXBlbmRlbmNpZXNIYXNoIiwic2tpcEdlbmVyYXRpb24iLCJnZW5lcmF0ZUZvcm0iLCJza2lwQ29kZVJlZm9ybWF0dGluZyIsInNraXBHZW5lcmF0ZWRDb2RlUmVmb3JtYXR0aW5nIiwicmVzb3VyY2VzSGFzaCIsImNvbXBpbGVGb3JtIiwiZm9ybU5hbWUiLCJ0aGVtZXMiLCJ3cml0ZUZMYW5nTm9ybWFsaXphdGlvbkZpbGVzIiwid3JpdGVBdHRhY2htZW50UGF0aEZpbGVzIiwid3JpdGVGb3JtTWV0YSIsIndhdGNoIiwic3RvcE9ic2VydmUxIiwib2JzZXJ2ZSIsInN0b3BPYnNlcnZlMiIsInN0b3BPYnNlcnZlMyIsInN0b3BPYnNlcnZlNCIsInN0b3BPYnNlcnZlNSIsInN0b3BPYnNlcnZlNiIsIndhaXRGb3JFeGl0Iiwic3RhcnREYXRlIiwiRGF0ZSIsIm5vdyIsIlByb21pc2UiLCJhbGwiLCJjdXJyZW50VmFsdWUiLCJlIiwiY29udGludWVPbkVycm9yIiwiZXJyb3IiLCJ0b3RhbFRpbWUiLCJjb25zb2xlIiwibG9nIiwiY2hhbGsiLCJncmVlbkJyaWdodCIsInByaW50VGltZSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9DTElDb21tYW5kcy9EZXZCdWlsZC9SdW5EZXZCdWlsZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiO1xuXG5pbXBvcnQgY2hhbGsgZnJvbSBcImNoYWxrXCI7XG5cbmltcG9ydCB7IEJ1aWxkQ2xpZW50SnNUYXNrIH0gZnJvbSBcIi4uLy4uL0J1aWxkVGFza3MvQ2xpZW50SlMvQnVpbGRDbGllbnRKc1Rhc2tcIjtcbmltcG9ydCB7IEJ1aWxkTG9jYWxFbmdpbmVUYXNrIH0gZnJvbSBcIi4uLy4uL0J1aWxkVGFza3MvRW5naW5lL0J1aWxkTG9jYWxFbmdpbmVUYXNrXCI7XG5pbXBvcnQgeyBjcmVhdGVDbGllbnRXZWJwYWNrQ29uZmlnVGFzaywgY3JlYXRlRW5naW5lV2VicGFja0NvbmZpZ1Rhc2sgfSBmcm9tIFwiLi4vLi4vQnVpbGRUYXNrcy9FbmdpbmVTdHJ1Y3R1cmVVdGlsc1wiO1xuaW1wb3J0IHsgY29tcGlsZUZvcm0gfSBmcm9tIFwiLi4vLi4vQnVpbGRUYXNrcy9Gb3JtL0NvbXBpbGVGb3JtXCI7XG5pbXBvcnQgeyBnZW5lcmF0ZUZvcm0gfSBmcm9tIFwiLi4vLi4vQnVpbGRUYXNrcy9Gb3JtL0dlbmVyYXRlRm9ybVwiO1xuaW1wb3J0IHsgd3JpdGVGTGFuZ05vcm1hbGl6YXRpb25GaWxlcyB9IGZyb20gXCIuLi8uLi9CdWlsZFRhc2tzL0Zvcm0vV3JpdGVGTGFuZ05vcm1hbGl6YXRpb25GaWxlc1wiO1xuaW1wb3J0IHsgRlNUYXNrIH0gZnJvbSBcIi4uLy4uL0J1aWxkVGFza3MvRlNUYXNrXCI7XG5pbXBvcnQgeyBnZW5lcmF0b3JGYWN0b3J5LCBnZXRHZW5lcmF0b3JTb3VyY2VLZXkgfSBmcm9tIFwiLi4vLi4vQnVpbGRUYXNrcy9HZW5lcmF0b3IvQWNxdWlyZUZvcm1HZW5lcmF0b3JcIjtcbmltcG9ydCB7IHJlc29sdmVMb2NhbEVuZ2luZVNvdXJjZSwgcmVzb2x2ZUxvY2FsR2VuZXJhdG9yU291cmNlIH0gZnJvbSBcIi4uLy4uL0J1aWxkVGFza3MvUHVibGlzaGVkVmVyc2lvblV0aWxzXCI7XG5pbXBvcnQgeyByZXNvbHZlRm9ybUluZm8gfSBmcm9tIFwiLi4vLi4vQnVpbGRUYXNrcy9SZXNvbHZlRm9ybUluZm9cIjtcbmltcG9ydCB7IHdyaXRlRm9ybU1ldGEgfSBmcm9tIFwiLi4vLi4vQnVpbGRUYXNrcy9Xcml0ZUZvcm1NZXRhXCI7XG5pbXBvcnQgeyBDb25zb2xlQXBwbGljYXRpb25Db250ZXh0IH0gZnJvbSBcIi4uLy4uL0NvbW1vbnMvQ29uc29sZUFwcGxpY2F0aW9uL0NvbnNvbGVBcHBsaWNhdGlvbkNvbnRleHRcIjtcbmltcG9ydCB7IEZvcm1HbG9icyB9IGZyb20gXCIuLi8uLi9Db21tb25zL0Zvcm1HbG9ic1V0aWxzXCI7XG5pbXBvcnQgeyBnZXRMb2dnZXIgfSBmcm9tIFwiLi4vLi4vQ29tbW9ucy9Mb2dnaW5nL1N0YXRpY0xvZ2dlclwiO1xuaW1wb3J0IHsgT2JzZXJ2ZSB9IGZyb20gXCIuLi8uLi9Db21tb25zL1Rhc2tzQ29yZS9PYnNlcnZlXCI7XG5pbXBvcnQgeyBwcmludFRpbWUgfSBmcm9tIFwiLi4vLi4vQ29tbW9ucy9UaW1pbmdVdGlsc1wiO1xuaW1wb3J0IHsgd3JpdGVBdHRhY2htZW50UGF0aEZpbGVzIH0gZnJvbSBcIi4uLy4uL0J1aWxkVGFza3MvRm9ybS9Xcml0ZUF0dGFjaG1lbnRQYXRoRmlsZXNcIjtcbmltcG9ydCB7IENoYWluYWJsZVZhbHVlUHJvZHVjZXIgfSBmcm9tIFwiLi4vLi4vQ29tbW9ucy9UYXNrc0NvcmUvQ2hhaW5hYmxlVmFsdWVQcm9kdWNlclwiO1xuaW1wb3J0IHsgRW1wdHlQcm9kdWNlciB9IGZyb20gXCIuLi8uLi9Db21tb25zL1Rhc2tzQ29yZS9FbXB0eVByb2R1Y2VyXCI7XG5pbXBvcnQgeyBnZXRSbmdTY2hlbWFGaWxlbmFtZSB9IGZyb20gXCIuLi8uLi8uLi8uLi9Db21tb24vZ2V0Um5nU2NoZW1hRmlsZW5hbWVcIjtcbmltcG9ydCB7IGV4dHJhY3RHZnZGcm9tRm9ybVBhdGggfSBmcm9tIFwiLi4vLi4vLi4vLi4vQ29tbW9uL0Zvcm1QYXRoVXRpbHNcIjtcbmltcG9ydCB7IFdlbGxLbm93bkRpcmVjdG9yaWVzIH0gZnJvbSBcIi4uLy4uLy4uLy4uL0NvbW1vbi9XZWxsS25vd25EaXJlY3Rvcmllc1wiO1xuXG5pbXBvcnQgeyBEZXZlbG9wbWVudEJ1aWxkT3B0aW9ucyB9IGZyb20gXCIuL0RldkJ1aWxkT3B0aW9uc1wiO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcnVuRGV2QnVpbGQoXG4gICAgY29udGV4dDogQ29uc29sZUFwcGxpY2F0aW9uQ29udGV4dCxcbiAgICBvcHRpb25zOiBEZXZlbG9wbWVudEJ1aWxkT3B0aW9ucyxcbiAgICBlbmdpbmVEaXJlY3Rvcnk6IHN0cmluZyxcbiAgICByZXNvdXJjZXNEaXJlY3Rvcnk6IHN0cmluZyxcbiAgICBmYXJtRGlyZWN0b3J5OiBzdHJpbmcsXG4gICAgY2FuZHlNb2R1bGVzRGlyZWN0b3J5OiBzdHJpbmcsXG4gICAgaGxGYXJtRGlyZWN0b3J5UGF0aDogc3RyaW5nXG4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBkZXZCdWlsZE9wdGlvbnMgPSBvcHRpb25zO1xuXG4gICAgY29uc3QgZW5naW5lV2VicGFja0NvbmZpZ1Rhc2sgPSBhd2FpdCBjcmVhdGVFbmdpbmVXZWJwYWNrQ29uZmlnVGFzayhlbmdpbmVEaXJlY3RvcnkpO1xuICAgIGNvbnN0IGJ1aWxkRW5naW5lQ2hhaW4gPSBlbmdpbmVXZWJwYWNrQ29uZmlnVGFzay5jaGFpbldpdGgoXG4gICAgICAgIHAgPT4gbmV3IEJ1aWxkTG9jYWxFbmdpbmVUYXNrKHAsIHJlc291cmNlc0RpcmVjdG9yeSwgb3B0aW9ucy5idWlsZERlYnVnT25seSlcbiAgICApO1xuXG4gICAgY29uc3QgY2xpZW50V2VicGFja0NvbmZpZ1Rhc2sgPSBhd2FpdCBjcmVhdGVDbGllbnRXZWJwYWNrQ29uZmlnVGFzayhlbmdpbmVEaXJlY3RvcnkpO1xuICAgIGNvbnN0IGJ1aWxkQ2xpZW50SnNDaGFpbiA9IGNsaWVudFdlYnBhY2tDb25maWdUYXNrLmNoYWluV2l0aChwID0+IG5ldyBCdWlsZENsaWVudEpzVGFzayhwLCByZXNvdXJjZXNEaXJlY3RvcnkpKTtcblxuICAgIGNvbnN0IHN0YXRpY1Jlc291cmNlc0NoYWluID0gT2JzZXJ2ZS5maWxlcyhcbiAgICAgICAgcGF0aC5qb2luKF9fZGlybmFtZSwgXCIuLlwiLCBcIi4uXCIsIFwiU3RhdGljRmlsZXNGb3JSZXNvdXJjZXNEaXJcIiksXG4gICAgICAgIFwiKi5qc1wiXG4gICAgKS5kbyh4ID0+XG4gICAgICAgIEZTVGFzay5jb3B5UmVjdXJzaXZlbHkoZ2V0TG9nZ2VyKCkud2l0aFByZWZpeChcIlNUQVRJQ1NcIiksIHgsIHBhdGguam9pbihyZXNvdXJjZXNEaXJlY3RvcnksIFwicHVibGljXCIsIFwic2NyaXB0c1wiKSlcbiAgICApO1xuXG4gICAgY29uc3QgcGlja0xpc3RzQ2hhaW4gPSBPYnNlcnZlLmZpbGVzKHBhdGguam9pbihmYXJtRGlyZWN0b3J5LCBcInBpY2tsaXN0c1wiKSwgXCIqLmpzb25cIikuZG8oeCA9PlxuICAgICAgICBGU1Rhc2suY29weVJlY3Vyc2l2ZWx5KGNvbnRleHQubG9nZ2VyLndpdGhQcmVmaXgoXCJQSUNLTElTVFNcIiksIHgsIHBhdGguam9pbihyZXNvdXJjZXNEaXJlY3RvcnksIFwicGlja2xpc3RzXCIpKVxuICAgICk7XG5cbiAgICBjb25zdCByZXBvc2l0b3J5Um9vdCA9IHBhdGguam9pbihmYXJtRGlyZWN0b3J5LCBcIi4uXCIpO1xuICAgIGF3YWl0IEZvcm1HbG9icy5lbnN1cmVFYWNoR2xvYlJlc29sdmVzSW50b0V4aXN0aW5nRm9ybShvcHRpb25zLmZvcm1HbG9icywgZmFybURpcmVjdG9yeSk7XG4gICAgY29uc3QgZm9ybUdsb2JzID0gYXdhaXQgRm9ybUdsb2JzLnJlc29sdmVHZnZHbG9icyhvcHRpb25zLmZvcm1HbG9icywgZmFybURpcmVjdG9yeSk7XG5cbiAgICAvKiog0JrQvtC90LLQtdGA0YLQtdGA0Ysg0L7Qv9C40YHQuCDQtNC70Y8g0YTQvtGA0LwsINC60L7RgtC+0YDRi9C1INC/0L7QutCwINC90LUg0YDQtdCw0LvQuNC30L7QstCw0L3RiyDQvdCwINC60LXQvdC00LgsINGB0LDQvNCwINC80LXRhdCw0L3QuNC60LAg0L7Qv9C40YHQuCDQv9C10YDQtdC90LXRgdC10L3QsCDQsiDRhNC+0YDQvNGLINCyINC60LXQvdC00Lgg0LDQv9C4LCDQv9C+0Y3RgtC+0LzRgyDQvtC90Lgg0LTQvtC70LbQvdGLINCx0YvRgtGMINCyIGNhbmR5LnJlc291cmNlc1xuICAgICAqICDQoNC10LDQu9C40LfRg9C10YLRgdGPINGC0L7Qu9GM0LrQviDQv9GA0Lgg0L7QsdGJ0LXQvCDQsdC40LvQtNC1INGE0L7RgNC8OiBjYW5keSBidWlsZCAqXG4gICAgICogKi9cbiAgICBsZXQgcmVzb3VyY2VzRXh0ZXJuYWxDb252ZXJ0ZXJzQ2hhaW46IENoYWluYWJsZVZhbHVlUHJvZHVjZXI8c3RyaW5nPiB8IEVtcHR5UHJvZHVjZXIgPSBPYnNlcnZlLmVtcHR5KCk7XG4gICAgaWYgKG9wdGlvbnMuZm9ybUdsb2JzWzBdID09PSBcIipcIikge1xuICAgICAgICByZXNvdXJjZXNFeHRlcm5hbENvbnZlcnRlcnNDaGFpbiA9IE9ic2VydmUuZmlsZXMocGF0aC5qb2luKGZhcm1EaXJlY3RvcnksIFwiZXh0ZXJuYWxDb252ZXJ0ZXJzXCIpLCBcIioueHNsdFwiKS5kbyhcbiAgICAgICAgICAgIHggPT5cbiAgICAgICAgICAgICAgICBGU1Rhc2suY29weVJlY3Vyc2l2ZWx5KFxuICAgICAgICAgICAgICAgICAgICBnZXRMb2dnZXIoKS53aXRoUHJlZml4KFwiRVhURVJOQUwtQ09OVkVSVEVSU1wiKSxcbiAgICAgICAgICAgICAgICAgICAgeCxcbiAgICAgICAgICAgICAgICAgICAgcGF0aC5qb2luKHJlc291cmNlc0RpcmVjdG9yeSwgXCJjb252ZXJ0ZXJzXCIpXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IGJ1aWxkRm9ybXNDaGFpbiA9IE9ic2VydmUuZml4ZWRGb3JtRGlyZWN0b3JpZXMoZm9ybUdsb2JzLm1hcCh4ID0+IHguZm9ybVBhdGgpKS5zcGxpdFRvUGFyYWxsZWxDaGFpbnMoXG4gICAgICAgIHggPT4geCxcbiAgICAgICAgeCA9PiB4LFxuICAgICAgICBhc3luYyBmb3JtUmVsYXRpdmVQYXRoID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGdmdiA9IGV4dHJhY3RHZnZGcm9tRm9ybVBhdGgoZm9ybVJlbGF0aXZlUGF0aCk7XG4gICAgICAgICAgICBjb25zdCBmb3JtRGlyUGF0aCA9IHBhdGguam9pbihyZXBvc2l0b3J5Um9vdCwgZm9ybVJlbGF0aXZlUGF0aCk7XG4gICAgICAgICAgICBjb25zdCBmb3JtU2NoZW1hc0RpclBhdGggPSBwYXRoLmpvaW4oZm9ybURpclBhdGgsIFwic2NoZW1hc1wiKTtcbiAgICAgICAgICAgIGNvbnN0IHJuZ1NjaGVtYU1hc2sgPSBgKiR7Z2V0Um5nU2NoZW1hRmlsZW5hbWUoZm9ybVNjaGVtYXNEaXJQYXRoLCBnZnYpfWA7XG5cbiAgICAgICAgICAgIHJldHVybiBPYnNlcnZlLmZpbGUocGF0aC5qb2luKGZvcm1EaXJQYXRoLCBXZWxsS25vd25EaXJlY3Rvcmllcy5Gb3JtSnNvbkZpbGVOYW1lKSlcbiAgICAgICAgICAgICAgICAudHJhbnNmb3JtKGZvcm1Kc29uRmlsZSA9PiByZXNvbHZlRm9ybUluZm8oZm9ybUpzb25GaWxlLCBmb3JtRGlyUGF0aCwgZW5naW5lRGlyZWN0b3J5KSlcbiAgICAgICAgICAgICAgICAudHJhbnNmb3JtKGFzeW5jIHggPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgLi4ueCxcbiAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdG9yU291cmNlOiByZXNvbHZlTG9jYWxHZW5lcmF0b3JTb3VyY2UoZW5naW5lRGlyZWN0b3J5KSxcbiAgICAgICAgICAgICAgICAgICAgZW5naW5lU291cmNlOiByZXNvbHZlTG9jYWxFbmdpbmVTb3VyY2UoZW5naW5lRGlyZWN0b3J5KSxcbiAgICAgICAgICAgICAgICB9KSlcbiAgICAgICAgICAgICAgICAuYXR0YWNoKFxuICAgICAgICAgICAgICAgICAgICBhc3luYyBmaSA9PiBnZW5lcmF0b3JGYWN0b3J5KGZpLmdlbmVyYXRvclNvdXJjZSwgY2FuZHlNb2R1bGVzRGlyZWN0b3J5LCBmYWxzZSwgdW5kZWZpbmVkKSxcbiAgICAgICAgICAgICAgICAgICAgYXN5bmMgKGZpLCB5KSA9PiAoeyAuLi5maSwgZ2VuZXJhdG9yOiB5IH0pLFxuICAgICAgICAgICAgICAgICAgICBhc3luYyBmaSA9PiBnZXRHZW5lcmF0b3JTb3VyY2VLZXkoZmkuZ2VuZXJhdG9yU291cmNlKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAuYXR0YWNoKGFzeW5jIGZpID0+XG4gICAgICAgICAgICAgICAgICAgIE9ic2VydmUuZmlsZXMoXG4gICAgICAgICAgICAgICAgICAgICAgICBmaS5mb3JtU291cmNlc1BhdGgsXG4gICAgICAgICAgICAgICAgICAgICAgICBcIi4uLy4uL2NvbnRyb2xzLyoqLypcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIFwic2NoZW1hcy8qKi8qXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBcInN1Z2FyLyoqLypcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiY29udHJvbHMvKiovKlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJhdXRvY2FsYy8qKi8qXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBcImhlbHBlcnMvKiovKlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJ2YWxpZGF0aW9ucy8qKi8qXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBcImxvY2FsaXphdGlvbi8qKi8qXCJcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAudHJhbnNmb3JtKGFzeW5jIGZpID0+ICh7XG4gICAgICAgICAgICAgICAgICAgIC4uLmZpLFxuICAgICAgICAgICAgICAgICAgICBkZXBlbmRlbmNpZXNIYXNoOiBhd2FpdCBmaS5nZW5lcmF0b3IuZ2V0QWxsRGVwZW5kZW5jaWVzSGFzaChcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1EaXJQYXRoLFxuICAgICAgICAgICAgICAgICAgICAgICAgZmFybURpcmVjdG9yeSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGhsRmFybURpcmVjdG9yeVBhdGhcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICB9KSlcbiAgICAgICAgICAgICAgICAuZG8oYXN5bmMgZmkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAob3B0aW9ucy5za2lwR2VuZXJhdGlvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZ2VuZXJhdGVGb3JtKFxuICAgICAgICAgICAgICAgICAgICAgICAgZmkuZm9ybVNvdXJjZXNQYXRoLFxuICAgICAgICAgICAgICAgICAgICAgICAgZmFybURpcmVjdG9yeSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGhsRmFybURpcmVjdG9yeVBhdGgsXG4gICAgICAgICAgICAgICAgICAgICAgICBmaS5nZW5lcmF0b3IsXG4gICAgICAgICAgICAgICAgICAgICAgICB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2tpcENvZGVSZWZvcm1hdHRpbmc6IG9wdGlvbnMuc2tpcEdlbmVyYXRlZENvZGVSZWZvcm1hdHRpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzb3VyY2VzSGFzaDogZmkuZGVwZW5kZW5jaWVzSGFzaCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC5hdHRhY2goYXN5bmMgZmkgPT4gT2JzZXJ2ZS5maWxlcyhwYXRoLmpvaW4oZm9ybURpclBhdGgsIFwiZm9ybVwiKSwgXCIqKi8qXCIpKVxuICAgICAgICAgICAgICAgIC5kbyhmaSA9PlxuICAgICAgICAgICAgICAgICAgICBjb21waWxlRm9ybShcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpLmZvcm1OYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgZmkudGhlbWVzLFxuICAgICAgICAgICAgICAgICAgICAgICAgZmFybURpcmVjdG9yeSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1EaXJQYXRoLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb3VyY2VzRGlyZWN0b3J5LFxuICAgICAgICAgICAgICAgICAgICAgICAgZmkuZGVwZW5kZW5jaWVzSGFzaCxcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnMuYnVpbGREZWJ1Z09ubHlcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAuZG8oZmkgPT4gd3JpdGVGTGFuZ05vcm1hbGl6YXRpb25GaWxlcyhmaS5mb3JtTmFtZSwgZmFybURpcmVjdG9yeSwgZm9ybURpclBhdGgsIHJlc291cmNlc0RpcmVjdG9yeSkpXG4gICAgICAgICAgICAgICAgLmRvKGZpID0+IHdyaXRlQXR0YWNobWVudFBhdGhGaWxlcyhmaS5mb3JtTmFtZSwgZmFybURpcmVjdG9yeSwgZm9ybURpclBhdGgsIHJlc291cmNlc0RpcmVjdG9yeSkpXG4gICAgICAgICAgICAgICAgLmRvKGZpID0+IHdyaXRlRm9ybU1ldGEocmVzb3VyY2VzRGlyZWN0b3J5LCBnZnYsIGZpLmVuZ2luZVNvdXJjZSwgZmkuZGVwZW5kZW5jaWVzSGFzaCwgZmkudGhlbWVzKSlcbiAgICAgICAgICAgICAgICAuYXR0YWNoKGFzeW5jIGZpID0+XG4gICAgICAgICAgICAgICAgICAgIE9ic2VydmUuZmlsZXMocGF0aC5qb2luKGZpLmZvcm1Tb3VyY2VzUGF0aCwgXCJzY2hlbWFzXCIpLCBybmdTY2hlbWFNYXNrKS5kbyh4ID0+XG4gICAgICAgICAgICAgICAgICAgICAgICBGU1Rhc2suY29weVJlY3Vyc2l2ZWx5KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldExvZ2dlcigpLndpdGhQcmVmaXgoXCJTQ0hFTUFTXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aC5qb2luKHJlc291cmNlc0RpcmVjdG9yeSwgXCJzY2hlbWFzXCIpXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgLmF0dGFjaChhc3luYyBmaSA9PlxuICAgICAgICAgICAgICAgICAgICBPYnNlcnZlLmZpbGVzKHBhdGguam9pbihmaS5mb3JtU291cmNlc1BhdGgsIFwiY29udmVydGVyc1wiKSwgXCIqXCIpLmRvKHggPT5cbiAgICAgICAgICAgICAgICAgICAgICAgIEZTVGFzay5jb3B5UmVjdXJzaXZlbHkoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0TG9nZ2VyKCkud2l0aFByZWZpeChcIkNPTlZFUlRFUlNcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoLmpvaW4ocmVzb3VyY2VzRGlyZWN0b3J5LCBcImNvbnZlcnRlcnNcIilcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAuYXR0YWNoKGFzeW5jIGZpID0+XG4gICAgICAgICAgICAgICAgICAgIE9ic2VydmUuZmlsZXMocGF0aC5qb2luKGZpLmZvcm1Tb3VyY2VzUGF0aCwgXCJtZXJnZXJzXCIpLCBcIipcIikuZG8oeCA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgRlNUYXNrLmNvcHlSZWN1cnNpdmVseShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRMb2dnZXIoKS53aXRoUHJlZml4KFwiTUVSR0VSU1wiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB4LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGguam9pbihyZXNvdXJjZXNEaXJlY3RvcnksIFwibWVyZ2Vyc1wiKVxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIC5hdHRhY2goYXN5bmMgZmkgPT5cbiAgICAgICAgICAgICAgICAgICAgT2JzZXJ2ZS5maWxlcyhwYXRoLmpvaW4oZmkuZm9ybVNvdXJjZXNQYXRoLCBcIm5vcm1hbGl6ZVwiKSwgXCIqLnhtbFwiKS5kbyh4ID0+XG4gICAgICAgICAgICAgICAgICAgICAgICBGU1Rhc2suY29weVJlY3Vyc2l2ZWx5KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldExvZ2dlcigpLndpdGhQcmVmaXgoXCJOT1JNQUxJWkVcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoLmpvaW4ocmVzb3VyY2VzRGlyZWN0b3J5LCBcIm5vcm1hbGl6ZVwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIC5hdHRhY2goYXN5bmMgZmkgPT5cbiAgICAgICAgICAgICAgICAgICAgT2JzZXJ2ZS5maWxlcyhwYXRoLmpvaW4oZmkuZm9ybVNvdXJjZXNQYXRoLCBcInBhdGNoXCIpLCBcIioueHNsdFwiKS5kbyh4ID0+XG4gICAgICAgICAgICAgICAgICAgICAgICBGU1Rhc2suY29weVJlY3Vyc2l2ZWx5KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldExvZ2dlcigpLndpdGhQcmVmaXgoXCJQQVRDSFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB4LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGguam9pbihyZXNvdXJjZXNEaXJlY3RvcnksIFwicGF0Y2hcIilcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAuYXR0YWNoKGFzeW5jIGZpID0+XG4gICAgICAgICAgICAgICAgICAgIE9ic2VydmUuZmlsZXMocGF0aC5qb2luKGZpLmZvcm1Tb3VyY2VzUGF0aCwgXCJtYXBcIiksIFwiKi54bWxcIikuZG8oeCA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgRlNUYXNrLmNvcHlSZWN1cnNpdmVseShnZXRMb2dnZXIoKS53aXRoUHJlZml4KFwiTUFQXCIpLCB4LCBwYXRoLmpvaW4ocmVzb3VyY2VzRGlyZWN0b3J5LCBcIm1hcFwiKSlcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAuYXR0YWNoKGFzeW5jIGZpID0+XG4gICAgICAgICAgICAgICAgICAgIE9ic2VydmUuZmlsZXMocGF0aC5qb2luKGZpLmZvcm1Tb3VyY2VzUGF0aCwgXCJ1bm1hcFwiKSwgXCIqLnhtbFwiKS5kbyh4ID0+XG4gICAgICAgICAgICAgICAgICAgICAgICBGU1Rhc2suY29weVJlY3Vyc2l2ZWx5KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldExvZ2dlcigpLndpdGhQcmVmaXgoXCJVTk1BUFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB4LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGguam9pbihyZXNvdXJjZXNEaXJlY3RvcnksIFwidW5tYXBcIilcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICApO1xuXG4gICAgaWYgKGRldkJ1aWxkT3B0aW9ucy53YXRjaCkge1xuICAgICAgICBjb25zdCBzdG9wT2JzZXJ2ZTEgPSBhd2FpdCBidWlsZEVuZ2luZUNoYWluLm9ic2VydmUoKTtcbiAgICAgICAgY29uc3Qgc3RvcE9ic2VydmUyID0gYXdhaXQgYnVpbGRDbGllbnRKc0NoYWluLm9ic2VydmUoKTtcbiAgICAgICAgY29uc3Qgc3RvcE9ic2VydmUzID0gYXdhaXQgc3RhdGljUmVzb3VyY2VzQ2hhaW4ub2JzZXJ2ZSgpO1xuICAgICAgICBjb25zdCBzdG9wT2JzZXJ2ZTQgPSBhd2FpdCBidWlsZEZvcm1zQ2hhaW4ub2JzZXJ2ZSgpO1xuICAgICAgICBjb25zdCBzdG9wT2JzZXJ2ZTUgPSBhd2FpdCBwaWNrTGlzdHNDaGFpbi5vYnNlcnZlKCk7XG4gICAgICAgIGNvbnN0IHN0b3BPYnNlcnZlNiA9IGF3YWl0IHJlc291cmNlc0V4dGVybmFsQ29udmVydGVyc0NoYWluLm9ic2VydmUoKTtcblxuICAgICAgICBhd2FpdCBjb250ZXh0LndhaXRGb3JFeGl0KCk7XG5cbiAgICAgICAgYXdhaXQgc3RvcE9ic2VydmUxKCk7XG4gICAgICAgIGF3YWl0IHN0b3BPYnNlcnZlMigpO1xuICAgICAgICBhd2FpdCBzdG9wT2JzZXJ2ZTMoKTtcbiAgICAgICAgYXdhaXQgc3RvcE9ic2VydmU0KCk7XG4gICAgICAgIGF3YWl0IHN0b3BPYnNlcnZlNSgpO1xuICAgICAgICBhd2FpdCBzdG9wT2JzZXJ2ZTYoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBzdGFydERhdGUgPSBEYXRlLm5vdygpO1xuICAgICAgICBhd2FpdCBQcm9taXNlLmFsbChbXG4gICAgICAgICAgICBidWlsZEVuZ2luZUNoYWluLmN1cnJlbnRWYWx1ZSxcbiAgICAgICAgICAgIGJ1aWxkQ2xpZW50SnNDaGFpbi5jdXJyZW50VmFsdWUsXG4gICAgICAgICAgICBzdGF0aWNSZXNvdXJjZXNDaGFpbi5jdXJyZW50VmFsdWUsXG4gICAgICAgICAgICByZXNvdXJjZXNFeHRlcm5hbENvbnZlcnRlcnNDaGFpbi5jdXJyZW50VmFsdWUsXG4gICAgICAgICAgICAoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IHBpY2tMaXN0c0NoYWluLmN1cnJlbnRWYWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgYXdhaXQgYnVpbGRGb3Jtc0NoYWluLmN1cnJlbnRWYWx1ZTtcbiAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmNvbnRpbnVlT25FcnJvcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dC5sb2dnZXIuZXJyb3IoZSk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSkoKSxcbiAgICAgICAgXSk7XG4gICAgICAgIGNvbnN0IHRvdGFsVGltZSA9IERhdGUubm93KCkgLSBzdGFydERhdGU7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgIGNvbnNvbGUubG9nKGAke2NoYWxrLmdyZWVuQnJpZ2h0KFwiQnVpbGQgc3VjY2Vzc1wiKX0gVG90YWwgdGltZTogJHtwcmludFRpbWUodG90YWxUaW1lKX1gKTtcbiAgICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxJQUFBQSxLQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBQyxNQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBRSxrQkFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcscUJBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLHFCQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxZQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxhQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyw2QkFBQSxHQUFBUCxPQUFBO0FBQ0EsSUFBQVEsT0FBQSxHQUFBUixPQUFBO0FBQ0EsSUFBQVMscUJBQUEsR0FBQVQsT0FBQTtBQUNBLElBQUFVLHNCQUFBLEdBQUFWLE9BQUE7QUFDQSxJQUFBVyxnQkFBQSxHQUFBWCxPQUFBO0FBQ0EsSUFBQVksY0FBQSxHQUFBWixPQUFBO0FBRUEsSUFBQWEsZUFBQSxHQUFBYixPQUFBO0FBQ0EsSUFBQWMsYUFBQSxHQUFBZCxPQUFBO0FBQ0EsSUFBQWUsUUFBQSxHQUFBZixPQUFBO0FBQ0EsSUFBQWdCLFlBQUEsR0FBQWhCLE9BQUE7QUFDQSxJQUFBaUIseUJBQUEsR0FBQWpCLE9BQUE7QUFHQSxJQUFBa0IscUJBQUEsR0FBQWxCLE9BQUE7QUFDQSxJQUFB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
106
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcGF0aCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX2NoYWxrIiwiX0J1aWxkQ2xpZW50SnNUYXNrIiwiX0J1aWxkTG9jYWxFbmdpbmVUYXNrIiwiX0VuZ2luZVN0cnVjdHVyZVV0aWxzIiwiX0NvbXBpbGVGb3JtIiwiX0dlbmVyYXRlRm9ybSIsIl9Xcml0ZUZMYW5nTm9ybWFsaXphdGlvbkZpbGVzIiwiX0ZTVGFzayIsIl9BY3F1aXJlRm9ybUdlbmVyYXRvciIsIl9QdWJsaXNoZWRWZXJzaW9uVXRpbHMiLCJfUmVzb2x2ZUZvcm1JbmZvIiwiX1dyaXRlRm9ybU1ldGEiLCJfRm9ybUdsb2JzVXRpbHMiLCJfU3RhdGljTG9nZ2VyIiwiX09ic2VydmUiLCJfVGltaW5nVXRpbHMiLCJfV3JpdGVBdHRhY2htZW50UGF0aEZpbGVzIiwiX2dldFJuZ1NjaGVtYUZpbGVuYW1lIiwiX0Zvcm1QYXRoVXRpbHMiLCJfV2VsbEtub3duRGlyZWN0b3JpZXMiLCJydW5EZXZCdWlsZCIsImNvbnRleHQiLCJvcHRpb25zIiwiZW5naW5lRGlyZWN0b3J5IiwicmVzb3VyY2VzRGlyZWN0b3J5IiwiZmFybURpcmVjdG9yeSIsImNhbmR5TW9kdWxlc0RpcmVjdG9yeSIsImhsRmFybURpcmVjdG9yeVBhdGgiLCJkZXZCdWlsZE9wdGlvbnMiLCJlbmdpbmVXZWJwYWNrQ29uZmlnVGFzayIsImNyZWF0ZUVuZ2luZVdlYnBhY2tDb25maWdUYXNrIiwiYnVpbGRFbmdpbmVDaGFpbiIsImNoYWluV2l0aCIsInAiLCJCdWlsZExvY2FsRW5naW5lVGFzayIsImJ1aWxkRGVidWdPbmx5IiwiY2xpZW50V2VicGFja0NvbmZpZ1Rhc2siLCJjcmVhdGVDbGllbnRXZWJwYWNrQ29uZmlnVGFzayIsImJ1aWxkQ2xpZW50SnNDaGFpbiIsIkJ1aWxkQ2xpZW50SnNUYXNrIiwic3RhdGljUmVzb3VyY2VzQ2hhaW4iLCJPYnNlcnZlIiwiZmlsZXMiLCJwYXRoIiwiam9pbiIsIl9fZGlybmFtZSIsImRvIiwieCIsIkZTVGFzayIsImNvcHlSZWN1cnNpdmVseSIsImdldExvZ2dlciIsIndpdGhQcmVmaXgiLCJwaWNrTGlzdHNDaGFpbiIsImxvZ2dlciIsInJlcG9zaXRvcnlSb290IiwiRm9ybUdsb2JzIiwiZW5zdXJlRWFjaEdsb2JSZXNvbHZlc0ludG9FeGlzdGluZ0Zvcm0iLCJmb3JtR2xvYnMiLCJmb3JtSW5mb3MiLCJyZXNvbHZlR2Z2R2xvYnMiLCJyZXNvdXJjZXNFeHRlcm5hbENvbnZlcnRlcnNDaGFpbiIsImVtcHR5IiwiYnVpbGRGb3Jtc0NoYWluIiwiZml4ZWRGb3JtRGlyZWN0b3JpZXMiLCJtYXAiLCJyZWxhdGl2ZSIsImZvcm1QYXRoIiwic3BsaXRUb1BhcmFsbGVsQ2hhaW5zIiwiZm9ybVJlbGF0aXZlUGF0aCIsImdmdiIsImV4dHJhY3RHZnZGcm9tRm9ybVBhdGgiLCJmb3JtRGlyUGF0aCIsImZvcm1TY2hlbWFzRGlyUGF0aCIsInJuZ1NjaGVtYU1hc2siLCJnZXRSbmdTY2hlbWFGaWxlbmFtZSIsImZpbGUiLCJXZWxsS25vd25EaXJlY3RvcmllcyIsIkZvcm1Kc29uRmlsZU5hbWUiLCJ0cmFuc2Zvcm0iLCJmb3JtSnNvbkZpbGUiLCJyZXNvbHZlRm9ybUluZm8iLCJnZW5lcmF0b3JTb3VyY2UiLCJyZXNvbHZlTG9jYWxHZW5lcmF0b3JTb3VyY2UiLCJlbmdpbmVTb3VyY2UiLCJyZXNvbHZlTG9jYWxFbmdpbmVTb3VyY2UiLCJhdHRhY2giLCJmaSIsImdlbmVyYXRvckZhY3RvcnkiLCJ1bmRlZmluZWQiLCJ5IiwiZ2VuZXJhdG9yIiwiZ2V0R2VuZXJhdG9yU291cmNlS2V5IiwiZm9ybVNvdXJjZXNQYXRoIiwiZGVwZW5kZW5jaWVzSGFzaCIsImdldEFsbERlcGVuZGVuY2llc0hhc2giLCJza2lwR2VuZXJhdGlvbiIsImdlbmVyYXRlRm9ybSIsInNraXBDb2RlUmVmb3JtYXR0aW5nIiwic2tpcEdlbmVyYXRlZENvZGVSZWZvcm1hdHRpbmciLCJyZXNvdXJjZXNIYXNoIiwiY29tcGlsZUZvcm0iLCJmb3JtTmFtZSIsInRoZW1lcyIsIndyaXRlRkxhbmdOb3JtYWxpemF0aW9uRmlsZXMiLCJ3cml0ZUF0dGFjaG1lbnRQYXRoRmlsZXMiLCJ3cml0ZUZvcm1NZXRhIiwid2F0Y2giLCJzdG9wT2JzZXJ2ZTEiLCJvYnNlcnZlIiwic3RvcE9ic2VydmUyIiwic3RvcE9ic2VydmUzIiwic3RvcE9ic2VydmU0Iiwic3RvcE9ic2VydmU1Iiwic3RvcE9ic2VydmU2Iiwid2FpdEZvckV4aXQiLCJzdGFydERhdGUiLCJEYXRlIiwibm93IiwiUHJvbWlzZSIsImFsbCIsImN1cnJlbnRWYWx1ZSIsImUiLCJjb250aW51ZU9uRXJyb3IiLCJlcnJvciIsInRvdGFsVGltZSIsImNvbnNvbGUiLCJsb2ciLCJjaGFsayIsImdyZWVuQnJpZ2h0IiwicHJpbnRUaW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL0NMSUNvbW1hbmRzL0RldkJ1aWxkL1J1bkRldkJ1aWxkLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCI7XG5cbmltcG9ydCBjaGFsayBmcm9tIFwiY2hhbGtcIjtcblxuaW1wb3J0IHsgQnVpbGRDbGllbnRKc1Rhc2sgfSBmcm9tIFwiLi4vLi4vQnVpbGRUYXNrcy9DbGllbnRKUy9CdWlsZENsaWVudEpzVGFza1wiO1xuaW1wb3J0IHsgQnVpbGRMb2NhbEVuZ2luZVRhc2sgfSBmcm9tIFwiLi4vLi4vQnVpbGRUYXNrcy9FbmdpbmUvQnVpbGRMb2NhbEVuZ2luZVRhc2tcIjtcbmltcG9ydCB7IGNyZWF0ZUNsaWVudFdlYnBhY2tDb25maWdUYXNrLCBjcmVhdGVFbmdpbmVXZWJwYWNrQ29uZmlnVGFzayB9IGZyb20gXCIuLi8uLi9CdWlsZFRhc2tzL0VuZ2luZVN0cnVjdHVyZVV0aWxzXCI7XG5pbXBvcnQgeyBjb21waWxlRm9ybSB9IGZyb20gXCIuLi8uLi9CdWlsZFRhc2tzL0Zvcm0vQ29tcGlsZUZvcm1cIjtcbmltcG9ydCB7IGdlbmVyYXRlRm9ybSB9IGZyb20gXCIuLi8uLi9CdWlsZFRhc2tzL0Zvcm0vR2VuZXJhdGVGb3JtXCI7XG5pbXBvcnQgeyB3cml0ZUZMYW5nTm9ybWFsaXphdGlvbkZpbGVzIH0gZnJvbSBcIi4uLy4uL0J1aWxkVGFza3MvRm9ybS9Xcml0ZUZMYW5nTm9ybWFsaXphdGlvbkZpbGVzXCI7XG5pbXBvcnQgeyBGU1Rhc2sgfSBmcm9tIFwiLi4vLi4vQnVpbGRUYXNrcy9GU1Rhc2tcIjtcbmltcG9ydCB7IGdlbmVyYXRvckZhY3RvcnksIGdldEdlbmVyYXRvclNvdXJjZUtleSB9IGZyb20gXCIuLi8uLi9CdWlsZFRhc2tzL0dlbmVyYXRvci9BY3F1aXJlRm9ybUdlbmVyYXRvclwiO1xuaW1wb3J0IHsgcmVzb2x2ZUxvY2FsRW5naW5lU291cmNlLCByZXNvbHZlTG9jYWxHZW5lcmF0b3JTb3VyY2UgfSBmcm9tIFwiLi4vLi4vQnVpbGRUYXNrcy9QdWJsaXNoZWRWZXJzaW9uVXRpbHNcIjtcbmltcG9ydCB7IHJlc29sdmVGb3JtSW5mbyB9IGZyb20gXCIuLi8uLi9CdWlsZFRhc2tzL1Jlc29sdmVGb3JtSW5mb1wiO1xuaW1wb3J0IHsgd3JpdGVGb3JtTWV0YSB9IGZyb20gXCIuLi8uLi9CdWlsZFRhc2tzL1dyaXRlRm9ybU1ldGFcIjtcbmltcG9ydCB7IENvbnNvbGVBcHBsaWNhdGlvbkNvbnRleHQgfSBmcm9tIFwiLi4vLi4vQ29tbW9ucy9Db25zb2xlQXBwbGljYXRpb24vQ29uc29sZUFwcGxpY2F0aW9uQ29udGV4dFwiO1xuaW1wb3J0IHsgRm9ybUdsb2JzIH0gZnJvbSBcIi4uLy4uL0NvbW1vbnMvRm9ybUdsb2JzVXRpbHNcIjtcbmltcG9ydCB7IGdldExvZ2dlciB9IGZyb20gXCIuLi8uLi9Db21tb25zL0xvZ2dpbmcvU3RhdGljTG9nZ2VyXCI7XG5pbXBvcnQgeyBPYnNlcnZlIH0gZnJvbSBcIi4uLy4uL0NvbW1vbnMvVGFza3NDb3JlL09ic2VydmVcIjtcbmltcG9ydCB7IHByaW50VGltZSB9IGZyb20gXCIuLi8uLi9Db21tb25zL1RpbWluZ1V0aWxzXCI7XG5pbXBvcnQgeyB3cml0ZUF0dGFjaG1lbnRQYXRoRmlsZXMgfSBmcm9tIFwiLi4vLi4vQnVpbGRUYXNrcy9Gb3JtL1dyaXRlQXR0YWNobWVudFBhdGhGaWxlc1wiO1xuaW1wb3J0IHsgQ2hhaW5hYmxlVmFsdWVQcm9kdWNlciB9IGZyb20gXCIuLi8uLi9Db21tb25zL1Rhc2tzQ29yZS9DaGFpbmFibGVWYWx1ZVByb2R1Y2VyXCI7XG5pbXBvcnQgeyBFbXB0eVByb2R1Y2VyIH0gZnJvbSBcIi4uLy4uL0NvbW1vbnMvVGFza3NDb3JlL0VtcHR5UHJvZHVjZXJcIjtcbmltcG9ydCB7IGdldFJuZ1NjaGVtYUZpbGVuYW1lIH0gZnJvbSBcIi4uLy4uLy4uLy4uL0NvbW1vbi9nZXRSbmdTY2hlbWFGaWxlbmFtZVwiO1xuaW1wb3J0IHsgZXh0cmFjdEdmdkZyb21Gb3JtUGF0aCB9IGZyb20gXCIuLi8uLi8uLi8uLi9Db21tb24vRm9ybVBhdGhVdGlsc1wiO1xuaW1wb3J0IHsgV2VsbEtub3duRGlyZWN0b3JpZXMgfSBmcm9tIFwiLi4vLi4vLi4vLi4vQ29tbW9uL1dlbGxLbm93bkRpcmVjdG9yaWVzXCI7XG5cbmltcG9ydCB7IERldmVsb3BtZW50QnVpbGRPcHRpb25zIH0gZnJvbSBcIi4vRGV2QnVpbGRPcHRpb25zXCI7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBydW5EZXZCdWlsZChcbiAgICBjb250ZXh0OiBDb25zb2xlQXBwbGljYXRpb25Db250ZXh0LFxuICAgIG9wdGlvbnM6IERldmVsb3BtZW50QnVpbGRPcHRpb25zLFxuICAgIGVuZ2luZURpcmVjdG9yeTogc3RyaW5nLFxuICAgIHJlc291cmNlc0RpcmVjdG9yeTogc3RyaW5nLFxuICAgIGZhcm1EaXJlY3Rvcnk6IHN0cmluZyxcbiAgICBjYW5keU1vZHVsZXNEaXJlY3Rvcnk6IHN0cmluZyxcbiAgICBobEZhcm1EaXJlY3RvcnlQYXRoOiBzdHJpbmdcbik6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGRldkJ1aWxkT3B0aW9ucyA9IG9wdGlvbnM7XG5cbiAgICBjb25zdCBlbmdpbmVXZWJwYWNrQ29uZmlnVGFzayA9IGF3YWl0IGNyZWF0ZUVuZ2luZVdlYnBhY2tDb25maWdUYXNrKGVuZ2luZURpcmVjdG9yeSk7XG4gICAgY29uc3QgYnVpbGRFbmdpbmVDaGFpbiA9IGVuZ2luZVdlYnBhY2tDb25maWdUYXNrLmNoYWluV2l0aChcbiAgICAgICAgcCA9PiBuZXcgQnVpbGRMb2NhbEVuZ2luZVRhc2socCwgcmVzb3VyY2VzRGlyZWN0b3J5LCBvcHRpb25zLmJ1aWxkRGVidWdPbmx5KVxuICAgICk7XG5cbiAgICBjb25zdCBjbGllbnRXZWJwYWNrQ29uZmlnVGFzayA9IGF3YWl0IGNyZWF0ZUNsaWVudFdlYnBhY2tDb25maWdUYXNrKGVuZ2luZURpcmVjdG9yeSk7XG4gICAgY29uc3QgYnVpbGRDbGllbnRKc0NoYWluID0gY2xpZW50V2VicGFja0NvbmZpZ1Rhc2suY2hhaW5XaXRoKHAgPT4gbmV3IEJ1aWxkQ2xpZW50SnNUYXNrKHAsIHJlc291cmNlc0RpcmVjdG9yeSkpO1xuXG4gICAgY29uc3Qgc3RhdGljUmVzb3VyY2VzQ2hhaW4gPSBPYnNlcnZlLmZpbGVzKFxuICAgICAgICBwYXRoLmpvaW4oX19kaXJuYW1lLCBcIi4uXCIsIFwiLi5cIiwgXCJTdGF0aWNGaWxlc0ZvclJlc291cmNlc0RpclwiKSxcbiAgICAgICAgXCIqLmpzXCJcbiAgICApLmRvKHggPT5cbiAgICAgICAgRlNUYXNrLmNvcHlSZWN1cnNpdmVseShnZXRMb2dnZXIoKS53aXRoUHJlZml4KFwiU1RBVElDU1wiKSwgeCwgcGF0aC5qb2luKHJlc291cmNlc0RpcmVjdG9yeSwgXCJwdWJsaWNcIiwgXCJzY3JpcHRzXCIpKVxuICAgICk7XG5cbiAgICBjb25zdCBwaWNrTGlzdHNDaGFpbiA9IE9ic2VydmUuZmlsZXMocGF0aC5qb2luKGZhcm1EaXJlY3RvcnksIFwicGlja2xpc3RzXCIpLCBcIiouanNvblwiKS5kbyh4ID0+XG4gICAgICAgIEZTVGFzay5jb3B5UmVjdXJzaXZlbHkoY29udGV4dC5sb2dnZXIud2l0aFByZWZpeChcIlBJQ0tMSVNUU1wiKSwgeCwgcGF0aC5qb2luKHJlc291cmNlc0RpcmVjdG9yeSwgXCJwaWNrbGlzdHNcIikpXG4gICAgKTtcblxuICAgIGNvbnN0IHJlcG9zaXRvcnlSb290ID0gcGF0aC5qb2luKGZhcm1EaXJlY3RvcnksIFwiLi5cIik7XG4gICAgYXdhaXQgRm9ybUdsb2JzLmVuc3VyZUVhY2hHbG9iUmVzb2x2ZXNJbnRvRXhpc3RpbmdGb3JtKG9wdGlvbnMuZm9ybUdsb2JzLCBmYXJtRGlyZWN0b3J5KTtcbiAgICBjb25zdCBmb3JtSW5mb3MgPSBhd2FpdCBGb3JtR2xvYnMucmVzb2x2ZUdmdkdsb2JzKG9wdGlvbnMuZm9ybUdsb2JzLCBmYXJtRGlyZWN0b3J5KTtcblxuICAgIC8qKiDQmtC+0L3QstC10YDRgtC10YDRiyDQvtC/0LjRgdC4INC00LvRjyDRhNC+0YDQvCwg0LrQvtGC0L7RgNGL0LUg0L/QvtC60LAg0L3QtSDRgNC10LDQu9C40LfQvtCy0LDQvdGLINC90LAg0LrQtdC90LTQuCwg0YHQsNC80LAg0LzQtdGF0LDQvdC40LrQsCDQvtC/0LjRgdC4INC/0LXRgNC10L3QtdGB0LXQvdCwINCyINGE0L7RgNC80Ysg0LIg0LrQtdC90LTQuCDQsNC/0LgsINC/0L7RjdGC0L7QvNGDINC+0L3QuCDQtNC+0LvQttC90Ysg0LHRi9GC0Ywg0LIgY2FuZHkucmVzb3VyY2VzXG4gICAgICogINCg0LXQsNC70LjQt9GD0LXRgtGB0Y8g0YLQvtC70YzQutC+INC/0YDQuCDQvtCx0YnQtdC8INCx0LjQu9C00LUg0YTQvtGA0Lw6IGNhbmR5IGJ1aWxkICpcbiAgICAgKiAqL1xuICAgIGxldCByZXNvdXJjZXNFeHRlcm5hbENvbnZlcnRlcnNDaGFpbjogQ2hhaW5hYmxlVmFsdWVQcm9kdWNlcjxzdHJpbmc+IHwgRW1wdHlQcm9kdWNlciA9IE9ic2VydmUuZW1wdHkoKTtcbiAgICBpZiAob3B0aW9ucy5mb3JtR2xvYnNbMF0gPT09IFwiKlwiKSB7XG4gICAgICAgIHJlc291cmNlc0V4dGVybmFsQ29udmVydGVyc0NoYWluID0gT2JzZXJ2ZS5maWxlcyhwYXRoLmpvaW4oZmFybURpcmVjdG9yeSwgXCJleHRlcm5hbENvbnZlcnRlcnNcIiksIFwiKi54c2x0XCIpLmRvKFxuICAgICAgICAgICAgeCA9PlxuICAgICAgICAgICAgICAgIEZTVGFzay5jb3B5UmVjdXJzaXZlbHkoXG4gICAgICAgICAgICAgICAgICAgIGdldExvZ2dlcigpLndpdGhQcmVmaXgoXCJFWFRFUk5BTC1DT05WRVJURVJTXCIpLFxuICAgICAgICAgICAgICAgICAgICB4LFxuICAgICAgICAgICAgICAgICAgICBwYXRoLmpvaW4ocmVzb3VyY2VzRGlyZWN0b3J5LCBcImNvbnZlcnRlcnNcIilcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc3QgYnVpbGRGb3Jtc0NoYWluID0gT2JzZXJ2ZS5maXhlZEZvcm1EaXJlY3RvcmllcyhcbiAgICAgICAgZm9ybUluZm9zLm1hcCh4ID0+IHBhdGgucmVsYXRpdmUocmVwb3NpdG9yeVJvb3QsIHguZm9ybVBhdGgpKVxuICAgICkuc3BsaXRUb1BhcmFsbGVsQ2hhaW5zKFxuICAgICAgICB4ID0+IHgsXG4gICAgICAgIHggPT4geCxcbiAgICAgICAgYXN5bmMgZm9ybVJlbGF0aXZlUGF0aCA9PiB7XG4gICAgICAgICAgICBjb25zdCBnZnYgPSBleHRyYWN0R2Z2RnJvbUZvcm1QYXRoKGZvcm1SZWxhdGl2ZVBhdGgpO1xuICAgICAgICAgICAgY29uc3QgZm9ybURpclBhdGggPSBwYXRoLmpvaW4ocmVwb3NpdG9yeVJvb3QsIGZvcm1SZWxhdGl2ZVBhdGgpO1xuICAgICAgICAgICAgY29uc3QgZm9ybVNjaGVtYXNEaXJQYXRoID0gcGF0aC5qb2luKGZvcm1EaXJQYXRoLCBcInNjaGVtYXNcIik7XG4gICAgICAgICAgICBjb25zdCBybmdTY2hlbWFNYXNrID0gYCoke2dldFJuZ1NjaGVtYUZpbGVuYW1lKGZvcm1TY2hlbWFzRGlyUGF0aCwgZ2Z2KX1gO1xuXG4gICAgICAgICAgICByZXR1cm4gT2JzZXJ2ZS5maWxlKHBhdGguam9pbihmb3JtRGlyUGF0aCwgV2VsbEtub3duRGlyZWN0b3JpZXMuRm9ybUpzb25GaWxlTmFtZSkpXG4gICAgICAgICAgICAgICAgLnRyYW5zZm9ybShmb3JtSnNvbkZpbGUgPT4gcmVzb2x2ZUZvcm1JbmZvKGZvcm1Kc29uRmlsZSwgZm9ybURpclBhdGgsIGVuZ2luZURpcmVjdG9yeSkpXG4gICAgICAgICAgICAgICAgLnRyYW5zZm9ybShhc3luYyB4ID0+ICh7XG4gICAgICAgICAgICAgICAgICAgIC4uLngsXG4gICAgICAgICAgICAgICAgICAgIGdlbmVyYXRvclNvdXJjZTogcmVzb2x2ZUxvY2FsR2VuZXJhdG9yU291cmNlKGVuZ2luZURpcmVjdG9yeSksXG4gICAgICAgICAgICAgICAgICAgIGVuZ2luZVNvdXJjZTogcmVzb2x2ZUxvY2FsRW5naW5lU291cmNlKGVuZ2luZURpcmVjdG9yeSksXG4gICAgICAgICAgICAgICAgfSkpXG4gICAgICAgICAgICAgICAgLmF0dGFjaChcbiAgICAgICAgICAgICAgICAgICAgYXN5bmMgZmkgPT4gZ2VuZXJhdG9yRmFjdG9yeShmaS5nZW5lcmF0b3JTb3VyY2UsIGNhbmR5TW9kdWxlc0RpcmVjdG9yeSwgZmFsc2UsIHVuZGVmaW5lZCksXG4gICAgICAgICAgICAgICAgICAgIGFzeW5jIChmaSwgeSkgPT4gKHsgLi4uZmksIGdlbmVyYXRvcjogeSB9KSxcbiAgICAgICAgICAgICAgICAgICAgYXN5bmMgZmkgPT4gZ2V0R2VuZXJhdG9yU291cmNlS2V5KGZpLmdlbmVyYXRvclNvdXJjZSlcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgLmF0dGFjaChhc3luYyBmaSA9PlxuICAgICAgICAgICAgICAgICAgICBPYnNlcnZlLmZpbGVzKFxuICAgICAgICAgICAgICAgICAgICAgICAgZmkuZm9ybVNvdXJjZXNQYXRoLFxuICAgICAgICAgICAgICAgICAgICAgICAgXCIuLi8uLi9jb250cm9scy8qKi8qXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBcInNjaGVtYXMvKiovKlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJzdWdhci8qKi8qXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBcImNvbnRyb2xzLyoqLypcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiYXV0b2NhbGMvKiovKlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJoZWxwZXJzLyoqLypcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIFwidmFsaWRhdGlvbnMvKiovKlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJsb2NhbGl6YXRpb24vKiovKlwiXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgLnRyYW5zZm9ybShhc3luYyBmaSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAuLi5maSxcbiAgICAgICAgICAgICAgICAgICAgZGVwZW5kZW5jaWVzSGFzaDogYXdhaXQgZmkuZ2VuZXJhdG9yLmdldEFsbERlcGVuZGVuY2llc0hhc2goXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtRGlyUGF0aCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZhcm1EaXJlY3RvcnksXG4gICAgICAgICAgICAgICAgICAgICAgICBobEZhcm1EaXJlY3RvcnlQYXRoXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgfSkpXG4gICAgICAgICAgICAgICAgLmRvKGFzeW5jIGZpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMuc2tpcEdlbmVyYXRpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGdlbmVyYXRlRm9ybShcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpLmZvcm1Tb3VyY2VzUGF0aCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZhcm1EaXJlY3RvcnksXG4gICAgICAgICAgICAgICAgICAgICAgICBobEZhcm1EaXJlY3RvcnlQYXRoLFxuICAgICAgICAgICAgICAgICAgICAgICAgZmkuZ2VuZXJhdG9yLFxuICAgICAgICAgICAgICAgICAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNraXBDb2RlUmVmb3JtYXR0aW5nOiBvcHRpb25zLnNraXBHZW5lcmF0ZWRDb2RlUmVmb3JtYXR0aW5nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc291cmNlc0hhc2g6IGZpLmRlcGVuZGVuY2llc0hhc2gsXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAuYXR0YWNoKGFzeW5jIGZpID0+IE9ic2VydmUuZmlsZXMocGF0aC5qb2luKGZvcm1EaXJQYXRoLCBcImZvcm1cIiksIFwiKiovKlwiKSlcbiAgICAgICAgICAgICAgICAuZG8oZmkgPT5cbiAgICAgICAgICAgICAgICAgICAgY29tcGlsZUZvcm0oXG4gICAgICAgICAgICAgICAgICAgICAgICBmaS5mb3JtTmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpLnRoZW1lcyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZhcm1EaXJlY3RvcnksXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtRGlyUGF0aCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc291cmNlc0RpcmVjdG9yeSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpLmRlcGVuZGVuY2llc0hhc2gsXG4gICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zLmJ1aWxkRGVidWdPbmx5XG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgLmRvKGZpID0+IHdyaXRlRkxhbmdOb3JtYWxpemF0aW9uRmlsZXMoZmkuZm9ybU5hbWUsIGZhcm1EaXJlY3RvcnksIGZvcm1EaXJQYXRoLCByZXNvdXJjZXNEaXJlY3RvcnkpKVxuICAgICAgICAgICAgICAgIC5kbyhmaSA9PiB3cml0ZUF0dGFjaG1lbnRQYXRoRmlsZXMoZmkuZm9ybU5hbWUsIGZhcm1EaXJlY3RvcnksIGZvcm1EaXJQYXRoLCByZXNvdXJjZXNEaXJlY3RvcnkpKVxuICAgICAgICAgICAgICAgIC5kbyhmaSA9PiB3cml0ZUZvcm1NZXRhKHJlc291cmNlc0RpcmVjdG9yeSwgZ2Z2LCBmaS5lbmdpbmVTb3VyY2UsIGZpLmRlcGVuZGVuY2llc0hhc2gsIGZpLnRoZW1lcykpXG4gICAgICAgICAgICAgICAgLmF0dGFjaChhc3luYyBmaSA9PlxuICAgICAgICAgICAgICAgICAgICBPYnNlcnZlLmZpbGVzKHBhdGguam9pbihmaS5mb3JtU291cmNlc1BhdGgsIFwic2NoZW1hc1wiKSwgcm5nU2NoZW1hTWFzaykuZG8oeCA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgRlNUYXNrLmNvcHlSZWN1cnNpdmVseShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRMb2dnZXIoKS53aXRoUHJlZml4KFwiU0NIRU1BU1wiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB4LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGguam9pbihyZXNvdXJjZXNEaXJlY3RvcnksIFwic2NoZW1hc1wiKVxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIC5hdHRhY2goYXN5bmMgZmkgPT5cbiAgICAgICAgICAgICAgICAgICAgT2JzZXJ2ZS5maWxlcyhwYXRoLmpvaW4oZmkuZm9ybVNvdXJjZXNQYXRoLCBcImNvbnZlcnRlcnNcIiksIFwiKlwiKS5kbyh4ID0+XG4gICAgICAgICAgICAgICAgICAgICAgICBGU1Rhc2suY29weVJlY3Vyc2l2ZWx5KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldExvZ2dlcigpLndpdGhQcmVmaXgoXCJDT05WRVJURVJTXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aC5qb2luKHJlc291cmNlc0RpcmVjdG9yeSwgXCJjb252ZXJ0ZXJzXCIpXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgLmF0dGFjaChhc3luYyBmaSA9PlxuICAgICAgICAgICAgICAgICAgICBPYnNlcnZlLmZpbGVzKHBhdGguam9pbihmaS5mb3JtU291cmNlc1BhdGgsIFwibWVyZ2Vyc1wiKSwgXCIqXCIpLmRvKHggPT5cbiAgICAgICAgICAgICAgICAgICAgICAgIEZTVGFzay5jb3B5UmVjdXJzaXZlbHkoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0TG9nZ2VyKCkud2l0aFByZWZpeChcIk1FUkdFUlNcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoLmpvaW4ocmVzb3VyY2VzRGlyZWN0b3J5LCBcIm1lcmdlcnNcIilcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAuYXR0YWNoKGFzeW5jIGZpID0+XG4gICAgICAgICAgICAgICAgICAgIE9ic2VydmUuZmlsZXMocGF0aC5qb2luKGZpLmZvcm1Tb3VyY2VzUGF0aCwgXCJub3JtYWxpemVcIiksIFwiKi54bWxcIikuZG8oeCA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgRlNUYXNrLmNvcHlSZWN1cnNpdmVseShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRMb2dnZXIoKS53aXRoUHJlZml4KFwiTk9STUFMSVpFXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aC5qb2luKHJlc291cmNlc0RpcmVjdG9yeSwgXCJub3JtYWxpemVcIilcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAuYXR0YWNoKGFzeW5jIGZpID0+XG4gICAgICAgICAgICAgICAgICAgIE9ic2VydmUuZmlsZXMocGF0aC5qb2luKGZpLmZvcm1Tb3VyY2VzUGF0aCwgXCJwYXRjaFwiKSwgXCIqLnhzbHRcIikuZG8oeCA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgRlNUYXNrLmNvcHlSZWN1cnNpdmVseShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRMb2dnZXIoKS53aXRoUHJlZml4KFwiUEFUQ0hcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoLmpvaW4ocmVzb3VyY2VzRGlyZWN0b3J5LCBcInBhdGNoXCIpXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgLmF0dGFjaChhc3luYyBmaSA9PlxuICAgICAgICAgICAgICAgICAgICBPYnNlcnZlLmZpbGVzKHBhdGguam9pbihmaS5mb3JtU291cmNlc1BhdGgsIFwibWFwXCIpLCBcIioueG1sXCIpLmRvKHggPT5cbiAgICAgICAgICAgICAgICAgICAgICAgIEZTVGFzay5jb3B5UmVjdXJzaXZlbHkoZ2V0TG9nZ2VyKCkud2l0aFByZWZpeChcIk1BUFwiKSwgeCwgcGF0aC5qb2luKHJlc291cmNlc0RpcmVjdG9yeSwgXCJtYXBcIikpXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgLmF0dGFjaChhc3luYyBmaSA9PlxuICAgICAgICAgICAgICAgICAgICBPYnNlcnZlLmZpbGVzKHBhdGguam9pbihmaS5mb3JtU291cmNlc1BhdGgsIFwidW5tYXBcIiksIFwiKi54bWxcIikuZG8oeCA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgRlNUYXNrLmNvcHlSZWN1cnNpdmVseShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRMb2dnZXIoKS53aXRoUHJlZml4KFwiVU5NQVBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoLmpvaW4ocmVzb3VyY2VzRGlyZWN0b3J5LCBcInVubWFwXCIpXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgKTtcblxuICAgIGlmIChkZXZCdWlsZE9wdGlvbnMud2F0Y2gpIHtcbiAgICAgICAgY29uc3Qgc3RvcE9ic2VydmUxID0gYXdhaXQgYnVpbGRFbmdpbmVDaGFpbi5vYnNlcnZlKCk7XG4gICAgICAgIGNvbnN0IHN0b3BPYnNlcnZlMiA9IGF3YWl0IGJ1aWxkQ2xpZW50SnNDaGFpbi5vYnNlcnZlKCk7XG4gICAgICAgIGNvbnN0IHN0b3BPYnNlcnZlMyA9IGF3YWl0IHN0YXRpY1Jlc291cmNlc0NoYWluLm9ic2VydmUoKTtcbiAgICAgICAgY29uc3Qgc3RvcE9ic2VydmU0ID0gYXdhaXQgYnVpbGRGb3Jtc0NoYWluLm9ic2VydmUoKTtcbiAgICAgICAgY29uc3Qgc3RvcE9ic2VydmU1ID0gYXdhaXQgcGlja0xpc3RzQ2hhaW4ub2JzZXJ2ZSgpO1xuICAgICAgICBjb25zdCBzdG9wT2JzZXJ2ZTYgPSBhd2FpdCByZXNvdXJjZXNFeHRlcm5hbENvbnZlcnRlcnNDaGFpbi5vYnNlcnZlKCk7XG5cbiAgICAgICAgYXdhaXQgY29udGV4dC53YWl0Rm9yRXhpdCgpO1xuXG4gICAgICAgIGF3YWl0IHN0b3BPYnNlcnZlMSgpO1xuICAgICAgICBhd2FpdCBzdG9wT2JzZXJ2ZTIoKTtcbiAgICAgICAgYXdhaXQgc3RvcE9ic2VydmUzKCk7XG4gICAgICAgIGF3YWl0IHN0b3BPYnNlcnZlNCgpO1xuICAgICAgICBhd2FpdCBzdG9wT2JzZXJ2ZTUoKTtcbiAgICAgICAgYXdhaXQgc3RvcE9ic2VydmU2KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3Qgc3RhcnREYXRlID0gRGF0ZS5ub3coKTtcbiAgICAgICAgYXdhaXQgUHJvbWlzZS5hbGwoW1xuICAgICAgICAgICAgYnVpbGRFbmdpbmVDaGFpbi5jdXJyZW50VmFsdWUsXG4gICAgICAgICAgICBidWlsZENsaWVudEpzQ2hhaW4uY3VycmVudFZhbHVlLFxuICAgICAgICAgICAgc3RhdGljUmVzb3VyY2VzQ2hhaW4uY3VycmVudFZhbHVlLFxuICAgICAgICAgICAgcmVzb3VyY2VzRXh0ZXJuYWxDb252ZXJ0ZXJzQ2hhaW4uY3VycmVudFZhbHVlLFxuICAgICAgICAgICAgKGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICBhd2FpdCBwaWNrTGlzdHNDaGFpbi5jdXJyZW50VmFsdWU7XG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IGJ1aWxkRm9ybXNDaGFpbi5jdXJyZW50VmFsdWU7XG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAob3B0aW9ucy5jb250aW51ZU9uRXJyb3IpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQubG9nZ2VyLmVycm9yKGUpO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pKCksXG4gICAgICAgIF0pO1xuICAgICAgICBjb25zdCB0b3RhbFRpbWUgPSBEYXRlLm5vdygpIC0gc3RhcnREYXRlO1xuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICAgICAgICBjb25zb2xlLmxvZyhgJHtjaGFsay5ncmVlbkJyaWdodChcIkJ1aWxkIHN1Y2Nlc3NcIil9IFRvdGFsIHRpbWU6ICR7cHJpbnRUaW1lKHRvdGFsVGltZSl9YCk7XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsS0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsTUFBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUUsa0JBQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLHFCQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxxQkFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssWUFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sYUFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sNkJBQUEsR0FBQVAsT0FBQTtBQUNBLElBQUFRLE9BQUEsR0FBQVIsT0FBQTtBQUNBLElBQUFTLHFCQUFBLEdBQUFULE9BQUE7QUFDQSxJQUFBVSxzQkFBQSxHQUFBVixPQUFBO0FBQ0EsSUFBQVcsZ0JBQUEsR0FBQVgsT0FBQTtBQUNBLElBQUFZLGNBQUEsR0FBQVosT0FBQTtBQUVBLElBQUFhLGVBQUEsR0FBQWIsT0FBQTtBQUNBLElBQUFjLGFBQUEsR0FBQWQsT0FBQTtBQUNBLElBQUFlLFFBQUEsR0FBQWYsT0FBQTtBQUNBLElBQUFnQixZQUFBLEdBQUFoQixPQUFB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
@@ -47,4 +47,4 @@ async function runFormStats(context, options, farmDirectory) {
47
47
  context.logger.log(` ${gfvs.join(", ")}`);
48
48
  }
49
49
  }
50
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcGF0aCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX1Jlc29sdmVGb3JtSW5mbyIsIl9Gb3JtR2xvYnNVdGlscyIsIl9JdGVyYWJsZVV0aWxzIiwiX1dlbGxLbm93bkRpcmVjdG9yaWVzIiwicnVuRm9ybVN0YXRzIiwiY29udGV4dCIsIm9wdGlvbnMiLCJmYXJtRGlyZWN0b3J5IiwiRm9ybUdsb2JzIiwiZW5zdXJlRWFjaEdsb2JSZXNvbHZlc0ludG9FeGlzdGluZ0Zvcm0iLCJmb3JtR2xvYnMiLCJyZXNvbHZlU3BlY2lmaWVycyIsImVuZ2luZVRvR2Z2TWFwIiwiZ2Z2IiwiZm9ybVBhdGgiLCJyZXNvbHZlR2Z2R2xvYnMiLCJfZW5naW5lVG9HZnZNYXAkZW5naW4iLCJfZW5naW5lVG9HZnZNYXAkZW5naW4yIiwiZm9ybUpzb25Db250ZW50IiwicmVhZEZvcm1Db25maWciLCJwYXRoIiwiam9pbiIsIldlbGxLbm93bkRpcmVjdG9yaWVzIiwiRm9ybUpzb25GaWxlTmFtZSIsImxvZ2dlciIsImVuZ2luZUJyYW5jaCIsIm1vZGUiLCJfZm9ybUpzb25Db250ZW50JGRlcGUiLCJfZm9ybUpzb25Db250ZW50JGRlcGUyIiwiZGVwZW5kZW5jaWVzIiwiZW5naW5lIiwicHVzaCIsImUiLCJlbmdpbmVHZnZzIiwiaXRlcmF0ZUVudHJpZXMiLCJsb2ciLCJsZW5ndGgiLCJnZnZzIiwiT2JqZWN0IiwiZW50cmllcyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9DTElDb21tYW5kcy9Gb3JtU3RhdHMvUnVuRm9ybVN0YXRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCI7XG5cbmltcG9ydCB7IHJlYWRGb3JtQ29uZmlnIH0gZnJvbSBcIi4uLy4uL0J1aWxkVGFza3MvUmVzb2x2ZUZvcm1JbmZvXCI7XG5pbXBvcnQgeyBDb25zb2xlQXBwbGljYXRpb25Db250ZXh0IH0gZnJvbSBcIi4uLy4uL0NvbW1vbnMvQ29uc29sZUFwcGxpY2F0aW9uL0NvbnNvbGVBcHBsaWNhdGlvbkNvbnRleHRcIjtcbmltcG9ydCB7IEZvcm1HbG9icyB9IGZyb20gXCIuLi8uLi9Db21tb25zL0Zvcm1HbG9ic1V0aWxzXCI7XG5pbXBvcnQgeyBpdGVyYXRlRW50cmllcyB9IGZyb20gXCIuLi8uLi8uLi8uLi9Db21tb24vSXRlcmFibGVVdGlsc1wiO1xuXG5pbXBvcnQgeyBGb3JtU3RhdHNPcHRpb25zIH0gZnJvbSBcIi4vRm9ybVN0YXRzT3B0aW9uc1wiO1xuaW1wb3J0IHsgV2VsbEtub3duRGlyZWN0b3JpZXMgfSBmcm9tIFwiLi4vLi4vLi4vLi4vQ29tbW9uL1dlbGxLbm93bkRpcmVjdG9yaWVzXCI7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBydW5Gb3JtU3RhdHMoXG4gICAgY29udGV4dDogQ29uc29sZUFwcGxpY2F0aW9uQ29udGV4dCxcbiAgICBvcHRpb25zOiBGb3JtU3RhdHNPcHRpb25zLFxuICAgIGZhcm1EaXJlY3Rvcnk6IHN0cmluZ1xuKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgRm9ybUdsb2JzLmVuc3VyZUVhY2hHbG9iUmVzb2x2ZXNJbnRvRXhpc3RpbmdGb3JtKG9wdGlvbnMuZm9ybUdsb2JzLCBmYXJtRGlyZWN0b3J5KTtcbiAgICBjb25zdCBmb3JtR2xvYnMgPSBhd2FpdCBGb3JtR2xvYnMucmVzb2x2ZVNwZWNpZmllcnMob3B0aW9ucy5mb3JtR2xvYnMsIGZhcm1EaXJlY3RvcnkpO1xuXG4gICAgY29uc3QgZW5naW5lVG9HZnZNYXA6IFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPiA9IHt9O1xuICAgIGZvciAoY29uc3QgeyBnZnYsIGZvcm1QYXRoIH0gb2YgYXdhaXQgRm9ybUdsb2JzLnJlc29sdmVHZnZHbG9icyhmb3JtR2xvYnMsIGZhcm1EaXJlY3RvcnkpKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBmb3JtSnNvbkNvbnRlbnQgPSBhd2FpdCByZWFkRm9ybUNvbmZpZyhcbiAgICAgICAgICAgICAgICBwYXRoLmpvaW4oZm9ybVBhdGgsIFdlbGxLbm93bkRpcmVjdG9yaWVzLkZvcm1Kc29uRmlsZU5hbWUpLFxuICAgICAgICAgICAgICAgIGNvbnRleHQubG9nZ2VyXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgbGV0IGVuZ2luZUJyYW5jaDogc3RyaW5nO1xuICAgICAgICAgICAgaWYgKGZvcm1Kc29uQ29udGVudC5tb2RlID09PSBcImNvcHktbGVnYWN5LXByZWJ1aWx0LXJlc291cmNlc1wiKSB7XG4gICAgICAgICAgICAgICAgZW5naW5lQnJhbmNoID0gXCJMZWdhY3lDb3B5UHJlYnVpbHRcIjtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoZm9ybUpzb25Db250ZW50Lm1vZGUgPT09IFwibm8tZWRpdG9yXCIpIHtcbiAgICAgICAgICAgICAgICBlbmdpbmVCcmFuY2ggPSBcIk5vRWRpdG9yXCI7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGVuZ2luZUJyYW5jaCA9IGZvcm1Kc29uQ29udGVudC5kZXBlbmRlbmNpZXM/LmVuZ2luZSA/PyBcIlVua25vd25cIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVuZ2luZVRvR2Z2TWFwW2VuZ2luZUJyYW5jaF0gPSBlbmdpbmVUb0dmdk1hcFtlbmdpbmVCcmFuY2hdID8/IFtdO1xuICAgICAgICAgICAgZW5naW5lVG9HZnZNYXBbZW5naW5lQnJhbmNoXT8ucHVzaChnZnYpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICBlbmdpbmVUb0dmdk1hcFtcIlVua25vd25cIl0gPSBlbmdpbmVUb0dmdk1hcFtcIlVua25vd25cIl0gfHwgW107XG4gICAgICAgICAgICBlbmdpbmVUb0dmdk1hcFtcIlVua25vd25cIl0ucHVzaChnZnYpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBbZW5naW5lLCBlbmdpbmVHZnZzXSBvZiBpdGVyYXRlRW50cmllcyhlbmdpbmVUb0dmdk1hcCkpIHtcbiAgICAgICAgY29udGV4dC5sb2dnZXIubG9nKGVuZ2luZSk7XG4gICAgICAgIGNvbnRleHQubG9nZ2VyLmxvZyhgICAke2VuZ2luZUdmdnMubGVuZ3RofSBmb3Jtc2ApO1xuICAgIH1cbiAgICBjb250ZXh0LmxvZ2dlci5sb2coXCJcIik7XG4gICAgZm9yIChjb25zdCBbZW5naW5lLCBnZnZzXSBvZiBPYmplY3QuZW50cmllcyhlbmdpbmVUb0dmdk1hcCkpIHtcbiAgICAgICAgY29udGV4dC5sb2dnZXIubG9nKGVuZ2luZSk7XG4gICAgICAgIGNvbnRleHQubG9nZ2VyLmxvZyhgICAke2dmdnMuam9pbihcIiwgXCIpfWApO1xuICAgIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLEtBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLGdCQUFBLEdBQUFELE9BQUE7QUFFQSxJQUFBRSxlQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxjQUFBLEdBQUFILE9BQUE7QUFHQSxJQUFBSSxxQkFBQSxHQUFBSixPQUFBO0FBRU8sZUFBZUssWUFBWUEsQ0FDOUJDLE9BQWtDLEVBQ2xDQyxPQUF5QixFQUN6QkMsYUFBcUIsRUFDUjtFQUNiLE1BQU1DLHlCQUFTLENBQUNDLHNDQUFzQyxDQUFDSCxPQUFPLENBQUNJLFNBQVMsRUFBRUgsYUFBYSxDQUFDO0VBQ3hGLE1BQU1HLFNBQVMsR0FBRyxNQUFNRix5QkFBUyxDQUFDRyxpQkFBaUIsQ0FBQ0wsT0FBTyxDQUFDSSxTQUFTLEVBQUVILGFBQWEsQ0FBQztFQUVyRixNQUFNSyxjQUF3QyxHQUFHLENBQUMsQ0FBQztFQUNuRCxLQUFLLE1BQU07SUFBRUMsR0FBRztJQUFFQztFQUFTLENBQUMsSUFBSSxNQUFNTix5QkFBUyxDQUFDTyxlQUFlLENBQUNMLFNBQVMsRUFBRUgsYUFBYSxDQUFDLEVBQUU7SUFDdkYsSUFBSTtNQUFBLElBQUFTLHFCQUFBLEVBQUFDLHNCQUFBO01BQ0EsTUFBTUMsZUFBZSxHQUFHLE1BQU0sSUFBQUMsK0JBQWMsRUFDeENDLGFBQUksQ0FBQ0MsSUFBSSxDQUFDUCxRQUFRLEVBQUVRLDBDQUFvQixDQUFDQyxnQkFBZ0IsQ0FBQyxFQUMxRGxCLE9BQU8sQ0FBQ21CLE1BQ1osQ0FBQztNQUNELElBQUlDLFlBQW9CO01BQ3hCLElBQUlQLGVBQWUsQ0FBQ1EsSUFBSSxLQUFLLGdDQUFnQyxFQUFFO1FBQzNERCxZQUFZLEdBQUcsb0JBQW9CO01BQ3ZDLENBQUMsTUFBTSxJQUFJUCxlQUFlLENBQUNRLElBQUksS0FBSyxXQUFXLEVBQUU7UUFDN0NELFlBQVksR0FBRyxVQUFVO01BQzdCLENBQUMsTUFBTTtRQUFBLElBQUFFLHFCQUFBLEVBQUFDLHNCQUFBO1FBQ0hILFlBQVksSUFBQUUscUJBQUEsSUFBQUMsc0JBQUEsR0FBR1YsZUFBZSxDQUFDVyxZQUFZLGNBQUFELHNCQUFBLHVCQUE1QkEsc0JBQUEsQ0FBOEJFLE1BQU0sY0FBQUgscUJBQUEsY0FBQUEscUJBQUEsR0FBSSxTQUFTO01BQ3BFO01BQ0FmLGNBQWMsQ0FBQ2EsWUFBWSxDQUFDLElBQUFULHFCQUFBLEdBQUdKLGNBQWMsQ0FBQ2EsWUFBWSxDQUFDLGNBQUFULHFCQUFBLGNBQUFBLHFCQUFBLEdBQUksRUFBRTtNQUNqRSxDQUFBQyxzQkFBQSxHQUFBTCxjQUFjLENBQUNhLFlBQVksQ0FBQyxjQUFBUixzQkFBQSx1QkFBNUJBLHNCQUFBLENBQThCYyxJQUFJLENBQUNsQixHQUFHLENBQUM7SUFDM0MsQ0FBQyxDQUFDLE9BQU9tQixDQUFDLEVBQUU7TUFDUnBCLGNBQWMsQ0FBQyxTQUFTLENBQUMsR0FBR0EsY0FBYyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUU7TUFDM0RBLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQ21CLElBQUksQ0FBQ2xCLEdBQUcsQ0FBQztJQUN2QztFQUNKO0VBRUEsS0FBSyxNQUFNLENBQUNpQixNQUFNLEVBQUVHLFVBQVUsQ0FBQyxJQUFJLElBQUFDLDZCQUFjLEVBQUN0QixjQUFjLENBQUMsRUFBRTtJQUMvRFAsT0FBTyxDQUFDbUIsTUFBTSxDQUFDVyxHQUFHLENBQUNMLE1BQU0sQ0FBQztJQUMxQnpCLE9BQU8sQ0FBQ21CLE1BQU0sQ0FBQ1csR0FBRyxDQUFFLEtBQUlGLFVBQVUsQ0FBQ0csTUFBTyxRQUFPLENBQUM7RUFDdEQ7RUFDQS9CLE9BQU8sQ0FBQ21CLE1BQU0sQ0FBQ1csR0FBRyxDQUFDLEVBQUUsQ0FBQztFQUN0QixLQUFLLE1BQU0sQ0FBQ0wsTUFBTSxFQUFFTyxJQUFJLENBQUMsSUFBSUMsTUFBTSxDQUFDQyxPQUFPLENBQUMzQixjQUFjLENBQUMsRUFBRTtJQUN6RFAsT0FBTyxDQUFDbUIsTUFBTSxDQUFDVyxHQUFHLENBQUNMLE1BQU0sQ0FBQztJQUMxQnpCLE9BQU8sQ0FBQ21CLE1BQU0sQ0FBQ1csR0FBRyxDQUFFLEtBQUlFLElBQUksQ0FBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUUsRUFBQyxDQUFDO0VBQzlDO0FBQ0oifQ==
50
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcGF0aCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX1Jlc29sdmVGb3JtSW5mbyIsIl9Gb3JtR2xvYnNVdGlscyIsIl9JdGVyYWJsZVV0aWxzIiwiX1dlbGxLbm93bkRpcmVjdG9yaWVzIiwicnVuRm9ybVN0YXRzIiwiY29udGV4dCIsIm9wdGlvbnMiLCJmYXJtRGlyZWN0b3J5IiwiRm9ybUdsb2JzIiwiZW5zdXJlRWFjaEdsb2JSZXNvbHZlc0ludG9FeGlzdGluZ0Zvcm0iLCJmb3JtR2xvYnMiLCJyZXNvbHZlU3BlY2lmaWVycyIsImVuZ2luZVRvR2Z2TWFwIiwiZ2Z2IiwiZm9ybVBhdGgiLCJyZXNvbHZlR2Z2R2xvYnMiLCJfZW5naW5lVG9HZnZNYXAkZW5naW4iLCJfZW5naW5lVG9HZnZNYXAkZW5naW4yIiwiZm9ybUpzb25Db250ZW50IiwicmVhZEZvcm1Db25maWciLCJwYXRoIiwiam9pbiIsIldlbGxLbm93bkRpcmVjdG9yaWVzIiwiRm9ybUpzb25GaWxlTmFtZSIsImxvZ2dlciIsImVuZ2luZUJyYW5jaCIsIm1vZGUiLCJfZm9ybUpzb25Db250ZW50JGRlcGUiLCJfZm9ybUpzb25Db250ZW50JGRlcGUyIiwiZGVwZW5kZW5jaWVzIiwiZW5naW5lIiwicHVzaCIsImUiLCJlbmdpbmVHZnZzIiwiaXRlcmF0ZUVudHJpZXMiLCJsb2ciLCJsZW5ndGgiLCJnZnZzIiwiT2JqZWN0IiwiZW50cmllcyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9DTElDb21tYW5kcy9Gb3JtU3RhdHMvUnVuRm9ybVN0YXRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCI7XG5cbmltcG9ydCB7IHJlYWRGb3JtQ29uZmlnIH0gZnJvbSBcIi4uLy4uL0J1aWxkVGFza3MvUmVzb2x2ZUZvcm1JbmZvXCI7XG5pbXBvcnQgeyBDb25zb2xlQXBwbGljYXRpb25Db250ZXh0IH0gZnJvbSBcIi4uLy4uL0NvbW1vbnMvQ29uc29sZUFwcGxpY2F0aW9uL0NvbnNvbGVBcHBsaWNhdGlvbkNvbnRleHRcIjtcbmltcG9ydCB7IEZvcm1HbG9icyB9IGZyb20gXCIuLi8uLi9Db21tb25zL0Zvcm1HbG9ic1V0aWxzXCI7XG5pbXBvcnQgeyBpdGVyYXRlRW50cmllcyB9IGZyb20gXCIuLi8uLi8uLi8uLi9Db21tb24vSXRlcmFibGVVdGlsc1wiO1xuaW1wb3J0IHsgV2VsbEtub3duRGlyZWN0b3JpZXMgfSBmcm9tIFwiLi4vLi4vLi4vLi4vQ29tbW9uL1dlbGxLbm93bkRpcmVjdG9yaWVzXCI7XG5cbmltcG9ydCB7IEZvcm1TdGF0c09wdGlvbnMgfSBmcm9tIFwiLi9Gb3JtU3RhdHNPcHRpb25zXCI7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBydW5Gb3JtU3RhdHMoXG4gICAgY29udGV4dDogQ29uc29sZUFwcGxpY2F0aW9uQ29udGV4dCxcbiAgICBvcHRpb25zOiBGb3JtU3RhdHNPcHRpb25zLFxuICAgIGZhcm1EaXJlY3Rvcnk6IHN0cmluZ1xuKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgRm9ybUdsb2JzLmVuc3VyZUVhY2hHbG9iUmVzb2x2ZXNJbnRvRXhpc3RpbmdGb3JtKG9wdGlvbnMuZm9ybUdsb2JzLCBmYXJtRGlyZWN0b3J5KTtcbiAgICBjb25zdCBmb3JtR2xvYnMgPSBhd2FpdCBGb3JtR2xvYnMucmVzb2x2ZVNwZWNpZmllcnMob3B0aW9ucy5mb3JtR2xvYnMsIGZhcm1EaXJlY3RvcnkpO1xuXG4gICAgY29uc3QgZW5naW5lVG9HZnZNYXA6IFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPiA9IHt9O1xuICAgIGZvciAoY29uc3QgeyBnZnYsIGZvcm1QYXRoIH0gb2YgYXdhaXQgRm9ybUdsb2JzLnJlc29sdmVHZnZHbG9icyhmb3JtR2xvYnMsIGZhcm1EaXJlY3RvcnkpKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBmb3JtSnNvbkNvbnRlbnQgPSBhd2FpdCByZWFkRm9ybUNvbmZpZyhcbiAgICAgICAgICAgICAgICBwYXRoLmpvaW4oZm9ybVBhdGgsIFdlbGxLbm93bkRpcmVjdG9yaWVzLkZvcm1Kc29uRmlsZU5hbWUpLFxuICAgICAgICAgICAgICAgIGNvbnRleHQubG9nZ2VyXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgbGV0IGVuZ2luZUJyYW5jaDogc3RyaW5nO1xuICAgICAgICAgICAgaWYgKGZvcm1Kc29uQ29udGVudC5tb2RlID09PSBcImNvcHktbGVnYWN5LXByZWJ1aWx0LXJlc291cmNlc1wiKSB7XG4gICAgICAgICAgICAgICAgZW5naW5lQnJhbmNoID0gXCJMZWdhY3lDb3B5UHJlYnVpbHRcIjtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoZm9ybUpzb25Db250ZW50Lm1vZGUgPT09IFwibm8tZWRpdG9yXCIpIHtcbiAgICAgICAgICAgICAgICBlbmdpbmVCcmFuY2ggPSBcIk5vRWRpdG9yXCI7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGVuZ2luZUJyYW5jaCA9IGZvcm1Kc29uQ29udGVudC5kZXBlbmRlbmNpZXM/LmVuZ2luZSA/PyBcIlVua25vd25cIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVuZ2luZVRvR2Z2TWFwW2VuZ2luZUJyYW5jaF0gPSBlbmdpbmVUb0dmdk1hcFtlbmdpbmVCcmFuY2hdID8/IFtdO1xuICAgICAgICAgICAgZW5naW5lVG9HZnZNYXBbZW5naW5lQnJhbmNoXT8ucHVzaChnZnYpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICBlbmdpbmVUb0dmdk1hcFtcIlVua25vd25cIl0gPSBlbmdpbmVUb0dmdk1hcFtcIlVua25vd25cIl0gfHwgW107XG4gICAgICAgICAgICBlbmdpbmVUb0dmdk1hcFtcIlVua25vd25cIl0ucHVzaChnZnYpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBbZW5naW5lLCBlbmdpbmVHZnZzXSBvZiBpdGVyYXRlRW50cmllcyhlbmdpbmVUb0dmdk1hcCkpIHtcbiAgICAgICAgY29udGV4dC5sb2dnZXIubG9nKGVuZ2luZSk7XG4gICAgICAgIGNvbnRleHQubG9nZ2VyLmxvZyhgICAke2VuZ2luZUdmdnMubGVuZ3RofSBmb3Jtc2ApO1xuICAgIH1cbiAgICBjb250ZXh0LmxvZ2dlci5sb2coXCJcIik7XG4gICAgZm9yIChjb25zdCBbZW5naW5lLCBnZnZzXSBvZiBPYmplY3QuZW50cmllcyhlbmdpbmVUb0dmdk1hcCkpIHtcbiAgICAgICAgY29udGV4dC5sb2dnZXIubG9nKGVuZ2luZSk7XG4gICAgICAgIGNvbnRleHQubG9nZ2VyLmxvZyhgICAke2dmdnMuam9pbihcIiwgXCIpfWApO1xuICAgIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLEtBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLGdCQUFBLEdBQUFELE9BQUE7QUFFQSxJQUFBRSxlQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxjQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxxQkFBQSxHQUFBSixPQUFBO0FBSU8sZUFBZUssWUFBWUEsQ0FDOUJDLE9BQWtDLEVBQ2xDQyxPQUF5QixFQUN6QkMsYUFBcUIsRUFDUjtFQUNiLE1BQU1DLHlCQUFTLENBQUNDLHNDQUFzQyxDQUFDSCxPQUFPLENBQUNJLFNBQVMsRUFBRUgsYUFBYSxDQUFDO0VBQ3hGLE1BQU1HLFNBQVMsR0FBRyxNQUFNRix5QkFBUyxDQUFDRyxpQkFBaUIsQ0FBQ0wsT0FBTyxDQUFDSSxTQUFTLEVBQUVILGFBQWEsQ0FBQztFQUVyRixNQUFNSyxjQUF3QyxHQUFHLENBQUMsQ0FBQztFQUNuRCxLQUFLLE1BQU07SUFBRUMsR0FBRztJQUFFQztFQUFTLENBQUMsSUFBSSxNQUFNTix5QkFBUyxDQUFDTyxlQUFlLENBQUNMLFNBQVMsRUFBRUgsYUFBYSxDQUFDLEVBQUU7SUFDdkYsSUFBSTtNQUFBLElBQUFTLHFCQUFBLEVBQUFDLHNCQUFBO01BQ0EsTUFBTUMsZUFBZSxHQUFHLE1BQU0sSUFBQUMsK0JBQWMsRUFDeENDLGFBQUksQ0FBQ0MsSUFBSSxDQUFDUCxRQUFRLEVBQUVRLDBDQUFvQixDQUFDQyxnQkFBZ0IsQ0FBQyxFQUMxRGxCLE9BQU8sQ0FBQ21CLE1BQ1osQ0FBQztNQUNELElBQUlDLFlBQW9CO01BQ3hCLElBQUlQLGVBQWUsQ0FBQ1EsSUFBSSxLQUFLLGdDQUFnQyxFQUFFO1FBQzNERCxZQUFZLEdBQUcsb0JBQW9CO01BQ3ZDLENBQUMsTUFBTSxJQUFJUCxlQUFlLENBQUNRLElBQUksS0FBSyxXQUFXLEVBQUU7UUFDN0NELFlBQVksR0FBRyxVQUFVO01BQzdCLENBQUMsTUFBTTtRQUFBLElBQUFFLHFCQUFBLEVBQUFDLHNCQUFBO1FBQ0hILFlBQVksSUFBQUUscUJBQUEsSUFBQUMsc0JBQUEsR0FBR1YsZUFBZSxDQUFDVyxZQUFZLGNBQUFELHNCQUFBLHVCQUE1QkEsc0JBQUEsQ0FBOEJFLE1BQU0sY0FBQUgscUJBQUEsY0FBQUEscUJBQUEsR0FBSSxTQUFTO01BQ3BFO01BQ0FmLGNBQWMsQ0FBQ2EsWUFBWSxDQUFDLElBQUFULHFCQUFBLEdBQUdKLGNBQWMsQ0FBQ2EsWUFBWSxDQUFDLGNBQUFULHFCQUFBLGNBQUFBLHFCQUFBLEdBQUksRUFBRTtNQUNqRSxDQUFBQyxzQkFBQSxHQUFBTCxjQUFjLENBQUNhLFlBQVksQ0FBQyxjQUFBUixzQkFBQSx1QkFBNUJBLHNCQUFBLENBQThCYyxJQUFJLENBQUNsQixHQUFHLENBQUM7SUFDM0MsQ0FBQyxDQUFDLE9BQU9tQixDQUFDLEVBQUU7TUFDUnBCLGNBQWMsQ0FBQyxTQUFTLENBQUMsR0FBR0EsY0FBYyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUU7TUFDM0RBLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQ21CLElBQUksQ0FBQ2xCLEdBQUcsQ0FBQztJQUN2QztFQUNKO0VBRUEsS0FBSyxNQUFNLENBQUNpQixNQUFNLEVBQUVHLFVBQVUsQ0FBQyxJQUFJLElBQUFDLDZCQUFjLEVBQUN0QixjQUFjLENBQUMsRUFBRTtJQUMvRFAsT0FBTyxDQUFDbUIsTUFBTSxDQUFDVyxHQUFHLENBQUNMLE1BQU0sQ0FBQztJQUMxQnpCLE9BQU8sQ0FBQ21CLE1BQU0sQ0FBQ1csR0FBRyxDQUFFLEtBQUlGLFVBQVUsQ0FBQ0csTUFBTyxRQUFPLENBQUM7RUFDdEQ7RUFDQS9CLE9BQU8sQ0FBQ21CLE1BQU0sQ0FBQ1csR0FBRyxDQUFDLEVBQUUsQ0FBQztFQUN0QixLQUFLLE1BQU0sQ0FBQ0wsTUFBTSxFQUFFTyxJQUFJLENBQUMsSUFBSUMsTUFBTSxDQUFDQyxPQUFPLENBQUMzQixjQUFjLENBQUMsRUFBRTtJQUN6RFAsT0FBTyxDQUFDbUIsTUFBTSxDQUFDVyxHQUFHLENBQUNMLE1BQU0sQ0FBQztJQUMxQnpCLE9BQU8sQ0FBQ21CLE1BQU0sQ0FBQ1csR0FBRyxDQUFFLEtBQUlFLElBQUksQ0FBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUUsRUFBQyxDQUFDO0VBQzlDO0FBQ0oifQ==
@@ -1 +1,11 @@
1
- 
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <x:stylesheet version="1.0" xmlns:x="http://www.w3.org/1999/XSL/Transform">
3
+ <x:output indent="yes" encoding="utf-8" />
4
+
5
+ <x:template match="node()|@*">
6
+ <x:copy>
7
+ <x:apply-templates select="@*|node()"/>
8
+ </x:copy>
9
+ </x:template>
10
+
11
+ </x:stylesheet>
@@ -1 +1,11 @@
1
- 
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <x:stylesheet version="1.0" xmlns:x="http://www.w3.org/1999/XSL/Transform">
3
+ <x:output indent="yes" encoding="utf-8" />
4
+
5
+ <x:template match="node()|@*">
6
+ <x:copy>
7
+ <x:apply-templates select="@*|node()"/>
8
+ </x:copy>
9
+ </x:template>
10
+
11
+ </x:stylesheet>
@@ -0,0 +1,11 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <x:stylesheet version="1.0" xmlns:x="http://www.w3.org/1999/XSL/Transform">
3
+ <x:output indent="yes" encoding="utf-8" />
4
+
5
+ <x:template match="node()|@*">
6
+ <x:copy>
7
+ <x:apply-templates select="@*|node()"/>
8
+ </x:copy>
9
+ </x:template>
10
+
11
+ </x:stylesheet>
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.SmokeTest = void 0;
7
7
  var _mochaTypescript = require("mocha-typescript");
8
- var _SmokeTestBases = require("../../../../test/Commons/SmokeTestBases");
8
+ var _SmokeTestBases = require("../../../../../../../candy.farm/test/Commons/SmokeTestBases");
9
9
  var _dec, _class;
10
10
  // tslint:disable-next-line no-unsafe-any
11
11
  let SmokeTest = (_dec = (0, _mochaTypescript.suite)((0, _SmokeTestBases.smokeTestName)(__dirname)), _dec(_class = class SmokeTest extends _SmokeTestBases.SmokeTestBase {
@@ -14,4 +14,4 @@ let SmokeTest = (_dec = (0, _mochaTypescript.suite)((0, _SmokeTestBases.smokeTes
14
14
  }
15
15
  }) || _class);
16
16
  exports.SmokeTest = SmokeTest;
17
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbW9jaGFUeXBlc2NyaXB0IiwicmVxdWlyZSIsIl9TbW9rZVRlc3RCYXNlcyIsIl9kZWMiLCJfY2xhc3MiLCJTbW9rZVRlc3QiLCJzdWl0ZSIsInNtb2tlVGVzdE5hbWUiLCJfX2Rpcm5hbWUiLCJTbW9rZVRlc3RCYXNlIiwiY29uc3RydWN0b3IiLCJleHRyYWN0R2Z2RnJvbVRlc3RGaWxlTmFtZSIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvQ0xJQ29tbWFuZHMvSW5pdEZvcm0vRW1wdHlGb3JtVGVtcGxhdGUvdGVzdC9icm93c2VyL1Ntb2tlLnRlc3QudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc3VpdGUgfSBmcm9tIFwibW9jaGEtdHlwZXNjcmlwdFwiO1xuXG5pbXBvcnQgeyBleHRyYWN0R2Z2RnJvbVRlc3RGaWxlTmFtZSwgU21va2VUZXN0QmFzZSwgc21va2VUZXN0TmFtZSB9IGZyb20gXCIuLi8uLi8uLi8uLi90ZXN0L0NvbW1vbnMvU21va2VUZXN0QmFzZXNcIjtcblxuLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lIG5vLXVuc2FmZS1hbnlcbkBzdWl0ZShzbW9rZVRlc3ROYW1lKF9fZGlybmFtZSkpXG5leHBvcnQgY2xhc3MgU21va2VUZXN0IGV4dGVuZHMgU21va2VUZXN0QmFzZSB7XG4gICAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcihleHRyYWN0R2Z2RnJvbVRlc3RGaWxlTmFtZShfX2Rpcm5hbWUpKTtcbiAgICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLGdCQUFBLEdBQUFDLE9BQUE7QUFFQSxJQUFBQyxlQUFBLEdBQUFELE9BQUE7QUFBbUgsSUFBQUUsSUFBQSxFQUFBQyxNQUFBO0FBRW5IO0FBQUEsSUFFYUMsU0FBUyxJQUFBRixJQUFBLEdBRHJCLElBQUFHLHNCQUFLLEVBQUMsSUFBQUMsNkJBQWEsRUFBQ0MsU0FBUyxDQUFDLENBQUMsRUFBQUwsSUFBQSxDQUFBQyxNQUFBLEdBQWhDLE1BQ2FDLFNBQVMsU0FBU0ksNkJBQWEsQ0FBQztFQUNsQ0MsV0FBV0EsQ0FBQSxFQUFHO0lBQ2pCLEtBQUssQ0FBQyxJQUFBQywwQ0FBMEIsRUFBQ0gsU0FBUyxDQUFDLENBQUM7RUFDaEQ7QUFDSixDQUFDLEtBQUFKLE1BQUE7QUFBQVEsT0FBQSxDQUFBUCxTQUFBLEdBQUFBLFNBQUEifQ==
17
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbW9jaGFUeXBlc2NyaXB0IiwicmVxdWlyZSIsIl9TbW9rZVRlc3RCYXNlcyIsIl9kZWMiLCJfY2xhc3MiLCJTbW9rZVRlc3QiLCJzdWl0ZSIsInNtb2tlVGVzdE5hbWUiLCJfX2Rpcm5hbWUiLCJTbW9rZVRlc3RCYXNlIiwiY29uc3RydWN0b3IiLCJleHRyYWN0R2Z2RnJvbVRlc3RGaWxlTmFtZSIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvQ0xJQ29tbWFuZHMvSW5pdEZvcm0vRW1wdHlGb3JtVGVtcGxhdGUvdGVzdC9icm93c2VyL1Ntb2tlLnRlc3QudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc3VpdGUgfSBmcm9tIFwibW9jaGEtdHlwZXNjcmlwdFwiO1xuXG5pbXBvcnQgeyBleHRyYWN0R2Z2RnJvbVRlc3RGaWxlTmFtZSwgU21va2VUZXN0QmFzZSwgc21va2VUZXN0TmFtZSB9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jYW5keS5mYXJtL3Rlc3QvQ29tbW9ucy9TbW9rZVRlc3RCYXNlc1wiO1xuXG4vLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW5zYWZlLWFueVxuQHN1aXRlKHNtb2tlVGVzdE5hbWUoX19kaXJuYW1lKSlcbmV4cG9ydCBjbGFzcyBTbW9rZVRlc3QgZXh0ZW5kcyBTbW9rZVRlc3RCYXNlIHtcbiAgICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKGV4dHJhY3RHZnZGcm9tVGVzdEZpbGVOYW1lKF9fZGlybmFtZSkpO1xuICAgIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsZ0JBQUEsR0FBQUMsT0FBQTtBQUVBLElBQUFDLGVBQUEsR0FBQUQsT0FBQTtBQUF1SSxJQUFBRSxJQUFBLEVBQUFDLE1BQUE7QUFFdkk7QUFBQSxJQUVhQyxTQUFTLElBQUFGLElBQUEsR0FEckIsSUFBQUcsc0JBQUssRUFBQyxJQUFBQyw2QkFBYSxFQUFDQyxTQUFTLENBQUMsQ0FBQyxFQUFBTCxJQUFBLENBQUFDLE1BQUEsR0FBaEMsTUFDYUMsU0FBUyxTQUFTSSw2QkFBYSxDQUFDO0VBQ2xDQyxXQUFXQSxDQUFBLEVBQUc7SUFDakIsS0FBSyxDQUFDLElBQUFDLDBDQUEwQixFQUFDSCxTQUFTLENBQUMsQ0FBQztFQUNoRDtBQUNKLENBQUMsS0FBQUosTUFBQTtBQUFBUSxPQUFBLENBQUFQLFNBQUEsR0FBQUEsU0FBQSJ9
@@ -8,7 +8,7 @@ exports.DemoTest = void 0;
8
8
  var _applyDecoratedDescriptor2 = _interopRequireDefault(require("@babel/runtime/helpers/applyDecoratedDescriptor"));
9
9
  var _chai = require("chai");
10
10
  var _mochaTypescript = require("mocha-typescript");
11
- var _CandyFarmUITestBase = require("../../../../test/Commons/CandyFarmUITestBase");
11
+ var _CandyFarmUITestBase = require("../../../../../../../candy.farm/test/Commons/CandyFarmUITestBase");
12
12
  var _class, _class2;
13
13
  let DemoTest = (0, _mochaTypescript.suite)(_class = (_class2 = class DemoTest extends _CandyFarmUITestBase.CandyFarmUITestBase {
14
14
  async before() {
@@ -21,4 +21,4 @@ let DemoTest = (0, _mochaTypescript.suite)(_class = (_class2 = class DemoTest ex
21
21
  }
22
22
  }, ((0, _applyDecoratedDescriptor2.default)(_class2.prototype, "Авторасчёт значения1", [_mochaTypescript.test], Object.getOwnPropertyDescriptor(_class2.prototype, "Авторасчёт значения1"), _class2.prototype)), _class2)) || _class;
23
23
  exports.DemoTest = DemoTest;
24
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY2hhaSIsInJlcXVpcmUiLCJfbW9jaGFUeXBlc2NyaXB0IiwiX0NhbmR5RmFybVVJVGVzdEJhc2UiLCJfY2xhc3MiLCJfY2xhc3MyIiwiRGVtb1Rlc3QiLCJzdWl0ZSIsIkNhbmR5RmFybVVJVGVzdEJhc2UiLCJiZWZvcmUiLCJjcmVhdGVGb3JtIiwidW5kZWZpbmVkIiwi0JDQstGC0L7RgNCw0YHRh9GR0YIg0LfQvdCw0YfQtdC90LjRjzEiLCJmb3JtIiwic2V0VmFsdWVUb0NvbnRyb2wiLCJleHBlY3QiLCJnZXRWYWx1ZUZyb21Db250cm9sIiwidG8iLCJlcWwiLCJfYXBwbHlEZWNvcmF0ZWREZXNjcmlwdG9yMiIsImRlZmF1bHQiLCJwcm90b3R5cGUiLCJ0ZXN0IiwiT2JqZWN0IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9DTElDb21tYW5kcy9Jbml0Rm9ybS9FbXB0eUZvcm1UZW1wbGF0ZS90ZXN0L3VpL0RlbW9UZXN0LnRlc3QudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZXhwZWN0IH0gZnJvbSBcImNoYWlcIjtcbmltcG9ydCB7IHN1aXRlLCB0ZXN0IH0gZnJvbSBcIm1vY2hhLXR5cGVzY3JpcHRcIjtcblxuaW1wb3J0IHsgQ2FuZHlGYXJtVUlUZXN0QmFzZSB9IGZyb20gXCIuLi8uLi8uLi8uLi90ZXN0L0NvbW1vbnMvQ2FuZHlGYXJtVUlUZXN0QmFzZVwiO1xuXG5Ac3VpdGVcbmV4cG9ydCBjbGFzcyBEZW1vVGVzdCBleHRlbmRzIENhbmR5RmFybVVJVGVzdEJhc2Uge1xuICAgIHB1YmxpYyBhc3luYyBiZWZvcmUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGF3YWl0IHRoaXMuY3JlYXRlRm9ybShcIntnZnZ9XCIsIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIHVuZGVmaW5lZCk7XG4gICAgfVxuXG4gICAgQHRlc3RcbiAgICBwdWJsaWMgYXN5bmMgXCLQkNCy0YLQvtGA0LDRgdGH0ZHRgiDQt9C90LDRh9C10L3QuNGPMVwiKCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBhd2FpdCB0aGlzLmZvcm0uc2V0VmFsdWVUb0NvbnRyb2woXCLQpNCw0LnQuy/QlNC+0LrRg9C80LXQvdGCL9CX0L3QsNGH0LXQvdC4ZTFcIiwgXCJzZXRWYWx1ZVwiLCBcIjEwXCIpXG4gICAgICAgIGV4cGVjdChhd2FpdCB0aGlzLmZvcm0uZ2V0VmFsdWVGcm9tQ29udHJvbChcItCk0LDQudC7L9CU0L7QutGD0LzQtdC90YIv0JfQvdCw0YfQtdC90LhlMlwiLCBcImdldFZhbHVlXCIpKS50by5lcWwoXCI5XCIpXG4gICAgICAgIGV4cGVjdChhd2FpdCB0aGlzLmZvcm0uZ2V0VmFsdWVGcm9tQ29udHJvbChcItCk0LDQudC7L9CU0L7QutGD0LzQtdC90YIv0JfQvdCw0YfQtdC90LhlM1wiLCBcImdldFZhbHVlXCIpKS50by5lcWwoXCIxMlwiKVxuICAgIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxJQUFBQSxLQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxnQkFBQSxHQUFBRCxPQUFBO0FBRUEsSUFBQUUsb0JBQUEsR0FBQUYsT0FBQTtBQUFtRixJQUFBRyxNQUFBLEVBQUFDLE9BQUE7QUFBQSxJQUd0RUMsUUFBUSxPQURwQkMsc0JBQUssRUFBQUgsTUFBQSxJQUFBQyxPQUFBLEdBQU4sTUFDYUMsUUFBUSxTQUFTRSx3Q0FBbUIsQ0FBQztFQUM5QyxNQUFhQyxNQUFNQSxDQUFBLEVBQWtCO0lBQ2pDLE1BQU0sSUFBSSxDQUFDQyxVQUFVLENBQUMsT0FBTyxFQUFFQyxTQUFTLEVBQUVBLFNBQVMsRUFBRUEsU0FBUyxFQUFFQSxTQUFTLENBQUM7RUFDOUU7RUFFQSxNQUNhLHNCQUFzQkMsQ0FBQSxFQUFrQjtJQUNqRCxNQUFNLElBQUksQ0FBQ0MsSUFBSSxDQUFDQyxpQkFBaUIsQ0FBQyx5QkFBeUIsRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDO0lBQzlFLElBQUFDLFlBQU0sRUFBQyxNQUFNLElBQUksQ0FBQ0YsSUFBSSxDQUFDRyxtQkFBbUIsQ0FBQyx5QkFBeUIsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDQyxFQUFFLENBQUNDLEdBQUcsQ0FBQyxHQUFHLENBQUM7SUFDOUYsSUFBQUgsWUFBTSxFQUFDLE1BQU0sSUFBSSxDQUFDRixJQUFJLENBQUNHLG1CQUFtQixDQUFDLHlCQUF5QixFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUNDLEVBQUUsQ0FBQ0MsR0FBRyxDQUFDLElBQUksQ0FBQztFQUNuRztBQUNKLENBQUMsT0FBQUMsMEJBQUEsQ0FBQUMsT0FBQSxFQUFBZixPQUFBLENBQUFnQixTQUFBLEVBTGdCLHNCQUFzQixHQURsQ0MscUJBQUksR0FBQUMsTUFBQSxDQUFBQyx3QkFBQSxDQUFBbkIsT0FBQSxDQUFBZ0IsU0FBQSxFQUNRLHNCQUFzQixHQUFBaEIsT0FBQSxDQUFBZ0IsU0FBQSxJQUFBaEIsT0FBQSxNQUFBRCxNQUFBO0FBQUFxQixPQUFBLENBQUFuQixRQUFBLEdBQUFBLFFBQUEifQ==
24
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY2hhaSIsInJlcXVpcmUiLCJfbW9jaGFUeXBlc2NyaXB0IiwiX0NhbmR5RmFybVVJVGVzdEJhc2UiLCJfY2xhc3MiLCJfY2xhc3MyIiwiRGVtb1Rlc3QiLCJzdWl0ZSIsIkNhbmR5RmFybVVJVGVzdEJhc2UiLCJiZWZvcmUiLCJjcmVhdGVGb3JtIiwidW5kZWZpbmVkIiwi0JDQstGC0L7RgNCw0YHRh9GR0YIg0LfQvdCw0YfQtdC90LjRjzEiLCJmb3JtIiwic2V0VmFsdWVUb0NvbnRyb2wiLCJleHBlY3QiLCJnZXRWYWx1ZUZyb21Db250cm9sIiwidG8iLCJlcWwiLCJfYXBwbHlEZWNvcmF0ZWREZXNjcmlwdG9yMiIsImRlZmF1bHQiLCJwcm90b3R5cGUiLCJ0ZXN0IiwiT2JqZWN0IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9DTElDb21tYW5kcy9Jbml0Rm9ybS9FbXB0eUZvcm1UZW1wbGF0ZS90ZXN0L3VpL0RlbW9UZXN0LnRlc3QudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZXhwZWN0IH0gZnJvbSBcImNoYWlcIjtcbmltcG9ydCB7IHN1aXRlLCB0ZXN0IH0gZnJvbSBcIm1vY2hhLXR5cGVzY3JpcHRcIjtcblxuaW1wb3J0IHsgQ2FuZHlGYXJtVUlUZXN0QmFzZSB9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9jYW5keS5mYXJtL3Rlc3QvQ29tbW9ucy9DYW5keUZhcm1VSVRlc3RCYXNlXCI7XG5cbkBzdWl0ZVxuZXhwb3J0IGNsYXNzIERlbW9UZXN0IGV4dGVuZHMgQ2FuZHlGYXJtVUlUZXN0QmFzZSB7XG4gICAgcHVibGljIGFzeW5jIGJlZm9yZSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgYXdhaXQgdGhpcy5jcmVhdGVGb3JtKFwie2dmdn1cIiwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgdW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBAdGVzdFxuICAgIHB1YmxpYyBhc3luYyBcItCQ0LLRgtC+0YDQsNGB0YfRkdGCINC30L3QsNGH0LXQvdC40Y8xXCIoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGF3YWl0IHRoaXMuZm9ybS5zZXRWYWx1ZVRvQ29udHJvbChcItCk0LDQudC7L9CU0L7QutGD0LzQtdC90YIv0JfQvdCw0YfQtdC90LhlMVwiLCBcInNldFZhbHVlXCIsIFwiMTBcIilcbiAgICAgICAgZXhwZWN0KGF3YWl0IHRoaXMuZm9ybS5nZXRWYWx1ZUZyb21Db250cm9sKFwi0KTQsNC50Lsv0JTQvtC60YPQvNC10L3Rgi/Ql9C90LDRh9C10L3QuGUyXCIsIFwiZ2V0VmFsdWVcIikpLnRvLmVxbChcIjlcIilcbiAgICAgICAgZXhwZWN0KGF3YWl0IHRoaXMuZm9ybS5nZXRWYWx1ZUZyb21Db250cm9sKFwi0KTQsNC50Lsv0JTQvtC60YPQvNC10L3Rgi/Ql9C90LDRh9C10L3QuGUzXCIsIFwiZ2V0VmFsdWVcIikpLnRvLmVxbChcIjEyXCIpXG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLEtBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLGdCQUFBLEdBQUFELE9BQUE7QUFFQSxJQUFBRSxvQkFBQSxHQUFBRixPQUFBO0FBQXVHLElBQUFHLE1BQUEsRUFBQUMsT0FBQTtBQUFBLElBRzFGQyxRQUFRLE9BRHBCQyxzQkFBSyxFQUFBSCxNQUFBLElBQUFDLE9BQUEsR0FBTixNQUNhQyxRQUFRLFNBQVNFLHdDQUFtQixDQUFDO0VBQzlDLE1BQWFDLE1BQU1BLENBQUEsRUFBa0I7SUFDakMsTUFBTSxJQUFJLENBQUNDLFVBQVUsQ0FBQyxPQUFPLEVBQUVDLFNBQVMsRUFBRUEsU0FBUyxFQUFFQSxTQUFTLEVBQUVBLFNBQVMsQ0FBQztFQUM5RTtFQUVBLE1BQ2Esc0JBQXNCQyxDQUFBLEVBQWtCO0lBQ2pELE1BQU0sSUFBSSxDQUFDQyxJQUFJLENBQUNDLGlCQUFpQixDQUFDLHlCQUF5QixFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUM7SUFDOUUsSUFBQUMsWUFBTSxFQUFDLE1BQU0sSUFBSSxDQUFDRixJQUFJLENBQUNHLG1CQUFtQixDQUFDLHlCQUF5QixFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUNDLEVBQUUsQ0FBQ0MsR0FBRyxDQUFDLEdBQUcsQ0FBQztJQUM5RixJQUFBSCxZQUFNLEVBQUMsTUFBTSxJQUFJLENBQUNGLElBQUksQ0FBQ0csbUJBQW1CLENBQUMseUJBQXlCLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQ0MsRUFBRSxDQUFDQyxHQUFHLENBQUMsSUFBSSxDQUFDO0VBQ25HO0FBQ0osQ0FBQyxPQUFBQywwQkFBQSxDQUFBQyxPQUFBLEVBQUFmLE9BQUEsQ0FBQWdCLFNBQUEsRUFMZ0Isc0JBQXNCLEdBRGxDQyxxQkFBSSxHQUFBQyxNQUFBLENBQUFDLHdCQUFBLENBQUFuQixPQUFBLENBQUFnQixTQUFBLEVBQ1Esc0JBQXNCLEdBQUFoQixPQUFBLENBQUFnQixTQUFBLElBQUFoQixPQUFBLE1BQUFELE1BQUE7QUFBQXFCLE9BQUEsQ0FBQW5CLFFBQUEsR0FBQUEsUUFBQSJ9
@@ -14,27 +14,40 @@ var _CommandBasedOptionsParser = require("../../Commons/Options/CommandBasedOpti
14
14
  var _WellKnownDirectories = require("../../../../Common/WellKnownDirectories");
15
15
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
16
16
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
17
- async function runInitForm(context, options, farmDirectory) {
17
+ async function runInitForm(context, options) {
18
18
  const logger = context.logger;
19
19
  if (options.gfvs == undefined) {
20
20
  throw new _CommandBasedOptionsParser.InvalidCommandLineArgumentsError("Не указана GVF для создания", "");
21
21
  }
22
+ let repositoryRoot = process.cwd();
22
23
  const templateDir = path.join(__dirname, "EmptyFormTemplate");
24
+ if (path.basename(process.cwd()) === "candy.farm" || path.basename(process.cwd()) === "candy.diadoc.farm" || path.basename(process.cwd()) === "candy.rpn.farm" || path.basename(process.cwd()) === "TestFarm") {
25
+ repositoryRoot = path.normalize(path.join(repositoryRoot, ".."));
26
+ }
27
+ if (!(await (0, _FsUtils.isDirectoryExists)(path.join(repositoryRoot, _WellKnownDirectories.WellKnownDirectories.FormsDirectory)))) {
28
+ throw new Error("Текущая директория не похожа на каталог с исходниками форм");
29
+ }
23
30
  for (const gfv of options.gfvs) {
24
31
  const gfvLogger = logger.withPrefix(gfv);
25
- const farmDirectoryFormPath = path.join(farmDirectory, "forms", gfv);
26
- if (await (0, _fsExtra.pathExists)(farmDirectoryFormPath)) {
32
+ const {
33
+ g,
34
+ f
35
+ } = splitGfv(gfv);
36
+ const formPath = path.join(repositoryRoot, _WellKnownDirectories.WellKnownDirectories.FormsDirectory, g.toString(), f.toString().padStart(3, "0"), gfv.toString(), _WellKnownDirectories.WellKnownDirectories.CandySubdirectoryName);
37
+ if (await (0, _fsExtra.pathExists)(formPath)) {
27
38
  const errorMessage = `Directory for '${gfv}' already exists.`;
28
39
  gfvLogger.error(errorMessage);
29
40
  throw new Error(errorMessage);
30
41
  }
31
42
  const tempOutputDir = path.join(__dirname, ".tmp", gfv);
32
43
  if (await (0, _fsExtra.pathExists)(tempOutputDir)) {
33
- await (0, _fsExtra.rmdir)(tempOutputDir);
44
+ await (0, _fsExtra.rmdir)(tempOutputDir, {
45
+ recursive: true
46
+ });
34
47
  }
35
48
  gfvLogger.log(`Creating directory with sources from template`);
36
49
  await (0, _fsExtra.ensureDir)(tempOutputDir);
37
- const highlanderFarmPath = path.join(farmDirectory, "..", "highlander.farm", "Forms", gfv);
50
+ const highlanderFarmPath = path.join(repositoryRoot, "highlander.farm", "Forms", gfv);
38
51
  const hlRngPath1 = path.join(highlanderFarmPath, `${gfv}.схема.rng.xml`);
39
52
  const hlRngPath2 = path.join(highlanderFarmPath, "Highlander", `${gfv}.схема.rng.xml`);
40
53
  for (const relativeFilePath of await (0, _FsUtils.globAsync)("**/*", {
@@ -75,12 +88,14 @@ async function runInitForm(context, options, farmDirectory) {
75
88
  await (0, _fsExtra.writeJson)(formJsonPath, formConfig, {
76
89
  spaces: 2
77
90
  });
78
- gfvLogger.log(`Moving prepared sources to '${farmDirectory}'`);
79
- await moveDirectory(tempOutputDir, farmDirectoryFormPath);
80
- gfvLogger.log(`Form creating completed. Path: '${farmDirectoryFormPath}'`);
91
+ gfvLogger.log(`Moving prepared sources to '${repositoryRoot}'`);
92
+ await moveDirectory(tempOutputDir, formPath);
93
+ gfvLogger.log(`Form creating completed. Path: '${formPath}'`);
81
94
  }
82
95
  }
83
96
  async function moveDirectory(sourcePath, targetPath) {
97
+ const basedir = path.dirname(targetPath);
98
+ await (0, _fsExtra.ensureDir)(basedir);
84
99
  if (os.platform() !== "win32") {
85
100
  await (0, _fsExtra.rename)(sourcePath, targetPath);
86
101
  } else {
@@ -91,4 +106,12 @@ async function moveDirectory(sourcePath, targetPath) {
91
106
  }
92
107
  }
93
108
  }
94
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJvcyIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwicmVxdWlyZSIsInBhdGgiLCJfZnNFeHRyYSIsIl9QdWJsaXNoZWRWZXJzaW9uVXRpbHMiLCJfUmVzb2x2ZUZvcm1JbmZvIiwiX0ZzVXRpbHMiLCJfQ29tbWFuZEJhc2VkT3B0aW9uc1BhcnNlciIsIl9XZWxsS25vd25EaXJlY3RvcmllcyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJydW5Jbml0Rm9ybSIsImNvbnRleHQiLCJvcHRpb25zIiwiZmFybURpcmVjdG9yeSIsImxvZ2dlciIsImdmdnMiLCJ1bmRlZmluZWQiLCJJbnZhbGlkQ29tbWFuZExpbmVBcmd1bWVudHNFcnJvciIsInRlbXBsYXRlRGlyIiwiam9pbiIsIl9fZGlybmFtZSIsImdmdiIsImdmdkxvZ2dlciIsIndpdGhQcmVmaXgiLCJmYXJtRGlyZWN0b3J5Rm9ybVBhdGgiLCJwYXRoRXhpc3RzIiwiZXJyb3JNZXNzYWdlIiwiZXJyb3IiLCJFcnJvciIsInRlbXBPdXRwdXREaXIiLCJybWRpciIsImxvZyIsImVuc3VyZURpciIsImhpZ2hsYW5kZXJGYXJtUGF0aCIsImhsUm5nUGF0aDEiLCJobFJuZ1BhdGgyIiwicmVsYXRpdmVGaWxlUGF0aCIsImdsb2JBc3luYyIsImN3ZCIsInRhcmdldFJlbGF0aXZlUGF0aCIsInJlcGxhY2UiLCJ2ZXJib3NlIiwic3RhdCIsImlzRGlyZWN0b3J5IiwiaGxybmciLCJleGlzdHNIbFJuZ1BhdGgiLCJjb250ZW50IiwicmVhZEZpbGUiLCJ0YXJnZXRDb250ZW50Iiwid3JpdGVGaWxlIiwiaW5jbHVkZXMiLCJmb3JtSnNvblBhdGgiLCJXZWxsS25vd25EaXJlY3RvcmllcyIsIkZvcm1Kc29uRmlsZU5hbWUiLCJmb3JtQ29uZmlnIiwicmVhZEZvcm1Db25maWciLCJkZXBlbmRlbmNpZXMiLCJlbmdpbmUiLCJnZXRMYXN0U3RhYmxlRW5naW5lVmVyc2lvbiIsImdlbmVyYXRvciIsImdldExhc3RTdGFibGVHZW5lcmF0b3JWZXJzaW9uIiwid3JpdGVKc29uIiwic3BhY2VzIiwibW92ZURpcmVjdG9yeSIsInNvdXJjZVBhdGgiLCJ0YXJnZXRQYXRoIiwicGxhdGZvcm0iLCJyZW5hbWUiLCJtb3ZlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL0NMSUNvbW1hbmRzL0luaXRGb3JtL1J1bkluaXRGb3JtLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIG9zIGZyb20gXCJvc1wiO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tIFwicGF0aFwiO1xuXG5pbXBvcnQgeyBlbnN1cmVEaXIsIG1vdmUsIHBhdGhFeGlzdHMsIHJlYWRGaWxlLCByZW5hbWUsIHJtZGlyLCBzdGF0LCB3cml0ZUZpbGUsIHdyaXRlSnNvbiB9IGZyb20gXCJmcy1leHRyYVwiO1xuXG5pbXBvcnQgeyBnZXRMYXN0U3RhYmxlRW5naW5lVmVyc2lvbiwgZ2V0TGFzdFN0YWJsZUdlbmVyYXRvclZlcnNpb24gfSBmcm9tIFwiLi4vLi4vQnVpbGRUYXNrcy9QdWJsaXNoZWRWZXJzaW9uVXRpbHNcIjtcbmltcG9ydCB7IHJlYWRGb3JtQ29uZmlnIH0gZnJvbSBcIi4uLy4uL0J1aWxkVGFza3MvUmVzb2x2ZUZvcm1JbmZvXCI7XG5pbXBvcnQgeyBDb25zb2xlQXBwbGljYXRpb25Db250ZXh0IH0gZnJvbSBcIi4uLy4uL0NvbW1vbnMvQ29uc29sZUFwcGxpY2F0aW9uL0NvbnNvbGVBcHBsaWNhdGlvbkNvbnRleHRcIjtcbmltcG9ydCB7IGdsb2JBc3luYyB9IGZyb20gXCIuLi8uLi9Db21tb25zL0ZzVXRpbHNcIjtcbmltcG9ydCB7IEludmFsaWRDb21tYW5kTGluZUFyZ3VtZW50c0Vycm9yIH0gZnJvbSBcIi4uLy4uL0NvbW1vbnMvT3B0aW9ucy9Db21tYW5kQmFzZWRPcHRpb25zUGFyc2VyXCI7XG5pbXBvcnQgeyBXZWxsS25vd25EaXJlY3RvcmllcyB9IGZyb20gXCIuLi8uLi8uLi8uLi9Db21tb24vV2VsbEtub3duRGlyZWN0b3JpZXNcIjtcblxuaW1wb3J0IHsgSW5pdEZvcm1PcHRpb25zIH0gZnJvbSBcIi4vSW5pdEZvcm1PcHRpb25zXCI7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBydW5Jbml0Rm9ybShcbiAgICBjb250ZXh0OiBDb25zb2xlQXBwbGljYXRpb25Db250ZXh0LFxuICAgIG9wdGlvbnM6IEluaXRGb3JtT3B0aW9ucyxcbiAgICBmYXJtRGlyZWN0b3J5OiBzdHJpbmdcbik6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGxvZ2dlciA9IGNvbnRleHQubG9nZ2VyO1xuICAgIGlmIChvcHRpb25zLmdmdnMgPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkQ29tbWFuZExpbmVBcmd1bWVudHNFcnJvcihcItCd0LUg0YPQutCw0LfQsNC90LAgR1ZGINC00LvRjyDRgdC+0LfQtNCw0L3QuNGPXCIsIFwiXCIpO1xuICAgIH1cblxuICAgIGNvbnN0IHRlbXBsYXRlRGlyID0gcGF0aC5qb2luKF9fZGlybmFtZSwgXCJFbXB0eUZvcm1UZW1wbGF0ZVwiKTtcblxuICAgIGZvciAoY29uc3QgZ2Z2IG9mIG9wdGlvbnMuZ2Z2cykge1xuICAgICAgICBjb25zdCBnZnZMb2dnZXIgPSBsb2dnZXIud2l0aFByZWZpeChnZnYpO1xuICAgICAgICBjb25zdCBmYXJtRGlyZWN0b3J5Rm9ybVBhdGggPSBwYXRoLmpvaW4oZmFybURpcmVjdG9yeSwgXCJmb3Jtc1wiLCBnZnYpO1xuICAgICAgICBpZiAoYXdhaXQgcGF0aEV4aXN0cyhmYXJtRGlyZWN0b3J5Rm9ybVBhdGgpKSB7XG4gICAgICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSBgRGlyZWN0b3J5IGZvciAnJHtnZnZ9JyBhbHJlYWR5IGV4aXN0cy5gO1xuICAgICAgICAgICAgZ2Z2TG9nZ2VyLmVycm9yKGVycm9yTWVzc2FnZSk7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3JNZXNzYWdlKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCB0ZW1wT3V0cHV0RGlyID0gcGF0aC5qb2luKF9fZGlybmFtZSwgXCIudG1wXCIsIGdmdik7XG4gICAgICAgIGlmIChhd2FpdCBwYXRoRXhpc3RzKHRlbXBPdXRwdXREaXIpKSB7XG4gICAgICAgICAgICBhd2FpdCBybWRpcih0ZW1wT3V0cHV0RGlyKTtcbiAgICAgICAgfVxuICAgICAgICBnZnZMb2dnZXIubG9nKGBDcmVhdGluZyBkaXJlY3Rvcnkgd2l0aCBzb3VyY2VzIGZyb20gdGVtcGxhdGVgKTtcbiAgICAgICAgYXdhaXQgZW5zdXJlRGlyKHRlbXBPdXRwdXREaXIpO1xuICAgICAgICBjb25zdCBoaWdobGFuZGVyRmFybVBhdGggPSBwYXRoLmpvaW4oZmFybURpcmVjdG9yeSwgXCIuLlwiLCBcImhpZ2hsYW5kZXIuZmFybVwiLCBcIkZvcm1zXCIsIGdmdik7XG4gICAgICAgIGNvbnN0IGhsUm5nUGF0aDEgPSBwYXRoLmpvaW4oaGlnaGxhbmRlckZhcm1QYXRoLCBgJHtnZnZ9LtGB0YXQtdC80LAucm5nLnhtbGApO1xuICAgICAgICBjb25zdCBobFJuZ1BhdGgyID0gcGF0aC5qb2luKGhpZ2hsYW5kZXJGYXJtUGF0aCwgXCJIaWdobGFuZGVyXCIsIGAke2dmdn0u0YHRhdC10LzQsC5ybmcueG1sYCk7XG4gICAgICAgIGZvciAoY29uc3QgcmVsYXRpdmVGaWxlUGF0aCBvZiBhd2FpdCBnbG9iQXN5bmMoXCIqKi8qXCIsIHsgY3dkOiB0ZW1wbGF0ZURpciB9KSkge1xuICAgICAgICAgICAgY29uc3QgdGFyZ2V0UmVsYXRpdmVQYXRoID0gcmVsYXRpdmVGaWxlUGF0aC5yZXBsYWNlKC97Z2Z2fS9nLCBnZnYpO1xuICAgICAgICAgICAgZ2Z2TG9nZ2VyLnZlcmJvc2UoYFByb2Nlc3NpbmcgdGVtcGxhdGUgcGF0aCAke3JlbGF0aXZlRmlsZVBhdGh9YCk7XG4gICAgICAgICAgICBpZiAoKGF3YWl0IHN0YXQocGF0aC5qb2luKHRlbXBsYXRlRGlyLCByZWxhdGl2ZUZpbGVQYXRoKSkpLmlzRGlyZWN0b3J5KCkpIHtcbiAgICAgICAgICAgICAgICBhd2FpdCBlbnN1cmVEaXIocGF0aC5qb2luKHRlbXBPdXRwdXREaXIsIHRhcmdldFJlbGF0aXZlUGF0aCkpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbnMuaGxybmcgJiZcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0UmVsYXRpdmVQYXRoID09PSBgc2NoZW1hcy8ke2dmdn0uMC5ybmcueG1sYCAmJlxuICAgICAgICAgICAgICAgICAgICAoKGF3YWl0IHBhdGhFeGlzdHMoaGxSbmdQYXRoMSkpIHx8IChhd2FpdCBwYXRoRXhpc3RzKGhsUm5nUGF0aDIpKSlcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZXhpc3RzSGxSbmdQYXRoID0gKGF3YWl0IHBhdGhFeGlzdHMoaGxSbmdQYXRoMSkpID8gaGxSbmdQYXRoMSA6IGhsUm5nUGF0aDI7XG4gICAgICAgICAgICAgICAgICAgIGdmdkxvZ2dlci5sb2coYENvcHkgc2NoZW1hIHJuZyBmaWxlIGZyb20gaGlnaGxhbmRlci5mYXJtLmApO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjb250ZW50ID0gYXdhaXQgcmVhZEZpbGUoZXhpc3RzSGxSbmdQYXRoLCBcInV0Zi04XCIpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB0YXJnZXRDb250ZW50ID0gY29udGVudC5yZXBsYWNlKC97Z2Z2fS9nLCBnZnYpO1xuICAgICAgICAgICAgICAgICAgICBhd2FpdCB3cml0ZUZpbGUocGF0aC5qb2luKHRlbXBPdXRwdXREaXIsIHRhcmdldFJlbGF0aXZlUGF0aCksIHRhcmdldENvbnRlbnQsIFwidXRmLThcIik7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRhcmdldFJlbGF0aXZlUGF0aC5pbmNsdWRlcyhcImhlbHBlcnMvYWRkUHJpbDEudHh0XCIpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvL9C/0YDQuCDQutC+0L/QuNGA0L7QstCw0L3QuNC4IGpzINGE0LDQudC70L7QsiBiYWJlbCDQvdCw0YHQvtCy0YvQstCw0LXRgiB1c2Ugc3RyaWN0LCDQvtCx0L7RiNC70Lgg0YLQsNC60LjQvCDQv9GD0YLQtdC8XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjb250ZW50ID0gYXdhaXQgcmVhZEZpbGUocGF0aC5qb2luKHRlbXBsYXRlRGlyLCByZWxhdGl2ZUZpbGVQYXRoKSwgXCJ1dGYtOFwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHdyaXRlRmlsZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoLmpvaW4odGVtcE91dHB1dERpciwgdGFyZ2V0UmVsYXRpdmVQYXRoLnJlcGxhY2UoXCIudHh0XCIsIFwiLmpzXCIpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidXRmLThcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSBhd2FpdCByZWFkRmlsZShwYXRoLmpvaW4odGVtcGxhdGVEaXIsIHJlbGF0aXZlRmlsZVBhdGgpLCBcInV0Zi04XCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdGFyZ2V0Q29udGVudCA9IGNvbnRlbnQucmVwbGFjZSgve2dmdn0vZywgZ2Z2KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHdyaXRlRmlsZShwYXRoLmpvaW4odGVtcE91dHB1dERpciwgdGFyZ2V0UmVsYXRpdmVQYXRoKSwgdGFyZ2V0Q29udGVudCwgXCJ1dGYtOFwiKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGdmdkxvZ2dlci52ZXJib3NlKGBQcm9jZXNzZWQgdGVtcGxhdGUgcGF0aCAke3JlbGF0aXZlRmlsZVBhdGh9YCk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZm9ybUpzb25QYXRoID0gcGF0aC5qb2luKHRlbXBPdXRwdXREaXIsIFdlbGxLbm93bkRpcmVjdG9yaWVzLkZvcm1Kc29uRmlsZU5hbWUpO1xuICAgICAgICBjb25zdCBmb3JtQ29uZmlnID0gYXdhaXQgcmVhZEZvcm1Db25maWcoZm9ybUpzb25QYXRoLCBnZnZMb2dnZXIpO1xuICAgICAgICBmb3JtQ29uZmlnLmRlcGVuZGVuY2llcyA9IHtcbiAgICAgICAgICAgIGVuZ2luZTogYXdhaXQgZ2V0TGFzdFN0YWJsZUVuZ2luZVZlcnNpb24oKSxcbiAgICAgICAgICAgIGdlbmVyYXRvcjogYXdhaXQgZ2V0TGFzdFN0YWJsZUdlbmVyYXRvclZlcnNpb24oKSxcbiAgICAgICAgfTtcbiAgICAgICAgZ2Z2TG9nZ2VyLmxvZyhgU2V0IGxhc3Qgc3RhYmxlIHZlcnNpb24gJHtmb3JtQ29uZmlnLmRlcGVuZGVuY2llcy5lbmdpbmV9YCk7XG4gICAgICAgIGF3YWl0IHdyaXRlSnNvbihmb3JtSnNvblBhdGgsIGZvcm1Db25maWcsIHsgc3BhY2VzOiAyIH0pO1xuICAgICAgICBnZnZMb2dnZXIubG9nKGBNb3ZpbmcgcHJlcGFyZWQgc291cmNlcyB0byAnJHtmYXJtRGlyZWN0b3J5fSdgKTtcbiAgICAgICAgYXdhaXQgbW92ZURpcmVjdG9yeSh0ZW1wT3V0cHV0RGlyLCBmYXJtRGlyZWN0b3J5Rm9ybVBhdGgpO1xuICAgICAgICBnZnZMb2dnZXIubG9nKGBGb3JtIGNyZWF0aW5nIGNvbXBsZXRlZC4gUGF0aDogJyR7ZmFybURpcmVjdG9yeUZvcm1QYXRofSdgKTtcbiAgICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIG1vdmVEaXJlY3Rvcnkoc291cmNlUGF0aDogc3RyaW5nLCB0YXJnZXRQYXRoOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAob3MucGxhdGZvcm0oKSAhPT0gXCJ3aW4zMlwiKSB7XG4gICAgICAgIGF3YWl0IHJlbmFtZShzb3VyY2VQYXRoLCB0YXJnZXRQYXRoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBpZiAoc291cmNlUGF0aFswXSA9PT0gdGFyZ2V0UGF0aFswXSkge1xuICAgICAgICAgICAgYXdhaXQgcmVuYW1lKHNvdXJjZVBhdGgsIHRhcmdldFBhdGgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgYXdhaXQgbW92ZShzb3VyY2VQYXRoLCB0YXJnZXRQYXRoKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsRUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsSUFBQSxHQUFBRix1QkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUUsUUFBQSxHQUFBRixPQUFBO0FBRUEsSUFBQUcsc0JBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLGdCQUFBLEdBQUFKLE9BQUE7QUFFQSxJQUFBSyxRQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSwwQkFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8scUJBQUEsR0FBQVAsT0FBQTtBQUErRSxTQUFBUSx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFB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
109
+ function splitGfv(gfv) {
110
+ const gfvNumber = typeof gfv === "string" ? Number(gfv) : gfv;
111
+ return {
112
+ g: Math.floor(gfvNumber / 100000),
113
+ f: Math.floor(gfvNumber % 100000 / 100),
114
+ v: gfvNumber % 100
115
+ };
116
+ }
117
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJvcyIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwicmVxdWlyZSIsInBhdGgiLCJfZnNFeHRyYSIsIl9QdWJsaXNoZWRWZXJzaW9uVXRpbHMiLCJfUmVzb2x2ZUZvcm1JbmZvIiwiX0ZzVXRpbHMiLCJfQ29tbWFuZEJhc2VkT3B0aW9uc1BhcnNlciIsIl9XZWxsS25vd25EaXJlY3RvcmllcyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJydW5Jbml0Rm9ybSIsImNvbnRleHQiLCJvcHRpb25zIiwibG9nZ2VyIiwiZ2Z2cyIsInVuZGVmaW5lZCIsIkludmFsaWRDb21tYW5kTGluZUFyZ3VtZW50c0Vycm9yIiwicmVwb3NpdG9yeVJvb3QiLCJwcm9jZXNzIiwiY3dkIiwidGVtcGxhdGVEaXIiLCJqb2luIiwiX19kaXJuYW1lIiwiYmFzZW5hbWUiLCJub3JtYWxpemUiLCJpc0RpcmVjdG9yeUV4aXN0cyIsIldlbGxLbm93bkRpcmVjdG9yaWVzIiwiRm9ybXNEaXJlY3RvcnkiLCJFcnJvciIsImdmdiIsImdmdkxvZ2dlciIsIndpdGhQcmVmaXgiLCJnIiwiZiIsInNwbGl0R2Z2IiwiZm9ybVBhdGgiLCJ0b1N0cmluZyIsInBhZFN0YXJ0IiwiQ2FuZHlTdWJkaXJlY3RvcnlOYW1lIiwicGF0aEV4aXN0cyIsImVycm9yTWVzc2FnZSIsImVycm9yIiwidGVtcE91dHB1dERpciIsInJtZGlyIiwicmVjdXJzaXZlIiwibG9nIiwiZW5zdXJlRGlyIiwiaGlnaGxhbmRlckZhcm1QYXRoIiwiaGxSbmdQYXRoMSIsImhsUm5nUGF0aDIiLCJyZWxhdGl2ZUZpbGVQYXRoIiwiZ2xvYkFzeW5jIiwidGFyZ2V0UmVsYXRpdmVQYXRoIiwicmVwbGFjZSIsInZlcmJvc2UiLCJzdGF0IiwiaXNEaXJlY3RvcnkiLCJobHJuZyIsImV4aXN0c0hsUm5nUGF0aCIsImNvbnRlbnQiLCJyZWFkRmlsZSIsInRhcmdldENvbnRlbnQiLCJ3cml0ZUZpbGUiLCJpbmNsdWRlcyIsImZvcm1Kc29uUGF0aCIsIkZvcm1Kc29uRmlsZU5hbWUiLCJmb3JtQ29uZmlnIiwicmVhZEZvcm1Db25maWciLCJkZXBlbmRlbmNpZXMiLCJlbmdpbmUiLCJnZXRMYXN0U3RhYmxlRW5naW5lVmVyc2lvbiIsImdlbmVyYXRvciIsImdldExhc3RTdGFibGVHZW5lcmF0b3JWZXJzaW9uIiwid3JpdGVKc29uIiwic3BhY2VzIiwibW92ZURpcmVjdG9yeSIsInNvdXJjZVBhdGgiLCJ0YXJnZXRQYXRoIiwiYmFzZWRpciIsImRpcm5hbWUiLCJwbGF0Zm9ybSIsInJlbmFtZSIsIm1vdmUiLCJnZnZOdW1iZXIiLCJOdW1iZXIiLCJNYXRoIiwiZmxvb3IiLCJ2Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL0NMSUNvbW1hbmRzL0luaXRGb3JtL1J1bkluaXRGb3JtLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIG9zIGZyb20gXCJvc1wiO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tIFwicGF0aFwiO1xuXG5pbXBvcnQgeyBlbnN1cmVEaXIsIG1vdmUsIHBhdGhFeGlzdHMsIHJlYWRGaWxlLCByZW5hbWUsIHJtZGlyLCBzdGF0LCB3cml0ZUZpbGUsIHdyaXRlSnNvbiB9IGZyb20gXCJmcy1leHRyYVwiO1xuXG5pbXBvcnQgeyBnZXRMYXN0U3RhYmxlRW5naW5lVmVyc2lvbiwgZ2V0TGFzdFN0YWJsZUdlbmVyYXRvclZlcnNpb24gfSBmcm9tIFwiLi4vLi4vQnVpbGRUYXNrcy9QdWJsaXNoZWRWZXJzaW9uVXRpbHNcIjtcbmltcG9ydCB7IHJlYWRGb3JtQ29uZmlnIH0gZnJvbSBcIi4uLy4uL0J1aWxkVGFza3MvUmVzb2x2ZUZvcm1JbmZvXCI7XG5pbXBvcnQgeyBDb25zb2xlQXBwbGljYXRpb25Db250ZXh0IH0gZnJvbSBcIi4uLy4uL0NvbW1vbnMvQ29uc29sZUFwcGxpY2F0aW9uL0NvbnNvbGVBcHBsaWNhdGlvbkNvbnRleHRcIjtcbmltcG9ydCB7IGdsb2JBc3luYywgaXNEaXJlY3RvcnlFeGlzdHMgfSBmcm9tIFwiLi4vLi4vQ29tbW9ucy9Gc1V0aWxzXCI7XG5pbXBvcnQgeyBJbnZhbGlkQ29tbWFuZExpbmVBcmd1bWVudHNFcnJvciB9IGZyb20gXCIuLi8uLi9Db21tb25zL09wdGlvbnMvQ29tbWFuZEJhc2VkT3B0aW9uc1BhcnNlclwiO1xuaW1wb3J0IHsgV2VsbEtub3duRGlyZWN0b3JpZXMgfSBmcm9tIFwiLi4vLi4vLi4vLi4vQ29tbW9uL1dlbGxLbm93bkRpcmVjdG9yaWVzXCI7XG5pbXBvcnQgeyBGb3JtR2xvYnMgfSBmcm9tIFwiLi4vLi4vQ29tbW9ucy9Gb3JtR2xvYnNVdGlsc1wiO1xuXG5pbXBvcnQgeyBJbml0Rm9ybU9wdGlvbnMgfSBmcm9tIFwiLi9Jbml0Rm9ybU9wdGlvbnNcIjtcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJ1bkluaXRGb3JtKGNvbnRleHQ6IENvbnNvbGVBcHBsaWNhdGlvbkNvbnRleHQsIG9wdGlvbnM6IEluaXRGb3JtT3B0aW9ucyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGxvZ2dlciA9IGNvbnRleHQubG9nZ2VyO1xuICAgIGlmIChvcHRpb25zLmdmdnMgPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkQ29tbWFuZExpbmVBcmd1bWVudHNFcnJvcihcItCd0LUg0YPQutCw0LfQsNC90LAgR1ZGINC00LvRjyDRgdC+0LfQtNCw0L3QuNGPXCIsIFwiXCIpO1xuICAgIH1cblxuICAgIGxldCByZXBvc2l0b3J5Um9vdCA9IHByb2Nlc3MuY3dkKCk7XG4gICAgY29uc3QgdGVtcGxhdGVEaXIgPSBwYXRoLmpvaW4oX19kaXJuYW1lLCBcIkVtcHR5Rm9ybVRlbXBsYXRlXCIpO1xuICAgIGlmIChcbiAgICAgICAgcGF0aC5iYXNlbmFtZShwcm9jZXNzLmN3ZCgpKSA9PT0gXCJjYW5keS5mYXJtXCIgfHxcbiAgICAgICAgcGF0aC5iYXNlbmFtZShwcm9jZXNzLmN3ZCgpKSA9PT0gXCJjYW5keS5kaWFkb2MuZmFybVwiIHx8XG4gICAgICAgIHBhdGguYmFzZW5hbWUocHJvY2Vzcy5jd2QoKSkgPT09IFwiY2FuZHkucnBuLmZhcm1cIiB8fFxuICAgICAgICBwYXRoLmJhc2VuYW1lKHByb2Nlc3MuY3dkKCkpID09PSBcIlRlc3RGYXJtXCJcbiAgICApIHtcbiAgICAgICAgcmVwb3NpdG9yeVJvb3QgPSBwYXRoLm5vcm1hbGl6ZShwYXRoLmpvaW4ocmVwb3NpdG9yeVJvb3QsIFwiLi5cIikpO1xuICAgIH1cblxuICAgIGlmICghKGF3YWl0IGlzRGlyZWN0b3J5RXhpc3RzKHBhdGguam9pbihyZXBvc2l0b3J5Um9vdCwgV2VsbEtub3duRGlyZWN0b3JpZXMuRm9ybXNEaXJlY3RvcnkpKSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwi0KLQtdC60YPRidCw0Y8g0LTQuNGA0LXQutGC0L7RgNC40Y8g0L3QtSDQv9C+0YXQvtC20LAg0L3QsCDQutCw0YLQsNC70L7QsyDRgSDQuNGB0YXQvtC00L3QuNC60LDQvNC4INGE0L7RgNC8XCIpO1xuICAgIH1cblxuICAgIGZvciAoY29uc3QgZ2Z2IG9mIG9wdGlvbnMuZ2Z2cykge1xuICAgICAgICBjb25zdCBnZnZMb2dnZXIgPSBsb2dnZXIud2l0aFByZWZpeChnZnYpO1xuICAgICAgICBjb25zdCB7IGcsIGYgfSA9IHNwbGl0R2Z2KGdmdik7XG4gICAgICAgIGNvbnN0IGZvcm1QYXRoID0gcGF0aC5qb2luKFxuICAgICAgICAgICAgcmVwb3NpdG9yeVJvb3QsXG4gICAgICAgICAgICBXZWxsS25vd25EaXJlY3Rvcmllcy5Gb3Jtc0RpcmVjdG9yeSxcbiAgICAgICAgICAgIGcudG9TdHJpbmcoKSxcbiAgICAgICAgICAgIGYudG9TdHJpbmcoKS5wYWRTdGFydCgzLCBcIjBcIiksXG4gICAgICAgICAgICBnZnYudG9TdHJpbmcoKSxcbiAgICAgICAgICAgIFdlbGxLbm93bkRpcmVjdG9yaWVzLkNhbmR5U3ViZGlyZWN0b3J5TmFtZVxuICAgICAgICApO1xuICAgICAgICBpZiAoYXdhaXQgcGF0aEV4aXN0cyhmb3JtUGF0aCkpIHtcbiAgICAgICAgICAgIGNvbnN0IGVycm9yTWVzc2FnZSA9IGBEaXJlY3RvcnkgZm9yICcke2dmdn0nIGFscmVhZHkgZXhpc3RzLmA7XG4gICAgICAgICAgICBnZnZMb2dnZXIuZXJyb3IoZXJyb3JNZXNzYWdlKTtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvck1lc3NhZ2UpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHRlbXBPdXRwdXREaXIgPSBwYXRoLmpvaW4oX19kaXJuYW1lLCBcIi50bXBcIiwgZ2Z2KTtcbiAgICAgICAgaWYgKGF3YWl0IHBhdGhFeGlzdHModGVtcE91dHB1dERpcikpIHtcbiAgICAgICAgICAgIGF3YWl0IHJtZGlyKHRlbXBPdXRwdXREaXIsIHsgcmVjdXJzaXZlOiB0cnVlIH0pO1xuICAgICAgICB9XG4gICAgICAgIGdmdkxvZ2dlci5sb2coYENyZWF0aW5nIGRpcmVjdG9yeSB3aXRoIHNvdXJjZXMgZnJvbSB0ZW1wbGF0ZWApO1xuICAgICAgICBhd2FpdCBlbnN1cmVEaXIodGVtcE91dHB1dERpcik7XG4gICAgICAgIGNvbnN0IGhpZ2hsYW5kZXJGYXJtUGF0aCA9IHBhdGguam9pbihyZXBvc2l0b3J5Um9vdCwgXCJoaWdobGFuZGVyLmZhcm1cIiwgXCJGb3Jtc1wiLCBnZnYpO1xuICAgICAgICBjb25zdCBobFJuZ1BhdGgxID0gcGF0aC5qb2luKGhpZ2hsYW5kZXJGYXJtUGF0aCwgYCR7Z2Z2fS7RgdGF0LXQvNCwLnJuZy54bWxgKTtcbiAgICAgICAgY29uc3QgaGxSbmdQYXRoMiA9IHBhdGguam9pbihoaWdobGFuZGVyRmFybVBhdGgsIFwiSGlnaGxhbmRlclwiLCBgJHtnZnZ9LtGB0YXQtdC80LAucm5nLnhtbGApO1xuICAgICAgICBmb3IgKGNvbnN0IHJlbGF0aXZlRmlsZVBhdGggb2YgYXdhaXQgZ2xvYkFzeW5jKFwiKiovKlwiLCB7IGN3ZDogdGVtcGxhdGVEaXIgfSkpIHtcbiAgICAgICAgICAgIGNvbnN0IHRhcmdldFJlbGF0aXZlUGF0aCA9IHJlbGF0aXZlRmlsZVBhdGgucmVwbGFjZSgve2dmdn0vZywgZ2Z2KTtcbiAgICAgICAgICAgIGdmdkxvZ2dlci52ZXJib3NlKGBQcm9jZXNzaW5nIHRlbXBsYXRlIHBhdGggJHtyZWxhdGl2ZUZpbGVQYXRofWApO1xuICAgICAgICAgICAgaWYgKChhd2FpdCBzdGF0KHBhdGguam9pbih0ZW1wbGF0ZURpciwgcmVsYXRpdmVGaWxlUGF0aCkpKS5pc0RpcmVjdG9yeSgpKSB7XG4gICAgICAgICAgICAgICAgYXdhaXQgZW5zdXJlRGlyKHBhdGguam9pbih0ZW1wT3V0cHV0RGlyLCB0YXJnZXRSZWxhdGl2ZVBhdGgpKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICBvcHRpb25zLmhscm5nICYmXG4gICAgICAgICAgICAgICAgICAgIHRhcmdldFJlbGF0aXZlUGF0aCA9PT0gYHNjaGVtYXMvJHtnZnZ9LjAucm5nLnhtbGAgJiZcbiAgICAgICAgICAgICAgICAgICAgKChhd2FpdCBwYXRoRXhpc3RzKGhsUm5nUGF0aDEpKSB8fCAoYXdhaXQgcGF0aEV4aXN0cyhobFJuZ1BhdGgyKSkpXG4gICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGV4aXN0c0hsUm5nUGF0aCA9IChhd2FpdCBwYXRoRXhpc3RzKGhsUm5nUGF0aDEpKSA/IGhsUm5nUGF0aDEgOiBobFJuZ1BhdGgyO1xuICAgICAgICAgICAgICAgICAgICBnZnZMb2dnZXIubG9nKGBDb3B5IHNjaGVtYSBybmcgZmlsZSBmcm9tIGhpZ2hsYW5kZXIuZmFybS5gKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY29udGVudCA9IGF3YWl0IHJlYWRGaWxlKGV4aXN0c0hsUm5nUGF0aCwgXCJ1dGYtOFwiKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdGFyZ2V0Q29udGVudCA9IGNvbnRlbnQucmVwbGFjZSgve2dmdn0vZywgZ2Z2KTtcbiAgICAgICAgICAgICAgICAgICAgYXdhaXQgd3JpdGVGaWxlKHBhdGguam9pbih0ZW1wT3V0cHV0RGlyLCB0YXJnZXRSZWxhdGl2ZVBhdGgpLCB0YXJnZXRDb250ZW50LCBcInV0Zi04XCIpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0YXJnZXRSZWxhdGl2ZVBhdGguaW5jbHVkZXMoXCJoZWxwZXJzL2FkZFByaWwxLnR4dFwiKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy/Qv9GA0Lgg0LrQvtC/0LjRgNC+0LLQsNC90LjQuCBqcyDRhNCw0LnQu9C+0LIgYmFiZWwg0L3QsNGB0L7QstGL0LLQsNC10YIgdXNlIHN0cmljdCwg0L7QsdC+0YjQu9C4INGC0LDQutC40Lwg0L/Rg9GC0LXQvFxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY29udGVudCA9IGF3YWl0IHJlYWRGaWxlKHBhdGguam9pbih0ZW1wbGF0ZURpciwgcmVsYXRpdmVGaWxlUGF0aCksIFwidXRmLThcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICBhd2FpdCB3cml0ZUZpbGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aC5qb2luKHRlbXBPdXRwdXREaXIsIHRhcmdldFJlbGF0aXZlUGF0aC5yZXBsYWNlKFwiLnR4dFwiLCBcIi5qc1wiKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInV0Zi04XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjb250ZW50ID0gYXdhaXQgcmVhZEZpbGUocGF0aC5qb2luKHRlbXBsYXRlRGlyLCByZWxhdGl2ZUZpbGVQYXRoKSwgXCJ1dGYtOFwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRhcmdldENvbnRlbnQgPSBjb250ZW50LnJlcGxhY2UoL3tnZnZ9L2csIGdmdik7XG4gICAgICAgICAgICAgICAgICAgICAgICBhd2FpdCB3cml0ZUZpbGUocGF0aC5qb2luKHRlbXBPdXRwdXREaXIsIHRhcmdldFJlbGF0aXZlUGF0aCksIHRhcmdldENvbnRlbnQsIFwidXRmLThcIik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBnZnZMb2dnZXIudmVyYm9zZShgUHJvY2Vzc2VkIHRlbXBsYXRlIHBhdGggJHtyZWxhdGl2ZUZpbGVQYXRofWApO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGZvcm1Kc29uUGF0aCA9IHBhdGguam9pbih0ZW1wT3V0cHV0RGlyLCBXZWxsS25vd25EaXJlY3Rvcmllcy5Gb3JtSnNvbkZpbGVOYW1lKTtcbiAgICAgICAgY29uc3QgZm9ybUNvbmZpZyA9IGF3YWl0IHJlYWRGb3JtQ29uZmlnKGZvcm1Kc29uUGF0aCwgZ2Z2TG9nZ2VyKTtcbiAgICAgICAgZm9ybUNvbmZpZy5kZXBlbmRlbmNpZXMgPSB7XG4gICAgICAgICAgICBlbmdpbmU6IGF3YWl0IGdldExhc3RTdGFibGVFbmdpbmVWZXJzaW9uKCksXG4gICAgICAgICAgICBnZW5lcmF0b3I6IGF3YWl0IGdldExhc3RTdGFibGVHZW5lcmF0b3JWZXJzaW9uKCksXG4gICAgICAgIH07XG4gICAgICAgIGdmdkxvZ2dlci5sb2coYFNldCBsYXN0IHN0YWJsZSB2ZXJzaW9uICR7Zm9ybUNvbmZpZy5kZXBlbmRlbmNpZXMuZW5naW5lfWApO1xuICAgICAgICBhd2FpdCB3cml0ZUpzb24oZm9ybUpzb25QYXRoLCBmb3JtQ29uZmlnLCB7IHNwYWNlczogMiB9KTtcbiAgICAgICAgZ2Z2TG9nZ2VyLmxvZyhgTW92aW5nIHByZXBhcmVkIHNvdXJjZXMgdG8gJyR7cmVwb3NpdG9yeVJvb3R9J2ApO1xuICAgICAgICBhd2FpdCBtb3ZlRGlyZWN0b3J5KHRlbXBPdXRwdXREaXIsIGZvcm1QYXRoKTtcbiAgICAgICAgZ2Z2TG9nZ2VyLmxvZyhgRm9ybSBjcmVhdGluZyBjb21wbGV0ZWQuIFBhdGg6ICcke2Zvcm1QYXRofSdgKTtcbiAgICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIG1vdmVEaXJlY3Rvcnkoc291cmNlUGF0aDogc3RyaW5nLCB0YXJnZXRQYXRoOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBiYXNlZGlyID0gcGF0aC5kaXJuYW1lKHRhcmdldFBhdGgpO1xuICAgIGF3YWl0IGVuc3VyZURpcihiYXNlZGlyKTtcbiAgICBpZiAob3MucGxhdGZvcm0oKSAhPT0gXCJ3aW4zMlwiKSB7XG4gICAgICAgIGF3YWl0IHJlbmFtZShzb3VyY2VQYXRoLCB0YXJnZXRQYXRoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBpZiAoc291cmNlUGF0aFswXSA9PT0gdGFyZ2V0UGF0aFswXSkge1xuICAgICAgICAgICAgYXdhaXQgcmVuYW1lKHNvdXJjZVBhdGgsIHRhcmdldFBhdGgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgYXdhaXQgbW92ZShzb3VyY2VQYXRoLCB0YXJnZXRQYXRoKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZnVuY3Rpb24gc3BsaXRHZnYoZ2Z2OiBzdHJpbmcgfCBudW1iZXIpOiB7IGc6IG51bWJlcjsgZjogbnVtYmVyOyB2OiBudW1iZXIgfSB7XG4gICAgY29uc3QgZ2Z2TnVtYmVyID0gdHlwZW9mIGdmdiA9PT0gXCJzdHJpbmdcIiA/IE51bWJlcihnZnYpIDogZ2Z2O1xuICAgIHJldHVybiB7XG4gICAgICAgIGc6IE1hdGguZmxvb3IoZ2Z2TnVtYmVyIC8gMTAwMDAwKSxcbiAgICAgICAgZjogTWF0aC5mbG9vcigoZ2Z2TnVtYmVyICUgMTAwMDAwKSAvIDEwMCksXG4gICAgICAgIHY6IGdmdk51bWJlciAlIDEwMCxcbiAgICB9O1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxFQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxJQUFBLEdBQUFGLHVCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBRSxRQUFBLEdBQUFGLE9BQUE7QUFFQSxJQUFBRyxzQkFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksZ0JBQUEsR0FBQUosT0FBQTtBQUVBLElBQUFLLFFBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLDBCQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxxQkFBQSxHQUFBUCxPQUFBO0FBQStFLFNBQUFRLHlCQUFBQyxXQUFBLGVBQUFDLE9BQUEsa0NBQUFDLGlCQUFBLE9BQUFELE9BQUEsUUFBQUUsZ0JBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSxDQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJBQUEsS0FBQUYsV0FBQTtBQUFBLFNBQUFWLHdCQUFBYyxHQUFBLEVBQUFKLFdBQUEsU0FBQUEsV0FBQSxJQUFBSSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsb0JBQUFBLEdBQUEsd0JBQUFBLEdBQUEsNEJBQUFFLE9BQUEsRUFBQUYsR0FBQSxVQUFBRyxLQUFBLEdBQUFSLHdCQUFBLENBQUFDLFdBQUEsT0FBQU8sS0FBQSxJQUFBQSxLQUFBLENBQUFDLEdBQUEsQ0FBQUosR0FBQSxZQUFBRyxLQUFB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
@@ -70,4 +70,4 @@ async function writeFilesBatch(filesBatch, outputDirectory) {
70
70
  }
71
71
  }
72
72
  }
73
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcGF0aCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX2ZzRXh0cmEiLCJfQWNxdWlyZUZvcm1HZW5lcmF0b3IiLCJfUHVibGlzaGVkVmVyc2lvblV0aWxzIiwiX1Jlc29sdmVGb3JtSW5mbyIsIl9Gc1V0aWxzIiwiX09ic2VydmUiLCJfV2VsbEtub3duRGlyZWN0b3JpZXMiLCJydW5Mb2NhbGl6YXRpb24iLCJjb250ZXh0Iiwib3B0aW9ucyIsImZhcm1EaXJlY3RvcnkiLCJlbmdpbmVEaXJlY3RvcnkiLCJjYW5keU1vZHVsZXNEaXJlY3RvcnkiLCJobEZhcm1EaXJlY3RvcnlQYXRoIiwiZm9ybURpclBhdGgiLCJwYXRoIiwiam9pbiIsImdmdiIsInBhdGhFeGlzdHMiLCJFcnJvciIsImxvY2FsaXplQ2hhaW4iLCJPYnNlcnZlIiwiZmlsZSIsIldlbGxLbm93bkRpcmVjdG9yaWVzIiwiRm9ybUpzb25GaWxlTmFtZSIsInRyYW5zZm9ybSIsImZvcm1Kc29uRmlsZSIsInJlc29sdmVGb3JtSW5mbyIsImxvZ2dlciIsIndpdGhQcmVmaXgiLCJ4IiwidXNlTG9jYWxHZW5lcmF0b3JTb3VyY2VzIiwiZ2VuZXJhdG9yU291cmNlIiwicmVzb2x2ZUxvY2FsR2VuZXJhdG9yU291cmNlIiwiZ2VuZXJhdG9yVmVyc2lvbiIsInVuZGVmaW5lZCIsInJlc29sdmVHZW5lcmF0b3JWZXJzaW9uIiwiYXR0YWNoIiwiZmkiLCJnZW5lcmF0b3JGYWN0b3J5IiwieSIsImdlbmVyYXRvciIsImdldEdlbmVyYXRvclNvdXJjZUtleSIsImRvIiwiZm9ybVNvdXJjZSIsInJlYWRTb3VyY2VzIiwiZGljdGlvbmFyeU9ubHkiLCJsb2ciLCJsb2NhbGl6YXRpb25EaWN0aW9uYXJ5IiwiZ2V0RGljdGlvbmFyeSIsInN1Z2FyQ29udGVudCIsInJlc291cmNlcyIsIndyaXRlRmlsZXNCYXRjaCIsImxvY2FsaXplZFN1Z2FyIiwiZ2V0TG9jYWxpemVkU3VnYXIiLCJvbGRTdWdhckRpcmVjdG9yeSIsImVuc3VyZURpciIsIlByb21pc2UiLCJhbGwiLCJPYmplY3QiLCJlbnRyaWVzIiwibWFwIiwiZmlsZW5hbWUiLCJzdWdhciIsIndyaXRlRmlsZUFzeW5jIiwiY3VycmVudFZhbHVlIiwiZmlsZXNCYXRjaCIsIm91dHB1dERpcmVjdG9yeSIsImZpbGVQYXRoIiwia2V5cyIsImNvbnRlbnQiLCJwYXJzZSIsImRpciJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9DTElDb21tYW5kcy9Mb2NhbGl6YXRpb24vUnVuTG9jYWxpemF0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCI7XG5cbmltcG9ydCB7IGVuc3VyZURpciwgcGF0aEV4aXN0cyB9IGZyb20gXCJmcy1leHRyYVwiO1xuXG5pbXBvcnQgeyBnZW5lcmF0b3JGYWN0b3J5LCBnZXRHZW5lcmF0b3JTb3VyY2VLZXkgfSBmcm9tIFwiLi4vLi4vQnVpbGRUYXNrcy9HZW5lcmF0b3IvQWNxdWlyZUZvcm1HZW5lcmF0b3JcIjtcbmltcG9ydCB7IHJlc29sdmVHZW5lcmF0b3JWZXJzaW9uLCByZXNvbHZlTG9jYWxHZW5lcmF0b3JTb3VyY2UgfSBmcm9tIFwiLi4vLi4vQnVpbGRUYXNrcy9QdWJsaXNoZWRWZXJzaW9uVXRpbHNcIjtcbmltcG9ydCB7IHJlc29sdmVGb3JtSW5mbyB9IGZyb20gXCIuLi8uLi9CdWlsZFRhc2tzL1Jlc29sdmVGb3JtSW5mb1wiO1xuaW1wb3J0IHsgQ29uc29sZUFwcGxpY2F0aW9uQ29udGV4dCB9IGZyb20gXCIuLi8uLi9Db21tb25zL0NvbnNvbGVBcHBsaWNhdGlvbi9Db25zb2xlQXBwbGljYXRpb25Db250ZXh0XCI7XG5pbXBvcnQgeyB3cml0ZUZpbGVBc3luYyB9IGZyb20gXCIuLi8uLi9Db21tb25zL0ZzVXRpbHNcIjtcbmltcG9ydCB7IE9ic2VydmUgfSBmcm9tIFwiLi4vLi4vQ29tbW9ucy9UYXNrc0NvcmUvT2JzZXJ2ZVwiO1xuXG5pbXBvcnQgeyBMb2NhbGl6YXRpb25PcHRpb25zIH0gZnJvbSBcIi4vTG9jYWxpemF0aW9uT3B0aW9uc1wiO1xuaW1wb3J0IHsgV2VsbEtub3duRGlyZWN0b3JpZXMgfSBmcm9tIFwiLi4vLi4vLi4vLi4vQ29tbW9uL1dlbGxLbm93bkRpcmVjdG9yaWVzXCI7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBydW5Mb2NhbGl6YXRpb24oXG4gICAgY29udGV4dDogQ29uc29sZUFwcGxpY2F0aW9uQ29udGV4dCxcbiAgICBvcHRpb25zOiBMb2NhbGl6YXRpb25PcHRpb25zLFxuICAgIGZhcm1EaXJlY3Rvcnk6IHN0cmluZyxcbiAgICBlbmdpbmVEaXJlY3Rvcnk6IHN0cmluZyxcbiAgICBjYW5keU1vZHVsZXNEaXJlY3Rvcnk6IHN0cmluZyxcbiAgICBobEZhcm1EaXJlY3RvcnlQYXRoOiBzdHJpbmdcbik6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGZvcm1EaXJQYXRoID0gcGF0aC5qb2luKGZhcm1EaXJlY3RvcnksIFwiZm9ybXNcIiwgb3B0aW9ucy5nZnYpO1xuICAgIGlmICghKGF3YWl0IHBhdGhFeGlzdHMoZm9ybURpclBhdGgpKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEdGViAke29wdGlvbnMuZ2Z2fSBkb24ndCBleGlzdGApO1xuICAgIH1cblxuICAgIGNvbnN0IGxvY2FsaXplQ2hhaW4gPSBPYnNlcnZlLmZpbGUocGF0aC5qb2luKGZvcm1EaXJQYXRoLCBXZWxsS25vd25EaXJlY3Rvcmllcy5Gb3JtSnNvbkZpbGVOYW1lKSlcbiAgICAgICAgLnRyYW5zZm9ybShmb3JtSnNvbkZpbGUgPT5cbiAgICAgICAgICAgIHJlc29sdmVGb3JtSW5mbyhcbiAgICAgICAgICAgICAgICBmb3JtSnNvbkZpbGUsXG4gICAgICAgICAgICAgICAgZm9ybURpclBhdGgsXG4gICAgICAgICAgICAgICAgZW5naW5lRGlyZWN0b3J5LFxuICAgICAgICAgICAgICAgIGNvbnRleHQubG9nZ2VyLndpdGhQcmVmaXgoYEZPUk06JHtvcHRpb25zLmdmdn1gKVxuICAgICAgICAgICAgKVxuICAgICAgICApXG4gICAgICAgIC50cmFuc2Zvcm0oYXN5bmMgeCA9PiB7XG4gICAgICAgICAgICBpZiAob3B0aW9ucy51c2VMb2NhbEdlbmVyYXRvclNvdXJjZXMpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAuLi54LFxuICAgICAgICAgICAgICAgICAgICBnZW5lcmF0b3JTb3VyY2U6IHJlc29sdmVMb2NhbEdlbmVyYXRvclNvdXJjZShlbmdpbmVEaXJlY3RvcnkpLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICh4LmdlbmVyYXRvclZlcnNpb24gPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiZ2VuZXJhdG9yVmVyc2lvbiBpcyBubyBkZWZpbmVkXCIpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIC4uLngsXG4gICAgICAgICAgICAgICAgZ2VuZXJhdG9yU291cmNlOiBhd2FpdCByZXNvbHZlR2VuZXJhdG9yVmVyc2lvbih4LmdlbmVyYXRvclZlcnNpb24pLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfSlcbiAgICAgICAgLmF0dGFjaChcbiAgICAgICAgICAgIGFzeW5jIGZpID0+IGdlbmVyYXRvckZhY3RvcnkoZmkuZ2VuZXJhdG9yU291cmNlLCBjYW5keU1vZHVsZXNEaXJlY3RvcnksIGZhbHNlKSxcbiAgICAgICAgICAgIGFzeW5jIChmaSwgeSkgPT4gKHsgLi4uZmksIGdlbmVyYXRvcjogeSB9KSxcbiAgICAgICAgICAgIGFzeW5jIGZpID0+IGdldEdlbmVyYXRvclNvdXJjZUtleShmaS5nZW5lcmF0b3JTb3VyY2UpXG4gICAgICAgIClcbiAgICAgICAgLmRvKGFzeW5jIGZpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGxvZ2dlciA9IGNvbnRleHQubG9nZ2VyLndpdGhQcmVmaXgoXCJMT0NBTElaRVwiKS53aXRoUHJlZml4KG9wdGlvbnMuZ2Z2KTtcblxuICAgICAgICAgICAgY29uc3QgZm9ybVNvdXJjZSA9IGF3YWl0IGZpLmdlbmVyYXRvci5yZWFkU291cmNlcyhmb3JtRGlyUGF0aCwgZmFybURpcmVjdG9yeSwgaGxGYXJtRGlyZWN0b3J5UGF0aCk7XG5cbiAgICAgICAgICAgIGlmIChvcHRpb25zLmRpY3Rpb25hcnlPbmx5KSB7XG4gICAgICAgICAgICAgICAgbG9nZ2VyLmxvZyhcIkdlbmVyYXRlIHRyYW5zbGF0ZSBkaWN0aW9uYXJ5XCIpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGxvY2FsaXphdGlvbkRpY3Rpb25hcnkgPSBhd2FpdCBmaS5nZW5lcmF0b3IuZ2V0RGljdGlvbmFyeShcbiAgICAgICAgICAgICAgICAgICAgZm9ybVNvdXJjZS5zdWdhckNvbnRlbnQsXG4gICAgICAgICAgICAgICAgICAgIGZvcm1Tb3VyY2UucmVzb3VyY2VzXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBsb2dnZXIubG9nKFwiV3JpdGUgdHJhbnNsYXRlIGRpY3Rpb25hcnlcIik7XG4gICAgICAgICAgICAgICAgYXdhaXQgd3JpdGVGaWxlc0JhdGNoKGxvY2FsaXphdGlvbkRpY3Rpb25hcnksIGZvcm1EaXJQYXRoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgbG9nZ2VyLmxvZyhcIkdlbmVyYXRlIGxvY2FsaXphdGlvbiBzdWdhclwiKTtcbiAgICAgICAgICAgICAgICBjb25zdCBsb2NhbGl6ZWRTdWdhciA9IGF3YWl0IGZpLmdlbmVyYXRvci5nZXRMb2NhbGl6ZWRTdWdhcihcbiAgICAgICAgICAgICAgICAgICAgZm9ybVNvdXJjZS5zdWdhckNvbnRlbnQsXG4gICAgICAgICAgICAgICAgICAgIGZvcm1Tb3VyY2UucmVzb3VyY2VzXG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgIGxvZ2dlci5sb2coXCJHZW5lcmF0ZSB0cmFuc2xhdGUgZGljdGlvbmFyeVwiKTtcbiAgICAgICAgICAgICAgICBjb25zdCBsb2NhbGl6YXRpb25EaWN0aW9uYXJ5ID0gYXdhaXQgZmkuZ2VuZXJhdG9yLmdldERpY3Rpb25hcnkobG9jYWxpemVkU3VnYXIsIGZvcm1Tb3VyY2UucmVzb3VyY2VzKTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IG9sZFN1Z2FyRGlyZWN0b3J5ID0gcGF0aC5qb2luKGZvcm1EaXJQYXRoLCBcIm9sZHN1Z2FyXCIpO1xuICAgICAgICAgICAgICAgIGxvZ2dlci5sb2coYFdyaXRlIHByZXZpb3VzIHZlcnNpb24gc3VnYXIgaW4gXCIke29sZFN1Z2FyRGlyZWN0b3J5fVwiYCk7XG4gICAgICAgICAgICAgICAgYXdhaXQgZW5zdXJlRGlyKG9sZFN1Z2FyRGlyZWN0b3J5KTtcbiAgICAgICAgICAgICAgICBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmVudHJpZXMoZm9ybVNvdXJjZS5zdWdhckNvbnRlbnQpLm1hcCgoW2ZpbGVuYW1lLCBzdWdhcl0pID0+XG4gICAgICAgICAgICAgICAgICAgICAgICB3cml0ZUZpbGVBc3luYyhwYXRoLmpvaW4ob2xkU3VnYXJEaXJlY3RvcnksIGZpbGVuYW1lICsgXCIuc3VnYXIueG1sXCIpLCBzdWdhcilcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICBsb2dnZXIubG9nKFwiV3JpdGUgbG9jYWxpemF0aW9uIHN1Z2FyXCIpO1xuICAgICAgICAgICAgICAgIGF3YWl0IHdyaXRlRmlsZXNCYXRjaChsb2NhbGl6ZWRTdWdhciwgZm9ybURpclBhdGgpO1xuXG4gICAgICAgICAgICAgICAgbG9nZ2VyLmxvZyhcIldyaXRlIHRyYW5zbGF0ZSBkaWN0aW9uYXJ5XCIpO1xuICAgICAgICAgICAgICAgIGF3YWl0IHdyaXRlRmlsZXNCYXRjaChsb2NhbGl6YXRpb25EaWN0aW9uYXJ5LCBmb3JtRGlyUGF0aCk7XG4gICAgICAgICAgICAgICAgbG9nZ2VyLmxvZyhcIkxvY2FsaXplIHN1Y2Nlc3NmdWwgY29tcGxldGVcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgYXdhaXQgbG9jYWxpemVDaGFpbi5jdXJyZW50VmFsdWU7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHdyaXRlRmlsZXNCYXRjaChcbiAgICBmaWxlc0JhdGNoOiB7XG4gICAgICAgIFtyZWxhdGl2ZUZpbGVOYW1lOiBzdHJpbmddOiBzdHJpbmcgfCBCdWZmZXI7XG4gICAgfSxcbiAgICBvdXRwdXREaXJlY3Rvcnk6IHN0cmluZ1xuKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgZm9yIChjb25zdCBmaWxlUGF0aCBvZiBPYmplY3Qua2V5cyhmaWxlc0JhdGNoKSkge1xuICAgICAgICBjb25zdCBjb250ZW50ID0gZmlsZXNCYXRjaFtmaWxlUGF0aF07XG4gICAgICAgIGlmIChjb250ZW50ICE9IHVuZGVmaW5lZCAmJiBjb250ZW50ICE9PSBcIlwiKSB7XG4gICAgICAgICAgICBhd2FpdCBlbnN1cmVEaXIocGF0aC5qb2luKG91dHB1dERpcmVjdG9yeSwgcGF0aC5wYXJzZShmaWxlUGF0aCkuZGlyKSk7XG4gICAgICAgICAgICBhd2FpdCB3cml0ZUZpbGVBc3luYyhwYXRoLmpvaW4ob3V0cHV0RGlyZWN0b3J5LCBmaWxlUGF0aCksIGNvbnRlbnQpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsS0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsUUFBQSxHQUFBRCxPQUFBO0FBRUEsSUFBQUUscUJBQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLHNCQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxnQkFBQSxHQUFBSixPQUFBO0FBRUEsSUFBQUssUUFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sUUFBQSxHQUFBTixPQUFBO0FBR0EsSUFBQU8scUJBQUEsR0FBQVAsT0FBQTtBQUVPLGVBQWVRLGVBQWVBLENBQ2pDQyxPQUFrQyxFQUNsQ0MsT0FBNEIsRUFDNUJDLGFBQXFCLEVBQ3JCQyxlQUF1QixFQUN2QkMscUJBQTZCLEVBQzdCQyxtQkFBMkIsRUFDZDtFQUNiLE1BQU1DLFdBQVcsR0FBR0MsYUFBSSxDQUFDQyxJQUFJLENBQUNOLGFBQWEsRUFBRSxPQUFPLEVBQUVELE9BQU8sQ0FBQ1EsR0FBRyxDQUFDO0VBQ2xFLElBQUksRUFBRSxNQUFNLElBQUFDLG1CQUFVLEVBQUNKLFdBQVcsQ0FBQyxDQUFDLEVBQUU7SUFDbEMsTUFBTSxJQUFJSyxLQUFLLENBQUUsT0FBTVYsT0FBTyxDQUFDUSxHQUFJLGNBQWEsQ0FBQztFQUNyRDtFQUVBLE1BQU1HLGFBQWEsR0FBR0MsZ0JBQU8sQ0FBQ0MsSUFBSSxDQUFDUCxhQUFJLENBQUNDLElBQUksQ0FBQ0YsV0FBVyxFQUFFUywwQ0FBb0IsQ0FBQ0MsZ0JBQWdCLENBQUMsQ0FBQyxDQUM1RkMsU0FBUyxDQUFDQyxZQUFZLElBQ25CLElBQUFDLGdDQUFlLEVBQ1hELFlBQVksRUFDWlosV0FBVyxFQUNYSCxlQUFlLEVBQ2ZILE9BQU8sQ0FBQ29CLE1BQU0sQ0FBQ0MsVUFBVSxDQUFFLFFBQU9wQixPQUFPLENBQUNRLEdBQUksRUFBQyxDQUNuRCxDQUNKLENBQUMsQ0FDQVEsU0FBUyxDQUFDLE1BQU1LLENBQUMsSUFBSTtJQUNsQixJQUFJckIsT0FBTyxDQUFDc0Isd0JBQXdCLEVBQUU7TUFDbEMsT0FBTztRQUNILEdBQUdELENBQUM7UUFDSkUsZUFBZSxFQUFFLElBQUFDLGtEQUEyQixFQUFDdEIsZUFBZTtNQUNoRSxDQUFDO0lBQ0w7SUFFQSxJQUFJbUIsQ0FBQyxDQUFDSSxnQkFBZ0IsSUFBSUMsU0FBUyxFQUFFO01BQ2pDLE1BQU0sSUFBSWhCLEtBQUssQ0FBQyxnQ0FBZ0MsQ0FBQztJQUNyRDtJQUVBLE9BQU87TUFDSCxHQUFHVyxDQUFDO01BQ0pFLGVBQWUsRUFBRSxNQUFNLElBQUFJLDhDQUF1QixFQUFDTixDQUFDLENBQUNJLGdCQUFnQjtJQUNyRSxDQUFDO0VBQ0wsQ0FBQyxDQUFDLENBQ0RHLE1BQU0sQ0FDSCxNQUFNQyxFQUFFLElBQUksSUFBQUMsc0NBQWdCLEVBQUNELEVBQUUsQ0FBQ04sZUFBZSxFQUFFcEIscUJBQXFCLEVBQUUsS0FBSyxDQUFDLEVBQzlFLE9BQU8wQixFQUFFLEVBQUVFLENBQUMsTUFBTTtJQUFFLEdBQUdGLEVBQUU7SUFBRUcsU0FBUyxFQUFFRDtFQUFFLENBQUMsQ0FBQyxFQUMxQyxNQUFNRixFQUFFLElBQUksSUFBQUksMkNBQXFCLEVBQUNKLEVBQUUsQ0FBQ04sZUFBZSxDQUN4RCxDQUFDLENBQ0FXLEVBQUUsQ0FBQyxNQUFNTCxFQUFFLElBQUk7SUFDWixNQUFNVixNQUFNLEdBQUdwQixPQUFPLENBQUNvQixNQUFNLENBQUNDLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQ0EsVUFBVSxDQUFDcEIsT0FBTyxDQUFDUSxHQUFHLENBQUM7SUFFNUUsTUFBTTJCLFVBQVUsR0FBRyxNQUFNTixFQUFFLENBQUNHLFNBQVMsQ0FBQ0ksV0FBVyxDQUFDL0IsV0FBVyxFQUFFSixhQUFhLEVBQUVHLG1CQUFtQixDQUFDO0lBRWxHLElBQUlKLE9BQU8sQ0FBQ3FDLGNBQWMsRUFBRTtNQUN4QmxCLE1BQU0sQ0FBQ21CLEdBQUcsQ0FBQywrQkFBK0IsQ0FBQztNQUMzQyxNQUFNQyxzQkFBc0IsR0FBRyxNQUFNVixFQUFFLENBQUNHLFNBQVMsQ0FBQ1EsYUFBYSxDQUMzREwsVUFBVSxDQUFDTSxZQUFZLEVBQ3ZCTixVQUFVLENBQUNPLFNBQ2YsQ0FBQztNQUNEdkIsTUFBTSxDQUFDbUIsR0FBRyxDQUFDLDRCQUE0QixDQUFDO01BQ3hDLE1BQU1LLGVBQWUsQ0FBQ0osc0JBQXNCLEVBQUVsQyxXQUFXLENBQUM7SUFDOUQsQ0FBQyxNQUFNO01BQ0hjLE1BQU0sQ0FBQ21CLEdBQUcsQ0FBQyw2QkFBNkIsQ0FBQztNQUN6QyxNQUFNTSxjQUFjLEdBQUcsTUFBTWYsRUFBRSxDQUFDRyxTQUFTLENBQUNhLGlCQUFpQixDQUN2RFYsVUFBVSxDQUFDTSxZQUFZLEVBQ3ZCTixVQUFVLENBQUNPLFNBQ2YsQ0FBQztNQUVEdkIsTUFBTSxDQUFDbUIsR0FBRyxDQUFDLCtCQUErQixDQUFDO01BQzNDLE1BQU1DLHNCQUFzQixHQUFHLE1BQU1WLEVBQUUsQ0FBQ0csU0FBUyxDQUFDUSxhQUFhLENBQUNJLGNBQWMsRUFBRVQsVUFBVSxDQUFDTyxTQUFTLENBQUM7TUFFckcsTUFBTUksaUJBQWlCLEdBQUd4QyxhQUFJLENBQUNDLElBQUksQ0FBQ0YsV0FBVyxFQUFFLFVBQVUsQ0FBQztNQUM1RGMsTUFBTSxDQUFDbUIsR0FBRyxDQUFFLG9DQUFtQ1EsaUJBQWtCLEdBQUUsQ0FBQztNQUNwRSxNQUFNLElBQUFDLGtCQUFTLEVBQUNELGlCQUFpQixDQUFDO01BQ2xDLE1BQU1FLE9BQU8sQ0FBQ0MsR0FBRyxDQUNiQyxNQUFNLENBQUNDLE9BQU8sQ0FBQ2hCLFVBQVUsQ0FBQ00sWUFBWSxDQUFDLENBQUNXLEdBQUcsQ0FBQyxDQUFDLENBQUNDLFFBQVEsRUFBRUMsS0FBSyxDQUFDLEtBQzFELElBQUFDLHVCQUFjLEVBQUNqRCxhQUFJLENBQUNDLElBQUksQ0FBQ3VDLGlCQUFpQixFQUFFTyxRQUFRLEdBQUcsWUFBWSxDQUFDLEVBQUVDLEtBQUssQ0FDL0UsQ0FDSixDQUFDO01BRURuQyxNQUFNLENBQUNtQixHQUFHLENBQUMsMEJBQTBCLENBQUM7TUFDdEMsTUFBTUssZUFBZSxDQUFDQyxjQUFjLEVBQUV2QyxXQUFXLENBQUM7TUFFbERjLE1BQU0sQ0FBQ21CLEdBQUcsQ0FBQyw0QkFBNEIsQ0FBQztNQUN4QyxNQUFNSyxlQUFlLENBQUNKLHNCQUFzQixFQUFFbEMsV0FBVyxDQUFDO01BQzFEYyxNQUFNLENBQUNtQixHQUFHLENBQUMsOEJBQThCLENBQUM7SUFDOUM7RUFDSixDQUFDLENBQUM7RUFFTixNQUFNM0IsYUFBYSxDQUFDNkMsWUFBWTtBQUNwQztBQUVBLGVBQWViLGVBQWVBLENBQzFCYyxVQUVDLEVBQ0RDLGVBQXVCLEVBQ1Y7RUFDYixLQUFLLE1BQU1DLFFBQVEsSUFBSVQsTUFBTSxDQUFDVSxJQUFJLENBQUNILFVBQVUsQ0FBQyxFQUFFO0lBQzVDLE1BQU1JLE9BQU8sR0FBR0osVUFBVSxDQUFDRSxRQUFRLENBQUM7SUFDcEMsSUFBSUUsT0FBTyxJQUFJbkMsU0FBUyxJQUFJbUMsT0FBTyxLQUFLLEVBQUUsRUFBRTtNQUN4QyxNQUFNLElBQUFkLGtCQUFTLEVBQUN6QyxhQUFJLENBQUNDLElBQUksQ0FBQ21ELGVBQWUsRUFBRXBELGFBQUksQ0FBQ3dELEtBQUssQ0FBQ0gsUUFBUSxDQUFDLENBQUNJLEdBQUcsQ0FBQyxDQUFDO01BQ3JFLE1BQU0sSUFBQVIsdUJBQWMsRUFBQ2pELGFBQUksQ0FBQ0MsSUFBSSxDQUFDbUQsZUFBZSxFQUFFQyxRQUFRLENBQUMsRUFBRUUsT0FBTyxDQUFDO0lBQ3ZFO0VBQ0o7QUFDSiJ9
73
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcGF0aCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX2ZzRXh0cmEiLCJfQWNxdWlyZUZvcm1HZW5lcmF0b3IiLCJfUHVibGlzaGVkVmVyc2lvblV0aWxzIiwiX1Jlc29sdmVGb3JtSW5mbyIsIl9Gc1V0aWxzIiwiX09ic2VydmUiLCJfV2VsbEtub3duRGlyZWN0b3JpZXMiLCJydW5Mb2NhbGl6YXRpb24iLCJjb250ZXh0Iiwib3B0aW9ucyIsImZhcm1EaXJlY3RvcnkiLCJlbmdpbmVEaXJlY3RvcnkiLCJjYW5keU1vZHVsZXNEaXJlY3RvcnkiLCJobEZhcm1EaXJlY3RvcnlQYXRoIiwiZm9ybURpclBhdGgiLCJwYXRoIiwiam9pbiIsImdmdiIsInBhdGhFeGlzdHMiLCJFcnJvciIsImxvY2FsaXplQ2hhaW4iLCJPYnNlcnZlIiwiZmlsZSIsIldlbGxLbm93bkRpcmVjdG9yaWVzIiwiRm9ybUpzb25GaWxlTmFtZSIsInRyYW5zZm9ybSIsImZvcm1Kc29uRmlsZSIsInJlc29sdmVGb3JtSW5mbyIsImxvZ2dlciIsIndpdGhQcmVmaXgiLCJ4IiwidXNlTG9jYWxHZW5lcmF0b3JTb3VyY2VzIiwiZ2VuZXJhdG9yU291cmNlIiwicmVzb2x2ZUxvY2FsR2VuZXJhdG9yU291cmNlIiwiZ2VuZXJhdG9yVmVyc2lvbiIsInVuZGVmaW5lZCIsInJlc29sdmVHZW5lcmF0b3JWZXJzaW9uIiwiYXR0YWNoIiwiZmkiLCJnZW5lcmF0b3JGYWN0b3J5IiwieSIsImdlbmVyYXRvciIsImdldEdlbmVyYXRvclNvdXJjZUtleSIsImRvIiwiZm9ybVNvdXJjZSIsInJlYWRTb3VyY2VzIiwiZGljdGlvbmFyeU9ubHkiLCJsb2ciLCJsb2NhbGl6YXRpb25EaWN0aW9uYXJ5IiwiZ2V0RGljdGlvbmFyeSIsInN1Z2FyQ29udGVudCIsInJlc291cmNlcyIsIndyaXRlRmlsZXNCYXRjaCIsImxvY2FsaXplZFN1Z2FyIiwiZ2V0TG9jYWxpemVkU3VnYXIiLCJvbGRTdWdhckRpcmVjdG9yeSIsImVuc3VyZURpciIsIlByb21pc2UiLCJhbGwiLCJPYmplY3QiLCJlbnRyaWVzIiwibWFwIiwiZmlsZW5hbWUiLCJzdWdhciIsIndyaXRlRmlsZUFzeW5jIiwiY3VycmVudFZhbHVlIiwiZmlsZXNCYXRjaCIsIm91dHB1dERpcmVjdG9yeSIsImZpbGVQYXRoIiwia2V5cyIsImNvbnRlbnQiLCJwYXJzZSIsImRpciJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9DTElDb21tYW5kcy9Mb2NhbGl6YXRpb24vUnVuTG9jYWxpemF0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCI7XG5cbmltcG9ydCB7IGVuc3VyZURpciwgcGF0aEV4aXN0cyB9IGZyb20gXCJmcy1leHRyYVwiO1xuXG5pbXBvcnQgeyBnZW5lcmF0b3JGYWN0b3J5LCBnZXRHZW5lcmF0b3JTb3VyY2VLZXkgfSBmcm9tIFwiLi4vLi4vQnVpbGRUYXNrcy9HZW5lcmF0b3IvQWNxdWlyZUZvcm1HZW5lcmF0b3JcIjtcbmltcG9ydCB7IHJlc29sdmVHZW5lcmF0b3JWZXJzaW9uLCByZXNvbHZlTG9jYWxHZW5lcmF0b3JTb3VyY2UgfSBmcm9tIFwiLi4vLi4vQnVpbGRUYXNrcy9QdWJsaXNoZWRWZXJzaW9uVXRpbHNcIjtcbmltcG9ydCB7IHJlc29sdmVGb3JtSW5mbyB9IGZyb20gXCIuLi8uLi9CdWlsZFRhc2tzL1Jlc29sdmVGb3JtSW5mb1wiO1xuaW1wb3J0IHsgQ29uc29sZUFwcGxpY2F0aW9uQ29udGV4dCB9IGZyb20gXCIuLi8uLi9Db21tb25zL0NvbnNvbGVBcHBsaWNhdGlvbi9Db25zb2xlQXBwbGljYXRpb25Db250ZXh0XCI7XG5pbXBvcnQgeyB3cml0ZUZpbGVBc3luYyB9IGZyb20gXCIuLi8uLi9Db21tb25zL0ZzVXRpbHNcIjtcbmltcG9ydCB7IE9ic2VydmUgfSBmcm9tIFwiLi4vLi4vQ29tbW9ucy9UYXNrc0NvcmUvT2JzZXJ2ZVwiO1xuaW1wb3J0IHsgV2VsbEtub3duRGlyZWN0b3JpZXMgfSBmcm9tIFwiLi4vLi4vLi4vLi4vQ29tbW9uL1dlbGxLbm93bkRpcmVjdG9yaWVzXCI7XG5cbmltcG9ydCB7IExvY2FsaXphdGlvbk9wdGlvbnMgfSBmcm9tIFwiLi9Mb2NhbGl6YXRpb25PcHRpb25zXCI7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBydW5Mb2NhbGl6YXRpb24oXG4gICAgY29udGV4dDogQ29uc29sZUFwcGxpY2F0aW9uQ29udGV4dCxcbiAgICBvcHRpb25zOiBMb2NhbGl6YXRpb25PcHRpb25zLFxuICAgIGZhcm1EaXJlY3Rvcnk6IHN0cmluZyxcbiAgICBlbmdpbmVEaXJlY3Rvcnk6IHN0cmluZyxcbiAgICBjYW5keU1vZHVsZXNEaXJlY3Rvcnk6IHN0cmluZyxcbiAgICBobEZhcm1EaXJlY3RvcnlQYXRoOiBzdHJpbmdcbik6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGZvcm1EaXJQYXRoID0gcGF0aC5qb2luKGZhcm1EaXJlY3RvcnksIFwiZm9ybXNcIiwgb3B0aW9ucy5nZnYpO1xuICAgIGlmICghKGF3YWl0IHBhdGhFeGlzdHMoZm9ybURpclBhdGgpKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEdGViAke29wdGlvbnMuZ2Z2fSBkb24ndCBleGlzdGApO1xuICAgIH1cblxuICAgIGNvbnN0IGxvY2FsaXplQ2hhaW4gPSBPYnNlcnZlLmZpbGUocGF0aC5qb2luKGZvcm1EaXJQYXRoLCBXZWxsS25vd25EaXJlY3Rvcmllcy5Gb3JtSnNvbkZpbGVOYW1lKSlcbiAgICAgICAgLnRyYW5zZm9ybShmb3JtSnNvbkZpbGUgPT5cbiAgICAgICAgICAgIHJlc29sdmVGb3JtSW5mbyhcbiAgICAgICAgICAgICAgICBmb3JtSnNvbkZpbGUsXG4gICAgICAgICAgICAgICAgZm9ybURpclBhdGgsXG4gICAgICAgICAgICAgICAgZW5naW5lRGlyZWN0b3J5LFxuICAgICAgICAgICAgICAgIGNvbnRleHQubG9nZ2VyLndpdGhQcmVmaXgoYEZPUk06JHtvcHRpb25zLmdmdn1gKVxuICAgICAgICAgICAgKVxuICAgICAgICApXG4gICAgICAgIC50cmFuc2Zvcm0oYXN5bmMgeCA9PiB7XG4gICAgICAgICAgICBpZiAob3B0aW9ucy51c2VMb2NhbEdlbmVyYXRvclNvdXJjZXMpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAuLi54LFxuICAgICAgICAgICAgICAgICAgICBnZW5lcmF0b3JTb3VyY2U6IHJlc29sdmVMb2NhbEdlbmVyYXRvclNvdXJjZShlbmdpbmVEaXJlY3RvcnkpLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICh4LmdlbmVyYXRvclZlcnNpb24gPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiZ2VuZXJhdG9yVmVyc2lvbiBpcyBubyBkZWZpbmVkXCIpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIC4uLngsXG4gICAgICAgICAgICAgICAgZ2VuZXJhdG9yU291cmNlOiBhd2FpdCByZXNvbHZlR2VuZXJhdG9yVmVyc2lvbih4LmdlbmVyYXRvclZlcnNpb24pLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfSlcbiAgICAgICAgLmF0dGFjaChcbiAgICAgICAgICAgIGFzeW5jIGZpID0+IGdlbmVyYXRvckZhY3RvcnkoZmkuZ2VuZXJhdG9yU291cmNlLCBjYW5keU1vZHVsZXNEaXJlY3RvcnksIGZhbHNlKSxcbiAgICAgICAgICAgIGFzeW5jIChmaSwgeSkgPT4gKHsgLi4uZmksIGdlbmVyYXRvcjogeSB9KSxcbiAgICAgICAgICAgIGFzeW5jIGZpID0+IGdldEdlbmVyYXRvclNvdXJjZUtleShmaS5nZW5lcmF0b3JTb3VyY2UpXG4gICAgICAgIClcbiAgICAgICAgLmRvKGFzeW5jIGZpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGxvZ2dlciA9IGNvbnRleHQubG9nZ2VyLndpdGhQcmVmaXgoXCJMT0NBTElaRVwiKS53aXRoUHJlZml4KG9wdGlvbnMuZ2Z2KTtcblxuICAgICAgICAgICAgY29uc3QgZm9ybVNvdXJjZSA9IGF3YWl0IGZpLmdlbmVyYXRvci5yZWFkU291cmNlcyhmb3JtRGlyUGF0aCwgZmFybURpcmVjdG9yeSwgaGxGYXJtRGlyZWN0b3J5UGF0aCk7XG5cbiAgICAgICAgICAgIGlmIChvcHRpb25zLmRpY3Rpb25hcnlPbmx5KSB7XG4gICAgICAgICAgICAgICAgbG9nZ2VyLmxvZyhcIkdlbmVyYXRlIHRyYW5zbGF0ZSBkaWN0aW9uYXJ5XCIpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGxvY2FsaXphdGlvbkRpY3Rpb25hcnkgPSBhd2FpdCBmaS5nZW5lcmF0b3IuZ2V0RGljdGlvbmFyeShcbiAgICAgICAgICAgICAgICAgICAgZm9ybVNvdXJjZS5zdWdhckNvbnRlbnQsXG4gICAgICAgICAgICAgICAgICAgIGZvcm1Tb3VyY2UucmVzb3VyY2VzXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBsb2dnZXIubG9nKFwiV3JpdGUgdHJhbnNsYXRlIGRpY3Rpb25hcnlcIik7XG4gICAgICAgICAgICAgICAgYXdhaXQgd3JpdGVGaWxlc0JhdGNoKGxvY2FsaXphdGlvbkRpY3Rpb25hcnksIGZvcm1EaXJQYXRoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgbG9nZ2VyLmxvZyhcIkdlbmVyYXRlIGxvY2FsaXphdGlvbiBzdWdhclwiKTtcbiAgICAgICAgICAgICAgICBjb25zdCBsb2NhbGl6ZWRTdWdhciA9IGF3YWl0IGZpLmdlbmVyYXRvci5nZXRMb2NhbGl6ZWRTdWdhcihcbiAgICAgICAgICAgICAgICAgICAgZm9ybVNvdXJjZS5zdWdhckNvbnRlbnQsXG4gICAgICAgICAgICAgICAgICAgIGZvcm1Tb3VyY2UucmVzb3VyY2VzXG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgIGxvZ2dlci5sb2coXCJHZW5lcmF0ZSB0cmFuc2xhdGUgZGljdGlvbmFyeVwiKTtcbiAgICAgICAgICAgICAgICBjb25zdCBsb2NhbGl6YXRpb25EaWN0aW9uYXJ5ID0gYXdhaXQgZmkuZ2VuZXJhdG9yLmdldERpY3Rpb25hcnkobG9jYWxpemVkU3VnYXIsIGZvcm1Tb3VyY2UucmVzb3VyY2VzKTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IG9sZFN1Z2FyRGlyZWN0b3J5ID0gcGF0aC5qb2luKGZvcm1EaXJQYXRoLCBcIm9sZHN1Z2FyXCIpO1xuICAgICAgICAgICAgICAgIGxvZ2dlci5sb2coYFdyaXRlIHByZXZpb3VzIHZlcnNpb24gc3VnYXIgaW4gXCIke29sZFN1Z2FyRGlyZWN0b3J5fVwiYCk7XG4gICAgICAgICAgICAgICAgYXdhaXQgZW5zdXJlRGlyKG9sZFN1Z2FyRGlyZWN0b3J5KTtcbiAgICAgICAgICAgICAgICBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmVudHJpZXMoZm9ybVNvdXJjZS5zdWdhckNvbnRlbnQpLm1hcCgoW2ZpbGVuYW1lLCBzdWdhcl0pID0+XG4gICAgICAgICAgICAgICAgICAgICAgICB3cml0ZUZpbGVBc3luYyhwYXRoLmpvaW4ob2xkU3VnYXJEaXJlY3RvcnksIGZpbGVuYW1lICsgXCIuc3VnYXIueG1sXCIpLCBzdWdhcilcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICBsb2dnZXIubG9nKFwiV3JpdGUgbG9jYWxpemF0aW9uIHN1Z2FyXCIpO1xuICAgICAgICAgICAgICAgIGF3YWl0IHdyaXRlRmlsZXNCYXRjaChsb2NhbGl6ZWRTdWdhciwgZm9ybURpclBhdGgpO1xuXG4gICAgICAgICAgICAgICAgbG9nZ2VyLmxvZyhcIldyaXRlIHRyYW5zbGF0ZSBkaWN0aW9uYXJ5XCIpO1xuICAgICAgICAgICAgICAgIGF3YWl0IHdyaXRlRmlsZXNCYXRjaChsb2NhbGl6YXRpb25EaWN0aW9uYXJ5LCBmb3JtRGlyUGF0aCk7XG4gICAgICAgICAgICAgICAgbG9nZ2VyLmxvZyhcIkxvY2FsaXplIHN1Y2Nlc3NmdWwgY29tcGxldGVcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgYXdhaXQgbG9jYWxpemVDaGFpbi5jdXJyZW50VmFsdWU7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHdyaXRlRmlsZXNCYXRjaChcbiAgICBmaWxlc0JhdGNoOiB7XG4gICAgICAgIFtyZWxhdGl2ZUZpbGVOYW1lOiBzdHJpbmddOiBzdHJpbmcgfCBCdWZmZXI7XG4gICAgfSxcbiAgICBvdXRwdXREaXJlY3Rvcnk6IHN0cmluZ1xuKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgZm9yIChjb25zdCBmaWxlUGF0aCBvZiBPYmplY3Qua2V5cyhmaWxlc0JhdGNoKSkge1xuICAgICAgICBjb25zdCBjb250ZW50ID0gZmlsZXNCYXRjaFtmaWxlUGF0aF07XG4gICAgICAgIGlmIChjb250ZW50ICE9IHVuZGVmaW5lZCAmJiBjb250ZW50ICE9PSBcIlwiKSB7XG4gICAgICAgICAgICBhd2FpdCBlbnN1cmVEaXIocGF0aC5qb2luKG91dHB1dERpcmVjdG9yeSwgcGF0aC5wYXJzZShmaWxlUGF0aCkuZGlyKSk7XG4gICAgICAgICAgICBhd2FpdCB3cml0ZUZpbGVBc3luYyhwYXRoLmpvaW4ob3V0cHV0RGlyZWN0b3J5LCBmaWxlUGF0aCksIGNvbnRlbnQpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsS0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsUUFBQSxHQUFBRCxPQUFBO0FBRUEsSUFBQUUscUJBQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLHNCQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxnQkFBQSxHQUFBSixPQUFBO0FBRUEsSUFBQUssUUFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sUUFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8scUJBQUEsR0FBQVAsT0FBQTtBQUlPLGVBQWVRLGVBQWVBLENBQ2pDQyxPQUFrQyxFQUNsQ0MsT0FBNEIsRUFDNUJDLGFBQXFCLEVBQ3JCQyxlQUF1QixFQUN2QkMscUJBQTZCLEVBQzdCQyxtQkFBMkIsRUFDZDtFQUNiLE1BQU1DLFdBQVcsR0FBR0MsYUFBSSxDQUFDQyxJQUFJLENBQUNOLGFBQWEsRUFBRSxPQUFPLEVBQUVELE9BQU8sQ0FBQ1EsR0FBRyxDQUFDO0VBQ2xFLElBQUksRUFBRSxNQUFNLElBQUFDLG1CQUFVLEVBQUNKLFdBQVcsQ0FBQyxDQUFDLEVBQUU7SUFDbEMsTUFBTSxJQUFJSyxLQUFLLENBQUUsT0FBTVYsT0FBTyxDQUFDUSxHQUFJLGNBQWEsQ0FBQztFQUNyRDtFQUVBLE1BQU1HLGFBQWEsR0FBR0MsZ0JBQU8sQ0FBQ0MsSUFBSSxDQUFDUCxhQUFJLENBQUNDLElBQUksQ0FBQ0YsV0FBVyxFQUFFUywwQ0FBb0IsQ0FBQ0MsZ0JBQWdCLENBQUMsQ0FBQyxDQUM1RkMsU0FBUyxDQUFDQyxZQUFZLElBQ25CLElBQUFDLGdDQUFlLEVBQ1hELFlBQVksRUFDWlosV0FBVyxFQUNYSCxlQUFlLEVBQ2ZILE9BQU8sQ0FBQ29CLE1BQU0sQ0FBQ0MsVUFBVSxDQUFFLFFBQU9wQixPQUFPLENBQUNRLEdBQUksRUFBQyxDQUNuRCxDQUNKLENBQUMsQ0FDQVEsU0FBUyxDQUFDLE1BQU1LLENBQUMsSUFBSTtJQUNsQixJQUFJckIsT0FBTyxDQUFDc0Isd0JBQXdCLEVBQUU7TUFDbEMsT0FBTztRQUNILEdBQUdELENBQUM7UUFDSkUsZUFBZSxFQUFFLElBQUFDLGtEQUEyQixFQUFDdEIsZUFBZTtNQUNoRSxDQUFDO0lBQ0w7SUFFQSxJQUFJbUIsQ0FBQyxDQUFDSSxnQkFBZ0IsSUFBSUMsU0FBUyxFQUFFO01BQ2pDLE1BQU0sSUFBSWhCLEtBQUssQ0FBQyxnQ0FBZ0MsQ0FBQztJQUNyRDtJQUVBLE9BQU87TUFDSCxHQUFHVyxDQUFDO01BQ0pFLGVBQWUsRUFBRSxNQUFNLElBQUFJLDhDQUF1QixFQUFDTixDQUFDLENBQUNJLGdCQUFnQjtJQUNyRSxDQUFDO0VBQ0wsQ0FBQyxDQUFDLENBQ0RHLE1BQU0sQ0FDSCxNQUFNQyxFQUFFLElBQUksSUFBQUMsc0NBQWdCLEVBQUNELEVBQUUsQ0FBQ04sZUFBZSxFQUFFcEIscUJBQXFCLEVBQUUsS0FBSyxDQUFDLEVBQzlFLE9BQU8wQixFQUFFLEVBQUVFLENBQUMsTUFBTTtJQUFFLEdBQUdGLEVBQUU7SUFBRUcsU0FBUyxFQUFFRDtFQUFFLENBQUMsQ0FBQyxFQUMxQyxNQUFNRixFQUFFLElBQUksSUFBQUksMkNBQXFCLEVBQUNKLEVBQUUsQ0FBQ04sZUFBZSxDQUN4RCxDQUFDLENBQ0FXLEVBQUUsQ0FBQyxNQUFNTCxFQUFFLElBQUk7SUFDWixNQUFNVixNQUFNLEdBQUdwQixPQUFPLENBQUNvQixNQUFNLENBQUNDLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQ0EsVUFBVSxDQUFDcEIsT0FBTyxDQUFDUSxHQUFHLENBQUM7SUFFNUUsTUFBTTJCLFVBQVUsR0FBRyxNQUFNTixFQUFFLENBQUNHLFNBQVMsQ0FBQ0ksV0FBVyxDQUFDL0IsV0FBVyxFQUFFSixhQUFhLEVBQUVHLG1CQUFtQixDQUFDO0lBRWxHLElBQUlKLE9BQU8sQ0FBQ3FDLGNBQWMsRUFBRTtNQUN4QmxCLE1BQU0sQ0FBQ21CLEdBQUcsQ0FBQywrQkFBK0IsQ0FBQztNQUMzQyxNQUFNQyxzQkFBc0IsR0FBRyxNQUFNVixFQUFFLENBQUNHLFNBQVMsQ0FBQ1EsYUFBYSxDQUMzREwsVUFBVSxDQUFDTSxZQUFZLEVBQ3ZCTixVQUFVLENBQUNPLFNBQ2YsQ0FBQztNQUNEdkIsTUFBTSxDQUFDbUIsR0FBRyxDQUFDLDRCQUE0QixDQUFDO01BQ3hDLE1BQU1LLGVBQWUsQ0FBQ0osc0JBQXNCLEVBQUVsQyxXQUFXLENBQUM7SUFDOUQsQ0FBQyxNQUFNO01BQ0hjLE1BQU0sQ0FBQ21CLEdBQUcsQ0FBQyw2QkFBNkIsQ0FBQztNQUN6QyxNQUFNTSxjQUFjLEdBQUcsTUFBTWYsRUFBRSxDQUFDRyxTQUFTLENBQUNhLGlCQUFpQixDQUN2RFYsVUFBVSxDQUFDTSxZQUFZLEVBQ3ZCTixVQUFVLENBQUNPLFNBQ2YsQ0FBQztNQUVEdkIsTUFBTSxDQUFDbUIsR0FBRyxDQUFDLCtCQUErQixDQUFDO01BQzNDLE1BQU1DLHNCQUFzQixHQUFHLE1BQU1WLEVBQUUsQ0FBQ0csU0FBUyxDQUFDUSxhQUFhLENBQUNJLGNBQWMsRUFBRVQsVUFBVSxDQUFDTyxTQUFTLENBQUM7TUFFckcsTUFBTUksaUJBQWlCLEdBQUd4QyxhQUFJLENBQUNDLElBQUksQ0FBQ0YsV0FBVyxFQUFFLFVBQVUsQ0FBQztNQUM1RGMsTUFBTSxDQUFDbUIsR0FBRyxDQUFFLG9DQUFtQ1EsaUJBQWtCLEdBQUUsQ0FBQztNQUNwRSxNQUFNLElBQUFDLGtCQUFTLEVBQUNELGlCQUFpQixDQUFDO01BQ2xDLE1BQU1FLE9BQU8sQ0FBQ0MsR0FBRyxDQUNiQyxNQUFNLENBQUNDLE9BQU8sQ0FBQ2hCLFVBQVUsQ0FBQ00sWUFBWSxDQUFDLENBQUNXLEdBQUcsQ0FBQyxDQUFDLENBQUNDLFFBQVEsRUFBRUMsS0FBSyxDQUFDLEtBQzFELElBQUFDLHVCQUFjLEVBQUNqRCxhQUFJLENBQUNDLElBQUksQ0FBQ3VDLGlCQUFpQixFQUFFTyxRQUFRLEdBQUcsWUFBWSxDQUFDLEVBQUVDLEtBQUssQ0FDL0UsQ0FDSixDQUFDO01BRURuQyxNQUFNLENBQUNtQixHQUFHLENBQUMsMEJBQTBCLENBQUM7TUFDdEMsTUFBTUssZUFBZSxDQUFDQyxjQUFjLEVBQUV2QyxXQUFXLENBQUM7TUFFbERjLE1BQU0sQ0FBQ21CLEdBQUcsQ0FBQyw0QkFBNEIsQ0FBQztNQUN4QyxNQUFNSyxlQUFlLENBQUNKLHNCQUFzQixFQUFFbEMsV0FBVyxDQUFDO01BQzFEYyxNQUFNLENBQUNtQixHQUFHLENBQUMsOEJBQThCLENBQUM7SUFDOUM7RUFDSixDQUFDLENBQUM7RUFFTixNQUFNM0IsYUFBYSxDQUFDNkMsWUFBWTtBQUNwQztBQUVBLGVBQWViLGVBQWVBLENBQzFCYyxVQUVDLEVBQ0RDLGVBQXVCLEVBQ1Y7RUFDYixLQUFLLE1BQU1DLFFBQVEsSUFBSVQsTUFBTSxDQUFDVSxJQUFJLENBQUNILFVBQVUsQ0FBQyxFQUFFO0lBQzVDLE1BQU1JLE9BQU8sR0FBR0osVUFBVSxDQUFDRSxRQUFRLENBQUM7SUFDcEMsSUFBSUUsT0FBTyxJQUFJbkMsU0FBUyxJQUFJbUMsT0FBTyxLQUFLLEVBQUUsRUFBRTtNQUN4QyxNQUFNLElBQUFkLGtCQUFTLEVBQUN6QyxhQUFJLENBQUNDLElBQUksQ0FBQ21ELGVBQWUsRUFBRXBELGFBQUksQ0FBQ3dELEtBQUssQ0FBQ0gsUUFBUSxDQUFDLENBQUNJLEdBQUcsQ0FBQyxDQUFDO01BQ3JFLE1BQU0sSUFBQVIsdUJBQWMsRUFBQ2pELGFBQUksQ0FBQ0MsSUFBSSxDQUFDbUQsZUFBZSxFQUFFQyxRQUFRLENBQUMsRUFBRUUsT0FBTyxDQUFDO0lBQ3ZFO0VBQ0o7QUFDSiJ9
@@ -86,6 +86,10 @@ const validateAndPrepareFarmDirectoriesPath = async (allFarmDirectories, current
86
86
  context.setConsoleLoggingVerbosity(parsedArgs.options.logVerbosity);
87
87
  (0, _StaticLogger.setLogger)(context.logger);
88
88
  context.logger.verbose(`Verbose level: ${parsedArgs.options.logVerbosity}`);
89
+ if (parsedArgs.type === "init-form") {
90
+ await (0, _RunInitForm.runInitForm)(context, parsedArgs.options);
91
+ return;
92
+ }
89
93
  const farmDirectory = process.cwd();
90
94
  await removeTemporaryWebpackConfigFiles(farmDirectory, context.logger);
91
95
  const farmConfig = (0, _ReadFarmConfig.readFarmConfig)(farmDirectory);
@@ -132,8 +136,5 @@ const validateAndPrepareFarmDirectoriesPath = async (allFarmDirectories, current
132
136
  if (parsedArgs.type === "localize") {
133
137
  await (0, _RunLocalization.runLocalization)(context, parsedArgs.options, farmDirectory, engineDirectory, candyModulesDirectory, farmConfig.hlFarmDirectoryPath);
134
138
  }
135
- if (parsedArgs.type === "init-form") {
136
- await (0, _RunInitForm.runInitForm)(context, parsedArgs.options, farmDirectory);
137
- }
138
139
  });
139
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZXF1aXJlIiwiX3BhdGgiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2ZzRXh0cmEiLCJfc2hlbGxqcyIsIl9SdW5CdWlsZEZvcm1zIiwiX1J1bkJ1aWxkU2VydmVyIiwiX1J1bkRldkJ1aWxkIiwiX1J1bkZvcm1TdGF0cyIsIl9SdW5Jbml0Rm9ybSIsIl9SdW5Mb2NhbGl6YXRpb24iLCJfUnVuVXBncmFkZUZvcm0iLCJfQ29uc29sZUFwcGxpY2F0aW9uIiwiX1N0YXRpY0xvZ2dlciIsIl9DYW5keVRvb2xPcHRpb25zIiwiX1JlYWRGYXJtQ29uZmlnIiwiX1NlbGZVcGRhdGUiLCJfUnVuUmVuYW1lRmlsZXMiLCJjb25maWciLCJmYXRhbCIsInJlbW90ZUluc3BlY3RGbGFnVG9EaXNhYmxlRGVidWdnZXJJbkNoaWxkUHJvY2VzcyIsImRlYnVnQXJnSWR4IiwicHJvY2VzcyIsImV4ZWNBcmd2IiwiaW5kZXhPZiIsInNwbGljZSIsImRlYnVnQXJnMklkeCIsInJlbW92ZVRlbXBvcmFyeVdlYnBhY2tDb25maWdGaWxlcyIsImZhcm1EaXJlY3RvcnkiLCJsb2dnZXIiLCJmaWxlcyIsInJlYWRkaXIiLCJvbGRUZW1wRmlsZU5hbWVzIiwiZmlsdGVyIiwieCIsImVuZHNXaXRoIiwibGVuZ3RoIiwibG9nIiwiZmlsZU5hbWUiLCJ1bmxpbmsiLCJwYXRoIiwiam9pbiIsInZhbGlkYXRlRmFybUNvbmZpZyIsImZhcm1Db25maWciLCJyZWFkRmFybUNvbmZpZyIsImVuZ2luZURpcmVjdG9yeSIsInVuZGVmaW5lZCIsIkVycm9yIiwicmVzb3VyY2VzRGlyZWN0b3J5IiwiY2FuZHlNb2R1bGVzRGlyZWN0b3J5IiwicmVzb2x2ZSIsInZhbGlkYXRlQW5kUHJlcGFyZUZhcm1EaXJlY3Rvcmllc1BhdGgiLCJhbGxGYXJtRGlyZWN0b3JpZXMiLCJjdXJyZW50RGlyIiwiY29udGV4dCIsInJlc3VsdCIsInB0aCIsInBhdGhFeGlzdHMiLCJwdXNoIiwicGF0aFRvRmFybSIsInJ1bkNvbnNvbGVBcHBsaWNhdGlvbiIsImFyZ3YiLCJnZXRDdXJyZW50VmVyc2lvbiIsInBhcnNlZEFyZ3MiLCJwYXJzZU9wdGlvbnMiLCJzZXRDb25zb2xlTG9nZ2luZ1ZlcmJvc2l0eSIsIm9wdGlvbnMiLCJsb2dWZXJib3NpdHkiLCJzZXRMb2dnZXIiLCJ2ZXJib3NlIiwiY3dkIiwidHlwZSIsImFsbEZhcm1zRGlyIiwid2FybmluZyIsImFsbEZhcm1Db25maWciLCJBcnJheSIsImlzQXJyYXkiLCJydW5EZXZCdWlsZFNlcnZlciIsInJ1bkJ1aWxkU2VydmVyIiwicnVuQnVpbGRGb3JtcyIsImhsRmFybURpcmVjdG9yeVBhdGgiLCJydW5EZXZCdWlsZCIsInJ1bkZvcm1TdGF0cyIsInJ1blVwZ3JhZGVGb3JtIiwicnVuUmVuYW1lRmlsZXMiLCJydW5Mb2NhbGl6YXRpb24iLCJydW5Jbml0Rm9ybSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9DYW5keUNMSS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXCJjb3JlLWpzL2ZlYXR1cmVzL2FycmF5L2ZsYXRcIjtcbmltcG9ydCBcImNvcmUtanMvcHJvcG9zYWxzL2l0ZXJhdG9yLWhlbHBlcnNcIjtcbmltcG9ydCBcImNvcmUtanMvc3RhYmxlXCI7XG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiO1xuXG5pbXBvcnQgeyBwYXRoRXhpc3RzLCByZWFkZGlyLCB1bmxpbmsgfSBmcm9tIFwiZnMtZXh0cmFcIjtcbmltcG9ydCBcInJlZmxlY3QtbWV0YWRhdGFcIjtcbmltcG9ydCBcInJlZ2VuZXJhdG9yLXJ1bnRpbWUvcnVudGltZVwiO1xuaW1wb3J0IHsgY29uZmlnIH0gZnJvbSBcInNoZWxsanNcIjtcblxuaW1wb3J0IHsgcnVuQnVpbGRGb3JtcyB9IGZyb20gXCIuL0NMSUNvbW1hbmRzL0J1aWxkRm9ybXMvUnVuQnVpbGRGb3Jtc1wiO1xuaW1wb3J0IHsgcnVuQnVpbGRTZXJ2ZXIsIHJ1bkRldkJ1aWxkU2VydmVyIH0gZnJvbSBcIi4vQ0xJQ29tbWFuZHMvQnVpbGRTZXJ2ZXIvUnVuQnVpbGRTZXJ2ZXJcIjtcbmltcG9ydCB7IHJ1bkRldkJ1aWxkIH0gZnJvbSBcIi4vQ0xJQ29tbWFuZHMvRGV2QnVpbGQvUnVuRGV2QnVpbGRcIjtcbmltcG9ydCB7IHJ1bkZvcm1TdGF0cyB9IGZyb20gXCIuL0NMSUNvbW1hbmRzL0Zvcm1TdGF0cy9SdW5Gb3JtU3RhdHNcIjtcbmltcG9ydCB7IHJ1bkluaXRGb3JtIH0gZnJvbSBcIi4vQ0xJQ29tbWFuZHMvSW5pdEZvcm0vUnVuSW5pdEZvcm1cIjtcbmltcG9ydCB7IHJ1bkxvY2FsaXphdGlvbiB9IGZyb20gXCIuL0NMSUNvbW1hbmRzL0xvY2FsaXphdGlvbi9SdW5Mb2NhbGl6YXRpb25cIjtcbmltcG9ydCB7IHJ1blVwZ3JhZGVGb3JtIH0gZnJvbSBcIi4vQ0xJQ29tbWFuZHMvVXBncmFkZUZvcm0vUnVuVXBncmFkZUZvcm1cIjtcbmltcG9ydCB7IHJ1bkNvbnNvbGVBcHBsaWNhdGlvbiB9IGZyb20gXCIuL0NvbW1vbnMvQ29uc29sZUFwcGxpY2F0aW9uL0NvbnNvbGVBcHBsaWNhdGlvblwiO1xuaW1wb3J0IHsgSUxvZ2dlciB9IGZyb20gXCIuL0NvbW1vbnMvTG9nZ2luZy9JTG9nZ2VyXCI7XG5pbXBvcnQgeyBzZXRMb2dnZXIgfSBmcm9tIFwiLi9Db21tb25zL0xvZ2dpbmcvU3RhdGljTG9nZ2VyXCI7XG5pbXBvcnQgeyBwYXJzZU9wdGlvbnMgfSBmcm9tIFwiLi9PcHRpb25zL0NhbmR5VG9vbE9wdGlvbnNcIjtcbmltcG9ydCB7IHJlYWRGYXJtQ29uZmlnIH0gZnJvbSBcIi4vUmVhZEZhcm1Db25maWdcIjtcbmltcG9ydCB7IGdldEN1cnJlbnRWZXJzaW9uIH0gZnJvbSBcIi4vU2VsZlVwZGF0ZVwiO1xuaW1wb3J0IHsgQ29uc29sZUFwcGxpY2F0aW9uQ29udGV4dCB9IGZyb20gXCIuL0NvbW1vbnMvQ29uc29sZUFwcGxpY2F0aW9uL0NvbnNvbGVBcHBsaWNhdGlvbkNvbnRleHRcIjtcbmltcG9ydCB7IHJ1blJlbmFtZUZpbGVzIH0gZnJvbSBcIi4vQ0xJQ29tbWFuZHMvUmVuYW1lRmlsZXMvUnVuUmVuYW1lRmlsZXNcIjtcblxuY29uZmlnLmZhdGFsID0gdHJ1ZTtcblxuZXhwb3J0IGludGVyZmFjZSBGYXJtQ29uZmlnIHtcbiAgICBjYW5keU1vZHVsZXNEaXJlY3Rvcnk6IHN0cmluZztcbiAgICBmYXJtRGlyZWN0b3J5OiBzdHJpbmc7XG4gICAgZW5naW5lRGlyZWN0b3J5Pzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIHJlc291cmNlc0RpcmVjdG9yeT86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICBobEZhcm1EaXJlY3RvcnlQYXRoOiBzdHJpbmc7XG59XG5cbmZ1bmN0aW9uIHJlbW90ZUluc3BlY3RGbGFnVG9EaXNhYmxlRGVidWdnZXJJbkNoaWxkUHJvY2VzcygpOiB2b2lkIHtcbiAgICBjb25zdCBkZWJ1Z0FyZ0lkeCA9IHByb2Nlc3MuZXhlY0FyZ3YuaW5kZXhPZihcIi0taW5zcGVjdC1icmtcIik7XG4gICAgaWYgKGRlYnVnQXJnSWR4ICE9PSAtMSkge1xuICAgICAgICBwcm9jZXNzLmV4ZWNBcmd2LnNwbGljZShkZWJ1Z0FyZ0lkeCwgMSk7XG4gICAgfVxuICAgIGNvbnN0IGRlYnVnQXJnMklkeCA9IHByb2Nlc3MuZXhlY0FyZ3YuaW5kZXhPZihcIi0taW5zcGVjdFwiKTtcbiAgICBpZiAoZGVidWdBcmcySWR4ICE9PSAtMSkge1xuICAgICAgICBwcm9jZXNzLmV4ZWNBcmd2LnNwbGljZShkZWJ1Z0FyZzJJZHgsIDEpO1xuICAgIH1cbn1cblxuYXN5bmMgZnVuY3Rpb24gcmVtb3ZlVGVtcG9yYXJ5V2VicGFja0NvbmZpZ0ZpbGVzKGZhcm1EaXJlY3Rvcnk6IHN0cmluZywgbG9nZ2VyOiBJTG9nZ2VyKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgZmlsZXMgPSBhd2FpdCByZWFkZGlyKGZhcm1EaXJlY3RvcnkpO1xuICAgIGNvbnN0IG9sZFRlbXBGaWxlTmFtZXMgPSBmaWxlcy5maWx0ZXIoeCA9PiB4LmVuZHNXaXRoKFwiLmNhbmR5LXRtcC53ZWJwYWNrLmNvbmZpZy5qc1wiKSk7XG4gICAgaWYgKG9sZFRlbXBGaWxlTmFtZXMubGVuZ3RoID4gMCkge1xuICAgICAgICBsb2dnZXIubG9nKFwiUmVtb3Zpbmcgb2xkIHdlYnBhY2suY29uZmlnLmpzIGZpbGVzXCIpO1xuICAgICAgICBmb3IgKGNvbnN0IGZpbGVOYW1lIG9mIG9sZFRlbXBGaWxlTmFtZXMpIHtcbiAgICAgICAgICAgIGF3YWl0IHVubGluayhwYXRoLmpvaW4oZmFybURpcmVjdG9yeSwgZmlsZU5hbWUpKTtcbiAgICAgICAgfVxuICAgICAgICBsb2dnZXIubG9nKFwiUmVtb3ZlZCBvbGQgd2VicGFjay5jb25maWcuanMgZmlsZXNcIik7XG4gICAgfVxufVxuXG5mdW5jdGlvbiB2YWxpZGF0ZUZhcm1Db25maWcoZmFybURpcmVjdG9yeTogc3RyaW5nKTogRmFybUNvbmZpZyB7XG4gICAgY29uc3QgZmFybUNvbmZpZyA9IHJlYWRGYXJtQ29uZmlnKGZhcm1EaXJlY3RvcnkpO1xuXG4gICAgaWYgKGZhcm1Db25maWcuZW5naW5lRGlyZWN0b3J5ID09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJFbmdpbmVEaXJlY3RvcnkgaXMgbm90IHNwZWNpZmllZFwiKTtcbiAgICB9XG4gICAgaWYgKGZhcm1Db25maWcucmVzb3VyY2VzRGlyZWN0b3J5ID09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJSZXNvdXJjZXNEaXJlY3RvcnkgaXMgbm90IHNwZWNpZmllZFwiKTtcbiAgICB9XG5cbiAgICBjb25zdCBjYW5keU1vZHVsZXNEaXJlY3RvcnkgPSBwYXRoLnJlc29sdmUoZmFybURpcmVjdG9yeSwgXCIuLlwiLCBcIi5jYW5keV9tb2R1bGVzXCIpO1xuICAgIHJldHVybiB7XG4gICAgICAgIC4uLmZhcm1Db25maWcsXG4gICAgICAgIGZhcm1EaXJlY3Rvcnk6IGZhcm1EaXJlY3RvcnksXG4gICAgICAgIGNhbmR5TW9kdWxlc0RpcmVjdG9yeTogY2FuZHlNb2R1bGVzRGlyZWN0b3J5LFxuICAgIH07XG59XG5cbmNvbnN0IHZhbGlkYXRlQW5kUHJlcGFyZUZhcm1EaXJlY3Rvcmllc1BhdGggPSBhc3luYyAoXG4gICAgYWxsRmFybURpcmVjdG9yaWVzOiBzdHJpbmdbXSxcbiAgICBjdXJyZW50RGlyOiBzdHJpbmcsXG4gICAgY29udGV4dDogQ29uc29sZUFwcGxpY2F0aW9uQ29udGV4dFxuKTogUHJvbWlzZTxGYXJtQ29uZmlnW10+ID0+IHtcbiAgICBjb25zdCByZXN1bHQ6IEZhcm1Db25maWdbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgcHRoIG9mIGFsbEZhcm1EaXJlY3Rvcmllcykge1xuICAgICAgICBpZiAoYXdhaXQgcGF0aEV4aXN0cyhwYXRoLmpvaW4ocHRoLCBcImNvbmZpZy5qc1wiKSkpIHtcbiAgICAgICAgICAgIGF3YWl0IHJlbW92ZVRlbXBvcmFyeVdlYnBhY2tDb25maWdGaWxlcyhwdGgsIGNvbnRleHQubG9nZ2VyKTtcbiAgICAgICAgICAgIHJlc3VsdC5wdXNoKHZhbGlkYXRlRmFybUNvbmZpZyhwdGgpKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vINCS0YHQtSDQtNC10LvQviDQsiDRgtC+0LwsINGH0YLQviDRgdCy0Y/Qt9C60LAgc2VydmljZS1ydW5uZXItMiArIHRvb2xzINC60L7RgNGA0LXQutGC0L3QviDRgNCw0LHQvtGC0LDQtdGCINGC0L7Qu9GM0LrQviDQsiDQv9Cw0L/QutC1INGBINGE0L7RgNC80L7QuVxuICAgICAgICAgICAgLy8g0LjQtyDQt9CwINGH0LXQs9C+LCDQstC90YPRgtGA0Lgg0YDQsNC90L3QtdGA0LAg0L3QsNC/0LjQu9C10L0g0YXQuNGC0YDRi9C5INC80LXRhdCw0L3QuNC30Lwg0L/QvtC40YHQutCwINC/0YPRgtC10Lkg0YTQvtGA0LzRiy4g0J/QtdGA0LXQv9C40LvQuNCy0LDRgtGMINCy0YHQtSDQvNC10YXQsNC90LjQutC4XG4gICAgICAgICAgICAvLyDRgdC+0LLRgdC10Lwg0L3QtSDRhdC+0YfQtdGC0YHRjywg0L/QvtGN0YLQvtC80YMg0LTQu9GPINC90LDRgSwg0YHRh9C40YLQsNGOINC/0L7QtNC90Y/RgtC40LUg0LTQviDRg9GA0L7QstC90Y8gZW5naW5lINCy0L/QvtC70L3QtSDQv9GA0LjQtdC80LvQtdC80YvQvCDRgNC10YjQtdC90LjQtdC8XG4gICAgICAgICAgICBjb25zdCBwYXRoVG9GYXJtID0gcGF0aC5qb2luKGN1cnJlbnREaXIsIFwiLi5cIiwgXCIuLlwiLCBcIi4uXCIsIHB0aCk7XG4gICAgICAgICAgICBpZiAoIShhd2FpdCBwYXRoRXhpc3RzKHBhdGhUb0Zhcm0pKSkge1xuICAgICAgICAgICAgICAgIHRocm93IEVycm9yKGBhbGxGYXJtRGlyZWN0b3JpZXMgcGF0aCA9ICR7cGF0aFRvRmFybX0gbm90IGV4aXN0YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhd2FpdCByZW1vdmVUZW1wb3JhcnlXZWJwYWNrQ29uZmlnRmlsZXMocGF0aFRvRmFybSwgY29udGV4dC5sb2dnZXIpO1xuICAgICAgICAgICAgcmVzdWx0LnB1c2godmFsaWRhdGVGYXJtQ29uZmlnKHBhdGhUb0Zhcm0pKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xufTtcblxucnVuQ29uc29sZUFwcGxpY2F0aW9uKGFzeW5jIChhcmd2LCBjb250ZXh0KSA9PiB7XG4gICAgcmVtb3RlSW5zcGVjdEZsYWdUb0Rpc2FibGVEZWJ1Z2dlckluQ2hpbGRQcm9jZXNzKCk7XG5cbiAgICBjb250ZXh0LmxvZ2dlci5sb2coXCJAa29udHVyLmNhbmR5L3Rvb2xzOiBcIiArIChhd2FpdCBnZXRDdXJyZW50VmVyc2lvbigpKSk7XG4gICAgY29uc3QgcGFyc2VkQXJncyA9IHBhcnNlT3B0aW9ucyhhcmd2KTtcblxuICAgIGNvbnRleHQuc2V0Q29uc29sZUxvZ2dpbmdWZXJib3NpdHkocGFyc2VkQXJncy5vcHRpb25zLmxvZ1ZlcmJvc2l0eSk7XG4gICAgc2V0TG9nZ2VyKGNvbnRleHQubG9nZ2VyKTtcbiAgICBjb250ZXh0LmxvZ2dlci52ZXJib3NlKGBWZXJib3NlIGxldmVsOiAke3BhcnNlZEFyZ3Mub3B0aW9ucy5sb2dWZXJib3NpdHl9YCk7XG5cbiAgICBjb25zdCBmYXJtRGlyZWN0b3J5ID0gcHJvY2Vzcy5jd2QoKTtcbiAgICBhd2FpdCByZW1vdmVUZW1wb3JhcnlXZWJwYWNrQ29uZmlnRmlsZXMoZmFybURpcmVjdG9yeSwgY29udGV4dC5sb2dnZXIpO1xuICAgIGNvbnN0IGZhcm1Db25maWcgPSByZWFkRmFybUNvbmZpZyhmYXJtRGlyZWN0b3J5KTtcblxuICAgIGlmIChmYXJtQ29uZmlnLmVuZ2luZURpcmVjdG9yeSA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiRW5naW5lRGlyZWN0b3J5IGlzIG5vdCBzcGVjaWZpZWRcIik7XG4gICAgfVxuICAgIGlmIChmYXJtQ29uZmlnLnJlc291cmNlc0RpcmVjdG9yeSA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiUmVzb3VyY2VzRGlyZWN0b3J5IGlzIG5vdCBzcGVjaWZpZWRcIik7XG4gICAgfVxuXG4gICAgY29uc3QgZW5naW5lRGlyZWN0b3J5ID0gcGF0aC5yZXNvbHZlKGZhcm1Db25maWcuZW5naW5lRGlyZWN0b3J5KTtcbiAgICBjb25zdCByZXNvdXJjZXNEaXJlY3RvcnkgPSBwYXRoLnJlc29sdmUoZmFybUNvbmZpZy5yZXNvdXJjZXNEaXJlY3RvcnkpO1xuICAgIGNvbnN0IGNhbmR5TW9kdWxlc0RpcmVjdG9yeSA9IHBhdGgucmVzb2x2ZShmYXJtRGlyZWN0b3J5LCBcIi4uXCIsIFwiLmNhbmR5X21vZHVsZXNcIik7XG5cbiAgICBpZiAocGFyc2VkQXJncy50eXBlID09PSBcImJ1aWxkLXNlcnZlclwiIHx8IHBhcnNlZEFyZ3MudHlwZSA9PT0gXCJkZXYtYnVpbGQtc2VydmVyXCIpIHtcbiAgICAgICAgY29uc3QgYWxsRmFybURpcmVjdG9yaWVzID0gcGFyc2VkQXJncy5vcHRpb25zLmFsbEZhcm1zRGlyO1xuICAgICAgICBjb250ZXh0LmxvZ2dlci53YXJuaW5nKGBhbGxGYXJtRGlyZWN0b3JpZXMgPSAke3BhcnNlZEFyZ3Mub3B0aW9ucy5hbGxGYXJtc0Rpcn1gKTtcbiAgICAgICAgbGV0IGFsbEZhcm1Db25maWc7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGFsbEZhcm1EaXJlY3RvcmllcykgJiYgYWxsRmFybURpcmVjdG9yaWVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGFsbEZhcm1Db25maWcgPSBhd2FpdCB2YWxpZGF0ZUFuZFByZXBhcmVGYXJtRGlyZWN0b3JpZXNQYXRoKGFsbEZhcm1EaXJlY3RvcmllcywgZmFybURpcmVjdG9yeSwgY29udGV4dCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb250ZXh0LmxvZ2dlci53YXJuaW5nKGBVc2UgZGVmYXVsdCBjYW5keUZhcm0gcGF0aCBkaXIgPSAke2Zhcm1EaXJlY3Rvcnl9YCk7XG4gICAgICAgICAgICBhbGxGYXJtQ29uZmlnID0gYXdhaXQgdmFsaWRhdGVBbmRQcmVwYXJlRmFybURpcmVjdG9yaWVzUGF0aChbZmFybURpcmVjdG9yeV0sIGZhcm1EaXJlY3RvcnksIGNvbnRleHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHBhcnNlZEFyZ3MudHlwZSA9PT0gXCJkZXYtYnVpbGQtc2VydmVyXCIpIHtcbiAgICAgICAgICAgIGF3YWl0IHJ1bkRldkJ1aWxkU2VydmVyKGNvbnRleHQsIHBhcnNlZEFyZ3Mub3B0aW9ucywgYWxsRmFybUNvbmZpZyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBhd2FpdCBydW5CdWlsZFNlcnZlcihjb250ZXh0LCBwYXJzZWRBcmdzLm9wdGlvbnMsIGFsbEZhcm1Db25maWcpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHBhcnNlZEFyZ3MudHlwZSA9PT0gXCJidWlsZFwiKSB7XG4gICAgICAgIGF3YWl0IHJ1bkJ1aWxkRm9ybXMoXG4gICAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgICAgcGFyc2VkQXJncy5vcHRpb25zLFxuICAgICAgICAgICAgZmFybURpcmVjdG9yeSxcbiAgICAgICAgICAgIHJlc291cmNlc0RpcmVjdG9yeSxcbiAgICAgICAgICAgIGVuZ2luZURpcmVjdG9yeSxcbiAgICAgICAgICAgIGNhbmR5TW9kdWxlc0RpcmVjdG9yeSxcbiAgICAgICAgICAgIGZhcm1Db25maWcuaGxGYXJtRGlyZWN0b3J5UGF0aFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGlmIChwYXJzZWRBcmdzLnR5cGUgPT09IFwiZGV2LWJ1aWxkXCIpIHtcbiAgICAgICAgYXdhaXQgcnVuRGV2QnVpbGQoXG4gICAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgICAgcGFyc2VkQXJncy5vcHRpb25zLFxuICAgICAgICAgICAgZW5naW5lRGlyZWN0b3J5LFxuICAgICAgICAgICAgcmVzb3VyY2VzRGlyZWN0b3J5LFxuICAgICAgICAgICAgZmFybURpcmVjdG9yeSxcbiAgICAgICAgICAgIGNhbmR5TW9kdWxlc0RpcmVjdG9yeSxcbiAgICAgICAgICAgIGZhcm1Db25maWcuaGxGYXJtRGlyZWN0b3J5UGF0aFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGlmIChwYXJzZWRBcmdzLnR5cGUgPT09IFwiZm9ybS1zdGF0c1wiKSB7XG4gICAgICAgIGF3YWl0IHJ1bkZvcm1TdGF0cyhjb250ZXh0LCBwYXJzZWRBcmdzLm9wdGlvbnMsIGZhcm1EaXJlY3RvcnkpO1xuICAgIH1cbiAgICBpZiAocGFyc2VkQXJncy50eXBlID09PSBcInVwZ3JhZGVcIikge1xuICAgICAgICBhd2FpdCBydW5VcGdyYWRlRm9ybShjb250ZXh0LCBwYXJzZWRBcmdzLm9wdGlvbnMsIHJlc291cmNlc0RpcmVjdG9yeSwgZmFybURpcmVjdG9yeSk7XG4gICAgfVxuICAgIGlmIChwYXJzZWRBcmdzLnR5cGUgPT09IFwicmVuYW1lXCIpIHtcbiAgICAgICAgYXdhaXQgcnVuUmVuYW1lRmlsZXMoY29udGV4dCwgcGFyc2VkQXJncy5vcHRpb25zLCByZXNvdXJjZXNEaXJlY3RvcnksIGZhcm1EaXJlY3RvcnkpO1xuICAgIH1cbiAgICBpZiAocGFyc2VkQXJncy50eXBlID09PSBcImxvY2FsaXplXCIpIHtcbiAgICAgICAgYXdhaXQgcnVuTG9jYWxpemF0aW9uKFxuICAgICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICAgIHBhcnNlZEFyZ3Mub3B0aW9ucyxcbiAgICAgICAgICAgIGZhcm1EaXJlY3RvcnksXG4gICAgICAgICAgICBlbmdpbmVEaXJlY3RvcnksXG4gICAgICAgICAgICBjYW5keU1vZHVsZXNEaXJlY3RvcnksXG4gICAgICAgICAgICBmYXJtQ29uZmlnLmhsRmFybURpcmVjdG9yeVBhdGhcbiAgICAgICAgKTtcbiAgICB9XG4gICAgaWYgKHBhcnNlZEFyZ3MudHlwZSA9PT0gXCJpbml0LWZvcm1cIikge1xuICAgICAgICBhd2FpdCBydW5Jbml0Rm9ybShjb250ZXh0LCBwYXJzZWRBcmdzLm9wdGlvbnMsIGZhcm1EaXJlY3RvcnkpO1xuICAgIH1cbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7QUFBQUEsT0FBQTtBQUNBQSxPQUFBO0FBQ0FBLE9BQUE7QUFDQSxJQUFBQyxLQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFFQSxJQUFBRyxRQUFBLEdBQUFILE9BQUE7QUFDQUEsT0FBQTtBQUNBQSxPQUFBO0FBQ0EsSUFBQUksUUFBQSxHQUFBSixPQUFBO0FBRUEsSUFBQUssY0FBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sZUFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sWUFBQSxHQUFBUCxPQUFBO0FBQ0EsSUFBQVEsYUFBQSxHQUFBUixPQUFBO0FBQ0EsSUFBQVMsWUFBQSxHQUFBVCxPQUFBO0FBQ0EsSUFBQVUsZ0JBQUEsR0FBQVYsT0FBQTtBQUNB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
140
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZXF1aXJlIiwiX3BhdGgiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2ZzRXh0cmEiLCJfc2hlbGxqcyIsIl9SdW5CdWlsZEZvcm1zIiwiX1J1bkJ1aWxkU2VydmVyIiwiX1J1bkRldkJ1aWxkIiwiX1J1bkZvcm1TdGF0cyIsIl9SdW5Jbml0Rm9ybSIsIl9SdW5Mb2NhbGl6YXRpb24iLCJfUnVuVXBncmFkZUZvcm0iLCJfQ29uc29sZUFwcGxpY2F0aW9uIiwiX1N0YXRpY0xvZ2dlciIsIl9DYW5keVRvb2xPcHRpb25zIiwiX1JlYWRGYXJtQ29uZmlnIiwiX1NlbGZVcGRhdGUiLCJfUnVuUmVuYW1lRmlsZXMiLCJjb25maWciLCJmYXRhbCIsInJlbW90ZUluc3BlY3RGbGFnVG9EaXNhYmxlRGVidWdnZXJJbkNoaWxkUHJvY2VzcyIsImRlYnVnQXJnSWR4IiwicHJvY2VzcyIsImV4ZWNBcmd2IiwiaW5kZXhPZiIsInNwbGljZSIsImRlYnVnQXJnMklkeCIsInJlbW92ZVRlbXBvcmFyeVdlYnBhY2tDb25maWdGaWxlcyIsImZhcm1EaXJlY3RvcnkiLCJsb2dnZXIiLCJmaWxlcyIsInJlYWRkaXIiLCJvbGRUZW1wRmlsZU5hbWVzIiwiZmlsdGVyIiwieCIsImVuZHNXaXRoIiwibGVuZ3RoIiwibG9nIiwiZmlsZU5hbWUiLCJ1bmxpbmsiLCJwYXRoIiwiam9pbiIsInZhbGlkYXRlRmFybUNvbmZpZyIsImZhcm1Db25maWciLCJyZWFkRmFybUNvbmZpZyIsImVuZ2luZURpcmVjdG9yeSIsInVuZGVmaW5lZCIsIkVycm9yIiwicmVzb3VyY2VzRGlyZWN0b3J5IiwiY2FuZHlNb2R1bGVzRGlyZWN0b3J5IiwicmVzb2x2ZSIsInZhbGlkYXRlQW5kUHJlcGFyZUZhcm1EaXJlY3Rvcmllc1BhdGgiLCJhbGxGYXJtRGlyZWN0b3JpZXMiLCJjdXJyZW50RGlyIiwiY29udGV4dCIsInJlc3VsdCIsInB0aCIsInBhdGhFeGlzdHMiLCJwdXNoIiwicGF0aFRvRmFybSIsInJ1bkNvbnNvbGVBcHBsaWNhdGlvbiIsImFyZ3YiLCJnZXRDdXJyZW50VmVyc2lvbiIsInBhcnNlZEFyZ3MiLCJwYXJzZU9wdGlvbnMiLCJzZXRDb25zb2xlTG9nZ2luZ1ZlcmJvc2l0eSIsIm9wdGlvbnMiLCJsb2dWZXJib3NpdHkiLCJzZXRMb2dnZXIiLCJ2ZXJib3NlIiwidHlwZSIsInJ1bkluaXRGb3JtIiwiY3dkIiwiYWxsRmFybXNEaXIiLCJ3YXJuaW5nIiwiYWxsRmFybUNvbmZpZyIsIkFycmF5IiwiaXNBcnJheSIsInJ1bkRldkJ1aWxkU2VydmVyIiwicnVuQnVpbGRTZXJ2ZXIiLCJydW5CdWlsZEZvcm1zIiwiaGxGYXJtRGlyZWN0b3J5UGF0aCIsInJ1bkRldkJ1aWxkIiwicnVuRm9ybVN0YXRzIiwicnVuVXBncmFkZUZvcm0iLCJydW5SZW5hbWVGaWxlcyIsInJ1bkxvY2FsaXphdGlvbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9DYW5keUNMSS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXCJjb3JlLWpzL2ZlYXR1cmVzL2FycmF5L2ZsYXRcIjtcbmltcG9ydCBcImNvcmUtanMvcHJvcG9zYWxzL2l0ZXJhdG9yLWhlbHBlcnNcIjtcbmltcG9ydCBcImNvcmUtanMvc3RhYmxlXCI7XG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiO1xuXG5pbXBvcnQgeyBwYXRoRXhpc3RzLCByZWFkZGlyLCB1bmxpbmsgfSBmcm9tIFwiZnMtZXh0cmFcIjtcbmltcG9ydCBcInJlZmxlY3QtbWV0YWRhdGFcIjtcbmltcG9ydCBcInJlZ2VuZXJhdG9yLXJ1bnRpbWUvcnVudGltZVwiO1xuaW1wb3J0IHsgY29uZmlnIH0gZnJvbSBcInNoZWxsanNcIjtcblxuaW1wb3J0IHsgcnVuQnVpbGRGb3JtcyB9IGZyb20gXCIuL0NMSUNvbW1hbmRzL0J1aWxkRm9ybXMvUnVuQnVpbGRGb3Jtc1wiO1xuaW1wb3J0IHsgcnVuQnVpbGRTZXJ2ZXIsIHJ1bkRldkJ1aWxkU2VydmVyIH0gZnJvbSBcIi4vQ0xJQ29tbWFuZHMvQnVpbGRTZXJ2ZXIvUnVuQnVpbGRTZXJ2ZXJcIjtcbmltcG9ydCB7IHJ1bkRldkJ1aWxkIH0gZnJvbSBcIi4vQ0xJQ29tbWFuZHMvRGV2QnVpbGQvUnVuRGV2QnVpbGRcIjtcbmltcG9ydCB7IHJ1bkZvcm1TdGF0cyB9IGZyb20gXCIuL0NMSUNvbW1hbmRzL0Zvcm1TdGF0cy9SdW5Gb3JtU3RhdHNcIjtcbmltcG9ydCB7IHJ1bkluaXRGb3JtIH0gZnJvbSBcIi4vQ0xJQ29tbWFuZHMvSW5pdEZvcm0vUnVuSW5pdEZvcm1cIjtcbmltcG9ydCB7IHJ1bkxvY2FsaXphdGlvbiB9IGZyb20gXCIuL0NMSUNvbW1hbmRzL0xvY2FsaXphdGlvbi9SdW5Mb2NhbGl6YXRpb25cIjtcbmltcG9ydCB7IHJ1blVwZ3JhZGVGb3JtIH0gZnJvbSBcIi4vQ0xJQ29tbWFuZHMvVXBncmFkZUZvcm0vUnVuVXBncmFkZUZvcm1cIjtcbmltcG9ydCB7IHJ1bkNvbnNvbGVBcHBsaWNhdGlvbiB9IGZyb20gXCIuL0NvbW1vbnMvQ29uc29sZUFwcGxpY2F0aW9uL0NvbnNvbGVBcHBsaWNhdGlvblwiO1xuaW1wb3J0IHsgSUxvZ2dlciB9IGZyb20gXCIuL0NvbW1vbnMvTG9nZ2luZy9JTG9nZ2VyXCI7XG5pbXBvcnQgeyBzZXRMb2dnZXIgfSBmcm9tIFwiLi9Db21tb25zL0xvZ2dpbmcvU3RhdGljTG9nZ2VyXCI7XG5pbXBvcnQgeyBwYXJzZU9wdGlvbnMgfSBmcm9tIFwiLi9PcHRpb25zL0NhbmR5VG9vbE9wdGlvbnNcIjtcbmltcG9ydCB7IHJlYWRGYXJtQ29uZmlnIH0gZnJvbSBcIi4vUmVhZEZhcm1Db25maWdcIjtcbmltcG9ydCB7IGdldEN1cnJlbnRWZXJzaW9uIH0gZnJvbSBcIi4vU2VsZlVwZGF0ZVwiO1xuaW1wb3J0IHsgQ29uc29sZUFwcGxpY2F0aW9uQ29udGV4dCB9IGZyb20gXCIuL0NvbW1vbnMvQ29uc29sZUFwcGxpY2F0aW9uL0NvbnNvbGVBcHBsaWNhdGlvbkNvbnRleHRcIjtcbmltcG9ydCB7IHJ1blJlbmFtZUZpbGVzIH0gZnJvbSBcIi4vQ0xJQ29tbWFuZHMvUmVuYW1lRmlsZXMvUnVuUmVuYW1lRmlsZXNcIjtcblxuY29uZmlnLmZhdGFsID0gdHJ1ZTtcblxuZXhwb3J0IGludGVyZmFjZSBGYXJtQ29uZmlnIHtcbiAgICBjYW5keU1vZHVsZXNEaXJlY3Rvcnk6IHN0cmluZztcbiAgICBmYXJtRGlyZWN0b3J5OiBzdHJpbmc7XG4gICAgZW5naW5lRGlyZWN0b3J5Pzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIHJlc291cmNlc0RpcmVjdG9yeT86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICBobEZhcm1EaXJlY3RvcnlQYXRoOiBzdHJpbmc7XG59XG5cbmZ1bmN0aW9uIHJlbW90ZUluc3BlY3RGbGFnVG9EaXNhYmxlRGVidWdnZXJJbkNoaWxkUHJvY2VzcygpOiB2b2lkIHtcbiAgICBjb25zdCBkZWJ1Z0FyZ0lkeCA9IHByb2Nlc3MuZXhlY0FyZ3YuaW5kZXhPZihcIi0taW5zcGVjdC1icmtcIik7XG4gICAgaWYgKGRlYnVnQXJnSWR4ICE9PSAtMSkge1xuICAgICAgICBwcm9jZXNzLmV4ZWNBcmd2LnNwbGljZShkZWJ1Z0FyZ0lkeCwgMSk7XG4gICAgfVxuICAgIGNvbnN0IGRlYnVnQXJnMklkeCA9IHByb2Nlc3MuZXhlY0FyZ3YuaW5kZXhPZihcIi0taW5zcGVjdFwiKTtcbiAgICBpZiAoZGVidWdBcmcySWR4ICE9PSAtMSkge1xuICAgICAgICBwcm9jZXNzLmV4ZWNBcmd2LnNwbGljZShkZWJ1Z0FyZzJJZHgsIDEpO1xuICAgIH1cbn1cblxuYXN5bmMgZnVuY3Rpb24gcmVtb3ZlVGVtcG9yYXJ5V2VicGFja0NvbmZpZ0ZpbGVzKGZhcm1EaXJlY3Rvcnk6IHN0cmluZywgbG9nZ2VyOiBJTG9nZ2VyKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgZmlsZXMgPSBhd2FpdCByZWFkZGlyKGZhcm1EaXJlY3RvcnkpO1xuICAgIGNvbnN0IG9sZFRlbXBGaWxlTmFtZXMgPSBmaWxlcy5maWx0ZXIoeCA9PiB4LmVuZHNXaXRoKFwiLmNhbmR5LXRtcC53ZWJwYWNrLmNvbmZpZy5qc1wiKSk7XG4gICAgaWYgKG9sZFRlbXBGaWxlTmFtZXMubGVuZ3RoID4gMCkge1xuICAgICAgICBsb2dnZXIubG9nKFwiUmVtb3Zpbmcgb2xkIHdlYnBhY2suY29uZmlnLmpzIGZpbGVzXCIpO1xuICAgICAgICBmb3IgKGNvbnN0IGZpbGVOYW1lIG9mIG9sZFRlbXBGaWxlTmFtZXMpIHtcbiAgICAgICAgICAgIGF3YWl0IHVubGluayhwYXRoLmpvaW4oZmFybURpcmVjdG9yeSwgZmlsZU5hbWUpKTtcbiAgICAgICAgfVxuICAgICAgICBsb2dnZXIubG9nKFwiUmVtb3ZlZCBvbGQgd2VicGFjay5jb25maWcuanMgZmlsZXNcIik7XG4gICAgfVxufVxuXG5mdW5jdGlvbiB2YWxpZGF0ZUZhcm1Db25maWcoZmFybURpcmVjdG9yeTogc3RyaW5nKTogRmFybUNvbmZpZyB7XG4gICAgY29uc3QgZmFybUNvbmZpZyA9IHJlYWRGYXJtQ29uZmlnKGZhcm1EaXJlY3RvcnkpO1xuXG4gICAgaWYgKGZhcm1Db25maWcuZW5naW5lRGlyZWN0b3J5ID09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJFbmdpbmVEaXJlY3RvcnkgaXMgbm90IHNwZWNpZmllZFwiKTtcbiAgICB9XG4gICAgaWYgKGZhcm1Db25maWcucmVzb3VyY2VzRGlyZWN0b3J5ID09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJSZXNvdXJjZXNEaXJlY3RvcnkgaXMgbm90IHNwZWNpZmllZFwiKTtcbiAgICB9XG5cbiAgICBjb25zdCBjYW5keU1vZHVsZXNEaXJlY3RvcnkgPSBwYXRoLnJlc29sdmUoZmFybURpcmVjdG9yeSwgXCIuLlwiLCBcIi5jYW5keV9tb2R1bGVzXCIpO1xuICAgIHJldHVybiB7XG4gICAgICAgIC4uLmZhcm1Db25maWcsXG4gICAgICAgIGZhcm1EaXJlY3Rvcnk6IGZhcm1EaXJlY3RvcnksXG4gICAgICAgIGNhbmR5TW9kdWxlc0RpcmVjdG9yeTogY2FuZHlNb2R1bGVzRGlyZWN0b3J5LFxuICAgIH07XG59XG5cbmNvbnN0IHZhbGlkYXRlQW5kUHJlcGFyZUZhcm1EaXJlY3Rvcmllc1BhdGggPSBhc3luYyAoXG4gICAgYWxsRmFybURpcmVjdG9yaWVzOiBzdHJpbmdbXSxcbiAgICBjdXJyZW50RGlyOiBzdHJpbmcsXG4gICAgY29udGV4dDogQ29uc29sZUFwcGxpY2F0aW9uQ29udGV4dFxuKTogUHJvbWlzZTxGYXJtQ29uZmlnW10+ID0+IHtcbiAgICBjb25zdCByZXN1bHQ6IEZhcm1Db25maWdbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgcHRoIG9mIGFsbEZhcm1EaXJlY3Rvcmllcykge1xuICAgICAgICBpZiAoYXdhaXQgcGF0aEV4aXN0cyhwYXRoLmpvaW4ocHRoLCBcImNvbmZpZy5qc1wiKSkpIHtcbiAgICAgICAgICAgIGF3YWl0IHJlbW92ZVRlbXBvcmFyeVdlYnBhY2tDb25maWdGaWxlcyhwdGgsIGNvbnRleHQubG9nZ2VyKTtcbiAgICAgICAgICAgIHJlc3VsdC5wdXNoKHZhbGlkYXRlRmFybUNvbmZpZyhwdGgpKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vINCS0YHQtSDQtNC10LvQviDQsiDRgtC+0LwsINGH0YLQviDRgdCy0Y/Qt9C60LAgc2VydmljZS1ydW5uZXItMiArIHRvb2xzINC60L7RgNGA0LXQutGC0L3QviDRgNCw0LHQvtGC0LDQtdGCINGC0L7Qu9GM0LrQviDQsiDQv9Cw0L/QutC1INGBINGE0L7RgNC80L7QuVxuICAgICAgICAgICAgLy8g0LjQtyDQt9CwINGH0LXQs9C+LCDQstC90YPRgtGA0Lgg0YDQsNC90L3QtdGA0LAg0L3QsNC/0LjQu9C10L0g0YXQuNGC0YDRi9C5INC80LXRhdCw0L3QuNC30Lwg0L/QvtC40YHQutCwINC/0YPRgtC10Lkg0YTQvtGA0LzRiy4g0J/QtdGA0LXQv9C40LvQuNCy0LDRgtGMINCy0YHQtSDQvNC10YXQsNC90LjQutC4XG4gICAgICAgICAgICAvLyDRgdC+0LLRgdC10Lwg0L3QtSDRhdC+0YfQtdGC0YHRjywg0L/QvtGN0YLQvtC80YMg0LTQu9GPINC90LDRgSwg0YHRh9C40YLQsNGOINC/0L7QtNC90Y/RgtC40LUg0LTQviDRg9GA0L7QstC90Y8gZW5naW5lINCy0L/QvtC70L3QtSDQv9GA0LjQtdC80LvQtdC80YvQvCDRgNC10YjQtdC90LjQtdC8XG4gICAgICAgICAgICBjb25zdCBwYXRoVG9GYXJtID0gcGF0aC5qb2luKGN1cnJlbnREaXIsIFwiLi5cIiwgXCIuLlwiLCBcIi4uXCIsIHB0aCk7XG4gICAgICAgICAgICBpZiAoIShhd2FpdCBwYXRoRXhpc3RzKHBhdGhUb0Zhcm0pKSkge1xuICAgICAgICAgICAgICAgIHRocm93IEVycm9yKGBhbGxGYXJtRGlyZWN0b3JpZXMgcGF0aCA9ICR7cGF0aFRvRmFybX0gbm90IGV4aXN0YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhd2FpdCByZW1vdmVUZW1wb3JhcnlXZWJwYWNrQ29uZmlnRmlsZXMocGF0aFRvRmFybSwgY29udGV4dC5sb2dnZXIpO1xuICAgICAgICAgICAgcmVzdWx0LnB1c2godmFsaWRhdGVGYXJtQ29uZmlnKHBhdGhUb0Zhcm0pKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xufTtcblxucnVuQ29uc29sZUFwcGxpY2F0aW9uKGFzeW5jIChhcmd2LCBjb250ZXh0KSA9PiB7XG4gICAgcmVtb3RlSW5zcGVjdEZsYWdUb0Rpc2FibGVEZWJ1Z2dlckluQ2hpbGRQcm9jZXNzKCk7XG5cbiAgICBjb250ZXh0LmxvZ2dlci5sb2coXCJAa29udHVyLmNhbmR5L3Rvb2xzOiBcIiArIChhd2FpdCBnZXRDdXJyZW50VmVyc2lvbigpKSk7XG4gICAgY29uc3QgcGFyc2VkQXJncyA9IHBhcnNlT3B0aW9ucyhhcmd2KTtcblxuICAgIGNvbnRleHQuc2V0Q29uc29sZUxvZ2dpbmdWZXJib3NpdHkocGFyc2VkQXJncy5vcHRpb25zLmxvZ1ZlcmJvc2l0eSk7XG4gICAgc2V0TG9nZ2VyKGNvbnRleHQubG9nZ2VyKTtcbiAgICBjb250ZXh0LmxvZ2dlci52ZXJib3NlKGBWZXJib3NlIGxldmVsOiAke3BhcnNlZEFyZ3Mub3B0aW9ucy5sb2dWZXJib3NpdHl9YCk7XG5cbiAgICBpZiAocGFyc2VkQXJncy50eXBlID09PSBcImluaXQtZm9ybVwiKSB7XG4gICAgICAgIGF3YWl0IHJ1bkluaXRGb3JtKGNvbnRleHQsIHBhcnNlZEFyZ3Mub3B0aW9ucyk7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBmYXJtRGlyZWN0b3J5ID0gcHJvY2Vzcy5jd2QoKTtcbiAgICBhd2FpdCByZW1vdmVUZW1wb3JhcnlXZWJwYWNrQ29uZmlnRmlsZXMoZmFybURpcmVjdG9yeSwgY29udGV4dC5sb2dnZXIpO1xuICAgIGNvbnN0IGZhcm1Db25maWcgPSByZWFkRmFybUNvbmZpZyhmYXJtRGlyZWN0b3J5KTtcblxuICAgIGlmIChmYXJtQ29uZmlnLmVuZ2luZURpcmVjdG9yeSA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiRW5naW5lRGlyZWN0b3J5IGlzIG5vdCBzcGVjaWZpZWRcIik7XG4gICAgfVxuICAgIGlmIChmYXJtQ29uZmlnLnJlc291cmNlc0RpcmVjdG9yeSA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiUmVzb3VyY2VzRGlyZWN0b3J5IGlzIG5vdCBzcGVjaWZpZWRcIik7XG4gICAgfVxuXG4gICAgY29uc3QgZW5naW5lRGlyZWN0b3J5ID0gcGF0aC5yZXNvbHZlKGZhcm1Db25maWcuZW5naW5lRGlyZWN0b3J5KTtcbiAgICBjb25zdCByZXNvdXJjZXNEaXJlY3RvcnkgPSBwYXRoLnJlc29sdmUoZmFybUNvbmZpZy5yZXNvdXJjZXNEaXJlY3RvcnkpO1xuICAgIGNvbnN0IGNhbmR5TW9kdWxlc0RpcmVjdG9yeSA9IHBhdGgucmVzb2x2ZShmYXJtRGlyZWN0b3J5LCBcIi4uXCIsIFwiLmNhbmR5X21vZHVsZXNcIik7XG5cbiAgICBpZiAocGFyc2VkQXJncy50eXBlID09PSBcImJ1aWxkLXNlcnZlclwiIHx8IHBhcnNlZEFyZ3MudHlwZSA9PT0gXCJkZXYtYnVpbGQtc2VydmVyXCIpIHtcbiAgICAgICAgY29uc3QgYWxsRmFybURpcmVjdG9yaWVzID0gcGFyc2VkQXJncy5vcHRpb25zLmFsbEZhcm1zRGlyO1xuICAgICAgICBjb250ZXh0LmxvZ2dlci53YXJuaW5nKGBhbGxGYXJtRGlyZWN0b3JpZXMgPSAke3BhcnNlZEFyZ3Mub3B0aW9ucy5hbGxGYXJtc0Rpcn1gKTtcbiAgICAgICAgbGV0IGFsbEZhcm1Db25maWc7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGFsbEZhcm1EaXJlY3RvcmllcykgJiYgYWxsRmFybURpcmVjdG9yaWVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGFsbEZhcm1Db25maWcgPSBhd2FpdCB2YWxpZGF0ZUFuZFByZXBhcmVGYXJtRGlyZWN0b3JpZXNQYXRoKGFsbEZhcm1EaXJlY3RvcmllcywgZmFybURpcmVjdG9yeSwgY29udGV4dCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb250ZXh0LmxvZ2dlci53YXJuaW5nKGBVc2UgZGVmYXVsdCBjYW5keUZhcm0gcGF0aCBkaXIgPSAke2Zhcm1EaXJlY3Rvcnl9YCk7XG4gICAgICAgICAgICBhbGxGYXJtQ29uZmlnID0gYXdhaXQgdmFsaWRhdGVBbmRQcmVwYXJlRmFybURpcmVjdG9yaWVzUGF0aChbZmFybURpcmVjdG9yeV0sIGZhcm1EaXJlY3RvcnksIGNvbnRleHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHBhcnNlZEFyZ3MudHlwZSA9PT0gXCJkZXYtYnVpbGQtc2VydmVyXCIpIHtcbiAgICAgICAgICAgIGF3YWl0IHJ1bkRldkJ1aWxkU2VydmVyKGNvbnRleHQsIHBhcnNlZEFyZ3Mub3B0aW9ucywgYWxsRmFybUNvbmZpZyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBhd2FpdCBydW5CdWlsZFNlcnZlcihjb250ZXh0LCBwYXJzZWRBcmdzLm9wdGlvbnMsIGFsbEZhcm1Db25maWcpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHBhcnNlZEFyZ3MudHlwZSA9PT0gXCJidWlsZFwiKSB7XG4gICAgICAgIGF3YWl0IHJ1bkJ1aWxkRm9ybXMoXG4gICAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgICAgcGFyc2VkQXJncy5vcHRpb25zLFxuICAgICAgICAgICAgZmFybURpcmVjdG9yeSxcbiAgICAgICAgICAgIHJlc291cmNlc0RpcmVjdG9yeSxcbiAgICAgICAgICAgIGVuZ2luZURpcmVjdG9yeSxcbiAgICAgICAgICAgIGNhbmR5TW9kdWxlc0RpcmVjdG9yeSxcbiAgICAgICAgICAgIGZhcm1Db25maWcuaGxGYXJtRGlyZWN0b3J5UGF0aFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGlmIChwYXJzZWRBcmdzLnR5cGUgPT09IFwiZGV2LWJ1aWxkXCIpIHtcbiAgICAgICAgYXdhaXQgcnVuRGV2QnVpbGQoXG4gICAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgICAgcGFyc2VkQXJncy5vcHRpb25zLFxuICAgICAgICAgICAgZW5naW5lRGlyZWN0b3J5LFxuICAgICAgICAgICAgcmVzb3VyY2VzRGlyZWN0b3J5LFxuICAgICAgICAgICAgZmFybURpcmVjdG9yeSxcbiAgICAgICAgICAgIGNhbmR5TW9kdWxlc0RpcmVjdG9yeSxcbiAgICAgICAgICAgIGZhcm1Db25maWcuaGxGYXJtRGlyZWN0b3J5UGF0aFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGlmIChwYXJzZWRBcmdzLnR5cGUgPT09IFwiZm9ybS1zdGF0c1wiKSB7XG4gICAgICAgIGF3YWl0IHJ1bkZvcm1TdGF0cyhjb250ZXh0LCBwYXJzZWRBcmdzLm9wdGlvbnMsIGZhcm1EaXJlY3RvcnkpO1xuICAgIH1cbiAgICBpZiAocGFyc2VkQXJncy50eXBlID09PSBcInVwZ3JhZGVcIikge1xuICAgICAgICBhd2FpdCBydW5VcGdyYWRlRm9ybShjb250ZXh0LCBwYXJzZWRBcmdzLm9wdGlvbnMsIHJlc291cmNlc0RpcmVjdG9yeSwgZmFybURpcmVjdG9yeSk7XG4gICAgfVxuICAgIGlmIChwYXJzZWRBcmdzLnR5cGUgPT09IFwicmVuYW1lXCIpIHtcbiAgICAgICAgYXdhaXQgcnVuUmVuYW1lRmlsZXMoY29udGV4dCwgcGFyc2VkQXJncy5vcHRpb25zLCByZXNvdXJjZXNEaXJlY3RvcnksIGZhcm1EaXJlY3RvcnkpO1xuICAgIH1cbiAgICBpZiAocGFyc2VkQXJncy50eXBlID09PSBcImxvY2FsaXplXCIpIHtcbiAgICAgICAgYXdhaXQgcnVuTG9jYWxpemF0aW9uKFxuICAgICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICAgIHBhcnNlZEFyZ3Mub3B0aW9ucyxcbiAgICAgICAgICAgIGZhcm1EaXJlY3RvcnksXG4gICAgICAgICAgICBlbmdpbmVEaXJlY3RvcnksXG4gICAgICAgICAgICBjYW5keU1vZHVsZXNEaXJlY3RvcnksXG4gICAgICAgICAgICBmYXJtQ29uZmlnLmhsRmFybURpcmVjdG9yeVBhdGhcbiAgICAgICAgKTtcbiAgICB9XG59KTtcbiJdLCJtYXBwaW5ncyI6Ijs7O0FBQUFBLE9BQUE7QUFDQUEsT0FBQTtBQUNBQSxPQUFBO0FBQ0EsSUFBQUMsS0FBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBRUEsSUFBQUcsUUFBQSxHQUFBSCxPQUFBO0FBQ0FBLE9BQUE7QUFDQUEsT0FBQTtBQUNBLElBQUFJLFFBQUEsR0FBQUosT0FBQTtBQUVBLElBQUFLLGNBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLGVBQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLFlBQUEsR0FBQVAsT0FBQTtBQUNBLElBQUFRLGFBQUEsR0FBQVIsT0FBQTtBQUNBLElBQUFTLFlBQUEsR0FBQVQsT0FBQTtBQUNBLElBQUFVLGdCQUFBLEdBQUFWLE9BQUE7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
@@ -11,11 +11,15 @@ class FixedDirectoryEntriesProducer extends _ChainableValueProducer.ObservableVa
11
11
  this.directories = void 0;
12
12
  this.directories = directories;
13
13
  }
14
- async beginListening() {}
15
- async stopListening() {}
14
+ async beginListening() {
15
+ // eslint-disable-next-line no-empty-function
16
+ }
17
+ async stopListening() {
18
+ // eslint-disable-next-line no-empty-function
19
+ }
16
20
  async getCurrentValue() {
17
21
  return this.directories;
18
22
  }
19
23
  }
20
24
  exports.FixedDirectoryEntriesProducer = FixedDirectoryEntriesProducer;
21
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfQ2hhaW5hYmxlVmFsdWVQcm9kdWNlciIsInJlcXVpcmUiLCJGaXhlZERpcmVjdG9yeUVudHJpZXNQcm9kdWNlciIsIk9ic2VydmFibGVWYWx1ZVByb2R1Y2VyQmFzZSIsImNvbnN0cnVjdG9yIiwiZGlyZWN0b3JpZXMiLCJiZWdpbkxpc3RlbmluZyIsInN0b3BMaXN0ZW5pbmciLCJnZXRDdXJyZW50VmFsdWUiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL0NvbW1vbnMvVGFza3NDb3JlL0ZpeGVkRGlyZWN0b3J5RW50cmllc1Byb2R1Y2VyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGVWYWx1ZVByb2R1Y2VyQmFzZSB9IGZyb20gXCIuL0NoYWluYWJsZVZhbHVlUHJvZHVjZXJcIjtcblxuZXhwb3J0IGNsYXNzIEZpeGVkRGlyZWN0b3J5RW50cmllc1Byb2R1Y2VyIGV4dGVuZHMgT2JzZXJ2YWJsZVZhbHVlUHJvZHVjZXJCYXNlPHN0cmluZ1tdPiB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkaXJlY3Rvcmllczogc3RyaW5nW107XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoZGlyZWN0b3JpZXM6IHN0cmluZ1tdKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuZGlyZWN0b3JpZXMgPSBkaXJlY3RvcmllcztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgYXN5bmMgYmVnaW5MaXN0ZW5pbmcoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGFzeW5jIHN0b3BMaXN0ZW5pbmcoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGFzeW5jIGdldEN1cnJlbnRWYWx1ZSgpOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmRpcmVjdG9yaWVzO1xuICAgIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsdUJBQUEsR0FBQUMsT0FBQTtBQUVPLE1BQU1DLDZCQUE2QixTQUFTQyxtREFBMkIsQ0FBVztFQUc5RUMsV0FBV0EsQ0FBQ0MsV0FBcUIsRUFBRTtJQUN0QyxLQUFLLENBQUMsQ0FBQztJQUFDLEtBSEtBLFdBQVc7SUFJeEIsSUFBSSxDQUFDQSxXQUFXLEdBQUdBLFdBQVc7RUFDbEM7RUFFQSxNQUFnQkMsY0FBY0EsQ0FBQSxFQUFrQixDQUNoRDtFQUVBLE1BQWdCQyxhQUFhQSxDQUFBLEVBQWtCLENBQy9DO0VBRUEsTUFBZ0JDLGVBQWVBLENBQUEsRUFBc0I7SUFDakQsT0FBTyxJQUFJLENBQUNILFdBQVc7RUFDM0I7QUFDSjtBQUFDSSxPQUFBLENBQUFQLDZCQUFBLEdBQUFBLDZCQUFBIn0=
25
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfQ2hhaW5hYmxlVmFsdWVQcm9kdWNlciIsInJlcXVpcmUiLCJGaXhlZERpcmVjdG9yeUVudHJpZXNQcm9kdWNlciIsIk9ic2VydmFibGVWYWx1ZVByb2R1Y2VyQmFzZSIsImNvbnN0cnVjdG9yIiwiZGlyZWN0b3JpZXMiLCJiZWdpbkxpc3RlbmluZyIsInN0b3BMaXN0ZW5pbmciLCJnZXRDdXJyZW50VmFsdWUiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL0NvbW1vbnMvVGFza3NDb3JlL0ZpeGVkRGlyZWN0b3J5RW50cmllc1Byb2R1Y2VyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGVWYWx1ZVByb2R1Y2VyQmFzZSB9IGZyb20gXCIuL0NoYWluYWJsZVZhbHVlUHJvZHVjZXJcIjtcblxuZXhwb3J0IGNsYXNzIEZpeGVkRGlyZWN0b3J5RW50cmllc1Byb2R1Y2VyIGV4dGVuZHMgT2JzZXJ2YWJsZVZhbHVlUHJvZHVjZXJCYXNlPHN0cmluZ1tdPiB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkaXJlY3Rvcmllczogc3RyaW5nW107XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoZGlyZWN0b3JpZXM6IHN0cmluZ1tdKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuZGlyZWN0b3JpZXMgPSBkaXJlY3RvcmllcztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgYXN5bmMgYmVnaW5MaXN0ZW5pbmcoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1lbXB0eS1mdW5jdGlvblxuICAgIH1cblxuICAgIHByb3RlY3RlZCBhc3luYyBzdG9wTGlzdGVuaW5nKCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZW1wdHktZnVuY3Rpb25cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgYXN5bmMgZ2V0Q3VycmVudFZhbHVlKCk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlyZWN0b3JpZXM7XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSx1QkFBQSxHQUFBQyxPQUFBO0FBRU8sTUFBTUMsNkJBQTZCLFNBQVNDLG1EQUEyQixDQUFXO0VBRzlFQyxXQUFXQSxDQUFDQyxXQUFxQixFQUFFO0lBQ3RDLEtBQUssQ0FBQyxDQUFDO0lBQUMsS0FIS0EsV0FBVztJQUl4QixJQUFJLENBQUNBLFdBQVcsR0FBR0EsV0FBVztFQUNsQztFQUVBLE1BQWdCQyxjQUFjQSxDQUFBLEVBQWtCO0lBQzVDO0VBQUE7RUFHSixNQUFnQkMsYUFBYUEsQ0FBQSxFQUFrQjtJQUMzQztFQUFBO0VBR0osTUFBZ0JDLGVBQWVBLENBQUEsRUFBc0I7SUFDakQsT0FBTyxJQUFJLENBQUNILFdBQVc7RUFDM0I7QUFDSjtBQUFDSSxPQUFBLENBQUFQLDZCQUFBLEdBQUFBLDZCQUFBIn0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kontur.candy/tools",
3
- "version": "2.177.0",
3
+ "version": "2.178.2",
4
4
  "description": "",
5
5
  "files": [
6
6
  "candy.js",