@gravitee/ui-components 3.21.7 → 3.24.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 (92) hide show
  1. package/package.json +22 -21
  2. package/src/atoms/gv-autocomplete.js +5 -6
  3. package/src/atoms/gv-button.js +4 -4
  4. package/src/atoms/gv-checkbox.js +3 -3
  5. package/src/atoms/gv-date-picker-calendar.js +4 -5
  6. package/src/atoms/gv-date-picker-cell.js +4 -4
  7. package/src/atoms/gv-date-picker.js +4 -5
  8. package/src/atoms/gv-file-upload.js +4 -5
  9. package/src/atoms/gv-icon.js +14 -7
  10. package/src/atoms/gv-image.js +4 -4
  11. package/src/atoms/gv-input-message.js +2 -3
  12. package/src/atoms/gv-input.js +3 -3
  13. package/src/atoms/gv-link.js +6 -6
  14. package/src/atoms/gv-message.js +3 -3
  15. package/src/atoms/gv-metric.js +3 -3
  16. package/src/atoms/gv-relative-time.js +6 -4
  17. package/src/atoms/gv-select-native.js +288 -0
  18. package/src/atoms/gv-select.js +10 -8
  19. package/src/atoms/gv-spinner.js +2 -2
  20. package/src/atoms/gv-state.js +3 -3
  21. package/src/atoms/gv-switch.js +4 -4
  22. package/src/atoms/gv-tag.js +3 -3
  23. package/src/atoms/gv-text.js +4 -4
  24. package/src/charts/gv-chart-bar.js +2 -2
  25. package/src/charts/gv-chart-gauge.js +2 -2
  26. package/src/charts/gv-chart-histogram.js +2 -2
  27. package/src/charts/gv-chart-line.js +2 -2
  28. package/src/charts/gv-chart-map.js +2 -2
  29. package/src/charts/gv-chart-pie.js +2 -2
  30. package/src/index.js +2 -1
  31. package/src/lib/item.js +2 -2
  32. package/src/lib/studio.js +3 -3
  33. package/src/mixins/chart-element.js +3 -4
  34. package/src/mixins/input-element.js +4 -4
  35. package/src/mixins/item-resource.js +3 -3
  36. package/src/mixins/with-skeleton-attribute.js +2 -2
  37. package/src/molecules/gv-card-full.js +7 -6
  38. package/src/molecules/gv-card-list.js +3 -4
  39. package/src/molecules/gv-card.js +3 -3
  40. package/src/molecules/gv-category-list.js +2 -3
  41. package/src/molecules/gv-category.js +3 -3
  42. package/src/molecules/gv-code-hint.js +2 -3
  43. package/src/molecules/gv-code.js +3 -3
  44. package/src/molecules/gv-confirm.js +2 -3
  45. package/src/molecules/gv-cron-editor.js +3 -3
  46. package/src/molecules/gv-dropdown-menu.js +2 -3
  47. package/src/molecules/gv-expandable.js +3 -3
  48. package/src/molecules/gv-expression-language.js +2 -3
  49. package/src/molecules/gv-identity-picture.js +3 -4
  50. package/src/molecules/gv-list.js +4 -4
  51. package/src/molecules/gv-metrics.js +4 -4
  52. package/src/molecules/gv-modal.js +2 -2
  53. package/src/molecules/gv-nav.js +5 -5
  54. package/src/molecules/gv-option.js +6 -6
  55. package/src/molecules/gv-plans.js +5 -6
  56. package/src/molecules/gv-popover.js +3 -4
  57. package/src/molecules/gv-promote.js +7 -6
  58. package/src/molecules/gv-rating-list.js +4 -5
  59. package/src/molecules/gv-rating.js +4 -4
  60. package/src/molecules/gv-row-expandable.js +2 -2
  61. package/src/molecules/gv-row.js +3 -3
  62. package/src/molecules/gv-stats.js +4 -4
  63. package/src/molecules/gv-stepper.js +4 -4
  64. package/src/molecules/gv-table.js +7 -8
  65. package/src/molecules/gv-tree.js +4 -4
  66. package/src/organisms/gv-documentation.js +2 -2
  67. package/src/organisms/gv-header.js +6 -6
  68. package/src/organisms/gv-http-client.js +2 -2
  69. package/src/organisms/gv-menu.js +3 -3
  70. package/src/organisms/gv-newsletter-subscription.js +2 -2
  71. package/src/organisms/gv-pagination.js +2 -2
  72. package/src/organisms/gv-properties.js +3 -3
  73. package/src/organisms/gv-resizable-views.js +3 -4
  74. package/src/organisms/gv-resources.js +2 -2
  75. package/src/organisms/gv-schema-form-array.js +5 -5
  76. package/src/organisms/gv-schema-form-control-object.js +5 -5
  77. package/src/organisms/gv-schema-form-control.js +11 -11
  78. package/src/organisms/gv-schema-form.js +8 -7
  79. package/src/organisms/gv-tabs.js +2 -3
  80. package/src/organisms/gv-user-menu.js +4 -4
  81. package/src/organisms/gv-vertical-menu.js +2 -2
  82. package/src/policy-studio/gv-flow-step.js +3 -3
  83. package/src/policy-studio/gv-flow.js +5 -5
  84. package/src/policy-studio/gv-policy-studio-menu.js +4 -4
  85. package/src/policy-studio/gv-policy-studio.js +5 -5
  86. package/src/styles/empty.js +2 -2
  87. package/src/styles/input.js +3 -3
  88. package/src/styles/link.js +2 -2
  89. package/src/styles/skeleton.js +2 -2
  90. package/src/styles/zoom.js +2 -2
  91. package/src/theme/gv-theme.js +2 -2
  92. package/wc/gv-select-native.js +1 -0
@@ -15,7 +15,7 @@
15
15
  * See the License for the specific language governing permissions and
16
16
  * limitations under the License.
17
17
  */
18
- import { css, html, LitElement } from 'lit-element';
18
+ import { css, html, LitElement } from 'lit';
19
19
  import './gv-schema-form';
20
20
  import './gv-resizable-views';
21
21
  import './gv-documentation';
@@ -136,4 +136,4 @@ export class GvHttpClient extends KeyboardElement(LitElement) {
136
136
 
137
137
  }
138
138
  window.customElements.define('gv-http-client', GvHttpClient);
