@magic-xpa/utils 4.800.0-dev480.22 → 4.800.0-dev480.220

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/bundles/magic-xpa-utils.umd.js +72 -1222
  2. package/bundles/magic-xpa-utils.umd.js.map +1 -1
  3. package/bundles/magic-xpa-utils.umd.min.js +1 -1
  4. package/bundles/magic-xpa-utils.umd.min.js.map +1 -1
  5. package/esm2015/index.js +1 -1
  6. package/esm2015/magic-xpa-utils.js +1 -4
  7. package/esm2015/src/Base64.js +1 -46
  8. package/esm2015/src/ChoiceUtils.js +1 -13
  9. package/esm2015/src/Constants.js +2 -14
  10. package/esm2015/src/DateTimeUtils.js +1 -2
  11. package/esm2015/src/DateUtil.js +1 -13
  12. package/esm2015/src/InternalInterface.js +4 -8
  13. package/esm2015/src/JSON_Utils.js +1 -1
  14. package/esm2015/src/Logger.js +2 -81
  15. package/esm2015/src/MagicConstants.js +1 -1
  16. package/esm2015/src/Misc.js +1 -60
  17. package/esm2015/src/MsgInterface.js +1 -1
  18. package/esm2015/src/PICInterface.js +20 -31
  19. package/esm2015/src/PlatformUtils.js +2 -2
  20. package/esm2015/src/Queue.js +1 -9
  21. package/esm2015/src/Randomizer.js +1 -1
  22. package/esm2015/src/RequestInfo.js +1 -4
  23. package/esm2015/src/Rtf.js +15 -199
  24. package/esm2015/src/StorageAttribute.js +1 -33
  25. package/esm2015/src/StrUtil.js +0 -0
  26. package/esm2015/src/SyncExecutionHelper.js +1 -16
  27. package/esm2015/src/UtilDateJpn.js +9 -89
  28. package/esm2015/src/UtilImeJpn.js +3 -32
  29. package/esm2015/src/UtilStrByteMode.js +15 -288
  30. package/esm2015/src/XMLConstants.js +1 -12
  31. package/esm2015/src/Xml/XmlParser.js +3 -100
  32. package/esm2015/src/enums.js +1 -1
  33. package/fesm2015/magic-xpa-utils.js +72 -1224
  34. package/fesm2015/magic-xpa-utils.js.map +1 -1
  35. package/magic-xpa-utils.d.ts +0 -3
  36. package/package.json +2 -2
  37. package/src/InternalInterface.d.ts +1 -1
  38. package/src/StrUtil.d.ts +0 -1
