primeng 18.0.0-rc.2 → 18.0.0

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 (120) hide show
  1. package/LICENSE.md +1 -1
  2. package/autocomplete/autocomplete.d.ts +11 -11
  3. package/config/primeng.d.ts +12 -6
  4. package/config/provideprimeng.d.ts +1 -12
  5. package/config/themeprovider.d.ts +10 -4
  6. package/confirmdialog/confirmdialog.d.ts +1 -0
  7. package/esm2022/autocomplete/autocomplete.mjs +131 -133
  8. package/esm2022/autocomplete/style/autocompletestyle.mjs +5 -4
  9. package/esm2022/calendar/calendar.mjs +2 -2
  10. package/esm2022/colorpicker/colorpicker.mjs +2 -2
  11. package/esm2022/config/primeng.mjs +14 -18
  12. package/esm2022/config/provideprimeng.mjs +11 -3
  13. package/esm2022/config/themeprovider.mjs +10 -16
  14. package/esm2022/confirmdialog/confirmdialog.mjs +10 -5
  15. package/esm2022/contextmenu/contextmenu.mjs +2 -2
  16. package/esm2022/datepicker/datepicker.mjs +5 -5
  17. package/esm2022/dialog/dialog.mjs +16 -16
  18. package/esm2022/drawer/drawer.mjs +4 -4
  19. package/esm2022/dropdown/dropdown.mjs +1 -1
  20. package/esm2022/dynamicdialog/dialogservice.mjs +2 -2
  21. package/esm2022/image/image.mjs +2 -2
  22. package/esm2022/inputmask/inputmask.mjs +4 -4
  23. package/esm2022/inputnumber/inputnumber.mjs +4 -4
  24. package/esm2022/inputotp/inputotp.mjs +4 -4
  25. package/esm2022/inputtext/inputtext.mjs +11 -10
  26. package/esm2022/menu/menu.mjs +2 -2
  27. package/esm2022/multiselect/style/multiselectstyle.mjs +1 -4
  28. package/esm2022/overlay/style/overlaystyle.mjs +2 -2
  29. package/esm2022/overlaypanel/overlaypanel.mjs +2 -2
  30. package/esm2022/password/password.mjs +28 -5
  31. package/esm2022/picklist/picklist.mjs +132 -108
  32. package/esm2022/popover/popover.mjs +2 -2
  33. package/esm2022/ripple/ripple.mjs +5 -2
  34. package/esm2022/select/select.mjs +5 -4
  35. package/esm2022/select/style/selectstyle.mjs +2 -5
  36. package/esm2022/sidebar/sidebar.mjs +2 -2
  37. package/esm2022/splitter/splitter.mjs +25 -15
  38. package/esm2022/splitter/style/splitterstyle.mjs +5 -4
  39. package/esm2022/table/table.mjs +6331 -6484
  40. package/esm2022/textarea/textarea.mjs +9 -9
  41. package/esm2022/tieredmenu/tieredmenu.mjs +2 -2
  42. package/esm2022/tooltip/tooltip.mjs +2 -2
  43. package/esm2022/tree/style/treestyle.mjs +13 -3
  44. package/esm2022/tree/tree.mjs +95 -54
  45. package/esm2022/treeselect/style/treeselectstyle.mjs +1 -4
  46. package/esm2022/treeselect/treeselect.mjs +2 -2
  47. package/fesm2022/primeng-autocomplete.mjs +134 -135
  48. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  49. package/fesm2022/primeng-calendar.mjs +1 -1
  50. package/fesm2022/primeng-calendar.mjs.map +1 -1
  51. package/fesm2022/primeng-colorpicker.mjs +1 -1
  52. package/fesm2022/primeng-colorpicker.mjs.map +1 -1
  53. package/fesm2022/primeng-config.mjs +38 -39
  54. package/fesm2022/primeng-config.mjs.map +1 -1
  55. package/fesm2022/primeng-confirmdialog.mjs +9 -4
  56. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  57. package/fesm2022/primeng-contextmenu.mjs +1 -1
  58. package/fesm2022/primeng-contextmenu.mjs.map +1 -1
  59. package/fesm2022/primeng-datepicker.mjs +4 -4
  60. package/fesm2022/primeng-datepicker.mjs.map +1 -1
  61. package/fesm2022/primeng-dialog.mjs +15 -15
  62. package/fesm2022/primeng-dialog.mjs.map +1 -1
  63. package/fesm2022/primeng-drawer.mjs +3 -3
  64. package/fesm2022/primeng-drawer.mjs.map +1 -1
  65. package/fesm2022/primeng-dropdown.mjs.map +1 -1
  66. package/fesm2022/primeng-dynamicdialog.mjs +1 -1
  67. package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
  68. package/fesm2022/primeng-image.mjs +1 -1
  69. package/fesm2022/primeng-image.mjs.map +1 -1
  70. package/fesm2022/primeng-inputmask.mjs +3 -3
  71. package/fesm2022/primeng-inputmask.mjs.map +1 -1
  72. package/fesm2022/primeng-inputnumber.mjs +3 -3
  73. package/fesm2022/primeng-inputnumber.mjs.map +1 -1
  74. package/fesm2022/primeng-inputotp.mjs +3 -3
  75. package/fesm2022/primeng-inputotp.mjs.map +1 -1
  76. package/fesm2022/primeng-inputtext.mjs +10 -9
  77. package/fesm2022/primeng-inputtext.mjs.map +1 -1
  78. package/fesm2022/primeng-menu.mjs +1 -1
  79. package/fesm2022/primeng-menu.mjs.map +1 -1
  80. package/fesm2022/primeng-multiselect.mjs +0 -3
  81. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  82. package/fesm2022/primeng-overlay.mjs +1 -1
  83. package/fesm2022/primeng-overlay.mjs.map +1 -1
  84. package/fesm2022/primeng-overlaypanel.mjs +1 -1
  85. package/fesm2022/primeng-overlaypanel.mjs.map +1 -1
  86. package/fesm2022/primeng-password.mjs +27 -4
  87. package/fesm2022/primeng-password.mjs.map +1 -1
  88. package/fesm2022/primeng-picklist.mjs +131 -107
  89. package/fesm2022/primeng-picklist.mjs.map +1 -1
  90. package/fesm2022/primeng-popover.mjs +1 -1
  91. package/fesm2022/primeng-popover.mjs.map +1 -1
  92. package/fesm2022/primeng-ripple.mjs +4 -1
  93. package/fesm2022/primeng-ripple.mjs.map +1 -1
  94. package/fesm2022/primeng-select.mjs +5 -7
  95. package/fesm2022/primeng-select.mjs.map +1 -1
  96. package/fesm2022/primeng-sidebar.mjs +1 -1
  97. package/fesm2022/primeng-sidebar.mjs.map +1 -1
  98. package/fesm2022/primeng-splitter.mjs +28 -17
  99. package/fesm2022/primeng-splitter.mjs.map +1 -1
  100. package/fesm2022/primeng-table.mjs +6333 -6486
  101. package/fesm2022/primeng-table.mjs.map +1 -1
  102. package/fesm2022/primeng-textarea.mjs +8 -8
  103. package/fesm2022/primeng-textarea.mjs.map +1 -1
  104. package/fesm2022/primeng-tieredmenu.mjs +1 -1
  105. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  106. package/fesm2022/primeng-tooltip.mjs +1 -1
  107. package/fesm2022/primeng-tooltip.mjs.map +1 -1
  108. package/fesm2022/primeng-tree.mjs +106 -55
  109. package/fesm2022/primeng-tree.mjs.map +1 -1
  110. package/fesm2022/primeng-treeselect.mjs +1 -4
  111. package/fesm2022/primeng-treeselect.mjs.map +1 -1
  112. package/inputtext/inputtext.d.ts +2 -2
  113. package/package.json +256 -256
  114. package/password/password.d.ts +5 -1
  115. package/splitter/splitter.d.ts +2 -3
  116. package/splitter/style/splitterstyle.d.ts +0 -13
  117. package/table/table.d.ts +928 -1030
  118. package/textarea/textarea.d.ts +2 -2
  119. package/tree/style/treestyle.d.ts +1 -1
  120. package/tree/tree.d.ts +4 -2
@@ -99,9 +99,6 @@ p-multiselect.ng-invalid.ng-dirty .p-multiselect-label.p-placeholder {
99
99
  }
100
100
 
101
101
  .p-multiselect-overlay {
102
- position: absolute;
103
- top: 0;
104
- left: 0;
105
102
  background: ${dt('multiselect.overlay.background')};
106
103
  color: ${dt('multiselect.overlay.color')};
107
104
  border: 1px solid ${dt('multiselect.overlay.border.color')};
@@ -373,4 +370,4 @@ export var MultiSelectClasses;
373
370
  */
374
371
  MultiSelectClasses["emptyMessage"] = "p-multiselect-empty-message";
375
372
  })(MultiSelectClasses || (MultiSelectClasses = {}));
