@magic-xpa/engine 4.1100.0-dev4110.253 → 4.1100.0-dev4110.257

Sign up to get free protection for your applications and to get access to all the features.
Files changed (110) hide show
  1. package/esm2022/src/ClientManager.mjs +1 -1
  2. package/esm2022/src/CommandsProcessorBase.mjs +1 -1
  3. package/esm2022/src/CommandsProcessorManager.mjs +1 -1
  4. package/esm2022/src/CommandsTable.mjs +1 -1
  5. package/esm2022/src/CurrentClientVersion.mjs +2 -2
  6. package/esm2022/src/GUIManager.mjs +1 -1
  7. package/esm2022/src/GuiEventsProcessor.mjs +1 -1
  8. package/esm2022/src/ServerConfig.mjs +1 -1
  9. package/esm2022/src/commands/ClientToServer/ClientOriginatedCommandSerializer.mjs +1 -1
  10. package/esm2022/src/commands/ClientToServer/CommandFactory.mjs +1 -1
  11. package/esm2022/src/commands/ClientToServer/CommandSerializationHelper.mjs +1 -1
  12. package/esm2022/src/commands/ClientToServer/EvaluateCommand.mjs +1 -1
  13. package/esm2022/src/commands/ClientToServer/ExecOperCommand.mjs +1 -1
  14. package/esm2022/src/commands/ClientToServer/RollbackEventCommand.mjs +1 -1
  15. package/esm2022/src/commands/ServerToClient/AbortCommand.mjs +1 -1
  16. package/esm2022/src/commands/ServerToClient/AddRangeCommand.mjs +1 -1
  17. package/esm2022/src/commands/ServerToClient/AddSortCommand.mjs +1 -1
  18. package/esm2022/src/commands/ServerToClient/ClientRefreshCommand.mjs +1 -1
  19. package/esm2022/src/commands/ServerToClient/ClientTargetedCommandBase.mjs +1 -1
  20. package/esm2022/src/commands/ServerToClient/EnhancedVerifyCommand.mjs +1 -1
  21. package/esm2022/src/commands/ServerToClient/OpenURLCommand.mjs +1 -1
  22. package/esm2022/src/commands/ServerToClient/ResultCommand.mjs +1 -1
  23. package/esm2022/src/commands/ServerToClient/VerifyCommand.mjs +1 -1
  24. package/esm2022/src/commands/ServerToClient/XMLBasedCommandBuilder.mjs +1 -1
  25. package/esm2022/src/data/DataView.mjs +1 -1
  26. package/esm2022/src/data/DvCache.mjs +1 -1
  27. package/esm2022/src/data/Field.mjs +1 -1
  28. package/esm2022/src/data/FieldsTable.mjs +1 -1
  29. package/esm2022/src/data/Key.mjs +1 -1
  30. package/esm2022/src/data/Record.mjs +2 -2
  31. package/esm2022/src/data/RecordsTable.mjs +1 -1
  32. package/esm2022/src/data/TaskTransactionManager.mjs +1 -1
  33. package/esm2022/src/data/XMLBasedDcValuesBuilder.mjs +1 -1
  34. package/esm2022/src/env/EnvVariablesTable.mjs +1 -1
  35. package/esm2022/src/env/Environment.mjs +1 -1
  36. package/esm2022/src/env/LanguageData.mjs +1 -1
  37. package/esm2022/src/env/MirrorString.mjs +1 -1
  38. package/esm2022/src/event/ActionManager.mjs +1 -1
  39. package/esm2022/src/event/Event.mjs +1 -1
  40. package/esm2022/src/event/EventHandler.mjs +1 -1
  41. package/esm2022/src/event/EventHandlerPosition.mjs +1 -1
  42. package/esm2022/src/event/EventsManager.mjs +1 -1
  43. package/esm2022/src/event/RunTimeEvent.mjs +1 -1
  44. package/esm2022/src/event/UserEventsTable.mjs +1 -1
  45. package/esm2022/src/exp/ExpTable.mjs +1 -1
  46. package/esm2022/src/exp/Expression.mjs +1 -1
  47. package/esm2022/src/exp/ExpressionEvaluator.mjs +1 -1
  48. package/esm2022/src/exp/ExpressionLocalJpn.mjs +1 -1
  49. package/esm2022/src/exp/GlobalParamsTable.mjs +1 -1
  50. package/esm2022/src/exp/YesNoExp.mjs +1 -1
  51. package/esm2022/src/gui/FormsTable.mjs +1 -1
  52. package/esm2022/src/gui/MgControl.mjs +1 -1
  53. package/esm2022/src/gui/MgForm.mjs +1 -1
  54. package/esm2022/src/http/HttpManager.mjs +1 -1
  55. package/esm2022/src/http/client/HttpClientAsync.mjs +1 -1
  56. package/esm2022/src/http/client/HttpClientBase.mjs +1 -1
  57. package/esm2022/src/http/client/HttpClientEvents.mjs +1 -1
  58. package/esm2022/src/http/client/HttpClientSync.mjs +1 -1
  59. package/esm2022/src/http/client/HttpUtility.mjs +1 -1
  60. package/esm2022/src/remote/AddUserLocateRemoteDataViewCommand.mjs +1 -1
  61. package/esm2022/src/remote/AddUserRangeRemoteDataViewCommand.mjs +1 -1
  62. package/esm2022/src/remote/AddUserSortRemoteDataViewCommand.mjs +1 -1
  63. package/esm2022/src/remote/RemoteCommandsProcessor.mjs +1 -1
  64. package/esm2022/src/remote/RemoteControlItemsRefreshCommand.mjs +1 -1
  65. package/esm2022/src/remote/RemoteDataViewCommandBase.mjs +1 -1
  66. package/esm2022/src/remote/RemoteDataViewCommandFactory.mjs +1 -1
  67. package/esm2022/src/remote/ResetUserLocateRemoteDataviewCommand.mjs +1 -1
  68. package/esm2022/src/remote/ResetUserSortRemoteDataviewCommand.mjs +1 -1
  69. package/esm2022/src/remote/ServerError.mjs +1 -1
  70. package/esm2022/src/remote/SetTransactionStateRemoteDataViewCommand.mjs +1 -1
  71. package/esm2022/src/rt/Argument.mjs +1 -1
  72. package/esm2022/src/rt/ArgumentsList.mjs +1 -1
  73. package/esm2022/src/rt/Boundary.mjs +1 -1
  74. package/esm2022/src/rt/CompMainPrgTable.mjs +1 -1
  75. package/esm2022/src/rt/DataviewHeaderBase.mjs +1 -1
  76. package/esm2022/src/rt/DataviewHeaders.mjs +1 -1
  77. package/esm2022/src/rt/DataviewHeadersSaxHandler.mjs +1 -1
  78. package/esm2022/src/rt/ExecutionStack.mjs +1 -1
  79. package/esm2022/src/rt/HandlersTable.mjs +1 -1
  80. package/esm2022/src/rt/LastFocusedManager.mjs +1 -1
  81. package/esm2022/src/rt/Operation.mjs +1 -1
  82. package/esm2022/src/rt/OperationTable.mjs +1 -1
  83. package/esm2022/src/rt/Recompute.mjs +1 -1
  84. package/esm2022/src/rt/RecomputeTable.mjs +1 -1
  85. package/esm2022/src/rt/RemoteDataviewHeader.mjs +1 -1
  86. package/esm2022/src/rt/TableCache.mjs +1 -1
  87. package/esm2022/src/rt/TableCacheManager.mjs +1 -1
  88. package/esm2022/src/rt/Transaction.mjs +1 -1
  89. package/esm2022/src/security/UserDetails.mjs +1 -1
  90. package/esm2022/src/tasks/MGData.mjs +1 -1
  91. package/esm2022/src/tasks/MGDataCollection.mjs +1 -1
  92. package/esm2022/src/tasks/RCTimer.mjs +1 -1
  93. package/esm2022/src/tasks/RemoteTaskService.mjs +1 -1
  94. package/esm2022/src/tasks/Task.mjs +1 -1
  95. package/esm2022/src/tasks/TaskBase.mjs +1 -1
  96. package/esm2022/src/tasks/TaskServiceBase.mjs +1 -1
  97. package/esm2022/src/tasks/TasksTable.mjs +1 -1
  98. package/esm2022/src/tasks/sort/SortCollection.mjs +1 -1
  99. package/esm2022/src/util/ConstUtils.mjs +1 -1
  100. package/esm2022/src/util/FlowMonitorQueue.mjs +1 -1
  101. package/esm2022/src/util/HeapSort.mjs +1 -1
  102. package/esm2022/src/util/MgPriorityBlockingQueue.mjs +1 -1
  103. package/esm2022/src/util/MgPriorityQueue.mjs +1 -1
  104. package/esm2022/src/util/PrmMap.mjs +1 -1
  105. package/esm2022/src/util/Scrambler.mjs +1 -1
  106. package/esm2022/src/util/UniqueIDUtils.mjs +1 -1
  107. package/esm2022/src/util/cookie.service.mjs +1 -1
  108. package/fesm2022/magic-xpa-engine.mjs +2 -2
  109. package/fesm2022/magic-xpa-engine.mjs.map +1 -1
  110. package/package.json +4 -4
@@ -63,4 +63,4 @@ export class MgPriorityQueue {
63
63
  }
64
64
  }