139
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL29yZ2FuaXNtcy9ndi1odHRwLWNsaWVudC5qcyJdLCJuYW1lcyI6WyJjc3MiLCJodG1sIiwiTGl0RWxlbWVudCIsIktleWJvYXJkRWxlbWVudCIsImVtcHR5IiwiaHR0cENsaWVudFNjaGVtYUZvcm0iLCJkaXNwYXRjaEN1c3RvbUV2ZW50Iiwic3RhdHVzQ29kZSIsInJlcGVhdCIsIkd2SHR0cENsaWVudCIsInByb3BlcnRpZXMiLCJyZXNwb25zZSIsInR5cGUiLCJPYmplY3QiLCJwYXRoIiwiU3RyaW5nIiwibWV0aG9kIiwibG9hZGluZyIsIkJvb2xlYW4iLCJjb25zdHJ1Y3RvciIsInVuZGVmaW5lZCIsInJlcXVlc3QiLCJfc2VuZFJlcXVlc3QiLCJfdXBkYXRlUmVxdWVzdCIsImZvcm1EYXRhIiwiaXNGb3JtVmFsaWQiLCJkZXRhaWwiLCJ2YWxpZGF0aW9uIiwidmFsaWQiLCJ2YWx1ZXMiLCJyZXF1ZXN0VXBkYXRlIiwicmVuZGVyIiwiX3JlbmRlckVtcHR5UmVzcG9uc2UiLCJfcmVuZGVyTG9hZGluZyIsIl9yZW5kZXJEZWJ1Z1Jlc3BvbnNlIiwicHJldHRpZmllZFJlc3BvbnNlIiwiYm9keSIsIm1vZGUiLCJoZWFkZXJzIiwiY29udGVudFR5cGVIZWFkZXIiLCJlbnRyaWVzIiwiZmluZCIsImtleSIsInZhbHVlIiwidG9Mb3dlckNhc2UiLCJjb250ZW50VHlwZSIsInNwbGl0IiwiSlNPTiIsInN0cmluZ2lmeSIsInBhcnNlIiwiZ3ZDb2RlT3B0aW9ucyIsImxpbmVOdW1iZXJzIiwiX3JlbmRlclJlc3BvbnNlSGVhZGVyIiwia2V5cyIsInN1Y2Nlc3NmdWxSZXF1ZXN0IiwiZXJyb3JSZXF1ZXN0IiwiZGVzY3JpcHRpb24iLCJzdHlsZXMiLCJ3aW5kb3ciLCJjdXN0b21FbGVtZW50cyIsImRlZmluZSJdLCJtYXBwaW5ncyI6IkFBQUE7O0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtB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bGUgeW9kYSAqL1xuLypcbiAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7IGNzcywgaHRtbCwgTGl0RWxlbWVudCB9IGZyb20gJ2xpdC1lbGVtZW50JztcblxuaW1wb3J0ICcuL2d2LXNjaGVtYS1mb3JtJztcbmltcG9ydCAnLi9ndi1yZXNpemFibGUtdmlld3MnO1xuaW1wb3J0ICcuL2d2LWRvY3VtZW50YXRpb24nO1xuaW1wb3J0ICcuLi9tb2xlY3VsZXMvZ3YtdGFibGUnO1xuaW1wb3J0ICcuLi9hdG9tcy9ndi1idXR0b24nO1xuaW1wb3J0ICcuLi9tb2xlY3VsZXMvZ3Ytb3B0aW9uJztcbmltcG9ydCAnLi4vYXRvbXMvZ3Ytc3dpdGNoJztcbmltcG9ydCAnLi4vYXRvbXMvZ3YtaWNvbic7XG5pbXBvcnQgeyBLZXlib2FyZEVsZW1lbnQgfSBmcm9tICcuLi9taXhpbnMva2V5Ym9hcmQtZWxlbWVudCc7XG5pbXBvcnQgeyBlbXB0eSB9IGZyb20gJy4uL3N0eWxlcy9lbXB0eSc7XG5pbXBvcnQgeyBodHRwQ2xpZW50U2NoZW1hRm9ybSB9IGZyb20gJy4uL2xpYi9odHRwLWNsaWVudC1zY2hlbWEtZm9ybSc7XG5pbXBvcnQgeyBkaXNwYXRjaEN1c3RvbUV2ZW50IH0gZnJvbSAnLi4vbGliL2V2ZW50cyc7XG5pbXBvcnQgeyBzdGF0dXNDb2RlIH0gZnJvbSAnLi4vbGliL2h0dHAnO1xuaW1wb3J0IHsgcmVwZWF0IH0gZnJvbSAnbGl0LWh0bWwvZGlyZWN0aXZlcy9yZXBlYXQnO1xuXG4vKipcbiAqIEBmaXJlcyBndi1odHRwLWNsaWVudDpzZW5kIC0gRXZlbnQgc2VudCB3aGVuXG4gKlxuICogQGF0dHIge1N0cmluZ30gcGF0aCAtIFBhdGggb2YgdGhlIHJlcXVlc3RcbiAqIEBhdHRyIHtTdHJpbmd9IG1ldGhvZCAtIE1ldGhvZCBvZiB0aGUgcmVxdWVzdFxuICogQGF0dHIge0Jvb2xlYW59IGxvYWRpbmcgLSBUcnVlIGlmIHRoZSByZXF1ZXN0IGlzIGluIHByb2dyZXNzXG4gKiBAYXR0ciB7T2JqZWN0fSByZXNwb25zZSAtIFJlc3BvbnNlIG9mIHRoZSByZXF1ZXN0XG4gKi9cbmV4cG9ydCBjbGFzcyBHdkh0dHBDbGllbnQgZXh0ZW5kcyBLZXlib2FyZEVsZW1lbnQoTGl0RWxlbWVudCkge1xuICBzdGF0aWMgZ2V0IHByb3BlcnRpZXMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHJlc3BvbnNlOiB7IHR5cGU6IE9iamVjdCB9LFxuICAgICAgcGF0aDogeyB0eXBlOiBTdHJpbmcgfSxcbiAgICAgIG1ldGhvZDogeyB0eXBlOiBTdHJpbmcgfSxcbiAgICAgIGxvYWRpbmc6IHsgdHlwZTogQm9vbGVhbiB9LFxuICAgIH07XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMucmVzcG9uc2UgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgdGhpcy5wYXRoID0gdW5kZWZpbmVkO1xuICAgIHRoaXMubWV0aG9kID0gdW5kZWZpbmVkO1xuICAgIHRoaXMucmVxdWVzdCA9IHtcbiAgICAgIG1ldGhvZDogJ0dFVCcsXG4gICAgICBwYXRoOiAnLycsXG4gICAgfTtcbiAgfVxuXG4gIF9zZW5kUmVxdWVzdCgpIHtcbiAgICBkaXNwYXRjaEN1c3RvbUV2ZW50KHRoaXMsICdzZW5kJywgeyByZXF1ZXN0OiB0aGlzLnJlcXVlc3QgfSk7XG4gIH1cblxuICBfdXBkYXRlUmVxdWVzdChmb3JtRGF0YSkge1xuICAgIHRoaXMuaXNGb3JtVmFsaWQgPSBmb3JtRGF0YS5kZXRhaWwudmFsaWRhdGlvbi52YWxpZDtcbiAgICB0aGlzLnJlcXVlc3QgPSBmb3JtRGF0YS5kZXRhaWwudmFsdWVzO1xuICAgIHRoaXMucmVxdWVzdFVwZGF0ZSgpO1xuICB9XG5cbiAgcmVuZGVyKCkge1xuICAgIHJldHVybiBodG1sYCA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVxdWVzdFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidG9wLWJhclwiPlJlcXVlc3Q8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJlcXVlc3QtZm9ybVwiPlxuICAgICAgICAgIDxndi1zY2hlbWEtZm9ybSAuc2NoZW1hPVwiJHtodHRwQ2xpZW50U2NoZW1hRm9ybX1cIiBpZD1cInJlcXVlc3QtZm9ybVwiIEBndi1zY2hlbWEtZm9ybTpjaGFuZ2U9XCIke3RoaXMuX3VwZGF0ZVJlcXVlc3R9XCI+XG4gICAgICAgICAgPC9ndi1zY2hlbWEtZm9ybT5cbiAgICAgICAgICA8Z3YtYnV0dG9uXG4gICAgICAgICAgICBjbGFzcz1cInJlcXVlc3QtZm9ybS1idXR0b25cIlxuICAgICAgICAgICAgaWNvbi1yaWdodD1cImNvbnRlbnQ6c2VuZFwiXG4gICAgICAgICAgICAuZGlzYWJsZWQ9XCIke3RoaXMuaXNGb3JtVmFsaWQgPT09IGZhbHNlIHx8IHRoaXMubG9hZGluZyA9PT0gdHJ1ZX1cIlxuICAgICAgICAgICAgQGd2LWJ1dHRvbjpjbGljaz1cIiR7dGhpcy5fc2VuZFJlcXVlc3R9XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICBTZW5kXG4gICAgICAgICAgPC9ndi1idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXNwb25zZVwiPlxuICAgICAgICAkeyF0aGlzLmxvYWRpbmcgJiYgIXRoaXMucmVzcG9uc2UgPyB0aGlzLl9yZW5kZXJFbXB0eVJlc3BvbnNlKCkgOiAnJ30gJHt0aGlzLmxvYWRpbmcgPyB0aGlzLl9yZW5kZXJMb2FkaW5nKCkgOiAnJ31cbiAgICAgICAgJHt0aGlzLnJlc3BvbnNlID8gdGhpcy5fcmVuZGVyRGVidWdSZXNwb25zZSgpIDogJyd9XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5gO1xuICB9XG5cbiAgX3JlbmRlckVtcHR5UmVzcG9uc2UoKSB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwiZW1wdHktcmVzcG9uc2VcIj5cbiAgICAgICAgPGd2LWljb24gY2xhc3M9XCJlbXB0eS1yZXNwb25zZS1pY29uXCIgc2hhcGU9XCJlZGl0b3I6Zm9ybWF0X2FsaWduX2xlZnRcIj48L2d2LWljb24+XG4gICAgICAgIDxkaXY+RGVmaW5lIGFuZCBydW4gdGhlIHJlcXVlc3QgeW91IHdhbnQgdG8gdGVzdCE8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cblxuICBfcmVuZGVyTG9hZGluZygpIHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJsb2FkaW5nXCI+XG4gICAgICAgIDxndi1pY29uIGNsYXNzPVwibG9hZGluZy1pY29uXCIgc2hhcGU9XCJjb21tdW5pY2F0aW9uOnNlbmRpbmdcIj48L2d2LWljb24+XG4gICAgICAgIDxkaXY+UmVxdWVzdCBpbiBwcm9ncmVzcyE8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cblxuICBfcmVuZGVyRGVidWdSZXNwb25zZSgpIHtcbiAgICBsZXQgcHJldHRpZmllZFJlc3BvbnNlID0gdGhpcy5yZXNwb25zZS5ib2R5O1xuICAgIGxldCBtb2RlID0gJ3RleHQnO1xuXG4gICAgaWYgKHRoaXMucmVzcG9uc2UuaGVhZGVycykge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXG4gICAgICBjb25zdCBjb250ZW50VHlwZUhlYWRlciA9IE9iamVjdC5lbnRyaWVzKHRoaXMucmVzcG9uc2UuaGVhZGVycykuZmluZCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgIHJldHVybiBrZXkudG9Mb3dlckNhc2UoKSA9PT0gJ2NvbnRlbnQtdHlwZSc7XG4gICAgICB9KTtcblxuICAgICAgY29uc3QgY29udGVudFR5cGUgPSBjb250ZW50VHlwZUhlYWRlciA/IGNvbnRlbnRUeXBlSGVhZGVyWzFdLnNwbGl0KCc7JylbMF0gOiB1bmRlZmluZWQ7XG5cbiAgICAgIGlmIChjb250ZW50VHlwZSA9PT0gJ3RleHQvaHRtbCcpIHtcbiAgICAgICAgbW9kZSA9ICdodG1sbWl4ZWQnO1xuICAgICAgICBwcmV0dGlmaWVkUmVzcG9uc2UgPSB0aGlzLnJlc3BvbnNlLmJvZHk7XG4gICAgICB9IGVsc2UgaWYgKGNvbnRlbnRUeXBlID09PSAnYXBwbGljYXRpb24vanNvbicpIHtcbiAgICAgICAgbW9kZSA9ICdhcHBsaWNhdGlvbi9qc29uJztcbiAgICAgICAgLy8gQ29udmVydCBKU09OIGJvZHkgdG8gYSBodW1hbiByZWFkYWJsZSBmb3JtIHdpdGggMiBzcGFjZXMgaW5kZW50YXRpb25cbiAgICAgICAgcHJldHRpZmllZFJlc3BvbnNlID0gSlNPTi5zdHJpbmdpZnkoSlNPTi5wYXJzZSh0aGlzLnJlc3BvbnNlLmJvZHkpLCBudWxsLCAyKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBndkNvZGVPcHRpb25zID0ge1xuICAgICAgbGluZU51bWJlcnM6IHRydWUsXG4gICAgICBtb2RlOiBtb2RlLFxuICAgIH07XG5cbiAgICByZXR1cm4gaHRtbGBcbiAgICAgICR7dGhpcy5fcmVuZGVyUmVzcG9uc2VIZWFkZXIoKX1cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXNwb25zZS1oZWFkZXJzXCI+SGVhZGVyczwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInJlc3BvbnNlLWhlYWRlcnMtY29udGVudFwiPlxuICAgICAgICAke3JlcGVhdChPYmplY3Qua2V5cyh0aGlzLnJlc3BvbnNlLmhlYWRlcnMpLCAoa2V5KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGh0bWxgPGRpdj48Y29kZT4ke2tleX06ICR7dGhpcy5yZXNwb25zZS5oZWFkZXJzW2tleV19PC9jb2RlPjwvZGl2PmA7XG4gICAgICAgIH0pfVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVzcG9uc2UtYm9keVwiPkJvZHk8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2RlLWNvbnRhaW5lclwiPlxuICAgICAgICA8Z3YtY29kZSAudmFsdWU9XCIke3ByZXR0aWZpZWRSZXNwb25zZX1cIiAub3B0aW9ucz1cIiR7Z3ZDb2RlT3B0aW9uc31cIiByZWFkb25seT48L2d2LWNvZGU+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG5cbiAgX3JlbmRlclJlc3BvbnNlSGVhZGVyKCkge1xuICAgIGNvbnN0IHN1Y2Nlc3NmdWxSZXF1ZXN0ID0gMjAwIDw9IHRoaXMucmVzcG9uc2Uuc3RhdHVzQ29kZSAmJiB0aGlzLnJlc3BvbnNlLnN0YXR1c0NvZGUgPCAzMDA7XG4gICAgY29uc3QgZXJyb3JSZXF1ZXN0ID0gNDAwIDw9IHRoaXMucmVzcG9uc2Uuc3RhdHVzQ29kZSAmJiB0aGlzLnJlc3BvbnNlLnN0YXR1c0NvZGUgPCA2MDA7XG5cbiAgICByZXR1cm4gaHRtbGA8ZGl2IGNsYXNzPVwidG9wLWJhclwiPlxuICAgICAgPGRpdiBjbGFzcz1cInJlc3BvbnNlLXJvdy1pdGVtXCI+UmVzcG9uc2U8L2Rpdj5cbiAgICAgICR7dGhpcy5tZXRob2QgPyBodG1sYCA8ZGl2IGNsYXNzPVwicmVzcG9uc2Utcm93LWl0ZW0tbWV0aG9kXCI+JHt0aGlzLm1ldGhvZH08L2Rpdj5gIDogJyd9XG4gICAgICAke3RoaXMucGF0aCA/IGh0bWxgIDxkaXYgY2xhc3M9XCJyZXNwb25zZS1yb3ctaXRlbVwiPiR7dGhpcy5wYXRofTwvZGl2PmAgOiAnJ31cbiAgICAgICR7dGhpcy5yZXNwb25zZS5zdGF0dXNDb2RlXG4gICAgICAgID8gaHRtbGAgPGRpdiBjbGFzcz1cInJlc3BvbnNlLXJvdy1pdGVtXCI+XG4gICAgICAgICAgICA8Z3Ytc3RhdGUgP3N1Y2Nlc3M9XCIke3N1Y2Nlc3NmdWxSZXF1ZXN0fVwiID9lcnJvcj1cIiR7ZXJyb3JSZXF1ZXN0fVwiPlxuICAgICAgICAgICAgICAke3RoaXMucmVzcG9uc2Uuc3RhdHVzQ29kZX0gLSAke3N0YXR1c0NvZGVbdGhpcy5yZXNwb25zZS5zdGF0dXNDb2RlXS5kZXNjcmlwdGlvbn1cbiAgICAgICAgICAgIDwvZ3Ytc3RhdGU+XG4gICAgICAgICAgPC9kaXY+YFxuICAgICAgICA6ICcnfVxuICAgIDwvZGl2PiBgO1xuICB9XG5cbiAgc3RhdGljIGdldCBzdHlsZXMoKSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIGVtcHR5LFxuICAgICAgLy8gbGFuZ3VhZ2U9Q1NTXG4gICAgICBjc3NgXG4gICAgICAgIDpob3N0IHtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAucmVxdWVzdCB7XG4gICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAucmVxdWVzdC1mb3JtIHtcbiAgICAgICAgICBwYWRkaW5nOiA4cHg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG5cbiAgICAgICAgLnJlcXVlc3QtZm9ybS1idXR0b24ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgICAgIH1cblxuICAgICAgICAucmVzcG9uc2Uge1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2Q5ZDlkOTtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZDlkOWQ5O1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cblxuICAgICAgICAudG9wLWJhciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXNwb25zZS1yb3ctaXRlbSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnJlc3BvbnNlLXJvdy1pdGVtLW1ldGhvZCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cblxuICAgICAgICAuc3RhdHVzLWNvZGUsXG4gICAgICAgIC50b3AtYmFyLFxuICAgICAgICAucmVzcG9uc2UtaGVhZGVycyxcbiAgICAgICAgLnJlc3BvbnNlLWJvZHkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgcGFkZGluZzogMCAxNnB4O1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDlkOWQ5O1xuICAgICAgICB9XG5cbiAgICAgICAgLnJlc3BvbnNlLWhlYWRlcnMtY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogMTZweDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q5ZDlkOTtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiA0MCU7XG4gICAgICAgIH1cblxuICAgICAgICAubG9hZGluZyxcbiAgICAgICAgLmVtcHR5LXJlc3BvbnNlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmxvYWRpbmctaWNvbixcbiAgICAgICAgLmVtcHR5LXJlc3BvbnNlLWljb24ge1xuICAgICAgICAgIC0tZ3YtaWNvbi0tczogMTI4cHg7XG4gICAgICAgICAgLS1ndi1pY29uLS1jOiB2YXIoLS1ndi10aGVtZS1jb2xvci1kYXJrKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb2RlLWNvbnRhaW5lciB7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICB9XG4gICAgICBgLFxuICAgIF07XG4gIH1cbn1cblxud2luZG93LmN1c3RvbUVsZW1lbnRzLmRlZmluZSgnZ3YtaHR0cC1jbGllbnQnLCBHdkh0dHBDbGllbnQpO1xuIl19
139
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL29yZ2FuaXNtcy9ndi1odHRwLWNsaWVudC5qcyJdLCJuYW1lcyI6WyJjc3MiLCJodG1sIiwiTGl0RWxlbWVudCIsIktleWJvYXJkRWxlbWVudCIsImVtcHR5IiwiaHR0cENsaWVudFNjaGVtYUZvcm0iLCJkaXNwYXRjaEN1c3RvbUV2ZW50Iiwic3RhdHVzQ29kZSIsInJlcGVhdCIsIkd2SHR0cENsaWVudCIsInByb3BlcnRpZXMiLCJyZXNwb25zZSIsInR5cGUiLCJPYmplY3QiLCJwYXRoIiwiU3RyaW5nIiwibWV0aG9kIiwibG9hZGluZyIsIkJvb2xlYW4iLCJjb25zdHJ1Y3RvciIsInVuZGVmaW5lZCIsInJlcXVlc3QiLCJfc2VuZFJlcXVlc3QiLCJfdXBkYXRlUmVxdWVzdCIsImZvcm1EYXRhIiwiaXNGb3JtVmFsaWQiLCJkZXRhaWwiLCJ2YWxpZGF0aW9uIiwidmFsaWQiLCJ2YWx1ZXMiLCJyZXF1ZXN0VXBkYXRlIiwicmVuZGVyIiwiX3JlbmRlckVtcHR5UmVzcG9uc2UiLCJfcmVuZGVyTG9hZGluZyIsIl9yZW5kZXJEZWJ1Z1Jlc3BvbnNlIiwicHJldHRpZmllZFJlc3BvbnNlIiwiYm9keSIsIm1vZGUiLCJoZWFkZXJzIiwiY29udGVudFR5cGVIZWFkZXIiLCJlbnRyaWVzIiwiZmluZCIsImtleSIsInZhbHVlIiwidG9Mb3dlckNhc2UiLCJjb250ZW50VHlwZSIsInNwbGl0IiwiSlNPTiIsInN0cmluZ2lmeSIsInBhcnNlIiwiZ3ZDb2RlT3B0aW9ucyIsImxpbmVOdW1iZXJzIiwiX3JlbmRlclJlc3BvbnNlSGVhZGVyIiwia2V5cyIsInN1Y2Nlc3NmdWxSZXF1ZXN0IiwiZXJyb3JSZXF1ZXN0IiwiZGVzY3JpcHRpb24iLCJzdHlsZXMiLCJ3aW5kb3ciLCJjdXN0b21FbGVtZW50cyIsImRlZmluZSJdLCJtYXBwaW5ncyI6IkFBQUE7O0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtB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bGUgeW9kYSAqL1xuLypcbiAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7IGNzcywgaHRtbCwgTGl0RWxlbWVudCB9IGZyb20gJ2xpdCc7XG5cbmltcG9ydCAnLi9ndi1zY2hlbWEtZm9ybSc7XG5pbXBvcnQgJy4vZ3YtcmVzaXphYmxlLXZpZXdzJztcbmltcG9ydCAnLi9ndi1kb2N1bWVudGF0aW9uJztcbmltcG9ydCAnLi4vbW9sZWN1bGVzL2d2LXRhYmxlJztcbmltcG9ydCAnLi4vYXRvbXMvZ3YtYnV0dG9uJztcbmltcG9ydCAnLi4vbW9sZWN1bGVzL2d2LW9wdGlvbic7XG5pbXBvcnQgJy4uL2F0b21zL2d2LXN3aXRjaCc7XG5pbXBvcnQgJy4uL2F0b21zL2d2LWljb24nO1xuaW1wb3J0IHsgS2V5Ym9hcmRFbGVtZW50IH0gZnJvbSAnLi4vbWl4aW5zL2tleWJvYXJkLWVsZW1lbnQnO1xuaW1wb3J0IHsgZW1wdHkgfSBmcm9tICcuLi9zdHlsZXMvZW1wdHknO1xuaW1wb3J0IHsgaHR0cENsaWVudFNjaGVtYUZvcm0gfSBmcm9tICcuLi9saWIvaHR0cC1jbGllbnQtc2NoZW1hLWZvcm0nO1xuaW1wb3J0IHsgZGlzcGF0Y2hDdXN0b21FdmVudCB9IGZyb20gJy4uL2xpYi9ldmVudHMnO1xuaW1wb3J0IHsgc3RhdHVzQ29kZSB9IGZyb20gJy4uL2xpYi9odHRwJztcbmltcG9ydCB7IHJlcGVhdCB9IGZyb20gJ2xpdC1odG1sL2RpcmVjdGl2ZXMvcmVwZWF0JztcblxuLyoqXG4gKiBAZmlyZXMgZ3YtaHR0cC1jbGllbnQ6c2VuZCAtIEV2ZW50IHNlbnQgd2hlblxuICpcbiAqIEBhdHRyIHtTdHJpbmd9IHBhdGggLSBQYXRoIG9mIHRoZSByZXF1ZXN0XG4gKiBAYXR0ciB7U3RyaW5nfSBtZXRob2QgLSBNZXRob2Qgb2YgdGhlIHJlcXVlc3RcbiAqIEBhdHRyIHtCb29sZWFufSBsb2FkaW5nIC0gVHJ1ZSBpZiB0aGUgcmVxdWVzdCBpcyBpbiBwcm9ncmVzc1xuICogQGF0dHIge09iamVjdH0gcmVzcG9uc2UgLSBSZXNwb25zZSBvZiB0aGUgcmVxdWVzdFxuICovXG5leHBvcnQgY2xhc3MgR3ZIdHRwQ2xpZW50IGV4dGVuZHMgS2V5Ym9hcmRFbGVtZW50KExpdEVsZW1lbnQpIHtcbiAgc3RhdGljIGdldCBwcm9wZXJ0aWVzKCkge1xuICAgIHJldHVybiB7XG4gICAgICByZXNwb25zZTogeyB0eXBlOiBPYmplY3QgfSxcbiAgICAgIHBhdGg6IHsgdHlwZTogU3RyaW5nIH0sXG4gICAgICBtZXRob2Q6IHsgdHlwZTogU3RyaW5nIH0sXG4gICAgICBsb2FkaW5nOiB7IHR5cGU6IEJvb2xlYW4gfSxcbiAgICB9O1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnJlc3BvbnNlID0gdW5kZWZpbmVkO1xuICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgIHRoaXMucGF0aCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLm1ldGhvZCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLnJlcXVlc3QgPSB7XG4gICAgICBtZXRob2Q6ICdHRVQnLFxuICAgICAgcGF0aDogJy8nLFxuICAgIH07XG4gIH1cblxuICBfc2VuZFJlcXVlc3QoKSB7XG4gICAgZGlzcGF0Y2hDdXN0b21FdmVudCh0aGlzLCAnc2VuZCcsIHsgcmVxdWVzdDogdGhpcy5yZXF1ZXN0IH0pO1xuICB9XG5cbiAgX3VwZGF0ZVJlcXVlc3QoZm9ybURhdGEpIHtcbiAgICB0aGlzLmlzRm9ybVZhbGlkID0gZm9ybURhdGEuZGV0YWlsLnZhbGlkYXRpb24udmFsaWQ7XG4gICAgdGhpcy5yZXF1ZXN0ID0gZm9ybURhdGEuZGV0YWlsLnZhbHVlcztcbiAgICB0aGlzLnJlcXVlc3RVcGRhdGUoKTtcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICByZXR1cm4gaHRtbGAgPGRpdiBjbGFzcz1cImNvbnRhaW5lclwiPlxuICAgICAgPGRpdiBjbGFzcz1cInJlcXVlc3RcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRvcC1iYXJcIj5SZXF1ZXN0PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJyZXF1ZXN0LWZvcm1cIj5cbiAgICAgICAgICA8Z3Ytc2NoZW1hLWZvcm0gLnNjaGVtYT1cIiR7aHR0cENsaWVudFNjaGVtYUZvcm19XCIgaWQ9XCJyZXF1ZXN0LWZvcm1cIiBAZ3Ytc2NoZW1hLWZvcm06Y2hhbmdlPVwiJHt0aGlzLl91cGRhdGVSZXF1ZXN0fVwiPlxuICAgICAgICAgIDwvZ3Ytc2NoZW1hLWZvcm0+XG4gICAgICAgICAgPGd2LWJ1dHRvblxuICAgICAgICAgICAgY2xhc3M9XCJyZXF1ZXN0LWZvcm0tYnV0dG9uXCJcbiAgICAgICAgICAgIGljb24tcmlnaHQ9XCJjb250ZW50OnNlbmRcIlxuICAgICAgICAgICAgLmRpc2FibGVkPVwiJHt0aGlzLmlzRm9ybVZhbGlkID09PSBmYWxzZSB8fCB0aGlzLmxvYWRpbmcgPT09IHRydWV9XCJcbiAgICAgICAgICAgIEBndi1idXR0b246Y2xpY2s9XCIke3RoaXMuX3NlbmRSZXF1ZXN0fVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgU2VuZFxuICAgICAgICAgIDwvZ3YtYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwicmVzcG9uc2VcIj5cbiAgICAgICAgJHshdGhpcy5sb2FkaW5nICYmICF0aGlzLnJlc3BvbnNlID8gdGhpcy5fcmVuZGVyRW1wdHlSZXNwb25zZSgpIDogJyd9ICR7dGhpcy5sb2FkaW5nID8gdGhpcy5fcmVuZGVyTG9hZGluZygpIDogJyd9XG4gICAgICAgICR7dGhpcy5yZXNwb25zZSA/IHRoaXMuX3JlbmRlckRlYnVnUmVzcG9uc2UoKSA6ICcnfVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+YDtcbiAgfVxuXG4gIF9yZW5kZXJFbXB0eVJlc3BvbnNlKCkge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cImVtcHR5LXJlc3BvbnNlXCI+XG4gICAgICAgIDxndi1pY29uIGNsYXNzPVwiZW1wdHktcmVzcG9uc2UtaWNvblwiIHNoYXBlPVwiZWRpdG9yOmZvcm1hdF9hbGlnbl9sZWZ0XCI+PC9ndi1pY29uPlxuICAgICAgICA8ZGl2PkRlZmluZSBhbmQgcnVuIHRoZSByZXF1ZXN0IHlvdSB3YW50IHRvIHRlc3QhPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG5cbiAgX3JlbmRlckxvYWRpbmcoKSB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwibG9hZGluZ1wiPlxuICAgICAgICA8Z3YtaWNvbiBjbGFzcz1cImxvYWRpbmctaWNvblwiIHNoYXBlPVwiY29tbXVuaWNhdGlvbjpzZW5kaW5nXCI+PC9ndi1pY29uPlxuICAgICAgICA8ZGl2PlJlcXVlc3QgaW4gcHJvZ3Jlc3MhPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG5cbiAgX3JlbmRlckRlYnVnUmVzcG9uc2UoKSB7XG4gICAgbGV0IHByZXR0aWZpZWRSZXNwb25zZSA9IHRoaXMucmVzcG9uc2UuYm9keTtcbiAgICBsZXQgbW9kZSA9ICd0ZXh0JztcblxuICAgIGlmICh0aGlzLnJlc3BvbnNlLmhlYWRlcnMpIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xuICAgICAgY29uc3QgY29udGVudFR5cGVIZWFkZXIgPSBPYmplY3QuZW50cmllcyh0aGlzLnJlc3BvbnNlLmhlYWRlcnMpLmZpbmQoKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICByZXR1cm4ga2V5LnRvTG93ZXJDYXNlKCkgPT09ICdjb250ZW50LXR5cGUnO1xuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IGNvbnRlbnRUeXBlID0gY29udGVudFR5cGVIZWFkZXIgPyBjb250ZW50VHlwZUhlYWRlclsxXS5zcGxpdCgnOycpWzBdIDogdW5kZWZpbmVkO1xuXG4gICAgICBpZiAoY29udGVudFR5cGUgPT09ICd0ZXh0L2h0bWwnKSB7XG4gICAgICAgIG1vZGUgPSAnaHRtbG1peGVkJztcbiAgICAgICAgcHJldHRpZmllZFJlc3BvbnNlID0gdGhpcy5yZXNwb25zZS5ib2R5O1xuICAgICAgfSBlbHNlIGlmIChjb250ZW50VHlwZSA9PT0gJ2FwcGxpY2F0aW9uL2pzb24nKSB7XG4gICAgICAgIG1vZGUgPSAnYXBwbGljYXRpb24vanNvbic7XG4gICAgICAgIC8vIENvbnZlcnQgSlNPTiBib2R5IHRvIGEgaHVtYW4gcmVhZGFibGUgZm9ybSB3aXRoIDIgc3BhY2VzIGluZGVudGF0aW9uXG4gICAgICAgIHByZXR0aWZpZWRSZXNwb25zZSA9IEpTT04uc3RyaW5naWZ5KEpTT04ucGFyc2UodGhpcy5yZXNwb25zZS5ib2R5KSwgbnVsbCwgMik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgZ3ZDb2RlT3B0aW9ucyA9IHtcbiAgICAgIGxpbmVOdW1iZXJzOiB0cnVlLFxuICAgICAgbW9kZTogbW9kZSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICAke3RoaXMuX3JlbmRlclJlc3BvbnNlSGVhZGVyKCl9XG4gICAgICA8ZGl2IGNsYXNzPVwicmVzcG9uc2UtaGVhZGVyc1wiPkhlYWRlcnM8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXNwb25zZS1oZWFkZXJzLWNvbnRlbnRcIj5cbiAgICAgICAgJHtyZXBlYXQoT2JqZWN0LmtleXModGhpcy5yZXNwb25zZS5oZWFkZXJzKSwgKGtleSkgPT4ge1xuICAgICAgICAgIHJldHVybiBodG1sYDxkaXY+PGNvZGU+JHtrZXl9OiAke3RoaXMucmVzcG9uc2UuaGVhZGVyc1trZXldfTwvY29kZT48L2Rpdj5gO1xuICAgICAgICB9KX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInJlc3BvbnNlLWJvZHlcIj5Cb2R5PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29kZS1jb250YWluZXJcIj5cbiAgICAgICAgPGd2LWNvZGUgLnZhbHVlPVwiJHtwcmV0dGlmaWVkUmVzcG9uc2V9XCIgLm9wdGlvbnM9XCIke2d2Q29kZU9wdGlvbnN9XCIgcmVhZG9ubHk+PC9ndi1jb2RlPlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxuXG4gIF9yZW5kZXJSZXNwb25zZUhlYWRlcigpIHtcbiAgICBjb25zdCBzdWNjZXNzZnVsUmVxdWVzdCA9IDIwMCA8PSB0aGlzLnJlc3BvbnNlLnN0YXR1c0NvZGUgJiYgdGhpcy5yZXNwb25zZS5zdGF0dXNDb2RlIDwgMzAwO1xuICAgIGNvbnN0IGVycm9yUmVxdWVzdCA9IDQwMCA8PSB0aGlzLnJlc3BvbnNlLnN0YXR1c0NvZGUgJiYgdGhpcy5yZXNwb25zZS5zdGF0dXNDb2RlIDwgNjAwO1xuXG4gICAgcmV0dXJuIGh0bWxgPGRpdiBjbGFzcz1cInRvcC1iYXJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZXNwb25zZS1yb3ctaXRlbVwiPlJlc3BvbnNlPC9kaXY+XG4gICAgICAke3RoaXMubWV0aG9kID8gaHRtbGAgPGRpdiBjbGFzcz1cInJlc3BvbnNlLXJvdy1pdGVtLW1ldGhvZFwiPiR7dGhpcy5tZXRob2R9PC9kaXY+YCA6ICcnfVxuICAgICAgJHt0aGlzLnBhdGggPyBodG1sYCA8ZGl2IGNsYXNzPVwicmVzcG9uc2Utcm93LWl0ZW1cIj4ke3RoaXMucGF0aH08L2Rpdj5gIDogJyd9XG4gICAgICAke3RoaXMucmVzcG9uc2Uuc3RhdHVzQ29kZVxuICAgICAgICA/IGh0bWxgIDxkaXYgY2xhc3M9XCJyZXNwb25zZS1yb3ctaXRlbVwiPlxuICAgICAgICAgICAgPGd2LXN0YXRlID9zdWNjZXNzPVwiJHtzdWNjZXNzZnVsUmVxdWVzdH1cIiA/ZXJyb3I9XCIke2Vycm9yUmVxdWVzdH1cIj5cbiAgICAgICAgICAgICAgJHt0aGlzLnJlc3BvbnNlLnN0YXR1c0NvZGV9IC0gJHtzdGF0dXNDb2RlW3RoaXMucmVzcG9uc2Uuc3RhdHVzQ29kZV0uZGVzY3JpcHRpb259XG4gICAgICAgICAgICA8L2d2LXN0YXRlPlxuICAgICAgICAgIDwvZGl2PmBcbiAgICAgICAgOiAnJ31cbiAgICA8L2Rpdj4gYDtcbiAgfVxuXG4gIHN0YXRpYyBnZXQgc3R5bGVzKCkge1xuICAgIHJldHVybiBbXG4gICAgICBlbXB0eSxcbiAgICAgIC8vIGxhbmd1YWdlPUNTU1xuICAgICAgY3NzYFxuICAgICAgICA6aG9zdCB7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnJlcXVlc3Qge1xuICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnJlcXVlc3QtZm9ybSB7XG4gICAgICAgICAgcGFkZGluZzogOHB4O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXF1ZXN0LWZvcm0tYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnJlc3BvbnNlIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNkOWQ5ZDk7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2Q5ZDlkOTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRvcC1iYXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG4gICAgICAgIH1cblxuICAgICAgICAucmVzcG9uc2Utcm93LWl0ZW0ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXNwb25zZS1yb3ctaXRlbS1tZXRob2Qge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN0YXR1cy1jb2RlLFxuICAgICAgICAudG9wLWJhcixcbiAgICAgICAgLnJlc3BvbnNlLWhlYWRlcnMsXG4gICAgICAgIC5yZXNwb25zZS1ib2R5IHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMTZweDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q5ZDlkOTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXNwb25zZS1oZWFkZXJzLWNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDE2cHg7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkOWQ5ZDk7XG4gICAgICAgICAgbWF4LWhlaWdodDogNDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxvYWRpbmcsXG4gICAgICAgIC5lbXB0eS1yZXNwb25zZSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2FkaW5nLWljb24sXG4gICAgICAgIC5lbXB0eS1yZXNwb25zZS1pY29uIHtcbiAgICAgICAgICAtLWd2LWljb24tLXM6IDEyOHB4O1xuICAgICAgICAgIC0tZ3YtaWNvbi0tYzogdmFyKC0tZ3YtdGhlbWUtY29sb3ItZGFyayk7XG4gICAgICAgIH1cblxuICAgICAgICAuY29kZS1jb250YWluZXIge1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgfVxuICAgICAgYCxcbiAgICBdO1xuICB9XG59XG5cbndpbmRvdy5jdXN0b21FbGVtZW50cy5kZWZpbmUoJ2d2LWh0dHAtY2xpZW50JywgR3ZIdHRwQ2xpZW50KTtcbiJdfQ==
@@ -13,10 +13,10 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { LitElement, html, css } from 'lit-element';
16
+ import { LitElement, html, css } from 'lit';
17
17
  import '../molecules/gv-nav';