376
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlzZWxlY3RzdHlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tdWx0aXNlbGVjdC9zdHlsZS9tdWx0aXNlbGVjdHN0eWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFFekMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQzs7Ozs7O2tCQU1SLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQzt3QkFDdEIsRUFBRSxDQUFDLDBCQUEwQixDQUFDOzZCQUN6QixFQUFFLENBQUMsaUNBQWlDLENBQUMsV0FBVyxFQUFFLENBQUMsaUNBQWlDLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxpQ0FBaUMsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLGlDQUFpQyxDQUFDLGdCQUFnQixFQUFFLENBQzNPLGlDQUFpQyxDQUNwQztxQkFDZ0IsRUFBRSxDQUFDLDJCQUEyQixDQUFDOztrQkFFbEMsRUFBRSxDQUFDLG9CQUFvQixDQUFDOzs7O29CQUl0QixFQUFFLENBQUMsa0NBQWtDLENBQUM7Ozs7b0JBSXRDLEVBQUUsQ0FBQyxnQ0FBZ0MsQ0FBQzs7OztvQkFJcEMsRUFBRSxDQUFDLGdDQUFnQyxDQUFDO2tCQUN0QyxFQUFFLENBQUMsK0JBQStCLENBQUM7ZUFDdEMsRUFBRSxDQUFDLDhCQUE4QixDQUFDLElBQUksRUFBRSxDQUFDLDhCQUE4QixDQUFDLElBQUksRUFBRSxDQUFDLDhCQUE4QixDQUFDO3NCQUN2RyxFQUFFLENBQUMsK0JBQStCLENBQUM7Ozs7a0JBSXZDLEVBQUUsQ0FBQywrQkFBK0IsQ0FBQzs7OztrQkFJbkMsRUFBRSxDQUFDLHFDQUFxQyxDQUFDOzs7O2tCQUl6QyxFQUFFLENBQUMscUNBQXFDLENBQUM7Ozs7O2tCQUt6QyxFQUFF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USxTQUFTO0lBQzNDLElBQUksR0FBRyxhQUFhLENBQUM7SUFFckIsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUVkLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFFbEIsWUFBWSxHQUFHLFlBQVksQ0FBQzs2T0FQbkIsZ0JBQWdCLHlCQUFoQixnQkFBZ0I7Z0VBQWhCLGdCQUFnQixXQUFoQixnQkFBZ0I7O2lGQUFoQixnQkFBZ0I7Y0FENUIsVUFBVTs7QUFXWDs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sQ0FBTixJQUFZLGtCQXlFWDtBQXpFRCxXQUFZLGtCQUFrQjtJQUMxQjs7T0FFRztJQUNILDRDQUFzQixDQUFBO0lBQ3RCOztPQUVHO0lBQ0gsc0VBQWdELENBQUE7SUFDaEQ7O09BRUc7SUFDSCxtREFBNkIsQ0FBQTtJQUM3Qjs7T0FFRztJQUNILDBEQUFvQyxDQUFBO0lBQ3BDOztPQUVHO0lBQ0gsbURBQTZCLENBQUE7SUFDN0I7O09BRUc7SUFDSCwwREFBb0MsQ0FBQTtJQUNwQzs7T0FFRztJQUNILHlEQUFtQyxDQUFBO0lBQ25DOztPQUVHO0lBQ0gsZ0VBQTBDLENBQUE7SUFDMUM7O09BRUc7SUFDSCxrRUFBNEMsQ0FBQTtJQUM1Qzs7T0FFRztJQUNILHVEQUFpQyxDQUFBO0lBQ2pDOztPQUVHO0lBQ0gscURBQStCLENBQUE7SUFDL0I7O09BRUc7SUFDSCwwRUFBb0QsQ0FBQTtJQUNwRDs7T0FFRztJQUNILHVEQUFpQyxDQUFBO0lBQ2pDOztPQUVHO0lBQ0gsb0VBQThDLENBQUE7SUFDOUM7O09BRUc7SUFDSCxpREFBMkIsQ0FBQTtJQUMzQjs7T0FFRztJQUNILGdFQUEwQyxDQUFBO0lBQzFDOztPQUVHO0lBQ0gscURBQStCLENBQUE7SUFDL0I7O09BRUc7SUFDSCxrRUFBNEMsQ0FBQTtBQUNoRCxDQUFDLEVBekVXLGtCQUFrQixLQUFsQixrQkFBa0IsUUF5RTdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmFzZVN0eWxlIH0gZnJvbSAncHJpbWVuZy9iYXNlJztcblxuY29uc3QgdGhlbWUgPSAoeyBkdCB9KSA9PiBgXG4ucC1tdWx0aXNlbGVjdCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAke2R0KCdtdWx0aXNlbGVjdC5iYWNrZ3JvdW5kJyl9O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICR7ZHQoJ211bHRpc2VsZWN0LmJvcmRlci5jb2xvcicpfTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kICR7ZHQoJ211bHRpc2VsZWN0LnRyYW5zaXRpb24uZHVyYXRpb24nKX0sIGNvbG9yICR7ZHQoJ211bHRpc2VsZWN0LnRyYW5zaXRpb24uZHVyYXRpb24nKX0sIGJvcmRlci1jb2xvciAke2R0KCdtdWx0aXNlbGVjdC50cmFuc2l0aW9uLmR1cmF0aW9uJyl9LCBvdXRsaW5lLWNvbG9yICR7ZHQoJ211bHRpc2VsZWN0LnRyYW5zaXRpb24uZHVyYXRpb24nKX0sIGJveC1zaGFkb3cgJHtkdChcbiAgICAgICAgJ211bHRpc2VsZWN0LnRyYW5zaXRpb24uZHVyYXRpb24nXG4gICAgKX07XG4gICAgYm9yZGVyLXJhZGl1czogJHtkdCgnbXVsdGlzZWxlY3QuYm9yZGVyLnJhZGl1cycpfTtcbiAgICBvdXRsaW5lLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiAke2R0KCdtdWx0aXNlbGVjdC5zaGFkb3cnKX07XG59XG5cbi5wLW11bHRpc2VsZWN0Lm5nLWludmFsaWQubmctZGlydHkge1xuICAgIGJvcmRlci1jb2xvcjogJHtkdCgnbXVsdGlzZWxlY3QuaW52YWxpZC5ib3JkZXIuY29sb3InKX07XG59XG5cbi5wLW11bHRpc2VsZWN0Om5vdCgucC1kaXNhYmxlZCk6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogJHtkdCgnbXVsdGlzZWxlY3QuaG92ZXIuYm9yZGVyLmNvbG9yJyl9O1xufVxuXG4ucC1tdWx0aXNlbGVjdDpub3QoLnAtZGlzYWJsZWQpLnAtZm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHtkdCgnbXVsdGlzZWxlY3QuZm9jdXMuYm9yZGVyLmNvbG9yJyl9O1xuICAgIGJveC1zaGFkb3c6ICR7ZHQoJ211bHRpc2VsZWN0LmZvY3VzLnJpbmcuc2hhZG93Jyl9O1xuICAgIG91dGxpbmU6ICR7ZHQoJ211bHRpc2VsZWN0LmZvY3VzLnJpbmcud2lkdGgnKX0gJHtkdCgnbXVsdGlzZWxlY3QuZm9jdXMucmluZy5zdHlsZScpfSAke2R0KCdtdWx0aXNlbGVjdC5mb2N1cy5yaW5nLmNvbG9yJyl9O1xuICAgIG91dGxpbmUtb2Zmc2V0OiAke2R0KCdtdWx0aXNlbGVjdC5mb2N1cy5yaW5nLm9mZnNldCcpfTtcbn1cblxuLnAtbXVsdGlzZWxlY3QucC12YXJpYW50LWZpbGxlZCB7XG4gICAgYmFja2dyb3VuZDogJHtkdCgnbXVsdGlzZWxlY3QuZmlsbGVkLmJhY2tncm91bmQnKX07XG59XG5cbi5wLW11bHRpc2VsZWN0LnAtdmFyaWFudC1maWxsZWQ6bm90KC5wLWRpc2FibGVkKTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJHtkdCgnbXVsdGlzZWxlY3QuZmlsbGVkLmhvdmVyLmJhY2tncm91bmQnKX07XG59XG5cbi5wLW11bHRpc2VsZWN0LnAtdmFyaWFudC1maWxsZWQucC1mb2N1cyB7XG4gICAgYmFja2dyb3VuZDogJHtkdCgnbXVsdGlzZWxlY3QuZmlsbGVkLmZvY3VzLmJhY2tncm91bmQnKX07XG59XG5cbi5wLW11bHRpc2VsZWN0LnAtZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgYmFja2dyb3VuZDogJHtkdCgnbXVsdGlzZWxlY3QuZGlzYWJsZWQuYmFja2dyb3VuZCcpfTtcbn1cblxuLnAtbXVsdGlzZWxlY3QtZHJvcGRvd24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJHtkdCgnbXVsdGlzZWxlY3QuZHJvcGRvd24uY29sb3InKX07XG4gICAgd2lkdGg6ICR7ZHQoJ211bHRpc2VsZWN0LmRyb3Bkb3duLndpZHRoJyl9O1xuICAgIGJvcmRlci1zdGFydC1lbmQtcmFkaXVzOiAke2R0KCdtdWx0aXNlbGVjdC5ib3JkZXIucmFkaXVzJyl9O1xuICAgIGJvcmRlci1lbmQtZW5kLXJhZGl1czogJHtkdCgnbXVsdGlzZWxlY3QuYm9yZGVyLnJhZGl1cycpfTtcbn1cblxuLnAtbXVsdGlzZWxlY3QtbGFiZWwtY29udGFpbmVyIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnAtbXVsdGlzZWxlY3QtbGFiZWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXMtY2VudGVyO1xuICAgIGdhcDogY2FsYygke2R0KCdtdWx0aXNlbGVjdC5wYWRkaW5nLnknKX0gLyAyKTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHBhZGRpbmc6ICR7ZHQoJ211bHRpc2VsZWN0LnBhZGRpbmcueScpfSAke2R0KCdtdWx0aXNlbGVjdC5wYWRkaW5nLngnKX07XG4gICAgY29sb3I6ICR7ZHQoJ211bHRpc2VsZWN0LmNvbG9yJyl9O1xufVxuXG4ucC1tdWx0aXNlbGVjdC1sYWJlbC5wLXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJHtkdCgnbXVsdGlzZWxlY3QucGxhY2Vob2xkZXIuY29sb3InKX07XG59XG5cbnAtbXVsdGlzZWxlY3QubmctaW52YWxpZC5uZy1kaXJ0eSAucC1tdWx0aXNlbGVjdC1sYWJlbC5wLXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJHtkdCgnbXVsdGlzZWxlY3QuaW52YWxpZC5wbGFjZWhvbGRlci5jb2xvcicpfTtcbn1cblxuLnAtbXVsdGlzZWxlY3QucC1kaXNhYmxlZCAucC1tdWx0aXNlbGVjdC1sYWJlbCB7XG4gICAgY29sb3I6ICR7ZHQoJ211bHRpc2VsZWN0LmRpc2FibGVkLmNvbG9yJyl9O1xufVxuXG4ucC1tdWx0aXNlbGVjdC1sYWJlbC1lbXB0eSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5wLW11bHRpc2VsZWN0IC5wLW11bHRpc2VsZWN0LW92ZXJsYXkge1xuICAgIG1pbi13aWR0aDogMTAwJTtcbn1cblxuLnAtbXVsdGlzZWxlY3Qtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQ6ICR7ZHQoJ211bHRpc2VsZWN0Lm92ZXJsYXkuYmFja2dyb3VuZCcpfTtcbiAgICBjb2xvcjogJHtkdCgnbXVsdGlzZWxlY3Qub3ZlcmxheS5jb2xvcicpfTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAke2R0KCdtdWx0aXNlbGVjdC5vdmVybGF5LmJvcmRlci5jb2xvcicpfTtcbiAgICBib3JkZXItcmFkaXVzOiAke2R0KCdtdWx0aXNlbGVjdC5vdmVybGF5LmJvcmRlci5yYWRpdXMnKX07XG4gICAgYm94LXNoYWRvdzogJHtkdCgnbXVsdGlzZWxlY3Qub3ZlcmxheS5zaGFkb3cnKX07XG59XG5cbi5wLW11bHRpc2VsZWN0LWhlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6ICR7ZHQoJ211bHRpc2VsZWN0Lmxpc3QuaGVhZGVyLnBhZGRpbmcnKX07XG59XG5cbi5wLW11bHRpc2VsZWN0LWhlYWRlciAucC1jaGVja2JveCB7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICR7ZHQoJ211bHRpc2VsZWN0Lm9wdGlvbi5nYXAnKX07XG59XG5cbi5wLW11bHRpc2VsZWN0LWZpbHRlci1jb250YWluZXIge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xufVxuXG4ucC1tdWx0aXNlbGVjdC1maWx0ZXIge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4ucC1tdWx0aXNlbGVjdC1saXN0LWNvbnRhaW5lciB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi5wLW11bHRpc2VsZWN0LWxpc3Qge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBwYWRkaW5nOiAke2R0KCdtdWx0aXNlbGVjdC5saXN0LnBhZGRpbmcnKX07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogJHtkdCgnbXVsdGlzZWxlY3QubGlzdC5nYXAnKX1cbn1cblxuLnAtbXVsdGlzZWxlY3Qtb3B0aW9uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6ICR7ZHQoJ211bHRpc2VsZWN0Lm9wdGlvbi5nYXAnKX07XG4gICAgcGFkZGluZzogJHtkdCgnbXVsdGlzZWxlY3Qub3B0aW9uLnBhZGRpbmcnKX07XG4gICAgYm9yZGVyOiAwIG5vbmU7XG4gICAgY29sb3I6ICR7ZHQoJ211bHRpc2VsZWN0Lm9wdGlvbi5jb2xvcicpfTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kICR7ZHQoJ211bHRpc2VsZWN0LnRyYW5zaXRpb24uZHVyYXRpb24nKX0sIGNvbG9yICR7ZHQoJ211bHRpc2VsZWN0LnRyYW5zaXRpb24uZHVyYXRpb24nKX0sIGJvcmRlci1jb2xvciAke2R0KCdtdWx0aXNlbGVjdC50cmFuc2l0aW9uLmR1cmF0aW9uJyl9LCBib3gtc2hhZG93ICR7ZHQoJ211bHRpc2VsZWN0LnRyYW5zaXRpb24uZHVyYXRpb24nKX0sIG91dGxpbmUtY29sb3IgJHtkdChcbiAgICAgICAgJ211bHRpc2VsZWN0LnRyYW5zaXRpb24uZHVyYXRpb24nXG4gICAgKX07XG4gICAgYm9yZGVyLXJhZGl1czogJHtkdCgnbXVsdGlzZWxlY3Qub3B0aW9uLmJvcmRlci5yYWRpdXMnKX1cbn1cblxuLnAtbXVsdGlzZWxlY3Qtb3B0aW9uOm5vdCgucC1tdWx0aXNlbGVjdC1vcHRpb24tc2VsZWN0ZWQpOm5vdCgucC1kaXNhYmxlZCkucC1mb2N1cyB7XG4gICAgYmFja2dyb3VuZDogJHtkdCgnbXVsdGlzZWxlY3Qub3B0aW9uLmZvY3VzLmJhY2tncm91bmQnKX07XG4gICAgY29sb3I6ICR7ZHQoJ211bHRpc2VsZWN0Lm9wdGlvbi5mb2N1cy5jb2xvcicpfTtcbn1cblxuLnAtbXVsdGlzZWxlY3Qtb3B0aW9uLnAtbXVsdGlzZWxlY3Qtb3B0aW9uLXNlbGVjdGVkIHtcbiAgICBiYWNrZ3JvdW5kOiAke2R0KCdtdWx0aXNlbGVjdC5vcHRpb24uc2VsZWN0ZWQuYmFja2dyb3VuZCcpfTtcbiAgICBjb2xvcjogJHtkdCgnbXVsdGlzZWxlY3Qub3B0aW9uLnNlbGVjdGVkLmNvbG9yJyl9O1xufVxuXG4ucC1tdWx0aXNlbGVjdC1vcHRpb24ucC1tdWx0aXNlbGVjdC1vcHRpb24tc2VsZWN0ZWQucC1mb2N1cyB7XG4gICAgYmFja2dyb3VuZDogJHtkdCgnbXVsdGlzZWxlY3Qub3B0aW9uLnNlbGVjdGVkLmZvY3VzLmJhY2tncm91bmQnKX07XG4gICAgY29sb3I6ICR7ZHQoJ211bHRpc2VsZWN0Lm9wdGlvbi5zZWxlY3RlZC5mb2N1cy5jb2xvcicpfTtcbn1cblxuLnAtbXVsdGlzZWxlY3Qtb3B0aW9uLWdyb3VwIHtcbiAgICBjdXJzb3I6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6ICR7ZHQoJ211bHRpc2VsZWN0Lm9wdGlvbi5ncm91cC5wYWRkaW5nJyl9O1xuICAgIGJhY2tncm91bmQ6ICR7ZHQoJ211bHRpc2VsZWN0Lm9wdGlvbi5ncm91cC5iYWNrZ3JvdW5kJyl9O1xuICAgIGNvbG9yOiAke2R0KCdtdWx0aXNlbGVjdC5vcHRpb24uZ3JvdXAuY29sb3InKX07XG4gICAgZm9udC13ZWlnaHQ6ICR7ZHQoJ211bHRpc2VsZWN0Lm9wdGlvbi5ncm91cC5mb250LndlaWdodCcpfTtcbn1cblxuLnAtbXVsdGlzZWxlY3QtZW1wdHktbWVzc2FnZSB7XG4gICAgcGFkZGluZzogJHtkdCgnbXVsdGlzZWxlY3QuZW1wdHkubWVzc2FnZS5wYWRkaW5nJyl9O1xufVxuXG4ucC1tdWx0aXNlbGVjdC1sYWJlbCAucC1jaGlwIHtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygke2R0KCdtdWx0aXNlbGVjdC5wYWRkaW5nLnknKX0gLyAyKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygke2R0KCdtdWx0aXNlbGVjdC5wYWRkaW5nLnknKX0gLyAyKTtcbiAgICBib3JkZXItcmFkaXVzOiAke2R0KCdtdWx0aXNlbGVjdC5jaGlwLmJvcmRlci5yYWRpdXMnKX07XG59XG5cbi5wLW11bHRpc2VsZWN0LWxhYmVsOmhhcygucC1jaGlwKSB7XG4gICAgcGFkZGluZzogY2FsYygke2R0KCdtdWx0aXNlbGVjdC5wYWRkaW5nLnknKX0gLyAyKSBjYWxjKCR7ZHQoJ211bHRpc2VsZWN0LnBhZGRpbmcueCcpfSAvIDIpO1xufVxuXG4ucC1tdWx0aXNlbGVjdC1mbHVpZCB7XG4gICAgZGlzcGxheTogZmxleDtcbn1cblxuLnAtbXVsdGlzZWxlY3Qtc20gLnAtbXVsdGlzZWxlY3QtbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogJHtkdCgnbXVsdGlzZWxlY3Quc20uZm9udC5zaXplJyl9O1xuICAgIHBhZGRpbmctYmxvY2s6ICR7ZHQoJ211bHRpc2VsZWN0LnNtLnBhZGRpbmcueScpfTtcbiAgICBwYWRkaW5nLWlubGluZTogJHtkdCgnbXVsdGlzZWxlY3Quc20ucGFkZGluZy54Jyl9O1xufVxuXG4ucC1tdWx0aXNlbGVjdC1zbSAucC1tdWx0aXNlbGVjdC1kcm9wZG93biAucC1pY29uIHtcbiAgICBmb250LXNpemU6ICR7ZHQoJ211bHRpc2VsZWN0LnNtLmZvbnQuc2l6ZScpfTtcbiAgICB3aWR0aDogJHtkdCgnbXVsdGlzZWxlY3Quc20uZm9udC5zaXplJyl9O1xuICAgIGhlaWdodDogJHtkdCgnbXVsdGlzZWxlY3Quc20uZm9udC5zaXplJyl9O1xufVxuXG4ucC1tdWx0aXNlbGVjdC1sZyAucC1tdWx0aXNlbGVjdC1sYWJlbCB7XG4gICAgZm9udC1zaXplOiAke2R0KCdtdWx0aXNlbGVjdC5sZy5mb250LnNpemUnKX07XG4gICAgcGFkZGluZy1ibG9jazogJHtkdCgnbXVsdGlzZWxlY3QubGcucGFkZGluZy55Jyl9O1xuICAgIHBhZGRpbmctaW5saW5lOiAke2R0KCdtdWx0aXNlbGVjdC5sZy5wYWRkaW5nLngnKX07XG59XG5cbi5wLW11bHRpc2VsZWN0LWxnIC5wLW11bHRpc2VsZWN0LWRyb3Bkb3duIC5wLWljb24ge1xuICAgIGZvbnQtc2l6ZTogJHtkdCgnbXVsdGlzZWxlY3QubGcuZm9udC5zaXplJyl9O1xuICAgIHdpZHRoOiAke2R0KCdtdWx0aXNlbGVjdC5sZy5mb250LnNpemUnKX07XG4gICAgaGVpZ2h0OiAke2R0KCdtdWx0aXNlbGVjdC5sZy5mb250LnNpemUnKX07XG59XG5cbi5wLW11bHRpc2VsZWN0LWNsZWFyLWljb24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICR7ZHQoJ211bHRpc2VsZWN0LmNsZWFyLmljb24uY29sb3InKX07XG59YDtcblxuY29uc3QgaW5saW5lU3R5bGVzID0ge1xuICAgIHJvb3Q6ICh7IHByb3BzIH0pID0+ICh7IHBvc2l0aW9uOiBwcm9wcy5hcHBlbmRUbyA9PT0gJ3NlbGYnID8gJ3JlbGF0aXZlJyA6IHVuZGVmaW5lZCB9KVxufTtcblxuY29uc3QgY2xhc3NlcyA9IHtcbiAgICByb290OiAoeyBpbnN0YW5jZSB9KSA9PiAoe1xuICAgICAgICAncC1tdWx0aXNlbGVjdCBwLWNvbXBvbmVudCBwLWlucHV0d3JhcHBlcic6IHRydWUsXG4gICAgICAgICdwLW11bHRpc2VsZWN0LWRpc3BsYXktY2hpcCc6IGluc3RhbmNlLmRpc3BsYXkgPT09ICdjaGlwJyxcbiAgICAgICAgJ3AtZGlzYWJsZWQnOiBpbnN0YW5jZS5kaXNhYmxlZCxcbiAgICAgICAgJ3AtaW52YWxpZCc6IGluc3RhbmNlLmludmFsaWQsXG4gICAgICAgICdwLXZhcmlhbnQtZmlsbGVkJzogaW5zdGFuY2UudmFyaWFudCA/IGluc3RhbmNlLnZhcmlhbnQgPT09ICdmaWxsZWQnIDogaW5zdGFuY2UuY29uZmlnLmlucHV0U3R5bGUgPT09ICdmaWxsZWQnLFxuICAgICAgICAncC1mb2N1cyc6IGluc3RhbmNlLmZvY3VzZWQsXG4gICAgICAgICdwLWlucHV0d3JhcHBlci1maWxsZWQnOiBpbnN0YW5jZS5maWxsZWQsXG4gICAgICAgICdwLWlucHV0d3JhcHBlci1mb2N1cyc6IGluc3RhbmNlLmZvY3VzZWQgfHwgaW5zdGFuY2Uub3ZlcmxheVZpc2libGUsXG4gICAgICAgICdwLW11bHRpc2VsZWN0LW9wZW4nOiBpbnN0YW5jZS5vdmVybGF5VmlzaWJsZSxcbiAgICAgICAgJ3AtbXVsdGlzZWxlY3QtZmx1aWQnOiBpbnN0YW5jZS5oYXNGbHVpZCxcbiAgICAgICAgJ3AtbXVsdGlzZWxlY3Qtc20gcC1pbnB1dGZpZWxkLXNtJzogaW5zdGFuY2Uuc2l6ZSA9PT0gJ3NtYWxsJyxcbiAgICAgICAgJ3AtbXVsdGlzZWxlY3QtbGcgcC1pbnB1dGZpZWxkLWxnJzogaW5zdGFuY2Uuc2l6ZSA9PT0gJ2xhcmdlJ1xuICAgIH0pLFxuICAgIGxhYmVsQ29udGFpbmVyOiAncC1tdWx0aXNlbGVjdC1sYWJlbC1jb250YWluZXInLFxuICAgIGxhYmVsOiAoeyBpbnN0YW5jZSB9KSA9PiAoe1xuICAgICAgICAncC1tdWx0aXNlbGVjdC1sYWJlbCc6IHRydWUsXG4gICAgICAgICdwLXBsYWNlaG9sZGVyJzogaW5zdGFuY2UubGFiZWwoKSA9PT0gaW5zdGFuY2UucGxhY2Vob2xkZXIoKSxcbiAgICAgICAgJ3AtbXVsdGlzZWxlY3QtbGFiZWwtZW1wdHknOiAhaW5zdGFuY2UucGxhY2Vob2xkZXIoKSAmJiAhaW5zdGFuY2UuZGVmYXVsdExhYmVsICYmICghaW5zdGFuY2UubW9kZWxWYWx1ZSgpIHx8IGluc3RhbmNlLm1vZGVsVmFsdWUoKS5sZW5ndGggPT09IDApXG4gICAgfSksXG4gICAgY2hpcEl0ZW06ICdwLW11bHRpc2VsZWN0LWNoaXAtaXRlbScsXG4gICAgcGNDaGlwOiAncC1tdWx0aXNlbGVjdC1jaGlwJyxcbiAgICBjaGlwSWNvbjogJ3AtbXVsdGlzZWxlY3QtY2hpcC1pY29uJyxcbiAgICBkcm9wZG93bjogJ3AtbXVsdGlzZWxlY3QtZHJvcGRvd24nLFxuICAgIGxvYWRpbmdJY29uOiAncC1tdWx0aXNlbGVjdC1sb2FkaW5nLWljb24nLFxuICAgIGRyb3Bkb3duSWNvbjogJ3AtbXVsdGlzZWxlY3QtZHJvcGRvd24taWNvbicsXG4gICAgb3ZlcmxheTogJ3AtbXVsdGlzZWxlY3Qtb3ZlcmxheSBwLWNvbXBvbmVudCcsXG4gICAgaGVhZGVyOiAncC1tdWx0aXNlbGVjdC1oZWFkZXInLFxuICAgIHBjRmlsdGVyQ29udGFpbmVyOiAncC1tdWx0aXNlbGVjdC1maWx0ZXItY29udGFpbmVyJyxcbiAgICBwY0ZpbHRlcjogJ3AtbXVsdGlzZWxlY3QtZmlsdGVyJyxcbiAgICBsaXN0Q29udGFpbmVyOiAncC1tdWx0aXNlbGVjdC1saXN0LWNvbnRhaW5lcicsXG4gICAgbGlzdDogJ3AtbXVsdGlzZWxlY3QtbGlzdCcsXG4gICAgb3B0aW9uR3JvdXA6ICdwLW11bHRpc2VsZWN0LW9wdGlvbi1ncm91cCcsXG4gICAgb3B0aW9uOiAoeyBpbnN0YW5jZSwgb3B0aW9uLCBpbmRleCwgZ2V0SXRlbU9wdGlvbnMgfSkgPT4gKHtcbiAgICAgICAgJ3AtbXVsdGlzZWxlY3Qtb3B0aW9uJzogdHJ1ZSxcbiAgICAgICAgJ3AtbXVsdGlzZWxlY3Qtb3B0aW9uLXNlbGVjdGVkJzogaW5zdGFuY2UuaXNTZWxlY3RlZChvcHRpb24pICYmIGluc3RhbmNlLmhpZ2hsaWdodE9uU2VsZWN0LFxuICAgICAgICAncC1mb2N1cyc6IGluc3RhbmNlLmZvY3VzZWRPcHRpb25JbmRleCA9PT0gaW5zdGFuY2UuZ2V0T3B0aW9uSW5kZXgoaW5kZXgsIGdldEl0ZW1PcHRpb25zKSxcbiAgICAgICAgJ3AtZGlzYWJsZWQnOiBpbnN0YW5jZS5pc09wdGlvbkRpc2FibGVkKG9wdGlvbilcbiAgICB9KSxcbiAgICBlbXB0eU1lc3NhZ2U6ICdwLW11bHRpc2VsZWN0LWVtcHR5LW1lc3NhZ2UnXG59O1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTXVsdGlTZWxlY3RTdHlsZSBleHRlbmRzIEJhc2VTdHlsZSB7XG4gICAgbmFtZSA9ICdtdWx0aXNlbGVjdCc7XG5cbiAgICB0aGVtZSA9IHRoZW1lO1xuXG4gICAgY2xhc3NlcyA9IGNsYXNzZXM7XG5cbiAgICBpbmxpbmVTdHlsZXMgPSBpbmxpbmVTdHlsZXM7XG59XG5cbi8qKlxuICpcbiAqIE11bHRpU2VsZWN0IGlzIHVzZWQgdG8gc2VsZWN0IG11bHRpcGxlIGl0ZW1zIGZyb20gYSBjb2xsZWN0aW9uLlxuICpcbiAqIFtMaXZlIERlbW9dKGh0dHBzOi8vd3d3LnByaW1lbmcub3JnL211bHRpc2VsZWN0LylcbiAqXG4gKiBAbW9kdWxlIG11bHRpc2VsZWN0c3R5bGVcbiAqXG4gKi9cbmV4cG9ydCBlbnVtIE11bHRpU2VsZWN0Q2xhc3NlcyB7XG4gICAgLyoqXG4gICAgICogQ2xhc3MgbmFtZSBvZiB0aGUgcm9vdCBlbGVtZW50XG4gICAgICovXG4gICAgcm9vdCA9ICdwLW11bHRpc2VsZWN0JyxcbiAgICAvKipcbiAgICAgKiBDbGFzcyBuYW1lIG9mIHRoZSBsYWJlbCBjb250YWluZXIgZWxlbWVudFxuICAgICAqL1xuICAgIGxhYmVsQ29udGFpbmVyID0gJ3AtbXVsdGlzZWxlY3QtbGFiZWwtY29udGFpbmVyJyxcbiAgICAvKipcbiAgICAgKiBDbGFzcyBuYW1lIG9mIHRoZSBsYWJlbCBlbGVtZW50XG4gICAgICovXG4gICAgbGFiZWwgPSAncC1tdWx0aXNlbGVjdC1sYWJlbCcsXG4gICAgLyoqXG4gICAgICogQ2xhc3MgbmFtZSBvZiB0aGUgY2hpcCBpdGVtIGVsZW1lbnRcbiAgICAgKi9cbiAgICBjaGlwSXRlbSA9ICdwLW11bHRpc2VsZWN0LWNoaXAtaXRlbScsXG4gICAgLyoqXG4gICAgICogQ2xhc3MgbmFtZSBvZiB0aGUgY2hpcCBlbGVtZW50XG4gICAgICovXG4gICAgcGNDaGlwID0gJ3AtbXVsdGlzZWxlY3QtY2hpcCcsXG4gICAgLyoqXG4gICAgICogQ2xhc3MgbmFtZSBvZiB0aGUgY2hpcCBpY29uIGVsZW1lbnRcbiAgICAgKi9cbiAgICBjaGlwSWNvbiA9ICdwLW11bHRpc2VsZWN0LWNoaXAtaWNvbicsXG4gICAgLyoqXG4gICAgICogQ2xhc3MgbmFtZSBvZiB0aGUgZHJvcGRvd24gZWxlbWVudFxuICAgICAqL1xuICAgIGRyb3Bkb3duID0gJ3AtbXVsdGlzZWxlY3QtZHJvcGRvd24nLFxuICAgIC8qKlxuICAgICAqIENsYXNzIG5hbWUgb2YgdGhlIGxvYWRpbmcgaWNvbiBlbGVtZW50XG4gICAgICovXG4gICAgbG9hZGluZ0ljb24gPSAncC1tdWx0aXNlbGVjdC1sb2FkaW5nLWljb24nLFxuICAgIC8qKlxuICAgICAqIENsYXNzIG5hbWUgb2YgdGhlIGRyb3Bkb3duIGljb24gZWxlbWVudFxuICAgICAqL1xuICAgIGRyb3Bkb3duSWNvbiA9ICdwLW11bHRpc2VsZWN0LWRyb3Bkb3duLWljb24nLFxuICAgIC8qKlxuICAgICAqIENsYXNzIG5hbWUgb2YgdGhlIG92ZXJsYXkgZWxlbWVudFxuICAgICAqL1xuICAgIG92ZXJsYXkgPSAncC1tdWx0aXNlbGVjdC1vdmVybGF5JyxcbiAgICAvKipcbiAgICAgKiBDbGFzcyBuYW1lIG9mIHRoZSBoZWFkZXIgZWxlbWVudFxuICAgICAqL1xuICAgIGhlYWRlciA9ICdwLW11bHRpc2VsZWN0LWhlYWRlcicsXG4gICAgLyoqXG4gICAgICogQ2xhc3MgbmFtZSBvZiB0aGUgZmlsdGVyIGNvbnRhaW5lciBlbGVtZW50XG4gICAgICovXG4gICAgcGNGaWx0ZXJDb250YWluZXIgPSAncC1tdWx0aXNlbGVjdC1maWx0ZXItY29udGFpbmVyJyxcbiAgICAvKipcbiAgICAgKiBDbGFzcyBuYW1lIG9mIHRoZSBmaWx0ZXIgZWxlbWVudFxuICAgICAqL1xuICAgIHBjRmlsdGVyID0gJ3AtbXVsdGlzZWxlY3QtZmlsdGVyJyxcbiAgICAvKipcbiAgICAgKiBDbGFzcyBuYW1lIG9mIHRoZSBsaXN0IGNvbnRhaW5lciBlbGVtZW50XG4gICAgICovXG4gICAgbGlzdENvbnRhaW5lciA9ICdwLW11bHRpc2VsZWN0LWxpc3QtY29udGFpbmVyJyxcbiAgICAvKipcbiAgICAgKiBDbGFzcyBuYW1lIG9mIHRoZSBsaXN0IGVsZW1lbnRcbiAgICAgKi9cbiAgICBsaXN0ID0gJ3AtbXVsdGlzZWxlY3QtbGlzdCcsXG4gICAgLyoqXG4gICAgICogQ2xhc3MgbmFtZSBvZiB0aGUgb3B0aW9uIGdyb3VwIGVsZW1lbnRcbiAgICAgKi9cbiAgICBvcHRpb25Hcm91cCA9ICdwLW11bHRpc2VsZWN0LW9wdGlvbi1ncm91cCcsXG4gICAgLyoqXG4gICAgICogQ2xhc3MgbmFtZSBvZiB0aGUgb3B0aW9uIGVsZW1lbnRcbiAgICAgKi9cbiAgICBvcHRpb24gPSAncC1tdWx0aXNlbGVjdC1vcHRpb24nLFxuICAgIC8qKlxuICAgICAqIENsYXNzIG5hbWUgb2YgdGhlIGVtcHR5IG1lc3NhZ2UgZWxlbWVudFxuICAgICAqL1xuICAgIGVtcHR5TWVzc2FnZSA9ICdwLW11bHRpc2VsZWN0LWVtcHR5LW1lc3NhZ2UnXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTXVsdGlTZWxlY3RTdHlsZSBleHRlbmRzIEJhc2VTdHlsZSB7fVxuIl19
373
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlzZWxlY3RzdHlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tdWx0aXNlbGVjdC9zdHlsZS9tdWx0aXNlbGVjdHN0eWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFFekMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQzs7Ozs7O2tCQU1SLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQzt3QkFDdEIsRUFBRSxDQUFDLDBCQUEwQixDQUFDOzZCQUN6QixFQUFFLENBQUMsaUNBQWlDLENBQUMsV0FBVyxFQUFFLENBQUMsaUNBQWlDLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxpQ0FBaUMsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLGlDQUFpQyxDQUFDLGdCQUFnQixFQUFFLENBQzNPLGlDQUFpQyxDQUNwQztxQkFDZ0IsRUFBRSxDQUFDLDJCQUEyQixDQUFDOztrQkFFbEMsRUFBRSxDQUFDLG9CQUFvQixDQUFDOzs7O29CQUl0QixFQUFFLENBQUMsa0NBQWtDLENBQUM7Ozs7b0JBSXRDLEVBQUUsQ0FBQyxnQ0FBZ0MsQ0FBQzs7OztvQkFJcEMsRUFBRSxDQUFDLGdDQUFnQyxDQUFDO2tCQUN0QyxFQUFFLENBQUMsK0JBQStCLENBQUM7ZUFDdEMsRUFBRSxDQUFDLDhCQUE4QixDQUFDLElBQUksRUFBRSxDQUFDLDhCQUE4QixDQUFDLElBQUksRUFBRSxDQUFDLDhCQUE4QixDQUFDO3NCQUN2RyxFQUFFLENBQUMsK0JBQStCLENBQUM7Ozs7a0JBSXZDLEVBQUUsQ0FBQywrQkFBK0IsQ0FBQzs7OztrQkFJbkMsRUFBRSxDQUFDLHFDQUFxQyxDQUFDOzs7O2tCQUl6QyxFQUFFLENBQUMscUNBQXFDLENBQUM7Ozs7O2tCQUt6QyxFQUFF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QVM7SUFDM0MsSUFBSSxHQUFHLGFBQWEsQ0FBQztJQUVyQixLQUFLLEdBQUcsS0FBSyxDQUFDO0lBRWQsT0FBTyxHQUFHLE9BQU8sQ0FBQztJQUVsQixZQUFZLEdBQUcsWUFBWSxDQUFDOzZPQVBuQixnQkFBZ0IseUJBQWhCLGdCQUFnQjtnRUFBaEIsZ0JBQWdCLFdBQWhCLGdCQUFnQjs7aUZBQWhCLGdCQUFnQjtjQUQ1QixVQUFVOztBQVdYOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxDQUFOLElBQVksa0JBeUVYO0FBekVELFdBQVksa0JBQWtCO0lBQzFCOztPQUVHO0lBQ0gsNENBQXNCLENBQUE7SUFDdEI7O09BRUc7SUFDSCxzRUFBZ0QsQ0FBQTtJQUNoRDs7T0FFRztJQUNILG1EQUE2QixDQUFBO0lBQzdCOztPQUVHO0lBQ0gsMERBQW9DLENBQUE7SUFDcEM7O09BRUc7SUFDSCxtREFBNkIsQ0FBQTtJQUM3Qjs7T0FFRztJQUNILDBEQUFvQyxDQUFBO0lBQ3BDOztPQUVHO0lBQ0gseURBQW1DLENBQUE7SUFDbkM7O09BRUc7SUFDSCxnRUFBMEMsQ0FBQTtJQUMxQzs7T0FFRztJQUNILGtFQUE0QyxDQUFBO0lBQzVDOztPQUVHO0lBQ0gsdURBQWlDLENBQUE7SUFDakM7O09BRUc7SUFDSCxxREFBK0IsQ0FBQTtJQUMvQjs7T0FFRztJQUNILDBFQUFvRCxDQUFBO0lBQ3BEOztPQUVHO0lBQ0gsdURBQWlDLENBQUE7SUFDakM7O09BRUc7SUFDSCxvRUFBOEMsQ0FBQTtJQUM5Qzs7T0FFRztJQUNILGlEQUEyQixDQUFBO0lBQzNCOztPQUVHO0lBQ0gsZ0VBQTBDLENBQUE7SUFDMUM7O09BRUc7SUFDSCxxREFBK0IsQ0FBQTtJQUMvQjs7T0FFRztJQUNILGtFQUE0QyxDQUFBO0FBQ2hELENBQUMsRUF6RVcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQXlFN0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCYXNlU3R5bGUgfSBmcm9tICdwcmltZW5nL2Jhc2UnO1xuXG5jb25zdCB0aGVtZSA9ICh7IGR0IH0pID0+IGBcbi5wLW11bHRpc2VsZWN0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIGJhY2tncm91bmQ6ICR7ZHQoJ211bHRpc2VsZWN0LmJhY2tncm91bmQnKX07XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHtkdCgnbXVsdGlzZWxlY3QuYm9yZGVyLmNvbG9yJyl9O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgJHtkdCgnbXVsdGlzZWxlY3QudHJhbnNpdGlvbi5kdXJhdGlvbicpfSwgY29sb3IgJHtkdCgnbXVsdGlzZWxlY3QudHJhbnNpdGlvbi5kdXJhdGlvbicpfSwgYm9yZGVyLWNvbG9yICR7ZHQoJ211bHRpc2VsZWN0LnRyYW5zaXRpb24uZHVyYXRpb24nKX0sIG91dGxpbmUtY29sb3IgJHtkdCgnbXVsdGlzZWxlY3QudHJhbnNpdGlvbi5kdXJhdGlvbicpfSwgYm94LXNoYWRvdyAke2R0KFxuICAgICAgICAnbXVsdGlzZWxlY3QudHJhbnNpdGlvbi5kdXJhdGlvbidcbiAgICApfTtcbiAgICBib3JkZXItcmFkaXVzOiAke2R0KCdtdWx0aXNlbGVjdC5ib3JkZXIucmFkaXVzJyl9O1xuICAgIG91dGxpbmUtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6ICR7ZHQoJ211bHRpc2VsZWN0LnNoYWRvdycpfTtcbn1cblxuLnAtbXVsdGlzZWxlY3QubmctaW52YWxpZC5uZy1kaXJ0eSB7XG4gICAgYm9yZGVyLWNvbG9yOiAke2R0KCdtdWx0aXNlbGVjdC5pbnZhbGlkLmJvcmRlci5jb2xvcicpfTtcbn1cblxuLnAtbXVsdGlzZWxlY3Q6bm90KC5wLWRpc2FibGVkKTpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAke2R0KCdtdWx0aXNlbGVjdC5ob3Zlci5ib3JkZXIuY29sb3InKX07XG59XG5cbi5wLW11bHRpc2VsZWN0Om5vdCgucC1kaXNhYmxlZCkucC1mb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAke2R0KCdtdWx0aXNlbGVjdC5mb2N1cy5ib3JkZXIuY29sb3InKX07XG4gICAgYm94LXNoYWRvdzogJHtkdCgnbXVsdGlzZWxlY3QuZm9jdXMucmluZy5zaGFkb3cnKX07XG4gICAgb3V0bGluZTogJHtkdCgnbXVsdGlzZWxlY3QuZm9jdXMucmluZy53aWR0aCcpfSAke2R0KCdtdWx0aXNlbGVjdC5mb2N1cy5yaW5nLnN0eWxlJyl9ICR7ZHQoJ211bHRpc2VsZWN0LmZvY3VzLnJpbmcuY29sb3InKX07XG4gICAgb3V0bGluZS1vZmZzZXQ6ICR7ZHQoJ211bHRpc2VsZWN0LmZvY3VzLnJpbmcub2Zmc2V0Jyl9O1xufVxuXG4ucC1tdWx0aXNlbGVjdC5wLXZhcmlhbnQtZmlsbGVkIHtcbiAgICBiYWNrZ3JvdW5kOiAke2R0KCdtdWx0aXNlbGVjdC5maWxsZWQuYmFja2dyb3VuZCcpfTtcbn1cblxuLnAtbXVsdGlzZWxlY3QucC12YXJpYW50LWZpbGxlZDpub3QoLnAtZGlzYWJsZWQpOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAke2R0KCdtdWx0aXNlbGVjdC5maWxsZWQuaG92ZXIuYmFja2dyb3VuZCcpfTtcbn1cblxuLnAtbXVsdGlzZWxlY3QucC12YXJpYW50LWZpbGxlZC5wLWZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiAke2R0KCdtdWx0aXNlbGVjdC5maWxsZWQuZm9jdXMuYmFja2dyb3VuZCcpfTtcbn1cblxuLnAtbXVsdGlzZWxlY3QucC1kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBiYWNrZ3JvdW5kOiAke2R0KCdtdWx0aXNlbGVjdC5kaXNhYmxlZC5iYWNrZ3JvdW5kJyl9O1xufVxuXG4ucC1tdWx0aXNlbGVjdC1kcm9wZG93biB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAke2R0KCdtdWx0aXNlbGVjdC5kcm9wZG93bi5jb2xvcicpfTtcbiAgICB3aWR0aDogJHtkdCgnbXVsdGlzZWxlY3QuZHJvcGRvd24ud2lkdGgnKX07XG4gICAgYm9yZGVyLXN0YXJ0LWVuZC1yYWRpdXM6ICR7ZHQoJ211bHRpc2VsZWN0LmJvcmRlci5yYWRpdXMnKX07XG4gICAgYm9yZGVyLWVuZC1lbmQtcmFkaXVzOiAke2R0KCdtdWx0aXNlbGVjdC5ib3JkZXIucmFkaXVzJyl9O1xufVxuXG4ucC1tdWx0aXNlbGVjdC1sYWJlbC1jb250YWluZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ucC1tdWx0aXNlbGVjdC1sYWJlbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtcy1jZW50ZXI7XG4gICAgZ2FwOiBjYWxjKCR7ZHQoJ211bHRpc2VsZWN0LnBhZGRpbmcueScpfSAvIDIpO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgcGFkZGluZzogJHtkdCgnbXVsdGlzZWxlY3QucGFkZGluZy55Jyl9ICR7ZHQoJ211bHRpc2VsZWN0LnBhZGRpbmcueCcpfTtcbiAgICBjb2xvcjogJHtkdCgnbXVsdGlzZWxlY3QuY29sb3InKX07XG59XG5cbi5wLW11bHRpc2VsZWN0LWxhYmVsLnAtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAke2R0KCdtdWx0aXNlbGVjdC5wbGFjZWhvbGRlci5jb2xvcicpfTtcbn1cblxucC1tdWx0aXNlbGVjdC5uZy1pbnZhbGlkLm5nLWRpcnR5IC5wLW11bHRpc2VsZWN0LWxhYmVsLnAtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAke2R0KCdtdWx0aXNlbGVjdC5pbnZhbGlkLnBsYWNlaG9sZGVyLmNvbG9yJyl9O1xufVxuXG4ucC1tdWx0aXNlbGVjdC5wLWRpc2FibGVkIC5wLW11bHRpc2VsZWN0LWxhYmVsIHtcbiAgICBjb2xvcjogJHtkdCgnbXVsdGlzZWxlY3QuZGlzYWJsZWQuY29sb3InKX07XG59XG5cbi5wLW11bHRpc2VsZWN0LWxhYmVsLWVtcHR5IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnAtbXVsdGlzZWxlY3QgLnAtbXVsdGlzZWxlY3Qtb3ZlcmxheSB7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xufVxuXG4ucC1tdWx0aXNlbGVjdC1vdmVybGF5IHtcbiAgICBiYWNrZ3JvdW5kOiAke2R0KCdtdWx0aXNlbGVjdC5vdmVybGF5LmJhY2tncm91bmQnKX07XG4gICAgY29sb3I6ICR7ZHQoJ211bHRpc2VsZWN0Lm92ZXJsYXkuY29sb3InKX07XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHtkdCgnbXVsdGlzZWxlY3Qub3ZlcmxheS5ib3JkZXIuY29sb3InKX07XG4gICAgYm9yZGVyLXJhZGl1czogJHtkdCgnbXVsdGlzZWxlY3Qub3ZlcmxheS5ib3JkZXIucmFkaXVzJyl9O1xuICAgIGJveC1zaGFkb3c6ICR7ZHQoJ211bHRpc2VsZWN0Lm92ZXJsYXkuc2hhZG93Jyl9O1xufVxuXG4ucC1tdWx0aXNlbGVjdC1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAke2R0KCdtdWx0aXNlbGVjdC5saXN0LmhlYWRlci5wYWRkaW5nJyl9O1xufVxuXG4ucC1tdWx0aXNlbGVjdC1oZWFkZXIgLnAtY2hlY2tib3gge1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAke2R0KCdtdWx0aXNlbGVjdC5vcHRpb24uZ2FwJyl9O1xufVxuXG4ucC1tdWx0aXNlbGVjdC1maWx0ZXItY29udGFpbmVyIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbn1cblxuLnAtbXVsdGlzZWxlY3QtZmlsdGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLnAtbXVsdGlzZWxlY3QtbGlzdC1jb250YWluZXIge1xuICAgIG92ZXJmbG93OiBhdXRvO1xufVxuXG4ucC1tdWx0aXNlbGVjdC1saXN0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgcGFkZGluZzogJHtkdCgnbXVsdGlzZWxlY3QubGlzdC5wYWRkaW5nJyl9O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6ICR7ZHQoJ211bHRpc2VsZWN0Lmxpc3QuZ2FwJyl9XG59XG5cbi5wLW11bHRpc2VsZWN0LW9wdGlvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAke2R0KCdtdWx0aXNlbGVjdC5vcHRpb24uZ2FwJyl9O1xuICAgIHBhZGRpbmc6ICR7ZHQoJ211bHRpc2VsZWN0Lm9wdGlvbi5wYWRkaW5nJyl9O1xuICAgIGJvcmRlcjogMCBub25lO1xuICAgIGNvbG9yOiAke2R0KCdtdWx0aXNlbGVjdC5vcHRpb24uY29sb3InKX07XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAke2R0KCdtdWx0aXNlbGVjdC50cmFuc2l0aW9uLmR1cmF0aW9uJyl9LCBjb2xvciAke2R0KCdtdWx0aXNlbGVjdC50cmFuc2l0aW9uLmR1cmF0aW9uJyl9LCBib3JkZXItY29sb3IgJHtkdCgnbXVsdGlzZWxlY3QudHJhbnNpdGlvbi5kdXJhdGlvbicpfSwgYm94LXNoYWRvdyAke2R0KCdtdWx0aXNlbGVjdC50cmFuc2l0aW9uLmR1cmF0aW9uJyl9LCBvdXRsaW5lLWNvbG9yICR7ZHQoXG4gICAgICAgICdtdWx0aXNlbGVjdC50cmFuc2l0aW9uLmR1cmF0aW9uJ1xuICAgICl9O1xuICAgIGJvcmRlci1yYWRpdXM6ICR7ZHQoJ211bHRpc2VsZWN0Lm9wdGlvbi5ib3JkZXIucmFkaXVzJyl9XG59XG5cbi5wLW11bHRpc2VsZWN0LW9wdGlvbjpub3QoLnAtbXVsdGlzZWxlY3Qtb3B0aW9uLXNlbGVjdGVkKTpub3QoLnAtZGlzYWJsZWQpLnAtZm9jdXMge1xuICAgIGJhY2tncm91bmQ6ICR7ZHQoJ211bHRpc2VsZWN0Lm9wdGlvbi5mb2N1cy5iYWNrZ3JvdW5kJyl9O1xuICAgIGNvbG9yOiAke2R0KCdtdWx0aXNlbGVjdC5vcHRpb24uZm9jdXMuY29sb3InKX07XG59XG5cbi5wLW11bHRpc2VsZWN0LW9wdGlvbi5wLW11bHRpc2VsZWN0LW9wdGlvbi1zZWxlY3RlZCB7XG4gICAgYmFja2dyb3VuZDogJHtkdCgnbXVsdGlzZWxlY3Qub3B0aW9uLnNlbGVjdGVkLmJhY2tncm91bmQnKX07XG4gICAgY29sb3I6ICR7ZHQoJ211bHRpc2VsZWN0Lm9wdGlvbi5zZWxlY3RlZC5jb2xvcicpfTtcbn1cblxuLnAtbXVsdGlzZWxlY3Qtb3B0aW9uLnAtbXVsdGlzZWxlY3Qtb3B0aW9uLXNlbGVjdGVkLnAtZm9jdXMge1xuICAgIGJhY2tncm91bmQ6ICR7ZHQoJ211bHRpc2VsZWN0Lm9wdGlvbi5zZWxlY3RlZC5mb2N1cy5iYWNrZ3JvdW5kJyl9O1xuICAgIGNvbG9yOiAke2R0KCdtdWx0aXNlbGVjdC5vcHRpb24uc2VsZWN0ZWQuZm9jdXMuY29sb3InKX07XG59XG5cbi5wLW11bHRpc2VsZWN0LW9wdGlvbi1ncm91cCB7XG4gICAgY3Vyc29yOiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAke2R0KCdtdWx0aXNlbGVjdC5vcHRpb24uZ3JvdXAucGFkZGluZycpfTtcbiAgICBiYWNrZ3JvdW5kOiAke2R0KCdtdWx0aXNlbGVjdC5vcHRpb24uZ3JvdXAuYmFja2dyb3VuZCcpfTtcbiAgICBjb2xvcjogJHtkdCgnbXVsdGlzZWxlY3Qub3B0aW9uLmdyb3VwLmNvbG9yJyl9O1xuICAgIGZvbnQtd2VpZ2h0OiAke2R0KCdtdWx0aXNlbGVjdC5vcHRpb24uZ3JvdXAuZm9udC53ZWlnaHQnKX07XG59XG5cbi5wLW11bHRpc2VsZWN0LWVtcHR5LW1lc3NhZ2Uge1xuICAgIHBhZGRpbmc6ICR7ZHQoJ211bHRpc2VsZWN0LmVtcHR5Lm1lc3NhZ2UucGFkZGluZycpfTtcbn1cblxuLnAtbXVsdGlzZWxlY3QtbGFiZWwgLnAtY2hpcCB7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoJHtkdCgnbXVsdGlzZWxlY3QucGFkZGluZy55Jyl9IC8gMik7XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGMoJHtkdCgnbXVsdGlzZWxlY3QucGFkZGluZy55Jyl9IC8gMik7XG4gICAgYm9yZGVyLXJhZGl1czogJHtkdCgnbXVsdGlzZWxlY3QuY2hpcC5ib3JkZXIucmFkaXVzJyl9O1xufVxuXG4ucC1tdWx0aXNlbGVjdC1sYWJlbDpoYXMoLnAtY2hpcCkge1xuICAgIHBhZGRpbmc6IGNhbGMoJHtkdCgnbXVsdGlzZWxlY3QucGFkZGluZy55Jyl9IC8gMikgY2FsYygke2R0KCdtdWx0aXNlbGVjdC5wYWRkaW5nLngnKX0gLyAyKTtcbn1cblxuLnAtbXVsdGlzZWxlY3QtZmx1aWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5wLW11bHRpc2VsZWN0LXNtIC5wLW11bHRpc2VsZWN0LWxhYmVsIHtcbiAgICBmb250LXNpemU6ICR7ZHQoJ211bHRpc2VsZWN0LnNtLmZvbnQuc2l6ZScpfTtcbiAgICBwYWRkaW5nLWJsb2NrOiAke2R0KCdtdWx0aXNlbGVjdC5zbS5wYWRkaW5nLnknKX07XG4gICAgcGFkZGluZy1pbmxpbmU6ICR7ZHQoJ211bHRpc2VsZWN0LnNtLnBhZGRpbmcueCcpfTtcbn1cblxuLnAtbXVsdGlzZWxlY3Qtc20gLnAtbXVsdGlzZWxlY3QtZHJvcGRvd24gLnAtaWNvbiB7XG4gICAgZm9udC1zaXplOiAke2R0KCdtdWx0aXNlbGVjdC5zbS5mb250LnNpemUnKX07XG4gICAgd2lkdGg6ICR7ZHQoJ211bHRpc2VsZWN0LnNtLmZvbnQuc2l6ZScpfTtcbiAgICBoZWlnaHQ6ICR7ZHQoJ211bHRpc2VsZWN0LnNtLmZvbnQuc2l6ZScpfTtcbn1cblxuLnAtbXVsdGlzZWxlY3QtbGcgLnAtbXVsdGlzZWxlY3QtbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogJHtkdCgnbXVsdGlzZWxlY3QubGcuZm9udC5zaXplJyl9O1xuICAgIHBhZGRpbmctYmxvY2s6ICR7ZHQoJ211bHRpc2VsZWN0LmxnLnBhZGRpbmcueScpfTtcbiAgICBwYWRkaW5nLWlubGluZTogJHtkdCgnbXVsdGlzZWxlY3QubGcucGFkZGluZy54Jyl9O1xufVxuXG4ucC1tdWx0aXNlbGVjdC1sZyAucC1tdWx0aXNlbGVjdC1kcm9wZG93biAucC1pY29uIHtcbiAgICBmb250LXNpemU6ICR7ZHQoJ211bHRpc2VsZWN0LmxnLmZvbnQuc2l6ZScpfTtcbiAgICB3aWR0aDogJHtkdCgnbXVsdGlzZWxlY3QubGcuZm9udC5zaXplJyl9O1xuICAgIGhlaWdodDogJHtkdCgnbXVsdGlzZWxlY3QubGcuZm9udC5zaXplJyl9O1xufVxuXG4ucC1tdWx0aXNlbGVjdC1jbGVhci1pY29uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAke2R0KCdtdWx0aXNlbGVjdC5jbGVhci5pY29uLmNvbG9yJyl9O1xufWA7XG5cbmNvbnN0IGlubGluZVN0eWxlcyA9IHtcbiAgICByb290OiAoeyBwcm9wcyB9KSA9PiAoeyBwb3NpdGlvbjogcHJvcHMuYXBwZW5kVG8gPT09ICdzZWxmJyA/ICdyZWxhdGl2ZScgOiB1bmRlZmluZWQgfSlcbn07XG5cbmNvbnN0IGNsYXNzZXMgPSB7XG4gICAgcm9vdDogKHsgaW5zdGFuY2UgfSkgPT4gKHtcbiAgICAgICAgJ3AtbXVsdGlzZWxlY3QgcC1jb21wb25lbnQgcC1pbnB1dHdyYXBwZXInOiB0cnVlLFxuICAgICAgICAncC1tdWx0aXNlbGVjdC1kaXNwbGF5LWNoaXAnOiBpbnN0YW5jZS5kaXNwbGF5ID09PSAnY2hpcCcsXG4gICAgICAgICdwLWRpc2FibGVkJzogaW5zdGFuY2UuZGlzYWJsZWQsXG4gICAgICAgICdwLWludmFsaWQnOiBpbnN0YW5jZS5pbnZhbGlkLFxuICAgICAgICAncC12YXJpYW50LWZpbGxlZCc6IGluc3RhbmNlLnZhcmlhbnQgPyBpbnN0YW5jZS52YXJpYW50ID09PSAnZmlsbGVkJyA6IGluc3RhbmNlLmNvbmZpZy5pbnB1dFN0eWxlID09PSAnZmlsbGVkJyxcbiAgICAgICAgJ3AtZm9jdXMnOiBpbnN0YW5jZS5mb2N1c2VkLFxuICAgICAgICAncC1pbnB1dHdyYXBwZXItZmlsbGVkJzogaW5zdGFuY2UuZmlsbGVkLFxuICAgICAgICAncC1pbnB1dHdyYXBwZXItZm9jdXMnOiBpbnN0YW5jZS5mb2N1c2VkIHx8IGluc3RhbmNlLm92ZXJsYXlWaXNpYmxlLFxuICAgICAgICAncC1tdWx0aXNlbGVjdC1vcGVuJzogaW5zdGFuY2Uub3ZlcmxheVZpc2libGUsXG4gICAgICAgICdwLW11bHRpc2VsZWN0LWZsdWlkJzogaW5zdGFuY2UuaGFzRmx1aWQsXG4gICAgICAgICdwLW11bHRpc2VsZWN0LXNtIHAtaW5wdXRmaWVsZC1zbSc6IGluc3RhbmNlLnNpemUgPT09ICdzbWFsbCcsXG4gICAgICAgICdwLW11bHRpc2VsZWN0LWxnIHAtaW5wdXRmaWVsZC1sZyc6IGluc3RhbmNlLnNpemUgPT09ICdsYXJnZSdcbiAgICB9KSxcbiAgICBsYWJlbENvbnRhaW5lcjogJ3AtbXVsdGlzZWxlY3QtbGFiZWwtY29udGFpbmVyJyxcbiAgICBsYWJlbDogKHsgaW5zdGFuY2UgfSkgPT4gKHtcbiAgICAgICAgJ3AtbXVsdGlzZWxlY3QtbGFiZWwnOiB0cnVlLFxuICAgICAgICAncC1wbGFjZWhvbGRlcic6IGluc3RhbmNlLmxhYmVsKCkgPT09IGluc3RhbmNlLnBsYWNlaG9sZGVyKCksXG4gICAgICAgICdwLW11bHRpc2VsZWN0LWxhYmVsLWVtcHR5JzogIWluc3RhbmNlLnBsYWNlaG9sZGVyKCkgJiYgIWluc3RhbmNlLmRlZmF1bHRMYWJlbCAmJiAoIWluc3RhbmNlLm1vZGVsVmFsdWUoKSB8fCBpbnN0YW5jZS5tb2RlbFZhbHVlKCkubGVuZ3RoID09PSAwKVxuICAgIH0pLFxuICAgIGNoaXBJdGVtOiAncC1tdWx0aXNlbGVjdC1jaGlwLWl0ZW0nLFxuICAgIHBjQ2hpcDogJ3AtbXVsdGlzZWxlY3QtY2hpcCcsXG4gICAgY2hpcEljb246ICdwLW11bHRpc2VsZWN0LWNoaXAtaWNvbicsXG4gICAgZHJvcGRvd246ICdwLW11bHRpc2VsZWN0LWRyb3Bkb3duJyxcbiAgICBsb2FkaW5nSWNvbjogJ3AtbXVsdGlzZWxlY3QtbG9hZGluZy1pY29uJyxcbiAgICBkcm9wZG93bkljb246ICdwLW11bHRpc2VsZWN0LWRyb3Bkb3duLWljb24nLFxuICAgIG92ZXJsYXk6ICdwLW11bHRpc2VsZWN0LW92ZXJsYXkgcC1jb21wb25lbnQnLFxuICAgIGhlYWRlcjogJ3AtbXVsdGlzZWxlY3QtaGVhZGVyJyxcbiAgICBwY0ZpbHRlckNvbnRhaW5lcjogJ3AtbXVsdGlzZWxlY3QtZmlsdGVyLWNvbnRhaW5lcicsXG4gICAgcGNGaWx0ZXI6ICdwLW11bHRpc2VsZWN0LWZpbHRlcicsXG4gICAgbGlzdENvbnRhaW5lcjogJ3AtbXVsdGlzZWxlY3QtbGlzdC1jb250YWluZXInLFxuICAgIGxpc3Q6ICdwLW11bHRpc2VsZWN0LWxpc3QnLFxuICAgIG9wdGlvbkdyb3VwOiAncC1tdWx0aXNlbGVjdC1vcHRpb24tZ3JvdXAnLFxuICAgIG9wdGlvbjogKHsgaW5zdGFuY2UsIG9wdGlvbiwgaW5kZXgsIGdldEl0ZW1PcHRpb25zIH0pID0+ICh7XG4gICAgICAgICdwLW11bHRpc2VsZWN0LW9wdGlvbic6IHRydWUsXG4gICAgICAgICdwLW11bHRpc2VsZWN0LW9wdGlvbi1zZWxlY3RlZCc6IGluc3RhbmNlLmlzU2VsZWN0ZWQob3B0aW9uKSAmJiBpbnN0YW5jZS5oaWdobGlnaHRPblNlbGVjdCxcbiAgICAgICAgJ3AtZm9jdXMnOiBpbnN0YW5jZS5mb2N1c2VkT3B0aW9uSW5kZXggPT09IGluc3RhbmNlLmdldE9wdGlvbkluZGV4KGluZGV4LCBnZXRJdGVtT3B0aW9ucyksXG4gICAgICAgICdwLWRpc2FibGVkJzogaW5zdGFuY2UuaXNPcHRpb25EaXNhYmxlZChvcHRpb24pXG4gICAgfSksXG4gICAgZW1wdHlNZXNzYWdlOiAncC1tdWx0aXNlbGVjdC1lbXB0eS1tZXNzYWdlJ1xufTtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE11bHRpU2VsZWN0U3R5bGUgZXh0ZW5kcyBCYXNlU3R5bGUge1xuICAgIG5hbWUgPSAnbXVsdGlzZWxlY3QnO1xuXG4gICAgdGhlbWUgPSB0aGVtZTtcblxuICAgIGNsYXNzZXMgPSBjbGFzc2VzO1xuXG4gICAgaW5saW5lU3R5bGVzID0gaW5saW5lU3R5bGVzO1xufVxuXG4vKipcbiAqXG4gKiBNdWx0aVNlbGVjdCBpcyB1c2VkIHRvIHNlbGVjdCBtdWx0aXBsZSBpdGVtcyBmcm9tIGEgY29sbGVjdGlvbi5cbiAqXG4gKiBbTGl2ZSBEZW1vXShodHRwczovL3d3dy5wcmltZW5nLm9yZy9tdWx0aXNlbGVjdC8pXG4gKlxuICogQG1vZHVsZSBtdWx0aXNlbGVjdHN0eWxlXG4gKlxuICovXG5leHBvcnQgZW51bSBNdWx0aVNlbGVjdENsYXNzZXMge1xuICAgIC8qKlxuICAgICAqIENsYXNzIG5hbWUgb2YgdGhlIHJvb3QgZWxlbWVudFxuICAgICAqL1xuICAgIHJvb3QgPSAncC1tdWx0aXNlbGVjdCcsXG4gICAgLyoqXG4gICAgICogQ2xhc3MgbmFtZSBvZiB0aGUgbGFiZWwgY29udGFpbmVyIGVsZW1lbnRcbiAgICAgKi9cbiAgICBsYWJlbENvbnRhaW5lciA9ICdwLW11bHRpc2VsZWN0LWxhYmVsLWNvbnRhaW5lcicsXG4gICAgLyoqXG4gICAgICogQ2xhc3MgbmFtZSBvZiB0aGUgbGFiZWwgZWxlbWVudFxuICAgICAqL1xuICAgIGxhYmVsID0gJ3AtbXVsdGlzZWxlY3QtbGFiZWwnLFxuICAgIC8qKlxuICAgICAqIENsYXNzIG5hbWUgb2YgdGhlIGNoaXAgaXRlbSBlbGVtZW50XG4gICAgICovXG4gICAgY2hpcEl0ZW0gPSAncC1tdWx0aXNlbGVjdC1jaGlwLWl0ZW0nLFxuICAgIC8qKlxuICAgICAqIENsYXNzIG5hbWUgb2YgdGhlIGNoaXAgZWxlbWVudFxuICAgICAqL1xuICAgIHBjQ2hpcCA9ICdwLW11bHRpc2VsZWN0LWNoaXAnLFxuICAgIC8qKlxuICAgICAqIENsYXNzIG5hbWUgb2YgdGhlIGNoaXAgaWNvbiBlbGVtZW50XG4gICAgICovXG4gICAgY2hpcEljb24gPSAncC1tdWx0aXNlbGVjdC1jaGlwLWljb24nLFxuICAgIC8qKlxuICAgICAqIENsYXNzIG5hbWUgb2YgdGhlIGRyb3Bkb3duIGVsZW1lbnRcbiAgICAgKi9cbiAgICBkcm9wZG93biA9ICdwLW11bHRpc2VsZWN0LWRyb3Bkb3duJyxcbiAgICAvKipcbiAgICAgKiBDbGFzcyBuYW1lIG9mIHRoZSBsb2FkaW5nIGljb24gZWxlbWVudFxuICAgICAqL1xuICAgIGxvYWRpbmdJY29uID0gJ3AtbXVsdGlzZWxlY3QtbG9hZGluZy1pY29uJyxcbiAgICAvKipcbiAgICAgKiBDbGFzcyBuYW1lIG9mIHRoZSBkcm9wZG93biBpY29uIGVsZW1lbnRcbiAgICAgKi9cbiAgICBkcm9wZG93bkljb24gPSAncC1tdWx0aXNlbGVjdC1kcm9wZG93bi1pY29uJyxcbiAgICAvKipcbiAgICAgKiBDbGFzcyBuYW1lIG9mIHRoZSBvdmVybGF5IGVsZW1lbnRcbiAgICAgKi9cbiAgICBvdmVybGF5ID0gJ3AtbXVsdGlzZWxlY3Qtb3ZlcmxheScsXG4gICAgLyoqXG4gICAgICogQ2xhc3MgbmFtZSBvZiB0aGUgaGVhZGVyIGVsZW1lbnRcbiAgICAgKi9cbiAgICBoZWFkZXIgPSAncC1tdWx0aXNlbGVjdC1oZWFkZXInLFxuICAgIC8qKlxuICAgICAqIENsYXNzIG5hbWUgb2YgdGhlIGZpbHRlciBjb250YWluZXIgZWxlbWVudFxuICAgICAqL1xuICAgIHBjRmlsdGVyQ29udGFpbmVyID0gJ3AtbXVsdGlzZWxlY3QtZmlsdGVyLWNvbnRhaW5lcicsXG4gICAgLyoqXG4gICAgICogQ2xhc3MgbmFtZSBvZiB0aGUgZmlsdGVyIGVsZW1lbnRcbiAgICAgKi9cbiAgICBwY0ZpbHRlciA9ICdwLW11bHRpc2VsZWN0LWZpbHRlcicsXG4gICAgLyoqXG4gICAgICogQ2xhc3MgbmFtZSBvZiB0aGUgbGlzdCBjb250YWluZXIgZWxlbWVudFxuICAgICAqL1xuICAgIGxpc3RDb250YWluZXIgPSAncC1tdWx0aXNlbGVjdC1saXN0LWNvbnRhaW5lcicsXG4gICAgLyoqXG4gICAgICogQ2xhc3MgbmFtZSBvZiB0aGUgbGlzdCBlbGVtZW50XG4gICAgICovXG4gICAgbGlzdCA9ICdwLW11bHRpc2VsZWN0LWxpc3QnLFxuICAgIC8qKlxuICAgICAqIENsYXNzIG5hbWUgb2YgdGhlIG9wdGlvbiBncm91cCBlbGVtZW50XG4gICAgICovXG4gICAgb3B0aW9uR3JvdXAgPSAncC1tdWx0aXNlbGVjdC1vcHRpb24tZ3JvdXAnLFxuICAgIC8qKlxuICAgICAqIENsYXNzIG5hbWUgb2YgdGhlIG9wdGlvbiBlbGVtZW50XG4gICAgICovXG4gICAgb3B0aW9uID0gJ3AtbXVsdGlzZWxlY3Qtb3B0aW9uJyxcbiAgICAvKipcbiAgICAgKiBDbGFzcyBuYW1lIG9mIHRoZSBlbXB0eSBtZXNzYWdlIGVsZW1lbnRcbiAgICAgKi9cbiAgICBlbXB0eU1lc3NhZ2UgPSAncC1tdWx0aXNlbGVjdC1lbXB0eS1tZXNzYWdlJ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE11bHRpU2VsZWN0U3R5bGUgZXh0ZW5kcyBCYXNlU3R5bGUge31cbiJdfQ==
@@ -5,7 +5,7 @@ const theme = ({ dt }) => `
5
5
  .p-overlay {
6
6
  position: absolute;
7
7
  top: 0;
8
- left: 0;
8
+ inset-inline-start: 0;
9
9
  }
10
10
 
11
11
  .p-overlay-modal {
@@ -90,4 +90,4 @@ export class OverlayStyle extends BaseStyle {
90
90
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(OverlayStyle, [{
91
91
  type: Injectable
92
92
  }], null, null); })();
93
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheXN0eWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL292ZXJsYXkvc3R5bGUvb3ZlcmxheXN0eWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFFekMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQStFekIsQ0FBQztBQUdGLE1BQU0sT0FBTyxZQUFhLFNBQVEsU0FBUztJQUN2QyxJQUFJLEdBQUcsU0FBUyxDQUFDO0lBRWpCLEtBQUssR0FBRyxLQUFLLENBQUM7Nk5BSEwsWUFBWSx5QkFBWixZQUFZO2dFQUFaLFlBQVksV0FBWixZQUFZOztpRkFBWixZQUFZO2NBRHhCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCYXNlU3R5bGUgfSBmcm9tICdwcmltZW5nL2Jhc2UnO1xuXG5jb25zdCB0aGVtZSA9ICh7IGR0IH0pID0+IGBcbi5wLW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbn1cblxuLnAtb3ZlcmxheS1tb2RhbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5wLW92ZXJsYXktY29udGVudCB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogaW5oZXJpdDtcbn1cblxuLnAtb3ZlcmxheS1tb2RhbCA+IC5wLW92ZXJsYXktY29udGVudCB7XG4gICAgei1pbmRleDogMTtcbiAgICB3aWR0aDogOTAlO1xufVxuXG4vKiBQb3NpdGlvbiAqL1xuLyogdG9wICovXG4ucC1vdmVybGF5LXRvcCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4ucC1vdmVybGF5LXRvcC1zdGFydCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuLnAtb3ZlcmxheS10b3AtZW5kIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4vKiBib3R0b20gKi9cbi5wLW92ZXJsYXktYm90dG9tIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG4ucC1vdmVybGF5LWJvdHRvbS1zdGFydCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbi5wLW92ZXJsYXktYm90dG9tLWVuZCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi8qIGxlZnQgKi9cbi5wLW92ZXJsYXktbGVmdCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuLnAtb3ZlcmxheS1sZWZ0LXN0YXJ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4ucC1vdmVybGF5LWxlZnQtZW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuXG4vKiByaWdodCAqL1xuLnAtb3ZlcmxheS1yaWdodCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cbi5wLW92ZXJsYXktcmlnaHQtc3RhcnQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4ucC1vdmVybGF5LXJpZ2h0LWVuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG5gO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgT3ZlcmxheVN0eWxlIGV4dGVuZHMgQmFzZVN0eWxlIHtcbiAgICBuYW1lID0gJ292ZXJsYXknO1xuXG4gICAgdGhlbWUgPSB0aGVtZTtcbn1cbiJdfQ==
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheXN0eWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL292ZXJsYXkvc3R5bGUvb3ZlcmxheXN0eWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFFekMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQStFekIsQ0FBQztBQUdGLE1BQU0sT0FBTyxZQUFhLFNBQVEsU0FBUztJQUN2QyxJQUFJLEdBQUcsU0FBUyxDQUFDO0lBRWpCLEtBQUssR0FBRyxLQUFLLENBQUM7Nk5BSEwsWUFBWSx5QkFBWixZQUFZO2dFQUFaLFlBQVksV0FBWixZQUFZOztpRkFBWixZQUFZO2NBRHhCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCYXNlU3R5bGUgfSBmcm9tICdwcmltZW5nL2Jhc2UnO1xuXG5jb25zdCB0aGVtZSA9ICh7IGR0IH0pID0+IGBcbi5wLW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgaW5zZXQtaW5saW5lLXN0YXJ0OiAwO1xufVxuXG4ucC1vdmVybGF5LW1vZGFsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLnAtb3ZlcmxheS1jb250ZW50IHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBpbmhlcml0O1xufVxuXG4ucC1vdmVybGF5LW1vZGFsID4gLnAtb3ZlcmxheS1jb250ZW50IHtcbiAgICB6LWluZGV4OiAxO1xuICAgIHdpZHRoOiA5MCU7XG59XG5cbi8qIFBvc2l0aW9uICovXG4vKiB0b3AgKi9cbi5wLW92ZXJsYXktdG9wIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbi5wLW92ZXJsYXktdG9wLXN0YXJ0IHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG4ucC1vdmVybGF5LXRvcC1lbmQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi8qIGJvdHRvbSAqL1xuLnAtb3ZlcmxheS1ib3R0b20ge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbn1cbi5wLW92ZXJsYXktYm90dG9tLXN0YXJ0IHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuLnAtb3ZlcmxheS1ib3R0b20tZW5kIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLyogbGVmdCAqL1xuLnAtb3ZlcmxheS1sZWZ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG4ucC1vdmVybGF5LWxlZnQtc3RhcnQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbi5wLW92ZXJsYXktbGVmdC1lbmQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG5cbi8qIHJpZ2h0ICovXG4ucC1vdmVybGF5LXJpZ2h0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuLnAtb3ZlcmxheS1yaWdodC1zdGFydCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbi5wLW92ZXJsYXktcmlnaHQtZW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbn1cbmA7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBPdmVybGF5U3R5bGUgZXh0ZW5kcyBCYXNlU3R5bGUge1xuICAgIG5hbWUgPSAnb3ZlcmxheSc7XG5cbiAgICB0aGVtZSA9IHRoZW1lO1xufVxuIl19
@@ -221,7 +221,7 @@ export class OverlayPanel extends BaseComponent {
221
221
  if (this.appendTo === 'body')
222
222
  this.renderer.appendChild(this.document.body, this.container);
223
223
  else
224
- appendChild(this.container, this.appendTo);
224
+ appendChild(this.appendTo, this.container);
225
225
  }
226
226
  }
227
227
  restoreAppend() {
@@ -526,4 +526,4 @@ export class OverlayPanelModule {
526
526
  }]
527
527
  }], null, null); })();
528
528
  (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(OverlayPanelModule, { declarations: [OverlayPanel], imports: [CommonModule, Ripple, SharedModule, TimesIcon], exports: [OverlayPanel, SharedModule] }); })();
529
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheXBhbmVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL292ZXJsYXlwYW5lbC9vdmVybGF5cGFuZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBa0IsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakcsT0FBTyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xFLE9BQU8sRUFFSCxnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBRVosWUFBWSxFQUNaLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFFUixlQUFlLEVBRWYsTUFBTSxFQUVOLGlCQUFpQixFQUVwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2SCxPQUFPLEVBQWtCLFlBQVksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXhDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFNUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7O0lBOEJwQyx3QkFBaUU7Ozs7SUFuQnpFLDhCQWdCQztJQUxHLEFBREEsQUFMQSwyS0FBUyw2QkFBc0Is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QixlQUFlO2tCQURkLFlBQVk7bUJBQUMseUJBQXlCLEVBQUUsQ0FBQyxRQUFRLENBQUM7O2tGQWhVMUMsWUFBWTtBQXlaekIsTUFBTSxPQUFPLGtCQUFrQjs0R0FBbEIsa0JBQWtCOzREQUFsQixrQkFBa0I7Z0VBSmpCLFlBQVksRUFBVSxZQUFZLEVBQUUsU0FBUyxFQUMvQixZQUFZOztpRkFHM0Isa0JBQWtCO2NBTDlCLFFBQVE7ZUFBQztnQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxTQUFTLENBQUM7Z0JBQ3hELE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxZQUFZLENBQUM7Z0JBQ3JDLFlBQVksRUFBRSxDQUFDLFlBQVksQ0FBQzthQUMvQjs7d0ZBQ1ksa0JBQWtCLG1CQXpabEIsWUFBWSxhQXFaWCxZQUFZLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxTQUFTLGFBclo5QyxZQUFZLEVBc1pHLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBBbmltYXRpb25FdmVudCwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgICBib29sZWFuQXR0cmlidXRlLFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBOZ01vZHVsZSxcbiAgICBOZ1pvbmUsXG4gICAgbnVtYmVyQXR0cmlidXRlLFxuICAgIE9uRGVzdHJveSxcbiAgICBPdXRwdXQsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgVmlld0VuY2Fwc3VsYXRpb24sXG4gICAgVmlld1JlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGFic29sdXRlUG9zaXRpb24sIGFkZENsYXNzLCBhcHBlbmRDaGlsZCwgZmluZFNpbmdsZSwgZ2V0T2Zmc2V0LCBpc0lPUywgaXNUb3VjaERldmljZSB9IGZyb20gJ0BwcmltZXVpeC91dGlscyc7XG5pbXBvcnQgeyBPdmVybGF5U2VydmljZSwgU2hhcmVkTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9hcGknO1xuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJ3ByaW1lbmcvYmFzZWNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb25uZWN0ZWRPdmVybGF5U2Nyb2xsSGFuZGxlciB9IGZyb20gJ3ByaW1lbmcvZG9tJztcbmltcG9ydCB7IFRpbWVzSWNvbiB9IGZyb20gJ3ByaW1lbmcvaWNvbnMnO1xuaW1wb3J0IHsgUmlwcGxlIH0gZnJvbSAncHJpbWVuZy9yaXBwbGUnO1xuaW1wb3J0IHsgTnVsbGFibGUsIFZvaWRMaXN0ZW5lciB9IGZyb20gJ3ByaW1lbmcvdHMtaGVscGVycyc7XG5pbXBvcnQgeyBaSW5kZXhVdGlscyB9IGZyb20gJ3ByaW1lbmcvdXRpbHMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQb3BvdmVyU3R5bGUgfSBmcm9tICcuL3N0eWxlL3BvcG92ZXJzdHlsZSc7XG5cbi8qKlxuICogT3ZlcmxheVBhbmVsIGlzIGEgY29udGFpbmVyIGNvbXBvbmVudCBwb3NpdGlvbmVkIGFzIGNvbm5lY3RlZCB0byBpdHMgdGFyZ2V0LlxuICogQGdyb3VwIENvbXBvbmVudHNcbiAqIEBkZXByZWNhdGVkIFVzZSBQb3BvdmVyIGNvbXBvbmVudCBpbnN0ZWFkLlxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3Atb3ZlcmxheVBhbmVsLCBwLW92ZXJsYXlwYW5lbCcsXG4gICAgc3RhbmRhbG9uZTogZmFsc2UsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgKm5nSWY9XCJyZW5kZXJcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwiJ3AtcG9wb3ZlciBwLWNvbXBvbmVudCdcIlxuICAgICAgICAgICAgW25nU3R5bGVdPVwic3R5bGVcIlxuICAgICAgICAgICAgW2NsYXNzXT1cInN0eWxlQ2xhc3NcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uT3ZlcmxheUNsaWNrKCRldmVudClcIlxuICAgICAgICAgICAgW0BhbmltYXRpb25dPVwie1xuICAgICAgICAgICAgICAgIHZhbHVlOiBvdmVybGF5VmlzaWJsZSA/ICdvcGVuJyA6ICdjbG9zZScsXG4gICAgICAgICAgICAgICAgcGFyYW1zOiB7IHNob3dUcmFuc2l0aW9uUGFyYW1zOiBzaG93VHJhbnNpdGlvbk9wdGlvbnMsIGhpZGVUcmFuc2l0aW9uUGFyYW1zOiBoaWRlVHJhbnNpdGlvbk9wdGlvbnMgfVxuICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAoQGFuaW1hdGlvbi5zdGFydCk9XCJvbkFuaW1hdGlvblN0YXJ0KCRldmVudClcIlxuICAgICAgICAgICAgKEBhbmltYXRpb24uZG9uZSk9XCJvbkFuaW1hdGlvbkVuZCgkZXZlbnQpXCJcbiAgICAgICAgICAgIHJvbGU9XCJkaWFsb2dcIlxuICAgICAgICAgICAgW2F0dHIuYXJpYS1tb2RhbF09XCJvdmVybGF5VmlzaWJsZVwiXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsbGVkQnldPVwiYXJpYUxhYmVsbGVkQnlcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicC1wb3BvdmVyLWNvbnRlbnRcIiAoY2xpY2spPVwib25Db250ZW50Q2xpY2soJGV2ZW50KVwiIChtb3VzZWRvd24pPVwib25Db250ZW50Q2xpY2soJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgYCxcbiAgICBhbmltYXRpb25zOiBbXG4gICAgICAgIHRyaWdnZXIoJ2FuaW1hdGlvbicsIFtcbiAgICAgICAgICAgIHN0YXRlKFxuICAgICAgICAgICAgICAgICd2b2lkJyxcbiAgICAgICAgICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogJ3NjYWxlWSgwLjgpJyxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgc3RhdGUoXG4gICAgICAgICAgICAgICAgJ2Nsb3NlJyxcbiAgICAgICAgICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDBcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHN0YXRlKFxuICAgICAgICAgICAgICAgICdvcGVuJyxcbiAgICAgICAgICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMCknLFxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCd2b2lkID0+IG9wZW4nLCBhbmltYXRlKCd7e3Nob3dUcmFuc2l0aW9uUGFyYW1zfX0nKSksXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCdvcGVuID0+IGNsb3NlJywgYW5pbWF0ZSgne3toaWRlVHJhbnNpdGlvblBhcmFtc319JykpXG4gICAgICAgIF0pXG4gICAgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIHByb3ZpZGVyczogW1BvcG92ZXJTdHlsZV1cbn0pXG5leHBvcnQgY2xhc3MgT3ZlcmxheVBhbmVsIGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgLyoqXG4gICAgICogRGVmaW5lcyBhIHN0cmluZyB0aGF0IGxhYmVscyB0aGUgaW5wdXQgZm9yIGFjY2Vzc2liaWxpdHkuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KCkgYXJpYUxhYmVsOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqXG4gICAgICogRXN0YWJsaXNoZXMgcmVsYXRpb25zaGlwcyBiZXR3ZWVuIHRoZSBjb21wb25lbnQgYW5kIGxhYmVsKHMpIHdoZXJlIGl0cyB2YWx1ZSBzaG91bGQgYmUgb25lIG9yIG1vcmUgZWxlbWVudCBJRHMuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KCkgYXJpYUxhYmVsbGVkQnk6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKipcbiAgICAgKiBFbmFibGVzIHRvIGhpZGUgdGhlIG92ZXJsYXkgd2hlbiBvdXRzaWRlIGlzIGNsaWNrZWQuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIGRpc21pc3NhYmxlOiBib29sZWFuID0gdHJ1ZTtcbiAgICAvKipcbiAgICAgKiBXaGVuIGVuYWJsZWQsIGRpc3BsYXlzIGEgY2xvc2UgaWNvbiBhdCB0b3AgcmlnaHQgY29ybmVyLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBzaG93Q2xvc2VJY29uOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICAgIC8qKlxuICAgICAqIElubGluZSBzdHlsZSBvZiB0aGUgY29tcG9uZW50LlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHN0eWxlOiB7IFtrbGFzczogc3RyaW5nXTogYW55IH0gfCBudWxsIHwgdW5kZWZpbmVkO1xuICAgIC8qKlxuICAgICAqIFN0eWxlIGNsYXNzIG9mIHRoZSBjb21wb25lbnQuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KCkgc3R5bGVDbGFzczogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKlxuICAgICAqICBUYXJnZXQgZWxlbWVudCB0byBhdHRhY2ggdGhlIHBhbmVsLCB2YWxpZCB2YWx1ZXMgYXJlIFwiYm9keVwiIG9yIGEgbG9jYWwgbmctdGVtcGxhdGUgdmFyaWFibGUgb2YgYW5vdGhlciBlbGVtZW50IChub3RlOiB1c2UgYmluZGluZyB3aXRoIGJyYWNrZXRzIGZvciB0ZW1wbGF0ZSB2YXJpYWJsZXMsIGUuZy4gW2FwcGVuZFRvXT1cIm15ZGl2XCIgZm9yIGEgZGl2IGVsZW1lbnQgaGF2aW5nICNteWRpdiBhcyB2YXJpYWJsZSBuYW1lKS5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoKSBhcHBlbmRUbzogSFRNTEVsZW1lbnQgfCBFbGVtZW50UmVmIHwgVGVtcGxhdGVSZWY8YW55PiB8IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQgfCBhbnkgPSAnYm9keSc7XG4gICAgLyoqXG4gICAgICogV2hldGhlciB0byBhdXRvbWF0aWNhbGx5IG1hbmFnZSBsYXllcmluZy5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgYXV0b1pJbmRleDogYm9vbGVhbiA9IHRydWU7XG4gICAgLyoqXG4gICAgICogQXJpYSBsYWJlbCBvZiB0aGUgY2xvc2UgaWNvbi5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoKSBhcmlhQ2xvc2VMYWJlbDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKlxuICAgICAqIEJhc2UgekluZGV4IHZhbHVlIHRvIHVzZSBpbiBsYXllcmluZy5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KSBiYXNlWkluZGV4OiBudW1iZXIgPSAwO1xuICAgIC8qKlxuICAgICAqIFdoZW4gZW5hYmxlZCwgZmlyc3QgYnV0dG9uIHJlY2VpdmVzIGZvY3VzIG9uIHNob3cuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIGZvY3VzT25TaG93OiBib29sZWFuID0gdHJ1ZTtcbiAgICAvKipcbiAgICAgKiBUcmFuc2l0aW9uIG9wdGlvbnMgb2YgdGhlIHNob3cgYW5pbWF0aW9uLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHNob3dUcmFuc2l0aW9uT3B0aW9uczogc3RyaW5nID0gJy4xMnMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSknO1xuICAgIC8qKlxuICAgICAqIFRyYW5zaXRpb24gb3B0aW9ucyBvZiB0aGUgaGlkZSBhbmltYXRpb24uXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KCkgaGlkZVRyYW5zaXRpb25PcHRpb25zOiBzdHJpbmcgPSAnLjFzIGxpbmVhcic7XG4gICAgLyoqXG4gICAgICogQ2FsbGJhY2sgdG8gaW52b2tlIHdoZW4gYW4gb3ZlcmxheSBiZWNvbWVzIHZpc2libGUuXG4gICAgICogQGdyb3VwIEVtaXRzXG4gICAgICovXG4gICAgQE91dHB1dCgpIG9uU2hvdzogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgLyoqXG4gICAgICogQ2FsbGJhY2sgdG8gaW52b2tlIHdoZW4gYW4gb3ZlcmxheSBnZXRzIGhpZGRlbi5cbiAgICAgKiBAZ3JvdXAgRW1pdHNcbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgb25IaWRlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gICAgY29udGFpbmVyOiBOdWxsYWJsZTxIVE1MRGl2RWxlbWVudD47XG5cbiAgICBvdmVybGF5VmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgcmVuZGVyOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBpc092ZXJsYXlBbmltYXRpb25JblByb2dyZXNzOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBzZWxmQ2xpY2s6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIGRvY3VtZW50Q2xpY2tMaXN0ZW5lcjogVm9pZExpc3RlbmVyO1xuXG4gICAgdGFyZ2V0OiBhbnk7XG5cbiAgICB3aWxsSGlkZTogTnVsbGFibGU8Ym9vbGVhbj47XG5cbiAgICBzY3JvbGxIYW5kbGVyOiBOdWxsYWJsZTxDb25uZWN0ZWRPdmVybGF5U2Nyb2xsSGFuZGxlcj47XG5cbiAgICBkb2N1bWVudFJlc2l6ZUxpc3RlbmVyOiBWb2lkTGlzdGVuZXI7XG5cbiAgICBAQ29udGVudENoaWxkKCdjb250ZW50JykgY29udGVudFRlbXBsYXRlOiBOdWxsYWJsZTxUZW1wbGF0ZVJlZjxhbnk+PjtcblxuICAgIEBDb250ZW50Q2hpbGQoJ2Nsb3NlaWNvbicpIGNsb3NlSWNvblRlbXBsYXRlOiBOdWxsYWJsZTxUZW1wbGF0ZVJlZjxhbnk+PjtcblxuICAgIGRlc3Ryb3lDYWxsYmFjazogTnVsbGFibGU8RnVuY3Rpb24+O1xuXG4gICAgb3ZlcmxheUV2ZW50TGlzdGVuZXI6IE51bGxhYmxlPChldmVudD86IGFueSkgPT4gdm9pZD47XG5cbiAgICBvdmVybGF5U3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG5cbiAgICBfY29tcG9uZW50U3R5bGUgPSBpbmplY3QoUG9wb3ZlclN0eWxlKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHpvbmU6IE5nWm9uZSxcbiAgICAgICAgcHVibGljIG92ZXJsYXlTZXJ2aWNlOiBPdmVybGF5U2VydmljZVxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICBjb25zb2xlLmxvZygnT3ZlcmxheVBhbmVsIGlzIGRlcHJlY2F0ZWQuIFVzZSBQb3BvdmVyIGluc3RlYWQuJyk7XG4gICAgfVxuXG4gICAgYmluZERvY3VtZW50Q2xpY2tMaXN0ZW5lcigpIHtcbiAgICAgICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5kb2N1bWVudENsaWNrTGlzdGVuZXIgJiYgdGhpcy5kaXNtaXNzYWJsZSkge1xuICAgICAgICAgICAgICAgIGxldCBkb2N1bWVudEV2ZW50ID0gaXNJT1MoKSA/ICd0b3VjaHN0YXJ0JyA6ICdjbGljayc7XG4gICAgICAgICAgICAgICAgY29uc3QgZG9jdW1lbnRUYXJnZXQ6IGFueSA9IHRoaXMuZWwgPyB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQub3duZXJEb2N1bWVudCA6IHRoaXMuZG9jdW1lbnQ7XG5cbiAgICAgICAgICAgICAgICB0aGlzLmRvY3VtZW50Q2xpY2tMaXN0ZW5lciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKGRvY3VtZW50VGFyZ2V0LCBkb2N1bWVudEV2ZW50LCAoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCF0aGlzLmNvbnRhaW5lcj8uY29udGFpbnMoZXZlbnQudGFyZ2V0KSAmJiB0aGlzLnRhcmdldCAhPT0gZXZlbnQudGFyZ2V0ICYmICF0aGlzLnRhcmdldC5jb250YWlucyhldmVudC50YXJnZXQpICYmICF0aGlzLnNlbGZDbGljaykge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5oaWRlKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGZDbGljayA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNkLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgdW5iaW5kRG9jdW1lbnRDbGlja0xpc3RlbmVyKCkge1xuICAgICAgICBpZiAodGhpcy5kb2N1bWVudENsaWNrTGlzdGVuZXIpIHtcbiAgICAgICAgICAgIHRoaXMuZG9jdW1lbnRDbGlja0xpc3RlbmVyKCk7XG4gICAgICAgICAgICB0aGlzLmRvY3VtZW50Q2xpY2tMaXN0ZW5lciA9IG51bGw7XG4gICAgICAgICAgICB0aGlzLnNlbGZDbGljayA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVG9nZ2xlcyB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgcGFuZWwuXG4gICAgICogQHBhcmFtIHtFdmVudH0gZXZlbnQgLSBCcm93c2VyIGV2ZW50XG4gICAgICogQHBhcmFtIHtUYXJnZXR9IHRhcmdldCAtIFRhcmdldCBlbGVtZW50LlxuICAgICAqIEBncm91cCBNZXRob2RcbiAgICAgKi9cbiAgICB0b2dnbGUoZXZlbnQ6IGFueSwgdGFyZ2V0PzogYW55KSB7XG4gICAgICAgIGlmICh0aGlzLmlzT3ZlcmxheUFuaW1hdGlvbkluUHJvZ3Jlc3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLm92ZXJsYXlWaXNpYmxlKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5oYXNUYXJnZXRDaGFuZ2VkKGV2ZW50LCB0YXJnZXQpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5kZXN0cm95Q2FsbGJhY2sgPSAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2hvdyhudWxsLCB0YXJnZXQgfHwgZXZlbnQuY3VycmVudFRhcmdldCB8fCBldmVudC50YXJnZXQpO1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuaGlkZSgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5zaG93KGV2ZW50LCB0YXJnZXQpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8qKlxuICAgICAqIERpc3BsYXlzIHRoZSBwYW5lbC5cbiAgICAgKiBAcGFyYW0ge0V2ZW50fSBldmVudCAtIEJyb3dzZXIgZXZlbnRcbiAgICAgKiBAcGFyYW0ge1RhcmdldH0gdGFyZ2V0IC0gVGFyZ2V0IGVsZW1lbnQuXG4gICAgICogQGdyb3VwIE1ldGhvZFxuICAgICAqL1xuICAgIHNob3coZXZlbnQ6IGFueSwgdGFyZ2V0PzogYW55KSB7XG4gICAgICAgIHRhcmdldCAmJiBldmVudCAmJiBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgaWYgKHRoaXMuaXNPdmVybGF5QW5pbWF0aW9uSW5Qcm9ncmVzcykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy50YXJnZXQgPSB0YXJnZXQgfHwgZXZlbnQuY3VycmVudFRhcmdldCB8fCBldmVudC50YXJnZXQ7XG4gICAgICAgIHRoaXMub3ZlcmxheVZpc2libGUgPSB0cnVlO1xuICAgICAgICB0aGlzLnJlbmRlciA9IHRydWU7XG4gICAgICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgb25PdmVybGF5Q2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgdGhpcy5vdmVybGF5U2VydmljZS5hZGQoe1xuICAgICAgICAgICAgb3JpZ2luYWxFdmVudDogZXZlbnQsXG4gICAgICAgICAgICB0YXJnZXQ6IHRoaXMuZWwubmF0aXZlRWxlbWVudFxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnNlbGZDbGljayA9IHRydWU7XG4gICAgfVxuXG4gICAgb25Db250ZW50Q2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgY29uc3QgdGFyZ2V0RWxlbWVudCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgdGhpcy5zZWxmQ2xpY2sgPSBldmVudC5vZmZzZXRYIDwgdGFyZ2V0RWxlbWVudC5jbGllbnRXaWR0aCAmJiBldmVudC5vZmZzZXRZIDwgdGFyZ2V0RWxlbWVudC5jbGllbnRIZWlnaHQ7XG4gICAgfVxuXG4gICAgaGFzVGFyZ2V0Q2hhbmdlZChldmVudDogYW55LCB0YXJnZXQ6IGFueSkge1xuICAgICAgICByZXR1cm4gdGhpcy50YXJnZXQgIT0gbnVsbCAmJiB0aGlzLnRhcmdldCAhPT0gKHRhcmdldCB8fCBldmVudC5jdXJyZW50VGFyZ2V0IHx8IGV2ZW50LnRhcmdldCk7XG4gICAgfVxuXG4gICAgYXBwZW5kQ29udGFpbmVyKCkge1xuICAgICAgICBpZiAodGhpcy5hcHBlbmRUbykge1xuICAgICAgICAgICAgaWYgKHRoaXMuYXBwZW5kVG8gPT09ICdib2R5JykgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLmRvY3VtZW50LmJvZHksIHRoaXMuY29udGFpbmVyKTtcbiAgICAgICAgICAgIGVsc2UgYXBwZW5kQ2hpbGQodGhpcy5jb250YWluZXIsIHRoaXMuYXBwZW5kVG8pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmVzdG9yZUFwcGVuZCgpIHtcbiAgICAgICAgaWYgKHRoaXMuY29udGFpbmVyICYmIHRoaXMuYXBwZW5kVG8pIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy5lbC5uYXRpdmVFbGVtZW50LCB0aGlzLmNvbnRhaW5lcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhbGlnbigpIHtcbiAgICAgICAgaWYgKHRoaXMuYXV0b1pJbmRleCkge1xuICAgICAgICAgICAgWkluZGV4VXRpbHMuc2V0KCdvdmVybGF5JywgdGhpcy5jb250YWluZXIsIHRoaXMuYmFzZVpJbmRleCArIHRoaXMuY29uZmlnLnpJbmRleC5vdmVybGF5KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGFic29sdXRlUG9zaXRpb24odGhpcy5jb250YWluZXIsIHRoaXMudGFyZ2V0LCBmYWxzZSk7XG5cbiAgICAgICAgY29uc3QgY29udGFpbmVyT2Zmc2V0ID0gPGFueT5nZXRPZmZzZXQodGhpcy5jb250YWluZXIpO1xuICAgICAgICBjb25zdCB0YXJnZXRPZmZzZXQgPSA8YW55PmdldE9mZnNldCh0aGlzLnRhcmdldCk7XG4gICAgICAgIGNvbnN0IGJvcmRlclJhZGl1cyA9IHRoaXMuZG9jdW1lbnQuZGVmYXVsdFZpZXc/LmdldENvbXB1dGVkU3R5bGUodGhpcy5jb250YWluZXIhKS5nZXRQcm9wZXJ0eVZhbHVlKCdib3JkZXItcmFkaXVzJyk7XG4gICAgICAgIGxldCBhcnJvd0xlZnQgPSAwO1xuXG4gICAgICAgIGlmIChjb250YWluZXJPZmZzZXQubGVmdCA8IHRhcmdldE9mZnNldC5sZWZ0KSB7XG4gICAgICAgICAgICBhcnJvd0xlZnQgPSB0YXJnZXRPZmZzZXQubGVmdCAtIGNvbnRhaW5lck9mZnNldC5sZWZ0IC0gcGFyc2VGbG9hdChib3JkZXJSYWRpdXMhKSAqIDI7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jb250YWluZXI/LnN0eWxlLnNldFByb3BlcnR5KCctLW92ZXJsYXlBcnJvd0xlZnQnLCBgJHthcnJvd0xlZnR9cHhgKTtcblxuICAgICAgICBpZiAoY29udGFpbmVyT2Zmc2V0LnRvcCA8IHRhcmdldE9mZnNldC50b3ApIHtcbiAgICAgICAgICAgIGFkZENsYXNzKHRoaXMuY29udGFpbmVyLCAncC1wb3BvdmVyLWZsaXBwZWQnKTtcblxuICAgICAgICAgICAgaWYgKHRoaXMuc2hvd0Nsb3NlSWNvbikge1xuICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5jb250YWluZXIsICdtYXJnaW4tdG9wJywgJy0zMHB4Jyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkFuaW1hdGlvblN0YXJ0KGV2ZW50OiBBbmltYXRpb25FdmVudCkge1xuICAgICAgICBpZiAoZXZlbnQudG9TdGF0ZSA9PT0gJ29wZW4nKSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRhaW5lciA9IGV2ZW50LmVsZW1lbnQ7XG4gICAgICAgICAgICB0aGlzLmFwcGVuZENvbnRhaW5lcigpO1xuICAgICAgICAgICAgdGhpcy5hbGlnbigpO1xuICAgICAgICAgICAgdGhpcy5iaW5kRG9jdW1lbnRDbGlja0xpc3RlbmVyKCk7XG4gICAgICAgICAgICB0aGlzLmJpbmREb2N1bWVudFJlc2l6ZUxpc3RlbmVyKCk7XG4gICAgICAgICAgICB0aGlzLmJpbmRTY3JvbGxMaXN0ZW5lcigpO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5mb2N1c09uU2hvdykge1xuICAgICAgICAgICAgICAgIHRoaXMuZm9jdXMoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5vdmVybGF5RXZlbnRMaXN0ZW5lciA9IChlKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuY29udGFpbmVyICYmIHRoaXMuY29udGFpbmVyLmNvbnRhaW5zKGUudGFyZ2V0KSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGZDbGljayA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgdGhpcy5vdmVybGF5U3Vic2NyaXB0aW9uID0gdGhpcy5vdmVybGF5U2VydmljZS5jbGlja09ic2VydmFibGUuc3Vic2NyaWJlKHRoaXMub3ZlcmxheUV2ZW50TGlzdGVuZXIpO1xuICAgICAgICAgICAgdGhpcy5vblNob3cuZW1pdChudWxsKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaXNPdmVybGF5QW5pbWF0aW9uSW5Qcm9ncmVzcyA9IHRydWU7XG4gICAgfVxuXG4gICAgb25BbmltYXRpb25FbmQoZXZlbnQ6IEFuaW1hdGlvbkV2ZW50KSB7XG4gICAgICAgIHN3aXRjaCAoZXZlbnQudG9TdGF0ZSkge1xuICAgICAgICAgICAgY2FzZSAndm9pZCc6XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZGVzdHJveUNhbGxiYWNrKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGVzdHJveUNhbGxiYWNrKCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGVzdHJveUNhbGxiYWNrID0gbnVsbDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAodGhpcy5vdmVybGF5U3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub3ZlcmxheVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSAnY2xvc2UnOlxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmF1dG9aSW5kZXgpIHtcbiAgICAgICAgICAgICAgICAgICAgWkluZGV4VXRpbHMuY2xlYXIodGhpcy5jb250YWluZXIpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmICh0aGlzLm92ZXJsYXlTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5vdmVybGF5U3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy5vbkNvbnRhaW5lckRlc3Ryb3koKTtcbiAgICAgICAgICAgICAgICB0aGlzLm9uSGlkZS5lbWl0KHt9KTtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlciA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5pc092ZXJsYXlBbmltYXRpb25JblByb2dyZXNzID0gZmFsc2U7XG4gICAgfVxuXG4gICAgZm9jdXMoKSB7XG4gICAgICAgIGxldCBmb2N1c2FibGUgPSA8YW55PmZpbmRTaW5nbGUodGhpcy5jb250YWluZXIsICdbYXV0b2ZvY3VzXScpO1xuICAgICAgICBpZiAoZm9jdXNhYmxlKSB7XG4gICAgICAgICAgICB0aGlzLnpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gZm9jdXNhYmxlLmZvY3VzKCksIDUpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogSGlkZXMgdGhlIHBhbmVsLlxuICAgICAqIEBncm91cCBNZXRob2RcbiAgICAgKi9cbiAgICBoaWRlKCkge1xuICAgICAgICB0aGlzLm92ZXJsYXlWaXNpYmxlID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgb25DbG9zZUNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIHRoaXMuaGlkZSgpO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24uZXNjYXBlJywgWyckZXZlbnQnXSlcbiAgICBvbkVzY2FwZUtleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgdGhpcy5oaWRlKCk7XG4gICAgfVxuXG4gICAgb25XaW5kb3dSZXNpemUoKSB7XG4gICAgICAgIGlmICh0aGlzLm92ZXJsYXlWaXNpYmxlICYmICFpc1RvdWNoRGV2aWNlKCkpIHtcbiAgICAgICAgICAgIHRoaXMuaGlkZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYmluZERvY3VtZW50UmVzaXplTGlzdGVuZXIoKSB7XG4gICAgICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuZG9jdW1lbnRSZXNpemVMaXN0ZW5lcikge1xuICAgICAgICAgICAgICAgIGNvbnN0IHdpbmRvdyA9IHRoaXMuZG9jdW1lbnQuZGVmYXVsdFZpZXcgYXMgV2luZG93O1xuICAgICAgICAgICAgICAgIHRoaXMuZG9jdW1lbnRSZXNpemVMaXN0ZW5lciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKHdpbmRvdywgJ3Jlc2l6ZScsIHRoaXMub25XaW5kb3dSZXNpemUuYmluZCh0aGlzKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1bmJpbmREb2N1bWVudFJlc2l6ZUxpc3RlbmVyKCkge1xuICAgICAgICBpZiAodGhpcy5kb2N1bWVudFJlc2l6ZUxpc3RlbmVyKSB7XG4gICAgICAgICAgICB0aGlzLmRvY3VtZW50UmVzaXplTGlzdGVuZXIoKTtcbiAgICAgICAgICAgIHRoaXMuZG9jdW1lbnRSZXNpemVMaXN0ZW5lciA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBiaW5kU2Nyb2xsTGlzdGVuZXIoKSB7XG4gICAgICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuc2Nyb2xsSGFuZGxlcikge1xuICAgICAgICAgICAgICAgIHRoaXMuc2Nyb2xsSGFuZGxlciA9IG5ldyBDb25uZWN0ZWRPdmVybGF5U2Nyb2xsSGFuZGxlcih0aGlzLnRhcmdldCwgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5vdmVybGF5VmlzaWJsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5oaWRlKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5zY3JvbGxIYW5kbGVyLmJpbmRTY3JvbGxMaXN0ZW5lcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdW5iaW5kU2Nyb2xsTGlzdGVuZXIoKSB7XG4gICAgICAgIGlmICh0aGlzLnNjcm9sbEhhbmRsZXIpIHtcbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsSGFuZGxlci51bmJpbmRTY3JvbGxMaXN0ZW5lcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25Db250YWluZXJEZXN0cm95KCkge1xuICAgICAgICBpZiAoISh0aGlzLmNkIGFzIFZpZXdSZWYpLmRlc3Ryb3llZCkge1xuICAgICAgICAgICAgdGhpcy50YXJnZXQgPSBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy51bmJpbmREb2N1bWVudENsaWNrTGlzdGVuZXIoKTtcbiAgICAgICAgdGhpcy51bmJpbmREb2N1bWVudFJlc2l6ZUxpc3RlbmVyKCk7XG4gICAgICAgIHRoaXMudW5iaW5kU2Nyb2xsTGlzdGVuZXIoKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgaWYgKHRoaXMuc2Nyb2xsSGFuZGxlcikge1xuICAgICAgICAgICAgdGhpcy5zY3JvbGxIYW5kbGVyLmRlc3Ryb3koKTtcbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsSGFuZGxlciA9IG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5jb250YWluZXIgJiYgdGhpcy5hdXRvWkluZGV4KSB7XG4gICAgICAgICAgICBaSW5kZXhVdGlscy5jbGVhcih0aGlzLmNvbnRhaW5lcik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoISh0aGlzLmNkIGFzIFZpZXdSZWYpLmRlc3Ryb3llZCkge1xuICAgICAgICAgICAgdGhpcy50YXJnZXQgPSBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5kZXN0cm95Q2FsbGJhY2sgPSBudWxsO1xuICAgICAgICBpZiAodGhpcy5jb250YWluZXIpIHtcbiAgICAgICAgICAgIHRoaXMucmVzdG9yZUFwcGVuZCgpO1xuICAgICAgICAgICAgdGhpcy5vbkNvbnRhaW5lckRlc3Ryb3koKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLm92ZXJsYXlTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgIHRoaXMub3ZlcmxheVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgfVxufVxuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFJpcHBsZSwgU2hhcmVkTW9kdWxlLCBUaW1lc0ljb25dLFxuICAgIGV4cG9ydHM6IFtPdmVybGF5UGFuZWwsIFNoYXJlZE1vZHVsZV0sXG4gICAgZGVjbGFyYXRpb25zOiBbT3ZlcmxheVBhbmVsXVxufSlcbmV4cG9ydCBjbGFzcyBPdmVybGF5UGFuZWxNb2R1bGUge31cbiJdfQ==
529
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheXBhbmVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL292ZXJsYXlwYW5lbC9vdmVybGF5cGFuZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBa0IsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakcsT0FBTyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFjLFlBQVksRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQVUsZUFBZSxFQUFhLE1BQU0sRUFBZSxpQkFBaUIsRUFBVyxNQUFNLGVBQWUsQ0FBQztBQUN6UCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2SCxPQUFPLEVBQWtCLFlBQVksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXhDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFNUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7O0lBOEJwQyx3QkFBaUU7Ozs7SUFuQnpFLDhCQWdCQztJQUxHLEFBREEsQUFMQSwyS0FBUyw2QkFBc0IsS0FB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QUFlO2tCQURkLFlBQVk7bUJBQUMseUJBQXlCLEVBQUUsQ0FBQyxRQUFRLENBQUM7O2tGQWhVMUMsWUFBWTtBQXlaekIsTUFBTSxPQUFPLGtCQUFrQjs0R0FBbEIsa0JBQWtCOzREQUFsQixrQkFBa0I7Z0VBSmpCLFlBQVksRUFBVSxZQUFZLEVBQUUsU0FBUyxFQUMvQixZQUFZOztpRkFHM0Isa0JBQWtCO2NBTDlCLFFBQVE7ZUFBQztnQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxTQUFTLENBQUM7Z0JBQ3hELE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxZQUFZLENBQUM7Z0JBQ3JDLFlBQVksRUFBRSxDQUFDLFlBQVksQ0FBQzthQUMvQjs7d0ZBQ1ksa0JBQWtCLG1CQXpabEIsWUFBWSxhQXFaWCxZQUFZLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxTQUFTLGFBclo5QyxZQUFZLEVBc1pHLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBBbmltYXRpb25FdmVudCwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IGJvb2xlYW5BdHRyaWJ1dGUsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIGluamVjdCwgSW5wdXQsIE5nTW9kdWxlLCBOZ1pvbmUsIG51bWJlckF0dHJpYnV0ZSwgT25EZXN0cm95LCBPdXRwdXQsIFRlbXBsYXRlUmVmLCBWaWV3RW5jYXBzdWxhdGlvbiwgVmlld1JlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgYWJzb2x1dGVQb3NpdGlvbiwgYWRkQ2xhc3MsIGFwcGVuZENoaWxkLCBmaW5kU2luZ2xlLCBnZXRPZmZzZXQsIGlzSU9TLCBpc1RvdWNoRGV2aWNlIH0gZnJvbSAnQHByaW1ldWl4L3V0aWxzJztcbmltcG9ydCB7IE92ZXJsYXlTZXJ2aWNlLCBTaGFyZWRNb2R1bGUgfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSAncHJpbWVuZy9iYXNlY29tcG9uZW50JztcbmltcG9ydCB7IENvbm5lY3RlZE92ZXJsYXlTY3JvbGxIYW5kbGVyIH0gZnJvbSAncHJpbWVuZy9kb20nO1xuaW1wb3J0IHsgVGltZXNJY29uIH0gZnJvbSAncHJpbWVuZy9pY29ucyc7XG5pbXBvcnQgeyBSaXBwbGUgfSBmcm9tICdwcmltZW5nL3JpcHBsZSc7XG5pbXBvcnQgeyBOdWxsYWJsZSwgVm9pZExpc3RlbmVyIH0gZnJvbSAncHJpbWVuZy90cy1oZWxwZXJzJztcbmltcG9ydCB7IFpJbmRleFV0aWxzIH0gZnJvbSAncHJpbWVuZy91dGlscyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFBvcG92ZXJTdHlsZSB9IGZyb20gJy4vc3R5bGUvcG9wb3ZlcnN0eWxlJztcblxuLyoqXG4gKiBPdmVybGF5UGFuZWwgaXMgYSBjb250YWluZXIgY29tcG9uZW50IHBvc2l0aW9uZWQgYXMgY29ubmVjdGVkIHRvIGl0cyB0YXJnZXQuXG4gKiBAZ3JvdXAgQ29tcG9uZW50c1xuICogQGRlcHJlY2F0ZWQgVXNlIFBvcG92ZXIgY29tcG9uZW50IGluc3RlYWQuXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncC1vdmVybGF5UGFuZWwsIHAtb3ZlcmxheXBhbmVsJyxcbiAgICBzdGFuZGFsb25lOiBmYWxzZSxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdJZj1cInJlbmRlclwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCIncC1wb3BvdmVyIHAtY29tcG9uZW50J1wiXG4gICAgICAgICAgICBbbmdTdHlsZV09XCJzdHlsZVwiXG4gICAgICAgICAgICBbY2xhc3NdPVwic3R5bGVDbGFzc1wiXG4gICAgICAgICAgICAoY2xpY2spPVwib25PdmVybGF5Q2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgICBbQGFuaW1hdGlvbl09XCJ7XG4gICAgICAgICAgICAgICAgdmFsdWU6IG92ZXJsYXlWaXNpYmxlID8gJ29wZW4nIDogJ2Nsb3NlJyxcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHsgc2hvd1RyYW5zaXRpb25QYXJhbXM6IHNob3dUcmFuc2l0aW9uT3B0aW9ucywgaGlkZVRyYW5zaXRpb25QYXJhbXM6IGhpZGVUcmFuc2l0aW9uT3B0aW9ucyB9XG4gICAgICAgICAgICB9XCJcbiAgICAgICAgICAgIChAYW5pbWF0aW9uLnN0YXJ0KT1cIm9uQW5pbWF0aW9uU3RhcnQoJGV2ZW50KVwiXG4gICAgICAgICAgICAoQGFuaW1hdGlvbi5kb25lKT1cIm9uQW5pbWF0aW9uRW5kKCRldmVudClcIlxuICAgICAgICAgICAgcm9sZT1cImRpYWxvZ1wiXG4gICAgICAgICAgICBbYXR0ci5hcmlhLW1vZGFsXT1cIm92ZXJsYXlWaXNpYmxlXCJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsXCJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRCeV09XCJhcmlhTGFiZWxsZWRCeVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwLXBvcG92ZXItY29udGVudFwiIChjbGljayk9XCJvbkNvbnRlbnRDbGljaygkZXZlbnQpXCIgKG1vdXNlZG93bik9XCJvbkNvbnRlbnRDbGljaygkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50VGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICBgLFxuICAgIGFuaW1hdGlvbnM6IFtcbiAgICAgICAgdHJpZ2dlcignYW5pbWF0aW9uJywgW1xuICAgICAgICAgICAgc3RhdGUoXG4gICAgICAgICAgICAgICAgJ3ZvaWQnLFxuICAgICAgICAgICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiAnc2NhbGVZKDAuOCknLFxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBzdGF0ZShcbiAgICAgICAgICAgICAgICAnY2xvc2UnLFxuICAgICAgICAgICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgc3RhdGUoXG4gICAgICAgICAgICAgICAgJ29wZW4nLFxuICAgICAgICAgICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwKScsXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDFcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJ3ZvaWQgPT4gb3BlbicsIGFuaW1hdGUoJ3t7c2hvd1RyYW5zaXRpb25QYXJhbXN9fScpKSxcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJ29wZW4gPT4gY2xvc2UnLCBhbmltYXRlKCd7e2hpZGVUcmFuc2l0aW9uUGFyYW1zfX0nKSlcbiAgICAgICAgXSlcbiAgICBdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbUG9wb3ZlclN0eWxlXVxufSlcbmV4cG9ydCBjbGFzcyBPdmVybGF5UGFuZWwgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgICAvKipcbiAgICAgKiBEZWZpbmVzIGEgc3RyaW5nIHRoYXQgbGFiZWxzIHRoZSBpbnB1dCBmb3IgYWNjZXNzaWJpbGl0eS5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoKSBhcmlhTGFiZWw6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAvKipcbiAgICAgKiBFc3RhYmxpc2hlcyByZWxhdGlvbnNoaXBzIGJldHdlZW4gdGhlIGNvbXBvbmVudCBhbmQgbGFiZWwocykgd2hlcmUgaXRzIHZhbHVlIHNob3VsZCBiZSBvbmUgb3IgbW9yZSBlbGVtZW50IElEcy5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoKSBhcmlhTGFiZWxsZWRCeTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIC8qKlxuICAgICAqIEVuYWJsZXMgdG8gaGlkZSB0aGUgb3ZlcmxheSB3aGVuIG91dHNpZGUgaXMgY2xpY2tlZC5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgZGlzbWlzc2FibGU6IGJvb2xlYW4gPSB0cnVlO1xuICAgIC8qKlxuICAgICAqIFdoZW4gZW5hYmxlZCwgZGlzcGxheXMgYSBjbG9zZSBpY29uIGF0IHRvcCByaWdodCBjb3JuZXIuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIHNob3dDbG9zZUljb246IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gICAgLyoqXG4gICAgICogSW5saW5lIHN0eWxlIG9mIHRoZSBjb21wb25lbnQuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KCkgc3R5bGU6IHsgW2tsYXNzOiBzdHJpbmddOiBhbnkgfSB8IG51bGwgfCB1bmRlZmluZWQ7XG4gICAgLyoqXG4gICAgICogU3R5bGUgY2xhc3Mgb2YgdGhlIGNvbXBvbmVudC5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoKSBzdHlsZUNsYXNzOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqXG4gICAgICogIFRhcmdldCBlbGVtZW50IHRvIGF0dGFjaCB0aGUgcGFuZWwsIHZhbGlkIHZhbHVlcyBhcmUgXCJib2R5XCIgb3IgYSBsb2NhbCBuZy10ZW1wbGF0ZSB2YXJpYWJsZSBvZiBhbm90aGVyIGVsZW1lbnQgKG5vdGU6IHVzZSBiaW5kaW5nIHdpdGggYnJhY2tldHMgZm9yIHRlbXBsYXRlIHZhcmlhYmxlcywgZS5nLiBbYXBwZW5kVG9dPVwibXlkaXZcIiBmb3IgYSBkaXYgZWxlbWVudCBoYXZpbmcgI215ZGl2IGFzIHZhcmlhYmxlIG5hbWUpLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIGFwcGVuZFRvOiBIVE1MRWxlbWVudCB8IEVsZW1lbnRSZWYgfCBUZW1wbGF0ZVJlZjxhbnk+IHwgc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCB8IGFueSA9ICdib2R5JztcbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRvIGF1dG9tYXRpY2FsbHkgbWFuYWdlIGxheWVyaW5nLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBhdXRvWkluZGV4OiBib29sZWFuID0gdHJ1ZTtcbiAgICAvKipcbiAgICAgKiBBcmlhIGxhYmVsIG9mIHRoZSBjbG9zZSBpY29uLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCgpIGFyaWFDbG9zZUxhYmVsOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgLyoqXG4gICAgICogQmFzZSB6SW5kZXggdmFsdWUgdG8gdXNlIGluIGxheWVyaW5nLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pIGJhc2VaSW5kZXg6IG51bWJlciA9IDA7XG4gICAgLyoqXG4gICAgICogV2hlbiBlbmFibGVkLCBmaXJzdCBidXR0b24gcmVjZWl2ZXMgZm9jdXMgb24gc2hvdy5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgZm9jdXNPblNob3c6IGJvb2xlYW4gPSB0cnVlO1xuICAgIC8qKlxuICAgICAqIFRyYW5zaXRpb24gb3B0aW9ucyBvZiB0aGUgc2hvdyBhbmltYXRpb24uXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgQElucHV0KCkgc2hvd1RyYW5zaXRpb25PcHRpb25zOiBzdHJpbmcgPSAnLjEycyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKSc7XG4gICAgLyoqXG4gICAgICogVHJhbnNpdGlvbiBvcHRpb25zIG9mIHRoZSBoaWRlIGFuaW1hdGlvbi5cbiAgICAgKiBAZ3JvdXAgUHJvcHNcbiAgICAgKi9cbiAgICBASW5wdXQoKSBoaWRlVHJhbnNpdGlvbk9wdGlvbnM6IHN0cmluZyA9ICcuMXMgbGluZWFyJztcbiAgICAvKipcbiAgICAgKiBDYWxsYmFjayB0byBpbnZva2Ugd2hlbiBhbiBvdmVybGF5IGJlY29tZXMgdmlzaWJsZS5cbiAgICAgKiBAZ3JvdXAgRW1pdHNcbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgb25TaG93OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICAvKipcbiAgICAgKiBDYWxsYmFjayB0byBpbnZva2Ugd2hlbiBhbiBvdmVybGF5IGdldHMgaGlkZGVuLlxuICAgICAqIEBncm91cCBFbWl0c1xuICAgICAqL1xuICAgIEBPdXRwdXQoKSBvbkhpZGU6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICBjb250YWluZXI6IE51bGxhYmxlPEhUTUxEaXZFbGVtZW50PjtcblxuICAgIG92ZXJsYXlWaXNpYmxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICByZW5kZXI6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIGlzT3ZlcmxheUFuaW1hdGlvbkluUHJvZ3Jlc3M6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIHNlbGZDbGljazogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgZG9jdW1lbnRDbGlja0xpc3RlbmVyOiBWb2lkTGlzdGVuZXI7XG5cbiAgICB0YXJnZXQ6IGFueTtcblxuICAgIHdpbGxIaWRlOiBOdWxsYWJsZTxib29sZWFuPjtcblxuICAgIHNjcm9sbEhhbmRsZXI6IE51bGxhYmxlPENvbm5lY3RlZE92ZXJsYXlTY3JvbGxIYW5kbGVyPjtcblxuICAgIGRvY3VtZW50UmVzaXplTGlzdGVuZXI6IFZvaWRMaXN0ZW5lcjtcblxuICAgIEBDb250ZW50Q2hpbGQoJ2NvbnRlbnQnKSBjb250ZW50VGVtcGxhdGU6IE51bGxhYmxlPFRlbXBsYXRlUmVmPGFueT4+O1xuXG4gICAgQENvbnRlbnRDaGlsZCgnY2xvc2VpY29uJykgY2xvc2VJY29uVGVtcGxhdGU6IE51bGxhYmxlPFRlbXBsYXRlUmVmPGFueT4+O1xuXG4gICAgZGVzdHJveUNhbGxiYWNrOiBOdWxsYWJsZTxGdW5jdGlvbj47XG5cbiAgICBvdmVybGF5RXZlbnRMaXN0ZW5lcjogTnVsbGFibGU8KGV2ZW50PzogYW55KSA9PiB2b2lkPjtcblxuICAgIG92ZXJsYXlTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiB8IHVuZGVmaW5lZDtcblxuICAgIF9jb21wb25lbnRTdHlsZSA9IGluamVjdChQb3BvdmVyU3R5bGUpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgem9uZTogTmdab25lLFxuICAgICAgICBwdWJsaWMgb3ZlcmxheVNlcnZpY2U6IE92ZXJsYXlTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIGNvbnNvbGUubG9nKCdPdmVybGF5UGFuZWwgaXMgZGVwcmVjYXRlZC4gVXNlIFBvcG92ZXIgaW5zdGVhZC4nKTtcbiAgICB9XG5cbiAgICBiaW5kRG9jdW1lbnRDbGlja0xpc3RlbmVyKCkge1xuICAgICAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmRvY3VtZW50Q2xpY2tMaXN0ZW5lciAmJiB0aGlzLmRpc21pc3NhYmxlKSB7XG4gICAgICAgICAgICAgICAgbGV0IGRvY3VtZW50RXZlbnQgPSBpc0lPUygpID8gJ3RvdWNoc3RhcnQnIDogJ2NsaWNrJztcbiAgICAgICAgICAgICAgICBjb25zdCBkb2N1bWVudFRhcmdldDogYW55ID0gdGhpcy5lbCA/IHRoaXMuZWwubmF0aXZlRWxlbWVudC5vd25lckRvY3VtZW50IDogdGhpcy5kb2N1bWVudDtcblxuICAgICAgICAgICAgICAgIHRoaXMuZG9jdW1lbnRDbGlja0xpc3RlbmVyID0gdGhpcy5yZW5kZXJlci5saXN0ZW4oZG9jdW1lbnRUYXJnZXQsIGRvY3VtZW50RXZlbnQsIChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIXRoaXMuY29udGFpbmVyPy5jb250YWlucyhldmVudC50YXJnZXQpICYmIHRoaXMudGFyZ2V0ICE9PSBldmVudC50YXJnZXQgJiYgIXRoaXMudGFyZ2V0LmNvbnRhaW5zKGV2ZW50LnRhcmdldCkgJiYgIXRoaXMuc2VsZkNsaWNrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmhpZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZkNsaWNrID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1bmJpbmREb2N1bWVudENsaWNrTGlzdGVuZXIoKSB7XG4gICAgICAgIGlmICh0aGlzLmRvY3VtZW50Q2xpY2tMaXN0ZW5lcikge1xuICAgICAgICAgICAgdGhpcy5kb2N1bWVudENsaWNrTGlzdGVuZXIoKTtcbiAgICAgICAgICAgIHRoaXMuZG9jdW1lbnRDbGlja0xpc3RlbmVyID0gbnVsbDtcbiAgICAgICAgICAgIHRoaXMuc2VsZkNsaWNrID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUb2dnbGVzIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSBwYW5lbC5cbiAgICAgKiBAcGFyYW0ge0V2ZW50fSBldmVudCAtIEJyb3dzZXIgZXZlbnRcbiAgICAgKiBAcGFyYW0ge1RhcmdldH0gdGFyZ2V0IC0gVGFyZ2V0IGVsZW1lbnQuXG4gICAgICogQGdyb3VwIE1ldGhvZFxuICAgICAqL1xuICAgIHRvZ2dsZShldmVudDogYW55LCB0YXJnZXQ/OiBhbnkpIHtcbiAgICAgICAgaWYgKHRoaXMuaXNPdmVybGF5QW5pbWF0aW9uSW5Qcm9ncmVzcykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMub3ZlcmxheVZpc2libGUpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmhhc1RhcmdldENoYW5nZWQoZXZlbnQsIHRhcmdldCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRlc3Ryb3lDYWxsYmFjayA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zaG93KG51bGwsIHRhcmdldCB8fCBldmVudC5jdXJyZW50VGFyZ2V0IHx8IGV2ZW50LnRhcmdldCk7XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5oaWRlKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnNob3coZXZlbnQsIHRhcmdldCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogRGlzcGxheXMgdGhlIHBhbmVsLlxuICAgICAqIEBwYXJhbSB7RXZlbnR9IGV2ZW50IC0gQnJvd3NlciBldmVudFxuICAgICAqIEBwYXJhbSB7VGFyZ2V0fSB0YXJnZXQgLSBUYXJnZXQgZWxlbWVudC5cbiAgICAgKiBAZ3JvdXAgTWV0aG9kXG4gICAgICovXG4gICAgc2hvdyhldmVudDogYW55LCB0YXJnZXQ/OiBhbnkpIHtcbiAgICAgICAgdGFyZ2V0ICYmIGV2ZW50ICYmIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICBpZiAodGhpcy5pc092ZXJsYXlBbmltYXRpb25JblByb2dyZXNzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnRhcmdldCA9IHRhcmdldCB8fCBldmVudC5jdXJyZW50VGFyZ2V0IHx8IGV2ZW50LnRhcmdldDtcbiAgICAgICAgdGhpcy5vdmVybGF5VmlzaWJsZSA9IHRydWU7XG4gICAgICAgIHRoaXMucmVuZGVyID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBvbk92ZXJsYXlDbGljayhldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICB0aGlzLm92ZXJsYXlTZXJ2aWNlLmFkZCh7XG4gICAgICAgICAgICBvcmlnaW5hbEV2ZW50OiBldmVudCxcbiAgICAgICAgICAgIHRhcmdldDogdGhpcy5lbC5uYXRpdmVFbGVtZW50XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuc2VsZkNsaWNrID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBvbkNvbnRlbnRDbGljayhldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBjb25zdCB0YXJnZXRFbGVtZW50ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xuICAgICAgICB0aGlzLnNlbGZDbGljayA9IGV2ZW50Lm9mZnNldFggPCB0YXJnZXRFbGVtZW50LmNsaWVudFdpZHRoICYmIGV2ZW50Lm9mZnNldFkgPCB0YXJnZXRFbGVtZW50LmNsaWVudEhlaWdodDtcbiAgICB9XG5cbiAgICBoYXNUYXJnZXRDaGFuZ2VkKGV2ZW50OiBhbnksIHRhcmdldDogYW55KSB7XG4gICAgICAgIHJldHVybiB0aGlzLnRhcmdldCAhPSBudWxsICYmIHRoaXMudGFyZ2V0ICE9PSAodGFyZ2V0IHx8IGV2ZW50LmN1cnJlbnRUYXJnZXQgfHwgZXZlbnQudGFyZ2V0KTtcbiAgICB9XG5cbiAgICBhcHBlbmRDb250YWluZXIoKSB7XG4gICAgICAgIGlmICh0aGlzLmFwcGVuZFRvKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5hcHBlbmRUbyA9PT0gJ2JvZHknKSB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMuZG9jdW1lbnQuYm9keSwgdGhpcy5jb250YWluZXIpO1xuICAgICAgICAgICAgZWxzZSBhcHBlbmRDaGlsZCh0aGlzLmFwcGVuZFRvLCB0aGlzLmNvbnRhaW5lcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZXN0b3JlQXBwZW5kKCkge1xuICAgICAgICBpZiAodGhpcy5jb250YWluZXIgJiYgdGhpcy5hcHBlbmRUbykge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsIHRoaXMuY29udGFpbmVyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGFsaWduKCkge1xuICAgICAgICBpZiAodGhpcy5hdXRvWkluZGV4KSB7XG4gICAgICAgICAgICBaSW5kZXhVdGlscy5zZXQoJ292ZXJsYXknLCB0aGlzLmNvbnRhaW5lciwgdGhpcy5iYXNlWkluZGV4ICsgdGhpcy5jb25maWcuekluZGV4Lm92ZXJsYXkpO1xuICAgICAgICB9XG5cbiAgICAgICAgYWJzb2x1dGVQb3NpdGlvbih0aGlzLmNvbnRhaW5lciwgdGhpcy50YXJnZXQsIGZhbHNlKTtcblxuICAgICAgICBjb25zdCBjb250YWluZXJPZmZzZXQgPSA8YW55PmdldE9mZnNldCh0aGlzLmNvbnRhaW5lcik7XG4gICAgICAgIGNvbnN0IHRhcmdldE9mZnNldCA9IDxhbnk+Z2V0T2Zmc2V0KHRoaXMudGFyZ2V0KTtcbiAgICAgICAgY29uc3QgYm9yZGVyUmFkaXVzID0gdGhpcy5kb2N1bWVudC5kZWZhdWx0Vmlldz8uZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLmNvbnRhaW5lciEpLmdldFByb3BlcnR5VmFsdWUoJ2JvcmRlci1yYWRpdXMnKTtcbiAgICAgICAgbGV0IGFycm93TGVmdCA9IDA7XG5cbiAgICAgICAgaWYgKGNvbnRhaW5lck9mZnNldC5sZWZ0IDwgdGFyZ2V0T2Zmc2V0LmxlZnQpIHtcbiAgICAgICAgICAgIGFycm93TGVmdCA9IHRhcmdldE9mZnNldC5sZWZ0IC0gY29udGFpbmVyT2Zmc2V0LmxlZnQgLSBwYXJzZUZsb2F0KGJvcmRlclJhZGl1cyEpICogMjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNvbnRhaW5lcj8uc3R5bGUuc2V0UHJvcGVydHkoJy0tb3ZlcmxheUFycm93TGVmdCcsIGAke2Fycm93TGVmdH1weGApO1xuXG4gICAgICAgIGlmIChjb250YWluZXJPZmZzZXQudG9wIDwgdGFyZ2V0T2Zmc2V0LnRvcCkge1xuICAgICAgICAgICAgYWRkQ2xhc3ModGhpcy5jb250YWluZXIsICdwLXBvcG92ZXItZmxpcHBlZCcpO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5zaG93Q2xvc2VJY29uKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmNvbnRhaW5lciwgJ21hcmdpbi10b3AnLCAnLTMwcHgnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQW5pbWF0aW9uU3RhcnQoZXZlbnQ6IEFuaW1hdGlvbkV2ZW50KSB7XG4gICAgICAgIGlmIChldmVudC50b1N0YXRlID09PSAnb3BlbicpIHtcbiAgICAgICAgICAgIHRoaXMuY29udGFpbmVyID0gZXZlbnQuZWxlbWVudDtcbiAgICAgICAgICAgIHRoaXMuYXBwZW5kQ29udGFpbmVyKCk7XG4gICAgICAgICAgICB0aGlzLmFsaWduKCk7XG4gICAgICAgICAgICB0aGlzLmJpbmREb2N1bWVudENsaWNrTGlzdGVuZXIoKTtcbiAgICAgICAgICAgIHRoaXMuYmluZERvY3VtZW50UmVzaXplTGlzdGVuZXIoKTtcbiAgICAgICAgICAgIHRoaXMuYmluZFNjcm9sbExpc3RlbmVyKCk7XG5cbiAgICAgICAgICAgIGlmICh0aGlzLmZvY3VzT25TaG93KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5mb2N1cygpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLm92ZXJsYXlFdmVudExpc3RlbmVyID0gKGUpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5jb250YWluZXIgJiYgdGhpcy5jb250YWluZXIuY29udGFpbnMoZS50YXJnZXQpKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZkNsaWNrID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICB0aGlzLm92ZXJsYXlTdWJzY3JpcHRpb24gPSB0aGlzLm92ZXJsYXlTZXJ2aWNlLmNsaWNrT2JzZXJ2YWJsZS5zdWJzY3JpYmUodGhpcy5vdmVybGF5RXZlbnRMaXN0ZW5lcik7XG4gICAgICAgICAgICB0aGlzLm9uU2hvdy5lbWl0KG51bGwpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5pc092ZXJsYXlBbmltYXRpb25JblByb2dyZXNzID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBvbkFuaW1hdGlvbkVuZChldmVudDogQW5pbWF0aW9uRXZlbnQpIHtcbiAgICAgICAgc3dpdGNoIChldmVudC50b1N0YXRlKSB7XG4gICAgICAgICAgICBjYXNlICd2b2lkJzpcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5kZXN0cm95Q2FsbGJhY2spIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXN0cm95Q2FsbGJhY2soKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXN0cm95Q2FsbGJhY2sgPSBudWxsO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmICh0aGlzLm92ZXJsYXlTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5vdmVybGF5U3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlICdjbG9zZSc6XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuYXV0b1pJbmRleCkge1xuICAgICAgICAgICAgICAgICAgICBaSW5kZXhVdGlscy5jbGVhcih0aGlzLmNvbnRhaW5lcik7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMub3ZlcmxheVN1YnNjcmlwdGlvbikge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm92ZXJsYXlTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB0aGlzLm9uQ29udGFpbmVyRGVzdHJveSgpO1xuICAgICAgICAgICAgICAgIHRoaXMub25IaWRlLmVtaXQoe30pO1xuICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmlzT3ZlcmxheUFuaW1hdGlvbkluUHJvZ3Jlc3MgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBmb2N1cygpIHtcbiAgICAgICAgbGV0IGZvY3VzYWJsZSA9IDxhbnk+ZmluZFNpbmdsZSh0aGlzLmNvbnRhaW5lciwgJ1thdXRvZm9jdXNdJyk7XG4gICAgICAgIGlmIChmb2N1c2FibGUpIHtcbiAgICAgICAgICAgIHRoaXMuem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiBmb2N1c2FibGUuZm9jdXMoKSwgNSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvKipcbiAgICAgKiBIaWRlcyB0aGUgcGFuZWwuXG4gICAgICogQGdyb3VwIE1ldGhvZFxuICAgICAqL1xuICAgIGhpZGUoKSB7XG4gICAgICAgIHRoaXMub3ZlcmxheVZpc2libGUgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBvbkNsb3NlQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgdGhpcy5oaWRlKCk7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5ZG93bi5lc2NhcGUnLCBbJyRldmVudCddKVxuICAgIG9uRXNjYXBlS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICB0aGlzLmhpZGUoKTtcbiAgICB9XG5cbiAgICBvbldpbmRvd1Jlc2l6ZSgpIHtcbiAgICAgICAgaWYgKHRoaXMub3ZlcmxheVZpc2libGUgJiYgIWlzVG91Y2hEZXZpY2UoKSkge1xuICAgICAgICAgICAgdGhpcy5oaWRlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBiaW5kRG9jdW1lbnRSZXNpemVMaXN0ZW5lcigpIHtcbiAgICAgICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5kb2N1bWVudFJlc2l6ZUxpc3RlbmVyKSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgd2luZG93ID0gdGhpcy5kb2N1bWVudC5kZWZhdWx0VmlldyBhcyBXaW5kb3c7XG4gICAgICAgICAgICAgICAgdGhpcy5kb2N1bWVudFJlc2l6ZUxpc3RlbmVyID0gdGhpcy5yZW5kZXJlci5saXN0ZW4od2luZG93LCAncmVzaXplJywgdGhpcy5vbldpbmRvd1Jlc2l6ZS5iaW5kKHRoaXMpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHVuYmluZERvY3VtZW50UmVzaXplTGlzdGVuZXIoKSB7XG4gICAgICAgIGlmICh0aGlzLmRvY3VtZW50UmVzaXplTGlzdGVuZXIpIHtcbiAgICAgICAgICAgIHRoaXMuZG9jdW1lbnRSZXNpemVMaXN0ZW5lcigpO1xuICAgICAgICAgICAgdGhpcy5kb2N1bWVudFJlc2l6ZUxpc3RlbmVyID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGJpbmRTY3JvbGxMaXN0ZW5lcigpIHtcbiAgICAgICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5zY3JvbGxIYW5kbGVyKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zY3JvbGxIYW5kbGVyID0gbmV3IENvbm5lY3RlZE92ZXJsYXlTY3JvbGxIYW5kbGVyKHRoaXMudGFyZ2V0LCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLm92ZXJsYXlWaXNpYmxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmhpZGUoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLnNjcm9sbEhhbmRsZXIuYmluZFNjcm9sbExpc3RlbmVyKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1bmJpbmRTY3JvbGxMaXN0ZW5lcigpIHtcbiAgICAgICAgaWYgKHRoaXMuc2Nyb2xsSGFuZGxlcikge1xuICAgICAgICAgICAgdGhpcy5zY3JvbGxIYW5kbGVyLnVuYmluZFNjcm9sbExpc3RlbmVyKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkNvbnRhaW5lckRlc3Ryb3koKSB7XG4gICAgICAgIGlmICghKHRoaXMuY2QgYXMgVmlld1JlZikuZGVzdHJveWVkKSB7XG4gICAgICAgICAgICB0aGlzLnRhcmdldCA9IG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnVuYmluZERvY3VtZW50Q2xpY2tMaXN0ZW5lcigpO1xuICAgICAgICB0aGlzLnVuYmluZERvY3VtZW50UmVzaXplTGlzdGVuZXIoKTtcbiAgICAgICAgdGhpcy51bmJpbmRTY3JvbGxMaXN0ZW5lcigpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICBpZiAodGhpcy5zY3JvbGxIYW5kbGVyKSB7XG4gICAgICAgICAgICB0aGlzLnNjcm9sbEhhbmRsZXIuZGVzdHJveSgpO1xuICAgICAgICAgICAgdGhpcy5zY3JvbGxIYW5kbGVyID0gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmNvbnRhaW5lciAmJiB0aGlzLmF1dG9aSW5kZXgpIHtcbiAgICAgICAgICAgIFpJbmRleFV0aWxzLmNsZWFyKHRoaXMuY29udGFpbmVyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghKHRoaXMuY2QgYXMgVmlld1JlZikuZGVzdHJveWVkKSB7XG4gICAgICAgICAgICB0aGlzLnRhcmdldCA9IG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmRlc3Ryb3lDYWxsYmFjayA9IG51bGw7XG4gICAgICAgIGlmICh0aGlzLmNvbnRhaW5lcikge1xuICAgICAgICAgICAgdGhpcy5yZXN0b3JlQXBwZW5kKCk7XG4gICAgICAgICAgICB0aGlzLm9uQ29udGFpbmVyRGVzdHJveSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMub3ZlcmxheVN1YnNjcmlwdGlvbikge1xuICAgICAgICAgICAgdGhpcy5vdmVybGF5U3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB9XG59XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUmlwcGxlLCBTaGFyZWRNb2R1bGUsIFRpbWVzSWNvbl0sXG4gICAgZXhwb3J0czogW092ZXJsYXlQYW5lbCwgU2hhcmVkTW9kdWxlXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtPdmVybGF5UGFuZWxdXG59KVxuZXhwb3J0IGNsYXNzIE92ZXJsYXlQYW5lbE1vZHVsZSB7fVxuIl19