65
65
  }
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWdQcmlvcml0eVF1ZXVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZW5naW5lL3NyYy91dGlsL01nUHJpb3JpdHlRdWV1ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTQSxNQUFNLE9BQU8sZUFBZTtJQUNsQixNQUFNLENBQUMsd0JBQXdCLEdBQVcsRUFBRSxDQUFDO0lBVTdDLE1BQU0sR0FBVSxJQUFJLENBQUM7SUFHN0IsSUFBSSxHQUFXLENBQUMsQ0FBQztJQUtqQjtRQUNFLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxLQUFLLENBQU0sZUFBZSxDQUFDLHdCQUF3QixHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzNFLEtBQUssSUFBSSxHQUFHLEdBQVcsQ0FBQyxFQUFFLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxFQUFFLEdBQUc7WUFDdkQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUM7SUFDNUIsQ0FBQztJQWNELEtBQUssQ0FBQyxDQUFNO1FBRVYsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDO1FBR1osSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTTtZQUNqQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBRWpDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV0QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUM7WUFDakIsT0FBTyxJQUFJLENBQUM7UUFFZCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQVVELE9BQU87UUFDTCxPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFHRCxLQUFLO1FBRUgsS0FBSyxJQUFJLENBQUMsR0FBVyxDQUFDLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFO1lBQ3pDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBRXhCLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO0lBQ2hCLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUM7WUFDakIsT0FBTyxJQUFJLENBQUM7UUFFZCxJQUFJLE1BQU0sR0FBUSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFeEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDaEMsSUFBSSxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUM7WUFDZixJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRWxCLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFRTyxLQUFLLENBQUMsQ0FBUztRQUNyQixPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNiLElBQUksQ0FBQyxHQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFdkIsSUFBa0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUUsQ0FBQyxTQUFTLENBQWMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7Z0JBQzNFLE1BQU07WUFFUixJQUFJLEdBQUcsR0FBUSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzlCLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNoQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQztZQUNyQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ1IsQ0FBQztJQUNILENBQUM7SUFRTyxPQUFPLENBQUMsQ0FBUztRQUN2QixJQUFJLENBQVMsQ0FBQztRQUNkLE9BQU8sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLElBQWtCLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFFLENBQUMsU0FBUyxDQUFjLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztnQkFDL0YsQ0FBQyxFQUFFLENBQUM7WUFFTixJQUFrQixJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBRSxDQUFDLFNBQVMsQ0FBYyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztnQkFDM0UsTUFBTTtZQUVSLElBQUksR0FBRyxHQUFRLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDOUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2hDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO1lBQ3JCLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDUixDQUFDO0lBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SUNvbXBhcmFibGV9IGZyb20gXCJAbWFnaWMteHBhL21zY29yZWxpYlwiO1xyXG5cclxuLy8vIDxzdW1tYXJ5PlxyXG4vLy8gT3VyIGltcGxlbWVudGF0aW9uIG9mIFByaW9yaXR5IF9xdWV1ZSBzaWxpbWFyIHRvIEpESyAxLjUgamF2YS51dGlsLlByaW9yaXR5UXVldWUuICpcclxuLy8vIDxwPlxyXG4vLy8gQSBwcmlvcml0eSBfcXVldWUgaXMgdW5ib3VuZGVkLCBidXQgaGFzIGFuIGludGVybmFsIDxpPmNhcGFjaXR5PC9pPiBnb3Zlcm5pbmcgdGhlIFNpemUgb2YgYW4gYXJyYXkgdXNlZCB0b1xyXG4vLy8gc3RvcmUgdGhlIGVsZW1lbnRzIG9uIHRoZSBfcXVldWUuIEl0IGlzIGFsd2F5cyBhdCBsZWFzdCBhcyBsYXJnZSBhcyB0aGUgX3F1ZXVlIFNpemUuIEFzIGVsZW1lbnRzIGFyZSBhZGRlZCB0b1xyXG4vLy8gYSBwcmlvcml0eSBfcXVldWUsIGl0cyBjYXBhY2l0eSBncm93cyBhdXRvbWF0aWNhbGx5LiBUaGUgZGV0YWlscyBvZiB0aGUgZ3Jvd3RoIHBvbGljeSBhcmUgbm90IHNwZWNpZmllZC5cclxuLy8vIDwvc3VtbWFyeT5cclxuZXhwb3J0IGNsYXNzIE1nUHJpb3JpdHlRdWV1ZSB7XHJcbiAgcHJpdmF0ZSBzdGF0aWMgREVGQVVMVF9JTklUSUFMX0NBUEFDSVRZOiBudW1iZXIgPSAxMTtcclxuICAvLy8gPHN1bW1hcnk+IFByaW9yaXR5IF9xdWV1ZSByZXByZXNlbnRlZCBhcyBhIGJhbGFuY2VkIGJpbmFyeSBoZWFwOiB0aGUgdHdvIGNoaWxkcmVuIG9mIF9xdWV1ZVtuXSBhcmUgX3F1ZXVlWzIqbl0gYW5kXHJcbiAgLy8vIF9xdWV1ZVsyKm4gKyAxXS4gVGhlIHByaW9yaXR5IF9xdWV1ZSBpcyBvcmRlcmVkIGJ5IGNvbXBhcmF0b3IsIG9yIGJ5IHRoZSBlbGVtZW50cycgbmF0dXJhbCBvcmRlcmluZywgaWZcclxuICAvLy8gY29tcGFyYXRvciBpcyBudWxsOiBGb3IgZWFjaCBub2RlIG4gaW4gdGhlIGhlYXAgYW5kIGVhY2ggZGVzY2VuZGFudCBkIG9mIG4sIG4gPD0gZC5cclxuICAvLy9cclxuICAvLy8gVGhlIGVsZW1lbnQgd2l0aCB0aGUgbG93ZXN0IHZhbHVlIGlzIGluIF9xdWV1ZVsxXSwgYXNzdW1pbmcgdGhlIF9xdWV1ZSBpcyBub25lbXB0eS4gKEEgb25lLWJhc2VkIGFycmF5IGlzXHJcbiAgLy8vIHVzZWQgaW4gcHJlZmVyZW5jZSB0byB0aGUgdHJhZGl0aW9uYWwgMC1iYXNlZCBhcnJheSB0byBzaW1wbGlmeSBwYXJlbnQgYW5kIGNoaWxkIGNhbGN1bGF0aW9ucy4pXHJcbiAgLy8vXHJcbiAgLy8vIF9xdWV1ZS5sZW5ndGggbXVzdCBiZSA+PSAyLCBldmVuIGlmIFNpemUgPT0gMC5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIHByaXZhdGUgX3F1ZXVlOiBhbnlbXSA9IG51bGw7XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gVGhlIG51bWJlciBvZiBlbGVtZW50cyBpbiB0aGUgcHJpb3JpdHkgX3F1ZXVlLjwvc3VtbWFyeT5cclxuICBTaXplOiBudW1iZXIgPSAwO1xyXG5cclxuICAvLy8gPHN1bW1hcnk+IENyZWF0ZXMgYSA8dHQ+UHJpb3JpdHlRdWV1ZTwvdHQ+IHdpdGggdGhlIGRlZmF1bHQgaW5pdGlhbCBjYXBhY2l0eSAoMTEpIHRoYXQgb3JkZXJzIGl0cyBlbGVtZW50c1xyXG4gIC8vLyBhY2NvcmRpbmcgdG8gdGhlaXIgbmF0dXJhbCBvcmRlcmluZy5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgdGhpcy5fcXVldWUgPSBuZXcgQXJyYXk8YW55PihNZ1ByaW9yaXR5UXVldWUuREVGQVVMVF9JTklUSUFMX0NBUEFDSVRZICsgMSk7XHJcbiAgICBmb3IgKGxldCBfYWk6IG51bWJlciA9IDA7IF9haSA8IHRoaXMuX3F1ZXVlLmxlbmd0aDsgKytfYWkpXHJcbiAgICAgIHRoaXMuX3F1ZXVlW19haV0gPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBJbnNlcnRzIHRoZSBzcGVjaWZpZWQgZWxlbWVudCBpbnRvIHRoaXMgcHJpb3JpdHkgX3F1ZXVlLlxyXG4gIC8vL1xyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxyZXR1cm5zPiA8dHQ+dHJ1ZTwvdHQ+XHJcbiAgLy8vIDwvcmV0dXJucz5cclxuICAvLy8gPHRocm93cz4gIENsYXNzQ2FzdEV4Y2VwdGlvbiA8L3Rocm93cz5cclxuICAvLy8gPHN1bW1hcnk+ICAgICAgICAgICAgaWYgdGhlIHNwZWNpZmllZCBlbGVtZW50IGNhbm5vdCBiZSBjb21wYXJlZCB3aXRoIGVsZW1lbnRzIGN1cnJlbnRseSBpbiB0aGUgcHJpb3JpdHkgX3F1ZXVlXHJcbiAgLy8vIGFjY29yZGluZyB0byB0aGUgcHJpb3JpdHkgX3F1ZXVlJ3Mgb3JkZXJpbmcuXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHRocm93cz4gIE51bGxQb2ludGVyRXhjZXB0aW9uIDwvdGhyb3dzPlxyXG4gIC8vLyA8c3VtbWFyeT4gICAgICAgICAgICBpZiB0aGUgc3BlY2lmaWVkIGVsZW1lbnQgaXMgPHR0Pm51bGw8L3R0Pi5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIG9mZmVyKG86IGFueSk6IGJvb2xlYW4ge1xyXG5cclxuICAgICsrdGhpcy5TaXplO1xyXG5cclxuICAgIC8vIEdyb3cgYmFja2luZyBzdG9yZSBpZiBuZWNlc3NhcnlcclxuICAgIGlmICh0aGlzLlNpemUgPj0gdGhpcy5fcXVldWUubGVuZ3RoKVxyXG4gICAgICB0aGlzLl9xdWV1ZS5sZW5ndGggPSB0aGlzLlNpemU7XHJcblxyXG4gICAgdGhpcy5fcXVldWVbdGhpcy5TaXplXSA9IG87XHJcbiAgICB0aGlzLmZpeFVwKHRoaXMuU2l6ZSk7XHJcblxyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwZWVrKCk6IGFueSB7XHJcbiAgICBpZiAodGhpcy5TaXplID09PSAwKVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5fcXVldWVbMV07XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+IFJldHVybnMgPHR0PnRydWU8L3R0PiBpZiBfcXVldWUgY29udGFpbnMgbm8gZWxlbWVudHMuXHJcbiAgLy8vIDxwPlxyXG4gIC8vL1xyXG4gIC8vLyBUaGlzIGltcGxlbWVudGF0aW9uIHJldHVybnMgPHR0PlNpemUoKSA9PSAwPC90dD4uXHJcbiAgLy8vXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+IDx0dD50cnVlPC90dD4gaWYgX3F1ZXVlIGNvbnRhaW5zIG5vIGVsZW1lbnRzLlxyXG4gIC8vLyA8L3JldHVybnM+XHJcbiAgaXNFbXB0eSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLlNpemUgPT09IDA7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+IFJlbW92ZXMgYWxsIGVsZW1lbnRzIGZyb20gdGhlIHByaW9yaXR5IF9xdWV1ZS4gVGhlIF9xdWV1ZSB3aWxsIGJlIGVtcHR5IGFmdGVyIHRoaXMgY2FsbCByZXR1cm5zLjwvc3VtbWFyeT5cclxuICBjbGVhcigpOiB2b2lkIHtcclxuICAgIC8vIE51bGwgb3V0IGVsZW1lbnQgcmVmZXJlbmNlcyB0byBwcmV2ZW50IG1lbW9yeSBsZWFrXHJcbiAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAxOyBpIDw9IHRoaXMuU2l6ZTsgaSsrKVxyXG4gICAgICB0aGlzLl9xdWV1ZVtpXSA9IG51bGw7XHJcblxyXG4gICAgdGhpcy5TaXplID0gMDtcclxuICB9XHJcblxyXG4gIHBvbGwoKTogYW55IHtcclxuICAgIGlmICh0aGlzLlNpemUgPT09IDApXHJcbiAgICAgIHJldHVybiBudWxsO1xyXG5cclxuICAgIGxldCByZXN1bHQ6IGFueSA9IHRoaXMuX3F1ZXVlWzFdO1xyXG4gICAgdGhpcy5fcXVldWVbMV0gPSB0aGlzLl9xdWV1ZVt0aGlzLlNpemVdO1xyXG5cclxuICAgIHRoaXMuX3F1ZXVlW3RoaXMuU2l6ZS0tXSA9IG51bGw7IC8vIERyb3AgZXh0cmEgcmVmIHRvIHByZXZlbnQgbWVtb3J5IGxlYWtcclxuICAgIGlmICh0aGlzLlNpemUgPiAxKVxyXG4gICAgICB0aGlzLmZpeERvd24oMSk7XHJcblxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gRXN0YWJsaXNoZXMgdGhlIGhlYXAgaW52YXJpYW50IChkZXNjcmliZWQgYWJvdmUpIGFzc3VtaW5nIHRoZSBoZWFwIHNhdGlzZmllcyB0aGUgaW52YXJpYW50IGV4Y2VwdFxyXG4gIC8vLyBwb3NzaWJseSBmb3IgdGhlIGxlYWYtbm9kZSBpbmRleGVkIGJ5IGsgKHdoaWNoIG1heSBoYXZlIGEgbmV4dEV4ZWN1dGlvblRpbWUgbGVzcyB0aGFuIGl0cyBwYXJlbnQncykuXHJcbiAgLy8vXHJcbiAgLy8vIFRoaXMgbWV0aG9kIGZ1bmN0aW9ucyBieSBcInByb21vdGluZ1wiIF9xdWV1ZVtrXSB1cCB0aGUgaGllcmFyY2h5IChieSBzd2FwcGluZyBpdCB3aXRoIGl0cyBwYXJlbnQpXHJcbiAgLy8vIHJlcGVhdGVkbHkgdW50aWwgX3F1ZXVlW2tdIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byBpdHMgcGFyZW50LlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgcHJpdmF0ZSBmaXhVcChrOiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHdoaWxlIChrID4gMSkge1xyXG4gICAgICBsZXQgajogbnVtYmVyID0gayA+PiAxO1xyXG5cclxuICAgICAgaWYgKCg8SUNvbXBhcmFibGU+dGhpcy5fcXVldWVbal0pLkNvbXBhcmVUbyg8SUNvbXBhcmFibGU+dGhpcy5fcXVldWVba10pIDw9IDApXHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBsZXQgdG1wOiBhbnkgPSB0aGlzLl9xdWV1ZVtqXTtcclxuICAgICAgdGhpcy5fcXVldWVbal0gPSB0aGlzLl9xdWV1ZVtrXTtcclxuICAgICAgdGhpcy5fcXVldWVba10gPSB0bXA7XHJcbiAgICAgIGsgPSBqO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBFc3RhYmxpc2hlcyB0aGUgaGVhcCBpbnZhcmlhbnQgKGRlc2NyaWJlZCBhYm92ZSkgaW4gdGhlIHN1YnRyZWUgcm9vdGVkIGF0IGssIHdoaWNoIGlzIGFzc3VtZWQgdG8gc2F0aXNmeVxyXG4gIC8vLyB0aGUgaGVhcCBpbnZhcmlhbnQgZXhjZXB0IHBvc3NpYmx5IGZvciBub2RlIGsgaXRzZWxmICh3aGljaCBtYXkgYmUgZ3JlYXRlciB0aGFuIGl0cyBjaGlsZHJlbikuXHJcbiAgLy8vXHJcbiAgLy8vIFRoaXMgbWV0aG9kIGZ1bmN0aW9ucyBieSBcImRlbW90aW5nXCIgX3F1ZXVlW2tdIGRvd24gdGhlIGhpZXJhcmNoeSAoYnkgc3dhcHBpbmcgaXQgd2l0aCBpdHMgc21hbGxlciBjaGlsZClcclxuICAvLy8gcmVwZWF0ZWRseSB1bnRpbCBfcXVldWVba10gaXMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIGl0cyBjaGlsZHJlbi5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIHByaXZhdGUgZml4RG93bihrOiBudW1iZXIpOiB2b2lkIHtcclxuICAgIGxldCBqOiBudW1iZXI7XHJcbiAgICB3aGlsZSAoKGogPSBrIDw8IDEpIDw9IHRoaXMuU2l6ZSAmJiBqID4gMCkge1xyXG4gICAgICBpZiAoaiA8IHRoaXMuU2l6ZSAmJiAoPElDb21wYXJhYmxlPnRoaXMuX3F1ZXVlW2pdKS5Db21wYXJlVG8oPElDb21wYXJhYmxlPnRoaXMuX3F1ZXVlW2ogKyAxXSkgPiAwKVxyXG4gICAgICAgIGorKztcclxuXHJcbiAgICAgIGlmICgoPElDb21wYXJhYmxlPnRoaXMuX3F1ZXVlW2tdKS5Db21wYXJlVG8oPElDb21wYXJhYmxlPnRoaXMuX3F1ZXVlW2pdKSA8PSAwKVxyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgbGV0IHRtcDogYW55ID0gdGhpcy5fcXVldWVbal07XHJcbiAgICAgIHRoaXMuX3F1ZXVlW2pdID0gdGhpcy5fcXVldWVba107XHJcbiAgICAgIHRoaXMuX3F1ZXVlW2tdID0gdG1wO1xyXG4gICAgICBrID0gajtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWdQcmlvcml0eVF1ZXVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZW5naW5lL3NyYy91dGlsL01nUHJpb3JpdHlRdWV1ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTQSxNQUFNLE9BQU8sZUFBZTtJQUNsQixNQUFNLENBQUMsd0JBQXdCLEdBQVcsRUFBRSxDQUFDO0lBVTdDLE1BQU0sR0FBVSxJQUFJLENBQUM7SUFHN0IsSUFBSSxHQUFXLENBQUMsQ0FBQztJQUtqQjtRQUNFLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxLQUFLLENBQU0sZUFBZSxDQUFDLHdCQUF3QixHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzNFLEtBQUssSUFBSSxHQUFHLEdBQVcsQ0FBQyxFQUFFLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxFQUFFLEdBQUc7WUFDdkQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUM7SUFDNUIsQ0FBQztJQWNELEtBQUssQ0FBQyxDQUFNO1FBRVYsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDO1FBR1osSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTTtZQUNqQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBRWpDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV0QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUM7WUFDakIsT0FBTyxJQUFJLENBQUM7UUFFZCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQVVELE9BQU87UUFDTCxPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFHRCxLQUFLO1FBRUgsS0FBSyxJQUFJLENBQUMsR0FBVyxDQUFDLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFO1lBQ3pDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBRXhCLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO0lBQ2hCLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUM7WUFDakIsT0FBTyxJQUFJLENBQUM7UUFFZCxJQUFJLE1BQU0sR0FBUSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFeEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDaEMsSUFBSSxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUM7WUFDZixJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRWxCLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFRTyxLQUFLLENBQUMsQ0FBUztRQUNyQixPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDWixJQUFJLENBQUMsR0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRXZCLElBQWtCLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFFLENBQUMsU0FBUyxDQUFjLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2dCQUMzRSxNQUFNO1lBRVIsSUFBSSxHQUFHLEdBQVEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM5QixJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDaEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUM7WUFDckIsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNQO0lBQ0gsQ0FBQztJQVFPLE9BQU8sQ0FBQyxDQUFTO1FBQ3ZCLElBQUksQ0FBUyxDQUFDO1FBQ2QsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3pDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLElBQWtCLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFFLENBQUMsU0FBUyxDQUFjLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztnQkFDL0YsQ0FBQyxFQUFFLENBQUM7WUFFTixJQUFrQixJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBRSxDQUFDLFNBQVMsQ0FBYyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztnQkFDM0UsTUFBTTtZQUVSLElBQUksR0FBRyxHQUFRLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDOUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2hDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO1lBQ3JCLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDUDtJQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0lDb21wYXJhYmxlfSBmcm9tIFwiQG1hZ2ljLXhwYS9tc2NvcmVsaWJcIjtcclxuXHJcbi8vLyA8c3VtbWFyeT5cclxuLy8vIE91ciBpbXBsZW1lbnRhdGlvbiBvZiBQcmlvcml0eSBfcXVldWUgc2lsaW1hciB0byBKREsgMS41IGphdmEudXRpbC5Qcmlvcml0eVF1ZXVlLiAqXHJcbi8vLyA8cD5cclxuLy8vIEEgcHJpb3JpdHkgX3F1ZXVlIGlzIHVuYm91bmRlZCwgYnV0IGhhcyBhbiBpbnRlcm5hbCA8aT5jYXBhY2l0eTwvaT4gZ292ZXJuaW5nIHRoZSBTaXplIG9mIGFuIGFycmF5IHVzZWQgdG9cclxuLy8vIHN0b3JlIHRoZSBlbGVtZW50cyBvbiB0aGUgX3F1ZXVlLiBJdCBpcyBhbHdheXMgYXQgbGVhc3QgYXMgbGFyZ2UgYXMgdGhlIF9xdWV1ZSBTaXplLiBBcyBlbGVtZW50cyBhcmUgYWRkZWQgdG9cclxuLy8vIGEgcHJpb3JpdHkgX3F1ZXVlLCBpdHMgY2FwYWNpdHkgZ3Jvd3MgYXV0b21hdGljYWxseS4gVGhlIGRldGFpbHMgb2YgdGhlIGdyb3d0aCBwb2xpY3kgYXJlIG5vdCBzcGVjaWZpZWQuXHJcbi8vLyA8L3N1bW1hcnk+XHJcbmV4cG9ydCBjbGFzcyBNZ1ByaW9yaXR5UXVldWUge1xyXG4gIHByaXZhdGUgc3RhdGljIERFRkFVTFRfSU5JVElBTF9DQVBBQ0lUWTogbnVtYmVyID0gMTE7XHJcbiAgLy8vIDxzdW1tYXJ5PiBQcmlvcml0eSBfcXVldWUgcmVwcmVzZW50ZWQgYXMgYSBiYWxhbmNlZCBiaW5hcnkgaGVhcDogdGhlIHR3byBjaGlsZHJlbiBvZiBfcXVldWVbbl0gYXJlIF9xdWV1ZVsyKm5dIGFuZFxyXG4gIC8vLyBfcXVldWVbMipuICsgMV0uIFRoZSBwcmlvcml0eSBfcXVldWUgaXMgb3JkZXJlZCBieSBjb21wYXJhdG9yLCBvciBieSB0aGUgZWxlbWVudHMnIG5hdHVyYWwgb3JkZXJpbmcsIGlmXHJcbiAgLy8vIGNvbXBhcmF0b3IgaXMgbnVsbDogRm9yIGVhY2ggbm9kZSBuIGluIHRoZSBoZWFwIGFuZCBlYWNoIGRlc2NlbmRhbnQgZCBvZiBuLCBuIDw9IGQuXHJcbiAgLy8vXHJcbiAgLy8vIFRoZSBlbGVtZW50IHdpdGggdGhlIGxvd2VzdCB2YWx1ZSBpcyBpbiBfcXVldWVbMV0sIGFzc3VtaW5nIHRoZSBfcXVldWUgaXMgbm9uZW1wdHkuIChBIG9uZS1iYXNlZCBhcnJheSBpc1xyXG4gIC8vLyB1c2VkIGluIHByZWZlcmVuY2UgdG8gdGhlIHRyYWRpdGlvbmFsIDAtYmFzZWQgYXJyYXkgdG8gc2ltcGxpZnkgcGFyZW50IGFuZCBjaGlsZCBjYWxjdWxhdGlvbnMuKVxyXG4gIC8vL1xyXG4gIC8vLyBfcXVldWUubGVuZ3RoIG11c3QgYmUgPj0gMiwgZXZlbiBpZiBTaXplID09IDAuXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBwcml2YXRlIF9xdWV1ZTogYW55W10gPSBudWxsO1xyXG5cclxuICAvLy8gPHN1bW1hcnk+IFRoZSBudW1iZXIgb2YgZWxlbWVudHMgaW4gdGhlIHByaW9yaXR5IF9xdWV1ZS48L3N1bW1hcnk+XHJcbiAgU2l6ZTogbnVtYmVyID0gMDtcclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBDcmVhdGVzIGEgPHR0PlByaW9yaXR5UXVldWU8L3R0PiB3aXRoIHRoZSBkZWZhdWx0IGluaXRpYWwgY2FwYWNpdHkgKDExKSB0aGF0IG9yZGVycyBpdHMgZWxlbWVudHNcclxuICAvLy8gYWNjb3JkaW5nIHRvIHRoZWlyIG5hdHVyYWwgb3JkZXJpbmcuXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMuX3F1ZXVlID0gbmV3IEFycmF5PGFueT4oTWdQcmlvcml0eVF1ZXVlLkRFRkFVTFRfSU5JVElBTF9DQVBBQ0lUWSArIDEpO1xyXG4gICAgZm9yIChsZXQgX2FpOiBudW1iZXIgPSAwOyBfYWkgPCB0aGlzLl9xdWV1ZS5sZW5ndGg7ICsrX2FpKVxyXG4gICAgICB0aGlzLl9xdWV1ZVtfYWldID0gbnVsbDtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gSW5zZXJ0cyB0aGUgc3BlY2lmaWVkIGVsZW1lbnQgaW50byB0aGlzIHByaW9yaXR5IF9xdWV1ZS5cclxuICAvLy9cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz4gPHR0PnRydWU8L3R0PlxyXG4gIC8vLyA8L3JldHVybnM+XHJcbiAgLy8vIDx0aHJvd3M+ICBDbGFzc0Nhc3RFeGNlcHRpb24gPC90aHJvd3M+XHJcbiAgLy8vIDxzdW1tYXJ5PiAgICAgICAgICAgIGlmIHRoZSBzcGVjaWZpZWQgZWxlbWVudCBjYW5ub3QgYmUgY29tcGFyZWQgd2l0aCBlbGVtZW50cyBjdXJyZW50bHkgaW4gdGhlIHByaW9yaXR5IF9xdWV1ZVxyXG4gIC8vLyBhY2NvcmRpbmcgdG8gdGhlIHByaW9yaXR5IF9xdWV1ZSdzIG9yZGVyaW5nLlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDx0aHJvd3M+ICBOdWxsUG9pbnRlckV4Y2VwdGlvbiA8L3Rocm93cz5cclxuICAvLy8gPHN1bW1hcnk+ICAgICAgICAgICAgaWYgdGhlIHNwZWNpZmllZCBlbGVtZW50IGlzIDx0dD5udWxsPC90dD4uXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBvZmZlcihvOiBhbnkpOiBib29sZWFuIHtcclxuXHJcbiAgICArK3RoaXMuU2l6ZTtcclxuXHJcbiAgICAvLyBHcm93IGJhY2tpbmcgc3RvcmUgaWYgbmVjZXNzYXJ5XHJcbiAgICBpZiAodGhpcy5TaXplID49IHRoaXMuX3F1ZXVlLmxlbmd0aClcclxuICAgICAgdGhpcy5fcXVldWUubGVuZ3RoID0gdGhpcy5TaXplO1xyXG5cclxuICAgIHRoaXMuX3F1ZXVlW3RoaXMuU2l6ZV0gPSBvO1xyXG4gICAgdGhpcy5maXhVcCh0aGlzLlNpemUpO1xyXG5cclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcGVlaygpOiBhbnkge1xyXG4gICAgaWYgKHRoaXMuU2l6ZSA9PT0gMClcclxuICAgICAgcmV0dXJuIG51bGw7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuX3F1ZXVlWzFdO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBSZXR1cm5zIDx0dD50cnVlPC90dD4gaWYgX3F1ZXVlIGNvbnRhaW5zIG5vIGVsZW1lbnRzLlxyXG4gIC8vLyA8cD5cclxuICAvLy9cclxuICAvLy8gVGhpcyBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIDx0dD5TaXplKCkgPT0gMDwvdHQ+LlxyXG4gIC8vL1xyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxyZXR1cm5zPiA8dHQ+dHJ1ZTwvdHQ+IGlmIF9xdWV1ZSBjb250YWlucyBubyBlbGVtZW50cy5cclxuICAvLy8gPC9yZXR1cm5zPlxyXG4gIGlzRW1wdHkoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5TaXplID09PSAwO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBSZW1vdmVzIGFsbCBlbGVtZW50cyBmcm9tIHRoZSBwcmlvcml0eSBfcXVldWUuIFRoZSBfcXVldWUgd2lsbCBiZSBlbXB0eSBhZnRlciB0aGlzIGNhbGwgcmV0dXJucy48L3N1bW1hcnk+XHJcbiAgY2xlYXIoKTogdm9pZCB7XHJcbiAgICAvLyBOdWxsIG91dCBlbGVtZW50IHJlZmVyZW5jZXMgdG8gcHJldmVudCBtZW1vcnkgbGVha1xyXG4gICAgZm9yIChsZXQgaTogbnVtYmVyID0gMTsgaSA8PSB0aGlzLlNpemU7IGkrKylcclxuICAgICAgdGhpcy5fcXVldWVbaV0gPSBudWxsO1xyXG5cclxuICAgIHRoaXMuU2l6ZSA9IDA7XHJcbiAgfVxyXG5cclxuICBwb2xsKCk6IGFueSB7XHJcbiAgICBpZiAodGhpcy5TaXplID09PSAwKVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuXHJcbiAgICBsZXQgcmVzdWx0OiBhbnkgPSB0aGlzLl9xdWV1ZVsxXTtcclxuICAgIHRoaXMuX3F1ZXVlWzFdID0gdGhpcy5fcXVldWVbdGhpcy5TaXplXTtcclxuXHJcbiAgICB0aGlzLl9xdWV1ZVt0aGlzLlNpemUtLV0gPSBudWxsOyAvLyBEcm9wIGV4dHJhIHJlZiB0byBwcmV2ZW50IG1lbW9yeSBsZWFrXHJcbiAgICBpZiAodGhpcy5TaXplID4gMSlcclxuICAgICAgdGhpcy5maXhEb3duKDEpO1xyXG5cclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+IEVzdGFibGlzaGVzIHRoZSBoZWFwIGludmFyaWFudCAoZGVzY3JpYmVkIGFib3ZlKSBhc3N1bWluZyB0aGUgaGVhcCBzYXRpc2ZpZXMgdGhlIGludmFyaWFudCBleGNlcHRcclxuICAvLy8gcG9zc2libHkgZm9yIHRoZSBsZWFmLW5vZGUgaW5kZXhlZCBieSBrICh3aGljaCBtYXkgaGF2ZSBhIG5leHRFeGVjdXRpb25UaW1lIGxlc3MgdGhhbiBpdHMgcGFyZW50J3MpLlxyXG4gIC8vL1xyXG4gIC8vLyBUaGlzIG1ldGhvZCBmdW5jdGlvbnMgYnkgXCJwcm9tb3RpbmdcIiBfcXVldWVba10gdXAgdGhlIGhpZXJhcmNoeSAoYnkgc3dhcHBpbmcgaXQgd2l0aCBpdHMgcGFyZW50KVxyXG4gIC8vLyByZXBlYXRlZGx5IHVudGlsIF9xdWV1ZVtrXSBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gaXRzIHBhcmVudC5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIHByaXZhdGUgZml4VXAoazogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB3aGlsZSAoayA+IDEpIHtcclxuICAgICAgbGV0IGo6IG51bWJlciA9IGsgPj4gMTtcclxuXHJcbiAgICAgIGlmICgoPElDb21wYXJhYmxlPnRoaXMuX3F1ZXVlW2pdKS5Db21wYXJlVG8oPElDb21wYXJhYmxlPnRoaXMuX3F1ZXVlW2tdKSA8PSAwKVxyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgbGV0IHRtcDogYW55ID0gdGhpcy5fcXVldWVbal07XHJcbiAgICAgIHRoaXMuX3F1ZXVlW2pdID0gdGhpcy5fcXVldWVba107XHJcbiAgICAgIHRoaXMuX3F1ZXVlW2tdID0gdG1wO1xyXG4gICAgICBrID0gajtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gRXN0YWJsaXNoZXMgdGhlIGhlYXAgaW52YXJpYW50IChkZXNjcmliZWQgYWJvdmUpIGluIHRoZSBzdWJ0cmVlIHJvb3RlZCBhdCBrLCB3aGljaCBpcyBhc3N1bWVkIHRvIHNhdGlzZnlcclxuICAvLy8gdGhlIGhlYXAgaW52YXJpYW50IGV4Y2VwdCBwb3NzaWJseSBmb3Igbm9kZSBrIGl0c2VsZiAod2hpY2ggbWF5IGJlIGdyZWF0ZXIgdGhhbiBpdHMgY2hpbGRyZW4pLlxyXG4gIC8vL1xyXG4gIC8vLyBUaGlzIG1ldGhvZCBmdW5jdGlvbnMgYnkgXCJkZW1vdGluZ1wiIF9xdWV1ZVtrXSBkb3duIHRoZSBoaWVyYXJjaHkgKGJ5IHN3YXBwaW5nIGl0IHdpdGggaXRzIHNtYWxsZXIgY2hpbGQpXHJcbiAgLy8vIHJlcGVhdGVkbHkgdW50aWwgX3F1ZXVlW2tdIGlzIGxlc3MgdGhhbiBvciBlcXVhbCB0byBpdHMgY2hpbGRyZW4uXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBwcml2YXRlIGZpeERvd24oazogbnVtYmVyKTogdm9pZCB7XHJcbiAgICBsZXQgajogbnVtYmVyO1xyXG4gICAgd2hpbGUgKChqID0gayA8PCAxKSA8PSB0aGlzLlNpemUgJiYgaiA+IDApIHtcclxuICAgICAgaWYgKGogPCB0aGlzLlNpemUgJiYgKDxJQ29tcGFyYWJsZT50aGlzLl9xdWV1ZVtqXSkuQ29tcGFyZVRvKDxJQ29tcGFyYWJsZT50aGlzLl9xdWV1ZVtqICsgMV0pID4gMClcclxuICAgICAgICBqKys7XHJcblxyXG4gICAgICBpZiAoKDxJQ29tcGFyYWJsZT50aGlzLl9xdWV1ZVtrXSkuQ29tcGFyZVRvKDxJQ29tcGFyYWJsZT50aGlzLl9xdWV1ZVtqXSkgPD0gMClcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGxldCB0bXA6IGFueSA9IHRoaXMuX3F1ZXVlW2pdO1xyXG4gICAgICB0aGlzLl9xdWV1ZVtqXSA9IHRoaXMuX3F1ZXVlW2tdO1xyXG4gICAgICB0aGlzLl9xdWV1ZVtrXSA9IHRtcDtcclxuICAgICAgayA9IGo7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -149,4 +149,4 @@ export class MirrorPrmMap extends PrmMap {
149
149
  }