@@ -1,4 +1,3 @@
1
- /// <summary> this interface defines the internal events codes</summary>
2
1
  export class InternalInterface {
3
2
  constructor() {
4
3
  }
@@ -272,7 +271,6 @@ InternalInterface.MG_ACT_TREE_RENAME_RT_EXIT = 413;
272
271
  InternalInterface.MG_ACT_SERVER_TERMINATION = 420;
273
272
  InternalInterface.MG_ACT_SUBFORM_REFRESH = 432;
274
273
  InternalInterface.MG_ACT_CONTEXT_MENU = 439;
275
- InternalInterface.MG_ACT_DEFAULT_BUTTON = 459;
276
274
  InternalInterface.MG_ACT_NEXT_RT_WINDOW = 462;
277
275
  InternalInterface.MG_ACT_PREV_RT_WINDOW = 463;
278
276
  InternalInterface.MG_ACT_EMPTY_DATAVIEW = 521;
@@ -306,8 +304,8 @@ InternalInterface.MG_ACT_NO_PROG_EXE_RIGHTS = 619;
306
304
  InternalInterface.MG_ACT_CRELINE_ABOVE = 634;
307
305
  InternalInterface.MG_ACT_CONTEXT_TERMINATION = 635;
308
306
  InternalInterface.MG_ACT_CONTEXT_TIMEOUT_RESET = 636;
309
- InternalInterface.MG_ACT_TOT_CNT = 637;
310
- // NEW INTERNAL EVENTS
307
+ InternalInterface.MG_ACT_CONTEXT_REMOVE = 647;
308
+ InternalInterface.MG_ACT_TOT_CNT = 648;
311
309
  InternalInterface.MG_ACT_TASK_PREFIX = 1001;
312
310
  InternalInterface.MG_ACT_TASK_SUFFIX = 1002;
313
311
  InternalInterface.MG_ACT_REC_PREFIX = 1003;
@@ -324,7 +322,6 @@ InternalInterface.MG_ACT_CYCLE_NEXT_REC = 1017;
324
322
  InternalInterface.MG_ACT_CYCLE_NEXT_DELETE_REC = 1018;
325
323
  InternalInterface.MG_ACT_COMPUTE = 1020;
326
324
  InternalInterface.MG_ACT_DUMMY = 1111;
327
- // INTERNAL EVENTS for WebClient
328
325
  InternalInterface.MG_ACT_CTRL_FOCUS = 2001;
329
326
  InternalInterface.MG_ACT_CTRL_MOUSEUP = 2002;
330
327
  InternalInterface.MG_ACT_CTRL_KEYDOWN = 2003;
@@ -334,11 +331,10 @@ InternalInterface.MG_ACT_RESIZE = 2006;
334
331
  InternalInterface.MG_ACT_ROW_DATA_CURR_PAGE = 2007;
335
332
  InternalInterface.MG_ACT_DV_TO_GUI = 2008;
336
333
  InternalInterface.MG_ACT_DISABLE_EVENTS = 2010;
337
- // toggle insert is temp 539 , it should match the code in online once it will be created.
338
334
  InternalInterface.MG_ACT_TOGGLE_INSERT = 2011;
339
335
  InternalInterface.MG_ACT_INCREMENTAL_LOCATE = 2017;
340
336
  InternalInterface.MG_ACT_MOVE_TO_FIRST_CTRL = 2018;
341
337
  InternalInterface.MG_ACT_SET_EXTERNAL_VALUE = 2019;
342
338
  InternalInterface.MG_ACT_CTRL_FOCUS_ON_NON_MAGIC_CONTROL = 2020;
343
- InternalInterface.MG_ACT_FETCH_RECORDS_AHEAD_FROM_SERVER = 2021; // for paginated table, fetch records in background depending on PROP_TYPE_SERVER_READ_AHEAD
344
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW50ZXJuYWxJbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy91dGlscy9zcmMvSW50ZXJuYWxJbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0VBQXdFO0FBQ3hFLE1BQU0sT0FBTyxpQkFBaUI7SUFnVzVCO0lBRUEsQ0FBQztJQU5ELE1BQU0sQ0FBRSxZQUFZLENBQUMsU0FBaUI7UUFDcEMsT0FBTyxTQUFTLElBQUksSUFBSSxJQUFJLFNBQVMsS0FBSyxpQkFBaUIsQ0FBQyw2QkFBNkIsQ0FBQztJQUM1RixDQUFDOztBQTdWZSw2QkFBVyxHQUFXLENBQUMsQ0FBQztBQUN4Qiw2QkFBVyxHQUFXLENBQUMsQ0FBQztBQUN4Qiw2QkFBVyxHQUFXLENBQUMsQ0FBQztBQUN4QixzQ0FBb0IsR0FBVyxDQUFDLENBQUM7QUFDakMsc0NBQW9CLEdBQVcsQ0FBQyxDQUFDO0FBQ2pDLHNDQUFvQixHQUFXLENBQUMsQ0FBQztBQUNqQyxzQ0FBb0IsR0FBVyxDQUFDLENBQUM7QUFDakMsaUNBQWUsR0FBVyxDQUFDLENBQUM7QUFDNUIsbUNBQWlCLEdBQVcsQ0FBQyxDQUFDO0FBQzlCLG1DQUFpQixHQUFXLEVBQUUsQ0FBQztBQUMvQiw0QkFBVSxHQUFXLEVBQUUsQ0FBQztBQUN4Qiw4QkFBWSxHQUFXLEVBQUUsQ0FBQztBQUMxQiw2QkFBVyxHQUFXLEVBQUUsQ0FBQztBQUN6Qix3Q0FBc0IsR0FBVyxFQUFFLENBQUM7QUFDcEMseUNBQXVCLEdBQVcsRUFBRSxDQUFDO0FBQ3JDLCtCQUFhLEdBQVcsRUFBRSxDQUFDO0FBQzNCLG9DQUFrQixHQUFXLEVBQUUsQ0FBQztBQUNoQyx1Q0FBcUIsR0FBVyxFQUFFLENBQUM7QUFDbkMseUNBQXVCLEdBQVcsRUFBRSxDQUFDO0FBQ3JDLHVDQUFxQixHQUFXLEVBQUUsQ0FBQztBQUNuQyx3Q0FBc0IsR0FBVyxFQUFFLENBQUM7QUFDcEMseUNBQXVCLEdBQVcsRUFBRSxDQUFDO0FBQ3JDLG9DQUFrQixHQUFXLEVBQUUsQ0FBQztBQUNoQyxvQ0FBa0IsR0FBVyxFQUFFLENBQUM7QUFDaEMsbUNBQWlCLEdBQVcsRUFBRSxDQUFDO0FBQy9CLG1DQUFpQixHQUFXLEVBQUUsQ0FBQztBQUMvQixrQ0FBZ0IsR0FBVyxFQUFFLENBQUM7QUFDOUIsK0JBQWEsR0FBVyxFQUFFLENBQUM7QUFDM0IsNkJBQVcsR0FBVyxFQUFFLENBQUM7QUFDekIsZ0NBQWMsR0FBVyxFQUFFLENBQUM7QUFDNUIsZ0NBQWMsR0FBVyxFQUFFLENBQUM7QUFDNUIscUNBQW1CLEdBQVcsRUFBRSxDQUFDO0FBQ2pDLG1DQUFpQixHQUFXLEVBQUUsQ0FBQztBQUMvQix3Q0FBc0IsR0FBVyxFQUFFLENBQUM7QUFDcEMsK0JBQWEsR0FBVyxFQUFFLENBQUM7QUFDM0Isb0NBQWtCLEdBQVcsRUFBRSxDQUFDO0FBQ2hDLG9DQUFrQixHQUFXLEVBQUUsQ0FBQztBQUNoQyxtQ0FBaUIsR0FBVyxFQUFFLENBQUM7QUFDL0IsbUNBQWlCLEdBQVcsRUFBRSxDQUFDO0FBQy9CLG9DQUFrQixHQUFXLEVBQUUsQ0FBQztBQUNoQyxvQ0FBa0IsR0FBVyxFQUFFLENBQUM7QUFDaEMsb0NBQWtCLEdBQVcsRUFBRSxDQUFDO0FBQ2hDLG9DQUFrQixHQUFXLEVBQUUsQ0FBQztBQUNoQyxvQ0FBa0IsR0FBVyxFQUFFLENBQUM7QUFDaEMsb0NBQWtCLEdBQVcsRUFBRSxDQUFDO0FBQ2hDLG9DQUFrQixHQUFXLEVBQUUsQ0FBQztBQUNoQyxvQ0FBa0IsR0FBVyxFQUFFLENBQUM7QUFDaEMsb0NBQWtCLEdBQVcsRUFBRSxDQUFDO0FBQ2hDLG9DQUFrQixHQUFXLEVBQUUsQ0FBQztBQUNoQyxvQ0FBa0IsR0FBVyxFQUFFLENBQUM7QUFDaEMsb0NBQWtCLEdBQVcsRUFBRSxDQUFDO0FBQ2hDLHFDQUFtQixHQUFXLEVBQUUsQ0FBQztBQUNqQyxxQ0FBbUIsR0FBVyxFQUFFLENBQUM7QUFDakMsdUNBQXFCLEdBQVcsRUFBRSxDQUFDO0FBQ25DLG1DQUFpQixHQUFXLEVBQUUsQ0FBQztBQUMvQixtQ0FBaUIsR0FBVyxFQUFFLENBQUM7QUFDL0Isb0NBQWtCLEdBQVcsRUFBRSxDQUFDO0FBQ2hDLG9DQUFrQixHQUFXLEVBQUUsQ0FBQztBQUNoQyxvQ0FBa0IsR0FBVyxFQUFFLENBQUM7QUFDaEMsb0NBQWtCLEdBQVcsRUFBRSxDQUFDO0FBQ2hDLG9DQUFrQixHQUFXLEVBQUUsQ0FBQztBQUNoQyxvQ0FBa0IsR0FBVyxFQUFFLENBQUM7QUFDaEMsb0NBQWtCLEdBQVcsRUFBRSxDQUFDO0FBQ2hDLG9DQUFrQixHQUFXLEVBQUUsQ0FBQztBQUNoQyxtQ0FBaUIsR0FBVyxFQUFFLENBQUM7QUFDL0IsbUNBQWlCLEdBQVcsRUFBRSxDQUFDO0FBQy9CLGlDQUFlLEdBQVcsRUFBRSxDQUFDO0FBQzdCLG1DQUFpQixHQUFXLEVBQUUsQ0FBQztBQUMvQixvQ0FBa0IsR0FBVyxFQUFFLENBQUM7QUFFaEMsZ0NBQWMsR0FBVyxFQUFFLENBQUM7QUFDNUIsa0NBQWdCLEdBQVcsRUFBRSxDQUFDO0FBQzlCLHNDQUFvQixHQUFXLEVBQUUsQ0FBQztBQUNsQyxpQ0FBZSxHQUFXLEVBQUUsQ0FBQztBQUM3QixvQ0FBa0IsR0FBVyxFQUFFLENBQUM7QUFDaEMsOEJBQVksR0FBVyxFQUFFLENBQUM7QUFDMUIsOEJBQVksR0FBVyxFQUFFLENBQUM7QUFDMUIsK0JBQWEsR0FBVyxFQUFFLENBQUM7QUFDM0IsaUNBQWUsR0FBVyxFQUFFLENBQUM7QUFDN0IscUNBQW1CLEdBQVcsRUFBRSxDQUFDO0FBQ2pDLGlDQUFlLEdBQVcsRUFBRSxDQUFDO0FBQzdCLHNDQUFvQixHQUFXLEVBQUUsQ0FBQztBQUNsQyxxQ0FBbUIsR0FBVyxFQUFFLENBQUM7QUFDakMsdUNBQXFCLEdBQVcsRUFBRSxDQUFDO0FBQ25DLHFDQUFtQixHQUFXLEVBQUUsQ0FBQztBQUNqQywwQ0FBd0IsR0FBVyxFQUFFLENBQUM7QUFDdEMsc0NBQW9CLEdBQVcsRUFBRSxDQUFDO0FBQ2xDLHVDQUFxQixHQUFXLEdBQUcsQ0FBQztBQUNwQyx1Q0FBcUIsR0FBVyxHQUFHLENBQUM7QUFDcEMsb0NBQWtCLEdBQVcsR0FBRyxDQUFDO0FBQ2pDLG9DQUFrQixHQUFXLEdBQUcsQ0FBQztBQUNqQyxrQ0FBZ0IsR0FBVyxHQUFHLENBQUM7QUFDL0IsbUNBQWlCLEdBQVcsR0FBRyxDQUFDO0FBQ2hDLDBDQUF3QixHQUFXLEdBQUcsQ0FBQztBQUN2Qyx5Q0FBdUIsR0FBVyxHQUFHLENBQUM7QUFDdEMsOEJBQVksR0FBVyxHQUFHLENBQUM7QUFDM0Isa0NBQWdCLEdBQVcsR0FBRyxDQUFDO0FBQy9CLGtDQUFnQixHQUFXLEdBQUcsQ0FBQztBQUMvQiw2QkFBVyxHQUFXLEdBQUcsQ0FBQztBQUMxQix3Q0FBc0IsR0FBVyxHQUFHLENBQUM7QUFDckMscUNBQW1CLEdBQVcsR0FBRyxDQUFDO0FBQ2xDLHFDQUFtQixHQUFXLEdBQUcsQ0FBQztBQUNsQyx3Q0FBc0IsR0FBVyxHQUFHLENBQUM7QUFDckMsd0NBQXNCLEdBQVcsR0FBRyxDQUFDO0FBQ3JDLHlDQUF1QixHQUFXLEdBQUcsQ0FBQztBQUN0QyxzQ0FBb0IsR0FBVyxHQUFHLENBQUM7QUFDbkMsdUNBQXFCLEdBQVcsR0FBRyxDQUFDO0FBQ3BDLHVDQUFxQixHQUFXLEdBQUcsQ0FBQztBQUNwQyxtQ0FBaUIsR0FBVyxHQUFHLENBQUM7QUFDaEMsa0NBQWdCLEdBQVcsR0FBRyxDQUFDO0FBQy9CLG9DQUFrQixHQUFXLEdBQUcsQ0FBQztBQUNqQyxxQ0FBbUIsR0FBVyxHQUFHLENBQUM7QUFDbEMsdUNBQXFCLEdBQVcsR0FBRyxDQUFDO0FBQ3BDLHlDQUF1QixHQUFXLEdBQUcsQ0FBQztBQUN0Qyx1Q0FBcUIsR0FBVyxHQUFHLENBQUM7QUFDcEMsb0NBQWtCLEdBQVcsR0FBRyxDQUFDO0FBQ2pDLDBDQUF3QixHQUFXLEdBQUcsQ0FBQztBQUN2QyxtQ0FBaUIsR0FBVyxHQUFHLENBQUM7QUFDaEMsaUNBQWUsR0FBVyxHQUFHLENBQUM7QUFDOUIsc0NBQW9CLEdBQVcsR0FBRyxDQUFDO0FBQ25DLHVDQUFxQixHQUFXLEdBQUcsQ0FBQztBQUNwQyxvQ0FBa0IsR0FBVyxHQUFHLENBQUM7QUFDakMseUNBQXVCLEdBQVcsR0FBRyxDQUFDO0FBQ3RDLDZCQUFXLEdBQVcsR0FBRyxDQUFDO0FBQzFCLDhCQUFZLEdBQVcsR0FBRyxDQUFDO0FBQzNCLDRCQUFVLEdBQVcsR0FBRyxDQUFDO0FBQ3pCLCtCQUFhLEdBQVcsR0FBRyxDQUFDO0FBQzVCLHlDQUF1QixHQUFXLEdBQUcsQ0FBQztBQUN0Qyx5Q0FBdUIsR0FBVyxHQUFHLENBQUM7QUFDdEMscUNBQW1CLEdBQVcsR0FBRyxDQUFDO0FBQ2xDLHdDQUFzQixHQUFXLEdBQUcsQ0FBQztBQUNyQyx3Q0FBc0IsR0FBVyxHQUFHLENBQUM7QUFDckMsc0NBQW9CLEdBQVcsR0FBRyxDQUFDO0FBQ25DLHdDQUFzQixHQUFXLEdBQUcsQ0FBQztBQUNyQyx1Q0FBcUIsR0FBVyxHQUFHLENBQUM7QUFDcEMsc0NBQW9CLEdBQVcsR0FBRyxDQUFDO0FBQ25DLG1DQUFpQixHQUFXLEdBQUcsQ0FBQztBQUNoQyw2QkFBVyxHQUFXLEdBQUcsQ0FBQztBQUMxQiw4QkFBWSxHQUFXLEdBQUcsQ0FBQztBQUMzQixtQ0FBaUIsR0FBVyxHQUFHLENBQUM7QUFDaEMsK0JBQWEsR0FBVyxHQUFHLENBQUM7QUFDNUIsc0NBQW9CLEdBQVcsR0FBRyxDQUFDO0FBQ25DLG1DQUFpQixHQUFXLEdBQUcsQ0FBQztBQUNoQyx3Q0FBc0IsR0FBVyxHQUFHLENBQUM7QUFDckMsb0NBQWtCLEdBQVcsR0FBRyxDQUFDO0FBQ2pDLHNDQUFvQixHQUFXLEdBQUcsQ0FBQztBQUNuQyxxQ0FBbUIsR0FBVyxHQUFHLENBQUM7QUFDbEMsd0NBQXNCLEdBQVcsR0FBRyxDQUFDO0FBQ3JDLHVDQUFxQixHQUFXLEdBQUcsQ0FBQztBQUNwQyxpQ0FBZSxHQUFXLEdBQUcsQ0FBQztBQUM5Qix1Q0FBcUIsR0FBVyxHQUFHLENBQUM7QUFDcEMsa0NBQWdCLEdBQVcsR0FBRyxDQUFDO0FBQy9CLHNDQUFvQixHQUFXLEdBQUcsQ0FBQztBQUNuQyw4QkFBWSxHQUFXLEdBQUcsQ0FBQztBQUMzQix1Q0FBcUIsR0FBVyxHQUFHLENBQUM7QUFDcEMsMkJBQVMsR0FBVyxHQUFHLENBQUM7QUFDeEIsMENBQXdCLEdBQVcsR0FBRyxDQUFDO0FBQ3ZDLHFDQUFtQixHQUFXLEdBQUcsQ0FBQztBQUNsQyxvQ0FBa0IsR0FBVyxHQUFHLENBQUM7QUFDakMscUNBQW1CLEdBQVcsR0FBRyxDQUFDO0FBQ2xDLG9DQUFrQixHQUFXLEdBQUcsQ0FBQztBQUNqQyxvQ0FBa0IsR0FBVyxHQUFHLENBQUM7QUFDakMscUNBQW1CLEdBQVcsR0FBRyxDQUFDO0FBQ2xDLDBDQUF3QixHQUFXLEdBQUcsQ0FBQztBQUN2Qyw2QkFBVyxHQUFXLEdBQUcsQ0FBQztBQUMxQixxQ0FBbUIsR0FBVyxHQUFHLENBQUM7QUFDbEMsc0NBQW9CLEdBQVcsR0FBRyxDQUFDO0FBQ25DLG1DQUFpQixHQUFXLEdBQUcsQ0FBQztBQUNoQyxvQ0FBa0IsR0FBVyxHQUFHLENBQUM7QUFDakMsc0NBQW9CLEdBQVcsR0FBRyxDQUFDO0FBQ25DLG1DQUFpQixHQUFXLEdBQUcsQ0FBQztBQUNoQyw0QkFBVSxHQUFXLEdBQUcsQ0FBQztBQUN6QixzQ0FBb0IsR0FBVyxHQUFHLENBQUM7QUFDbkMsb0NBQWtCLEdBQVcsR0FBRyxDQUFDO0FBQ2pDLHlDQUF1QixHQUFXLEdBQUcsQ0FBQztBQUN0QywrQkFBYSxHQUFXLEdBQUcsQ0FBQztBQUU1QiwrQkFBYSxHQUFXLEdBQUcsQ0FBQztBQUM1QiwrQkFBYSxHQUFXLEdBQUcsQ0FBQztBQUM1QixzQ0FBb0IsR0FBVyxHQUFHLENBQUM7QUFDbkMsc0NBQW9CLEdBQVcsR0FBRyxDQUFDO0FBQ25DLHNDQUFvQixHQUFXLEdBQUcsQ0FBQztBQUNuQyxzQ0FBb0IsR0FBVyxHQUFHLENBQUM7QUFDbkMsc0NBQW9CLEdBQVcsR0FBRyxDQUFDO0FBQ25DLHNDQUFvQixHQUFXLEdBQUcsQ0FBQztBQUNuQyxzQ0FBb0IsR0FBVyxHQUFHLENBQUM7QUFDbkMsc0NBQW9CLEdBQVcsR0FBRyxDQUFDO0FBQ25DLHNDQUFvQixHQUFXLEdBQUcsQ0FBQztBQUNuQyx1Q0FBcUIsR0FBVyxHQUFHLENBQUM7QUFDcEMsdUNBQXFCLEdBQVcsR0FBRyxDQUFDO0FBQ3BDLHVDQUFxQixHQUFXLEdBQUcsQ0FBQztBQUNwQyx1Q0FBcUIsR0FBVyxHQUFHLENBQUM7QUFDcEMsdUNBQXFCLEdBQVcsR0FBRyxDQUFDO0FBQ3BDLHVDQUFxQixHQUFXLEdBQUcsQ0FBQztBQUNwQyx1Q0FBcUIsR0FBVyxHQUFHLENBQUM7QUFDcEMsdUNBQXFCLEdBQVcsR0FBRyxDQUFDO0FBQ3BDLHVDQUFxQixHQUFXLEdBQUcsQ0FBQztBQUNwQyx1Q0FBcUIsR0FBVyxHQUFHLENBQUM7QUFDcEMsdUNBQXFCLEdBQVcsR0FBRyxDQUFDO0FBQ3BDLGtDQUFnQixHQUFXLEdBQUcsQ0FBQztBQUMvQixtQ0FBaUIsR0FBVyxHQUFHLENBQUM7QUFFaEMsaUNBQWUsR0FBVyxHQUFHLENBQUM7QUFDOUIsb0NBQWtCLEdBQVcsR0FBRyxDQUFDO0FBQ2pDLG9DQUFrQixHQUFXLEdBQUcsQ0FBQztBQUNqQyw0QkFBVSxHQUFXLEdBQUcsQ0FBQztBQUN6QixzQ0FBb0IsR0FBVyxHQUFHLENBQUM7QUFDbkMsbUNBQWlCLEdBQVcsR0FBRyxDQUFDO0FBQ2hDLDBDQUF3QixHQUFXLEdBQUcsQ0FBQztBQUN2QyxnQ0FBYyxHQUFXLEdBQUcsQ0FBQztBQUM3QixnQ0FBYyxHQUFXLEdBQUcsQ0FBQztBQUM3QixrQ0FBZ0IsR0FBVyxHQUFHLENBQUM7QUFDL0IsaUNBQWUsR0FBVyxHQUFHLENBQUM7QUFDOUIsb0NBQWtCLEdBQVcsR0FBRyxDQUFDO0FBQ2pDLG9DQUFrQixHQUFXLEdBQUcsQ0FBQztBQUNqQyxpQ0FBZSxHQUFXLEdBQUcsQ0FBQztBQUM5QixtQ0FBaUIsR0FBVyxHQUFHLENBQUM7QUFDaEMsb0NBQWtCLEdBQVcsR0FBRyxDQUFDO0FBQ2pDLCtCQUFhLEdBQVcsR0FBRyxDQUFDO0FBQzVCLHNDQUFvQixHQUFXLEdBQUcsQ0FBQztBQUNuQyx5Q0FBdUIsR0FBVyxHQUFHLENBQUM7QUFDdEMsMENBQXdCLEdBQVcsR0FBRyxDQUFDO0FBQ3ZDLHNDQUFvQixHQUFXLEdBQUcsQ0FBQztBQUNuQyxpQ0FBZSxHQUFXLEdBQUcsQ0FBQztBQUM5QixtQ0FBaUIsR0FBVyxHQUFHLENBQUM7QUFDaEMsaUNBQWUsR0FBVyxHQUFHLENBQUM7QUFDOUIscUNBQW1CLEdBQVcsR0FBRyxDQUFDO0FBQ2xDLHNDQUFvQixHQUFXLEdBQUcsQ0FBQztBQUNuQywwQ0FBd0IsR0FBVyxHQUFHLENBQUM7QUFDdkMseUNBQXVCLEdBQVcsR0FBRyxDQUFDO0FBQ3RDLHNDQUFvQixHQUFXLEdBQUcsQ0FBQztBQUNuQyxpQ0FBZSxHQUFXLEdBQUcsQ0FBQztBQUM5QixzQ0FBb0IsR0FBVyxHQUFHLENBQUM7QUFDbkMsd0NBQXNCLEdBQVcsR0FBRyxDQUFDO0FBQ3JDLG9DQUFrQixHQUFXLEdBQUcsQ0FBQztBQUNqQyx5Q0FBdUIsR0FBVyxHQUFHLENBQUM7QUFDdEMsMENBQXdCLEdBQVcsR0FBRyxDQUFDO0FBQ3ZDLDBDQUF3QixHQUFXLEdBQUcsQ0FBQztBQUN2Qyx3Q0FBc0IsR0FBVyxHQUFHLENBQUM7QUFDckMsbUNBQWlCLEdBQVcsR0FBRyxDQUFDO0FBQ2hDLCtCQUFhLEdBQVcsR0FBRyxDQUFDO0FBQzVCLHNDQUFvQixHQUFXLEdBQUcsQ0FBQztBQUNuQyxrQ0FBZ0IsR0FBVyxHQUFHLENBQUM7QUFDL0IsNENBQTBCLEdBQVcsR0FBRyxDQUFDO0FBQ3pDLDRDQUEwQixHQUFXLEdBQUcsQ0FBQztBQUN6Qyw0Q0FBMEIsR0FBVyxHQUFHLENBQUM7QUFDekMsNENBQTBCLEdBQVcsR0FBRyxDQUFDO0FBQ3pDLDZDQUEyQixHQUFXLEdBQUcsQ0FBQztBQUMxQyw2Q0FBMkIsR0FBVyxHQUFHLENBQUM7QUFDMUMsNkNBQTJCLEdBQVcsR0FBRyxDQUFDO0FBQzFDLDZDQUEyQixHQUFXLEdBQUcsQ0FBQztBQUMxQyxvQ0FBa0IsR0FBVyxHQUFHLENBQUM7QUFDakMsc0NBQW9CLEdBQVcsR0FBRyxDQUFDO0FBQ25DLGtDQUFnQixHQUFXLEdBQUcsQ0FBQztBQUMvQixvQ0FBa0IsR0FBVyxHQUFHLENBQUM7QUFDakMsc0NBQW9CLEdBQVcsR0FBRyxDQUFDO0FBQ25DLHFDQUFtQixHQUFXLEdBQUcsQ0FBQztBQUNsQyx5Q0FBdUIsR0FBVyxHQUFHLENBQUM7QUFDdEMsdUNBQXFCLEdBQVcsR0FBRyxDQUFDO0FBQ3BDLDJDQUF5QixHQUFXLEdBQUcsQ0FBQztBQUN4QywrQ0FBNkIsR0FBVyxHQUFHLENBQUM7QUFDNUMsZ0RBQThCLEdBQVcsR0FBRyxDQUFDO0FBQzdDLGdEQUE4QixHQUFXLEdBQUcsQ0FBQztBQUM3QyxpQ0FBZSxHQUFXLEdBQUcsQ0FBQztBQUM5QixnQ0FBYyxHQUFXLEdBQUcsQ0FBQztBQUU3Qiw0Q0FBMEIsR0FBVyxHQUFHLENBQUM7QUFDekMsMkNBQXlCLEdBQVcsR0FBRyxDQUFDO0FBQ3hDLHdDQUFzQixHQUFXLEdBQUcsQ0FBQztBQUNyQyxxQ0FBbUIsR0FBVyxHQUFHLENBQUM7QUFDbEMsdUNBQXFCLEdBQVcsR0FBRyxDQUFDO0FBQ3BDLHVDQUFxQixHQUFXLEdBQUcsQ0FBQztBQUNwQyx1Q0FBcUIsR0FBVyxHQUFHLENBQUM7QUFDcEMsdUNBQXFCLEdBQVcsR0FBRyxDQUFDO0FBQ3BDLGdEQUE4QixHQUFXLEdBQUcsQ0FBQztBQUM3QyxvQ0FBa0IsR0FBVyxHQUFHLENBQUM7QUFDakMsb0NBQWtCLEdBQVcsR0FBRyxDQUFDO0FBQ2pDLHFDQUFtQixHQUFXLEdBQUcsQ0FBQztBQUNsQyxrQ0FBZ0IsR0FBVyxHQUFHLENBQUM7QUFDL0IsK0NBQTZCLEdBQVcsR0FBRyxDQUFDO0FBQzVDLHdDQUFzQixHQUFXLEdBQUcsQ0FBQztBQUNyQywyQ0FBeUIsR0FBVyxHQUFHLENBQUM7QUFDeEMsZ0RBQThCLEdBQVcsR0FBRyxDQUFDO0FBQzdDLDZDQUEyQixHQUFXLEdBQUcsQ0FBQztBQUMxQyw4QkFBWSxHQUFXLEdBQUcsQ0FBQztBQUMzQix1Q0FBcUIsR0FBVyxHQUFHLENBQUM7QUFDcEMsNkNBQTJCLEdBQVcsR0FBRyxDQUFDO0FBQzFDLHNEQUFvQyxHQUFXLEdBQUcsQ0FBQztBQUNuRCwwQ0FBd0IsR0FBVyxHQUFHLENBQUM7QUFDdkMsMkNBQXlCLEdBQVcsR0FBRyxDQUFDO0FBQ3hDLHNEQUFvQyxHQUFXLEdBQUcsQ0FBQztBQUNuRCxzQ0FBb0IsR0FBVyxHQUFHLENBQUM7QUFDbkMsa0RBQWdDLEdBQVcsR0FBRyxDQUFDO0FBQy9DLDJDQUF5QixHQUFXLEdBQUcsQ0FBQztBQUN4QyxrREFBZ0MsR0FBVyxHQUFHLENBQUM7QUFDL0MsbUNBQWlCLEdBQVcsR0FBRyxDQUFDO0FBQ2hDLHFDQUFtQixHQUFXLEdBQUcsQ0FBQztBQUNsQyx3Q0FBc0IsR0FBVyxHQUFHLENBQUM7QUFDckMsMENBQXdCLEdBQVUsR0FBRyxDQUFDO0FBQ3RDLHNDQUFvQixHQUFXLEdBQUcsQ0FBQztBQUNuQywyQ0FBeUIsR0FBVyxHQUFHLENBQUM7QUFFeEMsc0NBQW9CLEdBQVcsR0FBRyxDQUFDO0FBQ25DLDRDQUEwQixHQUFXLEdBQUcsQ0FBQztBQUN6Qyw4Q0FBNEIsR0FBVyxHQUFHLENBQUM7QUFFM0MsZ0NBQWMsR0FBVSxHQUFHLENBQUM7QUFFNUMsc0JBQXNCO0FBQ04sb0NBQWtCLEdBQVcsSUFBSSxDQUFDO0FBQ2xDLG9DQUFrQixHQUFXLElBQUksQ0FBQztBQUNsQyxtQ0FBaUIsR0FBVyxJQUFJLENBQUM7QUFDakMsbUNBQWlCLEdBQVcsSUFBSSxDQUFDO0FBQ2pDLG9DQUFrQixHQUFXLElBQUksQ0FBQztBQUNsQyxvQ0FBa0IsR0FBVyxJQUFJLENBQUM7QUFDbEMsMENBQXdCLEdBQVcsSUFBSSxDQUFDO0FBQ3hDLGlDQUFlLEdBQVcsSUFBSSxDQUFDO0FBQy9CLHFDQUFtQixHQUFXLElBQUksQ0FBQztBQUNuQyx3Q0FBc0IsR0FBVyxJQUFJLENBQUM7QUFDdEMsbUNBQWlCLEdBQVcsSUFBSSxDQUFDO0FBQ2pDLG1DQUFpQixHQUFXLElBQUksQ0FBQztBQUNqQyx1Q0FBcUIsR0FBVyxJQUFJLENBQUM7QUFDckMsOENBQTRCLEdBQVcsSUFBSSxDQUFDO0FBQzVDLGdDQUFjLEdBQVcsSUFBSSxDQUFDO0FBQzlCLDhCQUFZLEdBQVcsSUFBSSxDQUFDO0FBRTVDLGdDQUFnQztBQUNoQixtQ0FBaUIsR0FBVyxJQUFJLENBQUM7QUFDakMscUNBQW1CLEdBQVcsSUFBSSxDQUFDO0FBQ25DLHFDQUFtQixHQUFXLElBQUksQ0FBQztBQUNuQyw4QkFBWSxHQUFXLElBQUksQ0FBQztBQUM1QixrQ0FBZ0IsR0FBVyxJQUFJLENBQUM7QUFDaEMsK0JBQWEsR0FBVyxJQUFJLENBQUM7QUFDN0IsMkNBQXlCLEdBQVcsSUFBSSxDQUFDO0FBQ3pDLGtDQUFnQixHQUFXLElBQUksQ0FBQztBQUNoQyx1Q0FBcUIsR0FBVyxJQUFJLENBQUM7QUFDckQsMEZBQTBGO0FBQzFFLHNDQUFvQixHQUFXLElBQUksQ0FBQztBQUVwQywyQ0FBeUIsR0FBVyxJQUFJLENBQUM7QUFDekMsMkNBQXlCLEdBQVcsSUFBSSxDQUFDO0FBQ3pDLDJDQUF5QixHQUFXLElBQUksQ0FBQztBQUN6Qyx3REFBc0MsR0FBVyxJQUFJLENBQUM7QUFDdEQsd0RBQXNDLEdBQVcsSUFBSSxDQUFDLENBQUMsNEZBQTRGIiwic291cmNlc0NvbnRlbnQiOlsiLy8vIDxzdW1tYXJ5PiB0aGlzIGludGVyZmFjZSBkZWZpbmVzIHRoZSBpbnRlcm5hbCBldmVudHMgY29kZXM8L3N1bW1hcnk+XHJcbmV4cG9ydCBjbGFzcyBJbnRlcm5hbEludGVyZmFjZSB7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9OT05FOiBudW1iZXIgPSAwO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ0hBUjogbnVtYmVyID0gMTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX09MRTI6IG51bWJlciA9IDM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfTUFSS1BSVkNIOiBudW1iZXIgPSA0O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRURUX01BUktOWFRDSDogbnVtYmVyID0gNTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VEVF9NQVJLVE9CRUc6IG51bWJlciA9IDY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfTUFSS1RPRU5EOiBudW1iZXIgPSA3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTUVOVV9CQVI6IG51bWJlciA9IDg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfQkVHRkxEOiBudW1iZXIgPSA5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRURUX0VOREZMRDogbnVtYmVyID0gMTA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DVVQ6IG51bWJlciA9IDExO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ0xPU0U6IG51bWJlciA9IDEzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRVhJVDogbnVtYmVyID0gMTQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9ESVNQTEFZX1JFRlJFU0g6IG51bWJlciA9IDE1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUkVTVE9SRV9ERUZBVUxUUzogbnVtYmVyID0gMTY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9CVVRUT046IG51bWJlciA9IDE4O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfSlVNUF9UT19ST1c6IG51bWJlciA9IDE5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ09NTVVOSUNBVElPTlM6IG51bWJlciA9IDIyO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfT1BFTl9BUFBMSUNBVElPTjogbnVtYmVyID0gMjM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9BQ1RfQ0xPU0VfQVBQTDogbnVtYmVyID0gMjQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UT09MS0lUX1JVTlRJTUU6IG51bWJlciA9IDI1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfS0VZQk9BUkRfTUFQUElORzogbnVtYmVyID0gMjY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9TSEVMTF9UT19PUzogbnVtYmVyID0gMjc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FWElUX1NZU1RFTTogbnVtYmVyID0gMjg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9SVE9fTU9ESUZZOiBudW1iZXIgPSAzMDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JUT19DUkVBVEU6IG51bWJlciA9IDMxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUlRPX1FVRVJZOiBudW1iZXIgPSAzMjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NBTkNFTDogbnVtYmVyID0gMzM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9aT09NOiBudW1iZXIgPSAzNDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0RFTExJTkU6IG51bWJlciA9IDM2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ1JFTElORTogbnVtYmVyID0gMzc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9SRVBFQVRfRU5UUlk6IG51bWJlciA9IDM5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTU9WRV9FTlRSWTogbnVtYmVyID0gNDA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9PVkVSV1JJVEVfRU5UUlk6IG51bWJlciA9IDQxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfU0VMRUNUOiBudW1iZXIgPSA0MjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VEVF9QUlZDSEFSOiBudW1iZXIgPSA0MztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VEVF9OWFRDSEFSOiBudW1iZXIgPSA0NDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VEVF9QUlZUQUI6IG51bWJlciA9IDQ1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRURUX05YVFRBQjogbnVtYmVyID0gNDY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfUFJWV09SRDogbnVtYmVyID0gNDc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfTlhUV09SRDogbnVtYmVyID0gNDg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfUFJWTElORTogbnVtYmVyID0gNDk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfTlhUTElORTogbnVtYmVyID0gNTA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfUFJWUEFHRTogbnVtYmVyID0gNTE7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfTlhUUEFHRTogbnVtYmVyID0gNTI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfQkVHTElORTogbnVtYmVyID0gNTM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfRU5ETElORTogbnVtYmVyID0gNTQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfQkVHUEFHRTogbnVtYmVyID0gNTU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfRU5EUEFHRTogbnVtYmVyID0gNTY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfQkVHRk9STTogbnVtYmVyID0gNTc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfRU5ERk9STTogbnVtYmVyID0gNTg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfREVMQ1VSQ0g6IG51bWJlciA9IDU5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRURUX0RFTFBSVkNIOiBudW1iZXIgPSA2MDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VEVF9CRUdOWFRMSU5FOiBudW1iZXIgPSA2MTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RCTF9QUlZGTEQ6IG51bWJlciA9IDYyO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVEJMX05YVEZMRDogbnVtYmVyID0gNjM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQkxfUFJWTElORTogbnVtYmVyID0gNjQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQkxfTlhUTElORTogbnVtYmVyID0gNjU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQkxfUFJWUEFHRTogbnVtYmVyID0gNjY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQkxfTlhUUEFHRTogbnVtYmVyID0gNjc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQkxfQkVHTElORTogbnVtYmVyID0gNjg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQkxfRU5ETElORTogbnVtYmVyID0gNjk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQkxfQkVHUEFHRTogbnVtYmVyID0gNzA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQkxfRU5EUEFHRTogbnVtYmVyID0gNzE7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQkxfQkVHVEJMOiBudW1iZXIgPSA3MjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RCTF9FTkRUQkw6IG51bWJlciA9IDczO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVEFCX05FWFQ6IG51bWJlciA9IDc1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUlRfQ09QWUZMRDogbnVtYmVyID0gNzc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FTlZJUk9OTUVOVDogbnVtYmVyID0gNzg7XHJcblxyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfU0VSVkVSUzogbnVtYmVyID0gODA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9EQVRBQkFTRVM6IG51bWJlciA9IDgxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTE9HSUNBTFBOQU1FUzogbnVtYmVyID0gODI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9QUklOVEVSUzogbnVtYmVyID0gODM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQVNLX0VWRU5UUzogbnVtYmVyID0gODU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9NRU5VUzogbnVtYmVyID0gODY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UWVBFUzogbnVtYmVyID0gODc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQUJMRVM6IG51bWJlciA9IDg4O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUFJPR1JBTVM6IG51bWJlciA9IDg5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfSEVMUF9TQ1JFRU5TOiBudW1iZXIgPSA5MDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1VTRVJfSURTOiBudW1iZXIgPSA5MTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VYUE9SVF9JTVBPUlQ6IG51bWJlciA9IDkzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTUFSS19TVUJUUkVFOiBudW1iZXIgPSA5NTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JFUEVBVF9TVUJUUkVFOiBudW1iZXIgPSA5NjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX01PVkVfU1VCVFJFRTogbnVtYmVyID0gOTc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9PVkVSV1JJVEVfU1VCVFJFRTogbnVtYmVyID0gOTg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DUkVBVEVfUEFSRU5UOiBudW1iZXIgPSA5OTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NSRUFURV9TVUJUQVNLOiBudW1iZXIgPSAxMDA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9ERUxFVEVfU1VCVFJFRTogbnVtYmVyID0gMTAxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRVhQQU5EX1RSRUU6IG51bWJlciA9IDEwMztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NIUklOS19UUkVFOiBudW1iZXIgPSAxMDQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9BVVRIT1JJWkU6IG51bWJlciA9IDEwNTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1BST1BFUlRJRVM6IG51bWJlciA9IDEwNjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1ZJUlRVQUxfVkFSSUFCTEVTOiBudW1iZXIgPSAxMDc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FWFBSRVNTSU9OX1JVTEVTOiBudW1iZXIgPSAxMDg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9GT1JNUzogbnVtYmVyID0gMTA5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfREJfVEFCTEVTOiBudW1iZXIgPSAxMTA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9JX09fRklMRVM6IG51bWJlciA9IDExMTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NPUlQ6IG51bWJlciA9IDExMjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VEVF9NQVJLUFJWTElORTogbnVtYmVyID0gMTEzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVEFTS19DT05UUk9MOiBudW1iZXIgPSAxMTQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DSEVDS19TWU5UQVg6IG51bWJlciA9IDExNTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VYRUNVVEVfUFJPR1JBTTogbnVtYmVyID0gMTE2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ1JPU1NfUkVGRVJFTkNFOiBudW1iZXIgPSAxMTc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9HRU5FUkFURV9QUk9HUkFNOiBudW1iZXIgPSAxMTg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9HRU5FUkFURV9GT1JNOiBudW1iZXIgPSAxMTk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRElUX01BSU5fRk9STTogbnVtYmVyID0gMTIwO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTUFSS19ORVhUX0xJTkU6IG51bWJlciA9IDEyMTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JUT19MT0NBVEU6IG51bWJlciA9IDEyMjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JUT19SQU5HRTogbnVtYmVyID0gMTIzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVklFV19CWV9LRVk6IG51bWJlciA9IDEyNDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NPUlRfUkVDT1JEUzogbnVtYmVyID0gMTI1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUkVESVJFQ1RfRklMRVM6IG51bWJlciA9IDEyNjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JFUE9SVF9HRU5FUkFUT1I6IG51bWJlciA9IDEyNztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NMRUFSX1RFTVBMQVRFOiBudW1iZXIgPSAxMjg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DTEVBUl9WQUxVRTogbnVtYmVyID0gMTI5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfREVGSU5FX0VYUFJFU1NJT046IG51bWJlciA9IDEzMDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0ZST01fVkFMVUU6IG51bWJlciA9IDEzMTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RPX1ZBTFVFOiBudW1iZXIgPSAxMzI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9SRURSQVdfTEFZT1VUOiBudW1iZXIgPSAxMzQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9ERUZBVUxUX0xBWU9VVDogbnVtYmVyID0gMTM1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ09QWV9MQVlPVVQ6IG51bWJlciA9IDEzNjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NIT1dfRlVMTF9MQVlPVVQ6IG51bWJlciA9IDEzNztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0xFRlQ6IG51bWJlciA9IDEzODtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JJR0hUOiBudW1iZXIgPSAxMzk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UT1A6IG51bWJlciA9IDE0MDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0JPVFRPTTogbnVtYmVyID0gMTQxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfSF9DRU5URVJfT0ZfRk9STTogbnVtYmVyID0gMTQyO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVl9DRU5URVJfT0ZfRk9STTogbnVtYmVyID0gMTQzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfSE9SSVpfQ0VOVEVSOiBudW1iZXIgPSAxNDQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9WRVJUSUNBTF9DRU5URVI6IG51bWJlciA9IDE0NTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0FUVEFDSF9UT19UQUJMRTogbnVtYmVyID0gMTQ2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTUFYSU1VTV9XSURUSDogbnVtYmVyID0gMTQ3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRVhURVJOQUxfRURJVE9SOiBudW1iZXIgPSAxNDg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9NQVhJTVVNX0hFSUdIVDogbnVtYmVyID0gMTUzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTUlOSU1VTV9XSURUSDogbnVtYmVyID0gMTU0O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNJTkdfSEVMUDogbnVtYmVyID0gMTU1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfSEVMUDogbnVtYmVyID0gMTU2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQUJPVVQ6IG51bWJlciA9IDE1NztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1BSSU5UX0RBVEE6IG51bWJlciA9IDE2MDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JJR0hUUzogbnVtYmVyID0gMTYxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUFJJTlRFUl9TRVRVUDogbnVtYmVyID0gMTYyO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUlRPX1NFQVJDSDogbnVtYmVyID0gMTY1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfU0hPV19FWFBSRVNTSU9OOiBudW1iZXIgPSAxNjY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9BQ1RJT05fTElTVDogbnVtYmVyID0gMTY3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfS0VZQk9BUkRfTElTVDogbnVtYmVyID0gMTY4O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQVBQTElDQVRJT05TOiBudW1iZXIgPSAxNzM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9BUFBMX1BST1BFUlRJRVM6IG51bWJlciA9IDE3NDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX01JTklNVU1fSEVJR0hUOiBudW1iZXIgPSAxNzY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfVU5ETzogbnVtYmVyID0gMTgwO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUkVUVVJOX1RPX1RSRUU6IG51bWJlciA9IDE4MTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0dPX1RPX1RPUDogbnVtYmVyID0gMTgyO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRlVOQ1RJT05fTElTVDogbnVtYmVyID0gMTgzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTE9HT046IG51bWJlciA9IDE4NTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VYRUNVVEVfUkVQT1JUOiBudW1iZXIgPSAxODg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9PSzogbnVtYmVyID0gMTg5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQVBQTElDQVRJT05TX0xJU1Q6IG51bWJlciA9IDE5MTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NFQ1JFVF9OQU1FUzogbnVtYmVyID0gMTkyO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUklHSFRTX0xJU1Q6IG51bWJlciA9IDE5MztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NIRUNLX1RPX0VORDogbnVtYmVyID0gMTk0O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfU1FMX0NPTU1BTkQ6IG51bWJlciA9IDE5NTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1VTRVJfR1JPVVBTOiBudW1iZXIgPSAxOTY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQUJMRV9MT0NBVEU6IG51bWJlciA9IDE5NztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RBQkxFX0xPQ0FURV9ORVhUOiBudW1iZXIgPSAxOTg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9EQk1TOiBudW1iZXIgPSAxOTk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9TUUxfS0VZV09SRFM6IG51bWJlciA9IDIwMTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NRTF9PUEVSQVRPUlM6IG51bWJlciA9IDIwMjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NRTF9UQUJMRVM6IG51bWJlciA9IDIwMztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NRTF9DT0xVTU5TOiBudW1iZXIgPSAyMDQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9TUUxfRkxJUF9ERVNDOiBudW1iZXIgPSAyMDU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9TUUxfQVNTSVNUOiBudW1iZXIgPSAyMDY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9QUEQ6IG51bWJlciA9IDIwNztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX05VTExfU0VUVElOR1M6IG51bWJlciA9IDIwODtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JUX0VEVF9OVUxMOiBudW1iZXIgPSAyMDk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9QUklOVF9BVFRSSUJVVEVTOiBudW1iZXIgPSAyMTE7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9OT1JNQUw6IG51bWJlciA9IDIxMjtcclxuXHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9JTkRFTlQ6IG51bWJlciA9IDIxNTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0JVTExFVDogbnVtYmVyID0gMjE2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fMTogbnVtYmVyID0gMjE5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fMjogbnVtYmVyID0gMjIwO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fMzogbnVtYmVyID0gMjIxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fNDogbnVtYmVyID0gMjIyO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fNTogbnVtYmVyID0gMjIzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fNjogbnVtYmVyID0gMjI0O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fNzogbnVtYmVyID0gMjI1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fODogbnVtYmVyID0gMjI2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fOTogbnVtYmVyID0gMjI3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fMTA6IG51bWJlciA9IDIyODtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1VTRVJfQUNUSU9OXzExOiBudW1iZXIgPSAyMjk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9VU0VSX0FDVElPTl8xMjogbnVtYmVyID0gMjMwO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fMTM6IG51bWJlciA9IDIzMTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1VTRVJfQUNUSU9OXzE0OiBudW1iZXIgPSAyMzI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9VU0VSX0FDVElPTl8xNTogbnVtYmVyID0gMjMzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fMTY6IG51bWJlciA9IDIzNDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1VTRVJfQUNUSU9OXzE3OiBudW1iZXIgPSAyMzU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9VU0VSX0FDVElPTl8xODogbnVtYmVyID0gMjM2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fMTk6IG51bWJlciA9IDIzNztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1VTRVJfQUNUSU9OXzIwOiBudW1iZXIgPSAyMzg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DTElQX0NPUFk6IG51bWJlciA9IDIzOTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NMSVBfUEFTVEU6IG51bWJlciA9IDI0MDtcclxuXHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DVFJMX0hJVDogbnVtYmVyID0gMjQyO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUEFHRV9IRUFERVI6IG51bWJlciA9IDI0MztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1BBR0VfRk9PVEVSOiBudW1iZXIgPSAyNDQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9ISVQ6IG51bWJlciA9IDI0NTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0lOU0VSVF9PQkpFQ1Q6IG51bWJlciA9IDI0NjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1BBU1RFX0xJTks6IG51bWJlciA9IDI0NztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NPTlRST0xfTkFNRV9MSVNUOiBudW1iZXIgPSAyNDg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9XSU5TSVpFOiBudW1iZXIgPSAyNDk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9XSU5NT1ZFOiBudW1iZXIgPSAyNTA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9MQU5HVUFHRVM6IG51bWJlciA9IDI1MTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0RERl9NQUtFOiBudW1iZXIgPSAyNTI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9VUERBVEVfTElOSzogbnVtYmVyID0gMjUzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfSFRNTF9TVFlMRVM6IG51bWJlciA9IDI1NDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1VOSU5ERU5UOiBudW1iZXIgPSAyNTU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9BTElHTl9MRUZUOiBudW1iZXIgPSAyNTY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9BTElHTl9SSUdIVDogbnVtYmVyID0gMjU3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ0VOVEVSOiBudW1iZXIgPSAyNTg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9BRERfSFlQRVJMSU5LOiBudW1iZXIgPSAyNTk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9ERUxFVEVfSFlQRVJMSU5LOiBudW1iZXIgPSAyNjA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DSEVDS19PQkpFQ1RfTElTVDogbnVtYmVyID0gMjY1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVEJMX1BMQUNFTUVOVDogbnVtYmVyID0gMjY3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ09MX1NPUlQ6IG51bWJlciA9IDI2ODtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1VTRVJTX0xJU1Q6IG51bWJlciA9IDI2OTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NFUlZJQ0VTOiBudW1iZXIgPSAyNzA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DT1BZX1NVQlRSRUU6IG51bWJlciA9IDI3MTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1BBU1RFX1NVQlRSRUU6IG51bWJlciA9IDI3MjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1ZJU1VBTF9DT05ORUNUSU9OOiBudW1iZXIgPSAyNzM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9TUUxfV0hFUkVfQ0xBVVNFOiBudW1iZXIgPSAyNzQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9MT0NLSU5HX0FCT1JUOiBudW1iZXIgPSAyNzY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQUJfUFJFVjogbnVtYmVyID0gMjc1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTE9DS0lOR19SRVRSWTogbnVtYmVyID0gMjc3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTE9DS0lOR19ERVRBSUxTOiBudW1iZXIgPSAyNzg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfTUFSS0FMTDogbnVtYmVyID0gMjg2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTU9OSVRPUl9ERUJVR0dFUjogbnVtYmVyID0gMjg3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUlRfUkVGUkVTSF9SRUNPUkQ6IG51bWJlciA9IDI5MztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JUX1JFRlJFU0hfU0NSRUVOOiBudW1iZXIgPSAyOTQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9SVF9SRUZSRVNIX1ZJRVc6IG51bWJlciA9IDI5NTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NPTVBPTkVOVFM6IG51bWJlciA9IDI5NztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX01PREVMUzogbnVtYmVyID0gMjk5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfV0VCX09OX0RCTElDSzogbnVtYmVyID0gMzAxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfV0VCX0NMSUNLOiBudW1iZXIgPSAzMDI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9NTV9DVFJMX1RCTF9OWFRMSU5FOiBudW1iZXIgPSAzMTQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9NTV9DVFJMX1RCTF9QUlZMSU5FOiBudW1iZXIgPSAzMTU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9NTV9DVFJMX1RCTF9QUlZQQUdFOiBudW1iZXIgPSAzMTY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9NTV9DVFJMX1RCTF9OWFRQQUdFOiBudW1iZXIgPSAzMTc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9NTV9TSElGVF9UQkxfTlhUTElORTogbnVtYmVyID0gMzE4O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTU1fU0hJRlRfVEJMX1BSVkxJTkU6IG51bWJlciA9IDMxOTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX01NX1NISUZUX1RCTF9QUlZQQUdFOiBudW1iZXIgPSAzMjA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9NTV9TSElGVF9UQkxfTlhUUEFHRTogbnVtYmVyID0gMzIxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQlJPV1NFUl9FU0M6IG51bWJlciA9IDM0MDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NMT1NFX0FMTF9XSU46IG51bWJlciA9IDM3MDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VYVF9FVkVOVDogbnVtYmVyID0gMzc3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVFJFRV9FWFBBTkQ6IG51bWJlciA9IDM3ODtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RSRUVfQ09MTEFQU0U6IG51bWJlciA9IDM3OTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RSRUVfQ1JFX1NPTjogbnVtYmVyID0gMzgwO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVFJFRV9TRUxDSEFOR0lORzogbnVtYmVyID0gMzgxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVFJFRV9SRU5BTUVfUlQ6IG51bWJlciA9IDM4MjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RSRUVfTU9WRVRPX1BBUkVOVDogbnVtYmVyID0gMzgzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVFJFRV9NT1ZFVE9fRklSU1RDSElMRDogbnVtYmVyID0gMzg0O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVFJFRV9NT1ZFVE9fUFJFVlNJQkxJTkc6IG51bWJlciA9IDM4NTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RSRUVfTU9WRVRPX05FWFRTSUJMSU5HOiBudW1iZXIgPSAzODY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9ST0xMQkFDSzogbnVtYmVyID0gMzg3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUlRfUVVJVDogbnVtYmVyID0gMzkzO1xyXG5cclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RSRUVfUkVOQU1FX1JUX0VYSVQ6IG51bWJlciA9IDQxMztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NFUlZFUl9URVJNSU5BVElPTjogbnVtYmVyID0gNDIwO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfU1VCRk9STV9SRUZSRVNIOiBudW1iZXIgPSA0MzI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DT05URVhUX01FTlU6IG51bWJlciA9IDQzOTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0RFRkFVTFRfQlVUVE9OOiBudW1iZXIgPSA0NTk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9ORVhUX1JUX1dJTkRPVzogbnVtYmVyID0gNDYyO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUFJFVl9SVF9XSU5ET1c6IG51bWJlciA9IDQ2MztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VNUFRZX0RBVEFWSUVXOiBudW1iZXIgPSA1MjE7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9CUk9XU0VSX1NUU19URVhUX0NIQU5HRTogbnVtYmVyID0gNTI5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVEJMX1JFT1JERVI6IG51bWJlciA9IDUzOTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NUUkxfTU9ESUZZOiBudW1iZXIgPSA1NDQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9TVUJGT1JNX09QRU46IG51bWJlciA9IDU0NTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NPTF9DTElDSzogbnVtYmVyID0gNTU1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUE9TVF9SRUZSRVNIX0JZX1BBUkVOVDogbnVtYmVyID0gNTU5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ09NQk9fRFJPUF9ET1dOOiBudW1iZXIgPSA1NjA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9SQUlTRV9CVVRUT05fRVZFTlQ6IG51bWJlciA9IDU2MTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1VQREFURV9ETl9DT05UUk9MX1ZBTFVFOiBudW1iZXIgPSA1NjI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9HRVRfREFUQVZJRVdfQ09OVEVOVDogbnVtYmVyID0gNTYzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUFJFU1M6IG51bWJlciA9IDU2NDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX01VTFRJX01BUktfSElUOiBudW1iZXIgPSA1NjU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9EVkNPTlRST0xfUk9XX0NIQU5HRTogbnVtYmVyID0gNTY2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRFZDT05UUk9MX1VQREFURV9DT0xVTU5fVkFMVUU6IG51bWJlciA9IDU2NztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NXSVRDSF9UT19PRkZMSU5FOiBudW1iZXIgPSA1Njg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9VTkFWQUlMQUJMRV9TRVJWRVI6IG51bWJlciA9IDU2OTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1VQREFURV9EQVRBVklFV19UT19EQVRBU09VUkNFOiBudW1iZXIgPSA1NzE7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FTkFCTEVfRVZFTlRTOiBudW1iZXIgPSA1NzM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9XUklURV9FUlJPUl9UT19TRVJWRVJfTE9HOiBudW1iZXIgPSA1NzQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9PUEVOX0ZPUk1fREVTSUdORVI6IG51bWJlciA9IDU3ODtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0ZFVENIX0RBVEFfQ09OVFJPTF9WQUxVRVM6IG51bWJlciA9IDU3OTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NPTF9GSUxURVI6IG51bWJlciA9IDU4MDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0lOREVYX0NIQU5HRTogbnVtYmVyID0gNTg1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfV0VCQ0xJRU5UX1JPVVRFOiBudW1iZXIgPSA1OTQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FTlRFUl9ST1dfRURJVElORzpudW1iZXIgPSA1OTU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9TVUJGT1JNX0NMT1NFOiBudW1iZXIgPSA1OTc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9OT19QUk9HX0VYRV9SSUdIVFM6IG51bWJlciA9IDYxOTtcclxuXHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DUkVMSU5FX0FCT1ZFOiBudW1iZXIgPSA2MzQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DT05URVhUX1RFUk1JTkFUSU9OOiBudW1iZXIgPSA2MzU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DT05URVhUX1RJTUVPVVRfUkVTRVQ6IG51bWJlciA9IDYzNjtcclxuXHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UT1RfQ05UOm51bWJlciA9IDYzNztcclxuXHJcbiAgLy8gTkVXIElOVEVSTkFMIEVWRU5UU1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVEFTS19QUkVGSVg6IG51bWJlciA9IDEwMDE7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQVNLX1NVRkZJWDogbnVtYmVyID0gMTAwMjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JFQ19QUkVGSVg6IG51bWJlciA9IDEwMDM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9SRUNfU1VGRklYOiBudW1iZXIgPSAxMDA0O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ1RSTF9QUkVGSVg6IG51bWJlciA9IDEwMDU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DVFJMX1NVRkZJWDogbnVtYmVyID0gMTAwNjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NUUkxfVkVSSUZJQ0FUSU9OOiBudW1iZXIgPSAxMDA3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVkFSSUFCTEU6IG51bWJlciA9IDEwMDg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9EQVRBVklFV19UT1A6IG51bWJlciA9IDEwMTM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9EQVRBVklFV19CT1RUT006IG51bWJlciA9IDEwMTQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DQUNIRV9QUkVWOiBudW1iZXIgPSAxMDE1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ0FDSEVfTkVYVDogbnVtYmVyID0gMTAxNjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NZQ0xFX05FWFRfUkVDOiBudW1iZXIgPSAxMDE3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ1lDTEVfTkVYVF9ERUxFVEVfUkVDOiBudW1iZXIgPSAxMDE4O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ09NUFVURTogbnVtYmVyID0gMTAyMDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0RVTU1ZOiBudW1iZXIgPSAxMTExO1xyXG5cclxuICAvLyBJTlRFUk5BTCBFVkVOVFMgZm9yIFdlYkNsaWVudFxyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ1RSTF9GT0NVUzogbnVtYmVyID0gMjAwMTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NUUkxfTU9VU0VVUDogbnVtYmVyID0gMjAwMjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NUUkxfS0VZRE9XTjogbnVtYmVyID0gMjAwMztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RJTUVSOiBudW1iZXIgPSAyMDA0O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfU0VMRUNUSU9OOiBudW1iZXIgPSAyMDA1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUkVTSVpFOiBudW1iZXIgPSAyMDA2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUk9XX0RBVEFfQ1VSUl9QQUdFOiBudW1iZXIgPSAyMDA3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRFZfVE9fR1VJOiBudW1iZXIgPSAyMDA4O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRElTQUJMRV9FVkVOVFM6IG51bWJlciA9IDIwMTA7XHJcbiAgLy8gdG9nZ2xlIGluc2VydCBpcyB0ZW1wIDUzOSAsIGl0IHNob3VsZCBtYXRjaCB0aGUgY29kZSBpbiBvbmxpbmUgb25jZSBpdCB3aWxsIGJlIGNyZWF0ZWQuXHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UT0dHTEVfSU5TRVJUOiBudW1iZXIgPSAyMDExO1xyXG5cclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0lOQ1JFTUVOVEFMX0xPQ0FURTogbnVtYmVyID0gMjAxNztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX01PVkVfVE9fRklSU1RfQ1RSTDogbnVtYmVyID0gMjAxODtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NFVF9FWFRFUk5BTF9WQUxVRTogbnVtYmVyID0gMjAxOTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NUUkxfRk9DVVNfT05fTk9OX01BR0lDX0NPTlRST0w6IG51bWJlciA9IDIwMjA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9GRVRDSF9SRUNPUkRTX0FIRUFEX0ZST01fU0VSVkVSOiBudW1iZXIgPSAyMDIxOyAvLyBmb3IgcGFnaW5hdGVkIHRhYmxlLCBmZXRjaCByZWNvcmRzIGluIGJhY2tncm91bmQgZGVwZW5kaW5nIG9uIFBST1BfVFlQRV9TRVJWRVJfUkVBRF9BSEVBRFxyXG5cclxuXHJcblxyXG4gIHN0YXRpYyAgQnVpbHRpbkV2ZW50KGV2ZW50Q29kZTogbnVtYmVyKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gZXZlbnRDb2RlID49IDEwMDAgfHwgZXZlbnRDb2RlID09PSBJbnRlcm5hbEludGVyZmFjZS5NR19BQ1RfUE9TVF9SRUZSRVNIX0JZX1BBUkVOVDtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG5cclxuICB9XHJcbn1cclxuIl19
339
+ InternalInterface.MG_ACT_FETCH_RECORDS_AHEAD_FROM_SERVER = 2021;
340
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW50ZXJuYWxJbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91dGlscy9zcmMvSW50ZXJuYWxJbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsTUFBTSxPQUFPLGlCQUFpQjtJQWdXNUI7SUFFQSxDQUFDO0lBTkQsTUFBTSxDQUFFLFlBQVksQ0FBQyxTQUFpQjtRQUNwQyxPQUFPLFNBQVMsSUFBSSxJQUFJLElBQUksU0FBUyxLQUFLLGlCQUFpQixDQUFDLDZCQUE2QixDQUFDO0lBQzVGLENBQUM7O0FBN1ZlLDZCQUFXLEdBQVcsQ0FBQyxDQUFDO0FBQ3hCLDZCQUFXLEdBQVcsQ0FBQyxDQUFDO0FBQ3hCLDZCQUFXLEdBQVcsQ0FBQyxDQUFDO0FBQ3hCLHNDQUFvQixHQUFXLENBQUMsQ0FBQztBQUNqQyxzQ0FBb0IsR0FBVyxDQUFDLENBQUM7QUFDakMsc0NBQW9CLEdBQVcsQ0FBQyxDQUFDO0FBQ2pDLHNDQUFvQixHQUFXLENBQUMsQ0FBQztBQUNqQyxpQ0FBZSxHQUFXLENBQUMsQ0FBQztBQUM1QixtQ0FBaUIsR0FBVyxDQUFDLENBQUM7QUFDOUIsbUNBQWlCLEdBQVcsRUFBRSxDQUFDO0FBQy9CLDRCQUFVLEdBQVcsRUFBRSxDQUFDO0FBQ3hCLDhCQUFZLEdBQVcsRUFBRSxDQUFDO0FBQzFCLDZCQUFXLEdBQVcsRUFBRSxDQUFDO0FBQ3pCLHdDQUFzQixHQUFXLEVBQUUsQ0FBQztBQUNwQyx5Q0FBdUIsR0FBVyxFQUFFLENBQUM7QUFDckMsK0JBQWEsR0FBVyxFQUFFLENBQUM7QUFDM0Isb0NBQWtCLEdBQVcsRUFBRSxDQUFDO0FBQ2hDLHVDQUFxQixHQUFXLEVBQUUsQ0FBQztBQUNuQyx5Q0FBdUIsR0FBVyxFQUFFLENBQUM7QUFDckMsdUNBQXFCLEdBQVcsRUFBRSxDQUFDO0FBQ25DLHdDQUFzQixHQUFXLEVBQUUsQ0FBQztBQUNwQyx5Q0FBdUIsR0FBVyxFQUFF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SSxDQUFDO0FBQ2pDLHVDQUFxQixHQUFXLElBQUksQ0FBQztBQUNyQyw4Q0FBNEIsR0FBVyxJQUFJLENBQUM7QUFDNUMsZ0NBQWMsR0FBVyxJQUFJLENBQUM7QUFDOUIsOEJBQVksR0FBVyxJQUFJLENBQUM7QUFHNUIsbUNBQWlCLEdBQVcsSUFBSSxDQUFDO0FBQ2pDLHFDQUFtQixHQUFXLElBQUksQ0FBQztBQUNuQyxxQ0FBbUIsR0FBVyxJQUFJLENBQUM7QUFDbkMsOEJBQVksR0FBVyxJQUFJLENBQUM7QUFDNUIsa0NBQWdCLEdBQVcsSUFBSSxDQUFDO0FBQ2hDLCtCQUFhLEdBQVcsSUFBSSxDQUFDO0FBQzdCLDJDQUF5QixHQUFXLElBQUksQ0FBQztBQUN6QyxrQ0FBZ0IsR0FBVyxJQUFJLENBQUM7QUFDaEMsdUNBQXFCLEdBQVcsSUFBSSxDQUFDO0FBRXJDLHNDQUFvQixHQUFXLElBQUksQ0FBQztBQUVwQywyQ0FBeUIsR0FBVyxJQUFJLENBQUM7QUFDekMsMkNBQXlCLEdBQVcsSUFBSSxDQUFDO0FBQ3pDLDJDQUF5QixHQUFXLElBQUksQ0FBQztBQUN6Qyx3REFBc0MsR0FBVyxJQUFJLENBQUM7QUFDdEQsd0RBQXNDLEdBQVcsSUFBSSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8vIDxzdW1tYXJ5PiB0aGlzIGludGVyZmFjZSBkZWZpbmVzIHRoZSBpbnRlcm5hbCBldmVudHMgY29kZXM8L3N1bW1hcnk+XHJcbmV4cG9ydCBjbGFzcyBJbnRlcm5hbEludGVyZmFjZSB7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9OT05FOiBudW1iZXIgPSAwO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ0hBUjogbnVtYmVyID0gMTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX09MRTI6IG51bWJlciA9IDM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfTUFSS1BSVkNIOiBudW1iZXIgPSA0O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRURUX01BUktOWFRDSDogbnVtYmVyID0gNTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VEVF9NQVJLVE9CRUc6IG51bWJlciA9IDY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfTUFSS1RPRU5EOiBudW1iZXIgPSA3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTUVOVV9CQVI6IG51bWJlciA9IDg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfQkVHRkxEOiBudW1iZXIgPSA5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRURUX0VOREZMRDogbnVtYmVyID0gMTA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DVVQ6IG51bWJlciA9IDExO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ0xPU0U6IG51bWJlciA9IDEzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRVhJVDogbnVtYmVyID0gMTQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9ESVNQTEFZX1JFRlJFU0g6IG51bWJlciA9IDE1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUkVTVE9SRV9ERUZBVUxUUzogbnVtYmVyID0gMTY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9CVVRUT046IG51bWJlciA9IDE4O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfSlVNUF9UT19ST1c6IG51bWJlciA9IDE5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ09NTVVOSUNBVElPTlM6IG51bWJlciA9IDIyO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfT1BFTl9BUFBMSUNBVElPTjogbnVtYmVyID0gMjM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9BQ1RfQ0xPU0VfQVBQTDogbnVtYmVyID0gMjQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UT09MS0lUX1JVTlRJTUU6IG51bWJlciA9IDI1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfS0VZQk9BUkRfTUFQUElORzogbnVtYmVyID0gMjY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9TSEVMTF9UT19PUzogbnVtYmVyID0gMjc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FWElUX1NZU1RFTTogbnVtYmVyID0gMjg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9SVE9fTU9ESUZZOiBudW1iZXIgPSAzMDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JUT19DUkVBVEU6IG51bWJlciA9IDMxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUlRPX1FVRVJZOiBudW1iZXIgPSAzMjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NBTkNFTDogbnVtYmVyID0gMzM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9aT09NOiBudW1iZXIgPSAzNDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0RFTExJTkU6IG51bWJlciA9IDM2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ1JFTElORTogbnVtYmVyID0gMzc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9SRVBFQVRfRU5UUlk6IG51bWJlciA9IDM5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTU9WRV9FTlRSWTogbnVtYmVyID0gNDA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9PVkVSV1JJVEVfRU5UUlk6IG51bWJlciA9IDQxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfU0VMRUNUOiBudW1iZXIgPSA0MjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VEVF9QUlZDSEFSOiBudW1iZXIgPSA0MztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VEVF9OWFRDSEFSOiBudW1iZXIgPSA0NDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VEVF9QUlZUQUI6IG51bWJlciA9IDQ1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRURUX05YVFRBQjogbnVtYmVyID0gNDY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfUFJWV09SRDogbnVtYmVyID0gNDc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfTlhUV09SRDogbnVtYmVyID0gNDg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfUFJWTElORTogbnVtYmVyID0gNDk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfTlhUTElORTogbnVtYmVyID0gNTA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfUFJWUEFHRTogbnVtYmVyID0gNTE7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfTlhUUEFHRTogbnVtYmVyID0gNTI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfQkVHTElORTogbnVtYmVyID0gNTM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfRU5ETElORTogbnVtYmVyID0gNTQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfQkVHUEFHRTogbnVtYmVyID0gNTU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfRU5EUEFHRTogbnVtYmVyID0gNTY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfQkVHRk9STTogbnVtYmVyID0gNTc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfRU5ERk9STTogbnVtYmVyID0gNTg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfREVMQ1VSQ0g6IG51bWJlciA9IDU5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRURUX0RFTFBSVkNIOiBudW1iZXIgPSA2MDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VEVF9CRUdOWFRMSU5FOiBudW1iZXIgPSA2MTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RCTF9QUlZGTEQ6IG51bWJlciA9IDYyO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVEJMX05YVEZMRDogbnVtYmVyID0gNjM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQkxfUFJWTElORTogbnVtYmVyID0gNjQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQkxfTlhUTElORTogbnVtYmVyID0gNjU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQkxfUFJWUEFHRTogbnVtYmVyID0gNjY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQkxfTlhUUEFHRTogbnVtYmVyID0gNjc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQkxfQkVHTElORTogbnVtYmVyID0gNjg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQkxfRU5ETElORTogbnVtYmVyID0gNjk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQkxfQkVHUEFHRTogbnVtYmVyID0gNzA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQkxfRU5EUEFHRTogbnVtYmVyID0gNzE7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQkxfQkVHVEJMOiBudW1iZXIgPSA3MjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RCTF9FTkRUQkw6IG51bWJlciA9IDczO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVEFCX05FWFQ6IG51bWJlciA9IDc1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUlRfQ09QWUZMRDogbnVtYmVyID0gNzc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FTlZJUk9OTUVOVDogbnVtYmVyID0gNzg7XHJcblxyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfU0VSVkVSUzogbnVtYmVyID0gODA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9EQVRBQkFTRVM6IG51bWJlciA9IDgxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTE9HSUNBTFBOQU1FUzogbnVtYmVyID0gODI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9QUklOVEVSUzogbnVtYmVyID0gODM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQVNLX0VWRU5UUzogbnVtYmVyID0gODU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9NRU5VUzogbnVtYmVyID0gODY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UWVBFUzogbnVtYmVyID0gODc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQUJMRVM6IG51bWJlciA9IDg4O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUFJPR1JBTVM6IG51bWJlciA9IDg5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfSEVMUF9TQ1JFRU5TOiBudW1iZXIgPSA5MDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1VTRVJfSURTOiBudW1iZXIgPSA5MTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VYUE9SVF9JTVBPUlQ6IG51bWJlciA9IDkzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTUFSS19TVUJUUkVFOiBudW1iZXIgPSA5NTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JFUEVBVF9TVUJUUkVFOiBudW1iZXIgPSA5NjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX01PVkVfU1VCVFJFRTogbnVtYmVyID0gOTc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9PVkVSV1JJVEVfU1VCVFJFRTogbnVtYmVyID0gOTg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DUkVBVEVfUEFSRU5UOiBudW1iZXIgPSA5OTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NSRUFURV9TVUJUQVNLOiBudW1iZXIgPSAxMDA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9ERUxFVEVfU1VCVFJFRTogbnVtYmVyID0gMTAxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRVhQQU5EX1RSRUU6IG51bWJlciA9IDEwMztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NIUklOS19UUkVFOiBudW1iZXIgPSAxMDQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9BVVRIT1JJWkU6IG51bWJlciA9IDEwNTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1BST1BFUlRJRVM6IG51bWJlciA9IDEwNjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1ZJUlRVQUxfVkFSSUFCTEVTOiBudW1iZXIgPSAxMDc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FWFBSRVNTSU9OX1JVTEVTOiBudW1iZXIgPSAxMDg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9GT1JNUzogbnVtYmVyID0gMTA5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfREJfVEFCTEVTOiBudW1iZXIgPSAxMTA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9JX09fRklMRVM6IG51bWJlciA9IDExMTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NPUlQ6IG51bWJlciA9IDExMjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VEVF9NQVJLUFJWTElORTogbnVtYmVyID0gMTEzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVEFTS19DT05UUk9MOiBudW1iZXIgPSAxMTQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DSEVDS19TWU5UQVg6IG51bWJlciA9IDExNTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VYRUNVVEVfUFJPR1JBTTogbnVtYmVyID0gMTE2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ1JPU1NfUkVGRVJFTkNFOiBudW1iZXIgPSAxMTc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9HRU5FUkFURV9QUk9HUkFNOiBudW1iZXIgPSAxMTg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9HRU5FUkFURV9GT1JNOiBudW1iZXIgPSAxMTk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRElUX01BSU5fRk9STTogbnVtYmVyID0gMTIwO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTUFSS19ORVhUX0xJTkU6IG51bWJlciA9IDEyMTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JUT19MT0NBVEU6IG51bWJlciA9IDEyMjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JUT19SQU5HRTogbnVtYmVyID0gMTIzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVklFV19CWV9LRVk6IG51bWJlciA9IDEyNDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NPUlRfUkVDT1JEUzogbnVtYmVyID0gMTI1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUkVESVJFQ1RfRklMRVM6IG51bWJlciA9IDEyNjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JFUE9SVF9HRU5FUkFUT1I6IG51bWJlciA9IDEyNztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NMRUFSX1RFTVBMQVRFOiBudW1iZXIgPSAxMjg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DTEVBUl9WQUxVRTogbnVtYmVyID0gMTI5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfREVGSU5FX0VYUFJFU1NJT046IG51bWJlciA9IDEzMDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0ZST01fVkFMVUU6IG51bWJlciA9IDEzMTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RPX1ZBTFVFOiBudW1iZXIgPSAxMzI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9SRURSQVdfTEFZT1VUOiBudW1iZXIgPSAxMzQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9ERUZBVUxUX0xBWU9VVDogbnVtYmVyID0gMTM1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ09QWV9MQVlPVVQ6IG51bWJlciA9IDEzNjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NIT1dfRlVMTF9MQVlPVVQ6IG51bWJlciA9IDEzNztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0xFRlQ6IG51bWJlciA9IDEzODtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JJR0hUOiBudW1iZXIgPSAxMzk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UT1A6IG51bWJlciA9IDE0MDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0JPVFRPTTogbnVtYmVyID0gMTQxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfSF9DRU5URVJfT0ZfRk9STTogbnVtYmVyID0gMTQyO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVl9DRU5URVJfT0ZfRk9STTogbnVtYmVyID0gMTQzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfSE9SSVpfQ0VOVEVSOiBudW1iZXIgPSAxNDQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9WRVJUSUNBTF9DRU5URVI6IG51bWJlciA9IDE0NTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0FUVEFDSF9UT19UQUJMRTogbnVtYmVyID0gMTQ2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTUFYSU1VTV9XSURUSDogbnVtYmVyID0gMTQ3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRVhURVJOQUxfRURJVE9SOiBudW1iZXIgPSAxNDg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9NQVhJTVVNX0hFSUdIVDogbnVtYmVyID0gMTUzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTUlOSU1VTV9XSURUSDogbnVtYmVyID0gMTU0O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNJTkdfSEVMUDogbnVtYmVyID0gMTU1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfSEVMUDogbnVtYmVyID0gMTU2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQUJPVVQ6IG51bWJlciA9IDE1NztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1BSSU5UX0RBVEE6IG51bWJlciA9IDE2MDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JJR0hUUzogbnVtYmVyID0gMTYxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUFJJTlRFUl9TRVRVUDogbnVtYmVyID0gMTYyO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUlRPX1NFQVJDSDogbnVtYmVyID0gMTY1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfU0hPV19FWFBSRVNTSU9OOiBudW1iZXIgPSAxNjY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9BQ1RJT05fTElTVDogbnVtYmVyID0gMTY3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfS0VZQk9BUkRfTElTVDogbnVtYmVyID0gMTY4O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQVBQTElDQVRJT05TOiBudW1iZXIgPSAxNzM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9BUFBMX1BST1BFUlRJRVM6IG51bWJlciA9IDE3NDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX01JTklNVU1fSEVJR0hUOiBudW1iZXIgPSAxNzY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfVU5ETzogbnVtYmVyID0gMTgwO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUkVUVVJOX1RPX1RSRUU6IG51bWJlciA9IDE4MTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0dPX1RPX1RPUDogbnVtYmVyID0gMTgyO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRlVOQ1RJT05fTElTVDogbnVtYmVyID0gMTgzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTE9HT046IG51bWJlciA9IDE4NTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VYRUNVVEVfUkVQT1JUOiBudW1iZXIgPSAxODg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9PSzogbnVtYmVyID0gMTg5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQVBQTElDQVRJT05TX0xJU1Q6IG51bWJlciA9IDE5MTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NFQ1JFVF9OQU1FUzogbnVtYmVyID0gMTkyO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUklHSFRTX0xJU1Q6IG51bWJlciA9IDE5MztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NIRUNLX1RPX0VORDogbnVtYmVyID0gMTk0O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfU1FMX0NPTU1BTkQ6IG51bWJlciA9IDE5NTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1VTRVJfR1JPVVBTOiBudW1iZXIgPSAxOTY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQUJMRV9MT0NBVEU6IG51bWJlciA9IDE5NztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RBQkxFX0xPQ0FURV9ORVhUOiBudW1iZXIgPSAxOTg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9EQk1TOiBudW1iZXIgPSAxOTk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9TUUxfS0VZV09SRFM6IG51bWJlciA9IDIwMTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NRTF9PUEVSQVRPUlM6IG51bWJlciA9IDIwMjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NRTF9UQUJMRVM6IG51bWJlciA9IDIwMztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NRTF9DT0xVTU5TOiBudW1iZXIgPSAyMDQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9TUUxfRkxJUF9ERVNDOiBudW1iZXIgPSAyMDU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9TUUxfQVNTSVNUOiBudW1iZXIgPSAyMDY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9QUEQ6IG51bWJlciA9IDIwNztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX05VTExfU0VUVElOR1M6IG51bWJlciA9IDIwODtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JUX0VEVF9OVUxMOiBudW1iZXIgPSAyMDk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9QUklOVF9BVFRSSUJVVEVTOiBudW1iZXIgPSAyMTE7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9OT1JNQUw6IG51bWJlciA9IDIxMjtcclxuXHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9JTkRFTlQ6IG51bWJlciA9IDIxNTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0JVTExFVDogbnVtYmVyID0gMjE2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fMTogbnVtYmVyID0gMjE5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fMjogbnVtYmVyID0gMjIwO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fMzogbnVtYmVyID0gMjIxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fNDogbnVtYmVyID0gMjIyO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fNTogbnVtYmVyID0gMjIzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fNjogbnVtYmVyID0gMjI0O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fNzogbnVtYmVyID0gMjI1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fODogbnVtYmVyID0gMjI2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fOTogbnVtYmVyID0gMjI3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fMTA6IG51bWJlciA9IDIyODtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1VTRVJfQUNUSU9OXzExOiBudW1iZXIgPSAyMjk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9VU0VSX0FDVElPTl8xMjogbnVtYmVyID0gMjMwO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fMTM6IG51bWJlciA9IDIzMTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1VTRVJfQUNUSU9OXzE0OiBudW1iZXIgPSAyMzI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9VU0VSX0FDVElPTl8xNTogbnVtYmVyID0gMjMzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fMTY6IG51bWJlciA9IDIzNDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1VTRVJfQUNUSU9OXzE3OiBudW1iZXIgPSAyMzU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9VU0VSX0FDVElPTl8xODogbnVtYmVyID0gMjM2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVNFUl9BQ1RJT05fMTk6IG51bWJlciA9IDIzNztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1VTRVJfQUNUSU9OXzIwOiBudW1iZXIgPSAyMzg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DTElQX0NPUFk6IG51bWJlciA9IDIzOTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NMSVBfUEFTVEU6IG51bWJlciA9IDI0MDtcclxuXHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DVFJMX0hJVDogbnVtYmVyID0gMjQyO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUEFHRV9IRUFERVI6IG51bWJlciA9IDI0MztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1BBR0VfRk9PVEVSOiBudW1iZXIgPSAyNDQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9ISVQ6IG51bWJlciA9IDI0NTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0lOU0VSVF9PQkpFQ1Q6IG51bWJlciA9IDI0NjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1BBU1RFX0xJTks6IG51bWJlciA9IDI0NztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NPTlRST0xfTkFNRV9MSVNUOiBudW1iZXIgPSAyNDg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9XSU5TSVpFOiBudW1iZXIgPSAyNDk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9XSU5NT1ZFOiBudW1iZXIgPSAyNTA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9MQU5HVUFHRVM6IG51bWJlciA9IDI1MTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0RERl9NQUtFOiBudW1iZXIgPSAyNTI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9VUERBVEVfTElOSzogbnVtYmVyID0gMjUzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfSFRNTF9TVFlMRVM6IG51bWJlciA9IDI1NDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1VOSU5ERU5UOiBudW1iZXIgPSAyNTU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9BTElHTl9MRUZUOiBudW1iZXIgPSAyNTY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9BTElHTl9SSUdIVDogbnVtYmVyID0gMjU3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ0VOVEVSOiBudW1iZXIgPSAyNTg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9BRERfSFlQRVJMSU5LOiBudW1iZXIgPSAyNTk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9ERUxFVEVfSFlQRVJMSU5LOiBudW1iZXIgPSAyNjA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DSEVDS19PQkpFQ1RfTElTVDogbnVtYmVyID0gMjY1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVEJMX1BMQUNFTUVOVDogbnVtYmVyID0gMjY3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ09MX1NPUlQ6IG51bWJlciA9IDI2ODtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1VTRVJTX0xJU1Q6IG51bWJlciA9IDI2OTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NFUlZJQ0VTOiBudW1iZXIgPSAyNzA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DT1BZX1NVQlRSRUU6IG51bWJlciA9IDI3MTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1BBU1RFX1NVQlRSRUU6IG51bWJlciA9IDI3MjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1ZJU1VBTF9DT05ORUNUSU9OOiBudW1iZXIgPSAyNzM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9TUUxfV0hFUkVfQ0xBVVNFOiBudW1iZXIgPSAyNzQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9MT0NLSU5HX0FCT1JUOiBudW1iZXIgPSAyNzY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQUJfUFJFVjogbnVtYmVyID0gMjc1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTE9DS0lOR19SRVRSWTogbnVtYmVyID0gMjc3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTE9DS0lOR19ERVRBSUxTOiBudW1iZXIgPSAyNzg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9FRFRfTUFSS0FMTDogbnVtYmVyID0gMjg2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTU9OSVRPUl9ERUJVR0dFUjogbnVtYmVyID0gMjg3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUlRfUkVGUkVTSF9SRUNPUkQ6IG51bWJlciA9IDI5MztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JUX1JFRlJFU0hfU0NSRUVOOiBudW1iZXIgPSAyOTQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9SVF9SRUZSRVNIX1ZJRVc6IG51bWJlciA9IDI5NTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NPTVBPTkVOVFM6IG51bWJlciA9IDI5NztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX01PREVMUzogbnVtYmVyID0gMjk5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfV0VCX09OX0RCTElDSzogbnVtYmVyID0gMzAxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfV0VCX0NMSUNLOiBudW1iZXIgPSAzMDI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9NTV9DVFJMX1RCTF9OWFRMSU5FOiBudW1iZXIgPSAzMTQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9NTV9DVFJMX1RCTF9QUlZMSU5FOiBudW1iZXIgPSAzMTU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9NTV9DVFJMX1RCTF9QUlZQQUdFOiBudW1iZXIgPSAzMTY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9NTV9DVFJMX1RCTF9OWFRQQUdFOiBudW1iZXIgPSAzMTc7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9NTV9TSElGVF9UQkxfTlhUTElORTogbnVtYmVyID0gMzE4O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTU1fU0hJRlRfVEJMX1BSVkxJTkU6IG51bWJlciA9IDMxOTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX01NX1NISUZUX1RCTF9QUlZQQUdFOiBudW1iZXIgPSAzMjA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9NTV9TSElGVF9UQkxfTlhUUEFHRTogbnVtYmVyID0gMzIxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQlJPV1NFUl9FU0M6IG51bWJlciA9IDM0MDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NMT1NFX0FMTF9XSU46IG51bWJlciA9IDM3MDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VYVF9FVkVOVDogbnVtYmVyID0gMzc3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVFJFRV9FWFBBTkQ6IG51bWJlciA9IDM3ODtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RSRUVfQ09MTEFQU0U6IG51bWJlciA9IDM3OTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RSRUVfQ1JFX1NPTjogbnVtYmVyID0gMzgwO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVFJFRV9TRUxDSEFOR0lORzogbnVtYmVyID0gMzgxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVFJFRV9SRU5BTUVfUlQ6IG51bWJlciA9IDM4MjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RSRUVfTU9WRVRPX1BBUkVOVDogbnVtYmVyID0gMzgzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVFJFRV9NT1ZFVE9fRklSU1RDSElMRDogbnVtYmVyID0gMzg0O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVFJFRV9NT1ZFVE9fUFJFVlNJQkxJTkc6IG51bWJlciA9IDM4NTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RSRUVfTU9WRVRPX05FWFRTSUJMSU5HOiBudW1iZXIgPSAzODY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9ST0xMQkFDSzogbnVtYmVyID0gMzg3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUlRfUVVJVDogbnVtYmVyID0gMzkzO1xyXG5cclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RSRUVfUkVOQU1FX1JUX0VYSVQ6IG51bWJlciA9IDQxMztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NFUlZFUl9URVJNSU5BVElPTjogbnVtYmVyID0gNDIwO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfU1VCRk9STV9SRUZSRVNIOiBudW1iZXIgPSA0MzI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DT05URVhUX01FTlU6IG51bWJlciA9IDQzOTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX05FWFRfUlRfV0lORE9XOiBudW1iZXIgPSA0NjI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9QUkVWX1JUX1dJTkRPVzogbnVtYmVyID0gNDYzO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRU1QVFlfREFUQVZJRVc6IG51bWJlciA9IDUyMTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0JST1dTRVJfU1RTX1RFWFRfQ0hBTkdFOiBudW1iZXIgPSA1Mjk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQkxfUkVPUkRFUjogbnVtYmVyID0gNTM5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ1RSTF9NT0RJRlk6IG51bWJlciA9IDU0NDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NVQkZPUk1fT1BFTjogbnVtYmVyID0gNTQ1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ09MX0NMSUNLOiBudW1iZXIgPSA1NTU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9QT1NUX1JFRlJFU0hfQllfUEFSRU5UOiBudW1iZXIgPSA1NTk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DT01CT19EUk9QX0RPV046IG51bWJlciA9IDU2MDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JBSVNFX0JVVFRPTl9FVkVOVDogbnVtYmVyID0gNTYxO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVBEQVRFX0ROX0NPTlRST0xfVkFMVUU6IG51bWJlciA9IDU2MjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0dFVF9EQVRBVklFV19DT05URU5UOiBudW1iZXIgPSA1NjM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9QUkVTUzogbnVtYmVyID0gNTY0O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfTVVMVElfTUFSS19ISVQ6IG51bWJlciA9IDU2NTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0RWQ09OVFJPTF9ST1dfQ0hBTkdFOiBudW1iZXIgPSA1NjY7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9EVkNPTlRST0xfVVBEQVRFX0NPTFVNTl9WQUxVRTogbnVtYmVyID0gNTY3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfU1dJVENIX1RPX09GRkxJTkU6IG51bWJlciA9IDU2ODtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1VOQVZBSUxBQkxFX1NFUlZFUjogbnVtYmVyID0gNTY5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVVBEQVRFX0RBVEFWSUVXX1RPX0RBVEFTT1VSQ0U6IG51bWJlciA9IDU3MTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VOQUJMRV9FVkVOVFM6IG51bWJlciA9IDU3MztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1dSSVRFX0VSUk9SX1RPX1NFUlZFUl9MT0c6IG51bWJlciA9IDU3NDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX09QRU5fRk9STV9ERVNJR05FUjogbnVtYmVyID0gNTc4O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRkVUQ0hfREFUQV9DT05UUk9MX1ZBTFVFUzogbnVtYmVyID0gNTc5O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ09MX0ZJTFRFUjogbnVtYmVyID0gNTgwO1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfSU5ERVhfQ0hBTkdFOiBudW1iZXIgPSA1ODU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9XRUJDTElFTlRfUk9VVEU6IG51bWJlciA9IDU5NDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0VOVEVSX1JPV19FRElUSU5HOm51bWJlciA9IDU5NTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NVQkZPUk1fQ0xPU0U6IG51bWJlciA9IDU5NztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX05PX1BST0dfRVhFX1JJR0hUUzogbnVtYmVyID0gNjE5O1xyXG5cclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NSRUxJTkVfQUJPVkU6IG51bWJlciA9IDYzNDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NPTlRFWFRfVEVSTUlOQVRJT046IG51bWJlciA9IDYzNTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NPTlRFWFRfVElNRU9VVF9SRVNFVDogbnVtYmVyID0gNjM2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ09OVEVYVF9SRU1PVkU6IG51bWJlciA9IDY0NztcclxuXHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UT1RfQ05UOm51bWJlciA9IDY0ODtcclxuXHJcbiAgLy8gTkVXIElOVEVSTkFMIEVWRU5UU1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVEFTS19QUkVGSVg6IG51bWJlciA9IDEwMDE7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UQVNLX1NVRkZJWDogbnVtYmVyID0gMTAwMjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1JFQ19QUkVGSVg6IG51bWJlciA9IDEwMDM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9SRUNfU1VGRklYOiBudW1iZXIgPSAxMDA0O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ1RSTF9QUkVGSVg6IG51bWJlciA9IDEwMDU7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DVFJMX1NVRkZJWDogbnVtYmVyID0gMTAwNjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NUUkxfVkVSSUZJQ0FUSU9OOiBudW1iZXIgPSAxMDA3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfVkFSSUFCTEU6IG51bWJlciA9IDEwMDg7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9EQVRBVklFV19UT1A6IG51bWJlciA9IDEwMTM7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9EQVRBVklFV19CT1RUT006IG51bWJlciA9IDEwMTQ7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9DQUNIRV9QUkVWOiBudW1iZXIgPSAxMDE1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ0FDSEVfTkVYVDogbnVtYmVyID0gMTAxNjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NZQ0xFX05FWFRfUkVDOiBudW1iZXIgPSAxMDE3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ1lDTEVfTkVYVF9ERUxFVEVfUkVDOiBudW1iZXIgPSAxMDE4O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ09NUFVURTogbnVtYmVyID0gMTAyMDtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0RVTU1ZOiBudW1iZXIgPSAxMTExO1xyXG5cclxuICAvLyBJTlRFUk5BTCBFVkVOVFMgZm9yIFdlYkNsaWVudFxyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfQ1RSTF9GT0NVUzogbnVtYmVyID0gMjAwMTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NUUkxfTU9VU0VVUDogbnVtYmVyID0gMjAwMjtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NUUkxfS0VZRE9XTjogbnVtYmVyID0gMjAwMztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1RJTUVSOiBudW1iZXIgPSAyMDA0O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfU0VMRUNUSU9OOiBudW1iZXIgPSAyMDA1O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUkVTSVpFOiBudW1iZXIgPSAyMDA2O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfUk9XX0RBVEFfQ1VSUl9QQUdFOiBudW1iZXIgPSAyMDA3O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRFZfVE9fR1VJOiBudW1iZXIgPSAyMDA4O1xyXG4gIHN0YXRpYyByZWFkb25seSBNR19BQ1RfRElTQUJMRV9FVkVOVFM6IG51bWJlciA9IDIwMTA7XHJcbiAgLy8gdG9nZ2xlIGluc2VydCBpcyB0ZW1wIDUzOSAsIGl0IHNob3VsZCBtYXRjaCB0aGUgY29kZSBpbiBvbmxpbmUgb25jZSBpdCB3aWxsIGJlIGNyZWF0ZWQuXHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9UT0dHTEVfSU5TRVJUOiBudW1iZXIgPSAyMDExO1xyXG5cclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0lOQ1JFTUVOVEFMX0xPQ0FURTogbnVtYmVyID0gMjAxNztcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX01PVkVfVE9fRklSU1RfQ1RSTDogbnVtYmVyID0gMjAxODtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX1NFVF9FWFRFUk5BTF9WQUxVRTogbnVtYmVyID0gMjAxOTtcclxuICBzdGF0aWMgcmVhZG9ubHkgTUdfQUNUX0NUUkxfRk9DVVNfT05fTk9OX01BR0lDX0NPTlRST0w6IG51bWJlciA9IDIwMjA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IE1HX0FDVF9GRVRDSF9SRUNPUkRTX0FIRUFEX0ZST01fU0VSVkVSOiBudW1iZXIgPSAyMDIxOyAvLyBmb3IgcGFnaW5hdGVkIHRhYmxlLCBmZXRjaCByZWNvcmRzIGluIGJhY2tncm91bmQgZGVwZW5kaW5nIG9uIFBST1BfVFlQRV9TRVJWRVJfUkVBRF9BSEVBRFxyXG5cclxuXHJcblxyXG4gIHN0YXRpYyAgQnVpbHRpbkV2ZW50KGV2ZW50Q29kZTogbnVtYmVyKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gZXZlbnRDb2RlID49IDEwMDAgfHwgZXZlbnRDb2RlID09PSBJbnRlcm5hbEludGVyZmFjZS5NR19BQ1RfUE9TVF9SRUZSRVNIX0JZX1BBUkVOVDtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG5cclxuICB9XHJcbn1cclxuIl19
@@ -4,4 +4,4 @@ export class JSON_Utils {
4
4
  parseString(xml, onComplete);
5
5
  }
6
6
  }
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSlNPTl9VdGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxzL3NyYy9KU09OX1V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFckMsTUFBTSxPQUFPLFVBQVU7SUFDckIsTUFBTSxDQUFDLFdBQVcsQ0FBRSxHQUFXLEVBQUUsVUFBVTtRQUN6QyxXQUFXLENBQUUsR0FBRyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBhcnNlU3RyaW5nIH0gZnJvbSAneG1sMmpzJztcclxuXHJcbmV4cG9ydCBjbGFzcyBKU09OX1V0aWxzIHtcclxuICBzdGF0aWMgSlNPTkZyb21YTUwgKHhtbDogc3RyaW5nLCBvbkNvbXBsZXRlKSB7XHJcbiAgICBwYXJzZVN0cmluZyAoeG1sLCBvbkNvbXBsZXRlKTtcclxuICB9XHJcbn1cclxuIl19
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSlNPTl9VdGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3V0aWxzL3NyYy9KU09OX1V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFckMsTUFBTSxPQUFPLFVBQVU7SUFDckIsTUFBTSxDQUFDLFdBQVcsQ0FBRSxHQUFXLEVBQUUsVUFBVTtRQUN6QyxXQUFXLENBQUUsR0FBRyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBhcnNlU3RyaW5nIH0gZnJvbSAneG1sMmpzJztcclxuXHJcbmV4cG9ydCBjbGFzcyBKU09OX1V0aWxzIHtcclxuICBzdGF0aWMgSlNPTkZyb21YTUwgKHhtbDogc3RyaW5nLCBvbkNvbXBsZXRlKSB7XHJcbiAgICBwYXJzZVN0cmluZyAoeG1sLCBvbkNvbXBsZXRlKTtcclxuICB9XHJcbn1cclxuIl19
@@ -12,16 +12,9 @@ export var LogType;
12
12
  LogType[LogType["warning"] = 2] = "warning";