18
18
  import { isSameRoutes } from '../lib/utils';
19
- import { classMap } from 'lit-html/directives/class-map';
19
+ import { classMap } from 'lit/directives/class-map';
20
20
  import { withResizeObserver } from '../mixins/with-resize-observer';
21
21
  /**
22
22
  * A menu
@@ -139,4 +139,4 @@ export class GvMenu extends withResizeObserver(LitElement) {
139
139
 
140
140
  }
141
141
  window.customElements.define('gv-menu', GvMenu);
142
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL29yZ2FuaXNtcy9ndi1tZW51LmpzIl0sIm5hbWVzIjpbIkxpdEVsZW1lbnQiLCJodG1sIiwiY3NzIiwiaXNTYW1lUm91dGVzIiwiY2xhc3NNYXAiLCJ3aXRoUmVzaXplT2JzZXJ2ZXIiLCJHdk1lbnUiLCJwcm9wZXJ0aWVzIiwicm91dGVzIiwidHlwZSIsIkFycmF5Iiwic3RpY2t5IiwiQm9vbGVhbiIsInJlZmxlY3QiLCJfc21hbGwiLCJhdHRyaWJ1dGUiLCJfcm91dGVzIiwiX2hhc0hlYWRlciIsInN0eWxlcyIsImNvbnN0cnVjdG9yIiwiYnJlYWtwb2ludHMiLCJ3aWR0aCIsImNhbmRpZGF0ZSIsIlByb21pc2UiLCJyZXNvbHZlIiwidGhlbiIsImNhbmRpZGF0ZXMiLCJhbGwiLCJmdXR1cmVSb3V0ZXMiLCJvblJlc2l6ZSIsInJlbmRlciIsInVwZGF0ZWQiLCJjaGFuZ2VkUHJvcGVydGllcyIsIl9oZWFkZXIiLCJub2RlIiwiY2hpbGROb2RlcyIsIm5vZGVUeXBlIiwiY2hpbGQiLCJub2RlTmFtZSIsInRvTG93ZXJDYXNlIiwicXVlcnlTZWxlY3RvciIsIndpbmRvdyIsImN1c3RvbUVsZW1lbnRzIiwiZGVmaW5lIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxVQUFULEVBQXFCQyxJQUFyQixFQUEyQkMsR0FBM0IsUUFBc0MsYUFBdEM7QUFDQSxPQUFPLHFCQUFQO0FBQ0EsU0FBU0MsWUFBVCxRQUE2QixjQUE3QjtBQUNBLFNBQVNDLFFBQVQsUUFBeUIsK0JBQXpCO0FBQ0EsU0FBU0Msa0JBQVQsUUFBbUMsZ0NBQW5DO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNB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QSxJQUFJLENBQUNNLGFBQUwsQ0FBbUIsV0FBbkIsQ0FBbkU7O0FBQ0EsWUFBSUgsS0FBSixFQUFXO0FBQ1RBLFVBQUFBLEtBQUssQ0FBQzFCLE1BQU4sR0FBZSxLQUFLQSxNQUFwQjtBQUNBc0IsVUFBQUEsT0FBTyxHQUFHLElBQVY7QUFDQTtBQUNEO0FBQ0Y7QUFDRjs7QUFDRCxTQUFLaEIsVUFBTCxHQUFrQmdCLE9BQWxCO0FBQ0Q7O0FBeE53RDtBQTJOM0RRLE1BQU0sQ0FBQ0MsY0FBUCxDQUFzQkMsTUFBdEIsQ0FBNkIsU0FBN0IsRUFBd0NyQyxNQUF4QyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgeyBMaXRFbGVtZW50LCBodG1sLCBjc3MgfSBmcm9tICdsaXQtZWxlbWVudCc7XG5pbXBvcnQgJy4uL21vbGVjdWxlcy9ndi1uYXYnO1xuaW1wb3J0IHsgaXNTYW1lUm91dGVzIH0gZnJvbSAnLi4vbGliL3V0aWxzJztcbmltcG9ydCB7IGNsYXNzTWFwIH0gZnJvbSAnbGl0LWh0bWwvZGlyZWN0aXZlcy9jbGFzcy1tYXAnO1xuaW1wb3J0IHsgd2l0aFJlc2l6ZU9ic2VydmVyIH0gZnJvbSAnLi4vbWl4aW5zL3dpdGgtcmVzaXplLW9ic2VydmVyJztcblxuLyoqXG4gKiBBIG1lbnVcbiAqXG4gKiAjIyBEZXRhaWxzXG4gKiAqIGhhcyBAdGhlbWUgZmFjZXRcbiAqXG4gKiBAZmlyZXMgZ3YtbGluazpjbGljayAtIEN1c3RvbSBldmVudCB3aGVuIGxpbmsgY2xpY2tcbiAqXG4gKiBAc2xvdCB0b3AgLSBUaGUgY29udGVudCBvbiB0b3Agb2YgbWVudVxuICogQHNsb3QgcmlnaHQgLSBUaGUgY29udGVudCBhdCByaWdodFxuICogQHNsb3QgcmlnaHQtdHJhbnNpdGlvbiAtIFRoZSBjb250ZW50IGF0IHJpZ2h0IHdpdGggdHJhbnNpdGlvblxuICpcbiAqIEBhdHRyIHtBcnJheX0gcm91dGVzIC0gZGVmaW5pdGlvbiBvZiByb3V0ZXMgW3thY3RpdmU6IEJvb2xlYW4sIGljb246IFN0cmluZywgcGF0aDogU3RyaW5nLCB0aXRsZTogUHJvbWlzZTxTdHJpbmc+XVxuICogQGNzc3Byb3Age0NvbG9yfSBbLS1ndi1tZW51LS1jPXZhcigtLWd2LXRoZW1lLWZvbnQtY29sb3ItbGlnaHQsICNmZmZmZmYpXSAtIENvbG9yXG4gKiBAY3NzcHJvcCB7Q29sb3J9IFstLWd2LW1lbnUtLWJnYz12YXIoLS1ndi10aGVtZS1jb2xvci1kYXJrLCAjMjg0NDRmKV0gLSBCYWNrZ3JvdW5kIGNvbG9yLlxuICogQGNzc3Byb3Age0NvbG9yfSBbLS1ndi1tZW51LWxpbmstYWN0aXZlLS1iZGM9dmFyKC0tZ3YtdGhlbWUtY29sb3ItbGlnaHQsICM4NmMzZDApXSAtIEJvcmRlciBib3R0b20gY29sb3Igb2YgYWN0aXZlIGxpbmsuXG4gKiBAY3NzcHJvcCB7U3RyaW5nfSBbLS1ndi1tZW51LWxpbmstYWN0aXZlLS1iZHM9c29saWRdIC0gQm9yZGVyIGJvdHRvbSBzdHlsZSBvZiBhY3RpdmUgbGluay5cbiAqIEBjc3Nwcm9wIHtMZW5ndGh9IFstLWd2LW1lbnUtbGluay1hY3RpdmUtLWJkdz0wIDAgM3B4IDBdIC0gQm9yZGVyIGJvdHRvbSB3aWR0aCBvZiBhY3RpdmUgbGluay5cbiAqIEBjc3Nwcm9wIHtDb2xvcn0gWy0tZ3YtbWVudS1saW5rLWFjdGl2ZS0tYmdjPXRyYW5zcGFyZW50XSAtIEFjdGl2ZSBiYWNrZ3JvdW5kIGNvbG9yXG4gKiBAY3NzcHJvcCB7Q29sb3J9IFstLWd2LW1lbnUtbGluay0tYmdjPXRyYW5zcGFyZW50XSAtIEJhY2tncm91bmQgY29sb3JcbiAqIEBjc3Nwcm9wIHtMZW5ndGh9IFstLWd2LW1lbnUtbGluay1hLS1wdj0wcHhdIC0gTGluayB2ZXJ0aWNhbCBwYWRkaW5nXG4gKi9cbmV4cG9ydCBjbGFzcyBHdk1lbnUgZXh0ZW5kcyB3aXRoUmVzaXplT2JzZXJ2ZXIoTGl0RWxlbWVudCkge1xuICBzdGF0aWMgZ2V0IHByb3BlcnRpZXMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC8qKiBAcmVxdWlyZWQgKiovXG4gICAgICByb3V0ZXM6IHsgdHlwZTogQXJyYXkgfSxcbiAgICAgIHN0aWNreTogeyB0eXBlOiBCb29sZWFuLCByZWZsZWN0OiB0cnVlIH0sXG4gICAgICBfc21hbGw6IHsgdHlwZTogQm9vbGVhbiwgYXR0cmlidXRlOiBmYWxzZSB9LFxuICAgICAgX3JvdXRlczogeyB0eXBlOiBBcnJheSwgYXR0cmlidXRlOiBmYWxzZSB9LFxuICAgICAgX2hhc0hlYWRlcjogeyB0eXBlOiBCb29sZWFuLCBhdHRyaWJ1dGU6IGZhbHNlIH0sXG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBnZXQgc3R5bGVzKCkge1xuICAgIHJldHVybiBbXG4gICAgICAvLyBsYW5ndWFnZT1jc3NcbiAgICAgIGNzc2BcbiAgICAgICAgOmhvc3Qge1xuICAgICAgICAgIC0tZ3YtbGluay0tYzogdmFyKC0tZ3YtbWVudS0tYywgdmFyKC0tZ3YtdGhlbWUtZm9udC1jb2xvci1saWdodCwgI2ZmZmZmZikpO1xuICAgICAgICAgIC0tZ3YtbGluay1hY3RpdmUtLWM6IHZhcigtLWd2LW1lbnUtLWMsIHZhcigtLWd2LXRoZW1lLWZvbnQtY29sb3ItbGlnaHQsICNmZmZmZmYpKTtcbiAgICAgICAgICAtLWd2LWxpbmstLWJnYzogdmFyKC0tZ3YtbWVudS1saW5rLS1iZ2MsIHRyYW5zcGFyZW50KTtcbiAgICAgICAgICAtLWd2LWxpbmstYWN0aXZlLS1iZ2M6IHZhcigtLWd2LW1lbnUtbGluay1hY3RpdmUtLWJnYywgdHJhbnNwYXJlbnQpO1xuICAgICAgICAgIC0tZ3YtbGluay1hY3RpdmUtLWJkYzogdmFyKC0tZ3YtbWVudS1saW5rLWFjdGl2ZS0tYmRjLCB2YXIoLS1ndi10aGVtZS1jb2xvci1saWdodCwgIzg2YzNkMCkpO1xuICAgICAgICAgIC0tZ3YtbGluay1hY3RpdmUtLWJkczogdmFyKC0tZ3YtbWVudS1saW5rLWFjdGl2ZS0tYmRzLCBzb2xpZCk7XG4gICAgICAgICAgLS1ndi1saW5rLWFjdGl2ZS0tYmR3OiB2YXIoLS1ndi1tZW51LWxpbmstYWN0aXZlLS1iZHcsIDAgMCAzcHggMCk7XG4gICAgICAgICAgLS1wcjogdmFyKC0tZ3YtdGhlbWUtbGF5b3V0LS1wciwgNHJlbSk7XG4gICAgICAgICAgLS1wbDogdmFyKC0tZ3YtdGhlbWUtbGF5b3V0LS1wbCwgNHJlbSk7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWd2LXRoZW1lLWZvbnQtc2l6ZS1zLCAxMnB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFtzdGlja3ldKSBndi1uYXYge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgICAgIC0tZ3YtbGluay1pY29uLS1zOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3N0aWNreV0pIC5oYXMtaGVhZGVyIGd2LW5hdiB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbc3RpY2t5XSkgOjpzbG90dGVkKFtzbG90PSd0b3AnXSkge1xuICAgICAgICAgIHRyYW5zaXRpb246IGhlaWdodCAyNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFt3LWx0LTEwMjRdKSB7XG4gICAgICAgICAgLS1wcjogNXB4O1xuICAgICAgICAgIC0tcGw6IDVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFt3LWx0LTc2OF0pIC5uYXYtY29udGFpbmVyIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBsKTtcbiAgICAgICAgICAtLWd2LWxpbmstYS0tcHY6IHZhcigtLWd2LW1lbnUtbGluay1hLS1wdiwgMHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFt3LWx0LTU4MF0pIC5uYXYtY29udGFpbmVyIHtcbiAgICAgICAgICBmbGV4OiBhdXRvO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFt3LWx0LTU4MF0pIGd2LW5hdiB7XG4gICAgICAgICAgZmxleDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFt3LWx0LTU4MF0pIC5yaWdodCB7XG4gICAgICAgICAgZmxleDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFt3LWx0LTM4MF0pIC5uYXYtY29udGFpbmVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFt3LWx0LTM4MF0pIGd2LW5hdiB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3ctbHQtMzgwXSkgLnJpZ2h0IHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBndi1uYXYge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXYtY29udGFpbmVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWd2LW1lbnUtLWJnYywgdmFyKC0tZ3YtdGhlbWUtY29sb3ItZGFyaywgIzI4NDQ0ZikpO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1ndi1tZW51LS1jLCB2YXIoLS1ndi10aGVtZS1mb250LWNvbG9yLWxpZ2h0LCAjZmZmZmZmKSk7XG4gICAgICAgIH1cblxuICAgICAgICAuaGFzLWhlYWRlciAubmF2LWNvbnRhaW5lciB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEwcmVtKTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcmVtO1xuICAgICAgICAgIC0tZ3YtbGluay1hLS1wdjogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFtzdGlja3ldKSAuaGFzLWhlYWRlciAubmF2LWNvbnRhaW5lciB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDVyZW0pO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogNXJlbTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cblxuICAgICAgICAucmlnaHQge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tcHIpO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cblxuICAgICAgICBndi1uYXYge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGwpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHdpZHRoIDI1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICB9XG5cbiAgICAgICAgc2xvdFtuYW1lPSdyaWdodC10cmFuc2l0aW9uJ10sXG4gICAgICAgIHNsb3RbbmFtZT0ncmlnaHQnXSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnJpZ2h0IDo6c2xvdHRlZChbc2xvdD0ncmlnaHQnXSksXG4gICAgICAgIC5yaWdodCA6OnNsb3R0ZWQoW3Nsb3Q9J3JpZ2h0LXRyYW5zaXRpb24nXSkge1xuICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yaWdodCA6OnNsb3R0ZWQoW3Nsb3Q9J3JpZ2h0LXRyYW5zaXRpb24nXSkge1xuICAgICAgICAgIHRyYW5zaXRpb246IHdpZHRoIDI1MG1zIGVhc2UgMjUwbXM7XG4gICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yaWdodDpmb2N1cy13aXRoaW4gOjpzbG90dGVkKFtzbG90PSdyaWdodC10cmFuc2l0aW9uJ10pIHtcbiAgICAgICAgICBhbmltYXRpb246IHNsaWRlIDI1MG1zIDI1MG1zO1xuICAgICAgICAgIHRyYW5zaXRpb246IHdpZHRoIDI1MG1zIGVhc2UtaW4tb3V0IDI1MG1zO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnJpZ2h0IDo6c2xvdHRlZChbc2xvdD0ncmlnaHQnXSkge1xuICAgICAgICAgIC0tZ3YtYnV0dG9uLS1wOiA3cHggMTZweDtcbiAgICAgICAgICAtLWd2LWJ1dHRvbi0tZno6IDE1cHg7XG4gICAgICAgIH1cbiAgICAgIGAsXG4gICAgXTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgLyoqIEBwcm90ZWN0ZWQgKi9cbiAgICB0aGlzLl9yb3V0ZXMgPSBbXTtcbiAgICB0aGlzLnN0aWNreSA9IGZhbHNlO1xuICAgIHRoaXMuYnJlYWtwb2ludHMgPSB7XG4gICAgICAvLyBjZWlsZWQgd2lkdGggd2l0aCAyNzVweCB0aWxlcyBhbmQgMXJlbSAoMTZweCkgZ2FwXG4gICAgICB3aWR0aDogWzM4MCwgNTgwLCA3NjgsIDEwMjRdLFxuICAgIH07XG4gIH1cblxuICBzZXQgcm91dGVzKGNhbmRpZGF0ZSkge1xuICAgIGlmIChjYW5kaWRhdGUpIHtcbiAgICAgIFByb21pc2UucmVzb2x2ZShjYW5kaWRhdGUpLnRoZW4oKGNhbmRpZGF0ZXMpID0+IHtcbiAgICAgICAgaWYgKGNhbmRpZGF0ZXMpIHtcbiAgICAgICAgICBQcm9taXNlLmFsbChjYW5kaWRhdGVzKS50aGVuKChmdXR1cmVSb3V0ZXMpID0+IHtcbiAgICAgICAgICAgIGlmICghaXNTYW1lUm91dGVzKHRoaXMuX3JvdXRlcywgZnV0dXJlUm91dGVzKSkge1xuICAgICAgICAgICAgICB0aGlzLl9yb3V0ZXMgPSBmdXR1cmVSb3V0ZXM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5fcm91dGVzID0gW107XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9yb3V0ZXMgPSBbXTtcbiAgICB9XG4gIH1cblxuICBvblJlc2l6ZSh7IHdpZHRoIH0pIHtcbiAgICBpZiAod2lkdGggPD0gMTAyNCkge1xuICAgICAgdGhpcy5fc21hbGwgPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9zbWFsbCA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCIke2NsYXNzTWFwKHsgJ2hhcy1oZWFkZXInOiB0aGlzLl9oYXNIZWFkZXIgfSl9XCI+XG4gICAgICAgIDxzbG90IG5hbWU9XCJ0b3BcIj48L3Nsb3Q+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJuYXYtY29udGFpbmVyXCI+XG4gICAgICAgICAgPGd2LW5hdiAucm91dGVzPVwiJHt0aGlzLl9yb3V0ZXN9XCIgP3NtYWxsPVwiJHt0aGlzLl9zbWFsbH1cIj48L2d2LW5hdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicmlnaHRcIj48c2xvdCBuYW1lPVwicmlnaHQtdHJhbnNpdGlvblwiPjwvc2xvdD48c2xvdCBuYW1lPVwicmlnaHRcIj48L3Nsb3Q+PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxuXG4gIHVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXMpIHtcbiAgICBzdXBlci51cGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcbiAgICBsZXQgX2hlYWRlciA9IGZhbHNlO1xuICAgIGZvciAoY29uc3Qgbm9kZSBvZiB0aGlzLmNoaWxkTm9kZXMpIHtcbiAgICAgIGlmIChub2RlLm5vZGVUeXBlID09PSAxKSB7XG4gICAgICAgIGNvbnN0IGNoaWxkID0gbm9kZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpID09PSAnZ3YtaGVhZGVyJyA/IG5vZGUgOiBub2RlLnF1ZXJ5U2VsZWN0b3IoJ2d2LWhlYWRlcicpO1xuICAgICAgICBpZiAoY2hpbGQpIHtcbiAgICAgICAgICBjaGlsZC5zdGlja3kgPSB0aGlzLnN0aWNreTtcbiAgICAgICAgICBfaGVhZGVyID0gdHJ1ZTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLl9oYXNIZWFkZXIgPSBfaGVhZGVyO1xuICB9XG59XG5cbndpbmRvdy5jdXN0b21FbGVtZW50cy5kZWZpbmUoJ2d2LW1lbnUnLCBHdk1lbnUpO1xuIl19
142
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL29yZ2FuaXNtcy9ndi1tZW51LmpzIl0sIm5hbWVzIjpbIkxpdEVsZW1lbnQiLCJodG1sIiwiY3NzIiwiaXNTYW1lUm91dGVzIiwiY2xhc3NNYXAiLCJ3aXRoUmVzaXplT2JzZXJ2ZXIiLCJHdk1lbnUiLCJwcm9wZXJ0aWVzIiwicm91dGVzIiwidHlwZSIsIkFycmF5Iiwic3RpY2t5IiwiQm9vbGVhbiIsInJlZmxlY3QiLCJfc21hbGwiLCJhdHRyaWJ1dGUiLCJfcm91dGVzIiwiX2hhc0hlYWRlciIsInN0eWxlcyIsImNvbnN0cnVjdG9yIiwiYnJlYWtwb2ludHMiLCJ3aWR0aCIsImNhbmRpZGF0ZSIsIlByb21pc2UiLCJyZXNvbHZlIiwidGhlbiIsImNhbmRpZGF0ZXMiLCJhbGwiLCJmdXR1cmVSb3V0ZXMiLCJvblJlc2l6ZSIsInJlbmRlciIsInVwZGF0ZWQiLCJjaGFuZ2VkUHJvcGVydGllcyIsIl9oZWFkZXIiLCJub2RlIiwiY2hpbGROb2RlcyIsIm5vZGVUeXBlIiwiY2hpbGQiLCJub2RlTmFtZSIsInRvTG93ZXJDYXNlIiwicXVlcnlTZWxlY3RvciIsIndpbmRvdyIsImN1c3RvbUVsZW1lbnRzIiwiZGVmaW5lIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxVQUFULEVBQXFCQyxJQUFyQixFQUEyQkMsR0FBM0IsUUFBc0MsS0FBdEM7QUFDQSxPQUFPLHFCQUFQO0FBQ0EsU0FBU0MsWUFBVCxRQUE2QixjQUE3QjtBQUNBLFNBQVNDLFFBQVQsUUFBeUIsMEJBQXpCO0FBQ0EsU0FBU0Msa0JBQVQsUUFBbUMsZ0NBQW5DO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNB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QSxJQUFJLENBQUNNLGFBQUwsQ0FBbUIsV0FBbkIsQ0FBbkU7O0FBQ0EsWUFBSUgsS0FBSixFQUFXO0FBQ1RBLFVBQUFBLEtBQUssQ0FBQzFCLE1BQU4sR0FBZSxLQUFLQSxNQUFwQjtBQUNBc0IsVUFBQUEsT0FBTyxHQUFHLElBQVY7QUFDQTtBQUNEO0FBQ0Y7QUFDRjs7QUFDRCxTQUFLaEIsVUFBTCxHQUFrQmdCLE9BQWxCO0FBQ0Q7O0FBeE53RDtBQTJOM0RRLE1BQU0sQ0FBQ0MsY0FBUCxDQUFzQkMsTUFBdEIsQ0FBNkIsU0FBN0IsRUFBd0NyQyxNQUF4QyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgeyBMaXRFbGVtZW50LCBodG1sLCBjc3MgfSBmcm9tICdsaXQnO1xuaW1wb3J0ICcuLi9tb2xlY3VsZXMvZ3YtbmF2JztcbmltcG9ydCB7IGlzU2FtZVJvdXRlcyB9IGZyb20gJy4uL2xpYi91dGlscyc7XG5pbXBvcnQgeyBjbGFzc01hcCB9IGZyb20gJ2xpdC9kaXJlY3RpdmVzL2NsYXNzLW1hcCc7XG5pbXBvcnQgeyB3aXRoUmVzaXplT2JzZXJ2ZXIgfSBmcm9tICcuLi9taXhpbnMvd2l0aC1yZXNpemUtb2JzZXJ2ZXInO1xuXG4vKipcbiAqIEEgbWVudVxuICpcbiAqICMjIERldGFpbHNcbiAqICogaGFzIEB0aGVtZSBmYWNldFxuICpcbiAqIEBmaXJlcyBndi1saW5rOmNsaWNrIC0gQ3VzdG9tIGV2ZW50IHdoZW4gbGluayBjbGlja1xuICpcbiAqIEBzbG90IHRvcCAtIFRoZSBjb250ZW50IG9uIHRvcCBvZiBtZW51XG4gKiBAc2xvdCByaWdodCAtIFRoZSBjb250ZW50IGF0IHJpZ2h0XG4gKiBAc2xvdCByaWdodC10cmFuc2l0aW9uIC0gVGhlIGNvbnRlbnQgYXQgcmlnaHQgd2l0aCB0cmFuc2l0aW9uXG4gKlxuICogQGF0dHIge0FycmF5fSByb3V0ZXMgLSBkZWZpbml0aW9uIG9mIHJvdXRlcyBbe2FjdGl2ZTogQm9vbGVhbiwgaWNvbjogU3RyaW5nLCBwYXRoOiBTdHJpbmcsIHRpdGxlOiBQcm9taXNlPFN0cmluZz5dXG4gKiBAY3NzcHJvcCB7Q29sb3J9IFstLWd2LW1lbnUtLWM9dmFyKC0tZ3YtdGhlbWUtZm9udC1jb2xvci1saWdodCwgI2ZmZmZmZildIC0gQ29sb3JcbiAqIEBjc3Nwcm9wIHtDb2xvcn0gWy0tZ3YtbWVudS0tYmdjPXZhcigtLWd2LXRoZW1lLWNvbG9yLWRhcmssICMyODQ0NGYpXSAtIEJhY2tncm91bmQgY29sb3IuXG4gKiBAY3NzcHJvcCB7Q29sb3J9IFstLWd2LW1lbnUtbGluay1hY3RpdmUtLWJkYz12YXIoLS1ndi10aGVtZS1jb2xvci1saWdodCwgIzg2YzNkMCldIC0gQm9yZGVyIGJvdHRvbSBjb2xvciBvZiBhY3RpdmUgbGluay5cbiAqIEBjc3Nwcm9wIHtTdHJpbmd9IFstLWd2LW1lbnUtbGluay1hY3RpdmUtLWJkcz1zb2xpZF0gLSBCb3JkZXIgYm90dG9tIHN0eWxlIG9mIGFjdGl2ZSBsaW5rLlxuICogQGNzc3Byb3Age0xlbmd0aH0gWy0tZ3YtbWVudS1saW5rLWFjdGl2ZS0tYmR3PTAgMCAzcHggMF0gLSBCb3JkZXIgYm90dG9tIHdpZHRoIG9mIGFjdGl2ZSBsaW5rLlxuICogQGNzc3Byb3Age0NvbG9yfSBbLS1ndi1tZW51LWxpbmstYWN0aXZlLS1iZ2M9dHJhbnNwYXJlbnRdIC0gQWN0aXZlIGJhY2tncm91bmQgY29sb3JcbiAqIEBjc3Nwcm9wIHtDb2xvcn0gWy0tZ3YtbWVudS1saW5rLS1iZ2M9dHJhbnNwYXJlbnRdIC0gQmFja2dyb3VuZCBjb2xvclxuICogQGNzc3Byb3Age0xlbmd0aH0gWy0tZ3YtbWVudS1saW5rLWEtLXB2PTBweF0gLSBMaW5rIHZlcnRpY2FsIHBhZGRpbmdcbiAqL1xuZXhwb3J0IGNsYXNzIEd2TWVudSBleHRlbmRzIHdpdGhSZXNpemVPYnNlcnZlcihMaXRFbGVtZW50KSB7XG4gIHN0YXRpYyBnZXQgcHJvcGVydGllcygpIHtcbiAgICByZXR1cm4ge1xuICAgICAgLyoqIEByZXF1aXJlZCAqKi9cbiAgICAgIHJvdXRlczogeyB0eXBlOiBBcnJheSB9LFxuICAgICAgc3RpY2t5OiB7IHR5cGU6IEJvb2xlYW4sIHJlZmxlY3Q6IHRydWUgfSxcbiAgICAgIF9zbWFsbDogeyB0eXBlOiBCb29sZWFuLCBhdHRyaWJ1dGU6IGZhbHNlIH0sXG4gICAgICBfcm91dGVzOiB7IHR5cGU6IEFycmF5LCBhdHRyaWJ1dGU6IGZhbHNlIH0sXG4gICAgICBfaGFzSGVhZGVyOiB7IHR5cGU6IEJvb2xlYW4sIGF0dHJpYnV0ZTogZmFsc2UgfSxcbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIGdldCBzdHlsZXMoKSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIC8vIGxhbmd1YWdlPWNzc1xuICAgICAgY3NzYFxuICAgICAgICA6aG9zdCB7XG4gICAgICAgICAgLS1ndi1saW5rLS1jOiB2YXIoLS1ndi1tZW51LS1jLCB2YXIoLS1ndi10aGVtZS1mb250LWNvbG9yLWxpZ2h0LCAjZmZmZmZmKSk7XG4gICAgICAgICAgLS1ndi1saW5rLWFjdGl2ZS0tYzogdmFyKC0tZ3YtbWVudS0tYywgdmFyKC0tZ3YtdGhlbWUtZm9udC1jb2xvci1saWdodCwgI2ZmZmZmZikpO1xuICAgICAgICAgIC0tZ3YtbGluay0tYmdjOiB2YXIoLS1ndi1tZW51LWxpbmstLWJnYywgdHJhbnNwYXJlbnQpO1xuICAgICAgICAgIC0tZ3YtbGluay1hY3RpdmUtLWJnYzogdmFyKC0tZ3YtbWVudS1saW5rLWFjdGl2ZS0tYmdjLCB0cmFuc3BhcmVudCk7XG4gICAgICAgICAgLS1ndi1saW5rLWFjdGl2ZS0tYmRjOiB2YXIoLS1ndi1tZW51LWxpbmstYWN0aXZlLS1iZGMsIHZhcigtLWd2LXRoZW1lLWNvbG9yLWxpZ2h0LCAjODZjM2QwKSk7XG4gICAgICAgICAgLS1ndi1saW5rLWFjdGl2ZS0tYmRzOiB2YXIoLS1ndi1tZW51LWxpbmstYWN0aXZlLS1iZHMsIHNvbGlkKTtcbiAgICAgICAgICAtLWd2LWxpbmstYWN0aXZlLS1iZHc6IHZhcigtLWd2LW1lbnUtbGluay1hY3RpdmUtLWJkdywgMCAwIDNweCAwKTtcbiAgICAgICAgICAtLXByOiB2YXIoLS1ndi10aGVtZS1sYXlvdXQtLXByLCA0cmVtKTtcbiAgICAgICAgICAtLXBsOiB2YXIoLS1ndi10aGVtZS1sYXlvdXQtLXBsLCA0cmVtKTtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZ3YtdGhlbWUtZm9udC1zaXplLXMsIDEycHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3N0aWNreV0pIGd2LW5hdiB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgLS1ndi1saW5rLWljb24tLXM6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbc3RpY2t5XSkgLmhhcy1oZWFkZXIgZ3YtbmF2IHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFtzdGlja3ldKSA6OnNsb3R0ZWQoW3Nsb3Q9J3RvcCddKSB7XG4gICAgICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDI1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3ctbHQtMTAyNF0pIHtcbiAgICAgICAgICAtLXByOiA1cHg7XG4gICAgICAgICAgLS1wbDogNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3ctbHQtNzY4XSkgLm5hdi1jb250YWluZXIge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGwpO1xuICAgICAgICAgIC0tZ3YtbGluay1hLS1wdjogdmFyKC0tZ3YtbWVudS1saW5rLWEtLXB2LCAwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3ctbHQtNTgwXSkgLm5hdi1jb250YWluZXIge1xuICAgICAgICAgIGZsZXg6IGF1dG87XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3ctbHQtNTgwXSkgZ3YtbmF2IHtcbiAgICAgICAgICBmbGV4OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3ctbHQtNTgwXSkgLnJpZ2h0IHtcbiAgICAgICAgICBmbGV4OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3ctbHQtMzgwXSkgLm5hdi1jb250YWluZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3ctbHQtMzgwXSkgZ3YtbmF2IHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbdy1sdC0zODBdKSAucmlnaHQge1xuICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGd2LW5hdiB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdi1jb250YWluZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG87XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3YtbWVudS0tYmdjLCB2YXIoLS1ndi10aGVtZS1jb2xvci1kYXJrLCAjMjg0NDRmKSk7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWd2LW1lbnUtLWMsIHZhcigtLWd2LXRoZW1lLWZvbnQtY29sb3ItbGlnaHQsICNmZmZmZmYpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oYXMtaGVhZGVyIC5uYXYtY29udGFpbmVyIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTByZW0pO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTByZW07XG4gICAgICAgICAgLS1ndi1saW5rLWEtLXB2OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3N0aWNreV0pIC5oYXMtaGVhZGVyIC5uYXYtY29udGFpbmVyIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNXJlbSk7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cmVtO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yaWdodCB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wcik7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgfVxuXG4gICAgICAgIGd2LW5hdiB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wbCk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMjUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cblxuICAgICAgICBzbG90W25hbWU9J3JpZ2h0LXRyYW5zaXRpb24nXSxcbiAgICAgICAgc2xvdFtuYW1lPSdyaWdodCddIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAucmlnaHQgOjpzbG90dGVkKFtzbG90PSdyaWdodCddKSxcbiAgICAgICAgLnJpZ2h0IDo6c2xvdHRlZChbc2xvdD0ncmlnaHQtdHJhbnNpdGlvbiddKSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLnJpZ2h0IDo6c2xvdHRlZChbc2xvdD0ncmlnaHQtdHJhbnNpdGlvbiddKSB7XG4gICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMjUwbXMgZWFzZSAyNTBtcztcbiAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnJpZ2h0OmZvY3VzLXdpdGhpbiA6OnNsb3R0ZWQoW3Nsb3Q9J3JpZ2h0LXRyYW5zaXRpb24nXSkge1xuICAgICAgICAgIGFuaW1hdGlvbjogc2xpZGUgMjUwbXMgMjUwbXM7XG4gICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMjUwbXMgZWFzZS1pbi1vdXQgMjUwbXM7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAucmlnaHQgOjpzbG90dGVkKFtzbG90PSdyaWdodCddKSB7XG4gICAgICAgICAgLS1ndi1idXR0b24tLXA6IDdweCAxNnB4O1xuICAgICAgICAgIC0tZ3YtYnV0dG9uLS1mejogMTVweDtcbiAgICAgICAgfVxuICAgICAgYCxcbiAgICBdO1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICAvKiogQHByb3RlY3RlZCAqL1xuICAgIHRoaXMuX3JvdXRlcyA9IFtdO1xuICAgIHRoaXMuc3RpY2t5ID0gZmFsc2U7XG4gICAgdGhpcy5icmVha3BvaW50cyA9IHtcbiAgICAgIC8vIGNlaWxlZCB3aWR0aCB3aXRoIDI3NXB4IHRpbGVzIGFuZCAxcmVtICgxNnB4KSBnYXBcbiAgICAgIHdpZHRoOiBbMzgwLCA1ODAsIDc2OCwgMTAyNF0sXG4gICAgfTtcbiAgfVxuXG4gIHNldCByb3V0ZXMoY2FuZGlkYXRlKSB7XG4gICAgaWYgKGNhbmRpZGF0ZSkge1xuICAgICAgUHJvbWlzZS5yZXNvbHZlKGNhbmRpZGF0ZSkudGhlbigoY2FuZGlkYXRlcykgPT4ge1xuICAgICAgICBpZiAoY2FuZGlkYXRlcykge1xuICAgICAgICAgIFByb21pc2UuYWxsKGNhbmRpZGF0ZXMpLnRoZW4oKGZ1dHVyZVJvdXRlcykgPT4ge1xuICAgICAgICAgICAgaWYgKCFpc1NhbWVSb3V0ZXModGhpcy5fcm91dGVzLCBmdXR1cmVSb3V0ZXMpKSB7XG4gICAgICAgICAgICAgIHRoaXMuX3JvdXRlcyA9IGZ1dHVyZVJvdXRlcztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLl9yb3V0ZXMgPSBbXTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX3JvdXRlcyA9IFtdO1xuICAgIH1cbiAgfVxuXG4gIG9uUmVzaXplKHsgd2lkdGggfSkge1xuICAgIGlmICh3aWR0aCA8PSAxMDI0KSB7XG4gICAgICB0aGlzLl9zbWFsbCA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX3NtYWxsID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyKCkge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cIiR7Y2xhc3NNYXAoeyAnaGFzLWhlYWRlcic6IHRoaXMuX2hhc0hlYWRlciB9KX1cIj5cbiAgICAgICAgPHNsb3QgbmFtZT1cInRvcFwiPjwvc2xvdD5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm5hdi1jb250YWluZXJcIj5cbiAgICAgICAgICA8Z3YtbmF2IC5yb3V0ZXM9XCIke3RoaXMuX3JvdXRlc31cIiA/c21hbGw9XCIke3RoaXMuX3NtYWxsfVwiPjwvZ3YtbmF2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyaWdodFwiPjxzbG90IG5hbWU9XCJyaWdodC10cmFuc2l0aW9uXCI+PC9zbG90PjxzbG90IG5hbWU9XCJyaWdodFwiPjwvc2xvdD48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG5cbiAgdXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcykge1xuICAgIHN1cGVyLnVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXMpO1xuICAgIGxldCBfaGVhZGVyID0gZmFsc2U7XG4gICAgZm9yIChjb25zdCBub2RlIG9mIHRoaXMuY2hpbGROb2Rlcykge1xuICAgICAgaWYgKG5vZGUubm9kZVR5cGUgPT09IDEpIHtcbiAgICAgICAgY29uc3QgY2hpbGQgPSBub2RlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkgPT09ICdndi1oZWFkZXInID8gbm9kZSA6IG5vZGUucXVlcnlTZWxlY3RvcignZ3YtaGVhZGVyJyk7XG4gICAgICAgIGlmIChjaGlsZCkge1xuICAgICAgICAgIGNoaWxkLnN0aWNreSA9IHRoaXMuc3RpY2t5O1xuICAgICAgICAgIF9oZWFkZXIgPSB0cnVlO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuX2hhc0hlYWRlciA9IF9oZWFkZXI7XG4gIH1cbn1cblxud2luZG93LmN1c3RvbUVsZW1lbnRzLmRlZmluZSgnZ3YtbWVudScsIEd2TWVudSk7XG4iXX0=
@@ -13,7 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { css, html, LitElement } from 'lit-element';
16
+ import { css, html, LitElement } from 'lit';
17
17
  import { dispatchCustomEvent } from '../lib/events';
18
18
  /**
19
19
  * The newsletter subscription page
@@ -127,4 +127,4 @@ export class GvNewsletterSubscription extends LitElement {
127
127
 
128
128
  }
129
129
  window.customElements.define('gv-newsletter-subscription', GvNewsletterSubscription);
130
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL29yZ2FuaXNtcy9ndi1uZXdzbGV0dGVyLXN1YnNjcmlwdGlvbi5qcyJdLCJuYW1lcyI6WyJjc3MiLCJodG1sIiwiTGl0RWxlbWVudCIsImRpc3BhdGNoQ3VzdG9tRXZlbnQiLCJHdk5ld3NsZXR0ZXJTdWJzY3JpcHRpb24iLCJwcm9wZXJ0aWVzIiwidGl0bGUiLCJ0eXBlIiwiU3RyaW5nIiwiaGVhZGVyIiwicGxhY2Vob2xkZXIiLCJzdWJzY3JpYmVMYWJlbCIsImF0dHJpYnV0ZSIsInNraXBMYWJlbCIsInRhZ2xpbmVzIiwiQXJyYXkiLCJlbWFpbCIsImRpc2FibGVkIiwiQm9vbGVhbiIsImdpdGh1YlVybCIsInR3aXR0ZXJVcmwiLCJsaW5rZWRpblVybCIsIl9pbnZhbGlkIiwic3R5bGVzIiwiY29uc3RydWN0b3IiLCJyZW5kZXIiLCJfb25TdWJzY3JpYmUiLCJfb25JbnB1dENoYW5nZSIsImxlbmd0aCIsIm1hcCIsIml0ZW0iLCJpIiwiYXJyIiwiX29uU2tpcCIsIl9uYXZpZ2F0ZVNvY2lhbCIsImJpbmQiLCJ1cmwiLCJ3aW5kb3ciLCJvcGVuIiwiZSIsInRhcmdldCIsImludmFsaWQiLCJkZXRhaWwiLCJjdXN0b21FbGVtZW50cyIsImRlZmluZSJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBU0EsR0FBVCxFQUFjQyxJQUFkLEVBQW9CQyxVQUFwQixRQUFzQyxhQUF0QztBQUNBLFNBQVNDLG1CQUFULFFBQW9DLGVBQXBDO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBQ0EsT0FBTyxNQUFNQyx3QkFBTixTQUF1Q0YsVUFBdkMs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NSBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7IGNzcywgaHRtbCwgTGl0RWxlbWVudCB9IGZyb20gJ2xpdC1lbGVtZW50JztcbmltcG9ydCB7IGRpc3BhdGNoQ3VzdG9tRXZlbnQgfSBmcm9tICcuLi9saWIvZXZlbnRzJztcblxuLyoqXG4gKiBUaGUgbmV3c2xldHRlciBzdWJzY3JpcHRpb24gcGFnZVxuICpcbiAqIEBmaXJlcyBndi1uZXdzbGV0dGVyLXN1YnNjcmlwdGlvbjpzdWJzY3JpYmUgLSBDdXN0b20gZXZlbnQgd2hlbiBsaW5rIGNsaWNrXG4gKiBAZmlyZXMgZ3YtbmV3c2xldHRlci1zdWJzY3JpcHRpb246c2tpcCAtIEN1c3RvbSBldmVudCB3aGVuIGxpbmsgY2xpY2tcbiAqXG4gKiBAYXR0ciB7U3RyaW5nfSB0aXRsZSAtIFRoZSB0aXRsZSBvZiBuZXdzbGV0dGVyIHN1YnNjcmlwdGlvbiBjb250YWluZXJcbiAqIEBhdHRyIHtTdHJpbmd9IGhlYWRlciAtIFRoZSBoZWFkZXIgb2YgbmV3c2xldHRlciBzdWJzY3JpcHRpb24gY29udGFpbmVyXG4gKiBAYXR0ciB7U3RyaW5nfSBwbGFjZWhvbGRlciAtIFRoZSBwbGFjZWhvbGRlciB1c2VkIGZvciB0aGUgZW1haWwgaW5wdXRcbiAqIEBhdHRyIHtTdHJpbmd9IHN1YnNjcmliZUxhYmVsIC0gVGhlIHRleHQgb2YgdGhlIHN1YnNjcmliZSBidXR0b25cbiAqIEBhdHRyIHtTdHJpbmd9IHNraXBMYWJlbCAtIFRoZSB0ZXh0IG9mIHRoZSBza2lwIGJ1dHRvblxuICogQGF0dHIge0FycmF5fSB0YWdsaW5lcyAtIFRoZSB0YWdsaW5lcyB0byBwcm9tb3RlIHRoZSBuZXdzbGV0dGVyIHN1YnNjcmlwdGlvblxuICogQGF0dHIge1N0cmluZ30gZW1haWwgLSBUaGUgZW1haWwgdmFsdWVcbiAqIEBhdHRyIHtCb29sZWFufSBkaXNhYmxlZCAtIFRoZSBkaXNhYmxlZCBzdGF0ZSBvZiBlbWFpbCBpbnB1dFxuICogQGF0dHIge1N0cmluZ30gZ2l0aHViVXJsIC0gVGhlIHVybCB0byBnaXRodWIgcGFnZVxuICogQGF0dHIge1N0cmluZ30gdHdpdHRlclVybCAtIFRoZSB1cmwgdG8gdHdpdHRlciBwYWdlXG4gKiBAYXR0ciB7U3RyaW5nfSBsaW5rZWRpblVybCAtIFRoZSB1cmwgdG8gbGlua2VkaW4gcGFnZVxuICpcbiAqL1xuZXhwb3J0IGNsYXNzIEd2TmV3c2xldHRlclN1YnNjcmlwdGlvbiBleHRlbmRzIExpdEVsZW1lbnQge1xuICBzdGF0aWMgZ2V0IHByb3BlcnRpZXMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRpdGxlOiB7IHR5cGU6IFN0cmluZyB9LFxuICAgICAgaGVhZGVyOiB7IHR5cGU6IFN0cmluZyB9LFxuICAgICAgcGxhY2Vob2xkZXI6IHsgdHlwZTogU3RyaW5nIH0sXG4gICAgICBzdWJzY3JpYmVMYWJlbDogeyB0eXBlOiBTdHJpbmcsIGF0dHJpYnV0ZTogJ3N1YnNjcmliZS1sYWJlbCcgfSxcbiAgICAgIHNraXBMYWJlbDogeyB0eXBlOiBTdHJpbmcsIGF0dHJpYnV0ZTogJ3NraXAtbGFiZWwnIH0sXG4gICAgICB0YWdsaW5lczogeyB0eXBlOiBBcnJheSB9LFxuICAgICAgZW1haWw6IHsgdHlwZTogU3RyaW5nIH0sXG4gICAgICBkaXNhYmxlZDogeyB0eXBlOiBCb29sZWFuIH0sXG4gICAgICBnaXRodWJVcmw6IHsgdHlwZTogU3RyaW5nLCBhdHRyaWJ1dGU6ICdnaXRodWItdXJsJyB9LFxuICAgICAgdHdpdHRlclVybDogeyB0eXBlOiBTdHJpbmcsIGF0dHJpYnV0ZTogJ3R3aXR0ZXItdXJsJyB9LFxuICAgICAgbGlua2VkaW5Vcmw6IHsgdHlwZTogU3RyaW5nLCBhdHRyaWJ1dGU6ICdsaW5rZWRpbi11cmwnIH0sXG4gICAgICBfaW52YWxpZDogeyB0eXBlOiBCb29sZWFuLCBhdHRyaWJ1dGU6IGZhbHNlIH0sXG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBnZXQgc3R5bGVzKCkge1xuICAgIHJldHVybiBbXG4gICAgICAvLyBsYW5ndWFnZT1jc3NcbiAgICAgIGNzc2BcbiAgICAgICAgOmhvc3Qge1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgbWFyZ2luOiAwLjJyZW07XG4gICAgICAgIH1cblxuICAgICAgICAubmV3c2xldHRlci1jb250YWluZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICBtYXgtd2lkdGg6IDY4MHB4O1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDVweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMjQpO1xuICAgICAgICAgIHBhZGRpbmc6IDI1cHggMjBweCA1cHggMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uZXdzbGV0dGVyX19oZWFkZXIge1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZm9udC1zdHlsZTogb2JsaXF1ZTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIHBhZGRpbmc6IDVweCAzNXB4O1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLWxpZ2h0ZXN0LCAjZmZmZmZmKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ndi10aGVtZS1jb2xvci1saWdodCwgIzg2YzNkMCk7XG4gICAgICAgIH1cblxuICAgICAgICAubmV3c2xldHRlcl9fdGl0bGUge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWd2LXRoZW1lLWNvbG9yLWxpZ2h0LCAjODZjM2QwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uZXdzbGV0dGVyX190aXRsZS1oaWdobGlnaHQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uZXdzbGV0dGVyX19lbWFpbCB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIH1cblxuICAgICAgICAubmV3c2xldHRlcl9fdGFnbGluZXMge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgaGVpZ2h0OiAyMCU7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWd2LXRoZW1lLWNvbG9yLWRhcmtlciwgIzM4M2UzZik7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHZhcigtLWd2LXRoZW1lLWNvbG9yLWRhcmtlciwgIzM4M2UzZik7XG4gICAgICAgIH1cblxuICAgICAgICAubmV3c2xldHRlcl9fdGFnbGluZSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICAgIGJvcmRlci1yaWdodDogc29saWQgMXB4IHZhcigtLWd2LXRoZW1lLWNvbG9yLWRhcmtlciwgIzM4M2UzZik7XG4gICAgICAgIH1cblxuICAgICAgICAubmV3c2xldHRlcl9fdGFnbGluZS5sYXN0IHtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAubmV3c2xldHRlcl9fdGFnbGluZS10ZXh0IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uZXdzbGV0dGVyX19za2lwIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIH1cblxuICAgICAgICAuc29jaWFsLWxpbmsge1xuICAgICAgICAgIC0tZ3YtaWNvbi0tYzogdmFyKC0tZ3YtdGhlbWUtY29sb3ItbGlnaHQsICM4NmMzZDApO1xuICAgICAgICAgIC0tZ3YtaWNvbi0tczogMzJweDtcbiAgICAgICAgfVxuICAgICAgYCxcbiAgICBdO1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmhlYWRlciA9ICdDdXN0b21lcnMgcHJvY2VzcyBvdmVyIDEgYmlsbGlvbiByZXF1ZXN0cyB0aHJvdWdoIHRoZSBncmF2aXRlZS5pbyBnYXRld2F5IGluIGp1c3Qgb25lIHdlZWsnO1xuICAgIHRoaXMudGl0bGUgPSAnQ29tbXVuaXR5IG9mIGFwaSBtYXN0ZXJzJztcbiAgICB0aGlzLnBsYWNlaG9sZGVyID0gJ0VudGVyIHlvdXIgZW1haWwnO1xuICAgIHRoaXMuc3Vic2NyaWJlTGFiZWwgPSAnQmVjb21lIGFuIEFQSSBtYXN0ZXIgbm93JztcbiAgICB0aGlzLnRhZ2xpbmVzID0gWydOZXcgcmVsZWFzZSBtb250aGx5IHVwZGF0ZXMnLCAnRnJlZSB0cmlhbCBvZiBHcmF2aXRlZS5JTyBlbnRlcnByaXNlJywgJ1NoYXJlIHlvdXIgZXhwZXJpZW5jZXMgd2l0aCBvdGhlciBtZW1iZXJzJ107XG4gICAgdGhpcy5za2lwTGFiZWwgPSAnU2tpcCc7XG4gICAgdGhpcy5lbWFpbCA9ICcnO1xuICAgIHRoaXMuZGlzYWJsZWQgPSBmYWxzZTtcbiAgICB0aGlzLl9pbnZhbGlkID0gdHJ1ZTtcbiAgICB0aGlzLmdpdGh1YlVybCA9ICdodHRwczovL2dpdGh1Yi5jb20vZ3Jhdml0ZWUtaW8nO1xuICAgIHRoaXMudHdpdHRlclVybCA9ICdodHRwczovL3R3aXR0ZXIuY29tL0dyYXZpdGVlSU8nO1xuICAgIHRoaXMubGlua2VkaW5VcmwgPSAnaHR0cHM6Ly93d3cubGlua2VkaW4uY29tL2NvbXBhbnkvZ3Jhdml0ZWUtaW8vJztcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgICAgPGRpdiBjbGFzcz1cIm5ld3NsZXR0ZXItY29udGFpbmVyXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm5ld3NsZXR0ZXJfX2hlYWRlclwiPlxuICAgICAgICAgICAgJHt0aGlzLmhlYWRlcn1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibmV3c2xldHRlcl9fdGl0bGVcIj5cbiAgICAgICAgICAgIDxzcGFuPkpvaW4gdGhlPC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJuZXdzbGV0dGVyX190aXRsZS1oaWdobGlnaHRcIj4ke3RoaXMudGl0bGV9PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4+VG9kYXk8L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm5ld3NsZXR0ZXJfX2VtYWlsXCI+XG4gICAgICAgICAgICA8Z3YtaW5wdXRcbiAgICAgICAgICAgICAgaWQ9XCJlbWFpbFwiXG4gICAgICAgICAgICAgIG5hbWU9XCJlbWFpbFwiXG4gICAgICAgICAgICAgIEBndi1pbnB1dDpzdWJtaXQ9XCIke3RoaXMuX29uU3Vic2NyaWJlfVwiXG4gICAgICAgICAgICAgIEBndi1pbnB1dDppbnB1dD1cIiR7dGhpcy5fb25JbnB1dENoYW5nZX1cIlxuICAgICAgICAgICAgICB0eXBlPVwiZW1haWxcIlxuICAgICAgICAgICAgICByZXF1aXJlZFxuICAgICAgICAgICAgICAudmFsdWU9XCIke3RoaXMuZW1haWx9XCJcbiAgICAgICAgICAgICAgLmRpc2FibGVkPSR7dGhpcy5kaXNhYmxlZH1cbiAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCIke3RoaXMucGxhY2Vob2xkZXJ9XCJcbiAgICAgICAgICAgID48L2d2LWlucHV0PlxuICAgICAgICAgICAgPGd2LWJ1dHRvbiBAY2xpY2s9XCIke3RoaXMuX29uU3Vic2NyaWJlfVwiXG4gICAgICAgICAgICAgICAgICAgICAgIGlkPVwiZW1haWwtc3VibWl0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgcHJvdmlkZXI9XCJncmF2aXRlZWlvX2FtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgaWNvbi1yaWdodD1cIm5hdmlnYXRpb246YW5nbGUtcmlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAuZGlzYWJsZWQ9JHshdGhpcy5kaXNhYmxlZCAmJiB0aGlzLl9pbnZhbGlkfT5cbiAgICAgICAgICAgICAgJHt0aGlzLnN1YnNjcmliZUxhYmVsfVxuICAgICAgICAgICAgPC9ndi1idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgJHtcbiAgICAgICAgICAgIHRoaXMudGFnbGluZXMubGVuZ3RoID4gMFxuICAgICAgICAgICAgICA/IGh0bWxgIDxkaXYgY2xhc3M9XCJuZXdzbGV0dGVyX190YWdsaW5lc1wiPlxuICAgICAgICAgICAgICAgICAgJHt0aGlzLnRhZ2xpbmVzLm1hcChcbiAgICAgICAgICAgICAgICAgICAgKGl0ZW0sIGksIGFycikgPT4gaHRtbGBcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmV3c2xldHRlcl9fdGFnbGluZSAke2kgPT09IGFyci5sZW5ndGggLSAxID8gJ2xhc3QnIDogJyd9XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmV3c2xldHRlcl9fdGFnbGluZS10ZXh0XCI+JHtpdGVtfTwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICBgLFxuICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5gXG4gICAgICAgICAgICAgIDogJydcbiAgICAgICAgICB9XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm5ld3NsZXR0ZXJfX3NraXBcIj5cbiAgICAgICAgICAgIDxndi1idXR0b24gQGNsaWNrPVwiJHt0aGlzLl9vblNraXB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgcHJvdmlkZXI9XCJncmF2aXRlZWlvX2FtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgaWNvbi1yaWdodD1cIm5hdmlnYXRpb246YW5nbGUtcmlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAgICBzbWFsbFxuICAgICAgICAgICAgICAgICAgICAgICBvdXRsaW5lZD5cbiAgICAgICAgICAgICAgJHt0aGlzLnNraXBMYWJlbH1cbiAgICAgICAgICAgIDwvZ3YtYnV0dG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzb2NpYWxcIj5cbiAgICAgICAgICAgIDxndi1idXR0b24gY2xhc3M9XCJzb2NpYWwtbGlua1wiXG4gICAgICAgICAgICAgICAgICAgICAgIGxpbmtcbiAgICAgICAgICAgICAgICAgICAgICAgaWNvbj1cInRoaXJkcGFydHk6Z2l0aHViXCJcbiAgICAgICAgICAgICAgICAgICAgICAgLmhyZWY9XCIke3RoaXMuZ2l0aHViVXJsfVwiXG4gICAgICAgICAgICAgICAgICAgICAgIEBndi1idXR0b246Y2xpY2s9XCIke3RoaXMuX25hdmlnYXRlU29jaWFsLmJpbmQodGhpcywgdGhpcy5naXRodWJVcmwpfVwiPlxuICAgICAgICAgICAgPC9ndi1idXR0b24+XG4gICAgICAgICAgICA8Z3YtYnV0dG9uIGNsYXNzPVwic29jaWFsLWxpbmtcIlxuICAgICAgICAgICAgICAgICAgICAgICBsaW5rIGljb249XCJ0aGlyZHBhcnR5OnR3aXR0ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAuaHJlZj1cIiR7dGhpcy50d2l0dGVyVXJsfVwiXG4gICAgICAgICAgICAgICAgICAgICAgIEBndi1idXR0b246Y2xpY2s9XCIke3RoaXMuX25hdmlnYXRlU29jaWFsLmJpbmQodGhpcywgdGhpcy50d2l0dGVyVXJsKX1cIj5cbiAgICAgICAgICAgIDwvZ3YtYnV0dG9uPlxuICAgICAgICAgICAgPGd2LWJ1dHRvbiBjbGFzcz1cInNvY2lhbC1saW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgbGlua1xuICAgICAgICAgICAgICAgICAgICAgICBpY29uPVwidGhpcmRwYXJ0eTpsaW5rZWRpblwiXG4gICAgICAgICAgICAgICAgICAgICAgIC5ocmVmPVwiJHt0aGlzLmxpbmtlZGluVXJsfVwiXG4gICAgICAgICAgICAgICAgICAgICAgIEBndi1idXR0b246Y2xpY2s9XCIke3RoaXMuX25hdmlnYXRlU29jaWFsLmJpbmQodGhpcywgdGhpcy5saW5rZWRpblVybCl9XCI+XG4gICAgICAgICAgICA8L2d2LWJ1dHRvbj5cbiAgICAgICAgICAgIDwvZ3YtbGluaz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxuXG4gIF9vblN1YnNjcmliZSgpIHtcbiAgICBkaXNwYXRjaEN1c3RvbUV2ZW50KHRoaXMsICdzdWJzY3JpYmUnLCB0aGlzLmVtYWlsKTtcbiAgfVxuXG4gIF9vblNraXAoKSB7XG4gICAgZGlzcGF0Y2hDdXN0b21FdmVudCh0aGlzLCAnc2tpcCcpO1xuICB9XG5cbiAgX25hdmlnYXRlU29jaWFsKHVybCkge1xuICAgIHdpbmRvdy5vcGVuKHVybCwgJ19ibGFuaycpO1xuICB9XG5cbiAgX29uSW5wdXRDaGFuZ2UoZSkge1xuICAgIHRoaXMuX2ludmFsaWQgPSBlLnRhcmdldC5pbnZhbGlkO1xuICAgIHRoaXMuZW1haWwgPSBlLmRldGFpbDtcbiAgfVxufVxuXG53aW5kb3cuY3VzdG9tRWxlbWVudHMuZGVmaW5lKCdndi1uZXdzbGV0dGVyLXN1YnNjcmlwdGlvbicsIEd2TmV3c2xldHRlclN1YnNjcmlwdGlvbik7XG4iXX0=
130
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL29yZ2FuaXNtcy9ndi1uZXdzbGV0dGVyLXN1YnNjcmlwdGlvbi5qcyJdLCJuYW1lcyI6WyJjc3MiLCJodG1sIiwiTGl0RWxlbWVudCIsImRpc3BhdGNoQ3VzdG9tRXZlbnQiLCJHdk5ld3NsZXR0ZXJTdWJzY3JpcHRpb24iLCJwcm9wZXJ0aWVzIiwidGl0bGUiLCJ0eXBlIiwiU3RyaW5nIiwiaGVhZGVyIiwicGxhY2Vob2xkZXIiLCJzdWJzY3JpYmVMYWJlbCIsImF0dHJpYnV0ZSIsInNraXBMYWJlbCIsInRhZ2xpbmVzIiwiQXJyYXkiLCJlbWFpbCIsImRpc2FibGVkIiwiQm9vbGVhbiIsImdpdGh1YlVybCIsInR3aXR0ZXJVcmwiLCJsaW5rZWRpblVybCIsIl9pbnZhbGlkIiwic3R5bGVzIiwiY29uc3RydWN0b3IiLCJyZW5kZXIiLCJfb25TdWJzY3JpYmUiLCJfb25JbnB1dENoYW5nZSIsImxlbmd0aCIsIm1hcCIsIml0ZW0iLCJpIiwiYXJyIiwiX29uU2tpcCIsIl9uYXZpZ2F0ZVNvY2lhbCIsImJpbmQiLCJ1cmwiLCJ3aW5kb3ciLCJvcGVuIiwiZSIsInRhcmdldCIsImludmFsaWQiLCJkZXRhaWwiLCJjdXN0b21FbGVtZW50cyIsImRlZmluZSJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBU0EsR0FBVCxFQUFjQyxJQUFkLEVBQW9CQyxVQUFwQixRQUFzQyxLQUF0QztBQUNBLFNBQVNDLG1CQUFULFFBQW9DLGVBQXBDO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBQ0EsT0FBTyxNQUFNQyx3QkFBTixTQUF1Q0YsVUFBdkMsQ0FBa0Q7QUFDbEMsYUFBVkcsVUFBVSxHQUFHO0FBQ3RCLFdBQU87QUFDTEMsTUFBQUEsS0FBSyxFQUFFO0FBQUVDLFFBQUFBLElBQUksRUFBRUM7QUFBUixPQURGO0FBRUxDLE1BQUFBLE1BQU0sRUFBRTtBQUFFRixRQUFBQSxJQUFJLEVBQUVDO0FBQVIsT0FGSDtBQUdMRSxNQUFBQSxXQUFXLEVBQUU7QUFBRUgsUUFBQUEsSUFBSSxFQUFFQztBQUFSLE9BSFI7QUFJTEcsTUFBQUEsY0FBYyxFQUFFO0FBQUVKLFFBQUFBLElBQUksRUFBRUMsTUFBUjtBQUFnQkksUUFBQUEsU0FBUyxFQUFFO0FBQTNCLE9BSlg7QUFLTEMsTUFBQUEsU0FBUyxFQUFFO0FBQUVOLFFBQUFBLElBQUksRUFBRUMsTUFBUjtBQUFnQkksUUFBQUEsU0FBUyxFQUFFO0FBQTNCLE9BTE47QUFNTEUsTUFBQUEsUUFBUSxFQUFFO0FBQUVQLFFBQUFBLElBQUksRUFBRVE7QUFBUixPQU5MO0FBT0xDLE1BQUFBLEtBQUssRUFBRTtBQUFFVCxRQUFBQSxJQUFJLEVBQUVDO0FBQVIsT0FQRjtBQVFMUyxNQUFBQSxRQUFRLEVBQUU7QUFBRVYsUUFBQUEsSUFBSSxFQUFFVztBQUFSLE9BUkw7QUFTTEMsTUFBQUEsU0FBUyxFQUFFO0FBQUVaLFFBQUFBLElBQUksRUFBRUMsTUFBUjtBQUFnQkksUUFBQUEsU0FBUyxFQUFFO0FBQTNCLE9BVE47QUFVTFEsTUFBQUEsVUFBVSxFQUFFO0FBQUViLFFBQUFBLElBQUksRUFBRUMsTUFBUjtBQUFnQkksUUFBQUEsU0FBUyxFQUFFO0FBQTNCLE9BVlA7QUFXTFMsTUFBQUEsV0FBVyxFQUFFO0FBQUVkLFFBQUFBLElBQUksRUFBRUMsTUFBUjtBQUFnQkksUUFBQUEsU0FBUyxFQUFFO0FBQTNCLE9BWFI7QUFZTFUsTUFBQUEsUUFBUSxFQUFFO0FBQUVmLFFBQUFBLElBQUksRUFBRVcsT0FBUjtBQUFpQk4sUUFBQUEsU0FBUyxFQUFFO0FBQTVCO0FBWkwsS0FBUDtBQWNEOztBQUVnQixhQUFOVyxNQUFNLEdBQUc7QUFDbEIsV0FBTyxDQUNMO0FBQ0F2QixJQUFBQSxHQUFHLDBoREFGRSxDQUFQO0FBcUdEOztBQUVEd0IsRUFBQUEsV0FBVyxHQUFHO0FBQ1o7QUFDQSxTQUFLZixNQUFMLEdBQWMsNEZBQWQ7QUFDQSxTQUFLSCxLQUFMLEdBQWEsMEJBQWI7QUFDQSxTQUFLSSxXQUFMLEdBQW1CLGtCQUFuQjtBQUNBLFNBQUtDLGNBQUwsR0FBc0IsMEJBQXRCO0FBQ0EsU0FBS0csUUFBTCxHQUFnQixDQUFDLDZCQUFELEVBQWdDLHNDQUFoQyxFQUF3RSwyQ0FBeEUsQ0FBaEI7QUFDQSxTQUFLRCxTQUFMLEdBQWlCLE1BQWpCO0FBQ0EsU0FBS0csS0FBTCxHQUFhLEVBQWI7QUFDQSxTQUFLQyxRQUFMLEdBQWdCLEtBQWhCO0FBQ0EsU0FBS0ssUUFBTCxHQUFnQixJQUFoQjtBQUNBLFNBQUtILFNBQUwsR0FBaUIsZ0NBQWpCO0FBQ0EsU0FBS0MsVUFBTCxHQUFrQixnQ0FBbEI7QUFDQSxTQUFLQyxXQUFMLEdBQW1CLCtDQUFuQjtBQUNEOztBQUVESSxFQUFBQSxNQUFNLEdBQUc7QUFDUCxXQUFPeEIsSUFBSSx3RUFHRCxLQUFLUSxNQUhKLDJHQU95QyxLQUFLSCxLQVA5Qyx5SEFjbUIsS0FBS29CLFlBZHhCLHNCQWVrQixLQUFLQyxjQWZ2QixtQ0FrQlMsS0FBS1gsS0FsQmQsZ0JBbUJXLEtBQUtDLFFBbkJoQixrQkFvQmMsS0FBS1AsV0FwQm5CLG9DQXNCa0IsS0FBS2dCLFlBdEJ2QiwrRkEwQm9CLENBQUMsS0FBS1QsUUFBTixJQUFrQixLQUFLSyxRQTFCM0MsTUEyQkMsS0FBS1gsY0EzQk4sd0JBK0JILEtBQUtHLFFBQUwsQ0FBY2MsTUFBZCxHQUF1QixDQUF2QixHQUNJM0IsSUFBSSx1Q0FDQSxLQUFLYSxRQUFMLENBQWNlLEdBQWQsQ0FDQSxDQUFDQyxJQUFELEVBQU9DLENBQVAsRUFBVUMsR0FBVixLQUFrQi9CLElBQUksb0NBQ2M4QixDQUFDLEtBQUtDLEdBQUcsQ0FBQ0osTUFBSixHQUFhLENBQW5CLEdBQXVCLE1BQXZCLEdBQWdDLEVBRDlDLDRDQUVzQkUsSUFGdEIsZ0JBRHRCLENBREEsU0FEUixHQVVJLEVBekNELHNEQTRDa0IsS0FBS0csT0E1Q3ZCLGtGQWlEQyxLQUFLcEIsU0FqRE4saUhBd0RpQixLQUFLTSxTQXhEdEIsdUJBeUQ0QixLQUFLZSxlQUFMLENBQXFCQyxJQUFyQixDQUEwQixJQUExQixFQUFnQyxLQUFLaEIsU0FBckMsQ0F6RDVCLHdGQTZEaUIsS0FBS0MsVUE3RHRCLHVCQThENEIsS0FBS2MsZUFBTCxDQUFxQkMsSUFBckIsQ0FBMEIsSUFBMUIsRUFBZ0MsS0FBS2YsVUFBckMsQ0E5RDVCLHlGQW1FaUIsS0FBS0MsV0FuRXRCLHVCQW9FNEIsS0FBS2EsZUFBTCxDQUFxQkMsSUFBckIsQ0FBMEIsSUFBMUIsRUFBZ0MsS0FBS2QsV0FBckMsQ0FwRTVCLGlDQUFYO0FBMEVEOztBQUVESyxFQUFBQSxZQUFZLEdBQUc7QUFDYnZCLElBQUFBLG1CQUFtQixDQUFDLElBQUQsRUFBTyxXQUFQLEVBQW9CLEtBQUthLEtBQXpCLENBQW5CO0FBQ0Q7O0FBRURpQixFQUFBQSxPQUFPLEdBQUc7QUFDUjlCLElBQUFBLG1CQUFtQixDQUFDLElBQUQsRUFBTyxNQUFQLENBQW5CO0FBQ0Q7O0FBRUQrQixFQUFBQSxlQUFlLENBQUNFLEdBQUQsRUFBTTtBQUNuQkMsSUFBQUEsTUFBTSxDQUFDQyxJQUFQLENBQVlGLEdBQVosRUFBaUIsUUFBakI7QUFDRDs7QUFFRFQsRUFBQUEsY0FBYyxDQUFDWSxDQUFELEVBQUk7QUFDaEIsU0FBS2pCLFFBQUwsR0FBZ0JpQixDQUFDLENBQUNDLE1BQUYsQ0FBU0MsT0FBekI7QUFDQSxTQUFLekIsS0FBTCxHQUFhdUIsQ0FBQyxDQUFDRyxNQUFmO0FBQ0Q7O0FBdE9zRDtBQXlPekRMLE1BQU0sQ0FBQ00sY0FBUCxDQUFzQkMsTUFBdEIsQ0FBNkIsNEJBQTdCLEVBQTJEeEMsd0JBQTNEIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7IGNzcywgaHRtbCwgTGl0RWxlbWVudCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBkaXNwYXRjaEN1c3RvbUV2ZW50IH0gZnJvbSAnLi4vbGliL2V2ZW50cyc7XG5cbi8qKlxuICogVGhlIG5ld3NsZXR0ZXIgc3Vic2NyaXB0aW9uIHBhZ2VcbiAqXG4gKiBAZmlyZXMgZ3YtbmV3c2xldHRlci1zdWJzY3JpcHRpb246c3Vic2NyaWJlIC0gQ3VzdG9tIGV2ZW50IHdoZW4gbGluayBjbGlja1xuICogQGZpcmVzIGd2LW5ld3NsZXR0ZXItc3Vic2NyaXB0aW9uOnNraXAgLSBDdXN0b20gZXZlbnQgd2hlbiBsaW5rIGNsaWNrXG4gKlxuICogQGF0dHIge1N0cmluZ30gdGl0bGUgLSBUaGUgdGl0bGUgb2YgbmV3c2xldHRlciBzdWJzY3JpcHRpb24gY29udGFpbmVyXG4gKiBAYXR0ciB7U3RyaW5nfSBoZWFkZXIgLSBUaGUgaGVhZGVyIG9mIG5ld3NsZXR0ZXIgc3Vic2NyaXB0aW9uIGNvbnRhaW5lclxuICogQGF0dHIge1N0cmluZ30gcGxhY2Vob2xkZXIgLSBUaGUgcGxhY2Vob2xkZXIgdXNlZCBmb3IgdGhlIGVtYWlsIGlucHV0XG4gKiBAYXR0ciB7U3RyaW5nfSBzdWJzY3JpYmVMYWJlbCAtIFRoZSB0ZXh0IG9mIHRoZSBzdWJzY3JpYmUgYnV0dG9uXG4gKiBAYXR0ciB7U3RyaW5nfSBza2lwTGFiZWwgLSBUaGUgdGV4dCBvZiB0aGUgc2tpcCBidXR0b25cbiAqIEBhdHRyIHtBcnJheX0gdGFnbGluZXMgLSBUaGUgdGFnbGluZXMgdG8gcHJvbW90ZSB0aGUgbmV3c2xldHRlciBzdWJzY3JpcHRpb25cbiAqIEBhdHRyIHtTdHJpbmd9IGVtYWlsIC0gVGhlIGVtYWlsIHZhbHVlXG4gKiBAYXR0ciB7Qm9vbGVhbn0gZGlzYWJsZWQgLSBUaGUgZGlzYWJsZWQgc3RhdGUgb2YgZW1haWwgaW5wdXRcbiAqIEBhdHRyIHtTdHJpbmd9IGdpdGh1YlVybCAtIFRoZSB1cmwgdG8gZ2l0aHViIHBhZ2VcbiAqIEBhdHRyIHtTdHJpbmd9IHR3aXR0ZXJVcmwgLSBUaGUgdXJsIHRvIHR3aXR0ZXIgcGFnZVxuICogQGF0dHIge1N0cmluZ30gbGlua2VkaW5VcmwgLSBUaGUgdXJsIHRvIGxpbmtlZGluIHBhZ2VcbiAqXG4gKi9cbmV4cG9ydCBjbGFzcyBHdk5ld3NsZXR0ZXJTdWJzY3JpcHRpb24gZXh0ZW5kcyBMaXRFbGVtZW50IHtcbiAgc3RhdGljIGdldCBwcm9wZXJ0aWVzKCkge1xuICAgIHJldHVybiB7XG4gICAgICB0aXRsZTogeyB0eXBlOiBTdHJpbmcgfSxcbiAgICAgIGhlYWRlcjogeyB0eXBlOiBTdHJpbmcgfSxcbiAgICAgIHBsYWNlaG9sZGVyOiB7IHR5cGU6IFN0cmluZyB9LFxuICAgICAgc3Vic2NyaWJlTGFiZWw6IHsgdHlwZTogU3RyaW5nLCBhdHRyaWJ1dGU6ICdzdWJzY3JpYmUtbGFiZWwnIH0sXG4gICAgICBza2lwTGFiZWw6IHsgdHlwZTogU3RyaW5nLCBhdHRyaWJ1dGU6ICdza2lwLWxhYmVsJyB9LFxuICAgICAgdGFnbGluZXM6IHsgdHlwZTogQXJyYXkgfSxcbiAgICAgIGVtYWlsOiB7IHR5cGU6IFN0cmluZyB9LFxuICAgICAgZGlzYWJsZWQ6IHsgdHlwZTogQm9vbGVhbiB9LFxuICAgICAgZ2l0aHViVXJsOiB7IHR5cGU6IFN0cmluZywgYXR0cmlidXRlOiAnZ2l0aHViLXVybCcgfSxcbiAgICAgIHR3aXR0ZXJVcmw6IHsgdHlwZTogU3RyaW5nLCBhdHRyaWJ1dGU6ICd0d2l0dGVyLXVybCcgfSxcbiAgICAgIGxpbmtlZGluVXJsOiB7IHR5cGU6IFN0cmluZywgYXR0cmlidXRlOiAnbGlua2VkaW4tdXJsJyB9LFxuICAgICAgX2ludmFsaWQ6IHsgdHlwZTogQm9vbGVhbiwgYXR0cmlidXRlOiBmYWxzZSB9LFxuICAgIH07XG4gIH1cblxuICBzdGF0aWMgZ2V0IHN0eWxlcygpIHtcbiAgICByZXR1cm4gW1xuICAgICAgLy8gbGFuZ3VhZ2U9Y3NzXG4gICAgICBjc3NgXG4gICAgICAgIDpob3N0IHtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIG1hcmdpbjogMC4ycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5ld3NsZXR0ZXItY29udGFpbmVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgbWF4LXdpZHRoOiA2ODBweDtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMjBweCAwIHJnYmEoMCwgMCwgMCwgMC4yKSwgMCA1cHggNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI0KTtcbiAgICAgICAgICBwYWRkaW5nOiAyNXB4IDIwcHggNXB4IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAubmV3c2xldHRlcl9faGVhZGVyIHtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGZvbnQtc3R5bGU6IG9ibGlxdWU7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICBwYWRkaW5nOiA1cHggMzVweDtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvci1saWdodGVzdCwgI2ZmZmZmZik7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3YtdGhlbWUtY29sb3ItbGlnaHQsICM4NmMzZDApO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5ld3NsZXR0ZXJfX3RpdGxlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1ndi10aGVtZS1jb2xvci1saWdodCwgIzg2YzNkMCk7XG4gICAgICAgIH1cblxuICAgICAgICAubmV3c2xldHRlcl9fdGl0bGUtaGlnaGxpZ2h0IHtcbiAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAubmV3c2xldHRlcl9fZW1haWwge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5ld3NsZXR0ZXJfX3RhZ2xpbmVzIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGhlaWdodDogMjAlO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1ndi10aGVtZS1jb2xvci1kYXJrZXIsICMzODNlM2YpO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCB2YXIoLS1ndi10aGVtZS1jb2xvci1kYXJrZXIsICMzODNlM2YpO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5ld3NsZXR0ZXJfX3RhZ2xpbmUge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IHNvbGlkIDFweCB2YXIoLS1ndi10aGVtZS1jb2xvci1kYXJrZXIsICMzODNlM2YpO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5ld3NsZXR0ZXJfX3RhZ2xpbmUubGFzdCB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5ld3NsZXR0ZXJfX3RhZ2xpbmUtdGV4dCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAubmV3c2xldHRlcl9fc2tpcCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zb2NpYWwge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbC1saW5rIHtcbiAgICAgICAgICAtLWd2LWljb24tLWM6IHZhcigtLWd2LXRoZW1lLWNvbG9yLWxpZ2h0LCAjODZjM2QwKTtcbiAgICAgICAgICAtLWd2LWljb24tLXM6IDMycHg7XG4gICAgICAgIH1cbiAgICAgIGAsXG4gICAgXTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5oZWFkZXIgPSAnQ3VzdG9tZXJzIHByb2Nlc3Mgb3ZlciAxIGJpbGxpb24gcmVxdWVzdHMgdGhyb3VnaCB0aGUgZ3Jhdml0ZWUuaW8gZ2F0ZXdheSBpbiBqdXN0IG9uZSB3ZWVrJztcbiAgICB0aGlzLnRpdGxlID0gJ0NvbW11bml0eSBvZiBhcGkgbWFzdGVycyc7XG4gICAgdGhpcy5wbGFjZWhvbGRlciA9ICdFbnRlciB5b3VyIGVtYWlsJztcbiAgICB0aGlzLnN1YnNjcmliZUxhYmVsID0gJ0JlY29tZSBhbiBBUEkgbWFzdGVyIG5vdyc7XG4gICAgdGhpcy50YWdsaW5lcyA9IFsnTmV3IHJlbGVhc2UgbW9udGhseSB1cGRhdGVzJywgJ0ZyZWUgdHJpYWwgb2YgR3Jhdml0ZWUuSU8gZW50ZXJwcmlzZScsICdTaGFyZSB5b3VyIGV4cGVyaWVuY2VzIHdpdGggb3RoZXIgbWVtYmVycyddO1xuICAgIHRoaXMuc2tpcExhYmVsID0gJ1NraXAnO1xuICAgIHRoaXMuZW1haWwgPSAnJztcbiAgICB0aGlzLmRpc2FibGVkID0gZmFsc2U7XG4gICAgdGhpcy5faW52YWxpZCA9IHRydWU7XG4gICAgdGhpcy5naXRodWJVcmwgPSAnaHR0cHM6Ly9naXRodWIuY29tL2dyYXZpdGVlLWlvJztcbiAgICB0aGlzLnR3aXR0ZXJVcmwgPSAnaHR0cHM6Ly90d2l0dGVyLmNvbS9HcmF2aXRlZUlPJztcbiAgICB0aGlzLmxpbmtlZGluVXJsID0gJ2h0dHBzOi8vd3d3LmxpbmtlZGluLmNvbS9jb21wYW55L2dyYXZpdGVlLWlvLyc7XG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICAgIDxkaXYgY2xhc3M9XCJuZXdzbGV0dGVyLWNvbnRhaW5lclwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJuZXdzbGV0dGVyX19oZWFkZXJcIj5cbiAgICAgICAgICAgICR7dGhpcy5oZWFkZXJ9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm5ld3NsZXR0ZXJfX3RpdGxlXCI+XG4gICAgICAgICAgICA8c3Bhbj5Kb2luIHRoZTwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibmV3c2xldHRlcl9fdGl0bGUtaGlnaGxpZ2h0XCI+JHt0aGlzLnRpdGxlfTwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuPlRvZGF5PC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJuZXdzbGV0dGVyX19lbWFpbFwiPlxuICAgICAgICAgICAgPGd2LWlucHV0XG4gICAgICAgICAgICAgIGlkPVwiZW1haWxcIlxuICAgICAgICAgICAgICBuYW1lPVwiZW1haWxcIlxuICAgICAgICAgICAgICBAZ3YtaW5wdXQ6c3VibWl0PVwiJHt0aGlzLl9vblN1YnNjcmliZX1cIlxuICAgICAgICAgICAgICBAZ3YtaW5wdXQ6aW5wdXQ9XCIke3RoaXMuX29uSW5wdXRDaGFuZ2V9XCJcbiAgICAgICAgICAgICAgdHlwZT1cImVtYWlsXCJcbiAgICAgICAgICAgICAgcmVxdWlyZWRcbiAgICAgICAgICAgICAgLnZhbHVlPVwiJHt0aGlzLmVtYWlsfVwiXG4gICAgICAgICAgICAgIC5kaXNhYmxlZD0ke3RoaXMuZGlzYWJsZWR9XG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiJHt0aGlzLnBsYWNlaG9sZGVyfVwiXG4gICAgICAgICAgICA+PC9ndi1pbnB1dD5cbiAgICAgICAgICAgIDxndi1idXR0b24gQGNsaWNrPVwiJHt0aGlzLl9vblN1YnNjcmliZX1cIlxuICAgICAgICAgICAgICAgICAgICAgICBpZD1cImVtYWlsLXN1Ym1pdFwiXG4gICAgICAgICAgICAgICAgICAgICAgIHByb3ZpZGVyPVwiZ3Jhdml0ZWVpb19hbVwiXG4gICAgICAgICAgICAgICAgICAgICAgIGljb24tcmlnaHQ9XCJuYXZpZ2F0aW9uOmFuZ2xlLXJpZ2h0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgLmRpc2FibGVkPSR7IXRoaXMuZGlzYWJsZWQgJiYgdGhpcy5faW52YWxpZH0+XG4gICAgICAgICAgICAgICR7dGhpcy5zdWJzY3JpYmVMYWJlbH1cbiAgICAgICAgICAgIDwvZ3YtYnV0dG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICR7XG4gICAgICAgICAgICB0aGlzLnRhZ2xpbmVzLmxlbmd0aCA+IDBcbiAgICAgICAgICAgICAgPyBodG1sYCA8ZGl2IGNsYXNzPVwibmV3c2xldHRlcl9fdGFnbGluZXNcIj5cbiAgICAgICAgICAgICAgICAgICR7dGhpcy50YWdsaW5lcy5tYXAoXG4gICAgICAgICAgICAgICAgICAgIChpdGVtLCBpLCBhcnIpID0+IGh0bWxgXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5ld3NsZXR0ZXJfX3RhZ2xpbmUgJHtpID09PSBhcnIubGVuZ3RoIC0gMSA/ICdsYXN0JyA6ICcnfVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5ld3NsZXR0ZXJfX3RhZ2xpbmUtdGV4dFwiPiR7aXRlbX08L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgYCxcbiAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgPC9kaXY+YFxuICAgICAgICAgICAgICA6ICcnXG4gICAgICAgICAgfVxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJuZXdzbGV0dGVyX19za2lwXCI+XG4gICAgICAgICAgICA8Z3YtYnV0dG9uIEBjbGljaz1cIiR7dGhpcy5fb25Ta2lwfVwiXG4gICAgICAgICAgICAgICAgICAgICAgIHByb3ZpZGVyPVwiZ3Jhdml0ZWVpb19hbVwiXG4gICAgICAgICAgICAgICAgICAgICAgIGljb24tcmlnaHQ9XCJuYXZpZ2F0aW9uOmFuZ2xlLXJpZ2h0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgc21hbGxcbiAgICAgICAgICAgICAgICAgICAgICAgb3V0bGluZWQ+XG4gICAgICAgICAgICAgICR7dGhpcy5za2lwTGFiZWx9XG4gICAgICAgICAgICA8L2d2LWJ1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic29jaWFsXCI+XG4gICAgICAgICAgICA8Z3YtYnV0dG9uIGNsYXNzPVwic29jaWFsLWxpbmtcIlxuICAgICAgICAgICAgICAgICAgICAgICBsaW5rXG4gICAgICAgICAgICAgICAgICAgICAgIGljb249XCJ0aGlyZHBhcnR5OmdpdGh1YlwiXG4gICAgICAgICAgICAgICAgICAgICAgIC5ocmVmPVwiJHt0aGlzLmdpdGh1YlVybH1cIlxuICAgICAgICAgICAgICAgICAgICAgICBAZ3YtYnV0dG9uOmNsaWNrPVwiJHt0aGlzLl9uYXZpZ2F0ZVNvY2lhbC5iaW5kKHRoaXMsIHRoaXMuZ2l0aHViVXJsKX1cIj5cbiAgICAgICAgICAgIDwvZ3YtYnV0dG9uPlxuICAgICAgICAgICAgPGd2LWJ1dHRvbiBjbGFzcz1cInNvY2lhbC1saW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgbGluayBpY29uPVwidGhpcmRwYXJ0eTp0d2l0dGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgLmhyZWY9XCIke3RoaXMudHdpdHRlclVybH1cIlxuICAgICAgICAgICAgICAgICAgICAgICBAZ3YtYnV0dG9uOmNsaWNrPVwiJHt0aGlzLl9uYXZpZ2F0ZVNvY2lhbC5iaW5kKHRoaXMsIHRoaXMudHdpdHRlclVybCl9XCI+XG4gICAgICAgICAgICA8L2d2LWJ1dHRvbj5cbiAgICAgICAgICAgIDxndi1idXR0b24gY2xhc3M9XCJzb2NpYWwtbGlua1wiXG4gICAgICAgICAgICAgICAgICAgICAgIGxpbmtcbiAgICAgICAgICAgICAgICAgICAgICAgaWNvbj1cInRoaXJkcGFydHk6bGlua2VkaW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAuaHJlZj1cIiR7dGhpcy5saW5rZWRpblVybH1cIlxuICAgICAgICAgICAgICAgICAgICAgICBAZ3YtYnV0dG9uOmNsaWNrPVwiJHt0aGlzLl9uYXZpZ2F0ZVNvY2lhbC5iaW5kKHRoaXMsIHRoaXMubGlua2VkaW5VcmwpfVwiPlxuICAgICAgICAgICAgPC9ndi1idXR0b24+XG4gICAgICAgICAgICA8L2d2LWxpbms+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cblxuICBfb25TdWJzY3JpYmUoKSB7XG4gICAgZGlzcGF0Y2hDdXN0b21FdmVudCh0aGlzLCAnc3Vic2NyaWJlJywgdGhpcy5lbWFpbCk7XG4gIH1cblxuICBfb25Ta2lwKCkge1xuICAgIGRpc3BhdGNoQ3VzdG9tRXZlbnQodGhpcywgJ3NraXAnKTtcbiAgfVxuXG4gIF9uYXZpZ2F0ZVNvY2lhbCh1cmwpIHtcbiAgICB3aW5kb3cub3Blbih1cmwsICdfYmxhbmsnKTtcbiAgfVxuXG4gIF9vbklucHV0Q2hhbmdlKGUpIHtcbiAgICB0aGlzLl9pbnZhbGlkID0gZS50YXJnZXQuaW52YWxpZDtcbiAgICB0aGlzLmVtYWlsID0gZS5kZXRhaWw7XG4gIH1cbn1cblxud2luZG93LmN1c3RvbUVsZW1lbnRzLmRlZmluZSgnZ3YtbmV3c2xldHRlci1zdWJzY3JpcHRpb24nLCBHdk5ld3NsZXR0ZXJTdWJzY3JpcHRpb24pO1xuIl19
@@ -13,7 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { LitElement, html, css } from 'lit-element';
16
+ import { LitElement, html, css } from 'lit';
17
17
  import { dispatchCustomEvent } from '../lib/events';
18
18
  import '../atoms/gv-button';
19
19
  import { i18n } from '../lib/i18n';
@@ -167,4 +167,4 @@ export class GvPagination extends LitElement {
167
167
 
168
168
  }
169
169
  window.customElements.define('gv-pagination', GvPagination);
170
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL29yZ2FuaXNtcy9ndi1wYWdpbmF0aW9uLmpzIl0sIm5hbWVzIjpbIkxpdEVsZW1lbnQiLCJodG1sIiwiY3NzIiwiZGlzcGF0Y2hDdXN0b21FdmVudCIsImkxOG4iLCJHdlBhZ2luYXRpb24iLCJwcm9wZXJ0aWVzIiwiZGF0YSIsInR5cGUiLCJPYmplY3QiLCJoaWRlRW1wdHkiLCJCb29sZWFuIiwiYXR0cmlidXRlIiwid2lkZ2V0IiwiZGlzYWJsZWQiLCJfZmlyc3QiLCJOdW1iZXIiLCJfbGFzdCIsIl9jdXJyZW50IiwiX3RvdGFsIiwic3R5bGVzIiwiY29uc3RydWN0b3IiLCJoYXNJbnB1dCIsIm1heCIsImNlbnRlciIsInNpemVzIiwibGlua3MiLCJsYXN0IiwicGFyc2VJbnQiLCJjdXJyZW50X3BhZ2UiLCJfcGFnZXMiLCJ0b3RhbF9wYWdlcyIsIl9nb1RvUGFnZSIsInBhZ2UiLCJfb25TdWJtaXQiLCJlIiwidGFyZ2V0IiwidmFsdWUiLCJfb25DbGlja1RvU2VhcmNoIiwic2hhZG93Um9vdCIsInF1ZXJ5U2VsZWN0b3IiLCJfcmVuZGVyUGFnaW5hdGlvbiIsInBhZ2luYXRpb24iLCJpIiwicHVzaCIsImxlZnQiLCJzbGljZSIsInJpZ2h0IiwibGVuZ3RoIiwiZEwiLCJyZW1vdmVMIiwiYWRkUmlnaHQiLCJkaWZmIiwibGVmdFAiLCJtYXAiLCJiaW5kIiwicmlnaHRQIiwidW5zaGlmdCIsIl9oYXNEYXRhIiwiX2hpZGVFbXB0eSIsInJlbmRlciIsIndpbmRvdyIsImN1c3RvbUVsZW1lbnRzIiwiZGVmaW5lIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxVQUFULEVBQXFCQyxJQUFyQixFQUEyQkMsR0FBM0IsUUFBc0MsYUFBdEM7QUFDQSxTQUFTQyxt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LE1BQXRCLENBQTZCLGVBQTdCLEVBQThDMUQsWUFBOUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgTGl0RWxlbWVudCwgaHRtbCwgY3NzIH0gZnJvbSAnbGl0LWVsZW1lbnQnO1xuaW1wb3J0IHsgZGlzcGF0Y2hDdXN0b21FdmVudCB9IGZyb20gJy4uL2xpYi9ldmVudHMnO1xuaW1wb3J0ICcuLi9hdG9tcy9ndi1idXR0b24nO1xuaW1wb3J0IHsgaTE4biB9IGZyb20gJy4uL2xpYi9pMThuJztcblxuLyoqXG4gKiBBIHBhZ2luYXRpb25cbiAqXG4gKiAjIyBEZXRhaWxzXG4gKiAqIGhhcyBAdGhlbWUgZmFjZXRcbiAqXG4gKiBAZmlyZXMgZ3YtcGFnaW5hdGlvbjpwYWdpbmF0ZSAtIEN1c3RvbSBldmVudCB3aXRoIHBhZ2luYXRpb24gbGlua1xuICpcbiAqIEBhdHRyIHtPYmplY3R9IGRhdGEgLSBQYWdpbmF0aW9uIGluZm9ybWF0aW9uIHtmaXJzdCwgbGFzdCwgdG90YWwsIGN1cnJlbnRfcGFnZX1cbiAqIEBhdHRyIHtCb29sZWFufSBoaWRlLWVtcHR5IC0gaGlkZSBjb21wb25lbnQgaWYgbm8gcGFnZSBvciBubyBkYXRhLlxuICogQGF0dHIge0Jvb2xlYW59IHdpZGdldCAtIGRpc3BsYXkgd2lkZ2V0IHBhZ2luYXRpb24gKHdpdGggYXJyb3dzKS5cbiAqIEBhdHRyIHtCb29sZWFufSBkaXNhYmxlZCAtIHNhbWUgYXMgbmF0aXZlIGJ1dHRvbiBlbGVtZW50IGBkaXNhYmxlZGAgYXR0cmlidXRlXG4gKlxuICogQGNzc3Byb3Age0xlbmd0aH0gWy0tZ3YtcGFnaW5hdGlvbi0tZno9dmFyKC0tZ3YtdGhlbWUtZm9udC1zaXplLXMsIDEycHgpXSAtIEZvbnQgc2l6ZVxuICogQGNzc3Byb3Age0xlbmd0aH0gWy0tZ3YtcGFnaW5hdGlvbi1pY29uLS1zPTE4cHhdIC0gSGVpZ2h0IGFuZCBpY29uIHdpZHRoXG4gKi9cbmV4cG9ydCBjbGFzcyBHdlBhZ2luYXRpb24gZXh0ZW5kcyBMaXRFbGVtZW50IHtcbiAgc3RhdGljIGdldCBwcm9wZXJ0aWVzKCkge1xuICAgIHJldHVybiB7XG4gICAgICBkYXRhOiB7IHR5cGU6IE9iamVjdCB9LFxuICAgICAgaGlkZUVtcHR5OiB7IHR5cGU6IEJvb2xlYW4sIGF0dHJpYnV0ZTogJ2hpZGUtZW1wdHknIH0sXG4gICAgICB3aWRnZXQ6IHsgdHlwZTogQm9vbGVhbiB9LFxuICAgICAgZGlzYWJsZWQ6IHsgdHlwZTogQm9vbGVhbiB9LFxuICAgICAgX2ZpcnN0OiB7IHR5cGU6IE51bWJlciB9LFxuICAgICAgX2xhc3Q6IHsgdHlwZTogTnVtYmVyIH0sXG4gICAgICBfY3VycmVudDogeyB0eXBlOiBOdW1iZXIgfSxcbiAgICAgIF90b3RhbDogeyB0eXBlOiBOdW1iZXIgfSxcbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIGdldCBzdHlsZXMoKSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIC8vIGxhbmd1YWdlPWNzc1xuICAgICAgY3NzYFxuICAgICAgICAucGFnaW5hdGlvbiB7XG4gICAgICAgICAgLS1mb250LXNpemU6IHZhcigtLWd2LXBhZ2luYXRpb24tLWZ6LCB2YXIoLS1ndi10aGVtZS1mb250LXNpemUtcywgMTJweCkpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZnopO1xuICAgICAgICAgIC0tZ3YtYnV0dG9uLS1mejogdmFyKC0tZnopO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGd2LWJ1dHRvbiB7XG4gICAgICAgICAgLS1ndi1pY29uLS1zOiB2YXIoLS1ndi1wYWdpbmF0aW9uLWljb24tLXMsIDE4cHgpO1xuICAgICAgICAgIG1pbi13aWR0aDogMjlweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGd2LWlucHV0IHtcbiAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgfVxuICAgICAgYCxcbiAgICBdO1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmhpZGVFbXB0eSA9IGZhbHNlO1xuICAgIHRoaXMuaGFzSW5wdXQgPSBmYWxzZTtcbiAgICB0aGlzLm1heCA9IDEwO1xuICAgIHRoaXMuY2VudGVyID0gdGhpcy5tYXggLyAyIC0gMTtcbiAgICB0aGlzLnNpemVzID0gW107XG4gICAgdGhpcy5saW5rcyA9IHt9O1xuICB9XG5cbiAgc2V0IGRhdGEoZGF0YSkge1xuICAgIGlmIChkYXRhKSB7XG4gICAgICB0aGlzLl9sYXN0ID0gZGF0YS5sYXN0O1xuICAgICAgdGhpcy5fY3VycmVudCA9IHBhcnNlSW50KGRhdGEuY3VycmVudF9wYWdlKTtcbiAgICAgIHRoaXMuX3BhZ2VzID0gZGF0YS50b3RhbF9wYWdlcztcbiAgICAgIGlmICh0aGlzLl9wYWdlcyA8IHRoaXMubWF4KSB7XG4gICAgICAgIHRoaXMubWF4ID0gdGhpcy5fcGFnZXM7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgX2dvVG9QYWdlKHBhZ2UpIHtcbiAgICB0aGlzLl9jdXJyZW50ID0gcGFyc2VJbnQocGFnZSk7XG4gICAgZGlzcGF0Y2hDdXN0b21FdmVudCh0aGlzLCAncGFnaW5hdGUnLCB7IHBhZ2U6IHBhZ2UgfSk7XG4gIH1cblxuICBfb25TdWJtaXQoZSkge1xuICAgIGNvbnN0IHBhZ2UgPSBlLnRhcmdldC52YWx1ZTtcbiAgICB0aGlzLl9nb1RvUGFnZShwYWdlKTtcbiAgfVxuXG4gIF9vbkNsaWNrVG9TZWFyY2goKSB7XG4gICAgY29uc3QgcGFnZSA9IHRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCdndi1pbnB1dCcpLnZhbHVlO1xuICAgIGlmIChwYWdlKSB7XG4gICAgICB0aGlzLl9nb1RvUGFnZShwYWdlKTtcbiAgICB9XG4gIH1cblxuICBfcmVuZGVyUGFnaW5hdGlvbigpIHtcbiAgICBjb25zdCBwYWdpbmF0aW9uID0gW107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9wYWdlczsgaSsrKSB7XG4gICAgICBwYWdpbmF0aW9uLnB1c2goaSArIDEpO1xuICAgIH1cblxuICAgIGxldCBsZWZ0ID0gcGFnaW5hdGlvbi5zbGljZSgwLCB0aGlzLl9jdXJyZW50IC0gMSk7XG4gICAgbGV0IHJpZ2h0ID0gcGFnaW5hdGlvbi5zbGljZSh0aGlzLl9jdXJyZW50KTtcblxuICAgIGlmIChwYWdpbmF0aW9uLmxlbmd0aCA+IHRoaXMubWF4KSB7XG4gICAgICBjb25zdCBkTCA9IGxlZnQubGVuZ3RoO1xuICAgICAgbGV0IHJlbW92ZUwgPSBkTCAtIHRoaXMuY2VudGVyIC0gMTtcbiAgICAgIGxldCBhZGRSaWdodCA9IHRoaXMubWF4IC0gdGhpcy5fY3VycmVudCA+IHRoaXMuY2VudGVyID8gdGhpcy5tYXggLSB0aGlzLl9jdXJyZW50IDogdGhpcy5jZW50ZXI7XG4gICAgICBpZiAocmVtb3ZlTCA+IDApIHtcbiAgICAgICAgYWRkUmlnaHQgPSB0aGlzLmNlbnRlcjtcbiAgICAgICAgY29uc3QgZGlmZiA9IHRoaXMuX2xhc3QgLSB0aGlzLl9jdXJyZW50IC0gYWRkUmlnaHQ7XG4gICAgICAgIGlmIChkaWZmIDwgMCkge1xuICAgICAgICAgIHJlbW92ZUwgKz0gZGlmZjtcbiAgICAgICAgfVxuICAgICAgICBsZWZ0ID0gbGVmdC5zbGljZShyZW1vdmVMKTtcbiAgICAgIH1cbiAgICAgIHJpZ2h0ID0gcmlnaHQuc2xpY2UoMCwgYWRkUmlnaHQpO1xuICAgIH1cbiAgICBjb25zdCBsZWZ0UCA9IGxlZnQubWFwKChpKSA9PiBodG1sYDxndi1idXR0b24gc21hbGwgb3V0bGluZWQgQGNsaWNrPVwiJHt0aGlzLl9nb1RvUGFnZS5iaW5kKHRoaXMsIGkpfVwiPiR7aX08L2d2LWJ1dHRvbj5gKTtcbiAgICBjb25zdCByaWdodFAgPSByaWdodC5tYXAoKGkpID0+IGh0bWxgPGd2LWJ1dHRvbiBzbWFsbCBvdXRsaW5lZCBAY2xpY2s9XCIke3RoaXMuX2dvVG9QYWdlLmJpbmQodGhpcywgaSl9XCI+JHtpfTwvZ3YtYnV0dG9uPmApO1xuXG4gICAgbGVmdFAudW5zaGlmdChcbiAgICAgIGh0bWxgPGd2LWJ1dHRvblxuICAgICAgICBzbWFsbFxuICAgICAgICAuZGlzYWJsZWQ9XCIke3RoaXMuZGlzYWJsZWQgfHwgbGVmdFAubGVuZ3RoID09PSAwfVwiXG4gICAgICAgIC5pY29uPVwiJHt0aGlzLndpZGdldCA/ICduYXZpZ2F0aW9uOmFuZ2xlLWxlZnQnIDogbnVsbH1cIlxuICAgICAgICAudGl0bGU9XCIke2kxOG4oJ2d2LXBhZ2luYXRpb24ucHJldmlvdXMnKX1cIlxuICAgICAgICBvdXRsaW5lZFxuICAgICAgICBAY2xpY2s9XCIke2xlZnRQLmxlbmd0aCA9PT0gMCA/ICgpID0+IHt9IDogdGhpcy5fZ29Ub1BhZ2UuYmluZCh0aGlzLCB0aGlzLl9jdXJyZW50IC0gMSl9XCJcbiAgICAgICAgPiR7dGhpcy53aWRnZXQgPyAnJyA6IGkxOG4oJ2d2LXBhZ2luYXRpb24ucHJldmlvdXMnKX08L2d2LWJ1dHRvblxuICAgICAgPmAsXG4gICAgKTtcbiAgICByaWdodFAucHVzaChcbiAgICAgIGh0bWxgPGd2LWJ1dHRvblxuICAgICAgICBzbWFsbFxuICAgICAgICAuZGlzYWJsZWQ9XCIke3RoaXMuZGlzYWJsZWQgfHwgcmlnaHRQLmxlbmd0aCA9PT0gMH1cIlxuICAgICAgICAuaWNvbj1cIiR7dGhpcy53aWRnZXQgPyAnbmF2aWdhdGlvbjphbmdsZS1yaWdodCcgOiBudWxsfVwiXG4gICAgICAgIC50aXRsZT1cIiR7aTE4bignZ3YtcGFnaW5hdGlvbi5uZXh0Jyl9XCJcbiAgICAgICAgb3V0bGluZWRcbiAgICAgICAgQGNsaWNrPVwiJHtyaWdodFAubGVuZ3RoID09PSAwID8gKCkgPT4ge30gOiB0aGlzLl9nb1RvUGFnZS5iaW5kKHRoaXMsIHRoaXMuX2N1cnJlbnQgKyAxKX1cIlxuICAgICAgICA+JHt0aGlzLndpZGdldCA/ICcnIDogaTE4bignZ3YtcGFnaW5hdGlvbi5uZXh0Jyl9PC9ndi1idXR0b25cbiAgICAgID5gLFxuICAgICk7XG4gICAgcmV0dXJuIGh0bWxgJHt0aGlzLndpZGdldCA/IGxlZnRQLnNsaWNlKDAsIDEpIDogbGVmdFB9XG4gICAgJHtodG1sYDxndi1idXR0b24gLmRpc2FibGVkPVwiJHt0aGlzLmRpc2FibGVkfVwiIHNtYWxsIHByaW1hcnlcbiAgICAgID4ke3RoaXMud2lkZ2V0ID8gdGhpcy5fY3VycmVudCArICcgLyAnICsgcGFnaW5hdGlvbi5sZW5ndGggOiB0aGlzLl9jdXJyZW50fTwvZ3YtYnV0dG9uXG4gICAgPmB9XG4gICAgJHt0aGlzLndpZGdldCA/IHJpZ2h0UC5zbGljZShyaWdodFAubGVuZ3RoIC0gMSwgcmlnaHRQLmxlbmd0aCkgOiByaWdodFB9YDtcbiAgfVxuXG4gIF9oYXNEYXRhKCkge1xuICAgIHJldHVybiB0aGlzLl9wYWdlcyAmJiB0aGlzLl9sYXN0ICYmIHRoaXMuX2N1cnJlbnQ7XG4gIH1cblxuICBfaGlkZUVtcHR5KCkge1xuICAgIHJldHVybiB0aGlzLl9oYXNEYXRhKCkgJiYgdGhpcy5oaWRlRW1wdHkgJiYgdGhpcy5fcGFnZXMgPCAyO1xuICB9XG5cbiAgcmVuZGVyKCkge1xuICAgIGlmICh0aGlzLl9oYXNEYXRhKCkgJiYgIXRoaXMuX2hpZGVFbXB0eSgpKSB7XG4gICAgICByZXR1cm4gaHRtbGA8ZGl2IGNsYXNzPVwicGFnaW5hdGlvblwiPlxuICAgICAgICAke3RoaXMuaGFzSW5wdXRcbiAgICAgICAgICA/IGh0bWxgPGd2LWlucHV0XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJnb3RvXCJcbiAgICAgICAgICAgICAgICBAZ3YtaW5wdXQ6c3VibWl0PVwiJHt0aGlzLl9vblN1Ym1pdH1cIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIlxuICAgICAgICAgICAgICAgIG1pbj1cIjFcIlxuICAgICAgICAgICAgICAgIG1heD1cIiR7dGhpcy5fcGFnZXN9XCJcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIlBhZ2VcIlxuICAgICAgICAgICAgICAgIHNtYWxsXG4gICAgICAgICAgICAgID48L2d2LWlucHV0PlxuICAgICAgICAgICAgICA8Z3YtYnV0dG9uIHNtYWxsIG91dGxpbmVkIEBjbGljaz1cIiR7dGhpcy5fb25DbGlja1RvU2VhcmNofVwiIGljb249XCJnZW5lcmFsOnNlYXJjaFwiPjwvZ3YtYnV0dG9uPmBcbiAgICAgICAgICA6ICcnfVxuICAgICAgICAke3RoaXMuX3JlbmRlclBhZ2luYXRpb24oKX1cbiAgICAgIDwvZGl2PiBgO1xuICAgIH1cbiAgICByZXR1cm4gaHRtbGBgO1xuICB9XG59XG5cbndpbmRvdy5jdXN0b21FbGVtZW50cy5kZWZpbmUoJ2d2LXBhZ2luYXRpb24nLCBHdlBhZ2luYXRpb24pO1xuIl19
170
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL29yZ2FuaXNtcy9ndi1wYWdpbmF0aW9uLmpzIl0sIm5hbWVzIjpbIkxpdEVsZW1lbnQiLCJodG1sIiwiY3NzIiwiZGlzcGF0Y2hDdXN0b21FdmVudCIsImkxOG4iLCJHdlBhZ2luYXRpb24iLCJwcm9wZXJ0aWVzIiwiZGF0YSIsInR5cGUiLCJPYmplY3QiLCJoaWRlRW1wdHkiLCJCb29sZWFuIiwiYXR0cmlidXRlIiwid2lkZ2V0IiwiZGlzYWJsZWQiLCJfZmlyc3QiLCJOdW1iZXIiLCJfbGFzdCIsIl9jdXJyZW50IiwiX3RvdGFsIiwic3R5bGVzIiwiY29uc3RydWN0b3IiLCJoYXNJbnB1dCIsIm1heCIsImNlbnRlciIsInNpemVzIiwibGlua3MiLCJsYXN0IiwicGFyc2VJbnQiLCJjdXJyZW50X3BhZ2UiLCJfcGFnZXMiLCJ0b3RhbF9wYWdlcyIsIl9nb1RvUGFnZSIsInBhZ2UiLCJfb25TdWJtaXQiLCJlIiwidGFyZ2V0IiwidmFsdWUiLCJfb25DbGlja1RvU2VhcmNoIiwic2hhZG93Um9vdCIsInF1ZXJ5U2VsZWN0b3IiLCJfcmVuZGVyUGFnaW5hdGlvbiIsInBhZ2luYXRpb24iLCJpIiwicHVzaCIsImxlZnQiLCJzbGljZSIsInJpZ2h0IiwibGVuZ3RoIiwiZEwiLCJyZW1vdmVMIiwiYWRkUmlnaHQiLCJkaWZmIiwibGVmdFAiLCJtYXAiLCJiaW5kIiwicmlnaHRQIiwidW5zaGlmdCIsIl9oYXNEYXRhIiwiX2hpZGVFbXB0eSIsInJlbmRlciIsIndpbmRvdyIsImN1c3RvbUVsZW1lbnRzIiwiZGVmaW5lIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxVQUFULEVBQXFCQyxJQUFyQixFQUEyQkMsR0FBM0IsUUFBc0MsS0FBdEM7QUFDQSxTQUFTQyxt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LE1BQXRCLENBQTZCLGVBQTdCLEVBQThDMUQsWUFBOUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgTGl0RWxlbWVudCwgaHRtbCwgY3NzIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGRpc3BhdGNoQ3VzdG9tRXZlbnQgfSBmcm9tICcuLi9saWIvZXZlbnRzJztcbmltcG9ydCAnLi4vYXRvbXMvZ3YtYnV0dG9uJztcbmltcG9ydCB7IGkxOG4gfSBmcm9tICcuLi9saWIvaTE4bic7XG5cbi8qKlxuICogQSBwYWdpbmF0aW9uXG4gKlxuICogIyMgRGV0YWlsc1xuICogKiBoYXMgQHRoZW1lIGZhY2V0XG4gKlxuICogQGZpcmVzIGd2LXBhZ2luYXRpb246cGFnaW5hdGUgLSBDdXN0b20gZXZlbnQgd2l0aCBwYWdpbmF0aW9uIGxpbmtcbiAqXG4gKiBAYXR0ciB7T2JqZWN0fSBkYXRhIC0gUGFnaW5hdGlvbiBpbmZvcm1hdGlvbiB7Zmlyc3QsIGxhc3QsIHRvdGFsLCBjdXJyZW50X3BhZ2V9XG4gKiBAYXR0ciB7Qm9vbGVhbn0gaGlkZS1lbXB0eSAtIGhpZGUgY29tcG9uZW50IGlmIG5vIHBhZ2Ugb3Igbm8gZGF0YS5cbiAqIEBhdHRyIHtCb29sZWFufSB3aWRnZXQgLSBkaXNwbGF5IHdpZGdldCBwYWdpbmF0aW9uICh3aXRoIGFycm93cykuXG4gKiBAYXR0ciB7Qm9vbGVhbn0gZGlzYWJsZWQgLSBzYW1lIGFzIG5hdGl2ZSBidXR0b24gZWxlbWVudCBgZGlzYWJsZWRgIGF0dHJpYnV0ZVxuICpcbiAqIEBjc3Nwcm9wIHtMZW5ndGh9IFstLWd2LXBhZ2luYXRpb24tLWZ6PXZhcigtLWd2LXRoZW1lLWZvbnQtc2l6ZS1zLCAxMnB4KV0gLSBGb250IHNpemVcbiAqIEBjc3Nwcm9wIHtMZW5ndGh9IFstLWd2LXBhZ2luYXRpb24taWNvbi0tcz0xOHB4XSAtIEhlaWdodCBhbmQgaWNvbiB3aWR0aFxuICovXG5leHBvcnQgY2xhc3MgR3ZQYWdpbmF0aW9uIGV4dGVuZHMgTGl0RWxlbWVudCB7XG4gIHN0YXRpYyBnZXQgcHJvcGVydGllcygpIHtcbiAgICByZXR1cm4ge1xuICAgICAgZGF0YTogeyB0eXBlOiBPYmplY3QgfSxcbiAgICAgIGhpZGVFbXB0eTogeyB0eXBlOiBCb29sZWFuLCBhdHRyaWJ1dGU6ICdoaWRlLWVtcHR5JyB9LFxuICAgICAgd2lkZ2V0OiB7IHR5cGU6IEJvb2xlYW4gfSxcbiAgICAgIGRpc2FibGVkOiB7IHR5cGU6IEJvb2xlYW4gfSxcbiAgICAgIF9maXJzdDogeyB0eXBlOiBOdW1iZXIgfSxcbiAgICAgIF9sYXN0OiB7IHR5cGU6IE51bWJlciB9LFxuICAgICAgX2N1cnJlbnQ6IHsgdHlwZTogTnVtYmVyIH0sXG4gICAgICBfdG90YWw6IHsgdHlwZTogTnVtYmVyIH0sXG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBnZXQgc3R5bGVzKCkge1xuICAgIHJldHVybiBbXG4gICAgICAvLyBsYW5ndWFnZT1jc3NcbiAgICAgIGNzc2BcbiAgICAgICAgLnBhZ2luYXRpb24ge1xuICAgICAgICAgIC0tZm9udC1zaXplOiB2YXIoLS1ndi1wYWdpbmF0aW9uLS1meiwgdmFyKC0tZ3YtdGhlbWUtZm9udC1zaXplLXMsIDEycHgpKTtcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZ6KTtcbiAgICAgICAgICAtLWd2LWJ1dHRvbi0tZno6IHZhcigtLWZ6KTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBndi1idXR0b24ge1xuICAgICAgICAgIC0tZ3YtaWNvbi0tczogdmFyKC0tZ3YtcGFnaW5hdGlvbi1pY29uLS1zLCAxOHB4KTtcbiAgICAgICAgICBtaW4td2lkdGg6IDI5cHg7XG4gICAgICAgIH1cblxuICAgICAgICBndi1pbnB1dCB7XG4gICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIH1cbiAgICAgIGAsXG4gICAgXTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5oaWRlRW1wdHkgPSBmYWxzZTtcbiAgICB0aGlzLmhhc0lucHV0ID0gZmFsc2U7XG4gICAgdGhpcy5tYXggPSAxMDtcbiAgICB0aGlzLmNlbnRlciA9IHRoaXMubWF4IC8gMiAtIDE7XG4gICAgdGhpcy5zaXplcyA9IFtdO1xuICAgIHRoaXMubGlua3MgPSB7fTtcbiAgfVxuXG4gIHNldCBkYXRhKGRhdGEpIHtcbiAgICBpZiAoZGF0YSkge1xuICAgICAgdGhpcy5fbGFzdCA9IGRhdGEubGFzdDtcbiAgICAgIHRoaXMuX2N1cnJlbnQgPSBwYXJzZUludChkYXRhLmN1cnJlbnRfcGFnZSk7XG4gICAgICB0aGlzLl9wYWdlcyA9IGRhdGEudG90YWxfcGFnZXM7XG4gICAgICBpZiAodGhpcy5fcGFnZXMgPCB0aGlzLm1heCkge1xuICAgICAgICB0aGlzLm1heCA9IHRoaXMuX3BhZ2VzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIF9nb1RvUGFnZShwYWdlKSB7XG4gICAgdGhpcy5fY3VycmVudCA9IHBhcnNlSW50KHBhZ2UpO1xuICAgIGRpc3BhdGNoQ3VzdG9tRXZlbnQodGhpcywgJ3BhZ2luYXRlJywgeyBwYWdlOiBwYWdlIH0pO1xuICB9XG5cbiAgX29uU3VibWl0KGUpIHtcbiAgICBjb25zdCBwYWdlID0gZS50YXJnZXQudmFsdWU7XG4gICAgdGhpcy5fZ29Ub1BhZ2UocGFnZSk7XG4gIH1cblxuICBfb25DbGlja1RvU2VhcmNoKCkge1xuICAgIGNvbnN0IHBhZ2UgPSB0aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcignZ3YtaW5wdXQnKS52YWx1ZTtcbiAgICBpZiAocGFnZSkge1xuICAgICAgdGhpcy5fZ29Ub1BhZ2UocGFnZSk7XG4gICAgfVxuICB9XG5cbiAgX3JlbmRlclBhZ2luYXRpb24oKSB7XG4gICAgY29uc3QgcGFnaW5hdGlvbiA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5fcGFnZXM7IGkrKykge1xuICAgICAgcGFnaW5hdGlvbi5wdXNoKGkgKyAxKTtcbiAgICB9XG5cbiAgICBsZXQgbGVmdCA9IHBhZ2luYXRpb24uc2xpY2UoMCwgdGhpcy5fY3VycmVudCAtIDEpO1xuICAgIGxldCByaWdodCA9IHBhZ2luYXRpb24uc2xpY2UodGhpcy5fY3VycmVudCk7XG5cbiAgICBpZiAocGFnaW5hdGlvbi5sZW5ndGggPiB0aGlzLm1heCkge1xuICAgICAgY29uc3QgZEwgPSBsZWZ0Lmxlbmd0aDtcbiAgICAgIGxldCByZW1vdmVMID0gZEwgLSB0aGlzLmNlbnRlciAtIDE7XG4gICAgICBsZXQgYWRkUmlnaHQgPSB0aGlzLm1heCAtIHRoaXMuX2N1cnJlbnQgPiB0aGlzLmNlbnRlciA/IHRoaXMubWF4IC0gdGhpcy5fY3VycmVudCA6IHRoaXMuY2VudGVyO1xuICAgICAgaWYgKHJlbW92ZUwgPiAwKSB7XG4gICAgICAgIGFkZFJpZ2h0ID0gdGhpcy5jZW50ZXI7XG4gICAgICAgIGNvbnN0IGRpZmYgPSB0aGlzLl9sYXN0IC0gdGhpcy5fY3VycmVudCAtIGFkZFJpZ2h0O1xuICAgICAgICBpZiAoZGlmZiA8IDApIHtcbiAgICAgICAgICByZW1vdmVMICs9IGRpZmY7XG4gICAgICAgIH1cbiAgICAgICAgbGVmdCA9IGxlZnQuc2xpY2UocmVtb3ZlTCk7XG4gICAgICB9XG4gICAgICByaWdodCA9IHJpZ2h0LnNsaWNlKDAsIGFkZFJpZ2h0KTtcbiAgICB9XG4gICAgY29uc3QgbGVmdFAgPSBsZWZ0Lm1hcCgoaSkgPT4gaHRtbGA8Z3YtYnV0dG9uIHNtYWxsIG91dGxpbmVkIEBjbGljaz1cIiR7dGhpcy5fZ29Ub1BhZ2UuYmluZCh0aGlzLCBpKX1cIj4ke2l9PC9ndi1idXR0b24+YCk7XG4gICAgY29uc3QgcmlnaHRQID0gcmlnaHQubWFwKChpKSA9PiBodG1sYDxndi1idXR0b24gc21hbGwgb3V0bGluZWQgQGNsaWNrPVwiJHt0aGlzLl9nb1RvUGFnZS5iaW5kKHRoaXMsIGkpfVwiPiR7aX08L2d2LWJ1dHRvbj5gKTtcblxuICAgIGxlZnRQLnVuc2hpZnQoXG4gICAgICBodG1sYDxndi1idXR0b25cbiAgICAgICAgc21hbGxcbiAgICAgICAgLmRpc2FibGVkPVwiJHt0aGlzLmRpc2FibGVkIHx8IGxlZnRQLmxlbmd0aCA9PT0gMH1cIlxuICAgICAgICAuaWNvbj1cIiR7dGhpcy53aWRnZXQgPyAnbmF2aWdhdGlvbjphbmdsZS1sZWZ0JyA6IG51bGx9XCJcbiAgICAgICAgLnRpdGxlPVwiJHtpMThuKCdndi1wYWdpbmF0aW9uLnByZXZpb3VzJyl9XCJcbiAgICAgICAgb3V0bGluZWRcbiAgICAgICAgQGNsaWNrPVwiJHtsZWZ0UC5sZW5ndGggPT09IDAgPyAoKSA9PiB7fSA6IHRoaXMuX2dvVG9QYWdlLmJpbmQodGhpcywgdGhpcy5fY3VycmVudCAtIDEpfVwiXG4gICAgICAgID4ke3RoaXMud2lkZ2V0ID8gJycgOiBpMThuKCdndi1wYWdpbmF0aW9uLnByZXZpb3VzJyl9PC9ndi1idXR0b25cbiAgICAgID5gLFxuICAgICk7XG4gICAgcmlnaHRQLnB1c2goXG4gICAgICBodG1sYDxndi1idXR0b25cbiAgICAgICAgc21hbGxcbiAgICAgICAgLmRpc2FibGVkPVwiJHt0aGlzLmRpc2FibGVkIHx8IHJpZ2h0UC5sZW5ndGggPT09IDB9XCJcbiAgICAgICAgLmljb249XCIke3RoaXMud2lkZ2V0ID8gJ25hdmlnYXRpb246YW5nbGUtcmlnaHQnIDogbnVsbH1cIlxuICAgICAgICAudGl0bGU9XCIke2kxOG4oJ2d2LXBhZ2luYXRpb24ubmV4dCcpfVwiXG4gICAgICAgIG91dGxpbmVkXG4gICAgICAgIEBjbGljaz1cIiR7cmlnaHRQLmxlbmd0aCA9PT0gMCA/ICgpID0+IHt9IDogdGhpcy5fZ29Ub1BhZ2UuYmluZCh0aGlzLCB0aGlzLl9jdXJyZW50ICsgMSl9XCJcbiAgICAgICAgPiR7dGhpcy53aWRnZXQgPyAnJyA6IGkxOG4oJ2d2LXBhZ2luYXRpb24ubmV4dCcpfTwvZ3YtYnV0dG9uXG4gICAgICA+YCxcbiAgICApO1xuICAgIHJldHVybiBodG1sYCR7dGhpcy53aWRnZXQgPyBsZWZ0UC5zbGljZSgwLCAxKSA6IGxlZnRQfVxuICAgICR7aHRtbGA8Z3YtYnV0dG9uIC5kaXNhYmxlZD1cIiR7dGhpcy5kaXNhYmxlZH1cIiBzbWFsbCBwcmltYXJ5XG4gICAgICA+JHt0aGlzLndpZGdldCA/IHRoaXMuX2N1cnJlbnQgKyAnIC8gJyArIHBhZ2luYXRpb24ubGVuZ3RoIDogdGhpcy5fY3VycmVudH08L2d2LWJ1dHRvblxuICAgID5gfVxuICAgICR7dGhpcy53aWRnZXQgPyByaWdodFAuc2xpY2UocmlnaHRQLmxlbmd0aCAtIDEsIHJpZ2h0UC5sZW5ndGgpIDogcmlnaHRQfWA7XG4gIH1cblxuICBfaGFzRGF0YSgpIHtcbiAgICByZXR1cm4gdGhpcy5fcGFnZXMgJiYgdGhpcy5fbGFzdCAmJiB0aGlzLl9jdXJyZW50O1xuICB9XG5cbiAgX2hpZGVFbXB0eSgpIHtcbiAgICByZXR1cm4gdGhpcy5faGFzRGF0YSgpICYmIHRoaXMuaGlkZUVtcHR5ICYmIHRoaXMuX3BhZ2VzIDwgMjtcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBpZiAodGhpcy5faGFzRGF0YSgpICYmICF0aGlzLl9oaWRlRW1wdHkoKSkge1xuICAgICAgcmV0dXJuIGh0bWxgPGRpdiBjbGFzcz1cInBhZ2luYXRpb25cIj5cbiAgICAgICAgJHt0aGlzLmhhc0lucHV0XG4gICAgICAgICAgPyBodG1sYDxndi1pbnB1dFxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZ290b1wiXG4gICAgICAgICAgICAgICAgQGd2LWlucHV0OnN1Ym1pdD1cIiR7dGhpcy5fb25TdWJtaXR9XCJcbiAgICAgICAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcbiAgICAgICAgICAgICAgICBtaW49XCIxXCJcbiAgICAgICAgICAgICAgICBtYXg9XCIke3RoaXMuX3BhZ2VzfVwiXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJQYWdlXCJcbiAgICAgICAgICAgICAgICBzbWFsbFxuICAgICAgICAgICAgICA+PC9ndi1pbnB1dD5cbiAgICAgICAgICAgICAgPGd2LWJ1dHRvbiBzbWFsbCBvdXRsaW5lZCBAY2xpY2s9XCIke3RoaXMuX29uQ2xpY2tUb1NlYXJjaH1cIiBpY29uPVwiZ2VuZXJhbDpzZWFyY2hcIj48L2d2LWJ1dHRvbj5gXG4gICAgICAgICAgOiAnJ31cbiAgICAgICAgJHt0aGlzLl9yZW5kZXJQYWdpbmF0aW9uKCl9XG4gICAgICA8L2Rpdj4gYDtcbiAgICB9XG4gICAgcmV0dXJuIGh0bWxgYDtcbiAgfVxufVxuXG53aW5kb3cuY3VzdG9tRWxlbWVudHMuZGVmaW5lKCdndi1wYWdpbmF0aW9uJywgR3ZQYWdpbmF0aW9uKTtcbiJdfQ==