150
150
  }
151
151
  }
152
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJtTWFwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZW5naW5lL3NyYy91dGlsL1BybU1hcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbkQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFLcEQsTUFBTSxPQUFPLE1BQU07SUFDakIsTUFBTSxHQUF1QixJQUFJLENBQUM7SUFPeEIsUUFBUSxDQUFDLENBQVM7UUFDMUIsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFDNUIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQzs7WUFFL0IsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUlELFFBQVEsQ0FBQyxDQUFTLEVBQUUsQ0FBUztRQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUlELE1BQU0sQ0FBQyxDQUFTO1FBQ2QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUlEO1FBQ0ksSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBVSxDQUFDO0lBQzNDLENBQUM7Q0FDRjtBQUtELE1BQU0sT0FBTyxZQUF3QyxTQUFRLE1BQWM7SUFHL0QsT0FBTyxHQUFpQixJQUFJLENBQUM7SUFHNUIsVUFBVSxHQUFXLElBQUksQ0FBQztJQUU3QixJ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QyxDQUFDO29CQUN6QixNQUFNO1lBQ1YsQ0FBQztZQUdELFNBQVMsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1lBQ2xDLE9BQU8sR0FBRyxTQUFTLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbkMsQ0FBQztJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpY3Rpb25hcnksIExpc3QsIFN0cmluZ0J1aWxkZXIgfSBmcm9tICdAbWFnaWMteHBhL21zY29yZWxpYic7XHJcbmltcG9ydCB7IExvZ2dlciwgWE1MQ29uc3RhbnRzLCBYbWxQYXJzZXIgfSBmcm9tICdAbWFnaWMteHBhL3V0aWxzJztcclxuaW1wb3J0IHsgQ29uc3RJbnRlcmZhY2UgfSBmcm9tICcuLi9Db25zdEludGVyZmFjZSc7XHJcbmltcG9ydCB7IElNaXJyb3JYTUwgfSBmcm9tICcuL0lNaXJyb3JYTUwnO1xyXG5pbXBvcnQge1BhcmFtUGFyc2VSZXN1bHR9IGZyb20gXCIuL1BhcmFtUGFyc2VSZXN1bHRcIjtcclxuXHJcblxyXG4vLy8gPHN1bW1hcnk+IFRoaXMgY2xhc3MgbWFuYWdlcyBhIGRpY3Rpb25hcnkgb2YgdmFyaWFibGVzLiB0aGVuIG5hbWUgb2YgdGhlIHZhcmlhYmxlIGlzIHRoZSBrZXlcclxuLy8vIDwvc3VtbWFyeT5cclxuZXhwb3J0IGNsYXNzIFBybU1hcDxUVmFsdWUgZXh0ZW5kcyBJTWlycm9yWE1MPntcclxuICB2YWx1ZXM6IERpY3Rpb25hcnk8VFZhbHVlPiA9IG51bGw7XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gZ2V0IHRoZSB2YWx1ZVxyXG4gIC8vL1xyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwic1wiPjwvcGFyYW0+XHJcbiAgLy8vIDxyZXR1cm5zPjwvcmV0dXJucz5cclxuICBwcm90ZWN0ZWQgZ2V0dmFsdWUoczogc3RyaW5nKTogVFZhbHVlIHtcclxuICAgIGlmICh0aGlzLnZhbHVlcy5Db250YWluc0tleShzKSlcclxuICAgICAgcmV0dXJuIHRoaXMudmFsdWVzLmdldF9JdGVtKHMpO1xyXG4gICAgZWxzZVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gc2V0XHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBzZXRWYWx1ZShzOiBzdHJpbmcsIHY6IFRWYWx1ZSk6IHZvaWQge1xyXG4gICAgdGhpcy52YWx1ZXMuc2V0X0l0ZW0ocywgdik7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+IHJlbW92ZSBhbiBlbnRyeVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgcmVtb3ZlKHM6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy52YWx1ZXMuUmVtb3ZlKHMpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBDVE9SXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgICAgdGhpcy52YWx1ZXMgPSBuZXcgRGljdGlvbmFyeTxUVmFsdWU+KCk7XHJcbiAgfVxyXG59XHJcblxyXG4vLy8gPHN1bW1hcnk+IFRoaXMgY2xhc3MgbWFuYWdlcyB0aGUgbWlycm9yaW5nLiBJdCBob2xkcyBhIGxpc3Qgb2YgY2hhbmdlZCB2YWx1ZXMgdGhhdCBuZWVkIHRvIGJlXHJcbi8vLyBtaXJyb3JlZCwgYW5kIG1hbmFnZXMgdGhlIHdyaXRpbmcgb2YgdGhvc2UgdmFsdWVzIHRvIGFuIFhNTCBidWZmZXJcclxuLy8vIDwvc3VtbWFyeT5cclxuZXhwb3J0IGNsYXNzIE1pcnJvclBybU1hcDxUVmFsdWUgZXh0ZW5kcyBJTWlycm9yWE1MPiBleHRlbmRzIFBybU1hcDxUVmFsdWU+IHtcclxuXHJcbiAgLy8gTGlzdCBvZiBjaGFuZ2VkIHZhcmlhYmxlc1xyXG4gIHByb3RlY3RlZCBjaGFuZ2VzOiBMaXN0PHN0cmluZz4gPSBudWxsO1xyXG5cclxuICAvLyBUeXBlIG9mIHZhcmlhYmxlcyBpbiB0aGUgdGFibGUgLSB1c2UgYXMgYW4gaWQgaW4gdGhlIFhNTCBidWZmZXJcclxuICBwcm90ZWN0ZWQgIG1pcnJvcmVkSUQ6IHN0cmluZyA9IG51bGw7XHJcblxyXG4gIHByaXZhdGUgdHlwZSA7XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gQ1RPUlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgY29uc3RydWN0b3IodHlwZTogbmV3ICgpID0+IFRWYWx1ZSkge1xyXG4gICAgc3VwZXIoKTtcclxuICAgIHRoaXMudHlwZSA9IHR5cGU7XHJcbiAgICB0aGlzLmNoYW5nZXMgPSBuZXcgTGlzdDxzdHJpbmc+KCk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIGNyZWF0ZSBuZXcgaW5zdGFuY2Ugb2Ygc3BlY2lmaWVkIHR5cGVcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIHByaXZhdGUgbmV3KCk6IFRWYWx1ZSB7XHJcbiAgICByZXR1cm4gbmV3IHRoaXMudHlwZSgpO1xyXG4gIH1cclxuXHJcblxyXG4gIHNldFZhbHVlKHM6IHN0cmluZywgdjogVFZhbHVlLCBhZGRUb0NoYW5nZXM/OiBib29sZWFuKTogdm9pZCB7XHJcbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMylcclxuICAgICAgdGhpcy5zZXRWYWx1ZV8wKHMsIHYsIGFkZFRvQ2hhbmdlcyk7XHJcbiAgICBlbHNlXHJcbiAgICAgIHRoaXMuc2V0VmFsdWVfMShzLCB2KTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gc2V0XHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBwcml2YXRlIHNldFZhbHVlXzAoczogc3RyaW5nLCB2OiBUVmFsdWUsIGFkZFRvQ2hhbmdlczogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgaWYgKGFkZFRvQ2hhbmdlcyAmJiAhdGhpcy5jaGFuZ2VzLkNvbnRhaW5zKHMpKVxyXG4gICAgICB0aGlzLmNoYW5nZXMucHVzaChzKTtcclxuICAgIHN1cGVyLnNldFZhbHVlKHMsIHYpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBzZXRcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIHByaXZhdGUgc2V0VmFsdWVfMShzOiBzdHJpbmcsIHY6IFRWYWx1ZSk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmNoYW5nZXMuQ29udGFpbnMocykpXHJcbiAgICAgIHRoaXMuY2hhbmdlcy5wdXNoKHMpO1xyXG4gICAgc3VwZXIuc2V0VmFsdWUocywgdik7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+IHJlbW92ZVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgcmVtb3ZlKHM6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmNoYW5nZXMuQ29udGFpbnMocykpIHtcclxuICAgICAgdGhpcy5jaGFuZ2VzLnB1c2gocyk7XHJcbiAgICB9XHJcbiAgICBzdXBlci5yZW1vdmUocyk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIHdyaXRlIHRvIGFuIFhNTCBidWZmOiB3cml0ZSB0aGUgSUQgYW5kIGNhbGwgZWFjaCB2YXJpYWJsZSB0byB3cml0ZSBpdHNlbGZcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIG1pcnJvckFsbFRvWE1MKCk6IHN0cmluZyB7XHJcbiAgICBsZXQgeG1sOiBTdHJpbmdCdWlsZGVyID0gbmV3IFN0cmluZ0J1aWxkZXIoKTtcclxuXHJcblxyXG4gICAgaWYgKHRoaXMudmFsdWVzICE9IG51bGwpIHtcclxuXHJcbiAgICAgIC8vIHdyaXRlIHRoZSBpZFxyXG4gICAgICB4bWwuQXBwZW5kKFwiPFwiICsgdGhpcy5taXJyb3JlZElEICsgXCI+XCIpO1xyXG5cclxuICAgICAgLy8gbG9vcCBvbiBhbGwgdmFyaWFibGVzXHJcbiAgICAgIGZvciAobGV0IGtleSBvZiB0aGlzLnZhbHVlcy5LZXlzKSB7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLkNoZWNrSWZTeXN0ZW1SZXNlcnZlZFBhcmFtKGtleSkpXHJcbiAgICAgICAgICBjb250aW51ZTtcclxuICAgICAgICB4bWwuQXBwZW5kKFwiPFwiICsgQ29uc3RJbnRlcmZhY2UuTUdfVEFHX1BBUkFNICsgXCIgXCIgK1xyXG4gICAgICAgICAgWE1MQ29uc3RhbnRzLk1HX0FUVFJfTkFNRSArIFwiPVxcXCJcIiArIFhtbFBhcnNlci5lc2NhcGUoa2V5KSArIFwiXFxcIiBcIik7XHJcblxyXG4gICAgICAgIC8vIGNhbGwgdGhlIHZhcmlhYmxlIHRvIHdyaXRlIGl0J3Mgb3duIGRhdGFcclxuICAgICAgICAgIHhtbC5BcHBlbmQodGhpcy52YWx1ZXMuZ2V0X0l0ZW0oa2V5KS5taXJyb3JUb1hNTCgpKTtcclxuXHJcbiAgICAgICAgeG1sLkFwcGVuZChYTUxDb25zdGFudHMuVEFHX1RFUk0pO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB4bWwuQXBwZW5kKFwiPC9cIiArIHRoaXMubWlycm9yZWRJRCArIFwiPlwiKTtcclxuICAgIH1cclxuICAgIHJldHVybiB4bWwuVG9TdHJpbmcoKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gSWYgc3lzdGVtIHJlc2VydmVkIHBhcmFtLCB0aGVuIGRvIG5vdCBzZXJpYWxpemUgZm9yIHJlLWluaXRpYWxpemUgc2Vzc2lvblxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgQ2hlY2tJZlN5c3RlbVJlc2VydmVkUGFyYW0oa2V5OiBhbnkpOiBib29sZWFuXHJcbiAge1xyXG4gICAgaWYgKGtleSA9PSBcIlVURjhUUkFOU1wiIHx8IGtleSA9PT0gXCJSRU1PVEVfSE9TVFwiIHx8IGtleSA9PT0gXCJSRU1PVEVfQUREUlwiIHx8XHJcbiAgICAgIGtleSA9PT0gXCJDVFhcIiB8fCBrZXkgPT09IFwiTUdBUkcwXCIgfHwga2V5ID09PSBcIkRBVEFcIiB8fCBrZXkgPT09IFwiTUdDVVJSRU5UUkVRVUVTVElEXCIgfHxcclxuICAgICAga2V5ID09PSBcIkhUVFBfTUdYUEFSSUFHTE9CQUxVTklRVUVTRVNTSU9OSURcIiB8fCBrZXkgPT09IFwiTUdfUE9TVF9CT0RZXCIpXHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgZWxzZVxyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIHdyaXRlIHRvIGFuIFhNTCBidWZmOiB3cml0ZSB0aGUgSUQgYW5kIGNhbGwgZWFjaCBjaGFuZ2VkIHZhcmlhYmxlIHRvIHdyaXRlIGl0c2VsZlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgbWlycm9yVG9YTUwoKTogc3RyaW5nIHtcclxuICAgIGxldCB4bWw6IFN0cmluZ0J1aWxkZXIgPSBuZXcgU3RyaW5nQnVpbGRlcigpO1xyXG5cclxuICAgIGlmICh0aGlzLmNoYW5nZXMubGVuZ3RoID4gMCkge1xyXG5cclxuICAgICAgLy8gd3JpdGUgdGhlIGlkXHJcbiAgICAgIHhtbC5BcHBlbmQoXCI8XCIgKyB0aGlzLm1pcnJvcmVkSUQgKyBcIj5cIik7XHJcblxyXG4gICAgICAvLyBsb29wIG9uIGFsbCBjaGFuZ2VkIHZhcmlhYmxlc1xyXG5cclxuXHJcbiAgICAgIHRoaXMuY2hhbmdlcy5mb3JFYWNoKGNoYW5nZSA9PiB7XHJcblxyXG4gICAgICAgIHhtbC5BcHBlbmQoXCI8XCIgKyBDb25zdEludGVyZmFjZS5NR19UQUdfUEFSQU0gKyBcIiBcIiArXHJcbiAgICAgICAgICBYTUxDb25zdGFudHMuTUdfQVRUUl9OQU1FICsgXCI9XFxcIlwiICsgWG1sUGFyc2VyLmVzY2FwZShjaGFuZ2UpICsgXCJcXFwiIFwiKTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMudmFsdWVzLkNvbnRhaW5zS2V5KGNoYW5nZSkpXHJcbiAgICAgICAgLy8gY2FsbCB0aGUgdmFyaWFibGUgdG8gd3JpdGUgaXQncyBvd24gZGF0YVxyXG4gICAgICAgICAgeG1sLkFwcGVuZCh0aGlzLnZhbHVlcy5nZXRfSXRlbShjaGFuZ2UpLm1pcnJvclRvWE1MKCkpO1xyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgIHhtbC5BcHBlbmQoXCJyZW1vdmVkPVxcXCJZXFxcIlwiKTtcclxuICAgICAgICB4bWwuQXBwZW5kKFwiPlwiKTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgICB4bWwuQXBwZW5kKFwiPC9cIiArIHRoaXMubWlycm9yZWRJRCArIFwiPlwiKTtcclxuICAgIH1cclxuICAgIHRoaXMuY2hhbmdlcy5DbGVhcigpO1xyXG4gICAgcmV0dXJuIHhtbC5Ub1N0cmluZygpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBwYXJzZSB0aGUgWE1MIGFuZCBmaWxsIHRoZSBkYXRhXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBmaWxsRGF0YShwYXJzZXI6IFhtbFBhcnNlcik6IHZvaWQge1xyXG4gICAgd2hpbGUgKHRoaXMubWlycm9yRnJvbVhNTChwYXJzZXIuZ2V0TmV4dFRhZygpLCBwYXJzZXIpKSB7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBSZXN0b3JlUGFyYW1zICh4bWw6IHN0cmluZyApXHJcbiAge1xyXG4gICAgbGV0IHBhcnNlcjogWG1sUGFyc2VyID0gbmV3IFhtbFBhcnNlcih4bWwpO1xyXG4gICAgd2hpbGUgKHRoaXMubWlycm9yRnJvbVhNTChwYXJzZXIuZ2V0TmV4dFRhZygpLCBwYXJzZXIpKSB7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+IGZpbGwgZnJvbSBYTUxcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImZvdW5kVGFnTmFtZVwiPjwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwieG1sUGFyc2VyXCI+PC9wYXJhbT5cclxuICAvLy8gPHJldHVybnM+PC9yZXR1cm5zPlxyXG4gIG1pcnJvckZyb21YTUwoZm91bmRUYWdOYW1lOiBzdHJpbmcsIHhtbFBhcnNlcjogWG1sUGFyc2VyKTogYm9vbGVhbiB7XHJcbiAgICBpZiAoZm91bmRUYWdOYW1lID09PSBudWxsKVxyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcblxyXG4gICAgaWYgKGZvdW5kVGFnTmFtZSA9PT0gdGhpcy5taXJyb3JlZElEKSB7XHJcbiAgICAgIHhtbFBhcnNlci5zZXRDdXJySW5kZXgyRW5kT2ZUYWcoKTtcclxuICAgICAgdGhpcy5maWxsRGF0YUVudHJ5KHhtbFBhcnNlcik7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAoZm91bmRUYWdOYW1lID09PSAoXCIvXCIgKyB0aGlzLm1pcnJvcmVkSUQpKSB7XHJcbiAgICAgIC8vIEFmdGVyIHVwZGF0aW5nIGZyb20gdGhlIHNlcnZlciwgY2xlYXIgdGhlIGNoYW5nZXMgbGlzdCBzbyB0aGV5IHdvbid0IGJlIHNlbnQgYWdhaW5cclxuICAgICAgdGhpcy5jaGFuZ2VzLkNsZWFyKCk7XHJcbiAgICAgIHhtbFBhcnNlci5zZXRDdXJySW5kZXgyRW5kT2ZUYWcoKTtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIExvZ2dlci5JbnN0YW5jZS5Xcml0ZUV4Y2VwdGlvblRvTG9nV2l0aE1zZyhcIlRoZXJlIGlzIG5vIHN1Y2ggdGFnIGluIE1pcnJvclBybU1hcC5taXJyb3JGcm9tWE1MKCk6IFwiICsgZm91bmRUYWdOYW1lKTtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gcGFyc2UgYW5kIGZpbGwgdGhlIHBhcmFtcywgdW50aWwgdGhlIHNlY3Rpb24gZW5kc1xyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgZmlsbERhdGFFbnRyeSh4bWxQYXJzZXI6IFhtbFBhcnNlcik6IHZvaWQge1xyXG4gICAgbGV0IG5leHRUYWc6IHN0cmluZyA9IHhtbFBhcnNlci5nZXROZXh0VGFnKCk7XHJcblxyXG4gICAgd2hpbGUgKG5leHRUYWcgPT09IENvbnN0SW50ZXJmYWNlLk1HX1RBR19QQVJBTSkge1xyXG4gICAgICBsZXQgbmFtZVN0YXJ0OiBudW1iZXIgPSB4bWxQYXJzZXIuZ2V0WE1MZGF0YSgpLmluZGV4T2YoWE1MQ29uc3RhbnRzLk1HX0FUVFJfTkFNRSArIFwiPVxcXCJcIiwgeG1sUGFyc2VyLmdldEN1cnJJbmRleCgpKSArXHJcbiAgICAgICAgWE1MQ29uc3RhbnRzLk1HX0FUVFJfTkFNRS5sZW5ndGggKyAyO1xyXG5cclxuICAgICAgeG1sUGFyc2VyLnNldEN1cnJJbmRleChuYW1lU3RhcnQpO1xyXG4gICAgICBsZXQgbmFtZUVuZDogbnVtYmVyID0geG1sUGFyc2VyLmdldFhNTGRhdGEoKS5pbmRleE9mKFwiXFxcIlwiLCBuYW1lU3RhcnQpO1xyXG5cclxuICAgICAgLy8gZ2V0IHRoZSB2YXJpYWJsZXMgZGF0YVxyXG4gICAgICBsZXQgbmFtZTogc3RyaW5nID0geG1sUGFyc2VyLmdldFhNTHN1YnN0cmluZyhuYW1lRW5kKS50cmltKCk7XHJcbiAgICAgIHhtbFBhcnNlci5zZXRDdXJySW5kZXgobmFtZUVuZCk7XHJcblxyXG4gICAgICAvLyBjcmVhdGUgYW5kIGluaXQgdGhlIG5ldyB2YWx1ZVxyXG4gICAgICBsZXQgbmV3VmFsOiBUVmFsdWUgPSB0aGlzLm5ldygpO1xyXG5cclxuICAgICAgc3dpdGNoIChuZXdWYWwuaW5pdChuYW1lLCB4bWxQYXJzZXIpKSB7XHJcbiAgICAgICAgY2FzZSBQYXJhbVBhcnNlUmVzdWx0Lk9LOlxyXG4gICAgICAgICAgdGhpcy52YWx1ZXMuc2V0X0l0ZW0obmFtZSwgbmV3VmFsKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgUGFyYW1QYXJzZVJlc3VsdC5UT1VQUEVSOlxyXG4gICAgICAgICAgdGhpcy52YWx1ZXMuc2V0X0l0ZW0obmFtZS50b1VwcGVyQ2FzZSgpLCBuZXdWYWwpO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSBQYXJhbVBhcnNlUmVzdWx0LkRFTEVURTpcclxuICAgICAgICAgIHRoaXMudmFsdWVzLlJlbW92ZShuYW1lKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyBtb3ZlIHRvIG5leHQgdGFnXHJcbiAgICAgIHhtbFBhcnNlci5zZXRDdXJySW5kZXgyRW5kT2ZUYWcoKTtcclxuICAgICAgbmV4dFRhZyA9IHhtbFBhcnNlci5nZXROZXh0VGFnKCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
152
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJtTWFwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZW5naW5lL3NyYy91dGlsL1BybU1hcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbkQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFLcEQsTUFBTSxPQUFPLE1BQU07SUFDakIsTUFBTSxHQUF1QixJQUFJLENBQUM7SUFPeEIsUUFBUSxDQUFDLENBQVM7UUFDMUIsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFDNUIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQzs7WUFFL0IsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUlELFFBQVEsQ0FBQyxDQUFTLEVBQUUsQ0FBUztRQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUlELE1BQU0sQ0FBQyxDQUFTO1FBQ2QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUlEO1FBQ0ksSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBVSxDQUFDO0lBQzNDLENBQUM7Q0FDRjtBQUtELE1BQU0sT0FBTyxZQUF3QyxTQUFRLE1BQWM7SUFHL0QsT0FBTyxHQUFpQixJQUFJLENBQUM7SUFHNUIsVUFBVSxHQUFXLElBQUksQ0FBQztJQUU3QixJ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bEM7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaWN0aW9uYXJ5LCBMaXN0LCBTdHJpbmdCdWlsZGVyIH0gZnJvbSAnQG1hZ2ljLXhwYS9tc2NvcmVsaWInO1xyXG5pbXBvcnQgeyBMb2dnZXIsIFhNTENvbnN0YW50cywgWG1sUGFyc2VyIH0gZnJvbSAnQG1hZ2ljLXhwYS91dGlscyc7XHJcbmltcG9ydCB7IENvbnN0SW50ZXJmYWNlIH0gZnJvbSAnLi4vQ29uc3RJbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBJTWlycm9yWE1MIH0gZnJvbSAnLi9JTWlycm9yWE1MJztcclxuaW1wb3J0IHtQYXJhbVBhcnNlUmVzdWx0fSBmcm9tIFwiLi9QYXJhbVBhcnNlUmVzdWx0XCI7XHJcblxyXG5cclxuLy8vIDxzdW1tYXJ5PiBUaGlzIGNsYXNzIG1hbmFnZXMgYSBkaWN0aW9uYXJ5IG9mIHZhcmlhYmxlcy4gdGhlbiBuYW1lIG9mIHRoZSB2YXJpYWJsZSBpcyB0aGUga2V5XHJcbi8vLyA8L3N1bW1hcnk+XHJcbmV4cG9ydCBjbGFzcyBQcm1NYXA8VFZhbHVlIGV4dGVuZHMgSU1pcnJvclhNTD57XHJcbiAgdmFsdWVzOiBEaWN0aW9uYXJ5PFRWYWx1ZT4gPSBudWxsO1xyXG5cclxuICAvLy8gPHN1bW1hcnk+IGdldCB0aGUgdmFsdWVcclxuICAvLy9cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInNcIj48L3BhcmFtPlxyXG4gIC8vLyA8cmV0dXJucz48L3JldHVybnM+XHJcbiAgcHJvdGVjdGVkIGdldHZhbHVlKHM6IHN0cmluZyk6IFRWYWx1ZSB7XHJcbiAgICBpZiAodGhpcy52YWx1ZXMuQ29udGFpbnNLZXkocykpXHJcbiAgICAgIHJldHVybiB0aGlzLnZhbHVlcy5nZXRfSXRlbShzKTtcclxuICAgIGVsc2VcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+IHNldFxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgc2V0VmFsdWUoczogc3RyaW5nLCB2OiBUVmFsdWUpOiB2b2lkIHtcclxuICAgIHRoaXMudmFsdWVzLnNldF9JdGVtKHMsIHYpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiByZW1vdmUgYW4gZW50cnlcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIHJlbW92ZShzOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMudmFsdWVzLlJlbW92ZShzKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gQ1RPUlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICAgIHRoaXMudmFsdWVzID0gbmV3IERpY3Rpb25hcnk8VFZhbHVlPigpO1xyXG4gIH1cclxufVxyXG5cclxuLy8vIDxzdW1tYXJ5PiBUaGlzIGNsYXNzIG1hbmFnZXMgdGhlIG1pcnJvcmluZy4gSXQgaG9sZHMgYSBsaXN0IG9mIGNoYW5nZWQgdmFsdWVzIHRoYXQgbmVlZCB0byBiZVxyXG4vLy8gbWlycm9yZWQsIGFuZCBtYW5hZ2VzIHRoZSB3cml0aW5nIG9mIHRob3NlIHZhbHVlcyB0byBhbiBYTUwgYnVmZmVyXHJcbi8vLyA8L3N1bW1hcnk+XHJcbmV4cG9ydCBjbGFzcyBNaXJyb3JQcm1NYXA8VFZhbHVlIGV4dGVuZHMgSU1pcnJvclhNTD4gZXh0ZW5kcyBQcm1NYXA8VFZhbHVlPiB7XHJcblxyXG4gIC8vIExpc3Qgb2YgY2hhbmdlZCB2YXJpYWJsZXNcclxuICBwcm90ZWN0ZWQgY2hhbmdlczogTGlzdDxzdHJpbmc+ID0gbnVsbDtcclxuXHJcbiAgLy8gVHlwZSBvZiB2YXJpYWJsZXMgaW4gdGhlIHRhYmxlIC0gdXNlIGFzIGFuIGlkIGluIHRoZSBYTUwgYnVmZmVyXHJcbiAgcHJvdGVjdGVkICBtaXJyb3JlZElEOiBzdHJpbmcgPSBudWxsO1xyXG5cclxuICBwcml2YXRlIHR5cGUgO1xyXG5cclxuICAvLy8gPHN1bW1hcnk+IENUT1JcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGNvbnN0cnVjdG9yKHR5cGU6IG5ldyAoKSA9PiBUVmFsdWUpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xyXG4gICAgdGhpcy5jaGFuZ2VzID0gbmV3IExpc3Q8c3RyaW5nPigpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBjcmVhdGUgbmV3IGluc3RhbmNlIG9mIHNwZWNpZmllZCB0eXBlXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBwcml2YXRlIG5ldygpOiBUVmFsdWUge1xyXG4gICAgcmV0dXJuIG5ldyB0aGlzLnR5cGUoKTtcclxuICB9XHJcblxyXG5cclxuICBzZXRWYWx1ZShzOiBzdHJpbmcsIHY6IFRWYWx1ZSwgYWRkVG9DaGFuZ2VzPzogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDMpXHJcbiAgICAgIHRoaXMuc2V0VmFsdWVfMChzLCB2LCBhZGRUb0NoYW5nZXMpO1xyXG4gICAgZWxzZVxyXG4gICAgICB0aGlzLnNldFZhbHVlXzEocywgdik7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+IHNldFxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgcHJpdmF0ZSBzZXRWYWx1ZV8wKHM6IHN0cmluZywgdjogVFZhbHVlLCBhZGRUb0NoYW5nZXM6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIGlmIChhZGRUb0NoYW5nZXMgJiYgIXRoaXMuY2hhbmdlcy5Db250YWlucyhzKSlcclxuICAgICAgdGhpcy5jaGFuZ2VzLnB1c2gocyk7XHJcbiAgICBzdXBlci5zZXRWYWx1ZShzLCB2KTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gc2V0XHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBwcml2YXRlIHNldFZhbHVlXzEoczogc3RyaW5nLCB2OiBUVmFsdWUpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5jaGFuZ2VzLkNvbnRhaW5zKHMpKVxyXG4gICAgICB0aGlzLmNoYW5nZXMucHVzaChzKTtcclxuICAgIHN1cGVyLnNldFZhbHVlKHMsIHYpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiByZW1vdmVcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIHJlbW92ZShzOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5jaGFuZ2VzLkNvbnRhaW5zKHMpKSB7XHJcbiAgICAgIHRoaXMuY2hhbmdlcy5wdXNoKHMpO1xyXG4gICAgfVxyXG4gICAgc3VwZXIucmVtb3ZlKHMpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyB3cml0ZSB0byBhbiBYTUwgYnVmZjogd3JpdGUgdGhlIElEIGFuZCBjYWxsIGVhY2ggdmFyaWFibGUgdG8gd3JpdGUgaXRzZWxmXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBtaXJyb3JBbGxUb1hNTCgpOiBzdHJpbmcge1xyXG4gICAgbGV0IHhtbDogU3RyaW5nQnVpbGRlciA9IG5ldyBTdHJpbmdCdWlsZGVyKCk7XHJcblxyXG5cclxuICAgIGlmICh0aGlzLnZhbHVlcyAhPSBudWxsKSB7XHJcblxyXG4gICAgICAvLyB3cml0ZSB0aGUgaWRcclxuICAgICAgeG1sLkFwcGVuZChcIjxcIiArIHRoaXMubWlycm9yZWRJRCArIFwiPlwiKTtcclxuXHJcbiAgICAgIC8vIGxvb3Agb24gYWxsIHZhcmlhYmxlc1xyXG4gICAgICBmb3IgKGxldCBrZXkgb2YgdGhpcy52YWx1ZXMuS2V5cykge1xyXG5cclxuICAgICAgICBpZiAodGhpcy5DaGVja0lmU3lzdGVtUmVzZXJ2ZWRQYXJhbShrZXkpKVxyXG4gICAgICAgICAgY29udGludWU7XHJcbiAgICAgICAgeG1sLkFwcGVuZChcIjxcIiArIENvbnN0SW50ZXJmYWNlLk1HX1RBR19QQVJBTSArIFwiIFwiICtcclxuICAgICAgICAgIFhNTENvbnN0YW50cy5NR19BVFRSX05BTUUgKyBcIj1cXFwiXCIgKyBYbWxQYXJzZXIuZXNjYXBlKGtleSkgKyBcIlxcXCIgXCIpO1xyXG5cclxuICAgICAgICAvLyBjYWxsIHRoZSB2YXJpYWJsZSB0byB3cml0ZSBpdCdzIG93biBkYXRhXHJcbiAgICAgICAgICB4bWwuQXBwZW5kKHRoaXMudmFsdWVzLmdldF9JdGVtKGtleSkubWlycm9yVG9YTUwoKSk7XHJcblxyXG4gICAgICAgIHhtbC5BcHBlbmQoWE1MQ29uc3RhbnRzLlRBR19URVJNKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgeG1sLkFwcGVuZChcIjwvXCIgKyB0aGlzLm1pcnJvcmVkSUQgKyBcIj5cIik7XHJcbiAgICB9XHJcbiAgICByZXR1cm4geG1sLlRvU3RyaW5nKCk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIElmIHN5c3RlbSByZXNlcnZlZCBwYXJhbSwgdGhlbiBkbyBub3Qgc2VyaWFsaXplIGZvciByZS1pbml0aWFsaXplIHNlc3Npb25cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIENoZWNrSWZTeXN0ZW1SZXNlcnZlZFBhcmFtKGtleTogYW55KTogYm9vbGVhblxyXG4gIHtcclxuICAgIGlmIChrZXkgPT0gXCJVVEY4VFJBTlNcIiB8fCBrZXkgPT09IFwiUkVNT1RFX0hPU1RcIiB8fCBrZXkgPT09IFwiUkVNT1RFX0FERFJcIiB8fFxyXG4gICAgICBrZXkgPT09IFwiQ1RYXCIgfHwga2V5ID09PSBcIk1HQVJHMFwiIHx8IGtleSA9PT0gXCJEQVRBXCIgfHwga2V5ID09PSBcIk1HQ1VSUkVOVFJFUVVFU1RJRFwiIHx8XHJcbiAgICAgIGtleSA9PT0gXCJIVFRQX01HWFBBUklBR0xPQkFMVU5JUVVFU0VTU0lPTklEXCIgfHwga2V5ID09PSBcIk1HX1BPU1RfQk9EWVwiKVxyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIGVsc2VcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyB3cml0ZSB0byBhbiBYTUwgYnVmZjogd3JpdGUgdGhlIElEIGFuZCBjYWxsIGVhY2ggY2hhbmdlZCB2YXJpYWJsZSB0byB3cml0ZSBpdHNlbGZcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIG1pcnJvclRvWE1MKCk6IHN0cmluZyB7XHJcbiAgICBsZXQgeG1sOiBTdHJpbmdCdWlsZGVyID0gbmV3IFN0cmluZ0J1aWxkZXIoKTtcclxuXHJcbiAgICBpZiAodGhpcy5jaGFuZ2VzLmxlbmd0aCA+IDApIHtcclxuXHJcbiAgICAgIC8vIHdyaXRlIHRoZSBpZFxyXG4gICAgICB4bWwuQXBwZW5kKFwiPFwiICsgdGhpcy5taXJyb3JlZElEICsgXCI+XCIpO1xyXG5cclxuICAgICAgLy8gbG9vcCBvbiBhbGwgY2hhbmdlZCB2YXJpYWJsZXNcclxuXHJcblxyXG4gICAgICB0aGlzLmNoYW5nZXMuZm9yRWFjaChjaGFuZ2UgPT4ge1xyXG5cclxuICAgICAgICB4bWwuQXBwZW5kKFwiPFwiICsgQ29uc3RJbnRlcmZhY2UuTUdfVEFHX1BBUkFNICsgXCIgXCIgK1xyXG4gICAgICAgICAgWE1MQ29uc3RhbnRzLk1HX0FUVFJfTkFNRSArIFwiPVxcXCJcIiArIFhtbFBhcnNlci5lc2NhcGUoY2hhbmdlKSArIFwiXFxcIiBcIik7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLnZhbHVlcy5Db250YWluc0tleShjaGFuZ2UpKVxyXG4gICAgICAgIC8vIGNhbGwgdGhlIHZhcmlhYmxlIHRvIHdyaXRlIGl0J3Mgb3duIGRhdGFcclxuICAgICAgICAgIHhtbC5BcHBlbmQodGhpcy52YWx1ZXMuZ2V0X0l0ZW0oY2hhbmdlKS5taXJyb3JUb1hNTCgpKTtcclxuICAgICAgICBlbHNlXHJcbiAgICAgICAgICB4bWwuQXBwZW5kKFwicmVtb3ZlZD1cXFwiWVxcXCJcIik7XHJcbiAgICAgICAgeG1sLkFwcGVuZChcIj5cIik7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgeG1sLkFwcGVuZChcIjwvXCIgKyB0aGlzLm1pcnJvcmVkSUQgKyBcIj5cIik7XHJcbiAgICB9XHJcbiAgICB0aGlzLmNoYW5nZXMuQ2xlYXIoKTtcclxuICAgIHJldHVybiB4bWwuVG9TdHJpbmcoKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gcGFyc2UgdGhlIFhNTCBhbmQgZmlsbCB0aGUgZGF0YVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgZmlsbERhdGEocGFyc2VyOiBYbWxQYXJzZXIpOiB2b2lkIHtcclxuICAgIHdoaWxlICh0aGlzLm1pcnJvckZyb21YTUwocGFyc2VyLmdldE5leHRUYWcoKSwgcGFyc2VyKSkge1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgUmVzdG9yZVBhcmFtcyAoeG1sOiBzdHJpbmcgKVxyXG4gIHtcclxuICAgIGxldCBwYXJzZXI6IFhtbFBhcnNlciA9IG5ldyBYbWxQYXJzZXIoeG1sKTtcclxuICAgIHdoaWxlICh0aGlzLm1pcnJvckZyb21YTUwocGFyc2VyLmdldE5leHRUYWcoKSwgcGFyc2VyKSkge1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBmaWxsIGZyb20gWE1MXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJmb3VuZFRhZ05hbWVcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInhtbFBhcnNlclwiPjwvcGFyYW0+XHJcbiAgLy8vIDxyZXR1cm5zPjwvcmV0dXJucz5cclxuICBtaXJyb3JGcm9tWE1MKGZvdW5kVGFnTmFtZTogc3RyaW5nLCB4bWxQYXJzZXI6IFhtbFBhcnNlcik6IGJvb2xlYW4ge1xyXG4gICAgaWYgKGZvdW5kVGFnTmFtZSA9PT0gbnVsbClcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG5cclxuICAgIGlmIChmb3VuZFRhZ05hbWUgPT09IHRoaXMubWlycm9yZWRJRCkge1xyXG4gICAgICB4bWxQYXJzZXIuc2V0Q3VyckluZGV4MkVuZE9mVGFnKCk7XHJcbiAgICAgIHRoaXMuZmlsbERhdGFFbnRyeSh4bWxQYXJzZXIpO1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIGVsc2UgaWYgKGZvdW5kVGFnTmFtZSA9PT0gKFwiL1wiICsgdGhpcy5taXJyb3JlZElEKSkge1xyXG4gICAgICAvLyBBZnRlciB1cGRhdGluZyBmcm9tIHRoZSBzZXJ2ZXIsIGNsZWFyIHRoZSBjaGFuZ2VzIGxpc3Qgc28gdGhleSB3b24ndCBiZSBzZW50IGFnYWluXHJcbiAgICAgIHRoaXMuY2hhbmdlcy5DbGVhcigpO1xyXG4gICAgICB4bWxQYXJzZXIuc2V0Q3VyckluZGV4MkVuZE9mVGFnKCk7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICBMb2dnZXIuSW5zdGFuY2UuV3JpdGVFeGNlcHRpb25Ub0xvZ1dpdGhNc2coXCJUaGVyZSBpcyBubyBzdWNoIHRhZyBpbiBNaXJyb3JQcm1NYXAubWlycm9yRnJvbVhNTCgpOiBcIiArIGZvdW5kVGFnTmFtZSk7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIHBhcnNlIGFuZCBmaWxsIHRoZSBwYXJhbXMsIHVudGlsIHRoZSBzZWN0aW9uIGVuZHNcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGZpbGxEYXRhRW50cnkoeG1sUGFyc2VyOiBYbWxQYXJzZXIpOiB2b2lkIHtcclxuICAgIGxldCBuZXh0VGFnOiBzdHJpbmcgPSB4bWxQYXJzZXIuZ2V0TmV4dFRhZygpO1xyXG5cclxuICAgIHdoaWxlIChuZXh0VGFnID09PSBDb25zdEludGVyZmFjZS5NR19UQUdfUEFSQU0pIHtcclxuICAgICAgbGV0IG5hbWVTdGFydDogbnVtYmVyID0geG1sUGFyc2VyLmdldFhNTGRhdGEoKS5pbmRleE9mKFhNTENvbnN0YW50cy5NR19BVFRSX05BTUUgKyBcIj1cXFwiXCIsIHhtbFBhcnNlci5nZXRDdXJySW5kZXgoKSkgK1xyXG4gICAgICAgIFhNTENvbnN0YW50cy5NR19BVFRSX05BTUUubGVuZ3RoICsgMjtcclxuXHJcbiAgICAgIHhtbFBhcnNlci5zZXRDdXJySW5kZXgobmFtZVN0YXJ0KTtcclxuICAgICAgbGV0IG5hbWVFbmQ6IG51bWJlciA9IHhtbFBhcnNlci5nZXRYTUxkYXRhKCkuaW5kZXhPZihcIlxcXCJcIiwgbmFtZVN0YXJ0KTtcclxuXHJcbiAgICAgIC8vIGdldCB0aGUgdmFyaWFibGVzIGRhdGFcclxuICAgICAgbGV0IG5hbWU6IHN0cmluZyA9IHhtbFBhcnNlci5nZXRYTUxzdWJzdHJpbmcobmFtZUVuZCkudHJpbSgpO1xyXG4gICAgICB4bWxQYXJzZXIuc2V0Q3VyckluZGV4KG5hbWVFbmQpO1xyXG5cclxuICAgICAgLy8gY3JlYXRlIGFuZCBpbml0IHRoZSBuZXcgdmFsdWVcclxuICAgICAgbGV0IG5ld1ZhbDogVFZhbHVlID0gdGhpcy5uZXcoKTtcclxuXHJcbiAgICAgIHN3aXRjaCAobmV3VmFsLmluaXQobmFtZSwgeG1sUGFyc2VyKSkge1xyXG4gICAgICAgIGNhc2UgUGFyYW1QYXJzZVJlc3VsdC5PSzpcclxuICAgICAgICAgIHRoaXMudmFsdWVzLnNldF9JdGVtKG5hbWUsIG5ld1ZhbCk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlIFBhcmFtUGFyc2VSZXN1bHQuVE9VUFBFUjpcclxuICAgICAgICAgIHRoaXMudmFsdWVzLnNldF9JdGVtKG5hbWUudG9VcHBlckNhc2UoKSwgbmV3VmFsKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgUGFyYW1QYXJzZVJlc3VsdC5ERUxFVEU6XHJcbiAgICAgICAgICB0aGlzLnZhbHVlcy5SZW1vdmUobmFtZSk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG5cclxuICAgICAgLy8gbW92ZSB0byBuZXh0IHRhZ1xyXG4gICAgICB4bWxQYXJzZXIuc2V0Q3VyckluZGV4MkVuZE9mVGFnKCk7XHJcbiAgICAgIG5leHRUYWcgPSB4bWxQYXJzZXIuZ2V0TmV4dFRhZygpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
@@ -86,4 +86,4 @@ export class Scrambler {
86
86
  }