13
13
  LogType[LogType["error"] = 3] = "error";
14
14
  })(LogType || (LogType = {}));
15
- /// <summary>
16
- /// Logger class will take care of client side logging . It will check for various log levels and accordingly will write messages in log file.
17
- /// </summary>
18
- //@dynamic
19
15
  export class Logger {
20
16
  constructor() {
21
- this.LogLevel = 0; // InternalLogLevel
22
- /// <summary>
23
- /// While writing the error messages in the file play the beep.
24
- /// </summary>
17
+ this.LogLevel = 0;
25
18
  this.ShouldBeep = false;
26
19
  }
27
20
  static set Instance(value) {
@@ -33,26 +26,10 @@ export class Logger {
33
26
  }
34
27
  return Logger.instance;
35
28
  }
36
- /// <summary>
37
- /// Initialize logger
38
- /// </summary>
39
- /// <param name="logLevel"></param>
40
- /// <param name="internalLogSync"></param>
41
29
  Initialize(logLevel, internalLogSync, shouldBeep) {
42
30
  try {
43
- // let logSync: LogSyncMode = LogSyncMode.Session;
44
31
  this.LogLevel = logLevel;
45
32
  this.ShouldBeep = shouldBeep;
46
- // TODO: implement
47
- // String strLogSync = internalLogSync;
48
- // if (!string.IsNullOrEmpty(strLogSync))
49
- // {
50
- // if (strLogSync.StartsWith("M", StringComparison.CurrentCultureIgnoreCase))
51
- // logSync = LogSyncMode.Message;
52
- // else if (strLogSync.StartsWith("F", StringComparison.CurrentCultureIgnoreCase))
53
- // logSync = LogSyncMode.Flush;
54
- // }
55
- //
56
33
  }
57
34
  catch (e) {
58
35
  this.WriteDevToLog("ClientManager.init(): " + e.Message);
@@ -76,9 +53,6 @@ export class Logger {
76
53
  ShouldLogExtendedServerRelatedMessages() {
77
54
  return (Logger.Instance.ShouldLog(Logger_LogLevels.ServerMessages) || Logger.Instance.ShouldLog(Logger_LogLevels.Support) || Logger.Instance.ShouldLog(Logger_LogLevels.Development)) && this.LogLevel !== Logger_LogLevels.Basic;
78
55
  }
79
- /// <summary></summary>
80
- /// <param name="msg"></param>
81
- /// <param name="openIfNecessary">open the log file if not opened yet</param>
82
56
  WriteToLog(msg, openIfNecessary, logType = LogType.info) {
83
57
  if (this.LogLevel > Logger_LogLevels.None || openIfNecessary) {
84
58
  msg = NString.Format("{0} {1}", (this.LogLevel === Logger_LogLevels.Basic) ? new Date().toISOString() : DateTimeUtils.ToString(DateTime.Now, XMLConstants.ERROR_LOG_TIME_FORMAT, this), msg);
@@ -94,26 +68,16 @@ export class Logger {
94
68
  }
95
69
  }
96
70
  }
97
- /// <summary>
98
- /// write a server access to the log
99
- /// </summary>
100
- /// <param name="msg">the message to write to the log</param>
101
71
  WriteServerToLog(msg) {
102
72
  if (this.ShouldLogServerRelatedMessages()) {
103
73
  this.WriteToLog(NString.Format("Server, Thread={0}: ", Thread.CurrentThread.ManagedThreadId) + msg, false, LogType.info);
104
74
  }
105
75
  }
106
- /// <summary>
107
- /// write a server access to the log, including the content
108
- /// </summary>
109
- /// <param name="msg">the message to write to the log</param>
110
76
  WriteServerMessagesToLog(msg) {
111
77
  if (this.ShouldLogExtendedServerRelatedMessages()) {
112
78
  this.WriteToLog("Server#: " + msg, false, LogType.info);
113
79
  }
114
80
  }
115
- /// <summary>Write a QC message to the log</summary>
116
- /// <param name="msg">the message to write to the log</param>
117
81
  WriteSupportToLog(msg, skipLine) {
118
82
  if (this.LogLevel >= Logger_LogLevels.Support && this.LogLevel !== Logger_LogLevels.Basic) {
119
83
  if (skipLine) {
@@ -124,31 +88,16 @@ export class Logger {
124
88
  }
125
89
  }
126
90
  }
127
- /// <summary>
128
- /// write a performance message to the log
129
- /// </summary>
130
- /// <param name="msg">the message to write to the log</param>
131
91
  WriteGuiToLog(msg) {
132
92
  if (this.LogLevel >= Logger_LogLevels.Gui && this.LogLevel !== Logger_LogLevels.Basic) {
133
93
  this.WriteToLog(msg, false, LogType.info);
134
94
  }
135
95
  }
136
- /// <summary>
137
- /// write a developer message to the log
138
- /// </summary>
139
- /// <param name="msg">the message to write to the log</param>
140
96
  WriteDevToLog(msg) {
141
97
  if (this.LogLevel >= Logger_LogLevels.Development && this.LogLevel !== Logger_LogLevels.Basic) {
142
98
  this.WriteToLog("DEV: " + msg, false, LogType.info);
143
99
  }
144
100
  }
145
- /// <summary>
146
- /// Writes a basic level entry to log
147
- /// </summary>
148
- /// <param name="messageDirection">message direction relative to the current module (RIA client). Can be either MessageEntering or MessageLeaving</param>
149
- /// <param name="statusCode">HTTP status code</param>
150
- /// <param name="contentLength">length of the http message</param>
151
- /// <param name="httpHeaders">HTTP headers</param>
152
101
  WriteBasicToLog(messageDirection, contextID, sessionCounter, clientID, serverID, responseTime, statusCode, httpHeaders, contentLength) {
153
102
  if (this.LogLevel === Logger_LogLevels.Basic) {
154
103
  let text = httpHeaders;
@@ -156,8 +105,6 @@ export class Logger {
156
105
  text = NString.Replace(text, "\r\n", "|");
157
106
  let arg_E4_0 = "RIA,{0}_{1},{2},{3},{4},{5},-,{6},{7},{8},{9},{10},{11}";
158
107
  let expr_3E = new Array(12);
159
- // TODO : need to check How to handle Process class.
160
- // expr_3E[0] = Process.GetCurrentProcess().Id;
161
108
  expr_3E[1] = Thread.CurrentThread.ManagedThreadId;
162
109
  expr_3E[2] = new Date().toISOString();
163
110
  expr_3E[3] = ((messageDirection === Logger_MessageDirection.MessageLeaving) ? "MSGL" : "MSGE");
@@ -176,37 +123,14 @@ export class Logger {
176
123
  console.log(value);
177
124
  }
178
125
  }
179
- /// <summary>
180
- /// Writes request information to log
181
- /// </summary>
182
- /// <param name="clientSession">The clientSession object to be logged</param>
183
126
  WriteRequestInfoToLog(requestInfo, extraMessageStr) {
184
127
  if (this.LogLevel === Logger_LogLevels.RequestInfo) {
185
- // Chrome debugger automatically recomputes logged objects.
186
- // Hence, clone the requestInfo object to print the details at the time of logging
187
128
  console.log(extraMessageStr, RequestInfo.clone(requestInfo));
188
129
  }
189
130
  }
190
- /// <summary>
191
- /// Writes a request exception basic level entry to log
192
- /// </summary>
193
- /// <param name="contextID"></param>
194
- /// <param name="sessionCounter"></param>
195
- /// <param name="clientID"></param>
196
- /// <param name="serverID"></param>
197
- /// <param name="ex">the logged exception</param>
198
131
  WriteBasicErrorToLog(contextID, sessionCounter, clientID, serverID, ex) {
199
132
  Debug.Assert(this.LogLevel === Logger_LogLevels.Basic);
200
- // TODO : Need to check how to handle Process
201
- // let value: string = NString.Format("RIA,{0}_{1},{2},{3},{4},{5},-,{6},{7},-,-,-,{8} {9}", [
202
- // Process.GetCurrentProcess().Id, Thread.CurrentThread.ManagedThreadId, DateTime.UtcNow.ToString("yyyy-MM-ddTHH:mm:ss.fffffffZ"), "RES", contextID, sessionCounter, clientID, serverID, ex.GetType(), ex.Message
203
- // ]);
204
- // NConsole.WriteLine(value);
205
133
  }
206
- /// <summary>
207
- /// Write an error to the log
208
- /// </summary>
209
- /// <param name="msg">the message to write to the log</param>
210
134
  WriteErrorToLog(msg) {
211
135
  this.WriteToLog("MagicWeb [ERROR]: " + StrUtil.getConsoleErorString(msg), true, LogType.error);
212
136
  }
@@ -286,11 +210,8 @@ export class Logger {
286
210
  }
287
211
  this.WriteToLog(stringBuilder.ToString(), true);
288
212
  }
289
- /// <summary>
290
- /// Flush the log writer.
291
- /// </summary>
292
213
  Flush() {
293
214
  }
294
215
  }
295
216
  Logger.instance = null;
296
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9nZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdXRpbHMvc3JjL0xvZ2dlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsdUJBQXVCLEVBQUMsTUFBTSxTQUFTLENBQUM7QUFDbEUsT0FBTyxFQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBYyxhQUFhLEVBQUUsTUFBTSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDNUcsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRXZDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVwQyxNQUFNLENBQU4sSUFBWSxPQUlYO0FBSkQsV0FBWSxPQUFPO0lBQ2pCLHFDQUFRLENBQUE7SUFDUiwyQ0FBTyxDQUFBO0lBQ1AsdUNBQUssQ0FBQTtBQUNQLENBQUMsRUFKVyxPQUFPLEtBQVAsT0FBTyxRQUlsQjtBQUdELGFBQWE7QUFDYiw4SUFBOEk7QUFDOUksY0FBYztBQUNkLFVBQVU7QUFDVixNQUFNLE9BQU8sTUFBTTtJQW9WakI7UUFsVkEsYUFBUSxHQUFxQixDQUFDLENBQUMsQ0FBQyxtQkFBbUI7UUFFbkQsYUFBYTtRQUNiLCtEQUErRDtRQUMvRCxjQUFjO1FBQ2QsZUFBVSxHQUFZLEtBQUssQ0FBQztJQThVNUIsQ0FBQztJQTVVRCxNQUFNLEtBQUssUUFBUSxDQUFDLEtBQWE7UUFDL0IsTUFBTSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7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QU0sQ0FBQztRQUNuQyxLQUFLLElBQUksQ0FBQyxHQUFXLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNuRCxJQUFJLFVBQVUsR0FBaUIsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hDLGFBQWEsR0FBRyxhQUFhLEdBQUcsQ0FBQyxDQUFDO1lBRWxDLGFBQWEsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7WUFFNUMsSUFBSSxhQUFhLEtBQUssQ0FBQyxFQUFFO2dCQUN2QixhQUFhLENBQUMsTUFBTSxDQUFDLCtCQUErQixDQUFDLENBQUM7Z0JBQ3RELE1BQU07YUFDUDtTQUNGO1FBQ0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELGFBQWE7SUFDYix5QkFBeUI7SUFDekIsY0FBYztJQUNkLEtBQUs7SUFFTCxDQUFDOztBQWpWTSxlQUFRLEdBQVcsSUFBSSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtMb2dnZXJfTG9nTGV2ZWxzLCBMb2dnZXJfTWVzc2FnZURpcmVjdGlvbn0gZnJvbSBcIi4vZW51bXNcIjtcclxuaW1wb3J0IHtEYXRlVGltZSwgRGVidWcsIEV4Y2VwdGlvbiwgTlN0cmluZywgU3RhY2tUcmFjZSwgU3RyaW5nQnVpbGRlciwgVGhyZWFkfSBmcm9tIFwiQG1hZ2ljLXhwYS9tc2NvcmVsaWJcIjtcclxuaW1wb3J0IHtPU0Vudmlyb25tZW50fSBmcm9tIFwiLi9QbGF0Zm9ybVV0aWxzXCI7XHJcbmltcG9ydCB7RGF0ZVRpbWVVdGlsc30gZnJvbSBcIi4vRGF0ZVRpbWVVdGlsc1wiO1xyXG5pbXBvcnQge1hNTENvbnN0YW50c30gZnJvbSBcIi4vWE1MQ29uc3RhbnRzXCI7XHJcbmltcG9ydCAqIGFzIEpTU3RhY2tUcmFjZSBmcm9tICdzdGFja3RyYWNlLWpzJztcclxuaW1wb3J0IHtpc051bGxPclVuZGVmaW5lZH0gZnJvbSBcInV0aWxcIjtcclxuaW1wb3J0IEpTU3RhY2tGcmFtZSA9IEpTU3RhY2tUcmFjZS5TdGFja0ZyYW1lO1xyXG5pbXBvcnQge1JlcXVlc3RJbmZvfSBmcm9tIFwiLi9SZXF1ZXN0SW5mb1wiO1xyXG5pbXBvcnQgeyBTdHJVdGlsIH0gZnJvbSBcIi4vU3RyVXRpbFwiO1xyXG5cclxuZXhwb3J0IGVudW0gTG9nVHlwZSB7XHJcbiAgaW5mbyA9IDEsXHJcbiAgd2FybmluZyxcclxuICBlcnJvclxyXG59XHJcblxyXG5cclxuLy8vIDxzdW1tYXJ5PlxyXG4vLy8gTG9nZ2VyIGNsYXNzIHdpbGwgdGFrZSBjYXJlIG9mIGNsaWVudCBzaWRlIGxvZ2dpbmcgLiBJdCB3aWxsIGNoZWNrIGZvciB2YXJpb3VzIGxvZyBsZXZlbHMgYW5kIGFjY29yZGluZ2x5IHdpbGwgd3JpdGUgbWVzc2FnZXMgaW4gbG9nIGZpbGUuXHJcbi8vLyA8L3N1bW1hcnk+XHJcbi8vQGR5bmFtaWNcclxuZXhwb3J0IGNsYXNzIExvZ2dlciB7XHJcbiAgc3RhdGljIGluc3RhbmNlOiBMb2dnZXIgPSBudWxsO1xyXG4gIExvZ0xldmVsOiBMb2dnZXJfTG9nTGV2ZWxzID0gMDsgLy8gSW50ZXJuYWxMb2dMZXZlbFxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIFdoaWxlIHdyaXRpbmcgdGhlIGVycm9yIG1lc3NhZ2VzIGluIHRoZSBmaWxlIHBsYXkgdGhlIGJlZXAuXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBTaG91bGRCZWVwOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHN0YXRpYyBzZXQgSW5zdGFuY2UodmFsdWU6IExvZ2dlcikge1xyXG4gICAgTG9nZ2VyLmluc3RhbmNlID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZ2V0IEluc3RhbmNlKCk6IExvZ2dlciB7XHJcbiAgICBpZiAoTG9nZ2VyLmluc3RhbmNlID09PSBudWxsKSB7XHJcbiAgICAgIExvZ2dlci5pbnN0YW5jZSA9IG5ldyBMb2dnZXIoKTtcclxuICAgIH1cclxuICAgIHJldHVybiBMb2dnZXIuaW5zdGFuY2U7XHJcbiAgfVxyXG5cclxuLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBJbml0aWFsaXplIGxvZ2dlclxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwibG9nTGV2ZWxcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImludGVybmFsTG9nU3luY1wiPjwvcGFyYW0+XHJcbiAgSW5pdGlhbGl6ZShsb2dMZXZlbDogTG9nZ2VyX0xvZ0xldmVscywgaW50ZXJuYWxMb2dTeW5jOiBzdHJpbmcsIHNob3VsZEJlZXA6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIC8vIGxldCBsb2dTeW5jOiBMb2dTeW5jTW9kZSAgPSBMb2dTeW5jTW9kZS5TZXNzaW9uO1xyXG4gICAgICB0aGlzLkxvZ0xldmVsID0gbG9nTGV2ZWw7XHJcbiAgICAgIHRoaXMuU2hvdWxkQmVlcCA9IHNob3VsZEJlZXA7XHJcblxyXG4gICAgICAvLyBUT0RPOiBpbXBsZW1lbnRcclxuLy8gICBTdHJpbmcgc3RyTG9nU3luYyA9IGludGVybmFsTG9nU3luYztcclxuLy8gICBpZiAoIXN0cmluZy5Jc051bGxPckVtcHR5KHN0ckxvZ1N5bmMpKVxyXG4vLyB7XHJcbi8vICAgaWYgKHN0ckxvZ1N5bmMuU3RhcnRzV2l0aChcIk1cIiwgU3RyaW5nQ29tcGFyaXNvbi5DdXJyZW50Q3VsdHVyZUlnbm9yZUNhc2UpKVxyXG4vLyAgIGxvZ1N5bmMgPSBMb2dTeW5jTW9kZS5NZXNzYWdlO1xyXG4vLyAgIGVsc2UgaWYgKHN0ckxvZ1N5bmMuU3RhcnRzV2l0aChcIkZcIiwgU3RyaW5nQ29tcGFyaXNvbi5DdXJyZW50Q3VsdHVyZUlnbm9yZUNhc2UpKVxyXG4vLyAgIGxvZ1N5bmMgPSBMb2dTeW5jTW9kZS5GbHVzaDtcclxuLy8gfVxyXG4vL1xyXG4gICAgfVxyXG4gICAgY2F0Y2ggKGUpIHtcclxuICAgICAgdGhpcy5Xcml0ZURldlRvTG9nKFwiQ2xpZW50TWFuYWdlci5pbml0KCk6IFwiICsgZS5NZXNzYWdlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT48L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwibG9nTGV2ZWxcIj48L3BhcmFtPlxyXG4gIC8vLyA8cmV0dXJucz48L3JldHVybnM+XHJcblxyXG4gIFNob3VsZExvZyhsb2dMZXZlbDogTG9nZ2VyX0xvZ0xldmVscyk6IGJvb2xlYW47XHJcbiAgU2hvdWxkTG9nKCk6IGJvb2xlYW47XHJcbiAgU2hvdWxkTG9nKGxvZ0xldmVsPzogTG9nZ2VyX0xvZ0xldmVscyk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDEpXHJcbiAgICAgIHJldHVybiB0aGlzLlNob3VsZExvZ18wKGxvZ0xldmVsKTtcclxuICAgIGVsc2VcclxuICAgICAgcmV0dXJuIHRoaXMuU2hvdWxkTG9nXzEoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgU2hvdWxkTG9nXzAobG9nTGV2ZWw6IExvZ2dlcl9Mb2dMZXZlbHMpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLkxvZ0xldmVsID09PSBsb2dMZXZlbDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgU2hvdWxkTG9nXzEoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5Mb2dMZXZlbCA+IExvZ2dlcl9Mb2dMZXZlbHMuTm9uZTtcclxuICB9XHJcblxyXG4gIFNob3VsZExvZ1NlcnZlclJlbGF0ZWRNZXNzYWdlcygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAodGhpcy5TaG91bGRMb2dFeHRlbmRlZFNlcnZlclJlbGF0ZWRNZXNzYWdlcygpIHx8IExvZ2dlci5JbnN0YW5jZS5TaG91bGRMb2coTG9nZ2VyX0xvZ0xldmVscy5TZXJ2ZXIpKSAmJiB0aGlzLkxvZ0xldmVsICE9PSBMb2dnZXJfTG9nTGV2ZWxzLkJhc2ljO1xyXG4gIH1cclxuXHJcbiAgU2hvdWxkTG9nRXh0ZW5kZWRTZXJ2ZXJSZWxhdGVkTWVzc2FnZXMoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gKExvZ2dlci5JbnN0YW5jZS5TaG91bGRMb2coTG9nZ2VyX0xvZ0xldmVscy5TZXJ2ZXJNZXNzYWdlcykgfHwgTG9nZ2VyLkluc3RhbmNlLlNob3VsZExvZyhMb2dnZXJfTG9nTGV2ZWxzLlN1cHBvcnQpIHx8IExvZ2dlci5JbnN0YW5jZS5TaG91bGRMb2coTG9nZ2VyX0xvZ0xldmVscy5EZXZlbG9wbWVudCkpICYmIHRoaXMuTG9nTGV2ZWwgIT09IExvZ2dlcl9Mb2dMZXZlbHMuQmFzaWM7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+PC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cIm1zZ1wiPjwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwib3BlbklmTmVjZXNzYXJ5XCI+b3BlbiB0aGUgbG9nIGZpbGUgaWYgbm90IG9wZW5lZCB5ZXQ8L3BhcmFtPlxyXG5cclxuICBXcml0ZVRvTG9nKG1zZzogc3RyaW5nLCBvcGVuSWZOZWNlc3Nhcnk6IGJvb2xlYW4sIGxvZ1R5cGU6IExvZ1R5cGUgPSBMb2dUeXBlLmluZm8pOiB2b2lkIHtcclxuXHJcbiAgICBpZiAodGhpcy5Mb2dMZXZlbCA+IExvZ2dlcl9Mb2dMZXZlbHMuTm9uZSB8fCBvcGVuSWZOZWNlc3NhcnkpIHtcclxuICAgICAgbXNnID0gTlN0cmluZy5Gb3JtYXQoXCJ7MH0gezF9XCIsICh0aGlzLkxvZ0xldmVsID09PSBMb2dnZXJfTG9nTGV2ZWxzLkJhc2ljKSA/IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSA6IERhdGVUaW1lVXRpbHMuVG9TdHJpbmcoRGF0ZVRpbWUuTm93LCBYTUxDb25zdGFudHMuRVJST1JfTE9HX1RJTUVfRk9STUFULCB0aGlzKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgbXNnKTtcclxuXHJcbiAgICAgIHN3aXRjaCAobG9nVHlwZSkge1xyXG4gICAgICAgIGNhc2UgTG9nVHlwZS5lcnJvcjpcclxuICAgICAgICAgIGNvbnNvbGUuZXJyb3IobXNnKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgTG9nVHlwZS53YXJuaW5nOlxyXG4gICAgICAgICAgY29uc29sZS53YXJuKG1zZyk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgY29uc29sZS5sb2cobXNnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyB3cml0ZSBhIHNlcnZlciBhY2Nlc3MgdG8gdGhlIGxvZ1xyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwibXNnXCI+dGhlIG1lc3NhZ2UgdG8gd3JpdGUgdG8gdGhlIGxvZzwvcGFyYW0+XHJcbiAgV3JpdGVTZXJ2ZXJUb0xvZyhtc2c6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuU2hvdWxkTG9nU2VydmVyUmVsYXRlZE1lc3NhZ2VzKCkpIHtcclxuICAgICAgdGhpcy5Xcml0ZVRvTG9nKE5TdHJpbmcuRm9ybWF0KFwiU2VydmVyLCBUaHJlYWQ9ezB9OiBcIiwgVGhyZWFkLkN1cnJlbnRUaHJlYWQuTWFuYWdlZFRocmVhZElkKSArIG1zZywgZmFsc2UsIExvZ1R5cGUuaW5mbyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIHdyaXRlIGEgc2VydmVyIGFjY2VzcyB0byB0aGUgbG9nLCBpbmNsdWRpbmcgdGhlIGNvbnRlbnRcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cIm1zZ1wiPnRoZSBtZXNzYWdlIHRvIHdyaXRlIHRvIHRoZSBsb2c8L3BhcmFtPlxyXG4gIFdyaXRlU2VydmVyTWVzc2FnZXNUb0xvZyhtc2c6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuU2hvdWxkTG9nRXh0ZW5kZWRTZXJ2ZXJSZWxhdGVkTWVzc2FnZXMoKSkge1xyXG4gICAgICB0aGlzLldyaXRlVG9Mb2coXCJTZXJ2ZXIjOiBcIiArIG1zZywgZmFsc2UsIExvZ1R5cGUuaW5mbyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+V3JpdGUgYSBRQyBtZXNzYWdlIHRvIHRoZSBsb2c8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwibXNnXCI+dGhlIG1lc3NhZ2UgdG8gd3JpdGUgdG8gdGhlIGxvZzwvcGFyYW0+XHJcbiAgV3JpdGVTdXBwb3J0VG9Mb2cobXNnOiBzdHJpbmcsIHNraXBMaW5lOiBib29sZWFuKTogdm9pZCB7XHJcblxyXG4gICAgaWYgKHRoaXMuTG9nTGV2ZWwgPj0gTG9nZ2VyX0xvZ0xldmVscy5TdXBwb3J0ICYmIHRoaXMuTG9nTGV2ZWwgIT09IExvZ2dlcl9Mb2dMZXZlbHMuQmFzaWMpIHtcclxuICAgICAgaWYgKHNraXBMaW5lKSB7XHJcbiAgICAgICAgdGhpcy5Xcml0ZVRvTG9nKFwiU1VQUE9SVDogXCIgKyBtc2csIGZhbHNlLCBMb2dUeXBlLmluZm8pO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIHRoaXMuV3JpdGVUb0xvZyhcIlNVUFBPUlQ6IFwiICsgbXNnICsgT1NFbnZpcm9ubWVudC5Fb2xTZXEgKyBcIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXCIsIGZhbHNlLCBMb2dUeXBlLmluZm8pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIHdyaXRlIGEgcGVyZm9ybWFuY2UgbWVzc2FnZSB0byB0aGUgbG9nXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJtc2dcIj50aGUgbWVzc2FnZSB0byB3cml0ZSB0byB0aGUgbG9nPC9wYXJhbT5cclxuICBXcml0ZUd1aVRvTG9nKG1zZzogc3RyaW5nKTogdm9pZCB7XHJcblxyXG4gICAgaWYgKHRoaXMuTG9nTGV2ZWwgPj0gTG9nZ2VyX0xvZ0xldmVscy5HdWkgJiYgdGhpcy5Mb2dMZXZlbCAhPT0gTG9nZ2VyX0xvZ0xldmVscy5CYXNpYykge1xyXG4gICAgICB0aGlzLldyaXRlVG9Mb2cobXNnLCBmYWxzZSwgTG9nVHlwZS5pbmZvKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gd3JpdGUgYSBkZXZlbG9wZXIgbWVzc2FnZSB0byB0aGUgbG9nXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJtc2dcIj50aGUgbWVzc2FnZSB0byB3cml0ZSB0byB0aGUgbG9nPC9wYXJhbT5cclxuICBXcml0ZURldlRvTG9nKG1zZzogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5Mb2dMZXZlbCA+PSBMb2dnZXJfTG9nTGV2ZWxzLkRldmVsb3BtZW50ICYmIHRoaXMuTG9nTGV2ZWwgIT09IExvZ2dlcl9Mb2dMZXZlbHMuQmFzaWMpIHtcclxuICAgICAgdGhpcy5Xcml0ZVRvTG9nKFwiREVWOiBcIiArIG1zZywgZmFsc2UsIExvZ1R5cGUuaW5mbyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIFdyaXRlcyBhIGJhc2ljIGxldmVsIGVudHJ5IHRvIGxvZ1xyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwibWVzc2FnZURpcmVjdGlvblwiPm1lc3NhZ2UgZGlyZWN0aW9uIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IG1vZHVsZSAoUklBIGNsaWVudCkuIENhbiBiZSBlaXRoZXIgTWVzc2FnZUVudGVyaW5nIG9yIE1lc3NhZ2VMZWF2aW5nPC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJzdGF0dXNDb2RlXCI+SFRUUCBzdGF0dXMgY29kZTwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwiY29udGVudExlbmd0aFwiPmxlbmd0aCBvZiB0aGUgaHR0cCBtZXNzYWdlPC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJodHRwSGVhZGVyc1wiPkhUVFAgaGVhZGVyczwvcGFyYW0+XHJcbiAgV3JpdGVCYXNpY1RvTG9nKG1lc3NhZ2VEaXJlY3Rpb246IExvZ2dlcl9NZXNzYWdlRGlyZWN0aW9uLCBjb250ZXh0SUQ6IHN0cmluZywgc2Vzc2lvbkNvdW50ZXI6IG51bWJlciwgY2xpZW50SUQ6IHN0cmluZywgc2VydmVySUQ6IHN0cmluZywgcmVzcG9uc2VUaW1lOiBudW1iZXIsIHN0YXR1c0NvZGU6IHN0cmluZywgaHR0cEhlYWRlcnM6IHN0cmluZywgY29udGVudExlbmd0aDogbnVtYmVyKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5Mb2dMZXZlbCA9PT0gTG9nZ2VyX0xvZ0xldmVscy5CYXNpYykge1xyXG4gICAgICBsZXQgdGV4dDogc3RyaW5nID0gaHR0cEhlYWRlcnM7XHJcbiAgICAgIHRleHQgPSB0ZXh0LnRyaW0oKTtcclxuICAgICAgdGV4dCA9IE5TdHJpbmcuUmVwbGFjZSh0ZXh0LCBcIlxcclxcblwiLCBcInxcIik7XHJcbiAgICAgIGxldCBhcmdfRTRfMDogc3RyaW5nID0gXCJSSUEsezB9X3sxfSx7Mn0sezN9LHs0fSx7NX0sLSx7Nn0sezd9LHs4fSx7OX0sezEwfSx7MTF9XCI7XHJcbiAgICAgIGxldCBleHByXzNFOiBhbnlbXSA9IG5ldyBBcnJheTxhbnk+KDEyKTtcclxuXHJcbiAgICAgIC8vIFRPRE8gOiBuZWVkIHRvIGNoZWNrIEhvdyB0byBoYW5kbGUgUHJvY2VzcyBjbGFzcy5cclxuICAgICAgLy8gZXhwcl8zRVswXSA9IFByb2Nlc3MuR2V0Q3VycmVudFByb2Nlc3MoKS5JZDtcclxuICAgICAgZXhwcl8zRVsxXSA9IFRocmVhZC5DdXJyZW50VGhyZWFkLk1hbmFnZWRUaHJlYWRJZDtcclxuICAgICAgZXhwcl8zRVsyXSA9IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKTtcclxuICAgICAgZXhwcl8zRVszXSA9ICgobWVzc2FnZURpcmVjdGlvbiA9PT0gTG9nZ2VyX01lc3NhZ2VEaXJlY3Rpb24uTWVzc2FnZUxlYXZpbmcpID8gXCJNU0dMXCIgOiBcIk1TR0VcIik7XHJcbiAgICAgIGV4cHJfM0VbNF0gPSBjb250ZXh0SUQ7XHJcbiAgICAgIGV4cHJfM0VbNV0gPSBzZXNzaW9uQ291bnRlcjtcclxuICAgICAgZXhwcl8zRVs2XSA9IGNsaWVudElEO1xyXG4gICAgICBleHByXzNFWzddID0gc2VydmVySUQ7XHJcbiAgICAgIGV4cHJfM0VbOF0gPSAoKHJlc3BvbnNlVGltZSAhPT0gMCkgPyByZXNwb25zZVRpbWUudG9TdHJpbmcoKSA6IFwiLVwiKTtcclxuICAgICAgbGV0IGFyZ19EM18xOiBudW1iZXIgPSA5O1xyXG4gICAgICBsZXQgYXJnX0QzXzI6IGFueTtcclxuICAgICAgYXJnX0QzXzIgPSBzdGF0dXNDb2RlO1xyXG4gICAgICBleHByXzNFW2FyZ19EM18xXSA9IGFyZ19EM18yO1xyXG4gICAgICBleHByXzNFWzEwXSA9IHRleHQ7XHJcbiAgICAgIGV4cHJfM0VbMTFdID0gY29udGVudExlbmd0aDtcclxuICAgICAgbGV0IHZhbHVlOiBzdHJpbmcgPSBOU3RyaW5nLkZvcm1hdChhcmdfRTRfMCwgZXhwcl8zRSk7XHJcbiAgICAgIGNvbnNvbGUubG9nKHZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gV3JpdGVzIHJlcXVlc3QgaW5mb3JtYXRpb24gdG8gbG9nXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJjbGllbnRTZXNzaW9uXCI+VGhlIGNsaWVudFNlc3Npb24gb2JqZWN0IHRvIGJlIGxvZ2dlZDwvcGFyYW0+XHJcbiAgV3JpdGVSZXF1ZXN0SW5mb1RvTG9nKHJlcXVlc3RJbmZvOiBSZXF1ZXN0SW5mbywgZXh0cmFNZXNzYWdlU3RyOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLkxvZ0xldmVsID09PSBMb2dnZXJfTG9nTGV2ZWxzLlJlcXVlc3RJbmZvKSB7XHJcblxyXG4gICAgICAvLyBDaHJvbWUgZGVidWdnZXIgYXV0b21hdGljYWxseSByZWNvbXB1dGVzIGxvZ2dlZCBvYmplY3RzLlxyXG4gICAgICAvLyBIZW5jZSwgY2xvbmUgdGhlIHJlcXVlc3RJbmZvIG9iamVjdCB0byBwcmludCB0aGUgZGV0YWlscyBhdCB0aGUgdGltZSBvZiBsb2dnaW5nXHJcbiAgICAgIGNvbnNvbGUubG9nKGV4dHJhTWVzc2FnZVN0ciwgUmVxdWVzdEluZm8uY2xvbmUocmVxdWVzdEluZm8pKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gV3JpdGVzIGEgcmVxdWVzdCBleGNlcHRpb24gYmFzaWMgbGV2ZWwgZW50cnkgdG8gbG9nXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJjb250ZXh0SURcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInNlc3Npb25Db3VudGVyXCI+PC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJjbGllbnRJRFwiPjwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwic2VydmVySURcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImV4XCI+dGhlIGxvZ2dlZCBleGNlcHRpb248L3BhcmFtPlxyXG4gIFdyaXRlQmFzaWNFcnJvclRvTG9nKGNvbnRleHRJRDogc3RyaW5nLCBzZXNzaW9uQ291bnRlcjogbnVtYmVyLCBjbGllbnRJRDogc3RyaW5nLCBzZXJ2ZXJJRDogc3RyaW5nLCBleDogRXhjZXB0aW9uKTogdm9pZCB7XHJcbiAgICBEZWJ1Zy5Bc3NlcnQodGhpcy5Mb2dMZXZlbCA9PT0gTG9nZ2VyX0xvZ0xldmVscy5CYXNpYyk7XHJcblxyXG4gICAgLy8gVE9ETyA6IE5lZWQgdG8gY2hlY2sgaG93IHRvIGhhbmRsZSBQcm9jZXNzXHJcbiAgICAvLyBsZXQgdmFsdWU6IHN0cmluZyA9IE5TdHJpbmcuRm9ybWF0KFwiUklBLHswfV97MX0sezJ9LHszfSx7NH0sezV9LC0sezZ9LHs3fSwtLC0sLSx7OH0gezl9XCIsIFtcclxuICAgIC8vIFByb2Nlc3MuR2V0Q3VycmVudFByb2Nlc3MoKS5JZCwgVGhyZWFkLkN1cnJlbnRUaHJlYWQuTWFuYWdlZFRocmVhZElkLCBEYXRlVGltZS5VdGNOb3cuVG9TdHJpbmcoXCJ5eXl5LU1NLWRkVEhIOm1tOnNzLmZmZmZmZmZaXCIpLCBcIlJFU1wiLCBjb250ZXh0SUQsIHNlc3Npb25Db3VudGVyLCBjbGllbnRJRCwgc2VydmVySUQsIGV4LkdldFR5cGUoKSwgZXguTWVzc2FnZVxyXG4gICAgLy8gXSk7XHJcbiAgICAvLyBOQ29uc29sZS5Xcml0ZUxpbmUodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBXcml0ZSBhbiBlcnJvciB0byB0aGUgbG9nXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJtc2dcIj50aGUgbWVzc2FnZSB0byB3cml0ZSB0byB0aGUgbG9nPC9wYXJhbT5cclxuICBXcml0ZUVycm9yVG9Mb2cobXNnOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuV3JpdGVUb0xvZyhcIk1hZ2ljV2ViIFtFUlJPUl06IFwiICsgU3RyVXRpbC5nZXRDb25zb2xlRXJvclN0cmluZyhtc2cpLCB0cnVlLCBMb2dUeXBlLmVycm9yKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gV3JpdGUgYW4gaW50ZXJuYWwgZXJyb3IgdG8gdGhlIGxvZy4gQWxzbyBwcmludHMgc3RhY2sgdHJhY2UgYWxvbmcgd2l0aCB0aGUgbWVzc2FnZVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwibXNnXCI+dGhlIG1lc3NhZ2UgdG8gd3JpdGUgdG8gdGhlIGxvZzwvcGFyYW0+XHJcbiAgV3JpdGVFeGNlcHRpb25Ub0xvZyhleDogRXhjZXB0aW9uKTogdm9pZDtcclxuICBXcml0ZUV4Y2VwdGlvblRvTG9nKGV4OiBFcnJvcik6IHZvaWQ7XHJcbiAgV3JpdGVFeGNlcHRpb25Ub0xvZyhleDogRXhjZXB0aW9uLCBtc2c6IHN0cmluZyk6IHZvaWQ7XHJcbiAgV3JpdGVFeGNlcHRpb25Ub0xvZyhtc2dPckV4OiBhbnksIG1zZz86IHN0cmluZyk6IHZvaWQge1xyXG4gICAgaWYgKG1zZ09yRXggaW5zdGFuY2VvZiBFcnJvcikge1xyXG4gICAgICB0aGlzLldyaXRlRXhjZXB0aW9uVG9Mb2dfMihtc2dPckV4LCBtc2cpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMSAmJiAobXNnT3JFeCAhPT0gbnVsbCB8fCBtc2dPckV4IGluc3RhbmNlb2YgRXhjZXB0aW9uKSkge1xyXG4gICAgICB0aGlzLldyaXRlRXhjZXB0aW9uVG9Mb2dfMShtc2dPckV4KTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuV3JpdGVFeGNlcHRpb25Ub0xvZ18zKG1zZ09yRXgsIG1zZyk7XHJcbiAgfVxyXG5cclxuICBXcml0ZUV4Y2VwdGlvblRvTG9nV2l0aE1zZyhtc2c6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5Xcml0ZVRvTG9nKFwiTWFnaWNXZWIgW0VSUk9SXTogXCIgKyBTdHJVdGlsLmdldENvbnNvbGVFcm9yU3RyaW5nKG1zZyksIHRydWUsIExvZ1R5cGUuZXJyb3IpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBXcml0ZUV4Y2VwdGlvblRvTG9nXzEoZXg6IEV4Y2VwdGlvbik6IHZvaWQge1xyXG4gICAgdGhpcy5Xcml0ZUV4Y2VwdGlvblRvTG9nV2l0aE1zZyhOU3RyaW5nLkZvcm1hdChcInswfSA6IHsxfXsyfXszfXs0fVwiLCBbXHJcbiAgICAgIGV4LkdldFR5cGUoKSwgT1NFbnZpcm9ubWVudC5Fb2xTZXEsIGV4LlN0YWNrVHJhY2UsIE9TRW52aXJvbm1lbnQuRW9sU2VxLCBleC5NZXNzYWdlXHJcbiAgICBdKSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIFdyaXRlRXhjZXB0aW9uVG9Mb2dfMihleDogRXJyb3IsIG1lc3NhZ2U6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgaWYgKGlzTnVsbE9yVW5kZWZpbmVkKG1lc3NhZ2UpKVxyXG4gICAgICB0aGlzLldyaXRlRXhjZXB0aW9uVG9Mb2dXaXRoTXNnKE5TdHJpbmcuRm9ybWF0KFwiezB9ezF9ezJ9XCIsIFtleC5zdGFjaywgT1NFbnZpcm9ubWVudC5Fb2xTZXEsIGV4Lm1lc3NhZ2VdKSk7XHJcbiAgICBlbHNlXHJcbiAgICAgIHRoaXMuV3JpdGVFeGNlcHRpb25Ub0xvZ1dpdGhNc2coTlN0cmluZy5Gb3JtYXQoXCJ7MH17MX17Mn17NH17NX1cIiwgW21lc3NhZ2UsIE9TRW52aXJvbm1lbnQuRW9sU2VxLCBleC5zdGFjaywgT1NFbnZpcm9ubWVudC5Fb2xTZXEsIGV4Lm1lc3NhZ2VdKSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIFdyaXRlRXhjZXB0aW9uVG9Mb2dfMyhleDogRXhjZXB0aW9uLCBtc2c6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5Xcml0ZUV4Y2VwdGlvblRvTG9nV2l0aE1zZyhOU3RyaW5nLkZvcm1hdChcInswfSwgezF9IDogezJ9ezN9ezR9ezV9XCIsIFtcclxuICAgICAgZXguR2V0VHlwZSgpLCBtc2csIE9TRW52aXJvbm1lbnQuRW9sU2VxLCBleC5TdGFja1RyYWNlLCBPU0Vudmlyb25tZW50LkVvbFNlcSwgZXguTWVzc2FnZVxyXG4gICAgXSkpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiB3cml0ZSBhIHdhcm5pbmcgdG8gdGhlIGxvZzwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJtc2dcIj50aGUgbWVzc2FnZSB0byB3cml0ZSB0byB0aGUgbG9nPC9wYXJhbT5cclxuICBXcml0ZVdhcm5pbmdUb0xvZyhleDogRXhjZXB0aW9uKTogdm9pZDtcclxuICBXcml0ZVdhcm5pbmdUb0xvZyhleDogRXhjZXB0aW9uLCBtc2c6IHN0cmluZyk6IHZvaWQ7XHJcbiAgV3JpdGVXYXJuaW5nVG9Mb2coZXg6IEVycm9yKTogdm9pZDtcclxuICBXcml0ZVdhcm5pbmdUb0xvZyhtc2dPckV4OiBhbnksIG1zZz86IHN0cmluZyk6IHZvaWQge1xyXG4gICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDEgJiYgbXNnT3JFeCAhPT0gbnVsbCkge1xyXG4gICAgICBpZiAobXNnT3JFeCBpbnN0YW5jZW9mIEV4Y2VwdGlvbilcclxuICAgICAgICB0aGlzLldyaXRlV2FybmluZ1RvTG9nXzEobXNnT3JFeCk7XHJcbiAgICAgIGVsc2UgaWYgKG1zZ09yRXggaW5zdGFuY2VvZiBFcnJvcilcclxuICAgICAgICB0aGlzLldyaXRlV2FybmluZ1RvTG9nXzIobXNnT3JFeCk7XHJcbiAgICB9XHJcbiAgICBlbHNlXHJcbiAgICAgIHRoaXMuV3JpdGVXYXJuaW5nVG9Mb2dfMyhtc2dPckV4LCBtc2cpO1xyXG4gIH1cclxuXHJcbiAgV3JpdGVXYXJuaW5nVG9Mb2dXaXRoTXNnKG1zZzogc3RyaW5nKTogdm9pZCB7XHJcblxyXG4gICAgaWYgKHRoaXMuTG9nTGV2ZWwgIT09IExvZ2dlcl9Mb2dMZXZlbHMuQmFzaWMpIHtcclxuICAgICAgdGhpcy5Xcml0ZVRvTG9nKFwiTWFnaWNXZWIgW1dBUk5JTkddOiBcIiArIG1zZywgdHJ1ZSwgTG9nVHlwZS53YXJuaW5nKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgV3JpdGVXYXJuaW5nVG9Mb2dfMShleDogRXhjZXB0aW9uKTogdm9pZCB7XHJcbiAgICB0aGlzLldyaXRlV2FybmluZ1RvTG9nV2l0aE1zZyhleC5HZXRUeXBlKCkgKyBcIiA6IFwiICsgT1NFbnZpcm9ubWVudC5Fb2xTZXEgKyBleC5TdGFja1RyYWNlICsgT1NFbnZpcm9ubWVudC5Fb2xTZXEgKyBleC5NZXNzYWdlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgV3JpdGVXYXJuaW5nVG9Mb2dfMihleDogRXJyb3IpOiB2b2lkIHtcclxuICAgIHRoaXMuV3JpdGVXYXJuaW5nVG9Mb2dXaXRoTXNnKE5TdHJpbmcuRm9ybWF0KFwiezB9ezF9ezJ9XCIsIFtcclxuICAgICAgZXguc3RhY2ssIE9TRW52aXJvbm1lbnQuRW9sU2VxLCBleC5tZXNzYWdlXHJcbiAgICBdKSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIFdyaXRlV2FybmluZ1RvTG9nXzMoZXg6IEV4Y2VwdGlvbiwgbXNnOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuV3JpdGVXYXJuaW5nVG9Mb2dXaXRoTXNnKE5TdHJpbmcuRm9ybWF0KFwiezB9LCB7MX0gOiB7Mn17M317NH17NX1cIiwgW1xyXG4gICAgICBleC5HZXRUeXBlKCksIG1zZywgT1NFbnZpcm9ubWVudC5Fb2xTZXEsIGV4LlN0YWNrVHJhY2UsIE9TRW52aXJvbm1lbnQuRW9sU2VxLCBleC5NZXNzYWdlXHJcbiAgICBdKSk7XHJcbiAgfVxyXG5cclxuICBXcml0ZVN0YWNrVHJhY2Uoc3RhY2tUcmFjZTogU3RhY2tUcmFjZSwgZnJhbWVzVG9QcmludDogbnVtYmVyLCB0cmFjZVRpdGxlOiBzdHJpbmcpOiB2b2lkIHtcclxuXHJcbiAgICBpZiAodHJhY2VUaXRsZSA9PT0gbnVsbCkge1xyXG4gICAgICB0cmFjZVRpdGxlID0gXCJTdGFjayB0cmFjZTpcIjtcclxuICAgIH1cclxuICAgIGxldCBzdHJpbmdCdWlsZGVyOiBTdHJpbmdCdWlsZGVyID0gbmV3IFN0cmluZ0J1aWxkZXIodHJhY2VUaXRsZSArIE9TRW52aXJvbm1lbnQuRW9sU2VxKTtcclxuICAgIGxldCBmcmFtZXM6IEpTU3RhY2tGcmFtZVtdID0gc3RhY2tUcmFjZS5HZXRGcmFtZXMoKTtcclxuICAgIGxldCBhcnJheTogSlNTdGFja0ZyYW1lW10gPSBmcmFtZXM7XHJcbiAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAwOyBpIDwgYXJyYXkubGVuZ3RoOyBpID0gaSArIDEpIHtcclxuICAgICAgbGV0IHN0YWNrRnJhbWU6IEpTU3RhY2tGcmFtZSA9IGFycmF5W2ldO1xyXG4gICAgICBmcmFtZXNUb1ByaW50ID0gZnJhbWVzVG9QcmludCAtIDE7XHJcblxyXG4gICAgICBzdHJpbmdCdWlsZGVyLkFwcGVuZChzdGFja0ZyYW1lLnRvU3RyaW5nKCkpO1xyXG5cclxuICAgICAgaWYgKGZyYW1lc1RvUHJpbnQgPT09IDApIHtcclxuICAgICAgICBzdHJpbmdCdWlsZGVyLkFwcGVuZChcIlxcdC4uLiBtb3JlIHN0YWNrIGZyYW1lcyAuLi5cXG5cIik7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMuV3JpdGVUb0xvZyhzdHJpbmdCdWlsZGVyLlRvU3RyaW5nKCksIHRydWUpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBGbHVzaCB0aGUgbG9nIHdyaXRlci5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIEZsdXNoKCk6IHZvaWQge1xyXG5cclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gIH1cclxufVxyXG4iXX0=
217
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9nZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdXRpbHMvc3JjL0xvZ2dlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsdUJBQXVCLEVBQUMsTUFBTSxTQUFTLENBQUM7QUFDbEUsT0FBTyxFQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBYyxhQUFhLEVBQUUsTUFBTSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDNUcsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRXZDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVwQyxNQUFNLENBQU4sSUFBWSxPQUlYO0FBSkQsV0FBWSxPQUFPO0lBQ2pCLHFDQUFRLENBQUE7SUFDUiwyQ0FBTyxDQUFBO0lBQ1AsdUNBQUssQ0FBQTtBQUNQLENBQUMsRUFKVyxPQUFPLEtBQVAsT0FBTyxRQUlsQjtBQU9ELE1BQU0sT0FBTyxNQUFNO0lBb1ZqQjtRQWxWQSxhQUFRLEdBQXFCLENBQUMsQ0FBQztRQUsvQixlQUFVLEdBQVksS0FBSyxDQUFDO0lBOFU1QixDQUFDO0lBNVVELE1BQU0sS0FBSyxRQUFRLENBQUMsS0FBYTtRQUMvQixNQUFNLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBRUQsTUFBTSxLQUFLLFFBQVE7UUFDakIsSUFBSSxNQUFNLENBQUMsUUFBUSxLQUFLLElBQUksRUFBRTtZQUM1QixNQUFNLENB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QUssSUFBSSxDQUFDLEdBQVcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ25ELElBQUksVUFBVSxHQUFpQixLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDeEMsYUFBYSxHQUFHLGFBQWEsR0FBRyxDQUFDLENBQUM7WUFFbEMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztZQUU1QyxJQUFJLGFBQWEsS0FBSyxDQUFDLEVBQUU7Z0JBQ3ZCLGFBQWEsQ0FBQyxNQUFNLENBQUMsK0JBQStCLENBQUMsQ0FBQztnQkFDdEQsTUFBTTthQUNQO1NBQ0Y7UUFDRCxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBS0QsS0FBSztJQUVMLENBQUM7O0FBalZNLGVBQVEsR0FBVyxJQUFJLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0xvZ2dlcl9Mb2dMZXZlbHMsIExvZ2dlcl9NZXNzYWdlRGlyZWN0aW9ufSBmcm9tIFwiLi9lbnVtc1wiO1xyXG5pbXBvcnQge0RhdGVUaW1lLCBEZWJ1ZywgRXhjZXB0aW9uLCBOU3RyaW5nLCBTdGFja1RyYWNlLCBTdHJpbmdCdWlsZGVyLCBUaHJlYWR9IGZyb20gXCJAbWFnaWMteHBhL21zY29yZWxpYlwiO1xyXG5pbXBvcnQge09TRW52aXJvbm1lbnR9IGZyb20gXCIuL1BsYXRmb3JtVXRpbHNcIjtcclxuaW1wb3J0IHtEYXRlVGltZVV0aWxzfSBmcm9tIFwiLi9EYXRlVGltZVV0aWxzXCI7XHJcbmltcG9ydCB7WE1MQ29uc3RhbnRzfSBmcm9tIFwiLi9YTUxDb25zdGFudHNcIjtcclxuaW1wb3J0ICogYXMgSlNTdGFja1RyYWNlIGZyb20gJ3N0YWNrdHJhY2UtanMnO1xyXG5pbXBvcnQge2lzTnVsbE9yVW5kZWZpbmVkfSBmcm9tIFwidXRpbFwiO1xyXG5pbXBvcnQgSlNTdGFja0ZyYW1lID0gSlNTdGFja1RyYWNlLlN0YWNrRnJhbWU7XHJcbmltcG9ydCB7UmVxdWVzdEluZm99IGZyb20gXCIuL1JlcXVlc3RJbmZvXCI7XHJcbmltcG9ydCB7IFN0clV0aWwgfSBmcm9tIFwiLi9TdHJVdGlsXCI7XHJcblxyXG5leHBvcnQgZW51bSBMb2dUeXBlIHtcclxuICBpbmZvID0gMSxcclxuICB3YXJuaW5nLFxyXG4gIGVycm9yXHJcbn1cclxuXHJcblxyXG4vLy8gPHN1bW1hcnk+XHJcbi8vLyBMb2dnZXIgY2xhc3Mgd2lsbCB0YWtlIGNhcmUgb2YgY2xpZW50IHNpZGUgbG9nZ2luZyAuIEl0IHdpbGwgY2hlY2sgZm9yIHZhcmlvdXMgbG9nIGxldmVscyBhbmQgYWNjb3JkaW5nbHkgd2lsbCB3cml0ZSBtZXNzYWdlcyBpbiBsb2cgZmlsZS5cclxuLy8vIDwvc3VtbWFyeT5cclxuLy9AZHluYW1pY1xyXG5leHBvcnQgY2xhc3MgTG9nZ2VyIHtcclxuICBzdGF0aWMgaW5zdGFuY2U6IExvZ2dlciA9IG51bGw7XHJcbiAgTG9nTGV2ZWw6IExvZ2dlcl9Mb2dMZXZlbHMgPSAwOyAvLyBJbnRlcm5hbExvZ0xldmVsXHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gV2hpbGUgd3JpdGluZyB0aGUgZXJyb3IgbWVzc2FnZXMgaW4gdGhlIGZpbGUgcGxheSB0aGUgYmVlcC5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIFNob3VsZEJlZXA6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgc3RhdGljIHNldCBJbnN0YW5jZSh2YWx1ZTogTG9nZ2VyKSB7XHJcbiAgICBMb2dnZXIuaW5zdGFuY2UgPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBnZXQgSW5zdGFuY2UoKTogTG9nZ2VyIHtcclxuICAgIGlmIChMb2dnZXIuaW5zdGFuY2UgPT09IG51bGwpIHtcclxuICAgICAgTG9nZ2VyLmluc3RhbmNlID0gbmV3IExvZ2dlcigpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIExvZ2dlci5pbnN0YW5jZTtcclxuICB9XHJcblxyXG4vLy8gPHN1bW1hcnk+XHJcbiAgLy8vIEluaXRpYWxpemUgbG9nZ2VyXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJsb2dMZXZlbFwiPjwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwiaW50ZXJuYWxMb2dTeW5jXCI+PC9wYXJhbT5cclxuICBJbml0aWFsaXplKGxvZ0xldmVsOiBMb2dnZXJfTG9nTGV2ZWxzLCBpbnRlcm5hbExvZ1N5bmM6IHN0cmluZywgc2hvdWxkQmVlcDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdHJ5IHtcclxuICAgICAgLy8gbGV0IGxvZ1N5bmM6IExvZ1N5bmNNb2RlICA9IExvZ1N5bmNNb2RlLlNlc3Npb247XHJcbiAgICAgIHRoaXMuTG9nTGV2ZWwgPSBsb2dMZXZlbDtcclxuICAgICAgdGhpcy5TaG91bGRCZWVwID0gc2hvdWxkQmVlcDtcclxuXHJcbiAgICAgIC8vIFRPRE86IGltcGxlbWVudFxyXG4vLyAgIFN0cmluZyBzdHJMb2dTeW5jID0gaW50ZXJuYWxMb2dTeW5jO1xyXG4vLyAgIGlmICghc3RyaW5nLklzTnVsbE9yRW1wdHkoc3RyTG9nU3luYykpXHJcbi8vIHtcclxuLy8gICBpZiAoc3RyTG9nU3luYy5TdGFydHNXaXRoKFwiTVwiLCBTdHJpbmdDb21wYXJpc29uLkN1cnJlbnRDdWx0dXJlSWdub3JlQ2FzZSkpXHJcbi8vICAgbG9nU3luYyA9IExvZ1N5bmNNb2RlLk1lc3NhZ2U7XHJcbi8vICAgZWxzZSBpZiAoc3RyTG9nU3luYy5TdGFydHNXaXRoKFwiRlwiLCBTdHJpbmdDb21wYXJpc29uLkN1cnJlbnRDdWx0dXJlSWdub3JlQ2FzZSkpXHJcbi8vICAgbG9nU3luYyA9IExvZ1N5bmNNb2RlLkZsdXNoO1xyXG4vLyB9XHJcbi8vXHJcbiAgICB9XHJcbiAgICBjYXRjaCAoZSkge1xyXG4gICAgICB0aGlzLldyaXRlRGV2VG9Mb2coXCJDbGllbnRNYW5hZ2VyLmluaXQoKTogXCIgKyBlLk1lc3NhZ2UpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5Pjwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJsb2dMZXZlbFwiPjwvcGFyYW0+XHJcbiAgLy8vIDxyZXR1cm5zPjwvcmV0dXJucz5cclxuXHJcbiAgU2hvdWxkTG9nKGxvZ0xldmVsOiBMb2dnZXJfTG9nTGV2ZWxzKTogYm9vbGVhbjtcclxuICBTaG91bGRMb2coKTogYm9vbGVhbjtcclxuICBTaG91bGRMb2cobG9nTGV2ZWw/OiBMb2dnZXJfTG9nTGV2ZWxzKTogYm9vbGVhbiB7XHJcbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMSlcclxuICAgICAgcmV0dXJuIHRoaXMuU2hvdWxkTG9nXzAobG9nTGV2ZWwpO1xyXG4gICAgZWxzZVxyXG4gICAgICByZXR1cm4gdGhpcy5TaG91bGRMb2dfMSgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBTaG91bGRMb2dfMChsb2dMZXZlbDogTG9nZ2VyX0xvZ0xldmVscyk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuTG9nTGV2ZWwgPT09IGxvZ0xldmVsO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBTaG91bGRMb2dfMSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLkxvZ0xldmVsID4gTG9nZ2VyX0xvZ0xldmVscy5Ob25lO1xyXG4gIH1cclxuXHJcbiAgU2hvdWxkTG9nU2VydmVyUmVsYXRlZE1lc3NhZ2VzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICh0aGlzLlNob3VsZExvZ0V4dGVuZGVkU2VydmVyUmVsYXRlZE1lc3NhZ2VzKCkgfHwgTG9nZ2VyLkluc3RhbmNlLlNob3VsZExvZyhMb2dnZXJfTG9nTGV2ZWxzLlNlcnZlcikpICYmIHRoaXMuTG9nTGV2ZWwgIT09IExvZ2dlcl9Mb2dMZXZlbHMuQmFzaWM7XHJcbiAgfVxyXG5cclxuICBTaG91bGRMb2dFeHRlbmRlZFNlcnZlclJlbGF0ZWRNZXNzYWdlcygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAoTG9nZ2VyLkluc3RhbmNlLlNob3VsZExvZyhMb2dnZXJfTG9nTGV2ZWxzLlNlcnZlck1lc3NhZ2VzKSB8fCBMb2dnZXIuSW5zdGFuY2UuU2hvdWxkTG9nKExvZ2dlcl9Mb2dMZXZlbHMuU3VwcG9ydCkgfHwgTG9nZ2VyLkluc3RhbmNlLlNob3VsZExvZyhMb2dnZXJfTG9nTGV2ZWxzLkRldmVsb3BtZW50KSkgJiYgdGhpcy5Mb2dMZXZlbCAhPT0gTG9nZ2VyX0xvZ0xldmVscy5CYXNpYztcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT48L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwibXNnXCI+PC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJvcGVuSWZOZWNlc3NhcnlcIj5vcGVuIHRoZSBsb2cgZmlsZSBpZiBub3Qgb3BlbmVkIHlldDwvcGFyYW0+XHJcblxyXG4gIFdyaXRlVG9Mb2cobXNnOiBzdHJpbmcsIG9wZW5JZk5lY2Vzc2FyeTogYm9vbGVhbiwgbG9nVHlwZTogTG9nVHlwZSA9IExvZ1R5cGUuaW5mbyk6IHZvaWQge1xyXG5cclxuICAgIGlmICh0aGlzLkxvZ0xldmVsID4gTG9nZ2VyX0xvZ0xldmVscy5Ob25lIHx8IG9wZW5JZk5lY2Vzc2FyeSkge1xyXG4gICAgICBtc2cgPSBOU3RyaW5nLkZvcm1hdChcInswfSB7MX1cIiwgKHRoaXMuTG9nTGV2ZWwgPT09IExvZ2dlcl9Mb2dMZXZlbHMuQmFzaWMpID8gbmV3IERhdGUoKS50b0lTT1N0cmluZygpIDogRGF0ZVRpbWVVdGlscy5Ub1N0cmluZyhEYXRlVGltZS5Ob3csIFhNTENvbnN0YW50cy5FUlJPUl9MT0dfVElNRV9GT1JNQVQsIHRoaXMpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBtc2cpO1xyXG5cclxuICAgICAgc3dpdGNoIChsb2dUeXBlKSB7XHJcbiAgICAgICAgY2FzZSBMb2dUeXBlLmVycm9yOlxyXG4gICAgICAgICAgY29uc29sZS5lcnJvcihtc2cpO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSBMb2dUeXBlLndhcm5pbmc6XHJcbiAgICAgICAgICBjb25zb2xlLndhcm4obXNnKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhtc2cpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIHdyaXRlIGEgc2VydmVyIGFjY2VzcyB0byB0aGUgbG9nXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJtc2dcIj50aGUgbWVzc2FnZSB0byB3cml0ZSB0byB0aGUgbG9nPC9wYXJhbT5cclxuICBXcml0ZVNlcnZlclRvTG9nKG1zZzogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5TaG91bGRMb2dTZXJ2ZXJSZWxhdGVkTWVzc2FnZXMoKSkge1xyXG4gICAgICB0aGlzLldyaXRlVG9Mb2coTlN0cmluZy5Gb3JtYXQoXCJTZXJ2ZXIsIFRocmVhZD17MH06IFwiLCBUaHJlYWQuQ3VycmVudFRocmVhZC5NYW5hZ2VkVGhyZWFkSWQpICsgbXNnLCBmYWxzZSwgTG9nVHlwZS5pbmZvKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gd3JpdGUgYSBzZXJ2ZXIgYWNjZXNzIHRvIHRoZSBsb2csIGluY2x1ZGluZyB0aGUgY29udGVudFxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwibXNnXCI+dGhlIG1lc3NhZ2UgdG8gd3JpdGUgdG8gdGhlIGxvZzwvcGFyYW0+XHJcbiAgV3JpdGVTZXJ2ZXJNZXNzYWdlc1RvTG9nKG1zZzogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5TaG91bGRMb2dFeHRlbmRlZFNlcnZlclJlbGF0ZWRNZXNzYWdlcygpKSB7XHJcbiAgICAgIHRoaXMuV3JpdGVUb0xvZyhcIlNlcnZlciM6IFwiICsgbXNnLCBmYWxzZSwgTG9nVHlwZS5pbmZvKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5Xcml0ZSBhIFFDIG1lc3NhZ2UgdG8gdGhlIGxvZzwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJtc2dcIj50aGUgbWVzc2FnZSB0byB3cml0ZSB0byB0aGUgbG9nPC9wYXJhbT5cclxuICBXcml0ZVN1cHBvcnRUb0xvZyhtc2c6IHN0cmluZywgc2tpcExpbmU6IGJvb2xlYW4pOiB2b2lkIHtcclxuXHJcbiAgICBpZiAodGhpcy5Mb2dMZXZlbCA+PSBMb2dnZXJfTG9nTGV2ZWxzLlN1cHBvcnQgJiYgdGhpcy5Mb2dMZXZlbCAhPT0gTG9nZ2VyX0xvZ0xldmVscy5CYXNpYykge1xyXG4gICAgICBpZiAoc2tpcExpbmUpIHtcclxuICAgICAgICB0aGlzLldyaXRlVG9Mb2coXCJTVVBQT1JUOiBcIiArIG1zZywgZmFsc2UsIExvZ1R5cGUuaW5mbyk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgdGhpcy5Xcml0ZVRvTG9nKFwiU1VQUE9SVDogXCIgKyBtc2cgKyBPU0Vudmlyb25tZW50LkVvbFNlcSArIFwiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cIiwgZmFsc2UsIExvZ1R5cGUuaW5mbyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gd3JpdGUgYSBwZXJmb3JtYW5jZSBtZXNzYWdlIHRvIHRoZSBsb2dcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cIm1zZ1wiPnRoZSBtZXNzYWdlIHRvIHdyaXRlIHRvIHRoZSBsb2c8L3BhcmFtPlxyXG4gIFdyaXRlR3VpVG9Mb2cobXNnOiBzdHJpbmcpOiB2b2lkIHtcclxuXHJcbiAgICBpZiAodGhpcy5Mb2dMZXZlbCA+PSBMb2dnZXJfTG9nTGV2ZWxzLkd1aSAmJiB0aGlzLkxvZ0xldmVsICE9PSBMb2dnZXJfTG9nTGV2ZWxzLkJhc2ljKSB7XHJcbiAgICAgIHRoaXMuV3JpdGVUb0xvZyhtc2csIGZhbHNlLCBMb2dUeXBlLmluZm8pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyB3cml0ZSBhIGRldmVsb3BlciBtZXNzYWdlIHRvIHRoZSBsb2dcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cIm1zZ1wiPnRoZSBtZXNzYWdlIHRvIHdyaXRlIHRvIHRoZSBsb2c8L3BhcmFtPlxyXG4gIFdyaXRlRGV2VG9Mb2cobXNnOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLkxvZ0xldmVsID49IExvZ2dlcl9Mb2dMZXZlbHMuRGV2ZWxvcG1lbnQgJiYgdGhpcy5Mb2dMZXZlbCAhPT0gTG9nZ2VyX0xvZ0xldmVscy5CYXNpYykge1xyXG4gICAgICB0aGlzLldyaXRlVG9Mb2coXCJERVY6IFwiICsgbXNnLCBmYWxzZSwgTG9nVHlwZS5pbmZvKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gV3JpdGVzIGEgYmFzaWMgbGV2ZWwgZW50cnkgdG8gbG9nXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJtZXNzYWdlRGlyZWN0aW9uXCI+bWVzc2FnZSBkaXJlY3Rpb24gcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgbW9kdWxlIChSSUEgY2xpZW50KS4gQ2FuIGJlIGVpdGhlciBNZXNzYWdlRW50ZXJpbmcgb3IgTWVzc2FnZUxlYXZpbmc8L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInN0YXR1c0NvZGVcIj5IVFRQIHN0YXR1cyBjb2RlPC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJjb250ZW50TGVuZ3RoXCI+bGVuZ3RoIG9mIHRoZSBodHRwIG1lc3NhZ2U8L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImh0dHBIZWFkZXJzXCI+SFRUUCBoZWFkZXJzPC9wYXJhbT5cclxuICBXcml0ZUJhc2ljVG9Mb2cobWVzc2FnZURpcmVjdGlvbjogTG9nZ2VyX01lc3NhZ2VEaXJlY3Rpb24sIGNvbnRleHRJRDogc3RyaW5nLCBzZXNzaW9uQ291bnRlcjogbnVtYmVyLCBjbGllbnRJRDogc3RyaW5nLCBzZXJ2ZXJJRDogc3RyaW5nLCByZXNwb25zZVRpbWU6IG51bWJlciwgc3RhdHVzQ29kZTogc3RyaW5nLCBodHRwSGVhZGVyczogc3RyaW5nLCBjb250ZW50TGVuZ3RoOiBudW1iZXIpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLkxvZ0xldmVsID09PSBMb2dnZXJfTG9nTGV2ZWxzLkJhc2ljKSB7XHJcbiAgICAgIGxldCB0ZXh0OiBzdHJpbmcgPSBodHRwSGVhZGVycztcclxuICAgICAgdGV4dCA9IHRleHQudHJpbSgpO1xyXG4gICAgICB0ZXh0ID0gTlN0cmluZy5SZXBsYWNlKHRleHQsIFwiXFxyXFxuXCIsIFwifFwiKTtcclxuICAgICAgbGV0IGFyZ19FNF8wOiBzdHJpbmcgPSBcIlJJQSx7MH1fezF9LHsyfSx7M30sezR9LHs1fSwtLHs2fSx7N30sezh9LHs5fSx7MTB9LHsxMX1cIjtcclxuICAgICAgbGV0IGV4cHJfM0U6IGFueVtdID0gbmV3IEFycmF5PGFueT4oMTIpO1xyXG5cclxuICAgICAgLy8gVE9ETyA6IG5lZWQgdG8gY2hlY2sgSG93IHRvIGhhbmRsZSBQcm9jZXNzIGNsYXNzLlxyXG4gICAgICAvLyBleHByXzNFWzBdID0gUHJvY2Vzcy5HZXRDdXJyZW50UHJvY2VzcygpLklkO1xyXG4gICAgICBleHByXzNFWzFdID0gVGhyZWFkLkN1cnJlbnRUaHJlYWQuTWFuYWdlZFRocmVhZElkO1xyXG4gICAgICBleHByXzNFWzJdID0gbmV3IERhdGUoKS50b0lTT1N0cmluZygpO1xyXG4gICAgICBleHByXzNFWzNdID0gKChtZXNzYWdlRGlyZWN0aW9uID09PSBMb2dnZXJfTWVzc2FnZURpcmVjdGlvbi5NZXNzYWdlTGVhdmluZykgPyBcIk1TR0xcIiA6IFwiTVNHRVwiKTtcclxuICAgICAgZXhwcl8zRVs0XSA9IGNvbnRleHRJRDtcclxuICAgICAgZXhwcl8zRVs1XSA9IHNlc3Npb25Db3VudGVyO1xyXG4gICAgICBleHByXzNFWzZdID0gY2xpZW50SUQ7XHJcbiAgICAgIGV4cHJfM0VbN10gPSBzZXJ2ZXJJRDtcclxuICAgICAgZXhwcl8zRVs4XSA9ICgocmVzcG9uc2VUaW1lICE9PSAwKSA/IHJlc3BvbnNlVGltZS50b1N0cmluZygpIDogXCItXCIpO1xyXG4gICAgICBsZXQgYXJnX0QzXzE6IG51bWJlciA9IDk7XHJcbiAgICAgIGxldCBhcmdfRDNfMjogYW55O1xyXG4gICAgICBhcmdfRDNfMiA9IHN0YXR1c0NvZGU7XHJcbiAgICAgIGV4cHJfM0VbYXJnX0QzXzFdID0gYXJnX0QzXzI7XHJcbiAgICAgIGV4cHJfM0VbMTBdID0gdGV4dDtcclxuICAgICAgZXhwcl8zRVsxMV0gPSBjb250ZW50TGVuZ3RoO1xyXG4gICAgICBsZXQgdmFsdWU6IHN0cmluZyA9IE5TdHJpbmcuRm9ybWF0KGFyZ19FNF8wLCBleHByXzNFKTtcclxuICAgICAgY29uc29sZS5sb2codmFsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBXcml0ZXMgcmVxdWVzdCBpbmZvcm1hdGlvbiB0byBsb2dcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImNsaWVudFNlc3Npb25cIj5UaGUgY2xpZW50U2Vzc2lvbiBvYmplY3QgdG8gYmUgbG9nZ2VkPC9wYXJhbT5cclxuICBXcml0ZVJlcXVlc3RJbmZvVG9Mb2cocmVxdWVzdEluZm86IFJlcXVlc3RJbmZvLCBleHRyYU1lc3NhZ2VTdHI6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuTG9nTGV2ZWwgPT09IExvZ2dlcl9Mb2dMZXZlbHMuUmVxdWVzdEluZm8pIHtcclxuXHJcbiAgICAgIC8vIENocm9tZSBkZWJ1Z2dlciBhdXRvbWF0aWNhbGx5IHJlY29tcHV0ZXMgbG9nZ2VkIG9iamVjdHMuXHJcbiAgICAgIC8vIEhlbmNlLCBjbG9uZSB0aGUgcmVxdWVzdEluZm8gb2JqZWN0IHRvIHByaW50IHRoZSBkZXRhaWxzIGF0IHRoZSB0aW1lIG9mIGxvZ2dpbmdcclxuICAgICAgY29uc29sZS5sb2coZXh0cmFNZXNzYWdlU3RyLCBSZXF1ZXN0SW5mby5jbG9uZShyZXF1ZXN0SW5mbykpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBXcml0ZXMgYSByZXF1ZXN0IGV4Y2VwdGlvbiBiYXNpYyBsZXZlbCBlbnRyeSB0byBsb2dcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImNvbnRleHRJRFwiPjwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwic2Vzc2lvbkNvdW50ZXJcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImNsaWVudElEXCI+PC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJzZXJ2ZXJJRFwiPjwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwiZXhcIj50aGUgbG9nZ2VkIGV4Y2VwdGlvbjwvcGFyYW0+XHJcbiAgV3JpdGVCYXNpY0Vycm9yVG9Mb2coY29udGV4dElEOiBzdHJpbmcsIHNlc3Npb25Db3VudGVyOiBudW1iZXIsIGNsaWVudElEOiBzdHJpbmcsIHNlcnZlcklEOiBzdHJpbmcsIGV4OiBFeGNlcHRpb24pOiB2b2lkIHtcclxuICAgIERlYnVnLkFzc2VydCh0aGlzLkxvZ0xldmVsID09PSBMb2dnZXJfTG9nTGV2ZWxzLkJhc2ljKTtcclxuXHJcbiAgICAvLyBUT0RPIDogTmVlZCB0byBjaGVjayBob3cgdG8gaGFuZGxlIFByb2Nlc3NcclxuICAgIC8vIGxldCB2YWx1ZTogc3RyaW5nID0gTlN0cmluZy5Gb3JtYXQoXCJSSUEsezB9X3sxfSx7Mn0sezN9LHs0fSx7NX0sLSx7Nn0sezd9LC0sLSwtLHs4fSB7OX1cIiwgW1xyXG4gICAgLy8gUHJvY2Vzcy5HZXRDdXJyZW50UHJvY2VzcygpLklkLCBUaHJlYWQuQ3VycmVudFRocmVhZC5NYW5hZ2VkVGhyZWFkSWQsIERhdGVUaW1lLlV0Y05vdy5Ub1N0cmluZyhcInl5eXktTU0tZGRUSEg6bW06c3MuZmZmZmZmZlpcIiksIFwiUkVTXCIsIGNvbnRleHRJRCwgc2Vzc2lvbkNvdW50ZXIsIGNsaWVudElELCBzZXJ2ZXJJRCwgZXguR2V0VHlwZSgpLCBleC5NZXNzYWdlXHJcbiAgICAvLyBdKTtcclxuICAgIC8vIE5Db25zb2xlLldyaXRlTGluZSh2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIFdyaXRlIGFuIGVycm9yIHRvIHRoZSBsb2dcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cIm1zZ1wiPnRoZSBtZXNzYWdlIHRvIHdyaXRlIHRvIHRoZSBsb2c8L3BhcmFtPlxyXG4gIFdyaXRlRXJyb3JUb0xvZyhtc2c6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5Xcml0ZVRvTG9nKFwiTWFnaWNXZWIgW0VSUk9SXTogXCIgKyBTdHJVdGlsLmdldENvbnNvbGVFcm9yU3RyaW5nKG1zZyksIHRydWUsIExvZ1R5cGUuZXJyb3IpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBXcml0ZSBhbiBpbnRlcm5hbCBlcnJvciB0byB0aGUgbG9nLiBBbHNvIHByaW50cyBzdGFjayB0cmFjZSBhbG9uZyB3aXRoIHRoZSBtZXNzYWdlXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJtc2dcIj50aGUgbWVzc2FnZSB0byB3cml0ZSB0byB0aGUgbG9nPC9wYXJhbT5cclxuICBXcml0ZUV4Y2VwdGlvblRvTG9nKGV4OiBFeGNlcHRpb24pOiB2b2lkO1xyXG4gIFdyaXRlRXhjZXB0aW9uVG9Mb2coZXg6IEVycm9yKTogdm9pZDtcclxuICBXcml0ZUV4Y2VwdGlvblRvTG9nKGV4OiBFeGNlcHRpb24sIG1zZzogc3RyaW5nKTogdm9pZDtcclxuICBXcml0ZUV4Y2VwdGlvblRvTG9nKG1zZ09yRXg6IGFueSwgbXNnPzogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBpZiAobXNnT3JFeCBpbnN0YW5jZW9mIEVycm9yKSB7XHJcbiAgICAgIHRoaXMuV3JpdGVFeGNlcHRpb25Ub0xvZ18yKG1zZ09yRXgsIG1zZyk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAxICYmIChtc2dPckV4ICE9PSBudWxsIHx8IG1zZ09yRXggaW5zdGFuY2VvZiBFeGNlcHRpb24pKSB7XHJcbiAgICAgIHRoaXMuV3JpdGVFeGNlcHRpb25Ub0xvZ18xKG1zZ09yRXgpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5Xcml0ZUV4Y2VwdGlvblRvTG9nXzMobXNnT3JFeCwgbXNnKTtcclxuICB9XHJcblxyXG4gIFdyaXRlRXhjZXB0aW9uVG9Mb2dXaXRoTXNnKG1zZzogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLldyaXRlVG9Mb2coXCJNYWdpY1dlYiBbRVJST1JdOiBcIiArIFN0clV0aWwuZ2V0Q29uc29sZUVyb3JTdHJpbmcobXNnKSwgdHJ1ZSwgTG9nVHlwZS5lcnJvcik7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIFdyaXRlRXhjZXB0aW9uVG9Mb2dfMShleDogRXhjZXB0aW9uKTogdm9pZCB7XHJcbiAgICB0aGlzLldyaXRlRXhjZXB0aW9uVG9Mb2dXaXRoTXNnKE5TdHJpbmcuRm9ybWF0KFwiezB9IDogezF9ezJ9ezN9ezR9XCIsIFtcclxuICAgICAgZXguR2V0VHlwZSgpLCBPU0Vudmlyb25tZW50LkVvbFNlcSwgZXguU3RhY2tUcmFjZSwgT1NFbnZpcm9ubWVudC5Fb2xTZXEsIGV4Lk1lc3NhZ2VcclxuICAgIF0pKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgV3JpdGVFeGNlcHRpb25Ub0xvZ18yKGV4OiBFcnJvciwgbWVzc2FnZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBpZiAoaXNOdWxsT3JVbmRlZmluZWQobWVzc2FnZSkpXHJcbiAgICAgIHRoaXMuV3JpdGVFeGNlcHRpb25Ub0xvZ1dpdGhNc2coTlN0cmluZy5Gb3JtYXQoXCJ7MH17MX17Mn1cIiwgW2V4LnN0YWNrLCBPU0Vudmlyb25tZW50LkVvbFNlcSwgZXgubWVzc2FnZV0pKTtcclxuICAgIGVsc2VcclxuICAgICAgdGhpcy5Xcml0ZUV4Y2VwdGlvblRvTG9nV2l0aE1zZyhOU3RyaW5nLkZvcm1hdChcInswfXsxfXsyfXs0fXs1fVwiLCBbbWVzc2FnZSwgT1NFbnZpcm9ubWVudC5Fb2xTZXEsIGV4LnN0YWNrLCBPU0Vudmlyb25tZW50LkVvbFNlcSwgZXgubWVzc2FnZV0pKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgV3JpdGVFeGNlcHRpb25Ub0xvZ18zKGV4OiBFeGNlcHRpb24sIG1zZzogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLldyaXRlRXhjZXB0aW9uVG9Mb2dXaXRoTXNnKE5TdHJpbmcuRm9ybWF0KFwiezB9LCB7MX0gOiB7Mn17M317NH17NX1cIiwgW1xyXG4gICAgICBleC5HZXRUeXBlKCksIG1zZywgT1NFbnZpcm9ubWVudC5Fb2xTZXEsIGV4LlN0YWNrVHJhY2UsIE9TRW52aXJvbm1lbnQuRW9sU2VxLCBleC5NZXNzYWdlXHJcbiAgICBdKSk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+IHdyaXRlIGEgd2FybmluZyB0byB0aGUgbG9nPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cIm1zZ1wiPnRoZSBtZXNzYWdlIHRvIHdyaXRlIHRvIHRoZSBsb2c8L3BhcmFtPlxyXG4gIFdyaXRlV2FybmluZ1RvTG9nKGV4OiBFeGNlcHRpb24pOiB2b2lkO1xyXG4gIFdyaXRlV2FybmluZ1RvTG9nKGV4OiBFeGNlcHRpb24sIG1zZzogc3RyaW5nKTogdm9pZDtcclxuICBXcml0ZVdhcm5pbmdUb0xvZyhleDogRXJyb3IpOiB2b2lkO1xyXG4gIFdyaXRlV2FybmluZ1RvTG9nKG1zZ09yRXg6IGFueSwgbXNnPzogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMSAmJiBtc2dPckV4ICE9PSBudWxsKSB7XHJcbiAgICAgIGlmIChtc2dPckV4IGluc3RhbmNlb2YgRXhjZXB0aW9uKVxyXG4gICAgICAgIHRoaXMuV3JpdGVXYXJuaW5nVG9Mb2dfMShtc2dPckV4KTtcclxuICAgICAgZWxzZSBpZiAobXNnT3JFeCBpbnN0YW5jZW9mIEVycm9yKVxyXG4gICAgICAgIHRoaXMuV3JpdGVXYXJuaW5nVG9Mb2dfMihtc2dPckV4KTtcclxuICAgIH1cclxuICAgIGVsc2VcclxuICAgICAgdGhpcy5Xcml0ZVdhcm5pbmdUb0xvZ18zKG1zZ09yRXgsIG1zZyk7XHJcbiAgfVxyXG5cclxuICBXcml0ZVdhcm5pbmdUb0xvZ1dpdGhNc2cobXNnOiBzdHJpbmcpOiB2b2lkIHtcclxuXHJcbiAgICBpZiAodGhpcy5Mb2dMZXZlbCAhPT0gTG9nZ2VyX0xvZ0xldmVscy5CYXNpYykge1xyXG4gICAgICB0aGlzLldyaXRlVG9Mb2coXCJNYWdpY1dlYiBbV0FSTklOR106IFwiICsgbXNnLCB0cnVlLCBMb2dUeXBlLndhcm5pbmcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBXcml0ZVdhcm5pbmdUb0xvZ18xKGV4OiBFeGNlcHRpb24pOiB2b2lkIHtcclxuICAgIHRoaXMuV3JpdGVXYXJuaW5nVG9Mb2dXaXRoTXNnKGV4LkdldFR5cGUoKSArIFwiIDogXCIgKyBPU0Vudmlyb25tZW50LkVvbFNlcSArIGV4LlN0YWNrVHJhY2UgKyBPU0Vudmlyb25tZW50LkVvbFNlcSArIGV4Lk1lc3NhZ2UpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBXcml0ZVdhcm5pbmdUb0xvZ18yKGV4OiBFcnJvcik6IHZvaWQge1xyXG4gICAgdGhpcy5Xcml0ZVdhcm5pbmdUb0xvZ1dpdGhNc2coTlN0cmluZy5Gb3JtYXQoXCJ7MH17MX17Mn1cIiwgW1xyXG4gICAgICBleC5zdGFjaywgT1NFbnZpcm9ubWVudC5Fb2xTZXEsIGV4Lm1lc3NhZ2VcclxuICAgIF0pKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgV3JpdGVXYXJuaW5nVG9Mb2dfMyhleDogRXhjZXB0aW9uLCBtc2c6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5Xcml0ZVdhcm5pbmdUb0xvZ1dpdGhNc2coTlN0cmluZy5Gb3JtYXQoXCJ7MH0sIHsxfSA6IHsyfXszfXs0fXs1fVwiLCBbXHJcbiAgICAgIGV4LkdldFR5cGUoKSwgbXNnLCBPU0Vudmlyb25tZW50LkVvbFNlcSwgZXguU3RhY2tUcmFjZSwgT1NFbnZpcm9ubWVudC5Fb2xTZXEsIGV4Lk1lc3NhZ2VcclxuICAgIF0pKTtcclxuICB9XHJcblxyXG4gIFdyaXRlU3RhY2tUcmFjZShzdGFja1RyYWNlOiBTdGFja1RyYWNlLCBmcmFtZXNUb1ByaW50OiBudW1iZXIsIHRyYWNlVGl0bGU6IHN0cmluZyk6IHZvaWQge1xyXG5cclxuICAgIGlmICh0cmFjZVRpdGxlID09PSBudWxsKSB7XHJcbiAgICAgIHRyYWNlVGl0bGUgPSBcIlN0YWNrIHRyYWNlOlwiO1xyXG4gICAgfVxyXG4gICAgbGV0IHN0cmluZ0J1aWxkZXI6IFN0cmluZ0J1aWxkZXIgPSBuZXcgU3RyaW5nQnVpbGRlcih0cmFjZVRpdGxlICsgT1NFbnZpcm9ubWVudC5Fb2xTZXEpO1xyXG4gICAgbGV0IGZyYW1lczogSlNTdGFja0ZyYW1lW10gPSBzdGFja1RyYWNlLkdldEZyYW1lcygpO1xyXG4gICAgbGV0IGFycmF5OiBKU1N0YWNrRnJhbWVbXSA9IGZyYW1lcztcclxuICAgIGZvciAobGV0IGk6IG51bWJlciA9IDA7IGkgPCBhcnJheS5sZW5ndGg7IGkgPSBpICsgMSkge1xyXG4gICAgICBsZXQgc3RhY2tGcmFtZTogSlNTdGFja0ZyYW1lID0gYXJyYXlbaV07XHJcbiAgICAgIGZyYW1lc1RvUHJpbnQgPSBmcmFtZXNUb1ByaW50IC0gMTtcclxuXHJcbiAgICAgIHN0cmluZ0J1aWxkZXIuQXBwZW5kKHN0YWNrRnJhbWUudG9TdHJpbmcoKSk7XHJcblxyXG4gICAgICBpZiAoZnJhbWVzVG9QcmludCA9PT0gMCkge1xyXG4gICAgICAgIHN0cmluZ0J1aWxkZXIuQXBwZW5kKFwiXFx0Li4uIG1vcmUgc3RhY2sgZnJhbWVzIC4uLlxcblwiKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5Xcml0ZVRvTG9nKHN0cmluZ0J1aWxkZXIuVG9TdHJpbmcoKSwgdHJ1ZSk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIEZsdXNoIHRoZSBsb2cgd3JpdGVyLlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgRmx1c2goKTogdm9pZCB7XHJcblxyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -9,4 +9,4 @@ export var BindingLevel;
9
9
  BindingLevel[BindingLevel["Control"] = 1] = "Control";
10
10
  BindingLevel[BindingLevel["Character"] = 2] = "Character";
11
11
  })(BindingLevel || (BindingLevel = {}));
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWFnaWNDb25zdGFudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy91dGlscy9zcmMvTWFnaWNDb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksZUFJWDtBQUpELFdBQVksZUFBZTtJQUN6QiwrQ0FBNEIsQ0FBQTtJQUM1QiwyQ0FBd0IsQ0FBQTtJQUN4QiwwQ0FBdUIsQ0FBQTtBQUN6QixDQUFDLEVBSlcsZUFBZSxLQUFmLGVBQWUsUUFJMUI7QUFFRCxNQUFNLENBQU4sSUFBWSxZQUlYO0FBSkQsV0FBWSxZQUFZO0lBRXRCLHFEQUFXLENBQUE7SUFDWCx5REFBUyxDQUFBO0FBQ1gsQ0FBQyxFQUpXLFlBQVksS0FBWixZQUFZLFFBSXZCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gTWFnaWNQcm9wZXJ0aWVzIHtcclxuICBMaW5lRGl2aWRlciA9IFwibGluZV9kaXZpZGVyXCIsXHJcbiAgSW1hZ2VGaWxlID0gXCJpbWFnZV9maWxlXCIsXHJcbiAgV2FsbHBhcGVyID0gXCJ3YWxscGFwZXJcIixcclxufVxyXG5cclxuZXhwb3J0IGVudW0gQmluZGluZ0xldmVsXHJcbntcclxuICBDb250cm9sID0gMSxcclxuICBDaGFyYWN0ZXJcclxufVxyXG4iXX0=
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWFnaWNDb25zdGFudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91dGlscy9zcmMvTWFnaWNDb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksZUFJWDtBQUpELFdBQVksZUFBZTtJQUN6QiwrQ0FBNEIsQ0FBQTtJQUM1QiwyQ0FBd0IsQ0FBQTtJQUN4QiwwQ0FBdUIsQ0FBQTtBQUN6QixDQUFDLEVBSlcsZUFBZSxLQUFmLGVBQWUsUUFJMUI7QUFFRCxNQUFNLENBQU4sSUFBWSxZQUlYO0FBSkQsV0FBWSxZQUFZO0lBRXRCLHFEQUFXLENBQUE7SUFDWCx5REFBUyxDQUFBO0FBQ1gsQ0FBQyxFQUpXLFlBQVksS0FBWixZQUFZLFFBSXZCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gTWFnaWNQcm9wZXJ0aWVzIHtcclxuICBMaW5lRGl2aWRlciA9IFwibGluZV9kaXZpZGVyXCIsXHJcbiAgSW1hZ2VGaWxlID0gXCJpbWFnZV9maWxlXCIsXHJcbiAgV2FsbHBhcGVyID0gXCJ3YWxscGFwZXJcIixcclxufVxyXG5cclxuZXhwb3J0IGVudW0gQmluZGluZ0xldmVsXHJcbntcclxuICBDb250cm9sID0gMSxcclxuICBDaGFyYWN0ZXJcclxufVxyXG4iXX0=