87
87
  }
88
88
  }
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2NyYW1ibGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZW5naW5lL3NyYy91dGlsL1NjcmFtYmxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUVuRSxNQUFNLE9BQU8sU0FBUztJQUNwQixNQUFNLENBQUMsaUJBQWlCLEdBQVksSUFBSSxDQUFDO0lBQ2pDLE1BQU0sQ0FBQyxjQUFjLEdBQVcsQ0FBQyxFQUFFLENBQUM7SUFDcEMsTUFBTSxDQUFDLGNBQWMsR0FBVyxFQUFFLENBQUM7SUFDbkMsTUFBTSxDQUFDLGtCQUFrQixHQUFXLENBQUMsRUFBRSxDQUFDO0lBS2hELE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBYTtRQUMzQixJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQjtZQUN6QixPQUFPLEtBQUssQ0FBQztRQUVmLElBQUksSUFBSSxHQUFXLENBQUMsQ0FBQztRQUNyQixJQUFJLE9BQWUsQ0FBQztRQUNwQixJQUFJLE1BQU0sR0FBVyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQ2xDLElBQUksTUFBTSxHQUFXLFNBQVMsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdEQsSUFBSSxHQUFHLEdBQVcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDO1FBQ3pELElBQUksTUFBTSxHQUFrQixJQUFJLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFHMUQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRWhELEtBQUssSUFBSSxDQUFDLEdBQVcsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLEVB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IkBtYWdpYy14cGEvbXNjb3JlbGliXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgU2NyYW1ibGVyIHtcclxuICBzdGF0aWMgU2NyYW1ibGluZ0VuYWJsZWQ6IGJvb2xlYW4gPSB0cnVlOyAvLyBEaXNhYmxlIHNjcmFtYmxpbmdcclxuICBwcml2YXRlIHN0YXRpYyBYTUxfTUlOX1JBTkRPTTogbnVtYmVyID0gLTQ4O1xyXG4gIHByaXZhdGUgc3RhdGljIFhNTF9NQVhfUkFORE9NOiBudW1iZXIgPSA0NztcclxuICBwcml2YXRlIHN0YXRpYyBYTUxfSUxMRUdBTF9SQU5ET006IG51bWJlciA9IC0yMTtcclxuXHJcbiAgLy8vIDxzdW1tYXJ5PnNjcmFtYmxlIHN0cmluZzwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJpblZhbFwiPnN0cmluZyB0byBzY3JhbWJsZTwvcGFyYW0+XHJcbiAgLy8vIDxyZXR1cm5zPiBzY3JhbWJsZWQgc3RyaW5nPC9yZXR1cm5zPlxyXG4gIHN0YXRpYyBTY3JhbWJsZShpblZhbDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGlmICghdGhpcy5TY3JhbWJsaW5nRW5hYmxlZClcclxuICAgICAgcmV0dXJuIGluVmFsO1xyXG5cclxuICAgIGxldCBjdXJyOiBudW1iZXIgPSAwO1xyXG4gICAgbGV0IGN1cnJDaHI6IHN0cmluZztcclxuICAgIGxldCBsZW5ndGg6IG51bWJlciA9IGluVmFsLmxlbmd0aDtcclxuICAgIGxldCByYW5kb206IG51bWJlciA9IFNjcmFtYmxlci5SYW5kb21TY3JhbWJsZShsZW5ndGgpO1xyXG4gICAgbGV0IGtleTogbnVtYmVyID0gTWF0aC5mbG9vcihNYXRoLnNxcnQobGVuZ3RoKSkgKyByYW5kb207XHJcbiAgICBsZXQgb3V0VmFsOiBTdHJpbmdCdWlsZGVyID0gbmV3IFN0cmluZ0J1aWxkZXIobGVuZ3RoICsgMSk7XHJcblxyXG4gICAgLy8gVGhlIGZpcnN0IGNoYXIgaW4gdGhlIHNjcmFtYmxlZCBzdHJpbmcgaXMgYSByYW5kb20gbW9kaWZpZXIgdG8gdGhlIGRlZmF1bHQga2V5XHJcbiAgICBvdXRWYWwuQXBwZW5kKFN0cmluZy5mcm9tQ2hhckNvZGUocmFuZG9tICsgODEpKTtcclxuXHJcbiAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAwOyBpIDwga2V5OyBpKyspIHtcclxuICAgICAgY3VyciA9IGk7XHJcblxyXG4gICAgICB3aGlsZSAoY3VyciA8IGxlbmd0aCkge1xyXG4gICAgICAgIGN1cnJDaHIgPSBpblZhbFtjdXJyXTtcclxuICAgICAgICBvdXRWYWwuQXBwZW5kKGN1cnJDaHIpO1xyXG4gICAgICAgIGN1cnIgKz0ga2V5O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gVGhlIGxhc3QgY2hhciBpbiB0aGUgc2NyYW1ibGVkIHN0cmluZyBpcyBhIHBhZGRpbmcgcmVhZGFibGUgY2hhci5cclxuICAgIG91dFZhbC5BcHBlbmQoJ18nKS8qJ18nKi87XHJcbiAgICByZXR1cm4gb3V0VmFsLlRvU3RyaW5nKCk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+ZGVsZXRlIGZpcnN0IGNoYXJhY3RlciBvZiBzY3JhbWJsZWQgdGV4dCBhbmQgbWFrZXMgbGVmdCB0cmltIHRvIHRoZSBzdHJpbmc8L3N1bW1hcnk+XHJcbiAgcHJpdmF0ZSBzdGF0aWMgTG9jYXRlU2NyYW1ibGUoaW5WYWw6IHN0cmluZywgZnJvbTogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgIGxldCBpOiBudW1iZXIgPSBmcm9tO1xyXG4gICAgd2hpbGUgKGkgPCBpblZhbC5sZW5ndGggJiYgTkNoYXIuSXNXaGl0ZVNwYWNlKGluVmFsLmNoYXJBdChpKSkpIHtcclxuICAgICAgaSA9IGkgKyAxO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGkgKyAxO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBDaG9vc2UgYSByYW5kb20gbW9kaWZpZXIgdG8gdGhlIGtleSBvbiB3aGljaCB3ZSBiYXNlIHRoZSBzY3JhbWJsaW5nIHByb2Nlc3MuXHJcbiAgLy8vIFRoZSByYW5kb20gZmFjdG9yIGNhbm5vdCBiZSBqdXN0IGFueSBudW1iZXIgd2UgY2hvb3NlLiBTaW5jZSB0aGUgc2NyYW1ibGUga2V5XHJcbiAgLy8vIGRldGVybWluZXMgdGhlIGFtb3VudCBvZiAnanVtcHMnIHdlIHBlcmZvcm0gb24gdGhlIHRleHQgdG8gYmUgc2NyYW1ibGVkLCB0aGVuXHJcbiAgLy8vIHRoZSByYW5kb20gbnVtYmVyIHdlIGFkZCB0byBpdCBtdXN0IG5vdCBiZSB0b28gYmlnLCBub3IgdG9vIHNtYWxsLiBBcyBhIHJ1bGUsXHJcbiAgLy8vIHRoZSByYW5kb20gbW9kaWZpZXIgY2FuIHJhbmdlIGZyb20gU1FSVChsZW4pLzInIHRvICctU1FSVChsZW4pLzInLCBhbmQgc2luY2Ugd2VcclxuICAvLy8gcGFzcyB0aGUgc2VsZWN0ZWQgbnVtYmVyIGFzIGEgY2hhcmFjdGVyIHdpdGhpbiB0aGUgWE1MLCB0aGUgd2hvbGUgcmFuZ2UgY2Fubm90XHJcbiAgLy8vIGV4Y2VlZCB0aGUgbnVtYmVyIG9mIHRoZSBwcmludGFibGUgY2hhcmFjdGVycyAoOTUpLCB0aHVzIHRoZSByYW5nZSBpcyBsaW1pdGVkXHJcbiAgLy8vIGJldHdlZW4gKC00OCkgdG8gKDQ3KSwgc28gd2UgY2FwIHRoZSBhbGxvd2VkIHJhbmdlIGFjY29yZGluZyB0byB0aGVzZSBsaW1pdHMuXHJcbiAgLy8vIExhc3QsIHRoZSB2YWx1ZSBYTUxfSUxMRUdBTF9SQU5ET00sIHNpbmNlIGl0IHdpbGwgcmVzdWx0IGluIGFkZGluZyB0aGUgY2hhciAnPCdcclxuICAvLy8gdG8gdGhlIGJlZ2lubmluZyBvZiB0aGUgWE1MLiBUaGlzIHdpbGwgbWFrZSB0aGUgY2xpZW50IGNvbmZ1c2VkLCBzaW5jZSBpdCB3aWxsXHJcbiAgLy8vIHRoaW5rIHRoZSBYTUwgaXMgbm90IHNjcmFtYmxlZC5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImxlblwiPm9mIG91dGdvaW5nIFN0cmluZzwvcGFyYW0+XHJcbiAgLy8vIDxyZXR1cm5zPiByYW5kb20gbW9kaWZpZXI8L3JldHVybnM+XHJcbiAgcHJpdmF0ZSBzdGF0aWMgUmFuZG9tU2NyYW1ibGUobGVuOiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgbGV0IGRlbHRhOiBudW1iZXI7XHJcbiAgICBsZXQgc3FydDogbnVtYmVyID0gTWF0aC5zcXJ0KGxlbik7XHJcbiAgICBsZXQgbG93OiBudW1iZXIgPSBTY3JhbWJsZXIuWE1MX01JTl9SQU5ET007XHJcbiAgICBsZXQgaGlnaDogbnVtYmVyID0gU2NyYW1ibGVyLlhNTF9NQVhfUkFORE9NO1xyXG5cclxuICAgIGlmIChsb3cgPCAoKCgtMSkgKiBzcXJ0KSAvIDIpKVxyXG4gICAgICBsb3cgPSBNYXRoLmZsb29yKCgoLTEpICogc3FydCkgLyAyKTtcclxuXHJcbiAgICBpZiAoaGlnaCA+IChzcXJ0IC8gMikpXHJcbiAgICAgIGhpZ2ggPSBNYXRoLmZsb29yKHNxcnQgLyAyKTtcclxuXHJcbiAgICBkZWx0YSA9IChNYXRoLnJhbmRvbSgpICogKGhpZ2ggLSBsb3cpKSArIGxvdztcclxuICAgIGRlbHRhID0gTWF0aC5mbG9vcihkZWx0YSk7XHJcbiAgICBpZiAoZGVsdGEgPT09IFNjcmFtYmxlci5YTUxfSUxMRUdBTF9SQU5ET00pXHJcbiAgICAgIGRlbHRhKys7XHJcblxyXG4gICAgcmV0dXJuIGRlbHRhO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5Pm1ha2UgdW5zY3JhbWJsaW5nIHRvIHN0cmluZyBpbnNpZGUgdXBwZXIgYW5kIGRvd24gYm9yZGVyPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImluVmFsXCI+c2NyYW1ibGVkIHN0cmluZyB0byBidWlsZCB1bnNjcmFtYmxlZCBzdHJpbmcgZnJvbSBpdDwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwiYmVnaW5PZmZTZXRcIj5vZmZzZXQgd2hlcmUgdGhlIHNjcmFtYmxlZCBzdHJpbmcgYmVnaW5zPC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJlbmRPZmZTZXRcIj5vZmZzZXQgb2YgdGhlIGxhc3QgY2hhciBpbiB0aGUgc2NyYW1ibGVkIHN0cmluZy48L3BhcmFtPlxyXG4gIC8vLyA8cmV0dXJucz4gdW5zY3JhbWJsZWQgc3RyaW5nPC9yZXR1cm5zPlxyXG4gIHN0YXRpYyBVblNjcmFtYmxlKGluVmFsOiBzdHJpbmcsIGJlZ2luT2ZmU2V0OiBudW1iZXIsIGVuZE9mZlNldDogbnVtYmVyKTogc3RyaW5nIHtcclxuICAgIGlmICghU2NyYW1ibGVyLlNjcmFtYmxpbmdFbmFibGVkKSB7XHJcbiAgICAgIGxldCBvdXRWYWw6IHN0cmluZyA9IGluVmFsLnN1YnN0cihiZWdpbk9mZlNldCwgZW5kT2ZmU2V0IC0gYmVnaW5PZmZTZXQgKyAxKTtcclxuICAgICAgcmV0dXJuIG91dFZhbDtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICBsZXQgY3Vyck91dDogbnVtYmVyLCBjdXJySW46IG51bWJlciwgaTogbnVtYmVyO1xyXG4gICAgICBsZXQgbGVuZ3RoOiBudW1iZXI7XHJcbiAgICAgIGxldCBrZXk6IG51bWJlcjtcclxuICAgICAgbGV0IG91dFZhbDogc3RyaW5nW107XHJcbiAgICAgIGxldCBjdXJyQmxrOiBudW1iZXI7XHJcbiAgICAgIGxldCBibG9ja1NpemU6IG51bWJlcjtcclxuICAgICAgbGV0IHJlbWluZGVyOiBudW1iZXI7XHJcbiAgICAgIGxldCBzdGFydDogbnVtYmVyO1xyXG4gICAgICBsZXQgcmFuZG9tQ2hyOiBzdHJpbmc7XHJcblxyXG4gICAgICAvLyBpZ25vcmUgdGhlIGxhc3QgY2hhciBpbiB0aGUgaW5wdXQsIGl0J3MganVzdCBhIHBhZGRpbmcgY2hhcmFjdGVyLlxyXG4gICAgICBlbmRPZmZTZXQgPSBlbmRPZmZTZXQgLSAxO1xyXG5cclxuICAgICAgLy8gc2tpcCBvdmVyIHRoZSBmaXJzdCBjaGFyIGluIHRoZSBpbnB1dCwgaXQgb25seSBjb250YWlucyBhIHJhbmRvbSBtb2RpZmllciB0byB0aGUga2V5LlxyXG4gICAgICAvLyBpdCBpcyBub3QgcGFydCBvZiB0aGUgZGF0YS5cclxuICAgICAgc3RhcnQgPSB0aGlzLkxvY2F0ZVNjcmFtYmxlKGluVmFsLCBiZWdpbk9mZlNldCk7XHJcbiAgICAgIHJhbmRvbUNociA9IGluVmFsW3N0YXJ0IC0gMV07XHJcblxyXG4gICAgICBsZW5ndGggPSBlbmRPZmZTZXQgLSBzdGFydCArIDE7XHJcbiAgICAgIGtleSA9IChyYW5kb21DaHIuY2hhckNvZGVBdCgwKSAtIDgxKSArIE1hdGguZmxvb3IoTWF0aC5zcXJ0KGxlbmd0aCkpO1xyXG4gICAgICBvdXRWYWwgPSBuZXcgQXJyYXkobGVuZ3RoKTtcclxuICAgICAgYmxvY2tTaXplID0gTWF0aC5mbG9vcihsZW5ndGggLyBrZXkpO1xyXG4gICAgICByZW1pbmRlciA9IGxlbmd0aCAlIGtleTtcclxuXHJcbiAgICAgIGZvciAoaSA9IGN1cnJPdXQgPSAwOyBjdXJyT3V0IDwgbGVuZ3RoOyBpKyspIHtcclxuICAgICAgICBjdXJySW4gPSBpO1xyXG4gICAgICAgIGN1cnJCbGsgPSAxO1xyXG5cclxuICAgICAgICB3aGlsZSAoY3VyckluIDwgbGVuZ3RoICYmIGN1cnJPdXQgPCBsZW5ndGgpIHtcclxuICAgICAgICAgIG91dFZhbFtjdXJyT3V0XSA9IGluVmFsW2N1cnJJbiArIHN0YXJ0XTtcclxuICAgICAgICAgIGN1cnJJbiArPSBibG9ja1NpemU7XHJcbiAgICAgICAgICBpZiAoY3VyckJsayA8PSByZW1pbmRlcilcclxuICAgICAgICAgICAgY3VyckluKys7XHJcbiAgICAgICAgICBjdXJyT3V0Kys7XHJcbiAgICAgICAgICBjdXJyQmxrKys7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gTlN0cmluZy5Gcm9tQ2hhcnMob3V0VmFsKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2NyYW1ibGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZW5naW5lL3NyYy91dGlsL1NjcmFtYmxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUVuRSxNQUFNLE9BQU8sU0FBUztJQUNwQixNQUFNLENBQUMsaUJBQWlCLEdBQVksSUFBSSxDQUFDO0lBQ2pDLE1BQU0sQ0FBQyxjQUFjLEdBQVcsQ0FBQyxFQUFFLENBQUM7SUFDcEMsTUFBTSxDQUFDLGNBQWMsR0FBVyxFQUFFLENBQUM7SUFDbkMsTUFBTSxDQUFDLGtCQUFrQixHQUFXLENBQUMsRUFBRSxDQUFDO0lBS2hELE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBYTtRQUMzQixJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQjtZQUN6QixPQUFPLEtBQUssQ0FBQztRQUVmLElBQUksSUFBSSxHQUFXLENBQUMsQ0FBQztRQUNyQixJQUFJLE9BQWUsQ0FBQztRQUNwQixJQUFJLE1BQU0sR0FBVyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQ2xDLElBQUksTUFBTSxHQUFXLFNBQVMsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdEQsSUFBSSxHQUFHLEdBQVcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDO1FBQ3pELElBQUksTUFBTSxHQUFrQixJQUFJLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFHMUQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRWhELEtBQUssSUFBSSxDQUFDLEdBQVcsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLEVB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QyxDQUFDO1lBRTdCLE1BQU0sR0FBRyxTQUFTLEdBQUcsS0FBSyxHQUFHLENBQUMsQ0FBQztZQUMvQixHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1lBQ3JFLE1BQU0sR0FBRyxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUMzQixTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDLENBQUM7WUFDckMsUUFBUSxHQUFHLE1BQU0sR0FBRyxHQUFHLENBQUM7WUFFeEIsS0FBSyxDQUFDLEdBQUcsT0FBTyxHQUFHLENBQUMsRUFBRSxPQUFPLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO2dCQUMzQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO2dCQUNYLE9BQU8sR0FBRyxDQUFDLENBQUM7Z0JBRVosT0FBTyxNQUFNLEdBQUcsTUFBTSxJQUFJLE9BQU8sR0FBRyxNQUFNLEVBQUU7b0JBQzFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxDQUFDO29CQUN4QyxNQUFNLElBQUksU0FBUyxDQUFDO29CQUNwQixJQUFJLE9BQU8sSUFBSSxRQUFRO3dCQUNyQixNQUFNLEVBQUUsQ0FBQztvQkFDWCxPQUFPLEVBQUUsQ0FBQztvQkFDVixPQUFPLEVBQUUsQ0FBQztpQkFDWDthQUNGO1lBRUQsT0FBTyxPQUFPLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ2xDO0lBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TkNoYXIsIE5TdHJpbmcsIFN0cmluZ0J1aWxkZXJ9IGZyb20gXCJAbWFnaWMteHBhL21zY29yZWxpYlwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFNjcmFtYmxlciB7XHJcbiAgc3RhdGljIFNjcmFtYmxpbmdFbmFibGVkOiBib29sZWFuID0gdHJ1ZTsgLy8gRGlzYWJsZSBzY3JhbWJsaW5nXHJcbiAgcHJpdmF0ZSBzdGF0aWMgWE1MX01JTl9SQU5ET006IG51bWJlciA9IC00ODtcclxuICBwcml2YXRlIHN0YXRpYyBYTUxfTUFYX1JBTkRPTTogbnVtYmVyID0gNDc7XHJcbiAgcHJpdmF0ZSBzdGF0aWMgWE1MX0lMTEVHQUxfUkFORE9NOiBudW1iZXIgPSAtMjE7XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5zY3JhbWJsZSBzdHJpbmc8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwiaW5WYWxcIj5zdHJpbmcgdG8gc2NyYW1ibGU8L3BhcmFtPlxyXG4gIC8vLyA8cmV0dXJucz4gc2NyYW1ibGVkIHN0cmluZzwvcmV0dXJucz5cclxuICBzdGF0aWMgU2NyYW1ibGUoaW5WYWw6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBpZiAoIXRoaXMuU2NyYW1ibGluZ0VuYWJsZWQpXHJcbiAgICAgIHJldHVybiBpblZhbDtcclxuXHJcbiAgICBsZXQgY3VycjogbnVtYmVyID0gMDtcclxuICAgIGxldCBjdXJyQ2hyOiBzdHJpbmc7XHJcbiAgICBsZXQgbGVuZ3RoOiBudW1iZXIgPSBpblZhbC5sZW5ndGg7XHJcbiAgICBsZXQgcmFuZG9tOiBudW1iZXIgPSBTY3JhbWJsZXIuUmFuZG9tU2NyYW1ibGUobGVuZ3RoKTtcclxuICAgIGxldCBrZXk6IG51bWJlciA9IE1hdGguZmxvb3IoTWF0aC5zcXJ0KGxlbmd0aCkpICsgcmFuZG9tO1xyXG4gICAgbGV0IG91dFZhbDogU3RyaW5nQnVpbGRlciA9IG5ldyBTdHJpbmdCdWlsZGVyKGxlbmd0aCArIDEpO1xyXG5cclxuICAgIC8vIFRoZSBmaXJzdCBjaGFyIGluIHRoZSBzY3JhbWJsZWQgc3RyaW5nIGlzIGEgcmFuZG9tIG1vZGlmaWVyIHRvIHRoZSBkZWZhdWx0IGtleVxyXG4gICAgb3V0VmFsLkFwcGVuZChTdHJpbmcuZnJvbUNoYXJDb2RlKHJhbmRvbSArIDgxKSk7XHJcblxyXG4gICAgZm9yIChsZXQgaTogbnVtYmVyID0gMDsgaSA8IGtleTsgaSsrKSB7XHJcbiAgICAgIGN1cnIgPSBpO1xyXG5cclxuICAgICAgd2hpbGUgKGN1cnIgPCBsZW5ndGgpIHtcclxuICAgICAgICBjdXJyQ2hyID0gaW5WYWxbY3Vycl07XHJcbiAgICAgICAgb3V0VmFsLkFwcGVuZChjdXJyQ2hyKTtcclxuICAgICAgICBjdXJyICs9IGtleTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIFRoZSBsYXN0IGNoYXIgaW4gdGhlIHNjcmFtYmxlZCBzdHJpbmcgaXMgYSBwYWRkaW5nIHJlYWRhYmxlIGNoYXIuXHJcbiAgICBvdXRWYWwuQXBwZW5kKCdfJykvKidfJyovO1xyXG4gICAgcmV0dXJuIG91dFZhbC5Ub1N0cmluZygpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PmRlbGV0ZSBmaXJzdCBjaGFyYWN0ZXIgb2Ygc2NyYW1ibGVkIHRleHQgYW5kIG1ha2VzIGxlZnQgdHJpbSB0byB0aGUgc3RyaW5nPC9zdW1tYXJ5PlxyXG4gIHByaXZhdGUgc3RhdGljIExvY2F0ZVNjcmFtYmxlKGluVmFsOiBzdHJpbmcsIGZyb206IG51bWJlcik6IG51bWJlciB7XHJcbiAgICBsZXQgaTogbnVtYmVyID0gZnJvbTtcclxuICAgIHdoaWxlIChpIDwgaW5WYWwubGVuZ3RoICYmIE5DaGFyLklzV2hpdGVTcGFjZShpblZhbC5jaGFyQXQoaSkpKSB7XHJcbiAgICAgIGkgPSBpICsgMTtcclxuICAgIH1cclxuICAgIHJldHVybiBpICsgMTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gQ2hvb3NlIGEgcmFuZG9tIG1vZGlmaWVyIHRvIHRoZSBrZXkgb24gd2hpY2ggd2UgYmFzZSB0aGUgc2NyYW1ibGluZyBwcm9jZXNzLlxyXG4gIC8vLyBUaGUgcmFuZG9tIGZhY3RvciBjYW5ub3QgYmUganVzdCBhbnkgbnVtYmVyIHdlIGNob29zZS4gU2luY2UgdGhlIHNjcmFtYmxlIGtleVxyXG4gIC8vLyBkZXRlcm1pbmVzIHRoZSBhbW91bnQgb2YgJ2p1bXBzJyB3ZSBwZXJmb3JtIG9uIHRoZSB0ZXh0IHRvIGJlIHNjcmFtYmxlZCwgdGhlblxyXG4gIC8vLyB0aGUgcmFuZG9tIG51bWJlciB3ZSBhZGQgdG8gaXQgbXVzdCBub3QgYmUgdG9vIGJpZywgbm9yIHRvbyBzbWFsbC4gQXMgYSBydWxlLFxyXG4gIC8vLyB0aGUgcmFuZG9tIG1vZGlmaWVyIGNhbiByYW5nZSBmcm9tIFNRUlQobGVuKS8yJyB0byAnLVNRUlQobGVuKS8yJywgYW5kIHNpbmNlIHdlXHJcbiAgLy8vIHBhc3MgdGhlIHNlbGVjdGVkIG51bWJlciBhcyBhIGNoYXJhY3RlciB3aXRoaW4gdGhlIFhNTCwgdGhlIHdob2xlIHJhbmdlIGNhbm5vdFxyXG4gIC8vLyBleGNlZWQgdGhlIG51bWJlciBvZiB0aGUgcHJpbnRhYmxlIGNoYXJhY3RlcnMgKDk1KSwgdGh1cyB0aGUgcmFuZ2UgaXMgbGltaXRlZFxyXG4gIC8vLyBiZXR3ZWVuICgtNDgpIHRvICg0NyksIHNvIHdlIGNhcCB0aGUgYWxsb3dlZCByYW5nZSBhY2NvcmRpbmcgdG8gdGhlc2UgbGltaXRzLlxyXG4gIC8vLyBMYXN0LCB0aGUgdmFsdWUgWE1MX0lMTEVHQUxfUkFORE9NLCBzaW5jZSBpdCB3aWxsIHJlc3VsdCBpbiBhZGRpbmcgdGhlIGNoYXIgJzwnXHJcbiAgLy8vIHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlIFhNTC4gVGhpcyB3aWxsIG1ha2UgdGhlIGNsaWVudCBjb25mdXNlZCwgc2luY2UgaXQgd2lsbFxyXG4gIC8vLyB0aGluayB0aGUgWE1MIGlzIG5vdCBzY3JhbWJsZWQuXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJsZW5cIj5vZiBvdXRnb2luZyBTdHJpbmc8L3BhcmFtPlxyXG4gIC8vLyA8cmV0dXJucz4gcmFuZG9tIG1vZGlmaWVyPC9yZXR1cm5zPlxyXG4gIHByaXZhdGUgc3RhdGljIFJhbmRvbVNjcmFtYmxlKGxlbjogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgIGxldCBkZWx0YTogbnVtYmVyO1xyXG4gICAgbGV0IHNxcnQ6IG51bWJlciA9IE1hdGguc3FydChsZW4pO1xyXG4gICAgbGV0IGxvdzogbnVtYmVyID0gU2NyYW1ibGVyLlhNTF9NSU5fUkFORE9NO1xyXG4gICAgbGV0IGhpZ2g6IG51bWJlciA9IFNjcmFtYmxlci5YTUxfTUFYX1JBTkRPTTtcclxuXHJcbiAgICBpZiAobG93IDwgKCgoLTEpICogc3FydCkgLyAyKSlcclxuICAgICAgbG93ID0gTWF0aC5mbG9vcigoKC0xKSAqIHNxcnQpIC8gMik7XHJcblxyXG4gICAgaWYgKGhpZ2ggPiAoc3FydCAvIDIpKVxyXG4gICAgICBoaWdoID0gTWF0aC5mbG9vcihzcXJ0IC8gMik7XHJcblxyXG4gICAgZGVsdGEgPSAoTWF0aC5yYW5kb20oKSAqIChoaWdoIC0gbG93KSkgKyBsb3c7XHJcbiAgICBkZWx0YSA9IE1hdGguZmxvb3IoZGVsdGEpO1xyXG4gICAgaWYgKGRlbHRhID09PSBTY3JhbWJsZXIuWE1MX0lMTEVHQUxfUkFORE9NKVxyXG4gICAgICBkZWx0YSsrO1xyXG5cclxuICAgIHJldHVybiBkZWx0YTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5tYWtlIHVuc2NyYW1ibGluZyB0byBzdHJpbmcgaW5zaWRlIHVwcGVyIGFuZCBkb3duIGJvcmRlcjwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJpblZhbFwiPnNjcmFtYmxlZCBzdHJpbmcgdG8gYnVpbGQgdW5zY3JhbWJsZWQgc3RyaW5nIGZyb20gaXQ8L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImJlZ2luT2ZmU2V0XCI+b2Zmc2V0IHdoZXJlIHRoZSBzY3JhbWJsZWQgc3RyaW5nIGJlZ2luczwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwiZW5kT2ZmU2V0XCI+b2Zmc2V0IG9mIHRoZSBsYXN0IGNoYXIgaW4gdGhlIHNjcmFtYmxlZCBzdHJpbmcuPC9wYXJhbT5cclxuICAvLy8gPHJldHVybnM+IHVuc2NyYW1ibGVkIHN0cmluZzwvcmV0dXJucz5cclxuICBzdGF0aWMgVW5TY3JhbWJsZShpblZhbDogc3RyaW5nLCBiZWdpbk9mZlNldDogbnVtYmVyLCBlbmRPZmZTZXQ6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICBpZiAoIVNjcmFtYmxlci5TY3JhbWJsaW5nRW5hYmxlZCkge1xyXG4gICAgICBsZXQgb3V0VmFsOiBzdHJpbmcgPSBpblZhbC5zdWJzdHIoYmVnaW5PZmZTZXQsIGVuZE9mZlNldCAtIGJlZ2luT2ZmU2V0ICsgMSk7XHJcbiAgICAgIHJldHVybiBvdXRWYWw7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgbGV0IGN1cnJPdXQ6IG51bWJlciwgY3VyckluOiBudW1iZXIsIGk6IG51bWJlcjtcclxuICAgICAgbGV0IGxlbmd0aDogbnVtYmVyO1xyXG4gICAgICBsZXQga2V5OiBudW1iZXI7XHJcbiAgICAgIGxldCBvdXRWYWw6IHN0cmluZ1tdO1xyXG4gICAgICBsZXQgY3VyckJsazogbnVtYmVyO1xyXG4gICAgICBsZXQgYmxvY2tTaXplOiBudW1iZXI7XHJcbiAgICAgIGxldCByZW1pbmRlcjogbnVtYmVyO1xyXG4gICAgICBsZXQgc3RhcnQ6IG51bWJlcjtcclxuICAgICAgbGV0IHJhbmRvbUNocjogc3RyaW5nO1xyXG5cclxuICAgICAgLy8gaWdub3JlIHRoZSBsYXN0IGNoYXIgaW4gdGhlIGlucHV0LCBpdCdzIGp1c3QgYSBwYWRkaW5nIGNoYXJhY3Rlci5cclxuICAgICAgZW5kT2ZmU2V0ID0gZW5kT2ZmU2V0IC0gMTtcclxuXHJcbiAgICAgIC8vIHNraXAgb3ZlciB0aGUgZmlyc3QgY2hhciBpbiB0aGUgaW5wdXQsIGl0IG9ubHkgY29udGFpbnMgYSByYW5kb20gbW9kaWZpZXIgdG8gdGhlIGtleS5cclxuICAgICAgLy8gaXQgaXMgbm90IHBhcnQgb2YgdGhlIGRhdGEuXHJcbiAgICAgIHN0YXJ0ID0gdGhpcy5Mb2NhdGVTY3JhbWJsZShpblZhbCwgYmVnaW5PZmZTZXQpO1xyXG4gICAgICByYW5kb21DaHIgPSBpblZhbFtzdGFydCAtIDFdO1xyXG5cclxuICAgICAgbGVuZ3RoID0gZW5kT2ZmU2V0IC0gc3RhcnQgKyAxO1xyXG4gICAgICBrZXkgPSAocmFuZG9tQ2hyLmNoYXJDb2RlQXQoMCkgLSA4MSkgKyBNYXRoLmZsb29yKE1hdGguc3FydChsZW5ndGgpKTtcclxuICAgICAgb3V0VmFsID0gbmV3IEFycmF5KGxlbmd0aCk7XHJcbiAgICAgIGJsb2NrU2l6ZSA9IE1hdGguZmxvb3IobGVuZ3RoIC8ga2V5KTtcclxuICAgICAgcmVtaW5kZXIgPSBsZW5ndGggJSBrZXk7XHJcblxyXG4gICAgICBmb3IgKGkgPSBjdXJyT3V0ID0gMDsgY3Vyck91dCA8IGxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgY3VyckluID0gaTtcclxuICAgICAgICBjdXJyQmxrID0gMTtcclxuXHJcbiAgICAgICAgd2hpbGUgKGN1cnJJbiA8IGxlbmd0aCAmJiBjdXJyT3V0IDwgbGVuZ3RoKSB7XHJcbiAgICAgICAgICBvdXRWYWxbY3Vyck91dF0gPSBpblZhbFtjdXJySW4gKyBzdGFydF07XHJcbiAgICAgICAgICBjdXJySW4gKz0gYmxvY2tTaXplO1xyXG4gICAgICAgICAgaWYgKGN1cnJCbGsgPD0gcmVtaW5kZXIpXHJcbiAgICAgICAgICAgIGN1cnJJbisrO1xyXG4gICAgICAgICAgY3Vyck91dCsrO1xyXG4gICAgICAgICAgY3VyckJsaysrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgcmV0dXJuIE5TdHJpbmcuRnJvbUNoYXJzKG91dFZhbCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -10,4 +10,4 @@ export class UniqueIDUtils {
10
10
  return UniqueIDUtils.id;
11
11
  }
12
12
  }
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVW5pcXVlSURVdGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VuZ2luZS9zcmMvdXRpbC9VbmlxdWVJRFV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxNQUFNLE9BQU8sYUFBYTtJQUVoQixNQUFNLENBQUMsRUFBRSxDQUFDO0lBRWxCLE1BQU0sQ0FBQyxrQkFBa0I7UUFFdkIsSUFBRyxDQUFDLGFBQWEsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUVyQixJQUFJLElBQUksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ3RCLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsR0FBRyxJQUFJLENBQUMsWUFBWSxFQUFFLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ25GLGFBQWEsQ0FBQyxFQUFFLEdBQUcsU0FBUyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUUsQ0FBQyxRQUFRLEVBQUUsR0FBRyxHQUFHLENBQUM7UUFDeEUsQ0FBQztRQUNELE9BQU8sYUFBYSxDQUFDLEVBQUUsQ0FBRTtJQUUzQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIYXNoVXRpbHN9IGZyb20gJ0BtYWdpYy14cGEvbXNjb3JlbGliJztcclxuZXhwb3J0IGNsYXNzIFVuaXF1ZUlEVXRpbHMge1xyXG5cclxuICBwcml2YXRlIHN0YXRpYyBpZDtcclxuXHJcbiAgc3RhdGljIEdldFVuaXF1ZU1hY2hpbmVJRCgpOiBzdHJpbmcge1xyXG5cclxuICAgIGlmKCFVbmlxdWVJRFV0aWxzLmlkKSB7XHJcbiAgICAgIC8vIFRpbWVzdGFtcCB3aWxsIGJlIHRoZSBuZXcgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHdlYmNsaWVudFxyXG4gICAgICBsZXQgZGF0ZSA9IG5ldyBEYXRlKCk7XHJcbiAgICAgIGxldCB0aW1lU3RhbXAgPSBkYXRlLnRvRGF0ZVN0cmluZygpICsgZGF0ZS50b1RpbWVTdHJpbmcoKSArIGRhdGUuZ2V0TWlsbGlzZWNvbmRzKCk7IC8vIGdldCB0aGUgdGltZSBzdGFtcFxyXG4gICAgICBVbmlxdWVJRFV0aWxzLmlkID0gSGFzaFV0aWxzLkdldEhhc2hDb2RlKHRpbWVTdGFtcCApLnRvU3RyaW5nKCkgKyAnXyc7IC8vIGdldCBoYXNoIGNvZGUgb2YgdGltZXN0YW1wXHJcbiAgICB9XHJcbiAgICByZXR1cm4gVW5pcXVlSURVdGlscy5pZCA7XHJcblxyXG4gIH1cclxufVxyXG4iXX0=
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVW5pcXVlSURVdGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VuZ2luZS9zcmMvdXRpbC9VbmlxdWVJRFV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxNQUFNLE9BQU8sYUFBYTtJQUVoQixNQUFNLENBQUMsRUFBRSxDQUFDO0lBRWxCLE1BQU0sQ0FBQyxrQkFBa0I7UUFFdkIsSUFBRyxDQUFDLGFBQWEsQ0FBQyxFQUFFLEVBQUU7WUFFcEIsSUFBSSxJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUN0QixJQUFJLFNBQVMsR0FBRyxJQUFJLENBQUMsWUFBWSxFQUFFLEdBQUcsSUFBSSxDQUFDLFlBQVksRUFBRSxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUNuRixhQUFhLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFFLENBQUMsUUFBUSxFQUFFLEdBQUcsR0FBRyxDQUFDO1NBQ3ZFO1FBQ0QsT0FBTyxhQUFhLENBQUMsRUFBRSxDQUFFO0lBRTNCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhhc2hVdGlsc30gZnJvbSAnQG1hZ2ljLXhwYS9tc2NvcmVsaWInO1xyXG5leHBvcnQgY2xhc3MgVW5pcXVlSURVdGlscyB7XHJcblxyXG4gIHByaXZhdGUgc3RhdGljIGlkO1xyXG5cclxuICBzdGF0aWMgR2V0VW5pcXVlTWFjaGluZUlEKCk6IHN0cmluZyB7XHJcblxyXG4gICAgaWYoIVVuaXF1ZUlEVXRpbHMuaWQpIHtcclxuICAgICAgLy8gVGltZXN0YW1wIHdpbGwgYmUgdGhlIG5ldyB1bmlxdWUgaWRlbnRpZmllciBmb3Igd2ViY2xpZW50XHJcbiAgICAgIGxldCBkYXRlID0gbmV3IERhdGUoKTtcclxuICAgICAgbGV0IHRpbWVTdGFtcCA9IGRhdGUudG9EYXRlU3RyaW5nKCkgKyBkYXRlLnRvVGltZVN0cmluZygpICsgZGF0ZS5nZXRNaWxsaXNlY29uZHMoKTsgLy8gZ2V0IHRoZSB0aW1lIHN0YW1wXHJcbiAgICAgIFVuaXF1ZUlEVXRpbHMuaWQgPSBIYXNoVXRpbHMuR2V0SGFzaENvZGUodGltZVN0YW1wICkudG9TdHJpbmcoKSArICdfJzsgLy8gZ2V0IGhhc2ggY29kZSBvZiB0aW1lc3RhbXBcclxuICAgIH1cclxuICAgIHJldHVybiBVbmlxdWVJRFV0aWxzLmlkIDtcclxuXHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -89,4 +89,4 @@ export class CookieService {
89
89
  return false;
90
90
  }
91
91
  }
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29va2llLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbmdpbmUvc3JjL3V0aWwvY29va2llLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRS9DLE1BQU0sT0FBTyxhQUFhO0lBRWpCLE1BQU0sQ0FBQyxVQUFVLENBQUMsVUFBa0I7UUFFekMsSUFBSSxVQUFVLElBQUksR0FBRztZQUNuQixPQUFPLFFBQVEsQ0FBQyxNQUFNLENBQUM7UUFFekIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFTSxNQUFNLENBQUMsU0FBUyxDQUFDLElBQVksRUFBRSxLQUFhLEVBQUUsT0FBdUIsRUFBRSxJQUFLLEVBQUUsTUFBUSxFQUFFLE1BQU8sRUFBRSxRQUFTO1FBQy9HLElBQUksWUFBWSxHQUFXLGtCQUFrQixDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO1FBQ3pILElBQUksT0FBTyxFQUFFLENBQUM7WUFDWixJQUFJLE9BQU8sT0FBTyxLQUFLLFFBQVEsRUFBRSxDQUFDO2dCQUNoQyxNQUFNLFdBQVcsR0FBUyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFFNUMsWUFBWSxJQUFJLFVBQVUsR0FBRyxXQUFXLENBQUMsV0FBVyxFQUFFLEdBQUcsR0FBRyxDQUFDO1lBQy9ELENBQUM7aUJBQ0ksSUFBRyxDQUFDLE9BQU8sT0FBTyxLQUFLLFFBQVEsQ0FBQyxFQUNyQyxDQUFDO2dCQUNDLE1BQU0sV0FBVyxHQUFTLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUU1QyxZQUFZLElBQUksVUFBVSxHQUFHLFdBQVcs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QztDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTlN0cmluZyB9IGZyb20gJ0BtYWdpYy14cGEvbXNjb3JlbGliJztcblxuZXhwb3J0IGNsYXNzIENvb2tpZVNlcnZpY2Uge1xuXG4gIHB1YmxpYyBzdGF0aWMgZ2V0Q29va2llcyhjb29raWVOYW1lOiBzdHJpbmcpIHtcblxuICAgIGlmIChjb29raWVOYW1lID09ICcqJylcbiAgICAgIHJldHVybiBkb2N1bWVudC5jb29raWU7XG5cbiAgICByZXR1cm4gdGhpcy5nZXRDb29raWUoY29va2llTmFtZSk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHNldENvb2tpZShuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcsIGV4cGlyZXM/OiBudW1iZXIgfCBEYXRlLCBwYXRoPywgZG9tYWluID8sIHNlY3VyZT8sIHNhbWVTaXRlPyk6IGJvb2xlYW4ge1xuICAgIGxldCBjb29raWVTdHJpbmc6IHN0cmluZyA9IGVuY29kZVVSSUNvbXBvbmVudChuYW1lKSArICc9JyArIGVuY29kZVVSSUNvbXBvbmVudChDb29raWVTZXJ2aWNlLmVuY29kZV9jb29raWUodmFsdWUpKSArICc7JztcbiAgICBpZiAoZXhwaXJlcykge1xuICAgICAgaWYgKHR5cGVvZiBleHBpcmVzID09PSAnbnVtYmVyJykge1xuICAgICAgICBjb25zdCBkYXRlRXhwaXJlczogRGF0ZSA9IG5ldyBEYXRlKGV4cGlyZXMpO1xuXG4gICAgICAgIGNvb2tpZVN0cmluZyArPSAnZXhwaXJlcz0nICsgZGF0ZUV4cGlyZXMudG9VVENTdHJpbmcoKSArICc7JztcbiAgICAgIH1cbiAgICAgIGVsc2UgaWYoKHR5cGVvZiBleHBpcmVzID09PSAnc3RyaW5nJykpXG4gICAgICB7XG4gICAgICAgIGNvbnN0IGRhdGVFeHBpcmVzOiBEYXRlID0gbmV3IERhdGUoZXhwaXJlcyk7XG5cbiAgICAgICAgY29va2llU3RyaW5nICs9ICdleHBpcmVzPScgKyBkYXRlRXhwaXJlcy50b1VUQ1N0cmluZygpICsgJzsnO1xuICAgICAgfVxuICAgICAgZWxzZSB7XG4gICAgICAgIGNvb2tpZVN0cmluZyArPSAnZXhwaXJlcz0nICsgZXhwaXJlcy50b1VUQ1N0cmluZygpICsgJzsnO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChwYXRoKSB7XG4gICAgICBjb29raWVTdHJpbmcgKz0gJ3BhdGg9JyArIHBhdGggKyAnOyc7XG4gICAgfVxuXG4gICAgaWYgKGRvbWFpbikge1xuICAgICAgY29va2llU3RyaW5nICs9ICdkb21haW49JyArIGRvbWFpbiArICc7JztcbiAgICB9XG5cbiAgICBpZiAoc2VjdXJlID09PSBmYWxzZSAmJiBzYW1lU2l0ZSA9PT0gJ05vbmUnKSB7XG4gICAgICBzZWN1cmUgPSB0cnVlO1xuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICBgY29va2llICR7bmFtZX0gd2FzIGZvcmNlZCB3aXRoIHNlY3VyZSBmbGFnIGJlY2F1c2Ugc2FtZVNpdGU9Tm9uZS5gXG4gICAgICApO1xuICAgIH1cbiAgICBpZiAoc2VjdXJlKSB7XG4gICAgICBjb29raWVTdHJpbmcgKz0gJ3NlY3VyZTsnO1xuICAgIH1cblxuICAgIGlmICghc2FtZVNpdGUpIHtcbiAgICAgIHNhbWVTaXRlID0gJ0xheCc7XG4gICAgfVxuXG4gICAgY29va2llU3RyaW5nICs9ICdzYW1lU2l0ZT0nICsgc2FtZVNpdGUgKyAnOyc7XG5cbiAgICBkb2N1bWVudC5jb29raWUgPSBjb29raWVTdHJpbmc7XG5cbiAgICByZXR1cm4gdGhpcy5nZXRDb29raWUobmFtZSk7XG4gIH1cblxuICBzdGF0aWMgZW5jb2RlX2Nvb2tpZShjb29raWVfdmFsdWUpIHtcblxuICAgIGNvb2tpZV92YWx1ZSA9IGNvb2tpZV92YWx1ZS50cmltKCk7XG4gICAgLy9UaGlzIHZhcmlhYmxlIGhvbGRzIHRoZSBlbmNvZGVkIGNvb2tpZSBjaGFyYWN0ZXJzXG4gICAgdmFyIGNvZGVkX3N0cmluZyA9ICcnO1xuXG4gICAgLy8gUnVuIHRocm91Z2ggZWFjaCBjaGFyYWN0ZXIgaW4gdGhlIGNvb2tpZSB2YWx1ZVxuICAgIGZvciAodmFyIGNvdW50ZXIgPSAwOyBjb3VudGVyIDwgY29va2llX3ZhbHVlLmxlbmd0aDsgY291bnRlcisrKSB7XG5cbiAgICAgIC8vIEFkZCB0aGUgY2hhcmFjdGVyJ3MgbnVtZXJpYyBjb2RlIHRvIHRoZSBzdHJpbmdcbiAgICAgIGNvZGVkX3N0cmluZyArPSBjb29raWVfdmFsdWUuY2hhckNvZGVBdChjb3VudGVyKTtcblxuICAgICAgLy8gU2VwYXJhdGUgZWFjaCBjb2RlIHdpdGggYSBwbHVzIHNpZ24gKCspXG4gICAgICBpZiAoY291bnRlciA8IGNvb2tpZV92YWx1ZS5sZW5ndGggLSAxKSB7XG4gICAgICAgIGNvZGVkX3N0cmluZyArPSAnKyc7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBjb2RlZF9zdHJpbmc7XG4gIH1cblxuICBzdGF0aWMgZGVjb2RlX2Nvb2tpZShjb2RlZF9zdHJpbmcpIHtcbiAgICAvLyBUaGlzIHZhcmlhYmxlIGhvbGRzIHRoZSBkZWNvZGVkIGNvb2tpZSB2YWx1ZVxuICAgIHZhciBjb29raWVfdmFsdWUgPSAnJztcblxuICAgIC8vIFVzZSArIHRvIHNwbGl0IHRoZSBjb2RlZCBzdHJpbmcgaW50byBhbiBhcnJheVxuICAgIHZhciBjb2RlX2FycmF5ID0gY29kZWRfc3RyaW5nLnNwbGl0KCcrJyk7XG5cbiAgICAvLyBMb29wIHRocm91Z2ggdGhlIGFycmF5XG4gICAgZm9yICh2YXIgY291bnRlciA9IDA7IGNvdW50ZXIgPCBjb2RlX2FycmF5Lmxlbmd0aDsgY291bnRlcisrKSB7XG5cbiAgICAgIC8vIENvbnZlcnQgdGhlIGNvZGUgaW50byBhIGNoYXJhY3RlciBhbmRcbiAgICAgIC8vIGFkZCBpdCB0byB0aGUgY29va2llIHZhbHVlIHN0cmluZ1xuICAgICAgY29va2llX3ZhbHVlICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoY29kZV9hcnJheVtjb3VudGVyXSk7XG4gICAgfVxuICAgIC8vIHJldHVybiBjb2RlZF9zdHJpbmc7XG5cbiAgICByZXR1cm4gY29va2llX3ZhbHVlO1xuICB9XG5cbiAgc3RhdGljIGdldENvb2tpZShjb29raWVOYW1lKTogYW55IHtcbiAgICBsZXQgbmFtZSA9IE5TdHJpbmcuVHJpbVN0YXJ0KGNvb2tpZU5hbWUgKyAnPScpO1xuICAgIGxldCBkZWNvZGVkQ29va2llID0gZGVjb2RlVVJJQ29tcG9uZW50KGRvY3VtZW50LmNvb2tpZSk7XG4gICAgbGV0IGNhID0gZGVjb2RlZENvb2tpZS5zcGxpdCgnOycpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY2EubGVuZ3RoOyBpKyspIHtcbiAgICAgIGxldCBjID0gY2FbaV07XG4gICAgICB3aGlsZSAoYy5jaGFyQXQoMCkgPT0gJyAnKSB7XG4gICAgICAgIGMgPSBjLnN1YnN0cmluZygxKTtcbiAgICAgIH1cbiAgICAgIGlmIChjLmluZGV4T2YobmFtZSkgPj0gMCkge1xuICAgICAgICBsZXQgZGVjb2RlID0gQ29va2llU2VydmljZS5kZWNvZGVfY29va2llKGMuc3Vic3RyaW5nKG5hbWUubGVuZ3RoLCBjLmxlbmd0aCkpO1xuICAgICAgICByZXR1cm4gZGVjb2RlO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICBzdGF0aWMgZGVsZXRlQ29va2llKGNvb2tpZU5hbWUpOiBib29sZWFuIHtcbiAgICB2YXIgY29va2llcyA9IGRvY3VtZW50LmNvb2tpZS5zcGxpdCgnOycpO1xuXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjb29raWVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICB2YXIgY29va2llID0gY29va2llc1tpXTtcbiAgICAgIHZhciBlcVBvcyA9IGNvb2tpZS5pbmRleE9mKCc9Jyk7XG4gICAgICB2YXIgbmFtZSA9IGVxUG9zID4gLTEgPyBjb29raWUuc3Vic3RyKDAsIGVxUG9zKSA6IGNvb2tpZTtcbiAgICAgIGlmIChjb29raWVOYW1lID09PSBOU3RyaW5nLlRyaW1TdGFydChkZWNvZGVVUkkobmFtZSkpKSB7XG4gICAgICAgIGRvY3VtZW50LmNvb2tpZSA9IG5hbWUgKyAnPTtleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDAgR01UJztcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG59XG4iXX0=
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29va2llLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbmdpbmUvc3JjL3V0aWwvY29va2llLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRS9DLE1BQU0sT0FBTyxhQUFhO0lBRWpCLE1BQU0sQ0FBQyxVQUFVLENBQUMsVUFBa0I7UUFFekMsSUFBSSxVQUFVLElBQUksR0FBRztZQUNuQixPQUFPLFFBQVEsQ0FBQyxNQUFNLENBQUM7UUFFekIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFTSxNQUFNLENBQUMsU0FBUyxDQUFDLElBQVksRUFBRSxLQUFhLEVBQUUsT0FBdUIsRUFBRSxJQUFLLEVBQUUsTUFBUSxFQUFFLE1BQU8sRUFBRSxRQUFTO1FBQy9HLElBQUksWUFBWSxHQUFXLGtCQUFrQixDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO1FBQ3pILElBQUksT0FBTyxFQUFFO1lBQ1gsSUFBSSxPQUFPLE9BQU8sS0FBSyxRQUFRLEVBQUU7Z0JBQy9CLE1BQU0sV0FBVyxHQUFTLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUU1QyxZQUFZLElBQUksVUFBVSxHQUFHLFdBQVcsQ0FBQyxXQUFXLEVBQUUsR0FBRyxHQUFHLENBQUM7YUFDOUQ7aUJBQ0ksSUFBRyxDQUFDLE9BQU8sT0FBTyxLQUFLLFFBQVEsQ0FBQyxFQUNyQztnQkFDRSxNQUFNLFdBQVcsR0FBUyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFFNUMsWUFBWSxJQUFJLFVBQVUsR0FBRyxXQUFXLENBQUMsV0FBVyxFQUFFLEdBQUcsR0FBRyxDQUFDO2FBQzlEO2lCQUNJO2dCQUNILFlBQVksSUFBSSxVQUFVLEdBQUcsT0FBTyxDQUFDLFdBQVcsRUFBRSxHQUFHLEdBQUcsQ0FBQzthQUMxRDtTQUNGO1FBRUQsSUFBSSxJQUFJLEVBQUU7WUFDUixZQUFZLElBQUksT0FBTyxHQUFHLElBQUksR0FBRyxHQUFHLENBQUM7U0FDdEM7UUFFRCxJQUFJLE1BQU0sRUFBRTtZQUNWLFlBQVksSUFBSSxTQUFTLEdBQUcsTUFBTSxHQUFHLEdBQUcsQ0FBQztTQUMxQztRQUVELElBQUksTUFBTSxLQUFLLEtBQUssSUFBSSxRQUFRLEtBQUssTUFBTSxFQUFFO1lBQzNDLE1BQU0sR0FBRyxJQUFJLENBQUM7WUFDZCxPQUFPLENBQUMsSUFBSSxDQUNWLFVBQVUsSUFBSSxxREFBcUQsQ0FDcEUsQ0FBQztTQUNIO1FBQ0QsSUFBSSxNQUFNLEVBQUU7WUFDVixZQUFZLElBQUksU0FBUyxDQUFDO1NBQzNCO1FBRUQsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNiLFFBQVEsR0FBRyxLQUFLLENBQUM7U0FDbEI7UUFFRCxZQUFZLElBQUksV0FBVyxHQUFHLFFBQVEsR0FBRyxHQUFHLENBQUM7UUFFN0MsUUFBUSxDQUFDLE1BQU0sR0FBRyxZQUFZLENBQUM7UUFFL0IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxNQUFNLENBQUMsYUFBYSxDQUFDLFlBQVk7UUFFL0IsWUFBWSxHQUFHLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVuQyxJQUFJLFlBQVksR0FBRyxFQUFFLENBQUM7UUFHdEIsS0FBSyxJQUFJLE9BQU8sR0FBRyxDQUFDLEVBQUUsT0FBTyxHQUFHLFlBQVksQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLEVBQUU7WUFHOUQsWUFBWSxJQUFJLFlBQVksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7WUFHakQsSUFBSSxPQUFPLEdBQUcsWUFBWSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ3JDLFlBQVksSUFBSSxHQUFHLENBQUM7YUFDckI7U0FDRjtRQUNELE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxNQUFNLENBQUMsYUFBYSxDQUFDLFlBQVk7UUFFL0IsSUFBSSxZQUFZLEdBQUcsRUFBRSxDQUFDO1FBR3RCLElBQUksVUFBVSxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFHekMsS0FBSyxJQUFJLE9BQU8sR0FBRyxDQUFDLEVBQUUsT0FBTyxHQUFHLFVBQVUsQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLEVBQUU7WUFJNUQsWUFBWSxJQUFJLE1BQU0sQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7U0FDMUQ7UUFHRCxPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDO0lBRUQsTUFBTSxDQUFDLFNBQVMsQ0FBQyxVQUFVO1FBQ3pCLElBQUksSUFBSSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsVUFBVSxHQUFHLEdBQUcsQ0FBQyxDQUFDO1FBQy9DLElBQUksYUFBYSxHQUFHLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN4RCxJQUFJLEVBQUUsR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2xDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ2xDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNkLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUU7Z0JBQ3pCLENBQUMsR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3BCO1lBQ0QsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDeEIsSUFBSSxNQUFNLEdBQUcsYUFBYSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7Z0JBQzdFLE9BQU8sTUFBTSxDQUFDO2FBQ2Y7U0FDRjtRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELE1BQU0sQ0FBQyxZQUFZLENBQUMsVUFBVTtRQUM1QixJQUFJLE9BQU8sR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV6QyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN2QyxJQUFJLE1BQU0sR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDeEIsSUFBSSxLQUFLLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNoQyxJQUFJLElBQUksR0FBRyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7WUFDekQsSUFBSSxVQUFVLEtBQUssT0FBTyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRTtnQkFDckQsUUFBUSxDQUFDLE1BQU0sR0FBRyxJQUFJLEdBQUcseUNBQXlDLENBQUM7Z0JBQ25FLE9BQU8sSUFBSSxDQUFDO2FBQ2I7U0FDRjtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTlN0cmluZyB9IGZyb20gJ0BtYWdpYy14cGEvbXNjb3JlbGliJztcblxuZXhwb3J0IGNsYXNzIENvb2tpZVNlcnZpY2Uge1xuXG4gIHB1YmxpYyBzdGF0aWMgZ2V0Q29va2llcyhjb29raWVOYW1lOiBzdHJpbmcpIHtcblxuICAgIGlmIChjb29raWVOYW1lID09ICcqJylcbiAgICAgIHJldHVybiBkb2N1bWVudC5jb29raWU7XG5cbiAgICByZXR1cm4gdGhpcy5nZXRDb29raWUoY29va2llTmFtZSk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHNldENvb2tpZShuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcsIGV4cGlyZXM/OiBudW1iZXIgfCBEYXRlLCBwYXRoPywgZG9tYWluID8sIHNlY3VyZT8sIHNhbWVTaXRlPyk6IGJvb2xlYW4ge1xuICAgIGxldCBjb29raWVTdHJpbmc6IHN0cmluZyA9IGVuY29kZVVSSUNvbXBvbmVudChuYW1lKSArICc9JyArIGVuY29kZVVSSUNvbXBvbmVudChDb29raWVTZXJ2aWNlLmVuY29kZV9jb29raWUodmFsdWUpKSArICc7JztcbiAgICBpZiAoZXhwaXJlcykge1xuICAgICAgaWYgKHR5cGVvZiBleHBpcmVzID09PSAnbnVtYmVyJykge1xuICAgICAgICBjb25zdCBkYXRlRXhwaXJlczogRGF0ZSA9IG5ldyBEYXRlKGV4cGlyZXMpO1xuXG4gICAgICAgIGNvb2tpZVN0cmluZyArPSAnZXhwaXJlcz0nICsgZGF0ZUV4cGlyZXMudG9VVENTdHJpbmcoKSArICc7JztcbiAgICAgIH1cbiAgICAgIGVsc2UgaWYoKHR5cGVvZiBleHBpcmVzID09PSAnc3RyaW5nJykpXG4gICAgICB7XG4gICAgICAgIGNvbnN0IGRhdGVFeHBpcmVzOiBEYXRlID0gbmV3IERhdGUoZXhwaXJlcyk7XG5cbiAgICAgICAgY29va2llU3RyaW5nICs9ICdleHBpcmVzPScgKyBkYXRlRXhwaXJlcy50b1VUQ1N0cmluZygpICsgJzsnO1xuICAgICAgfVxuICAgICAgZWxzZSB7XG4gICAgICAgIGNvb2tpZVN0cmluZyArPSAnZXhwaXJlcz0nICsgZXhwaXJlcy50b1VUQ1N0cmluZygpICsgJzsnO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChwYXRoKSB7XG4gICAgICBjb29raWVTdHJpbmcgKz0gJ3BhdGg9JyArIHBhdGggKyAnOyc7XG4gICAgfVxuXG4gICAgaWYgKGRvbWFpbikge1xuICAgICAgY29va2llU3RyaW5nICs9ICdkb21haW49JyArIGRvbWFpbiArICc7JztcbiAgICB9XG5cbiAgICBpZiAoc2VjdXJlID09PSBmYWxzZSAmJiBzYW1lU2l0ZSA9PT0gJ05vbmUnKSB7XG4gICAgICBzZWN1cmUgPSB0cnVlO1xuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICBgY29va2llICR7bmFtZX0gd2FzIGZvcmNlZCB3aXRoIHNlY3VyZSBmbGFnIGJlY2F1c2Ugc2FtZVNpdGU9Tm9uZS5gXG4gICAgICApO1xuICAgIH1cbiAgICBpZiAoc2VjdXJlKSB7XG4gICAgICBjb29raWVTdHJpbmcgKz0gJ3NlY3VyZTsnO1xuICAgIH1cblxuICAgIGlmICghc2FtZVNpdGUpIHtcbiAgICAgIHNhbWVTaXRlID0gJ0xheCc7XG4gICAgfVxuXG4gICAgY29va2llU3RyaW5nICs9ICdzYW1lU2l0ZT0nICsgc2FtZVNpdGUgKyAnOyc7XG5cbiAgICBkb2N1bWVudC5jb29raWUgPSBjb29raWVTdHJpbmc7XG5cbiAgICByZXR1cm4gdGhpcy5nZXRDb29raWUobmFtZSk7XG4gIH1cblxuICBzdGF0aWMgZW5jb2RlX2Nvb2tpZShjb29raWVfdmFsdWUpIHtcblxuICAgIGNvb2tpZV92YWx1ZSA9IGNvb2tpZV92YWx1ZS50cmltKCk7XG4gICAgLy9UaGlzIHZhcmlhYmxlIGhvbGRzIHRoZSBlbmNvZGVkIGNvb2tpZSBjaGFyYWN0ZXJzXG4gICAgdmFyIGNvZGVkX3N0cmluZyA9ICcnO1xuXG4gICAgLy8gUnVuIHRocm91Z2ggZWFjaCBjaGFyYWN0ZXIgaW4gdGhlIGNvb2tpZSB2YWx1ZVxuICAgIGZvciAodmFyIGNvdW50ZXIgPSAwOyBjb3VudGVyIDwgY29va2llX3ZhbHVlLmxlbmd0aDsgY291bnRlcisrKSB7XG5cbiAgICAgIC8vIEFkZCB0aGUgY2hhcmFjdGVyJ3MgbnVtZXJpYyBjb2RlIHRvIHRoZSBzdHJpbmdcbiAgICAgIGNvZGVkX3N0cmluZyArPSBjb29raWVfdmFsdWUuY2hhckNvZGVBdChjb3VudGVyKTtcblxuICAgICAgLy8gU2VwYXJhdGUgZWFjaCBjb2RlIHdpdGggYSBwbHVzIHNpZ24gKCspXG4gICAgICBpZiAoY291bnRlciA8IGNvb2tpZV92YWx1ZS5sZW5ndGggLSAxKSB7XG4gICAgICAgIGNvZGVkX3N0cmluZyArPSAnKyc7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBjb2RlZF9zdHJpbmc7XG4gIH1cblxuICBzdGF0aWMgZGVjb2RlX2Nvb2tpZShjb2RlZF9zdHJpbmcpIHtcbiAgICAvLyBUaGlzIHZhcmlhYmxlIGhvbGRzIHRoZSBkZWNvZGVkIGNvb2tpZSB2YWx1ZVxuICAgIHZhciBjb29raWVfdmFsdWUgPSAnJztcblxuICAgIC8vIFVzZSArIHRvIHNwbGl0IHRoZSBjb2RlZCBzdHJpbmcgaW50byBhbiBhcnJheVxuICAgIHZhciBjb2RlX2FycmF5ID0gY29kZWRfc3RyaW5nLnNwbGl0KCcrJyk7XG5cbiAgICAvLyBMb29wIHRocm91Z2ggdGhlIGFycmF5XG4gICAgZm9yICh2YXIgY291bnRlciA9IDA7IGNvdW50ZXIgPCBjb2RlX2FycmF5Lmxlbmd0aDsgY291bnRlcisrKSB7XG5cbiAgICAgIC8vIENvbnZlcnQgdGhlIGNvZGUgaW50byBhIGNoYXJhY3RlciBhbmRcbiAgICAgIC8vIGFkZCBpdCB0byB0aGUgY29va2llIHZhbHVlIHN0cmluZ1xuICAgICAgY29va2llX3ZhbHVlICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoY29kZV9hcnJheVtjb3VudGVyXSk7XG4gICAgfVxuICAgIC8vIHJldHVybiBjb2RlZF9zdHJpbmc7XG5cbiAgICByZXR1cm4gY29va2llX3ZhbHVlO1xuICB9XG5cbiAgc3RhdGljIGdldENvb2tpZShjb29raWVOYW1lKTogYW55IHtcbiAgICBsZXQgbmFtZSA9IE5TdHJpbmcuVHJpbVN0YXJ0KGNvb2tpZU5hbWUgKyAnPScpO1xuICAgIGxldCBkZWNvZGVkQ29va2llID0gZGVjb2RlVVJJQ29tcG9uZW50KGRvY3VtZW50LmNvb2tpZSk7XG4gICAgbGV0IGNhID0gZGVjb2RlZENvb2tpZS5zcGxpdCgnOycpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY2EubGVuZ3RoOyBpKyspIHtcbiAgICAgIGxldCBjID0gY2FbaV07XG4gICAgICB3aGlsZSAoYy5jaGFyQXQoMCkgPT0gJyAnKSB7XG4gICAgICAgIGMgPSBjLnN1YnN0cmluZygxKTtcbiAgICAgIH1cbiAgICAgIGlmIChjLmluZGV4T2YobmFtZSkgPj0gMCkge1xuICAgICAgICBsZXQgZGVjb2RlID0gQ29va2llU2VydmljZS5kZWNvZGVfY29va2llKGMuc3Vic3RyaW5nKG5hbWUubGVuZ3RoLCBjLmxlbmd0aCkpO1xuICAgICAgICByZXR1cm4gZGVjb2RlO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICBzdGF0aWMgZGVsZXRlQ29va2llKGNvb2tpZU5hbWUpOiBib29sZWFuIHtcbiAgICB2YXIgY29va2llcyA9IGRvY3VtZW50LmNvb2tpZS5zcGxpdCgnOycpO1xuXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjb29raWVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICB2YXIgY29va2llID0gY29va2llc1tpXTtcbiAgICAgIHZhciBlcVBvcyA9IGNvb2tpZS5pbmRleE9mKCc9Jyk7XG4gICAgICB2YXIgbmFtZSA9IGVxUG9zID4gLTEgPyBjb29raWUuc3Vic3RyKDAsIGVxUG9zKSA6IGNvb2tpZTtcbiAgICAgIGlmIChjb29raWVOYW1lID09PSBOU3RyaW5nLlRyaW1TdGFydChkZWNvZGVVUkkobmFtZSkpKSB7XG4gICAgICAgIGRvY3VtZW50LmNvb2tpZSA9IG5hbWUgKyAnPTtleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDAgR01UJztcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG59XG4iXX0=
@@ -15243,7 +15243,7 @@ class Record {
15243
15243
  let fields = [];
15244
15244
  for (let i = 0; i < start + size; i++) {
15245
15245
  const field = this.getFieldsTab().getField(i);
15246
- if (!this.fldValsEqual(originalRec, i))
15246
+ if (field.PartOfDataview && !this.fldValsEqual(originalRec, i))
15247
15247
  fields.push(' ' + field.getTableName() + '.' + field.getVarName());
15248
15248
  }
15249
15249
  if (fields.length > 0)
@@ -29718,7 +29718,7 @@ class CommandsTable {
29718
29718
  }
29719
29719
  }
29720
29720
 
29721
- let CurrentClientVersion = '4.1100.0-dev4110.253';
29721
+ let CurrentClientVersion = '4.1100.0-dev4110.257';
29722
29722
 
29723
29723
  class ClientManager {
29724
29724
  static _instance = null;